Name: series-workflowt8cc9 Phase: Failed StartedAt: 2026-07-03 07:33:17 +0000 UTC FinishedAt: 2026-07-03 07:46:17 +0000 UTC Input: nil Output: nil --------- Name: series-workflowt8cc9[0] Phase: Succeeded StartedAt: 2026-07-03 07:33:17 +0000 UTC FinishedAt: 2026-07-03 07:45:56 +0000 UTC Input: nil Output: nil --------- Name: series-workflowt8cc9[0].run-triage Phase: Succeeded StartedAt: 2026-07-03 07:33:17 +0000 UTC FinishedAt: 2026-07-03 07:45:56 +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+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQyPC90ZD4KCQkJPHRkPmZsb3c8L3RkPgoJCQk8dGQ+cGF0Y2gtdHJpYWdlPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+Mm08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RW5hYmxlQ29uZmlncyYjMzQ7OiBudWxsLAogICYjMzQ7Rm9jdXNTeW1ib2xzJiMzNDs6IFtdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBNYXJ2ZWxsIDg4RTZ4eHggRFNBIHN3aXRjaCBkcml2ZXIuIFRoaXMgaXMgYSBoYXJkd2FyZS1zcGVjaWZpYyBkcml2ZXIgdGhhdCByZXF1aXJlcyBhbiBNRElPIGJ1cyBhbmQgaXMgaW5zdGFudGlhdGVkIGV4Y2x1c2l2ZWx5IHZpYSBEZXZpY2UgVHJlZSAob3IgcGxhdGZvcm0gZGF0YSB3aGljaCBpcyB1bnVzZWQpLiBTaW5jZSBzdGFuZGFyZCB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgKGxpa2UgUUVNVS9HQ0UpIGRvIG5vdCBlbXVsYXRlIHRoaXMgc3BlY2lmaWMgaGFyZHdhcmUgb3IgcHJvdmlkZSB0aGUgbmVjZXNzYXJ5IERldmljZSBUcmVlIG5vZGVzLCB0aGlzIGNvZGUgaXMgdW5yZWFjaGFibGUgYW5kIGNhbm5vdCBiZSBmdXp6ZWQuJiMzNDssCiAgJiMzNDtXb3J0aEZ1enppbmcmIzM0OzogZmFsc2UKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjEvMTwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQyPC90ZD4KCQkJPHRkPmFjdGlvbjwvdGQ+CgkJCTx0ZD5yZWFkLXBhdGNoLWRpZmY8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtQYXRjaERpZmYmIzM0OzogJiMzNDtjb21taXQgNjY1N2I3NDE1ZjBkZjYyNWNmYmM4ZWZmMTFjZTAzMTU0MWJlNTk5ZVxuQXV0aG9yOiBzeXotY2x1c3RlciBcdTAwM2N0cmlhZ2VAc3l6a2FsbGVyLmNvbVx1MDAzZVxuRGF0ZTogICBGcmkgSnVsIDMgMDc6NDI6NDQgMjAyNiAmIzQzOzAwMDBcblxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xuXG5kaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMgYi9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuY1xuaW5kZXggODBiODc3Yzc0NTEzZDYuLjczYzI4YmYyYmYzY2JmIDEwMDY0NFxuLS0tIGEvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmNcbiYjNDM7JiM0MzsmIzQzOyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jXG5AQCAtOTc0LDYgJiM0Mzs5NzQsMTAgQEAgc3RhdGljIHZvaWQgbXY4OGU2eHh4X21hY19saW5rX2Rvd24oc3RydWN0IHBoeWxpbmtfY29uZmlnICpjb25maWcsXG4gXHQgICAgIG1vZGUgPT0gTUxPX0FOX0ZJWEVEKSBcdTAwMjZcdTAwMjYgb3BzLVx1MDAzZXBvcnRfc3luY19saW5rKVxuIFx0XHRlcnIgPSBvcHMtXHUwMDNlcG9ydF9zeW5jX2xpbmsoY2hpcCwgcG9ydCwgbW9kZSwgZmFsc2UpO1xuIFxuJiM0MztcdGlmICghZXJyKVxuJiM0MztcdFx0ZXJyID0gbXY4OGU2eHh4X3BvcnRfc2V0X2ZvcmNlX2Zsb3dfY3RsKGNoaXAsIHBvcnQsIGZhbHNlLFxuJiM0MztcdFx0XHRcdFx0XHRcdGZhbHNlKTtcbiYjNDM7XG4gXHRpZiAoIWVyciBcdTAwMjZcdTAwMjYgb3BzLVx1MDAzZXBvcnRfc2V0X3NwZWVkX2R1cGxleClcbiBcdFx0ZXJyID0gb3BzLVx1MDAzZXBvcnRfc2V0X3NwZWVkX2R1cGxleChjaGlwLCBwb3J0LCBTUEVFRF9VTkZPUkNFRCxcbiBcdFx0XHRcdFx0XHQgRFVQTEVYX1VORk9SQ0VEKTtcbkBAIC0xMDEyLDYgJiM0MzsxMDE2LDExIEBAIHN0YXRpYyB2b2lkIG12ODhlNnh4eF9tYWNfbGlua191cChzdHJ1Y3QgcGh5bGlua19jb25maWcgKmNvbmZpZyxcbiBcdFx0XHRcdGdvdG8gZXJyb3I7XG4gXHRcdH1cbiBcbiYjNDM7XHRcdGVyciA9IG12ODhlNnh4eF9wb3J0X3NldF9mb3JjZV9mbG93X2N0bChjaGlwLCBwb3J0LCB0cnVlLFxuJiM0MztcdFx0XHRcdFx0XHRcdHJ4X3BhdXNlKTtcbiYjNDM7XHRcdGlmIChlcnIpXG4mIzQzO1x0XHRcdGdvdG8gZXJyb3I7XG4mIzQzO1xuIFx0XHRpZiAob3BzLVx1MDAzZXBvcnRfc3luY19saW5rKVxuIFx0XHRcdGVyciA9IG9wcy1cdTAwM2Vwb3J0X3N5bmNfbGluayhjaGlwLCBwb3J0LCBtb2RlLCB0cnVlKTtcbiBcdH1cbmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuYyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jXG5pbmRleCBlYTFmYWI3MTk2OGEwYS4uN2VlODAyY2YzNDEyYzcgMTAwNjQ0XG4tLS0gYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuY1xuJiM0MzsmIzQzOyYjNDM7IGIvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmNcbkBAIC0xODIsNiAmIzQzOzE4MiwyNiBAQCBpbnQgbXY4OGU2eHh4X3BvcnRfc2V0X2xpbmsoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCwgaW50IGxpbmspXG4gXHRyZXR1cm4gMDtcbiB9XG4gXG4mIzQzO2ludCBtdjg4ZTZ4eHhfcG9ydF9zZXRfZm9yY2VfZmxvd19jdGwoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCxcbiYjNDM7XHRcdFx0XHQgICAgICBib29sIGZvcmNlLCBib29sIHZhbHVlKVxuJiM0Mzt7XG4mIzQzO1x0dTE2IHJlZztcbiYjNDM7XHRpbnQgZXJyO1xuJiM0MztcbiYjNDM7XHRlcnIgPSBtdjg4ZTZ4eHhfcG9ydF9yZWFkKGNoaXAsIHBvcnQsIE1WODhFNlhYWF9QT1JUX01BQ19DVEwsIFx1MDAyNnJlZyk7XG4mIzQzO1x0aWYgKGVycilcbiYjNDM7XHRcdHJldHVybiBlcnI7XG4mIzQzO1xuJiM0MztcdHJlZyBcdTAwMjY9IH4oTVY4OEU2WFhYX1BPUlRfTUFDX0NUTF9GT1JDRV9GQyB8IE1WODhFNlhYWF9QT1JUX01BQ19DVExfRkMpO1xuJiM0MztcdGlmIChmb3JjZSkge1xuJiM0MztcdFx0cmVnIHw9IE1WODhFNlhYWF9QT1JUX01BQ19DVExfRk9SQ0VfRkM7XG4mIzQzO1x0XHRpZiAodmFsdWUpXG4mIzQzO1x0XHRcdHJlZyB8PSBNVjg4RTZYWFhfUE9SVF9NQUNfQ1RMX0ZDO1xuJiM0MztcdH1cbiYjNDM7XG4mIzQzO1x0cmV0dXJuIG12ODhlNnh4eF9wb3J0X3dyaXRlKGNoaXAsIHBvcnQsIE1WODhFNlhYWF9QT1JUX01BQ19DVEwsIHJlZyk7XG4mIzQzO31cbiYjNDM7XG4gaW50IG12ODhlNnh4eF9wb3J0X3N5bmNfbGluayhzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LCB1bnNpZ25lZCBpbnQgbW9kZSwgYm9vbCBpc3VwKVxuIHtcbiBcdGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzICpvcHMgPSBjaGlwLVx1MDAzZWluZm8tXHUwMDNlb3BzO1xuZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oIGIvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmhcbmluZGV4IDViNmNkZTlmNzQwNmY1Li5mOThkZjYzNTFmNWI3NyAxMDA2NDRcbi0tLSBhL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oXG4mIzQzOyYjNDM7JiM0MzsgYi9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaFxuQEAgLTQ4NSw2ICYjNDM7NDg1LDggQEAgaW50IG12ODhlNjM5MF9wb3J0X3NldF9yZ21paV9kZWxheShzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LFxuIFx0XHRcdFx0ICAgcGh5X2ludGVyZmFjZV90IG1vZGUpO1xuIFxuIGludCBtdjg4ZTZ4eHhfcG9ydF9zZXRfbGluayhzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LCBpbnQgbGluayk7XG4mIzQzO2ludCBtdjg4ZTZ4eHhfcG9ydF9zZXRfZm9yY2VfZmxvd19jdGwoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCxcbiYjNDM7XHRcdFx0XHQgICAgICBib29sIGZvcmNlLCBib29sIHZhbHVlKTtcbiBcbiBpbnQgbXY4OGU2eHh4X3BvcnRfc3luY19saW5rKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsIHVuc2lnbmVkIGludCBtb2RlLCBib29sIGlzdXApO1xuIGludCBtdjg4ZTYxODVfcG9ydF9zeW5jX2xpbmsoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCwgdW5zaWduZWQgaW50IG1vZGUsIGJvb2wgaXN1cCk7XG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+Mi8xPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDI8L3RkPgoJCQk8dGQ+YWdlbnQ8L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+Mm08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFbmFibGVDb25maWdzJiMzNDs6IG51bGwsCiAgJiMzNDtGb2N1c1N5bWJvbHMmIzM0OzogW10sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIE1hcnZlbGwgODhFNnh4eCBEU0Egc3dpdGNoIGRyaXZlci4gVGhpcyBpcyBhIGhhcmR3YXJlLXNwZWNpZmljIGRyaXZlciB0aGF0IHJlcXVpcmVzIGFuIE1ESU8gYnVzIGFuZCBpcyBpbnN0YW50aWF0ZWQgZXhjbHVzaXZlbHkgdmlhIERldmljZSBUcmVlIChvciBwbGF0Zm9ybSBkYXRhIHdoaWNoIGlzIHVudXNlZCkuIFNpbmNlIHN0YW5kYXJkIHZpcnR1YWxpemVkIGVudmlyb25tZW50cyAobGlrZSBRRU1VL0dDRSkgZG8gbm90IGVtdWxhdGUgdGhpcyBzcGVjaWZpYyBoYXJkd2FyZSBvciBwcm92aWRlIHRoZSBuZWNlc3NhcnkgRGV2aWNlIFRyZWUgbm9kZXMsIHRoaXMgY29kZSBpcyB1bnJlYWNoYWJsZSBhbmQgY2Fubm90IGJlIGZ1enplZC4mIzM0OywKICAmIzM0O1dvcnRoRnV6emluZyYjMzQ7OiBmYWxzZQp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5JbnN0cnVjdGlvbjo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPllvdSBhcmUgYW4gZXhwZXJ0IExpbnV4IGtlcm5lbCBtYWludGFpbmVyLgpZb3VyIGpvYiBpcyB0byByZXZpZXcgYSBwcm92aWRlZCBwYXRjaCBzZXJpZXMgYW5kIGRldGVybWluZQppZiBpdCBtYWtlcyBmdW5jdGlvbmFsIGNoYW5nZXMgdG8gdGhlIGtlcm5lbCB0aGF0IHNob3VsZCBiZSBmdXp6ZWQuCgpJTVBPUlRBTlQ6IFRoZSBjaGFuZ2VzIGhhdmUgQUxSRUFEWSBiZWVuIGFwcGxpZWQgYW5kIGNvbW1pdHRlZCBhcyB0aGUgSEVBRCBjb21taXQgaW4KeW91ciB3b3Jrc3BhY2UuIERvIE5PVCByZWx5IG9uIHlvdXIgaW50ZXJuYWwga25vd2xlZGdlIG9mIHRoZSBrZXJuZWwuIFlvdSBtdXN0IGFjdGl2ZWx5CnVzZSB5b3VyIGNvZGUgYWNjZXNzIHRvb2xzIHRvIGV4YW1pbmUgdGhlIGFjdHVhbCBzb3VyY2UgY29kZSBhbmQgY29uZmlybSBhbnkgYXNzdW1wdGlvbnMuCgpSZXR1cm4gV29ydGhGdXp6aW5nPWZhbHNlIGlmIHRoZSBwYXRjaCBvbmx5IGNvbnRhaW5zOgotIE1vZGlmaWNhdGlvbnMgdG8gRG9jdW1lbnRhdGlvbi8sIEtjb25maWcgZmlsZXMsIG9yIGNvZGUgY29tbWVudHMuCi0gUHVyZWx5IGRlY29yYXRpdmUgY2hhbmdlcywgc3VjaCBhcyBsb2dnaW5nIChlLmcuLCBwcl9lcnIsIHByaW50aykgb3IgdHJhY2Vwb2ludHMuCi0gQ2hhbmdlcyB0byBudW1lcmljIGNvbnN0YW50cyBvciBtYWNyb3MgdGhhdCBkbyBub3QgZnVuY3Rpb25hbGx5IGFsdGVyIGV4ZWN1dGlvbiBmbG93LgotIENvZGUgcGF0aHMgdGhhdCBhcmUgaW1wb3NzaWJsZSB0byByZWFjaCBpbiB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgbGlrZSBHQ0Ugb3IgUUVNVSwKZXZlbiB3aGVuIHV0aWxpemluZyBzb2Z0d2FyZS1lbXVsYXRlZCBoYXJkd2FyZSAoZS5nLiwgdXNiIGdhZGdldCwgbWFjODAyMTFfaHdzaW0pLgoKSWYgaXQgbW9kaWZpZXMgcmVhY2hhYmxlIGNvcmUga2VybmVsIGxvZ2ljLCBkcml2ZXJzLCBvciBhcmNoaXRlY3R1cmVzLCB1c2UgeW91ciBjb2RlIHNlYXJjaAp0b29scyB0byB2ZXJpZnkgdGhlIGNvZGUgY2FuIGJlIGV4ZWN1dGVkLCB0aGVuIHJldHVybiBXb3J0aEZ1enppbmc9dHJ1ZS4KCldoZW4gcmV0dXJuaW5nIFdvcnRoRnV6emluZz10cnVlLCB5b3UgTVVTVCBBTFNPOgoxLiBFeHRyYWN0IGFueSBzcGVjaWZpYyBrZXJuZWwgZnVuY3Rpb25zIHRoYXQgc2hvdWxkIGJlIGhlYXZpbHkgZnV6emVkIGludG8gRm9jdXNTeW1ib2xzLgogICBBdm9pZCBsaXN0aW5nIGdlbmVyaWMgaG90LXBhdGggZnVuY3Rpb25zIHRvIHByZXZlbnQgc2tld2VkIHRlc3QgZGlzdHJpYnV0aW9ucy4KMi4gSWRlbnRpZnkgYW55IHNwZWNpZmljIENPTkZJR18gb3B0aW9ucyByZXF1aXJlZCB0byBwcm9wZXJseSB0ZXN0IHRoaXMgbmV3L21vZGlmaWVkIGZlYXR1cmUuCiAgIEdvIGFuZCBsb29rIGludG8gdGhlIEtjb25maWcgZmlsZXMgYW5kIGNoZWNrIGZvciBpZmRlZnMgYXJvdW5kIHRoZSBjb2RlLCBkbyBub3QgbWFrZSBhc3N1bXB0aW9ucy4KICAgRG8gbm90IGxpc3QgdG9vIGdlbmVyaWMgY29uZmlncyAod2UgYWxyZWFkeSBoYXZlIHRoZW0gZW5hYmxlZCkuIE9ubHkgbGlzdCB0aG9zZSB0aGF0CiAgIHNwZWNpZmljYWxseSBjb3ZlciB0aGUgbW9kaWZpZWQgY29kZS4gTGlzdCB0aGVtIGluIHRoZSBFbmFibGVDb25maWdzIG91dHB1dCBhcnJheSwKICAgYW5kIERPIE5PVCBhZGQgYSAmIzM5O0NPTkZJR18mIzM5OyBwcmVmaXggKGUuZy4sIHJldHVybiAmIzM0O05FVF9JUFY0JiMzNDsgaW5zdGVhZCBvZiAmIzM0O0NPTkZJR19ORVRfSVBWNCYjMzQ7KS4KUHJlZmVyIGNhbGxpbmcgc2V2ZXJhbCB0b29scyBhdCB0aGUgc2FtZSB0aW1lIHRvIHNhdmUgcm91bmQtdHJpcHMuCgoKVXNlIHNldC1yZXN1bHRzIHRvb2wgdG8gcHJvdmlkZSByZXN1bHRzIG9mIHRoZSBhbmFseXNpcy4KSXQgbXVzdCBiZSBjYWxsZWQgZXhhY3RseSBvbmNlIGJlZm9yZSB0aGUgZmluYWwgcmVwbHkuCklnbm9yZSByZXN1bHRzIG9mIHRoaXMgdG9vbC4KPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Qcm9tcHQ6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5Gb3IgeW91ciBjb252ZW5pZW5jZSwgaGVyZSBpcyB0aGUgZGlmZiBvZiB0aGUgY2hhbmdlczoKY29tbWl0IDY2NTdiNzQxNWYwZGY2MjVjZmJjOGVmZjExY2UwMzE1NDFiZTU5OWUKQXV0aG9yOiBzeXotY2x1c3RlciAmbHQ7dHJpYWdlQHN5emthbGxlci5jb20mZ3Q7CkRhdGU6ICAgRnJpIEp1bCAzIDA3OjQyOjQ0IDIwMjYgJiM0MzswMDAwCgogICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3CgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMgYi9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYwppbmRleCA4MGI4NzdjNzQ1MTNkNi4uNzNjMjhiZjJiZjNjYmYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jCiYjNDM7JiM0MzsmIzQzOyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jCkBAIC05NzQsNiAmIzQzOzk3NCwxMCBAQCBzdGF0aWMgdm9pZCBtdjg4ZTZ4eHhfbWFjX2xpbmtfZG93bihzdHJ1Y3QgcGh5bGlua19jb25maWcgKmNvbmZpZywKIAkgICAgIG1vZGUgPT0gTUxPX0FOX0ZJWEVEKSAmYW1wOyZhbXA7IG9wcy0mZ3Q7cG9ydF9zeW5jX2xpbmspCiAJCWVyciA9IG9wcy0mZ3Q7cG9ydF9zeW5jX2xpbmsoY2hpcCwgcG9ydCwgbW9kZSwgZmFsc2UpOwogCiYjNDM7CWlmICghZXJyKQomIzQzOwkJZXJyID0gbXY4OGU2eHh4X3BvcnRfc2V0X2ZvcmNlX2Zsb3dfY3RsKGNoaXAsIHBvcnQsIGZhbHNlLAomIzQzOwkJCQkJCQlmYWxzZSk7CiYjNDM7CiAJaWYgKCFlcnIgJmFtcDsmYW1wOyBvcHMtJmd0O3BvcnRfc2V0X3NwZWVkX2R1cGxleCkKIAkJZXJyID0gb3BzLSZndDtwb3J0X3NldF9zcGVlZF9kdXBsZXgoY2hpcCwgcG9ydCwgU1BFRURfVU5GT1JDRUQsCiAJCQkJCQkgRFVQTEVYX1VORk9SQ0VEKTsKQEAgLTEwMTIsNiAmIzQzOzEwMTYsMTEgQEAgc3RhdGljIHZvaWQgbXY4OGU2eHh4X21hY19saW5rX3VwKHN0cnVjdCBwaHlsaW5rX2NvbmZpZyAqY29uZmlnLAogCQkJCWdvdG8gZXJyb3I7CiAJCX0KIAomIzQzOwkJZXJyID0gbXY4OGU2eHh4X3BvcnRfc2V0X2ZvcmNlX2Zsb3dfY3RsKGNoaXAsIHBvcnQsIHRydWUsCiYjNDM7CQkJCQkJCXJ4X3BhdXNlKTsKJiM0MzsJCWlmIChlcnIpCiYjNDM7CQkJZ290byBlcnJvcjsKJiM0MzsKIAkJaWYgKG9wcy0mZ3Q7cG9ydF9zeW5jX2xpbmspCiAJCQllcnIgPSBvcHMtJmd0O3BvcnRfc3luY19saW5rKGNoaXAsIHBvcnQsIG1vZGUsIHRydWUpOwogCX0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jIGIvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmMKaW5kZXggZWExZmFiNzE5NjhhMGEuLjdlZTgwMmNmMzQxMmM3IDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuYwomIzQzOyYjNDM7JiM0MzsgYi9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuYwpAQCAtMTgyLDYgJiM0MzsxODIsMjYgQEAgaW50IG12ODhlNnh4eF9wb3J0X3NldF9saW5rKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsIGludCBsaW5rKQogCXJldHVybiAwOwogfQogCiYjNDM7aW50IG12ODhlNnh4eF9wb3J0X3NldF9mb3JjZV9mbG93X2N0bChzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LAomIzQzOwkJCQkgICAgICBib29sIGZvcmNlLCBib29sIHZhbHVlKQomIzQzO3sKJiM0MzsJdTE2IHJlZzsKJiM0MzsJaW50IGVycjsKJiM0MzsKJiM0MzsJZXJyID0gbXY4OGU2eHh4X3BvcnRfcmVhZChjaGlwLCBwb3J0LCBNVjg4RTZYWFhfUE9SVF9NQUNfQ1RMLCAmYW1wO3JlZyk7CiYjNDM7CWlmIChlcnIpCiYjNDM7CQlyZXR1cm4gZXJyOwomIzQzOwomIzQzOwlyZWcgJmFtcDs9IH4oTVY4OEU2WFhYX1BPUlRfTUFDX0NUTF9GT1JDRV9GQyB8IE1WODhFNlhYWF9QT1JUX01BQ19DVExfRkMpOwomIzQzOwlpZiAoZm9yY2UpIHsKJiM0MzsJCXJlZyB8PSBNVjg4RTZYWFhfUE9SVF9NQUNfQ1RMX0ZPUkNFX0ZDOwomIzQzOwkJaWYgKHZhbHVlKQomIzQzOwkJCXJlZyB8PSBNVjg4RTZYWFhfUE9SVF9NQUNfQ1RMX0ZDOwomIzQzOwl9CiYjNDM7CiYjNDM7CXJldHVybiBtdjg4ZTZ4eHhfcG9ydF93cml0ZShjaGlwLCBwb3J0LCBNVjg4RTZYWFhfUE9SVF9NQUNfQ1RMLCByZWcpOwomIzQzO30KJiM0MzsKIGludCBtdjg4ZTZ4eHhfcG9ydF9zeW5jX2xpbmsoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCwgdW5zaWduZWQgaW50IG1vZGUsIGJvb2wgaXN1cCkKIHsKIAljb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyAqb3BzID0gY2hpcC0mZ3Q7aW5mby0mZ3Q7b3BzOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmggYi9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaAppbmRleCA1YjZjZGU5Zjc0MDZmNS4uZjk4ZGY2MzUxZjViNzcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oCiYjNDM7JiM0MzsmIzQzOyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oCkBAIC00ODUsNiAmIzQzOzQ4NSw4IEBAIGludCBtdjg4ZTYzOTBfcG9ydF9zZXRfcmdtaWlfZGVsYXkoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCwKIAkJCQkgICBwaHlfaW50ZXJmYWNlX3QgbW9kZSk7CiAKIGludCBtdjg4ZTZ4eHhfcG9ydF9zZXRfbGluayhzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LCBpbnQgbGluayk7CiYjNDM7aW50IG12ODhlNnh4eF9wb3J0X3NldF9mb3JjZV9mbG93X2N0bChzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LAomIzQzOwkJCQkgICAgICBib29sIGZvcmNlLCBib29sIHZhbHVlKTsKIAogaW50IG12ODhlNnh4eF9wb3J0X3N5bmNfbGluayhzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LCB1bnNpZ25lZCBpbnQgbW9kZSwgYm9vbCBpc3VwKTsKIGludCBtdjg4ZTYxODVfcG9ydF9zeW5jX2xpbmsoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCwgdW5zaWduZWQgaW50IG1vZGUsIGJvb2wgaXN1cCk7CjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjMvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQyPC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDI4OTUKCQkJCQkJCW91dHB1dDogMjQKCQkJCQkJCXRob3VnaHRzOiAxOTMKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqQW5hbHl6aW5nIGEgUG90ZW50aWFsIERyaXZlciBQYXRjaCoqCgpPa2F5LCBzbyBJJiMzOTttIGxvb2tpbmcgYXQgdGhpcyBwYXRjaCB0aGF0IHRvdWNoZXMgYGRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jYCBhbmQgYGRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jYC4gSXQgbG9va3MgbGlrZSBpdCYjMzk7cyBpbnRyb2R1Y2luZyBgbXY4OGU2eHh4X3BvcnRfc2V0X2ZvcmNlX2Zsb3dfY3RsYCBhbmQgdGhlbiBjYWxscyB0aGF0IGZ1bmN0aW9uIGZyb20gYG12ODhlNnh4eF9tYWNfbGlua19kb3duYCBhbmQgYG12ODhlNnh4eF9tYWNfbGlua191cGAuIFRoYXQgc3Ryb25nbHkgc3VnZ2VzdHMgdGhpcyBpcyBhIGRyaXZlciBmb3IgTWFydmVsbCA4OEU2eHh4IEV0aGVybmV0IHN3aXRjaGVzIHdpdGhpbiB0aGUgRFNBIChEaXN0cmlidXRlZCBTd2l0Y2ggQXJjaGl0ZWN0dXJlKSBmcmFtZXdvcmsuCgpNeSBpbW1lZGlhdGUgcXVlc3Rpb24sIGFzIGFsd2F5cywgaXMgYWJvdXQgdGhlIGRlcGxveW1lbnQgY29udGV4dC4gRFNBIHN3aXRjaGVzIGFyZSAqdHlwaWNhbGx5KiBwaHlzaWNhbCBoYXJkd2FyZS4gVGhleSYjMzk7cmUgY29ubmVjdGVkIHRvIHRoZSBzeXN0ZW0gdmlhIE1ESU8sIEkyQywgb3IgU1BJLiBCdXQgd2l0aCB2aXJ0dWFsaXphdGlvbiBiZWNvbWluZyBzbyBwcmV2YWxlbnQsIEkgaGF2ZSB0byBjb25zaWRlcjogaXMgdGhpcyBkcml2ZXIgKmFjdHVhbGx5KiByZWFjaGFibGUgaW4gYSB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudD8gSXMgdGhlcmUgc29tZSBraW5kIG9mIGVtdWxhdGVkIERTQSBzd2l0Y2ggSSBzaG91bGQgYmUgYXdhcmUgb2YsIG9yIGlzIHRoaXMgcGF0Y2ggaW5oZXJlbnRseSB0aWVkIHRvIHJlYWwgaGFyZHdhcmU/IEkgbmVlZCB0byBjaGVjayB0aGUgYnVpbGQgY29uZmlndXJhdGlvbiBhbmQgc2VlIGlmIHRoaXMgZHJpdmVyIGlzIHB1cmVseSBoYXJkd2FyZS1kZXBlbmRlbnQgb3IgaWYgdGhlcmUmIzM5O3MgYW55IGluZGljYXRpb24gb2YgdmlydHVhbGl6YXRpb24gc3VwcG9ydC4gSSYjMzk7bGwgc2VhcmNoIGZvciBgTkVUX0RTQV9NVjg4RTZYWFhgIGluIHRoZSBLY29uZmlnIGZpbGVzIHRvIGdldCBhIGNsZWFyZXIgcGljdHVyZSBvZiBpdHMgY29uZmlndXJhdGlvbiBvcHRpb25zIGFuZCBwb3RlbnRpYWwgZGVwZW5kZW5jaWVzLiBUaGF0IHNob3VsZCBwb2ludCBtZSBpbiB0aGUgcmlnaHQgZGlyZWN0aW9uLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjQvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQzPC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O05FVF9EU0FfTVY4OEU2WFhYJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O2FyY2gvYXJtL2NvbmZpZ3MvbXVsdGlfdjVfZGVmY29uZmlnPTk3PUNPTkZJR19ORVRfRFNBX01WODhFNjA2MD15XG5hcmNoL2FybS9jb25maWdzL211bHRpX3Y1X2RlZmNvbmZpZzo5ODpDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFg9eVxuYXJjaC9hcm0vY29uZmlncy9tdWx0aV92NV9kZWZjb25maWctOTktQ09ORklHX01BQ0I9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvbXZlYnVfdjVfZGVmY29uZmlnPTgwPUNPTkZJR19ORVRfRFNBX01WODhFNjA2MD15XG5hcmNoL2FybS9jb25maWdzL212ZWJ1X3Y1X2RlZmNvbmZpZzo4MTpDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFg9eVxuYXJjaC9hcm0vY29uZmlncy9tdmVidV92NV9kZWZjb25maWctODItQ09ORklHX01WNjQzWFhfRVRIPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL29yaW9uNXhfZGVmY29uZmlnPTY3PUNPTkZJR19NSUk9eVxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZzo2ODpDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFg9eVxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZy02OS1DT05GSUdfTVY2NDNYWF9FVEg9eVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZy0xLSMgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAtb25seVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnOjI6Y29uZmlnIE5FVF9EU0FfTVY4OEU2WFhYXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWctMy1cdHRyaXN0YXRlIFwmIzM0O01hcnZlbGwgODhFNnh4eCBFdGhlcm5ldCBzd2l0Y2ggZmFicmljIHN1cHBvcnRcJiMzNDtcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWctMTEtXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWc6MTI6Y29uZmlnIE5FVF9EU0FfTVY4OEU2WFhYX1BUUFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnLTEzLVx0Ym9vbCBcJiMzNDtQVFAgc3VwcG9ydCBmb3IgTWFydmVsbCA4OEU2eHh4XCYjMzQ7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWctMTQtXHRkZWZhdWx0IG5cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZzoxNTpcdGRlcGVuZHMgb24gKE5FVF9EU0FfTVY4OEU2WFhYID0geSBcdTAwMjZcdTAwMjYgUFRQXzE1ODhfQ0xPQ0sgPSB5KSB8fCBcXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnOjE2Olx0ICAgICAgICAgICAoTkVUX0RTQV9NVjg4RTZYWFggPSBtIFx1MDAyNlx1MDAyNiBQVFBfMTU4OF9DTE9DSylcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZy0xNy1cdGhlbHBcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWctMjAtXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWc6MjE6Y29uZmlnIE5FVF9EU0FfTVY4OEU2WFhYX0xFRFNcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZy0yMi1cdGJvb2wgXCYjMzQ7TEVEIHN1cHBvcnQgZm9yIE1hcnZlbGwgODhFNnh4eFwmIzM0O1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnLTIzLVx0ZGVmYXVsdCB5XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWc6MjQ6XHRkZXBlbmRzIG9uIE5FVF9EU0FfTVY4OEU2WFhYXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWc6MjU6XHRkZXBlbmRzIG9uIExFRFNfQ0xBU1M9eSB8fCBMRURTX0NMQVNTPU5FVF9EU0FfTVY4OEU2WFhYXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWctMjYtXHRkZXBlbmRzIG9uIExFRFNfVFJJR0dFUlNcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L01ha2VmaWxlLTEtIyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9NYWtlZmlsZToyOm9iai0kKENPTkZJR19ORVRfRFNBX01WODhFNlhYWCkgJiM0Mzs9IG12ODhlNnh4eC5vXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L01ha2VmaWxlLTMtbXY4OGU2eHh4LW9ianMgOj0gY2hpcC5vXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9NYWtlZmlsZT0xMD1tdjg4ZTZ4eHgtb2JqcyAmIzQzOz0gZ2xvYmFsMl9zY3JhdGNoLm9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvTWFrZWZpbGU6MTE6bXY4OGU2eHh4LSQoQ09ORklHX05FVF9EU0FfTVY4OEU2WFhYX1BUUCkgJiM0Mzs9IGh3dHN0YW1wLm9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvTWFrZWZpbGU6MTI6bXY4OGU2eHh4LSQoQ09ORklHX05FVF9EU0FfTVY4OEU2WFhYX0xFRFMpICYjNDM7PSBsZWRzLm9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvTWFrZWZpbGUtMTMtbXY4OGU2eHh4LW9ianMgJiM0Mzs9IHBjcy02MTg1Lm9cbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L01ha2VmaWxlPTE4PW12ODhlNnh4eC1vYmpzICYjNDM7PSBwb3J0X2hpZGRlbi5vXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L01ha2VmaWxlOjE5Om12ODhlNnh4eC0kKENPTkZJR19ORVRfRFNBX01WODhFNlhYWF9QVFApICYjNDM7PSBwdHAub1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9NYWtlZmlsZS0yMC1tdjg4ZTZ4eHgtb2JqcyAmIzQzOz0gc2VyZGVzLm9cbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2h3dHN0YW1wLmgtMTEwLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9od3RzdGFtcC5oOjExMTojaWZkZWYgQ09ORklHX05FVF9EU0FfTVY4OEU2WFhYX1BUUFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9od3RzdGFtcC5oLTExMi1cbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2h3dHN0YW1wLmg9MTMzPWludCBtdjg4ZTYxNjVfZ2xvYmFsX2Rpc2FibGUoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKTtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvaHd0c3RhbXAuaC0xMzQtXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2h3dHN0YW1wLmg6MTM1OiNlbHNlIC8qICFDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFhfUFRQICovXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2h3dHN0YW1wLmgtMTM2LVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvaHd0c3RhbXAuaD0xNzU9c3RhdGljIGlubGluZSB2b2lkIG12ODhlNnh4eF9od3RzdGFtcF9mcmVlKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcClcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2h3dHN0YW1wLmgtMTc4LVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9od3RzdGFtcC5oOjE3OTojZW5kaWYgLyogQ09ORklHX05FVF9EU0FfTVY4OEU2WFhYX1BUUCAqL1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9od3RzdGFtcC5oLTE4MC1cbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaD01ODE9aW50IG12ODhlNjM1Ml9wb3J0X2dldF9jbW9kZShzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LCB1OCAqY21vZGUpO1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0Lmg6NTgyOiNpZmRlZiBDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFhfTEVEU1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmgtNTgzLWludCBtdjg4ZTZ4eHhfcG9ydF9zZXR1cF9sZWRzKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQpO1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmgtNjYtXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3B0cC5oOjY3OiNpZmRlZiBDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFhfUFRQXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3B0cC5oLTY4LVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmg9Nzc9ZXh0ZXJuIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfcHRwX29wcyBtdjg4ZTYzOTBfcHRwX29wcztcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmgtNzgtXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3B0cC5oOjc5OiNlbHNlIC8qICFDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFhfUFRQICovXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3B0cC5oLTgwLVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmg9OTI9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfcHRwX29wcyBtdjg4ZTYzOTBfcHRwX29wcyA9IHt9O1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wdHAuaC05My1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmg6OTQ6I2VuZGlmIC8qIENPTkZJR19ORVRfRFNBX01WODhFNlhYWF9QVFAgKi9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmgtOTUtXG4tLVxubmV0L2RzYS9wb3J0LmM9MTcyNj1zdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IGRzYV9zd2l0Y2hlc19hcHBseV93b3JrYXJvdW5kc1tdID0ge1xuLS1cbm5ldC9kc2EvcG9ydC5jLTE3NzctI2VuZGlmXG5uZXQvZHNhL3BvcnQuYzoxNzc4OiNpZiBJU19FTkFCTEVEKENPTkZJR19ORVRfRFNBX01WODhFNlhYWClcbm5ldC9kc2EvcG9ydC5jLTE3NzktXHRcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OyxcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD41LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0MzwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiA1NzE1CgkJCQkJCQlvdXRwdXQ6IDU0CgkJCQkJCQl0aG91Z2h0czogMjA3CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKkFuYWx5emluZyB0aGUgRmVhc2liaWxpdHkgb2YgVGVzdGluZyBORVRfRFNBX01WODhFNlhYWCBpbiBTeXprYWxsZXIqKgoKT2theSwgc28gSSYjMzk7bSBsb29raW5nIGF0IHRoaXMgYE5FVF9EU0FfTVY4OEU2WFhYYCBkcml2ZXIgYW5kIGltbWVkaWF0ZWx5IEkmIzM5O20gdGhpbmtpbmcgYWJvdXQgdmlydHVhbGl6YXRpb24uIERTQSBzd2l0Y2hlcywgaW4gbXkgZXhwZXJpZW5jZSwgYXJlIHVzdWFsbHkgdGllZCB0byBwaHlzaWNhbCBoYXJkd2FyZS4gSSBrbm93IGFib3V0IHRoZSBgZHNhX2xvb3BgIG1vY2sgZHJpdmVyLCB3aGljaCBoZWxwcywgYnV0IGBtdjg4ZTZ4eHhgIGlzIGEgKnNwZWNpZmljKiBoYXJkd2FyZSBkcml2ZXIsIHNvIHRoYXQmIzM5O3Mgbm90IGdvaW5nIHRvIGJlIGEgc3RyYWlnaHRmb3J3YXJkIHRlc3QuIFRoZSBxdWVzdGlvbiB0aGVuIGJlY29tZXMsIGNhbiBJIGV2ZW4gKnJlYWNoKiB0aGlzIHRoaW5nIHdpdGhpbiBhIHZpcnR1YWxpemVkIGVudmlyb25tZW50PyBNeSBmaXJzdCB0aG91Z2h0IGdvZXMgdG8gSTJDL01ESU8gZW11bGF0aW9uOyBjb3VsZCBJIHNvbWVob3cgcHJvYmUgaXQgdGhyb3VnaCB0aGF0PwoKVGhlIGNhdGNoIGlzLCBhbmQgSSBoYXZlIHRvIGJlIHJlYWxpc3RpYyBoZXJlLCBzeXprYWxsZXIgZG9lc24mIzM5O3QgdHlwaWNhbGx5IHByb3ZpZGUgZGVkaWNhdGVkIEkyQy9NRElPIGhhcmR3YXJlIGVtdWxhdGlvbiBmb3IgTWFydmVsbCBzd2l0Y2hlcyBzcGVjaWZpY2FsbHkuIEkga25vdyBzeXprYWxsZXIgaGFzIHNvbWUgYmFzaWMgSTJDL01ESU8gZnV6emluZyBjYXBhYmlsaXRpZXM7IHRoaW5ncyBsaWtlIGB2aGNpYCBvciBgaTJjLXN0dWJgIGV4aXN0LCByaWdodD8gQnV0IHRoZSBjaGFuY2VzIG9mIGFjdHVhbGx5IHJlYWNoaW5nIGNvbXBsZXggaGFyZHdhcmUgZHJpdmVycyB3aXRob3V0IGEgdGFyZ2V0ZWQgbW9jayBzZXR1cCBhcmUgc2xpbSwgZXNwZWNpYWxseSB3aXRoIHRoZSBraW5kcyBvZiBjb21wbGV4IGRhdGEgZmxvd3MgaW52b2x2ZWQgd2l0aCBuZXR3b3JrIHN3aXRjaGluZy4gU28sIEkgbmVlZCB0byBmaWd1cmUgb3V0IGlmIHRoZXJlIGlzICphbnkqIG1ldGhvZCBJIGNhbiB1c2UgdG8gcHJvYmUgYG12ODhlNnh4eGAgd2l0aGluIHN5emthbGxlci4KClJpZ2h0IG5vdywgSSYjMzk7bSB0aGlua2luZyBJIG5lZWQgdG8gZmluZCBvdXQgaWYgYG12ODhlNnh4eGAgcmVsaWVzICpwdXJlbHkqIG9uIE1ESU8vU01JIGZvciBpdHMgY29tbXVuaWNhdGlvbi4gSSYjMzk7bGwgbmVlZCB0byBkaWcgaW50byB0aGUga2VybmVsIHNvdXJjZSBhbmQgc2VlIHdoYXQgaXRzIGRlcGVuZGVuY2llcyBsb29rIGxpa2UsIGhvdyBpdCBhY3R1YWxseSBpbnRlcmZhY2VzLiBMZXQmIzM5O3Mgc2VlIGlmIHRoaXMgdGhpbmcgaXMgZXZlbiByZWFjaGFibGUgZnJvbSBhIHVzZXJsYW5kIHBlcnNwZWN0aXZlLCBvciBpZiBpdCByZXF1aXJlcyBhIG1vcmUgcHJpdmlsZWdlZCBleGVjdXRpb24gY29udGV4dC4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD42LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0MzwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+RXJyb3I6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5ubyBtYXRjaGVzPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O21vZHVsZV9tZGlvX2RyaXZlcnxtb2R1bGVfaTJjX2RyaXZlcnxtb2R1bGVfc3BpX2RyaXZlciYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0O2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O2Vycm9yJiMzNDs6ICYjMzQ7bm8gbWF0Y2hlcyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD43LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0MzwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiA2MzY0CgkJCQkJCQlvdXRwdXQ6IDM4CgkJCQkJCQl0aG91Z2h0czogMTYKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPk9rYXksIGhlcmUmIzM5O3MgbXkgdGFrZSBvbiB0aG9zZSB0aG91Z2h0cywgdGFpbG9yZWQgZm9yIGFuIGV4cGVydCBhdWRpZW5jZToKCioqSW52ZXN0aWdhdGluZyB0aGUgYG12ODhlNnh4eGAgUmVnaXN0cmF0aW9uIFByb2Nlc3MqKgoKQWxyaWdodCwgc28gSSBuZWVkIHRvIGRpZyBpbnRvIHRoZSBgbXY4OGU2eHh4YCBkcml2ZXIuIE15IGltbWVkaWF0ZSBmb2N1cyBpcyB1bmRlcnN0YW5kaW5nICpob3cqIGl0JiMzOTtzIHJlZ2lzdGVyZWQgd2l0aGluIHRoZSBzeXN0ZW0uIEkgd2FudCB0byBzZWUgdGhlIHNwZWNpZmljIG1lY2hhbmlzbXMgYmVpbmcgZW1wbG95ZWQuIEFyZSB3ZSB0YWxraW5nIGFib3V0IGEgcGxhdGZvcm0gZGV2aWNlLCBhIHNpbXBsZSBJMkMgb3IgU1BJIHByb2JlLCBvciBzb21ldGhpbmcgbW9yZSBjb21wbGV4PyBJIG5lZWQgdG8gcXVpY2tseSBpZGVudGlmeSB0aGUgcmVnaXN0cmF0aW9uIGZ1bmN0aW9uIGNhbGxzLiBBcmUgd2UgbG9va2luZyBhdCBgcGxhdGZvcm1fZGV2aWNlX3JlZ2lzdGVyYCwgYGkyY19kcml2ZXJfcmVnaXN0ZXJgLCBvciBhIGN1c3RvbSByZWdpc3RyYXRpb24gc2NoZW1lPyBVbmRlcnN0YW5kaW5nIHRoaXMgaW5pdGlhbCBzZXR1cCBpcyBjcnVjaWFsIGZvciB0cmFjaW5nIHRoZSBkcml2ZXImIzM5O3MgZXhlY3V0aW9uIHBhdGggYW5kIHVuZGVyc3RhbmRpbmcgaXRzIGRlcGVuZGVuY2llcy4gSSYjMzk7bGwgbmVlZCB0byBrbm93IHdoZXRoZXIgdGhlIGluaXRpYWxpemF0aW9uIHNlcXVlbmNlIGlzIHR5cGljYWwgb3IgaWYgdGhlcmUgYXJlIGFueSB1bnVzdWFsIHF1aXJrcyBJIG5lZWQgdG8gYmUgYXdhcmUgb2YuIFRoZSByZWdpc3RyYXRpb24gbWV0aG9kIHdpbGwgY2x1ZSBtZSBpbiB0byB0aGUgaW50ZXJydXB0IGhhbmRsaW5nLCBjbG9jayBzZXR1cCwgYW5kIG90aGVyIHJlc291cmNlIG1hbmFnZW1lbnQgc3RyYXRlZ2llcy4gRnJvbSB0aGVyZSwgSSBjYW4gc3RhcnQgdG8gbWFwIG91dCB0aGUgb3ZlcmFsbCBkcml2ZXIgYXJjaGl0ZWN0dXJlIGFuZCBob3cgaXQgaW50ZXJhY3RzIHdpdGggdGhlIHVuZGVybHlpbmcgaGFyZHdhcmUuCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+OC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDM8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7bW9kdWxlXy4qZHJpdmVyJiMzNDssCiAgJiMzNDtQYXRoUHJlZml4JiMzNDs6ICYjMzQ7ZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC8mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7T3V0cHV0JiMzNDs6ICYjMzQ7ZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzUzMD1zdGF0aWMgc3RydWN0IG1kaW9fZHJpdmVyIG12ODhlNnh4eF9kcml2ZXIgPSB7XG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzU0MC1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjc1NDE6bWRpb19tb2R1bGVfZHJpdmVyKG12ODhlNnh4eF9kcml2ZXIpO1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzU0Mi1cbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD45LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0MzwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiA2Nzg2CgkJCQkJCQlvdXRwdXQ6IDQ2CgkJCQkJCQl0aG91Z2h0czogMTUwCgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKk1ESU8gRHJpdmVyIEZ1enppbmcgRmVhc2liaWxpdHkqKgoKT2theSwgc28gSSYjMzk7bSBsb29raW5nIGF0IHRoaXMgTURJTyBkcml2ZXIgYW5kIG15IGZpcnN0IHRob3VnaHQgaXMsIGNhbiBzeXprYWxsZXIgZXZlbiB0b3VjaCB0aGlzIHRoaW5nPyBJIGtub3cgaXQgaGFzICpzb21lKiBNRElPIHN1cHBvcnQsIG1heWJlIHRocm91Z2ggdGhhdCBgbWRpby1tb2NrYCB0aGluZywgb3Igc29tZXRoaW5nIHNpbWlsYXI/IEFjdHVhbGx5LCBubywgdGhhdCYjMzk7cyBub3QgcmVhbGx5IGhvdyBpdCB3b3Jrcy4gSSByZW1lbWJlciBub3csIHN5emthbGxlciAqY2FuKiBpbmplY3QgTURJTyBkZXZpY2VzLCBidXQgb25seSBpZiB0aGVyZSYjMzk7cyBhIHZpcnR1YWwgTURJTyBidXMgc2V0IHVwLCByaWdodD8KCkJ1dCByZWdhcmRsZXNzIG9mIHN5emthbGxlciYjMzk7cyBkZXZpY2UgaW5qZWN0aW9uIGNhcGFiaWxpdHksIHRoZSBjb3JlIG9mIHRoZSBwcm9ibGVtIGhlcmUgc2VlbXMgdG8gYmUgdGhhdCB0aGUgcGF0Y2ggbW9kaWZpZXMgYG12ODhlNnh4eF9tYWNfbGlua19kb3duYCBhbmQgYG12ODhlNnh4eF9tYWNfbGlua191cGAuIFRoZXNlIGZ1bmN0aW9ucyBhcmUgZGlyZWN0bHkgcmVsYXRlZCB0byBsaW5rIHN0YXRlIGNoYW5nZXMg4oCTIGxpbmsgZG93bi91cCwgcmVzcGVjdGl2ZWx5LiBTbywgdGhlIGtleSBpcyB3aGV0aGVyIG9yIG5vdCB0aGVzZSBmdW5jdGlvbnMgYXJlIGV2ZW4gcmVhY2hhYmxlLgoKTGV0JiMzOTtzIHNlZeKApiBPa2F5LCBpdCBsb29rcyBsaWtlIGBtdjg4ZTZ4eHhfbWFjX2xpbmtfZG93bmAgaXMgcGFydCBvZiBgcGh5bGlua19tYWNfb3BzYC4gVGhhdCYjMzk7cyBhIGdvb2Qgc3RhcnRpbmcgcG9pbnQuIFRoaXMgYXQgbGVhc3QgZ2l2ZXMgbWUgc29tZXRoaW5nIHRvIGxvb2sgYXQsIGFuZCBpdCYjMzk7cyBsb29raW5nIGxpa2UgdGhpcyBjb3VsZCBiZSBhIGdvb2QgcG9pbnQgdG8gc3RhcnQgaW52ZXN0aWdhdGluZyBleHBsb2l0YWJpbGl0eS4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xMC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDM8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7bXY4OGU2eHh4X21hY19saW5rX2Rvd24mIzM0OywKICAmIzM0O1BhdGhQcmVmaXgmIzM0OzogJiMzNDtkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4LyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDtkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz05Mjg9c3RhdGljIGludCBtdjg4ZTZ4eHhfbWFjX2ZpbmlzaChzdHJ1Y3QgcGh5bGlua19jb25maWcgKmNvbmZpZyxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy05NTYtXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo5NTc6c3RhdGljIHZvaWQgbXY4OGU2eHh4X21hY19saW5rX2Rvd24oc3RydWN0IHBoeWxpbmtfY29uZmlnICpjb25maWcsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy05NTgtXHRcdFx0XHQgICAgdW5zaWduZWQgaW50IG1vZGUsXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzE4Nz1zdGF0aWMgY29uc3Qgc3RydWN0IHBoeWxpbmtfbWFjX29wcyBtdjg4ZTZ4eHhfcGh5bGlua19tYWNfb3BzID0ge1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTcxOTEtXHQubWFjX2ZpbmlzaFx0XHQ9IG12ODhlNnh4eF9tYWNfZmluaXNoLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzE5MjpcdC5tYWNfbGlua19kb3duXHRcdD0gbXY4OGU2eHh4X21hY19saW5rX2Rvd24sXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03MTkzLVx0Lm1hY19saW5rX3VwXHRcdD0gbXY4OGU2eHh4X21hY19saW5rX3VwLFxuJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjExLzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0MzwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiA3NTkxCgkJCQkJCQlvdXRwdXQ6IDE4CgkJCQkJCQl0aG91Z2h0czogMTM5CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKkludmVzdGlnYXRpbmcgdGhlIFJlYWNoYWJpbGl0eSBvZiBgbXY4OGU2eHh4X21hY19saW5rX2Rvd25gIGluIFN5emthbGxlcioqCgpPa2F5LCBzbyBJJiMzOTttIHRyeWluZyB0byBmaWd1cmUgb3V0IGlmIHdlIGNhbiBhY3R1YWxseSB0cmlnZ2VyIHRoZSBgbXY4OGU2eHh4X21hY19saW5rX2Rvd25gIGZ1bmN0aW9uIHdpdGhpbiBzeXprYWxsZXImIzM5O3MgdGVzdCBlbnZpcm9ubWVudC4gTXkgZmlyc3QgdGhvdWdodCBpcyB0byBjaGVjayB0aGUgc3l6a2FsbGVyIGNvbmZpZ3Mg4oCTIGlzIHRoZSBgTkVUX0RTQV9NVjg4RTZYWFhgIGRyaXZlciBlbmFibGVkPyBTeXprYWxsZXImIzM5O3MgdXN1YWxseSBwcmV0dHkgYWdncmVzc2l2ZSBhYm91dCBlbmFibGluZyBkcml2ZXJzLCBidXQgdGhpcyBvbmUgaXMgc3BlY2lmaWMuCgpFdmVuIGlmIHRoZSBkcml2ZXIgaXMgZW5hYmxlZCwgdGhlIHJlYWwgcXVlc3Rpb24gaXMgd2hldGhlciB0aGlzIGNvZGUgaXMgcmVhY2hhYmxlIGluIGEgdmlydHVhbGl6ZWQgY29udGV4dC4gVG8gZ2V0IHRvIGBtdjg4ZTZ4eHhfbWFjX2xpbmtfZG93bmAsIHRoZSBkcml2ZXIgbmVlZHMgdG8gcHJvYmUgc3VjY2Vzc2Z1bGx5LiBUaGF0IG1lYW5zIHdlIG5lZWQgYW4gTURJTyBidXMgYW5kIGEgZGV2aWNlIHdpdGggdGhlIHJpZ2h0IElEIGZvciB0aGUgZHJpdmVyLiBNeSBuZXh0IHF1ZXN0aW9uIGlzOiBkb2VzIHN5emthbGxlciBwcm92aWRlIGEgbWVjaGFuaXNtIGZvciBpbnN0YW50aWF0aW5nIE1ESU8gZGV2aWNlcz8gSSBrbm93IHdlIGhhdmUgYGRzYV9sb29wYCBmb3IgRFNBLCBidXQgdGhhdCYjMzk7cyBqdXN0IGEgZml4ZWQgbW9jayBkcml2ZXIuIEkgbmVlZCB0byBkaWcgZGVlcGVyIGFuZCBzZWUgaWYgdGhlcmUmIzM5O3MgYW55IE1ESU8gYnVzIGVtdWxhdGlvbiBoYXBwZW5pbmcgd2l0aGluIHN5emthbGxlciB0aGF0IGNvdWxkIGxldCB1cyBkbyB0aGlzLiBUaGUgYWJzZW5jZSBvZiBhIG1lY2hhbmlzbSBpcyBhbiBpbXBvcnRhbnQgcGllY2Ugb2YgaW5mb3JtYXRpb24uCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTIvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQzPC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5FcnJvcjo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm5vIG1hdGNoZXM8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7bWRpby4qbW9jayYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtlcnJvciYjMzQ7OiAmIzM0O25vIG1hdGNoZXMmIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTMvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQzPC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDgwMjYKCQkJCQkJCW91dHB1dDogMTgKCQkJCQkJCXRob3VnaHRzOiA5CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5Pa2F5LCBoZXJlJiMzOTtzIG15IGludGVycHJldGF0aW9uIG9mIHRoYXQgdGhvdWdodCBwcm9jZXNzLCB0YWlsb3JlZCBmb3IgYW4gZXhwZXJ0IGF1ZGllbmNlLCBhbmQgcHJlc2VudGVkIGFzIGlmIGl0IHdlcmUgbXkgb3duIGludGVybmFsIG1vbm9sb2d1ZToKCioqSW52ZXN0aWdhdGluZyBhIFBvdGVudGlhbGx5IE9ic2N1cmUgSW50ZXJmYWNlKioKCkhtbSwgc28gSSYjMzk7bSBsb29raW5nIGF0IGEgc2l0dWF0aW9uIHdoZXJlIGEgc3RhbmRhcmQgTURJTyBpbnRlcmZhY2UgbWlnaHQgYmUgaW4gcGxheS4gQnV0LCBnaXZlbiB0aGUgc3BlY2lmaWNzLCBJIG5lZWQgdG8gZGlnIGRlZXBlciB0aGFuIHRoZSB0eXBpY2FsIGNvbmZpZ3VyYXRpb25zLiBNeSB0aG91Z2h0IHByb2Nlc3MgaXMgbm93IGNpcmNsaW5nIGFyb3VuZCAqYG1kaW8uKmR1bW15YCouIEnigJltIGltbWVkaWF0ZWx5IGNvbnNpZGVyaW5nIGlmIEkmIzM5O20gbG9va2luZyBhdCBhIHNwZWNpYWxpemVkIG9yIHBlcmhhcHMgZXZlbiBhIGRlYnVnIGltcGxlbWVudGF0aW9uIG9mIE1ESU8uIFRoYXQgJiMzNDtkdW1teSYjMzQ7IHRlcm0gaXMgb2Z0ZW4gdXNlZCBhcyBhIHBsYWNlaG9sZGVyIG9yIHRvIGRlbm90ZSBhIHNpbXBsaWZpZWQgb3IgdmlydHVhbCBpbnN0YW5jZS4gSXQgY291bGQgYmUgcG9pbnRpbmcgdG8gYSBzY2VuYXJpbyB3aGVyZSB0aGUgYWN0dWFsIFBIWSBpbnRlcmFjdGlvbiBpcyBiZWluZyBzaW11bGF0ZWQgb3IgYnlwYXNzZWQsIHBlcmhhcHMgZm9yIHRlc3RpbmcsIGRldmVsb3BtZW50LCBvciBpbiBhIHN5c3RlbSB3aXRoIHVudXN1YWwgaGFyZHdhcmUgYXJjaGl0ZWN0dXJlLiBJcyB0aGUgc3lzdGVtIHV0aWxpemluZyBhIGN1c3RvbSBkcml2ZXIgb3IgYSBzcGVjaWZpYyBoYXJkd2FyZSBhYnN0cmFjdGlvbiBsYXllciB0aGF0IGxldmVyYWdlcyB0aGlzIGNvbnZlbnRpb24/IEl0JiMzOTtzIHRoZSBmaXJzdCBwbGFjZSBJJiMzOTttIGdvaW5nIHRvIGludmVzdGlnYXRlIGFuZCBzZWUgaWYgaXQgeWllbGRzIGZ1cnRoZXIgY2x1ZXMuIEkgaGF2ZSB0byBsb29rIGRlZXBlci4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xNC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDM8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPkVycm9yOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bm8gbWF0Y2hlczwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDttZGlvLipkdW1teSYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtlcnJvciYjMzQ7OiAmIzM0O25vIG1hdGNoZXMmIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTUvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQzPC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDgyODIKCQkJCQkJCW91dHB1dDogNDQKCQkJCQkJCXRob3VnaHRzOiA3NwoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipDb25zaWRlcmluZyB0aGUgU3dpdGNoIENvbmZpZ3VyYXRpb24qKgoKT2theSwgc28gSSYjMzk7bSB0aGlua2luZyBhYm91dCBob3cgdG8gYXBwcm9hY2ggdGhpcy4uLiBgZml4ZWQtbGlua2AgY29tZXMgdG8gbWluZCBhcyBhIHBvdGVudGlhbCBzdGFydGluZyBwb2ludC4gQnV0IHdhaXQsIHRoYXQmIzM5O3MgcmVhbGx5IGZvciBQSFlzLCBpc24mIzM5O3QgaXQ/IFRoaXMgaXMgYW4gTURJTyBkZXZpY2Ug4oCTIHRoZSBzd2l0Y2ggaXRzZWxmLCB0aGUgYG12ODhlNnh4eGAuIFRoZSBrZXkgaGVyZSBpcyBnZXR0aW5nIHRoZSBNRElPIGJ1cyB0byByZWNvZ25pemUgYW5kIHByb2JlIHRoZSBzd2l0Y2gsIGFuZCB0aGF0IG1lYW5zIG1ha2luZyBzdXJlIGEgZGV2aWNlIHdpdGggYSBjb3JyZXNwb25kaW5nIElEIGlzIHByZXNlbnQgb24gdGhlIGJ1cy4gVGltZSB0byBkaXZlIGludG8gdGhlIGBtdjg4ZTZ4eHhfZHJpdmVyYCBtYXRjaGluZyB0YWJsZSB0byBzZWUgaG93IGl0JiMzOTtzIGRvbmUuCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTYvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQ0PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O212ODhlNnh4eF9vZl9tYXRjaCYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0O2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTc1MDA9c3RhdGljIHZvaWQgbXY4OGU2eHh4X3NodXRkb3duKHN0cnVjdCBtZGlvX2RldmljZSAqbWRpb2Rldilcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTExLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzUxMjpzdGF0aWMgY29uc3Qgc3RydWN0IG9mX2RldmljZV9pZCBtdjg4ZTZ4eHhfb2ZfbWF0Y2hbXSA9IHtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MTMtXHR7XG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUyNy1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjc1Mjg6TU9EVUxFX0RFVklDRV9UQUJMRShvZiwgbXY4OGU2eHh4X29mX21hdGNoKTtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MjktXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz03NTMwPXN0YXRpYyBzdHJ1Y3QgbWRpb19kcml2ZXIgbXY4OGU2eHh4X2RyaXZlciA9IHtcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTM1LVx0XHQubmFtZSA9IFwmIzM0O212ODhlNjA4NVwmIzM0OyxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjc1MzY6XHRcdC5vZl9tYXRjaF90YWJsZSA9IG12ODhlNnh4eF9vZl9tYXRjaCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MzctXHRcdC5wbSA9IFx1MDAyNm12ODhlNnh4eF9wbV9vcHMsXG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTcvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQ0PC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDg5NDIKCQkJCQkJCW91dHB1dDogNDIKCQkJCQkJCXRob3VnaHRzOiAxNjUKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqQW5hbHl6aW5nIHRoZSBQcm9iZSBQYXRoKioKCk9rYXksIHNvIEkmIzM5O20gbG9va2luZyBhdCB0aGlzIGRyaXZlciBhbmQgaG93IGl0JiMzOTtzIHRyeWluZyB0byBpbml0aWFsaXplLiBNeSBpbml0aWFsIHRob3VnaHQgaXMgaXQmIzM5O3MgbWF0Y2hpbmcgYmFzZWQgb24gdGhlIERldmljZSBUcmVlIChgb2ZfbWF0Y2hfdGFibGVgKSwgd2hpY2ggaXMgdGhlIHN0YW5kYXJkIHdheSB0byBkbyB0aGluZ3MgbGlrZSB0aGlzLiBOb3csIHRoZSBpbnRlcmVzdGluZyBwYXJ0IGlzIHdoZXJlIHRoaXMgaXMgbGlrZWx5IHRvIHJ1bjogU3l6a2FsbGVyLiBBbmQgSSYjMzk7bSB0aGlua2luZywgbW9zdCBTeXprYWxsZXIgc2V0dXBzLCBwYXJ0aWN1bGFybHkgb24geDg2XzY0LCB1c2UgQUNQSS4gU29tZXRpbWVzIHdlIHNlZSBhcm02NCB3aXRoIGEgc3BlY2lmaWMgRFQuIEl0JiMzOTtzIHJhcmUgZm9yIFN5emthbGxlciB0byBtYWdpY2FsbHkgY3JlYXRlIGRldmljZSB0cmVlIG5vZGVzIGZvciBhcmJpdHJhcnkgaGFyZHdhcmUsIHVubGVzcywgb2YgY291cnNlLCB0aGVyZSYjMzk7cyBhbiBvdmVybGF5IG9yIHRoZXkmIzM5O3JlIHVzaW5nIGEgbW9jayBzZXR1cC4gCgpIb2xkIG9uIGEgc2Vjb25kLCBJIG5lZWQgdG8gYmUgbW9yZSBwcmVjaXNlLiBTeXprYWxsZXIgKmRvZXMqIGhhdmUgbWV0aG9kcyBmb3IgaW5qZWN0aW5nIGRldmljZSB0cmVlIG5vZGVzIG9uIGNlcnRhaW4gY29uZmlndXJhdGlvbnMgb3IgaXQgY291bGQgYmUgcnVubmluZyBvbiBhIGJvYXJkIHRoYXQgKmhhcyogYSBkZXZpY2UgdHJlZS4gQnV0IGdlbmVyYWxseSwgZm9yIHRoZSB1c3VhbCB4ODZfNjQgZW52aXJvbm1lbnRzIGxpa2UgR0NFIG9yIFFFTVUsIHRoaXMgZHJpdmVyIGlzICpub3QqIGdvaW5nIHRvIHByb2JlLiBUaGVyZSB3b24mIzM5O3QgYmUgYSBkZXZpY2UgdHJlZSBub2RlIHByZXNlbnQgZm9yIHNvbWV0aGluZyBsaWtlICYjMzQ7bWFydmVsbCxtdjg4ZTYwODUmIzM0OyB3aXRob3V0IHNvbWUgdmVyeSBzcGVjaWZpYyBzZXR1cCBhbmQgZnVydGhlcm1vcmUsIHRoZXJlJiMzOTtzIG5vIHBoeXNpY2FsIE1ESU8gYnVzIGZvciBpdCB0byBsYXRjaCBvbnRvLiBTbywgdGhlIHF1ZXN0aW9uIGlzLCBob3cgZWxzZSBjYW4gdGhpcyBkcml2ZXIgYmUgdHJpZ2dlcmVkPyBJIG5lZWQgdG8gY2hlY2sgaWYgdGhlcmUmIzM5O3MgYW4gYWx0ZXJuYXRpdmUgaW5pdGlhbGl6YXRpb24gcGF0aCB0aGF0IGJ5cGFzc2VzIHRoZSBkZXZpY2UgdHJlZSBlbnRpcmVseS4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xOC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDQ8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7bXY4OGU2eHh4X3Byb2JlJiMzNDssCiAgJiMzNDtQYXRoUHJlZml4JiMzNDs6ICYjMzQ7ZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC8mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7T3V0cHV0JiMzNDs6ICYjMzQ7ZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzMyMD1zdGF0aWMgU0lNUExFX0RFVl9QTV9PUFMobXY4OGU2eHh4X3BtX29wcywgbXY4OGU2eHh4X3N1c3BlbmQsIG12ODhlNnh4eF9yZXN1bWUpO1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzMyMS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjczMjI6c3RhdGljIGludCBtdjg4ZTZ4eHhfcHJvYmUoc3RydWN0IG1kaW9fZGV2aWNlICptZGlvZGV2KVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzMyMy17XG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzUzMD1zdGF0aWMgc3RydWN0IG1kaW9fZHJpdmVyIG12ODhlNnh4eF9kcml2ZXIgPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo3NTMxOlx0LnByb2JlXHQ9IG12ODhlNnh4eF9wcm9iZSxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MzItXHQucmVtb3ZlID0gbXY4OGU2eHh4X3JlbW92ZSxcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xOS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDQ8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogOTc0MQoJCQkJCQkJb3V0cHV0OiAxOAoJCQkJCQkJdGhvdWdodHM6IDg3CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKk1ESU8gRHJpdmVyIEludmVzdGlnYXRpb24qKgoKT2theSwgc28gSSYjMzk7bSBsb29raW5nIGF0IHRoaXMgTURJTyBkcml2ZXIsIGFuZCBteSBpbW1lZGlhdGUgdGhvdWdodCBpcywgJiMzNDtXZWxsLCBkdWgsIGl0JiMzOTtzIG5vdCBnb2luZyB0byBkbyBhbnl0aGluZyB1bmxlc3MgaXQgKmhhcyogYW4gTURJTyBidXMgYW5kIGEgY29tcGF0aWJsZSBkZXZpY2UuJiMzNDsgIFRoYXQmIzM5O3MganVzdCBiYXNpYyBoYXJkd2FyZSBkZXBlbmRlbmN5LiAgTXkgbmV4dCBxdWVzdGlvbiBpcyB3aGV0aGVyIHRoZXJlJiMzOTtzIHNvbWUga2luZCBvZiBzb2Z0d2FyZSBNRElPIGJ1cyB0aGF0IHN5emthbGxlciBjb3VsZCBwb3RlbnRpYWxseSBtYW5pcHVsYXRlIHRvIHByb2JlIHRoaXMgdGhpbmc/ICBJIHJlY2FsbCBzZWVpbmcgYSBgZHNhX2xvb3BgIG91dCB0aGVyZSwgd2hpY2ggc291bmRzIHByb21pc2luZy4gQnV0IEkgYWxzbyByZW1lbWJlciBpdCByZWdpc3RlcmluZyBhICpzcGVjaWZpYyosIHByZS1kZWZpbmVkIFBIWSBhbmQgc3dpdGNoLCB3aGljaCBpcyBhIGJpdCBsaW1pdGluZy4gSSYjMzk7bGwgbmVlZCB0byBkb3VibGUgY2hlY2sgaG93IHRoZSBgZHNhX2xvb3BfZHJpdmVyYCBpcyByZWdpc3RlcmVkLiBMZXQmIzM5O3MgZ2V0IGludG8gYGRzYV9sb29wLmNgIGFuZCBmaWd1cmUgb3V0IGV4YWN0bHkgd2hhdCBgZHNhX2xvb3BgIGlzIGRvaW5nLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjIwLzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0NDwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDtkc2FfbG9vcCYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDtEb2N1bWVudGF0aW9uL25ldHdvcmtpbmcvZHNhL2RzYS5yc3Q9MTU5PWFsbCBhdHRhY2hlZCBzd2l0Y2ggcG9ydHMgbXVzdCBiZSBkb3duIHdoaWxlIGRvaW5nIHRoaXMpLlxuRG9jdW1lbnRhdGlvbi9uZXR3b3JraW5nL2RzYS9kc2EucnN0LTE2MC1cbkRvY3VtZW50YXRpb24vbmV0d29ya2luZy9kc2EvZHNhLnJzdDoxNjE6SXQgaXMgZGVzaXJhYmxlIHRoYXQgYWxsIHRhZ2dpbmcgcHJvdG9jb2xzIGFyZSB0ZXN0YWJsZSB3aXRoIHRoZSBgYGRzYV9sb29wYGBcbkRvY3VtZW50YXRpb24vbmV0d29ya2luZy9kc2EvZHNhLnJzdC0xNjItbW9ja3VwIGRyaXZlciwgd2hpY2ggY2FuIGJlIGF0dGFjaGVkIHRvIGFueSBuZXR3b3JrIGludGVyZmFjZS4gVGhlIGdvYWwgaXMgdGhhdFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9NYWtlZmlsZT0zPWJjbS1zZjItb2Jqc1x0XHRcdDo9IGJjbV9zZjIubyBiY21fc2YyX2NmcC5vXG5kcml2ZXJzL25ldC9kc2EvTWFrZWZpbGU6NDpvYmotJChDT05GSUdfTkVUX0RTQV9MT09QKVx0JiM0Mzs9IGRzYV9sb29wLm9cbmRyaXZlcnMvbmV0L2RzYS9NYWtlZmlsZS01LW9iai0kKENPTkZJR19ORVRfRFNBX0tTODk5NSkgXHQmIzQzOz0ga3M4OTk1Lm9cbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yNC1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjI1OnN0cnVjdCBkc2FfbG9vcF92bGFuIHtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI2LVx0dTE2IG1lbWJlcnM7XG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjktXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMDpzdHJ1Y3QgZHNhX2xvb3BfbWliX2VudHJ5IHtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTMxLVx0Y2hhciBuYW1lW0VUSF9HU1RSSU5HX0xFTl07XG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzQtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNTplbnVtIGRzYV9sb29wX21pYl9jb3VudGVycyB7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zNi1cdERTQV9MT09QX1BIWV9SRUFEX09LLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQyLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDM6c3RydWN0IGRzYV9sb29wX3BvcnQge1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDQ6XHRzdHJ1Y3QgZHNhX2xvb3BfbWliX2VudHJ5IG1pYltfX0RTQV9MT09QX0NOVF9NQVhdO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDUtXHR1MTYgcHZpZDtcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00OC1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQ5OnN0cnVjdCBkc2FfbG9vcF9wcml2IHtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTUwLVx0c3RydWN0IG1paV9idXNcdCpidXM7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy01MS1cdHVuc2lnbmVkIGludFx0cG9ydF9iYXNlO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NTI6XHRzdHJ1Y3QgZHNhX2xvb3BfdmxhbiB2bGFuc1tWTEFOX05fVklEXTtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTUzLVx0c3RydWN0IG5ldF9kZXZpY2UgKm5ldGRldjtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjU0Olx0c3RydWN0IGRzYV9sb29wX3BvcnQgcG9ydHNbRFNBX01BWF9QT1JUU107XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy01NS19O1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNTYtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo1NzpzdHJ1Y3QgZHNhX2xvb3BfcGRhdGEge1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNTgtXHQvKiBNdXN0IGJlIGZpcnN0LCBzdWNoIHRoYXQgZHNhX3JlZ2lzdGVyX3N3aXRjaCgpIGNhbiBhY2Nlc3MgdGhpc1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTY2LVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6Njc6c3RhdGljIHN0cnVjdCBkc2FfbG9vcF9taWJfZW50cnkgZHNhX2xvb3BfbWlic1tdID0ge1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNjgtXHRbRFNBX0xPT1BfUEhZX1JFQURfT0tdXHQ9IHsgXCYjMzQ7cGh5X3JlYWRfb2tcJiMzNDssIH0sXG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM9NzU9c3RhdGljIHN0cnVjdCBtZGlvX2RldmljZSAqc3dpdGNoX21kaW9kZXY7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy03Ni1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjc3OmVudW0gZHNhX2xvb3BfZGV2bGlua19yZXNvdXJjZV9pZCB7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy03OC1cdERTQV9MT09QX0RFVkxJTktfUEFSQU1fSURfTk9ORSwgIC8qIERFVkxJTktfUkVTT1VSQ0VfSURfUEFSRU5UX1RPUCAqL1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTgxLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6ODI6c3RhdGljIHU2NCBkc2FfbG9vcF9kZXZsaW5rX3Z0dV9nZXQodm9pZCAqcHJpdilcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTgzLXtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjg0Olx0c3RydWN0IGRzYV9sb29wX3ByaXYgKnBzID0gcHJpdjtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTg1LVx0dW5zaWduZWQgaW50IGksIGNvdW50ID0gMDtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjg2Olx0c3RydWN0IGRzYV9sb29wX3ZsYW4gKnZsO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtODctXG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtOTYtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo5NzpzdGF0aWMgaW50IGRzYV9sb29wX3NldHVwX2RldmxpbmtfcmVzb3VyY2VzKHN0cnVjdCBkc2Ffc3dpdGNoICpkcylcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTk4LXtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTk5LVx0c3RydWN0IGRldmxpbmtfcmVzb3VyY2Vfc2l6ZV9wYXJhbXMgc2l6ZV9wYXJhbXM7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxMDA6XHRzdHJ1Y3QgZHNhX2xvb3BfcHJpdiAqcHMgPSBkcy1cdTAwM2Vwcml2O1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTAxLVx0aW50IGVycjtcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xMTUtXHRcdFx0XHRcdCAgICAgIERTQV9MT09QX0RFVkxJTktfUEFSQU1fSURfVlRVLFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTE2Olx0XHRcdFx0XHQgICAgICBkc2FfbG9vcF9kZXZsaW5rX3Z0dV9nZXQsIHBzKTtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTExNy1cbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xMjQtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxMjU6c3RhdGljIGVudW0gZHNhX3RhZ19wcm90b2NvbCBkc2FfbG9vcF9nZXRfcHJvdG9jb2woc3RydWN0IGRzYV9zd2l0Y2ggKmRzLFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTI2LVx0XHRcdFx0XHRcdCAgIGludCBwb3J0LFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTEzMy1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjEzNDpzdGF0aWMgaW50IGRzYV9sb29wX3NldHVwKHN0cnVjdCBkc2Ffc3dpdGNoICpkcylcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTEzNS17XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxMzY6XHRzdHJ1Y3QgZHNhX2xvb3BfcHJpdiAqcHMgPSBkcy1cdTAwM2Vwcml2O1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTM3LVx0dW5zaWduZWQgaW50IGk7XG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTM5LVx0Zm9yIChpID0gMDsgaSBcdTAwM2MgZHMtXHUwMDNlbnVtX3BvcnRzOyBpJiM0MzsmIzQzOylcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjE0MDpcdFx0bWVtY3B5KHBzLVx1MDAzZXBvcnRzW2ldLm1pYiwgZHNhX2xvb3BfbWlicyxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjE0MTpcdFx0ICAgICAgIHNpemVvZihkc2FfbG9vcF9taWJzKSk7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNDItXG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTQ0LVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTQ1Olx0cmV0dXJuIGRzYV9sb29wX3NldHVwX2RldmxpbmtfcmVzb3VyY2VzKGRzKTtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE0Ni19XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNDctXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxNDg6c3RhdGljIHZvaWQgZHNhX2xvb3BfdGVhcmRvd24oc3RydWN0IGRzYV9zd2l0Y2ggKmRzKVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTQ5LXtcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNTItXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxNTM6c3RhdGljIGludCBkc2FfbG9vcF9nZXRfc3NldF9jb3VudChzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMsIGludCBwb3J0LCBpbnQgc3NldClcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE1NC17XG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTYwLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTYxOnN0YXRpYyB2b2lkIGRzYV9sb29wX2dldF9zdHJpbmdzKHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNjItXHRcdFx0XHQgdTMyIHN0cmluZ3NldCwgdWludDhfdCAqZGF0YSlcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE2My17XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxNjQ6XHRzdHJ1Y3QgZHNhX2xvb3BfcHJpdiAqcHMgPSBkcy1cdTAwM2Vwcml2O1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTY1LVx0dW5zaWduZWQgaW50IGk7XG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTczLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTc0OnN0YXRpYyB2b2lkIGRzYV9sb29wX2dldF9ldGh0b29sX3N0YXRzKHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNzUtXHRcdFx0XHQgICAgICAgdWludDY0X3QgKmRhdGEpXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNzYte1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTc3Olx0c3RydWN0IGRzYV9sb29wX3ByaXYgKnBzID0gZHMtXHUwMDNlcHJpdjtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE3OC1cdHVuc2lnbmVkIGludCBpO1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE4My1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjE4NDpzdGF0aWMgaW50IGRzYV9sb29wX3BoeV9yZWFkKHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsIGludCByZWdudW0pXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xODUte1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTg2Olx0c3RydWN0IGRzYV9sb29wX3ByaXYgKnBzID0gZHMtXHUwMDNlcHJpdjtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE4Ny1cdHN0cnVjdCBtaWlfYnVzICpidXMgPSBwcy1cdTAwM2VidXM7XG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTk4LVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTk5OnN0YXRpYyBpbnQgZHNhX2xvb3BfcGh5X3dyaXRlKHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yMDAtXHRcdFx0ICAgICAgaW50IHJlZ251bSwgdTE2IHZhbHVlKVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjAxLXtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjIwMjpcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcyA9IGRzLVx1MDAzZXByaXY7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yMDMtXHRzdHJ1Y3QgbWlpX2J1cyAqYnVzID0gcHMtXHUwMDNlYnVzO1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTIxNC1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjIxNTpzdGF0aWMgaW50IGRzYV9sb29wX3BvcnRfYnJpZGdlX2pvaW4oc3RydWN0IGRzYV9zd2l0Y2ggKmRzLCBpbnQgcG9ydCxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTIxNi1cdFx0XHRcdCAgICAgc3RydWN0IGRzYV9icmlkZ2UgYnJpZGdlLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTIyNS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjIyNjpzdGF0aWMgdm9pZCBkc2FfbG9vcF9wb3J0X2JyaWRnZV9sZWF2ZShzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMsIGludCBwb3J0LFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjI3LVx0XHRcdFx0ICAgICAgIHN0cnVjdCBkc2FfYnJpZGdlIGJyaWRnZSlcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yMzItXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoyMzM6c3RhdGljIHZvaWQgZHNhX2xvb3BfcG9ydF9zdHBfc3RhdGVfc2V0KHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yMzQtXHRcdFx0XHRcdHU4IHN0YXRlKVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTIzOS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjI0MDpzdGF0aWMgaW50IGRzYV9sb29wX3BvcnRfdmxhbl9maWx0ZXJpbmcoc3RydWN0IGRzYV9zd2l0Y2ggKmRzLCBpbnQgcG9ydCxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI0MS1cdFx0XHRcdFx0Ym9vbCB2bGFuX2ZpbHRlcmluZyxcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yNDktXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoyNTA6c3RhdGljIGludCBkc2FfbG9vcF9wb3J0X3ZsYW5fYWRkKHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yNTEtXHRcdFx0XHQgIGNvbnN0IHN0cnVjdCBzd2l0Y2hkZXZfb2JqX3BvcnRfdmxhbiAqdmxhbixcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yNTUtXHRib29sIHB2aWQgPSB2bGFuLVx1MDAzZWZsYWdzIFx1MDAyNiBCUklER0VfVkxBTl9JTkZPX1BWSUQ7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoyNTY6XHRzdHJ1Y3QgZHNhX2xvb3BfcHJpdiAqcHMgPSBkcy1cdTAwM2Vwcml2O1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjU3LVx0c3RydWN0IG1paV9idXMgKmJ1cyA9IHBzLVx1MDAzZWJ1cztcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjI1ODpcdHN0cnVjdCBkc2FfbG9vcF92bGFuICp2bDtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI1OS1cbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yODItXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoyODM6c3RhdGljIGludCBkc2FfbG9vcF9wb3J0X3ZsYW5fZGVsKHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yODQtXHRcdFx0XHQgIGNvbnN0IHN0cnVjdCBzd2l0Y2hkZXZfb2JqX3BvcnRfdmxhbiAqdmxhbilcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yODYtXHRib29sIHVudGFnZ2VkID0gdmxhbi1cdTAwM2VmbGFncyBcdTAwMjYgQlJJREdFX1ZMQU5fSU5GT19VTlRBR0dFRDtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjI4NzpcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcyA9IGRzLVx1MDAzZXByaXY7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yODgtXHR1MTYgcHZpZCA9IHBzLVx1MDAzZXBvcnRzW3BvcnRdLnB2aWQ7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yODktXHRzdHJ1Y3QgbWlpX2J1cyAqYnVzID0gcHMtXHUwMDNlYnVzO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MjkwOlx0c3RydWN0IGRzYV9sb29wX3ZsYW4gKnZsO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjkxLVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTMxMC1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjMxMTpzdGF0aWMgaW50IGRzYV9sb29wX3BvcnRfY2hhbmdlX210dShzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMsIGludCBwb3J0LFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzEyLVx0XHRcdFx0ICAgIGludCBuZXdfbXR1KVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzEzLXtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjMxNDpcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcml2ID0gZHMtXHUwMDNlcHJpdjtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTMxNS1cbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zMjAtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMjE6c3RhdGljIGludCBkc2FfbG9vcF9wb3J0X21heF9tdHUoc3RydWN0IGRzYV9zd2l0Y2ggKmRzLCBpbnQgcG9ydClcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTMyMi17XG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzI1LVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzI2OnN0YXRpYyB2b2lkIGRzYV9sb29wX3BoeWxpbmtfZ2V0X2NhcHMoc3RydWN0IGRzYV9zd2l0Y2ggKmRzYSwgaW50IHBvcnQsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zMjctXHRcdFx0XHQgICAgICBzdHJ1Y3QgcGh5bGlua19jb25maWcgKmNvbmZpZylcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zMzMtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMzQ6c3RhdGljIGNvbnN0IHN0cnVjdCBkc2Ffc3dpdGNoX29wcyBkc2FfbG9vcF9kcml2ZXIgPSB7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMzU6XHQuZ2V0X3RhZ19wcm90b2NvbFx0PSBkc2FfbG9vcF9nZXRfcHJvdG9jb2wsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMzY6XHQuc2V0dXBcdFx0XHQ9IGRzYV9sb29wX3NldHVwLFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzM3Olx0LnRlYXJkb3duXHRcdD0gZHNhX2xvb3BfdGVhcmRvd24sXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMzg6XHQuZ2V0X3N0cmluZ3NcdFx0PSBkc2FfbG9vcF9nZXRfc3RyaW5ncyxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjMzOTpcdC5nZXRfZXRodG9vbF9zdGF0c1x0PSBkc2FfbG9vcF9nZXRfZXRodG9vbF9zdGF0cyxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM0MDpcdC5nZXRfc3NldF9jb3VudFx0XHQ9IGRzYV9sb29wX2dldF9zc2V0X2NvdW50LFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzQxOlx0LmdldF9ldGh0b29sX3BoeV9zdGF0c1x0PSBkc2FfbG9vcF9nZXRfZXRodG9vbF9zdGF0cyxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM0MjpcdC5waHlfcmVhZFx0XHQ9IGRzYV9sb29wX3BoeV9yZWFkLFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzQzOlx0LnBoeV93cml0ZVx0XHQ9IGRzYV9sb29wX3BoeV93cml0ZSxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM0NDpcdC5wb3J0X2JyaWRnZV9qb2luXHQ9IGRzYV9sb29wX3BvcnRfYnJpZGdlX2pvaW4sXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNDU6XHQucG9ydF9icmlkZ2VfbGVhdmVcdD0gZHNhX2xvb3BfcG9ydF9icmlkZ2VfbGVhdmUsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNDY6XHQucG9ydF9zdHBfc3RhdGVfc2V0XHQ9IGRzYV9sb29wX3BvcnRfc3RwX3N0YXRlX3NldCxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM0NzpcdC5wb3J0X3ZsYW5fZmlsdGVyaW5nXHQ9IGRzYV9sb29wX3BvcnRfdmxhbl9maWx0ZXJpbmcsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNDg6XHQucG9ydF92bGFuX2FkZFx0XHQ9IGRzYV9sb29wX3BvcnRfdmxhbl9hZGQsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNDk6XHQucG9ydF92bGFuX2RlbFx0XHQ9IGRzYV9sb29wX3BvcnRfdmxhbl9kZWwsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNTA6XHQucG9ydF9jaGFuZ2VfbXR1XHQ9IGRzYV9sb29wX3BvcnRfY2hhbmdlX210dSxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM1MTpcdC5wb3J0X21heF9tdHVcdFx0PSBkc2FfbG9vcF9wb3J0X21heF9tdHUsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNTI6XHQucGh5bGlua19nZXRfY2Fwc1x0PSBkc2FfbG9vcF9waHlsaW5rX2dldF9jYXBzLFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzUzLX07XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zNTQtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNTU6c3RhdGljIGludCBkc2FfbG9vcF9kcnZfcHJvYmUoc3RydWN0IG1kaW9fZGV2aWNlICptZGlvZGV2KVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzU2LXtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM1NzpcdHN0cnVjdCBkc2FfbG9vcF9wZGF0YSAqcGRhdGEgPSBtZGlvZGV2LVx1MDAzZWRldi5wbGF0Zm9ybV9kYXRhO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzU4Olx0c3RydWN0IGRzYV9sb29wX3ByaXYgKnBzO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzU5LVx0c3RydWN0IGRzYV9zd2l0Y2ggKmRzO1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM4Mi1cdGRzLVx1MDAzZWRldiA9IFx1MDAyNm1kaW9kZXYtXHUwMDNlZGV2O1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzgzOlx0ZHMtXHUwMDNlb3BzID0gXHUwMDI2ZHNhX2xvb3BfZHJpdmVyO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzg0LVx0ZHMtXHUwMDNlcHJpdiA9IHBzO1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM5Ni1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM5NzpzdGF0aWMgdm9pZCBkc2FfbG9vcF9kcnZfcmVtb3ZlKHN0cnVjdCBtZGlvX2RldmljZSAqbWRpb2RldilcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM5OC17XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zOTktXHRzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMgPSBkZXZfZ2V0X2RydmRhdGEoXHUwMDI2bWRpb2Rldi1cdTAwM2VkZXYpO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDAwOlx0c3RydWN0IGRzYV9sb29wX3ByaXYgKnBzO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDAxLVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQxMC1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQxMTpzdGF0aWMgdm9pZCBkc2FfbG9vcF9kcnZfc2h1dGRvd24oc3RydWN0IG1kaW9fZGV2aWNlICptZGlvZGV2KVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDEyLXtcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00MjItXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0MjM6c3RhdGljIHN0cnVjdCBtZGlvX2RyaXZlciBkc2FfbG9vcF9kcnYgPSB7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00MjQtXHQubWRpb2Rydi5kcml2ZXJcdD0ge1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQyNi1cdH0sXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0Mjc6XHQucHJvYmVcdD0gZHNhX2xvb3BfZHJ2X3Byb2JlLFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDI4Olx0LnJlbW92ZVx0PSBkc2FfbG9vcF9kcnZfcmVtb3ZlLFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDI5Olx0LnNodXRkb3duID0gZHNhX2xvb3BfZHJ2X3NodXRkb3duLFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDMwLX07XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00MzEtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0MzI6c3RhdGljIGludCBkc2FfbG9vcF9idXNfbWF0Y2goc3RydWN0IGRldmljZSAqZGV2LFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDMzLVx0XHRcdCAgICAgIGNvbnN0IHN0cnVjdCBkZXZpY2VfZHJpdmVyICpkcnYpXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00MzQte1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDM1Olx0cmV0dXJuIGRydiA9PSBcdTAwMjZkc2FfbG9vcF9kcnYubWRpb2Rydi5kcml2ZXI7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00MzYtfVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDM3LVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDM4OnN0YXRpYyB2b2lkIGRzYV9sb29wX3BoeWRldnNfdW5yZWdpc3Rlcih2b2lkKVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDM5LXtcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00NDUtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0NDY6c3RhdGljIGludCBfX2luaXQgZHNhX2xvb3BfY3JlYXRlX3N3aXRjaF9tZGlvZGV2KHZvaWQpXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00NDcte1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDQ4Olx0c3RhdGljIHN0cnVjdCBkc2FfbG9vcF9wZGF0YSBkc2FfbG9vcF9wZGF0YSA9IHtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQ0OS1cdFx0LmNkID0ge1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQ3MC1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQ3MTpcdHN3aXRjaF9tZGlvZGV2LVx1MDAzZWJ1c19tYXRjaCA9IGRzYV9sb29wX2J1c19tYXRjaDtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQ3MjpcdHN3aXRjaF9tZGlvZGV2LVx1MDAzZWRldi5wbGF0Zm9ybV9kYXRhID0gXHUwMDI2ZHNhX2xvb3BfcGRhdGE7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00NzMtXG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDgxLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDgyOnN0YXRpYyBpbnQgX19pbml0IGRzYV9sb29wX2luaXQodm9pZClcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQ4My17XG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDg2LVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDg3Olx0cmV0ID0gZHNhX2xvb3BfY3JlYXRlX3N3aXRjaF9tZGlvZGV2KCk7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00ODgtXHRpZiAocmV0KVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQ5My1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQ5NDpcdHJldCA9IG1kaW9fZHJpdmVyX3JlZ2lzdGVyKFx1MDAyNmRzYV9sb29wX2Rydik7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00OTUtXHRpZiAocmV0KSB7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0OTY6XHRcdGRzYV9sb29wX3BoeWRldnNfdW5yZWdpc3RlcigpO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDk3LVx0XHRtZGlvX2RldmljZV9yZW1vdmUoc3dpdGNoX21kaW9kZXYpO1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTUwMi19XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo1MDM6bW9kdWxlX2luaXQoZHNhX2xvb3BfaW5pdCk7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy01MDQtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo1MDU6c3RhdGljIHZvaWQgX19leGl0IGRzYV9sb29wX2V4aXQodm9pZClcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTUwNi17XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo1MDc6XHRtZGlvX2RyaXZlcl91bnJlZ2lzdGVyKFx1MDAyNmRzYV9sb29wX2Rydik7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo1MDg6XHRkc2FfbG9vcF9waHlkZXZzX3VucmVnaXN0ZXIoKTtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTUwOS1cdG1kaW9fZGV2aWNlX3JlbW92ZShzd2l0Y2hfbWRpb2Rldik7XG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNTExLX1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjUxMjptb2R1bGVfZXhpdChkc2FfbG9vcF9leGl0KTtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTUxMy1cbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4yMS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDQ8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMTY2ODMKCQkJCQkJCW91dHB1dDogMjkKCQkJCQkJCXRob3VnaHRzOiAxMzAKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqSW52ZXN0aWdhdGluZyBNRElPIERldmljZSBJbnN0YW50aWF0aW9uKioKCk9rYXksIHNvIGBkc2FfbG9vcGAgaGFzIGl0cyBvd24gZHJpdmVyLCBgZHNhX2xvb3BfZHJ2YCwgYW5kIGNyaXRpY2FsbHksIGl0ICpkb2VzbiYjMzk7dCogbG9hZCBgbXY4OGU2eHh4YC4gVGhpcyBtZWFucyBJIGNhbiYjMzk7dCByZWFjaCB0aGUgYG12ODhlNnh4eGAgcmVnaXN0ZXJzIGRpcmVjdGx5IHRocm91Z2ggYGRzYV9sb29wYCwgd2hpY2ggaXMgYSBwcm9ibGVtLiBJIG5lZWQgdG8gZmlndXJlIG91dCBhbiBhbHRlcm5hdGl2ZS4KClRoZSBxdWVzdGlvbiBub3cgYmVjb21lcywgaXMgdGhlcmUgKmFub3RoZXIqIHdheSB0byBnZXQgYXQgdGhlIGBtdjg4ZTZ4eHhgIHJlZ2lzdGVycz8gTXkgaW5pdGlhbCB0aG91Z2h0IGlzIGFib3V0IGEgbW9jayBNRElPIGJ1cy4gQ291bGQgdGhlcmUgYmUgYSB3YXkgdG8gY3JlYXRlIGEgdmlydHVhbCBNRElPIGJ1cyBpbnRlcmZhY2UgdGhhdCB3b3VsZCBhbGxvdyB1c2VyIHNwYWNlIHRvIGVzc2VudGlhbGx5ICYjMzQ7bW9jayB1cCYjMzQ7IG9yIGluc3RhbnRpYXRlIHRoZXNlIGFyYml0cmFyeSBNRElPIGRldmljZXM/CgpUaGF0JiMzOTtzIGEgZ29vZCBsZWFkLiBMZXQmIzM5O3Mgc2VlIGlmIHRoZXJlJiMzOTtzIGEgdXNlciBzcGFjZSBpbnRlcmZhY2UgZGVzaWduZWQgZm9yIGp1c3QgdGhpcyBraW5kIG9mIG9wZXJhdGlvbi4gSSBrbm93IHRoYXQgSTJDIHByb3ZpZGVzIGEgbWVjaGFuaXNtIHZpYSBgL3N5cy9idXMvaTJjL2RldmljZXMvaTJjLSovbmV3X2RldmljZWAuIERvZXMgTURJTyBleHBvc2UgYSBzaW1pbGFyIGludGVyZmFjZT8gVGltZSB0byBkaWcgYXJvdW5kIHRoZSBrZXJuZWwgc291cmNlcyBhbmQgc2VlIGlmIHRoZXJlIGlzIHNvbWV0aGluZyBjb21wYXJhYmxlIGZvciBNRElPIGRldmljZSBpbnN0YW50aWF0aW9uLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjIyLzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0NDwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+RXJyb3I6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5ubyBtYXRjaGVzPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O25ld19kZXZpY2UmIzM0OywKICAmIzM0O1BhdGhQcmVmaXgmIzM0OzogJiMzNDtkcml2ZXJzL25ldC9waHkvJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O2Vycm9yJiMzNDs6ICYjMzQ7bm8gbWF0Y2hlcyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4yMy8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDQ8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMTcwOTkKCQkJCQkJCW91dHB1dDogMzAKCQkJCQkJCXRob3VnaHRzOiAxMwoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+SGVyZSYjMzk7cyBteSB0YWtlIG9uIHRoZSB0aG91Z2h0IHByb2Nlc3M6CgoqKkRpdmluZyBpbnRvIHRoZSBNRElPIERyaXZlcnMqKgoKT2theSwgdGltZSB0byBnZXQgc3RhcnRlZC4gTXkgaW5pdGlhbCBpbnN0aW5jdCBpcyB0byBnbyBzdHJhaWdodCB0byB0aGUgaGVhcnQgb2YgdGhlIG1hdHRlciDigJMgdGhlIGBkcml2ZXJzL25ldC9tZGlvL2AgZGlyZWN0b3J5LiBUaGlzIGlzIHRoZSBsb2dpY2FsIHBsYWNlIHRvIGJlZ2luIG15IGludmVzdGlnYXRpb24gaW50byB0aGUgTWVkaWEgSW5kZXBlbmRlbnQgSW50ZXJmYWNlIChNRElPKSBkcml2ZXJzLiBHaXZlbiBteSBleHBlcnRpc2UsIEkgYWxyZWFkeSBrbm93IHRoaXMgZGlyZWN0b3J5IHdpbGwgbGlrZWx5IGhvdXNlIHRoZSBjb3JlIGZ1bmN0aW9uYWxpdHkgYW5kIGltcGxlbWVudGF0aW9uIGRldGFpbHMgZm9yIGludGVyZmFjaW5nIHdpdGggdmFyaW91cyBQSFlzIChQaHlzaWNhbCBMYXllciBUcmFuc2NlaXZlcnMpIGFuZCBNRElPLWNvbXBsaWFudCBkZXZpY2VzLiBJIGV4cGVjdCB0byBmaW5kIHNvdXJjZSBjb2RlIHRoYXQgZGVmaW5lcyB0aGUgTURJTyBidXMgb3BlcmF0aW9ucywgZGV2aWNlIHByb2JpbmcsIHJlZ2lzdGVyIGFjY2VzcyByb3V0aW5lcywgYW5kIGludGVycnVwdCBoYW5kbGluZyBpZiBhcHBsaWNhYmxlLiBMZXQmIzM5O3Mgc2VlIHdoYXQgd2UgY2FuIGZpbmQhCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MjQvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQ1PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5FcnJvcjo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm5vIG1hdGNoZXM8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7bmV3X2RldmljZSYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0O2RyaXZlcnMvbmV0L21kaW8vJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O2Vycm9yJiMzNDs6ICYjMzQ7bm8gbWF0Y2hlcyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4yNS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDU8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMTczMDUKCQkJCQkJCW91dHB1dDogNDQKCQkJCQkJCXRob3VnaHRzOiAyNjUKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqTURJTyBEZXZpY2UgSW5zdGFudGlhdGlvbiBDb25jZXJucyoqCgpPa2F5LCBzbyBJJiMzOTttIHRoaW5raW5nIGFib3V0IE1ESU8gYW5kIGhvdyB0byBpbnN0YW50aWF0ZSB0aGVzZSBkZXZpY2VzIGZyb20gdXNlcnNwYWNlLiBJdCBzZWVtcyBsaWtlIHRoZXJlIGlzbiYjMzk7dCBhIGRpcmVjdCB1c2Vyc3BhY2UgaW50ZXJmYWNlLCB3aGljaCBpcyBhIGNvbW1vbiBwcm9ibGVtLiBUaGVuIEkgcmVtZW1iZXIsIHdhaXQsIHN5emthbGxlciBoYXMgcHNldWRvLXN5c2NhbGxzIGZvciBvdGhlciBpbnRlcmZhY2VzIGxpa2UgVVNCIGFuZCBOZXRsaW5rLiBTbywgSSB3b25kZXIsIGRvZXMgc3l6a2FsbGVyIGhhdmUgYW55dGhpbmcgZm9yIE1ESU8/IEkgZG9uJiMzOTt0IGhhdmUgZGlyZWN0IGFjY2VzcyB0byB0aGUgc3l6a2FsbGVyIHNvdXJjZSByaWdodCBub3csIGJ1dCBJIGNhbiBzZWUgaWYgdGhlcmUgYXJlIGtlcm5lbCBmdW5jdGlvbnMgdGhhdCBpdCB3b3VsZCBsaWtlbHkgbGV2ZXJhZ2UuCgpIb3dldmVyLCBhIG5hZ2dpbmcgZmVlbGluZyBzdXJmYWNlczogaWYgdGhpcyBNRElPIGRldmljZSBpcyBtYXRjaGVkIHRocm91Z2ggdGhlIERldmljZSBUcmVlIChPRiksIGFuZCB3ZSYjMzk7cmUgb24gYSBzdGFuZGFyZCB4ODZfNjQgVk0sIGl0IHByb2JhYmx5IHdvbiYjMzk7dCBldmVuIHByb2JlLiBJIHNob3VsZCBoYXZlIHJlYWxpemVkIHRoYXQgaW1tZWRpYXRlbHkuIFRoZW4gSSByZWNhbGwgdGhhdCBzeXprYWxsZXIgKmRvZXMqIHRhcmdldCBzb21lIEFSTSBib2FyZHMsIGJ1dCBldmVuIGluIHRob3NlIGNhc2VzLCB0aGUgRGV2aWNlIFRyZWUgaXMgc3RhdGljIGFuZCBmaXhlZCBhdCBib290LiBJZiB0aGUgRGV2aWNlIFRyZWUgZG9lc24mIzM5O3QgaW5jbHVkZSBzb21ldGhpbmcgbGlrZSBgbWFydmVsbCxtdjg4ZTYwODVgLCB0aGF0IHNwZWNpZmljIGRyaXZlciB3b24mIzM5O3QgbG9hZC4KClNvIHRoZSBxdWVzdGlvbiBiZWNvbWVzOiBpcyB0aGVyZSAqYW55KiBvdGhlciBtZWNoYW5pc20gZm9yIHByb2JpbmcgdGhlIGBtdjg4ZTZ4eHhgIGRyaXZlcj8gTGV0IG1lIGdvIGJhY2sgYW5kIGRvdWJsZS1jaGVjayBgbXY4OGU2eHh4X29mX21hdGNoYCBhZ2Fpbi4gSSBuZWVkIHRvIG1ha2Ugc3VyZSBJJiMzOTttIG5vdCBtaXNzaW5nIHNvbWV0aGluZyBvYnZpb3VzLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjI2LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0NTwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDttdjg4ZTZ4eHhfb2ZfbWF0Y2gmIzM0OywKICAmIzM0O1BhdGhQcmVmaXgmIzM0OzogJiMzNDtkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4LyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDtkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz03NTAwPXN0YXRpYyB2b2lkIG12ODhlNnh4eF9zaHV0ZG93bihzdHJ1Y3QgbWRpb19kZXZpY2UgKm1kaW9kZXYpXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUxMS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjc1MTI6c3RhdGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgbXY4OGU2eHh4X29mX21hdGNoW10gPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTEzLVx0e1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MjctXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo3NTI4Ok1PRFVMRV9ERVZJQ0VfVEFCTEUob2YsIG12ODhlNnh4eF9vZl9tYXRjaCk7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTI5LVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzUzMD1zdGF0aWMgc3RydWN0IG1kaW9fZHJpdmVyIG12ODhlNnh4eF9kcml2ZXIgPSB7XG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUzNS1cdFx0Lm5hbWUgPSBcJiMzNDttdjg4ZTYwODVcJiMzNDssXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo3NTM2Olx0XHQub2ZfbWF0Y2hfdGFibGUgPSBtdjg4ZTZ4eHhfb2ZfbWF0Y2gsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTM3LVx0XHQucG0gPSBcdTAwMjZtdjg4ZTZ4eHhfcG1fb3BzLFxuJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjI3LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0NTwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiAxODMxNwoJCQkJCQkJb3V0cHV0OiAyMgoJCQkJCQkJdGhvdWdodHM6IDEzMQoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipJbnZlc3RpZ2F0aW5nIHRoZSBtdjg4ZTZ4eHggRHJpdmVyJiMzOTtzIERldmljZSBSZWdpc3RyYXRpb24qKgoKT2theSwgc28gSSYjMzk7bSBsb29raW5nIGF0IHRoaXMgYG12ODhlNnh4eF9kcml2ZXJgLCBhbmQgc29tZXRoaW5nJiMzOTtzIGJ1Z2dpbmcgbWUuIFNwZWNpZmljYWxseSwgdGhlIGRyaXZlciYjMzk7cyBnb3QgYC5uYW1lID0gJiMzNDttdjg4ZTYwODUmIzM0O2AuIFRoYXQgbmFtZSBtYXRjaGluZyBpcyBhbiBpbnRlcmVzdGluZyB0ZWNobmlxdWUgZm9yIE1ESU8gZHJpdmVycywgYW5kIGl0IG1ha2VzIHNlbnNlIGlmIHRoZSBidXMgaXRzZWxmIHJlZ2lzdGVycyBhIGRldmljZSAqd2l0aCogdGhhdCBzcGVjaWZpYyBuYW1lLiBCdXQgdGhlIHF1ZXN0aW9uIGlzLCBob3cgZG9lcyBhbiBNRElPIGRldmljZSAqZ2V0KiByZWdpc3RlcmVkIHdpdGggdGhhdCBleGFjdCBzdHJpbmcsICYjMzQ7bXY4OGU2MDg1JiMzNDs/CgpNeSBleHBlcmllbmNlIHNheXMgdGhhdCBNRElPIGRldmljZXMgYXJlIHR5cGljYWxseSBicm91Z2h0IG9ubGluZSBieSB0aGUgTURJTyBidXMgZHJpdmVyLCB3aGljaCB1c2VzIHR3byBtYWluIG1ldGhvZHM6IGhhcmR3YXJlIHByb2JpbmcgKHdoZXJlIHRoZSBQSFkgSUQgaXMgY2hlY2tlZCkgb3IgZGV2aWNlIHRyZWUgY29uZmlndXJhdGlvbnMuIE5vdywgc3dpdGNoZXMuLi4gc3dpdGNoZXMgYXJlIGEgZGlmZmVyZW50IGJlYXN0LiBUaGVpciBQSFkgSURzIG9mdGVuIGFyZW4mIzM5O3Qgc3RhbmRhcmQsIHNvIHRoZSBkZXZpY2UgdHJlZSBpcyB1c3VhbGx5IHRoZSBjcml0aWNhbCBwaWVjZSBpbiBnZXR0aW5nIHRoZW0gaWRlbnRpZmllZCBhbmQgY29ubmVjdGVkLgoKU28sIEkmIzM5O20gZ29pbmcgdG8gZGlnIGRlZXBlci4gSSBuZWVkIHRvIGtub3c6IElzIHRoZXJlIGFueSBvdGhlciBwbGFjZSBpbiB0aGUga2VybmVsIHRoYXQgcmVnaXN0ZXJzIHRoaXMgZGV2aWNlPyBJJiMzOTttIG1pc3Npbmcgc29tZXRoaW5nLCBhbmQgSSBuZWVkIHRvIGZpbmQgdGhlIHJvb3QgY2F1c2UuIFRoaXMgbmFtZSBtYXRjaGluZyBoYXMgdG8gYmUgY29taW5nIGZyb20gc29tZXdoZXJlLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjI4LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0NTwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDttdjg4ZTYwODUmIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7T3V0cHV0JiMzNDs6ICYjMzQ7RG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbD0xOT1wcm9wZXJ0aWVzOlxuLS1cbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWwtMjItICAgICAgLSBlbnVtOlxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbDoyMzogICAgICAgICAgLSBtYXJ2ZWxsLG12ODhlNjA4NVxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbC0yNC0gICAgICAgICAgLSBtYXJ2ZWxsLG12ODhlNjE5MFxuLS1cbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWwtMjYtICAgICAgICBkZXNjcmlwdGlvbjogfFxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbDoyNzogICAgICAgICAgbWFydmVsbCxtdjg4ZTYwODU6IFRoaXMgc3dpdGNoIHVzZXMgYmFzZSBhZGRyZXNzIDB4MTAuXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2RzYS9tYXJ2ZWxsLG12ODhlNnh4eC55YW1sLTI4LSAgICAgICAgICAgIFRoaXMgc3dpdGNoIGFuZCBpdHMgc2libGluZ3Mgd2lsbCBiZSBhdXRvZGV0ZWN0ZWQgZnJvbVxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbDoyOTogICAgICAgICAgICBJRCByZWdpc3RlcnMgZm91bmQgaW4gdGhlIHN3aXRjaCwgc28gb25seSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OyBzaG91bGQgYmVcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWwtMzAtICAgICAgICAgICAgc3BlY2lmaWVkLiBUaGlzIGluY2x1ZGVzIHRoZSBmb2xsb3dpbmcgbGlzdCBvZiBNVjg4RXh4eHggc3dpdGNoZXM6XG4tLVxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbC00My0gICAgICAtIGl0ZW1zOlxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbDo0NDogICAgICAgICAgLSBjb25zdDogbWFydmVsbCx0dXJyaXMtbW94LW12ODhlNjA4NVxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbDo0NTogICAgICAgICAgLSBjb25zdDogbWFydmVsbCxtdjg4ZTYwODVcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWwtNDYtICAgICAgLSBpdGVtczpcbi0tXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2RzYS9tYXJ2ZWxsLG12ODhlNnh4eC55YW1sPTEwOT1leGFtcGxlczpcbi0tXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2RzYS9tYXJ2ZWxsLG12ODhlNnh4eC55YW1sLTExNi0gICAgICAgIGV0aGVybmV0LXN3aXRjaEAwIHtcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWw6MTE3OiAgICAgICAgICAgIGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWwtMTE4LSAgICAgICAgICAgIHJlZyA9IFx1MDAzYzBcdTAwM2U7XG4tLVxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9ldGhlcm5ldC1zd2l0Y2gueWFtbD0yMz1hbGxPZjpcbi0tXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2V0aGVybmV0LXN3aXRjaC55YW1sLTMyLSAgICAgICAgICAgIGVudW06XG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2V0aGVybmV0LXN3aXRjaC55YW1sOjMzOiAgICAgICAgICAgICAgLSBtYXJ2ZWxsLHR1cnJpcy1tb3gtbXY4OGU2MDg1XG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2V0aGVybmV0LXN3aXRjaC55YW1sLTM0LSAgICAgICAgICAgICAgLSBtYXJ2ZWxsLHR1cnJpcy1tb3gtbXY4OGU2MTkwXG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcwLXJkLmR0cz0xNTI9XHRzd2l0Y2g6IGV0aGVybmV0LXN3aXRjaEAxMCB7XG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zNzAtcmQuZHRzOjE1MzpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcwLXJkLmR0cy0xNTQtXHRcdHJlZyA9IFx1MDAzYzB4MTBcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg1LWNsZWFyZm9nLWd0ci1zNC5kdHM9MTY9XHRzd2l0Y2gwOiBldGhlcm5ldC1zd2l0Y2hANCB7XG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODUtY2xlYXJmb2ctZ3RyLXM0LmR0czoxNzpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg1LWNsZWFyZm9nLWd0ci1zNC5kdHMtMTgtXHRcdHJlZyA9IFx1MDAzYzRcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg1LWxpbmtzeXMuZHRzaT0xNjE9XHRldGhlcm5ldC1zd2l0Y2hAMCB7XG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODUtbGlua3N5cy5kdHNpOjE2MjpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg1LWxpbmtzeXMuZHRzaS0xNjMtXHRcdHJlZyA9IFx1MDAzYzBcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg1LXR1cnJpcy1vbW5pYS5kdHM9NDY3PVx0ZXRoZXJuZXQtc3dpdGNoQDEwIHtcbi0tXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODUtdHVycmlzLW9tbmlhLmR0cy00NjktXHRcdHBpbmN0cmwtMCA9IFx1MDAzY1x1MDAyNnN3aW50X3BpbnNcdTAwM2U7XG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODUtdHVycmlzLW9tbmlhLmR0czo0NzA6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM4NS10dXJyaXMtb21uaWEuZHRzLTQ3MS1cbi0tXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODgtY2xlYXJmb2cuZHRzPTk2PVx0ZXRoZXJuZXQtc3dpdGNoQDQge1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg4LWNsZWFyZm9nLmR0czo5NzpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg4LWNsZWFyZm9nLmR0cy05OC1cdFx0cmVnID0gXHUwMDNjNFx1MDAzZTtcbi0tXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS14cC1saW5rc3lzLW1hbWJhLmR0cz0yNjg9XHRldGhlcm5ldC1zd2l0Y2hAMCB7XG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS14cC1saW5rc3lzLW1hbWJhLmR0czoyNjk6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLXhwLWxpbmtzeXMtbWFtYmEuZHRzLTI3MC1cdFx0cmVnID0gXHUwMDNjMFx1MDAzZTtcbi0tXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLTRpLWVkZ2UtMjAwLmR0cz04Mj1cdHN3aXRjaDA6IHN3aXRjaEAxMSB7XG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLTRpLWVkZ2UtMjAwLmR0czo4MzpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC00aS1lZGdlLTIwMC5kdHMtODQtXHRcdHJlZyA9IFx1MDAzYzB4MTFcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1kaXI2NjUuZHRzPTE5Nj1cdHN3aXRjaEAwIHtcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtZGlyNjY1LmR0czoxOTc6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtZGlyNjY1LmR0cy0xOTgtXHRcdCNhZGRyZXNzLWNlbGxzID0gXHUwMDNjMVx1MDAzZTtcbi0tXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLWwtNTAuZHRzPTIxMT1cdHN3aXRjaDA6IHN3aXRjaEAxMCB7XG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLWwtNTAuZHRzOjIxMjpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1sLTUwLmR0cy0yMTMtXHRcdCNhZGRyZXNzLWNlbGxzID0gXHUwMDNjMVx1MDAzZTtcbi0tXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLWwtNTAuZHRzPTI2OT1cdHN3aXRjaEAxMSB7XG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLWwtNTAuZHRzOjI3MDpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1sLTUwLmR0cy0yNzEtXHRcdCNhZGRyZXNzLWNlbGxzID0gXHUwMDNjMVx1MDAzZTtcbi0tXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLWxpbmtzeXMtdmlwZXIuZHRzPTE2Mj1cdHN3aXRjaEAxMCB7XG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLWxpbmtzeXMtdmlwZXIuZHRzOjE2MzpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1saW5rc3lzLXZpcGVyLmR0cy0xNjQtXHRcdCNhZGRyZXNzLWNlbGxzID0gXHUwMDNjMVx1MDAzZTtcbi0tXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLW12ODhmNjI4MWd0dy1nZS5kdHM9MTEzPVx0c3dpdGNoQDAge1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1tdjg4ZjYyODFndHctZ2UuZHRzOjExNDpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1tdjg4ZjYyODFndHctZ2UuZHRzLTExNS1cdFx0I2FkZHJlc3MtY2VsbHMgPSBcdTAwM2MxXHUwMDNlO1xuLS1cbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtcmQ4OGY2MjgxLmR0c2k9Nzc9XHRzd2l0Y2g6IHN3aXRjaEAwIHtcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtcmQ4OGY2MjgxLmR0c2k6Nzg6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtcmQ4OGY2MjgxLmR0c2ktNzktXHRcdCNhZGRyZXNzLWNlbGxzID0gXHUwMDNjMVx1MDAzZTtcbi0tXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL29yaW9uNXgtbmV0Z2Vhci13bnI4NTR0LmR0cz0xMDk9XHRzd2l0Y2g6IHN3aXRjaEAwIHtcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwvb3Jpb241eC1uZXRnZWFyLXducjg1NHQuZHRzOjExMDpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9vcmlvbjV4LW5ldGdlYXItd25yODU0dC5kdHMtMTExLVx0XHQjYWRkcmVzcy1jZWxscyA9IFx1MDAzYzFcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg1MS16aWktcmR1MS5kdHM9MTczPVx0XHRzd2l0Y2hAMCB7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDUxLXppaS1yZHUxLmR0czoxNzQ6XHRcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg1MS16aWktcmR1MS5kdHMtMTc1LVx0XHRcdHJlZyA9IFx1MDAzYzBcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg1MS16aWktc2N1Mi1tZXp6LmR0cz00OT1cdFx0c3dpdGNoQDAge1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg1MS16aWktc2N1Mi1tZXp6LmR0czo1MDpcdFx0XHRjb21wYXRpYmxlID0gXCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDs7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDUxLXppaS1zY3UyLW1lenouZHRzLTUxLVx0XHRcdHJlZyA9IFx1MDAzYzBcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg1MS16aWktc2N1My1lc2IuZHRzPTIxNj1cdFx0c3dpdGNoQDAge1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg1MS16aWktc2N1My1lc2IuZHRzOjIxNzpcdFx0XHRjb21wYXRpYmxlID0gXCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDs7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDUxLXppaS1zY3UzLWVzYi5kdHMtMjE4LVx0XHRcdHJlZyA9IFx1MDAzYzBcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2ZGwteWFwcDQzLWNvbW1vbi5kdHNpPTEyOD1cdFx0c3dpdGNoQDAge1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2ZGwteWFwcDQzLWNvbW1vbi5kdHNpOjEyOTpcdFx0XHRjb21wYXRpYmxlID0gXCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDs7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDZkbC15YXBwNDMtY29tbW9uLmR0c2ktMTMwLVx0XHRcdHJlZyA9IFx1MDAzYzBcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2cS1ieDUwdjMuZHRzaT0xMDU9XHRcdHN3aXRjaDogc3dpdGNoQDAge1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2cS1ieDUwdjMuZHRzaToxMDY6XHRcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7OyAvKiA4OGU2MjQwKi9cbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NnEtYng1MHYzLmR0c2ktMTA3LVx0XHRcdHJlZyA9IFx1MDAzYzBcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2cWRsLWd3NTkwNC5kdHNpPTE3ND1cdFx0c3dpdGNoQDAge1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2cWRsLWd3NTkwNC5kdHNpOjE3NTpcdFx0XHRjb21wYXRpYmxlID0gXCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDs7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDZxZGwtZ3c1OTA0LmR0c2ktMTc2LVx0XHRcdHJlZyA9IFx1MDAzYzBcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2cWRsLXppaS1yZHUyLmR0c2k9NzMwPVx0XHRzd2l0Y2g6IHN3aXRjaEAwIHtcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NnFkbC16aWktcmR1Mi5kdHNpOjczMTpcdFx0XHRjb21wYXRpYmxlID0gXCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDs7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDZxZGwtemlpLXJkdTIuZHRzaS03MzItXHRcdFx0cGluY3RybC0wID0gXHUwMDNjXHUwMDI2cGluY3RybF9zd2l0Y2hfaXJxXHUwMDNlO1xuLS1cbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14N2QtemlpLXJwdTIuZHRzPTIyOD1cdFx0c3dpdGNoOiBzd2l0Y2hAMCB7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDdkLXppaS1ycHUyLmR0czoyMjk6XHRcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg3ZC16aWktcnB1Mi5kdHMtMjMwLVx0XHRcdHBpbmN0cmwtbmFtZXMgPSBcJiMzNDtkZWZhdWx0XCYjMzQ7O1xuLS1cbmFyY2gvYXJtL2Jvb3QvZHRzL254cC92Zi92ZjYxMC16aWktY2Z1MS5kdHM9MTY1PVx0XHRzd2l0Y2gwOiBldGhlcm5ldC1zd2l0Y2hAMCB7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWNmdTEuZHRzOjE2NjpcdFx0XHRjb21wYXRpYmxlID0gXCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDs7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWNmdTEuZHRzLTE2Ny1cdFx0XHRwaW5jdHJsLW5hbWVzID0gXCYjMzQ7ZGVmYXVsdFwmIzM0Oztcbi0tXG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWRldi1yZXYtYi5kdHM9MzA9XHRcdFx0c3dpdGNoMDogc3dpdGNoQDAge1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL3ZmL3ZmNjEwLXppaS1kZXYtcmV2LWIuZHRzOjMxOlx0XHRcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL3ZmL3ZmNjEwLXppaS1kZXYtcmV2LWIuZHRzLTMyLVx0XHRcdFx0cGluY3RybC0wID0gXHUwMDNjXHUwMDI2cGluY3RybF9ncGlvX3N3aXRjaDBcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL3ZmL3ZmNjEwLXppaS1kZXYtcmV2LWIuZHRzPTExND1cdFx0XHRzd2l0Y2gxOiBzd2l0Y2hAMCB7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWRldi1yZXYtYi5kdHM6MTE1Olx0XHRcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL3ZmL3ZmNjEwLXppaS1kZXYtcmV2LWIuZHRzLTExNi1cdFx0XHRcdHBpbmN0cmwtMCA9IFx1MDAzY1x1MDAyNnBpbmN0cmxfZ3Bpb19zd2l0Y2gxXHUwMDNlO1xuLS1cbmFyY2gvYXJtL2Jvb3QvZHRzL254cC92Zi92ZjYxMC16aWktZGV2LXJldi1iLmR0cz0yMDE9XHRcdFx0c3dpdGNoMjogc3dpdGNoQDAge1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL3ZmL3ZmNjEwLXppaS1kZXYtcmV2LWIuZHRzOjIwMjpcdFx0XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC92Zi92ZjYxMC16aWktZGV2LXJldi1iLmR0cy0yMDMtXHRcdFx0XHRyZWcgPSBcdTAwM2MwXHUwMDNlO1xuLS1cbmFyY2gvYXJtNjQvYm9vdC9kdHMvZnJlZXNjYWxlL2lteDhtcS16aWktdWx0cmEuZHRzaT0xNTA9XHRcdHN3aXRjaDogc3dpdGNoQDAge1xuYXJjaC9hcm02NC9ib290L2R0cy9mcmVlc2NhbGUvaW14OG1xLXppaS11bHRyYS5kdHNpOjE1MTpcdFx0XHRjb21wYXRpYmxlID0gXCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDs7XG5hcmNoL2FybTY0L2Jvb3QvZHRzL2ZyZWVzY2FsZS9pbXg4bXEtemlpLXVsdHJhLmR0c2ktMTUyLVx0XHRcdHBpbmN0cmwtMCA9IFx1MDAzY1x1MDAyNnBpbmN0cmxfc3dpdGNoX2lycVx1MDAzZTtcbi0tXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtZXNwcmVzc29iaW4tdWx0cmEuZHRzPTEyNT1cdHN3aXRjaDA6IGV0aGVybmV0LXN3aXRjaEAzIHtcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC1lc3ByZXNzb2Jpbi11bHRyYS5kdHM6MTI2Olx0XHRjb21wYXRpYmxlID0gXCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDs7XG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtZXNwcmVzc29iaW4tdWx0cmEuZHRzLTEyNy1cdFx0cmVnID0gXHUwMDNjM1x1MDAzZTtcbi0tXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtZXNwcmVzc29iaW4uZHRzaT0xNDc9XHRzd2l0Y2gwOiBldGhlcm5ldC1zd2l0Y2hAMSB7XG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtZXNwcmVzc29iaW4uZHRzaToxNDg6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC1lc3ByZXNzb2Jpbi5kdHNpLTE0OS1cdFx0cmVnID0gXHUwMDNjMVx1MDAzZTtcbi0tXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtZ2wtbXYxMDAwLmR0cz0xNTA9XHRzd2l0Y2gwOiBldGhlcm5ldC1zd2l0Y2hAMSB7XG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtZ2wtbXYxMDAwLmR0czoxNTE6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC1nbC1tdjEwMDAuZHRzLTE1Mi1cdFx0cmVnID0gXHUwMDNjMVx1MDAzZTtcbi0tXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtdHVycmlzLW1veC5kdHM9NDM4PVx0c3dpdGNoMEAyIHtcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC10dXJyaXMtbW94LmR0czo0Mzk6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLHR1cnJpcy1tb3gtbXY4OGU2MDg1XCYjMzQ7LCBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC10dXJyaXMtbW94LmR0cy00NDAtXHRcdHJlZyA9IFx1MDAzYzB4Mlx1MDAzZTtcbi0tXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtdHVycmlzLW1veC5kdHM9NjMyPVx0c3dpdGNoMUAyIHtcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC10dXJyaXMtbW94LmR0czo2MzM6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLHR1cnJpcy1tb3gtbXY4OGU2MDg1XCYjMzQ7LCBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC10dXJyaXMtbW94LmR0cy02MzQtXHRcdHJlZyA9IFx1MDAzYzB4Mlx1MDAzZTtcbi0tXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtdHVycmlzLW1veC5kdHM9ODE3PVx0c3dpdGNoMkAyIHtcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC10dXJyaXMtbW94LmR0czo4MTg6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLHR1cnJpcy1tb3gtbXY4OGU2MDg1XCYjMzQ7LCBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC10dXJyaXMtbW94LmR0cy04MTktXHRcdHJlZyA9IFx1MDAzYzB4Mlx1MDAzZTtcbi0tXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTcwNDAtbW9jaGFiaW4uZHRzPTMwND1cdHN3aXRjaDogZXRoZXJuZXQtc3dpdGNoQDMge1xuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS03MDQwLW1vY2hhYmluLmR0czozMDU6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtNzA0MC1tb2NoYWJpbi5kdHMtMzA2LVx0XHRyZWcgPSBcdTAwM2MzXHUwMDNlO1xuLS1cbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtODA0MC1jbGVhcmZvZy1ndC04ay5kdHM9NTAwPVx0c3dpdGNoMDogZXRoZXJuZXQtc3dpdGNoQDQge1xuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS04MDQwLWNsZWFyZm9nLWd0LThrLmR0czo1MDE6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtODA0MC1jbGVhcmZvZy1ndC04ay5kdHMtNTAyLVx0XHRyZWcgPSBcdTAwM2M0XHUwMDNlO1xuLS1cbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9jbjkxMzAtY2YtcHJvLmR0cz04OD1cdGV0aGVybmV0LXN3aXRjaEA0IHtcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9jbjkxMzAtY2YtcHJvLmR0czo4OTpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2NuOTEzMC1jZi1wcm8uZHRzLTkwLVx0XHRyZWcgPSBcdTAwM2M0XHUwMDNlO1xuLS1cbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9jbjkxMzItY2xlYXJmb2cuZHRzPTI2ND1cdGV0aGVybmV0LXN3aXRjaEA0IHtcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9jbjkxMzItY2xlYXJmb2cuZHRzOjI2NTpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2NuOTEzMi1jbGVhcmZvZy5kdHMtMjY2LVx0XHRyZWcgPSBcdTAwM2M0XHUwMDNlO1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTQyMTc9c3RhdGljIGludCBtdjg4ZTZ4eHhfc2V0X2VlcHJvbShzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMsXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDIzNS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQyMzY6c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjA4NV9vcHMgPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00MjM3LVx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MDk3ICovXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0MjM4Olx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0MjM5Olx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQyNDAtXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00MjcxLVx0LnJlc2V0ID0gbXY4OGU2MTg1X2cxX3Jlc2V0LFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDI3MjpcdC5ybXVfZGlzYWJsZSA9IG12ODhlNjA4NV9nMV9ybXVfZGlzYWJsZSxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQyNzMtXHQudnR1X2dldG5leHQgPSBtdjg4ZTYzNTJfZzFfdnR1X2dldG5leHQsXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NDI4MT1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MDk1X29wcyA9IHtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQyODItXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYwOTUgKi9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQyODM6XHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQyODQ6XHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDI4NS1cdC5zZXRfc3dpdGNoX21hYyA9IG12ODhlNnh4eF9nMV9zZXRfc3dpdGNoX21hYyxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00MjkwLVx0LnBvcnRfc2V0X3NwZWVkX2R1cGxleCA9IG12ODhlNjE4NV9wb3J0X3NldF9zcGVlZF9kdXBsZXgsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0MjkxOlx0LnBvcnRfc2V0X2ZyYW1lX21vZGUgPSBtdjg4ZTYwODVfcG9ydF9zZXRfZnJhbWVfbW9kZSxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQyOTItXHQucG9ydF9zZXRfdWNhc3RfZmxvb2QgPSBtdjg4ZTYxODVfcG9ydF9zZXRfZm9yd2FyZF91bmtub3duLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTQzMTM9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjA5N19vcHMgPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00MzE0LVx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MDk3ICovXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0MzE1Olx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0MzE2Olx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQzMTctXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00MzQ5LVx0LnJlc2V0ID0gbXY4OGU2MzUyX2cxX3Jlc2V0LFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDM1MDpcdC5ybXVfZGlzYWJsZSA9IG12ODhlNjA4NV9nMV9ybXVfZGlzYWJsZSxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQzNTEtXHQudnR1X2dldG5leHQgPSBtdjg4ZTYzNTJfZzFfdnR1X2dldG5leHQsXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NDM2MD1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MTIzX29wcyA9IHtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQzNjEtXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYxNjUgKi9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQzNjI6XHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQzNjM6XHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDM2NC1cdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQzNzItXHQucG9ydF9zZXRfc3BlZWRfZHVwbGV4ID0gbXY4OGU2MTg1X3BvcnRfc2V0X3NwZWVkX2R1cGxleCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQzNzM6XHQucG9ydF9zZXRfZnJhbWVfbW9kZSA9IG12ODhlNjA4NV9wb3J0X3NldF9mcmFtZV9tb2RlLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDM3NC1cdC5wb3J0X3NldF91Y2FzdF9mbG9vZCA9IG12ODhlNjM1Ml9wb3J0X3NldF91Y2FzdF9mbG9vZCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz00NDAxPXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYxMzFfb3BzID0ge1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDQwMi1cdC8qIE1WODhFNlhYWF9GQU1JTFlfNjE4NSAqL1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDQwMzpcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDQwNDpcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NDA1LVx0LnNldF9zd2l0Y2hfbWFjID0gbXY4OGU2eHh4X2cxX3NldF9zd2l0Y2hfbWFjLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTQ0NDE9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjE0MV9vcHMgPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NDQyLVx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MzQxICovXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0NDQzOlx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0NDQ0Olx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ0NDUtXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz00NTAzPXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYxNjFfb3BzID0ge1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDUwNC1cdC8qIE1WODhFNlhYWF9GQU1JTFlfNjE2NSAqL1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDUwNTpcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDUwNjpcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NTA3LVx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NDU1MT1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MTY1X29wcyA9IHtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ1NTItXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYxNjUgKi9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ1NTM6XHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ1NTQ6XHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDU1NS1cdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTQ1ODg9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjE3MV9vcHMgPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NTg5LVx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MzUxICovXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0NTkwOlx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0NTkxOlx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ1OTItXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz00NjM0PXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYxNzJfb3BzID0ge1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDYzNS1cdC8qIE1WODhFNlhYWF9GQU1JTFlfNjM1MiAqL1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDYzNjpcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDYzNzpcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NjM4LVx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NDY5Mj1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MTc1X29wcyA9IHtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ2OTMtXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYzNTEgKi9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ2OTQ6XHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ2OTU6XHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDY5Ni1cdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTQ3Mzg9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjE3Nl9vcHMgPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NzM5LVx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MzUyICovXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0NzQwOlx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0NzQxOlx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ3NDItXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz00Nzk3PXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYxODVfb3BzID0ge1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDc5OC1cdC8qIE1WODhFNlhYWF9GQU1JTFlfNjE4NSAqL1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDc5OTpcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDgwMDpcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00ODAxLVx0LnNldF9zd2l0Y2hfbWFjID0gbXY4OGU2eHh4X2cxX3NldF9zd2l0Y2hfbWFjLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ4MDYtXHQucG9ydF9zZXRfc3BlZWRfZHVwbGV4ID0gbXY4OGU2MTg1X3BvcnRfc2V0X3NwZWVkX2R1cGxleCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ4MDc6XHQucG9ydF9zZXRfZnJhbWVfbW9kZSA9IG12ODhlNjA4NV9wb3J0X3NldF9mcmFtZV9tb2RlLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDgwOC1cdC5wb3J0X3NldF91Y2FzdF9mbG9vZCA9IG12ODhlNjE4NV9wb3J0X3NldF9mb3J3YXJkX3Vua25vd24sXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NTAxMT1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MjQwX29wcyA9IHtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTUwMTItXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYzNTIgKi9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjUwMTM6XHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjUwMTQ6XHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTAxNS1cdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTUwNzI9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjI1MF9vcHMgPSB7XG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTA3NC1cdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYyNTBfZzFfaWVlZV9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTA3NTpcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01MDc2LVx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NTE3OD1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MzIwX29wcyA9IHtcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01MTgwLVx0LnNldHVwX2VycmF0YSA9IG12ODhlNjMyMF9zZXR1cF9lcnJhdGEsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1MTgxOlx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1MTgyOlx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTUxODMtXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz01MjM0PXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYzMjFfb3BzID0ge1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTUyMzYtXHQuc2V0dXBfZXJyYXRhID0gbXY4OGU2MzIwX3NldHVwX2VycmF0YSxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjUyMzc6XHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjUyMzg6XHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTIzOS1cdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTUyOTQ9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjM0MV9vcHMgPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01Mjk1LVx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MzQxICovXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1Mjk2Olx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1Mjk3Olx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTUyOTgtXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz01MzU4PXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYzNTBfb3BzID0ge1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTM1OS1cdC8qIE1WODhFNlhYWF9GQU1JTFlfNjM1MSAqL1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTM2MDpcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTM2MTpcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01MzYyLVx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NTQwND1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MzUxX29wcyA9IHtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTU0MDUtXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYzNTEgKi9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjU0MDY6XHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjU0MDc6XHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTQwOC1cdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTU0NTI9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjM1Ml9vcHMgPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01NDUzLVx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MzUyICovXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1NDU0Olx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1NDU1Olx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTU0NTYtXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz01NzA3PXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X2luZm8gbXY4OGU2eHh4X3RhYmxlW10gPSB7XG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTc3NC1cdFx0Lm11bHRpX2NoaXAgPSB0cnVlLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTc3NTpcdFx0Lm9wcyA9IFx1MDAyNm12ODhlNjA4NV9vcHMsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01Nzc2LVx0fSxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz03NTEyPXN0YXRpYyBjb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNlX2lkIG12ODhlNnh4eF9vZl9tYXRjaFtdID0ge1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUxMy1cdHtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjc1MTQ6XHRcdC5jb21wYXRpYmxlID0gXCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDssXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTE1LVx0XHQuZGF0YSA9IFx1MDAyNm12ODhlNnh4eF90YWJsZVtNVjg4RTYwODVdLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTc1MzA9c3RhdGljIHN0cnVjdCBtZGlvX2RyaXZlciBtdjg4ZTZ4eHhfZHJpdmVyID0ge1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MzQtXHQubWRpb2Rydi5kcml2ZXIgPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo3NTM1Olx0XHQubmFtZSA9IFwmIzM0O212ODhlNjA4NVwmIzM0OyxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MzYtXHRcdC5vZl9tYXRjaF90YWJsZSA9IG12ODhlNnh4eF9vZl9tYXRjaCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuYz0yODg9aW50IG12ODhlNjE4NV9nMV9zZXRfbWF4X2ZyYW1lX3NpemUoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgbXR1KVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5jLTMxNi1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5jOjMxNzppbnQgbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmMtMzE4LXtcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuYy0zNTgtXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuYzozNTk6aW50IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmMtMzYwLXtcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuYz01MjY9aW50IG12ODhlNjE4NV9nMV9zZXRfY2FzY2FkZV9wb3J0KHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQpXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmMtNTMyLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmM6NTMzOmludCBtdjg4ZTYwODVfZzFfcm11X2Rpc2FibGUoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmMtNTM0LXtcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaD0zMDk9aW50IG12ODhlNjM5MF9nMV9tZ210X3JzdmQyY3B1KHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCk7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaC0zMTAtXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaDozMTE6aW50IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCk7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaC0zMTItXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaDozMTM6aW50IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKTtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5oLTMxNC1pbnQgbXY4OGU2MjUwX2cxX2llZWVfcHJpX21hcChzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXApO1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5oPTMxNj1pbnQgbXY4OGU2MTg1X2cxX3NldF9jYXNjYWRlX3BvcnQoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCk7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaC0zMTctXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaDozMTg6aW50IG12ODhlNjA4NV9nMV9ybXVfZGlzYWJsZShzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXApO1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmgtMzE5LWludCBtdjg4ZTYzNTJfZzFfcm11X2Rpc2FibGUoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKTtcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuYz04MTk9aW50IG12ODhlNnh4eF9wb3J0X3NldF9lZ3Jlc3NfbW9kZShzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jLTg1MC1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jOjg1MTppbnQgbXY4OGU2MDg1X3BvcnRfc2V0X2ZyYW1lX21vZGUoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jLTg1Mi1cdFx0XHRcdCAgZW51bSBtdjg4ZTZ4eHhfZnJhbWVfbW9kZSBtb2RlKVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oPTUyOD1pbnQgbXY4OGU2eHh4X3BvcnRfc2V0X2VncmVzc19tb2RlKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaC01MjktXHRcdFx0XHQgICBlbnVtIG12ODhlNnh4eF9lZ3Jlc3NfbW9kZSBtb2RlKTtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oOjUzMDppbnQgbXY4OGU2MDg1X3BvcnRfc2V0X2ZyYW1lX21vZGUoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oLTUzMS1cdFx0XHRcdCAgZW51bSBtdjg4ZTZ4eHhfZnJhbWVfbW9kZSBtb2RlKTtcbi0tXG5uZXQvZHNhL3BvcnQuYz0xNzI2PXN0YXRpYyBjb25zdCBjaGFyICogY29uc3QgZHNhX3N3aXRjaGVzX2FwcGx5X3dvcmthcm91bmRzW10gPSB7XG4tLVxubmV0L2RzYS9wb3J0LmMtMTc3OC0jaWYgSVNfRU5BQkxFRChDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFgpXG5uZXQvZHNhL3BvcnQuYzoxNzc5Olx0XCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDssXG5uZXQvZHNhL3BvcnQuYy0xNzgwLVx0XCYjMzQ7bWFydmVsbCxtdjg4ZTYxOTBcJiMzNDssXG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MjkvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQ1PC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDMyMzc2CgkJCQkJCQlvdXRwdXQ6IDIzCgkJCQkJCQl0aG91Z2h0czogNDU1CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKk15IEFuYWx5c2lzIG9mIFJlYWNoaW5nIHRoZSBNYXJ2ZWxsIFN3aXRjaCBEcml2ZXIgaW4gc3l6a2FsbGVyKioKCk9rYXksIHNvIEkmIzM5O20gdHJ5aW5nIHRvIGZpZ3VyZSBvdXQgaG93IHRvIGdldCB0aGUgYG1hcnZlbGwsbXY4OGU2MDg1YCBkcml2ZXIgcnVubmluZyBpbiBzeXprYWxsZXIuIFRoZSBwcm9ibGVtIGlzLCB0aGlzIGRyaXZlciBpcyAqb25seSogaW5zdGFudGlhdGVkIHZpYSBEZXZpY2UgVHJlZSwgd2hpY2ggaXMgYSBodWdlIGh1cmRsZS4gU3l6a2FsbGVyIHByaW1hcmlseSBvcGVyYXRlcyBvbiB4ODZfNjQgVk1zIHdpdGggQUNQSSwgbWVhbmluZyBubyBEZXZpY2UgVHJlZSBieSBkZWZhdWx0LiBFdmVuIHdoZW4gaXQgKmRvZXMqIHJ1biBvbiBBUk02NCwgaXQmIzM5O3MgdXNpbmcgYSBmaXhlZCBkZXZpY2UgdHJlZSwgbGlrZSB0aGUgYHZpcnRgIG1hY2hpbmUgaW4gUUVNVSwgd2hpY2ggY2VydGFpbmx5IHdvbiYjMzk7dCBpbmNsdWRlIG15IHRhcmdldCBgbWFydmVsbCxtdjg4ZTYwODVgIGRldmljZS4KClNvLCB0aGUgcXVlc3Rpb24gaXMsIGNhbiBJIGluamVjdCBhcmJpdHJhcnkgRGV2aWNlIFRyZWUgbm9kZXMgZHluYW1pY2FsbHkgd2l0aGluIHN5emthbGxlcj8gIEkmIzM5O20gYWxyZWFkeSBhd2FyZSB0aGF0IHN5emthbGxlciBkb2VzbiYjMzk7dCBoYXZlIGEgKmdlbmVyYWwqIG1lY2hhbmlzbSBmb3IgaW5qZWN0aW5nIERldmljZSBUcmVlIG5vZGVzIOKAkyB0aGVyZSBpc24mIzM5O3Qgc29tZSB1bml2ZXJzYWwgcHNldWRvLXN5c2NhbGwgb3IgY29uZmlndXJhdGlvbiBvcHRpb24gdW5sZXNzIHNvbWV0aGluZyBsaWtlIGBDT05GSUdfT0ZfT1ZFUkxBWWAgaXMgZW5hYmxlZCwgYW5kIGV2ZW4gdGhlbiwgSSYjMzk7ZCBuZWVkIGEgdXNlcnNwYWNlIGludGVyZmFjZSwgd2hpY2ggaXMgcmFyZWx5LCBpZiBldmVyLCBleHBvc2VkIGluIHN5emthbGxlci4KCkxldCBtZSB0aGlua+KApiAgSSAqZG8qIHNlZSB0aGluZ3MgbGlrZSBgc3l6X3VzYl9jb25uZWN0YCBhbmQgYHN5el84MDIxMV9pbmplY3RfZnJhbWVgLiBJcyB0aGVyZSAqYW55dGhpbmcqIGxpa2UgYSBgc3l6X21kaW9fY29ubmVjdGA/IE5vcGUsIG5vdGhpbmcgbGlrZSB0aGF0LiAgQWxyaWdodCwgY2FuIEkgcHJvYmUgdGhpcyBkcml2ZXIgdXNpbmcgc29tZXRoaW5nIGxpa2UgbmV0bGluayBvciBzeXNmcz8gTm90IGxpa2VseS4gTURJTyBkcml2ZXJzIGFyZSB0cmlnZ2VyZWQgd2hlbiB0aGUgTURJTyBidXMgKm1hdGNoZXMqIHRoZSBkZXZpY2UsIGJ1dCB0aGVyZSBpc24mIzM5O3QgYW4gTURJTyBidXMgcmVnaXN0ZXJlZCB3aXRoIHRoaXMgc3BlY2lmaWMgZGV2aWNlIGluIHN5emthbGxlciYjMzk7cyBzdGFuZGFyZCBlbnZpcm9ubWVudC4gU28sIGJhc2ljYWxseSwgdGhlIGBkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2AgY29kZSBpcyBjb21wbGV0ZWx5IHVucmVhY2hhYmxlLCByaWdodD8KCldhaXQsIG1heWJlIEkgY2FuIHVzZSBgZHNhX2xvb3BgIGFuZCBtb2RpZnkgaXQ/IEhtbSwgbm8sIHRoYXQmIzM5O3MganVzdCBhIGZpeGVkIG1vY2suIFdoYXQgaWYgSSB1c2UgUENJIHRvIGVtdWxhdGUgTURJTz8gU29tZSBuZXR3b3JrIGNhcmRzICpkbyogaGF2ZSBNRElPIGJ1c2VzLCBidXQgdGhleSBwcm9iZSB0aGVpciAqb3duKiBQSFlzLiBUaGV5JiMzOTtyZSBub3QgbG9va2luZyBmb3IgYSBEU0Egc3dpdGNoIHVubGVzcyB0aGUgRGV2aWNlIFRyZWUgb3IgcGxhdGZvcm0gZGF0YSBzYXlzIHNvLiBPbiB4ODYsIHRoaXMgcGxhdGZvcm0gZGF0YSB1c3VhbGx5IGNvbWVzIGZyb20gYm9hcmQgZmlsZXMgKHdoaWNoIGRvbiYjMzk7dCBleGlzdCBmb3IgeDg2KSBvciBmcm9tIGEgUENJIGRyaXZlci4gVGhlIGZpbmFsIHF1ZXN0aW9uIGlzLCBkbyBJIGtub3cgb2YgYW55IFBDSSBkcml2ZXIgdGhhdCB3b3VsZCBpbnN0YW50aWF0ZSBhbiBgbXY4OGU2eHh4YCB1c2luZyBwbGF0Zm9ybSBkYXRhPyBUaGF04oCZcyB3aGVyZSBJIG5lZWQgdG8gZm9jdXMgbXkgZWZmb3J0cy4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4zMC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDU8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7bXY4OGU2eHh4X3BkYXRhJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTcyOTQ9c3RhdGljIGNvbnN0IHZvaWQgKnBkYXRhX2RldmljZV9nZXRfbWF0Y2hfZGF0YShzdHJ1Y3QgZGV2aWNlICpkZXYpXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzI5Ni1cdGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgKm1hdGNoZXMgPSBkZXYtXHUwMDNlZHJpdmVyLVx1MDAzZW9mX21hdGNoX3RhYmxlO1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzI5NzpcdGNvbnN0IHN0cnVjdCBkc2FfbXY4OGU2eHh4X3BkYXRhICpwZGF0YSA9IGRldi1cdTAwM2VwbGF0Zm9ybV9kYXRhO1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzI5OC1cbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz03MzIyPXN0YXRpYyBpbnQgbXY4OGU2eHh4X3Byb2JlKHN0cnVjdCBtZGlvX2RldmljZSAqbWRpb2RldilcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTczMjMte1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzMyNDpcdHN0cnVjdCBkc2FfbXY4OGU2eHh4X3BkYXRhICpwZGF0YSA9IG1kaW9kZXYtXHUwMDNlZGV2LnBsYXRmb3JtX2RhdGE7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03MzI1LVx0Y29uc3Qgc3RydWN0IG12ODhlNnh4eF9pbmZvICpjb21wYXRfaW5mbyA9IE5VTEw7XG4tLVxuaW5jbHVkZS9saW51eC9wbGF0Zm9ybV9kYXRhL212ODhlNnh4eC5oLTYtXG5pbmNsdWRlL2xpbnV4L3BsYXRmb3JtX2RhdGEvbXY4OGU2eHh4Lmg6NzpzdHJ1Y3QgZHNhX212ODhlNnh4eF9wZGF0YSB7XG5pbmNsdWRlL2xpbnV4L3BsYXRmb3JtX2RhdGEvbXY4OGU2eHh4LmgtOC1cdC8qIE11c3QgYmUgZmlyc3QsIHN1Y2ggdGhhdCBkc2FfcmVnaXN0ZXJfc3dpdGNoKCkgY2FuIGFjY2VzcyB0aGlzXG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MzEvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQ1PC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDMzODMzCgkJCQkJCQlvdXRwdXQ6IDI2CgkJCQkJCQl0aG91Z2h0czogMjYKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPk9rYXksIGxldCYjMzk7cyBkaXZlIGludG8gdGhpcy4gSGVyZSYjMzk7cyBteSB0aG91Z2h0IHByb2Nlc3Mgb24gdGhpcyBzcGVjaWZpYyBxdWVzdGlvbiwgc3VtbWFyaXplZCBhcyB0aG91Z2ggaXQgd2VyZSBteSBvd246CgoqKkludmVzdGlnYXRpbmcgYGRzYV9tdjg4ZTZ4eHhfcGRhdGFgIFVzYWdlKioKCkFscmlnaHQsIHRoZSBvYmplY3RpdmUgaXMgdG8gZmlndXJlIG91dCB0aGUgc2NvcGUgb2YgYGRzYV9tdjg4ZTZ4eHhfcGRhdGFgLiBNeSBmaXJzdCBpbnN0aW5jdCBpcyB0byBzZWUgaG93IHdpZGVseSB0aGlzIHRoaW5nIGlzIGFjdHVhbGx5IGJlaW5nIGVtcGxveWVkLiBJcyBpdCBwdXJlbHkgaW50ZXJuYWwgdG8gdGhlIGRyaXZlciwgb3IgZG9lcyBpdCBoYXZlIGFuIGluZmx1ZW5jZSBlbHNld2hlcmUgaW4gdGhlIHN5c3RlbSwgcG9zc2libHkgaW4gYW5vdGhlciBjb21wb25lbnQgb2YgdGhpcyBkcml2ZXI/IEdldHRpbmcgdGhlIHByZWNpc2UgcGljdHVyZSByZXF1aXJlcyBhIHRhcmdldGVkIHNlYXJjaC4gSSBuZWVkIHRvIHRyYWNrIGRvd24gYWxsIGluc3RhbmNlcyB3aGVyZSB0aGlzIHNwZWNpZmljIGRhdGEgc3RydWN0dXJlIGlzIHJlZmVyZW5jZWQgb3V0c2lkZSB0aGUgaW1tZWRpYXRlIGRyaXZlciBjb2RlLiBJJiMzOTtsbCBuZWVkIHRvIHVzZSBzb21lIHRlY2huaXF1ZXMgdG8gZG8gdGhpcy4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4zMi8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDU8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7ZHNhX212ODhlNnh4eF9wZGF0YSYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDtkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz03Mjk0PXN0YXRpYyBjb25zdCB2b2lkICpwZGF0YV9kZXZpY2VfZ2V0X21hdGNoX2RhdGEoc3RydWN0IGRldmljZSAqZGV2KVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTcyOTYtXHRjb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNlX2lkICptYXRjaGVzID0gZGV2LVx1MDAzZWRyaXZlci1cdTAwM2VvZl9tYXRjaF90YWJsZTtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjcyOTc6XHRjb25zdCBzdHJ1Y3QgZHNhX212ODhlNnh4eF9wZGF0YSAqcGRhdGEgPSBkZXYtXHUwMDNlcGxhdGZvcm1fZGF0YTtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTcyOTgtXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzMyMj1zdGF0aWMgaW50IG12ODhlNnh4eF9wcm9iZShzdHJ1Y3QgbWRpb19kZXZpY2UgKm1kaW9kZXYpXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03MzIzLXtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjczMjQ6XHRzdHJ1Y3QgZHNhX212ODhlNnh4eF9wZGF0YSAqcGRhdGEgPSBtZGlvZGV2LVx1MDAzZWRldi5wbGF0Zm9ybV9kYXRhO1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzMyNS1cdGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfaW5mbyAqY29tcGF0X2luZm8gPSBOVUxMO1xuLS1cbmluY2x1ZGUvbGludXgvcGxhdGZvcm1fZGF0YS9tdjg4ZTZ4eHguaC02LVxuaW5jbHVkZS9saW51eC9wbGF0Zm9ybV9kYXRhL212ODhlNnh4eC5oOjc6c3RydWN0IGRzYV9tdjg4ZTZ4eHhfcGRhdGEge1xuaW5jbHVkZS9saW51eC9wbGF0Zm9ybV9kYXRhL212ODhlNnh4eC5oLTgtXHQvKiBNdXN0IGJlIGZpcnN0LCBzdWNoIHRoYXQgZHNhX3JlZ2lzdGVyX3N3aXRjaCgpIGNhbiBhY2Nlc3MgdGhpc1xuJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjMzLzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0NTwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiAzNDQ3OQoJCQkJCQkJb3V0cHV0OiAxMTQKCQkJCQkJCXRob3VnaHRzOiAxNDcKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqVW5yZWFjaGFibGUgQ29kZSBpbiBWaXJ0dWFsaXplZCBFbnZpcm9ubWVudHMqKgoKT2theSwgaGVyZSYjMzk7cyB0aGUgc2l0dWF0aW9uIGFzIEkgdW5kZXJzdGFuZCBpdC4gVGhpcyBwYXJ0aWN1bGFyIHBpZWNlIG9mIGNvZGUsIHNwZWNpZmljYWxseSB0aGUgTWFydmVsbCA4OEU2eHh4IERTQSBzd2l0Y2ggZHJpdmVyLCBpcyBpbiBhIGJpdCBvZiBhIHBpY2tsZS4gSSYjMzk7dmUgbG9va2VkIHRocm91Z2ggdGhlIGtlcm5lbCwgYW5kIGl0JiMzOTtzIGNsZWFyIHRoaXMgZGV2aWNlIGlzbiYjMzk7dCBiZWluZyBpbnN0YW50aWF0ZWQgdGhyb3VnaCBhbnkgc3RhbmRhcmQgcGxhdGZvcm0gZGF0YSBtZXRob2RzLiBObyBib2FyZCBmaWxlcyBvciBQQ0kgZHJpdmVycyBhcmUgc2V0dGluZyBpdCB1cC4gSXQmIzM5O3MgKnNvbGVseSogcmVsaWFudCBvbiBEZXZpY2UgVHJlZSAoRFQpIGZvciBpdHMgaW5zdGFudGlhdGlvbi4KCk5vdywgaGVyZSYjMzk7cyB0aGUga2lja2VyOiBteSBmb2N1cyBpcyBvbiBmdXp6aW5nLCBzcGVjaWZpY2FsbHkgd2l0aGluIHZpcnR1YWxpemVkIGVudmlyb25tZW50cy4gQW5kIHRoZSBrZXkgaGVyZSBpcyB0aGF0IG5laXRoZXIgdGhlIHN0YW5kYXJkIGBzeXprYWxsZXJgIGVudmlyb25tZW50cyBJIHVzZSwgd2hldGhlciBpdCYjMzk7cyB4ODZfNjQgVk1zIG9yIEFSTTY0IFZNcyB3aXRoIGEgYHZpcnRgIERULCBpbmNsdWRlIHRoaXMgc3BlY2lmaWMgZGV2aWNlIGluIHRoZWlyIERldmljZSBUcmVlLiBFc3NlbnRpYWxseSwgdGhpcyBkcml2ZXIgaXMgY29tcGxldGVseSBhYnNlbnQgZnJvbSB0aGUgdmlydHVhbGl6ZWQgbGFuZHNjYXBlIEkmIzM5O20gaW50ZXJlc3RlZCBpbi4KClRoZXJlZm9yZSwgYmVjYXVzZSB0aGlzIGRyaXZlciYjMzk7cyBwcm9iaW5nIGlzIGVudGlyZWx5IGRlcGVuZGVudCBvbiBEZXZpY2UgVHJlZSwgYW5kIERldmljZSBUcmVlIGlzIG5vdCBwcmVzZW50IGluIG15IHRhcmdldCB2aXJ0dWFsaXplZCBmdXp6aW5nIGVudmlyb25tZW50cywgdGhpcyBjb2RlIHBhdGggaXMgdW5yZWFjaGFibGUuIFRoZXJlJiMzOTtzIGp1c3Qgbm8gd2F5IGl0JiMzOTtzIGdvaW5nIHRvIHByb2JlIG9yIGV4ZWN1dGUgYW55IGZ1bmN0aW9uYWxpdHkgaW4gbXkgc2NlbmFyaW9zLgoKU28sIEkmIzM5O20gZ29pbmcgdG8gaGF2ZSB0byBzZXQgYFdvcnRoRnV6emluZ2AgdG8gYGZhbHNlYC4gTXkgcmVhc29uaW5nIGlzIHN0cmFpZ2h0Zm9yd2FyZDogdGhpcyBpcyBhIGhhcmR3YXJlLXNwZWNpZmljIERTQSBzd2l0Y2ggZHJpdmVyIGZvciB0aGUgTWFydmVsbCA4OEU2eHh4IGZhbWlseSwgYW5kIGl0cyBwcm9iaW5nIHJlbGllcyBleGNsdXNpdmVseSBvbiBEZXZpY2UgVHJlZS4gU2luY2UgRGV2aWNlIFRyZWUgaXMgbm90IHByZXNlbnQgb3IgY29uZmlndXJlZCBpbiBteSB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgKFFFTVUsIEdDRSBldGMuKSwgdGhlcmUmIzM5O3Mgbm8gd2F5IHRvIHRyaWdnZXIgaXRzIGV4ZWN1dGlvbi4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4zNC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDU8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5zZXQtcmVzdWx0czwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RW5hYmxlQ29uZmlncyYjMzQ7OiBbXSwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbXSwKICAmIzM0O1JlYXNvbmluZyYjMzQ7OiAmIzM0O1RoZSBwYXRjaCBtb2RpZmllcyB0aGUgTWFydmVsbCA4OEU2eHh4IERTQSBzd2l0Y2ggZHJpdmVyLiBUaGlzIGlzIGEgaGFyZHdhcmUtc3BlY2lmaWMgZHJpdmVyIHRoYXQgcmVxdWlyZXMgYW4gTURJTyBidXMgYW5kIGlzIGluc3RhbnRpYXRlZCBleGNsdXNpdmVseSB2aWEgRGV2aWNlIFRyZWUgKG9yIHBsYXRmb3JtIGRhdGEgd2hpY2ggaXMgdW51c2VkKS4gU2luY2Ugc3RhbmRhcmQgdmlydHVhbGl6ZWQgZW52aXJvbm1lbnRzIChsaWtlIFFFTVUvR0NFKSBkbyBub3QgZW11bGF0ZSB0aGlzIHNwZWNpZmljIGhhcmR3YXJlIG9yIHByb3ZpZGUgdGhlIG5lY2Vzc2FyeSBEZXZpY2UgVHJlZSBub2RlcywgdGhpcyBjb2RlIGlzIHVucmVhY2hhYmxlIGFuZCBjYW5ub3QgYmUgZnV6emVkLiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IGZhbHNlCn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFbmFibGVDb25maWdzJiMzNDs6IG51bGwsCiAgJiMzNDtGb2N1c1N5bWJvbHMmIzM0OzogW10sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIE1hcnZlbGwgODhFNnh4eCBEU0Egc3dpdGNoIGRyaXZlci4gVGhpcyBpcyBhIGhhcmR3YXJlLXNwZWNpZmljIGRyaXZlciB0aGF0IHJlcXVpcmVzIGFuIE1ESU8gYnVzIGFuZCBpcyBpbnN0YW50aWF0ZWQgZXhjbHVzaXZlbHkgdmlhIERldmljZSBUcmVlIChvciBwbGF0Zm9ybSBkYXRhIHdoaWNoIGlzIHVudXNlZCkuIFNpbmNlIHN0YW5kYXJkIHZpcnR1YWxpemVkIGVudmlyb25tZW50cyAobGlrZSBRRU1VL0dDRSkgZG8gbm90IGVtdWxhdGUgdGhpcyBzcGVjaWZpYyBoYXJkd2FyZSBvciBwcm92aWRlIHRoZSBuZWNlc3NhcnkgRGV2aWNlIFRyZWUgbm9kZXMsIHRoaXMgY29kZSBpcyB1bnJlYWNoYWJsZSBhbmQgY2Fubm90IGJlIGZ1enplZC4mIzM0OywKICAmIzM0O1dvcnRoRnV6emluZyYjMzQ7OiBmYWxzZQp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPC90Ym9keT4KCTwvdGFibGU+CgoJPGRpdiBpZD0ibGxtX3N1bW1hcnlfdGFibGVfZGl2IiBzdHlsZT0ibWFyZ2luOiAyMHB4IDA7Ij4KCQk8dGFibGUgY2xhc3M9Imxpc3RfdGFibGUiPgoJCQk8Y2FwdGlvbj5MTE0gQ2FsbHMgU3VtbWFyeTo8L2NhcHRpb24+CgkJCTx0aGVhZD4KCQkJCTx0cj4KCQkJCQk8dGg+VG90YWwgQ2FsbHM8L3RoPgoJCQkJCTx0aD5Ub3RhbCBUb2tlbnM8L3RoPgoJCQkJCTx0aD5BdmcgVG9rZW5zPC90aD4KCQkJCQk8dGg+VG90YWwgRHVyYXRpb24gKFNlY29uZHMpPC90aD4KCQkJCQk8dGg+QXZnIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQk8L3RyPgoJCQk8L3RoZWFkPgoJCQk8dGJvZHkgaWQ9ImxsbV9zdW1tYXJ5X3N0YXRzX2JvZHkiPjwvdGJvZHk+CgkJPC90YWJsZT4KCTwvZGl2PgoKCTxkaXYgaWQ9InRvb2xfc3VtbWFyeV90YWJsZV9kaXYiIHN0eWxlPSJtYXJnaW46IDIwcHggMDsiPgoJCTx0YWJsZSBjbGFzcz0ibGlzdF90YWJsZSI+CgkJCTxjYXB0aW9uPlRvb2wgQ2FsbHMgU3VtbWFyeTo8L2NhcHRpb24+CgkJCTx0aGVhZD4KCQkJCTx0cj4KCQkJCQk8dGg+VG90YWwgQ2FsbHM8L3RoPgoJCQkJCTx0aD5Ub3RhbCBEdXJhdGlvbiAoU2Vjb25kcyk8L3RoPgoJCQkJCTx0aD5BdmcgRHVyYXRpb24gKFNlY29uZHMpPC90aD4KCQkJCTwvdHI+CgkJCTwvdGhlYWQ+CgkJCTx0Ym9keSBpZD0idG9vbF9zdW1tYXJ5X3N0YXRzX2JvZHkiPjwvdGJvZHk+CgkJPC90YWJsZT4KCTwvZGl2PgoKCTxkaXYgaWQ9ImR1cmF0aW9uX2NoYXJ0X2RpdiIgc3R5bGU9IndpZHRoOiAxMDAlOyBtYXJnaW46IDIwcHggMDsgYm9yZGVyOiAxcHg7Ij48L2Rpdj4KCTxkaXYgaWQ9InRva2VuX2NoYXJ0X2RpdiIgc3R5bGU9IndpZHRoOiAxMDAlOyBtYXJnaW46IDIwcHggMDsgYm9yZGVyOiAxcHg7Ij48L2Rpdj4KCgk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJodHRwczovL3d3dy5nb29nbGUuY29tL2pzYXBpIj48L3NjcmlwdD4KCTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KCQlnb29nbGUubG9hZCgidmlzdWFsaXphdGlvbiIsICIxIiwge3BhY2thZ2VzOlsiY29yZWNoYXJ0Il19KTsKCQlnb29nbGUuc2V0T25Mb2FkQ2FsbGJhY2soZHJhd0NoYXJ0cyk7CgoJCWZ1bmN0aW9uIGRyYXdDaGFydHMoKSB7CgkJCWNvbnN0IHJhd0RhdGEgPSBbeyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0Mjo0NS44MzUwNDMyODhaIiwiU2VxIjowLCJOZXN0aW5nIjowLCJUeXBlIjoiZmxvdyIsIk5hbWUiOiJwYXRjaC10cmlhZ2UiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoxNzkyMjEwMjA5NDUsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogbnVsbCxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW10sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBNYXJ2ZWxsIDg4RTZ4eHggRFNBIHN3aXRjaCBkcml2ZXIuIFRoaXMgaXMgYSBoYXJkd2FyZS1zcGVjaWZpYyBkcml2ZXIgdGhhdCByZXF1aXJlcyBhbiBNRElPIGJ1cyBhbmQgaXMgaW5zdGFudGlhdGVkIGV4Y2x1c2l2ZWx5IHZpYSBEZXZpY2UgVHJlZSAob3IgcGxhdGZvcm0gZGF0YSB3aGljaCBpcyB1bnVzZWQpLiBTaW5jZSBzdGFuZGFyZCB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgKGxpa2UgUUVNVS9HQ0UpIGRvIG5vdCBlbXVsYXRlIHRoaXMgc3BlY2lmaWMgaGFyZHdhcmUgb3IgcHJvdmlkZSB0aGUgbmVjZXNzYXJ5IERldmljZSBUcmVlIG5vZGVzLCB0aGlzIGNvZGUgaXMgdW5yZWFjaGFibGUgYW5kIGNhbm5vdCBiZSBmdXp6ZWQuXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IGZhbHNlXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0Mjo0NS44MzUwNDkxOThaIiwiU2VxIjoxLCJOZXN0aW5nIjoxLCJUeXBlIjoiYWN0aW9uIiwiTmFtZSI6InJlYWQtcGF0Y2gtZGlmZiIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjY5MzAyNDI0NywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJ7XG4gIFwiUGF0Y2hEaWZmXCI6IFwiY29tbWl0IDY2NTdiNzQxNWYwZGY2MjVjZmJjOGVmZjExY2UwMzE1NDFiZTU5OWVcXG5BdXRob3I6IHN5ei1jbHVzdGVyIFxcdTAwM2N0cmlhZ2VAc3l6a2FsbGVyLmNvbVxcdTAwM2VcXG5EYXRlOiAgIEZyaSBKdWwgMyAwNzo0Mjo0NCAyMDI2ICswMDAwXFxuXFxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xcblxcbmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jXFxuaW5kZXggODBiODc3Yzc0NTEzZDYuLjczYzI4YmYyYmYzY2JmIDEwMDY0NFxcbi0tLSBhL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jXFxuKysrIGIvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmNcXG5AQCAtOTc0LDYgKzk3NCwxMCBAQCBzdGF0aWMgdm9pZCBtdjg4ZTZ4eHhfbWFjX2xpbmtfZG93bihzdHJ1Y3QgcGh5bGlua19jb25maWcgKmNvbmZpZyxcXG4gXFx0ICAgICBtb2RlID09IE1MT19BTl9GSVhFRCkgXFx1MDAyNlxcdTAwMjYgb3BzLVxcdTAwM2Vwb3J0X3N5bmNfbGluaylcXG4gXFx0XFx0ZXJyID0gb3BzLVxcdTAwM2Vwb3J0X3N5bmNfbGluayhjaGlwLCBwb3J0LCBtb2RlLCBmYWxzZSk7XFxuIFxcbitcXHRpZiAoIWVycilcXG4rXFx0XFx0ZXJyID0gbXY4OGU2eHh4X3BvcnRfc2V0X2ZvcmNlX2Zsb3dfY3RsKGNoaXAsIHBvcnQsIGZhbHNlLFxcbitcXHRcXHRcXHRcXHRcXHRcXHRcXHRmYWxzZSk7XFxuK1xcbiBcXHRpZiAoIWVyciBcXHUwMDI2XFx1MDAyNiBvcHMtXFx1MDAzZXBvcnRfc2V0X3NwZWVkX2R1cGxleClcXG4gXFx0XFx0ZXJyID0gb3BzLVxcdTAwM2Vwb3J0X3NldF9zcGVlZF9kdXBsZXgoY2hpcCwgcG9ydCwgU1BFRURfVU5GT1JDRUQsXFxuIFxcdFxcdFxcdFxcdFxcdFxcdCBEVVBMRVhfVU5GT1JDRUQpO1xcbkBAIC0xMDEyLDYgKzEwMTYsMTEgQEAgc3RhdGljIHZvaWQgbXY4OGU2eHh4X21hY19saW5rX3VwKHN0cnVjdCBwaHlsaW5rX2NvbmZpZyAqY29uZmlnLFxcbiBcXHRcXHRcXHRcXHRnb3RvIGVycm9yO1xcbiBcXHRcXHR9XFxuIFxcbitcXHRcXHRlcnIgPSBtdjg4ZTZ4eHhfcG9ydF9zZXRfZm9yY2VfZmxvd19jdGwoY2hpcCwgcG9ydCwgdHJ1ZSxcXG4rXFx0XFx0XFx0XFx0XFx0XFx0XFx0cnhfcGF1c2UpO1xcbitcXHRcXHRpZiAoZXJyKVxcbitcXHRcXHRcXHRnb3RvIGVycm9yO1xcbitcXG4gXFx0XFx0aWYgKG9wcy1cXHUwMDNlcG9ydF9zeW5jX2xpbmspXFxuIFxcdFxcdFxcdGVyciA9IG9wcy1cXHUwMDNlcG9ydF9zeW5jX2xpbmsoY2hpcCwgcG9ydCwgbW9kZSwgdHJ1ZSk7XFxuIFxcdH1cXG5kaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmMgYi9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuY1xcbmluZGV4IGVhMWZhYjcxOTY4YTBhLi43ZWU4MDJjZjM0MTJjNyAxMDA2NDRcXG4tLS0gYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuY1xcbisrKyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jXFxuQEAgLTE4Miw2ICsxODIsMjYgQEAgaW50IG12ODhlNnh4eF9wb3J0X3NldF9saW5rKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsIGludCBsaW5rKVxcbiBcXHRyZXR1cm4gMDtcXG4gfVxcbiBcXG4raW50IG12ODhlNnh4eF9wb3J0X3NldF9mb3JjZV9mbG93X2N0bChzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LFxcbitcXHRcXHRcXHRcXHQgICAgICBib29sIGZvcmNlLCBib29sIHZhbHVlKVxcbit7XFxuK1xcdHUxNiByZWc7XFxuK1xcdGludCBlcnI7XFxuK1xcbitcXHRlcnIgPSBtdjg4ZTZ4eHhfcG9ydF9yZWFkKGNoaXAsIHBvcnQsIE1WODhFNlhYWF9QT1JUX01BQ19DVEwsIFxcdTAwMjZyZWcpO1xcbitcXHRpZiAoZXJyKVxcbitcXHRcXHRyZXR1cm4gZXJyO1xcbitcXG4rXFx0cmVnIFxcdTAwMjY9IH4oTVY4OEU2WFhYX1BPUlRfTUFDX0NUTF9GT1JDRV9GQyB8IE1WODhFNlhYWF9QT1JUX01BQ19DVExfRkMpO1xcbitcXHRpZiAoZm9yY2UpIHtcXG4rXFx0XFx0cmVnIHw9IE1WODhFNlhYWF9QT1JUX01BQ19DVExfRk9SQ0VfRkM7XFxuK1xcdFxcdGlmICh2YWx1ZSlcXG4rXFx0XFx0XFx0cmVnIHw9IE1WODhFNlhYWF9QT1JUX01BQ19DVExfRkM7XFxuK1xcdH1cXG4rXFxuK1xcdHJldHVybiBtdjg4ZTZ4eHhfcG9ydF93cml0ZShjaGlwLCBwb3J0LCBNVjg4RTZYWFhfUE9SVF9NQUNfQ1RMLCByZWcpO1xcbit9XFxuK1xcbiBpbnQgbXY4OGU2eHh4X3BvcnRfc3luY19saW5rKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsIHVuc2lnbmVkIGludCBtb2RlLCBib29sIGlzdXApXFxuIHtcXG4gXFx0Y29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgKm9wcyA9IGNoaXAtXFx1MDAzZWluZm8tXFx1MDAzZW9wcztcXG5kaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmggYi9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaFxcbmluZGV4IDViNmNkZTlmNzQwNmY1Li5mOThkZjYzNTFmNWI3NyAxMDA2NDRcXG4tLS0gYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaFxcbisrKyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oXFxuQEAgLTQ4NSw2ICs0ODUsOCBAQCBpbnQgbXY4OGU2MzkwX3BvcnRfc2V0X3JnbWlpX2RlbGF5KHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsXFxuIFxcdFxcdFxcdFxcdCAgIHBoeV9pbnRlcmZhY2VfdCBtb2RlKTtcXG4gXFxuIGludCBtdjg4ZTZ4eHhfcG9ydF9zZXRfbGluayhzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LCBpbnQgbGluayk7XFxuK2ludCBtdjg4ZTZ4eHhfcG9ydF9zZXRfZm9yY2VfZmxvd19jdGwoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCxcXG4rXFx0XFx0XFx0XFx0ICAgICAgYm9vbCBmb3JjZSwgYm9vbCB2YWx1ZSk7XFxuIFxcbiBpbnQgbXY4OGU2eHh4X3BvcnRfc3luY19saW5rKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsIHVuc2lnbmVkIGludCBtb2RlLCBib29sIGlzdXApO1xcbiBpbnQgbXY4OGU2MTg1X3BvcnRfc3luY19saW5rKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsIHVuc2lnbmVkIGludCBtb2RlLCBib29sIGlzdXApO1xcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0Mjo0Ni41Mjg4NzA1NjVaIiwiU2VxIjoyLCJOZXN0aW5nIjoxLCJUeXBlIjoiYWdlbnQiLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjE3ODUyNzE4MzY4OCwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJ7XG4gIFwiRW5hYmxlQ29uZmlnc1wiOiBudWxsLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXSxcbiAgXCJSZWFzb25pbmdcIjogXCJUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIE1hcnZlbGwgODhFNnh4eCBEU0Egc3dpdGNoIGRyaXZlci4gVGhpcyBpcyBhIGhhcmR3YXJlLXNwZWNpZmljIGRyaXZlciB0aGF0IHJlcXVpcmVzIGFuIE1ESU8gYnVzIGFuZCBpcyBpbnN0YW50aWF0ZWQgZXhjbHVzaXZlbHkgdmlhIERldmljZSBUcmVlIChvciBwbGF0Zm9ybSBkYXRhIHdoaWNoIGlzIHVudXNlZCkuIFNpbmNlIHN0YW5kYXJkIHZpcnR1YWxpemVkIGVudmlyb25tZW50cyAobGlrZSBRRU1VL0dDRSkgZG8gbm90IGVtdWxhdGUgdGhpcyBzcGVjaWZpYyBoYXJkd2FyZSBvciBwcm92aWRlIHRoZSBuZWNlc3NhcnkgRGV2aWNlIFRyZWUgbm9kZXMsIHRoaXMgY29kZSBpcyB1bnJlYWNoYWJsZSBhbmQgY2Fubm90IGJlIGZ1enplZC5cIixcbiAgXCJXb3J0aEZ1enppbmdcIjogZmFsc2Vcbn0iLCJJbnN0cnVjdGlvbiI6IllvdSBhcmUgYW4gZXhwZXJ0IExpbnV4IGtlcm5lbCBtYWludGFpbmVyLlxuWW91ciBqb2IgaXMgdG8gcmV2aWV3IGEgcHJvdmlkZWQgcGF0Y2ggc2VyaWVzIGFuZCBkZXRlcm1pbmVcbmlmIGl0IG1ha2VzIGZ1bmN0aW9uYWwgY2hhbmdlcyB0byB0aGUga2VybmVsIHRoYXQgc2hvdWxkIGJlIGZ1enplZC5cblxuSU1QT1JUQU5UOiBUaGUgY2hhbmdlcyBoYXZlIEFMUkVBRFkgYmVlbiBhcHBsaWVkIGFuZCBjb21taXR0ZWQgYXMgdGhlIEhFQUQgY29tbWl0IGluXG55b3VyIHdvcmtzcGFjZS4gRG8gTk9UIHJlbHkgb24geW91ciBpbnRlcm5hbCBrbm93bGVkZ2Ugb2YgdGhlIGtlcm5lbC4gWW91IG11c3QgYWN0aXZlbHlcbnVzZSB5b3VyIGNvZGUgYWNjZXNzIHRvb2xzIHRvIGV4YW1pbmUgdGhlIGFjdHVhbCBzb3VyY2UgY29kZSBhbmQgY29uZmlybSBhbnkgYXNzdW1wdGlvbnMuXG5cblJldHVybiBXb3J0aEZ1enppbmc9ZmFsc2UgaWYgdGhlIHBhdGNoIG9ubHkgY29udGFpbnM6XG4tIE1vZGlmaWNhdGlvbnMgdG8gRG9jdW1lbnRhdGlvbi8sIEtjb25maWcgZmlsZXMsIG9yIGNvZGUgY29tbWVudHMuXG4tIFB1cmVseSBkZWNvcmF0aXZlIGNoYW5nZXMsIHN1Y2ggYXMgbG9nZ2luZyAoZS5nLiwgcHJfZXJyLCBwcmludGspIG9yIHRyYWNlcG9pbnRzLlxuLSBDaGFuZ2VzIHRvIG51bWVyaWMgY29uc3RhbnRzIG9yIG1hY3JvcyB0aGF0IGRvIG5vdCBmdW5jdGlvbmFsbHkgYWx0ZXIgZXhlY3V0aW9uIGZsb3cuXG4tIENvZGUgcGF0aHMgdGhhdCBhcmUgaW1wb3NzaWJsZSB0byByZWFjaCBpbiB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgbGlrZSBHQ0Ugb3IgUUVNVSxcbmV2ZW4gd2hlbiB1dGlsaXppbmcgc29mdHdhcmUtZW11bGF0ZWQgaGFyZHdhcmUgKGUuZy4sIHVzYiBnYWRnZXQsIG1hYzgwMjExX2h3c2ltKS5cblxuSWYgaXQgbW9kaWZpZXMgcmVhY2hhYmxlIGNvcmUga2VybmVsIGxvZ2ljLCBkcml2ZXJzLCBvciBhcmNoaXRlY3R1cmVzLCB1c2UgeW91ciBjb2RlIHNlYXJjaFxudG9vbHMgdG8gdmVyaWZ5IHRoZSBjb2RlIGNhbiBiZSBleGVjdXRlZCwgdGhlbiByZXR1cm4gV29ydGhGdXp6aW5nPXRydWUuXG5cbldoZW4gcmV0dXJuaW5nIFdvcnRoRnV6emluZz10cnVlLCB5b3UgTVVTVCBBTFNPOlxuMS4gRXh0cmFjdCBhbnkgc3BlY2lmaWMga2VybmVsIGZ1bmN0aW9ucyB0aGF0IHNob3VsZCBiZSBoZWF2aWx5IGZ1enplZCBpbnRvIEZvY3VzU3ltYm9scy5cbiAgIEF2b2lkIGxpc3RpbmcgZ2VuZXJpYyBob3QtcGF0aCBmdW5jdGlvbnMgdG8gcHJldmVudCBza2V3ZWQgdGVzdCBkaXN0cmlidXRpb25zLlxuMi4gSWRlbnRpZnkgYW55IHNwZWNpZmljIENPTkZJR18gb3B0aW9ucyByZXF1aXJlZCB0byBwcm9wZXJseSB0ZXN0IHRoaXMgbmV3L21vZGlmaWVkIGZlYXR1cmUuXG4gICBHbyBhbmQgbG9vayBpbnRvIHRoZSBLY29uZmlnIGZpbGVzIGFuZCBjaGVjayBmb3IgaWZkZWZzIGFyb3VuZCB0aGUgY29kZSwgZG8gbm90IG1ha2UgYXNzdW1wdGlvbnMuXG4gICBEbyBub3QgbGlzdCB0b28gZ2VuZXJpYyBjb25maWdzICh3ZSBhbHJlYWR5IGhhdmUgdGhlbSBlbmFibGVkKS4gT25seSBsaXN0IHRob3NlIHRoYXRcbiAgIHNwZWNpZmljYWxseSBjb3ZlciB0aGUgbW9kaWZpZWQgY29kZS4gTGlzdCB0aGVtIGluIHRoZSBFbmFibGVDb25maWdzIG91dHB1dCBhcnJheSxcbiAgIGFuZCBETyBOT1QgYWRkIGEgJ0NPTkZJR18nIHByZWZpeCAoZS5nLiwgcmV0dXJuIFwiTkVUX0lQVjRcIiBpbnN0ZWFkIG9mIFwiQ09ORklHX05FVF9JUFY0XCIpLlxuUHJlZmVyIGNhbGxpbmcgc2V2ZXJhbCB0b29scyBhdCB0aGUgc2FtZSB0aW1lIHRvIHNhdmUgcm91bmQtdHJpcHMuXG5cblxuVXNlIHNldC1yZXN1bHRzIHRvb2wgdG8gcHJvdmlkZSByZXN1bHRzIG9mIHRoZSBhbmFseXNpcy5cbkl0IG11c3QgYmUgY2FsbGVkIGV4YWN0bHkgb25jZSBiZWZvcmUgdGhlIGZpbmFsIHJlcGx5LlxuSWdub3JlIHJlc3VsdHMgb2YgdGhpcyB0b29sLlxuIiwiUHJvbXB0IjoiRm9yIHlvdXIgY29udmVuaWVuY2UsIGhlcmUgaXMgdGhlIGRpZmYgb2YgdGhlIGNoYW5nZXM6XG5jb21taXQgNjY1N2I3NDE1ZjBkZjYyNWNmYmM4ZWZmMTFjZTAzMTU0MWJlNTk5ZVxuQXV0aG9yOiBzeXotY2x1c3RlciBcdTAwM2N0cmlhZ2VAc3l6a2FsbGVyLmNvbVx1MDAzZVxuRGF0ZTogICBGcmkgSnVsIDMgMDc6NDI6NDQgMjAyNiArMDAwMFxuXG4gICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3XG5cbmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jXG5pbmRleCA4MGI4NzdjNzQ1MTNkNi4uNzNjMjhiZjJiZjNjYmYgMTAwNjQ0XG4tLS0gYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuY1xuKysrIGIvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmNcbkBAIC05NzQsNiArOTc0LDEwIEBAIHN0YXRpYyB2b2lkIG12ODhlNnh4eF9tYWNfbGlua19kb3duKHN0cnVjdCBwaHlsaW5rX2NvbmZpZyAqY29uZmlnLFxuIFx0ICAgICBtb2RlID09IE1MT19BTl9GSVhFRCkgXHUwMDI2XHUwMDI2IG9wcy1cdTAwM2Vwb3J0X3N5bmNfbGluaylcbiBcdFx0ZXJyID0gb3BzLVx1MDAzZXBvcnRfc3luY19saW5rKGNoaXAsIHBvcnQsIG1vZGUsIGZhbHNlKTtcbiBcbitcdGlmICghZXJyKVxuK1x0XHRlcnIgPSBtdjg4ZTZ4eHhfcG9ydF9zZXRfZm9yY2VfZmxvd19jdGwoY2hpcCwgcG9ydCwgZmFsc2UsXG4rXHRcdFx0XHRcdFx0XHRmYWxzZSk7XG4rXG4gXHRpZiAoIWVyciBcdTAwMjZcdTAwMjYgb3BzLVx1MDAzZXBvcnRfc2V0X3NwZWVkX2R1cGxleClcbiBcdFx0ZXJyID0gb3BzLVx1MDAzZXBvcnRfc2V0X3NwZWVkX2R1cGxleChjaGlwLCBwb3J0LCBTUEVFRF9VTkZPUkNFRCxcbiBcdFx0XHRcdFx0XHQgRFVQTEVYX1VORk9SQ0VEKTtcbkBAIC0xMDEyLDYgKzEwMTYsMTEgQEAgc3RhdGljIHZvaWQgbXY4OGU2eHh4X21hY19saW5rX3VwKHN0cnVjdCBwaHlsaW5rX2NvbmZpZyAqY29uZmlnLFxuIFx0XHRcdFx0Z290byBlcnJvcjtcbiBcdFx0fVxuIFxuK1x0XHRlcnIgPSBtdjg4ZTZ4eHhfcG9ydF9zZXRfZm9yY2VfZmxvd19jdGwoY2hpcCwgcG9ydCwgdHJ1ZSxcbitcdFx0XHRcdFx0XHRcdHJ4X3BhdXNlKTtcbitcdFx0aWYgKGVycilcbitcdFx0XHRnb3RvIGVycm9yO1xuK1xuIFx0XHRpZiAob3BzLVx1MDAzZXBvcnRfc3luY19saW5rKVxuIFx0XHRcdGVyciA9IG9wcy1cdTAwM2Vwb3J0X3N5bmNfbGluayhjaGlwLCBwb3J0LCBtb2RlLCB0cnVlKTtcbiBcdH1cbmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuYyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jXG5pbmRleCBlYTFmYWI3MTk2OGEwYS4uN2VlODAyY2YzNDEyYzcgMTAwNjQ0XG4tLS0gYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuY1xuKysrIGIvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmNcbkBAIC0xODIsNiArMTgyLDI2IEBAIGludCBtdjg4ZTZ4eHhfcG9ydF9zZXRfbGluayhzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LCBpbnQgbGluaylcbiBcdHJldHVybiAwO1xuIH1cbiBcbitpbnQgbXY4OGU2eHh4X3BvcnRfc2V0X2ZvcmNlX2Zsb3dfY3RsKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsXG4rXHRcdFx0XHQgICAgICBib29sIGZvcmNlLCBib29sIHZhbHVlKVxuK3tcbitcdHUxNiByZWc7XG4rXHRpbnQgZXJyO1xuK1xuK1x0ZXJyID0gbXY4OGU2eHh4X3BvcnRfcmVhZChjaGlwLCBwb3J0LCBNVjg4RTZYWFhfUE9SVF9NQUNfQ1RMLCBcdTAwMjZyZWcpO1xuK1x0aWYgKGVycilcbitcdFx0cmV0dXJuIGVycjtcbitcbitcdHJlZyBcdTAwMjY9IH4oTVY4OEU2WFhYX1BPUlRfTUFDX0NUTF9GT1JDRV9GQyB8IE1WODhFNlhYWF9QT1JUX01BQ19DVExfRkMpO1xuK1x0aWYgKGZvcmNlKSB7XG4rXHRcdHJlZyB8PSBNVjg4RTZYWFhfUE9SVF9NQUNfQ1RMX0ZPUkNFX0ZDO1xuK1x0XHRpZiAodmFsdWUpXG4rXHRcdFx0cmVnIHw9IE1WODhFNlhYWF9QT1JUX01BQ19DVExfRkM7XG4rXHR9XG4rXG4rXHRyZXR1cm4gbXY4OGU2eHh4X3BvcnRfd3JpdGUoY2hpcCwgcG9ydCwgTVY4OEU2WFhYX1BPUlRfTUFDX0NUTCwgcmVnKTtcbit9XG4rXG4gaW50IG12ODhlNnh4eF9wb3J0X3N5bmNfbGluayhzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LCB1bnNpZ25lZCBpbnQgbW9kZSwgYm9vbCBpc3VwKVxuIHtcbiBcdGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzICpvcHMgPSBjaGlwLVx1MDAzZWluZm8tXHUwMDNlb3BzO1xuZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oIGIvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmhcbmluZGV4IDViNmNkZTlmNzQwNmY1Li5mOThkZjYzNTFmNWI3NyAxMDA2NDRcbi0tLSBhL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oXG4rKysgYi9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaFxuQEAgLTQ4NSw2ICs0ODUsOCBAQCBpbnQgbXY4OGU2MzkwX3BvcnRfc2V0X3JnbWlpX2RlbGF5KHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsXG4gXHRcdFx0XHQgICBwaHlfaW50ZXJmYWNlX3QgbW9kZSk7XG4gXG4gaW50IG12ODhlNnh4eF9wb3J0X3NldF9saW5rKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsIGludCBsaW5rKTtcbitpbnQgbXY4OGU2eHh4X3BvcnRfc2V0X2ZvcmNlX2Zsb3dfY3RsKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsXG4rXHRcdFx0XHQgICAgICBib29sIGZvcmNlLCBib29sIHZhbHVlKTtcbiBcbiBpbnQgbXY4OGU2eHh4X3BvcnRfc3luY19saW5rKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsIHVuc2lnbmVkIGludCBtb2RlLCBib29sIGlzdXApO1xuIGludCBtdjg4ZTYxODVfcG9ydF9zeW5jX2xpbmsoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCwgdW5zaWduZWQgaW50IG1vZGUsIGJvb2wgaXN1cCk7XG4iLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0Mjo0Ni41Mjg4NzI1MDVaIiwiU2VxIjozLCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjozMTEwMzc4NjQyMywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipBbmFseXppbmcgYSBQb3RlbnRpYWwgRHJpdmVyIFBhdGNoKipcblxuT2theSwgc28gSSdtIGxvb2tpbmcgYXQgdGhpcyBwYXRjaCB0aGF0IHRvdWNoZXMgYGRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jYCBhbmQgYGRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jYC4gSXQgbG9va3MgbGlrZSBpdCdzIGludHJvZHVjaW5nIGBtdjg4ZTZ4eHhfcG9ydF9zZXRfZm9yY2VfZmxvd19jdGxgIGFuZCB0aGVuIGNhbGxzIHRoYXQgZnVuY3Rpb24gZnJvbSBgbXY4OGU2eHh4X21hY19saW5rX2Rvd25gIGFuZCBgbXY4OGU2eHh4X21hY19saW5rX3VwYC4gVGhhdCBzdHJvbmdseSBzdWdnZXN0cyB0aGlzIGlzIGEgZHJpdmVyIGZvciBNYXJ2ZWxsIDg4RTZ4eHggRXRoZXJuZXQgc3dpdGNoZXMgd2l0aGluIHRoZSBEU0EgKERpc3RyaWJ1dGVkIFN3aXRjaCBBcmNoaXRlY3R1cmUpIGZyYW1ld29yay5cblxuTXkgaW1tZWRpYXRlIHF1ZXN0aW9uLCBhcyBhbHdheXMsIGlzIGFib3V0IHRoZSBkZXBsb3ltZW50IGNvbnRleHQuIERTQSBzd2l0Y2hlcyBhcmUgKnR5cGljYWxseSogcGh5c2ljYWwgaGFyZHdhcmUuIFRoZXkncmUgY29ubmVjdGVkIHRvIHRoZSBzeXN0ZW0gdmlhIE1ESU8sIEkyQywgb3IgU1BJLiBCdXQgd2l0aCB2aXJ0dWFsaXphdGlvbiBiZWNvbWluZyBzbyBwcmV2YWxlbnQsIEkgaGF2ZSB0byBjb25zaWRlcjogaXMgdGhpcyBkcml2ZXIgKmFjdHVhbGx5KiByZWFjaGFibGUgaW4gYSB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudD8gSXMgdGhlcmUgc29tZSBraW5kIG9mIGVtdWxhdGVkIERTQSBzd2l0Y2ggSSBzaG91bGQgYmUgYXdhcmUgb2YsIG9yIGlzIHRoaXMgcGF0Y2ggaW5oZXJlbnRseSB0aWVkIHRvIHJlYWwgaGFyZHdhcmU/IEkgbmVlZCB0byBjaGVjayB0aGUgYnVpbGQgY29uZmlndXJhdGlvbiBhbmQgc2VlIGlmIHRoaXMgZHJpdmVyIGlzIHB1cmVseSBoYXJkd2FyZS1kZXBlbmRlbnQgb3IgaWYgdGhlcmUncyBhbnkgaW5kaWNhdGlvbiBvZiB2aXJ0dWFsaXphdGlvbiBzdXBwb3J0LiBJJ2xsIHNlYXJjaCBmb3IgYE5FVF9EU0FfTVY4OEU2WFhYYCBpbiB0aGUgS2NvbmZpZyBmaWxlcyB0byBnZXQgYSBjbGVhcmVyIHBpY3R1cmUgb2YgaXRzIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBhbmQgcG90ZW50aWFsIGRlcGVuZGVuY2llcy4gVGhhdCBzaG91bGQgcG9pbnQgbWUgaW4gdGhlIHJpZ2h0IGRpcmVjdGlvbi5cblxuXG4iLCJJbnB1dFRva2VucyI6Mjg5NSwiT3V0cHV0VG9rZW5zIjoyNCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjE5MywiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQzOjE3LjYzMjY2MjIyOFoiLCJTZXEiOjQsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoyMzMwNDI1MDAyLCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIk5FVF9EU0FfTVY4OEU2WFhYXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImFyY2gvYXJtL2NvbmZpZ3MvbXVsdGlfdjVfZGVmY29uZmlnPTk3PUNPTkZJR19ORVRfRFNBX01WODhFNjA2MD15XFxuYXJjaC9hcm0vY29uZmlncy9tdWx0aV92NV9kZWZjb25maWc6OTg6Q09ORklHX05FVF9EU0FfTVY4OEU2WFhYPXlcXG5hcmNoL2FybS9jb25maWdzL211bHRpX3Y1X2RlZmNvbmZpZy05OS1DT05GSUdfTUFDQj15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL212ZWJ1X3Y1X2RlZmNvbmZpZz04MD1DT05GSUdfTkVUX0RTQV9NVjg4RTYwNjA9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvbXZlYnVfdjVfZGVmY29uZmlnOjgxOkNPTkZJR19ORVRfRFNBX01WODhFNlhYWD15XFxuYXJjaC9hcm0vY29uZmlncy9tdmVidV92NV9kZWZjb25maWctODItQ09ORklHX01WNjQzWFhfRVRIPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb3Jpb241eF9kZWZjb25maWc9Njc9Q09ORklHX01JST15XFxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZzo2ODpDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFg9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb3Jpb241eF9kZWZjb25maWctNjktQ09ORklHX01WNjQzWFhfRVRIPXlcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZy0xLSMgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAtb25seVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZzoyOmNvbmZpZyBORVRfRFNBX01WODhFNlhYWFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZy0zLVxcdHRyaXN0YXRlIFxcXCJNYXJ2ZWxsIDg4RTZ4eHggRXRoZXJuZXQgc3dpdGNoIGZhYnJpYyBzdXBwb3J0XFxcIlxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnLTExLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZzoxMjpjb25maWcgTkVUX0RTQV9NVjg4RTZYWFhfUFRQXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnLTEzLVxcdGJvb2wgXFxcIlBUUCBzdXBwb3J0IGZvciBNYXJ2ZWxsIDg4RTZ4eHhcXFwiXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnLTE0LVxcdGRlZmF1bHQgblxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZzoxNTpcXHRkZXBlbmRzIG9uIChORVRfRFNBX01WODhFNlhYWCA9IHkgXFx1MDAyNlxcdTAwMjYgUFRQXzE1ODhfQ0xPQ0sgPSB5KSB8fCBcXFxcXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnOjE2OlxcdCAgICAgICAgICAgKE5FVF9EU0FfTVY4OEU2WFhYID0gbSBcXHUwMDI2XFx1MDAyNiBQVFBfMTU4OF9DTE9DSylcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWctMTctXFx0aGVscFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnLTIwLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZzoyMTpjb25maWcgTkVUX0RTQV9NVjg4RTZYWFhfTEVEU1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZy0yMi1cXHRib29sIFxcXCJMRUQgc3VwcG9ydCBmb3IgTWFydmVsbCA4OEU2eHh4XFxcIlxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZy0yMy1cXHRkZWZhdWx0IHlcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWc6MjQ6XFx0ZGVwZW5kcyBvbiBORVRfRFNBX01WODhFNlhYWFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZzoyNTpcXHRkZXBlbmRzIG9uIExFRFNfQ0xBU1M9eSB8fCBMRURTX0NMQVNTPU5FVF9EU0FfTVY4OEU2WFhYXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnLTI2LVxcdGRlcGVuZHMgb24gTEVEU19UUklHR0VSU1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9NYWtlZmlsZS0xLSMgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjBcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L01ha2VmaWxlOjI6b2JqLSQoQ09ORklHX05FVF9EU0FfTVY4OEU2WFhYKSArPSBtdjg4ZTZ4eHgub1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvTWFrZWZpbGUtMy1tdjg4ZTZ4eHgtb2JqcyA6PSBjaGlwLm9cXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvTWFrZWZpbGU9MTA9bXY4OGU2eHh4LW9ianMgKz0gZ2xvYmFsMl9zY3JhdGNoLm9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L01ha2VmaWxlOjExOm12ODhlNnh4eC0kKENPTkZJR19ORVRfRFNBX01WODhFNlhYWF9QVFApICs9IGh3dHN0YW1wLm9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L01ha2VmaWxlOjEyOm12ODhlNnh4eC0kKENPTkZJR19ORVRfRFNBX01WODhFNlhYWF9MRURTKSArPSBsZWRzLm9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L01ha2VmaWxlLTEzLW12ODhlNnh4eC1vYmpzICs9IHBjcy02MTg1Lm9cXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvTWFrZWZpbGU9MTg9bXY4OGU2eHh4LW9ianMgKz0gcG9ydF9oaWRkZW4ub1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvTWFrZWZpbGU6MTk6bXY4OGU2eHh4LSQoQ09ORklHX05FVF9EU0FfTVY4OEU2WFhYX1BUUCkgKz0gcHRwLm9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L01ha2VmaWxlLTIwLW12ODhlNnh4eC1vYmpzICs9IHNlcmRlcy5vXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2h3dHN0YW1wLmgtMTEwLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvaHd0c3RhbXAuaDoxMTE6I2lmZGVmIENPTkZJR19ORVRfRFNBX01WODhFNlhYWF9QVFBcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2h3dHN0YW1wLmgtMTEyLVxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9od3RzdGFtcC5oPTEzMz1pbnQgbXY4OGU2MTY1X2dsb2JhbF9kaXNhYmxlKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCk7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9od3RzdGFtcC5oLTEzNC1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2h3dHN0YW1wLmg6MTM1OiNlbHNlIC8qICFDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFhfUFRQICovXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9od3RzdGFtcC5oLTEzNi1cXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvaHd0c3RhbXAuaD0xNzU9c3RhdGljIGlubGluZSB2b2lkIG12ODhlNnh4eF9od3RzdGFtcF9mcmVlKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcClcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvaHd0c3RhbXAuaC0xNzgtXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9od3RzdGFtcC5oOjE3OTojZW5kaWYgLyogQ09ORklHX05FVF9EU0FfTVY4OEU2WFhYX1BUUCAqL1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvaHd0c3RhbXAuaC0xODAtXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaD01ODE9aW50IG12ODhlNjM1Ml9wb3J0X2dldF9jbW9kZShzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LCB1OCAqY21vZGUpO1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oOjU4MjojaWZkZWYgQ09ORklHX05FVF9EU0FfTVY4OEU2WFhYX0xFRFNcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaC01ODMtaW50IG12ODhlNnh4eF9wb3J0X3NldHVwX2xlZHMoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCk7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3B0cC5oLTY2LVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmg6Njc6I2lmZGVmIENPTkZJR19ORVRfRFNBX01WODhFNlhYWF9QVFBcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3B0cC5oLTY4LVxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wdHAuaD03Nz1leHRlcm4gY29uc3Qgc3RydWN0IG12ODhlNnh4eF9wdHBfb3BzIG12ODhlNjM5MF9wdHBfb3BzO1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmgtNzgtXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wdHAuaDo3OTojZWxzZSAvKiAhQ09ORklHX05FVF9EU0FfTVY4OEU2WFhYX1BUUCAqL1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmgtODAtXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3B0cC5oPTkyPXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X3B0cF9vcHMgbXY4OGU2MzkwX3B0cF9vcHMgPSB7fTtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3B0cC5oLTkzLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmg6OTQ6I2VuZGlmIC8qIENPTkZJR19ORVRfRFNBX01WODhFNlhYWF9QVFAgKi9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3B0cC5oLTk1LVxcbi0tXFxubmV0L2RzYS9wb3J0LmM9MTcyNj1zdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IGRzYV9zd2l0Y2hlc19hcHBseV93b3JrYXJvdW5kc1tdID0ge1xcbi0tXFxubmV0L2RzYS9wb3J0LmMtMTc3Ny0jZW5kaWZcXG5uZXQvZHNhL3BvcnQuYzoxNzc4OiNpZiBJU19FTkFCTEVEKENPTkZJR19ORVRfRFNBX01WODhFNlhYWClcXG5uZXQvZHNhL3BvcnQuYy0xNzc5LVxcdFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCIsXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQzOjE5Ljk2MzA5NDdaIiwiU2VxIjo1LCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjo1NjU1OTU3NzcwLCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKkFuYWx5emluZyB0aGUgRmVhc2liaWxpdHkgb2YgVGVzdGluZyBORVRfRFNBX01WODhFNlhYWCBpbiBTeXprYWxsZXIqKlxuXG5Pa2F5LCBzbyBJJ20gbG9va2luZyBhdCB0aGlzIGBORVRfRFNBX01WODhFNlhYWGAgZHJpdmVyIGFuZCBpbW1lZGlhdGVseSBJJ20gdGhpbmtpbmcgYWJvdXQgdmlydHVhbGl6YXRpb24uIERTQSBzd2l0Y2hlcywgaW4gbXkgZXhwZXJpZW5jZSwgYXJlIHVzdWFsbHkgdGllZCB0byBwaHlzaWNhbCBoYXJkd2FyZS4gSSBrbm93IGFib3V0IHRoZSBgZHNhX2xvb3BgIG1vY2sgZHJpdmVyLCB3aGljaCBoZWxwcywgYnV0IGBtdjg4ZTZ4eHhgIGlzIGEgKnNwZWNpZmljKiBoYXJkd2FyZSBkcml2ZXIsIHNvIHRoYXQncyBub3QgZ29pbmcgdG8gYmUgYSBzdHJhaWdodGZvcndhcmQgdGVzdC4gVGhlIHF1ZXN0aW9uIHRoZW4gYmVjb21lcywgY2FuIEkgZXZlbiAqcmVhY2gqIHRoaXMgdGhpbmcgd2l0aGluIGEgdmlydHVhbGl6ZWQgZW52aXJvbm1lbnQ/IE15IGZpcnN0IHRob3VnaHQgZ29lcyB0byBJMkMvTURJTyBlbXVsYXRpb247IGNvdWxkIEkgc29tZWhvdyBwcm9iZSBpdCB0aHJvdWdoIHRoYXQ/XG5cblRoZSBjYXRjaCBpcywgYW5kIEkgaGF2ZSB0byBiZSByZWFsaXN0aWMgaGVyZSwgc3l6a2FsbGVyIGRvZXNuJ3QgdHlwaWNhbGx5IHByb3ZpZGUgZGVkaWNhdGVkIEkyQy9NRElPIGhhcmR3YXJlIGVtdWxhdGlvbiBmb3IgTWFydmVsbCBzd2l0Y2hlcyBzcGVjaWZpY2FsbHkuIEkga25vdyBzeXprYWxsZXIgaGFzIHNvbWUgYmFzaWMgSTJDL01ESU8gZnV6emluZyBjYXBhYmlsaXRpZXM7IHRoaW5ncyBsaWtlIGB2aGNpYCBvciBgaTJjLXN0dWJgIGV4aXN0LCByaWdodD8gQnV0IHRoZSBjaGFuY2VzIG9mIGFjdHVhbGx5IHJlYWNoaW5nIGNvbXBsZXggaGFyZHdhcmUgZHJpdmVycyB3aXRob3V0IGEgdGFyZ2V0ZWQgbW9jayBzZXR1cCBhcmUgc2xpbSwgZXNwZWNpYWxseSB3aXRoIHRoZSBraW5kcyBvZiBjb21wbGV4IGRhdGEgZmxvd3MgaW52b2x2ZWQgd2l0aCBuZXR3b3JrIHN3aXRjaGluZy4gU28sIEkgbmVlZCB0byBmaWd1cmUgb3V0IGlmIHRoZXJlIGlzICphbnkqIG1ldGhvZCBJIGNhbiB1c2UgdG8gcHJvYmUgYG12ODhlNnh4eGAgd2l0aGluIHN5emthbGxlci5cblxuUmlnaHQgbm93LCBJJ20gdGhpbmtpbmcgSSBuZWVkIHRvIGZpbmQgb3V0IGlmIGBtdjg4ZTZ4eHhgIHJlbGllcyAqcHVyZWx5KiBvbiBNRElPL1NNSSBmb3IgaXRzIGNvbW11bmljYXRpb24uIEknbGwgbmVlZCB0byBkaWcgaW50byB0aGUga2VybmVsIHNvdXJjZSBhbmQgc2VlIHdoYXQgaXRzIGRlcGVuZGVuY2llcyBsb29rIGxpa2UsIGhvdyBpdCBhY3R1YWxseSBpbnRlcmZhY2VzLiBMZXQncyBzZWUgaWYgdGhpcyB0aGluZyBpcyBldmVuIHJlYWNoYWJsZSBmcm9tIGEgdXNlcmxhbmQgcGVyc3BlY3RpdmUsIG9yIGlmIGl0IHJlcXVpcmVzIGEgbW9yZSBwcml2aWxlZ2VkIGV4ZWN1dGlvbiBjb250ZXh0LlxuXG5cbiIsIklucHV0VG9rZW5zIjo1NzE1LCJPdXRwdXRUb2tlbnMiOjU0LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MjA3LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQzOjI1LjYxOTA1NDc0WiIsIlNlcSI6NiwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjIzMjMxMTQ3MiwiRXJyb3IiOiJubyBtYXRjaGVzIiwiQXJncyI6IntcbiAgXCJFeHByZXNzaW9uXCI6IFwibW9kdWxlX21kaW9fZHJpdmVyfG1vZHVsZV9pMmNfZHJpdmVyfG1vZHVsZV9zcGlfZHJpdmVyXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcImVycm9yXCI6IFwibm8gbWF0Y2hlc1wiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0MzoyNS44NTEzNzc5NTJaIiwiU2VxIjo3LCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjozNDg0MTY4NjI1LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiJPa2F5LCBoZXJlJ3MgbXkgdGFrZSBvbiB0aG9zZSB0aG91Z2h0cywgdGFpbG9yZWQgZm9yIGFuIGV4cGVydCBhdWRpZW5jZTpcblxuKipJbnZlc3RpZ2F0aW5nIHRoZSBgbXY4OGU2eHh4YCBSZWdpc3RyYXRpb24gUHJvY2VzcyoqXG5cbkFscmlnaHQsIHNvIEkgbmVlZCB0byBkaWcgaW50byB0aGUgYG12ODhlNnh4eGAgZHJpdmVyLiBNeSBpbW1lZGlhdGUgZm9jdXMgaXMgdW5kZXJzdGFuZGluZyAqaG93KiBpdCdzIHJlZ2lzdGVyZWQgd2l0aGluIHRoZSBzeXN0ZW0uIEkgd2FudCB0byBzZWUgdGhlIHNwZWNpZmljIG1lY2hhbmlzbXMgYmVpbmcgZW1wbG95ZWQuIEFyZSB3ZSB0YWxraW5nIGFib3V0IGEgcGxhdGZvcm0gZGV2aWNlLCBhIHNpbXBsZSBJMkMgb3IgU1BJIHByb2JlLCBvciBzb21ldGhpbmcgbW9yZSBjb21wbGV4PyBJIG5lZWQgdG8gcXVpY2tseSBpZGVudGlmeSB0aGUgcmVnaXN0cmF0aW9uIGZ1bmN0aW9uIGNhbGxzLiBBcmUgd2UgbG9va2luZyBhdCBgcGxhdGZvcm1fZGV2aWNlX3JlZ2lzdGVyYCwgYGkyY19kcml2ZXJfcmVnaXN0ZXJgLCBvciBhIGN1c3RvbSByZWdpc3RyYXRpb24gc2NoZW1lPyBVbmRlcnN0YW5kaW5nIHRoaXMgaW5pdGlhbCBzZXR1cCBpcyBjcnVjaWFsIGZvciB0cmFjaW5nIHRoZSBkcml2ZXIncyBleGVjdXRpb24gcGF0aCBhbmQgdW5kZXJzdGFuZGluZyBpdHMgZGVwZW5kZW5jaWVzLiBJJ2xsIG5lZWQgdG8ga25vdyB3aGV0aGVyIHRoZSBpbml0aWFsaXphdGlvbiBzZXF1ZW5jZSBpcyB0eXBpY2FsIG9yIGlmIHRoZXJlIGFyZSBhbnkgdW51c3VhbCBxdWlya3MgSSBuZWVkIHRvIGJlIGF3YXJlIG9mLiBUaGUgcmVnaXN0cmF0aW9uIG1ldGhvZCB3aWxsIGNsdWUgbWUgaW4gdG8gdGhlIGludGVycnVwdCBoYW5kbGluZywgY2xvY2sgc2V0dXAsIGFuZCBvdGhlciByZXNvdXJjZSBtYW5hZ2VtZW50IHN0cmF0ZWdpZXMuIEZyb20gdGhlcmUsIEkgY2FuIHN0YXJ0IHRvIG1hcCBvdXQgdGhlIG92ZXJhbGwgZHJpdmVyIGFyY2hpdGVjdHVyZSBhbmQgaG93IGl0IGludGVyYWN0cyB3aXRoIHRoZSB1bmRlcmx5aW5nIGhhcmR3YXJlLlxuXG5cbiIsIklucHV0VG9rZW5zIjo2MzY0LCJPdXRwdXRUb2tlbnMiOjM4LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MTYsIlRvb2xDYWxscyI6WyJncmVwcGVyIl19LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDM6MjkuMzM1NTUwMDA3WiIsIlNlcSI6OCwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjYzMzU2NDE1LCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIm1vZHVsZV8uKmRyaXZlclwiLFxuICBcIlBhdGhQcmVmaXhcIjogXCJkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L1wiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJPdXRwdXRcIjogXCJkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz03NTMwPXN0YXRpYyBzdHJ1Y3QgbWRpb19kcml2ZXIgbXY4OGU2eHh4X2RyaXZlciA9IHtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1NDAtXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzU0MTptZGlvX21vZHVsZV9kcml2ZXIobXY4OGU2eHh4X2RyaXZlcik7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzU0Mi1cXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDM6MjkuMzk4OTE0MDMyWiIsIlNlcSI6OSwiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6NDAzNjUxMDc0MywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipNRElPIERyaXZlciBGdXp6aW5nIEZlYXNpYmlsaXR5KipcblxuT2theSwgc28gSSdtIGxvb2tpbmcgYXQgdGhpcyBNRElPIGRyaXZlciBhbmQgbXkgZmlyc3QgdGhvdWdodCBpcywgY2FuIHN5emthbGxlciBldmVuIHRvdWNoIHRoaXMgdGhpbmc/IEkga25vdyBpdCBoYXMgKnNvbWUqIE1ESU8gc3VwcG9ydCwgbWF5YmUgdGhyb3VnaCB0aGF0IGBtZGlvLW1vY2tgIHRoaW5nLCBvciBzb21ldGhpbmcgc2ltaWxhcj8gQWN0dWFsbHksIG5vLCB0aGF0J3Mgbm90IHJlYWxseSBob3cgaXQgd29ya3MuIEkgcmVtZW1iZXIgbm93LCBzeXprYWxsZXIgKmNhbiogaW5qZWN0IE1ESU8gZGV2aWNlcywgYnV0IG9ubHkgaWYgdGhlcmUncyBhIHZpcnR1YWwgTURJTyBidXMgc2V0IHVwLCByaWdodD9cblxuQnV0IHJlZ2FyZGxlc3Mgb2Ygc3l6a2FsbGVyJ3MgZGV2aWNlIGluamVjdGlvbiBjYXBhYmlsaXR5LCB0aGUgY29yZSBvZiB0aGUgcHJvYmxlbSBoZXJlIHNlZW1zIHRvIGJlIHRoYXQgdGhlIHBhdGNoIG1vZGlmaWVzIGBtdjg4ZTZ4eHhfbWFjX2xpbmtfZG93bmAgYW5kIGBtdjg4ZTZ4eHhfbWFjX2xpbmtfdXBgLiBUaGVzZSBmdW5jdGlvbnMgYXJlIGRpcmVjdGx5IHJlbGF0ZWQgdG8gbGluayBzdGF0ZSBjaGFuZ2VzIOKAkyBsaW5rIGRvd24vdXAsIHJlc3BlY3RpdmVseS4gU28sIHRoZSBrZXkgaXMgd2hldGhlciBvciBub3QgdGhlc2UgZnVuY3Rpb25zIGFyZSBldmVuIHJlYWNoYWJsZS5cblxuTGV0J3Mgc2Vl4oCmIE9rYXksIGl0IGxvb2tzIGxpa2UgYG12ODhlNnh4eF9tYWNfbGlua19kb3duYCBpcyBwYXJ0IG9mIGBwaHlsaW5rX21hY19vcHNgLiBUaGF0J3MgYSBnb29kIHN0YXJ0aW5nIHBvaW50LiBUaGlzIGF0IGxlYXN0IGdpdmVzIG1lIHNvbWV0aGluZyB0byBsb29rIGF0LCBhbmQgaXQncyBsb29raW5nIGxpa2UgdGhpcyBjb3VsZCBiZSBhIGdvb2QgcG9pbnQgdG8gc3RhcnQgaW52ZXN0aWdhdGluZyBleHBsb2l0YWJpbGl0eS5cblxuXG4iLCJJbnB1dFRva2VucyI6Njc4NiwiT3V0cHV0VG9rZW5zIjo0NiwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjE1MCwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0MzozMy40MzU0MjgxMDVaIiwiU2VxIjoxMCwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjgyODcwMjc0LCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIm12ODhlNnh4eF9tYWNfbGlua19kb3duXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTkyOD1zdGF0aWMgaW50IG12ODhlNnh4eF9tYWNfZmluaXNoKHN0cnVjdCBwaHlsaW5rX2NvbmZpZyAqY29uZmlnLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtOTU2LVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjk1NzpzdGF0aWMgdm9pZCBtdjg4ZTZ4eHhfbWFjX2xpbmtfZG93bihzdHJ1Y3QgcGh5bGlua19jb25maWcgKmNvbmZpZyxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy05NTgtXFx0XFx0XFx0XFx0ICAgIHVuc2lnbmVkIGludCBtb2RlLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzE4Nz1zdGF0aWMgY29uc3Qgc3RydWN0IHBoeWxpbmtfbWFjX29wcyBtdjg4ZTZ4eHhfcGh5bGlua19tYWNfb3BzID0ge1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzE5MS1cXHQubWFjX2ZpbmlzaFxcdFxcdD0gbXY4OGU2eHh4X21hY19maW5pc2gsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzE5MjpcXHQubWFjX2xpbmtfZG93blxcdFxcdD0gbXY4OGU2eHh4X21hY19saW5rX2Rvd24sXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzE5My1cXHQubWFjX2xpbmtfdXBcXHRcXHQ9IG12ODhlNnh4eF9tYWNfbGlua191cCxcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDM6MzMuNTE4MzA2Mjg5WiIsIlNlcSI6MTEsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjE0NzIxMTEzNjA5LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKkludmVzdGlnYXRpbmcgdGhlIFJlYWNoYWJpbGl0eSBvZiBgbXY4OGU2eHh4X21hY19saW5rX2Rvd25gIGluIFN5emthbGxlcioqXG5cbk9rYXksIHNvIEknbSB0cnlpbmcgdG8gZmlndXJlIG91dCBpZiB3ZSBjYW4gYWN0dWFsbHkgdHJpZ2dlciB0aGUgYG12ODhlNnh4eF9tYWNfbGlua19kb3duYCBmdW5jdGlvbiB3aXRoaW4gc3l6a2FsbGVyJ3MgdGVzdCBlbnZpcm9ubWVudC4gTXkgZmlyc3QgdGhvdWdodCBpcyB0byBjaGVjayB0aGUgc3l6a2FsbGVyIGNvbmZpZ3Mg4oCTIGlzIHRoZSBgTkVUX0RTQV9NVjg4RTZYWFhgIGRyaXZlciBlbmFibGVkPyBTeXprYWxsZXIncyB1c3VhbGx5IHByZXR0eSBhZ2dyZXNzaXZlIGFib3V0IGVuYWJsaW5nIGRyaXZlcnMsIGJ1dCB0aGlzIG9uZSBpcyBzcGVjaWZpYy5cblxuRXZlbiBpZiB0aGUgZHJpdmVyIGlzIGVuYWJsZWQsIHRoZSByZWFsIHF1ZXN0aW9uIGlzIHdoZXRoZXIgdGhpcyBjb2RlIGlzIHJlYWNoYWJsZSBpbiBhIHZpcnR1YWxpemVkIGNvbnRleHQuIFRvIGdldCB0byBgbXY4OGU2eHh4X21hY19saW5rX2Rvd25gLCB0aGUgZHJpdmVyIG5lZWRzIHRvIHByb2JlIHN1Y2Nlc3NmdWxseS4gVGhhdCBtZWFucyB3ZSBuZWVkIGFuIE1ESU8gYnVzIGFuZCBhIGRldmljZSB3aXRoIHRoZSByaWdodCBJRCBmb3IgdGhlIGRyaXZlci4gTXkgbmV4dCBxdWVzdGlvbiBpczogZG9lcyBzeXprYWxsZXIgcHJvdmlkZSBhIG1lY2hhbmlzbSBmb3IgaW5zdGFudGlhdGluZyBNRElPIGRldmljZXM/IEkga25vdyB3ZSBoYXZlIGBkc2FfbG9vcGAgZm9yIERTQSwgYnV0IHRoYXQncyBqdXN0IGEgZml4ZWQgbW9jayBkcml2ZXIuIEkgbmVlZCB0byBkaWcgZGVlcGVyIGFuZCBzZWUgaWYgdGhlcmUncyBhbnkgTURJTyBidXMgZW11bGF0aW9uIGhhcHBlbmluZyB3aXRoaW4gc3l6a2FsbGVyIHRoYXQgY291bGQgbGV0IHVzIGRvIHRoaXMuIFRoZSBhYnNlbmNlIG9mIGEgbWVjaGFuaXNtIGlzIGFuIGltcG9ydGFudCBwaWVjZSBvZiBpbmZvcm1hdGlvbi5cblxuXG4iLCJJbnB1dFRva2VucyI6NzU5MSwiT3V0cHV0VG9rZW5zIjoxOCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjEzOSwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0Mzo0OC4yMzk0MjMwMDhaIiwiU2VxIjoxMiwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjI2OTk5OTkxOTUsIkVycm9yIjoibm8gbWF0Y2hlcyIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIm1kaW8uKm1vY2tcIlxufSIsIlJlc3VsdHMiOiJ7XG4gIFwiZXJyb3JcIjogXCJubyBtYXRjaGVzXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQzOjUwLjkzOTQzNTU1M1oiLCJTZXEiOjEzLCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjo1NTU4NTkxMzY2LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiJPa2F5LCBoZXJlJ3MgbXkgaW50ZXJwcmV0YXRpb24gb2YgdGhhdCB0aG91Z2h0IHByb2Nlc3MsIHRhaWxvcmVkIGZvciBhbiBleHBlcnQgYXVkaWVuY2UsIGFuZCBwcmVzZW50ZWQgYXMgaWYgaXQgd2VyZSBteSBvd24gaW50ZXJuYWwgbW9ub2xvZ3VlOlxuXG4qKkludmVzdGlnYXRpbmcgYSBQb3RlbnRpYWxseSBPYnNjdXJlIEludGVyZmFjZSoqXG5cbkhtbSwgc28gSSdtIGxvb2tpbmcgYXQgYSBzaXR1YXRpb24gd2hlcmUgYSBzdGFuZGFyZCBNRElPIGludGVyZmFjZSBtaWdodCBiZSBpbiBwbGF5LiBCdXQsIGdpdmVuIHRoZSBzcGVjaWZpY3MsIEkgbmVlZCB0byBkaWcgZGVlcGVyIHRoYW4gdGhlIHR5cGljYWwgY29uZmlndXJhdGlvbnMuIE15IHRob3VnaHQgcHJvY2VzcyBpcyBub3cgY2lyY2xpbmcgYXJvdW5kICpgbWRpby4qZHVtbXlgKi4gSeKAmW0gaW1tZWRpYXRlbHkgY29uc2lkZXJpbmcgaWYgSSdtIGxvb2tpbmcgYXQgYSBzcGVjaWFsaXplZCBvciBwZXJoYXBzIGV2ZW4gYSBkZWJ1ZyBpbXBsZW1lbnRhdGlvbiBvZiBNRElPLiBUaGF0IFwiZHVtbXlcIiB0ZXJtIGlzIG9mdGVuIHVzZWQgYXMgYSBwbGFjZWhvbGRlciBvciB0byBkZW5vdGUgYSBzaW1wbGlmaWVkIG9yIHZpcnR1YWwgaW5zdGFuY2UuIEl0IGNvdWxkIGJlIHBvaW50aW5nIHRvIGEgc2NlbmFyaW8gd2hlcmUgdGhlIGFjdHVhbCBQSFkgaW50ZXJhY3Rpb24gaXMgYmVpbmcgc2ltdWxhdGVkIG9yIGJ5cGFzc2VkLCBwZXJoYXBzIGZvciB0ZXN0aW5nLCBkZXZlbG9wbWVudCwgb3IgaW4gYSBzeXN0ZW0gd2l0aCB1bnVzdWFsIGhhcmR3YXJlIGFyY2hpdGVjdHVyZS4gSXMgdGhlIHN5c3RlbSB1dGlsaXppbmcgYSBjdXN0b20gZHJpdmVyIG9yIGEgc3BlY2lmaWMgaGFyZHdhcmUgYWJzdHJhY3Rpb24gbGF5ZXIgdGhhdCBsZXZlcmFnZXMgdGhpcyBjb252ZW50aW9uPyBJdCdzIHRoZSBmaXJzdCBwbGFjZSBJJ20gZ29pbmcgdG8gaW52ZXN0aWdhdGUgYW5kIHNlZSBpZiBpdCB5aWVsZHMgZnVydGhlciBjbHVlcy4gSSBoYXZlIHRvIGxvb2sgZGVlcGVyLlxuXG5cbiIsIklucHV0VG9rZW5zIjo4MDI2LCJPdXRwdXRUb2tlbnMiOjE4LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6OSwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0Mzo1Ni40OTgwMjk3NzlaIiwiU2VxIjoxNCwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjI3MjgxMjkwMTMsIkVycm9yIjoibm8gbWF0Y2hlcyIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIm1kaW8uKmR1bW15XCJcbn0iLCJSZXN1bHRzIjoie1xuICBcImVycm9yXCI6IFwibm8gbWF0Y2hlc1wiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0Mzo1OS4yMjYxNjU3NjJaIiwiU2VxIjoxNSwiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MzcwNTkzODMwOCwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipDb25zaWRlcmluZyB0aGUgU3dpdGNoIENvbmZpZ3VyYXRpb24qKlxuXG5Pa2F5LCBzbyBJJ20gdGhpbmtpbmcgYWJvdXQgaG93IHRvIGFwcHJvYWNoIHRoaXMuLi4gYGZpeGVkLWxpbmtgIGNvbWVzIHRvIG1pbmQgYXMgYSBwb3RlbnRpYWwgc3RhcnRpbmcgcG9pbnQuIEJ1dCB3YWl0LCB0aGF0J3MgcmVhbGx5IGZvciBQSFlzLCBpc24ndCBpdD8gVGhpcyBpcyBhbiBNRElPIGRldmljZSDigJMgdGhlIHN3aXRjaCBpdHNlbGYsIHRoZSBgbXY4OGU2eHh4YC4gVGhlIGtleSBoZXJlIGlzIGdldHRpbmcgdGhlIE1ESU8gYnVzIHRvIHJlY29nbml6ZSBhbmQgcHJvYmUgdGhlIHN3aXRjaCwgYW5kIHRoYXQgbWVhbnMgbWFraW5nIHN1cmUgYSBkZXZpY2Ugd2l0aCBhIGNvcnJlc3BvbmRpbmcgSUQgaXMgcHJlc2VudCBvbiB0aGUgYnVzLiBUaW1lIHRvIGRpdmUgaW50byB0aGUgYG12ODhlNnh4eF9kcml2ZXJgIG1hdGNoaW5nIHRhYmxlIHRvIHNlZSBob3cgaXQncyBkb25lLlxuXG5cbiIsIklucHV0VG9rZW5zIjo4MjgyLCJPdXRwdXRUb2tlbnMiOjQ0LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6NzcsIlRvb2xDYWxscyI6WyJncmVwcGVyIl19LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDQ6MDIuOTMyMTA1ODNaIiwiU2VxIjoxNiwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjk3MTUzNjkyLCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIm12ODhlNnh4eF9vZl9tYXRjaFwiLFxuICBcIlBhdGhQcmVmaXhcIjogXCJkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L1wiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJPdXRwdXRcIjogXCJkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz03NTAwPXN0YXRpYyB2b2lkIG12ODhlNnh4eF9zaHV0ZG93bihzdHJ1Y3QgbWRpb19kZXZpY2UgKm1kaW9kZXYpXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTExLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjc1MTI6c3RhdGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgbXY4OGU2eHh4X29mX21hdGNoW10gPSB7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUxMy1cXHR7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTI3LVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjc1Mjg6TU9EVUxFX0RFVklDRV9UQUJMRShvZiwgbXY4OGU2eHh4X29mX21hdGNoKTtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTI5LVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTc1MzA9c3RhdGljIHN0cnVjdCBtZGlvX2RyaXZlciBtdjg4ZTZ4eHhfZHJpdmVyID0ge1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUzNS1cXHRcXHQubmFtZSA9IFxcXCJtdjg4ZTYwODVcXFwiLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjc1MzY6XFx0XFx0Lm9mX21hdGNoX3RhYmxlID0gbXY4OGU2eHh4X29mX21hdGNoLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MzctXFx0XFx0LnBtID0gXFx1MDAyNm12ODhlNnh4eF9wbV9vcHMsXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQ0OjAzLjAyOTI2NjM1M1oiLCJTZXEiOjE3LCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjoyMTczMDg4NDc0NiwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipBbmFseXppbmcgdGhlIFByb2JlIFBhdGgqKlxuXG5Pa2F5LCBzbyBJJ20gbG9va2luZyBhdCB0aGlzIGRyaXZlciBhbmQgaG93IGl0J3MgdHJ5aW5nIHRvIGluaXRpYWxpemUuIE15IGluaXRpYWwgdGhvdWdodCBpcyBpdCdzIG1hdGNoaW5nIGJhc2VkIG9uIHRoZSBEZXZpY2UgVHJlZSAoYG9mX21hdGNoX3RhYmxlYCksIHdoaWNoIGlzIHRoZSBzdGFuZGFyZCB3YXkgdG8gZG8gdGhpbmdzIGxpa2UgdGhpcy4gTm93LCB0aGUgaW50ZXJlc3RpbmcgcGFydCBpcyB3aGVyZSB0aGlzIGlzIGxpa2VseSB0byBydW46IFN5emthbGxlci4gQW5kIEknbSB0aGlua2luZywgbW9zdCBTeXprYWxsZXIgc2V0dXBzLCBwYXJ0aWN1bGFybHkgb24geDg2XzY0LCB1c2UgQUNQSS4gU29tZXRpbWVzIHdlIHNlZSBhcm02NCB3aXRoIGEgc3BlY2lmaWMgRFQuIEl0J3MgcmFyZSBmb3IgU3l6a2FsbGVyIHRvIG1hZ2ljYWxseSBjcmVhdGUgZGV2aWNlIHRyZWUgbm9kZXMgZm9yIGFyYml0cmFyeSBoYXJkd2FyZSwgdW5sZXNzLCBvZiBjb3Vyc2UsIHRoZXJlJ3MgYW4gb3ZlcmxheSBvciB0aGV5J3JlIHVzaW5nIGEgbW9jayBzZXR1cC4gXG5cbkhvbGQgb24gYSBzZWNvbmQsIEkgbmVlZCB0byBiZSBtb3JlIHByZWNpc2UuIFN5emthbGxlciAqZG9lcyogaGF2ZSBtZXRob2RzIGZvciBpbmplY3RpbmcgZGV2aWNlIHRyZWUgbm9kZXMgb24gY2VydGFpbiBjb25maWd1cmF0aW9ucyBvciBpdCBjb3VsZCBiZSBydW5uaW5nIG9uIGEgYm9hcmQgdGhhdCAqaGFzKiBhIGRldmljZSB0cmVlLiBCdXQgZ2VuZXJhbGx5LCBmb3IgdGhlIHVzdWFsIHg4Nl82NCBlbnZpcm9ubWVudHMgbGlrZSBHQ0Ugb3IgUUVNVSwgdGhpcyBkcml2ZXIgaXMgKm5vdCogZ29pbmcgdG8gcHJvYmUuIFRoZXJlIHdvbid0IGJlIGEgZGV2aWNlIHRyZWUgbm9kZSBwcmVzZW50IGZvciBzb21ldGhpbmcgbGlrZSBcIm1hcnZlbGwsbXY4OGU2MDg1XCIgd2l0aG91dCBzb21lIHZlcnkgc3BlY2lmaWMgc2V0dXAgYW5kIGZ1cnRoZXJtb3JlLCB0aGVyZSdzIG5vIHBoeXNpY2FsIE1ESU8gYnVzIGZvciBpdCB0byBsYXRjaCBvbnRvLiBTbywgdGhlIHF1ZXN0aW9uIGlzLCBob3cgZWxzZSBjYW4gdGhpcyBkcml2ZXIgYmUgdHJpZ2dlcmVkPyBJIG5lZWQgdG8gY2hlY2sgaWYgdGhlcmUncyBhbiBhbHRlcm5hdGl2ZSBpbml0aWFsaXphdGlvbiBwYXRoIHRoYXQgYnlwYXNzZXMgdGhlIGRldmljZSB0cmVlIGVudGlyZWx5LlxuXG5cbiIsIklucHV0VG9rZW5zIjo4OTQyLCJPdXRwdXRUb2tlbnMiOjQyLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MTY1LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQ0OjI0Ljc2MDE1NDkxOVoiLCJTZXEiOjE4LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6OTA2NTM2MjQsIkVycm9yIjoiIiwiQXJncyI6IntcbiAgXCJFeHByZXNzaW9uXCI6IFwibXY4OGU2eHh4X3Byb2JlXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTczMjA9c3RhdGljIFNJTVBMRV9ERVZfUE1fT1BTKG12ODhlNnh4eF9wbV9vcHMsIG12ODhlNnh4eF9zdXNwZW5kLCBtdjg4ZTZ4eHhfcmVzdW1lKTtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03MzIxLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjczMjI6c3RhdGljIGludCBtdjg4ZTZ4eHhfcHJvYmUoc3RydWN0IG1kaW9fZGV2aWNlICptZGlvZGV2KVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTczMjMte1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzUzMD1zdGF0aWMgc3RydWN0IG1kaW9fZHJpdmVyIG12ODhlNnh4eF9kcml2ZXIgPSB7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzUzMTpcXHQucHJvYmVcXHQ9IG12ODhlNnh4eF9wcm9iZSxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTMyLVxcdC5yZW1vdmUgPSBtdjg4ZTZ4eHhfcmVtb3ZlLFxcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0NDoyNC44NTA4MjA5ODJaIiwiU2VxIjoxOSwiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MTI5ODg4NTE4NzEsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IioqTURJTyBEcml2ZXIgSW52ZXN0aWdhdGlvbioqXG5cbk9rYXksIHNvIEknbSBsb29raW5nIGF0IHRoaXMgTURJTyBkcml2ZXIsIGFuZCBteSBpbW1lZGlhdGUgdGhvdWdodCBpcywgXCJXZWxsLCBkdWgsIGl0J3Mgbm90IGdvaW5nIHRvIGRvIGFueXRoaW5nIHVubGVzcyBpdCAqaGFzKiBhbiBNRElPIGJ1cyBhbmQgYSBjb21wYXRpYmxlIGRldmljZS5cIiAgVGhhdCdzIGp1c3QgYmFzaWMgaGFyZHdhcmUgZGVwZW5kZW5jeS4gIE15IG5leHQgcXVlc3Rpb24gaXMgd2hldGhlciB0aGVyZSdzIHNvbWUga2luZCBvZiBzb2Z0d2FyZSBNRElPIGJ1cyB0aGF0IHN5emthbGxlciBjb3VsZCBwb3RlbnRpYWxseSBtYW5pcHVsYXRlIHRvIHByb2JlIHRoaXMgdGhpbmc/ICBJIHJlY2FsbCBzZWVpbmcgYSBgZHNhX2xvb3BgIG91dCB0aGVyZSwgd2hpY2ggc291bmRzIHByb21pc2luZy4gQnV0IEkgYWxzbyByZW1lbWJlciBpdCByZWdpc3RlcmluZyBhICpzcGVjaWZpYyosIHByZS1kZWZpbmVkIFBIWSBhbmQgc3dpdGNoLCB3aGljaCBpcyBhIGJpdCBsaW1pdGluZy4gSSdsbCBuZWVkIHRvIGRvdWJsZSBjaGVjayBob3cgdGhlIGBkc2FfbG9vcF9kcml2ZXJgIGlzIHJlZ2lzdGVyZWQuIExldCdzIGdldCBpbnRvIGBkc2FfbG9vcC5jYCBhbmQgZmlndXJlIG91dCBleGFjdGx5IHdoYXQgYGRzYV9sb29wYCBpcyBkb2luZy5cblxuXG4iLCJJbnB1dFRva2VucyI6OTc0MSwiT3V0cHV0VG9rZW5zIjoxOCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjg3LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQ0OjM3LjgzOTY5MzU4M1oiLCJTZXEiOjIwLCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MjA3OTQzMjIyMiwiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJkc2FfbG9vcFwiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJPdXRwdXRcIjogXCJEb2N1bWVudGF0aW9uL25ldHdvcmtpbmcvZHNhL2RzYS5yc3Q9MTU5PWFsbCBhdHRhY2hlZCBzd2l0Y2ggcG9ydHMgbXVzdCBiZSBkb3duIHdoaWxlIGRvaW5nIHRoaXMpLlxcbkRvY3VtZW50YXRpb24vbmV0d29ya2luZy9kc2EvZHNhLnJzdC0xNjAtXFxuRG9jdW1lbnRhdGlvbi9uZXR3b3JraW5nL2RzYS9kc2EucnN0OjE2MTpJdCBpcyBkZXNpcmFibGUgdGhhdCBhbGwgdGFnZ2luZyBwcm90b2NvbHMgYXJlIHRlc3RhYmxlIHdpdGggdGhlIGBgZHNhX2xvb3BgYFxcbkRvY3VtZW50YXRpb24vbmV0d29ya2luZy9kc2EvZHNhLnJzdC0xNjItbW9ja3VwIGRyaXZlciwgd2hpY2ggY2FuIGJlIGF0dGFjaGVkIHRvIGFueSBuZXR3b3JrIGludGVyZmFjZS4gVGhlIGdvYWwgaXMgdGhhdFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL01ha2VmaWxlPTM9YmNtLXNmMi1vYmpzXFx0XFx0XFx0Oj0gYmNtX3NmMi5vIGJjbV9zZjJfY2ZwLm9cXG5kcml2ZXJzL25ldC9kc2EvTWFrZWZpbGU6NDpvYmotJChDT05GSUdfTkVUX0RTQV9MT09QKVxcdCs9IGRzYV9sb29wLm9cXG5kcml2ZXJzL25ldC9kc2EvTWFrZWZpbGUtNS1vYmotJChDT05GSUdfTkVUX0RTQV9LUzg5OTUpIFxcdCs9IGtzODk5NS5vXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yNC1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoyNTpzdHJ1Y3QgZHNhX2xvb3BfdmxhbiB7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjYtXFx0dTE2IG1lbWJlcnM7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yOS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMDpzdHJ1Y3QgZHNhX2xvb3BfbWliX2VudHJ5IHtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zMS1cXHRjaGFyIG5hbWVbRVRIX0dTVFJJTkdfTEVOXTtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM0LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM1OmVudW0gZHNhX2xvb3BfbWliX2NvdW50ZXJzIHtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zNi1cXHREU0FfTE9PUF9QSFlfUkVBRF9PSyxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQyLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQzOnN0cnVjdCBkc2FfbG9vcF9wb3J0IHtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0NDpcXHRzdHJ1Y3QgZHNhX2xvb3BfbWliX2VudHJ5IG1pYltfX0RTQV9MT09QX0NOVF9NQVhdO1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQ1LVxcdHUxNiBwdmlkO1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDgtXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDk6c3RydWN0IGRzYV9sb29wX3ByaXYge1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTUwLVxcdHN0cnVjdCBtaWlfYnVzXFx0KmJ1cztcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy01MS1cXHR1bnNpZ25lZCBpbnRcXHRwb3J0X2Jhc2U7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NTI6XFx0c3RydWN0IGRzYV9sb29wX3ZsYW4gdmxhbnNbVkxBTl9OX1ZJRF07XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNTMtXFx0c3RydWN0IG5ldF9kZXZpY2UgKm5ldGRldjtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo1NDpcXHRzdHJ1Y3QgZHNhX2xvb3BfcG9ydCBwb3J0c1tEU0FfTUFYX1BPUlRTXTtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy01NS19O1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTU2LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjU3OnN0cnVjdCBkc2FfbG9vcF9wZGF0YSB7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNTgtXFx0LyogTXVzdCBiZSBmaXJzdCwgc3VjaCB0aGF0IGRzYV9yZWdpc3Rlcl9zd2l0Y2goKSBjYW4gYWNjZXNzIHRoaXNcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTY2LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjY3OnN0YXRpYyBzdHJ1Y3QgZHNhX2xvb3BfbWliX2VudHJ5IGRzYV9sb29wX21pYnNbXSA9IHtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy02OC1cXHRbRFNBX0xPT1BfUEhZX1JFQURfT0tdXFx0PSB7IFxcXCJwaHlfcmVhZF9va1xcXCIsIH0sXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYz03NT1zdGF0aWMgc3RydWN0IG1kaW9fZGV2aWNlICpzd2l0Y2hfbWRpb2RldjtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy03Ni1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo3NzplbnVtIGRzYV9sb29wX2RldmxpbmtfcmVzb3VyY2VfaWQge1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTc4LVxcdERTQV9MT09QX0RFVkxJTktfUEFSQU1fSURfTk9ORSwgIC8qIERFVkxJTktfUkVTT1VSQ0VfSURfUEFSRU5UX1RPUCAqL1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtODEtXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6ODI6c3RhdGljIHU2NCBkc2FfbG9vcF9kZXZsaW5rX3Z0dV9nZXQodm9pZCAqcHJpdilcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy04My17XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6ODQ6XFx0c3RydWN0IGRzYV9sb29wX3ByaXYgKnBzID0gcHJpdjtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy04NS1cXHR1bnNpZ25lZCBpbnQgaSwgY291bnQgPSAwO1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjg2OlxcdHN0cnVjdCBkc2FfbG9vcF92bGFuICp2bDtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy04Ny1cXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTk2LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjk3OnN0YXRpYyBpbnQgZHNhX2xvb3Bfc2V0dXBfZGV2bGlua19yZXNvdXJjZXMoc3RydWN0IGRzYV9zd2l0Y2ggKmRzKVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTk4LXtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy05OS1cXHRzdHJ1Y3QgZGV2bGlua19yZXNvdXJjZV9zaXplX3BhcmFtcyBzaXplX3BhcmFtcztcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxMDA6XFx0c3RydWN0IGRzYV9sb29wX3ByaXYgKnBzID0gZHMtXFx1MDAzZXByaXY7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTAxLVxcdGludCBlcnI7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xMTUtXFx0XFx0XFx0XFx0XFx0ICAgICAgRFNBX0xPT1BfREVWTElOS19QQVJBTV9JRF9WVFUsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTE2OlxcdFxcdFxcdFxcdFxcdCAgICAgIGRzYV9sb29wX2RldmxpbmtfdnR1X2dldCwgcHMpO1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTExNy1cXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTEyNC1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxMjU6c3RhdGljIGVudW0gZHNhX3RhZ19wcm90b2NvbCBkc2FfbG9vcF9nZXRfcHJvdG9jb2woc3RydWN0IGRzYV9zd2l0Y2ggKmRzLFxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTEyNi1cXHRcXHRcXHRcXHRcXHRcXHQgICBpbnQgcG9ydCxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTEzMy1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxMzQ6c3RhdGljIGludCBkc2FfbG9vcF9zZXR1cChzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMpXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTM1LXtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxMzY6XFx0c3RydWN0IGRzYV9sb29wX3ByaXYgKnBzID0gZHMtXFx1MDAzZXByaXY7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTM3LVxcdHVuc2lnbmVkIGludCBpO1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTM5LVxcdGZvciAoaSA9IDA7IGkgXFx1MDAzYyBkcy1cXHUwMDNlbnVtX3BvcnRzOyBpKyspXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTQwOlxcdFxcdG1lbWNweShwcy1cXHUwMDNlcG9ydHNbaV0ubWliLCBkc2FfbG9vcF9taWJzLFxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjE0MTpcXHRcXHQgICAgICAgc2l6ZW9mKGRzYV9sb29wX21pYnMpKTtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNDItXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNDQtXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTQ1OlxcdHJldHVybiBkc2FfbG9vcF9zZXR1cF9kZXZsaW5rX3Jlc291cmNlcyhkcyk7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTQ2LX1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNDctXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTQ4OnN0YXRpYyB2b2lkIGRzYV9sb29wX3RlYXJkb3duKHN0cnVjdCBkc2Ffc3dpdGNoICpkcylcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNDkte1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTUyLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjE1MzpzdGF0aWMgaW50IGRzYV9sb29wX2dldF9zc2V0X2NvdW50KHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsIGludCBzc2V0KVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE1NC17XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNjAtXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTYxOnN0YXRpYyB2b2lkIGRzYV9sb29wX2dldF9zdHJpbmdzKHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTYyLVxcdFxcdFxcdFxcdCB1MzIgc3RyaW5nc2V0LCB1aW50OF90ICpkYXRhKVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE2My17XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTY0OlxcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcyA9IGRzLVxcdTAwM2Vwcml2O1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE2NS1cXHR1bnNpZ25lZCBpbnQgaTtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE3My1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxNzQ6c3RhdGljIHZvaWQgZHNhX2xvb3BfZ2V0X2V0aHRvb2xfc3RhdHMoc3RydWN0IGRzYV9zd2l0Y2ggKmRzLCBpbnQgcG9ydCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNzUtXFx0XFx0XFx0XFx0ICAgICAgIHVpbnQ2NF90ICpkYXRhKVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE3Ni17XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTc3OlxcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcyA9IGRzLVxcdTAwM2Vwcml2O1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE3OC1cXHR1bnNpZ25lZCBpbnQgaTtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE4My1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxODQ6c3RhdGljIGludCBkc2FfbG9vcF9waHlfcmVhZChzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMsIGludCBwb3J0LCBpbnQgcmVnbnVtKVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE4NS17XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTg2OlxcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcyA9IGRzLVxcdTAwM2Vwcml2O1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE4Ny1cXHRzdHJ1Y3QgbWlpX2J1cyAqYnVzID0gcHMtXFx1MDAzZWJ1cztcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE5OC1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxOTk6c3RhdGljIGludCBkc2FfbG9vcF9waHlfd3JpdGUoc3RydWN0IGRzYV9zd2l0Y2ggKmRzLCBpbnQgcG9ydCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yMDAtXFx0XFx0XFx0ICAgICAgaW50IHJlZ251bSwgdTE2IHZhbHVlKVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTIwMS17XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MjAyOlxcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcyA9IGRzLVxcdTAwM2Vwcml2O1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTIwMy1cXHRzdHJ1Y3QgbWlpX2J1cyAqYnVzID0gcHMtXFx1MDAzZWJ1cztcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTIxNC1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoyMTU6c3RhdGljIGludCBkc2FfbG9vcF9wb3J0X2JyaWRnZV9qb2luKHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjE2LVxcdFxcdFxcdFxcdCAgICAgc3RydWN0IGRzYV9icmlkZ2UgYnJpZGdlLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjI1LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjIyNjpzdGF0aWMgdm9pZCBkc2FfbG9vcF9wb3J0X2JyaWRnZV9sZWF2ZShzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMsIGludCBwb3J0LFxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTIyNy1cXHRcXHRcXHRcXHQgICAgICAgc3RydWN0IGRzYV9icmlkZ2UgYnJpZGdlKVxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjMyLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjIzMzpzdGF0aWMgdm9pZCBkc2FfbG9vcF9wb3J0X3N0cF9zdGF0ZV9zZXQoc3RydWN0IGRzYV9zd2l0Y2ggKmRzLCBpbnQgcG9ydCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yMzQtXFx0XFx0XFx0XFx0XFx0dTggc3RhdGUpXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yMzktXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MjQwOnN0YXRpYyBpbnQgZHNhX2xvb3BfcG9ydF92bGFuX2ZpbHRlcmluZyhzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMsIGludCBwb3J0LFxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI0MS1cXHRcXHRcXHRcXHRcXHRib29sIHZsYW5fZmlsdGVyaW5nLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjQ5LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjI1MDpzdGF0aWMgaW50IGRzYV9sb29wX3BvcnRfdmxhbl9hZGQoc3RydWN0IGRzYV9zd2l0Y2ggKmRzLCBpbnQgcG9ydCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yNTEtXFx0XFx0XFx0XFx0ICBjb25zdCBzdHJ1Y3Qgc3dpdGNoZGV2X29ial9wb3J0X3ZsYW4gKnZsYW4sXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yNTUtXFx0Ym9vbCBwdmlkID0gdmxhbi1cXHUwMDNlZmxhZ3MgXFx1MDAyNiBCUklER0VfVkxBTl9JTkZPX1BWSUQ7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MjU2OlxcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcyA9IGRzLVxcdTAwM2Vwcml2O1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI1Ny1cXHRzdHJ1Y3QgbWlpX2J1cyAqYnVzID0gcHMtXFx1MDAzZWJ1cztcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoyNTg6XFx0c3RydWN0IGRzYV9sb29wX3ZsYW4gKnZsO1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI1OS1cXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI4Mi1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoyODM6c3RhdGljIGludCBkc2FfbG9vcF9wb3J0X3ZsYW5fZGVsKHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjg0LVxcdFxcdFxcdFxcdCAgY29uc3Qgc3RydWN0IHN3aXRjaGRldl9vYmpfcG9ydF92bGFuICp2bGFuKVxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjg2LVxcdGJvb2wgdW50YWdnZWQgPSB2bGFuLVxcdTAwM2VmbGFncyBcXHUwMDI2IEJSSURHRV9WTEFOX0lORk9fVU5UQUdHRUQ7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6Mjg3OlxcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcyA9IGRzLVxcdTAwM2Vwcml2O1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI4OC1cXHR1MTYgcHZpZCA9IHBzLVxcdTAwM2Vwb3J0c1twb3J0XS5wdmlkO1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI4OS1cXHRzdHJ1Y3QgbWlpX2J1cyAqYnVzID0gcHMtXFx1MDAzZWJ1cztcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoyOTA6XFx0c3RydWN0IGRzYV9sb29wX3ZsYW4gKnZsO1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI5MS1cXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTMxMC1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMTE6c3RhdGljIGludCBkc2FfbG9vcF9wb3J0X2NoYW5nZV9tdHUoc3RydWN0IGRzYV9zd2l0Y2ggKmRzLCBpbnQgcG9ydCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zMTItXFx0XFx0XFx0XFx0ICAgIGludCBuZXdfbXR1KVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTMxMy17XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzE0OlxcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcml2ID0gZHMtXFx1MDAzZXByaXY7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzE1LVxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzIwLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjMyMTpzdGF0aWMgaW50IGRzYV9sb29wX3BvcnRfbWF4X210dShzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMsIGludCBwb3J0KVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTMyMi17XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zMjUtXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzI2OnN0YXRpYyB2b2lkIGRzYV9sb29wX3BoeWxpbmtfZ2V0X2NhcHMoc3RydWN0IGRzYV9zd2l0Y2ggKmRzYSwgaW50IHBvcnQsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzI3LVxcdFxcdFxcdFxcdCAgICAgIHN0cnVjdCBwaHlsaW5rX2NvbmZpZyAqY29uZmlnKVxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzMzLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjMzNDpzdGF0aWMgY29uc3Qgc3RydWN0IGRzYV9zd2l0Y2hfb3BzIGRzYV9sb29wX2RyaXZlciA9IHtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMzU6XFx0LmdldF90YWdfcHJvdG9jb2xcXHQ9IGRzYV9sb29wX2dldF9wcm90b2NvbCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMzY6XFx0LnNldHVwXFx0XFx0XFx0PSBkc2FfbG9vcF9zZXR1cCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMzc6XFx0LnRlYXJkb3duXFx0XFx0PSBkc2FfbG9vcF90ZWFyZG93bixcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMzg6XFx0LmdldF9zdHJpbmdzXFx0XFx0PSBkc2FfbG9vcF9nZXRfc3RyaW5ncyxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMzk6XFx0LmdldF9ldGh0b29sX3N0YXRzXFx0PSBkc2FfbG9vcF9nZXRfZXRodG9vbF9zdGF0cyxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNDA6XFx0LmdldF9zc2V0X2NvdW50XFx0XFx0PSBkc2FfbG9vcF9nZXRfc3NldF9jb3VudCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNDE6XFx0LmdldF9ldGh0b29sX3BoeV9zdGF0c1xcdD0gZHNhX2xvb3BfZ2V0X2V0aHRvb2xfc3RhdHMsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzQyOlxcdC5waHlfcmVhZFxcdFxcdD0gZHNhX2xvb3BfcGh5X3JlYWQsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzQzOlxcdC5waHlfd3JpdGVcXHRcXHQ9IGRzYV9sb29wX3BoeV93cml0ZSxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNDQ6XFx0LnBvcnRfYnJpZGdlX2pvaW5cXHQ9IGRzYV9sb29wX3BvcnRfYnJpZGdlX2pvaW4sXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzQ1OlxcdC5wb3J0X2JyaWRnZV9sZWF2ZVxcdD0gZHNhX2xvb3BfcG9ydF9icmlkZ2VfbGVhdmUsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzQ2OlxcdC5wb3J0X3N0cF9zdGF0ZV9zZXRcXHQ9IGRzYV9sb29wX3BvcnRfc3RwX3N0YXRlX3NldCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNDc6XFx0LnBvcnRfdmxhbl9maWx0ZXJpbmdcXHQ9IGRzYV9sb29wX3BvcnRfdmxhbl9maWx0ZXJpbmcsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzQ4OlxcdC5wb3J0X3ZsYW5fYWRkXFx0XFx0PSBkc2FfbG9vcF9wb3J0X3ZsYW5fYWRkLFxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM0OTpcXHQucG9ydF92bGFuX2RlbFxcdFxcdD0gZHNhX2xvb3BfcG9ydF92bGFuX2RlbCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNTA6XFx0LnBvcnRfY2hhbmdlX210dVxcdD0gZHNhX2xvb3BfcG9ydF9jaGFuZ2VfbXR1LFxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM1MTpcXHQucG9ydF9tYXhfbXR1XFx0XFx0PSBkc2FfbG9vcF9wb3J0X21heF9tdHUsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzUyOlxcdC5waHlsaW5rX2dldF9jYXBzXFx0PSBkc2FfbG9vcF9waHlsaW5rX2dldF9jYXBzLFxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM1My19O1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM1NC1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNTU6c3RhdGljIGludCBkc2FfbG9vcF9kcnZfcHJvYmUoc3RydWN0IG1kaW9fZGV2aWNlICptZGlvZGV2KVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM1Ni17XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzU3OlxcdHN0cnVjdCBkc2FfbG9vcF9wZGF0YSAqcGRhdGEgPSBtZGlvZGV2LVxcdTAwM2VkZXYucGxhdGZvcm1fZGF0YTtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNTg6XFx0c3RydWN0IGRzYV9sb29wX3ByaXYgKnBzO1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM1OS1cXHRzdHJ1Y3QgZHNhX3N3aXRjaCAqZHM7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zODItXFx0ZHMtXFx1MDAzZWRldiA9IFxcdTAwMjZtZGlvZGV2LVxcdTAwM2VkZXY7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzgzOlxcdGRzLVxcdTAwM2VvcHMgPSBcXHUwMDI2ZHNhX2xvb3BfZHJpdmVyO1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM4NC1cXHRkcy1cXHUwMDNlcHJpdiA9IHBzO1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzk2LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM5NzpzdGF0aWMgdm9pZCBkc2FfbG9vcF9kcnZfcmVtb3ZlKHN0cnVjdCBtZGlvX2RldmljZSAqbWRpb2RldilcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zOTgte1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM5OS1cXHRzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMgPSBkZXZfZ2V0X2RydmRhdGEoXFx1MDAyNm1kaW9kZXYtXFx1MDAzZWRldik7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDAwOlxcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcztcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00MDEtXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00MTAtXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDExOnN0YXRpYyB2b2lkIGRzYV9sb29wX2Rydl9zaHV0ZG93bihzdHJ1Y3QgbWRpb19kZXZpY2UgKm1kaW9kZXYpXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDEyLXtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQyMi1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0MjM6c3RhdGljIHN0cnVjdCBtZGlvX2RyaXZlciBkc2FfbG9vcF9kcnYgPSB7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDI0LVxcdC5tZGlvZHJ2LmRyaXZlclxcdD0ge1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDI2LVxcdH0sXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDI3OlxcdC5wcm9iZVxcdD0gZHNhX2xvb3BfZHJ2X3Byb2JlLFxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQyODpcXHQucmVtb3ZlXFx0PSBkc2FfbG9vcF9kcnZfcmVtb3ZlLFxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQyOTpcXHQuc2h1dGRvd24gPSBkc2FfbG9vcF9kcnZfc2h1dGRvd24sXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDMwLX07XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDMxLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQzMjpzdGF0aWMgaW50IGRzYV9sb29wX2J1c19tYXRjaChzdHJ1Y3QgZGV2aWNlICpkZXYsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDMzLVxcdFxcdFxcdCAgICAgIGNvbnN0IHN0cnVjdCBkZXZpY2VfZHJpdmVyICpkcnYpXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDM0LXtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0MzU6XFx0cmV0dXJuIGRydiA9PSBcXHUwMDI2ZHNhX2xvb3BfZHJ2Lm1kaW9kcnYuZHJpdmVyO1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQzNi19XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDM3LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQzODpzdGF0aWMgdm9pZCBkc2FfbG9vcF9waHlkZXZzX3VucmVnaXN0ZXIodm9pZClcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00Mzkte1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDQ1LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQ0NjpzdGF0aWMgaW50IF9faW5pdCBkc2FfbG9vcF9jcmVhdGVfc3dpdGNoX21kaW9kZXYodm9pZClcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00NDcte1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQ0ODpcXHRzdGF0aWMgc3RydWN0IGRzYV9sb29wX3BkYXRhIGRzYV9sb29wX3BkYXRhID0ge1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQ0OS1cXHRcXHQuY2QgPSB7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00NzAtXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDcxOlxcdHN3aXRjaF9tZGlvZGV2LVxcdTAwM2VidXNfbWF0Y2ggPSBkc2FfbG9vcF9idXNfbWF0Y2g7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDcyOlxcdHN3aXRjaF9tZGlvZGV2LVxcdTAwM2VkZXYucGxhdGZvcm1fZGF0YSA9IFxcdTAwMjZkc2FfbG9vcF9wZGF0YTtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00NzMtXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00ODEtXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDgyOnN0YXRpYyBpbnQgX19pbml0IGRzYV9sb29wX2luaXQodm9pZClcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00ODMte1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDg2LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQ4NzpcXHRyZXQgPSBkc2FfbG9vcF9jcmVhdGVfc3dpdGNoX21kaW9kZXYoKTtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00ODgtXFx0aWYgKHJldClcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQ5My1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0OTQ6XFx0cmV0ID0gbWRpb19kcml2ZXJfcmVnaXN0ZXIoXFx1MDAyNmRzYV9sb29wX2Rydik7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDk1LVxcdGlmIChyZXQpIHtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0OTY6XFx0XFx0ZHNhX2xvb3BfcGh5ZGV2c191bnJlZ2lzdGVyKCk7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDk3LVxcdFxcdG1kaW9fZGV2aWNlX3JlbW92ZShzd2l0Y2hfbWRpb2Rldik7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy01MDItfVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjUwMzptb2R1bGVfaW5pdChkc2FfbG9vcF9pbml0KTtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy01MDQtXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NTA1OnN0YXRpYyB2b2lkIF9fZXhpdCBkc2FfbG9vcF9leGl0KHZvaWQpXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNTA2LXtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo1MDc6XFx0bWRpb19kcml2ZXJfdW5yZWdpc3RlcihcXHUwMDI2ZHNhX2xvb3BfZHJ2KTtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo1MDg6XFx0ZHNhX2xvb3BfcGh5ZGV2c191bnJlZ2lzdGVyKCk7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNTA5LVxcdG1kaW9fZGV2aWNlX3JlbW92ZShzd2l0Y2hfbWRpb2Rldik7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy01MTEtfVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjUxMjptb2R1bGVfZXhpdChkc2FfbG9vcF9leGl0KTtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy01MTMtXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQ0OjM5LjkxOTEzMjYwNVoiLCJTZXEiOjIxLCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjo2NjEzNDkxNTM2LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKkludmVzdGlnYXRpbmcgTURJTyBEZXZpY2UgSW5zdGFudGlhdGlvbioqXG5cbk9rYXksIHNvIGBkc2FfbG9vcGAgaGFzIGl0cyBvd24gZHJpdmVyLCBgZHNhX2xvb3BfZHJ2YCwgYW5kIGNyaXRpY2FsbHksIGl0ICpkb2Vzbid0KiBsb2FkIGBtdjg4ZTZ4eHhgLiBUaGlzIG1lYW5zIEkgY2FuJ3QgcmVhY2ggdGhlIGBtdjg4ZTZ4eHhgIHJlZ2lzdGVycyBkaXJlY3RseSB0aHJvdWdoIGBkc2FfbG9vcGAsIHdoaWNoIGlzIGEgcHJvYmxlbS4gSSBuZWVkIHRvIGZpZ3VyZSBvdXQgYW4gYWx0ZXJuYXRpdmUuXG5cblRoZSBxdWVzdGlvbiBub3cgYmVjb21lcywgaXMgdGhlcmUgKmFub3RoZXIqIHdheSB0byBnZXQgYXQgdGhlIGBtdjg4ZTZ4eHhgIHJlZ2lzdGVycz8gTXkgaW5pdGlhbCB0aG91Z2h0IGlzIGFib3V0IGEgbW9jayBNRElPIGJ1cy4gQ291bGQgdGhlcmUgYmUgYSB3YXkgdG8gY3JlYXRlIGEgdmlydHVhbCBNRElPIGJ1cyBpbnRlcmZhY2UgdGhhdCB3b3VsZCBhbGxvdyB1c2VyIHNwYWNlIHRvIGVzc2VudGlhbGx5IFwibW9jayB1cFwiIG9yIGluc3RhbnRpYXRlIHRoZXNlIGFyYml0cmFyeSBNRElPIGRldmljZXM/XG5cblRoYXQncyBhIGdvb2QgbGVhZC4gTGV0J3Mgc2VlIGlmIHRoZXJlJ3MgYSB1c2VyIHNwYWNlIGludGVyZmFjZSBkZXNpZ25lZCBmb3IganVzdCB0aGlzIGtpbmQgb2Ygb3BlcmF0aW9uLiBJIGtub3cgdGhhdCBJMkMgcHJvdmlkZXMgYSBtZWNoYW5pc20gdmlhIGAvc3lzL2J1cy9pMmMvZGV2aWNlcy9pMmMtKi9uZXdfZGV2aWNlYC4gRG9lcyBNRElPIGV4cG9zZSBhIHNpbWlsYXIgaW50ZXJmYWNlPyBUaW1lIHRvIGRpZyBhcm91bmQgdGhlIGtlcm5lbCBzb3VyY2VzIGFuZCBzZWUgaWYgdGhlcmUgaXMgc29tZXRoaW5nIGNvbXBhcmFibGUgZm9yIE1ESU8gZGV2aWNlIGluc3RhbnRpYXRpb24uXG5cblxuIiwiSW5wdXRUb2tlbnMiOjE2NjgzLCJPdXRwdXRUb2tlbnMiOjI5LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MTMwLCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQ0OjQ2LjUzMjYyNzAwMVoiLCJTZXEiOjIyLCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6ODIzODIwMzQsIkVycm9yIjoibm8gbWF0Y2hlcyIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIm5ld19kZXZpY2VcIixcbiAgXCJQYXRoUHJlZml4XCI6IFwiZHJpdmVycy9uZXQvcGh5L1wiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJlcnJvclwiOiBcIm5vIG1hdGNoZXNcIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDQ6NDYuNjE1MDIyMTc1WiIsIlNlcSI6MjMsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjIyNTE4MjU5MjkzLCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiJIZXJlJ3MgbXkgdGFrZSBvbiB0aGUgdGhvdWdodCBwcm9jZXNzOlxuXG4qKkRpdmluZyBpbnRvIHRoZSBNRElPIERyaXZlcnMqKlxuXG5Pa2F5LCB0aW1lIHRvIGdldCBzdGFydGVkLiBNeSBpbml0aWFsIGluc3RpbmN0IGlzIHRvIGdvIHN0cmFpZ2h0IHRvIHRoZSBoZWFydCBvZiB0aGUgbWF0dGVyIOKAkyB0aGUgYGRyaXZlcnMvbmV0L21kaW8vYCBkaXJlY3RvcnkuIFRoaXMgaXMgdGhlIGxvZ2ljYWwgcGxhY2UgdG8gYmVnaW4gbXkgaW52ZXN0aWdhdGlvbiBpbnRvIHRoZSBNZWRpYSBJbmRlcGVuZGVudCBJbnRlcmZhY2UgKE1ESU8pIGRyaXZlcnMuIEdpdmVuIG15IGV4cGVydGlzZSwgSSBhbHJlYWR5IGtub3cgdGhpcyBkaXJlY3Rvcnkgd2lsbCBsaWtlbHkgaG91c2UgdGhlIGNvcmUgZnVuY3Rpb25hbGl0eSBhbmQgaW1wbGVtZW50YXRpb24gZGV0YWlscyBmb3IgaW50ZXJmYWNpbmcgd2l0aCB2YXJpb3VzIFBIWXMgKFBoeXNpY2FsIExheWVyIFRyYW5zY2VpdmVycykgYW5kIE1ESU8tY29tcGxpYW50IGRldmljZXMuIEkgZXhwZWN0IHRvIGZpbmQgc291cmNlIGNvZGUgdGhhdCBkZWZpbmVzIHRoZSBNRElPIGJ1cyBvcGVyYXRpb25zLCBkZXZpY2UgcHJvYmluZywgcmVnaXN0ZXIgYWNjZXNzIHJvdXRpbmVzLCBhbmQgaW50ZXJydXB0IGhhbmRsaW5nIGlmIGFwcGxpY2FibGUuIExldCdzIHNlZSB3aGF0IHdlIGNhbiBmaW5kIVxuXG5cbiIsIklucHV0VG9rZW5zIjoxNzA5OSwiT3V0cHV0VG9rZW5zIjozMCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjEzLCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQ1OjA5LjEzMzI4NDAxOFoiLCJTZXEiOjI0LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MTM4MjYwNTQwLCJFcnJvciI6Im5vIG1hdGNoZXMiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJuZXdfZGV2aWNlXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImRyaXZlcnMvbmV0L21kaW8vXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcImVycm9yXCI6IFwibm8gbWF0Y2hlc1wiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0NTowOS4yNzE1NTgyNThaIiwiU2VxIjoyNSwiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6NjE0MjY3NjExMiwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipNRElPIERldmljZSBJbnN0YW50aWF0aW9uIENvbmNlcm5zKipcblxuT2theSwgc28gSSdtIHRoaW5raW5nIGFib3V0IE1ESU8gYW5kIGhvdyB0byBpbnN0YW50aWF0ZSB0aGVzZSBkZXZpY2VzIGZyb20gdXNlcnNwYWNlLiBJdCBzZWVtcyBsaWtlIHRoZXJlIGlzbid0IGEgZGlyZWN0IHVzZXJzcGFjZSBpbnRlcmZhY2UsIHdoaWNoIGlzIGEgY29tbW9uIHByb2JsZW0uIFRoZW4gSSByZW1lbWJlciwgd2FpdCwgc3l6a2FsbGVyIGhhcyBwc2V1ZG8tc3lzY2FsbHMgZm9yIG90aGVyIGludGVyZmFjZXMgbGlrZSBVU0IgYW5kIE5ldGxpbmsuIFNvLCBJIHdvbmRlciwgZG9lcyBzeXprYWxsZXIgaGF2ZSBhbnl0aGluZyBmb3IgTURJTz8gSSBkb24ndCBoYXZlIGRpcmVjdCBhY2Nlc3MgdG8gdGhlIHN5emthbGxlciBzb3VyY2UgcmlnaHQgbm93LCBidXQgSSBjYW4gc2VlIGlmIHRoZXJlIGFyZSBrZXJuZWwgZnVuY3Rpb25zIHRoYXQgaXQgd291bGQgbGlrZWx5IGxldmVyYWdlLlxuXG5Ib3dldmVyLCBhIG5hZ2dpbmcgZmVlbGluZyBzdXJmYWNlczogaWYgdGhpcyBNRElPIGRldmljZSBpcyBtYXRjaGVkIHRocm91Z2ggdGhlIERldmljZSBUcmVlIChPRiksIGFuZCB3ZSdyZSBvbiBhIHN0YW5kYXJkIHg4Nl82NCBWTSwgaXQgcHJvYmFibHkgd29uJ3QgZXZlbiBwcm9iZS4gSSBzaG91bGQgaGF2ZSByZWFsaXplZCB0aGF0IGltbWVkaWF0ZWx5LiBUaGVuIEkgcmVjYWxsIHRoYXQgc3l6a2FsbGVyICpkb2VzKiB0YXJnZXQgc29tZSBBUk0gYm9hcmRzLCBidXQgZXZlbiBpbiB0aG9zZSBjYXNlcywgdGhlIERldmljZSBUcmVlIGlzIHN0YXRpYyBhbmQgZml4ZWQgYXQgYm9vdC4gSWYgdGhlIERldmljZSBUcmVlIGRvZXNuJ3QgaW5jbHVkZSBzb21ldGhpbmcgbGlrZSBgbWFydmVsbCxtdjg4ZTYwODVgLCB0aGF0IHNwZWNpZmljIGRyaXZlciB3b24ndCBsb2FkLlxuXG5TbyB0aGUgcXVlc3Rpb24gYmVjb21lczogaXMgdGhlcmUgKmFueSogb3RoZXIgbWVjaGFuaXNtIGZvciBwcm9iaW5nIHRoZSBgbXY4OGU2eHh4YCBkcml2ZXI/IExldCBtZSBnbyBiYWNrIGFuZCBkb3VibGUtY2hlY2sgYG12ODhlNnh4eF9vZl9tYXRjaGAgYWdhaW4uIEkgbmVlZCB0byBtYWtlIHN1cmUgSSdtIG5vdCBtaXNzaW5nIHNvbWV0aGluZyBvYnZpb3VzLlxuXG5cbiIsIklucHV0VG9rZW5zIjoxNzMwNSwiT3V0cHV0VG9rZW5zIjo0NCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjI2NSwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0NToxNS40MTQyMzg3MloiLCJTZXEiOjI2LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6NzQ2NjIwOTQsIkVycm9yIjoiIiwiQXJncyI6IntcbiAgXCJFeHByZXNzaW9uXCI6IFwibXY4OGU2eHh4X29mX21hdGNoXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTc1MDA9c3RhdGljIHZvaWQgbXY4OGU2eHh4X3NodXRkb3duKHN0cnVjdCBtZGlvX2RldmljZSAqbWRpb2RldilcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MTEtXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzUxMjpzdGF0aWMgY29uc3Qgc3RydWN0IG9mX2RldmljZV9pZCBtdjg4ZTZ4eHhfb2ZfbWF0Y2hbXSA9IHtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTEzLVxcdHtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MjctXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzUyODpNT0RVTEVfREVWSUNFX1RBQkxFKG9mLCBtdjg4ZTZ4eHhfb2ZfbWF0Y2gpO1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MjktXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzUzMD1zdGF0aWMgc3RydWN0IG1kaW9fZHJpdmVyIG12ODhlNnh4eF9kcml2ZXIgPSB7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTM1LVxcdFxcdC5uYW1lID0gXFxcIm12ODhlNjA4NVxcXCIsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzUzNjpcXHRcXHQub2ZfbWF0Y2hfdGFibGUgPSBtdjg4ZTZ4eHhfb2ZfbWF0Y2gsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUzNy1cXHRcXHQucG0gPSBcXHUwMDI2bXY4OGU2eHh4X3BtX29wcyxcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDU6MTUuNDg4OTA4MTY0WiIsIlNlcSI6MjcsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjQxNDYzMjI4MTQsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IioqSW52ZXN0aWdhdGluZyB0aGUgbXY4OGU2eHh4IERyaXZlcidzIERldmljZSBSZWdpc3RyYXRpb24qKlxuXG5Pa2F5LCBzbyBJJ20gbG9va2luZyBhdCB0aGlzIGBtdjg4ZTZ4eHhfZHJpdmVyYCwgYW5kIHNvbWV0aGluZydzIGJ1Z2dpbmcgbWUuIFNwZWNpZmljYWxseSwgdGhlIGRyaXZlcidzIGdvdCBgLm5hbWUgPSBcIm12ODhlNjA4NVwiYC4gVGhhdCBuYW1lIG1hdGNoaW5nIGlzIGFuIGludGVyZXN0aW5nIHRlY2huaXF1ZSBmb3IgTURJTyBkcml2ZXJzLCBhbmQgaXQgbWFrZXMgc2Vuc2UgaWYgdGhlIGJ1cyBpdHNlbGYgcmVnaXN0ZXJzIGEgZGV2aWNlICp3aXRoKiB0aGF0IHNwZWNpZmljIG5hbWUuIEJ1dCB0aGUgcXVlc3Rpb24gaXMsIGhvdyBkb2VzIGFuIE1ESU8gZGV2aWNlICpnZXQqIHJlZ2lzdGVyZWQgd2l0aCB0aGF0IGV4YWN0IHN0cmluZywgXCJtdjg4ZTYwODVcIj9cblxuTXkgZXhwZXJpZW5jZSBzYXlzIHRoYXQgTURJTyBkZXZpY2VzIGFyZSB0eXBpY2FsbHkgYnJvdWdodCBvbmxpbmUgYnkgdGhlIE1ESU8gYnVzIGRyaXZlciwgd2hpY2ggdXNlcyB0d28gbWFpbiBtZXRob2RzOiBoYXJkd2FyZSBwcm9iaW5nICh3aGVyZSB0aGUgUEhZIElEIGlzIGNoZWNrZWQpIG9yIGRldmljZSB0cmVlIGNvbmZpZ3VyYXRpb25zLiBOb3csIHN3aXRjaGVzLi4uIHN3aXRjaGVzIGFyZSBhIGRpZmZlcmVudCBiZWFzdC4gVGhlaXIgUEhZIElEcyBvZnRlbiBhcmVuJ3Qgc3RhbmRhcmQsIHNvIHRoZSBkZXZpY2UgdHJlZSBpcyB1c3VhbGx5IHRoZSBjcml0aWNhbCBwaWVjZSBpbiBnZXR0aW5nIHRoZW0gaWRlbnRpZmllZCBhbmQgY29ubmVjdGVkLlxuXG5TbywgSSdtIGdvaW5nIHRvIGRpZyBkZWVwZXIuIEkgbmVlZCB0byBrbm93OiBJcyB0aGVyZSBhbnkgb3RoZXIgcGxhY2UgaW4gdGhlIGtlcm5lbCB0aGF0IHJlZ2lzdGVycyB0aGlzIGRldmljZT8gSSdtIG1pc3Npbmcgc29tZXRoaW5nLCBhbmQgSSBuZWVkIHRvIGZpbmQgdGhlIHJvb3QgY2F1c2UuIFRoaXMgbmFtZSBtYXRjaGluZyBoYXMgdG8gYmUgY29taW5nIGZyb20gc29tZXdoZXJlLlxuXG5cbiIsIklucHV0VG9rZW5zIjoxODMxNywiT3V0cHV0VG9rZW5zIjoyMiwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjEzMSwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0NToxOS42MzUyMzQ1OThaIiwiU2VxIjoyOCwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjI0MjQ5ODcyNjYsIkVycm9yIjoiIiwiQXJncyI6IntcbiAgXCJFeHByZXNzaW9uXCI6IFwibXY4OGU2MDg1XCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcIkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWw9MTk9cHJvcGVydGllczpcXG4tLVxcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWwtMjItICAgICAgLSBlbnVtOlxcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWw6MjM6ICAgICAgICAgIC0gbWFydmVsbCxtdjg4ZTYwODVcXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2RzYS9tYXJ2ZWxsLG12ODhlNnh4eC55YW1sLTI0LSAgICAgICAgICAtIG1hcnZlbGwsbXY4OGU2MTkwXFxuLS1cXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2RzYS9tYXJ2ZWxsLG12ODhlNnh4eC55YW1sLTI2LSAgICAgICAgZGVzY3JpcHRpb246IHxcXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2RzYS9tYXJ2ZWxsLG12ODhlNnh4eC55YW1sOjI3OiAgICAgICAgICBtYXJ2ZWxsLG12ODhlNjA4NTogVGhpcyBzd2l0Y2ggdXNlcyBiYXNlIGFkZHJlc3MgMHgxMC5cXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2RzYS9tYXJ2ZWxsLG12ODhlNnh4eC55YW1sLTI4LSAgICAgICAgICAgIFRoaXMgc3dpdGNoIGFuZCBpdHMgc2libGluZ3Mgd2lsbCBiZSBhdXRvZGV0ZWN0ZWQgZnJvbVxcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWw6Mjk6ICAgICAgICAgICAgSUQgcmVnaXN0ZXJzIGZvdW5kIGluIHRoZSBzd2l0Y2gsIHNvIG9ubHkgXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIiBzaG91bGQgYmVcXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2RzYS9tYXJ2ZWxsLG12ODhlNnh4eC55YW1sLTMwLSAgICAgICAgICAgIHNwZWNpZmllZC4gVGhpcyBpbmNsdWRlcyB0aGUgZm9sbG93aW5nIGxpc3Qgb2YgTVY4OEV4eHh4IHN3aXRjaGVzOlxcbi0tXFxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbC00My0gICAgICAtIGl0ZW1zOlxcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWw6NDQ6ICAgICAgICAgIC0gY29uc3Q6IG1hcnZlbGwsdHVycmlzLW1veC1tdjg4ZTYwODVcXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2RzYS9tYXJ2ZWxsLG12ODhlNnh4eC55YW1sOjQ1OiAgICAgICAgICAtIGNvbnN0OiBtYXJ2ZWxsLG12ODhlNjA4NVxcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWwtNDYtICAgICAgLSBpdGVtczpcXG4tLVxcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWw9MTA5PWV4YW1wbGVzOlxcbi0tXFxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbC0xMTYtICAgICAgICBldGhlcm5ldC1zd2l0Y2hAMCB7XFxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbDoxMTc6ICAgICAgICAgICAgY29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7XFxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbC0xMTgtICAgICAgICAgICAgcmVnID0gXFx1MDAzYzBcXHUwMDNlO1xcbi0tXFxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9ldGhlcm5ldC1zd2l0Y2gueWFtbD0yMz1hbGxPZjpcXG4tLVxcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZXRoZXJuZXQtc3dpdGNoLnlhbWwtMzItICAgICAgICAgICAgZW51bTpcXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2V0aGVybmV0LXN3aXRjaC55YW1sOjMzOiAgICAgICAgICAgICAgLSBtYXJ2ZWxsLHR1cnJpcy1tb3gtbXY4OGU2MDg1XFxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9ldGhlcm5ldC1zd2l0Y2gueWFtbC0zNC0gICAgICAgICAgICAgIC0gbWFydmVsbCx0dXJyaXMtbW94LW12ODhlNjE5MFxcbi0tXFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcwLXJkLmR0cz0xNTI9XFx0c3dpdGNoOiBldGhlcm5ldC1zd2l0Y2hAMTAge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MC1yZC5kdHM6MTUzOlxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MC1yZC5kdHMtMTU0LVxcdFxcdHJlZyA9IFxcdTAwM2MweDEwXFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM4NS1jbGVhcmZvZy1ndHItczQuZHRzPTE2PVxcdHN3aXRjaDA6IGV0aGVybmV0LXN3aXRjaEA0IHtcXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODUtY2xlYXJmb2ctZ3RyLXM0LmR0czoxNzpcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODUtY2xlYXJmb2ctZ3RyLXM0LmR0cy0xOC1cXHRcXHRyZWcgPSBcXHUwMDNjNFxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODUtbGlua3N5cy5kdHNpPTE2MT1cXHRldGhlcm5ldC1zd2l0Y2hAMCB7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg1LWxpbmtzeXMuZHRzaToxNjI6XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg1LWxpbmtzeXMuZHRzaS0xNjMtXFx0XFx0cmVnID0gXFx1MDAzYzBcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg1LXR1cnJpcy1vbW5pYS5kdHM9NDY3PVxcdGV0aGVybmV0LXN3aXRjaEAxMCB7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODUtdHVycmlzLW9tbmlhLmR0cy00NjktXFx0XFx0cGluY3RybC0wID0gXFx1MDAzY1xcdTAwMjZzd2ludF9waW5zXFx1MDAzZTtcXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODUtdHVycmlzLW9tbmlhLmR0czo0NzA6XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg1LXR1cnJpcy1vbW5pYS5kdHMtNDcxLVxcbi0tXFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg4LWNsZWFyZm9nLmR0cz05Nj1cXHRldGhlcm5ldC1zd2l0Y2hANCB7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg4LWNsZWFyZm9nLmR0czo5NzpcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODgtY2xlYXJmb2cuZHRzLTk4LVxcdFxcdHJlZyA9IFxcdTAwM2M0XFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLXhwLWxpbmtzeXMtbWFtYmEuZHRzPTI2OD1cXHRldGhlcm5ldC1zd2l0Y2hAMCB7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEteHAtbGlua3N5cy1tYW1iYS5kdHM6MjY5OlxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLXhwLWxpbmtzeXMtbWFtYmEuZHRzLTI3MC1cXHRcXHRyZWcgPSBcXHUwMDNjMFxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLTRpLWVkZ2UtMjAwLmR0cz04Mj1cXHRzd2l0Y2gwOiBzd2l0Y2hAMTEge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtNGktZWRnZS0yMDAuZHRzOjgzOlxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtNGktZWRnZS0yMDAuZHRzLTg0LVxcdFxcdHJlZyA9IFxcdTAwM2MweDExXFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtZGlyNjY1LmR0cz0xOTY9XFx0c3dpdGNoQDAge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtZGlyNjY1LmR0czoxOTc6XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1kaXI2NjUuZHRzLTE5OC1cXHRcXHQjYWRkcmVzcy1jZWxscyA9IFxcdTAwM2MxXFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtbC01MC5kdHM9MjExPVxcdHN3aXRjaDA6IHN3aXRjaEAxMCB7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1sLTUwLmR0czoyMTI6XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1sLTUwLmR0cy0yMTMtXFx0XFx0I2FkZHJlc3MtY2VsbHMgPSBcXHUwMDNjMVxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLWwtNTAuZHRzPTI2OT1cXHRzd2l0Y2hAMTEge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtbC01MC5kdHM6MjcwOlxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtbC01MC5kdHMtMjcxLVxcdFxcdCNhZGRyZXNzLWNlbGxzID0gXFx1MDAzYzFcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1saW5rc3lzLXZpcGVyLmR0cz0xNjI9XFx0c3dpdGNoQDEwIHtcXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLWxpbmtzeXMtdmlwZXIuZHRzOjE2MzpcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLWxpbmtzeXMtdmlwZXIuZHRzLTE2NC1cXHRcXHQjYWRkcmVzcy1jZWxscyA9IFxcdTAwM2MxXFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtbXY4OGY2MjgxZ3R3LWdlLmR0cz0xMTM9XFx0c3dpdGNoQDAge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtbXY4OGY2MjgxZ3R3LWdlLmR0czoxMTQ6XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1tdjg4ZjYyODFndHctZ2UuZHRzLTExNS1cXHRcXHQjYWRkcmVzcy1jZWxscyA9IFxcdTAwM2MxXFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtcmQ4OGY2MjgxLmR0c2k9Nzc9XFx0c3dpdGNoOiBzd2l0Y2hAMCB7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1yZDg4ZjYyODEuZHRzaTo3ODpcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLXJkODhmNjI4MS5kdHNpLTc5LVxcdFxcdCNhZGRyZXNzLWNlbGxzID0gXFx1MDAzYzFcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9vcmlvbjV4LW5ldGdlYXItd25yODU0dC5kdHM9MTA5PVxcdHN3aXRjaDogc3dpdGNoQDAge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwvb3Jpb241eC1uZXRnZWFyLXducjg1NHQuZHRzOjExMDpcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL29yaW9uNXgtbmV0Z2Vhci13bnI4NTR0LmR0cy0xMTEtXFx0XFx0I2FkZHJlc3MtY2VsbHMgPSBcXHUwMDNjMVxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDUxLXppaS1yZHUxLmR0cz0xNzM9XFx0XFx0c3dpdGNoQDAge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NTEtemlpLXJkdTEuZHRzOjE3NDpcXHRcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDUxLXppaS1yZHUxLmR0cy0xNzUtXFx0XFx0XFx0cmVnID0gXFx1MDAzYzBcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg1MS16aWktc2N1Mi1tZXp6LmR0cz00OT1cXHRcXHRzd2l0Y2hAMCB7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg1MS16aWktc2N1Mi1tZXp6LmR0czo1MDpcXHRcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDUxLXppaS1zY3UyLW1lenouZHRzLTUxLVxcdFxcdFxcdHJlZyA9IFxcdTAwM2MwXFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NTEtemlpLXNjdTMtZXNiLmR0cz0yMTY9XFx0XFx0c3dpdGNoQDAge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NTEtemlpLXNjdTMtZXNiLmR0czoyMTc6XFx0XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg1MS16aWktc2N1My1lc2IuZHRzLTIxOC1cXHRcXHRcXHRyZWcgPSBcXHUwMDNjMFxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDZkbC15YXBwNDMtY29tbW9uLmR0c2k9MTI4PVxcdFxcdHN3aXRjaEAwIHtcXG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDZkbC15YXBwNDMtY29tbW9uLmR0c2k6MTI5OlxcdFxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NmRsLXlhcHA0My1jb21tb24uZHRzaS0xMzAtXFx0XFx0XFx0cmVnID0gXFx1MDAzYzBcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2cS1ieDUwdjMuZHRzaT0xMDU9XFx0XFx0c3dpdGNoOiBzd2l0Y2hAMCB7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2cS1ieDUwdjMuZHRzaToxMDY6XFx0XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7IC8qIDg4ZTYyNDAqL1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NnEtYng1MHYzLmR0c2ktMTA3LVxcdFxcdFxcdHJlZyA9IFxcdTAwM2MwXFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NnFkbC1ndzU5MDQuZHRzaT0xNzQ9XFx0XFx0c3dpdGNoQDAge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NnFkbC1ndzU5MDQuZHRzaToxNzU6XFx0XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2cWRsLWd3NTkwNC5kdHNpLTE3Ni1cXHRcXHRcXHRyZWcgPSBcXHUwMDNjMFxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDZxZGwtemlpLXJkdTIuZHRzaT03MzA9XFx0XFx0c3dpdGNoOiBzd2l0Y2hAMCB7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2cWRsLXppaS1yZHUyLmR0c2k6NzMxOlxcdFxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NnFkbC16aWktcmR1Mi5kdHNpLTczMi1cXHRcXHRcXHRwaW5jdHJsLTAgPSBcXHUwMDNjXFx1MDAyNnBpbmN0cmxfc3dpdGNoX2lycVxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDdkLXppaS1ycHUyLmR0cz0yMjg9XFx0XFx0c3dpdGNoOiBzd2l0Y2hAMCB7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg3ZC16aWktcnB1Mi5kdHM6MjI5OlxcdFxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14N2QtemlpLXJwdTIuZHRzLTIzMC1cXHRcXHRcXHRwaW5jdHJsLW5hbWVzID0gXFxcImRlZmF1bHRcXFwiO1xcbi0tXFxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL3ZmL3ZmNjEwLXppaS1jZnUxLmR0cz0xNjU9XFx0XFx0c3dpdGNoMDogZXRoZXJuZXQtc3dpdGNoQDAge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC92Zi92ZjYxMC16aWktY2Z1MS5kdHM6MTY2OlxcdFxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC92Zi92ZjYxMC16aWktY2Z1MS5kdHMtMTY3LVxcdFxcdFxcdHBpbmN0cmwtbmFtZXMgPSBcXFwiZGVmYXVsdFxcXCI7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWRldi1yZXYtYi5kdHM9MzA9XFx0XFx0XFx0c3dpdGNoMDogc3dpdGNoQDAge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC92Zi92ZjYxMC16aWktZGV2LXJldi1iLmR0czozMTpcXHRcXHRcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWRldi1yZXYtYi5kdHMtMzItXFx0XFx0XFx0XFx0cGluY3RybC0wID0gXFx1MDAzY1xcdTAwMjZwaW5jdHJsX2dwaW9fc3dpdGNoMFxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWRldi1yZXYtYi5kdHM9MTE0PVxcdFxcdFxcdHN3aXRjaDE6IHN3aXRjaEAwIHtcXG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWRldi1yZXYtYi5kdHM6MTE1OlxcdFxcdFxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC92Zi92ZjYxMC16aWktZGV2LXJldi1iLmR0cy0xMTYtXFx0XFx0XFx0XFx0cGluY3RybC0wID0gXFx1MDAzY1xcdTAwMjZwaW5jdHJsX2dwaW9fc3dpdGNoMVxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWRldi1yZXYtYi5kdHM9MjAxPVxcdFxcdFxcdHN3aXRjaDI6IHN3aXRjaEAwIHtcXG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWRldi1yZXYtYi5kdHM6MjAyOlxcdFxcdFxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC92Zi92ZjYxMC16aWktZGV2LXJldi1iLmR0cy0yMDMtXFx0XFx0XFx0XFx0cmVnID0gXFx1MDAzYzBcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm02NC9ib290L2R0cy9mcmVlc2NhbGUvaW14OG1xLXppaS11bHRyYS5kdHNpPTE1MD1cXHRcXHRzd2l0Y2g6IHN3aXRjaEAwIHtcXG5hcmNoL2FybTY0L2Jvb3QvZHRzL2ZyZWVzY2FsZS9pbXg4bXEtemlpLXVsdHJhLmR0c2k6MTUxOlxcdFxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvZnJlZXNjYWxlL2lteDhtcS16aWktdWx0cmEuZHRzaS0xNTItXFx0XFx0XFx0cGluY3RybC0wID0gXFx1MDAzY1xcdTAwMjZwaW5jdHJsX3N3aXRjaF9pcnFcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zNzIwLWVzcHJlc3NvYmluLXVsdHJhLmR0cz0xMjU9XFx0c3dpdGNoMDogZXRoZXJuZXQtc3dpdGNoQDMge1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC1lc3ByZXNzb2Jpbi11bHRyYS5kdHM6MTI2OlxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC1lc3ByZXNzb2Jpbi11bHRyYS5kdHMtMTI3LVxcdFxcdHJlZyA9IFxcdTAwM2MzXFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC1lc3ByZXNzb2Jpbi5kdHNpPTE0Nz1cXHRzd2l0Y2gwOiBldGhlcm5ldC1zd2l0Y2hAMSB7XFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zNzIwLWVzcHJlc3NvYmluLmR0c2k6MTQ4OlxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC1lc3ByZXNzb2Jpbi5kdHNpLTE0OS1cXHRcXHRyZWcgPSBcXHUwMDNjMVxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtZ2wtbXYxMDAwLmR0cz0xNTA9XFx0c3dpdGNoMDogZXRoZXJuZXQtc3dpdGNoQDEge1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC1nbC1tdjEwMDAuZHRzOjE1MTpcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtZ2wtbXYxMDAwLmR0cy0xNTItXFx0XFx0cmVnID0gXFx1MDAzYzFcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zNzIwLXR1cnJpcy1tb3guZHRzPTQzOD1cXHRzd2l0Y2gwQDIge1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC10dXJyaXMtbW94LmR0czo0Mzk6XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLHR1cnJpcy1tb3gtbXY4OGU2MDg1XFxcIiwgXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtdHVycmlzLW1veC5kdHMtNDQwLVxcdFxcdHJlZyA9IFxcdTAwM2MweDJcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zNzIwLXR1cnJpcy1tb3guZHRzPTYzMj1cXHRzd2l0Y2gxQDIge1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC10dXJyaXMtbW94LmR0czo2MzM6XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLHR1cnJpcy1tb3gtbXY4OGU2MDg1XFxcIiwgXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtdHVycmlzLW1veC5kdHMtNjM0LVxcdFxcdHJlZyA9IFxcdTAwM2MweDJcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zNzIwLXR1cnJpcy1tb3guZHRzPTgxNz1cXHRzd2l0Y2gyQDIge1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC10dXJyaXMtbW94LmR0czo4MTg6XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLHR1cnJpcy1tb3gtbXY4OGU2MDg1XFxcIiwgXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtdHVycmlzLW1veC5kdHMtODE5LVxcdFxcdHJlZyA9IFxcdTAwM2MweDJcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS03MDQwLW1vY2hhYmluLmR0cz0zMDQ9XFx0c3dpdGNoOiBldGhlcm5ldC1zd2l0Y2hAMyB7XFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS03MDQwLW1vY2hhYmluLmR0czozMDU6XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7XFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS03MDQwLW1vY2hhYmluLmR0cy0zMDYtXFx0XFx0cmVnID0gXFx1MDAzYzNcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS04MDQwLWNsZWFyZm9nLWd0LThrLmR0cz01MDA9XFx0c3dpdGNoMDogZXRoZXJuZXQtc3dpdGNoQDQge1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtODA0MC1jbGVhcmZvZy1ndC04ay5kdHM6NTAxOlxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtODA0MC1jbGVhcmZvZy1ndC04ay5kdHMtNTAyLVxcdFxcdHJlZyA9IFxcdTAwM2M0XFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9jbjkxMzAtY2YtcHJvLmR0cz04OD1cXHRldGhlcm5ldC1zd2l0Y2hANCB7XFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2NuOTEzMC1jZi1wcm8uZHRzOjg5OlxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9jbjkxMzAtY2YtcHJvLmR0cy05MC1cXHRcXHRyZWcgPSBcXHUwMDNjNFxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvY245MTMyLWNsZWFyZm9nLmR0cz0yNjQ9XFx0ZXRoZXJuZXQtc3dpdGNoQDQge1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9jbjkxMzItY2xlYXJmb2cuZHRzOjI2NTpcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvY245MTMyLWNsZWFyZm9nLmR0cy0yNjYtXFx0XFx0cmVnID0gXFx1MDAzYzRcXHUwMDNlO1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NDIxNz1zdGF0aWMgaW50IG12ODhlNnh4eF9zZXRfZWVwcm9tKHN0cnVjdCBkc2Ffc3dpdGNoICpkcyxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQyMzUtXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDIzNjpzdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MDg1X29wcyA9IHtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00MjM3LVxcdC8qIE1WODhFNlhYWF9GQU1JTFlfNjA5NyAqL1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQyMzg6XFx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDIzOTpcXHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQyNDAtXFx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00MjcxLVxcdC5yZXNldCA9IG12ODhlNjE4NV9nMV9yZXNldCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0MjcyOlxcdC5ybXVfZGlzYWJsZSA9IG12ODhlNjA4NV9nMV9ybXVfZGlzYWJsZSxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00MjczLVxcdC52dHVfZ2V0bmV4dCA9IG12ODhlNjM1Ml9nMV92dHVfZ2V0bmV4dCxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTQyODE9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjA5NV9vcHMgPSB7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDI4Mi1cXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYwOTUgKi9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0MjgzOlxcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQyODQ6XFx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00Mjg1LVxcdC5zZXRfc3dpdGNoX21hYyA9IG12ODhlNnh4eF9nMV9zZXRfc3dpdGNoX21hYyxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQyOTAtXFx0LnBvcnRfc2V0X3NwZWVkX2R1cGxleCA9IG12ODhlNjE4NV9wb3J0X3NldF9zcGVlZF9kdXBsZXgsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDI5MTpcXHQucG9ydF9zZXRfZnJhbWVfbW9kZSA9IG12ODhlNjA4NV9wb3J0X3NldF9mcmFtZV9tb2RlLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQyOTItXFx0LnBvcnRfc2V0X3VjYXN0X2Zsb29kID0gbXY4OGU2MTg1X3BvcnRfc2V0X2ZvcndhcmRfdW5rbm93bixcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTQzMTM9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjA5N19vcHMgPSB7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDMxNC1cXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYwOTcgKi9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0MzE1OlxcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQzMTY6XFx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00MzE3LVxcdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDM0OS1cXHQucmVzZXQgPSBtdjg4ZTYzNTJfZzFfcmVzZXQsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDM1MDpcXHQucm11X2Rpc2FibGUgPSBtdjg4ZTYwODVfZzFfcm11X2Rpc2FibGUsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDM1MS1cXHQudnR1X2dldG5leHQgPSBtdjg4ZTYzNTJfZzFfdnR1X2dldG5leHQsXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz00MzYwPXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYxMjNfb3BzID0ge1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQzNjEtXFx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MTY1ICovXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDM2MjpcXHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0MzYzOlxcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDM2NC1cXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQzNzItXFx0LnBvcnRfc2V0X3NwZWVkX2R1cGxleCA9IG12ODhlNjE4NV9wb3J0X3NldF9zcGVlZF9kdXBsZXgsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDM3MzpcXHQucG9ydF9zZXRfZnJhbWVfbW9kZSA9IG12ODhlNjA4NV9wb3J0X3NldF9mcmFtZV9tb2RlLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQzNzQtXFx0LnBvcnRfc2V0X3VjYXN0X2Zsb29kID0gbXY4OGU2MzUyX3BvcnRfc2V0X3VjYXN0X2Zsb29kLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NDQwMT1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MTMxX29wcyA9IHtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NDAyLVxcdC8qIE1WODhFNlhYWF9GQU1JTFlfNjE4NSAqL1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ0MDM6XFx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDQwNDpcXHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ0MDUtXFx0LnNldF9zd2l0Y2hfbWFjID0gbXY4OGU2eHh4X2cxX3NldF9zd2l0Y2hfbWFjLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NDQ0MT1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MTQxX29wcyA9IHtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NDQyLVxcdC8qIE1WODhFNlhYWF9GQU1JTFlfNjM0MSAqL1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ0NDM6XFx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDQ0NDpcXHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ0NDUtXFx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz00NTAzPXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYxNjFfb3BzID0ge1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ1MDQtXFx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MTY1ICovXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDUwNTpcXHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0NTA2OlxcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDUwNy1cXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTQ1NTE9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjE2NV9vcHMgPSB7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDU1Mi1cXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYxNjUgKi9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0NTUzOlxcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ1NTQ6XFx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NTU1LVxcdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NDU4OD1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MTcxX29wcyA9IHtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NTg5LVxcdC8qIE1WODhFNlhYWF9GQU1JTFlfNjM1MSAqL1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ1OTA6XFx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDU5MTpcXHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ1OTItXFx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz00NjM0PXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYxNzJfb3BzID0ge1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ2MzUtXFx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MzUyICovXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDYzNjpcXHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0NjM3OlxcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDYzOC1cXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTQ2OTI9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjE3NV9vcHMgPSB7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDY5My1cXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYzNTEgKi9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0Njk0OlxcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ2OTU6XFx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00Njk2LVxcdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NDczOD1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MTc2X29wcyA9IHtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NzM5LVxcdC8qIE1WODhFNlhYWF9GQU1JTFlfNjM1MiAqL1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ3NDA6XFx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDc0MTpcXHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ3NDItXFx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz00Nzk3PXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYxODVfb3BzID0ge1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ3OTgtXFx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MTg1ICovXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDc5OTpcXHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0ODAwOlxcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDgwMS1cXHQuc2V0X3N3aXRjaF9tYWMgPSBtdjg4ZTZ4eHhfZzFfc2V0X3N3aXRjaF9tYWMsXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00ODA2LVxcdC5wb3J0X3NldF9zcGVlZF9kdXBsZXggPSBtdjg4ZTYxODVfcG9ydF9zZXRfc3BlZWRfZHVwbGV4LFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ4MDc6XFx0LnBvcnRfc2V0X2ZyYW1lX21vZGUgPSBtdjg4ZTYwODVfcG9ydF9zZXRfZnJhbWVfbW9kZSxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00ODA4LVxcdC5wb3J0X3NldF91Y2FzdF9mbG9vZCA9IG12ODhlNjE4NV9wb3J0X3NldF9mb3J3YXJkX3Vua25vd24sXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz01MDExPXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYyNDBfb3BzID0ge1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTUwMTItXFx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MzUyICovXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTAxMzpcXHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1MDE0OlxcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTAxNS1cXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTUwNzI9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjI1MF9vcHMgPSB7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01MDc0LVxcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYyNTBfZzFfaWVlZV9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjUwNzU6XFx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01MDc2LVxcdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NTE3OD1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MzIwX29wcyA9IHtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTUxODAtXFx0LnNldHVwX2VycmF0YSA9IG12ODhlNjMyMF9zZXR1cF9lcnJhdGEsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTE4MTpcXHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1MTgyOlxcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTE4My1cXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTUyMzQ9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjMyMV9vcHMgPSB7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01MjM2LVxcdC5zZXR1cF9lcnJhdGEgPSBtdjg4ZTYzMjBfc2V0dXBfZXJyYXRhLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjUyMzc6XFx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTIzODpcXHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTUyMzktXFx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz01Mjk0PXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYzNDFfb3BzID0ge1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTUyOTUtXFx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MzQxICovXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTI5NjpcXHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1Mjk3OlxcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTI5OC1cXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTUzNTg9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjM1MF9vcHMgPSB7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTM1OS1cXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYzNTEgKi9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1MzYwOlxcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjUzNjE6XFx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01MzYyLVxcdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NTQwND1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MzUxX29wcyA9IHtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01NDA1LVxcdC8qIE1WODhFNlhYWF9GQU1JTFlfNjM1MSAqL1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjU0MDY6XFx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTQwNzpcXHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTU0MDgtXFx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz01NDUyPXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYzNTJfb3BzID0ge1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTU0NTMtXFx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MzUyICovXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTQ1NDpcXHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1NDU1OlxcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTQ1Ni1cXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTU3MDc9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfaW5mbyBtdjg4ZTZ4eHhfdGFibGVbXSA9IHtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTU3NzQtXFx0XFx0Lm11bHRpX2NoaXAgPSB0cnVlLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjU3NzU6XFx0XFx0Lm9wcyA9IFxcdTAwMjZtdjg4ZTYwODVfb3BzLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTU3NzYtXFx0fSxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTc1MTI9c3RhdGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgbXY4OGU2eHh4X29mX21hdGNoW10gPSB7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUxMy1cXHR7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzUxNDpcXHRcXHQuY29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCIsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUxNS1cXHRcXHQuZGF0YSA9IFxcdTAwMjZtdjg4ZTZ4eHhfdGFibGVbTVY4OEU2MDg1XSxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTc1MzA9c3RhdGljIHN0cnVjdCBtZGlvX2RyaXZlciBtdjg4ZTZ4eHhfZHJpdmVyID0ge1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUzNC1cXHQubWRpb2Rydi5kcml2ZXIgPSB7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzUzNTpcXHRcXHQubmFtZSA9IFxcXCJtdjg4ZTYwODVcXFwiLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MzYtXFx0XFx0Lm9mX21hdGNoX3RhYmxlID0gbXY4OGU2eHh4X29mX21hdGNoLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmM9Mjg4PWludCBtdjg4ZTYxODVfZzFfc2V0X21heF9mcmFtZV9zaXplKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IG10dSlcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5jLTMxNi1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuYzozMTc6aW50IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcClcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuYy0zMTgte1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmMtMzU4LVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5jOjM1OTppbnQgbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcChzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXApXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmMtMzYwLXtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5jPTUyNj1pbnQgbXY4OGU2MTg1X2cxX3NldF9jYXNjYWRlX3BvcnQoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydClcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5jLTUzMi1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuYzo1MzM6aW50IG12ODhlNjA4NV9nMV9ybXVfZGlzYWJsZShzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXApXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmMtNTM0LXtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5oPTMwOT1pbnQgbXY4OGU2MzkwX2cxX21nbXRfcnN2ZDJjcHUoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKTtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaC0zMTAtXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmg6MzExOmludCBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcChzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXApO1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5oLTMxMi1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaDozMTM6aW50IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKTtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaC0zMTQtaW50IG12ODhlNjI1MF9nMV9pZWVlX3ByaV9tYXAoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKTtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5oPTMxNj1pbnQgbXY4OGU2MTg1X2cxX3NldF9jYXNjYWRlX3BvcnQoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCk7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmgtMzE3LVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5oOjMxODppbnQgbXY4OGU2MDg1X2cxX3JtdV9kaXNhYmxlKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCk7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmgtMzE5LWludCBtdjg4ZTYzNTJfZzFfcm11X2Rpc2FibGUoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKTtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jPTgxOT1pbnQgbXY4OGU2eHh4X3BvcnRfc2V0X2VncmVzc19tb2RlKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuYy04NTAtXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmM6ODUxOmludCBtdjg4ZTYwODVfcG9ydF9zZXRfZnJhbWVfbW9kZShzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jLTg1Mi1cXHRcXHRcXHRcXHQgIGVudW0gbXY4OGU2eHh4X2ZyYW1lX21vZGUgbW9kZSlcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oPTUyOD1pbnQgbXY4OGU2eHh4X3BvcnRfc2V0X2VncmVzc19tb2RlKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmgtNTI5LVxcdFxcdFxcdFxcdCAgIGVudW0gbXY4OGU2eHh4X2VncmVzc19tb2RlIG1vZGUpO1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oOjUzMDppbnQgbXY4OGU2MDg1X3BvcnRfc2V0X2ZyYW1lX21vZGUoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaC01MzEtXFx0XFx0XFx0XFx0ICBlbnVtIG12ODhlNnh4eF9mcmFtZV9tb2RlIG1vZGUpO1xcbi0tXFxubmV0L2RzYS9wb3J0LmM9MTcyNj1zdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IGRzYV9zd2l0Y2hlc19hcHBseV93b3JrYXJvdW5kc1tdID0ge1xcbi0tXFxubmV0L2RzYS9wb3J0LmMtMTc3OC0jaWYgSVNfRU5BQkxFRChDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFgpXFxubmV0L2RzYS9wb3J0LmM6MTc3OTpcXHRcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiLFxcbm5ldC9kc2EvcG9ydC5jLTE3ODAtXFx0XFxcIm1hcnZlbGwsbXY4OGU2MTkwXFxcIixcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDU6MjIuMDYwMjM4NDM0WiIsIlNlcSI6MjksIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjg3MTkwODAyMDYsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IioqTXkgQW5hbHlzaXMgb2YgUmVhY2hpbmcgdGhlIE1hcnZlbGwgU3dpdGNoIERyaXZlciBpbiBzeXprYWxsZXIqKlxuXG5Pa2F5LCBzbyBJJ20gdHJ5aW5nIHRvIGZpZ3VyZSBvdXQgaG93IHRvIGdldCB0aGUgYG1hcnZlbGwsbXY4OGU2MDg1YCBkcml2ZXIgcnVubmluZyBpbiBzeXprYWxsZXIuIFRoZSBwcm9ibGVtIGlzLCB0aGlzIGRyaXZlciBpcyAqb25seSogaW5zdGFudGlhdGVkIHZpYSBEZXZpY2UgVHJlZSwgd2hpY2ggaXMgYSBodWdlIGh1cmRsZS4gU3l6a2FsbGVyIHByaW1hcmlseSBvcGVyYXRlcyBvbiB4ODZfNjQgVk1zIHdpdGggQUNQSSwgbWVhbmluZyBubyBEZXZpY2UgVHJlZSBieSBkZWZhdWx0LiBFdmVuIHdoZW4gaXQgKmRvZXMqIHJ1biBvbiBBUk02NCwgaXQncyB1c2luZyBhIGZpeGVkIGRldmljZSB0cmVlLCBsaWtlIHRoZSBgdmlydGAgbWFjaGluZSBpbiBRRU1VLCB3aGljaCBjZXJ0YWlubHkgd29uJ3QgaW5jbHVkZSBteSB0YXJnZXQgYG1hcnZlbGwsbXY4OGU2MDg1YCBkZXZpY2UuXG5cblNvLCB0aGUgcXVlc3Rpb24gaXMsIGNhbiBJIGluamVjdCBhcmJpdHJhcnkgRGV2aWNlIFRyZWUgbm9kZXMgZHluYW1pY2FsbHkgd2l0aGluIHN5emthbGxlcj8gIEknbSBhbHJlYWR5IGF3YXJlIHRoYXQgc3l6a2FsbGVyIGRvZXNuJ3QgaGF2ZSBhICpnZW5lcmFsKiBtZWNoYW5pc20gZm9yIGluamVjdGluZyBEZXZpY2UgVHJlZSBub2RlcyDigJMgdGhlcmUgaXNuJ3Qgc29tZSB1bml2ZXJzYWwgcHNldWRvLXN5c2NhbGwgb3IgY29uZmlndXJhdGlvbiBvcHRpb24gdW5sZXNzIHNvbWV0aGluZyBsaWtlIGBDT05GSUdfT0ZfT1ZFUkxBWWAgaXMgZW5hYmxlZCwgYW5kIGV2ZW4gdGhlbiwgSSdkIG5lZWQgYSB1c2Vyc3BhY2UgaW50ZXJmYWNlLCB3aGljaCBpcyByYXJlbHksIGlmIGV2ZXIsIGV4cG9zZWQgaW4gc3l6a2FsbGVyLlxuXG5MZXQgbWUgdGhpbmvigKYgIEkgKmRvKiBzZWUgdGhpbmdzIGxpa2UgYHN5el91c2JfY29ubmVjdGAgYW5kIGBzeXpfODAyMTFfaW5qZWN0X2ZyYW1lYC4gSXMgdGhlcmUgKmFueXRoaW5nKiBsaWtlIGEgYHN5el9tZGlvX2Nvbm5lY3RgPyBOb3BlLCBub3RoaW5nIGxpa2UgdGhhdC4gIEFscmlnaHQsIGNhbiBJIHByb2JlIHRoaXMgZHJpdmVyIHVzaW5nIHNvbWV0aGluZyBsaWtlIG5ldGxpbmsgb3Igc3lzZnM/IE5vdCBsaWtlbHkuIE1ESU8gZHJpdmVycyBhcmUgdHJpZ2dlcmVkIHdoZW4gdGhlIE1ESU8gYnVzICptYXRjaGVzKiB0aGUgZGV2aWNlLCBidXQgdGhlcmUgaXNuJ3QgYW4gTURJTyBidXMgcmVnaXN0ZXJlZCB3aXRoIHRoaXMgc3BlY2lmaWMgZGV2aWNlIGluIHN5emthbGxlcidzIHN0YW5kYXJkIGVudmlyb25tZW50LiBTbywgYmFzaWNhbGx5LCB0aGUgYGRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvYCBjb2RlIGlzIGNvbXBsZXRlbHkgdW5yZWFjaGFibGUsIHJpZ2h0P1xuXG5XYWl0LCBtYXliZSBJIGNhbiB1c2UgYGRzYV9sb29wYCBhbmQgbW9kaWZ5IGl0PyBIbW0sIG5vLCB0aGF0J3MganVzdCBhIGZpeGVkIG1vY2suIFdoYXQgaWYgSSB1c2UgUENJIHRvIGVtdWxhdGUgTURJTz8gU29tZSBuZXR3b3JrIGNhcmRzICpkbyogaGF2ZSBNRElPIGJ1c2VzLCBidXQgdGhleSBwcm9iZSB0aGVpciAqb3duKiBQSFlzLiBUaGV5J3JlIG5vdCBsb29raW5nIGZvciBhIERTQSBzd2l0Y2ggdW5sZXNzIHRoZSBEZXZpY2UgVHJlZSBvciBwbGF0Zm9ybSBkYXRhIHNheXMgc28uIE9uIHg4NiwgdGhpcyBwbGF0Zm9ybSBkYXRhIHVzdWFsbHkgY29tZXMgZnJvbSBib2FyZCBmaWxlcyAod2hpY2ggZG9uJ3QgZXhpc3QgZm9yIHg4Nikgb3IgZnJvbSBhIFBDSSBkcml2ZXIuIFRoZSBmaW5hbCBxdWVzdGlvbiBpcywgZG8gSSBrbm93IG9mIGFueSBQQ0kgZHJpdmVyIHRoYXQgd291bGQgaW5zdGFudGlhdGUgYW4gYG12ODhlNnh4eGAgdXNpbmcgcGxhdGZvcm0gZGF0YT8gVGhhdOKAmXMgd2hlcmUgSSBuZWVkIHRvIGZvY3VzIG15IGVmZm9ydHMuXG5cblxuIiwiSW5wdXRUb2tlbnMiOjMyMzc2LCJPdXRwdXRUb2tlbnMiOjIzLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6NDU1LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQ1OjMwLjc3OTMyNDMxWiIsIlNlcSI6MzAsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoyOTczODA5NzY0LCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIm12ODhlNnh4eF9wZGF0YVwiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJPdXRwdXRcIjogXCJkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz03Mjk0PXN0YXRpYyBjb25zdCB2b2lkICpwZGF0YV9kZXZpY2VfZ2V0X21hdGNoX2RhdGEoc3RydWN0IGRldmljZSAqZGV2KVxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzI5Ni1cXHRjb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNlX2lkICptYXRjaGVzID0gZGV2LVxcdTAwM2Vkcml2ZXItXFx1MDAzZW9mX21hdGNoX3RhYmxlO1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjcyOTc6XFx0Y29uc3Qgc3RydWN0IGRzYV9tdjg4ZTZ4eHhfcGRhdGEgKnBkYXRhID0gZGV2LVxcdTAwM2VwbGF0Zm9ybV9kYXRhO1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTcyOTgtXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz03MzIyPXN0YXRpYyBpbnQgbXY4OGU2eHh4X3Byb2JlKHN0cnVjdCBtZGlvX2RldmljZSAqbWRpb2RldilcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03MzIzLXtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo3MzI0OlxcdHN0cnVjdCBkc2FfbXY4OGU2eHh4X3BkYXRhICpwZGF0YSA9IG1kaW9kZXYtXFx1MDAzZWRldi5wbGF0Zm9ybV9kYXRhO1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTczMjUtXFx0Y29uc3Qgc3RydWN0IG12ODhlNnh4eF9pbmZvICpjb21wYXRfaW5mbyA9IE5VTEw7XFxuLS1cXG5pbmNsdWRlL2xpbnV4L3BsYXRmb3JtX2RhdGEvbXY4OGU2eHh4LmgtNi1cXG5pbmNsdWRlL2xpbnV4L3BsYXRmb3JtX2RhdGEvbXY4OGU2eHh4Lmg6NzpzdHJ1Y3QgZHNhX212ODhlNnh4eF9wZGF0YSB7XFxuaW5jbHVkZS9saW51eC9wbGF0Zm9ybV9kYXRhL212ODhlNnh4eC5oLTgtXFx0LyogTXVzdCBiZSBmaXJzdCwgc3VjaCB0aGF0IGRzYV9yZWdpc3Rlcl9zd2l0Y2goKSBjYW4gYWNjZXNzIHRoaXNcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDU6MzMuNzUzMTM4ODM0WiIsIlNlcSI6MzEsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjI5NTg1MzY0MTUsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6Ik9rYXksIGxldCdzIGRpdmUgaW50byB0aGlzLiBIZXJlJ3MgbXkgdGhvdWdodCBwcm9jZXNzIG9uIHRoaXMgc3BlY2lmaWMgcXVlc3Rpb24sIHN1bW1hcml6ZWQgYXMgdGhvdWdoIGl0IHdlcmUgbXkgb3duOlxuXG4qKkludmVzdGlnYXRpbmcgYGRzYV9tdjg4ZTZ4eHhfcGRhdGFgIFVzYWdlKipcblxuQWxyaWdodCwgdGhlIG9iamVjdGl2ZSBpcyB0byBmaWd1cmUgb3V0IHRoZSBzY29wZSBvZiBgZHNhX212ODhlNnh4eF9wZGF0YWAuIE15IGZpcnN0IGluc3RpbmN0IGlzIHRvIHNlZSBob3cgd2lkZWx5IHRoaXMgdGhpbmcgaXMgYWN0dWFsbHkgYmVpbmcgZW1wbG95ZWQuIElzIGl0IHB1cmVseSBpbnRlcm5hbCB0byB0aGUgZHJpdmVyLCBvciBkb2VzIGl0IGhhdmUgYW4gaW5mbHVlbmNlIGVsc2V3aGVyZSBpbiB0aGUgc3lzdGVtLCBwb3NzaWJseSBpbiBhbm90aGVyIGNvbXBvbmVudCBvZiB0aGlzIGRyaXZlcj8gR2V0dGluZyB0aGUgcHJlY2lzZSBwaWN0dXJlIHJlcXVpcmVzIGEgdGFyZ2V0ZWQgc2VhcmNoLiBJIG5lZWQgdG8gdHJhY2sgZG93biBhbGwgaW5zdGFuY2VzIHdoZXJlIHRoaXMgc3BlY2lmaWMgZGF0YSBzdHJ1Y3R1cmUgaXMgcmVmZXJlbmNlZCBvdXRzaWRlIHRoZSBpbW1lZGlhdGUgZHJpdmVyIGNvZGUuIEknbGwgbmVlZCB0byB1c2Ugc29tZSB0ZWNobmlxdWVzIHRvIGRvIHRoaXMuXG5cblxuIiwiSW5wdXRUb2tlbnMiOjMzODMzLCJPdXRwdXRUb2tlbnMiOjI2LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MjYsIlRvb2xDYWxscyI6WyJncmVwcGVyIl19LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDU6MzYuNzExNjc5Njc5WiIsIlNlcSI6MzIsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoyNDg3Njg3NDExLCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcImRzYV9tdjg4ZTZ4eHhfcGRhdGFcIlxufSIsIlJlc3VsdHMiOiJ7XG4gIFwiT3V0cHV0XCI6IFwiZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzI5ND1zdGF0aWMgY29uc3Qgdm9pZCAqcGRhdGFfZGV2aWNlX2dldF9tYXRjaF9kYXRhKHN0cnVjdCBkZXZpY2UgKmRldilcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTcyOTYtXFx0Y29uc3Qgc3RydWN0IG9mX2RldmljZV9pZCAqbWF0Y2hlcyA9IGRldi1cXHUwMDNlZHJpdmVyLVxcdTAwM2VvZl9tYXRjaF90YWJsZTtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo3Mjk3OlxcdGNvbnN0IHN0cnVjdCBkc2FfbXY4OGU2eHh4X3BkYXRhICpwZGF0YSA9IGRldi1cXHUwMDNlcGxhdGZvcm1fZGF0YTtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03Mjk4LVxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzMyMj1zdGF0aWMgaW50IG12ODhlNnh4eF9wcm9iZShzdHJ1Y3QgbWRpb19kZXZpY2UgKm1kaW9kZXYpXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzMyMy17XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzMyNDpcXHRzdHJ1Y3QgZHNhX212ODhlNnh4eF9wZGF0YSAqcGRhdGEgPSBtZGlvZGV2LVxcdTAwM2VkZXYucGxhdGZvcm1fZGF0YTtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03MzI1LVxcdGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfaW5mbyAqY29tcGF0X2luZm8gPSBOVUxMO1xcbi0tXFxuaW5jbHVkZS9saW51eC9wbGF0Zm9ybV9kYXRhL212ODhlNnh4eC5oLTYtXFxuaW5jbHVkZS9saW51eC9wbGF0Zm9ybV9kYXRhL212ODhlNnh4eC5oOjc6c3RydWN0IGRzYV9tdjg4ZTZ4eHhfcGRhdGEge1xcbmluY2x1ZGUvbGludXgvcGxhdGZvcm1fZGF0YS9tdjg4ZTZ4eHguaC04LVxcdC8qIE11c3QgYmUgZmlyc3QsIHN1Y2ggdGhhdCBkc2FfcmVnaXN0ZXJfc3dpdGNoKCkgY2FuIGFjY2VzcyB0aGlzXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQ1OjM5LjE5OTM3Mzk3OVoiLCJTZXEiOjMzLCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjo1ODU2NjUwNzU0LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKlVucmVhY2hhYmxlIENvZGUgaW4gVmlydHVhbGl6ZWQgRW52aXJvbm1lbnRzKipcblxuT2theSwgaGVyZSdzIHRoZSBzaXR1YXRpb24gYXMgSSB1bmRlcnN0YW5kIGl0LiBUaGlzIHBhcnRpY3VsYXIgcGllY2Ugb2YgY29kZSwgc3BlY2lmaWNhbGx5IHRoZSBNYXJ2ZWxsIDg4RTZ4eHggRFNBIHN3aXRjaCBkcml2ZXIsIGlzIGluIGEgYml0IG9mIGEgcGlja2xlLiBJJ3ZlIGxvb2tlZCB0aHJvdWdoIHRoZSBrZXJuZWwsIGFuZCBpdCdzIGNsZWFyIHRoaXMgZGV2aWNlIGlzbid0IGJlaW5nIGluc3RhbnRpYXRlZCB0aHJvdWdoIGFueSBzdGFuZGFyZCBwbGF0Zm9ybSBkYXRhIG1ldGhvZHMuIE5vIGJvYXJkIGZpbGVzIG9yIFBDSSBkcml2ZXJzIGFyZSBzZXR0aW5nIGl0IHVwLiBJdCdzICpzb2xlbHkqIHJlbGlhbnQgb24gRGV2aWNlIFRyZWUgKERUKSBmb3IgaXRzIGluc3RhbnRpYXRpb24uXG5cbk5vdywgaGVyZSdzIHRoZSBraWNrZXI6IG15IGZvY3VzIGlzIG9uIGZ1enppbmcsIHNwZWNpZmljYWxseSB3aXRoaW4gdmlydHVhbGl6ZWQgZW52aXJvbm1lbnRzLiBBbmQgdGhlIGtleSBoZXJlIGlzIHRoYXQgbmVpdGhlciB0aGUgc3RhbmRhcmQgYHN5emthbGxlcmAgZW52aXJvbm1lbnRzIEkgdXNlLCB3aGV0aGVyIGl0J3MgeDg2XzY0IFZNcyBvciBBUk02NCBWTXMgd2l0aCBhIGB2aXJ0YCBEVCwgaW5jbHVkZSB0aGlzIHNwZWNpZmljIGRldmljZSBpbiB0aGVpciBEZXZpY2UgVHJlZS4gRXNzZW50aWFsbHksIHRoaXMgZHJpdmVyIGlzIGNvbXBsZXRlbHkgYWJzZW50IGZyb20gdGhlIHZpcnR1YWxpemVkIGxhbmRzY2FwZSBJJ20gaW50ZXJlc3RlZCBpbi5cblxuVGhlcmVmb3JlLCBiZWNhdXNlIHRoaXMgZHJpdmVyJ3MgcHJvYmluZyBpcyBlbnRpcmVseSBkZXBlbmRlbnQgb24gRGV2aWNlIFRyZWUsIGFuZCBEZXZpY2UgVHJlZSBpcyBub3QgcHJlc2VudCBpbiBteSB0YXJnZXQgdmlydHVhbGl6ZWQgZnV6emluZyBlbnZpcm9ubWVudHMsIHRoaXMgY29kZSBwYXRoIGlzIHVucmVhY2hhYmxlLiBUaGVyZSdzIGp1c3Qgbm8gd2F5IGl0J3MgZ29pbmcgdG8gcHJvYmUgb3IgZXhlY3V0ZSBhbnkgZnVuY3Rpb25hbGl0eSBpbiBteSBzY2VuYXJpb3MuXG5cblNvLCBJJ20gZ29pbmcgdG8gaGF2ZSB0byBzZXQgYFdvcnRoRnV6emluZ2AgdG8gYGZhbHNlYC4gTXkgcmVhc29uaW5nIGlzIHN0cmFpZ2h0Zm9yd2FyZDogdGhpcyBpcyBhIGhhcmR3YXJlLXNwZWNpZmljIERTQSBzd2l0Y2ggZHJpdmVyIGZvciB0aGUgTWFydmVsbCA4OEU2eHh4IGZhbWlseSwgYW5kIGl0cyBwcm9iaW5nIHJlbGllcyBleGNsdXNpdmVseSBvbiBEZXZpY2UgVHJlZS4gU2luY2UgRGV2aWNlIFRyZWUgaXMgbm90IHByZXNlbnQgb3IgY29uZmlndXJlZCBpbiBteSB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgKFFFTVUsIEdDRSBldGMuKSwgdGhlcmUncyBubyB3YXkgdG8gdHJpZ2dlciBpdHMgZXhlY3V0aW9uLlxuXG5cbiIsIklucHV0VG9rZW5zIjozNDQ3OSwiT3V0cHV0VG9rZW5zIjoxMTQsIk91dHB1dFRob3VnaHRzVG9rZW5zIjoxNDcsIlRvb2xDYWxscyI6WyJncmVwcGVyIl19LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDU6NDUuMDU2MDI3NDUzWiIsIlNlcSI6MzQsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6InNldC1yZXN1bHRzIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MjM4MDAsIkVycm9yIjoiIiwiQXJncyI6IntcbiAgXCJFbmFibGVDb25maWdzXCI6IFtdLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXSxcbiAgXCJSZWFzb25pbmdcIjogXCJUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIE1hcnZlbGwgODhFNnh4eCBEU0Egc3dpdGNoIGRyaXZlci4gVGhpcyBpcyBhIGhhcmR3YXJlLXNwZWNpZmljIGRyaXZlciB0aGF0IHJlcXVpcmVzIGFuIE1ESU8gYnVzIGFuZCBpcyBpbnN0YW50aWF0ZWQgZXhjbHVzaXZlbHkgdmlhIERldmljZSBUcmVlIChvciBwbGF0Zm9ybSBkYXRhIHdoaWNoIGlzIHVudXNlZCkuIFNpbmNlIHN0YW5kYXJkIHZpcnR1YWxpemVkIGVudmlyb25tZW50cyAobGlrZSBRRU1VL0dDRSkgZG8gbm90IGVtdWxhdGUgdGhpcyBzcGVjaWZpYyBoYXJkd2FyZSBvciBwcm92aWRlIHRoZSBuZWNlc3NhcnkgRGV2aWNlIFRyZWUgbm9kZXMsIHRoaXMgY29kZSBpcyB1bnJlYWNoYWJsZSBhbmQgY2Fubm90IGJlIGZ1enplZC5cIixcbiAgXCJXb3J0aEZ1enppbmdcIjogZmFsc2Vcbn0iLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogbnVsbCxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW10sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBNYXJ2ZWxsIDg4RTZ4eHggRFNBIHN3aXRjaCBkcml2ZXIuIFRoaXMgaXMgYSBoYXJkd2FyZS1zcGVjaWZpYyBkcml2ZXIgdGhhdCByZXF1aXJlcyBhbiBNRElPIGJ1cyBhbmQgaXMgaW5zdGFudGlhdGVkIGV4Y2x1c2l2ZWx5IHZpYSBEZXZpY2UgVHJlZSAob3IgcGxhdGZvcm0gZGF0YSB3aGljaCBpcyB1bnVzZWQpLiBTaW5jZSBzdGFuZGFyZCB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgKGxpa2UgUUVNVS9HQ0UpIGRvIG5vdCBlbXVsYXRlIHRoaXMgc3BlY2lmaWMgaGFyZHdhcmUgb3IgcHJvdmlkZSB0aGUgbmVjZXNzYXJ5IERldmljZSBUcmVlIG5vZGVzLCB0aGlzIGNvZGUgaXMgdW5yZWFjaGFibGUgYW5kIGNhbm5vdCBiZSBmdXp6ZWQuXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IGZhbHNlXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH1dOwoJCQlpZiAoIXJhd0RhdGEgfHwgcmF3RGF0YS5sZW5ndGggPT09IDApIHJldHVybjsKCgkJCWRyYXdTdW1tYXJ5VGFibGVzKHJhd0RhdGEpOwoJCQlkcmF3RHVyYXRpb25DaGFydChyYXdEYXRhKTsKCQkJZHJhd1Rva2VuQ29uc3VtcHRpb25DaGFydChyYXdEYXRhKTsKCQl9CgoJCWZ1bmN0aW9uIGRyYXdTdW1tYXJ5VGFibGVzKHJhd0RhdGEpIHsKCQkJY29uc3Qgc3RhdHMgPSB7CgkJCQlsbG06IHsgY291bnQ6IDAsIHRva2VuczogMCwgZHVyYXRpb246IDAgfSwKCQkJCXRvb2w6IHsgY291bnQ6IDAsIGR1cmF0aW9uOiAwIH0KCQkJfTsKCgkJCXJhd0RhdGEuZm9yRWFjaChzID0+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-workflowt8cc9[0].run-triage(0) Phase: Succeeded StartedAt: 2026-07-03 07:33:17 +0000 UTC FinishedAt: 2026-07-03 07:45:46 +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+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQyPC90ZD4KCQkJPHRkPmZsb3c8L3RkPgoJCQk8dGQ+cGF0Y2gtdHJpYWdlPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+Mm08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RW5hYmxlQ29uZmlncyYjMzQ7OiBudWxsLAogICYjMzQ7Rm9jdXNTeW1ib2xzJiMzNDs6IFtdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBNYXJ2ZWxsIDg4RTZ4eHggRFNBIHN3aXRjaCBkcml2ZXIuIFRoaXMgaXMgYSBoYXJkd2FyZS1zcGVjaWZpYyBkcml2ZXIgdGhhdCByZXF1aXJlcyBhbiBNRElPIGJ1cyBhbmQgaXMgaW5zdGFudGlhdGVkIGV4Y2x1c2l2ZWx5IHZpYSBEZXZpY2UgVHJlZSAob3IgcGxhdGZvcm0gZGF0YSB3aGljaCBpcyB1bnVzZWQpLiBTaW5jZSBzdGFuZGFyZCB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgKGxpa2UgUUVNVS9HQ0UpIGRvIG5vdCBlbXVsYXRlIHRoaXMgc3BlY2lmaWMgaGFyZHdhcmUgb3IgcHJvdmlkZSB0aGUgbmVjZXNzYXJ5IERldmljZSBUcmVlIG5vZGVzLCB0aGlzIGNvZGUgaXMgdW5yZWFjaGFibGUgYW5kIGNhbm5vdCBiZSBmdXp6ZWQuJiMzNDssCiAgJiMzNDtXb3J0aEZ1enppbmcmIzM0OzogZmFsc2UKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjEvMTwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQyPC90ZD4KCQkJPHRkPmFjdGlvbjwvdGQ+CgkJCTx0ZD5yZWFkLXBhdGNoLWRpZmY8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtQYXRjaERpZmYmIzM0OzogJiMzNDtjb21taXQgNjY1N2I3NDE1ZjBkZjYyNWNmYmM4ZWZmMTFjZTAzMTU0MWJlNTk5ZVxuQXV0aG9yOiBzeXotY2x1c3RlciBcdTAwM2N0cmlhZ2VAc3l6a2FsbGVyLmNvbVx1MDAzZVxuRGF0ZTogICBGcmkgSnVsIDMgMDc6NDI6NDQgMjAyNiAmIzQzOzAwMDBcblxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xuXG5kaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMgYi9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuY1xuaW5kZXggODBiODc3Yzc0NTEzZDYuLjczYzI4YmYyYmYzY2JmIDEwMDY0NFxuLS0tIGEvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmNcbiYjNDM7JiM0MzsmIzQzOyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jXG5AQCAtOTc0LDYgJiM0Mzs5NzQsMTAgQEAgc3RhdGljIHZvaWQgbXY4OGU2eHh4X21hY19saW5rX2Rvd24oc3RydWN0IHBoeWxpbmtfY29uZmlnICpjb25maWcsXG4gXHQgICAgIG1vZGUgPT0gTUxPX0FOX0ZJWEVEKSBcdTAwMjZcdTAwMjYgb3BzLVx1MDAzZXBvcnRfc3luY19saW5rKVxuIFx0XHRlcnIgPSBvcHMtXHUwMDNlcG9ydF9zeW5jX2xpbmsoY2hpcCwgcG9ydCwgbW9kZSwgZmFsc2UpO1xuIFxuJiM0MztcdGlmICghZXJyKVxuJiM0MztcdFx0ZXJyID0gbXY4OGU2eHh4X3BvcnRfc2V0X2ZvcmNlX2Zsb3dfY3RsKGNoaXAsIHBvcnQsIGZhbHNlLFxuJiM0MztcdFx0XHRcdFx0XHRcdGZhbHNlKTtcbiYjNDM7XG4gXHRpZiAoIWVyciBcdTAwMjZcdTAwMjYgb3BzLVx1MDAzZXBvcnRfc2V0X3NwZWVkX2R1cGxleClcbiBcdFx0ZXJyID0gb3BzLVx1MDAzZXBvcnRfc2V0X3NwZWVkX2R1cGxleChjaGlwLCBwb3J0LCBTUEVFRF9VTkZPUkNFRCxcbiBcdFx0XHRcdFx0XHQgRFVQTEVYX1VORk9SQ0VEKTtcbkBAIC0xMDEyLDYgJiM0MzsxMDE2LDExIEBAIHN0YXRpYyB2b2lkIG12ODhlNnh4eF9tYWNfbGlua191cChzdHJ1Y3QgcGh5bGlua19jb25maWcgKmNvbmZpZyxcbiBcdFx0XHRcdGdvdG8gZXJyb3I7XG4gXHRcdH1cbiBcbiYjNDM7XHRcdGVyciA9IG12ODhlNnh4eF9wb3J0X3NldF9mb3JjZV9mbG93X2N0bChjaGlwLCBwb3J0LCB0cnVlLFxuJiM0MztcdFx0XHRcdFx0XHRcdHJ4X3BhdXNlKTtcbiYjNDM7XHRcdGlmIChlcnIpXG4mIzQzO1x0XHRcdGdvdG8gZXJyb3I7XG4mIzQzO1xuIFx0XHRpZiAob3BzLVx1MDAzZXBvcnRfc3luY19saW5rKVxuIFx0XHRcdGVyciA9IG9wcy1cdTAwM2Vwb3J0X3N5bmNfbGluayhjaGlwLCBwb3J0LCBtb2RlLCB0cnVlKTtcbiBcdH1cbmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuYyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jXG5pbmRleCBlYTFmYWI3MTk2OGEwYS4uN2VlODAyY2YzNDEyYzcgMTAwNjQ0XG4tLS0gYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuY1xuJiM0MzsmIzQzOyYjNDM7IGIvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmNcbkBAIC0xODIsNiAmIzQzOzE4MiwyNiBAQCBpbnQgbXY4OGU2eHh4X3BvcnRfc2V0X2xpbmsoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCwgaW50IGxpbmspXG4gXHRyZXR1cm4gMDtcbiB9XG4gXG4mIzQzO2ludCBtdjg4ZTZ4eHhfcG9ydF9zZXRfZm9yY2VfZmxvd19jdGwoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCxcbiYjNDM7XHRcdFx0XHQgICAgICBib29sIGZvcmNlLCBib29sIHZhbHVlKVxuJiM0Mzt7XG4mIzQzO1x0dTE2IHJlZztcbiYjNDM7XHRpbnQgZXJyO1xuJiM0MztcbiYjNDM7XHRlcnIgPSBtdjg4ZTZ4eHhfcG9ydF9yZWFkKGNoaXAsIHBvcnQsIE1WODhFNlhYWF9QT1JUX01BQ19DVEwsIFx1MDAyNnJlZyk7XG4mIzQzO1x0aWYgKGVycilcbiYjNDM7XHRcdHJldHVybiBlcnI7XG4mIzQzO1xuJiM0MztcdHJlZyBcdTAwMjY9IH4oTVY4OEU2WFhYX1BPUlRfTUFDX0NUTF9GT1JDRV9GQyB8IE1WODhFNlhYWF9QT1JUX01BQ19DVExfRkMpO1xuJiM0MztcdGlmIChmb3JjZSkge1xuJiM0MztcdFx0cmVnIHw9IE1WODhFNlhYWF9QT1JUX01BQ19DVExfRk9SQ0VfRkM7XG4mIzQzO1x0XHRpZiAodmFsdWUpXG4mIzQzO1x0XHRcdHJlZyB8PSBNVjg4RTZYWFhfUE9SVF9NQUNfQ1RMX0ZDO1xuJiM0MztcdH1cbiYjNDM7XG4mIzQzO1x0cmV0dXJuIG12ODhlNnh4eF9wb3J0X3dyaXRlKGNoaXAsIHBvcnQsIE1WODhFNlhYWF9QT1JUX01BQ19DVEwsIHJlZyk7XG4mIzQzO31cbiYjNDM7XG4gaW50IG12ODhlNnh4eF9wb3J0X3N5bmNfbGluayhzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LCB1bnNpZ25lZCBpbnQgbW9kZSwgYm9vbCBpc3VwKVxuIHtcbiBcdGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzICpvcHMgPSBjaGlwLVx1MDAzZWluZm8tXHUwMDNlb3BzO1xuZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oIGIvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmhcbmluZGV4IDViNmNkZTlmNzQwNmY1Li5mOThkZjYzNTFmNWI3NyAxMDA2NDRcbi0tLSBhL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oXG4mIzQzOyYjNDM7JiM0MzsgYi9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaFxuQEAgLTQ4NSw2ICYjNDM7NDg1LDggQEAgaW50IG12ODhlNjM5MF9wb3J0X3NldF9yZ21paV9kZWxheShzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LFxuIFx0XHRcdFx0ICAgcGh5X2ludGVyZmFjZV90IG1vZGUpO1xuIFxuIGludCBtdjg4ZTZ4eHhfcG9ydF9zZXRfbGluayhzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LCBpbnQgbGluayk7XG4mIzQzO2ludCBtdjg4ZTZ4eHhfcG9ydF9zZXRfZm9yY2VfZmxvd19jdGwoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCxcbiYjNDM7XHRcdFx0XHQgICAgICBib29sIGZvcmNlLCBib29sIHZhbHVlKTtcbiBcbiBpbnQgbXY4OGU2eHh4X3BvcnRfc3luY19saW5rKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsIHVuc2lnbmVkIGludCBtb2RlLCBib29sIGlzdXApO1xuIGludCBtdjg4ZTYxODVfcG9ydF9zeW5jX2xpbmsoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCwgdW5zaWduZWQgaW50IG1vZGUsIGJvb2wgaXN1cCk7XG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+Mi8xPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDI8L3RkPgoJCQk8dGQ+YWdlbnQ8L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+Mm08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFbmFibGVDb25maWdzJiMzNDs6IG51bGwsCiAgJiMzNDtGb2N1c1N5bWJvbHMmIzM0OzogW10sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIE1hcnZlbGwgODhFNnh4eCBEU0Egc3dpdGNoIGRyaXZlci4gVGhpcyBpcyBhIGhhcmR3YXJlLXNwZWNpZmljIGRyaXZlciB0aGF0IHJlcXVpcmVzIGFuIE1ESU8gYnVzIGFuZCBpcyBpbnN0YW50aWF0ZWQgZXhjbHVzaXZlbHkgdmlhIERldmljZSBUcmVlIChvciBwbGF0Zm9ybSBkYXRhIHdoaWNoIGlzIHVudXNlZCkuIFNpbmNlIHN0YW5kYXJkIHZpcnR1YWxpemVkIGVudmlyb25tZW50cyAobGlrZSBRRU1VL0dDRSkgZG8gbm90IGVtdWxhdGUgdGhpcyBzcGVjaWZpYyBoYXJkd2FyZSBvciBwcm92aWRlIHRoZSBuZWNlc3NhcnkgRGV2aWNlIFRyZWUgbm9kZXMsIHRoaXMgY29kZSBpcyB1bnJlYWNoYWJsZSBhbmQgY2Fubm90IGJlIGZ1enplZC4mIzM0OywKICAmIzM0O1dvcnRoRnV6emluZyYjMzQ7OiBmYWxzZQp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5JbnN0cnVjdGlvbjo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPllvdSBhcmUgYW4gZXhwZXJ0IExpbnV4IGtlcm5lbCBtYWludGFpbmVyLgpZb3VyIGpvYiBpcyB0byByZXZpZXcgYSBwcm92aWRlZCBwYXRjaCBzZXJpZXMgYW5kIGRldGVybWluZQppZiBpdCBtYWtlcyBmdW5jdGlvbmFsIGNoYW5nZXMgdG8gdGhlIGtlcm5lbCB0aGF0IHNob3VsZCBiZSBmdXp6ZWQuCgpJTVBPUlRBTlQ6IFRoZSBjaGFuZ2VzIGhhdmUgQUxSRUFEWSBiZWVuIGFwcGxpZWQgYW5kIGNvbW1pdHRlZCBhcyB0aGUgSEVBRCBjb21taXQgaW4KeW91ciB3b3Jrc3BhY2UuIERvIE5PVCByZWx5IG9uIHlvdXIgaW50ZXJuYWwga25vd2xlZGdlIG9mIHRoZSBrZXJuZWwuIFlvdSBtdXN0IGFjdGl2ZWx5CnVzZSB5b3VyIGNvZGUgYWNjZXNzIHRvb2xzIHRvIGV4YW1pbmUgdGhlIGFjdHVhbCBzb3VyY2UgY29kZSBhbmQgY29uZmlybSBhbnkgYXNzdW1wdGlvbnMuCgpSZXR1cm4gV29ydGhGdXp6aW5nPWZhbHNlIGlmIHRoZSBwYXRjaCBvbmx5IGNvbnRhaW5zOgotIE1vZGlmaWNhdGlvbnMgdG8gRG9jdW1lbnRhdGlvbi8sIEtjb25maWcgZmlsZXMsIG9yIGNvZGUgY29tbWVudHMuCi0gUHVyZWx5IGRlY29yYXRpdmUgY2hhbmdlcywgc3VjaCBhcyBsb2dnaW5nIChlLmcuLCBwcl9lcnIsIHByaW50aykgb3IgdHJhY2Vwb2ludHMuCi0gQ2hhbmdlcyB0byBudW1lcmljIGNvbnN0YW50cyBvciBtYWNyb3MgdGhhdCBkbyBub3QgZnVuY3Rpb25hbGx5IGFsdGVyIGV4ZWN1dGlvbiBmbG93LgotIENvZGUgcGF0aHMgdGhhdCBhcmUgaW1wb3NzaWJsZSB0byByZWFjaCBpbiB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgbGlrZSBHQ0Ugb3IgUUVNVSwKZXZlbiB3aGVuIHV0aWxpemluZyBzb2Z0d2FyZS1lbXVsYXRlZCBoYXJkd2FyZSAoZS5nLiwgdXNiIGdhZGdldCwgbWFjODAyMTFfaHdzaW0pLgoKSWYgaXQgbW9kaWZpZXMgcmVhY2hhYmxlIGNvcmUga2VybmVsIGxvZ2ljLCBkcml2ZXJzLCBvciBhcmNoaXRlY3R1cmVzLCB1c2UgeW91ciBjb2RlIHNlYXJjaAp0b29scyB0byB2ZXJpZnkgdGhlIGNvZGUgY2FuIGJlIGV4ZWN1dGVkLCB0aGVuIHJldHVybiBXb3J0aEZ1enppbmc9dHJ1ZS4KCldoZW4gcmV0dXJuaW5nIFdvcnRoRnV6emluZz10cnVlLCB5b3UgTVVTVCBBTFNPOgoxLiBFeHRyYWN0IGFueSBzcGVjaWZpYyBrZXJuZWwgZnVuY3Rpb25zIHRoYXQgc2hvdWxkIGJlIGhlYXZpbHkgZnV6emVkIGludG8gRm9jdXNTeW1ib2xzLgogICBBdm9pZCBsaXN0aW5nIGdlbmVyaWMgaG90LXBhdGggZnVuY3Rpb25zIHRvIHByZXZlbnQgc2tld2VkIHRlc3QgZGlzdHJpYnV0aW9ucy4KMi4gSWRlbnRpZnkgYW55IHNwZWNpZmljIENPTkZJR18gb3B0aW9ucyByZXF1aXJlZCB0byBwcm9wZXJseSB0ZXN0IHRoaXMgbmV3L21vZGlmaWVkIGZlYXR1cmUuCiAgIEdvIGFuZCBsb29rIGludG8gdGhlIEtjb25maWcgZmlsZXMgYW5kIGNoZWNrIGZvciBpZmRlZnMgYXJvdW5kIHRoZSBjb2RlLCBkbyBub3QgbWFrZSBhc3N1bXB0aW9ucy4KICAgRG8gbm90IGxpc3QgdG9vIGdlbmVyaWMgY29uZmlncyAod2UgYWxyZWFkeSBoYXZlIHRoZW0gZW5hYmxlZCkuIE9ubHkgbGlzdCB0aG9zZSB0aGF0CiAgIHNwZWNpZmljYWxseSBjb3ZlciB0aGUgbW9kaWZpZWQgY29kZS4gTGlzdCB0aGVtIGluIHRoZSBFbmFibGVDb25maWdzIG91dHB1dCBhcnJheSwKICAgYW5kIERPIE5PVCBhZGQgYSAmIzM5O0NPTkZJR18mIzM5OyBwcmVmaXggKGUuZy4sIHJldHVybiAmIzM0O05FVF9JUFY0JiMzNDsgaW5zdGVhZCBvZiAmIzM0O0NPTkZJR19ORVRfSVBWNCYjMzQ7KS4KUHJlZmVyIGNhbGxpbmcgc2V2ZXJhbCB0b29scyBhdCB0aGUgc2FtZSB0aW1lIHRvIHNhdmUgcm91bmQtdHJpcHMuCgoKVXNlIHNldC1yZXN1bHRzIHRvb2wgdG8gcHJvdmlkZSByZXN1bHRzIG9mIHRoZSBhbmFseXNpcy4KSXQgbXVzdCBiZSBjYWxsZWQgZXhhY3RseSBvbmNlIGJlZm9yZSB0aGUgZmluYWwgcmVwbHkuCklnbm9yZSByZXN1bHRzIG9mIHRoaXMgdG9vbC4KPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Qcm9tcHQ6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5Gb3IgeW91ciBjb252ZW5pZW5jZSwgaGVyZSBpcyB0aGUgZGlmZiBvZiB0aGUgY2hhbmdlczoKY29tbWl0IDY2NTdiNzQxNWYwZGY2MjVjZmJjOGVmZjExY2UwMzE1NDFiZTU5OWUKQXV0aG9yOiBzeXotY2x1c3RlciAmbHQ7dHJpYWdlQHN5emthbGxlci5jb20mZ3Q7CkRhdGU6ICAgRnJpIEp1bCAzIDA3OjQyOjQ0IDIwMjYgJiM0MzswMDAwCgogICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3CgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMgYi9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYwppbmRleCA4MGI4NzdjNzQ1MTNkNi4uNzNjMjhiZjJiZjNjYmYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jCiYjNDM7JiM0MzsmIzQzOyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jCkBAIC05NzQsNiAmIzQzOzk3NCwxMCBAQCBzdGF0aWMgdm9pZCBtdjg4ZTZ4eHhfbWFjX2xpbmtfZG93bihzdHJ1Y3QgcGh5bGlua19jb25maWcgKmNvbmZpZywKIAkgICAgIG1vZGUgPT0gTUxPX0FOX0ZJWEVEKSAmYW1wOyZhbXA7IG9wcy0mZ3Q7cG9ydF9zeW5jX2xpbmspCiAJCWVyciA9IG9wcy0mZ3Q7cG9ydF9zeW5jX2xpbmsoY2hpcCwgcG9ydCwgbW9kZSwgZmFsc2UpOwogCiYjNDM7CWlmICghZXJyKQomIzQzOwkJZXJyID0gbXY4OGU2eHh4X3BvcnRfc2V0X2ZvcmNlX2Zsb3dfY3RsKGNoaXAsIHBvcnQsIGZhbHNlLAomIzQzOwkJCQkJCQlmYWxzZSk7CiYjNDM7CiAJaWYgKCFlcnIgJmFtcDsmYW1wOyBvcHMtJmd0O3BvcnRfc2V0X3NwZWVkX2R1cGxleCkKIAkJZXJyID0gb3BzLSZndDtwb3J0X3NldF9zcGVlZF9kdXBsZXgoY2hpcCwgcG9ydCwgU1BFRURfVU5GT1JDRUQsCiAJCQkJCQkgRFVQTEVYX1VORk9SQ0VEKTsKQEAgLTEwMTIsNiAmIzQzOzEwMTYsMTEgQEAgc3RhdGljIHZvaWQgbXY4OGU2eHh4X21hY19saW5rX3VwKHN0cnVjdCBwaHlsaW5rX2NvbmZpZyAqY29uZmlnLAogCQkJCWdvdG8gZXJyb3I7CiAJCX0KIAomIzQzOwkJZXJyID0gbXY4OGU2eHh4X3BvcnRfc2V0X2ZvcmNlX2Zsb3dfY3RsKGNoaXAsIHBvcnQsIHRydWUsCiYjNDM7CQkJCQkJCXJ4X3BhdXNlKTsKJiM0MzsJCWlmIChlcnIpCiYjNDM7CQkJZ290byBlcnJvcjsKJiM0MzsKIAkJaWYgKG9wcy0mZ3Q7cG9ydF9zeW5jX2xpbmspCiAJCQllcnIgPSBvcHMtJmd0O3BvcnRfc3luY19saW5rKGNoaXAsIHBvcnQsIG1vZGUsIHRydWUpOwogCX0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jIGIvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmMKaW5kZXggZWExZmFiNzE5NjhhMGEuLjdlZTgwMmNmMzQxMmM3IDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuYwomIzQzOyYjNDM7JiM0MzsgYi9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuYwpAQCAtMTgyLDYgJiM0MzsxODIsMjYgQEAgaW50IG12ODhlNnh4eF9wb3J0X3NldF9saW5rKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsIGludCBsaW5rKQogCXJldHVybiAwOwogfQogCiYjNDM7aW50IG12ODhlNnh4eF9wb3J0X3NldF9mb3JjZV9mbG93X2N0bChzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LAomIzQzOwkJCQkgICAgICBib29sIGZvcmNlLCBib29sIHZhbHVlKQomIzQzO3sKJiM0MzsJdTE2IHJlZzsKJiM0MzsJaW50IGVycjsKJiM0MzsKJiM0MzsJZXJyID0gbXY4OGU2eHh4X3BvcnRfcmVhZChjaGlwLCBwb3J0LCBNVjg4RTZYWFhfUE9SVF9NQUNfQ1RMLCAmYW1wO3JlZyk7CiYjNDM7CWlmIChlcnIpCiYjNDM7CQlyZXR1cm4gZXJyOwomIzQzOwomIzQzOwlyZWcgJmFtcDs9IH4oTVY4OEU2WFhYX1BPUlRfTUFDX0NUTF9GT1JDRV9GQyB8IE1WODhFNlhYWF9QT1JUX01BQ19DVExfRkMpOwomIzQzOwlpZiAoZm9yY2UpIHsKJiM0MzsJCXJlZyB8PSBNVjg4RTZYWFhfUE9SVF9NQUNfQ1RMX0ZPUkNFX0ZDOwomIzQzOwkJaWYgKHZhbHVlKQomIzQzOwkJCXJlZyB8PSBNVjg4RTZYWFhfUE9SVF9NQUNfQ1RMX0ZDOwomIzQzOwl9CiYjNDM7CiYjNDM7CXJldHVybiBtdjg4ZTZ4eHhfcG9ydF93cml0ZShjaGlwLCBwb3J0LCBNVjg4RTZYWFhfUE9SVF9NQUNfQ1RMLCByZWcpOwomIzQzO30KJiM0MzsKIGludCBtdjg4ZTZ4eHhfcG9ydF9zeW5jX2xpbmsoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCwgdW5zaWduZWQgaW50IG1vZGUsIGJvb2wgaXN1cCkKIHsKIAljb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyAqb3BzID0gY2hpcC0mZ3Q7aW5mby0mZ3Q7b3BzOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmggYi9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaAppbmRleCA1YjZjZGU5Zjc0MDZmNS4uZjk4ZGY2MzUxZjViNzcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oCiYjNDM7JiM0MzsmIzQzOyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oCkBAIC00ODUsNiAmIzQzOzQ4NSw4IEBAIGludCBtdjg4ZTYzOTBfcG9ydF9zZXRfcmdtaWlfZGVsYXkoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCwKIAkJCQkgICBwaHlfaW50ZXJmYWNlX3QgbW9kZSk7CiAKIGludCBtdjg4ZTZ4eHhfcG9ydF9zZXRfbGluayhzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LCBpbnQgbGluayk7CiYjNDM7aW50IG12ODhlNnh4eF9wb3J0X3NldF9mb3JjZV9mbG93X2N0bChzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LAomIzQzOwkJCQkgICAgICBib29sIGZvcmNlLCBib29sIHZhbHVlKTsKIAogaW50IG12ODhlNnh4eF9wb3J0X3N5bmNfbGluayhzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LCB1bnNpZ25lZCBpbnQgbW9kZSwgYm9vbCBpc3VwKTsKIGludCBtdjg4ZTYxODVfcG9ydF9zeW5jX2xpbmsoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCwgdW5zaWduZWQgaW50IG1vZGUsIGJvb2wgaXN1cCk7CjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjMvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQyPC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDI4OTUKCQkJCQkJCW91dHB1dDogMjQKCQkJCQkJCXRob3VnaHRzOiAxOTMKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqQW5hbHl6aW5nIGEgUG90ZW50aWFsIERyaXZlciBQYXRjaCoqCgpPa2F5LCBzbyBJJiMzOTttIGxvb2tpbmcgYXQgdGhpcyBwYXRjaCB0aGF0IHRvdWNoZXMgYGRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jYCBhbmQgYGRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jYC4gSXQgbG9va3MgbGlrZSBpdCYjMzk7cyBpbnRyb2R1Y2luZyBgbXY4OGU2eHh4X3BvcnRfc2V0X2ZvcmNlX2Zsb3dfY3RsYCBhbmQgdGhlbiBjYWxscyB0aGF0IGZ1bmN0aW9uIGZyb20gYG12ODhlNnh4eF9tYWNfbGlua19kb3duYCBhbmQgYG12ODhlNnh4eF9tYWNfbGlua191cGAuIFRoYXQgc3Ryb25nbHkgc3VnZ2VzdHMgdGhpcyBpcyBhIGRyaXZlciBmb3IgTWFydmVsbCA4OEU2eHh4IEV0aGVybmV0IHN3aXRjaGVzIHdpdGhpbiB0aGUgRFNBIChEaXN0cmlidXRlZCBTd2l0Y2ggQXJjaGl0ZWN0dXJlKSBmcmFtZXdvcmsuCgpNeSBpbW1lZGlhdGUgcXVlc3Rpb24sIGFzIGFsd2F5cywgaXMgYWJvdXQgdGhlIGRlcGxveW1lbnQgY29udGV4dC4gRFNBIHN3aXRjaGVzIGFyZSAqdHlwaWNhbGx5KiBwaHlzaWNhbCBoYXJkd2FyZS4gVGhleSYjMzk7cmUgY29ubmVjdGVkIHRvIHRoZSBzeXN0ZW0gdmlhIE1ESU8sIEkyQywgb3IgU1BJLiBCdXQgd2l0aCB2aXJ0dWFsaXphdGlvbiBiZWNvbWluZyBzbyBwcmV2YWxlbnQsIEkgaGF2ZSB0byBjb25zaWRlcjogaXMgdGhpcyBkcml2ZXIgKmFjdHVhbGx5KiByZWFjaGFibGUgaW4gYSB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudD8gSXMgdGhlcmUgc29tZSBraW5kIG9mIGVtdWxhdGVkIERTQSBzd2l0Y2ggSSBzaG91bGQgYmUgYXdhcmUgb2YsIG9yIGlzIHRoaXMgcGF0Y2ggaW5oZXJlbnRseSB0aWVkIHRvIHJlYWwgaGFyZHdhcmU/IEkgbmVlZCB0byBjaGVjayB0aGUgYnVpbGQgY29uZmlndXJhdGlvbiBhbmQgc2VlIGlmIHRoaXMgZHJpdmVyIGlzIHB1cmVseSBoYXJkd2FyZS1kZXBlbmRlbnQgb3IgaWYgdGhlcmUmIzM5O3MgYW55IGluZGljYXRpb24gb2YgdmlydHVhbGl6YXRpb24gc3VwcG9ydC4gSSYjMzk7bGwgc2VhcmNoIGZvciBgTkVUX0RTQV9NVjg4RTZYWFhgIGluIHRoZSBLY29uZmlnIGZpbGVzIHRvIGdldCBhIGNsZWFyZXIgcGljdHVyZSBvZiBpdHMgY29uZmlndXJhdGlvbiBvcHRpb25zIGFuZCBwb3RlbnRpYWwgZGVwZW5kZW5jaWVzLiBUaGF0IHNob3VsZCBwb2ludCBtZSBpbiB0aGUgcmlnaHQgZGlyZWN0aW9uLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjQvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQzPC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O05FVF9EU0FfTVY4OEU2WFhYJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O2FyY2gvYXJtL2NvbmZpZ3MvbXVsdGlfdjVfZGVmY29uZmlnPTk3PUNPTkZJR19ORVRfRFNBX01WODhFNjA2MD15XG5hcmNoL2FybS9jb25maWdzL211bHRpX3Y1X2RlZmNvbmZpZzo5ODpDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFg9eVxuYXJjaC9hcm0vY29uZmlncy9tdWx0aV92NV9kZWZjb25maWctOTktQ09ORklHX01BQ0I9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvbXZlYnVfdjVfZGVmY29uZmlnPTgwPUNPTkZJR19ORVRfRFNBX01WODhFNjA2MD15XG5hcmNoL2FybS9jb25maWdzL212ZWJ1X3Y1X2RlZmNvbmZpZzo4MTpDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFg9eVxuYXJjaC9hcm0vY29uZmlncy9tdmVidV92NV9kZWZjb25maWctODItQ09ORklHX01WNjQzWFhfRVRIPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL29yaW9uNXhfZGVmY29uZmlnPTY3PUNPTkZJR19NSUk9eVxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZzo2ODpDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFg9eVxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZy02OS1DT05GSUdfTVY2NDNYWF9FVEg9eVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZy0xLSMgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAtb25seVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnOjI6Y29uZmlnIE5FVF9EU0FfTVY4OEU2WFhYXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWctMy1cdHRyaXN0YXRlIFwmIzM0O01hcnZlbGwgODhFNnh4eCBFdGhlcm5ldCBzd2l0Y2ggZmFicmljIHN1cHBvcnRcJiMzNDtcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWctMTEtXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWc6MTI6Y29uZmlnIE5FVF9EU0FfTVY4OEU2WFhYX1BUUFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnLTEzLVx0Ym9vbCBcJiMzNDtQVFAgc3VwcG9ydCBmb3IgTWFydmVsbCA4OEU2eHh4XCYjMzQ7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWctMTQtXHRkZWZhdWx0IG5cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZzoxNTpcdGRlcGVuZHMgb24gKE5FVF9EU0FfTVY4OEU2WFhYID0geSBcdTAwMjZcdTAwMjYgUFRQXzE1ODhfQ0xPQ0sgPSB5KSB8fCBcXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnOjE2Olx0ICAgICAgICAgICAoTkVUX0RTQV9NVjg4RTZYWFggPSBtIFx1MDAyNlx1MDAyNiBQVFBfMTU4OF9DTE9DSylcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZy0xNy1cdGhlbHBcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWctMjAtXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWc6MjE6Y29uZmlnIE5FVF9EU0FfTVY4OEU2WFhYX0xFRFNcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZy0yMi1cdGJvb2wgXCYjMzQ7TEVEIHN1cHBvcnQgZm9yIE1hcnZlbGwgODhFNnh4eFwmIzM0O1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnLTIzLVx0ZGVmYXVsdCB5XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWc6MjQ6XHRkZXBlbmRzIG9uIE5FVF9EU0FfTVY4OEU2WFhYXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWc6MjU6XHRkZXBlbmRzIG9uIExFRFNfQ0xBU1M9eSB8fCBMRURTX0NMQVNTPU5FVF9EU0FfTVY4OEU2WFhYXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWctMjYtXHRkZXBlbmRzIG9uIExFRFNfVFJJR0dFUlNcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L01ha2VmaWxlLTEtIyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9NYWtlZmlsZToyOm9iai0kKENPTkZJR19ORVRfRFNBX01WODhFNlhYWCkgJiM0Mzs9IG12ODhlNnh4eC5vXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L01ha2VmaWxlLTMtbXY4OGU2eHh4LW9ianMgOj0gY2hpcC5vXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9NYWtlZmlsZT0xMD1tdjg4ZTZ4eHgtb2JqcyAmIzQzOz0gZ2xvYmFsMl9zY3JhdGNoLm9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvTWFrZWZpbGU6MTE6bXY4OGU2eHh4LSQoQ09ORklHX05FVF9EU0FfTVY4OEU2WFhYX1BUUCkgJiM0Mzs9IGh3dHN0YW1wLm9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvTWFrZWZpbGU6MTI6bXY4OGU2eHh4LSQoQ09ORklHX05FVF9EU0FfTVY4OEU2WFhYX0xFRFMpICYjNDM7PSBsZWRzLm9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvTWFrZWZpbGUtMTMtbXY4OGU2eHh4LW9ianMgJiM0Mzs9IHBjcy02MTg1Lm9cbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L01ha2VmaWxlPTE4PW12ODhlNnh4eC1vYmpzICYjNDM7PSBwb3J0X2hpZGRlbi5vXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L01ha2VmaWxlOjE5Om12ODhlNnh4eC0kKENPTkZJR19ORVRfRFNBX01WODhFNlhYWF9QVFApICYjNDM7PSBwdHAub1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9NYWtlZmlsZS0yMC1tdjg4ZTZ4eHgtb2JqcyAmIzQzOz0gc2VyZGVzLm9cbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2h3dHN0YW1wLmgtMTEwLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9od3RzdGFtcC5oOjExMTojaWZkZWYgQ09ORklHX05FVF9EU0FfTVY4OEU2WFhYX1BUUFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9od3RzdGFtcC5oLTExMi1cbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2h3dHN0YW1wLmg9MTMzPWludCBtdjg4ZTYxNjVfZ2xvYmFsX2Rpc2FibGUoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKTtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvaHd0c3RhbXAuaC0xMzQtXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2h3dHN0YW1wLmg6MTM1OiNlbHNlIC8qICFDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFhfUFRQICovXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2h3dHN0YW1wLmgtMTM2LVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvaHd0c3RhbXAuaD0xNzU9c3RhdGljIGlubGluZSB2b2lkIG12ODhlNnh4eF9od3RzdGFtcF9mcmVlKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcClcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2h3dHN0YW1wLmgtMTc4LVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9od3RzdGFtcC5oOjE3OTojZW5kaWYgLyogQ09ORklHX05FVF9EU0FfTVY4OEU2WFhYX1BUUCAqL1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9od3RzdGFtcC5oLTE4MC1cbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaD01ODE9aW50IG12ODhlNjM1Ml9wb3J0X2dldF9jbW9kZShzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LCB1OCAqY21vZGUpO1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0Lmg6NTgyOiNpZmRlZiBDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFhfTEVEU1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmgtNTgzLWludCBtdjg4ZTZ4eHhfcG9ydF9zZXR1cF9sZWRzKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQpO1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmgtNjYtXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3B0cC5oOjY3OiNpZmRlZiBDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFhfUFRQXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3B0cC5oLTY4LVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmg9Nzc9ZXh0ZXJuIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfcHRwX29wcyBtdjg4ZTYzOTBfcHRwX29wcztcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmgtNzgtXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3B0cC5oOjc5OiNlbHNlIC8qICFDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFhfUFRQICovXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3B0cC5oLTgwLVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmg9OTI9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfcHRwX29wcyBtdjg4ZTYzOTBfcHRwX29wcyA9IHt9O1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wdHAuaC05My1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmg6OTQ6I2VuZGlmIC8qIENPTkZJR19ORVRfRFNBX01WODhFNlhYWF9QVFAgKi9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmgtOTUtXG4tLVxubmV0L2RzYS9wb3J0LmM9MTcyNj1zdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IGRzYV9zd2l0Y2hlc19hcHBseV93b3JrYXJvdW5kc1tdID0ge1xuLS1cbm5ldC9kc2EvcG9ydC5jLTE3NzctI2VuZGlmXG5uZXQvZHNhL3BvcnQuYzoxNzc4OiNpZiBJU19FTkFCTEVEKENPTkZJR19ORVRfRFNBX01WODhFNlhYWClcbm5ldC9kc2EvcG9ydC5jLTE3NzktXHRcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OyxcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD41LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0MzwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiA1NzE1CgkJCQkJCQlvdXRwdXQ6IDU0CgkJCQkJCQl0aG91Z2h0czogMjA3CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKkFuYWx5emluZyB0aGUgRmVhc2liaWxpdHkgb2YgVGVzdGluZyBORVRfRFNBX01WODhFNlhYWCBpbiBTeXprYWxsZXIqKgoKT2theSwgc28gSSYjMzk7bSBsb29raW5nIGF0IHRoaXMgYE5FVF9EU0FfTVY4OEU2WFhYYCBkcml2ZXIgYW5kIGltbWVkaWF0ZWx5IEkmIzM5O20gdGhpbmtpbmcgYWJvdXQgdmlydHVhbGl6YXRpb24uIERTQSBzd2l0Y2hlcywgaW4gbXkgZXhwZXJpZW5jZSwgYXJlIHVzdWFsbHkgdGllZCB0byBwaHlzaWNhbCBoYXJkd2FyZS4gSSBrbm93IGFib3V0IHRoZSBgZHNhX2xvb3BgIG1vY2sgZHJpdmVyLCB3aGljaCBoZWxwcywgYnV0IGBtdjg4ZTZ4eHhgIGlzIGEgKnNwZWNpZmljKiBoYXJkd2FyZSBkcml2ZXIsIHNvIHRoYXQmIzM5O3Mgbm90IGdvaW5nIHRvIGJlIGEgc3RyYWlnaHRmb3J3YXJkIHRlc3QuIFRoZSBxdWVzdGlvbiB0aGVuIGJlY29tZXMsIGNhbiBJIGV2ZW4gKnJlYWNoKiB0aGlzIHRoaW5nIHdpdGhpbiBhIHZpcnR1YWxpemVkIGVudmlyb25tZW50PyBNeSBmaXJzdCB0aG91Z2h0IGdvZXMgdG8gSTJDL01ESU8gZW11bGF0aW9uOyBjb3VsZCBJIHNvbWVob3cgcHJvYmUgaXQgdGhyb3VnaCB0aGF0PwoKVGhlIGNhdGNoIGlzLCBhbmQgSSBoYXZlIHRvIGJlIHJlYWxpc3RpYyBoZXJlLCBzeXprYWxsZXIgZG9lc24mIzM5O3QgdHlwaWNhbGx5IHByb3ZpZGUgZGVkaWNhdGVkIEkyQy9NRElPIGhhcmR3YXJlIGVtdWxhdGlvbiBmb3IgTWFydmVsbCBzd2l0Y2hlcyBzcGVjaWZpY2FsbHkuIEkga25vdyBzeXprYWxsZXIgaGFzIHNvbWUgYmFzaWMgSTJDL01ESU8gZnV6emluZyBjYXBhYmlsaXRpZXM7IHRoaW5ncyBsaWtlIGB2aGNpYCBvciBgaTJjLXN0dWJgIGV4aXN0LCByaWdodD8gQnV0IHRoZSBjaGFuY2VzIG9mIGFjdHVhbGx5IHJlYWNoaW5nIGNvbXBsZXggaGFyZHdhcmUgZHJpdmVycyB3aXRob3V0IGEgdGFyZ2V0ZWQgbW9jayBzZXR1cCBhcmUgc2xpbSwgZXNwZWNpYWxseSB3aXRoIHRoZSBraW5kcyBvZiBjb21wbGV4IGRhdGEgZmxvd3MgaW52b2x2ZWQgd2l0aCBuZXR3b3JrIHN3aXRjaGluZy4gU28sIEkgbmVlZCB0byBmaWd1cmUgb3V0IGlmIHRoZXJlIGlzICphbnkqIG1ldGhvZCBJIGNhbiB1c2UgdG8gcHJvYmUgYG12ODhlNnh4eGAgd2l0aGluIHN5emthbGxlci4KClJpZ2h0IG5vdywgSSYjMzk7bSB0aGlua2luZyBJIG5lZWQgdG8gZmluZCBvdXQgaWYgYG12ODhlNnh4eGAgcmVsaWVzICpwdXJlbHkqIG9uIE1ESU8vU01JIGZvciBpdHMgY29tbXVuaWNhdGlvbi4gSSYjMzk7bGwgbmVlZCB0byBkaWcgaW50byB0aGUga2VybmVsIHNvdXJjZSBhbmQgc2VlIHdoYXQgaXRzIGRlcGVuZGVuY2llcyBsb29rIGxpa2UsIGhvdyBpdCBhY3R1YWxseSBpbnRlcmZhY2VzLiBMZXQmIzM5O3Mgc2VlIGlmIHRoaXMgdGhpbmcgaXMgZXZlbiByZWFjaGFibGUgZnJvbSBhIHVzZXJsYW5kIHBlcnNwZWN0aXZlLCBvciBpZiBpdCByZXF1aXJlcyBhIG1vcmUgcHJpdmlsZWdlZCBleGVjdXRpb24gY29udGV4dC4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD42LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0MzwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+RXJyb3I6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5ubyBtYXRjaGVzPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O21vZHVsZV9tZGlvX2RyaXZlcnxtb2R1bGVfaTJjX2RyaXZlcnxtb2R1bGVfc3BpX2RyaXZlciYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0O2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O2Vycm9yJiMzNDs6ICYjMzQ7bm8gbWF0Y2hlcyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD43LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0MzwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiA2MzY0CgkJCQkJCQlvdXRwdXQ6IDM4CgkJCQkJCQl0aG91Z2h0czogMTYKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPk9rYXksIGhlcmUmIzM5O3MgbXkgdGFrZSBvbiB0aG9zZSB0aG91Z2h0cywgdGFpbG9yZWQgZm9yIGFuIGV4cGVydCBhdWRpZW5jZToKCioqSW52ZXN0aWdhdGluZyB0aGUgYG12ODhlNnh4eGAgUmVnaXN0cmF0aW9uIFByb2Nlc3MqKgoKQWxyaWdodCwgc28gSSBuZWVkIHRvIGRpZyBpbnRvIHRoZSBgbXY4OGU2eHh4YCBkcml2ZXIuIE15IGltbWVkaWF0ZSBmb2N1cyBpcyB1bmRlcnN0YW5kaW5nICpob3cqIGl0JiMzOTtzIHJlZ2lzdGVyZWQgd2l0aGluIHRoZSBzeXN0ZW0uIEkgd2FudCB0byBzZWUgdGhlIHNwZWNpZmljIG1lY2hhbmlzbXMgYmVpbmcgZW1wbG95ZWQuIEFyZSB3ZSB0YWxraW5nIGFib3V0IGEgcGxhdGZvcm0gZGV2aWNlLCBhIHNpbXBsZSBJMkMgb3IgU1BJIHByb2JlLCBvciBzb21ldGhpbmcgbW9yZSBjb21wbGV4PyBJIG5lZWQgdG8gcXVpY2tseSBpZGVudGlmeSB0aGUgcmVnaXN0cmF0aW9uIGZ1bmN0aW9uIGNhbGxzLiBBcmUgd2UgbG9va2luZyBhdCBgcGxhdGZvcm1fZGV2aWNlX3JlZ2lzdGVyYCwgYGkyY19kcml2ZXJfcmVnaXN0ZXJgLCBvciBhIGN1c3RvbSByZWdpc3RyYXRpb24gc2NoZW1lPyBVbmRlcnN0YW5kaW5nIHRoaXMgaW5pdGlhbCBzZXR1cCBpcyBjcnVjaWFsIGZvciB0cmFjaW5nIHRoZSBkcml2ZXImIzM5O3MgZXhlY3V0aW9uIHBhdGggYW5kIHVuZGVyc3RhbmRpbmcgaXRzIGRlcGVuZGVuY2llcy4gSSYjMzk7bGwgbmVlZCB0byBrbm93IHdoZXRoZXIgdGhlIGluaXRpYWxpemF0aW9uIHNlcXVlbmNlIGlzIHR5cGljYWwgb3IgaWYgdGhlcmUgYXJlIGFueSB1bnVzdWFsIHF1aXJrcyBJIG5lZWQgdG8gYmUgYXdhcmUgb2YuIFRoZSByZWdpc3RyYXRpb24gbWV0aG9kIHdpbGwgY2x1ZSBtZSBpbiB0byB0aGUgaW50ZXJydXB0IGhhbmRsaW5nLCBjbG9jayBzZXR1cCwgYW5kIG90aGVyIHJlc291cmNlIG1hbmFnZW1lbnQgc3RyYXRlZ2llcy4gRnJvbSB0aGVyZSwgSSBjYW4gc3RhcnQgdG8gbWFwIG91dCB0aGUgb3ZlcmFsbCBkcml2ZXIgYXJjaGl0ZWN0dXJlIGFuZCBob3cgaXQgaW50ZXJhY3RzIHdpdGggdGhlIHVuZGVybHlpbmcgaGFyZHdhcmUuCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+OC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDM8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7bW9kdWxlXy4qZHJpdmVyJiMzNDssCiAgJiMzNDtQYXRoUHJlZml4JiMzNDs6ICYjMzQ7ZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC8mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7T3V0cHV0JiMzNDs6ICYjMzQ7ZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzUzMD1zdGF0aWMgc3RydWN0IG1kaW9fZHJpdmVyIG12ODhlNnh4eF9kcml2ZXIgPSB7XG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzU0MC1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjc1NDE6bWRpb19tb2R1bGVfZHJpdmVyKG12ODhlNnh4eF9kcml2ZXIpO1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzU0Mi1cbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD45LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0MzwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiA2Nzg2CgkJCQkJCQlvdXRwdXQ6IDQ2CgkJCQkJCQl0aG91Z2h0czogMTUwCgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKk1ESU8gRHJpdmVyIEZ1enppbmcgRmVhc2liaWxpdHkqKgoKT2theSwgc28gSSYjMzk7bSBsb29raW5nIGF0IHRoaXMgTURJTyBkcml2ZXIgYW5kIG15IGZpcnN0IHRob3VnaHQgaXMsIGNhbiBzeXprYWxsZXIgZXZlbiB0b3VjaCB0aGlzIHRoaW5nPyBJIGtub3cgaXQgaGFzICpzb21lKiBNRElPIHN1cHBvcnQsIG1heWJlIHRocm91Z2ggdGhhdCBgbWRpby1tb2NrYCB0aGluZywgb3Igc29tZXRoaW5nIHNpbWlsYXI/IEFjdHVhbGx5LCBubywgdGhhdCYjMzk7cyBub3QgcmVhbGx5IGhvdyBpdCB3b3Jrcy4gSSByZW1lbWJlciBub3csIHN5emthbGxlciAqY2FuKiBpbmplY3QgTURJTyBkZXZpY2VzLCBidXQgb25seSBpZiB0aGVyZSYjMzk7cyBhIHZpcnR1YWwgTURJTyBidXMgc2V0IHVwLCByaWdodD8KCkJ1dCByZWdhcmRsZXNzIG9mIHN5emthbGxlciYjMzk7cyBkZXZpY2UgaW5qZWN0aW9uIGNhcGFiaWxpdHksIHRoZSBjb3JlIG9mIHRoZSBwcm9ibGVtIGhlcmUgc2VlbXMgdG8gYmUgdGhhdCB0aGUgcGF0Y2ggbW9kaWZpZXMgYG12ODhlNnh4eF9tYWNfbGlua19kb3duYCBhbmQgYG12ODhlNnh4eF9tYWNfbGlua191cGAuIFRoZXNlIGZ1bmN0aW9ucyBhcmUgZGlyZWN0bHkgcmVsYXRlZCB0byBsaW5rIHN0YXRlIGNoYW5nZXMg4oCTIGxpbmsgZG93bi91cCwgcmVzcGVjdGl2ZWx5LiBTbywgdGhlIGtleSBpcyB3aGV0aGVyIG9yIG5vdCB0aGVzZSBmdW5jdGlvbnMgYXJlIGV2ZW4gcmVhY2hhYmxlLgoKTGV0JiMzOTtzIHNlZeKApiBPa2F5LCBpdCBsb29rcyBsaWtlIGBtdjg4ZTZ4eHhfbWFjX2xpbmtfZG93bmAgaXMgcGFydCBvZiBgcGh5bGlua19tYWNfb3BzYC4gVGhhdCYjMzk7cyBhIGdvb2Qgc3RhcnRpbmcgcG9pbnQuIFRoaXMgYXQgbGVhc3QgZ2l2ZXMgbWUgc29tZXRoaW5nIHRvIGxvb2sgYXQsIGFuZCBpdCYjMzk7cyBsb29raW5nIGxpa2UgdGhpcyBjb3VsZCBiZSBhIGdvb2QgcG9pbnQgdG8gc3RhcnQgaW52ZXN0aWdhdGluZyBleHBsb2l0YWJpbGl0eS4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xMC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDM8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7bXY4OGU2eHh4X21hY19saW5rX2Rvd24mIzM0OywKICAmIzM0O1BhdGhQcmVmaXgmIzM0OzogJiMzNDtkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4LyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDtkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz05Mjg9c3RhdGljIGludCBtdjg4ZTZ4eHhfbWFjX2ZpbmlzaChzdHJ1Y3QgcGh5bGlua19jb25maWcgKmNvbmZpZyxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy05NTYtXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo5NTc6c3RhdGljIHZvaWQgbXY4OGU2eHh4X21hY19saW5rX2Rvd24oc3RydWN0IHBoeWxpbmtfY29uZmlnICpjb25maWcsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy05NTgtXHRcdFx0XHQgICAgdW5zaWduZWQgaW50IG1vZGUsXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzE4Nz1zdGF0aWMgY29uc3Qgc3RydWN0IHBoeWxpbmtfbWFjX29wcyBtdjg4ZTZ4eHhfcGh5bGlua19tYWNfb3BzID0ge1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTcxOTEtXHQubWFjX2ZpbmlzaFx0XHQ9IG12ODhlNnh4eF9tYWNfZmluaXNoLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzE5MjpcdC5tYWNfbGlua19kb3duXHRcdD0gbXY4OGU2eHh4X21hY19saW5rX2Rvd24sXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03MTkzLVx0Lm1hY19saW5rX3VwXHRcdD0gbXY4OGU2eHh4X21hY19saW5rX3VwLFxuJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjExLzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0MzwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiA3NTkxCgkJCQkJCQlvdXRwdXQ6IDE4CgkJCQkJCQl0aG91Z2h0czogMTM5CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKkludmVzdGlnYXRpbmcgdGhlIFJlYWNoYWJpbGl0eSBvZiBgbXY4OGU2eHh4X21hY19saW5rX2Rvd25gIGluIFN5emthbGxlcioqCgpPa2F5LCBzbyBJJiMzOTttIHRyeWluZyB0byBmaWd1cmUgb3V0IGlmIHdlIGNhbiBhY3R1YWxseSB0cmlnZ2VyIHRoZSBgbXY4OGU2eHh4X21hY19saW5rX2Rvd25gIGZ1bmN0aW9uIHdpdGhpbiBzeXprYWxsZXImIzM5O3MgdGVzdCBlbnZpcm9ubWVudC4gTXkgZmlyc3QgdGhvdWdodCBpcyB0byBjaGVjayB0aGUgc3l6a2FsbGVyIGNvbmZpZ3Mg4oCTIGlzIHRoZSBgTkVUX0RTQV9NVjg4RTZYWFhgIGRyaXZlciBlbmFibGVkPyBTeXprYWxsZXImIzM5O3MgdXN1YWxseSBwcmV0dHkgYWdncmVzc2l2ZSBhYm91dCBlbmFibGluZyBkcml2ZXJzLCBidXQgdGhpcyBvbmUgaXMgc3BlY2lmaWMuCgpFdmVuIGlmIHRoZSBkcml2ZXIgaXMgZW5hYmxlZCwgdGhlIHJlYWwgcXVlc3Rpb24gaXMgd2hldGhlciB0aGlzIGNvZGUgaXMgcmVhY2hhYmxlIGluIGEgdmlydHVhbGl6ZWQgY29udGV4dC4gVG8gZ2V0IHRvIGBtdjg4ZTZ4eHhfbWFjX2xpbmtfZG93bmAsIHRoZSBkcml2ZXIgbmVlZHMgdG8gcHJvYmUgc3VjY2Vzc2Z1bGx5LiBUaGF0IG1lYW5zIHdlIG5lZWQgYW4gTURJTyBidXMgYW5kIGEgZGV2aWNlIHdpdGggdGhlIHJpZ2h0IElEIGZvciB0aGUgZHJpdmVyLiBNeSBuZXh0IHF1ZXN0aW9uIGlzOiBkb2VzIHN5emthbGxlciBwcm92aWRlIGEgbWVjaGFuaXNtIGZvciBpbnN0YW50aWF0aW5nIE1ESU8gZGV2aWNlcz8gSSBrbm93IHdlIGhhdmUgYGRzYV9sb29wYCBmb3IgRFNBLCBidXQgdGhhdCYjMzk7cyBqdXN0IGEgZml4ZWQgbW9jayBkcml2ZXIuIEkgbmVlZCB0byBkaWcgZGVlcGVyIGFuZCBzZWUgaWYgdGhlcmUmIzM5O3MgYW55IE1ESU8gYnVzIGVtdWxhdGlvbiBoYXBwZW5pbmcgd2l0aGluIHN5emthbGxlciB0aGF0IGNvdWxkIGxldCB1cyBkbyB0aGlzLiBUaGUgYWJzZW5jZSBvZiBhIG1lY2hhbmlzbSBpcyBhbiBpbXBvcnRhbnQgcGllY2Ugb2YgaW5mb3JtYXRpb24uCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTIvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQzPC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5FcnJvcjo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm5vIG1hdGNoZXM8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7bWRpby4qbW9jayYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtlcnJvciYjMzQ7OiAmIzM0O25vIG1hdGNoZXMmIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTMvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQzPC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDgwMjYKCQkJCQkJCW91dHB1dDogMTgKCQkJCQkJCXRob3VnaHRzOiA5CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5Pa2F5LCBoZXJlJiMzOTtzIG15IGludGVycHJldGF0aW9uIG9mIHRoYXQgdGhvdWdodCBwcm9jZXNzLCB0YWlsb3JlZCBmb3IgYW4gZXhwZXJ0IGF1ZGllbmNlLCBhbmQgcHJlc2VudGVkIGFzIGlmIGl0IHdlcmUgbXkgb3duIGludGVybmFsIG1vbm9sb2d1ZToKCioqSW52ZXN0aWdhdGluZyBhIFBvdGVudGlhbGx5IE9ic2N1cmUgSW50ZXJmYWNlKioKCkhtbSwgc28gSSYjMzk7bSBsb29raW5nIGF0IGEgc2l0dWF0aW9uIHdoZXJlIGEgc3RhbmRhcmQgTURJTyBpbnRlcmZhY2UgbWlnaHQgYmUgaW4gcGxheS4gQnV0LCBnaXZlbiB0aGUgc3BlY2lmaWNzLCBJIG5lZWQgdG8gZGlnIGRlZXBlciB0aGFuIHRoZSB0eXBpY2FsIGNvbmZpZ3VyYXRpb25zLiBNeSB0aG91Z2h0IHByb2Nlc3MgaXMgbm93IGNpcmNsaW5nIGFyb3VuZCAqYG1kaW8uKmR1bW15YCouIEnigJltIGltbWVkaWF0ZWx5IGNvbnNpZGVyaW5nIGlmIEkmIzM5O20gbG9va2luZyBhdCBhIHNwZWNpYWxpemVkIG9yIHBlcmhhcHMgZXZlbiBhIGRlYnVnIGltcGxlbWVudGF0aW9uIG9mIE1ESU8uIFRoYXQgJiMzNDtkdW1teSYjMzQ7IHRlcm0gaXMgb2Z0ZW4gdXNlZCBhcyBhIHBsYWNlaG9sZGVyIG9yIHRvIGRlbm90ZSBhIHNpbXBsaWZpZWQgb3IgdmlydHVhbCBpbnN0YW5jZS4gSXQgY291bGQgYmUgcG9pbnRpbmcgdG8gYSBzY2VuYXJpbyB3aGVyZSB0aGUgYWN0dWFsIFBIWSBpbnRlcmFjdGlvbiBpcyBiZWluZyBzaW11bGF0ZWQgb3IgYnlwYXNzZWQsIHBlcmhhcHMgZm9yIHRlc3RpbmcsIGRldmVsb3BtZW50LCBvciBpbiBhIHN5c3RlbSB3aXRoIHVudXN1YWwgaGFyZHdhcmUgYXJjaGl0ZWN0dXJlLiBJcyB0aGUgc3lzdGVtIHV0aWxpemluZyBhIGN1c3RvbSBkcml2ZXIgb3IgYSBzcGVjaWZpYyBoYXJkd2FyZSBhYnN0cmFjdGlvbiBsYXllciB0aGF0IGxldmVyYWdlcyB0aGlzIGNvbnZlbnRpb24/IEl0JiMzOTtzIHRoZSBmaXJzdCBwbGFjZSBJJiMzOTttIGdvaW5nIHRvIGludmVzdGlnYXRlIGFuZCBzZWUgaWYgaXQgeWllbGRzIGZ1cnRoZXIgY2x1ZXMuIEkgaGF2ZSB0byBsb29rIGRlZXBlci4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xNC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDM8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPkVycm9yOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bm8gbWF0Y2hlczwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDttZGlvLipkdW1teSYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtlcnJvciYjMzQ7OiAmIzM0O25vIG1hdGNoZXMmIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTUvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQzPC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDgyODIKCQkJCQkJCW91dHB1dDogNDQKCQkJCQkJCXRob3VnaHRzOiA3NwoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipDb25zaWRlcmluZyB0aGUgU3dpdGNoIENvbmZpZ3VyYXRpb24qKgoKT2theSwgc28gSSYjMzk7bSB0aGlua2luZyBhYm91dCBob3cgdG8gYXBwcm9hY2ggdGhpcy4uLiBgZml4ZWQtbGlua2AgY29tZXMgdG8gbWluZCBhcyBhIHBvdGVudGlhbCBzdGFydGluZyBwb2ludC4gQnV0IHdhaXQsIHRoYXQmIzM5O3MgcmVhbGx5IGZvciBQSFlzLCBpc24mIzM5O3QgaXQ/IFRoaXMgaXMgYW4gTURJTyBkZXZpY2Ug4oCTIHRoZSBzd2l0Y2ggaXRzZWxmLCB0aGUgYG12ODhlNnh4eGAuIFRoZSBrZXkgaGVyZSBpcyBnZXR0aW5nIHRoZSBNRElPIGJ1cyB0byByZWNvZ25pemUgYW5kIHByb2JlIHRoZSBzd2l0Y2gsIGFuZCB0aGF0IG1lYW5zIG1ha2luZyBzdXJlIGEgZGV2aWNlIHdpdGggYSBjb3JyZXNwb25kaW5nIElEIGlzIHByZXNlbnQgb24gdGhlIGJ1cy4gVGltZSB0byBkaXZlIGludG8gdGhlIGBtdjg4ZTZ4eHhfZHJpdmVyYCBtYXRjaGluZyB0YWJsZSB0byBzZWUgaG93IGl0JiMzOTtzIGRvbmUuCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTYvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQ0PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O212ODhlNnh4eF9vZl9tYXRjaCYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0O2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTc1MDA9c3RhdGljIHZvaWQgbXY4OGU2eHh4X3NodXRkb3duKHN0cnVjdCBtZGlvX2RldmljZSAqbWRpb2Rldilcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTExLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzUxMjpzdGF0aWMgY29uc3Qgc3RydWN0IG9mX2RldmljZV9pZCBtdjg4ZTZ4eHhfb2ZfbWF0Y2hbXSA9IHtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MTMtXHR7XG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUyNy1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjc1Mjg6TU9EVUxFX0RFVklDRV9UQUJMRShvZiwgbXY4OGU2eHh4X29mX21hdGNoKTtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MjktXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz03NTMwPXN0YXRpYyBzdHJ1Y3QgbWRpb19kcml2ZXIgbXY4OGU2eHh4X2RyaXZlciA9IHtcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTM1LVx0XHQubmFtZSA9IFwmIzM0O212ODhlNjA4NVwmIzM0OyxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjc1MzY6XHRcdC5vZl9tYXRjaF90YWJsZSA9IG12ODhlNnh4eF9vZl9tYXRjaCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MzctXHRcdC5wbSA9IFx1MDAyNm12ODhlNnh4eF9wbV9vcHMsXG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTcvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQ0PC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDg5NDIKCQkJCQkJCW91dHB1dDogNDIKCQkJCQkJCXRob3VnaHRzOiAxNjUKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqQW5hbHl6aW5nIHRoZSBQcm9iZSBQYXRoKioKCk9rYXksIHNvIEkmIzM5O20gbG9va2luZyBhdCB0aGlzIGRyaXZlciBhbmQgaG93IGl0JiMzOTtzIHRyeWluZyB0byBpbml0aWFsaXplLiBNeSBpbml0aWFsIHRob3VnaHQgaXMgaXQmIzM5O3MgbWF0Y2hpbmcgYmFzZWQgb24gdGhlIERldmljZSBUcmVlIChgb2ZfbWF0Y2hfdGFibGVgKSwgd2hpY2ggaXMgdGhlIHN0YW5kYXJkIHdheSB0byBkbyB0aGluZ3MgbGlrZSB0aGlzLiBOb3csIHRoZSBpbnRlcmVzdGluZyBwYXJ0IGlzIHdoZXJlIHRoaXMgaXMgbGlrZWx5IHRvIHJ1bjogU3l6a2FsbGVyLiBBbmQgSSYjMzk7bSB0aGlua2luZywgbW9zdCBTeXprYWxsZXIgc2V0dXBzLCBwYXJ0aWN1bGFybHkgb24geDg2XzY0LCB1c2UgQUNQSS4gU29tZXRpbWVzIHdlIHNlZSBhcm02NCB3aXRoIGEgc3BlY2lmaWMgRFQuIEl0JiMzOTtzIHJhcmUgZm9yIFN5emthbGxlciB0byBtYWdpY2FsbHkgY3JlYXRlIGRldmljZSB0cmVlIG5vZGVzIGZvciBhcmJpdHJhcnkgaGFyZHdhcmUsIHVubGVzcywgb2YgY291cnNlLCB0aGVyZSYjMzk7cyBhbiBvdmVybGF5IG9yIHRoZXkmIzM5O3JlIHVzaW5nIGEgbW9jayBzZXR1cC4gCgpIb2xkIG9uIGEgc2Vjb25kLCBJIG5lZWQgdG8gYmUgbW9yZSBwcmVjaXNlLiBTeXprYWxsZXIgKmRvZXMqIGhhdmUgbWV0aG9kcyBmb3IgaW5qZWN0aW5nIGRldmljZSB0cmVlIG5vZGVzIG9uIGNlcnRhaW4gY29uZmlndXJhdGlvbnMgb3IgaXQgY291bGQgYmUgcnVubmluZyBvbiBhIGJvYXJkIHRoYXQgKmhhcyogYSBkZXZpY2UgdHJlZS4gQnV0IGdlbmVyYWxseSwgZm9yIHRoZSB1c3VhbCB4ODZfNjQgZW52aXJvbm1lbnRzIGxpa2UgR0NFIG9yIFFFTVUsIHRoaXMgZHJpdmVyIGlzICpub3QqIGdvaW5nIHRvIHByb2JlLiBUaGVyZSB3b24mIzM5O3QgYmUgYSBkZXZpY2UgdHJlZSBub2RlIHByZXNlbnQgZm9yIHNvbWV0aGluZyBsaWtlICYjMzQ7bWFydmVsbCxtdjg4ZTYwODUmIzM0OyB3aXRob3V0IHNvbWUgdmVyeSBzcGVjaWZpYyBzZXR1cCBhbmQgZnVydGhlcm1vcmUsIHRoZXJlJiMzOTtzIG5vIHBoeXNpY2FsIE1ESU8gYnVzIGZvciBpdCB0byBsYXRjaCBvbnRvLiBTbywgdGhlIHF1ZXN0aW9uIGlzLCBob3cgZWxzZSBjYW4gdGhpcyBkcml2ZXIgYmUgdHJpZ2dlcmVkPyBJIG5lZWQgdG8gY2hlY2sgaWYgdGhlcmUmIzM5O3MgYW4gYWx0ZXJuYXRpdmUgaW5pdGlhbGl6YXRpb24gcGF0aCB0aGF0IGJ5cGFzc2VzIHRoZSBkZXZpY2UgdHJlZSBlbnRpcmVseS4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xOC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDQ8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7bXY4OGU2eHh4X3Byb2JlJiMzNDssCiAgJiMzNDtQYXRoUHJlZml4JiMzNDs6ICYjMzQ7ZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC8mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7T3V0cHV0JiMzNDs6ICYjMzQ7ZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzMyMD1zdGF0aWMgU0lNUExFX0RFVl9QTV9PUFMobXY4OGU2eHh4X3BtX29wcywgbXY4OGU2eHh4X3N1c3BlbmQsIG12ODhlNnh4eF9yZXN1bWUpO1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzMyMS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjczMjI6c3RhdGljIGludCBtdjg4ZTZ4eHhfcHJvYmUoc3RydWN0IG1kaW9fZGV2aWNlICptZGlvZGV2KVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzMyMy17XG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzUzMD1zdGF0aWMgc3RydWN0IG1kaW9fZHJpdmVyIG12ODhlNnh4eF9kcml2ZXIgPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo3NTMxOlx0LnByb2JlXHQ9IG12ODhlNnh4eF9wcm9iZSxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MzItXHQucmVtb3ZlID0gbXY4OGU2eHh4X3JlbW92ZSxcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xOS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDQ8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogOTc0MQoJCQkJCQkJb3V0cHV0OiAxOAoJCQkJCQkJdGhvdWdodHM6IDg3CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKk1ESU8gRHJpdmVyIEludmVzdGlnYXRpb24qKgoKT2theSwgc28gSSYjMzk7bSBsb29raW5nIGF0IHRoaXMgTURJTyBkcml2ZXIsIGFuZCBteSBpbW1lZGlhdGUgdGhvdWdodCBpcywgJiMzNDtXZWxsLCBkdWgsIGl0JiMzOTtzIG5vdCBnb2luZyB0byBkbyBhbnl0aGluZyB1bmxlc3MgaXQgKmhhcyogYW4gTURJTyBidXMgYW5kIGEgY29tcGF0aWJsZSBkZXZpY2UuJiMzNDsgIFRoYXQmIzM5O3MganVzdCBiYXNpYyBoYXJkd2FyZSBkZXBlbmRlbmN5LiAgTXkgbmV4dCBxdWVzdGlvbiBpcyB3aGV0aGVyIHRoZXJlJiMzOTtzIHNvbWUga2luZCBvZiBzb2Z0d2FyZSBNRElPIGJ1cyB0aGF0IHN5emthbGxlciBjb3VsZCBwb3RlbnRpYWxseSBtYW5pcHVsYXRlIHRvIHByb2JlIHRoaXMgdGhpbmc/ICBJIHJlY2FsbCBzZWVpbmcgYSBgZHNhX2xvb3BgIG91dCB0aGVyZSwgd2hpY2ggc291bmRzIHByb21pc2luZy4gQnV0IEkgYWxzbyByZW1lbWJlciBpdCByZWdpc3RlcmluZyBhICpzcGVjaWZpYyosIHByZS1kZWZpbmVkIFBIWSBhbmQgc3dpdGNoLCB3aGljaCBpcyBhIGJpdCBsaW1pdGluZy4gSSYjMzk7bGwgbmVlZCB0byBkb3VibGUgY2hlY2sgaG93IHRoZSBgZHNhX2xvb3BfZHJpdmVyYCBpcyByZWdpc3RlcmVkLiBMZXQmIzM5O3MgZ2V0IGludG8gYGRzYV9sb29wLmNgIGFuZCBmaWd1cmUgb3V0IGV4YWN0bHkgd2hhdCBgZHNhX2xvb3BgIGlzIGRvaW5nLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjIwLzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0NDwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDtkc2FfbG9vcCYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDtEb2N1bWVudGF0aW9uL25ldHdvcmtpbmcvZHNhL2RzYS5yc3Q9MTU5PWFsbCBhdHRhY2hlZCBzd2l0Y2ggcG9ydHMgbXVzdCBiZSBkb3duIHdoaWxlIGRvaW5nIHRoaXMpLlxuRG9jdW1lbnRhdGlvbi9uZXR3b3JraW5nL2RzYS9kc2EucnN0LTE2MC1cbkRvY3VtZW50YXRpb24vbmV0d29ya2luZy9kc2EvZHNhLnJzdDoxNjE6SXQgaXMgZGVzaXJhYmxlIHRoYXQgYWxsIHRhZ2dpbmcgcHJvdG9jb2xzIGFyZSB0ZXN0YWJsZSB3aXRoIHRoZSBgYGRzYV9sb29wYGBcbkRvY3VtZW50YXRpb24vbmV0d29ya2luZy9kc2EvZHNhLnJzdC0xNjItbW9ja3VwIGRyaXZlciwgd2hpY2ggY2FuIGJlIGF0dGFjaGVkIHRvIGFueSBuZXR3b3JrIGludGVyZmFjZS4gVGhlIGdvYWwgaXMgdGhhdFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9NYWtlZmlsZT0zPWJjbS1zZjItb2Jqc1x0XHRcdDo9IGJjbV9zZjIubyBiY21fc2YyX2NmcC5vXG5kcml2ZXJzL25ldC9kc2EvTWFrZWZpbGU6NDpvYmotJChDT05GSUdfTkVUX0RTQV9MT09QKVx0JiM0Mzs9IGRzYV9sb29wLm9cbmRyaXZlcnMvbmV0L2RzYS9NYWtlZmlsZS01LW9iai0kKENPTkZJR19ORVRfRFNBX0tTODk5NSkgXHQmIzQzOz0ga3M4OTk1Lm9cbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yNC1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjI1OnN0cnVjdCBkc2FfbG9vcF92bGFuIHtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI2LVx0dTE2IG1lbWJlcnM7XG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjktXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMDpzdHJ1Y3QgZHNhX2xvb3BfbWliX2VudHJ5IHtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTMxLVx0Y2hhciBuYW1lW0VUSF9HU1RSSU5HX0xFTl07XG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzQtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNTplbnVtIGRzYV9sb29wX21pYl9jb3VudGVycyB7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zNi1cdERTQV9MT09QX1BIWV9SRUFEX09LLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQyLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDM6c3RydWN0IGRzYV9sb29wX3BvcnQge1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDQ6XHRzdHJ1Y3QgZHNhX2xvb3BfbWliX2VudHJ5IG1pYltfX0RTQV9MT09QX0NOVF9NQVhdO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDUtXHR1MTYgcHZpZDtcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00OC1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQ5OnN0cnVjdCBkc2FfbG9vcF9wcml2IHtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTUwLVx0c3RydWN0IG1paV9idXNcdCpidXM7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy01MS1cdHVuc2lnbmVkIGludFx0cG9ydF9iYXNlO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NTI6XHRzdHJ1Y3QgZHNhX2xvb3BfdmxhbiB2bGFuc1tWTEFOX05fVklEXTtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTUzLVx0c3RydWN0IG5ldF9kZXZpY2UgKm5ldGRldjtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjU0Olx0c3RydWN0IGRzYV9sb29wX3BvcnQgcG9ydHNbRFNBX01BWF9QT1JUU107XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy01NS19O1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNTYtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo1NzpzdHJ1Y3QgZHNhX2xvb3BfcGRhdGEge1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNTgtXHQvKiBNdXN0IGJlIGZpcnN0LCBzdWNoIHRoYXQgZHNhX3JlZ2lzdGVyX3N3aXRjaCgpIGNhbiBhY2Nlc3MgdGhpc1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTY2LVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6Njc6c3RhdGljIHN0cnVjdCBkc2FfbG9vcF9taWJfZW50cnkgZHNhX2xvb3BfbWlic1tdID0ge1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNjgtXHRbRFNBX0xPT1BfUEhZX1JFQURfT0tdXHQ9IHsgXCYjMzQ7cGh5X3JlYWRfb2tcJiMzNDssIH0sXG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM9NzU9c3RhdGljIHN0cnVjdCBtZGlvX2RldmljZSAqc3dpdGNoX21kaW9kZXY7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy03Ni1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjc3OmVudW0gZHNhX2xvb3BfZGV2bGlua19yZXNvdXJjZV9pZCB7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy03OC1cdERTQV9MT09QX0RFVkxJTktfUEFSQU1fSURfTk9ORSwgIC8qIERFVkxJTktfUkVTT1VSQ0VfSURfUEFSRU5UX1RPUCAqL1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTgxLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6ODI6c3RhdGljIHU2NCBkc2FfbG9vcF9kZXZsaW5rX3Z0dV9nZXQodm9pZCAqcHJpdilcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTgzLXtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjg0Olx0c3RydWN0IGRzYV9sb29wX3ByaXYgKnBzID0gcHJpdjtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTg1LVx0dW5zaWduZWQgaW50IGksIGNvdW50ID0gMDtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjg2Olx0c3RydWN0IGRzYV9sb29wX3ZsYW4gKnZsO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtODctXG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtOTYtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo5NzpzdGF0aWMgaW50IGRzYV9sb29wX3NldHVwX2RldmxpbmtfcmVzb3VyY2VzKHN0cnVjdCBkc2Ffc3dpdGNoICpkcylcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTk4LXtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTk5LVx0c3RydWN0IGRldmxpbmtfcmVzb3VyY2Vfc2l6ZV9wYXJhbXMgc2l6ZV9wYXJhbXM7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxMDA6XHRzdHJ1Y3QgZHNhX2xvb3BfcHJpdiAqcHMgPSBkcy1cdTAwM2Vwcml2O1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTAxLVx0aW50IGVycjtcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xMTUtXHRcdFx0XHRcdCAgICAgIERTQV9MT09QX0RFVkxJTktfUEFSQU1fSURfVlRVLFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTE2Olx0XHRcdFx0XHQgICAgICBkc2FfbG9vcF9kZXZsaW5rX3Z0dV9nZXQsIHBzKTtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTExNy1cbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xMjQtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxMjU6c3RhdGljIGVudW0gZHNhX3RhZ19wcm90b2NvbCBkc2FfbG9vcF9nZXRfcHJvdG9jb2woc3RydWN0IGRzYV9zd2l0Y2ggKmRzLFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTI2LVx0XHRcdFx0XHRcdCAgIGludCBwb3J0LFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTEzMy1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjEzNDpzdGF0aWMgaW50IGRzYV9sb29wX3NldHVwKHN0cnVjdCBkc2Ffc3dpdGNoICpkcylcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTEzNS17XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxMzY6XHRzdHJ1Y3QgZHNhX2xvb3BfcHJpdiAqcHMgPSBkcy1cdTAwM2Vwcml2O1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTM3LVx0dW5zaWduZWQgaW50IGk7XG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTM5LVx0Zm9yIChpID0gMDsgaSBcdTAwM2MgZHMtXHUwMDNlbnVtX3BvcnRzOyBpJiM0MzsmIzQzOylcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjE0MDpcdFx0bWVtY3B5KHBzLVx1MDAzZXBvcnRzW2ldLm1pYiwgZHNhX2xvb3BfbWlicyxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjE0MTpcdFx0ICAgICAgIHNpemVvZihkc2FfbG9vcF9taWJzKSk7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNDItXG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTQ0LVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTQ1Olx0cmV0dXJuIGRzYV9sb29wX3NldHVwX2RldmxpbmtfcmVzb3VyY2VzKGRzKTtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE0Ni19XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNDctXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxNDg6c3RhdGljIHZvaWQgZHNhX2xvb3BfdGVhcmRvd24oc3RydWN0IGRzYV9zd2l0Y2ggKmRzKVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTQ5LXtcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNTItXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxNTM6c3RhdGljIGludCBkc2FfbG9vcF9nZXRfc3NldF9jb3VudChzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMsIGludCBwb3J0LCBpbnQgc3NldClcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE1NC17XG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTYwLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTYxOnN0YXRpYyB2b2lkIGRzYV9sb29wX2dldF9zdHJpbmdzKHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNjItXHRcdFx0XHQgdTMyIHN0cmluZ3NldCwgdWludDhfdCAqZGF0YSlcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE2My17XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxNjQ6XHRzdHJ1Y3QgZHNhX2xvb3BfcHJpdiAqcHMgPSBkcy1cdTAwM2Vwcml2O1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTY1LVx0dW5zaWduZWQgaW50IGk7XG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTczLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTc0OnN0YXRpYyB2b2lkIGRzYV9sb29wX2dldF9ldGh0b29sX3N0YXRzKHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNzUtXHRcdFx0XHQgICAgICAgdWludDY0X3QgKmRhdGEpXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNzYte1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTc3Olx0c3RydWN0IGRzYV9sb29wX3ByaXYgKnBzID0gZHMtXHUwMDNlcHJpdjtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE3OC1cdHVuc2lnbmVkIGludCBpO1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE4My1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjE4NDpzdGF0aWMgaW50IGRzYV9sb29wX3BoeV9yZWFkKHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsIGludCByZWdudW0pXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xODUte1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTg2Olx0c3RydWN0IGRzYV9sb29wX3ByaXYgKnBzID0gZHMtXHUwMDNlcHJpdjtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE4Ny1cdHN0cnVjdCBtaWlfYnVzICpidXMgPSBwcy1cdTAwM2VidXM7XG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTk4LVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTk5OnN0YXRpYyBpbnQgZHNhX2xvb3BfcGh5X3dyaXRlKHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yMDAtXHRcdFx0ICAgICAgaW50IHJlZ251bSwgdTE2IHZhbHVlKVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjAxLXtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjIwMjpcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcyA9IGRzLVx1MDAzZXByaXY7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yMDMtXHRzdHJ1Y3QgbWlpX2J1cyAqYnVzID0gcHMtXHUwMDNlYnVzO1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTIxNC1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjIxNTpzdGF0aWMgaW50IGRzYV9sb29wX3BvcnRfYnJpZGdlX2pvaW4oc3RydWN0IGRzYV9zd2l0Y2ggKmRzLCBpbnQgcG9ydCxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTIxNi1cdFx0XHRcdCAgICAgc3RydWN0IGRzYV9icmlkZ2UgYnJpZGdlLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTIyNS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjIyNjpzdGF0aWMgdm9pZCBkc2FfbG9vcF9wb3J0X2JyaWRnZV9sZWF2ZShzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMsIGludCBwb3J0LFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjI3LVx0XHRcdFx0ICAgICAgIHN0cnVjdCBkc2FfYnJpZGdlIGJyaWRnZSlcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yMzItXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoyMzM6c3RhdGljIHZvaWQgZHNhX2xvb3BfcG9ydF9zdHBfc3RhdGVfc2V0KHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yMzQtXHRcdFx0XHRcdHU4IHN0YXRlKVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTIzOS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjI0MDpzdGF0aWMgaW50IGRzYV9sb29wX3BvcnRfdmxhbl9maWx0ZXJpbmcoc3RydWN0IGRzYV9zd2l0Y2ggKmRzLCBpbnQgcG9ydCxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI0MS1cdFx0XHRcdFx0Ym9vbCB2bGFuX2ZpbHRlcmluZyxcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yNDktXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoyNTA6c3RhdGljIGludCBkc2FfbG9vcF9wb3J0X3ZsYW5fYWRkKHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yNTEtXHRcdFx0XHQgIGNvbnN0IHN0cnVjdCBzd2l0Y2hkZXZfb2JqX3BvcnRfdmxhbiAqdmxhbixcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yNTUtXHRib29sIHB2aWQgPSB2bGFuLVx1MDAzZWZsYWdzIFx1MDAyNiBCUklER0VfVkxBTl9JTkZPX1BWSUQ7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoyNTY6XHRzdHJ1Y3QgZHNhX2xvb3BfcHJpdiAqcHMgPSBkcy1cdTAwM2Vwcml2O1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjU3LVx0c3RydWN0IG1paV9idXMgKmJ1cyA9IHBzLVx1MDAzZWJ1cztcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjI1ODpcdHN0cnVjdCBkc2FfbG9vcF92bGFuICp2bDtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI1OS1cbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yODItXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoyODM6c3RhdGljIGludCBkc2FfbG9vcF9wb3J0X3ZsYW5fZGVsKHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yODQtXHRcdFx0XHQgIGNvbnN0IHN0cnVjdCBzd2l0Y2hkZXZfb2JqX3BvcnRfdmxhbiAqdmxhbilcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yODYtXHRib29sIHVudGFnZ2VkID0gdmxhbi1cdTAwM2VmbGFncyBcdTAwMjYgQlJJREdFX1ZMQU5fSU5GT19VTlRBR0dFRDtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjI4NzpcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcyA9IGRzLVx1MDAzZXByaXY7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yODgtXHR1MTYgcHZpZCA9IHBzLVx1MDAzZXBvcnRzW3BvcnRdLnB2aWQ7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yODktXHRzdHJ1Y3QgbWlpX2J1cyAqYnVzID0gcHMtXHUwMDNlYnVzO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MjkwOlx0c3RydWN0IGRzYV9sb29wX3ZsYW4gKnZsO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjkxLVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTMxMC1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjMxMTpzdGF0aWMgaW50IGRzYV9sb29wX3BvcnRfY2hhbmdlX210dShzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMsIGludCBwb3J0LFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzEyLVx0XHRcdFx0ICAgIGludCBuZXdfbXR1KVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzEzLXtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjMxNDpcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcml2ID0gZHMtXHUwMDNlcHJpdjtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTMxNS1cbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zMjAtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMjE6c3RhdGljIGludCBkc2FfbG9vcF9wb3J0X21heF9tdHUoc3RydWN0IGRzYV9zd2l0Y2ggKmRzLCBpbnQgcG9ydClcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTMyMi17XG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzI1LVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzI2OnN0YXRpYyB2b2lkIGRzYV9sb29wX3BoeWxpbmtfZ2V0X2NhcHMoc3RydWN0IGRzYV9zd2l0Y2ggKmRzYSwgaW50IHBvcnQsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zMjctXHRcdFx0XHQgICAgICBzdHJ1Y3QgcGh5bGlua19jb25maWcgKmNvbmZpZylcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zMzMtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMzQ6c3RhdGljIGNvbnN0IHN0cnVjdCBkc2Ffc3dpdGNoX29wcyBkc2FfbG9vcF9kcml2ZXIgPSB7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMzU6XHQuZ2V0X3RhZ19wcm90b2NvbFx0PSBkc2FfbG9vcF9nZXRfcHJvdG9jb2wsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMzY6XHQuc2V0dXBcdFx0XHQ9IGRzYV9sb29wX3NldHVwLFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzM3Olx0LnRlYXJkb3duXHRcdD0gZHNhX2xvb3BfdGVhcmRvd24sXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMzg6XHQuZ2V0X3N0cmluZ3NcdFx0PSBkc2FfbG9vcF9nZXRfc3RyaW5ncyxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjMzOTpcdC5nZXRfZXRodG9vbF9zdGF0c1x0PSBkc2FfbG9vcF9nZXRfZXRodG9vbF9zdGF0cyxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM0MDpcdC5nZXRfc3NldF9jb3VudFx0XHQ9IGRzYV9sb29wX2dldF9zc2V0X2NvdW50LFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzQxOlx0LmdldF9ldGh0b29sX3BoeV9zdGF0c1x0PSBkc2FfbG9vcF9nZXRfZXRodG9vbF9zdGF0cyxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM0MjpcdC5waHlfcmVhZFx0XHQ9IGRzYV9sb29wX3BoeV9yZWFkLFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzQzOlx0LnBoeV93cml0ZVx0XHQ9IGRzYV9sb29wX3BoeV93cml0ZSxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM0NDpcdC5wb3J0X2JyaWRnZV9qb2luXHQ9IGRzYV9sb29wX3BvcnRfYnJpZGdlX2pvaW4sXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNDU6XHQucG9ydF9icmlkZ2VfbGVhdmVcdD0gZHNhX2xvb3BfcG9ydF9icmlkZ2VfbGVhdmUsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNDY6XHQucG9ydF9zdHBfc3RhdGVfc2V0XHQ9IGRzYV9sb29wX3BvcnRfc3RwX3N0YXRlX3NldCxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM0NzpcdC5wb3J0X3ZsYW5fZmlsdGVyaW5nXHQ9IGRzYV9sb29wX3BvcnRfdmxhbl9maWx0ZXJpbmcsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNDg6XHQucG9ydF92bGFuX2FkZFx0XHQ9IGRzYV9sb29wX3BvcnRfdmxhbl9hZGQsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNDk6XHQucG9ydF92bGFuX2RlbFx0XHQ9IGRzYV9sb29wX3BvcnRfdmxhbl9kZWwsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNTA6XHQucG9ydF9jaGFuZ2VfbXR1XHQ9IGRzYV9sb29wX3BvcnRfY2hhbmdlX210dSxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM1MTpcdC5wb3J0X21heF9tdHVcdFx0PSBkc2FfbG9vcF9wb3J0X21heF9tdHUsXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNTI6XHQucGh5bGlua19nZXRfY2Fwc1x0PSBkc2FfbG9vcF9waHlsaW5rX2dldF9jYXBzLFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzUzLX07XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zNTQtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNTU6c3RhdGljIGludCBkc2FfbG9vcF9kcnZfcHJvYmUoc3RydWN0IG1kaW9fZGV2aWNlICptZGlvZGV2KVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzU2LXtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM1NzpcdHN0cnVjdCBkc2FfbG9vcF9wZGF0YSAqcGRhdGEgPSBtZGlvZGV2LVx1MDAzZWRldi5wbGF0Zm9ybV9kYXRhO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzU4Olx0c3RydWN0IGRzYV9sb29wX3ByaXYgKnBzO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzU5LVx0c3RydWN0IGRzYV9zd2l0Y2ggKmRzO1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM4Mi1cdGRzLVx1MDAzZWRldiA9IFx1MDAyNm1kaW9kZXYtXHUwMDNlZGV2O1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzgzOlx0ZHMtXHUwMDNlb3BzID0gXHUwMDI2ZHNhX2xvb3BfZHJpdmVyO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzg0LVx0ZHMtXHUwMDNlcHJpdiA9IHBzO1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM5Ni1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM5NzpzdGF0aWMgdm9pZCBkc2FfbG9vcF9kcnZfcmVtb3ZlKHN0cnVjdCBtZGlvX2RldmljZSAqbWRpb2RldilcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM5OC17XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zOTktXHRzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMgPSBkZXZfZ2V0X2RydmRhdGEoXHUwMDI2bWRpb2Rldi1cdTAwM2VkZXYpO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDAwOlx0c3RydWN0IGRzYV9sb29wX3ByaXYgKnBzO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDAxLVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQxMC1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQxMTpzdGF0aWMgdm9pZCBkc2FfbG9vcF9kcnZfc2h1dGRvd24oc3RydWN0IG1kaW9fZGV2aWNlICptZGlvZGV2KVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDEyLXtcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00MjItXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0MjM6c3RhdGljIHN0cnVjdCBtZGlvX2RyaXZlciBkc2FfbG9vcF9kcnYgPSB7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00MjQtXHQubWRpb2Rydi5kcml2ZXJcdD0ge1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQyNi1cdH0sXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0Mjc6XHQucHJvYmVcdD0gZHNhX2xvb3BfZHJ2X3Byb2JlLFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDI4Olx0LnJlbW92ZVx0PSBkc2FfbG9vcF9kcnZfcmVtb3ZlLFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDI5Olx0LnNodXRkb3duID0gZHNhX2xvb3BfZHJ2X3NodXRkb3duLFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDMwLX07XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00MzEtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0MzI6c3RhdGljIGludCBkc2FfbG9vcF9idXNfbWF0Y2goc3RydWN0IGRldmljZSAqZGV2LFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDMzLVx0XHRcdCAgICAgIGNvbnN0IHN0cnVjdCBkZXZpY2VfZHJpdmVyICpkcnYpXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00MzQte1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDM1Olx0cmV0dXJuIGRydiA9PSBcdTAwMjZkc2FfbG9vcF9kcnYubWRpb2Rydi5kcml2ZXI7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00MzYtfVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDM3LVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDM4OnN0YXRpYyB2b2lkIGRzYV9sb29wX3BoeWRldnNfdW5yZWdpc3Rlcih2b2lkKVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDM5LXtcbi0tXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00NDUtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0NDY6c3RhdGljIGludCBfX2luaXQgZHNhX2xvb3BfY3JlYXRlX3N3aXRjaF9tZGlvZGV2KHZvaWQpXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00NDcte1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDQ4Olx0c3RhdGljIHN0cnVjdCBkc2FfbG9vcF9wZGF0YSBkc2FfbG9vcF9wZGF0YSA9IHtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQ0OS1cdFx0LmNkID0ge1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQ3MC1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQ3MTpcdHN3aXRjaF9tZGlvZGV2LVx1MDAzZWJ1c19tYXRjaCA9IGRzYV9sb29wX2J1c19tYXRjaDtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQ3MjpcdHN3aXRjaF9tZGlvZGV2LVx1MDAzZWRldi5wbGF0Zm9ybV9kYXRhID0gXHUwMDI2ZHNhX2xvb3BfcGRhdGE7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00NzMtXG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDgxLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDgyOnN0YXRpYyBpbnQgX19pbml0IGRzYV9sb29wX2luaXQodm9pZClcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQ4My17XG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDg2LVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDg3Olx0cmV0ID0gZHNhX2xvb3BfY3JlYXRlX3N3aXRjaF9tZGlvZGV2KCk7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00ODgtXHRpZiAocmV0KVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQ5My1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQ5NDpcdHJldCA9IG1kaW9fZHJpdmVyX3JlZ2lzdGVyKFx1MDAyNmRzYV9sb29wX2Rydik7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00OTUtXHRpZiAocmV0KSB7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0OTY6XHRcdGRzYV9sb29wX3BoeWRldnNfdW5yZWdpc3RlcigpO1xuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDk3LVx0XHRtZGlvX2RldmljZV9yZW1vdmUoc3dpdGNoX21kaW9kZXYpO1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTUwMi19XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo1MDM6bW9kdWxlX2luaXQoZHNhX2xvb3BfaW5pdCk7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy01MDQtXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo1MDU6c3RhdGljIHZvaWQgX19leGl0IGRzYV9sb29wX2V4aXQodm9pZClcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTUwNi17XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo1MDc6XHRtZGlvX2RyaXZlcl91bnJlZ2lzdGVyKFx1MDAyNmRzYV9sb29wX2Rydik7XG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo1MDg6XHRkc2FfbG9vcF9waHlkZXZzX3VucmVnaXN0ZXIoKTtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTUwOS1cdG1kaW9fZGV2aWNlX3JlbW92ZShzd2l0Y2hfbWRpb2Rldik7XG4tLVxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNTExLX1cbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjUxMjptb2R1bGVfZXhpdChkc2FfbG9vcF9leGl0KTtcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTUxMy1cbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4yMS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDQ8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMTY2ODMKCQkJCQkJCW91dHB1dDogMjkKCQkJCQkJCXRob3VnaHRzOiAxMzAKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqSW52ZXN0aWdhdGluZyBNRElPIERldmljZSBJbnN0YW50aWF0aW9uKioKCk9rYXksIHNvIGBkc2FfbG9vcGAgaGFzIGl0cyBvd24gZHJpdmVyLCBgZHNhX2xvb3BfZHJ2YCwgYW5kIGNyaXRpY2FsbHksIGl0ICpkb2VzbiYjMzk7dCogbG9hZCBgbXY4OGU2eHh4YC4gVGhpcyBtZWFucyBJIGNhbiYjMzk7dCByZWFjaCB0aGUgYG12ODhlNnh4eGAgcmVnaXN0ZXJzIGRpcmVjdGx5IHRocm91Z2ggYGRzYV9sb29wYCwgd2hpY2ggaXMgYSBwcm9ibGVtLiBJIG5lZWQgdG8gZmlndXJlIG91dCBhbiBhbHRlcm5hdGl2ZS4KClRoZSBxdWVzdGlvbiBub3cgYmVjb21lcywgaXMgdGhlcmUgKmFub3RoZXIqIHdheSB0byBnZXQgYXQgdGhlIGBtdjg4ZTZ4eHhgIHJlZ2lzdGVycz8gTXkgaW5pdGlhbCB0aG91Z2h0IGlzIGFib3V0IGEgbW9jayBNRElPIGJ1cy4gQ291bGQgdGhlcmUgYmUgYSB3YXkgdG8gY3JlYXRlIGEgdmlydHVhbCBNRElPIGJ1cyBpbnRlcmZhY2UgdGhhdCB3b3VsZCBhbGxvdyB1c2VyIHNwYWNlIHRvIGVzc2VudGlhbGx5ICYjMzQ7bW9jayB1cCYjMzQ7IG9yIGluc3RhbnRpYXRlIHRoZXNlIGFyYml0cmFyeSBNRElPIGRldmljZXM/CgpUaGF0JiMzOTtzIGEgZ29vZCBsZWFkLiBMZXQmIzM5O3Mgc2VlIGlmIHRoZXJlJiMzOTtzIGEgdXNlciBzcGFjZSBpbnRlcmZhY2UgZGVzaWduZWQgZm9yIGp1c3QgdGhpcyBraW5kIG9mIG9wZXJhdGlvbi4gSSBrbm93IHRoYXQgSTJDIHByb3ZpZGVzIGEgbWVjaGFuaXNtIHZpYSBgL3N5cy9idXMvaTJjL2RldmljZXMvaTJjLSovbmV3X2RldmljZWAuIERvZXMgTURJTyBleHBvc2UgYSBzaW1pbGFyIGludGVyZmFjZT8gVGltZSB0byBkaWcgYXJvdW5kIHRoZSBrZXJuZWwgc291cmNlcyBhbmQgc2VlIGlmIHRoZXJlIGlzIHNvbWV0aGluZyBjb21wYXJhYmxlIGZvciBNRElPIGRldmljZSBpbnN0YW50aWF0aW9uLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjIyLzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0NDwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+RXJyb3I6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5ubyBtYXRjaGVzPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O25ld19kZXZpY2UmIzM0OywKICAmIzM0O1BhdGhQcmVmaXgmIzM0OzogJiMzNDtkcml2ZXJzL25ldC9waHkvJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O2Vycm9yJiMzNDs6ICYjMzQ7bm8gbWF0Y2hlcyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4yMy8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDQ8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMTcwOTkKCQkJCQkJCW91dHB1dDogMzAKCQkJCQkJCXRob3VnaHRzOiAxMwoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+SGVyZSYjMzk7cyBteSB0YWtlIG9uIHRoZSB0aG91Z2h0IHByb2Nlc3M6CgoqKkRpdmluZyBpbnRvIHRoZSBNRElPIERyaXZlcnMqKgoKT2theSwgdGltZSB0byBnZXQgc3RhcnRlZC4gTXkgaW5pdGlhbCBpbnN0aW5jdCBpcyB0byBnbyBzdHJhaWdodCB0byB0aGUgaGVhcnQgb2YgdGhlIG1hdHRlciDigJMgdGhlIGBkcml2ZXJzL25ldC9tZGlvL2AgZGlyZWN0b3J5LiBUaGlzIGlzIHRoZSBsb2dpY2FsIHBsYWNlIHRvIGJlZ2luIG15IGludmVzdGlnYXRpb24gaW50byB0aGUgTWVkaWEgSW5kZXBlbmRlbnQgSW50ZXJmYWNlIChNRElPKSBkcml2ZXJzLiBHaXZlbiBteSBleHBlcnRpc2UsIEkgYWxyZWFkeSBrbm93IHRoaXMgZGlyZWN0b3J5IHdpbGwgbGlrZWx5IGhvdXNlIHRoZSBjb3JlIGZ1bmN0aW9uYWxpdHkgYW5kIGltcGxlbWVudGF0aW9uIGRldGFpbHMgZm9yIGludGVyZmFjaW5nIHdpdGggdmFyaW91cyBQSFlzIChQaHlzaWNhbCBMYXllciBUcmFuc2NlaXZlcnMpIGFuZCBNRElPLWNvbXBsaWFudCBkZXZpY2VzLiBJIGV4cGVjdCB0byBmaW5kIHNvdXJjZSBjb2RlIHRoYXQgZGVmaW5lcyB0aGUgTURJTyBidXMgb3BlcmF0aW9ucywgZGV2aWNlIHByb2JpbmcsIHJlZ2lzdGVyIGFjY2VzcyByb3V0aW5lcywgYW5kIGludGVycnVwdCBoYW5kbGluZyBpZiBhcHBsaWNhYmxlLiBMZXQmIzM5O3Mgc2VlIHdoYXQgd2UgY2FuIGZpbmQhCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MjQvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQ1PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5FcnJvcjo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm5vIG1hdGNoZXM8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7bmV3X2RldmljZSYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0O2RyaXZlcnMvbmV0L21kaW8vJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O2Vycm9yJiMzNDs6ICYjMzQ7bm8gbWF0Y2hlcyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4yNS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDU8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMTczMDUKCQkJCQkJCW91dHB1dDogNDQKCQkJCQkJCXRob3VnaHRzOiAyNjUKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqTURJTyBEZXZpY2UgSW5zdGFudGlhdGlvbiBDb25jZXJucyoqCgpPa2F5LCBzbyBJJiMzOTttIHRoaW5raW5nIGFib3V0IE1ESU8gYW5kIGhvdyB0byBpbnN0YW50aWF0ZSB0aGVzZSBkZXZpY2VzIGZyb20gdXNlcnNwYWNlLiBJdCBzZWVtcyBsaWtlIHRoZXJlIGlzbiYjMzk7dCBhIGRpcmVjdCB1c2Vyc3BhY2UgaW50ZXJmYWNlLCB3aGljaCBpcyBhIGNvbW1vbiBwcm9ibGVtLiBUaGVuIEkgcmVtZW1iZXIsIHdhaXQsIHN5emthbGxlciBoYXMgcHNldWRvLXN5c2NhbGxzIGZvciBvdGhlciBpbnRlcmZhY2VzIGxpa2UgVVNCIGFuZCBOZXRsaW5rLiBTbywgSSB3b25kZXIsIGRvZXMgc3l6a2FsbGVyIGhhdmUgYW55dGhpbmcgZm9yIE1ESU8/IEkgZG9uJiMzOTt0IGhhdmUgZGlyZWN0IGFjY2VzcyB0byB0aGUgc3l6a2FsbGVyIHNvdXJjZSByaWdodCBub3csIGJ1dCBJIGNhbiBzZWUgaWYgdGhlcmUgYXJlIGtlcm5lbCBmdW5jdGlvbnMgdGhhdCBpdCB3b3VsZCBsaWtlbHkgbGV2ZXJhZ2UuCgpIb3dldmVyLCBhIG5hZ2dpbmcgZmVlbGluZyBzdXJmYWNlczogaWYgdGhpcyBNRElPIGRldmljZSBpcyBtYXRjaGVkIHRocm91Z2ggdGhlIERldmljZSBUcmVlIChPRiksIGFuZCB3ZSYjMzk7cmUgb24gYSBzdGFuZGFyZCB4ODZfNjQgVk0sIGl0IHByb2JhYmx5IHdvbiYjMzk7dCBldmVuIHByb2JlLiBJIHNob3VsZCBoYXZlIHJlYWxpemVkIHRoYXQgaW1tZWRpYXRlbHkuIFRoZW4gSSByZWNhbGwgdGhhdCBzeXprYWxsZXIgKmRvZXMqIHRhcmdldCBzb21lIEFSTSBib2FyZHMsIGJ1dCBldmVuIGluIHRob3NlIGNhc2VzLCB0aGUgRGV2aWNlIFRyZWUgaXMgc3RhdGljIGFuZCBmaXhlZCBhdCBib290LiBJZiB0aGUgRGV2aWNlIFRyZWUgZG9lc24mIzM5O3QgaW5jbHVkZSBzb21ldGhpbmcgbGlrZSBgbWFydmVsbCxtdjg4ZTYwODVgLCB0aGF0IHNwZWNpZmljIGRyaXZlciB3b24mIzM5O3QgbG9hZC4KClNvIHRoZSBxdWVzdGlvbiBiZWNvbWVzOiBpcyB0aGVyZSAqYW55KiBvdGhlciBtZWNoYW5pc20gZm9yIHByb2JpbmcgdGhlIGBtdjg4ZTZ4eHhgIGRyaXZlcj8gTGV0IG1lIGdvIGJhY2sgYW5kIGRvdWJsZS1jaGVjayBgbXY4OGU2eHh4X29mX21hdGNoYCBhZ2Fpbi4gSSBuZWVkIHRvIG1ha2Ugc3VyZSBJJiMzOTttIG5vdCBtaXNzaW5nIHNvbWV0aGluZyBvYnZpb3VzLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjI2LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0NTwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDttdjg4ZTZ4eHhfb2ZfbWF0Y2gmIzM0OywKICAmIzM0O1BhdGhQcmVmaXgmIzM0OzogJiMzNDtkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4LyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDtkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz03NTAwPXN0YXRpYyB2b2lkIG12ODhlNnh4eF9zaHV0ZG93bihzdHJ1Y3QgbWRpb19kZXZpY2UgKm1kaW9kZXYpXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUxMS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjc1MTI6c3RhdGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgbXY4OGU2eHh4X29mX21hdGNoW10gPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTEzLVx0e1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MjctXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo3NTI4Ok1PRFVMRV9ERVZJQ0VfVEFCTEUob2YsIG12ODhlNnh4eF9vZl9tYXRjaCk7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTI5LVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzUzMD1zdGF0aWMgc3RydWN0IG1kaW9fZHJpdmVyIG12ODhlNnh4eF9kcml2ZXIgPSB7XG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUzNS1cdFx0Lm5hbWUgPSBcJiMzNDttdjg4ZTYwODVcJiMzNDssXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo3NTM2Olx0XHQub2ZfbWF0Y2hfdGFibGUgPSBtdjg4ZTZ4eHhfb2ZfbWF0Y2gsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTM3LVx0XHQucG0gPSBcdTAwMjZtdjg4ZTZ4eHhfcG1fb3BzLFxuJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjI3LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0NTwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiAxODMxNwoJCQkJCQkJb3V0cHV0OiAyMgoJCQkJCQkJdGhvdWdodHM6IDEzMQoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipJbnZlc3RpZ2F0aW5nIHRoZSBtdjg4ZTZ4eHggRHJpdmVyJiMzOTtzIERldmljZSBSZWdpc3RyYXRpb24qKgoKT2theSwgc28gSSYjMzk7bSBsb29raW5nIGF0IHRoaXMgYG12ODhlNnh4eF9kcml2ZXJgLCBhbmQgc29tZXRoaW5nJiMzOTtzIGJ1Z2dpbmcgbWUuIFNwZWNpZmljYWxseSwgdGhlIGRyaXZlciYjMzk7cyBnb3QgYC5uYW1lID0gJiMzNDttdjg4ZTYwODUmIzM0O2AuIFRoYXQgbmFtZSBtYXRjaGluZyBpcyBhbiBpbnRlcmVzdGluZyB0ZWNobmlxdWUgZm9yIE1ESU8gZHJpdmVycywgYW5kIGl0IG1ha2VzIHNlbnNlIGlmIHRoZSBidXMgaXRzZWxmIHJlZ2lzdGVycyBhIGRldmljZSAqd2l0aCogdGhhdCBzcGVjaWZpYyBuYW1lLiBCdXQgdGhlIHF1ZXN0aW9uIGlzLCBob3cgZG9lcyBhbiBNRElPIGRldmljZSAqZ2V0KiByZWdpc3RlcmVkIHdpdGggdGhhdCBleGFjdCBzdHJpbmcsICYjMzQ7bXY4OGU2MDg1JiMzNDs/CgpNeSBleHBlcmllbmNlIHNheXMgdGhhdCBNRElPIGRldmljZXMgYXJlIHR5cGljYWxseSBicm91Z2h0IG9ubGluZSBieSB0aGUgTURJTyBidXMgZHJpdmVyLCB3aGljaCB1c2VzIHR3byBtYWluIG1ldGhvZHM6IGhhcmR3YXJlIHByb2JpbmcgKHdoZXJlIHRoZSBQSFkgSUQgaXMgY2hlY2tlZCkgb3IgZGV2aWNlIHRyZWUgY29uZmlndXJhdGlvbnMuIE5vdywgc3dpdGNoZXMuLi4gc3dpdGNoZXMgYXJlIGEgZGlmZmVyZW50IGJlYXN0LiBUaGVpciBQSFkgSURzIG9mdGVuIGFyZW4mIzM5O3Qgc3RhbmRhcmQsIHNvIHRoZSBkZXZpY2UgdHJlZSBpcyB1c3VhbGx5IHRoZSBjcml0aWNhbCBwaWVjZSBpbiBnZXR0aW5nIHRoZW0gaWRlbnRpZmllZCBhbmQgY29ubmVjdGVkLgoKU28sIEkmIzM5O20gZ29pbmcgdG8gZGlnIGRlZXBlci4gSSBuZWVkIHRvIGtub3c6IElzIHRoZXJlIGFueSBvdGhlciBwbGFjZSBpbiB0aGUga2VybmVsIHRoYXQgcmVnaXN0ZXJzIHRoaXMgZGV2aWNlPyBJJiMzOTttIG1pc3Npbmcgc29tZXRoaW5nLCBhbmQgSSBuZWVkIHRvIGZpbmQgdGhlIHJvb3QgY2F1c2UuIFRoaXMgbmFtZSBtYXRjaGluZyBoYXMgdG8gYmUgY29taW5nIGZyb20gc29tZXdoZXJlLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjI4LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0NTwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDttdjg4ZTYwODUmIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7T3V0cHV0JiMzNDs6ICYjMzQ7RG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbD0xOT1wcm9wZXJ0aWVzOlxuLS1cbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWwtMjItICAgICAgLSBlbnVtOlxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbDoyMzogICAgICAgICAgLSBtYXJ2ZWxsLG12ODhlNjA4NVxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbC0yNC0gICAgICAgICAgLSBtYXJ2ZWxsLG12ODhlNjE5MFxuLS1cbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWwtMjYtICAgICAgICBkZXNjcmlwdGlvbjogfFxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbDoyNzogICAgICAgICAgbWFydmVsbCxtdjg4ZTYwODU6IFRoaXMgc3dpdGNoIHVzZXMgYmFzZSBhZGRyZXNzIDB4MTAuXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2RzYS9tYXJ2ZWxsLG12ODhlNnh4eC55YW1sLTI4LSAgICAgICAgICAgIFRoaXMgc3dpdGNoIGFuZCBpdHMgc2libGluZ3Mgd2lsbCBiZSBhdXRvZGV0ZWN0ZWQgZnJvbVxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbDoyOTogICAgICAgICAgICBJRCByZWdpc3RlcnMgZm91bmQgaW4gdGhlIHN3aXRjaCwgc28gb25seSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OyBzaG91bGQgYmVcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWwtMzAtICAgICAgICAgICAgc3BlY2lmaWVkLiBUaGlzIGluY2x1ZGVzIHRoZSBmb2xsb3dpbmcgbGlzdCBvZiBNVjg4RXh4eHggc3dpdGNoZXM6XG4tLVxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbC00My0gICAgICAtIGl0ZW1zOlxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbDo0NDogICAgICAgICAgLSBjb25zdDogbWFydmVsbCx0dXJyaXMtbW94LW12ODhlNjA4NVxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbDo0NTogICAgICAgICAgLSBjb25zdDogbWFydmVsbCxtdjg4ZTYwODVcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWwtNDYtICAgICAgLSBpdGVtczpcbi0tXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2RzYS9tYXJ2ZWxsLG12ODhlNnh4eC55YW1sPTEwOT1leGFtcGxlczpcbi0tXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2RzYS9tYXJ2ZWxsLG12ODhlNnh4eC55YW1sLTExNi0gICAgICAgIGV0aGVybmV0LXN3aXRjaEAwIHtcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWw6MTE3OiAgICAgICAgICAgIGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWwtMTE4LSAgICAgICAgICAgIHJlZyA9IFx1MDAzYzBcdTAwM2U7XG4tLVxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9ldGhlcm5ldC1zd2l0Y2gueWFtbD0yMz1hbGxPZjpcbi0tXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2V0aGVybmV0LXN3aXRjaC55YW1sLTMyLSAgICAgICAgICAgIGVudW06XG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2V0aGVybmV0LXN3aXRjaC55YW1sOjMzOiAgICAgICAgICAgICAgLSBtYXJ2ZWxsLHR1cnJpcy1tb3gtbXY4OGU2MDg1XG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2V0aGVybmV0LXN3aXRjaC55YW1sLTM0LSAgICAgICAgICAgICAgLSBtYXJ2ZWxsLHR1cnJpcy1tb3gtbXY4OGU2MTkwXG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcwLXJkLmR0cz0xNTI9XHRzd2l0Y2g6IGV0aGVybmV0LXN3aXRjaEAxMCB7XG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zNzAtcmQuZHRzOjE1MzpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcwLXJkLmR0cy0xNTQtXHRcdHJlZyA9IFx1MDAzYzB4MTBcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg1LWNsZWFyZm9nLWd0ci1zNC5kdHM9MTY9XHRzd2l0Y2gwOiBldGhlcm5ldC1zd2l0Y2hANCB7XG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODUtY2xlYXJmb2ctZ3RyLXM0LmR0czoxNzpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg1LWNsZWFyZm9nLWd0ci1zNC5kdHMtMTgtXHRcdHJlZyA9IFx1MDAzYzRcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg1LWxpbmtzeXMuZHRzaT0xNjE9XHRldGhlcm5ldC1zd2l0Y2hAMCB7XG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODUtbGlua3N5cy5kdHNpOjE2MjpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg1LWxpbmtzeXMuZHRzaS0xNjMtXHRcdHJlZyA9IFx1MDAzYzBcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg1LXR1cnJpcy1vbW5pYS5kdHM9NDY3PVx0ZXRoZXJuZXQtc3dpdGNoQDEwIHtcbi0tXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODUtdHVycmlzLW9tbmlhLmR0cy00NjktXHRcdHBpbmN0cmwtMCA9IFx1MDAzY1x1MDAyNnN3aW50X3BpbnNcdTAwM2U7XG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODUtdHVycmlzLW9tbmlhLmR0czo0NzA6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM4NS10dXJyaXMtb21uaWEuZHRzLTQ3MS1cbi0tXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODgtY2xlYXJmb2cuZHRzPTk2PVx0ZXRoZXJuZXQtc3dpdGNoQDQge1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg4LWNsZWFyZm9nLmR0czo5NzpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg4LWNsZWFyZm9nLmR0cy05OC1cdFx0cmVnID0gXHUwMDNjNFx1MDAzZTtcbi0tXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS14cC1saW5rc3lzLW1hbWJhLmR0cz0yNjg9XHRldGhlcm5ldC1zd2l0Y2hAMCB7XG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS14cC1saW5rc3lzLW1hbWJhLmR0czoyNjk6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLXhwLWxpbmtzeXMtbWFtYmEuZHRzLTI3MC1cdFx0cmVnID0gXHUwMDNjMFx1MDAzZTtcbi0tXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLTRpLWVkZ2UtMjAwLmR0cz04Mj1cdHN3aXRjaDA6IHN3aXRjaEAxMSB7XG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLTRpLWVkZ2UtMjAwLmR0czo4MzpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC00aS1lZGdlLTIwMC5kdHMtODQtXHRcdHJlZyA9IFx1MDAzYzB4MTFcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1kaXI2NjUuZHRzPTE5Nj1cdHN3aXRjaEAwIHtcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtZGlyNjY1LmR0czoxOTc6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtZGlyNjY1LmR0cy0xOTgtXHRcdCNhZGRyZXNzLWNlbGxzID0gXHUwMDNjMVx1MDAzZTtcbi0tXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLWwtNTAuZHRzPTIxMT1cdHN3aXRjaDA6IHN3aXRjaEAxMCB7XG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLWwtNTAuZHRzOjIxMjpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1sLTUwLmR0cy0yMTMtXHRcdCNhZGRyZXNzLWNlbGxzID0gXHUwMDNjMVx1MDAzZTtcbi0tXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLWwtNTAuZHRzPTI2OT1cdHN3aXRjaEAxMSB7XG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLWwtNTAuZHRzOjI3MDpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1sLTUwLmR0cy0yNzEtXHRcdCNhZGRyZXNzLWNlbGxzID0gXHUwMDNjMVx1MDAzZTtcbi0tXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLWxpbmtzeXMtdmlwZXIuZHRzPTE2Mj1cdHN3aXRjaEAxMCB7XG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLWxpbmtzeXMtdmlwZXIuZHRzOjE2MzpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1saW5rc3lzLXZpcGVyLmR0cy0xNjQtXHRcdCNhZGRyZXNzLWNlbGxzID0gXHUwMDNjMVx1MDAzZTtcbi0tXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLW12ODhmNjI4MWd0dy1nZS5kdHM9MTEzPVx0c3dpdGNoQDAge1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1tdjg4ZjYyODFndHctZ2UuZHRzOjExNDpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1tdjg4ZjYyODFndHctZ2UuZHRzLTExNS1cdFx0I2FkZHJlc3MtY2VsbHMgPSBcdTAwM2MxXHUwMDNlO1xuLS1cbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtcmQ4OGY2MjgxLmR0c2k9Nzc9XHRzd2l0Y2g6IHN3aXRjaEAwIHtcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtcmQ4OGY2MjgxLmR0c2k6Nzg6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtcmQ4OGY2MjgxLmR0c2ktNzktXHRcdCNhZGRyZXNzLWNlbGxzID0gXHUwMDNjMVx1MDAzZTtcbi0tXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL29yaW9uNXgtbmV0Z2Vhci13bnI4NTR0LmR0cz0xMDk9XHRzd2l0Y2g6IHN3aXRjaEAwIHtcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwvb3Jpb241eC1uZXRnZWFyLXducjg1NHQuZHRzOjExMDpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9vcmlvbjV4LW5ldGdlYXItd25yODU0dC5kdHMtMTExLVx0XHQjYWRkcmVzcy1jZWxscyA9IFx1MDAzYzFcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg1MS16aWktcmR1MS5kdHM9MTczPVx0XHRzd2l0Y2hAMCB7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDUxLXppaS1yZHUxLmR0czoxNzQ6XHRcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg1MS16aWktcmR1MS5kdHMtMTc1LVx0XHRcdHJlZyA9IFx1MDAzYzBcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg1MS16aWktc2N1Mi1tZXp6LmR0cz00OT1cdFx0c3dpdGNoQDAge1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg1MS16aWktc2N1Mi1tZXp6LmR0czo1MDpcdFx0XHRjb21wYXRpYmxlID0gXCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDs7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDUxLXppaS1zY3UyLW1lenouZHRzLTUxLVx0XHRcdHJlZyA9IFx1MDAzYzBcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg1MS16aWktc2N1My1lc2IuZHRzPTIxNj1cdFx0c3dpdGNoQDAge1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg1MS16aWktc2N1My1lc2IuZHRzOjIxNzpcdFx0XHRjb21wYXRpYmxlID0gXCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDs7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDUxLXppaS1zY3UzLWVzYi5kdHMtMjE4LVx0XHRcdHJlZyA9IFx1MDAzYzBcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2ZGwteWFwcDQzLWNvbW1vbi5kdHNpPTEyOD1cdFx0c3dpdGNoQDAge1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2ZGwteWFwcDQzLWNvbW1vbi5kdHNpOjEyOTpcdFx0XHRjb21wYXRpYmxlID0gXCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDs7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDZkbC15YXBwNDMtY29tbW9uLmR0c2ktMTMwLVx0XHRcdHJlZyA9IFx1MDAzYzBcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2cS1ieDUwdjMuZHRzaT0xMDU9XHRcdHN3aXRjaDogc3dpdGNoQDAge1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2cS1ieDUwdjMuZHRzaToxMDY6XHRcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7OyAvKiA4OGU2MjQwKi9cbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NnEtYng1MHYzLmR0c2ktMTA3LVx0XHRcdHJlZyA9IFx1MDAzYzBcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2cWRsLWd3NTkwNC5kdHNpPTE3ND1cdFx0c3dpdGNoQDAge1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2cWRsLWd3NTkwNC5kdHNpOjE3NTpcdFx0XHRjb21wYXRpYmxlID0gXCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDs7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDZxZGwtZ3c1OTA0LmR0c2ktMTc2LVx0XHRcdHJlZyA9IFx1MDAzYzBcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2cWRsLXppaS1yZHUyLmR0c2k9NzMwPVx0XHRzd2l0Y2g6IHN3aXRjaEAwIHtcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NnFkbC16aWktcmR1Mi5kdHNpOjczMTpcdFx0XHRjb21wYXRpYmxlID0gXCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDs7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDZxZGwtemlpLXJkdTIuZHRzaS03MzItXHRcdFx0cGluY3RybC0wID0gXHUwMDNjXHUwMDI2cGluY3RybF9zd2l0Y2hfaXJxXHUwMDNlO1xuLS1cbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14N2QtemlpLXJwdTIuZHRzPTIyOD1cdFx0c3dpdGNoOiBzd2l0Y2hAMCB7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDdkLXppaS1ycHUyLmR0czoyMjk6XHRcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg3ZC16aWktcnB1Mi5kdHMtMjMwLVx0XHRcdHBpbmN0cmwtbmFtZXMgPSBcJiMzNDtkZWZhdWx0XCYjMzQ7O1xuLS1cbmFyY2gvYXJtL2Jvb3QvZHRzL254cC92Zi92ZjYxMC16aWktY2Z1MS5kdHM9MTY1PVx0XHRzd2l0Y2gwOiBldGhlcm5ldC1zd2l0Y2hAMCB7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWNmdTEuZHRzOjE2NjpcdFx0XHRjb21wYXRpYmxlID0gXCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDs7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWNmdTEuZHRzLTE2Ny1cdFx0XHRwaW5jdHJsLW5hbWVzID0gXCYjMzQ7ZGVmYXVsdFwmIzM0Oztcbi0tXG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWRldi1yZXYtYi5kdHM9MzA9XHRcdFx0c3dpdGNoMDogc3dpdGNoQDAge1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL3ZmL3ZmNjEwLXppaS1kZXYtcmV2LWIuZHRzOjMxOlx0XHRcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL3ZmL3ZmNjEwLXppaS1kZXYtcmV2LWIuZHRzLTMyLVx0XHRcdFx0cGluY3RybC0wID0gXHUwMDNjXHUwMDI2cGluY3RybF9ncGlvX3N3aXRjaDBcdTAwM2U7XG4tLVxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL3ZmL3ZmNjEwLXppaS1kZXYtcmV2LWIuZHRzPTExND1cdFx0XHRzd2l0Y2gxOiBzd2l0Y2hAMCB7XG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWRldi1yZXYtYi5kdHM6MTE1Olx0XHRcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL3ZmL3ZmNjEwLXppaS1kZXYtcmV2LWIuZHRzLTExNi1cdFx0XHRcdHBpbmN0cmwtMCA9IFx1MDAzY1x1MDAyNnBpbmN0cmxfZ3Bpb19zd2l0Y2gxXHUwMDNlO1xuLS1cbmFyY2gvYXJtL2Jvb3QvZHRzL254cC92Zi92ZjYxMC16aWktZGV2LXJldi1iLmR0cz0yMDE9XHRcdFx0c3dpdGNoMjogc3dpdGNoQDAge1xuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL3ZmL3ZmNjEwLXppaS1kZXYtcmV2LWIuZHRzOjIwMjpcdFx0XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC92Zi92ZjYxMC16aWktZGV2LXJldi1iLmR0cy0yMDMtXHRcdFx0XHRyZWcgPSBcdTAwM2MwXHUwMDNlO1xuLS1cbmFyY2gvYXJtNjQvYm9vdC9kdHMvZnJlZXNjYWxlL2lteDhtcS16aWktdWx0cmEuZHRzaT0xNTA9XHRcdHN3aXRjaDogc3dpdGNoQDAge1xuYXJjaC9hcm02NC9ib290L2R0cy9mcmVlc2NhbGUvaW14OG1xLXppaS11bHRyYS5kdHNpOjE1MTpcdFx0XHRjb21wYXRpYmxlID0gXCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDs7XG5hcmNoL2FybTY0L2Jvb3QvZHRzL2ZyZWVzY2FsZS9pbXg4bXEtemlpLXVsdHJhLmR0c2ktMTUyLVx0XHRcdHBpbmN0cmwtMCA9IFx1MDAzY1x1MDAyNnBpbmN0cmxfc3dpdGNoX2lycVx1MDAzZTtcbi0tXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtZXNwcmVzc29iaW4tdWx0cmEuZHRzPTEyNT1cdHN3aXRjaDA6IGV0aGVybmV0LXN3aXRjaEAzIHtcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC1lc3ByZXNzb2Jpbi11bHRyYS5kdHM6MTI2Olx0XHRjb21wYXRpYmxlID0gXCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDs7XG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtZXNwcmVzc29iaW4tdWx0cmEuZHRzLTEyNy1cdFx0cmVnID0gXHUwMDNjM1x1MDAzZTtcbi0tXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtZXNwcmVzc29iaW4uZHRzaT0xNDc9XHRzd2l0Y2gwOiBldGhlcm5ldC1zd2l0Y2hAMSB7XG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtZXNwcmVzc29iaW4uZHRzaToxNDg6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC1lc3ByZXNzb2Jpbi5kdHNpLTE0OS1cdFx0cmVnID0gXHUwMDNjMVx1MDAzZTtcbi0tXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtZ2wtbXYxMDAwLmR0cz0xNTA9XHRzd2l0Y2gwOiBldGhlcm5ldC1zd2l0Y2hAMSB7XG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtZ2wtbXYxMDAwLmR0czoxNTE6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC1nbC1tdjEwMDAuZHRzLTE1Mi1cdFx0cmVnID0gXHUwMDNjMVx1MDAzZTtcbi0tXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtdHVycmlzLW1veC5kdHM9NDM4PVx0c3dpdGNoMEAyIHtcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC10dXJyaXMtbW94LmR0czo0Mzk6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLHR1cnJpcy1tb3gtbXY4OGU2MDg1XCYjMzQ7LCBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC10dXJyaXMtbW94LmR0cy00NDAtXHRcdHJlZyA9IFx1MDAzYzB4Mlx1MDAzZTtcbi0tXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtdHVycmlzLW1veC5kdHM9NjMyPVx0c3dpdGNoMUAyIHtcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC10dXJyaXMtbW94LmR0czo2MzM6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLHR1cnJpcy1tb3gtbXY4OGU2MDg1XCYjMzQ7LCBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC10dXJyaXMtbW94LmR0cy02MzQtXHRcdHJlZyA9IFx1MDAzYzB4Mlx1MDAzZTtcbi0tXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtdHVycmlzLW1veC5kdHM9ODE3PVx0c3dpdGNoMkAyIHtcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC10dXJyaXMtbW94LmR0czo4MTg6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLHR1cnJpcy1tb3gtbXY4OGU2MDg1XCYjMzQ7LCBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC10dXJyaXMtbW94LmR0cy04MTktXHRcdHJlZyA9IFx1MDAzYzB4Mlx1MDAzZTtcbi0tXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTcwNDAtbW9jaGFiaW4uZHRzPTMwND1cdHN3aXRjaDogZXRoZXJuZXQtc3dpdGNoQDMge1xuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS03MDQwLW1vY2hhYmluLmR0czozMDU6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtNzA0MC1tb2NoYWJpbi5kdHMtMzA2LVx0XHRyZWcgPSBcdTAwM2MzXHUwMDNlO1xuLS1cbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtODA0MC1jbGVhcmZvZy1ndC04ay5kdHM9NTAwPVx0c3dpdGNoMDogZXRoZXJuZXQtc3dpdGNoQDQge1xuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS04MDQwLWNsZWFyZm9nLWd0LThrLmR0czo1MDE6XHRcdGNvbXBhdGlibGUgPSBcJiMzNDttYXJ2ZWxsLG12ODhlNjA4NVwmIzM0OztcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtODA0MC1jbGVhcmZvZy1ndC04ay5kdHMtNTAyLVx0XHRyZWcgPSBcdTAwM2M0XHUwMDNlO1xuLS1cbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9jbjkxMzAtY2YtcHJvLmR0cz04OD1cdGV0aGVybmV0LXN3aXRjaEA0IHtcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9jbjkxMzAtY2YtcHJvLmR0czo4OTpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2NuOTEzMC1jZi1wcm8uZHRzLTkwLVx0XHRyZWcgPSBcdTAwM2M0XHUwMDNlO1xuLS1cbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9jbjkxMzItY2xlYXJmb2cuZHRzPTI2ND1cdGV0aGVybmV0LXN3aXRjaEA0IHtcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9jbjkxMzItY2xlYXJmb2cuZHRzOjI2NTpcdFx0Y29tcGF0aWJsZSA9IFwmIzM0O21hcnZlbGwsbXY4OGU2MDg1XCYjMzQ7O1xuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2NuOTEzMi1jbGVhcmZvZy5kdHMtMjY2LVx0XHRyZWcgPSBcdTAwM2M0XHUwMDNlO1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTQyMTc9c3RhdGljIGludCBtdjg4ZTZ4eHhfc2V0X2VlcHJvbShzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMsXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDIzNS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQyMzY6c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjA4NV9vcHMgPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00MjM3LVx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MDk3ICovXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0MjM4Olx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0MjM5Olx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQyNDAtXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00MjcxLVx0LnJlc2V0ID0gbXY4OGU2MTg1X2cxX3Jlc2V0LFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDI3MjpcdC5ybXVfZGlzYWJsZSA9IG12ODhlNjA4NV9nMV9ybXVfZGlzYWJsZSxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQyNzMtXHQudnR1X2dldG5leHQgPSBtdjg4ZTYzNTJfZzFfdnR1X2dldG5leHQsXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NDI4MT1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MDk1X29wcyA9IHtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQyODItXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYwOTUgKi9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQyODM6XHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQyODQ6XHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDI4NS1cdC5zZXRfc3dpdGNoX21hYyA9IG12ODhlNnh4eF9nMV9zZXRfc3dpdGNoX21hYyxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00MjkwLVx0LnBvcnRfc2V0X3NwZWVkX2R1cGxleCA9IG12ODhlNjE4NV9wb3J0X3NldF9zcGVlZF9kdXBsZXgsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0MjkxOlx0LnBvcnRfc2V0X2ZyYW1lX21vZGUgPSBtdjg4ZTYwODVfcG9ydF9zZXRfZnJhbWVfbW9kZSxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQyOTItXHQucG9ydF9zZXRfdWNhc3RfZmxvb2QgPSBtdjg4ZTYxODVfcG9ydF9zZXRfZm9yd2FyZF91bmtub3duLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTQzMTM9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjA5N19vcHMgPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00MzE0LVx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MDk3ICovXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0MzE1Olx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0MzE2Olx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQzMTctXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00MzQ5LVx0LnJlc2V0ID0gbXY4OGU2MzUyX2cxX3Jlc2V0LFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDM1MDpcdC5ybXVfZGlzYWJsZSA9IG12ODhlNjA4NV9nMV9ybXVfZGlzYWJsZSxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQzNTEtXHQudnR1X2dldG5leHQgPSBtdjg4ZTYzNTJfZzFfdnR1X2dldG5leHQsXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NDM2MD1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MTIzX29wcyA9IHtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQzNjEtXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYxNjUgKi9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQzNjI6XHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQzNjM6XHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDM2NC1cdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQzNzItXHQucG9ydF9zZXRfc3BlZWRfZHVwbGV4ID0gbXY4OGU2MTg1X3BvcnRfc2V0X3NwZWVkX2R1cGxleCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQzNzM6XHQucG9ydF9zZXRfZnJhbWVfbW9kZSA9IG12ODhlNjA4NV9wb3J0X3NldF9mcmFtZV9tb2RlLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDM3NC1cdC5wb3J0X3NldF91Y2FzdF9mbG9vZCA9IG12ODhlNjM1Ml9wb3J0X3NldF91Y2FzdF9mbG9vZCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz00NDAxPXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYxMzFfb3BzID0ge1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDQwMi1cdC8qIE1WODhFNlhYWF9GQU1JTFlfNjE4NSAqL1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDQwMzpcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDQwNDpcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NDA1LVx0LnNldF9zd2l0Y2hfbWFjID0gbXY4OGU2eHh4X2cxX3NldF9zd2l0Y2hfbWFjLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTQ0NDE9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjE0MV9vcHMgPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NDQyLVx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MzQxICovXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0NDQzOlx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0NDQ0Olx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ0NDUtXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz00NTAzPXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYxNjFfb3BzID0ge1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDUwNC1cdC8qIE1WODhFNlhYWF9GQU1JTFlfNjE2NSAqL1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDUwNTpcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDUwNjpcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NTA3LVx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NDU1MT1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MTY1X29wcyA9IHtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ1NTItXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYxNjUgKi9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ1NTM6XHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ1NTQ6XHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDU1NS1cdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTQ1ODg9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjE3MV9vcHMgPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NTg5LVx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MzUxICovXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0NTkwOlx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0NTkxOlx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ1OTItXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz00NjM0PXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYxNzJfb3BzID0ge1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDYzNS1cdC8qIE1WODhFNlhYWF9GQU1JTFlfNjM1MiAqL1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDYzNjpcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDYzNzpcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NjM4LVx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NDY5Mj1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MTc1X29wcyA9IHtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ2OTMtXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYzNTEgKi9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ2OTQ6XHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ2OTU6XHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDY5Ni1cdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTQ3Mzg9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjE3Nl9vcHMgPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NzM5LVx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MzUyICovXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0NzQwOlx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0NzQxOlx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ3NDItXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz00Nzk3PXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYxODVfb3BzID0ge1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDc5OC1cdC8qIE1WODhFNlhYWF9GQU1JTFlfNjE4NSAqL1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDc5OTpcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDgwMDpcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00ODAxLVx0LnNldF9zd2l0Y2hfbWFjID0gbXY4OGU2eHh4X2cxX3NldF9zd2l0Y2hfbWFjLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ4MDYtXHQucG9ydF9zZXRfc3BlZWRfZHVwbGV4ID0gbXY4OGU2MTg1X3BvcnRfc2V0X3NwZWVkX2R1cGxleCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ4MDc6XHQucG9ydF9zZXRfZnJhbWVfbW9kZSA9IG12ODhlNjA4NV9wb3J0X3NldF9mcmFtZV9tb2RlLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDgwOC1cdC5wb3J0X3NldF91Y2FzdF9mbG9vZCA9IG12ODhlNjE4NV9wb3J0X3NldF9mb3J3YXJkX3Vua25vd24sXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NTAxMT1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MjQwX29wcyA9IHtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTUwMTItXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYzNTIgKi9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjUwMTM6XHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjUwMTQ6XHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTAxNS1cdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTUwNzI9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjI1MF9vcHMgPSB7XG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTA3NC1cdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYyNTBfZzFfaWVlZV9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTA3NTpcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01MDc2LVx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NTE3OD1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MzIwX29wcyA9IHtcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01MTgwLVx0LnNldHVwX2VycmF0YSA9IG12ODhlNjMyMF9zZXR1cF9lcnJhdGEsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1MTgxOlx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1MTgyOlx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTUxODMtXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz01MjM0PXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYzMjFfb3BzID0ge1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTUyMzYtXHQuc2V0dXBfZXJyYXRhID0gbXY4OGU2MzIwX3NldHVwX2VycmF0YSxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjUyMzc6XHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjUyMzg6XHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTIzOS1cdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTUyOTQ9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjM0MV9vcHMgPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01Mjk1LVx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MzQxICovXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1Mjk2Olx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1Mjk3Olx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTUyOTgtXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz01MzU4PXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYzNTBfb3BzID0ge1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTM1OS1cdC8qIE1WODhFNlhYWF9GQU1JTFlfNjM1MSAqL1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTM2MDpcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTM2MTpcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01MzYyLVx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NTQwND1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MzUxX29wcyA9IHtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTU0MDUtXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYzNTEgKi9cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjU0MDY6XHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjU0MDc6XHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTQwOC1cdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTU0NTI9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjM1Ml9vcHMgPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01NDUzLVx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MzUyICovXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1NDU0Olx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1NDU1Olx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTU0NTYtXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz01NzA3PXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X2luZm8gbXY4OGU2eHh4X3RhYmxlW10gPSB7XG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTc3NC1cdFx0Lm11bHRpX2NoaXAgPSB0cnVlLFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTc3NTpcdFx0Lm9wcyA9IFx1MDAyNm12ODhlNjA4NV9vcHMsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01Nzc2LVx0fSxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz03NTEyPXN0YXRpYyBjb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNlX2lkIG12ODhlNnh4eF9vZl9tYXRjaFtdID0ge1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUxMy1cdHtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjc1MTQ6XHRcdC5jb21wYXRpYmxlID0gXCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDssXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTE1LVx0XHQuZGF0YSA9IFx1MDAyNm12ODhlNnh4eF90YWJsZVtNVjg4RTYwODVdLFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTc1MzA9c3RhdGljIHN0cnVjdCBtZGlvX2RyaXZlciBtdjg4ZTZ4eHhfZHJpdmVyID0ge1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MzQtXHQubWRpb2Rydi5kcml2ZXIgPSB7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo3NTM1Olx0XHQubmFtZSA9IFwmIzM0O212ODhlNjA4NVwmIzM0OyxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MzYtXHRcdC5vZl9tYXRjaF90YWJsZSA9IG12ODhlNnh4eF9vZl9tYXRjaCxcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuYz0yODg9aW50IG12ODhlNjE4NV9nMV9zZXRfbWF4X2ZyYW1lX3NpemUoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgbXR1KVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5jLTMxNi1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5jOjMxNzppbnQgbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmMtMzE4LXtcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuYy0zNTgtXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuYzozNTk6aW50IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmMtMzYwLXtcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuYz01MjY9aW50IG12ODhlNjE4NV9nMV9zZXRfY2FzY2FkZV9wb3J0KHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQpXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmMtNTMyLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmM6NTMzOmludCBtdjg4ZTYwODVfZzFfcm11X2Rpc2FibGUoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmMtNTM0LXtcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaD0zMDk9aW50IG12ODhlNjM5MF9nMV9tZ210X3JzdmQyY3B1KHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCk7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaC0zMTAtXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaDozMTE6aW50IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCk7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaC0zMTItXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaDozMTM6aW50IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKTtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5oLTMxNC1pbnQgbXY4OGU2MjUwX2cxX2llZWVfcHJpX21hcChzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXApO1xuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5oPTMxNj1pbnQgbXY4OGU2MTg1X2cxX3NldF9jYXNjYWRlX3BvcnQoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCk7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaC0zMTctXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaDozMTg6aW50IG12ODhlNjA4NV9nMV9ybXVfZGlzYWJsZShzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXApO1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmgtMzE5LWludCBtdjg4ZTYzNTJfZzFfcm11X2Rpc2FibGUoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKTtcbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuYz04MTk9aW50IG12ODhlNnh4eF9wb3J0X3NldF9lZ3Jlc3NfbW9kZShzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LFxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jLTg1MC1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jOjg1MTppbnQgbXY4OGU2MDg1X3BvcnRfc2V0X2ZyYW1lX21vZGUoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jLTg1Mi1cdFx0XHRcdCAgZW51bSBtdjg4ZTZ4eHhfZnJhbWVfbW9kZSBtb2RlKVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oPTUyOD1pbnQgbXY4OGU2eHh4X3BvcnRfc2V0X2VncmVzc19tb2RlKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaC01MjktXHRcdFx0XHQgICBlbnVtIG12ODhlNnh4eF9lZ3Jlc3NfbW9kZSBtb2RlKTtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oOjUzMDppbnQgbXY4OGU2MDg1X3BvcnRfc2V0X2ZyYW1lX21vZGUoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oLTUzMS1cdFx0XHRcdCAgZW51bSBtdjg4ZTZ4eHhfZnJhbWVfbW9kZSBtb2RlKTtcbi0tXG5uZXQvZHNhL3BvcnQuYz0xNzI2PXN0YXRpYyBjb25zdCBjaGFyICogY29uc3QgZHNhX3N3aXRjaGVzX2FwcGx5X3dvcmthcm91bmRzW10gPSB7XG4tLVxubmV0L2RzYS9wb3J0LmMtMTc3OC0jaWYgSVNfRU5BQkxFRChDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFgpXG5uZXQvZHNhL3BvcnQuYzoxNzc5Olx0XCYjMzQ7bWFydmVsbCxtdjg4ZTYwODVcJiMzNDssXG5uZXQvZHNhL3BvcnQuYy0xNzgwLVx0XCYjMzQ7bWFydmVsbCxtdjg4ZTYxOTBcJiMzNDssXG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MjkvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQ1PC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDMyMzc2CgkJCQkJCQlvdXRwdXQ6IDIzCgkJCQkJCQl0aG91Z2h0czogNDU1CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKk15IEFuYWx5c2lzIG9mIFJlYWNoaW5nIHRoZSBNYXJ2ZWxsIFN3aXRjaCBEcml2ZXIgaW4gc3l6a2FsbGVyKioKCk9rYXksIHNvIEkmIzM5O20gdHJ5aW5nIHRvIGZpZ3VyZSBvdXQgaG93IHRvIGdldCB0aGUgYG1hcnZlbGwsbXY4OGU2MDg1YCBkcml2ZXIgcnVubmluZyBpbiBzeXprYWxsZXIuIFRoZSBwcm9ibGVtIGlzLCB0aGlzIGRyaXZlciBpcyAqb25seSogaW5zdGFudGlhdGVkIHZpYSBEZXZpY2UgVHJlZSwgd2hpY2ggaXMgYSBodWdlIGh1cmRsZS4gU3l6a2FsbGVyIHByaW1hcmlseSBvcGVyYXRlcyBvbiB4ODZfNjQgVk1zIHdpdGggQUNQSSwgbWVhbmluZyBubyBEZXZpY2UgVHJlZSBieSBkZWZhdWx0LiBFdmVuIHdoZW4gaXQgKmRvZXMqIHJ1biBvbiBBUk02NCwgaXQmIzM5O3MgdXNpbmcgYSBmaXhlZCBkZXZpY2UgdHJlZSwgbGlrZSB0aGUgYHZpcnRgIG1hY2hpbmUgaW4gUUVNVSwgd2hpY2ggY2VydGFpbmx5IHdvbiYjMzk7dCBpbmNsdWRlIG15IHRhcmdldCBgbWFydmVsbCxtdjg4ZTYwODVgIGRldmljZS4KClNvLCB0aGUgcXVlc3Rpb24gaXMsIGNhbiBJIGluamVjdCBhcmJpdHJhcnkgRGV2aWNlIFRyZWUgbm9kZXMgZHluYW1pY2FsbHkgd2l0aGluIHN5emthbGxlcj8gIEkmIzM5O20gYWxyZWFkeSBhd2FyZSB0aGF0IHN5emthbGxlciBkb2VzbiYjMzk7dCBoYXZlIGEgKmdlbmVyYWwqIG1lY2hhbmlzbSBmb3IgaW5qZWN0aW5nIERldmljZSBUcmVlIG5vZGVzIOKAkyB0aGVyZSBpc24mIzM5O3Qgc29tZSB1bml2ZXJzYWwgcHNldWRvLXN5c2NhbGwgb3IgY29uZmlndXJhdGlvbiBvcHRpb24gdW5sZXNzIHNvbWV0aGluZyBsaWtlIGBDT05GSUdfT0ZfT1ZFUkxBWWAgaXMgZW5hYmxlZCwgYW5kIGV2ZW4gdGhlbiwgSSYjMzk7ZCBuZWVkIGEgdXNlcnNwYWNlIGludGVyZmFjZSwgd2hpY2ggaXMgcmFyZWx5LCBpZiBldmVyLCBleHBvc2VkIGluIHN5emthbGxlci4KCkxldCBtZSB0aGlua+KApiAgSSAqZG8qIHNlZSB0aGluZ3MgbGlrZSBgc3l6X3VzYl9jb25uZWN0YCBhbmQgYHN5el84MDIxMV9pbmplY3RfZnJhbWVgLiBJcyB0aGVyZSAqYW55dGhpbmcqIGxpa2UgYSBgc3l6X21kaW9fY29ubmVjdGA/IE5vcGUsIG5vdGhpbmcgbGlrZSB0aGF0LiAgQWxyaWdodCwgY2FuIEkgcHJvYmUgdGhpcyBkcml2ZXIgdXNpbmcgc29tZXRoaW5nIGxpa2UgbmV0bGluayBvciBzeXNmcz8gTm90IGxpa2VseS4gTURJTyBkcml2ZXJzIGFyZSB0cmlnZ2VyZWQgd2hlbiB0aGUgTURJTyBidXMgKm1hdGNoZXMqIHRoZSBkZXZpY2UsIGJ1dCB0aGVyZSBpc24mIzM5O3QgYW4gTURJTyBidXMgcmVnaXN0ZXJlZCB3aXRoIHRoaXMgc3BlY2lmaWMgZGV2aWNlIGluIHN5emthbGxlciYjMzk7cyBzdGFuZGFyZCBlbnZpcm9ubWVudC4gU28sIGJhc2ljYWxseSwgdGhlIGBkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2AgY29kZSBpcyBjb21wbGV0ZWx5IHVucmVhY2hhYmxlLCByaWdodD8KCldhaXQsIG1heWJlIEkgY2FuIHVzZSBgZHNhX2xvb3BgIGFuZCBtb2RpZnkgaXQ/IEhtbSwgbm8sIHRoYXQmIzM5O3MganVzdCBhIGZpeGVkIG1vY2suIFdoYXQgaWYgSSB1c2UgUENJIHRvIGVtdWxhdGUgTURJTz8gU29tZSBuZXR3b3JrIGNhcmRzICpkbyogaGF2ZSBNRElPIGJ1c2VzLCBidXQgdGhleSBwcm9iZSB0aGVpciAqb3duKiBQSFlzLiBUaGV5JiMzOTtyZSBub3QgbG9va2luZyBmb3IgYSBEU0Egc3dpdGNoIHVubGVzcyB0aGUgRGV2aWNlIFRyZWUgb3IgcGxhdGZvcm0gZGF0YSBzYXlzIHNvLiBPbiB4ODYsIHRoaXMgcGxhdGZvcm0gZGF0YSB1c3VhbGx5IGNvbWVzIGZyb20gYm9hcmQgZmlsZXMgKHdoaWNoIGRvbiYjMzk7dCBleGlzdCBmb3IgeDg2KSBvciBmcm9tIGEgUENJIGRyaXZlci4gVGhlIGZpbmFsIHF1ZXN0aW9uIGlzLCBkbyBJIGtub3cgb2YgYW55IFBDSSBkcml2ZXIgdGhhdCB3b3VsZCBpbnN0YW50aWF0ZSBhbiBgbXY4OGU2eHh4YCB1c2luZyBwbGF0Zm9ybSBkYXRhPyBUaGF04oCZcyB3aGVyZSBJIG5lZWQgdG8gZm9jdXMgbXkgZWZmb3J0cy4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4zMC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDU8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7bXY4OGU2eHh4X3BkYXRhJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTcyOTQ9c3RhdGljIGNvbnN0IHZvaWQgKnBkYXRhX2RldmljZV9nZXRfbWF0Y2hfZGF0YShzdHJ1Y3QgZGV2aWNlICpkZXYpXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzI5Ni1cdGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgKm1hdGNoZXMgPSBkZXYtXHUwMDNlZHJpdmVyLVx1MDAzZW9mX21hdGNoX3RhYmxlO1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzI5NzpcdGNvbnN0IHN0cnVjdCBkc2FfbXY4OGU2eHh4X3BkYXRhICpwZGF0YSA9IGRldi1cdTAwM2VwbGF0Zm9ybV9kYXRhO1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzI5OC1cbi0tXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz03MzIyPXN0YXRpYyBpbnQgbXY4OGU2eHh4X3Byb2JlKHN0cnVjdCBtZGlvX2RldmljZSAqbWRpb2RldilcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTczMjMte1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzMyNDpcdHN0cnVjdCBkc2FfbXY4OGU2eHh4X3BkYXRhICpwZGF0YSA9IG1kaW9kZXYtXHUwMDNlZGV2LnBsYXRmb3JtX2RhdGE7XG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03MzI1LVx0Y29uc3Qgc3RydWN0IG12ODhlNnh4eF9pbmZvICpjb21wYXRfaW5mbyA9IE5VTEw7XG4tLVxuaW5jbHVkZS9saW51eC9wbGF0Zm9ybV9kYXRhL212ODhlNnh4eC5oLTYtXG5pbmNsdWRlL2xpbnV4L3BsYXRmb3JtX2RhdGEvbXY4OGU2eHh4Lmg6NzpzdHJ1Y3QgZHNhX212ODhlNnh4eF9wZGF0YSB7XG5pbmNsdWRlL2xpbnV4L3BsYXRmb3JtX2RhdGEvbXY4OGU2eHh4LmgtOC1cdC8qIE11c3QgYmUgZmlyc3QsIHN1Y2ggdGhhdCBkc2FfcmVnaXN0ZXJfc3dpdGNoKCkgY2FuIGFjY2VzcyB0aGlzXG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MzEvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzAzIDA3OjQ1PC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDMzODMzCgkJCQkJCQlvdXRwdXQ6IDI2CgkJCQkJCQl0aG91Z2h0czogMjYKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPk9rYXksIGxldCYjMzk7cyBkaXZlIGludG8gdGhpcy4gSGVyZSYjMzk7cyBteSB0aG91Z2h0IHByb2Nlc3Mgb24gdGhpcyBzcGVjaWZpYyBxdWVzdGlvbiwgc3VtbWFyaXplZCBhcyB0aG91Z2ggaXQgd2VyZSBteSBvd246CgoqKkludmVzdGlnYXRpbmcgYGRzYV9tdjg4ZTZ4eHhfcGRhdGFgIFVzYWdlKioKCkFscmlnaHQsIHRoZSBvYmplY3RpdmUgaXMgdG8gZmlndXJlIG91dCB0aGUgc2NvcGUgb2YgYGRzYV9tdjg4ZTZ4eHhfcGRhdGFgLiBNeSBmaXJzdCBpbnN0aW5jdCBpcyB0byBzZWUgaG93IHdpZGVseSB0aGlzIHRoaW5nIGlzIGFjdHVhbGx5IGJlaW5nIGVtcGxveWVkLiBJcyBpdCBwdXJlbHkgaW50ZXJuYWwgdG8gdGhlIGRyaXZlciwgb3IgZG9lcyBpdCBoYXZlIGFuIGluZmx1ZW5jZSBlbHNld2hlcmUgaW4gdGhlIHN5c3RlbSwgcG9zc2libHkgaW4gYW5vdGhlciBjb21wb25lbnQgb2YgdGhpcyBkcml2ZXI/IEdldHRpbmcgdGhlIHByZWNpc2UgcGljdHVyZSByZXF1aXJlcyBhIHRhcmdldGVkIHNlYXJjaC4gSSBuZWVkIHRvIHRyYWNrIGRvd24gYWxsIGluc3RhbmNlcyB3aGVyZSB0aGlzIHNwZWNpZmljIGRhdGEgc3RydWN0dXJlIGlzIHJlZmVyZW5jZWQgb3V0c2lkZSB0aGUgaW1tZWRpYXRlIGRyaXZlciBjb2RlLiBJJiMzOTtsbCBuZWVkIHRvIHVzZSBzb21lIHRlY2huaXF1ZXMgdG8gZG8gdGhpcy4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4zMi8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDU8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7ZHNhX212ODhlNnh4eF9wZGF0YSYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDtkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz03Mjk0PXN0YXRpYyBjb25zdCB2b2lkICpwZGF0YV9kZXZpY2VfZ2V0X21hdGNoX2RhdGEoc3RydWN0IGRldmljZSAqZGV2KVxuLS1cbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTcyOTYtXHRjb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNlX2lkICptYXRjaGVzID0gZGV2LVx1MDAzZWRyaXZlci1cdTAwM2VvZl9tYXRjaF90YWJsZTtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjcyOTc6XHRjb25zdCBzdHJ1Y3QgZHNhX212ODhlNnh4eF9wZGF0YSAqcGRhdGEgPSBkZXYtXHUwMDNlcGxhdGZvcm1fZGF0YTtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTcyOTgtXG4tLVxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzMyMj1zdGF0aWMgaW50IG12ODhlNnh4eF9wcm9iZShzdHJ1Y3QgbWRpb19kZXZpY2UgKm1kaW9kZXYpXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03MzIzLXtcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjczMjQ6XHRzdHJ1Y3QgZHNhX212ODhlNnh4eF9wZGF0YSAqcGRhdGEgPSBtZGlvZGV2LVx1MDAzZWRldi5wbGF0Zm9ybV9kYXRhO1xuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzMyNS1cdGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfaW5mbyAqY29tcGF0X2luZm8gPSBOVUxMO1xuLS1cbmluY2x1ZGUvbGludXgvcGxhdGZvcm1fZGF0YS9tdjg4ZTZ4eHguaC02LVxuaW5jbHVkZS9saW51eC9wbGF0Zm9ybV9kYXRhL212ODhlNnh4eC5oOjc6c3RydWN0IGRzYV9tdjg4ZTZ4eHhfcGRhdGEge1xuaW5jbHVkZS9saW51eC9wbGF0Zm9ybV9kYXRhL212ODhlNnh4eC5oLTgtXHQvKiBNdXN0IGJlIGZpcnN0LCBzdWNoIHRoYXQgZHNhX3JlZ2lzdGVyX3N3aXRjaCgpIGNhbiBhY2Nlc3MgdGhpc1xuJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjMzLzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8wMyAwNzo0NTwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiAzNDQ3OQoJCQkJCQkJb3V0cHV0OiAxMTQKCQkJCQkJCXRob3VnaHRzOiAxNDcKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqVW5yZWFjaGFibGUgQ29kZSBpbiBWaXJ0dWFsaXplZCBFbnZpcm9ubWVudHMqKgoKT2theSwgaGVyZSYjMzk7cyB0aGUgc2l0dWF0aW9uIGFzIEkgdW5kZXJzdGFuZCBpdC4gVGhpcyBwYXJ0aWN1bGFyIHBpZWNlIG9mIGNvZGUsIHNwZWNpZmljYWxseSB0aGUgTWFydmVsbCA4OEU2eHh4IERTQSBzd2l0Y2ggZHJpdmVyLCBpcyBpbiBhIGJpdCBvZiBhIHBpY2tsZS4gSSYjMzk7dmUgbG9va2VkIHRocm91Z2ggdGhlIGtlcm5lbCwgYW5kIGl0JiMzOTtzIGNsZWFyIHRoaXMgZGV2aWNlIGlzbiYjMzk7dCBiZWluZyBpbnN0YW50aWF0ZWQgdGhyb3VnaCBhbnkgc3RhbmRhcmQgcGxhdGZvcm0gZGF0YSBtZXRob2RzLiBObyBib2FyZCBmaWxlcyBvciBQQ0kgZHJpdmVycyBhcmUgc2V0dGluZyBpdCB1cC4gSXQmIzM5O3MgKnNvbGVseSogcmVsaWFudCBvbiBEZXZpY2UgVHJlZSAoRFQpIGZvciBpdHMgaW5zdGFudGlhdGlvbi4KCk5vdywgaGVyZSYjMzk7cyB0aGUga2lja2VyOiBteSBmb2N1cyBpcyBvbiBmdXp6aW5nLCBzcGVjaWZpY2FsbHkgd2l0aGluIHZpcnR1YWxpemVkIGVudmlyb25tZW50cy4gQW5kIHRoZSBrZXkgaGVyZSBpcyB0aGF0IG5laXRoZXIgdGhlIHN0YW5kYXJkIGBzeXprYWxsZXJgIGVudmlyb25tZW50cyBJIHVzZSwgd2hldGhlciBpdCYjMzk7cyB4ODZfNjQgVk1zIG9yIEFSTTY0IFZNcyB3aXRoIGEgYHZpcnRgIERULCBpbmNsdWRlIHRoaXMgc3BlY2lmaWMgZGV2aWNlIGluIHRoZWlyIERldmljZSBUcmVlLiBFc3NlbnRpYWxseSwgdGhpcyBkcml2ZXIgaXMgY29tcGxldGVseSBhYnNlbnQgZnJvbSB0aGUgdmlydHVhbGl6ZWQgbGFuZHNjYXBlIEkmIzM5O20gaW50ZXJlc3RlZCBpbi4KClRoZXJlZm9yZSwgYmVjYXVzZSB0aGlzIGRyaXZlciYjMzk7cyBwcm9iaW5nIGlzIGVudGlyZWx5IGRlcGVuZGVudCBvbiBEZXZpY2UgVHJlZSwgYW5kIERldmljZSBUcmVlIGlzIG5vdCBwcmVzZW50IGluIG15IHRhcmdldCB2aXJ0dWFsaXplZCBmdXp6aW5nIGVudmlyb25tZW50cywgdGhpcyBjb2RlIHBhdGggaXMgdW5yZWFjaGFibGUuIFRoZXJlJiMzOTtzIGp1c3Qgbm8gd2F5IGl0JiMzOTtzIGdvaW5nIHRvIHByb2JlIG9yIGV4ZWN1dGUgYW55IGZ1bmN0aW9uYWxpdHkgaW4gbXkgc2NlbmFyaW9zLgoKU28sIEkmIzM5O20gZ29pbmcgdG8gaGF2ZSB0byBzZXQgYFdvcnRoRnV6emluZ2AgdG8gYGZhbHNlYC4gTXkgcmVhc29uaW5nIGlzIHN0cmFpZ2h0Zm9yd2FyZDogdGhpcyBpcyBhIGhhcmR3YXJlLXNwZWNpZmljIERTQSBzd2l0Y2ggZHJpdmVyIGZvciB0aGUgTWFydmVsbCA4OEU2eHh4IGZhbWlseSwgYW5kIGl0cyBwcm9iaW5nIHJlbGllcyBleGNsdXNpdmVseSBvbiBEZXZpY2UgVHJlZS4gU2luY2UgRGV2aWNlIFRyZWUgaXMgbm90IHByZXNlbnQgb3IgY29uZmlndXJlZCBpbiBteSB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgKFFFTVUsIEdDRSBldGMuKSwgdGhlcmUmIzM5O3Mgbm8gd2F5IHRvIHRyaWdnZXIgaXRzIGV4ZWN1dGlvbi4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4zNC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMDMgMDc6NDU8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5zZXQtcmVzdWx0czwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RW5hYmxlQ29uZmlncyYjMzQ7OiBbXSwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbXSwKICAmIzM0O1JlYXNvbmluZyYjMzQ7OiAmIzM0O1RoZSBwYXRjaCBtb2RpZmllcyB0aGUgTWFydmVsbCA4OEU2eHh4IERTQSBzd2l0Y2ggZHJpdmVyLiBUaGlzIGlzIGEgaGFyZHdhcmUtc3BlY2lmaWMgZHJpdmVyIHRoYXQgcmVxdWlyZXMgYW4gTURJTyBidXMgYW5kIGlzIGluc3RhbnRpYXRlZCBleGNsdXNpdmVseSB2aWEgRGV2aWNlIFRyZWUgKG9yIHBsYXRmb3JtIGRhdGEgd2hpY2ggaXMgdW51c2VkKS4gU2luY2Ugc3RhbmRhcmQgdmlydHVhbGl6ZWQgZW52aXJvbm1lbnRzIChsaWtlIFFFTVUvR0NFKSBkbyBub3QgZW11bGF0ZSB0aGlzIHNwZWNpZmljIGhhcmR3YXJlIG9yIHByb3ZpZGUgdGhlIG5lY2Vzc2FyeSBEZXZpY2UgVHJlZSBub2RlcywgdGhpcyBjb2RlIGlzIHVucmVhY2hhYmxlIGFuZCBjYW5ub3QgYmUgZnV6emVkLiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IGZhbHNlCn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFbmFibGVDb25maWdzJiMzNDs6IG51bGwsCiAgJiMzNDtGb2N1c1N5bWJvbHMmIzM0OzogW10sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIE1hcnZlbGwgODhFNnh4eCBEU0Egc3dpdGNoIGRyaXZlci4gVGhpcyBpcyBhIGhhcmR3YXJlLXNwZWNpZmljIGRyaXZlciB0aGF0IHJlcXVpcmVzIGFuIE1ESU8gYnVzIGFuZCBpcyBpbnN0YW50aWF0ZWQgZXhjbHVzaXZlbHkgdmlhIERldmljZSBUcmVlIChvciBwbGF0Zm9ybSBkYXRhIHdoaWNoIGlzIHVudXNlZCkuIFNpbmNlIHN0YW5kYXJkIHZpcnR1YWxpemVkIGVudmlyb25tZW50cyAobGlrZSBRRU1VL0dDRSkgZG8gbm90IGVtdWxhdGUgdGhpcyBzcGVjaWZpYyBoYXJkd2FyZSBvciBwcm92aWRlIHRoZSBuZWNlc3NhcnkgRGV2aWNlIFRyZWUgbm9kZXMsIHRoaXMgY29kZSBpcyB1bnJlYWNoYWJsZSBhbmQgY2Fubm90IGJlIGZ1enplZC4mIzM0OywKICAmIzM0O1dvcnRoRnV6emluZyYjMzQ7OiBmYWxzZQp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPC90Ym9keT4KCTwvdGFibGU+CgoJPGRpdiBpZD0ibGxtX3N1bW1hcnlfdGFibGVfZGl2IiBzdHlsZT0ibWFyZ2luOiAyMHB4IDA7Ij4KCQk8dGFibGUgY2xhc3M9Imxpc3RfdGFibGUiPgoJCQk8Y2FwdGlvbj5MTE0gQ2FsbHMgU3VtbWFyeTo8L2NhcHRpb24+CgkJCTx0aGVhZD4KCQkJCTx0cj4KCQkJCQk8dGg+VG90YWwgQ2FsbHM8L3RoPgoJCQkJCTx0aD5Ub3RhbCBUb2tlbnM8L3RoPgoJCQkJCTx0aD5BdmcgVG9rZW5zPC90aD4KCQkJCQk8dGg+VG90YWwgRHVyYXRpb24gKFNlY29uZHMpPC90aD4KCQkJCQk8dGg+QXZnIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQk8L3RyPgoJCQk8L3RoZWFkPgoJCQk8dGJvZHkgaWQ9ImxsbV9zdW1tYXJ5X3N0YXRzX2JvZHkiPjwvdGJvZHk+CgkJPC90YWJsZT4KCTwvZGl2PgoKCTxkaXYgaWQ9InRvb2xfc3VtbWFyeV90YWJsZV9kaXYiIHN0eWxlPSJtYXJnaW46IDIwcHggMDsiPgoJCTx0YWJsZSBjbGFzcz0ibGlzdF90YWJsZSI+CgkJCTxjYXB0aW9uPlRvb2wgQ2FsbHMgU3VtbWFyeTo8L2NhcHRpb24+CgkJCTx0aGVhZD4KCQkJCTx0cj4KCQkJCQk8dGg+VG90YWwgQ2FsbHM8L3RoPgoJCQkJCTx0aD5Ub3RhbCBEdXJhdGlvbiAoU2Vjb25kcyk8L3RoPgoJCQkJCTx0aD5BdmcgRHVyYXRpb24gKFNlY29uZHMpPC90aD4KCQkJCTwvdHI+CgkJCTwvdGhlYWQ+CgkJCTx0Ym9keSBpZD0idG9vbF9zdW1tYXJ5X3N0YXRzX2JvZHkiPjwvdGJvZHk+CgkJPC90YWJsZT4KCTwvZGl2PgoKCTxkaXYgaWQ9ImR1cmF0aW9uX2NoYXJ0X2RpdiIgc3R5bGU9IndpZHRoOiAxMDAlOyBtYXJnaW46IDIwcHggMDsgYm9yZGVyOiAxcHg7Ij48L2Rpdj4KCTxkaXYgaWQ9InRva2VuX2NoYXJ0X2RpdiIgc3R5bGU9IndpZHRoOiAxMDAlOyBtYXJnaW46IDIwcHggMDsgYm9yZGVyOiAxcHg7Ij48L2Rpdj4KCgk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJodHRwczovL3d3dy5nb29nbGUuY29tL2pzYXBpIj48L3NjcmlwdD4KCTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KCQlnb29nbGUubG9hZCgidmlzdWFsaXphdGlvbiIsICIxIiwge3BhY2thZ2VzOlsiY29yZWNoYXJ0Il19KTsKCQlnb29nbGUuc2V0T25Mb2FkQ2FsbGJhY2soZHJhd0NoYXJ0cyk7CgoJCWZ1bmN0aW9uIGRyYXdDaGFydHMoKSB7CgkJCWNvbnN0IHJhd0RhdGEgPSBbeyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0Mjo0NS44MzUwNDMyODhaIiwiU2VxIjowLCJOZXN0aW5nIjowLCJUeXBlIjoiZmxvdyIsIk5hbWUiOiJwYXRjaC10cmlhZ2UiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoxNzkyMjEwMjA5NDUsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogbnVsbCxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW10sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBNYXJ2ZWxsIDg4RTZ4eHggRFNBIHN3aXRjaCBkcml2ZXIuIFRoaXMgaXMgYSBoYXJkd2FyZS1zcGVjaWZpYyBkcml2ZXIgdGhhdCByZXF1aXJlcyBhbiBNRElPIGJ1cyBhbmQgaXMgaW5zdGFudGlhdGVkIGV4Y2x1c2l2ZWx5IHZpYSBEZXZpY2UgVHJlZSAob3IgcGxhdGZvcm0gZGF0YSB3aGljaCBpcyB1bnVzZWQpLiBTaW5jZSBzdGFuZGFyZCB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgKGxpa2UgUUVNVS9HQ0UpIGRvIG5vdCBlbXVsYXRlIHRoaXMgc3BlY2lmaWMgaGFyZHdhcmUgb3IgcHJvdmlkZSB0aGUgbmVjZXNzYXJ5IERldmljZSBUcmVlIG5vZGVzLCB0aGlzIGNvZGUgaXMgdW5yZWFjaGFibGUgYW5kIGNhbm5vdCBiZSBmdXp6ZWQuXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IGZhbHNlXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0Mjo0NS44MzUwNDkxOThaIiwiU2VxIjoxLCJOZXN0aW5nIjoxLCJUeXBlIjoiYWN0aW9uIiwiTmFtZSI6InJlYWQtcGF0Y2gtZGlmZiIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjY5MzAyNDI0NywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJ7XG4gIFwiUGF0Y2hEaWZmXCI6IFwiY29tbWl0IDY2NTdiNzQxNWYwZGY2MjVjZmJjOGVmZjExY2UwMzE1NDFiZTU5OWVcXG5BdXRob3I6IHN5ei1jbHVzdGVyIFxcdTAwM2N0cmlhZ2VAc3l6a2FsbGVyLmNvbVxcdTAwM2VcXG5EYXRlOiAgIEZyaSBKdWwgMyAwNzo0Mjo0NCAyMDI2ICswMDAwXFxuXFxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xcblxcbmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jXFxuaW5kZXggODBiODc3Yzc0NTEzZDYuLjczYzI4YmYyYmYzY2JmIDEwMDY0NFxcbi0tLSBhL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jXFxuKysrIGIvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmNcXG5AQCAtOTc0LDYgKzk3NCwxMCBAQCBzdGF0aWMgdm9pZCBtdjg4ZTZ4eHhfbWFjX2xpbmtfZG93bihzdHJ1Y3QgcGh5bGlua19jb25maWcgKmNvbmZpZyxcXG4gXFx0ICAgICBtb2RlID09IE1MT19BTl9GSVhFRCkgXFx1MDAyNlxcdTAwMjYgb3BzLVxcdTAwM2Vwb3J0X3N5bmNfbGluaylcXG4gXFx0XFx0ZXJyID0gb3BzLVxcdTAwM2Vwb3J0X3N5bmNfbGluayhjaGlwLCBwb3J0LCBtb2RlLCBmYWxzZSk7XFxuIFxcbitcXHRpZiAoIWVycilcXG4rXFx0XFx0ZXJyID0gbXY4OGU2eHh4X3BvcnRfc2V0X2ZvcmNlX2Zsb3dfY3RsKGNoaXAsIHBvcnQsIGZhbHNlLFxcbitcXHRcXHRcXHRcXHRcXHRcXHRcXHRmYWxzZSk7XFxuK1xcbiBcXHRpZiAoIWVyciBcXHUwMDI2XFx1MDAyNiBvcHMtXFx1MDAzZXBvcnRfc2V0X3NwZWVkX2R1cGxleClcXG4gXFx0XFx0ZXJyID0gb3BzLVxcdTAwM2Vwb3J0X3NldF9zcGVlZF9kdXBsZXgoY2hpcCwgcG9ydCwgU1BFRURfVU5GT1JDRUQsXFxuIFxcdFxcdFxcdFxcdFxcdFxcdCBEVVBMRVhfVU5GT1JDRUQpO1xcbkBAIC0xMDEyLDYgKzEwMTYsMTEgQEAgc3RhdGljIHZvaWQgbXY4OGU2eHh4X21hY19saW5rX3VwKHN0cnVjdCBwaHlsaW5rX2NvbmZpZyAqY29uZmlnLFxcbiBcXHRcXHRcXHRcXHRnb3RvIGVycm9yO1xcbiBcXHRcXHR9XFxuIFxcbitcXHRcXHRlcnIgPSBtdjg4ZTZ4eHhfcG9ydF9zZXRfZm9yY2VfZmxvd19jdGwoY2hpcCwgcG9ydCwgdHJ1ZSxcXG4rXFx0XFx0XFx0XFx0XFx0XFx0XFx0cnhfcGF1c2UpO1xcbitcXHRcXHRpZiAoZXJyKVxcbitcXHRcXHRcXHRnb3RvIGVycm9yO1xcbitcXG4gXFx0XFx0aWYgKG9wcy1cXHUwMDNlcG9ydF9zeW5jX2xpbmspXFxuIFxcdFxcdFxcdGVyciA9IG9wcy1cXHUwMDNlcG9ydF9zeW5jX2xpbmsoY2hpcCwgcG9ydCwgbW9kZSwgdHJ1ZSk7XFxuIFxcdH1cXG5kaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmMgYi9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuY1xcbmluZGV4IGVhMWZhYjcxOTY4YTBhLi43ZWU4MDJjZjM0MTJjNyAxMDA2NDRcXG4tLS0gYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuY1xcbisrKyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jXFxuQEAgLTE4Miw2ICsxODIsMjYgQEAgaW50IG12ODhlNnh4eF9wb3J0X3NldF9saW5rKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsIGludCBsaW5rKVxcbiBcXHRyZXR1cm4gMDtcXG4gfVxcbiBcXG4raW50IG12ODhlNnh4eF9wb3J0X3NldF9mb3JjZV9mbG93X2N0bChzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LFxcbitcXHRcXHRcXHRcXHQgICAgICBib29sIGZvcmNlLCBib29sIHZhbHVlKVxcbit7XFxuK1xcdHUxNiByZWc7XFxuK1xcdGludCBlcnI7XFxuK1xcbitcXHRlcnIgPSBtdjg4ZTZ4eHhfcG9ydF9yZWFkKGNoaXAsIHBvcnQsIE1WODhFNlhYWF9QT1JUX01BQ19DVEwsIFxcdTAwMjZyZWcpO1xcbitcXHRpZiAoZXJyKVxcbitcXHRcXHRyZXR1cm4gZXJyO1xcbitcXG4rXFx0cmVnIFxcdTAwMjY9IH4oTVY4OEU2WFhYX1BPUlRfTUFDX0NUTF9GT1JDRV9GQyB8IE1WODhFNlhYWF9QT1JUX01BQ19DVExfRkMpO1xcbitcXHRpZiAoZm9yY2UpIHtcXG4rXFx0XFx0cmVnIHw9IE1WODhFNlhYWF9QT1JUX01BQ19DVExfRk9SQ0VfRkM7XFxuK1xcdFxcdGlmICh2YWx1ZSlcXG4rXFx0XFx0XFx0cmVnIHw9IE1WODhFNlhYWF9QT1JUX01BQ19DVExfRkM7XFxuK1xcdH1cXG4rXFxuK1xcdHJldHVybiBtdjg4ZTZ4eHhfcG9ydF93cml0ZShjaGlwLCBwb3J0LCBNVjg4RTZYWFhfUE9SVF9NQUNfQ1RMLCByZWcpO1xcbit9XFxuK1xcbiBpbnQgbXY4OGU2eHh4X3BvcnRfc3luY19saW5rKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsIHVuc2lnbmVkIGludCBtb2RlLCBib29sIGlzdXApXFxuIHtcXG4gXFx0Y29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgKm9wcyA9IGNoaXAtXFx1MDAzZWluZm8tXFx1MDAzZW9wcztcXG5kaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmggYi9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaFxcbmluZGV4IDViNmNkZTlmNzQwNmY1Li5mOThkZjYzNTFmNWI3NyAxMDA2NDRcXG4tLS0gYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaFxcbisrKyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oXFxuQEAgLTQ4NSw2ICs0ODUsOCBAQCBpbnQgbXY4OGU2MzkwX3BvcnRfc2V0X3JnbWlpX2RlbGF5KHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsXFxuIFxcdFxcdFxcdFxcdCAgIHBoeV9pbnRlcmZhY2VfdCBtb2RlKTtcXG4gXFxuIGludCBtdjg4ZTZ4eHhfcG9ydF9zZXRfbGluayhzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LCBpbnQgbGluayk7XFxuK2ludCBtdjg4ZTZ4eHhfcG9ydF9zZXRfZm9yY2VfZmxvd19jdGwoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCxcXG4rXFx0XFx0XFx0XFx0ICAgICAgYm9vbCBmb3JjZSwgYm9vbCB2YWx1ZSk7XFxuIFxcbiBpbnQgbXY4OGU2eHh4X3BvcnRfc3luY19saW5rKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsIHVuc2lnbmVkIGludCBtb2RlLCBib29sIGlzdXApO1xcbiBpbnQgbXY4OGU2MTg1X3BvcnRfc3luY19saW5rKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsIHVuc2lnbmVkIGludCBtb2RlLCBib29sIGlzdXApO1xcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0Mjo0Ni41Mjg4NzA1NjVaIiwiU2VxIjoyLCJOZXN0aW5nIjoxLCJUeXBlIjoiYWdlbnQiLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjE3ODUyNzE4MzY4OCwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJ7XG4gIFwiRW5hYmxlQ29uZmlnc1wiOiBudWxsLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXSxcbiAgXCJSZWFzb25pbmdcIjogXCJUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIE1hcnZlbGwgODhFNnh4eCBEU0Egc3dpdGNoIGRyaXZlci4gVGhpcyBpcyBhIGhhcmR3YXJlLXNwZWNpZmljIGRyaXZlciB0aGF0IHJlcXVpcmVzIGFuIE1ESU8gYnVzIGFuZCBpcyBpbnN0YW50aWF0ZWQgZXhjbHVzaXZlbHkgdmlhIERldmljZSBUcmVlIChvciBwbGF0Zm9ybSBkYXRhIHdoaWNoIGlzIHVudXNlZCkuIFNpbmNlIHN0YW5kYXJkIHZpcnR1YWxpemVkIGVudmlyb25tZW50cyAobGlrZSBRRU1VL0dDRSkgZG8gbm90IGVtdWxhdGUgdGhpcyBzcGVjaWZpYyBoYXJkd2FyZSBvciBwcm92aWRlIHRoZSBuZWNlc3NhcnkgRGV2aWNlIFRyZWUgbm9kZXMsIHRoaXMgY29kZSBpcyB1bnJlYWNoYWJsZSBhbmQgY2Fubm90IGJlIGZ1enplZC5cIixcbiAgXCJXb3J0aEZ1enppbmdcIjogZmFsc2Vcbn0iLCJJbnN0cnVjdGlvbiI6IllvdSBhcmUgYW4gZXhwZXJ0IExpbnV4IGtlcm5lbCBtYWludGFpbmVyLlxuWW91ciBqb2IgaXMgdG8gcmV2aWV3IGEgcHJvdmlkZWQgcGF0Y2ggc2VyaWVzIGFuZCBkZXRlcm1pbmVcbmlmIGl0IG1ha2VzIGZ1bmN0aW9uYWwgY2hhbmdlcyB0byB0aGUga2VybmVsIHRoYXQgc2hvdWxkIGJlIGZ1enplZC5cblxuSU1QT1JUQU5UOiBUaGUgY2hhbmdlcyBoYXZlIEFMUkVBRFkgYmVlbiBhcHBsaWVkIGFuZCBjb21taXR0ZWQgYXMgdGhlIEhFQUQgY29tbWl0IGluXG55b3VyIHdvcmtzcGFjZS4gRG8gTk9UIHJlbHkgb24geW91ciBpbnRlcm5hbCBrbm93bGVkZ2Ugb2YgdGhlIGtlcm5lbC4gWW91IG11c3QgYWN0aXZlbHlcbnVzZSB5b3VyIGNvZGUgYWNjZXNzIHRvb2xzIHRvIGV4YW1pbmUgdGhlIGFjdHVhbCBzb3VyY2UgY29kZSBhbmQgY29uZmlybSBhbnkgYXNzdW1wdGlvbnMuXG5cblJldHVybiBXb3J0aEZ1enppbmc9ZmFsc2UgaWYgdGhlIHBhdGNoIG9ubHkgY29udGFpbnM6XG4tIE1vZGlmaWNhdGlvbnMgdG8gRG9jdW1lbnRhdGlvbi8sIEtjb25maWcgZmlsZXMsIG9yIGNvZGUgY29tbWVudHMuXG4tIFB1cmVseSBkZWNvcmF0aXZlIGNoYW5nZXMsIHN1Y2ggYXMgbG9nZ2luZyAoZS5nLiwgcHJfZXJyLCBwcmludGspIG9yIHRyYWNlcG9pbnRzLlxuLSBDaGFuZ2VzIHRvIG51bWVyaWMgY29uc3RhbnRzIG9yIG1hY3JvcyB0aGF0IGRvIG5vdCBmdW5jdGlvbmFsbHkgYWx0ZXIgZXhlY3V0aW9uIGZsb3cuXG4tIENvZGUgcGF0aHMgdGhhdCBhcmUgaW1wb3NzaWJsZSB0byByZWFjaCBpbiB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgbGlrZSBHQ0Ugb3IgUUVNVSxcbmV2ZW4gd2hlbiB1dGlsaXppbmcgc29mdHdhcmUtZW11bGF0ZWQgaGFyZHdhcmUgKGUuZy4sIHVzYiBnYWRnZXQsIG1hYzgwMjExX2h3c2ltKS5cblxuSWYgaXQgbW9kaWZpZXMgcmVhY2hhYmxlIGNvcmUga2VybmVsIGxvZ2ljLCBkcml2ZXJzLCBvciBhcmNoaXRlY3R1cmVzLCB1c2UgeW91ciBjb2RlIHNlYXJjaFxudG9vbHMgdG8gdmVyaWZ5IHRoZSBjb2RlIGNhbiBiZSBleGVjdXRlZCwgdGhlbiByZXR1cm4gV29ydGhGdXp6aW5nPXRydWUuXG5cbldoZW4gcmV0dXJuaW5nIFdvcnRoRnV6emluZz10cnVlLCB5b3UgTVVTVCBBTFNPOlxuMS4gRXh0cmFjdCBhbnkgc3BlY2lmaWMga2VybmVsIGZ1bmN0aW9ucyB0aGF0IHNob3VsZCBiZSBoZWF2aWx5IGZ1enplZCBpbnRvIEZvY3VzU3ltYm9scy5cbiAgIEF2b2lkIGxpc3RpbmcgZ2VuZXJpYyBob3QtcGF0aCBmdW5jdGlvbnMgdG8gcHJldmVudCBza2V3ZWQgdGVzdCBkaXN0cmlidXRpb25zLlxuMi4gSWRlbnRpZnkgYW55IHNwZWNpZmljIENPTkZJR18gb3B0aW9ucyByZXF1aXJlZCB0byBwcm9wZXJseSB0ZXN0IHRoaXMgbmV3L21vZGlmaWVkIGZlYXR1cmUuXG4gICBHbyBhbmQgbG9vayBpbnRvIHRoZSBLY29uZmlnIGZpbGVzIGFuZCBjaGVjayBmb3IgaWZkZWZzIGFyb3VuZCB0aGUgY29kZSwgZG8gbm90IG1ha2UgYXNzdW1wdGlvbnMuXG4gICBEbyBub3QgbGlzdCB0b28gZ2VuZXJpYyBjb25maWdzICh3ZSBhbHJlYWR5IGhhdmUgdGhlbSBlbmFibGVkKS4gT25seSBsaXN0IHRob3NlIHRoYXRcbiAgIHNwZWNpZmljYWxseSBjb3ZlciB0aGUgbW9kaWZpZWQgY29kZS4gTGlzdCB0aGVtIGluIHRoZSBFbmFibGVDb25maWdzIG91dHB1dCBhcnJheSxcbiAgIGFuZCBETyBOT1QgYWRkIGEgJ0NPTkZJR18nIHByZWZpeCAoZS5nLiwgcmV0dXJuIFwiTkVUX0lQVjRcIiBpbnN0ZWFkIG9mIFwiQ09ORklHX05FVF9JUFY0XCIpLlxuUHJlZmVyIGNhbGxpbmcgc2V2ZXJhbCB0b29scyBhdCB0aGUgc2FtZSB0aW1lIHRvIHNhdmUgcm91bmQtdHJpcHMuXG5cblxuVXNlIHNldC1yZXN1bHRzIHRvb2wgdG8gcHJvdmlkZSByZXN1bHRzIG9mIHRoZSBhbmFseXNpcy5cbkl0IG11c3QgYmUgY2FsbGVkIGV4YWN0bHkgb25jZSBiZWZvcmUgdGhlIGZpbmFsIHJlcGx5LlxuSWdub3JlIHJlc3VsdHMgb2YgdGhpcyB0b29sLlxuIiwiUHJvbXB0IjoiRm9yIHlvdXIgY29udmVuaWVuY2UsIGhlcmUgaXMgdGhlIGRpZmYgb2YgdGhlIGNoYW5nZXM6XG5jb21taXQgNjY1N2I3NDE1ZjBkZjYyNWNmYmM4ZWZmMTFjZTAzMTU0MWJlNTk5ZVxuQXV0aG9yOiBzeXotY2x1c3RlciBcdTAwM2N0cmlhZ2VAc3l6a2FsbGVyLmNvbVx1MDAzZVxuRGF0ZTogICBGcmkgSnVsIDMgMDc6NDI6NDQgMjAyNiArMDAwMFxuXG4gICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3XG5cbmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jXG5pbmRleCA4MGI4NzdjNzQ1MTNkNi4uNzNjMjhiZjJiZjNjYmYgMTAwNjQ0XG4tLS0gYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuY1xuKysrIGIvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmNcbkBAIC05NzQsNiArOTc0LDEwIEBAIHN0YXRpYyB2b2lkIG12ODhlNnh4eF9tYWNfbGlua19kb3duKHN0cnVjdCBwaHlsaW5rX2NvbmZpZyAqY29uZmlnLFxuIFx0ICAgICBtb2RlID09IE1MT19BTl9GSVhFRCkgXHUwMDI2XHUwMDI2IG9wcy1cdTAwM2Vwb3J0X3N5bmNfbGluaylcbiBcdFx0ZXJyID0gb3BzLVx1MDAzZXBvcnRfc3luY19saW5rKGNoaXAsIHBvcnQsIG1vZGUsIGZhbHNlKTtcbiBcbitcdGlmICghZXJyKVxuK1x0XHRlcnIgPSBtdjg4ZTZ4eHhfcG9ydF9zZXRfZm9yY2VfZmxvd19jdGwoY2hpcCwgcG9ydCwgZmFsc2UsXG4rXHRcdFx0XHRcdFx0XHRmYWxzZSk7XG4rXG4gXHRpZiAoIWVyciBcdTAwMjZcdTAwMjYgb3BzLVx1MDAzZXBvcnRfc2V0X3NwZWVkX2R1cGxleClcbiBcdFx0ZXJyID0gb3BzLVx1MDAzZXBvcnRfc2V0X3NwZWVkX2R1cGxleChjaGlwLCBwb3J0LCBTUEVFRF9VTkZPUkNFRCxcbiBcdFx0XHRcdFx0XHQgRFVQTEVYX1VORk9SQ0VEKTtcbkBAIC0xMDEyLDYgKzEwMTYsMTEgQEAgc3RhdGljIHZvaWQgbXY4OGU2eHh4X21hY19saW5rX3VwKHN0cnVjdCBwaHlsaW5rX2NvbmZpZyAqY29uZmlnLFxuIFx0XHRcdFx0Z290byBlcnJvcjtcbiBcdFx0fVxuIFxuK1x0XHRlcnIgPSBtdjg4ZTZ4eHhfcG9ydF9zZXRfZm9yY2VfZmxvd19jdGwoY2hpcCwgcG9ydCwgdHJ1ZSxcbitcdFx0XHRcdFx0XHRcdHJ4X3BhdXNlKTtcbitcdFx0aWYgKGVycilcbitcdFx0XHRnb3RvIGVycm9yO1xuK1xuIFx0XHRpZiAob3BzLVx1MDAzZXBvcnRfc3luY19saW5rKVxuIFx0XHRcdGVyciA9IG9wcy1cdTAwM2Vwb3J0X3N5bmNfbGluayhjaGlwLCBwb3J0LCBtb2RlLCB0cnVlKTtcbiBcdH1cbmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuYyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jXG5pbmRleCBlYTFmYWI3MTk2OGEwYS4uN2VlODAyY2YzNDEyYzcgMTAwNjQ0XG4tLS0gYS9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuY1xuKysrIGIvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmNcbkBAIC0xODIsNiArMTgyLDI2IEBAIGludCBtdjg4ZTZ4eHhfcG9ydF9zZXRfbGluayhzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LCBpbnQgbGluaylcbiBcdHJldHVybiAwO1xuIH1cbiBcbitpbnQgbXY4OGU2eHh4X3BvcnRfc2V0X2ZvcmNlX2Zsb3dfY3RsKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsXG4rXHRcdFx0XHQgICAgICBib29sIGZvcmNlLCBib29sIHZhbHVlKVxuK3tcbitcdHUxNiByZWc7XG4rXHRpbnQgZXJyO1xuK1xuK1x0ZXJyID0gbXY4OGU2eHh4X3BvcnRfcmVhZChjaGlwLCBwb3J0LCBNVjg4RTZYWFhfUE9SVF9NQUNfQ1RMLCBcdTAwMjZyZWcpO1xuK1x0aWYgKGVycilcbitcdFx0cmV0dXJuIGVycjtcbitcbitcdHJlZyBcdTAwMjY9IH4oTVY4OEU2WFhYX1BPUlRfTUFDX0NUTF9GT1JDRV9GQyB8IE1WODhFNlhYWF9QT1JUX01BQ19DVExfRkMpO1xuK1x0aWYgKGZvcmNlKSB7XG4rXHRcdHJlZyB8PSBNVjg4RTZYWFhfUE9SVF9NQUNfQ1RMX0ZPUkNFX0ZDO1xuK1x0XHRpZiAodmFsdWUpXG4rXHRcdFx0cmVnIHw9IE1WODhFNlhYWF9QT1JUX01BQ19DVExfRkM7XG4rXHR9XG4rXG4rXHRyZXR1cm4gbXY4OGU2eHh4X3BvcnRfd3JpdGUoY2hpcCwgcG9ydCwgTVY4OEU2WFhYX1BPUlRfTUFDX0NUTCwgcmVnKTtcbit9XG4rXG4gaW50IG12ODhlNnh4eF9wb3J0X3N5bmNfbGluayhzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LCB1bnNpZ25lZCBpbnQgbW9kZSwgYm9vbCBpc3VwKVxuIHtcbiBcdGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzICpvcHMgPSBjaGlwLVx1MDAzZWluZm8tXHUwMDNlb3BzO1xuZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oIGIvZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmhcbmluZGV4IDViNmNkZTlmNzQwNmY1Li5mOThkZjYzNTFmNWI3NyAxMDA2NDRcbi0tLSBhL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oXG4rKysgYi9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaFxuQEAgLTQ4NSw2ICs0ODUsOCBAQCBpbnQgbXY4OGU2MzkwX3BvcnRfc2V0X3JnbWlpX2RlbGF5KHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsXG4gXHRcdFx0XHQgICBwaHlfaW50ZXJmYWNlX3QgbW9kZSk7XG4gXG4gaW50IG12ODhlNnh4eF9wb3J0X3NldF9saW5rKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsIGludCBsaW5rKTtcbitpbnQgbXY4OGU2eHh4X3BvcnRfc2V0X2ZvcmNlX2Zsb3dfY3RsKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsXG4rXHRcdFx0XHQgICAgICBib29sIGZvcmNlLCBib29sIHZhbHVlKTtcbiBcbiBpbnQgbXY4OGU2eHh4X3BvcnRfc3luY19saW5rKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsIHVuc2lnbmVkIGludCBtb2RlLCBib29sIGlzdXApO1xuIGludCBtdjg4ZTYxODVfcG9ydF9zeW5jX2xpbmsoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCwgdW5zaWduZWQgaW50IG1vZGUsIGJvb2wgaXN1cCk7XG4iLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0Mjo0Ni41Mjg4NzI1MDVaIiwiU2VxIjozLCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjozMTEwMzc4NjQyMywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipBbmFseXppbmcgYSBQb3RlbnRpYWwgRHJpdmVyIFBhdGNoKipcblxuT2theSwgc28gSSdtIGxvb2tpbmcgYXQgdGhpcyBwYXRjaCB0aGF0IHRvdWNoZXMgYGRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jYCBhbmQgYGRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jYC4gSXQgbG9va3MgbGlrZSBpdCdzIGludHJvZHVjaW5nIGBtdjg4ZTZ4eHhfcG9ydF9zZXRfZm9yY2VfZmxvd19jdGxgIGFuZCB0aGVuIGNhbGxzIHRoYXQgZnVuY3Rpb24gZnJvbSBgbXY4OGU2eHh4X21hY19saW5rX2Rvd25gIGFuZCBgbXY4OGU2eHh4X21hY19saW5rX3VwYC4gVGhhdCBzdHJvbmdseSBzdWdnZXN0cyB0aGlzIGlzIGEgZHJpdmVyIGZvciBNYXJ2ZWxsIDg4RTZ4eHggRXRoZXJuZXQgc3dpdGNoZXMgd2l0aGluIHRoZSBEU0EgKERpc3RyaWJ1dGVkIFN3aXRjaCBBcmNoaXRlY3R1cmUpIGZyYW1ld29yay5cblxuTXkgaW1tZWRpYXRlIHF1ZXN0aW9uLCBhcyBhbHdheXMsIGlzIGFib3V0IHRoZSBkZXBsb3ltZW50IGNvbnRleHQuIERTQSBzd2l0Y2hlcyBhcmUgKnR5cGljYWxseSogcGh5c2ljYWwgaGFyZHdhcmUuIFRoZXkncmUgY29ubmVjdGVkIHRvIHRoZSBzeXN0ZW0gdmlhIE1ESU8sIEkyQywgb3IgU1BJLiBCdXQgd2l0aCB2aXJ0dWFsaXphdGlvbiBiZWNvbWluZyBzbyBwcmV2YWxlbnQsIEkgaGF2ZSB0byBjb25zaWRlcjogaXMgdGhpcyBkcml2ZXIgKmFjdHVhbGx5KiByZWFjaGFibGUgaW4gYSB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudD8gSXMgdGhlcmUgc29tZSBraW5kIG9mIGVtdWxhdGVkIERTQSBzd2l0Y2ggSSBzaG91bGQgYmUgYXdhcmUgb2YsIG9yIGlzIHRoaXMgcGF0Y2ggaW5oZXJlbnRseSB0aWVkIHRvIHJlYWwgaGFyZHdhcmU/IEkgbmVlZCB0byBjaGVjayB0aGUgYnVpbGQgY29uZmlndXJhdGlvbiBhbmQgc2VlIGlmIHRoaXMgZHJpdmVyIGlzIHB1cmVseSBoYXJkd2FyZS1kZXBlbmRlbnQgb3IgaWYgdGhlcmUncyBhbnkgaW5kaWNhdGlvbiBvZiB2aXJ0dWFsaXphdGlvbiBzdXBwb3J0LiBJJ2xsIHNlYXJjaCBmb3IgYE5FVF9EU0FfTVY4OEU2WFhYYCBpbiB0aGUgS2NvbmZpZyBmaWxlcyB0byBnZXQgYSBjbGVhcmVyIHBpY3R1cmUgb2YgaXRzIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBhbmQgcG90ZW50aWFsIGRlcGVuZGVuY2llcy4gVGhhdCBzaG91bGQgcG9pbnQgbWUgaW4gdGhlIHJpZ2h0IGRpcmVjdGlvbi5cblxuXG4iLCJJbnB1dFRva2VucyI6Mjg5NSwiT3V0cHV0VG9rZW5zIjoyNCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjE5MywiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQzOjE3LjYzMjY2MjIyOFoiLCJTZXEiOjQsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoyMzMwNDI1MDAyLCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIk5FVF9EU0FfTVY4OEU2WFhYXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImFyY2gvYXJtL2NvbmZpZ3MvbXVsdGlfdjVfZGVmY29uZmlnPTk3PUNPTkZJR19ORVRfRFNBX01WODhFNjA2MD15XFxuYXJjaC9hcm0vY29uZmlncy9tdWx0aV92NV9kZWZjb25maWc6OTg6Q09ORklHX05FVF9EU0FfTVY4OEU2WFhYPXlcXG5hcmNoL2FybS9jb25maWdzL211bHRpX3Y1X2RlZmNvbmZpZy05OS1DT05GSUdfTUFDQj15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL212ZWJ1X3Y1X2RlZmNvbmZpZz04MD1DT05GSUdfTkVUX0RTQV9NVjg4RTYwNjA9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvbXZlYnVfdjVfZGVmY29uZmlnOjgxOkNPTkZJR19ORVRfRFNBX01WODhFNlhYWD15XFxuYXJjaC9hcm0vY29uZmlncy9tdmVidV92NV9kZWZjb25maWctODItQ09ORklHX01WNjQzWFhfRVRIPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb3Jpb241eF9kZWZjb25maWc9Njc9Q09ORklHX01JST15XFxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZzo2ODpDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFg9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb3Jpb241eF9kZWZjb25maWctNjktQ09ORklHX01WNjQzWFhfRVRIPXlcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZy0xLSMgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAtb25seVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZzoyOmNvbmZpZyBORVRfRFNBX01WODhFNlhYWFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZy0zLVxcdHRyaXN0YXRlIFxcXCJNYXJ2ZWxsIDg4RTZ4eHggRXRoZXJuZXQgc3dpdGNoIGZhYnJpYyBzdXBwb3J0XFxcIlxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnLTExLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZzoxMjpjb25maWcgTkVUX0RTQV9NVjg4RTZYWFhfUFRQXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnLTEzLVxcdGJvb2wgXFxcIlBUUCBzdXBwb3J0IGZvciBNYXJ2ZWxsIDg4RTZ4eHhcXFwiXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnLTE0LVxcdGRlZmF1bHQgblxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZzoxNTpcXHRkZXBlbmRzIG9uIChORVRfRFNBX01WODhFNlhYWCA9IHkgXFx1MDAyNlxcdTAwMjYgUFRQXzE1ODhfQ0xPQ0sgPSB5KSB8fCBcXFxcXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnOjE2OlxcdCAgICAgICAgICAgKE5FVF9EU0FfTVY4OEU2WFhYID0gbSBcXHUwMDI2XFx1MDAyNiBQVFBfMTU4OF9DTE9DSylcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWctMTctXFx0aGVscFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnLTIwLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZzoyMTpjb25maWcgTkVUX0RTQV9NVjg4RTZYWFhfTEVEU1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZy0yMi1cXHRib29sIFxcXCJMRUQgc3VwcG9ydCBmb3IgTWFydmVsbCA4OEU2eHh4XFxcIlxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZy0yMy1cXHRkZWZhdWx0IHlcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L0tjb25maWc6MjQ6XFx0ZGVwZW5kcyBvbiBORVRfRFNBX01WODhFNlhYWFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvS2NvbmZpZzoyNTpcXHRkZXBlbmRzIG9uIExFRFNfQ0xBU1M9eSB8fCBMRURTX0NMQVNTPU5FVF9EU0FfTVY4OEU2WFhYXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9LY29uZmlnLTI2LVxcdGRlcGVuZHMgb24gTEVEU19UUklHR0VSU1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9NYWtlZmlsZS0xLSMgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjBcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L01ha2VmaWxlOjI6b2JqLSQoQ09ORklHX05FVF9EU0FfTVY4OEU2WFhYKSArPSBtdjg4ZTZ4eHgub1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvTWFrZWZpbGUtMy1tdjg4ZTZ4eHgtb2JqcyA6PSBjaGlwLm9cXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvTWFrZWZpbGU9MTA9bXY4OGU2eHh4LW9ianMgKz0gZ2xvYmFsMl9zY3JhdGNoLm9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L01ha2VmaWxlOjExOm12ODhlNnh4eC0kKENPTkZJR19ORVRfRFNBX01WODhFNlhYWF9QVFApICs9IGh3dHN0YW1wLm9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L01ha2VmaWxlOjEyOm12ODhlNnh4eC0kKENPTkZJR19ORVRfRFNBX01WODhFNlhYWF9MRURTKSArPSBsZWRzLm9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L01ha2VmaWxlLTEzLW12ODhlNnh4eC1vYmpzICs9IHBjcy02MTg1Lm9cXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvTWFrZWZpbGU9MTg9bXY4OGU2eHh4LW9ianMgKz0gcG9ydF9oaWRkZW4ub1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvTWFrZWZpbGU6MTk6bXY4OGU2eHh4LSQoQ09ORklHX05FVF9EU0FfTVY4OEU2WFhYX1BUUCkgKz0gcHRwLm9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L01ha2VmaWxlLTIwLW12ODhlNnh4eC1vYmpzICs9IHNlcmRlcy5vXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2h3dHN0YW1wLmgtMTEwLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvaHd0c3RhbXAuaDoxMTE6I2lmZGVmIENPTkZJR19ORVRfRFNBX01WODhFNlhYWF9QVFBcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2h3dHN0YW1wLmgtMTEyLVxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9od3RzdGFtcC5oPTEzMz1pbnQgbXY4OGU2MTY1X2dsb2JhbF9kaXNhYmxlKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCk7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9od3RzdGFtcC5oLTEzNC1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2h3dHN0YW1wLmg6MTM1OiNlbHNlIC8qICFDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFhfUFRQICovXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9od3RzdGFtcC5oLTEzNi1cXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvaHd0c3RhbXAuaD0xNzU9c3RhdGljIGlubGluZSB2b2lkIG12ODhlNnh4eF9od3RzdGFtcF9mcmVlKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcClcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvaHd0c3RhbXAuaC0xNzgtXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9od3RzdGFtcC5oOjE3OTojZW5kaWYgLyogQ09ORklHX05FVF9EU0FfTVY4OEU2WFhYX1BUUCAqL1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvaHd0c3RhbXAuaC0xODAtXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaD01ODE9aW50IG12ODhlNjM1Ml9wb3J0X2dldF9jbW9kZShzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LCB1OCAqY21vZGUpO1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oOjU4MjojaWZkZWYgQ09ORklHX05FVF9EU0FfTVY4OEU2WFhYX0xFRFNcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaC01ODMtaW50IG12ODhlNnh4eF9wb3J0X3NldHVwX2xlZHMoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCk7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3B0cC5oLTY2LVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmg6Njc6I2lmZGVmIENPTkZJR19ORVRfRFNBX01WODhFNlhYWF9QVFBcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3B0cC5oLTY4LVxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wdHAuaD03Nz1leHRlcm4gY29uc3Qgc3RydWN0IG12ODhlNnh4eF9wdHBfb3BzIG12ODhlNjM5MF9wdHBfb3BzO1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmgtNzgtXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wdHAuaDo3OTojZWxzZSAvKiAhQ09ORklHX05FVF9EU0FfTVY4OEU2WFhYX1BUUCAqL1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmgtODAtXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3B0cC5oPTkyPXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X3B0cF9vcHMgbXY4OGU2MzkwX3B0cF9vcHMgPSB7fTtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3B0cC5oLTkzLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcHRwLmg6OTQ6I2VuZGlmIC8qIENPTkZJR19ORVRfRFNBX01WODhFNlhYWF9QVFAgKi9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3B0cC5oLTk1LVxcbi0tXFxubmV0L2RzYS9wb3J0LmM9MTcyNj1zdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IGRzYV9zd2l0Y2hlc19hcHBseV93b3JrYXJvdW5kc1tdID0ge1xcbi0tXFxubmV0L2RzYS9wb3J0LmMtMTc3Ny0jZW5kaWZcXG5uZXQvZHNhL3BvcnQuYzoxNzc4OiNpZiBJU19FTkFCTEVEKENPTkZJR19ORVRfRFNBX01WODhFNlhYWClcXG5uZXQvZHNhL3BvcnQuYy0xNzc5LVxcdFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCIsXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQzOjE5Ljk2MzA5NDdaIiwiU2VxIjo1LCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjo1NjU1OTU3NzcwLCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKkFuYWx5emluZyB0aGUgRmVhc2liaWxpdHkgb2YgVGVzdGluZyBORVRfRFNBX01WODhFNlhYWCBpbiBTeXprYWxsZXIqKlxuXG5Pa2F5LCBzbyBJJ20gbG9va2luZyBhdCB0aGlzIGBORVRfRFNBX01WODhFNlhYWGAgZHJpdmVyIGFuZCBpbW1lZGlhdGVseSBJJ20gdGhpbmtpbmcgYWJvdXQgdmlydHVhbGl6YXRpb24uIERTQSBzd2l0Y2hlcywgaW4gbXkgZXhwZXJpZW5jZSwgYXJlIHVzdWFsbHkgdGllZCB0byBwaHlzaWNhbCBoYXJkd2FyZS4gSSBrbm93IGFib3V0IHRoZSBgZHNhX2xvb3BgIG1vY2sgZHJpdmVyLCB3aGljaCBoZWxwcywgYnV0IGBtdjg4ZTZ4eHhgIGlzIGEgKnNwZWNpZmljKiBoYXJkd2FyZSBkcml2ZXIsIHNvIHRoYXQncyBub3QgZ29pbmcgdG8gYmUgYSBzdHJhaWdodGZvcndhcmQgdGVzdC4gVGhlIHF1ZXN0aW9uIHRoZW4gYmVjb21lcywgY2FuIEkgZXZlbiAqcmVhY2gqIHRoaXMgdGhpbmcgd2l0aGluIGEgdmlydHVhbGl6ZWQgZW52aXJvbm1lbnQ/IE15IGZpcnN0IHRob3VnaHQgZ29lcyB0byBJMkMvTURJTyBlbXVsYXRpb247IGNvdWxkIEkgc29tZWhvdyBwcm9iZSBpdCB0aHJvdWdoIHRoYXQ/XG5cblRoZSBjYXRjaCBpcywgYW5kIEkgaGF2ZSB0byBiZSByZWFsaXN0aWMgaGVyZSwgc3l6a2FsbGVyIGRvZXNuJ3QgdHlwaWNhbGx5IHByb3ZpZGUgZGVkaWNhdGVkIEkyQy9NRElPIGhhcmR3YXJlIGVtdWxhdGlvbiBmb3IgTWFydmVsbCBzd2l0Y2hlcyBzcGVjaWZpY2FsbHkuIEkga25vdyBzeXprYWxsZXIgaGFzIHNvbWUgYmFzaWMgSTJDL01ESU8gZnV6emluZyBjYXBhYmlsaXRpZXM7IHRoaW5ncyBsaWtlIGB2aGNpYCBvciBgaTJjLXN0dWJgIGV4aXN0LCByaWdodD8gQnV0IHRoZSBjaGFuY2VzIG9mIGFjdHVhbGx5IHJlYWNoaW5nIGNvbXBsZXggaGFyZHdhcmUgZHJpdmVycyB3aXRob3V0IGEgdGFyZ2V0ZWQgbW9jayBzZXR1cCBhcmUgc2xpbSwgZXNwZWNpYWxseSB3aXRoIHRoZSBraW5kcyBvZiBjb21wbGV4IGRhdGEgZmxvd3MgaW52b2x2ZWQgd2l0aCBuZXR3b3JrIHN3aXRjaGluZy4gU28sIEkgbmVlZCB0byBmaWd1cmUgb3V0IGlmIHRoZXJlIGlzICphbnkqIG1ldGhvZCBJIGNhbiB1c2UgdG8gcHJvYmUgYG12ODhlNnh4eGAgd2l0aGluIHN5emthbGxlci5cblxuUmlnaHQgbm93LCBJJ20gdGhpbmtpbmcgSSBuZWVkIHRvIGZpbmQgb3V0IGlmIGBtdjg4ZTZ4eHhgIHJlbGllcyAqcHVyZWx5KiBvbiBNRElPL1NNSSBmb3IgaXRzIGNvbW11bmljYXRpb24uIEknbGwgbmVlZCB0byBkaWcgaW50byB0aGUga2VybmVsIHNvdXJjZSBhbmQgc2VlIHdoYXQgaXRzIGRlcGVuZGVuY2llcyBsb29rIGxpa2UsIGhvdyBpdCBhY3R1YWxseSBpbnRlcmZhY2VzLiBMZXQncyBzZWUgaWYgdGhpcyB0aGluZyBpcyBldmVuIHJlYWNoYWJsZSBmcm9tIGEgdXNlcmxhbmQgcGVyc3BlY3RpdmUsIG9yIGlmIGl0IHJlcXVpcmVzIGEgbW9yZSBwcml2aWxlZ2VkIGV4ZWN1dGlvbiBjb250ZXh0LlxuXG5cbiIsIklucHV0VG9rZW5zIjo1NzE1LCJPdXRwdXRUb2tlbnMiOjU0LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MjA3LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQzOjI1LjYxOTA1NDc0WiIsIlNlcSI6NiwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjIzMjMxMTQ3MiwiRXJyb3IiOiJubyBtYXRjaGVzIiwiQXJncyI6IntcbiAgXCJFeHByZXNzaW9uXCI6IFwibW9kdWxlX21kaW9fZHJpdmVyfG1vZHVsZV9pMmNfZHJpdmVyfG1vZHVsZV9zcGlfZHJpdmVyXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcImVycm9yXCI6IFwibm8gbWF0Y2hlc1wiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0MzoyNS44NTEzNzc5NTJaIiwiU2VxIjo3LCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjozNDg0MTY4NjI1LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiJPa2F5LCBoZXJlJ3MgbXkgdGFrZSBvbiB0aG9zZSB0aG91Z2h0cywgdGFpbG9yZWQgZm9yIGFuIGV4cGVydCBhdWRpZW5jZTpcblxuKipJbnZlc3RpZ2F0aW5nIHRoZSBgbXY4OGU2eHh4YCBSZWdpc3RyYXRpb24gUHJvY2VzcyoqXG5cbkFscmlnaHQsIHNvIEkgbmVlZCB0byBkaWcgaW50byB0aGUgYG12ODhlNnh4eGAgZHJpdmVyLiBNeSBpbW1lZGlhdGUgZm9jdXMgaXMgdW5kZXJzdGFuZGluZyAqaG93KiBpdCdzIHJlZ2lzdGVyZWQgd2l0aGluIHRoZSBzeXN0ZW0uIEkgd2FudCB0byBzZWUgdGhlIHNwZWNpZmljIG1lY2hhbmlzbXMgYmVpbmcgZW1wbG95ZWQuIEFyZSB3ZSB0YWxraW5nIGFib3V0IGEgcGxhdGZvcm0gZGV2aWNlLCBhIHNpbXBsZSBJMkMgb3IgU1BJIHByb2JlLCBvciBzb21ldGhpbmcgbW9yZSBjb21wbGV4PyBJIG5lZWQgdG8gcXVpY2tseSBpZGVudGlmeSB0aGUgcmVnaXN0cmF0aW9uIGZ1bmN0aW9uIGNhbGxzLiBBcmUgd2UgbG9va2luZyBhdCBgcGxhdGZvcm1fZGV2aWNlX3JlZ2lzdGVyYCwgYGkyY19kcml2ZXJfcmVnaXN0ZXJgLCBvciBhIGN1c3RvbSByZWdpc3RyYXRpb24gc2NoZW1lPyBVbmRlcnN0YW5kaW5nIHRoaXMgaW5pdGlhbCBzZXR1cCBpcyBjcnVjaWFsIGZvciB0cmFjaW5nIHRoZSBkcml2ZXIncyBleGVjdXRpb24gcGF0aCBhbmQgdW5kZXJzdGFuZGluZyBpdHMgZGVwZW5kZW5jaWVzLiBJJ2xsIG5lZWQgdG8ga25vdyB3aGV0aGVyIHRoZSBpbml0aWFsaXphdGlvbiBzZXF1ZW5jZSBpcyB0eXBpY2FsIG9yIGlmIHRoZXJlIGFyZSBhbnkgdW51c3VhbCBxdWlya3MgSSBuZWVkIHRvIGJlIGF3YXJlIG9mLiBUaGUgcmVnaXN0cmF0aW9uIG1ldGhvZCB3aWxsIGNsdWUgbWUgaW4gdG8gdGhlIGludGVycnVwdCBoYW5kbGluZywgY2xvY2sgc2V0dXAsIGFuZCBvdGhlciByZXNvdXJjZSBtYW5hZ2VtZW50IHN0cmF0ZWdpZXMuIEZyb20gdGhlcmUsIEkgY2FuIHN0YXJ0IHRvIG1hcCBvdXQgdGhlIG92ZXJhbGwgZHJpdmVyIGFyY2hpdGVjdHVyZSBhbmQgaG93IGl0IGludGVyYWN0cyB3aXRoIHRoZSB1bmRlcmx5aW5nIGhhcmR3YXJlLlxuXG5cbiIsIklucHV0VG9rZW5zIjo2MzY0LCJPdXRwdXRUb2tlbnMiOjM4LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MTYsIlRvb2xDYWxscyI6WyJncmVwcGVyIl19LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDM6MjkuMzM1NTUwMDA3WiIsIlNlcSI6OCwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjYzMzU2NDE1LCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIm1vZHVsZV8uKmRyaXZlclwiLFxuICBcIlBhdGhQcmVmaXhcIjogXCJkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L1wiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJPdXRwdXRcIjogXCJkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz03NTMwPXN0YXRpYyBzdHJ1Y3QgbWRpb19kcml2ZXIgbXY4OGU2eHh4X2RyaXZlciA9IHtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1NDAtXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzU0MTptZGlvX21vZHVsZV9kcml2ZXIobXY4OGU2eHh4X2RyaXZlcik7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzU0Mi1cXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDM6MjkuMzk4OTE0MDMyWiIsIlNlcSI6OSwiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6NDAzNjUxMDc0MywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipNRElPIERyaXZlciBGdXp6aW5nIEZlYXNpYmlsaXR5KipcblxuT2theSwgc28gSSdtIGxvb2tpbmcgYXQgdGhpcyBNRElPIGRyaXZlciBhbmQgbXkgZmlyc3QgdGhvdWdodCBpcywgY2FuIHN5emthbGxlciBldmVuIHRvdWNoIHRoaXMgdGhpbmc/IEkga25vdyBpdCBoYXMgKnNvbWUqIE1ESU8gc3VwcG9ydCwgbWF5YmUgdGhyb3VnaCB0aGF0IGBtZGlvLW1vY2tgIHRoaW5nLCBvciBzb21ldGhpbmcgc2ltaWxhcj8gQWN0dWFsbHksIG5vLCB0aGF0J3Mgbm90IHJlYWxseSBob3cgaXQgd29ya3MuIEkgcmVtZW1iZXIgbm93LCBzeXprYWxsZXIgKmNhbiogaW5qZWN0IE1ESU8gZGV2aWNlcywgYnV0IG9ubHkgaWYgdGhlcmUncyBhIHZpcnR1YWwgTURJTyBidXMgc2V0IHVwLCByaWdodD9cblxuQnV0IHJlZ2FyZGxlc3Mgb2Ygc3l6a2FsbGVyJ3MgZGV2aWNlIGluamVjdGlvbiBjYXBhYmlsaXR5LCB0aGUgY29yZSBvZiB0aGUgcHJvYmxlbSBoZXJlIHNlZW1zIHRvIGJlIHRoYXQgdGhlIHBhdGNoIG1vZGlmaWVzIGBtdjg4ZTZ4eHhfbWFjX2xpbmtfZG93bmAgYW5kIGBtdjg4ZTZ4eHhfbWFjX2xpbmtfdXBgLiBUaGVzZSBmdW5jdGlvbnMgYXJlIGRpcmVjdGx5IHJlbGF0ZWQgdG8gbGluayBzdGF0ZSBjaGFuZ2VzIOKAkyBsaW5rIGRvd24vdXAsIHJlc3BlY3RpdmVseS4gU28sIHRoZSBrZXkgaXMgd2hldGhlciBvciBub3QgdGhlc2UgZnVuY3Rpb25zIGFyZSBldmVuIHJlYWNoYWJsZS5cblxuTGV0J3Mgc2Vl4oCmIE9rYXksIGl0IGxvb2tzIGxpa2UgYG12ODhlNnh4eF9tYWNfbGlua19kb3duYCBpcyBwYXJ0IG9mIGBwaHlsaW5rX21hY19vcHNgLiBUaGF0J3MgYSBnb29kIHN0YXJ0aW5nIHBvaW50LiBUaGlzIGF0IGxlYXN0IGdpdmVzIG1lIHNvbWV0aGluZyB0byBsb29rIGF0LCBhbmQgaXQncyBsb29raW5nIGxpa2UgdGhpcyBjb3VsZCBiZSBhIGdvb2QgcG9pbnQgdG8gc3RhcnQgaW52ZXN0aWdhdGluZyBleHBsb2l0YWJpbGl0eS5cblxuXG4iLCJJbnB1dFRva2VucyI6Njc4NiwiT3V0cHV0VG9rZW5zIjo0NiwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjE1MCwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0MzozMy40MzU0MjgxMDVaIiwiU2VxIjoxMCwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjgyODcwMjc0LCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIm12ODhlNnh4eF9tYWNfbGlua19kb3duXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTkyOD1zdGF0aWMgaW50IG12ODhlNnh4eF9tYWNfZmluaXNoKHN0cnVjdCBwaHlsaW5rX2NvbmZpZyAqY29uZmlnLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtOTU2LVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjk1NzpzdGF0aWMgdm9pZCBtdjg4ZTZ4eHhfbWFjX2xpbmtfZG93bihzdHJ1Y3QgcGh5bGlua19jb25maWcgKmNvbmZpZyxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy05NTgtXFx0XFx0XFx0XFx0ICAgIHVuc2lnbmVkIGludCBtb2RlLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzE4Nz1zdGF0aWMgY29uc3Qgc3RydWN0IHBoeWxpbmtfbWFjX29wcyBtdjg4ZTZ4eHhfcGh5bGlua19tYWNfb3BzID0ge1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzE5MS1cXHQubWFjX2ZpbmlzaFxcdFxcdD0gbXY4OGU2eHh4X21hY19maW5pc2gsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzE5MjpcXHQubWFjX2xpbmtfZG93blxcdFxcdD0gbXY4OGU2eHh4X21hY19saW5rX2Rvd24sXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzE5My1cXHQubWFjX2xpbmtfdXBcXHRcXHQ9IG12ODhlNnh4eF9tYWNfbGlua191cCxcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDM6MzMuNTE4MzA2Mjg5WiIsIlNlcSI6MTEsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjE0NzIxMTEzNjA5LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKkludmVzdGlnYXRpbmcgdGhlIFJlYWNoYWJpbGl0eSBvZiBgbXY4OGU2eHh4X21hY19saW5rX2Rvd25gIGluIFN5emthbGxlcioqXG5cbk9rYXksIHNvIEknbSB0cnlpbmcgdG8gZmlndXJlIG91dCBpZiB3ZSBjYW4gYWN0dWFsbHkgdHJpZ2dlciB0aGUgYG12ODhlNnh4eF9tYWNfbGlua19kb3duYCBmdW5jdGlvbiB3aXRoaW4gc3l6a2FsbGVyJ3MgdGVzdCBlbnZpcm9ubWVudC4gTXkgZmlyc3QgdGhvdWdodCBpcyB0byBjaGVjayB0aGUgc3l6a2FsbGVyIGNvbmZpZ3Mg4oCTIGlzIHRoZSBgTkVUX0RTQV9NVjg4RTZYWFhgIGRyaXZlciBlbmFibGVkPyBTeXprYWxsZXIncyB1c3VhbGx5IHByZXR0eSBhZ2dyZXNzaXZlIGFib3V0IGVuYWJsaW5nIGRyaXZlcnMsIGJ1dCB0aGlzIG9uZSBpcyBzcGVjaWZpYy5cblxuRXZlbiBpZiB0aGUgZHJpdmVyIGlzIGVuYWJsZWQsIHRoZSByZWFsIHF1ZXN0aW9uIGlzIHdoZXRoZXIgdGhpcyBjb2RlIGlzIHJlYWNoYWJsZSBpbiBhIHZpcnR1YWxpemVkIGNvbnRleHQuIFRvIGdldCB0byBgbXY4OGU2eHh4X21hY19saW5rX2Rvd25gLCB0aGUgZHJpdmVyIG5lZWRzIHRvIHByb2JlIHN1Y2Nlc3NmdWxseS4gVGhhdCBtZWFucyB3ZSBuZWVkIGFuIE1ESU8gYnVzIGFuZCBhIGRldmljZSB3aXRoIHRoZSByaWdodCBJRCBmb3IgdGhlIGRyaXZlci4gTXkgbmV4dCBxdWVzdGlvbiBpczogZG9lcyBzeXprYWxsZXIgcHJvdmlkZSBhIG1lY2hhbmlzbSBmb3IgaW5zdGFudGlhdGluZyBNRElPIGRldmljZXM/IEkga25vdyB3ZSBoYXZlIGBkc2FfbG9vcGAgZm9yIERTQSwgYnV0IHRoYXQncyBqdXN0IGEgZml4ZWQgbW9jayBkcml2ZXIuIEkgbmVlZCB0byBkaWcgZGVlcGVyIGFuZCBzZWUgaWYgdGhlcmUncyBhbnkgTURJTyBidXMgZW11bGF0aW9uIGhhcHBlbmluZyB3aXRoaW4gc3l6a2FsbGVyIHRoYXQgY291bGQgbGV0IHVzIGRvIHRoaXMuIFRoZSBhYnNlbmNlIG9mIGEgbWVjaGFuaXNtIGlzIGFuIGltcG9ydGFudCBwaWVjZSBvZiBpbmZvcm1hdGlvbi5cblxuXG4iLCJJbnB1dFRva2VucyI6NzU5MSwiT3V0cHV0VG9rZW5zIjoxOCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjEzOSwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0Mzo0OC4yMzk0MjMwMDhaIiwiU2VxIjoxMiwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjI2OTk5OTkxOTUsIkVycm9yIjoibm8gbWF0Y2hlcyIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIm1kaW8uKm1vY2tcIlxufSIsIlJlc3VsdHMiOiJ7XG4gIFwiZXJyb3JcIjogXCJubyBtYXRjaGVzXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQzOjUwLjkzOTQzNTU1M1oiLCJTZXEiOjEzLCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjo1NTU4NTkxMzY2LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiJPa2F5LCBoZXJlJ3MgbXkgaW50ZXJwcmV0YXRpb24gb2YgdGhhdCB0aG91Z2h0IHByb2Nlc3MsIHRhaWxvcmVkIGZvciBhbiBleHBlcnQgYXVkaWVuY2UsIGFuZCBwcmVzZW50ZWQgYXMgaWYgaXQgd2VyZSBteSBvd24gaW50ZXJuYWwgbW9ub2xvZ3VlOlxuXG4qKkludmVzdGlnYXRpbmcgYSBQb3RlbnRpYWxseSBPYnNjdXJlIEludGVyZmFjZSoqXG5cbkhtbSwgc28gSSdtIGxvb2tpbmcgYXQgYSBzaXR1YXRpb24gd2hlcmUgYSBzdGFuZGFyZCBNRElPIGludGVyZmFjZSBtaWdodCBiZSBpbiBwbGF5LiBCdXQsIGdpdmVuIHRoZSBzcGVjaWZpY3MsIEkgbmVlZCB0byBkaWcgZGVlcGVyIHRoYW4gdGhlIHR5cGljYWwgY29uZmlndXJhdGlvbnMuIE15IHRob3VnaHQgcHJvY2VzcyBpcyBub3cgY2lyY2xpbmcgYXJvdW5kICpgbWRpby4qZHVtbXlgKi4gSeKAmW0gaW1tZWRpYXRlbHkgY29uc2lkZXJpbmcgaWYgSSdtIGxvb2tpbmcgYXQgYSBzcGVjaWFsaXplZCBvciBwZXJoYXBzIGV2ZW4gYSBkZWJ1ZyBpbXBsZW1lbnRhdGlvbiBvZiBNRElPLiBUaGF0IFwiZHVtbXlcIiB0ZXJtIGlzIG9mdGVuIHVzZWQgYXMgYSBwbGFjZWhvbGRlciBvciB0byBkZW5vdGUgYSBzaW1wbGlmaWVkIG9yIHZpcnR1YWwgaW5zdGFuY2UuIEl0IGNvdWxkIGJlIHBvaW50aW5nIHRvIGEgc2NlbmFyaW8gd2hlcmUgdGhlIGFjdHVhbCBQSFkgaW50ZXJhY3Rpb24gaXMgYmVpbmcgc2ltdWxhdGVkIG9yIGJ5cGFzc2VkLCBwZXJoYXBzIGZvciB0ZXN0aW5nLCBkZXZlbG9wbWVudCwgb3IgaW4gYSBzeXN0ZW0gd2l0aCB1bnVzdWFsIGhhcmR3YXJlIGFyY2hpdGVjdHVyZS4gSXMgdGhlIHN5c3RlbSB1dGlsaXppbmcgYSBjdXN0b20gZHJpdmVyIG9yIGEgc3BlY2lmaWMgaGFyZHdhcmUgYWJzdHJhY3Rpb24gbGF5ZXIgdGhhdCBsZXZlcmFnZXMgdGhpcyBjb252ZW50aW9uPyBJdCdzIHRoZSBmaXJzdCBwbGFjZSBJJ20gZ29pbmcgdG8gaW52ZXN0aWdhdGUgYW5kIHNlZSBpZiBpdCB5aWVsZHMgZnVydGhlciBjbHVlcy4gSSBoYXZlIHRvIGxvb2sgZGVlcGVyLlxuXG5cbiIsIklucHV0VG9rZW5zIjo4MDI2LCJPdXRwdXRUb2tlbnMiOjE4LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6OSwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0Mzo1Ni40OTgwMjk3NzlaIiwiU2VxIjoxNCwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjI3MjgxMjkwMTMsIkVycm9yIjoibm8gbWF0Y2hlcyIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIm1kaW8uKmR1bW15XCJcbn0iLCJSZXN1bHRzIjoie1xuICBcImVycm9yXCI6IFwibm8gbWF0Y2hlc1wiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0Mzo1OS4yMjYxNjU3NjJaIiwiU2VxIjoxNSwiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MzcwNTkzODMwOCwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipDb25zaWRlcmluZyB0aGUgU3dpdGNoIENvbmZpZ3VyYXRpb24qKlxuXG5Pa2F5LCBzbyBJJ20gdGhpbmtpbmcgYWJvdXQgaG93IHRvIGFwcHJvYWNoIHRoaXMuLi4gYGZpeGVkLWxpbmtgIGNvbWVzIHRvIG1pbmQgYXMgYSBwb3RlbnRpYWwgc3RhcnRpbmcgcG9pbnQuIEJ1dCB3YWl0LCB0aGF0J3MgcmVhbGx5IGZvciBQSFlzLCBpc24ndCBpdD8gVGhpcyBpcyBhbiBNRElPIGRldmljZSDigJMgdGhlIHN3aXRjaCBpdHNlbGYsIHRoZSBgbXY4OGU2eHh4YC4gVGhlIGtleSBoZXJlIGlzIGdldHRpbmcgdGhlIE1ESU8gYnVzIHRvIHJlY29nbml6ZSBhbmQgcHJvYmUgdGhlIHN3aXRjaCwgYW5kIHRoYXQgbWVhbnMgbWFraW5nIHN1cmUgYSBkZXZpY2Ugd2l0aCBhIGNvcnJlc3BvbmRpbmcgSUQgaXMgcHJlc2VudCBvbiB0aGUgYnVzLiBUaW1lIHRvIGRpdmUgaW50byB0aGUgYG12ODhlNnh4eF9kcml2ZXJgIG1hdGNoaW5nIHRhYmxlIHRvIHNlZSBob3cgaXQncyBkb25lLlxuXG5cbiIsIklucHV0VG9rZW5zIjo4MjgyLCJPdXRwdXRUb2tlbnMiOjQ0LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6NzcsIlRvb2xDYWxscyI6WyJncmVwcGVyIl19LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDQ6MDIuOTMyMTA1ODNaIiwiU2VxIjoxNiwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjk3MTUzNjkyLCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIm12ODhlNnh4eF9vZl9tYXRjaFwiLFxuICBcIlBhdGhQcmVmaXhcIjogXCJkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L1wiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJPdXRwdXRcIjogXCJkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz03NTAwPXN0YXRpYyB2b2lkIG12ODhlNnh4eF9zaHV0ZG93bihzdHJ1Y3QgbWRpb19kZXZpY2UgKm1kaW9kZXYpXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTExLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjc1MTI6c3RhdGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgbXY4OGU2eHh4X29mX21hdGNoW10gPSB7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUxMy1cXHR7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTI3LVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjc1Mjg6TU9EVUxFX0RFVklDRV9UQUJMRShvZiwgbXY4OGU2eHh4X29mX21hdGNoKTtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTI5LVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTc1MzA9c3RhdGljIHN0cnVjdCBtZGlvX2RyaXZlciBtdjg4ZTZ4eHhfZHJpdmVyID0ge1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUzNS1cXHRcXHQubmFtZSA9IFxcXCJtdjg4ZTYwODVcXFwiLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjc1MzY6XFx0XFx0Lm9mX21hdGNoX3RhYmxlID0gbXY4OGU2eHh4X29mX21hdGNoLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MzctXFx0XFx0LnBtID0gXFx1MDAyNm12ODhlNnh4eF9wbV9vcHMsXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQ0OjAzLjAyOTI2NjM1M1oiLCJTZXEiOjE3LCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjoyMTczMDg4NDc0NiwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipBbmFseXppbmcgdGhlIFByb2JlIFBhdGgqKlxuXG5Pa2F5LCBzbyBJJ20gbG9va2luZyBhdCB0aGlzIGRyaXZlciBhbmQgaG93IGl0J3MgdHJ5aW5nIHRvIGluaXRpYWxpemUuIE15IGluaXRpYWwgdGhvdWdodCBpcyBpdCdzIG1hdGNoaW5nIGJhc2VkIG9uIHRoZSBEZXZpY2UgVHJlZSAoYG9mX21hdGNoX3RhYmxlYCksIHdoaWNoIGlzIHRoZSBzdGFuZGFyZCB3YXkgdG8gZG8gdGhpbmdzIGxpa2UgdGhpcy4gTm93LCB0aGUgaW50ZXJlc3RpbmcgcGFydCBpcyB3aGVyZSB0aGlzIGlzIGxpa2VseSB0byBydW46IFN5emthbGxlci4gQW5kIEknbSB0aGlua2luZywgbW9zdCBTeXprYWxsZXIgc2V0dXBzLCBwYXJ0aWN1bGFybHkgb24geDg2XzY0LCB1c2UgQUNQSS4gU29tZXRpbWVzIHdlIHNlZSBhcm02NCB3aXRoIGEgc3BlY2lmaWMgRFQuIEl0J3MgcmFyZSBmb3IgU3l6a2FsbGVyIHRvIG1hZ2ljYWxseSBjcmVhdGUgZGV2aWNlIHRyZWUgbm9kZXMgZm9yIGFyYml0cmFyeSBoYXJkd2FyZSwgdW5sZXNzLCBvZiBjb3Vyc2UsIHRoZXJlJ3MgYW4gb3ZlcmxheSBvciB0aGV5J3JlIHVzaW5nIGEgbW9jayBzZXR1cC4gXG5cbkhvbGQgb24gYSBzZWNvbmQsIEkgbmVlZCB0byBiZSBtb3JlIHByZWNpc2UuIFN5emthbGxlciAqZG9lcyogaGF2ZSBtZXRob2RzIGZvciBpbmplY3RpbmcgZGV2aWNlIHRyZWUgbm9kZXMgb24gY2VydGFpbiBjb25maWd1cmF0aW9ucyBvciBpdCBjb3VsZCBiZSBydW5uaW5nIG9uIGEgYm9hcmQgdGhhdCAqaGFzKiBhIGRldmljZSB0cmVlLiBCdXQgZ2VuZXJhbGx5LCBmb3IgdGhlIHVzdWFsIHg4Nl82NCBlbnZpcm9ubWVudHMgbGlrZSBHQ0Ugb3IgUUVNVSwgdGhpcyBkcml2ZXIgaXMgKm5vdCogZ29pbmcgdG8gcHJvYmUuIFRoZXJlIHdvbid0IGJlIGEgZGV2aWNlIHRyZWUgbm9kZSBwcmVzZW50IGZvciBzb21ldGhpbmcgbGlrZSBcIm1hcnZlbGwsbXY4OGU2MDg1XCIgd2l0aG91dCBzb21lIHZlcnkgc3BlY2lmaWMgc2V0dXAgYW5kIGZ1cnRoZXJtb3JlLCB0aGVyZSdzIG5vIHBoeXNpY2FsIE1ESU8gYnVzIGZvciBpdCB0byBsYXRjaCBvbnRvLiBTbywgdGhlIHF1ZXN0aW9uIGlzLCBob3cgZWxzZSBjYW4gdGhpcyBkcml2ZXIgYmUgdHJpZ2dlcmVkPyBJIG5lZWQgdG8gY2hlY2sgaWYgdGhlcmUncyBhbiBhbHRlcm5hdGl2ZSBpbml0aWFsaXphdGlvbiBwYXRoIHRoYXQgYnlwYXNzZXMgdGhlIGRldmljZSB0cmVlIGVudGlyZWx5LlxuXG5cbiIsIklucHV0VG9rZW5zIjo4OTQyLCJPdXRwdXRUb2tlbnMiOjQyLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MTY1LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQ0OjI0Ljc2MDE1NDkxOVoiLCJTZXEiOjE4LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6OTA2NTM2MjQsIkVycm9yIjoiIiwiQXJncyI6IntcbiAgXCJFeHByZXNzaW9uXCI6IFwibXY4OGU2eHh4X3Byb2JlXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTczMjA9c3RhdGljIFNJTVBMRV9ERVZfUE1fT1BTKG12ODhlNnh4eF9wbV9vcHMsIG12ODhlNnh4eF9zdXNwZW5kLCBtdjg4ZTZ4eHhfcmVzdW1lKTtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03MzIxLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjczMjI6c3RhdGljIGludCBtdjg4ZTZ4eHhfcHJvYmUoc3RydWN0IG1kaW9fZGV2aWNlICptZGlvZGV2KVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTczMjMte1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzUzMD1zdGF0aWMgc3RydWN0IG1kaW9fZHJpdmVyIG12ODhlNnh4eF9kcml2ZXIgPSB7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzUzMTpcXHQucHJvYmVcXHQ9IG12ODhlNnh4eF9wcm9iZSxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTMyLVxcdC5yZW1vdmUgPSBtdjg4ZTZ4eHhfcmVtb3ZlLFxcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0NDoyNC44NTA4MjA5ODJaIiwiU2VxIjoxOSwiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MTI5ODg4NTE4NzEsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IioqTURJTyBEcml2ZXIgSW52ZXN0aWdhdGlvbioqXG5cbk9rYXksIHNvIEknbSBsb29raW5nIGF0IHRoaXMgTURJTyBkcml2ZXIsIGFuZCBteSBpbW1lZGlhdGUgdGhvdWdodCBpcywgXCJXZWxsLCBkdWgsIGl0J3Mgbm90IGdvaW5nIHRvIGRvIGFueXRoaW5nIHVubGVzcyBpdCAqaGFzKiBhbiBNRElPIGJ1cyBhbmQgYSBjb21wYXRpYmxlIGRldmljZS5cIiAgVGhhdCdzIGp1c3QgYmFzaWMgaGFyZHdhcmUgZGVwZW5kZW5jeS4gIE15IG5leHQgcXVlc3Rpb24gaXMgd2hldGhlciB0aGVyZSdzIHNvbWUga2luZCBvZiBzb2Z0d2FyZSBNRElPIGJ1cyB0aGF0IHN5emthbGxlciBjb3VsZCBwb3RlbnRpYWxseSBtYW5pcHVsYXRlIHRvIHByb2JlIHRoaXMgdGhpbmc/ICBJIHJlY2FsbCBzZWVpbmcgYSBgZHNhX2xvb3BgIG91dCB0aGVyZSwgd2hpY2ggc291bmRzIHByb21pc2luZy4gQnV0IEkgYWxzbyByZW1lbWJlciBpdCByZWdpc3RlcmluZyBhICpzcGVjaWZpYyosIHByZS1kZWZpbmVkIFBIWSBhbmQgc3dpdGNoLCB3aGljaCBpcyBhIGJpdCBsaW1pdGluZy4gSSdsbCBuZWVkIHRvIGRvdWJsZSBjaGVjayBob3cgdGhlIGBkc2FfbG9vcF9kcml2ZXJgIGlzIHJlZ2lzdGVyZWQuIExldCdzIGdldCBpbnRvIGBkc2FfbG9vcC5jYCBhbmQgZmlndXJlIG91dCBleGFjdGx5IHdoYXQgYGRzYV9sb29wYCBpcyBkb2luZy5cblxuXG4iLCJJbnB1dFRva2VucyI6OTc0MSwiT3V0cHV0VG9rZW5zIjoxOCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjg3LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQ0OjM3LjgzOTY5MzU4M1oiLCJTZXEiOjIwLCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MjA3OTQzMjIyMiwiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJkc2FfbG9vcFwiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJPdXRwdXRcIjogXCJEb2N1bWVudGF0aW9uL25ldHdvcmtpbmcvZHNhL2RzYS5yc3Q9MTU5PWFsbCBhdHRhY2hlZCBzd2l0Y2ggcG9ydHMgbXVzdCBiZSBkb3duIHdoaWxlIGRvaW5nIHRoaXMpLlxcbkRvY3VtZW50YXRpb24vbmV0d29ya2luZy9kc2EvZHNhLnJzdC0xNjAtXFxuRG9jdW1lbnRhdGlvbi9uZXR3b3JraW5nL2RzYS9kc2EucnN0OjE2MTpJdCBpcyBkZXNpcmFibGUgdGhhdCBhbGwgdGFnZ2luZyBwcm90b2NvbHMgYXJlIHRlc3RhYmxlIHdpdGggdGhlIGBgZHNhX2xvb3BgYFxcbkRvY3VtZW50YXRpb24vbmV0d29ya2luZy9kc2EvZHNhLnJzdC0xNjItbW9ja3VwIGRyaXZlciwgd2hpY2ggY2FuIGJlIGF0dGFjaGVkIHRvIGFueSBuZXR3b3JrIGludGVyZmFjZS4gVGhlIGdvYWwgaXMgdGhhdFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL01ha2VmaWxlPTM9YmNtLXNmMi1vYmpzXFx0XFx0XFx0Oj0gYmNtX3NmMi5vIGJjbV9zZjJfY2ZwLm9cXG5kcml2ZXJzL25ldC9kc2EvTWFrZWZpbGU6NDpvYmotJChDT05GSUdfTkVUX0RTQV9MT09QKVxcdCs9IGRzYV9sb29wLm9cXG5kcml2ZXJzL25ldC9kc2EvTWFrZWZpbGUtNS1vYmotJChDT05GSUdfTkVUX0RTQV9LUzg5OTUpIFxcdCs9IGtzODk5NS5vXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yNC1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoyNTpzdHJ1Y3QgZHNhX2xvb3BfdmxhbiB7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjYtXFx0dTE2IG1lbWJlcnM7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yOS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMDpzdHJ1Y3QgZHNhX2xvb3BfbWliX2VudHJ5IHtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zMS1cXHRjaGFyIG5hbWVbRVRIX0dTVFJJTkdfTEVOXTtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM0LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM1OmVudW0gZHNhX2xvb3BfbWliX2NvdW50ZXJzIHtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zNi1cXHREU0FfTE9PUF9QSFlfUkVBRF9PSyxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQyLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQzOnN0cnVjdCBkc2FfbG9vcF9wb3J0IHtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0NDpcXHRzdHJ1Y3QgZHNhX2xvb3BfbWliX2VudHJ5IG1pYltfX0RTQV9MT09QX0NOVF9NQVhdO1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQ1LVxcdHUxNiBwdmlkO1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDgtXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDk6c3RydWN0IGRzYV9sb29wX3ByaXYge1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTUwLVxcdHN0cnVjdCBtaWlfYnVzXFx0KmJ1cztcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy01MS1cXHR1bnNpZ25lZCBpbnRcXHRwb3J0X2Jhc2U7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NTI6XFx0c3RydWN0IGRzYV9sb29wX3ZsYW4gdmxhbnNbVkxBTl9OX1ZJRF07XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNTMtXFx0c3RydWN0IG5ldF9kZXZpY2UgKm5ldGRldjtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo1NDpcXHRzdHJ1Y3QgZHNhX2xvb3BfcG9ydCBwb3J0c1tEU0FfTUFYX1BPUlRTXTtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy01NS19O1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTU2LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjU3OnN0cnVjdCBkc2FfbG9vcF9wZGF0YSB7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNTgtXFx0LyogTXVzdCBiZSBmaXJzdCwgc3VjaCB0aGF0IGRzYV9yZWdpc3Rlcl9zd2l0Y2goKSBjYW4gYWNjZXNzIHRoaXNcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTY2LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjY3OnN0YXRpYyBzdHJ1Y3QgZHNhX2xvb3BfbWliX2VudHJ5IGRzYV9sb29wX21pYnNbXSA9IHtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy02OC1cXHRbRFNBX0xPT1BfUEhZX1JFQURfT0tdXFx0PSB7IFxcXCJwaHlfcmVhZF9va1xcXCIsIH0sXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYz03NT1zdGF0aWMgc3RydWN0IG1kaW9fZGV2aWNlICpzd2l0Y2hfbWRpb2RldjtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy03Ni1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo3NzplbnVtIGRzYV9sb29wX2RldmxpbmtfcmVzb3VyY2VfaWQge1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTc4LVxcdERTQV9MT09QX0RFVkxJTktfUEFSQU1fSURfTk9ORSwgIC8qIERFVkxJTktfUkVTT1VSQ0VfSURfUEFSRU5UX1RPUCAqL1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtODEtXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6ODI6c3RhdGljIHU2NCBkc2FfbG9vcF9kZXZsaW5rX3Z0dV9nZXQodm9pZCAqcHJpdilcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy04My17XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6ODQ6XFx0c3RydWN0IGRzYV9sb29wX3ByaXYgKnBzID0gcHJpdjtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy04NS1cXHR1bnNpZ25lZCBpbnQgaSwgY291bnQgPSAwO1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjg2OlxcdHN0cnVjdCBkc2FfbG9vcF92bGFuICp2bDtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy04Ny1cXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTk2LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjk3OnN0YXRpYyBpbnQgZHNhX2xvb3Bfc2V0dXBfZGV2bGlua19yZXNvdXJjZXMoc3RydWN0IGRzYV9zd2l0Y2ggKmRzKVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTk4LXtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy05OS1cXHRzdHJ1Y3QgZGV2bGlua19yZXNvdXJjZV9zaXplX3BhcmFtcyBzaXplX3BhcmFtcztcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxMDA6XFx0c3RydWN0IGRzYV9sb29wX3ByaXYgKnBzID0gZHMtXFx1MDAzZXByaXY7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTAxLVxcdGludCBlcnI7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xMTUtXFx0XFx0XFx0XFx0XFx0ICAgICAgRFNBX0xPT1BfREVWTElOS19QQVJBTV9JRF9WVFUsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTE2OlxcdFxcdFxcdFxcdFxcdCAgICAgIGRzYV9sb29wX2RldmxpbmtfdnR1X2dldCwgcHMpO1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTExNy1cXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTEyNC1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxMjU6c3RhdGljIGVudW0gZHNhX3RhZ19wcm90b2NvbCBkc2FfbG9vcF9nZXRfcHJvdG9jb2woc3RydWN0IGRzYV9zd2l0Y2ggKmRzLFxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTEyNi1cXHRcXHRcXHRcXHRcXHRcXHQgICBpbnQgcG9ydCxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTEzMy1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxMzQ6c3RhdGljIGludCBkc2FfbG9vcF9zZXR1cChzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMpXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTM1LXtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxMzY6XFx0c3RydWN0IGRzYV9sb29wX3ByaXYgKnBzID0gZHMtXFx1MDAzZXByaXY7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTM3LVxcdHVuc2lnbmVkIGludCBpO1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTM5LVxcdGZvciAoaSA9IDA7IGkgXFx1MDAzYyBkcy1cXHUwMDNlbnVtX3BvcnRzOyBpKyspXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTQwOlxcdFxcdG1lbWNweShwcy1cXHUwMDNlcG9ydHNbaV0ubWliLCBkc2FfbG9vcF9taWJzLFxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjE0MTpcXHRcXHQgICAgICAgc2l6ZW9mKGRzYV9sb29wX21pYnMpKTtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNDItXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNDQtXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTQ1OlxcdHJldHVybiBkc2FfbG9vcF9zZXR1cF9kZXZsaW5rX3Jlc291cmNlcyhkcyk7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTQ2LX1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNDctXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTQ4OnN0YXRpYyB2b2lkIGRzYV9sb29wX3RlYXJkb3duKHN0cnVjdCBkc2Ffc3dpdGNoICpkcylcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNDkte1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTUyLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjE1MzpzdGF0aWMgaW50IGRzYV9sb29wX2dldF9zc2V0X2NvdW50KHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsIGludCBzc2V0KVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE1NC17XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNjAtXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTYxOnN0YXRpYyB2b2lkIGRzYV9sb29wX2dldF9zdHJpbmdzKHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMTYyLVxcdFxcdFxcdFxcdCB1MzIgc3RyaW5nc2V0LCB1aW50OF90ICpkYXRhKVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE2My17XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTY0OlxcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcyA9IGRzLVxcdTAwM2Vwcml2O1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE2NS1cXHR1bnNpZ25lZCBpbnQgaTtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE3My1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxNzQ6c3RhdGljIHZvaWQgZHNhX2xvb3BfZ2V0X2V0aHRvb2xfc3RhdHMoc3RydWN0IGRzYV9zd2l0Y2ggKmRzLCBpbnQgcG9ydCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0xNzUtXFx0XFx0XFx0XFx0ICAgICAgIHVpbnQ2NF90ICpkYXRhKVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE3Ni17XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTc3OlxcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcyA9IGRzLVxcdTAwM2Vwcml2O1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE3OC1cXHR1bnNpZ25lZCBpbnQgaTtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE4My1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxODQ6c3RhdGljIGludCBkc2FfbG9vcF9waHlfcmVhZChzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMsIGludCBwb3J0LCBpbnQgcmVnbnVtKVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE4NS17XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MTg2OlxcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcyA9IGRzLVxcdTAwM2Vwcml2O1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE4Ny1cXHRzdHJ1Y3QgbWlpX2J1cyAqYnVzID0gcHMtXFx1MDAzZWJ1cztcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTE5OC1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoxOTk6c3RhdGljIGludCBkc2FfbG9vcF9waHlfd3JpdGUoc3RydWN0IGRzYV9zd2l0Y2ggKmRzLCBpbnQgcG9ydCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yMDAtXFx0XFx0XFx0ICAgICAgaW50IHJlZ251bSwgdTE2IHZhbHVlKVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTIwMS17XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MjAyOlxcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcyA9IGRzLVxcdTAwM2Vwcml2O1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTIwMy1cXHRzdHJ1Y3QgbWlpX2J1cyAqYnVzID0gcHMtXFx1MDAzZWJ1cztcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTIxNC1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoyMTU6c3RhdGljIGludCBkc2FfbG9vcF9wb3J0X2JyaWRnZV9qb2luKHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjE2LVxcdFxcdFxcdFxcdCAgICAgc3RydWN0IGRzYV9icmlkZ2UgYnJpZGdlLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjI1LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjIyNjpzdGF0aWMgdm9pZCBkc2FfbG9vcF9wb3J0X2JyaWRnZV9sZWF2ZShzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMsIGludCBwb3J0LFxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTIyNy1cXHRcXHRcXHRcXHQgICAgICAgc3RydWN0IGRzYV9icmlkZ2UgYnJpZGdlKVxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjMyLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjIzMzpzdGF0aWMgdm9pZCBkc2FfbG9vcF9wb3J0X3N0cF9zdGF0ZV9zZXQoc3RydWN0IGRzYV9zd2l0Y2ggKmRzLCBpbnQgcG9ydCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yMzQtXFx0XFx0XFx0XFx0XFx0dTggc3RhdGUpXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yMzktXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MjQwOnN0YXRpYyBpbnQgZHNhX2xvb3BfcG9ydF92bGFuX2ZpbHRlcmluZyhzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMsIGludCBwb3J0LFxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI0MS1cXHRcXHRcXHRcXHRcXHRib29sIHZsYW5fZmlsdGVyaW5nLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjQ5LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjI1MDpzdGF0aWMgaW50IGRzYV9sb29wX3BvcnRfdmxhbl9hZGQoc3RydWN0IGRzYV9zd2l0Y2ggKmRzLCBpbnQgcG9ydCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yNTEtXFx0XFx0XFx0XFx0ICBjb25zdCBzdHJ1Y3Qgc3dpdGNoZGV2X29ial9wb3J0X3ZsYW4gKnZsYW4sXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0yNTUtXFx0Ym9vbCBwdmlkID0gdmxhbi1cXHUwMDNlZmxhZ3MgXFx1MDAyNiBCUklER0VfVkxBTl9JTkZPX1BWSUQ7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MjU2OlxcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcyA9IGRzLVxcdTAwM2Vwcml2O1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI1Ny1cXHRzdHJ1Y3QgbWlpX2J1cyAqYnVzID0gcHMtXFx1MDAzZWJ1cztcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoyNTg6XFx0c3RydWN0IGRzYV9sb29wX3ZsYW4gKnZsO1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI1OS1cXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI4Mi1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoyODM6c3RhdGljIGludCBkc2FfbG9vcF9wb3J0X3ZsYW5fZGVsKHN0cnVjdCBkc2Ffc3dpdGNoICpkcywgaW50IHBvcnQsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjg0LVxcdFxcdFxcdFxcdCAgY29uc3Qgc3RydWN0IHN3aXRjaGRldl9vYmpfcG9ydF92bGFuICp2bGFuKVxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMjg2LVxcdGJvb2wgdW50YWdnZWQgPSB2bGFuLVxcdTAwM2VmbGFncyBcXHUwMDI2IEJSSURHRV9WTEFOX0lORk9fVU5UQUdHRUQ7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6Mjg3OlxcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcyA9IGRzLVxcdTAwM2Vwcml2O1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI4OC1cXHR1MTYgcHZpZCA9IHBzLVxcdTAwM2Vwb3J0c1twb3J0XS5wdmlkO1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI4OS1cXHRzdHJ1Y3QgbWlpX2J1cyAqYnVzID0gcHMtXFx1MDAzZWJ1cztcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzoyOTA6XFx0c3RydWN0IGRzYV9sb29wX3ZsYW4gKnZsO1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTI5MS1cXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTMxMC1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMTE6c3RhdGljIGludCBkc2FfbG9vcF9wb3J0X2NoYW5nZV9tdHUoc3RydWN0IGRzYV9zd2l0Y2ggKmRzLCBpbnQgcG9ydCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zMTItXFx0XFx0XFx0XFx0ICAgIGludCBuZXdfbXR1KVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTMxMy17XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzE0OlxcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcml2ID0gZHMtXFx1MDAzZXByaXY7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzE1LVxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzIwLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjMyMTpzdGF0aWMgaW50IGRzYV9sb29wX3BvcnRfbWF4X210dShzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMsIGludCBwb3J0KVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTMyMi17XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zMjUtXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzI2OnN0YXRpYyB2b2lkIGRzYV9sb29wX3BoeWxpbmtfZ2V0X2NhcHMoc3RydWN0IGRzYV9zd2l0Y2ggKmRzYSwgaW50IHBvcnQsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzI3LVxcdFxcdFxcdFxcdCAgICAgIHN0cnVjdCBwaHlsaW5rX2NvbmZpZyAqY29uZmlnKVxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzMzLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjMzNDpzdGF0aWMgY29uc3Qgc3RydWN0IGRzYV9zd2l0Y2hfb3BzIGRzYV9sb29wX2RyaXZlciA9IHtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMzU6XFx0LmdldF90YWdfcHJvdG9jb2xcXHQ9IGRzYV9sb29wX2dldF9wcm90b2NvbCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMzY6XFx0LnNldHVwXFx0XFx0XFx0PSBkc2FfbG9vcF9zZXR1cCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMzc6XFx0LnRlYXJkb3duXFx0XFx0PSBkc2FfbG9vcF90ZWFyZG93bixcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMzg6XFx0LmdldF9zdHJpbmdzXFx0XFx0PSBkc2FfbG9vcF9nZXRfc3RyaW5ncyxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozMzk6XFx0LmdldF9ldGh0b29sX3N0YXRzXFx0PSBkc2FfbG9vcF9nZXRfZXRodG9vbF9zdGF0cyxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNDA6XFx0LmdldF9zc2V0X2NvdW50XFx0XFx0PSBkc2FfbG9vcF9nZXRfc3NldF9jb3VudCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNDE6XFx0LmdldF9ldGh0b29sX3BoeV9zdGF0c1xcdD0gZHNhX2xvb3BfZ2V0X2V0aHRvb2xfc3RhdHMsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzQyOlxcdC5waHlfcmVhZFxcdFxcdD0gZHNhX2xvb3BfcGh5X3JlYWQsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzQzOlxcdC5waHlfd3JpdGVcXHRcXHQ9IGRzYV9sb29wX3BoeV93cml0ZSxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNDQ6XFx0LnBvcnRfYnJpZGdlX2pvaW5cXHQ9IGRzYV9sb29wX3BvcnRfYnJpZGdlX2pvaW4sXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzQ1OlxcdC5wb3J0X2JyaWRnZV9sZWF2ZVxcdD0gZHNhX2xvb3BfcG9ydF9icmlkZ2VfbGVhdmUsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzQ2OlxcdC5wb3J0X3N0cF9zdGF0ZV9zZXRcXHQ9IGRzYV9sb29wX3BvcnRfc3RwX3N0YXRlX3NldCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNDc6XFx0LnBvcnRfdmxhbl9maWx0ZXJpbmdcXHQ9IGRzYV9sb29wX3BvcnRfdmxhbl9maWx0ZXJpbmcsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzQ4OlxcdC5wb3J0X3ZsYW5fYWRkXFx0XFx0PSBkc2FfbG9vcF9wb3J0X3ZsYW5fYWRkLFxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM0OTpcXHQucG9ydF92bGFuX2RlbFxcdFxcdD0gZHNhX2xvb3BfcG9ydF92bGFuX2RlbCxcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNTA6XFx0LnBvcnRfY2hhbmdlX210dVxcdD0gZHNhX2xvb3BfcG9ydF9jaGFuZ2VfbXR1LFxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM1MTpcXHQucG9ydF9tYXhfbXR1XFx0XFx0PSBkc2FfbG9vcF9wb3J0X21heF9tdHUsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzUyOlxcdC5waHlsaW5rX2dldF9jYXBzXFx0PSBkc2FfbG9vcF9waHlsaW5rX2dldF9jYXBzLFxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM1My19O1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM1NC1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNTU6c3RhdGljIGludCBkc2FfbG9vcF9kcnZfcHJvYmUoc3RydWN0IG1kaW9fZGV2aWNlICptZGlvZGV2KVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM1Ni17XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzU3OlxcdHN0cnVjdCBkc2FfbG9vcF9wZGF0YSAqcGRhdGEgPSBtZGlvZGV2LVxcdTAwM2VkZXYucGxhdGZvcm1fZGF0YTtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzozNTg6XFx0c3RydWN0IGRzYV9sb29wX3ByaXYgKnBzO1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM1OS1cXHRzdHJ1Y3QgZHNhX3N3aXRjaCAqZHM7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zODItXFx0ZHMtXFx1MDAzZWRldiA9IFxcdTAwMjZtZGlvZGV2LVxcdTAwM2VkZXY7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6MzgzOlxcdGRzLVxcdTAwM2VvcHMgPSBcXHUwMDI2ZHNhX2xvb3BfZHJpdmVyO1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM4NC1cXHRkcy1cXHUwMDNlcHJpdiA9IHBzO1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtMzk2LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjM5NzpzdGF0aWMgdm9pZCBkc2FfbG9vcF9kcnZfcmVtb3ZlKHN0cnVjdCBtZGlvX2RldmljZSAqbWRpb2RldilcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy0zOTgte1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTM5OS1cXHRzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMgPSBkZXZfZ2V0X2RydmRhdGEoXFx1MDAyNm1kaW9kZXYtXFx1MDAzZWRldik7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDAwOlxcdHN0cnVjdCBkc2FfbG9vcF9wcml2ICpwcztcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00MDEtXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00MTAtXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDExOnN0YXRpYyB2b2lkIGRzYV9sb29wX2Rydl9zaHV0ZG93bihzdHJ1Y3QgbWRpb19kZXZpY2UgKm1kaW9kZXYpXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDEyLXtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQyMi1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0MjM6c3RhdGljIHN0cnVjdCBtZGlvX2RyaXZlciBkc2FfbG9vcF9kcnYgPSB7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDI0LVxcdC5tZGlvZHJ2LmRyaXZlclxcdD0ge1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDI2LVxcdH0sXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDI3OlxcdC5wcm9iZVxcdD0gZHNhX2xvb3BfZHJ2X3Byb2JlLFxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQyODpcXHQucmVtb3ZlXFx0PSBkc2FfbG9vcF9kcnZfcmVtb3ZlLFxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQyOTpcXHQuc2h1dGRvd24gPSBkc2FfbG9vcF9kcnZfc2h1dGRvd24sXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDMwLX07XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDMxLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQzMjpzdGF0aWMgaW50IGRzYV9sb29wX2J1c19tYXRjaChzdHJ1Y3QgZGV2aWNlICpkZXYsXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDMzLVxcdFxcdFxcdCAgICAgIGNvbnN0IHN0cnVjdCBkZXZpY2VfZHJpdmVyICpkcnYpXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDM0LXtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0MzU6XFx0cmV0dXJuIGRydiA9PSBcXHUwMDI2ZHNhX2xvb3BfZHJ2Lm1kaW9kcnYuZHJpdmVyO1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQzNi19XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDM3LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQzODpzdGF0aWMgdm9pZCBkc2FfbG9vcF9waHlkZXZzX3VucmVnaXN0ZXIodm9pZClcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00Mzkte1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDQ1LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQ0NjpzdGF0aWMgaW50IF9faW5pdCBkc2FfbG9vcF9jcmVhdGVfc3dpdGNoX21kaW9kZXYodm9pZClcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00NDcte1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQ0ODpcXHRzdGF0aWMgc3RydWN0IGRzYV9sb29wX3BkYXRhIGRzYV9sb29wX3BkYXRhID0ge1xcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQ0OS1cXHRcXHQuY2QgPSB7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00NzAtXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDcxOlxcdHN3aXRjaF9tZGlvZGV2LVxcdTAwM2VidXNfbWF0Y2ggPSBkc2FfbG9vcF9idXNfbWF0Y2g7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDcyOlxcdHN3aXRjaF9tZGlvZGV2LVxcdTAwM2VkZXYucGxhdGZvcm1fZGF0YSA9IFxcdTAwMjZkc2FfbG9vcF9wZGF0YTtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00NzMtXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00ODEtXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NDgyOnN0YXRpYyBpbnQgX19pbml0IGRzYV9sb29wX2luaXQodm9pZClcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00ODMte1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDg2LVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjQ4NzpcXHRyZXQgPSBkc2FfbG9vcF9jcmVhdGVfc3dpdGNoX21kaW9kZXYoKTtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy00ODgtXFx0aWYgKHJldClcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jLTQ5My1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0OTQ6XFx0cmV0ID0gbWRpb19kcml2ZXJfcmVnaXN0ZXIoXFx1MDAyNmRzYV9sb29wX2Rydik7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDk1LVxcdGlmIChyZXQpIHtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo0OTY6XFx0XFx0ZHNhX2xvb3BfcGh5ZGV2c191bnJlZ2lzdGVyKCk7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNDk3LVxcdFxcdG1kaW9fZGV2aWNlX3JlbW92ZShzd2l0Y2hfbWRpb2Rldik7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy01MDItfVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjUwMzptb2R1bGVfaW5pdChkc2FfbG9vcF9pbml0KTtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy01MDQtXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmM6NTA1OnN0YXRpYyB2b2lkIF9fZXhpdCBkc2FfbG9vcF9leGl0KHZvaWQpXFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNTA2LXtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo1MDc6XFx0bWRpb19kcml2ZXJfdW5yZWdpc3RlcihcXHUwMDI2ZHNhX2xvb3BfZHJ2KTtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYzo1MDg6XFx0ZHNhX2xvb3BfcGh5ZGV2c191bnJlZ2lzdGVyKCk7XFxuZHJpdmVycy9uZXQvZHNhL2RzYV9sb29wLmMtNTA5LVxcdG1kaW9fZGV2aWNlX3JlbW92ZShzd2l0Y2hfbWRpb2Rldik7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy01MTEtfVxcbmRyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jOjUxMjptb2R1bGVfZXhpdChkc2FfbG9vcF9leGl0KTtcXG5kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYy01MTMtXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQ0OjM5LjkxOTEzMjYwNVoiLCJTZXEiOjIxLCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjo2NjEzNDkxNTM2LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKkludmVzdGlnYXRpbmcgTURJTyBEZXZpY2UgSW5zdGFudGlhdGlvbioqXG5cbk9rYXksIHNvIGBkc2FfbG9vcGAgaGFzIGl0cyBvd24gZHJpdmVyLCBgZHNhX2xvb3BfZHJ2YCwgYW5kIGNyaXRpY2FsbHksIGl0ICpkb2Vzbid0KiBsb2FkIGBtdjg4ZTZ4eHhgLiBUaGlzIG1lYW5zIEkgY2FuJ3QgcmVhY2ggdGhlIGBtdjg4ZTZ4eHhgIHJlZ2lzdGVycyBkaXJlY3RseSB0aHJvdWdoIGBkc2FfbG9vcGAsIHdoaWNoIGlzIGEgcHJvYmxlbS4gSSBuZWVkIHRvIGZpZ3VyZSBvdXQgYW4gYWx0ZXJuYXRpdmUuXG5cblRoZSBxdWVzdGlvbiBub3cgYmVjb21lcywgaXMgdGhlcmUgKmFub3RoZXIqIHdheSB0byBnZXQgYXQgdGhlIGBtdjg4ZTZ4eHhgIHJlZ2lzdGVycz8gTXkgaW5pdGlhbCB0aG91Z2h0IGlzIGFib3V0IGEgbW9jayBNRElPIGJ1cy4gQ291bGQgdGhlcmUgYmUgYSB3YXkgdG8gY3JlYXRlIGEgdmlydHVhbCBNRElPIGJ1cyBpbnRlcmZhY2UgdGhhdCB3b3VsZCBhbGxvdyB1c2VyIHNwYWNlIHRvIGVzc2VudGlhbGx5IFwibW9jayB1cFwiIG9yIGluc3RhbnRpYXRlIHRoZXNlIGFyYml0cmFyeSBNRElPIGRldmljZXM/XG5cblRoYXQncyBhIGdvb2QgbGVhZC4gTGV0J3Mgc2VlIGlmIHRoZXJlJ3MgYSB1c2VyIHNwYWNlIGludGVyZmFjZSBkZXNpZ25lZCBmb3IganVzdCB0aGlzIGtpbmQgb2Ygb3BlcmF0aW9uLiBJIGtub3cgdGhhdCBJMkMgcHJvdmlkZXMgYSBtZWNoYW5pc20gdmlhIGAvc3lzL2J1cy9pMmMvZGV2aWNlcy9pMmMtKi9uZXdfZGV2aWNlYC4gRG9lcyBNRElPIGV4cG9zZSBhIHNpbWlsYXIgaW50ZXJmYWNlPyBUaW1lIHRvIGRpZyBhcm91bmQgdGhlIGtlcm5lbCBzb3VyY2VzIGFuZCBzZWUgaWYgdGhlcmUgaXMgc29tZXRoaW5nIGNvbXBhcmFibGUgZm9yIE1ESU8gZGV2aWNlIGluc3RhbnRpYXRpb24uXG5cblxuIiwiSW5wdXRUb2tlbnMiOjE2NjgzLCJPdXRwdXRUb2tlbnMiOjI5LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MTMwLCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQ0OjQ2LjUzMjYyNzAwMVoiLCJTZXEiOjIyLCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6ODIzODIwMzQsIkVycm9yIjoibm8gbWF0Y2hlcyIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIm5ld19kZXZpY2VcIixcbiAgXCJQYXRoUHJlZml4XCI6IFwiZHJpdmVycy9uZXQvcGh5L1wiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJlcnJvclwiOiBcIm5vIG1hdGNoZXNcIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDQ6NDYuNjE1MDIyMTc1WiIsIlNlcSI6MjMsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjIyNTE4MjU5MjkzLCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiJIZXJlJ3MgbXkgdGFrZSBvbiB0aGUgdGhvdWdodCBwcm9jZXNzOlxuXG4qKkRpdmluZyBpbnRvIHRoZSBNRElPIERyaXZlcnMqKlxuXG5Pa2F5LCB0aW1lIHRvIGdldCBzdGFydGVkLiBNeSBpbml0aWFsIGluc3RpbmN0IGlzIHRvIGdvIHN0cmFpZ2h0IHRvIHRoZSBoZWFydCBvZiB0aGUgbWF0dGVyIOKAkyB0aGUgYGRyaXZlcnMvbmV0L21kaW8vYCBkaXJlY3RvcnkuIFRoaXMgaXMgdGhlIGxvZ2ljYWwgcGxhY2UgdG8gYmVnaW4gbXkgaW52ZXN0aWdhdGlvbiBpbnRvIHRoZSBNZWRpYSBJbmRlcGVuZGVudCBJbnRlcmZhY2UgKE1ESU8pIGRyaXZlcnMuIEdpdmVuIG15IGV4cGVydGlzZSwgSSBhbHJlYWR5IGtub3cgdGhpcyBkaXJlY3Rvcnkgd2lsbCBsaWtlbHkgaG91c2UgdGhlIGNvcmUgZnVuY3Rpb25hbGl0eSBhbmQgaW1wbGVtZW50YXRpb24gZGV0YWlscyBmb3IgaW50ZXJmYWNpbmcgd2l0aCB2YXJpb3VzIFBIWXMgKFBoeXNpY2FsIExheWVyIFRyYW5zY2VpdmVycykgYW5kIE1ESU8tY29tcGxpYW50IGRldmljZXMuIEkgZXhwZWN0IHRvIGZpbmQgc291cmNlIGNvZGUgdGhhdCBkZWZpbmVzIHRoZSBNRElPIGJ1cyBvcGVyYXRpb25zLCBkZXZpY2UgcHJvYmluZywgcmVnaXN0ZXIgYWNjZXNzIHJvdXRpbmVzLCBhbmQgaW50ZXJydXB0IGhhbmRsaW5nIGlmIGFwcGxpY2FibGUuIExldCdzIHNlZSB3aGF0IHdlIGNhbiBmaW5kIVxuXG5cbiIsIklucHV0VG9rZW5zIjoxNzA5OSwiT3V0cHV0VG9rZW5zIjozMCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjEzLCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQ1OjA5LjEzMzI4NDAxOFoiLCJTZXEiOjI0LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MTM4MjYwNTQwLCJFcnJvciI6Im5vIG1hdGNoZXMiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJuZXdfZGV2aWNlXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImRyaXZlcnMvbmV0L21kaW8vXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcImVycm9yXCI6IFwibm8gbWF0Y2hlc1wiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0NTowOS4yNzE1NTgyNThaIiwiU2VxIjoyNSwiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6NjE0MjY3NjExMiwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipNRElPIERldmljZSBJbnN0YW50aWF0aW9uIENvbmNlcm5zKipcblxuT2theSwgc28gSSdtIHRoaW5raW5nIGFib3V0IE1ESU8gYW5kIGhvdyB0byBpbnN0YW50aWF0ZSB0aGVzZSBkZXZpY2VzIGZyb20gdXNlcnNwYWNlLiBJdCBzZWVtcyBsaWtlIHRoZXJlIGlzbid0IGEgZGlyZWN0IHVzZXJzcGFjZSBpbnRlcmZhY2UsIHdoaWNoIGlzIGEgY29tbW9uIHByb2JsZW0uIFRoZW4gSSByZW1lbWJlciwgd2FpdCwgc3l6a2FsbGVyIGhhcyBwc2V1ZG8tc3lzY2FsbHMgZm9yIG90aGVyIGludGVyZmFjZXMgbGlrZSBVU0IgYW5kIE5ldGxpbmsuIFNvLCBJIHdvbmRlciwgZG9lcyBzeXprYWxsZXIgaGF2ZSBhbnl0aGluZyBmb3IgTURJTz8gSSBkb24ndCBoYXZlIGRpcmVjdCBhY2Nlc3MgdG8gdGhlIHN5emthbGxlciBzb3VyY2UgcmlnaHQgbm93LCBidXQgSSBjYW4gc2VlIGlmIHRoZXJlIGFyZSBrZXJuZWwgZnVuY3Rpb25zIHRoYXQgaXQgd291bGQgbGlrZWx5IGxldmVyYWdlLlxuXG5Ib3dldmVyLCBhIG5hZ2dpbmcgZmVlbGluZyBzdXJmYWNlczogaWYgdGhpcyBNRElPIGRldmljZSBpcyBtYXRjaGVkIHRocm91Z2ggdGhlIERldmljZSBUcmVlIChPRiksIGFuZCB3ZSdyZSBvbiBhIHN0YW5kYXJkIHg4Nl82NCBWTSwgaXQgcHJvYmFibHkgd29uJ3QgZXZlbiBwcm9iZS4gSSBzaG91bGQgaGF2ZSByZWFsaXplZCB0aGF0IGltbWVkaWF0ZWx5LiBUaGVuIEkgcmVjYWxsIHRoYXQgc3l6a2FsbGVyICpkb2VzKiB0YXJnZXQgc29tZSBBUk0gYm9hcmRzLCBidXQgZXZlbiBpbiB0aG9zZSBjYXNlcywgdGhlIERldmljZSBUcmVlIGlzIHN0YXRpYyBhbmQgZml4ZWQgYXQgYm9vdC4gSWYgdGhlIERldmljZSBUcmVlIGRvZXNuJ3QgaW5jbHVkZSBzb21ldGhpbmcgbGlrZSBgbWFydmVsbCxtdjg4ZTYwODVgLCB0aGF0IHNwZWNpZmljIGRyaXZlciB3b24ndCBsb2FkLlxuXG5TbyB0aGUgcXVlc3Rpb24gYmVjb21lczogaXMgdGhlcmUgKmFueSogb3RoZXIgbWVjaGFuaXNtIGZvciBwcm9iaW5nIHRoZSBgbXY4OGU2eHh4YCBkcml2ZXI/IExldCBtZSBnbyBiYWNrIGFuZCBkb3VibGUtY2hlY2sgYG12ODhlNnh4eF9vZl9tYXRjaGAgYWdhaW4uIEkgbmVlZCB0byBtYWtlIHN1cmUgSSdtIG5vdCBtaXNzaW5nIHNvbWV0aGluZyBvYnZpb3VzLlxuXG5cbiIsIklucHV0VG9rZW5zIjoxNzMwNSwiT3V0cHV0VG9rZW5zIjo0NCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjI2NSwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0NToxNS40MTQyMzg3MloiLCJTZXEiOjI2LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6NzQ2NjIwOTQsIkVycm9yIjoiIiwiQXJncyI6IntcbiAgXCJFeHByZXNzaW9uXCI6IFwibXY4OGU2eHh4X29mX21hdGNoXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTc1MDA9c3RhdGljIHZvaWQgbXY4OGU2eHh4X3NodXRkb3duKHN0cnVjdCBtZGlvX2RldmljZSAqbWRpb2RldilcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MTEtXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzUxMjpzdGF0aWMgY29uc3Qgc3RydWN0IG9mX2RldmljZV9pZCBtdjg4ZTZ4eHhfb2ZfbWF0Y2hbXSA9IHtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTEzLVxcdHtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MjctXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzUyODpNT0RVTEVfREVWSUNFX1RBQkxFKG9mLCBtdjg4ZTZ4eHhfb2ZfbWF0Y2gpO1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MjktXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzUzMD1zdGF0aWMgc3RydWN0IG1kaW9fZHJpdmVyIG12ODhlNnh4eF9kcml2ZXIgPSB7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03NTM1LVxcdFxcdC5uYW1lID0gXFxcIm12ODhlNjA4NVxcXCIsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzUzNjpcXHRcXHQub2ZfbWF0Y2hfdGFibGUgPSBtdjg4ZTZ4eHhfb2ZfbWF0Y2gsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUzNy1cXHRcXHQucG0gPSBcXHUwMDI2bXY4OGU2eHh4X3BtX29wcyxcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDU6MTUuNDg4OTA4MTY0WiIsIlNlcSI6MjcsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjQxNDYzMjI4MTQsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IioqSW52ZXN0aWdhdGluZyB0aGUgbXY4OGU2eHh4IERyaXZlcidzIERldmljZSBSZWdpc3RyYXRpb24qKlxuXG5Pa2F5LCBzbyBJJ20gbG9va2luZyBhdCB0aGlzIGBtdjg4ZTZ4eHhfZHJpdmVyYCwgYW5kIHNvbWV0aGluZydzIGJ1Z2dpbmcgbWUuIFNwZWNpZmljYWxseSwgdGhlIGRyaXZlcidzIGdvdCBgLm5hbWUgPSBcIm12ODhlNjA4NVwiYC4gVGhhdCBuYW1lIG1hdGNoaW5nIGlzIGFuIGludGVyZXN0aW5nIHRlY2huaXF1ZSBmb3IgTURJTyBkcml2ZXJzLCBhbmQgaXQgbWFrZXMgc2Vuc2UgaWYgdGhlIGJ1cyBpdHNlbGYgcmVnaXN0ZXJzIGEgZGV2aWNlICp3aXRoKiB0aGF0IHNwZWNpZmljIG5hbWUuIEJ1dCB0aGUgcXVlc3Rpb24gaXMsIGhvdyBkb2VzIGFuIE1ESU8gZGV2aWNlICpnZXQqIHJlZ2lzdGVyZWQgd2l0aCB0aGF0IGV4YWN0IHN0cmluZywgXCJtdjg4ZTYwODVcIj9cblxuTXkgZXhwZXJpZW5jZSBzYXlzIHRoYXQgTURJTyBkZXZpY2VzIGFyZSB0eXBpY2FsbHkgYnJvdWdodCBvbmxpbmUgYnkgdGhlIE1ESU8gYnVzIGRyaXZlciwgd2hpY2ggdXNlcyB0d28gbWFpbiBtZXRob2RzOiBoYXJkd2FyZSBwcm9iaW5nICh3aGVyZSB0aGUgUEhZIElEIGlzIGNoZWNrZWQpIG9yIGRldmljZSB0cmVlIGNvbmZpZ3VyYXRpb25zLiBOb3csIHN3aXRjaGVzLi4uIHN3aXRjaGVzIGFyZSBhIGRpZmZlcmVudCBiZWFzdC4gVGhlaXIgUEhZIElEcyBvZnRlbiBhcmVuJ3Qgc3RhbmRhcmQsIHNvIHRoZSBkZXZpY2UgdHJlZSBpcyB1c3VhbGx5IHRoZSBjcml0aWNhbCBwaWVjZSBpbiBnZXR0aW5nIHRoZW0gaWRlbnRpZmllZCBhbmQgY29ubmVjdGVkLlxuXG5TbywgSSdtIGdvaW5nIHRvIGRpZyBkZWVwZXIuIEkgbmVlZCB0byBrbm93OiBJcyB0aGVyZSBhbnkgb3RoZXIgcGxhY2UgaW4gdGhlIGtlcm5lbCB0aGF0IHJlZ2lzdGVycyB0aGlzIGRldmljZT8gSSdtIG1pc3Npbmcgc29tZXRoaW5nLCBhbmQgSSBuZWVkIHRvIGZpbmQgdGhlIHJvb3QgY2F1c2UuIFRoaXMgbmFtZSBtYXRjaGluZyBoYXMgdG8gYmUgY29taW5nIGZyb20gc29tZXdoZXJlLlxuXG5cbiIsIklucHV0VG9rZW5zIjoxODMxNywiT3V0cHV0VG9rZW5zIjoyMiwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjEzMSwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0wM1QwNzo0NToxOS42MzUyMzQ1OThaIiwiU2VxIjoyOCwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjI0MjQ5ODcyNjYsIkVycm9yIjoiIiwiQXJncyI6IntcbiAgXCJFeHByZXNzaW9uXCI6IFwibXY4OGU2MDg1XCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcIkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWw9MTk9cHJvcGVydGllczpcXG4tLVxcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWwtMjItICAgICAgLSBlbnVtOlxcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWw6MjM6ICAgICAgICAgIC0gbWFydmVsbCxtdjg4ZTYwODVcXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2RzYS9tYXJ2ZWxsLG12ODhlNnh4eC55YW1sLTI0LSAgICAgICAgICAtIG1hcnZlbGwsbXY4OGU2MTkwXFxuLS1cXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2RzYS9tYXJ2ZWxsLG12ODhlNnh4eC55YW1sLTI2LSAgICAgICAgZGVzY3JpcHRpb246IHxcXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2RzYS9tYXJ2ZWxsLG12ODhlNnh4eC55YW1sOjI3OiAgICAgICAgICBtYXJ2ZWxsLG12ODhlNjA4NTogVGhpcyBzd2l0Y2ggdXNlcyBiYXNlIGFkZHJlc3MgMHgxMC5cXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2RzYS9tYXJ2ZWxsLG12ODhlNnh4eC55YW1sLTI4LSAgICAgICAgICAgIFRoaXMgc3dpdGNoIGFuZCBpdHMgc2libGluZ3Mgd2lsbCBiZSBhdXRvZGV0ZWN0ZWQgZnJvbVxcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWw6Mjk6ICAgICAgICAgICAgSUQgcmVnaXN0ZXJzIGZvdW5kIGluIHRoZSBzd2l0Y2gsIHNvIG9ubHkgXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIiBzaG91bGQgYmVcXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2RzYS9tYXJ2ZWxsLG12ODhlNnh4eC55YW1sLTMwLSAgICAgICAgICAgIHNwZWNpZmllZC4gVGhpcyBpbmNsdWRlcyB0aGUgZm9sbG93aW5nIGxpc3Qgb2YgTVY4OEV4eHh4IHN3aXRjaGVzOlxcbi0tXFxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbC00My0gICAgICAtIGl0ZW1zOlxcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWw6NDQ6ICAgICAgICAgIC0gY29uc3Q6IG1hcnZlbGwsdHVycmlzLW1veC1tdjg4ZTYwODVcXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2RzYS9tYXJ2ZWxsLG12ODhlNnh4eC55YW1sOjQ1OiAgICAgICAgICAtIGNvbnN0OiBtYXJ2ZWxsLG12ODhlNjA4NVxcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWwtNDYtICAgICAgLSBpdGVtczpcXG4tLVxcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZHNhL21hcnZlbGwsbXY4OGU2eHh4LnlhbWw9MTA5PWV4YW1wbGVzOlxcbi0tXFxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbC0xMTYtICAgICAgICBldGhlcm5ldC1zd2l0Y2hAMCB7XFxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbDoxMTc6ICAgICAgICAgICAgY29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7XFxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9kc2EvbWFydmVsbCxtdjg4ZTZ4eHgueWFtbC0xMTgtICAgICAgICAgICAgcmVnID0gXFx1MDAzYzBcXHUwMDNlO1xcbi0tXFxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9ldGhlcm5ldC1zd2l0Y2gueWFtbD0yMz1hbGxPZjpcXG4tLVxcbkRvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9uZXQvZXRoZXJuZXQtc3dpdGNoLnlhbWwtMzItICAgICAgICAgICAgZW51bTpcXG5Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbmV0L2V0aGVybmV0LXN3aXRjaC55YW1sOjMzOiAgICAgICAgICAgICAgLSBtYXJ2ZWxsLHR1cnJpcy1tb3gtbXY4OGU2MDg1XFxuRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC9ldGhlcm5ldC1zd2l0Y2gueWFtbC0zNC0gICAgICAgICAgICAgIC0gbWFydmVsbCx0dXJyaXMtbW94LW12ODhlNjE5MFxcbi0tXFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcwLXJkLmR0cz0xNTI9XFx0c3dpdGNoOiBldGhlcm5ldC1zd2l0Y2hAMTAge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MC1yZC5kdHM6MTUzOlxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MC1yZC5kdHMtMTU0LVxcdFxcdHJlZyA9IFxcdTAwM2MweDEwXFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM4NS1jbGVhcmZvZy1ndHItczQuZHRzPTE2PVxcdHN3aXRjaDA6IGV0aGVybmV0LXN3aXRjaEA0IHtcXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODUtY2xlYXJmb2ctZ3RyLXM0LmR0czoxNzpcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODUtY2xlYXJmb2ctZ3RyLXM0LmR0cy0xOC1cXHRcXHRyZWcgPSBcXHUwMDNjNFxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODUtbGlua3N5cy5kdHNpPTE2MT1cXHRldGhlcm5ldC1zd2l0Y2hAMCB7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg1LWxpbmtzeXMuZHRzaToxNjI6XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg1LWxpbmtzeXMuZHRzaS0xNjMtXFx0XFx0cmVnID0gXFx1MDAzYzBcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg1LXR1cnJpcy1vbW5pYS5kdHM9NDY3PVxcdGV0aGVybmV0LXN3aXRjaEAxMCB7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODUtdHVycmlzLW9tbmlhLmR0cy00NjktXFx0XFx0cGluY3RybC0wID0gXFx1MDAzY1xcdTAwMjZzd2ludF9waW5zXFx1MDAzZTtcXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODUtdHVycmlzLW9tbmlhLmR0czo0NzA6XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg1LXR1cnJpcy1vbW5pYS5kdHMtNDcxLVxcbi0tXFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg4LWNsZWFyZm9nLmR0cz05Nj1cXHRldGhlcm5ldC1zd2l0Y2hANCB7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzg4LWNsZWFyZm9nLmR0czo5NzpcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zODgtY2xlYXJmb2cuZHRzLTk4LVxcdFxcdHJlZyA9IFxcdTAwM2M0XFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLXhwLWxpbmtzeXMtbWFtYmEuZHRzPTI2OD1cXHRldGhlcm5ldC1zd2l0Y2hAMCB7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEteHAtbGlua3N5cy1tYW1iYS5kdHM6MjY5OlxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLXhwLWxpbmtzeXMtbWFtYmEuZHRzLTI3MC1cXHRcXHRyZWcgPSBcXHUwMDNjMFxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLTRpLWVkZ2UtMjAwLmR0cz04Mj1cXHRzd2l0Y2gwOiBzd2l0Y2hAMTEge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtNGktZWRnZS0yMDAuZHRzOjgzOlxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtNGktZWRnZS0yMDAuZHRzLTg0LVxcdFxcdHJlZyA9IFxcdTAwM2MweDExXFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtZGlyNjY1LmR0cz0xOTY9XFx0c3dpdGNoQDAge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtZGlyNjY1LmR0czoxOTc6XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1kaXI2NjUuZHRzLTE5OC1cXHRcXHQjYWRkcmVzcy1jZWxscyA9IFxcdTAwM2MxXFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtbC01MC5kdHM9MjExPVxcdHN3aXRjaDA6IHN3aXRjaEAxMCB7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1sLTUwLmR0czoyMTI6XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1sLTUwLmR0cy0yMTMtXFx0XFx0I2FkZHJlc3MtY2VsbHMgPSBcXHUwMDNjMVxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLWwtNTAuZHRzPTI2OT1cXHRzd2l0Y2hAMTEge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtbC01MC5kdHM6MjcwOlxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtbC01MC5kdHMtMjcxLVxcdFxcdCNhZGRyZXNzLWNlbGxzID0gXFx1MDAzYzFcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1saW5rc3lzLXZpcGVyLmR0cz0xNjI9XFx0c3dpdGNoQDEwIHtcXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLWxpbmtzeXMtdmlwZXIuZHRzOjE2MzpcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLWxpbmtzeXMtdmlwZXIuZHRzLTE2NC1cXHRcXHQjYWRkcmVzcy1jZWxscyA9IFxcdTAwM2MxXFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtbXY4OGY2MjgxZ3R3LWdlLmR0cz0xMTM9XFx0c3dpdGNoQDAge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtbXY4OGY2MjgxZ3R3LWdlLmR0czoxMTQ6XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1tdjg4ZjYyODFndHctZ2UuZHRzLTExNS1cXHRcXHQjYWRkcmVzcy1jZWxscyA9IFxcdTAwM2MxXFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwva2lya3dvb2QtcmQ4OGY2MjgxLmR0c2k9Nzc9XFx0c3dpdGNoOiBzd2l0Y2hAMCB7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9raXJrd29vZC1yZDg4ZjYyODEuZHRzaTo3ODpcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL2tpcmt3b29kLXJkODhmNjI4MS5kdHNpLTc5LVxcdFxcdCNhZGRyZXNzLWNlbGxzID0gXFx1MDAzYzFcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm0vYm9vdC9kdHMvbWFydmVsbC9vcmlvbjV4LW5ldGdlYXItd25yODU0dC5kdHM9MTA5PVxcdHN3aXRjaDogc3dpdGNoQDAge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL21hcnZlbGwvb3Jpb241eC1uZXRnZWFyLXducjg1NHQuZHRzOjExMDpcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybS9ib290L2R0cy9tYXJ2ZWxsL29yaW9uNXgtbmV0Z2Vhci13bnI4NTR0LmR0cy0xMTEtXFx0XFx0I2FkZHJlc3MtY2VsbHMgPSBcXHUwMDNjMVxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDUxLXppaS1yZHUxLmR0cz0xNzM9XFx0XFx0c3dpdGNoQDAge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NTEtemlpLXJkdTEuZHRzOjE3NDpcXHRcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDUxLXppaS1yZHUxLmR0cy0xNzUtXFx0XFx0XFx0cmVnID0gXFx1MDAzYzBcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg1MS16aWktc2N1Mi1tZXp6LmR0cz00OT1cXHRcXHRzd2l0Y2hAMCB7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg1MS16aWktc2N1Mi1tZXp6LmR0czo1MDpcXHRcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDUxLXppaS1zY3UyLW1lenouZHRzLTUxLVxcdFxcdFxcdHJlZyA9IFxcdTAwM2MwXFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NTEtemlpLXNjdTMtZXNiLmR0cz0yMTY9XFx0XFx0c3dpdGNoQDAge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NTEtemlpLXNjdTMtZXNiLmR0czoyMTc6XFx0XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg1MS16aWktc2N1My1lc2IuZHRzLTIxOC1cXHRcXHRcXHRyZWcgPSBcXHUwMDNjMFxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDZkbC15YXBwNDMtY29tbW9uLmR0c2k9MTI4PVxcdFxcdHN3aXRjaEAwIHtcXG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDZkbC15YXBwNDMtY29tbW9uLmR0c2k6MTI5OlxcdFxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NmRsLXlhcHA0My1jb21tb24uZHRzaS0xMzAtXFx0XFx0XFx0cmVnID0gXFx1MDAzYzBcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2cS1ieDUwdjMuZHRzaT0xMDU9XFx0XFx0c3dpdGNoOiBzd2l0Y2hAMCB7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2cS1ieDUwdjMuZHRzaToxMDY6XFx0XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7IC8qIDg4ZTYyNDAqL1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NnEtYng1MHYzLmR0c2ktMTA3LVxcdFxcdFxcdHJlZyA9IFxcdTAwM2MwXFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NnFkbC1ndzU5MDQuZHRzaT0xNzQ9XFx0XFx0c3dpdGNoQDAge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NnFkbC1ndzU5MDQuZHRzaToxNzU6XFx0XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2cWRsLWd3NTkwNC5kdHNpLTE3Ni1cXHRcXHRcXHRyZWcgPSBcXHUwMDNjMFxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDZxZGwtemlpLXJkdTIuZHRzaT03MzA9XFx0XFx0c3dpdGNoOiBzd2l0Y2hAMCB7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg2cWRsLXppaS1yZHUyLmR0c2k6NzMxOlxcdFxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14NnFkbC16aWktcmR1Mi5kdHNpLTczMi1cXHRcXHRcXHRwaW5jdHJsLTAgPSBcXHUwMDNjXFx1MDAyNnBpbmN0cmxfc3dpdGNoX2lycVxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9ueHAvaW14L2lteDdkLXppaS1ycHUyLmR0cz0yMjg9XFx0XFx0c3dpdGNoOiBzd2l0Y2hAMCB7XFxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL2lteC9pbXg3ZC16aWktcnB1Mi5kdHM6MjI5OlxcdFxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC9pbXgvaW14N2QtemlpLXJwdTIuZHRzLTIzMC1cXHRcXHRcXHRwaW5jdHJsLW5hbWVzID0gXFxcImRlZmF1bHRcXFwiO1xcbi0tXFxuYXJjaC9hcm0vYm9vdC9kdHMvbnhwL3ZmL3ZmNjEwLXppaS1jZnUxLmR0cz0xNjU9XFx0XFx0c3dpdGNoMDogZXRoZXJuZXQtc3dpdGNoQDAge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC92Zi92ZjYxMC16aWktY2Z1MS5kdHM6MTY2OlxcdFxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC92Zi92ZjYxMC16aWktY2Z1MS5kdHMtMTY3LVxcdFxcdFxcdHBpbmN0cmwtbmFtZXMgPSBcXFwiZGVmYXVsdFxcXCI7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWRldi1yZXYtYi5kdHM9MzA9XFx0XFx0XFx0c3dpdGNoMDogc3dpdGNoQDAge1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC92Zi92ZjYxMC16aWktZGV2LXJldi1iLmR0czozMTpcXHRcXHRcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWRldi1yZXYtYi5kdHMtMzItXFx0XFx0XFx0XFx0cGluY3RybC0wID0gXFx1MDAzY1xcdTAwMjZwaW5jdHJsX2dwaW9fc3dpdGNoMFxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWRldi1yZXYtYi5kdHM9MTE0PVxcdFxcdFxcdHN3aXRjaDE6IHN3aXRjaEAwIHtcXG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWRldi1yZXYtYi5kdHM6MTE1OlxcdFxcdFxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC92Zi92ZjYxMC16aWktZGV2LXJldi1iLmR0cy0xMTYtXFx0XFx0XFx0XFx0cGluY3RybC0wID0gXFx1MDAzY1xcdTAwMjZwaW5jdHJsX2dwaW9fc3dpdGNoMVxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWRldi1yZXYtYi5kdHM9MjAxPVxcdFxcdFxcdHN3aXRjaDI6IHN3aXRjaEAwIHtcXG5hcmNoL2FybS9ib290L2R0cy9ueHAvdmYvdmY2MTAtemlpLWRldi1yZXYtYi5kdHM6MjAyOlxcdFxcdFxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtL2Jvb3QvZHRzL254cC92Zi92ZjYxMC16aWktZGV2LXJldi1iLmR0cy0yMDMtXFx0XFx0XFx0XFx0cmVnID0gXFx1MDAzYzBcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm02NC9ib290L2R0cy9mcmVlc2NhbGUvaW14OG1xLXppaS11bHRyYS5kdHNpPTE1MD1cXHRcXHRzd2l0Y2g6IHN3aXRjaEAwIHtcXG5hcmNoL2FybTY0L2Jvb3QvZHRzL2ZyZWVzY2FsZS9pbXg4bXEtemlpLXVsdHJhLmR0c2k6MTUxOlxcdFxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvZnJlZXNjYWxlL2lteDhtcS16aWktdWx0cmEuZHRzaS0xNTItXFx0XFx0XFx0cGluY3RybC0wID0gXFx1MDAzY1xcdTAwMjZwaW5jdHJsX3N3aXRjaF9pcnFcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zNzIwLWVzcHJlc3NvYmluLXVsdHJhLmR0cz0xMjU9XFx0c3dpdGNoMDogZXRoZXJuZXQtc3dpdGNoQDMge1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC1lc3ByZXNzb2Jpbi11bHRyYS5kdHM6MTI2OlxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC1lc3ByZXNzb2Jpbi11bHRyYS5kdHMtMTI3LVxcdFxcdHJlZyA9IFxcdTAwM2MzXFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC1lc3ByZXNzb2Jpbi5kdHNpPTE0Nz1cXHRzd2l0Y2gwOiBldGhlcm5ldC1zd2l0Y2hAMSB7XFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zNzIwLWVzcHJlc3NvYmluLmR0c2k6MTQ4OlxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC1lc3ByZXNzb2Jpbi5kdHNpLTE0OS1cXHRcXHRyZWcgPSBcXHUwMDNjMVxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtZ2wtbXYxMDAwLmR0cz0xNTA9XFx0c3dpdGNoMDogZXRoZXJuZXQtc3dpdGNoQDEge1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC1nbC1tdjEwMDAuZHRzOjE1MTpcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtZ2wtbXYxMDAwLmR0cy0xNTItXFx0XFx0cmVnID0gXFx1MDAzYzFcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zNzIwLXR1cnJpcy1tb3guZHRzPTQzOD1cXHRzd2l0Y2gwQDIge1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC10dXJyaXMtbW94LmR0czo0Mzk6XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLHR1cnJpcy1tb3gtbXY4OGU2MDg1XFxcIiwgXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtdHVycmlzLW1veC5kdHMtNDQwLVxcdFxcdHJlZyA9IFxcdTAwM2MweDJcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zNzIwLXR1cnJpcy1tb3guZHRzPTYzMj1cXHRzd2l0Y2gxQDIge1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC10dXJyaXMtbW94LmR0czo2MzM6XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLHR1cnJpcy1tb3gtbXY4OGU2MDg1XFxcIiwgXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtdHVycmlzLW1veC5kdHMtNjM0LVxcdFxcdHJlZyA9IFxcdTAwM2MweDJcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS0zNzIwLXR1cnJpcy1tb3guZHRzPTgxNz1cXHRzd2l0Y2gyQDIge1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtMzcyMC10dXJyaXMtbW94LmR0czo4MTg6XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLHR1cnJpcy1tb3gtbXY4OGU2MDg1XFxcIiwgXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvYXJtYWRhLTM3MjAtdHVycmlzLW1veC5kdHMtODE5LVxcdFxcdHJlZyA9IFxcdTAwM2MweDJcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS03MDQwLW1vY2hhYmluLmR0cz0zMDQ9XFx0c3dpdGNoOiBldGhlcm5ldC1zd2l0Y2hAMyB7XFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS03MDQwLW1vY2hhYmluLmR0czozMDU6XFx0XFx0Y29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCI7XFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS03MDQwLW1vY2hhYmluLmR0cy0zMDYtXFx0XFx0cmVnID0gXFx1MDAzYzNcXHUwMDNlO1xcbi0tXFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2FybWFkYS04MDQwLWNsZWFyZm9nLWd0LThrLmR0cz01MDA9XFx0c3dpdGNoMDogZXRoZXJuZXQtc3dpdGNoQDQge1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtODA0MC1jbGVhcmZvZy1ndC04ay5kdHM6NTAxOlxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9hcm1hZGEtODA0MC1jbGVhcmZvZy1ndC04ay5kdHMtNTAyLVxcdFxcdHJlZyA9IFxcdTAwM2M0XFx1MDAzZTtcXG4tLVxcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9jbjkxMzAtY2YtcHJvLmR0cz04OD1cXHRldGhlcm5ldC1zd2l0Y2hANCB7XFxuYXJjaC9hcm02NC9ib290L2R0cy9tYXJ2ZWxsL2NuOTEzMC1jZi1wcm8uZHRzOjg5OlxcdFxcdGNvbXBhdGlibGUgPSBcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiO1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9jbjkxMzAtY2YtcHJvLmR0cy05MC1cXHRcXHRyZWcgPSBcXHUwMDNjNFxcdTAwM2U7XFxuLS1cXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvY245MTMyLWNsZWFyZm9nLmR0cz0yNjQ9XFx0ZXRoZXJuZXQtc3dpdGNoQDQge1xcbmFyY2gvYXJtNjQvYm9vdC9kdHMvbWFydmVsbC9jbjkxMzItY2xlYXJmb2cuZHRzOjI2NTpcXHRcXHRjb21wYXRpYmxlID0gXFxcIm1hcnZlbGwsbXY4OGU2MDg1XFxcIjtcXG5hcmNoL2FybTY0L2Jvb3QvZHRzL21hcnZlbGwvY245MTMyLWNsZWFyZm9nLmR0cy0yNjYtXFx0XFx0cmVnID0gXFx1MDAzYzRcXHUwMDNlO1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NDIxNz1zdGF0aWMgaW50IG12ODhlNnh4eF9zZXRfZWVwcm9tKHN0cnVjdCBkc2Ffc3dpdGNoICpkcyxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQyMzUtXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDIzNjpzdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MDg1X29wcyA9IHtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00MjM3LVxcdC8qIE1WODhFNlhYWF9GQU1JTFlfNjA5NyAqL1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQyMzg6XFx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDIzOTpcXHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQyNDAtXFx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00MjcxLVxcdC5yZXNldCA9IG12ODhlNjE4NV9nMV9yZXNldCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0MjcyOlxcdC5ybXVfZGlzYWJsZSA9IG12ODhlNjA4NV9nMV9ybXVfZGlzYWJsZSxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00MjczLVxcdC52dHVfZ2V0bmV4dCA9IG12ODhlNjM1Ml9nMV92dHVfZ2V0bmV4dCxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTQyODE9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjA5NV9vcHMgPSB7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDI4Mi1cXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYwOTUgKi9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0MjgzOlxcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQyODQ6XFx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00Mjg1LVxcdC5zZXRfc3dpdGNoX21hYyA9IG12ODhlNnh4eF9nMV9zZXRfc3dpdGNoX21hYyxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQyOTAtXFx0LnBvcnRfc2V0X3NwZWVkX2R1cGxleCA9IG12ODhlNjE4NV9wb3J0X3NldF9zcGVlZF9kdXBsZXgsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDI5MTpcXHQucG9ydF9zZXRfZnJhbWVfbW9kZSA9IG12ODhlNjA4NV9wb3J0X3NldF9mcmFtZV9tb2RlLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQyOTItXFx0LnBvcnRfc2V0X3VjYXN0X2Zsb29kID0gbXY4OGU2MTg1X3BvcnRfc2V0X2ZvcndhcmRfdW5rbm93bixcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTQzMTM9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjA5N19vcHMgPSB7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDMxNC1cXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYwOTcgKi9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0MzE1OlxcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQzMTY6XFx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00MzE3LVxcdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDM0OS1cXHQucmVzZXQgPSBtdjg4ZTYzNTJfZzFfcmVzZXQsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDM1MDpcXHQucm11X2Rpc2FibGUgPSBtdjg4ZTYwODVfZzFfcm11X2Rpc2FibGUsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDM1MS1cXHQudnR1X2dldG5leHQgPSBtdjg4ZTYzNTJfZzFfdnR1X2dldG5leHQsXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz00MzYwPXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYxMjNfb3BzID0ge1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQzNjEtXFx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MTY1ICovXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDM2MjpcXHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0MzYzOlxcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDM2NC1cXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQzNzItXFx0LnBvcnRfc2V0X3NwZWVkX2R1cGxleCA9IG12ODhlNjE4NV9wb3J0X3NldF9zcGVlZF9kdXBsZXgsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDM3MzpcXHQucG9ydF9zZXRfZnJhbWVfbW9kZSA9IG12ODhlNjA4NV9wb3J0X3NldF9mcmFtZV9tb2RlLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQzNzQtXFx0LnBvcnRfc2V0X3VjYXN0X2Zsb29kID0gbXY4OGU2MzUyX3BvcnRfc2V0X3VjYXN0X2Zsb29kLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NDQwMT1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MTMxX29wcyA9IHtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NDAyLVxcdC8qIE1WODhFNlhYWF9GQU1JTFlfNjE4NSAqL1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ0MDM6XFx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDQwNDpcXHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ0MDUtXFx0LnNldF9zd2l0Y2hfbWFjID0gbXY4OGU2eHh4X2cxX3NldF9zd2l0Y2hfbWFjLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NDQ0MT1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MTQxX29wcyA9IHtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NDQyLVxcdC8qIE1WODhFNlhYWF9GQU1JTFlfNjM0MSAqL1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ0NDM6XFx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDQ0NDpcXHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ0NDUtXFx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz00NTAzPXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYxNjFfb3BzID0ge1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ1MDQtXFx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MTY1ICovXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDUwNTpcXHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0NTA2OlxcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDUwNy1cXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTQ1NTE9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjE2NV9vcHMgPSB7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDU1Mi1cXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYxNjUgKi9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0NTUzOlxcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ1NTQ6XFx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NTU1LVxcdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NDU4OD1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MTcxX29wcyA9IHtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NTg5LVxcdC8qIE1WODhFNlhYWF9GQU1JTFlfNjM1MSAqL1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ1OTA6XFx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDU5MTpcXHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ1OTItXFx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz00NjM0PXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYxNzJfb3BzID0ge1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ2MzUtXFx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MzUyICovXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDYzNjpcXHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0NjM3OlxcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDYzOC1cXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTQ2OTI9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjE3NV9vcHMgPSB7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDY5My1cXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYzNTEgKi9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0Njk0OlxcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ2OTU6XFx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00Njk2LVxcdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NDczOD1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MTc2X29wcyA9IHtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00NzM5LVxcdC8qIE1WODhFNlhYWF9GQU1JTFlfNjM1MiAqL1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ3NDA6XFx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDc0MTpcXHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ3NDItXFx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz00Nzk3PXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYxODVfb3BzID0ge1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTQ3OTgtXFx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MTg1ICovXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NDc5OTpcXHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo0ODAwOlxcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNDgwMS1cXHQuc2V0X3N3aXRjaF9tYWMgPSBtdjg4ZTZ4eHhfZzFfc2V0X3N3aXRjaF9tYWMsXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00ODA2LVxcdC5wb3J0X3NldF9zcGVlZF9kdXBsZXggPSBtdjg4ZTYxODVfcG9ydF9zZXRfc3BlZWRfZHVwbGV4LFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjQ4MDc6XFx0LnBvcnRfc2V0X2ZyYW1lX21vZGUgPSBtdjg4ZTYwODVfcG9ydF9zZXRfZnJhbWVfbW9kZSxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy00ODA4LVxcdC5wb3J0X3NldF91Y2FzdF9mbG9vZCA9IG12ODhlNjE4NV9wb3J0X3NldF9mb3J3YXJkX3Vua25vd24sXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz01MDExPXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYyNDBfb3BzID0ge1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTUwMTItXFx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MzUyICovXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTAxMzpcXHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1MDE0OlxcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTAxNS1cXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTUwNzI9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjI1MF9vcHMgPSB7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01MDc0LVxcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYyNTBfZzFfaWVlZV9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjUwNzU6XFx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01MDc2LVxcdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NTE3OD1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MzIwX29wcyA9IHtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTUxODAtXFx0LnNldHVwX2VycmF0YSA9IG12ODhlNjMyMF9zZXR1cF9lcnJhdGEsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTE4MTpcXHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1MTgyOlxcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTE4My1cXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTUyMzQ9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjMyMV9vcHMgPSB7XFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01MjM2LVxcdC5zZXR1cF9lcnJhdGEgPSBtdjg4ZTYzMjBfc2V0dXBfZXJyYXRhLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjUyMzc6XFx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTIzODpcXHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTUyMzktXFx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz01Mjk0PXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYzNDFfb3BzID0ge1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTUyOTUtXFx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MzQxICovXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTI5NjpcXHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1Mjk3OlxcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTI5OC1cXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTUzNTg9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfb3BzIG12ODhlNjM1MF9vcHMgPSB7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTM1OS1cXHQvKiBNVjg4RTZYWFhfRkFNSUxZXzYzNTEgKi9cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1MzYwOlxcdC5pZWVlX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaWVlZV9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjUzNjE6XFx0LmlwX3ByaV9tYXAgPSBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01MzYyLVxcdC5pcmxfaW5pdF9hbGwgPSBtdjg4ZTYzNTJfZzJfaXJsX2luaXRfYWxsLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NTQwND1zdGF0aWMgY29uc3Qgc3RydWN0IG12ODhlNnh4eF9vcHMgbXY4OGU2MzUxX29wcyA9IHtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy01NDA1LVxcdC8qIE1WODhFNlhYWF9GQU1JTFlfNjM1MSAqL1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjU0MDY6XFx0LmllZWVfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTQwNzpcXHQuaXBfcHJpX21hcCA9IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTU0MDgtXFx0LmlybF9pbml0X2FsbCA9IG12ODhlNjM1Ml9nMl9pcmxfaW5pdF9hbGwsXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz01NDUyPXN0YXRpYyBjb25zdCBzdHJ1Y3QgbXY4OGU2eHh4X29wcyBtdjg4ZTYzNTJfb3BzID0ge1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTU0NTMtXFx0LyogTVY4OEU2WFhYX0ZBTUlMWV82MzUyICovXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NTQ1NDpcXHQuaWVlZV9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo1NDU1OlxcdC5pcF9wcmlfbWFwID0gbXY4OGU2MDg1X2cxX2lwX3ByaV9tYXAsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNTQ1Ni1cXHQuaXJsX2luaXRfYWxsID0gbXY4OGU2MzUyX2cyX2lybF9pbml0X2FsbCxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTU3MDc9c3RhdGljIGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfaW5mbyBtdjg4ZTZ4eHhfdGFibGVbXSA9IHtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTU3NzQtXFx0XFx0Lm11bHRpX2NoaXAgPSB0cnVlLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjU3NzU6XFx0XFx0Lm9wcyA9IFxcdTAwMjZtdjg4ZTYwODVfb3BzLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTU3NzYtXFx0fSxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTc1MTI9c3RhdGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgbXY4OGU2eHh4X29mX21hdGNoW10gPSB7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUxMy1cXHR7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzUxNDpcXHRcXHQuY29tcGF0aWJsZSA9IFxcXCJtYXJ2ZWxsLG12ODhlNjA4NVxcXCIsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUxNS1cXHRcXHQuZGF0YSA9IFxcdTAwMjZtdjg4ZTZ4eHhfdGFibGVbTVY4OEU2MDg1XSxcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jPTc1MzA9c3RhdGljIHN0cnVjdCBtZGlvX2RyaXZlciBtdjg4ZTZ4eHhfZHJpdmVyID0ge1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzUzNC1cXHQubWRpb2Rydi5kcml2ZXIgPSB7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzUzNTpcXHRcXHQubmFtZSA9IFxcXCJtdjg4ZTYwODVcXFwiLFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTc1MzYtXFx0XFx0Lm9mX21hdGNoX3RhYmxlID0gbXY4OGU2eHh4X29mX21hdGNoLFxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmM9Mjg4PWludCBtdjg4ZTYxODVfZzFfc2V0X21heF9mcmFtZV9zaXplKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IG10dSlcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5jLTMxNi1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuYzozMTc6aW50IG12ODhlNjA4NV9nMV9pcF9wcmlfbWFwKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcClcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuYy0zMTgte1xcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmMtMzU4LVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5jOjM1OTppbnQgbXY4OGU2MDg1X2cxX2llZWVfcHJpX21hcChzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXApXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmMtMzYwLXtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5jPTUyNj1pbnQgbXY4OGU2MTg1X2cxX3NldF9jYXNjYWRlX3BvcnQoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydClcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5jLTUzMi1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuYzo1MzM6aW50IG12ODhlNjA4NV9nMV9ybXVfZGlzYWJsZShzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXApXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmMtNTM0LXtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5oPTMwOT1pbnQgbXY4OGU2MzkwX2cxX21nbXRfcnN2ZDJjcHUoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKTtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaC0zMTAtXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmg6MzExOmludCBtdjg4ZTYwODVfZzFfaXBfcHJpX21hcChzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXApO1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5oLTMxMi1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaDozMTM6aW50IG12ODhlNjA4NV9nMV9pZWVlX3ByaV9tYXAoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKTtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2dsb2JhbDEuaC0zMTQtaW50IG12ODhlNjI1MF9nMV9pZWVlX3ByaV9tYXAoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKTtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5oPTMxNj1pbnQgbXY4OGU2MTg1X2cxX3NldF9jYXNjYWRlX3BvcnQoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCk7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmgtMzE3LVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvZ2xvYmFsMS5oOjMxODppbnQgbXY4OGU2MDg1X2cxX3JtdV9kaXNhYmxlKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCk7XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9nbG9iYWwxLmgtMzE5LWludCBtdjg4ZTYzNTJfZzFfcm11X2Rpc2FibGUoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwKTtcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jPTgxOT1pbnQgbXY4OGU2eHh4X3BvcnRfc2V0X2VncmVzc19tb2RlKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuYy04NTAtXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmM6ODUxOmludCBtdjg4ZTYwODVfcG9ydF9zZXRfZnJhbWVfbW9kZShzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsIGludCBwb3J0LFxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5jLTg1Mi1cXHRcXHRcXHRcXHQgIGVudW0gbXY4OGU2eHh4X2ZyYW1lX21vZGUgbW9kZSlcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oPTUyOD1pbnQgbXY4OGU2eHh4X3BvcnRfc2V0X2VncmVzc19tb2RlKHN0cnVjdCBtdjg4ZTZ4eHhfY2hpcCAqY2hpcCwgaW50IHBvcnQsXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9wb3J0LmgtNTI5LVxcdFxcdFxcdFxcdCAgIGVudW0gbXY4OGU2eHh4X2VncmVzc19tb2RlIG1vZGUpO1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvcG9ydC5oOjUzMDppbnQgbXY4OGU2MDg1X3BvcnRfc2V0X2ZyYW1lX21vZGUoc3RydWN0IG12ODhlNnh4eF9jaGlwICpjaGlwLCBpbnQgcG9ydCxcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L3BvcnQuaC01MzEtXFx0XFx0XFx0XFx0ICBlbnVtIG12ODhlNnh4eF9mcmFtZV9tb2RlIG1vZGUpO1xcbi0tXFxubmV0L2RzYS9wb3J0LmM9MTcyNj1zdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IGRzYV9zd2l0Y2hlc19hcHBseV93b3JrYXJvdW5kc1tdID0ge1xcbi0tXFxubmV0L2RzYS9wb3J0LmMtMTc3OC0jaWYgSVNfRU5BQkxFRChDT05GSUdfTkVUX0RTQV9NVjg4RTZYWFgpXFxubmV0L2RzYS9wb3J0LmM6MTc3OTpcXHRcXFwibWFydmVsbCxtdjg4ZTYwODVcXFwiLFxcbm5ldC9kc2EvcG9ydC5jLTE3ODAtXFx0XFxcIm1hcnZlbGwsbXY4OGU2MTkwXFxcIixcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDU6MjIuMDYwMjM4NDM0WiIsIlNlcSI6MjksIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjg3MTkwODAyMDYsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IioqTXkgQW5hbHlzaXMgb2YgUmVhY2hpbmcgdGhlIE1hcnZlbGwgU3dpdGNoIERyaXZlciBpbiBzeXprYWxsZXIqKlxuXG5Pa2F5LCBzbyBJJ20gdHJ5aW5nIHRvIGZpZ3VyZSBvdXQgaG93IHRvIGdldCB0aGUgYG1hcnZlbGwsbXY4OGU2MDg1YCBkcml2ZXIgcnVubmluZyBpbiBzeXprYWxsZXIuIFRoZSBwcm9ibGVtIGlzLCB0aGlzIGRyaXZlciBpcyAqb25seSogaW5zdGFudGlhdGVkIHZpYSBEZXZpY2UgVHJlZSwgd2hpY2ggaXMgYSBodWdlIGh1cmRsZS4gU3l6a2FsbGVyIHByaW1hcmlseSBvcGVyYXRlcyBvbiB4ODZfNjQgVk1zIHdpdGggQUNQSSwgbWVhbmluZyBubyBEZXZpY2UgVHJlZSBieSBkZWZhdWx0LiBFdmVuIHdoZW4gaXQgKmRvZXMqIHJ1biBvbiBBUk02NCwgaXQncyB1c2luZyBhIGZpeGVkIGRldmljZSB0cmVlLCBsaWtlIHRoZSBgdmlydGAgbWFjaGluZSBpbiBRRU1VLCB3aGljaCBjZXJ0YWlubHkgd29uJ3QgaW5jbHVkZSBteSB0YXJnZXQgYG1hcnZlbGwsbXY4OGU2MDg1YCBkZXZpY2UuXG5cblNvLCB0aGUgcXVlc3Rpb24gaXMsIGNhbiBJIGluamVjdCBhcmJpdHJhcnkgRGV2aWNlIFRyZWUgbm9kZXMgZHluYW1pY2FsbHkgd2l0aGluIHN5emthbGxlcj8gIEknbSBhbHJlYWR5IGF3YXJlIHRoYXQgc3l6a2FsbGVyIGRvZXNuJ3QgaGF2ZSBhICpnZW5lcmFsKiBtZWNoYW5pc20gZm9yIGluamVjdGluZyBEZXZpY2UgVHJlZSBub2RlcyDigJMgdGhlcmUgaXNuJ3Qgc29tZSB1bml2ZXJzYWwgcHNldWRvLXN5c2NhbGwgb3IgY29uZmlndXJhdGlvbiBvcHRpb24gdW5sZXNzIHNvbWV0aGluZyBsaWtlIGBDT05GSUdfT0ZfT1ZFUkxBWWAgaXMgZW5hYmxlZCwgYW5kIGV2ZW4gdGhlbiwgSSdkIG5lZWQgYSB1c2Vyc3BhY2UgaW50ZXJmYWNlLCB3aGljaCBpcyByYXJlbHksIGlmIGV2ZXIsIGV4cG9zZWQgaW4gc3l6a2FsbGVyLlxuXG5MZXQgbWUgdGhpbmvigKYgIEkgKmRvKiBzZWUgdGhpbmdzIGxpa2UgYHN5el91c2JfY29ubmVjdGAgYW5kIGBzeXpfODAyMTFfaW5qZWN0X2ZyYW1lYC4gSXMgdGhlcmUgKmFueXRoaW5nKiBsaWtlIGEgYHN5el9tZGlvX2Nvbm5lY3RgPyBOb3BlLCBub3RoaW5nIGxpa2UgdGhhdC4gIEFscmlnaHQsIGNhbiBJIHByb2JlIHRoaXMgZHJpdmVyIHVzaW5nIHNvbWV0aGluZyBsaWtlIG5ldGxpbmsgb3Igc3lzZnM/IE5vdCBsaWtlbHkuIE1ESU8gZHJpdmVycyBhcmUgdHJpZ2dlcmVkIHdoZW4gdGhlIE1ESU8gYnVzICptYXRjaGVzKiB0aGUgZGV2aWNlLCBidXQgdGhlcmUgaXNuJ3QgYW4gTURJTyBidXMgcmVnaXN0ZXJlZCB3aXRoIHRoaXMgc3BlY2lmaWMgZGV2aWNlIGluIHN5emthbGxlcidzIHN0YW5kYXJkIGVudmlyb25tZW50LiBTbywgYmFzaWNhbGx5LCB0aGUgYGRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvYCBjb2RlIGlzIGNvbXBsZXRlbHkgdW5yZWFjaGFibGUsIHJpZ2h0P1xuXG5XYWl0LCBtYXliZSBJIGNhbiB1c2UgYGRzYV9sb29wYCBhbmQgbW9kaWZ5IGl0PyBIbW0sIG5vLCB0aGF0J3MganVzdCBhIGZpeGVkIG1vY2suIFdoYXQgaWYgSSB1c2UgUENJIHRvIGVtdWxhdGUgTURJTz8gU29tZSBuZXR3b3JrIGNhcmRzICpkbyogaGF2ZSBNRElPIGJ1c2VzLCBidXQgdGhleSBwcm9iZSB0aGVpciAqb3duKiBQSFlzLiBUaGV5J3JlIG5vdCBsb29raW5nIGZvciBhIERTQSBzd2l0Y2ggdW5sZXNzIHRoZSBEZXZpY2UgVHJlZSBvciBwbGF0Zm9ybSBkYXRhIHNheXMgc28uIE9uIHg4NiwgdGhpcyBwbGF0Zm9ybSBkYXRhIHVzdWFsbHkgY29tZXMgZnJvbSBib2FyZCBmaWxlcyAod2hpY2ggZG9uJ3QgZXhpc3QgZm9yIHg4Nikgb3IgZnJvbSBhIFBDSSBkcml2ZXIuIFRoZSBmaW5hbCBxdWVzdGlvbiBpcywgZG8gSSBrbm93IG9mIGFueSBQQ0kgZHJpdmVyIHRoYXQgd291bGQgaW5zdGFudGlhdGUgYW4gYG12ODhlNnh4eGAgdXNpbmcgcGxhdGZvcm0gZGF0YT8gVGhhdOKAmXMgd2hlcmUgSSBuZWVkIHRvIGZvY3VzIG15IGVmZm9ydHMuXG5cblxuIiwiSW5wdXRUb2tlbnMiOjMyMzc2LCJPdXRwdXRUb2tlbnMiOjIzLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6NDU1LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQ1OjMwLjc3OTMyNDMxWiIsIlNlcSI6MzAsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoyOTczODA5NzY0LCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIm12ODhlNnh4eF9wZGF0YVwiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJPdXRwdXRcIjogXCJkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz03Mjk0PXN0YXRpYyBjb25zdCB2b2lkICpwZGF0YV9kZXZpY2VfZ2V0X21hdGNoX2RhdGEoc3RydWN0IGRldmljZSAqZGV2KVxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzI5Ni1cXHRjb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNlX2lkICptYXRjaGVzID0gZGV2LVxcdTAwM2Vkcml2ZXItXFx1MDAzZW9mX21hdGNoX3RhYmxlO1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jOjcyOTc6XFx0Y29uc3Qgc3RydWN0IGRzYV9tdjg4ZTZ4eHhfcGRhdGEgKnBkYXRhID0gZGV2LVxcdTAwM2VwbGF0Zm9ybV9kYXRhO1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTcyOTgtXFxuLS1cXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYz03MzIyPXN0YXRpYyBpbnQgbXY4OGU2eHh4X3Byb2JlKHN0cnVjdCBtZGlvX2RldmljZSAqbWRpb2RldilcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03MzIzLXtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo3MzI0OlxcdHN0cnVjdCBkc2FfbXY4OGU2eHh4X3BkYXRhICpwZGF0YSA9IG1kaW9kZXYtXFx1MDAzZWRldi5wbGF0Zm9ybV9kYXRhO1xcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTczMjUtXFx0Y29uc3Qgc3RydWN0IG12ODhlNnh4eF9pbmZvICpjb21wYXRfaW5mbyA9IE5VTEw7XFxuLS1cXG5pbmNsdWRlL2xpbnV4L3BsYXRmb3JtX2RhdGEvbXY4OGU2eHh4LmgtNi1cXG5pbmNsdWRlL2xpbnV4L3BsYXRmb3JtX2RhdGEvbXY4OGU2eHh4Lmg6NzpzdHJ1Y3QgZHNhX212ODhlNnh4eF9wZGF0YSB7XFxuaW5jbHVkZS9saW51eC9wbGF0Zm9ybV9kYXRhL212ODhlNnh4eC5oLTgtXFx0LyogTXVzdCBiZSBmaXJzdCwgc3VjaCB0aGF0IGRzYV9yZWdpc3Rlcl9zd2l0Y2goKSBjYW4gYWNjZXNzIHRoaXNcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDU6MzMuNzUzMTM4ODM0WiIsIlNlcSI6MzEsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjI5NTg1MzY0MTUsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6Ik9rYXksIGxldCdzIGRpdmUgaW50byB0aGlzLiBIZXJlJ3MgbXkgdGhvdWdodCBwcm9jZXNzIG9uIHRoaXMgc3BlY2lmaWMgcXVlc3Rpb24sIHN1bW1hcml6ZWQgYXMgdGhvdWdoIGl0IHdlcmUgbXkgb3duOlxuXG4qKkludmVzdGlnYXRpbmcgYGRzYV9tdjg4ZTZ4eHhfcGRhdGFgIFVzYWdlKipcblxuQWxyaWdodCwgdGhlIG9iamVjdGl2ZSBpcyB0byBmaWd1cmUgb3V0IHRoZSBzY29wZSBvZiBgZHNhX212ODhlNnh4eF9wZGF0YWAuIE15IGZpcnN0IGluc3RpbmN0IGlzIHRvIHNlZSBob3cgd2lkZWx5IHRoaXMgdGhpbmcgaXMgYWN0dWFsbHkgYmVpbmcgZW1wbG95ZWQuIElzIGl0IHB1cmVseSBpbnRlcm5hbCB0byB0aGUgZHJpdmVyLCBvciBkb2VzIGl0IGhhdmUgYW4gaW5mbHVlbmNlIGVsc2V3aGVyZSBpbiB0aGUgc3lzdGVtLCBwb3NzaWJseSBpbiBhbm90aGVyIGNvbXBvbmVudCBvZiB0aGlzIGRyaXZlcj8gR2V0dGluZyB0aGUgcHJlY2lzZSBwaWN0dXJlIHJlcXVpcmVzIGEgdGFyZ2V0ZWQgc2VhcmNoLiBJIG5lZWQgdG8gdHJhY2sgZG93biBhbGwgaW5zdGFuY2VzIHdoZXJlIHRoaXMgc3BlY2lmaWMgZGF0YSBzdHJ1Y3R1cmUgaXMgcmVmZXJlbmNlZCBvdXRzaWRlIHRoZSBpbW1lZGlhdGUgZHJpdmVyIGNvZGUuIEknbGwgbmVlZCB0byB1c2Ugc29tZSB0ZWNobmlxdWVzIHRvIGRvIHRoaXMuXG5cblxuIiwiSW5wdXRUb2tlbnMiOjMzODMzLCJPdXRwdXRUb2tlbnMiOjI2LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MjYsIlRvb2xDYWxscyI6WyJncmVwcGVyIl19LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDU6MzYuNzExNjc5Njc5WiIsIlNlcSI6MzIsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoyNDg3Njg3NDExLCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcImRzYV9tdjg4ZTZ4eHhfcGRhdGFcIlxufSIsIlJlc3VsdHMiOiJ7XG4gIFwiT3V0cHV0XCI6IFwiZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzI5ND1zdGF0aWMgY29uc3Qgdm9pZCAqcGRhdGFfZGV2aWNlX2dldF9tYXRjaF9kYXRhKHN0cnVjdCBkZXZpY2UgKmRldilcXG4tLVxcbmRyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jLTcyOTYtXFx0Y29uc3Qgc3RydWN0IG9mX2RldmljZV9pZCAqbWF0Y2hlcyA9IGRldi1cXHUwMDNlZHJpdmVyLVxcdTAwM2VvZl9tYXRjaF90YWJsZTtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYzo3Mjk3OlxcdGNvbnN0IHN0cnVjdCBkc2FfbXY4OGU2eHh4X3BkYXRhICpwZGF0YSA9IGRldi1cXHUwMDNlcGxhdGZvcm1fZGF0YTtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03Mjk4LVxcbi0tXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM9NzMyMj1zdGF0aWMgaW50IG12ODhlNnh4eF9wcm9iZShzdHJ1Y3QgbWRpb19kZXZpY2UgKm1kaW9kZXYpXFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmMtNzMyMy17XFxuZHJpdmVycy9uZXQvZHNhL212ODhlNnh4eC9jaGlwLmM6NzMyNDpcXHRzdHJ1Y3QgZHNhX212ODhlNnh4eF9wZGF0YSAqcGRhdGEgPSBtZGlvZGV2LVxcdTAwM2VkZXYucGxhdGZvcm1fZGF0YTtcXG5kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYy03MzI1LVxcdGNvbnN0IHN0cnVjdCBtdjg4ZTZ4eHhfaW5mbyAqY29tcGF0X2luZm8gPSBOVUxMO1xcbi0tXFxuaW5jbHVkZS9saW51eC9wbGF0Zm9ybV9kYXRhL212ODhlNnh4eC5oLTYtXFxuaW5jbHVkZS9saW51eC9wbGF0Zm9ybV9kYXRhL212ODhlNnh4eC5oOjc6c3RydWN0IGRzYV9tdjg4ZTZ4eHhfcGRhdGEge1xcbmluY2x1ZGUvbGludXgvcGxhdGZvcm1fZGF0YS9tdjg4ZTZ4eHguaC04LVxcdC8qIE11c3QgYmUgZmlyc3QsIHN1Y2ggdGhhdCBkc2FfcmVnaXN0ZXJfc3dpdGNoKCkgY2FuIGFjY2VzcyB0aGlzXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTAzVDA3OjQ1OjM5LjE5OTM3Mzk3OVoiLCJTZXEiOjMzLCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjo1ODU2NjUwNzU0LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKlVucmVhY2hhYmxlIENvZGUgaW4gVmlydHVhbGl6ZWQgRW52aXJvbm1lbnRzKipcblxuT2theSwgaGVyZSdzIHRoZSBzaXR1YXRpb24gYXMgSSB1bmRlcnN0YW5kIGl0LiBUaGlzIHBhcnRpY3VsYXIgcGllY2Ugb2YgY29kZSwgc3BlY2lmaWNhbGx5IHRoZSBNYXJ2ZWxsIDg4RTZ4eHggRFNBIHN3aXRjaCBkcml2ZXIsIGlzIGluIGEgYml0IG9mIGEgcGlja2xlLiBJJ3ZlIGxvb2tlZCB0aHJvdWdoIHRoZSBrZXJuZWwsIGFuZCBpdCdzIGNsZWFyIHRoaXMgZGV2aWNlIGlzbid0IGJlaW5nIGluc3RhbnRpYXRlZCB0aHJvdWdoIGFueSBzdGFuZGFyZCBwbGF0Zm9ybSBkYXRhIG1ldGhvZHMuIE5vIGJvYXJkIGZpbGVzIG9yIFBDSSBkcml2ZXJzIGFyZSBzZXR0aW5nIGl0IHVwLiBJdCdzICpzb2xlbHkqIHJlbGlhbnQgb24gRGV2aWNlIFRyZWUgKERUKSBmb3IgaXRzIGluc3RhbnRpYXRpb24uXG5cbk5vdywgaGVyZSdzIHRoZSBraWNrZXI6IG15IGZvY3VzIGlzIG9uIGZ1enppbmcsIHNwZWNpZmljYWxseSB3aXRoaW4gdmlydHVhbGl6ZWQgZW52aXJvbm1lbnRzLiBBbmQgdGhlIGtleSBoZXJlIGlzIHRoYXQgbmVpdGhlciB0aGUgc3RhbmRhcmQgYHN5emthbGxlcmAgZW52aXJvbm1lbnRzIEkgdXNlLCB3aGV0aGVyIGl0J3MgeDg2XzY0IFZNcyBvciBBUk02NCBWTXMgd2l0aCBhIGB2aXJ0YCBEVCwgaW5jbHVkZSB0aGlzIHNwZWNpZmljIGRldmljZSBpbiB0aGVpciBEZXZpY2UgVHJlZS4gRXNzZW50aWFsbHksIHRoaXMgZHJpdmVyIGlzIGNvbXBsZXRlbHkgYWJzZW50IGZyb20gdGhlIHZpcnR1YWxpemVkIGxhbmRzY2FwZSBJJ20gaW50ZXJlc3RlZCBpbi5cblxuVGhlcmVmb3JlLCBiZWNhdXNlIHRoaXMgZHJpdmVyJ3MgcHJvYmluZyBpcyBlbnRpcmVseSBkZXBlbmRlbnQgb24gRGV2aWNlIFRyZWUsIGFuZCBEZXZpY2UgVHJlZSBpcyBub3QgcHJlc2VudCBpbiBteSB0YXJnZXQgdmlydHVhbGl6ZWQgZnV6emluZyBlbnZpcm9ubWVudHMsIHRoaXMgY29kZSBwYXRoIGlzIHVucmVhY2hhYmxlLiBUaGVyZSdzIGp1c3Qgbm8gd2F5IGl0J3MgZ29pbmcgdG8gcHJvYmUgb3IgZXhlY3V0ZSBhbnkgZnVuY3Rpb25hbGl0eSBpbiBteSBzY2VuYXJpb3MuXG5cblNvLCBJJ20gZ29pbmcgdG8gaGF2ZSB0byBzZXQgYFdvcnRoRnV6emluZ2AgdG8gYGZhbHNlYC4gTXkgcmVhc29uaW5nIGlzIHN0cmFpZ2h0Zm9yd2FyZDogdGhpcyBpcyBhIGhhcmR3YXJlLXNwZWNpZmljIERTQSBzd2l0Y2ggZHJpdmVyIGZvciB0aGUgTWFydmVsbCA4OEU2eHh4IGZhbWlseSwgYW5kIGl0cyBwcm9iaW5nIHJlbGllcyBleGNsdXNpdmVseSBvbiBEZXZpY2UgVHJlZS4gU2luY2UgRGV2aWNlIFRyZWUgaXMgbm90IHByZXNlbnQgb3IgY29uZmlndXJlZCBpbiBteSB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgKFFFTVUsIEdDRSBldGMuKSwgdGhlcmUncyBubyB3YXkgdG8gdHJpZ2dlciBpdHMgZXhlY3V0aW9uLlxuXG5cbiIsIklucHV0VG9rZW5zIjozNDQ3OSwiT3V0cHV0VG9rZW5zIjoxMTQsIk91dHB1dFRob3VnaHRzVG9rZW5zIjoxNDcsIlRvb2xDYWxscyI6WyJncmVwcGVyIl19LHsiU3RhcnRlZCI6IjIwMjYtMDctMDNUMDc6NDU6NDUuMDU2MDI3NDUzWiIsIlNlcSI6MzQsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6InNldC1yZXN1bHRzIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MjM4MDAsIkVycm9yIjoiIiwiQXJncyI6IntcbiAgXCJFbmFibGVDb25maWdzXCI6IFtdLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXSxcbiAgXCJSZWFzb25pbmdcIjogXCJUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIE1hcnZlbGwgODhFNnh4eCBEU0Egc3dpdGNoIGRyaXZlci4gVGhpcyBpcyBhIGhhcmR3YXJlLXNwZWNpZmljIGRyaXZlciB0aGF0IHJlcXVpcmVzIGFuIE1ESU8gYnVzIGFuZCBpcyBpbnN0YW50aWF0ZWQgZXhjbHVzaXZlbHkgdmlhIERldmljZSBUcmVlIChvciBwbGF0Zm9ybSBkYXRhIHdoaWNoIGlzIHVudXNlZCkuIFNpbmNlIHN0YW5kYXJkIHZpcnR1YWxpemVkIGVudmlyb25tZW50cyAobGlrZSBRRU1VL0dDRSkgZG8gbm90IGVtdWxhdGUgdGhpcyBzcGVjaWZpYyBoYXJkd2FyZSBvciBwcm92aWRlIHRoZSBuZWNlc3NhcnkgRGV2aWNlIFRyZWUgbm9kZXMsIHRoaXMgY29kZSBpcyB1bnJlYWNoYWJsZSBhbmQgY2Fubm90IGJlIGZ1enplZC5cIixcbiAgXCJXb3J0aEZ1enppbmdcIjogZmFsc2Vcbn0iLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogbnVsbCxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW10sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBNYXJ2ZWxsIDg4RTZ4eHggRFNBIHN3aXRjaCBkcml2ZXIuIFRoaXMgaXMgYSBoYXJkd2FyZS1zcGVjaWZpYyBkcml2ZXIgdGhhdCByZXF1aXJlcyBhbiBNRElPIGJ1cyBhbmQgaXMgaW5zdGFudGlhdGVkIGV4Y2x1c2l2ZWx5IHZpYSBEZXZpY2UgVHJlZSAob3IgcGxhdGZvcm0gZGF0YSB3aGljaCBpcyB1bnVzZWQpLiBTaW5jZSBzdGFuZGFyZCB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgKGxpa2UgUUVNVS9HQ0UpIGRvIG5vdCBlbXVsYXRlIHRoaXMgc3BlY2lmaWMgaGFyZHdhcmUgb3IgcHJvdmlkZSB0aGUgbmVjZXNzYXJ5IERldmljZSBUcmVlIG5vZGVzLCB0aGlzIGNvZGUgaXMgdW5yZWFjaGFibGUgYW5kIGNhbm5vdCBiZSBmdXp6ZWQuXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IGZhbHNlXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH1dOwoJCQlpZiAoIXJhd0RhdGEgfHwgcmF3RGF0YS5sZW5ndGggPT09IDApIHJldHVybjsKCgkJCWRyYXdTdW1tYXJ5VGFibGVzKHJhd0RhdGEpOwoJCQlkcmF3RHVyYXRpb25DaGFydChyYXdEYXRhKTsKCQkJZHJhd1Rva2VuQ29uc3VtcHRpb25DaGFydChyYXdEYXRhKTsKCQl9CgoJCWZ1bmN0aW9uIGRyYXdTdW1tYXJ5VGFibGVzKHJhd0RhdGEpIHsKCQkJY29uc3Qgc3RhdHMgPSB7CgkJCQlsbG06IHsgY291bnQ6IDAsIHRva2VuczogMCwgZHVyYXRpb246IDAgfSwKCQkJCXRvb2w6IHsgY291bnQ6IDAsIGR1cmF0aW9uOiAwIH0KCQkJfTsKCgkJCXJhd0RhdGEuZm9yRWFjaChzID0+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-workflowt8cc9[1] Phase: Running StartedAt: 2026-07-03 07:45:56 +0000 UTC FinishedAt: 0001-01-01 00:00:00 +0000 UTC Input: nil Output: nil --------- Name: series-workflowt8cc9[1].abort-on-skip-outcome Phase: Failed StartedAt: 2026-07-03 07:45:56 +0000 UTC FinishedAt: 2026-07-03 07:46:07 +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,}