ZGlmZiAtLWdpdCBhL2NoZWNrIGIvY2hlY2sKaW5kZXggOGFmM2JmMy4uOTg2OTk2NSAxMDA3NTUKLS0tIGEvY2hlY2sKKysrIGIvY2hlY2sKQEAgLTEyLDcgKzEyLDkgQEAKIEhFQURFUkZJTEVTPSIke0NIRUNLRVJIT01FfS9IRUFERVJGSUxFUyIKICNleHBvcnQgTFBDRklMRVM9IiR7SEVBREVSRklMRVN9ICR7Q09ERUZJTEVTfSIKIExQQ0ZJTEVTPSIke0NIRUNLRVJIT01FfS9MUENGSUxFUyIKLU1VRExJQj0iLi4vbXVkbGliIgorIyB3ZW5uICRNVURMSUIgYmVyZWl0cyBhbHMgVW1nZWJ1bmdzdmFyaWFibGUgZXhpc3RpZXJ0LCBtdXNzIG1hbiBkYXMgbmljaHQKKyMgdWViZXJzY2hyZWliZW4KK1tbLXogJE1VRExJQl1dICYmIE1VRExJQj0iLi4vbXVkbGliIgogTE9HUz0iJHtDSEVDS0VSSE9NRX0vbG9ncyIKIAogTEVWRUwxPSJjaGFuZ2VfcmVxdWlyZWQiCkBAIC0yMCw2ICsyMiw5IEBACiBMRVZFTDU9InBsZWFzZV9jaGVjayIKIExFVkVMMTA9ImNvc21ldGljcyIKIAorQ0hFQ0tUTVA9JChta3RlbXAgLS1zdWZmaXg9bHBjY2hlY2spIHx8IGV4aXQKK0NIRUNLVE1QMj0kKG1rdGVtcCAtLXN1ZmZpeD1scGNjaGVjaykgfHwgZXhpdAorCiBlY2hvIC1uZSAiTFBDLVNvdXJjZSBDaGVja2VyIFYwLjMgKDIwMDgtMDEtMDkpXG5cbiIKIAogdXNhZ2UoKSB7CkBAIC0zMCwzNiArMzUsMzYgQEAKICMgUGFyYW1ldGVyIHBydWVmZW4sIGFuc29uc3RlbiB1c2FnZSBhdXNnZWJlbgogaWYgWyAteiAkezF9IF0gfHwgWyAteiAkezJ9IF0KIHRoZW4KLQl1c2FnZQorICAgIHVzYWdlCiBmaQogCiAjIGd1Y2tlbiBvYiBkYXMgTG9ndmVyemVpY2huaXMgZGEgaXN0LCB3ZW5uIG5laW4sIGRhbm4gYW5sZWdlbgogaWYgWyAhIC1kICR7TE9HU30gXQogdGhlbgotCW1rZGlyIC1wICR7TE9HU30KKyAgICBta2RpciAtcCAke0xPR1N9CiBmaQogCiAjIHJ1ZGltZW50YWVyZXIgY2hlY2sgb2IgZGllIE11ZGxpYiBkYSBsaWVndCwgd28gJHtNVURMSUJ9IGhpbnplaWd0CiBpZiBbICEgLWQgJHtNVURMSUJ9IF0KIHRoZW4KLQllY2hvIC1uZSAiTm8gbXVkbGliIGZvdW5kIGluICR7TVVETElCfVxuIgotCWV4aXQKKyAgICBlY2hvIC1uZSAiTm8gbXVkbGliIGZvdW5kIGluICR7TVVETElCfVxuIgorICAgIGV4aXQKIGZpCiAKICMgYWx0ZW4gS3JhbSBlbnRzb3JnZW4KIGlmIFsgLWYgJHtDT0RFRklMRVN9IF0KIHRoZW4KLQlybSAke0NPREVGSUxFU30KKyAgICBybSAke0NPREVGSUxFU30KIGZpCiAKIGlmIFsgLWYgJHtIRUFERVJGSUxFU30gXQogdGhlbgotCXJtICR7SEVBREVSRklMRVN9CisgICAgcm0gJHtIRUFERVJGSUxFU30KIGZpCiAKIGlmIFsgLWYgJHtMUENGSUxFU30gXQogdGhlbgotCXJtICR7TFBDRklMRVN9CisgICAgcm0gJHtMUENGSUxFU30KIGZpCiAKIGVjaG8gLW5lICJDaGVja2luZyB0aGUgTW9yZ2VuR3JhdWVuIE11ZGxpYiBpbiAke01VRExJQn1cbiIKQEAgLTg1LDEzOSArOTAsMTM2IEBACiBlY2hvIC1uZSAiXG5cblBydWVmZSBhdWYgVW1sYXV0ZS4uLlxuIiB8IHRlZSAtYSAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CiB3aGlsZSByZWFkIGxpbmUKIGRvCi0JZ3JlcCAtSG4gJ1v89uTc1sTfXScgJGxpbmUgfCBjdXQgLWQgOiAtZiAxLTIgPj4gJHtMT0dTfS8kezJ9LiR7TEVWRUwxfQorICAgIGdyZXAgLUhuICdb/Pbk3NbE310nICRsaW5lIHwgY3V0IC1kIDogLWYgMS0yID4+ICR7TE9HU30vJHsyfS4ke0xFVkVMMX0KIGRvbmUgPCAke0xQQ0ZJTEVTfQogCiAjIGxhbWJkYSgpCiBlY2hvIC1uZSAiXG5cblBydWVmZSBhdWYgbGFtYmRhKCkuLi5cbiIgfCB0ZWUgLWEgJHtMT0dTfS8kezJ9LiR7TEVWRUwxfQogd2hpbGUgcmVhZCBsaW5lCiBkbwotCWdyZXAgLUhuICdsYW1iZGEoJyAkbGluZXwgY3V0IC1kIDogLWYgMS0yID4+ICR7TE9HU30vJHsyfS4ke0xFVkVMMX0KKyAgICBncmVwIC1IbiAnbGFtYmRhKCcgJGxpbmV8IGN1dCAtZCA6IC1mIDEtMiA+PiAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CiBkb25lIDwgJHtMUENGSUxFU30KIAogIyBQZmFkZSBpbiAvcGxheWVycy8KIGVjaG8gLW5lICJcblxuUHJ1ZWZlIGF1ZiBQZmFkZSBpbiAvcGxheWVycy8uLi5cbiIgfCB0ZWUgLWEgJHtMT0dTfS8kezJ9LiR7TEVWRUwxfSAKIHdoaWxlIHJlYWQgbGluZQogZG8KLQlncmVwIC1IbiAnL3BsYXllcnMvJyAkbGluZXwgY3V0IC1kIDogLWYgMS0yID4+ICR7TE9HU30vJHsyfS4ke0xFVkVMMX0gCisgICAgZ3JlcCAtSG4gJy9wbGF5ZXJzLycgJGxpbmV8IGN1dCAtZCA6IC1mIDEtMiA+PiAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9IAogZG9uZSA8ICR7TFBDRklMRVN9CiAKICMgZmVobGVuZGUgI3ByYWdtYSBzdHJvbmdfdHlwZXMvc3RyaWN0X3R5cGVzCiBlY2hvIC1uZSAiXG5cbkZpbGVzIG9obmUgI3ByYWdtYSBzdHJvbmdfdHlwZXMgb2RlciBzdHJpY3RfdHlwZXMuLi5cbiIgfCB0ZWUgLWEgJHtMT0dTfS8kezJ9LiR7TEVWRUwxfSAKIHdoaWxlIHJlYWQgbGluZQogZG8KLQlncmVwIC1MICcjcHJhZ21hLlwoc3Ryb25nXHxzdHJpY3RcKV90eXBlcycgJGxpbmUgfCBzb3J0IFwKLQkJPj4gJHtMT0dTfS8kezJ9LiR7TEVWRUwxfSAKKyAgICBncmVwIC1MICcjcHJhZ21hLlwoc3Ryb25nXHxzdHJpY3RcKV90eXBlcycgJGxpbmUgfCBzb3J0IFwKKyAgICAgICAgPj4gJHtMT0dTfS8kezJ9LiR7TEVWRUwxfSAKIGRvbmUgPCAke0NPREVGSUxFU30KIAogIyBkaXJla3RlIFZlcndlbmR1bmcgdm9uIGRvX2RhbWFnZSgpCiBlY2hvIC1uZSAiXG5cblBydWVmZSBhdWYgZGlyZWt0ZSBWZXJ3ZW5kdW5nIHZvbiBkb19kYW1hZ2UoKS4uLlxuIiB8XAotCSAgICAgdGVlIC1hICR7TE9HU30vJHsyfS4ke0xFVkVMMX0KKyAgICAgICAgIHRlZSAtYSAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CiB3aGlsZSByZWFkIGxpbmUKIGRvCi0JZ3JlcCAtSG4gJ2RvX2RhbWFnZSgnICRsaW5lIHwgY3V0IC1kIDogLWYgMS0yID4+ICR7TE9HU30vJHsyfS4ke0xFVkVMMX0KKyAgICBncmVwIC1IbiAnZG9fZGFtYWdlKCcgJGxpbmUgfCBjdXQgLWQgOiAtZiAxLTIgPj4gJHtMT0dTfS8kezJ9LiR7TEVWRUwxfQogZG9uZSA8ICR7TFBDRklMRVN9CiAKICMgVW5lcnd1ZW5zY2h0ZSBvZGVyIG9ic29sZXRlIGxmdW5zCiBlY2hvIC1uZSAiXG5cblBydWVmZSBhdWYgdW5lcnd1ZW5zY2h0ZSBvZGVyIG9ic29sZXRlIGxmdW5zLi4uXG4iIHxcCi0JdGVlIC1hICR7TE9HU30vJHsyfS4ke0xFVkVMMX0KKyAgICB0ZWUgLWEgJHtMT0dTfS8kezJ9LiR7TEVWRUwxfQogd2hpbGUgcmVhZCBsaW5lCiBkbwotCWdyZXAgLUhuIC1mICR7Q0hFQ0tFUkxJQn0vYmFkX2xmdW4ubGlzdCAkbGluZSA+PiAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CisgICAgZ3JlcCAtSG4gLWYgJHtDSEVDS0VSTElCfS9iYWRfbGZ1bi5saXN0ICRsaW5lID4+ICR7TE9HU30vJHsyfS4ke0xFVkVMMX0KIGRvbmUgPCAke0xQQ0ZJTEVTfQogCiAjIFVuZXJ3dWVuc2NodGUgb2RlciBvYnNvbGV0ZSBlZnVucwogZWNobyAtbmUgIlxuXG5QcnVlZmUgYXVmIHVuZXJ3dWVuc2NodGUgb2RlciBvYnNvbGV0ZSBlZnVucy4uLlxuIiB8XAotCXRlZSAtYSAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CisgICAgdGVlIC1hICR7TE9HU30vJHsyfS4ke0xFVkVMMX0KIHdoaWxlIHJlYWQgbGluZQogZG8KLQlncmVwIC1IbiAtZiAke0NIRUNLRVJMSUJ9L2JhZF9lZnVuLmxpc3QgJGxpbmUgPj4gJHtMT0dTfS8kezJ9LiR7TEVWRUwxfQorICAgIGdyZXAgLUhuIC1mICR7Q0hFQ0tFUkxJQn0vYmFkX2VmdW4ubGlzdCAkbGluZSA+PiAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CiBkb25lIDwgJHtMUENGSUxFU30KIAogIyBVbmVyd3VlbnNjaHRlIG9kZXIgb2Jzb2xldGUgUHJvcGVydGllcwogZWNobyAtbmUgIlxuXG5QcnVlZmUgYXVmIHVuZXJ3dWVuc2NodGUgb2RlciBvYnNvbGV0ZSBQcm9wZXJ0aWVzLi4uXG4iIHxcCi0JdGVlIC1hICR7TE9HU30vJHsyfS4ke0xFVkVMMX0KKyAgICB0ZWUgLWEgJHtMT0dTfS8kezJ9LiR7TEVWRUwxfQogd2hpbGUgcmVhZCBsaW5lCiBkbwotCWdyZXAgLUhuIC1mICR7Q0hFQ0tFUkxJQn0vYmFkX3Byb3AubGlzdCAkbGluZSA+PiAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CisgICAgZ3JlcCAtSG4gLWYgJHtDSEVDS0VSTElCfS9iYWRfcHJvcC5saXN0ICRsaW5lID4+ICR7TE9HU30vJHsyfS4ke0xFVkVMMX0KIGRvbmUgPCAke0xQQ0ZJTEVTfQogCiAjIFVuZXJ3dWVuc2NodGUgRXZlbnRzCiBlY2hvIC1uZSAiXG5cblBydWVmZSBhdWYgdW5lcnd1ZW5zY2h0ZSBFdmVudG5hbWVuLi4uXG4iIHwgdGVlIC1hICR7TE9HU30vJHsyfS4ke0xFVkVMMX0KIHdoaWxlIHJlYWQgbGluZQogZG8KLQlncmVwIC1IbiAtZiAke0NIRUNLRVJMSUJ9L2JhZF9ldmVudHMubGlzdCAkbGluZSA+PiAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CisgICAgZ3JlcCAtSG4gLWYgJHtDSEVDS0VSTElCfS9iYWRfZXZlbnRzLmxpc3QgJGxpbmUgPj4gJHtMT0dTfS8kezJ9LiR7TEVWRUwxfQogZG9uZSA8ICR7TFBDRklMRVN9CiAKICMgS2VpbmUgY2xvbmVzIHZvbiAvc3RkL3RoaW5nCiBlY2hvIC1uZSAiXG5cblBydWVmZSBhdWYgQ2xvbmVzIHZvbiAvc3RkL3RoaW5nLi4uXG4iIHxcCi0JICAgICB0ZWUgLWEgJHtMT0dTfS8kezJ9LiR7TEVWRUwxfQorICAgICAgICAgdGVlIC1hICR7TE9HU30vJHsyfS4ke0xFVkVMMX0KIHdoaWxlIHJlYWQgbGluZQogZG8KLQlncmVwIC1IbiAnY2xvbmVfb2JqZWN0KC4qL3N0ZC90aGluZy4qKScgJGxpbmUgfCBjdXQgLWQgOiAtZiAxLTIgXAotCSAgICAgPj4gJHtMT0dTfS8kezJ9LiR7TEVWRUwxfQorICAgIGdyZXAgLUhuICdjbG9uZV9vYmplY3QoLiovc3RkL3RoaW5nLiopJyAkbGluZSB8IGN1dCAtZCA6IC1mIDEtMiBcCisgICAgICAgICA+PiAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CiBkb25lIDwgJHtMUENGSUxFU30KIAogIyB1ZWJlcnNjaHJpZWJlbmVzIG1vdmUoKQogZWNobyAtbmUgIlxuXG5QcnVlZmUgYXVmIHVlYmVyc2NocmllYmVuZXMgbW92ZSgpIChkZXByZWNhdGVkKS4uLlxuIiB8XAotCSAgICB0ZWUgLWEgJHtMT0dTfS8kezJ9LiR7TEVWRUwxfQorICAgICAgICB0ZWUgLWEgJHtMT0dTfS8kezJ9LiR7TEVWRUwxfQogd2hpbGUgcmVhZCBsaW5lCiBkbwotCWdyZXAgLUhuICdpbnQuKm1vdmUoLiptaXhlZC4qaW50LiopJyAkbGluZSB8IGN1dCAtZCA6IC1mIDEtMiBcCi0JICAgICA+PiAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CisgICAgZ3JlcCAtSG4gJ2ludC4qbW92ZSguKm1peGVkLippbnQuKiknICRsaW5lIHwgY3V0IC1kIDogLWYgMS0yIFwKKyAgICAgICAgID4+ICR7TE9HU30vJHsyfS4ke0xFVkVMMX0KIGRvbmUgPCAke0xQQ0ZJTEVTfQogCiAjIHdpcmQgZ2VlcmJ0ZXMgUHJldmVudE1vdmUgZ2VydWZlbj8KIGVjaG8gLW5lICJcblxuVWViZXJzY2hyaWViZW5lcyBQcmV2ZW50TW92ZSgpIG9obmUgZ2VlcmJldGVzIHp1IHJ1ZmVuLi4uXG4iIHxcCi0JICAgICB0ZWUgLWEgJHtMT0dTfS8kezJ9LiR7TEVWRUwxfQorICAgICAgICAgdGVlIC1hICR7TE9HU30vJHsyfS4ke0xFVkVMMX0KIHdoaWxlIHJlYWQgbGluZQogZG8KLQlncmVwICdQcmV2ZW50TW92ZSguKm9iamVjdC4qb2JqZWN0LippbnQuKiknICRsaW5lID4gJHtDSEVDS0VSSE9NRX0vY2hlY2sudG1wCi0JZ3JlcCAtTCAnOjpQcmV2ZW50TW92ZSgnICRsaW5lID4gJHtDSEVDS0VSSE9NRX0vY2hlY2sudG1wMgorICAgIGdyZXAgJ1ByZXZlbnRNb3ZlKC4qb2JqZWN0LipvYmplY3QuKmludC4qKScgJGxpbmUgPiAkQ0hFQ0tUTVAKKyAgICBncmVwIC1MICc6OlByZXZlbnRNb3ZlKCcgJGxpbmUgPiAkQ0hFQ0tUTVAyCiBkb25lICA8ICR7TFBDRklMRVN9CiAjIG51ciBaZWlsZW4gYXVzZ2ViZW4sIGRpZSBuaWNodCBpbSAyLiBGaWxlIHZvcmtvbW1lbgotZ3JlcCAtdiAtZiAke0NIRUNLRVJIT01FfS9jaGVjay50bXAyICR7Q0hFQ0tFUkhPTUV9L2NoZWNrLnRtcCB8IFwKLQl0ZWUgLWEgJHtMT0dTfS8kezJ9LiR7TEVWRUwxfQotcm0gJHtDSEVDS0VSSE9NRX0vY2hlY2sudG1wKgorZ3JlcCAtdiAtZiAkQ0hFQ0tUTVAyICRDSEVDS1RNUCB8IFwKKyAgICB0ZWUgLWEgJHtMT0dTfS8kezJ9LiR7TEVWRUwxfQogCiBlY2hvIC1uZSAiXG5cblVlYmVyc2NocmllYmVuZXMgaW5pdCgpIG9obmUgZ2VlcmJ0ZXMgenUgcnVmZW4uLi5cbiIgfFwKLQkgICAgIHRlZSAtYSAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CisgICAgICAgICB0ZWUgLWEgJHtMT0dTfS8kezJ9LiR7TEVWRUwxfQogd2hpbGUgcmVhZCBsaW5lCiBkbwotCWdyZXAgJ2luaXQoXChvYmplY3QuKlwpXD8pJyAkbGluZSA+ICR7Q0hFQ0tFUkhPTUV9L2NoZWNrLnRtcAotCWdyZXAgLUwgJzo6aW5pdCgnICRsaW5lID4gJHtDSEVDS0VSSE9NRX0vY2hlY2sudG1wMgorICAgIGdyZXAgJ2luaXQoXChvYmplY3QuKlwpXD8pJyAkbGluZSA+ICRDSEVDS1RNUAorICAgIGdyZXAgLUwgJzo6aW5pdCgnICRsaW5lID4gJENIRUNLVE1QMgogZG9uZSA8ICR7TFBDRklMRVN9Ci1ncmVwIC12IC1mICR7Q0hFQ0tFUkhPTUV9L2NoZWNrLnRtcDIgJHtDSEVDS0VSSE9NRX0vY2hlY2sudG1wIFwKLQk+PiAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9Ci1ybSAke0NIRUNLRVJIT01FfS9jaGVjay50bXAqCitncmVwIC12IC1mICRDSEVDS1RNUDIgJENIRUNLVE1QIFwKKyAgICA+PiAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CiAKIGVjaG8gLW5lICJcblxuVWViZXJzY2hyaWViZW5lcyBOb3RpZnlNb3ZlKCkgb2huZSBnZWVyYmV0ZXMgenUgcnVmZW4uLi5cbiIgfFwKLQkgICAgIHRlZSAtYSAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CisgICAgICAgICB0ZWUgLWEgJHtMT0dTfS8kezJ9LiR7TEVWRUwxfQogd2hpbGUgcmVhZCBsaW5lCiBkbwotCWdyZXAgJ05vdGlmeU1vdmUoLipvYmplY3QuKm9iamVjdC4qaW50LiopJyAkbGluZSA+ICR7Q0hFQ0tFUkhPTUV9L2NoZWNrLnRtcAotCWdyZXAgLUwgJzo6Tm90aWZ5TW92ZSgnICRsaW5lID4gJHtDSEVDS0VSSE9NRX0vY2hlY2sudG1wMgorICAgIGdyZXAgJ05vdGlmeU1vdmUoLipvYmplY3QuKm9iamVjdC4qaW50LiopJyAkbGluZSA+ICRDSEVDS1RNUAorICAgIGdyZXAgLUwgJzo6Tm90aWZ5TW92ZSgnICRsaW5lID4gJENIRUNLVE1QMgogZG9uZSA8ICR7TFBDRklMRVN9Ci1ncmVwIC12IC1mICR7Q0hFQ0tFUkhPTUV9L2NoZWNrLnRtcDIgJHtDSEVDS0VSSE9NRX0vY2hlY2sudG1wIFwKLQk+PiAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9Ci1ybSAke0NIRUNLRVJIT01FfS9jaGVjay50bXAqCitncmVwIC12IC1mICRDSEVDS1RNUDIgJENIRUNLVE1QIFwKKyAgICA+PiAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CiAKICMgY2FsbF9vdGhlcih4LCAiPz8/IikgaXN0IG9ic29sZXQKIGVjaG8gLW5lICJcblxuUHJ1ZWZlIGF1ZiBjYWxsX290aGVyKHgsICI/Pz8iKSAob2Jzb2xldCkuLi5cbiIgfFwKLQl0ZWUgLWEgJHtMT0dTfS8kezJ9LiR7TEVWRUwxfQorICAgIHRlZSAtYSAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CiB3aGlsZSByZWFkIGxpbmUKIGRvCi0JZ3JlcCAtSG4gJ2NhbGxfb3RoZXIoLio/Pz8uKiknICRsaW5lIHwgY3V0IC1kIDogLWYgMS0yIFwKLQk+PiAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CisgICAgZ3JlcCAtSG4gJ2NhbGxfb3RoZXIoLio/Pz8uKiknICRsaW5lIHwgY3V0IC1kIDogLWYgMS0yIFwKKyAgICA+PiAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CiBkb25lIDwgJHtMUENGSUxFU30KIAogIyBBbHRlIFN5bnRheCBkZXIgSW5saW5lLUNsb3N1cmVzCiBlY2hvIC1uZSAiXG5cblBydWVmZSBhdWYgb2Jzb2xldGUgSW5saW5lLUNsb3N1cmVzICggKDogOikgKS4uLlxuIiB8IFwKLQkgICAgIHRlZSAtYSAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CisgICAgICAgICB0ZWUgLWEgJHtMT0dTfS8kezJ9LiR7TEVWRUwxfQogd2hpbGUgcmVhZCBsaW5lCiBkbwotCWdyZXAgLUhuICcoOiAnICRsaW5lIHwgY3V0IC1kIDogLWYgMS0yIFwKLQkJCT4+ICR7TE9HU30vJHsyfS4ke0xFVkVMMX0KKyAgICBncmVwIC1IbiAnKDogJyAkbGluZSB8IGN1dCAtZCA6IC1mIDEtMiBcCisgICAgICAgICAgICA+PiAke0xPR1N9LyR7Mn0uJHtMRVZFTDF9CiBkb25lIDwgJHtMUENGSUxFU30KIAogIyBMRVZFTCAyIENIRUNLUwpAQCAtMjI1LDE0ICsyMjcsMTQgQEAKIGVjaG8gLW5lICJcblxuUHJ1ZWZlIGF1ZiBUYWJ1bGF0b3Jlbi4uLlxuIiB8IHRlZSAtYSAke0xPR1N9LyR7Mn0uJHtMRVZFTDJ9CiB3aGlsZSByZWFkIGxpbmUKIGRvCi0JZ3JlcCAtSG4gJCdcdCcgJGxpbmUgfCBjdXQgLWQgOiAtZiAxLTIgPj4gJHtMT0dTfS8kezJ9LiR7TEVWRUwyfQorICAgIGdyZXAgLUhuICQnXHQnICRsaW5lIHwgY3V0IC1kIDogLWYgMS0yID4+ICR7TE9HU30vJHsyfS4ke0xFVkVMMn0KIGRvbmUgPCAke0xQQ0ZJTEVTfQogCiAjIFplaWxlbiA+IDc4IFplaWNoZW4KIGVjaG8gLW5lICJcblxuUHJ1ZWZlIGF1ZiBaZWlsZW4gPiA3OCBaZWljaGVuLi4uXG4iIHwgdGVlIC1hICR7TE9HU30vJHsyfS4ke0xFVkVMMn0KIHdoaWxlIHJlYWQgbGluZQogZG8KLQlncmVwIC1IbiAnLlx7NzksXH0nICRsaW5lfCBjdXQgLWQgOiAtZiAxLTIgPj4gJHtMT0dTfS8kezJ9LiR7TEVWRUwyfQorICAgIGdyZXAgLUhuICcuXHs3OSxcfScgJGxpbmV8IGN1dCAtZCA6IC1mIDEtMiA+PiAke0xPR1N9LyR7Mn0uJHtMRVZFTDJ9CiBkb25lIDwgJHtMUENGSUxFU30KIAogIyBMRVZFTCA1IENIRUNLUwpAQCAtMjQwLDE2ICsyNDIsMTYgQEAKIGVjaG8gLW5lICJcblxuSGVhZGVyICgqLmgpIG1pdCAjcHJhZ21hcy4uLlxuIiB8IHRlZSAtYSAke0xPR1N9LyR7Mn0uJHtMRVZFTDV9CiB3aGlsZSByZWFkIGxpbmUKIGRvCi0JZ3JlcCAtbCAnI3ByYWdtYScgJGxpbmUgPj4gJHtMT0dTfS8kezJ9LiR7TEVWRUw1fQorICAgIGdyZXAgLWwgJyNwcmFnbWEnICRsaW5lID4+ICR7TE9HU30vJHsyfS4ke0xFVkVMNX0KIGRvbmUgPCAke0hFQURFUkZJTEVTfQogCiAjIGVmdW5zLCBWZXJ3ZW5kdW5nIGJlYWNodGVuCiBlY2hvIC1uZSAiXG5cblBydWVmZSBhdWYgZWZ1bnMsIGRlcmVuIFZlcndlbmR1bmcgYmVvYmFjaHRldCB3ZXJkZW4gc29sbHRlLi4uXG4iIHxcCi0JICAgIHRlZSAtYSAke0xPR1N9LyR7Mn0uJHtMRVZFTDV9CisgICAgICAgIHRlZSAtYSAke0xPR1N9LyR7Mn0uJHtMRVZFTDV9CiB3aGlsZSByZWFkIGxpbmUKIGRvCi0JZ3JlcCAtSG4gLWYgJHtDSEVDS0VSTElCfS93YXJuX2VmdW4ubGlzdCAkbGluZSBcCi0JPj4gJHtMT0dTfS8kezJ9LiR7TEVWRUw1fQorICAgIGdyZXAgLUhuIC1mICR7Q0hFQ0tFUkxJQn0vd2Fybl9lZnVuLmxpc3QgJGxpbmUgXAorICAgID4+ICR7TE9HU30vJHsyfS4ke0xFVkVMNX0KIGRvbmUgPCAke0xQQ0ZJTEVTfQogCiAjIFByb3BlcnRpZXMsIFZlcndlbmR1bmcgYmVhY2h0ZW4KQEAgLTI1NywzMCArMjU5LDM0IEBACiBzb2xsdGUuLi5cbiIgfCB0ZWUgLWEgJHtMT0dTfS8kezJ9LiR7TEVWRUw1fQogd2hpbGUgcmVhZCBsaW5lCiBkbwotCWdyZXAgLUVIbiAtZiAke0NIRUNLRVJMSUJ9L3dhcm5fcHJvcC5saXN0ICRsaW5lIFwKLQk+PiAke0xPR1N9LyR7Mn0uJHtMRVZFTDV9CisgICAgZ3JlcCAtRUhuIC1mICR7Q0hFQ0tFUkxJQn0vd2Fybl9wcm9wLmxpc3QgJGxpbmUgXAorICAgID4+ICR7TE9HU30vJHsyfS4ke0xFVkVMNX0KIGRvbmUgPCAke0xQQ0ZJTEVTfQotCQorICAgIAogIyBQcnVlZnVuZyBhdWYgc3RhdGljIC0+IHByb3RlY3RlZAogZWNobyAtbmUgIlxuXG5QcnVlZmUgYXVmICdzdGF0aWMnICgtPiAncHJvdGVjdGVkJykuLi5cbiIgfFwKLQkgICAgdGVlIC1hICR7TE9HU30vJHsyfS4ke0xFVkVMNX0KKyAgICAgICAgdGVlIC1hICR7TE9HU30vJHsyfS4ke0xFVkVMNX0KIHdoaWxlIHJlYWQgbGluZQogZG8KLQlncmVwIC1IbiAnc3RhdGljJyAkbGluZSA+PiAke0xPR1N9LyR7Mn0uJHtMRVZFTDV9CisgICAgZ3JlcCAtSG4gJ3N0YXRpYycgJGxpbmUgPj4gJHtMT0dTfS8kezJ9LiR7TEVWRUw1fQogZG9uZSA8ICR7TFBDRklMRVN9CiAKIAogIyBMRVZFTCAxMCBDSEVDS1MKICMgQWx0ZSBSZWNodHNjaHJlaWJ1bmcgcnVsZXMKIGVjaG8gLW5lICJcblxuS2xlaW5nZXNjaHJpZWJlbmVzIER1L0Rpci9EaWNoLi4uXG4iIHxcCi0JdGVlIC1hICR7TE9HU30vJHsyfS4ke0xFVkVMMTB9CisgICAgdGVlIC1hICR7TE9HU30vJHsyfS4ke0xFVkVMMTB9CiB3aGlsZSByZWFkIGxpbmUKIGRvCi0JZ3JlcCAtSG4gJyBcKGR1XHxkaWNoXHxkaXJcKSAnICRsaW5lIHwgY3V0IC1kIDogLWYgMS0yIHwgc29ydCB8IFwKLQl1bmlxID4+ICR7TE9HU30vJHsyfS4ke0xFVkVMMTB9CisgICAgZ3JlcCAtSG4gJyBcKGR1XHxkaWNoXHxkaXJcKSAnICRsaW5lIHwgY3V0IC1kIDogLWYgMS0yIHwgc29ydCB8IFwKKyAgICB1bmlxID4+ICR7TE9HU30vJHsyfS4ke0xFVkVMMTB9CiBkb25lIDwgJHtMUENGSUxFU30KIAogIyBQZmFkbmFtZW4gYmVyZWluaWdlbgogc2VkIC1pIC1lICdzIy4vLyMvI2cnICR7TE9HU30vJHsyfS4qCiAKIGVjaG8gLW5lICJcbkNoZWNrIGZpbmlzaGVkIVxuIgorCisjIGNsZWFudXAKK3JtICRDSEVDS1RNUAorcm0gJENIRUNLVE1QMgo=