ZGlmZiAtLWdpdCBhL3NjcmlwdC9wcmludC1qc29uLXRva2VuLWRlYnVnLWZvcm1hdC5jIGIvc2NyaXB0L3ByaW50LWpzb24tdG9rZW4tZGVidWctZm9ybWF0LmMKaW5kZXggN2Q0ODI3Zi4uN2U1MDAxYSAxMDA2NDQKLS0tIGEvc2NyaXB0L3ByaW50LWpzb24tdG9rZW4tZGVidWctZm9ybWF0LmMKKysrIGIvc2NyaXB0L3ByaW50LWpzb24tdG9rZW4tZGVidWctZm9ybWF0LmMKQEAgLTEzOSw2ICsxMzksNyBAQAogCiAgIGJvb2wgYWxsX3Rva2VuczsKICAgYm9vbCBodW1hbl9yZWFkYWJsZTsKKyAgYm9vbCBxdWlya3M7CiB9IGZsYWdzID0gezB9OwogCiBjb25zdCBjaGFyKiAgLy8KQEAgLTE3MSw2ICsxNzIsMTAgQEAKICAgICAgIGZsYWdzLmh1bWFuX3JlYWRhYmxlID0gdHJ1ZTsKICAgICAgIGNvbnRpbnVlOwogICAgIH0KKyAgICBpZiAoIXN0cmNtcChhcmcsICJxIikgfHwgIXN0cmNtcChhcmcsICJxdWlya3MiKSkgeworICAgICAgZmxhZ3MucXVpcmtzID0gdHJ1ZTsKKyAgICAgIGNvbnRpbnVlOworICAgIH0KIAogICAgIHJldHVybiAibWFpbjogdW5yZWNvZ25pemVkIGZsYWcgYXJndW1lbnQiOwogICB9CkBAIC0yMTgsNiArMjIzLDMyIEBACiAgICAgcmV0dXJuIHd1ZmZzX2Jhc2VfX3N0YXR1c19fbWVzc2FnZSgmaW5pdF9zdGF0dXMpOwogICB9CiAKKyAgaWYgKGZsYWdzLnF1aXJrcykgeworICAgIHVpbnQzMl90IHF1aXJrc1tdID0geworICAgICAgICBXVUZGU19KU09OX19RVUlSS19BTExPV19CQUNLU0xBU0hfQSwKKyAgICAgICAgV1VGRlNfSlNPTl9fUVVJUktfQUxMT1dfQkFDS1NMQVNIX0NBUElUQUxfVSwKKyAgICAgICAgV1VGRlNfSlNPTl9fUVVJUktfQUxMT1dfQkFDS1NMQVNIX0UsCisgICAgICAgIFdVRkZTX0pTT05fX1FVSVJLX0FMTE9XX0JBQ0tTTEFTSF9RVUVTVElPTl9NQVJLLAorICAgICAgICBXVUZGU19KU09OX19RVUlSS19BTExPV19CQUNLU0xBU0hfU0lOR0xFX1FVT1RFLAorICAgICAgICBXVUZGU19KU09OX19RVUlSS19BTExPV19CQUNLU0xBU0hfViwKKyAgICAgICAgV1VGRlNfSlNPTl9fUVVJUktfQUxMT1dfQkFDS1NMQVNIX1gsCisgICAgICAgIFdVRkZTX0pTT05fX1FVSVJLX0FMTE9XX0JBQ0tTTEFTSF9aRVJPLAorICAgICAgICBXVUZGU19KU09OX19RVUlSS19BTExPV19DT01NRU5UX0JMT0NLLAorICAgICAgICBXVUZGU19KU09OX19RVUlSS19BTExPV19DT01NRU5UX0xJTkUsCisgICAgICAgIFdVRkZTX0pTT05fX1FVSVJLX0FMTE9XX0VYVFJBX0NPTU1BLAorICAgICAgICBXVUZGU19KU09OX19RVUlSS19BTExPV19JTkZfTkFOX05VTUJFUlMsCisgICAgICAgIFdVRkZTX0pTT05fX1FVSVJLX0FMTE9XX0xFQURJTkdfQVNDSUlfUkVDT1JEX1NFUEFSQVRPUiwKKyAgICAgICAgV1VGRlNfSlNPTl9fUVVJUktfQUxMT1dfTEVBRElOR19VTklDT0RFX0JZVEVfT1JERVJfTUFSSywKKyAgICAgICAgV1VGRlNfSlNPTl9fUVVJUktfQUxMT1dfVFJBSUxJTkdfTkVXX0xJTkUsCisgICAgICAgIFdVRkZTX0pTT05fX1FVSVJLX1JFUExBQ0VfSU5WQUxJRF9VVEZfOCwKKyAgICAgICAgMCwKKyAgICB9OworICAgIHVpbnQzMl90IGk7CisgICAgZm9yIChpID0gMDsgcXVpcmtzW2ldOyBpKyspIHsKKyAgICAgIHd1ZmZzX2pzb25fX2RlY29kZXJfX3NldF9xdWlya19lbmFibGVkKCZkZWMsIHF1aXJrc1tpXSwgdHJ1ZSk7CisgICAgfQorICB9CisKICAgdWludDY0X3QgcG9zID0gMDsKICAgd2hpbGUgKHRydWUpIHsKICAgICB3dWZmc19iYXNlX19zdGF0dXMgc3RhdHVzID0KZGlmZiAtLWdpdCBhL3Rlc3QvYy9zdGQvanNvbi5jIGIvdGVzdC9jL3N0ZC9qc29uLmMKaW5kZXggMDgxOTUxMS4uMGViNjRlYyAxMDA2NDQKLS0tIGEvdGVzdC9jL3N0ZC9qc29uLmMKKysrIGIvdGVzdC9jL3N0ZC9qc29uLmMKQEAgLTc4Myw2ICs3ODMsMTEgQEAKICAgICAuc3JjX2ZpbGVuYW1lID0gInRlc3QvZGF0YS9ub2JlbC1wcml6ZXMuanNvbiIsCiB9OwogCitnb2xkZW5fdGVzdCBqc29uX2pzb25fcXVpcmtzX2d0ID0geworICAgIC53YW50X2ZpbGVuYW1lID0gInRlc3QvZGF0YS9qc29uLXF1aXJrcy50b2tlbnMiLAorICAgIC5zcmNfZmlsZW5hbWUgPSAidGVzdC9kYXRhL2pzb24tcXVpcmtzLmpzb24iLAorfTsKKwogLy8gLS0tLS0tLS0tLS0tLS0tLSBKU09OIFRlc3RzCiAKIGNvbnN0IGNoYXIqICAvLwpAQCAtODExLDYgKzgxNiw0MSBAQAogICAgICAgICAmanNvbl9hdXN0cmFsaWFuX2FiY19ndCkpOwogICB9CiAKKyAgeworICAgIHVpbnQzMl90IHF1aXJrc1tdID0geworICAgICAgICBXVUZGU19KU09OX19RVUlSS19BTExPV19CQUNLU0xBU0hfQSwKKyAgICAgICAgV1VGRlNfSlNPTl9fUVVJUktfQUxMT1dfQkFDS1NMQVNIX0NBUElUQUxfVSwKKyAgICAgICAgV1VGRlNfSlNPTl9fUVVJUktfQUxMT1dfQkFDS1NMQVNIX0UsCisgICAgICAgIFdVRkZTX0pTT05fX1FVSVJLX0FMTE9XX0JBQ0tTTEFTSF9RVUVTVElPTl9NQVJLLAorICAgICAgICBXVUZGU19KU09OX19RVUlSS19BTExPV19CQUNLU0xBU0hfU0lOR0xFX1FVT1RFLAorICAgICAgICBXVUZGU19KU09OX19RVUlSS19BTExPV19CQUNLU0xBU0hfViwKKyAgICAgICAgV1VGRlNfSlNPTl9fUVVJUktfQUxMT1dfQkFDS1NMQVNIX1gsCisgICAgICAgIFdVRkZTX0pTT05fX1FVSVJLX0FMTE9XX0JBQ0tTTEFTSF9aRVJPLAorICAgICAgICBXVUZGU19KU09OX19RVUlSS19BTExPV19DT01NRU5UX0JMT0NLLAorICAgICAgICBXVUZGU19KU09OX19RVUlSS19BTExPV19DT01NRU5UX0xJTkUsCisgICAgICAgIFdVRkZTX0pTT05fX1FVSVJLX0FMTE9XX0VYVFJBX0NPTU1BLAorICAgICAgICBXVUZGU19KU09OX19RVUlSS19BTExPV19JTkZfTkFOX05VTUJFUlMsCisgICAgICAgIFdVRkZTX0pTT05fX1FVSVJLX0FMTE9XX0xFQURJTkdfQVNDSUlfUkVDT1JEX1NFUEFSQVRPUiwKKyAgICAgICAgV1VGRlNfSlNPTl9fUVVJUktfQUxMT1dfTEVBRElOR19VTklDT0RFX0JZVEVfT1JERVJfTUFSSywKKyAgICAgICAgV1VGRlNfSlNPTl9fUVVJUktfQUxMT1dfVFJBSUxJTkdfTkVXX0xJTkUsCisgICAgICAgIFdVRkZTX0pTT05fX1FVSVJLX1JFUExBQ0VfSU5WQUxJRF9VVEZfOCwKKyAgICAgICAgMCwKKyAgICB9OworCisgICAgd3VmZnNfanNvbl9fZGVjb2RlciBkZWM7CisgICAgQ0hFQ0tfU1RBVFVTKCJpbml0aWFsaXplIiwKKyAgICAgICAgICAgICAgICAgd3VmZnNfanNvbl9fZGVjb2Rlcl9faW5pdGlhbGl6ZSgKKyAgICAgICAgICAgICAgICAgICAgICZkZWMsIHNpemVvZiBkZWMsIFdVRkZTX1ZFUlNJT04sCisgICAgICAgICAgICAgICAgICAgICBXVUZGU19JTklUSUFMSVpFX19MRUFWRV9JTlRFUk5BTF9CVUZGRVJTX1VOSU5JVElBTElaRUQpKTsKKyAgICB1aW50MzJfdCBpOworICAgIGZvciAoaSA9IDA7IHF1aXJrc1tpXTsgaSsrKSB7CisgICAgICB3dWZmc19qc29uX19kZWNvZGVyX19zZXRfcXVpcmtfZW5hYmxlZCgmZGVjLCBxdWlya3NbaV0sIHRydWUpOworICAgIH0KKyAgICBDSEVDS19TVFJJTkcoZG9fdGVzdF9fd3VmZnNfYmFzZV9fdG9rZW5fZGVjb2RlcigKKyAgICAgICAgd3VmZnNfanNvbl9fZGVjb2Rlcl9fdXBjYXN0X2FzX193dWZmc19iYXNlX190b2tlbl9kZWNvZGVyKCZkZWMpLAorICAgICAgICAmanNvbl9qc29uX3F1aXJrc19ndCkpOworICB9CisKICAgcmV0dXJuIE5VTEw7CiB9CiAKZGlmZiAtLWdpdCBhL3Rlc3QvZGF0YS9qc29uLXF1aXJrcy5qc29uIGIvdGVzdC9kYXRhL2pzb24tcXVpcmtzLmpzb24KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWQzYTg3NwotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3QvZGF0YS9qc29uLXF1aXJrcy5qc29uCkBAIC0wLDAgKzEsMTYgQEAKK++7vx5bCisJMTIzLAorCW5hbiwKKwkrSU5GSU5JVFksCisJImVzY2FwZWQgXGFcYlxlXGZcblxyXHRcdlwwXCdcIlw/XFxcLyB0aGluZ3MiLAorCXsKKwkJIkFCQ1x1MDM5NEUiOiAvLyBVKzAwMDAwMzk0IEdSRUVLIENBUElUQUwgTEVUVEVSIERFTFRBLgorCQkibW5vXFUwMDAxRjRBOXEiLCAvKiBVKzAwMDFGNEE5IFBJTEUgT0YgUE9PLiAqLworCQkvKiBBbmQgbm93IGZvciBzb21lCisJCSAqIGludmFsaWQgVW5pY29kZS4gKi8KKwkJIkFCQ1x1RDgwMEUiOiAvLyBVbnBhaXJlZCBzdXJyb2dhdGUuCisJCSJtbm9cVTEyMzQ1Njc4cSIsIC8vIE91dCBvZiByYW5nZS4KKwl9LAorCSJ3XHg1OFx4NTl6IiwKKwkiaW52/2xpZCBVVEYtOCIsCitdCmRpZmYgLS1naXQgYS90ZXN0L2RhdGEvanNvbi1xdWlya3MudG9rZW5zIGIvdGVzdC9kYXRhL2pzb24tcXVpcmtzLnRva2VucwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kOWE4Mjk2Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdC9kYXRhL2pzb24tcXVpcmtzLnRva2VucwpCaW5hcnkgZmlsZXMgZGlmZmVyCg==