ZGlmZiAtLWdpdCBhL3NyYy9NYWtlZmlsZSBiL3NyYy9NYWtlZmlsZQppbmRleCAwM2VlN2MyLi5jZWEwNTg3IDEwMDY0NAotLS0gYS9zcmMvTWFrZWZpbGUKKysrIGIvc3JjL01ha2VmaWxlCkBAIC01MTYsNiArNTE2LDggQEAKICMgRUZFTkNFIC0gRWxlY3RyaWMtRmVuY2UgbWFsbG9jIGRlYnVnZ2luZzogY2F0Y2hlcyBtZW1vcnkgYWNjZXNzZXMgYmV5b25kCiAjIGFsbG9jYXRlZCBtZW1vcnkgKGFuZCBtYWtlcyBldmVyeSBtYWxsb2MoKS9mcmVlKCkgdmVyeSBzbG93KS4KICMgRWxlY3RyaWMgRmVuY2UgaXMgZnJlZSAoc2VhcmNoIGZ0cCBzaXRlcykuCisjIFlvdSBtYXkgd2FudCB0byBzZXQgdGhlIEVGX1BST1RFQ1RfQkVMT1cgZW52aXJvbm1lbnQgdmFyaWFibGUgdG8gY2hlY2sgdGhlCisjIG90aGVyIHNpZGUgb2YgYWxsb2NhdGVkIG1lbW9yeS4KICMgT24gRnJlZUJTRCB5b3UgbWlnaHQgbmVlZCB0byBlbmxhcmdlIHRoZSBudW1iZXIgb2YgbW1hcHMgYWxsb3dlZC4gIERvIHRoaXMKICMgYXMgcm9vdDogc3lzY3RsIC13IHZtLm1heF9wcm9jX21tYXA9MzAwMDAKICNFWFRSQV9MSUJTID0gL3Vzci9sb2NhbC9saWIvbGliZWZlbmNlLmEKZGlmZiAtLWdpdCBhL3NyYy9leF9jbWRzMi5jIGIvc3JjL2V4X2NtZHMyLmMKaW5kZXggMGVhYzU4Yi4uYjNmYWVjOCAxMDA2NDQKLS0tIGEvc3JjL2V4X2NtZHMyLmMKKysrIGIvc3JjL2V4X2NtZHMyLmMKQEAgLTExODYsOSArMTE4Niw5IEBACiAgICAgaW50CiBwcm9mX2RlZl9mdW5jKCkKIHsKLSAgICBzY3JpcHRpdGVtX1QgICAgKnNpID0gJlNDUklQVF9JVEVNKGN1cnJlbnRfU0lEKTsKLQotICAgIHJldHVybiBzaS0+c25fcHJfZm9yY2U7CisgICAgaWYgKGN1cnJlbnRfU0lEID4gMCkKKwlyZXR1cm4gU0NSSVBUX0lURU0oY3VycmVudF9TSUQpLnNuX3ByX2ZvcmNlOworICAgIHJldHVybiBGQUxTRTsKIH0KIAogIyBlbmRpZgpkaWZmIC0tZ2l0IGEvc3JjL2ZpbGVpby5jIGIvc3JjL2ZpbGVpby5jCmluZGV4IGE4MTkyZWEuLmRjMjYwNmIgMTAwNjQ0Ci0tLSBhL3NyYy9maWxlaW8uYworKysgYi9zcmMvZmlsZWlvLmMKQEAgLTU0MzUsMjUgKzU0MzUsMjcgQEAKICAgICAgKiBUaGVuIHRydW5jYXRlIHdoYXQgaXMgYWZ0ZXIgdGhlICcvJywgJ1wnIG9yICc6JyB0byA4IGNoYXJhY3RlcnMgZm9yCiAgICAgICogTVNET1MgYW5kIDI2IGNoYXJhY3RlcnMgZm9yIEFNSUdBLCBhIGxvdCBtb3JlIGZvciBVTklYLgogICAgICAqLwotICAgIGZvciAocHRyID0gcmV0dmFsICsgZm5hbWVsZW47IHB0ciA+PSByZXR2YWw7IG1iX3B0cl9iYWNrKHJldHZhbCwgcHRyKSkKKyAgICBmb3IgKHB0ciA9IHJldHZhbCArIGZuYW1lbGVuOyBwdHIgPiByZXR2YWw7IG1iX3B0cl9iYWNrKHJldHZhbCwgcHRyKSkKICAgICB7CiAjaWZuZGVmIFJJU0NPUwogCWlmICgqZXh0ID09ICcuJwotI2lmZGVmIFVTRV9MT05HX0ZOQU1FCisjIGlmZGVmIFVTRV9MT05HX0ZOQU1FCiAJCSAgICAmJiAoIVVTRV9MT05HX0ZOQU1FIHx8IHNob3J0bmFtZSkKLSNlbHNlCi0jIGlmbmRlZiBTSE9SVF9GTkFNRQorIyBlbHNlCisjICBpZm5kZWYgU0hPUlRfRk5BTUUKIAkJICAgICYmIHNob3J0bmFtZQorIyAgZW5kaWYKICMgZW5kaWYKLSNlbmRpZgogCQkJCQkJCQkpCiAJICAgIGlmICgqcHRyID09ICcuJykJLyogcmVwbGFjZSAnLicgYnkgJ18nICovCiAJCSpwdHIgPSAnXyc7Ci0jZW5kaWYgLyogUklTQ09TICovCisjZW5kaWYKIAlpZiAodmltX2lzcGF0aHNlcCgqcHRyKSkKKwl7CisJICAgICsrcHRyOwogCSAgICBicmVhazsKKwl9CiAgICAgfQotICAgIHB0cisrOwogCiAgICAgLyogdGhlIGZpbGUgbmFtZSBoYXMgYXQgbW9zdCBCQVNFTkFNRUxFTiBjaGFyYWN0ZXJzLiAqLwogI2lmbmRlZiBTSE9SVF9GTkFNRQpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3RkaXIvTWFrZV9hbWlnYS5tYWsgYi9zcmMvdGVzdGRpci9NYWtlX2FtaWdhLm1hawppbmRleCAxYzlkNDIyLi5lOWU3NWU1IDEwMDY0NAotLS0gYS9zcmMvdGVzdGRpci9NYWtlX2FtaWdhLm1haworKysgYi9zcmMvdGVzdGRpci9NYWtlX2FtaWdhLm1hawpAQCAtMjQsNyArMjQsNyBAQAogCQl0ZXN0Mzgub3V0IHRlc3QzOS5vdXQgdGVzdDQwLm91dCB0ZXN0NDEub3V0IHRlc3Q0Mi5vdXQgXAogCQl0ZXN0NDMub3V0IHRlc3Q0NC5vdXQgdGVzdDQ1Lm91dCB0ZXN0NDYub3V0IHRlc3Q0Ny5vdXQgXAogCQl0ZXN0NDgub3V0IHRlc3Q1MS5vdXQgdGVzdDUzLm91dCB0ZXN0NTQub3V0IHRlc3Q1NS5vdXQgXAotCQl0ZXN0NTYub3V0IHRlc3Q1Ny5vdXQgdGVzdDU4Lm91dAorCQl0ZXN0NTYub3V0IHRlc3Q1Ny5vdXQgdGVzdDU4Lm91dCB0ZXN0NTkub3V0CiAKIC5TVUZGSVhFUzogLmluIC5vdXQKIApAQCAtMTAyLDMgKzEwMiw0IEBACiB0ZXN0NTYub3V0OiB0ZXN0NTYuaW4KIHRlc3Q1Ny5vdXQ6IHRlc3Q1Ny5pbgogdGVzdDU4Lm91dDogdGVzdDU4LmluCit0ZXN0NTkub3V0OiB0ZXN0NTkuaW4KZGlmZiAtLWdpdCBhL3NyYy90ZXN0ZGlyL01ha2VfZG9zLm1hayBiL3NyYy90ZXN0ZGlyL01ha2VfZG9zLm1hawppbmRleCAxYjNjNzcyLi4wOTJiMjRhIDEwMDY0NAotLS0gYS9zcmMvdGVzdGRpci9NYWtlX2Rvcy5tYWsKKysrIGIvc3JjL3Rlc3RkaXIvTWFrZV9kb3MubWFrCkBAIC0xOCw3ICsxOCw3IEBACiAJCXRlc3QzNS5vdXQgdGVzdDM2Lm91dCB0ZXN0NDMub3V0IFwKIAkJdGVzdDQ0Lm91dCB0ZXN0NDUub3V0IHRlc3Q0Ni5vdXQgdGVzdDQ3Lm91dCBcCiAJCXRlc3Q0OC5vdXQgdGVzdDUxLm91dCB0ZXN0NTMub3V0IHRlc3Q1NC5vdXQgXAotCQl0ZXN0NTUub3V0IHRlc3Q1Ni5vdXQgdGVzdDU3Lm91dCB0ZXN0NTgub3V0CisJCXRlc3Q1NS5vdXQgdGVzdDU2Lm91dCB0ZXN0NTcub3V0IHRlc3Q1OC5vdXQgdGVzdDU5Lm91dAogCiBTQ1JJUFRTID0JdGVzdDMub3V0IHRlc3Q0Lm91dCB0ZXN0NS5vdXQgdGVzdDYub3V0IHRlc3Q3Lm91dCBcCiAJCXRlc3Q4Lm91dCB0ZXN0OS5vdXQgdGVzdDExLm91dCB0ZXN0MTMub3V0IHRlc3QxNC5vdXQgXApkaWZmIC0tZ2l0IGEvc3JjL3Rlc3RkaXIvTWFrZV9vczIubWFrIGIvc3JjL3Rlc3RkaXIvTWFrZV9vczIubWFrCmluZGV4IGE3NzFlNmEuLjUyMzY5MjIgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0ZGlyL01ha2Vfb3MyLm1haworKysgYi9zcmMvdGVzdGRpci9NYWtlX29zMi5tYWsKQEAgLTI0LDcgKzI0LDcgQEAKIAkJdGVzdDM4Lm91dCB0ZXN0Mzkub3V0IHRlc3Q0MC5vdXQgdGVzdDQxLm91dCB0ZXN0NDIub3V0IFwKIAkJdGVzdDQzLm91dCB0ZXN0NDQub3V0IHRlc3Q0NS5vdXQgdGVzdDQ2Lm91dCB0ZXN0NDcub3V0IFwKIAkJdGVzdDQ4Lm91dCB0ZXN0NTEub3V0IHRlc3Q1My5vdXQgdGVzdDU0Lm91dCB0ZXN0NTUub3V0IFwKLQkJdGVzdDU2Lm91dCB0ZXN0NTcub3V0IHRlc3Q1OC5vdXQKKwkJdGVzdDU2Lm91dCB0ZXN0NTcub3V0IHRlc3Q1OC5vdXQgdGVzdDU5Lm91dAogCiAuU1VGRklYRVM6IC5pbiAub3V0CiAKZGlmZiAtLWdpdCBhL3NyYy90ZXN0ZGlyL01ha2Vfdm1zLm1tcyBiL3NyYy90ZXN0ZGlyL01ha2Vfdm1zLm1tcwppbmRleCAxY2ExZThiLi42ZDA4ZTUwIDEwMDY0NAotLS0gYS9zcmMvdGVzdGRpci9NYWtlX3Ztcy5tbXMKKysrIGIvc3JjL3Rlc3RkaXIvTWFrZV92bXMubW1zCkBAIC00LDcgKzQsNyBAQAogIyBBdXRob3JzOglab2x0YW4gQXJwYWRmZnksIDxhcnBhZGZmeUBwb2xhcmhvbWUuY29tPgogIwkJU2FuZG9yIEtvcGFueWksICA8c2FuZG9yLmtvcGFueWlAbWFpbGJveC5odT4KICMKLSMgTGFzdCBjaGFuZ2U6ICAyMDA1IEp1bCAwNAorIyBMYXN0IGNoYW5nZTogIDIwMDUgSnVsIDA1CiAjCiAjIFRoaXMgaGFzIGJlZW4gdGVzdGVkIG9uIFZNUyA2LjIgdG8gNy4yIG9uIERFQyBBbHBoYSBhbmQgVkFYLgogIyBFZGl0IHRoZSBsaW5lcyBpbiB0aGUgQ29uZmlndXJhdGlvbiBzZWN0aW9uIGJlbG93IHRvIHNlbGVjdC4KQEAgLTU4LDcgKzU4LDcgQEAKIAkgdGVzdDM4Lm91dCB0ZXN0Mzkub3V0IHRlc3Q0MC5vdXQgdGVzdDQxLm91dCB0ZXN0NDIub3V0IFwKIAkgdGVzdDQzLm91dCB0ZXN0NDQub3V0IHRlc3Q0NS5vdXQgdGVzdDQ2Lm91dCBcCiAJIHRlc3Q0OC5vdXQgdGVzdDUxLm91dCB0ZXN0NTMub3V0IHRlc3Q1NC5vdXQgdGVzdDU1Lm91dCBcCi0JIHRlc3Q1Ni5vdXQgdGVzdDU3Lm91dCB0ZXN0NTgub3V0CisJIHRlc3Q1Ni5vdXQgdGVzdDU3Lm91dCB0ZXN0NTgub3V0IHRlc3Q1OS5vdXQKIAogLklGREVGIFdBTlRfR1VJCiBTQ1JJUFRfR1VJID0gdGVzdDE2Lm91dApkaWZmIC0tZ2l0IGEvc3JjL3Rlc3RkaXIvTWFrZWZpbGUgYi9zcmMvdGVzdGRpci9NYWtlZmlsZQppbmRleCA3ZmEzMjVmLi40MzNmNDg3IDEwMDY0NAotLS0gYS9zcmMvdGVzdGRpci9NYWtlZmlsZQorKysgYi9zcmMvdGVzdGRpci9NYWtlZmlsZQpAQCAtMTQsNyArMTQsOCBAQAogCQl0ZXN0Mzgub3V0IHRlc3QzOS5vdXQgdGVzdDQwLm91dCB0ZXN0NDEub3V0IHRlc3Q0Mi5vdXQgXAogCQl0ZXN0NDMub3V0IHRlc3Q0NC5vdXQgdGVzdDQ1Lm91dCB0ZXN0NDYub3V0IHRlc3Q0Ny5vdXQgXAogCQl0ZXN0NDgub3V0IHRlc3Q0OS5vdXQgdGVzdDUxLm91dCB0ZXN0NTIub3V0IHRlc3Q1My5vdXQgXAotCQl0ZXN0NTQub3V0IHRlc3Q1NS5vdXQgdGVzdDU2Lm91dCB0ZXN0NTcub3V0IHRlc3Q1OC5vdXQKKwkJdGVzdDU0Lm91dCB0ZXN0NTUub3V0IHRlc3Q1Ni5vdXQgdGVzdDU3Lm91dCB0ZXN0NTgub3V0IFwKKwkJdGVzdDU5Lm91dAogCiBTQ1JJUFRTX0dVSSA9IHRlc3QxNi5vdXQKIApkaWZmIC0tZ2l0IGEvc3JjL3Rlc3RkaXIvdGVzdDU4LmluIGIvc3JjL3Rlc3RkaXIvdGVzdDU4LmluCmluZGV4IDU4Mjc1YTMuLjA1NzVhNDQgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0ZGlyL3Rlc3Q1OC5pbgorKysgYi9zcmMvdGVzdGRpci90ZXN0NTguaW4KQEAgLTEyLDMxICsxMiw0NiBAQAogOiIgdXNlIHRoYXQgc3BlbGwgZmlsZQogOnNldCBzcGw9WHRlc3QubGF0aW4xLnNwbAogOnNldCBzcGVsbAorOmZ1bmMgU3BlbGxUZXN0KCkKIC9edGVzdDE6Ci1dc21tOmxldCBzdHIgPSBzcGVsbGJhZHdvcmQoKQotOiRwdXQgPXN0cgotYG06bGV0IGxzdCA9IHNwZWxsc3VnZ2VzdChzdHIsIDQpCi06JHB1dCA9c3RyaW5nKGxzdCkKLWBtXXNtbTpsZXQgc3RyID0gc3BlbGxiYWR3b3JkKCkKLTokcHV0ID1zdHIKLWBtOmxldCBsc3QgPSBzcGVsbHN1Z2dlc3Qoc3RyLCAyKQotOiRwdXQgPXN0cmluZyhsc3QpCi1gbV1zbW06bGV0IHN0ciA9IHNwZWxsYmFkd29yZCgpCi06JHB1dCA9c3RyCi1gbTpsZXQgbHN0ID0gc3BlbGxzdWdnZXN0KHN0ciwgMikKLTokcHV0ID1zdHJpbmcobHN0KQotYG1dc21tOmxldCBzdHIgPSBzcGVsbGJhZHdvcmQoKQotOiRwdXQgPXN0cgotYG06bGV0IGxzdCA9IHNwZWxsc3VnZ2VzdChzdHIsIDIpCi06JHB1dCA9c3RyaW5nKGxzdCkKLWBtXXNtbTpsZXQgc3RyID0gc3BlbGxiYWR3b3JkKCkKLTokcHV0ID1zdHIKLWBtOmxldCBsc3QgPSBzcGVsbHN1Z2dlc3Qoc3RyLCAyKQotOiRwdXQgPXN0cmluZyhsc3QpCi1gbV1zbW06bGV0IHN0ciA9IHNwZWxsYmFkd29yZCgpCi06JHB1dCA9c3RyCi1gbTpsZXQgbHN0ID0gc3BlbGxzdWdnZXN0KHN0ciwgMikKLTokcHV0ID1zdHJpbmcobHN0KQorbm9ybWFsIF1zbW0KK2xldCBzdHIgPSBzcGVsbGJhZHdvcmQoKQorJHB1dCA9c3RyCitub3JtYWwgYG0KK2xldCBsc3QgPSBzcGVsbHN1Z2dlc3Qoc3RyLCA0KQorJHB1dCA9c3RyaW5nKGxzdCkKK25vcm1hbCBgbV1zbW0KK2xldCBzdHIgPSBzcGVsbGJhZHdvcmQoKQorJHB1dCA9c3RyCitub3JtYWwgYG0KK2xldCBsc3QgPSBzcGVsbHN1Z2dlc3Qoc3RyLCAyKQorJHB1dCA9c3RyaW5nKGxzdCkKK25vcm1hbCBgbV1zbW0KK2xldCBzdHIgPSBzcGVsbGJhZHdvcmQoKQorJHB1dCA9c3RyCitub3JtYWwgYG0KK2xldCBsc3QgPSBzcGVsbHN1Z2dlc3Qoc3RyLCAyKQorJHB1dCA9c3RyaW5nKGxzdCkKK25vcm1hbCBgbV1zbW0KK2xldCBzdHIgPSBzcGVsbGJhZHdvcmQoKQorJHB1dCA9c3RyCitub3JtYWwgYG0KK2xldCBsc3QgPSBzcGVsbHN1Z2dlc3Qoc3RyLCAyKQorJHB1dCA9c3RyaW5nKGxzdCkKK25vcm1hbCBgbV1zbW0KK2xldCBzdHIgPSBzcGVsbGJhZHdvcmQoKQorJHB1dCA9c3RyCitub3JtYWwgYG0KK2xldCBsc3QgPSBzcGVsbHN1Z2dlc3Qoc3RyLCAyKQorJHB1dCA9c3RyaW5nKGxzdCkKK25vcm1hbCBgbV1zbW0KK2xldCBzdHIgPSBzcGVsbGJhZHdvcmQoKQorJHB1dCA9c3RyCitub3JtYWwgYG0KK2xldCBsc3QgPSBzcGVsbHN1Z2dlc3Qoc3RyLCAyKQorJHB1dCA9c3RyaW5nKGxzdCkKK2VuZGZ1bmMKKzpjYWxsIFNwZWxsVGVzdCgpCiA6c3BlbGxkdW1wCiAxR3lHOnEKIDokcHV0CkBAIC04NCw2ICs5OSwxNyBAQAogYG1dczpsZXQgc3RyID0gc3BlbGxiYWR3b3JkKCkKIDokcHV0ID1zdHIKIDoiCis6IiBQb3N0cG9uZWQgcHJlZml4ZXMKK2dnOi9eYWZmc3RhcnQzLysxLC9eYWZmZW5kMy8tMXchIFh0ZXN0LmFmZgorOm1rc3BlbGwhIFh0ZXN0IFh0ZXN0Cis6c2V0IHNwZWxsZmlsZT0KKzpzZXQgc3BsPVh0ZXN0LmxhdGluMS5zcGwKKzptZXNzCis6c3BlbGxkdW1wCisxR3lHOnEKKzokcHV0Cis6Y2FsbCBTcGVsbFRlc3QoKQorOiIKIGdnOi9edGVzdCBvdXRwdXQ6Lywkd3EhIHRlc3Qub3V0CiBFTkRURVNUCiAKQEAgLTExNiw2ICsxNDIsMTEgQEAKIFNGWCBTIDAgcyBbXnNdCiBTRlggUyAwIGVzIHMKIAorU0ZYIE4gTiAzCitTRlggTiAwIGVuIFtebl0KK1NGWCBOIDAgbmVuIG4KK1NGWCBOIDAgbiAuCisKIFJFUCAzCiBSRVAgZyBjaAogUkVQIGNoIGcKQEAgLTE1OSw2ICsxOTAsMTEgQEAKIFNGWCBTIDAgcyBbXnNdCiBTRlggUyAwIGVzIHMKIAorU0ZYIE4gTiAzCitTRlggTiAwIGVuIFtebl0KK1NGWCBOIDAgbmVuIG4KK1NGWCBOIDAgbiAuCisKIFJFUCAzCiBSRVAgZyBjaAogUkVQIGNoIGcKQEAgLTI4NCw5ICszMjAsNTggQEAKIFNBTCBaICAgICAgICAgICAgICAgICAgICBTCiBhZmZlbmQyCiAKK2FmZnN0YXJ0MworU0VUIElTTzg4NTktMQorCitGT0wgIODh4uPk5ebn6Onq6+zt7u/w8fLz9PX2+Pn6+/z9/t//CitMT1cgIODh4uPk5ebn6Onq6+zt7u/w8fLz9PX2+Pn6+/z9/t//CitVUFAgIMDBwsPExcbHyMnKy8zNzs/Q0dLT1NXW2Nna29zd3t//CisKK1BGWFBPU1RQT05FCisKK01JRFdPUkQJJy0KKworS0VQID0KK1JBUiA/CitCQUQgIQorCitOT1NQTElUU1VHUworCitQRlggSSBOIDEKK1BGWCBJIDAgaW4gLgorCitQRlggTyBZIDEKK1BGWCBPIDAgb3V0IC4KKworU0ZYIFMgWSAyCitTRlggUyAwIHMgW15zXQorU0ZYIFMgMCBlcyBzCisKK1NGWCBOIE4gMworU0ZYIE4gMCBlbiBbXm5dCitTRlggTiAwIG5lbiBuCitTRlggTiAwIG4gLgorCitSRVAgMworUkVQIGcgY2gKK1JFUCBjaCBnCitSRVAgc3ZwIHMudi5wLgorCitNQVAgOQorTUFQIGHg4eLj5OUKK01BUCBl6Onq6worTUFQIGns7e7vCitNQVAgb/Lz9PX2CitNQVAgdfn6+/wKK01BUCBu8QorTUFQIGPnCitNQVAgef/9CitNQVAgc98KK2FmZmVuZDMKKwogZGljc3RhcnQKIDEyMzQ1NgotdGVzdAordGVzdC9OTwogIyBjb21tZW50CiB3cm9uZwogQ29tbWVudApkaWZmIC0tZ2l0IGEvc3JjL3Rlc3RkaXIvdGVzdDU4Lm9rIGIvc3JjL3Rlc3RkaXIvdGVzdDU4Lm9rCmluZGV4IDZkZTg0ODQuLjE4NmIyNTYgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0ZGlyL3Rlc3Q1OC5vaworKysgYi9zcmMvdGVzdGRpci90ZXN0NTgub2sKQEAgLTE5LDkgKzE5LDEyIEBACiBPSwogb3V0cHV0CiBvdXRwdXRzCitvdXR0ZXN0CiBwdXQKIHB1dHMKIHRlc3QKK3Rlc3RlbgordGVzdG4KIHRoZSBlbmQKIHVrCiB3cm9uZwpAQCAtNDAsMyArNDMsMzIgQEAKIGVsZWt3ZW50CiBlbGVxdWludAogZWxla3dpbnQKKyMgZmlsZTogWHRlc3QubGF0aW4xLnNwbAorQ29tbWVudAorZGVvbAorZOn0cgorT0sKK3B1dAoraW5wdXQKK291dHB1dAorcHV0cworb3V0cHV0cwordGVzdAorb3V0dGVzdAordGVzdGVuCit0ZXN0bgordGhlIGVuZAordWsKK3dyb25nCitpbnB1dHMKK1snaW5wdXQnLCAncHV0cycsICdwdXQnLCAnb3V0cHV0cyddCitjb21tZW50CitbJ0NvbW1lbnQnXQorb2sKK1snT0snLCAndWsnXQorT2sKK1snT0snLCAnVWsnXQordGVzdAorWyd0ZXN0JywgJ1Rlc3QnXQorZOn0bAorWydkZW9sJywgJ2Tp9HInXQpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3RkaXIvdGVzdDU5LmluIGIvc3JjL3Rlc3RkaXIvdGVzdDU5LmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVhMzc1MzAKLS0tIC9kZXYvbnVsbAorKysgYi9zcmMvdGVzdGRpci90ZXN0NTkuaW4KQEAgLTAsMCArMSw0MDYgQEAKK1Rlc3RzIGZvciBzcGVsbCBjaGVja2luZyB3aXRoICdlbmNvZGluZycgc2V0IHRvICJ1dGYtOCIuICB2aW06IHNldCBmdD12aW0gOgorCitTVEFSVFRFU1QKKzpzbyBzbWFsbC52aW0KKzpzbyBtYnl0ZS52aW0KKzoiCis6IiBGaXJzdCBnZW5lcmF0ZSBhIC5zcGwgZmlsZSBmcm9tIGEgLmRpYyBhbmQgYSAuYWZmIGZpbGUuCis6c2V0IGVuYz11dGYtOAorOi9eYWZmc3RhcnQxLysxLC9hZmZlbmQxLy0xdyBYdGVzdC5hZmYKKzovXmRpY3N0YXJ0LysxLC9kaWNlbmQvLTF3IFh0ZXN0LmRpYworOm1rc3BlbGwgWHRlc3QgWHRlc3QKKzoiCis6IiB1c2UgdGhhdCBzcGVsbCBmaWxlCis6c2V0IHNwbD1YdGVzdC51dGYtOC5zcGwKKzpzZXQgc3BlbGwKKzpmdW5jIFNwZWxsVGVzdCgpCisvXnRlc3QxOgorbm9ybWFsIF1zbW0KK2xldCBzdHIgPSBzcGVsbGJhZHdvcmQoKQorJHB1dCA9c3RyCitub3JtYWwgYG0KK2xldCBsc3QgPSBzcGVsbHN1Z2dlc3Qoc3RyLCA0KQorJHB1dCA9c3RyaW5nKGxzdCkKK25vcm1hbCBgbV1zbW0KK2xldCBzdHIgPSBzcGVsbGJhZHdvcmQoKQorJHB1dCA9c3RyCitub3JtYWwgYG0KK2xldCBsc3QgPSBzcGVsbHN1Z2dlc3Qoc3RyLCAyKQorJHB1dCA9c3RyaW5nKGxzdCkKK25vcm1hbCBgbV1zbW0KK2xldCBzdHIgPSBzcGVsbGJhZHdvcmQoKQorJHB1dCA9c3RyCitub3JtYWwgYG0KK2xldCBsc3QgPSBzcGVsbHN1Z2dlc3Qoc3RyLCAyKQorJHB1dCA9c3RyaW5nKGxzdCkKK25vcm1hbCBgbV1zbW0KK2xldCBzdHIgPSBzcGVsbGJhZHdvcmQoKQorJHB1dCA9c3RyCitub3JtYWwgYG0KK2xldCBsc3QgPSBzcGVsbHN1Z2dlc3Qoc3RyLCAyKQorJHB1dCA9c3RyaW5nKGxzdCkKK25vcm1hbCBgbV1zbW0KK2xldCBzdHIgPSBzcGVsbGJhZHdvcmQoKQorJHB1dCA9c3RyCitub3JtYWwgYG0KK2xldCBsc3QgPSBzcGVsbHN1Z2dlc3Qoc3RyLCAyKQorJHB1dCA9c3RyaW5nKGxzdCkKK25vcm1hbCBgbV1zbW0KK2xldCBzdHIgPSBzcGVsbGJhZHdvcmQoKQorJHB1dCA9c3RyCitub3JtYWwgYG0KK2xldCBsc3QgPSBzcGVsbHN1Z2dlc3Qoc3RyLCAyKQorJHB1dCA9c3RyaW5nKGxzdCkKK2VuZGZ1bmMKKzpjYWxsIFNwZWxsVGVzdCgpCis6c3BlbGxkdW1wCisxR3lHOnEKKzokcHV0Cis6JHB1dCA9c291bmRmb2xkKCdnb29ibGVkeWdvb29rJykKKzokcHV0ID1zb3VuZGZvbGQoJ2vDs29ww6tyw79uw7R2ZW4nKQorOiRwdXQgPXNvdW5kZm9sZCgnb2V2ZXJsb29zIGdlendldHMgZWRhbGUnKQorOiIKKzoiIGFuZCBub3cgd2l0aCBTQUwgaW5zdGVhZCBvZiBTT0ZPIGl0ZW1zOyB0ZXN0IGF1dG9tYXRpYyByZWxvYWRpbmcKK2dnOi9eYWZmc3RhcnQyLysxLC9eYWZmZW5kMi8tMXchIFh0ZXN0LmFmZgorOm1rc3BlbGwhIFh0ZXN0IFh0ZXN0Cis6JHB1dCA9c291bmRmb2xkKCdnb29ibGVkeWdvb29rJykKKzokcHV0ID1zb3VuZGZvbGQoJ2vDs29ww6tyw79uw7R2ZW4nKQorOiRwdXQgPXNvdW5kZm9sZCgnb2V2ZXJsb29zIGdlendldHMgZWRhbGUnKQorOiIKKzoiIGFsc28gdXNlIGFuIGFkZGl0aW9uIGZpbGUKK2dnOi9eYWRkc3RhcnQvKzEsL15hZGRlbmQvLTF3ISBYdGVzdC51dGYtOC5hZGQKKzpta3NwZWxsISBYdGVzdC51dGYtOC5hZGQuc3BsIFh0ZXN0LnV0Zi04LmFkZAorOnNldCBzcGw9ZW4KKzpzZXQgc3BlbGxmaWxlPVh0ZXN0LnV0Zi04LmFkZAorL150ZXN0MjoKK11zOmxldCBzdHIgPSBzcGVsbGJhZHdvcmQoKQorOiRwdXQgPXN0cgorOnNldCBzcGw9ZW5fdXMKKy9edGVzdDI6Citdc21tOmxldCBzdHIgPSBzcGVsbGJhZHdvcmQoKQorOiRwdXQgPXN0cgorYG1dczpsZXQgc3RyID0gc3BlbGxiYWR3b3JkKCkKKzokcHV0ID1zdHIKKzpzZXQgc3BsPWVuX2diCisvXnRlc3QyOgorXXNtbTpsZXQgc3RyID0gc3BlbGxiYWR3b3JkKCkKKzokcHV0ID1zdHIKK2BtXXM6bGV0IHN0ciA9IHNwZWxsYmFkd29yZCgpCis6JHB1dCA9c3RyCis6c2V0IHNwbD1lbl9uegorL150ZXN0MjoKK11zbW06bGV0IHN0ciA9IHNwZWxsYmFkd29yZCgpCis6JHB1dCA9c3RyCitgbV1zOmxldCBzdHIgPSBzcGVsbGJhZHdvcmQoKQorOiRwdXQgPXN0cgorOnNldCBzcGw9ZW5fY2EKKy9edGVzdDI6Citdc21tOmxldCBzdHIgPSBzcGVsbGJhZHdvcmQoKQorOiRwdXQgPXN0cgorYG1dczpsZXQgc3RyID0gc3BlbGxiYWR3b3JkKCkKKzokcHV0ID1zdHIKKzoiCis6IiBQb3N0cG9uZWQgcHJlZml4ZXMKK2dnOi9eYWZmc3RhcnQzLysxLC9eYWZmZW5kMy8tMXchIFh0ZXN0LmFmZgorOm1rc3BlbGwhIFh0ZXN0IFh0ZXN0Cis6c2V0IHNwZWxsZmlsZT0KKzpzZXQgc3BsPVh0ZXN0LnV0Zi04LnNwbAorOm1lc3MKKzpzcGVsbGR1bXAKKzFHeUc6cQorOiRwdXQKKzpjYWxsIFNwZWxsVGVzdCgpCis6IgorZ2c6L150ZXN0IG91dHB1dDovLCR3cSEgdGVzdC5vdXQKK0VORFRFU1QKKworYWZmc3RhcnQxCitTRVQgSVNPODg1OS0xCitUUlkgZXNpYW5ydG9sY2R1Z21waGJ5ZnZrd2prcXh6Levp6Orv7uTg4vb8+ydFU0lBTlJUT0xDRFVHTVBIQllGVktXSktRWFoKKworRk9MICDg4eLj5OXm5+jp6uvs7e7v8PHy8/T19vj5+vv8/f7f/worTE9XICDg4eLj5OXm5+jp6uvs7e7v8PHy8/T19vj5+vv8/f7f/worVVBQICDAwcLDxMXGx8jJysvMzc7P0NHS09TV1tjZ2tvc3d7f/worCitTT0ZPRlJPTSBhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFla4OHi4+Tl5ufo6err7O3u7/Dx8vP09fb4+fr7/P3+3//AwcLDxMXGx8jJysvMzc7P0NHS09TV1tjZ2tvc3d6/CitTT0ZPVE8gICBlYmN0ZWZnaGVqa2xubmVwa3JzdGV2dmtlc2ViY3RlZmdoZWprbG5uZXBrcnN0ZXZ2a2VzZWVlZWVlZWNlZWVlZWVlZWRuZWVlZWVlZWVlZWVwc2VlZWVlZWVlY2VlZWVlZWVlZG5lZWVlZWVlZWVlZXA/CisKK01JRFdPUkQJJy0KKworS0VQID0KK1JBUiA/CitCQUQgIQorCitOT1NQTElUU1VHUworCitQRlggSSBOIDEKK1BGWCBJIDAgaW4gLgorCitQRlggTyBZIDEKK1BGWCBPIDAgb3V0IC4KKworU0ZYIFMgWSAyCitTRlggUyAwIHMgW15zXQorU0ZYIFMgMCBlcyBzCisKK1NGWCBOIE4gMworU0ZYIE4gMCBlbiBbXm5dCitTRlggTiAwIG5lbiBuCitTRlggTiAwIG4gLgorCitSRVAgMworUkVQIGcgY2gKK1JFUCBjaCBnCitSRVAgc3ZwIHMudi5wLgorCitNQVAgOQorTUFQIGHg4eLj5OUKK01BUCBl6Onq6worTUFQIGns7e7vCitNQVAgb/Lz9PX2CitNQVAgdfn6+/wKK01BUCBu8QorTUFQIGPnCitNQVAgef/9CitNQVAgc98KK2FmZmVuZDEKKworYWZmc3RhcnQyCitTRVQgSVNPODg1OS0xCitUUlkgZXNpYW5ydG9sY2R1Z21waGJ5ZnZrd2prcXh6Levp6Orv7uTg4vb8+ydFU0lBTlJUT0xDRFVHTVBIQllGVktXSktRWFoKKworRk9MICDg4eLj5OXm5+jp6uvs7e7v8PHy8/T19vj5+vv8/f7f/worTE9XICDg4eLj5OXm5+jp6uvs7e7v8PHy8/T19vj5+vv8/f7f/worVVBQICDAwcLDxMXGx8jJysvMzc7P0NHS09TV1tjZ2tvc3d7f/worCitNSURXT1JECSctCisKK0tFUCA9CitSQVIgPworQkFEICEKKworTk9TUExJVFNVR1MKKworUEZYIEkgTiAxCitQRlggSSAwIGluIC4KKworUEZYIE8gWSAxCitQRlggTyAwIG91dCAuCisKK1NGWCBTIFkgMgorU0ZYIFMgMCBzIFtec10KK1NGWCBTIDAgZXMgcworCitTRlggTiBOIDMKK1NGWCBOIDAgZW4gW15uXQorU0ZYIE4gMCBuZW4gbgorU0ZYIE4gMCBuIC4KKworUkVQIDMKK1JFUCBnIGNoCitSRVAgY2ggZworUkVQIHN2cCBzLnYucC4KKworTUFQIDkKK01BUCBh4OHi4+TlCitNQVAgZejp6usKK01BUCBp7O3u7worTUFQIG/y8/T19gorTUFQIHX5+vv8CitNQVAgbvEKK01BUCBj5worTUFQIHn//QorTUFQIHPfCisKK1NBTCBBSChBRUlPVVkpLV4gICAgICAgICAqSAorU0FMIEFSKEFFSU9VWSktXiAgICAgICAgICpSCitTQUwgQShIUileICAgICAgICAgICAgICAgKgorU0FMIEFeICAgICAgICAgICAgICAgICAgICoKK1NBTCBBSChBRUlPVVkpLSAgICAgICAgICBICitTQUwgQVIoQUVJT1VZKS0gICAgICAgICAgUgorU0FMIEEoSFIpICAgICAgICAgICAgICAgIF8KK1NBTCDAXiAgICAgICAgICAgICAgICAgICAqCitTQUwgxV4gICAgICAgICAgICAgICAgICAgKgorU0FMIEJCLSAgICAgICAgICAgICAgICAgIF8KK1NBTCBCICAgICAgICAgICAgICAgICAgICBCCitTQUwgQ1EtICAgICAgICAgICAgICAgICAgXworU0FMIENJQSAgICAgICAgICAgICAgICAgIFgKK1NBTCBDSCAgICAgICAgICAgICAgICAgICBYCitTQUwgQyhFSVkpLSAgICAgICAgICAgICAgUworU0FMIENLICAgICAgICAgICAgICAgICAgIEsKK1NBTCBDT1VHSF4gICAgICAgICAgICAgICBLRgorU0FMIENDPCAgICAgICAgICAgICAgICAgIEMKK1NBTCBDICAgICAgICAgICAgICAgICAgICBLCitTQUwgREcoRUlZKSAgICAgICAgICAgICAgSworU0FMIERELSAgICAgICAgICAgICAgICAgIF8KK1NBTCBEICAgICAgICAgICAgICAgICAgICBUCitTQUwgyTwgICAgICAgICAgICAgICAgICAgRQorU0FMIEVIKEFFSU9VWSktXiAgICAgICAgICpICitTQUwgRVIoQUVJT1VZKS1eICAgICAgICAgKlIKK1NBTCBFKEhSKV4gICAgICAgICAgICAgICAqCitTQUwgRU5PVUdIXiQgICAgICAgICAgICAgKk5GCitTQUwgRV4gICAgICAgICAgICAgICAgICAgKgorU0FMIEVIKEFFSU9VWSktICAgICAgICAgIEgKK1NBTCBFUihBRUlPVVkpLSAgICAgICAgICBSCitTQUwgRShIUikgICAgICAgICAgICAgICAgXworU0FMIEZGLSAgICAgICAgICAgICAgICAgIF8KK1NBTCBGICAgICAgICAgICAgICAgICAgICBGCitTQUwgR05eICAgICAgICAgICAgICAgICAgTgorU0FMIEdOJCAgICAgICAgICAgICAgICAgIE4KK1NBTCBHTlMkICAgICAgICAgICAgICAgICBOUworU0FMIEdORUQkICAgICAgICAgICAgICAgIE4KK1NBTCBHSChBRUlPVVkpLSAgICAgICAgICBLCitTQUwgR0ggICAgICAgICAgICAgICAgICAgXworU0FMIEdHOSAgICAgICAgICAgICAgICAgIEsKK1NBTCBHICAgICAgICAgICAgICAgICAgICBLCitTQUwgSCAgICAgICAgICAgICAgICAgICAgSAorU0FMIElIKEFFSU9VWSktXiAgICAgICAgICpICitTQUwgSVIoQUVJT1VZKS1eICAgICAgICAgKlIKK1NBTCBJKEhSKV4gICAgICAgICAgICAgICAqCitTQUwgSV4gICAgICAgICAgICAgICAgICAgKgorU0FMIElORzYgICAgICAgICAgICAgICAgIE4KK1NBTCBJSChBRUlPVVkpLSAgICAgICAgICBICitTQUwgSVIoQUVJT1VZKS0gICAgICAgICAgUgorU0FMIEkoSFIpICAgICAgICAgICAgICAgIF8KK1NBTCBKICAgICAgICAgICAgICAgICAgICBLCitTQUwgS05eICAgICAgICAgICAgICAgICAgTgorU0FMIEtLLSAgICAgICAgICAgICAgICAgIF8KK1NBTCBLICAgICAgICAgICAgICAgICAgICBLCitTQUwgTEFVR0heICAgICAgICAgICAgICAgTEYKK1NBTCBMTC0gICAgICAgICAgICAgICAgICBfCitTQUwgTCAgICAgICAgICAgICAgICAgICAgTAorU0FMIE1CJCAgICAgICAgICAgICAgICAgIE0KK1NBTCBNTSAgICAgICAgICAgICAgICAgICBNCitTQUwgTSAgICAgICAgICAgICAgICAgICAgTQorU0FMIE5OLSAgICAgICAgICAgICAgICAgIF8KK1NBTCBOICAgICAgICAgICAgICAgICAgICBOCitTQUwgT0goQUVJT1VZKS1eICAgICAgICAgKkgKK1NBTCBPUihBRUlPVVkpLV4gICAgICAgICAqUgorU0FMIE8oSFIpXiAgICAgICAgICAgICAgICoKK1NBTCBPXiAgICAgICAgICAgICAgICAgICAqCitTQUwgT0goQUVJT1VZKS0gICAgICAgICAgSAorU0FMIE9SKEFFSU9VWSktICAgICAgICAgIFIKK1NBTCBPKEhSKSAgICAgICAgICAgICAgICBfCitTQUwgUEggICAgICAgICAgICAgICAgICAgRgorU0FMIFBOXiAgICAgICAgICAgICAgICAgIE4KK1NBTCBQUC0gICAgICAgICAgICAgICAgICBfCitTQUwgUCAgICAgICAgICAgICAgICAgICAgUAorU0FMIFEgICAgICAgICAgICAgICAgICAgIEsKK1NBTCBSSF4gICAgICAgICAgICAgICAgICBSCitTQUwgUk9VR0heICAgICAgICAgICAgICAgUkYKK1NBTCBSUi0gICAgICAgICAgICAgICAgICBfCitTQUwgUiAgICAgICAgICAgICAgICAgICAgUgorU0FMIFNDSChFT1UpLSAgICAgICAgICAgIFNLCitTQUwgU0MoSUVZKS0gICAgICAgICAgICAgUworU0FMIFNIICAgICAgICAgICAgICAgICAgIFgKK1NBTCBTSShBTyktICAgICAgICAgICAgICBYCitTQUwgU1MtICAgICAgICAgICAgICAgICAgXworU0FMIFMgICAgICAgICAgICAgICAgICAgIFMKK1NBTCBUSShBTyktICAgICAgICAgICAgICBYCitTQUwgVEggICAgICAgICAgICAgICAgICAgQAorU0FMIFRDSC0tICAgICAgICAgICAgICAgIF8KK1NBTCBUT1VHSF4gICAgICAgICAgICAgICBURgorU0FMIFRULSAgICAgICAgICAgICAgICAgIF8KK1NBTCBUICAgICAgICAgICAgICAgICAgICBUCitTQUwgVUgoQUVJT1VZKS1eICAgICAgICAgKkgKK1NBTCBVUihBRUlPVVkpLV4gICAgICAgICAqUgorU0FMIFUoSFIpXiAgICAgICAgICAgICAgICoKK1NBTCBVXiAgICAgICAgICAgICAgICAgICAqCitTQUwgVUgoQUVJT1VZKS0gICAgICAgICAgSAorU0FMIFVSKEFFSU9VWSktICAgICAgICAgIFIKK1NBTCBVKEhSKSAgICAgICAgICAgICAgICBfCitTQUwgVl4gICAgICAgICAgICAgICAgICAgVworU0FMIFYgICAgICAgICAgICAgICAgICAgIEYKK1NBTCBXUl4gICAgICAgICAgICAgICAgICBSCitTQUwgV0heICAgICAgICAgICAgICAgICAgVworU0FMIFcoQUVJT1UpLSAgICAgICAgICAgIFcKK1NBTCBYXiAgICAgICAgICAgICAgICAgICBTCitTQUwgWCAgICAgICAgICAgICAgICAgICAgS1MKK1NBTCBZKEFFSU9VKS0gICAgICAgICAgICBZCitTQUwgWlotICAgICAgICAgICAgICAgICAgXworU0FMIFogICAgICAgICAgICAgICAgICAgIFMKK2FmZmVuZDIKKworYWZmc3RhcnQzCitTRVQgSVNPODg1OS0xCisKK0ZPTCAg4OHi4+Tl5ufo6err7O3u7/Dx8vP09fb4+fr7/P3+3/8KK0xPVyAg4OHi4+Tl5ufo6err7O3u7/Dx8vP09fb4+fr7/P3+3/8KK1VQUCAgwMHCw8TFxsfIycrLzM3Oz9DR0tPU1dbY2drb3N3e3/8KKworUEZYUE9TVFBPTkUKKworTUlEV09SRAknLQorCitLRVAgPQorUkFSID8KK0JBRCAhCisKK05PU1BMSVRTVUdTCisKK1BGWCBJIE4gMQorUEZYIEkgMCBpbiAuCisKK1BGWCBPIFkgMQorUEZYIE8gMCBvdXQgLgorCitTRlggUyBZIDIKK1NGWCBTIDAgcyBbXnNdCitTRlggUyAwIGVzIHMKKworU0ZYIE4gTiAzCitTRlggTiAwIGVuIFtebl0KK1NGWCBOIDAgbmVuIG4KK1NGWCBOIDAgbiAuCisKK1JFUCAzCitSRVAgZyBjaAorUkVQIGNoIGcKK1JFUCBzdnAgcy52LnAuCisKK01BUCA5CitNQVAgYeDh4uPk5QorTUFQIGXo6errCitNQVAgaezt7u8KK01BUCBv8vP09fYKK01BUCB1+fr7/AorTUFQIG7xCitNQVAgY+cKK01BUCB5//0KK01BUCBz3worYWZmZW5kMworCitkaWNzdGFydAorMTIzNDU2Cit0ZXN0L05PCisjIGNvbW1lbnQKK3dyb25nCitDb21tZW50CitPSwordWsKK3B1dC9JU08KK3RoZSBlbmQKK2Rlb2wKK2Tp9HIKK2RpY2VuZAorCithZGRzdGFydAorL3JlZ2lvbnM9dXNnYm56CitlbGVxdWludC8yCitlbGVrd2ludC8zCithZGRlbmQKKwordGVzdDE6CitpbnB1dHMJd3JvbmcKK2NvbW1lbnQJd3JvbmcKK3B1dHMJT0sKK29rCXdyb25nCitPawl3cm9uZwordGhlIGVuZC4gIHRlc3Qgd3JvbmcKK2TDqcO0bAorCit0ZXN0MjoKK2VsZXF1aW50IHRlc3QgZWxla3dpbnQgdGVzdCBlbGVrd2VudCBhc2RmCisKKwordGVzdCBvdXRwdXQ6CmRpZmYgLS1naXQgYS9zcmMvdGVzdGRpci90ZXN0NTkub2sgYi9zcmMvdGVzdGRpci90ZXN0NTkub2sKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmJiZWQ2ZQotLS0gL2Rldi9udWxsCisrKyBiL3NyYy90ZXN0ZGlyL3Rlc3Q1OS5vawpAQCAtMCwwICsxLDc0IEBACit0ZXN0IG91dHB1dDoKK2lucHV0cworWydpbnB1dCcsICdwdXRzJywgJ291dHB1dHMnLCAncHV0J10KK2NvbW1lbnQKK1snQ29tbWVudCddCitvaworWydPSycsICd1ayddCitPaworWydPSycsICdVayddCit0ZXN0CitbJ3Rlc3QnLCAnVGVzdCddCitkw6nDtGwKK1snZGVvbCcsICdkw6nDtHInXQorIyBmaWxlOiBYdGVzdC51dGYtOC5zcGwKK0NvbW1lbnQKK2Rlb2wKK2TDqcO0cgoraW5wdXQKK09LCitvdXRwdXQKK291dHB1dHMKK291dHRlc3QKK3B1dAorcHV0cwordGVzdAordGVzdGVuCit0ZXN0bgordGhlIGVuZAordWsKK3dyb25nCitnZWJsZXRlZ2VrCitrZXBlcmVuZXZlbgorZXZlcmxlcyBnZXN2ZXRzIGV0ZWxlCitrYmx0eWtrCitrcHJuZm4KKypmbHMga3N3dHMgdGwKK2VsZWt3ZW50CitlbGVxdWludAorZWxla3dpbnQKK2VsZWt3aW50CitlbGVrd2VudAorZWxlcXVpbnQKK2VsZWt3ZW50CitlbGVxdWludAorZWxla3dpbnQKKyMgZmlsZTogWHRlc3QudXRmLTguc3BsCitDb21tZW50CitkZW9sCitkw6nDtHIKK09LCitwdXQKK2lucHV0CitvdXRwdXQKK3B1dHMKK291dHB1dHMKK3Rlc3QKK291dHRlc3QKK3Rlc3RlbgordGVzdG4KK3RoZSBlbmQKK3VrCit3cm9uZworaW5wdXRzCitbJ2lucHV0JywgJ3B1dHMnLCAncHV0JywgJ291dHB1dHMnXQorY29tbWVudAorWydDb21tZW50J10KK29rCitbJ09LJywgJ3VrJ10KK09rCitbJ09LJywgJ1VrJ10KK3Rlc3QKK1sndGVzdCcsICdUZXN0J10KK2TDqcO0bAorWydkZW9sJywgJ2TDqcO0ciddCmRpZmYgLS1naXQgYS9zcmMvdmVyc2lvbi5oIGIvc3JjL3ZlcnNpb24uaAppbmRleCA5NjU2YjVhLi41OTM2YzRlIDEwMDY0NAotLS0gYS9zcmMvdmVyc2lvbi5oCisrKyBiL3NyYy92ZXJzaW9uLmgKQEAgLTM2LDUgKzM2LDUgQEAKICNkZWZpbmUgVklNX1ZFUlNJT05fTk9ET1QJInZpbTcwYWEiCiAjZGVmaW5lIFZJTV9WRVJTSU9OX1NIT1JUCSI3LjBhYSIKICNkZWZpbmUgVklNX1ZFUlNJT05fTUVESVVNCSI3LjBhYSBBTFBIQSIKLSNkZWZpbmUgVklNX1ZFUlNJT05fTE9ORwkiVklNIC0gVmkgSU1wcm92ZWQgNy4wYWEgQUxQSEEgKDIwMDUgSnVsIDQpIgotI2RlZmluZSBWSU1fVkVSU0lPTl9MT05HX0RBVEUJIlZJTSAtIFZpIElNcHJvdmVkIDcuMGFhIEFMUEhBICgyMDA1IEp1bCA0LCBjb21waWxlZCAiCisjZGVmaW5lIFZJTV9WRVJTSU9OX0xPTkcJIlZJTSAtIFZpIElNcHJvdmVkIDcuMGFhIEFMUEhBICgyMDA1IEp1bCA1KSIKKyNkZWZpbmUgVklNX1ZFUlNJT05fTE9OR19EQVRFCSJWSU0gLSBWaSBJTXByb3ZlZCA3LjBhYSBBTFBIQSAoMjAwNSBKdWwgNSwgY29tcGlsZWQgIgo=