ZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3BlbGwvZ2wvZ2xfRVMuZGlmZiBiL3J1bnRpbWUvc3BlbGwvZ2wvZ2xfRVMuZGlmZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZGRjZjc4Ci0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS9zcGVsbC9nbC9nbF9FUy5kaWZmCkBAIC0wLDAgKzEsMTUgQEAKKyoqKiBnbF9FUy5vcmlnLmFmZglUdWUgQXVnIDE2IDE3OjU1OjM4IDIwMDUKKy0tLSBnbF9FUy5hZmYJVHVlIEF1ZyAxNiAxNzo1NzowMyAyMDA1CisqKioqKioqKioqKioqKioKKyoqKiAyLDMgKioqKgorLS0tIDIsMTEgLS0tLQorICBUUlkg4ent8/plc2lhbnJ0b2xjZHVnbXBoYmZ28QorKyAKKysgRk9MICDg4eLj5OXm5+jp6uvs7e7v8PHy8/T19vj5+vv8/f7f/worKyBMT1cgIODh4uPk5ebn6Onq6+zt7u/w8fLz9PX2+Pn6+/z9/t//CisrIFVQUCAgwMHCw8TFxsfIycrLzM3Oz9DR0tPU1dbY2drb3N3e3/8KKysgCisrIFNPRk9GUk9NIGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVrg4eLj5OXm5+jp6uvs7e7v8PHy8/T19vj5+vv8/f7f/8DBwsPExcbHyMnKy8zNzs/Q0dLT1NXW2Nna29zd3r8KKysgU09GT1RPICAgZWJjdGVmZ2hlamtsbm5lcGtyc3RldnZrZXNlYmN0ZWZnaGVqa2xubmVwa3JzdGV2dmtlc2VlZWVlZWVjZWVlZWVlZWVkbmVlZWVlZWVlZWVlcHNlZWVlZWVlZWNlZWVlZWVlZWRuZWVlZWVlZWVlZWVwPworKyAKKyAgIyBDT01QT1VORE1JTiAzCmRpZmYgLS1naXQgYS9ydW50aW1lL3NwZWxsL2dsL21haW4uYWFwIGIvcnVudGltZS9zcGVsbC9nbC9tYWluLmFhcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZmMwMTJhCi0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS9zcGVsbC9nbC9tYWluLmFhcApAQCAtMCwwICsxLDc4IEBACisjIEFhcCByZWNpcGUgZm9yIEdhbGljaWFuIChTcGFpbikgVmltIHNwZWxsIGZpbGVzLgorCisjIFVzZSBhIGZyZXNobHkgY29tcGlsZWQgVmltIGlmIGl0IGV4aXN0cy4KK0BpZiBvcy5wYXRoLmV4aXN0cygnLi4vLi4vLi4vc3JjL3ZpbScpOgorICAgIFZJTSA9IC4uLy4uLy4uL3NyYy92aW0KK0BlbHNlOgorICAgIDpwcm9nc2VhcmNoIFZJTSB2aW0KKworU1BFTExESVIgPSAuLgorRklMRVMgICAgPSBnbF9FUy5hZmYgZ2xfRVMuZGljCisKK2FsbDogJFNQRUxMRElSL2dsLmxhdGluMS5zcGwgJFNQRUxMRElSL2dsLnV0Zi04LnNwbCAuLi9SRUFETUVfZ2wudHh0CisKKyRTUEVMTERJUi9nbC5sYXRpbjEuc3BsIDogJEZJTEVTCisgICAgICAgIDpzeXMgZW52IExBTkc9Z2xfRVMuSVNPODg1OS0xCisJCSRWSU0gLXUgTk9ORSAtZSAtYyAibWtzcGVsbCEgJFNQRUxMRElSL2dsIGdsX0VTIiAtYyBxCisKKyRTUEVMTERJUi9nbC51dGYtOC5zcGwgOiAkRklMRVMKKyAgICAgICAgOnN5cyBlbnYgTEFORz1nbF9FUy5VVEYtOAorCQkkVklNIC11IE5PTkUgLWUgLWMgIm1rc3BlbGwhICRTUEVMTERJUi9nbCBnbF9FUyIgLWMgcQorCisuLi9SRUFETUVfZ2wudHh0IDogUkVBRE1FX2dsX0VTLnR4dAorICAgICAgICA6Y29weSAkc291cmNlICR0YXJnZXQKKworIworIyBGZXRjaGluZyB0aGUgZmlsZXMgZnJvbSBPcGVuT2ZmaWNlLm9yZy4KKyMKK09PRElSID0gaHR0cDovL2Z0cC5zZXJ2aWNlcy5vcGVub2ZmaWNlLm9yZy9wdWIvT3Blbk9mZmljZS5vcmcvY29udHJpYi9kaWN0aW9uYXJpZXMKKzphdHRyIHtmZXRjaCA9ICRPT0RJUi8lZmlsZSV9IGdsX0VTLnppcAorCisjIFRoZSBmaWxlcyBkb24ndCBkZXBlbmQgb24gdGhlIC56aXAgZmlsZSBzbyB0aGF0IHdlIGNhbiBkZWxldGUgaXQuCisjIE9ubHkgZG93bmxvYWQgdGhlIHppcCBmaWxlIGlmIHRoZSB0YXJnZXRzIGRvbid0IGV4aXN0LgorZ2xfRVMuYWZmIGdsX0VTLmRpYzoge2J1aWxkY2hlY2s9fQorICAgICAgICA6YXNzZXJ0cGtnIHVuemlwIHBhdGNoCisgICAgICAgIDpmZXRjaCBnbF9FUy56aXAKKyAgICAgICAgOnN5cyAkVU5aSVAgZ2xfRVMuemlwCisgICAgICAgIDpkZWxldGUgZ2xfRVMuemlwCisgICAgICAgIEBpZiBub3Qgb3MucGF0aC5leGlzdHMoJ2dsX0VTLm9yaWcuYWZmJyk6CisgICAgICAgICAgICA6Y29weSBnbF9FUy5hZmYgZ2xfRVMub3JpZy5hZmYKKyAgICAgICAgQGlmIG5vdCBvcy5wYXRoLmV4aXN0cygnZ2xfRVMub3JpZy5kaWMnKToKKyAgICAgICAgICAgIDpjb3B5IGdsX0VTLmRpYyBnbF9FUy5vcmlnLmRpYworICAgICAgICBAaWYgb3MucGF0aC5leGlzdHMoJ2dsX0VTLmRpZmYnKToKKyAgICAgICAgICAgIDpzeXMgcGF0Y2ggPGdsX0VTLmRpZmYKKworCisjIEdlbmVyYXRlIGRpZmYgZmlsZXMsIHNvIHRoYXQgb3RoZXJzIGNhbiBnZXQgdGhlIE9wZW5PZmZpY2UgZmlsZXMgYW5kIGFwcGx5CisjIHRoZSBkaWZmcyB0byBnZXQgdGhlIFZpbSB2ZXJzaW9ucy4KKworZGlmZjoKKyAgICAgICAgOmFzc2VydHBrZyBkaWZmCisgICAgICAgIDpzeXMge2ZvcmNlfSBkaWZmIC1hIC1DIDEgZ2xfRVMub3JpZy5hZmYgZ2xfRVMuYWZmID5nbF9FUy5kaWZmCisgICAgICAgIDpzeXMge2ZvcmNlfSBkaWZmIC1hIC1DIDEgZ2xfRVMub3JpZy5kaWMgZ2xfRVMuZGljID4+Z2xfRVMuZGlmZgorCisKKyMgQ2hlY2sgZm9yIHVwZGF0ZWQgT3Blbk9mZmljZSBzcGVsbCBmaWxlcy4gIFdoZW4gdGhlcmUgYXJlIGNoYW5nZXMgdGhlCisjICIubmV3LmFmZiIgYW5kICIubmV3LmRpYyIgZmlsZXMgYXJlIGxlZnQgYmVoaW5kIGZvciBtYW51YWwgaW5zcGVjdGlvbi4KKworY2hlY2s6CisgICAgICAgIDphc3NlcnRwa2cgdW56aXAgZGlmZgorICAgICAgICA6ZmV0Y2ggZ2xfRVMuemlwCisgICAgICAgIDpta2RpciB0bXAKKyAgICAgICAgOmNkIHRtcAorICAgICAgICBAdHJ5OgorICAgICAgICAgICAgQGltcG9ydCBzdGF0CisgICAgICAgICAgICA6c3lzICRVTlpJUCAuLi9nbF9FUy56aXAKKyAgICAgICAgICAgIDpzeXMge2ZvcmNlfSBkaWZmIC4uL2dsX0VTLm9yaWcuYWZmIGdsX0VTLmFmZiA+ZAorICAgICAgICAgICAgQGlmIG9zLnN0YXQoJ2QnKVtzdGF0LlNUX1NJWkVdID4gMDoKKyAgICAgICAgICAgICAgICA6Y29weSBnbF9FUy5hZmYgLi4vZ2xfRVMubmV3LmFmZgorICAgICAgICAgICAgOnN5cyB7Zm9yY2V9IGRpZmYgLi4vZ2xfRVMub3JpZy5kaWMgZ2xfRVMuZGljID5kCisgICAgICAgICAgICBAaWYgb3Muc3RhdCgnZCcpW3N0YXQuU1RfU0laRV0gPiAwOgorICAgICAgICAgICAgICAgIDpjb3B5IGdsX0VTLmRpYyAuLi9nbF9FUy5uZXcuZGljCisgICAgICAgIEBmaW5hbGx5OgorICAgICAgICAgICAgOmNkIC4uCisgICAgICAgICAgICA6ZGVsZXRlIHtyfXtmfXtxfSB0bXAKKyAgICAgICAgICAgIDpkZWxldGUgZ2xfRVMuemlwCisKKworIyB2aW06IHNldCBzdHM9NCBzdz00IDoK