From mboxrd@z Thu Jan 1 00:00:00 1970 Received: by passt.top (Postfix, from userid 1000) id AB25E5A026E; Tue, 01 Oct 2024 20:22:28 +0200 (CEST) From: Stefano Brivio To: passt-dev@passt.top Subject: [PATCH v2] test: Add tests for passt in vhost-user mode Date: Tue, 1 Oct 2024 20:22:26 +0200 Message-ID: <20241001182228.2347208-1-sbrivio@redhat.com> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Message-ID-Hash: 44XO5WH4LUMZW7XJ3SK6FEYLMHRVCM6X X-Message-ID-Hash: 44XO5WH4LUMZW7XJ3SK6FEYLMHRVCM6X X-MailFrom: sbrivio@passt.top X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: Laurent Vivier X-Mailman-Version: 3.3.8 Precedence: list List-Id: Development discussion and patches for passt Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: UnVuIGZ1bmN0aW9uYWwgYW5kIHBlcmZvcm1hbmNlIHRlc3RzIGZvciB2aG9zdC11c2VyIG1vZGUg YXMgd2VsbC4gRm9yDQpmdW5jdGlvbmFsIHRlc3RzLCB3ZSBhZGQgcGFzc3RfdnUgYW5kIHBhc3N0 X3Z1X2luX25zIGFzIHN5bWJvbGljIGxpbmtzDQp0byB0aGVpciBub24tdmhvc3QtdXNlciBjb3Vu dGVycGFydHMsIGFzIG5vIGRpZmZlcmVuY2VzIGFyZSBpbnRlbmRlZA0KYnV0IHdlIHdhbnQgdG8g ZGlzdGluZ3Vpc2ggdGhlbSBpbiB0ZXN0IGxvZ3MuDQoNCkZvciBwZXJmb3JtYW5jZSB0ZXN0cywg aW5zdGVhZCwgd2UgYWRkIHNlcGFyYXRlIHBlcmYvcGFzc3RfdnVfdGNwIGFuZA0KcGVyZi9wYXNz dF92dV91ZHAgZmlsZXMsIGFzIHdlIG5lZWQgbG9uZ2VyIHRlc3QgZHVyYXRpb24sIGFzIHdlbGwg YXMNCmhpZ2hlciBVRFAgc2VuZGluZyBiYW5kd2lkdGhzIGFuZCBsYXJnZXIgVENQIHdpbmRvd3Ms IHRvIGFjdHVhbGx5IGdldA0KdGhlIGhpZ2hlc3QgdGhyb3VnaHB1dCB2aG9zdC11c2VyIG1vZGUg b2ZmZXJzLg0KDQpGb3IgdmFsZ3JpbmQgdGVzdHMsIHZob3N0LXVzZXIgbW9kZSBuZWVkcyB0d28g ZXh0cmEgc3lzdGVtIGNhbGxzOg0Kc3RhdHggYW5kIHJlYWRsaW5rLiBBZGQgdGhlbSBhcyBFWFRS QV9TWVNDQUxMUyBmb3IgdGhlIHZhbGdyaW5kDQp0YXJnZXQuDQoNClNpZ25lZC1vZmYtYnk6IFN0 ZWZhbm8gQnJpdmlvIDxzYnJpdmlvQHJlZGhhdC5jb20+DQotLS0NCnYyOg0KICAtIG9vcHMsIGFk ZCBhbGwgdGhlIGZpbGVzIEkgZm9yZ290IGluIHYxOiB0ZXN0L3BlcmYvcGFzc3RfdnVfdGNwLA0K ICAgIHRlc3QvcGVyZi9wYXNzdF92dV91ZHAsIGFuZCBzeW1ib2xpYyBsaW5rcw0KICAtIGFsc28g cnVuIHRoZSAndHdvX2d1ZXN0cycgY2FzZSBpbiB2aG9zdC11c2VyIG1vZGUNCg0KIE1ha2VmaWxl ICAgICAgICAgICAgICAgfCAgIDMgKy0NCiB0ZXN0L2xpYi9wZXJmX3JlcG9ydCAgIHwgIDE1ICsr Kw0KIHRlc3QvbGliL3NldHVwICAgICAgICAgfCAgNzcgKysrKysrKysrKysrLS0tDQogdGVzdC9w YXNzdF92dSAgICAgICAgICB8ICAgMSArDQogdGVzdC9wYXNzdF92dV9pbl9ucyAgICB8ICAgMSAr DQogdGVzdC9wZXJmL3Bhc3N0X3Z1X3RjcCB8IDIxMSArKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKw0KIHRlc3QvcGVyZi9wYXNzdF92dV91ZHAgfCAxNTkgKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKw0KIHRlc3QvcnVuICAgICAgICAgICAgICAgfCAgMjUgKysr KysNCiB0ZXN0L3R3b19ndWVzdHNfdnUgICAgIHwgICAxICsNCiA5IGZpbGVzIGNoYW5nZWQsIDQ3 OCBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlvbnMoLSkNCiBjcmVhdGUgbW9kZSAxMjAwMDAgdGVz dC9wYXNzdF92dQ0KIGNyZWF0ZSBtb2RlIDEyMDAwMCB0ZXN0L3Bhc3N0X3Z1X2luX25zDQogY3Jl YXRlIG1vZGUgMTAwNjQ0IHRlc3QvcGVyZi9wYXNzdF92dV90Y3ANCiBjcmVhdGUgbW9kZSAxMDA2 NDQgdGVzdC9wZXJmL3Bhc3N0X3Z1X3VkcA0KIGNyZWF0ZSBtb2RlIDEyMDAwMCB0ZXN0L3R3b19n dWVzdHNfdnUNCg0KZGlmZiAtLWdpdCBhL01ha2VmaWxlIGIvTWFrZWZpbGUNCmluZGV4IDc0YTk1 MTMuLjE5NzcyOWYgMTAwNjQ0DQotLS0gYS9NYWtlZmlsZQ0KKysrIGIvTWFrZWZpbGUNCkBAIC0x MzYsNyArMTM2LDggQEAgcXJhcDogJChRUkFQX1NSQ1MpIHBhc3N0LmgNCiANCiB2YWxncmluZDog RVhUUkFfU1lTQ0FMTFMgKz0gcnRfc2lncHJvY21hc2sgcnRfc2lndGltZWR3YWl0IHJ0X3NpZ2Fj dGlvbglcDQogCQkJICAgIHJ0X3NpZ3JldHVybiBnZXRwaWQgZ2V0dGlkIGtpbGwgY2xvY2tfZ2V0 dGltZSBtbWFwIFwNCi0JCQkgICAgbW1hcDIgbXVubWFwIG9wZW4gdW5saW5rIGdldHRpbWVvZmRh eSBmdXRleA0KKwkJCSAgICBtbWFwMiBtdW5tYXAgb3BlbiB1bmxpbmsgZ2V0dGltZW9mZGF5IGZ1 dGV4IHN0YXR4IFwNCisJCQkgICAgcmVhZGxpbmsNCiB2YWxncmluZDogRkxBR1MgKz0gLWcgLURW QUxHUklORA0KIHZhbGdyaW5kOiBhbGwNCiANCmRpZmYgLS1naXQgYS90ZXN0L2xpYi9wZXJmX3Jl cG9ydCBiL3Rlc3QvbGliL3BlcmZfcmVwb3J0DQppbmRleCBkMWVmNTBiLi5jNGVjODE3IDEwMDc1 NQ0KLS0tIGEvdGVzdC9saWIvcGVyZl9yZXBvcnQNCisrKyBiL3Rlc3QvbGliL3BlcmZfcmVwb3J0 DQpAQCAtNDksNiArNDksMjEgQEAgdGQ6ZW1wdHkgeyB2aXNpYmlsaXR5OiBoaWRkZW47IH0NCiAJ X19wYXNzdF90Y3BfTElORV9fIF9fcGFzc3RfdWRwX0xJTkVfXw0KIDwvdGFibGU+DQogDQorPC9s aT48bGk+PHA+cGFzc3Qgd2l0aCB2aG9zdC11c2VyIHN1cHBvcnQ8L3A+DQorPHRhYmxlIGNsYXNz PSJwYXNzdCIgd2lkdGg9IjcwJSI+DQorCTx0cj4NCisJCTx0aC8+DQorCQk8dGggaWQ9InBlcmZf cGFzc3RfdnVfdGNwIiBjb2xzcGFuPSJfX3Bhc3N0X3Z1X3RjcF9jb2xzX18iPlRDUCwgX19wYXNz dF92dV90Y3BfdGhyZWFkc19fIGF0IF9fcGFzc3RfdnVfdGNwX2ZyZXFfXyBHSHo8L3RoPg0KKwkJ PHRoIGlkPSJwZXJmX3Bhc3N0X3Z1X3VkcCIgY29sc3Bhbj0iX19wYXNzdF92dV91ZHBfY29sc19f Ij5VRFAsIF9fcGFzc3RfdnVfdWRwX3RocmVhZHNfXyBhdCBfX3Bhc3N0X3Z1X3VkcF9mcmVxX18g R0h6PC90aD4NCisJPC90cj4NCisJPHRyPg0KKwkJPHRkIGFsaWduPSJyaWdodCI+TVRVOjwvdGQ+ DQorCQlfX3Bhc3N0X3Z1X3RjcF9oZWFkZXJfXw0KKwkJX19wYXNzdF92dV91ZHBfaGVhZGVyX18N CisJPC90cj4NCisJX19wYXNzdF92dV90Y3BfTElORV9fIF9fcGFzc3RfdnVfdWRwX0xJTkVfXw0K KzwvdGFibGU+DQorDQogPHN0eWxlIHR5cGU9InRleHQvQ1NTIj4NCiB0YWJsZS5wYXN0YV9sb2Nh bCB0ZCB7IGJvcmRlcjogMHB4IHNvbGlkOyBwYWRkaW5nOiA2cHg7IGxpbmUtaGVpZ2h0OiAxOyB9 DQogdGFibGUucGFzdGFfbG9jYWwgdGQgeyB0ZXh0LWFsaWduOiByaWdodDsgfQ0KZGlmZiAtLWdp dCBhL3Rlc3QvbGliL3NldHVwIGIvdGVzdC9saWIvc2V0dXANCmluZGV4IDUzMzgzOTMuLjM0MDli ZDIgMTAwNzU1DQotLS0gYS90ZXN0L2xpYi9zZXR1cA0KKysrIGIvdGVzdC9saWIvc2V0dXANCkBA IC0xNSw4ICsxNSw3IEBADQogDQogSU5JVFJBTUZTPSIke0JBU0VQQVRIfS9tYnV0by5pbWciDQog VkNQVVM9IiQoIFsgJChucHJvYykgLWdlIDggXSAmJiBlY2hvIDYgfHwgZWNobyAkKCggJChucHJv YykgLyAyICsgMSApKSApIg0KLV9fbWVtX2tpYj0iJChzZWQgLW4gJ3MvTWVtVG90YWw6WyBdKlwo WzAtOV0qXCkga0IvXDEvcCcgL3Byb2MvbWVtaW5mbykiDQotVk1FTT0iJCgoJHtfX21lbV9raWJ9 IC8gMTAyNCAvIDQpKSINCitNRU1fS0lCPSIkKHNlZCAtbiAncy9NZW1Ub3RhbDpbIF0qXChbMC05 XSpcKSBrQi9cMS9wJyAvcHJvYy9tZW1pbmZvKSINCiBRRU1VX0FSQ0g9IiQodW5hbWUgLW0pIg0K IFsgIiR7UUVNVV9BUkNIfSIgPSAiaTY4NiIgXSAmJiBRRU1VX0FSQ0g9aTM4Ng0KIA0KQEAgLTQ2 LDYgKzQ1LDcgQEAgc2V0dXBfcGFzc3QoKSB7DQogCVsgJHtQQ0FQfSAtZXEgMSBdICYmIF9fb3B0 cz0iJHtfX29wdHN9IC1wICR7TE9HRElSfS9wYXNzdC5wY2FwIg0KIAlbICR7REVCVUd9IC1lcSAx IF0gJiYgX19vcHRzPSIke19fb3B0c30gLWQiDQogCVsgJHtUUkFDRX0gLWVxIDEgXSAmJiBfX29w dHM9IiR7X19vcHRzfSAtLXRyYWNlIg0KKwlbICR7VkhPU1RfVVNFUn0gLWVxIDEgXSAmJiBfX29w dHM9IiR7X19vcHRzfSAtLXZob3N0LXVzZXIiDQogDQogCWNvbnRleHRfcnVuIHBhc3N0ICJtYWtl IGNsZWFuIg0KIAljb250ZXh0X3J1biBwYXNzdCAibWFrZSB2YWxncmluZCINCkBAIC01NCwxNiAr NTQsMjkgQEAgc2V0dXBfcGFzc3QoKSB7DQogCSMgcGlkZmlsZSBpc24ndCBjcmVhdGVkIHVudGls IHBhc3N0IGlzIGxpc3RlbmluZw0KIAl3YWl0X2ZvciBbIC1mICIke1NUQVRFU0VUVVB9L3Bhc3N0 LnBpZCIgXQ0KIA0KKwlfX3ZtZW09IiQoKCR7TUVNX0tJQn0gLyAxMDI0IC8gNCkpIg0KKwlpZiBb ICR7VkhPU1RfVVNFUn0gLWVxIDEgXTsgdGhlbg0KKwkJX192bWVtPSIkKCgoJHtfX3ZtZW19ICsg NTAwKSAvIDEwMDApKUciDQorCQlfX3FlbXVfbmV0ZGV2PSIJCQkJCQkgICAgICAgXA0KKwkJCS1j aGFyZGV2IHNvY2tldCxpZD1jLHBhdGg9JHtTVEFURVNFVFVQfS9wYXNzdC5zb2NrZXQgICBcDQor CQkJLW5ldGRldiB2aG9zdC11c2VyLGlkPXYsY2hhcmRldj1jCQkgICAgICAgXA0KKwkJCS1kZXZp Y2UgdmlydGlvLW5ldCxuZXRkZXY9dgkJCSAgICAgICBcDQorCQkJLW9iamVjdCBtZW1vcnktYmFj a2VuZC1tZW1mZCxpZD1tLHNoYXJlPW9uLHNpemU9JHtfX3ZtZW19IFwNCisJCQktbnVtYSBub2Rl LG1lbWRldj1tIg0KKwllbHNlDQorCQlfX3FlbXVfbmV0ZGV2PSItZGV2aWNlIHZpcnRpby1uZXQt cGNpLG5ldGRldj1zCQkgICAgICAgXA0KKwkJCS1uZXRkZXYgc3RyZWFtLGlkPXMsc2VydmVyPW9m ZixhZGRyLnR5cGU9dW5peCxhZGRyLnBhdGg9JHtTVEFURVNFVFVQfS9wYXNzdC5zb2NrZXQiDQor CWZpDQorDQogCUdVRVNUX0NJRD05NDU1Nw0KIAljb250ZXh0X3J1bl9iZyBxZW11ICdxZW11LXN5 c3RlbS0nIiR7UUVNVV9BUkNIfSIJCSAgIFwNCiAJCScgLW1hY2hpbmUgYWNjZWw9a3ZtJyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KLQkJJyAtbSAnJHtWTUVNfScgLWNw dSBob3N0IC1zbXAgJyR7VkNQVVN9ICAgICAgICAgICAgICAgICAgICBcDQorCQknIC1tICcke19f dm1lbX0nIC1jcHUgaG9zdCAtc21wICcke1ZDUFVTfQkJICAgXA0KIAkJJyAta2VybmVsICciJHtL RVJORUx9IgkJCQkJICAgXA0KIAkJJyAtaW5pdHJkICcke0lOSVRSQU1GU30nIC1ub2dyYXBoaWMg LXNlcmlhbCBzdGRpbycJICAgXA0KIAkJJyAtbm9kZWZhdWx0cycJCQkJCQkgICBcDQogCQknIC1h cHBlbmQgImNvbnNvbGU9dHR5UzAgbWl0aWdhdGlvbnM9b2ZmIGFwcGFybW9yPTAiICcJICAgXA0K LQkJJyAtZGV2aWNlIHZpcnRpby1uZXQtcGNpLG5ldGRldj1zMCAnCQkJICAgXA0KLQkJIiAtbmV0 ZGV2IHN0cmVhbSxpZD1zMCxzZXJ2ZXI9b2ZmLGFkZHIudHlwZT11bml4LGFkZHIucGF0aD0ke1NU QVRFU0VUVVB9L3Bhc3N0LnNvY2tldCAiIFwNCisJCSIgJHtfX3FlbXVfbmV0ZGV2fSIJCQkJCSAg IFwNCiAJCSIgLXBpZGZpbGUgJHtTVEFURVNFVFVQfS9xZW11LnBpZCIJCQkgICBcDQogCQkiIC1k ZXZpY2Ugdmhvc3QtdnNvY2stcGNpLGd1ZXN0LWNpZD0kR1VFU1RfQ0lEIg0KIA0KQEAgLTE0Miw2 ICsxNTUsNyBAQCBzZXR1cF9wYXNzdF9pbl9ucygpIHsNCiAJWyAke1BDQVB9IC1lcSAxIF0gJiYg X19vcHRzPSIke19fb3B0c30gLXAgJHtMT0dESVJ9L3Bhc3N0X2luX3Bhc3RhLnBjYXAiDQogCVsg JHtERUJVR30gLWVxIDEgXSAmJiBfX29wdHM9IiR7X19vcHRzfSAtZCINCiAJWyAke1RSQUNFfSAt ZXEgMSBdICYmIF9fb3B0cz0iJHtfX29wdHN9IC0tdHJhY2UiDQorCVsgJHtWSE9TVF9VU0VSfSAt ZXEgMSBdICYmIF9fb3B0cz0iJHtfX29wdHN9IC0tdmhvc3QtdXNlciINCiANCiAJaWYgWyAke1ZB TEdSSU5EfSAtZXEgMSBdOyB0aGVuDQogCQljb250ZXh0X3J1biBwYXNzdCAibWFrZSBjbGVhbiIN CkBAIC0xNTQsMTcgKzE2OCwzMCBAQCBzZXR1cF9wYXNzdF9pbl9ucygpIHsNCiAJZmkNCiAJd2Fp dF9mb3IgWyAtZiAiJHtTVEFURVNFVFVQfS9wYXNzdC5waWQiIF0NCiANCisJX192bWVtPSIkKCgk e01FTV9LSUJ9IC8gMTAyNCAvIDQpKSINCisJaWYgWyAke1ZIT1NUX1VTRVJ9IC1lcSAxIF07IHRo ZW4NCisJCV9fdm1lbT0iJCgoKCR7X192bWVtfSArIDUwMCkgLyAxMDAwKSlHIg0KKwkJX19xZW11 X25ldGRldj0iCQkJCQkJICAgICAgIFwNCisJCQktY2hhcmRldiBzb2NrZXQsaWQ9YyxwYXRoPSR7 U1RBVEVTRVRVUH0vcGFzc3Quc29ja2V0ICAgXA0KKwkJCS1uZXRkZXYgdmhvc3QtdXNlcixpZD12 LGNoYXJkZXY9YwkJICAgICAgIFwNCisJCQktZGV2aWNlIHZpcnRpby1uZXQsbmV0ZGV2PXYJCQkg ICAgICAgXA0KKwkJCS1vYmplY3QgbWVtb3J5LWJhY2tlbmQtbWVtZmQsaWQ9bSxzaGFyZT1vbixz aXplPSR7X192bWVtfSBcDQorCQkJLW51bWEgbm9kZSxtZW1kZXY9bSINCisJZWxzZQ0KKwkJX19x ZW11X25ldGRldj0iLWRldmljZSB2aXJ0aW8tbmV0LXBjaSxuZXRkZXY9cwkJICAgICAgIFwNCisJ CQktbmV0ZGV2IHN0cmVhbSxpZD1zLHNlcnZlcj1vZmYsYWRkci50eXBlPXVuaXgsYWRkci5wYXRo PSR7U1RBVEVTRVRVUH0vcGFzc3Quc29ja2V0Ig0KKwlmaQ0KKw0KIAlHVUVTVF9DSUQ9OTQ1NTcN CiAJY29udGV4dF9ydW5fYmcgcWVtdSAncWVtdS1zeXN0ZW0tJyIke1FFTVVfQVJDSH0iCQkgICBc DQogCQknIC1tYWNoaW5lIGFjY2VsPWt2bScgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwNCiAJCScgLU0gYWNjZWw9a3ZtOnRjZycgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXA0KLQkJJyAtbSAnJHtWTUVNfScgLWNwdSBob3N0IC1zbXAgJyR7VkNQ VVN9ICAgICAgICAgICAgICAgICAgICBcDQorCQknIC1tICcke19fdm1lbX0nIC1jcHUgaG9zdCAt c21wICcke1ZDUFVTfQkJICAgXA0KIAkJJyAta2VybmVsICciJHtLRVJORUx9IgkJCQkJICAgXA0K IAkJJyAtaW5pdHJkICcke0lOSVRSQU1GU30nIC1ub2dyYXBoaWMgLXNlcmlhbCBzdGRpbycJICAg XA0KIAkJJyAtbm9kZWZhdWx0cycJCQkJCQkgICBcDQogCQknIC1hcHBlbmQgImNvbnNvbGU9dHR5 UzAgbWl0aWdhdGlvbnM9b2ZmIGFwcGFybW9yPTAiICcJICAgXA0KLQkJJyAtZGV2aWNlIHZpcnRp by1uZXQtcGNpLG5ldGRldj1zMCAnCQkJICAgXA0KLQkJIiAtbmV0ZGV2IHN0cmVhbSxpZD1zMCxz ZXJ2ZXI9b2ZmLGFkZHIudHlwZT11bml4LGFkZHIucGF0aD0ke1NUQVRFU0VUVVB9L3Bhc3N0LnNv Y2tldCAiIFwNCisJCSIgJHtfX3FlbXVfbmV0ZGV2fSIJCQkJCSAgIFwNCiAJCSIgLXBpZGZpbGUg JHtTVEFURVNFVFVQfS9xZW11LnBpZCIJCQkgICBcDQogCQkiIC1kZXZpY2Ugdmhvc3QtdnNvY2st cGNpLGd1ZXN0LWNpZD0kR1VFU1RfQ0lEIg0KIA0KQEAgLTIxNCw2ICsyNDEsNyBAQCBzZXR1cF90 d29fZ3Vlc3RzKCkgew0KIAlbICR7UENBUH0gLWVxIDEgXSAmJiBfX29wdHM9IiR7X19vcHRzfSAt cCAke0xPR0RJUn0vcGFzc3RfMS5wY2FwIg0KIAlbICR7REVCVUd9IC1lcSAxIF0gJiYgX19vcHRz PSIke19fb3B0c30gLWQiDQogCVsgJHtUUkFDRX0gLWVxIDEgXSAmJiBfX29wdHM9IiR7X19vcHRz fSAtLXRyYWNlIg0KKwlbICR7VkhPU1RfVVNFUn0gLWVxIDEgXSAmJiBfX29wdHM9IiR7X19vcHRz fSAtLXZob3N0LXVzZXIiDQogDQogCWNvbnRleHRfcnVuX2JnIHBhc3N0XzEgIi4vcGFzc3QgLXMg JHtTVEFURVNFVFVQfS9wYXNzdF8xLnNvY2tldCAtUCAke1NUQVRFU0VUVVB9L3Bhc3N0XzEucGlk IC1mICR7X19vcHRzfSAtdCAxMDAwMSAtdSAxMDAwMSINCiAJd2FpdF9mb3IgWyAtZiAiJHtTVEFU RVNFVFVQfS9wYXNzdF8xLnBpZCIgXQ0KQEAgLTIyMiwzMyArMjUwLDU0IEBAIHNldHVwX3R3b19n dWVzdHMoKSB7DQogCVsgJHtQQ0FQfSAtZXEgMSBdICYmIF9fb3B0cz0iJHtfX29wdHN9IC1wICR7 TE9HRElSfS9wYXNzdF8yLnBjYXAiDQogCVsgJHtERUJVR30gLWVxIDEgXSAmJiBfX29wdHM9IiR7 X19vcHRzfSAtZCINCiAJWyAke1RSQUNFfSAtZXEgMSBdICYmIF9fb3B0cz0iJHtfX29wdHN9IC0t dHJhY2UiDQorCVsgJHtWSE9TVF9VU0VSfSAtZXEgMSBdICYmIF9fb3B0cz0iJHtfX29wdHN9IC0t dmhvc3QtdXNlciINCiANCiAJY29udGV4dF9ydW5fYmcgcGFzc3RfMiAiLi9wYXNzdCAtcyAke1NU QVRFU0VUVVB9L3Bhc3N0XzIuc29ja2V0IC1QICR7U1RBVEVTRVRVUH0vcGFzc3RfMi5waWQgLWYg JHtfX29wdHN9IC10IDEwMDA0IC11IDEwMDA0Ig0KIAl3YWl0X2ZvciBbIC1mICIke1NUQVRFU0VU VVB9L3Bhc3N0XzIucGlkIiBdDQogDQorCV9fdm1lbT0iJCgoJHtNRU1fS0lCfSAvIDEwMjQgLyA0 KSkiDQorCWlmIFsgJHtWSE9TVF9VU0VSfSAtZXEgMSBdOyB0aGVuDQorCQlfX3ZtZW09IiQoKCgk e19fdm1lbX0gKyA1MDApIC8gMTAwMCkpRyINCisJCV9fcWVtdV9uZXRkZXYxPSIJCQkJCSAgICAg ICBcDQorCQkJLWNoYXJkZXYgc29ja2V0LGlkPWMscGF0aD0ke1NUQVRFU0VUVVB9L3Bhc3N0XzEu c29ja2V0IFwNCisJCQktbmV0ZGV2IHZob3N0LXVzZXIsaWQ9dixjaGFyZGV2PWMJCSAgICAgICBc DQorCQkJLWRldmljZSB2aXJ0aW8tbmV0LG5ldGRldj12CQkJICAgICAgIFwNCisJCQktb2JqZWN0 IG1lbW9yeS1iYWNrZW5kLW1lbWZkLGlkPW0sc2hhcmU9b24sc2l6ZT0ke19fdm1lbX0gXA0KKwkJ CS1udW1hIG5vZGUsbWVtZGV2PW0iDQorCQlfX3FlbXVfbmV0ZGV2MT0iCQkJCQkgICAgICAgXA0K KwkJCS1jaGFyZGV2IHNvY2tldCxpZD1jLHBhdGg9JHtTVEFURVNFVFVQfS9wYXNzdF8yLnNvY2tl dCBcDQorCQkJLW5ldGRldiB2aG9zdC11c2VyLGlkPXYsY2hhcmRldj1jCQkgICAgICAgXA0KKwkJ CS1kZXZpY2UgdmlydGlvLW5ldCxuZXRkZXY9dgkJCSAgICAgICBcDQorCQkJLW9iamVjdCBtZW1v cnktYmFja2VuZC1tZW1mZCxpZD1tLHNoYXJlPW9uLHNpemU9JHtfX3ZtZW19IFwNCisJCQktbnVt YSBub2RlLG1lbWRldj1tIg0KKwllbHNlDQorCQlfX3FlbXVfbmV0ZGV2MT0iLWRldmljZSB2aXJ0 aW8tbmV0LXBjaSxuZXRkZXY9cwkJICAgICAgIFwNCisJCQktbmV0ZGV2IHN0cmVhbSxpZD1zLHNl cnZlcj1vZmYsYWRkci50eXBlPXVuaXgsYWRkci5wYXRoPSR7U1RBVEVTRVRVUH0vcGFzc3RfMS5z b2NrZXQiDQorCQlfX3FlbXVfbmV0ZGV2Mj0iLWRldmljZSB2aXJ0aW8tbmV0LXBjaSxuZXRkZXY9 cwkJICAgICAgIFwNCisJCQktbmV0ZGV2IHN0cmVhbSxpZD1zLHNlcnZlcj1vZmYsYWRkci50eXBl PXVuaXgsYWRkci5wYXRoPSR7U1RBVEVTRVRVUH0vcGFzc3RfMi5zb2NrZXQiDQorCWZpDQorDQog CUdVRVNUXzFfQ0lEPTk0NTU3DQogCWNvbnRleHRfcnVuX2JnIHFlbXVfMSAncWVtdS1zeXN0ZW0t JyIke1FFTVVfQVJDSH0iCQkgICAgIFwNCiAJCScgLU0gYWNjZWw9a3ZtOnRjZycgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQotCQknIC1tICcke1ZNRU19JyAtY3B1 IGhvc3QgLXNtcCAnJHtWQ1BVU30gICAgICAgICAgICAgICAgICAgICAgXA0KKwkJJyAtbSAnJHtf X3ZtZW19JyAtY3B1IGhvc3QgLXNtcCAnJHtWQ1BVU30JCSAgICAgXA0KIAkJJyAta2VybmVsICci JHtLRVJORUx9IgkJCQkJICAgICBcDQogCQknIC1pbml0cmQgJyR7SU5JVFJBTUZTfScgLW5vZ3Jh cGhpYyAtc2VyaWFsIHN0ZGlvJwkgICAgIFwNCiAJCScgLW5vZGVmYXVsdHMnCQkJCQkJICAgICBc DQogCQknIC1hcHBlbmQgImNvbnNvbGU9dHR5UzAgbWl0aWdhdGlvbnM9b2ZmIGFwcGFybW9yPTAi ICcJICAgICBcDQotCQknIC1kZXZpY2UgdmlydGlvLW5ldC1wY2ksbmV0ZGV2PXMwICcJCQkgICAg IFwNCi0JCSIgLW5ldGRldiBzdHJlYW0saWQ9czAsc2VydmVyPW9mZixhZGRyLnR5cGU9dW5peCxh ZGRyLnBhdGg9JHtTVEFURVNFVFVQfS9wYXNzdF8xLnNvY2tldCAiIFwNCisJCSIgJHtfX3FlbXVf bmV0ZGV2MX0iCQkJCQkgICAgIFwNCiAJCSIgLXBpZGZpbGUgJHtTVEFURVNFVFVQfS9xZW11XzEu cGlkIgkJCSAgICAgXA0KIAkJIiAtZGV2aWNlIHZob3N0LXZzb2NrLXBjaSxndWVzdC1jaWQ9JEdV RVNUXzFfQ0lEIg0KIA0KIAlHVUVTVF8yX0NJRD05NDU1OA0KIAljb250ZXh0X3J1bl9iZyBxZW11 XzIgJ3FlbXUtc3lzdGVtLSciJHtRRU1VX0FSQ0h9IgkJICAgICBcDQogCQknIC1NIGFjY2VsPWt2 bTp0Y2cnICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KLQkJJyAt bSAnJHtWTUVNfScgLWNwdSBob3N0IC1zbXAgJyR7VkNQVVN9ICAgICAgICAgICAgICAgICAgICAg IFwNCisJCScgLW0gJyR7X192bWVtfScgLWNwdSBob3N0IC1zbXAgJyR7VkNQVVN9CQkgICAgIFwN CiAJCScgLWtlcm5lbCAnIiR7S0VSTkVMfSIJCQkJCSAgICAgXA0KIAkJJyAtaW5pdHJkICcke0lO SVRSQU1GU30nIC1ub2dyYXBoaWMgLXNlcmlhbCBzdGRpbycJICAgICBcDQogCQknIC1ub2RlZmF1 bHRzJwkJCQkJCSAgICAgXA0KIAkJJyAtYXBwZW5kICJjb25zb2xlPXR0eVMwIG1pdGlnYXRpb25z PW9mZiBhcHBhcm1vcj0wIiAnCSAgICAgXA0KLQkJJyAtZGV2aWNlIHZpcnRpby1uZXQtcGNpLG5l dGRldj1zMCAnCQkJICAgICBcDQotCQkiIC1uZXRkZXYgc3RyZWFtLGlkPXMwLHNlcnZlcj1vZmYs YWRkci50eXBlPXVuaXgsYWRkci5wYXRoPSR7U1RBVEVTRVRVUH0vcGFzc3RfMi5zb2NrZXQgIiBc DQorCQkiICR7X19xZW11X25ldGRldjJ9IgkJCQkJICAgICBcDQogCQkiIC1waWRmaWxlICR7U1RB VEVTRVRVUH0vcWVtdV8yLnBpZCIJCQkgICAgIFwNCiAJCSIgLWRldmljZSB2aG9zdC12c29jay1w Y2ksZ3Vlc3QtY2lkPSRHVUVTVF8yX0NJRCINCiANCmRpZmYgLS1naXQgYS90ZXN0L3Bhc3N0X3Z1 IGIvdGVzdC9wYXNzdF92dQ0KbmV3IGZpbGUgbW9kZSAxMjAwMDANCmluZGV4IDAwMDAwMDAuLjIy ZjE4NDANCi0tLSAvZGV2L251bGwNCisrKyBiL3Rlc3QvcGFzc3RfdnUNCkBAIC0wLDAgKzEgQEAN CitwYXNzdA0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlDQpkaWZmIC0tZ2l0IGEvdGVzdC9w YXNzdF92dV9pbl9ucyBiL3Rlc3QvcGFzc3RfdnVfaW5fbnMNCm5ldyBmaWxlIG1vZGUgMTIwMDAw DQppbmRleCAwMDAwMDAwLi4zZmY0NzllDQotLS0gL2Rldi9udWxsDQorKysgYi90ZXN0L3Bhc3N0 X3Z1X2luX25zDQpAQCAtMCwwICsxIEBADQorcGFzc3RfaW5fbnMNClwgTm8gbmV3bGluZSBhdCBl bmQgb2YgZmlsZQ0KZGlmZiAtLWdpdCBhL3Rlc3QvcGVyZi9wYXNzdF92dV90Y3AgYi90ZXN0L3Bl cmYvcGFzc3RfdnVfdGNwDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMC4uYjQz NDAwOA0KLS0tIC9kZXYvbnVsbA0KKysrIGIvdGVzdC9wZXJmL3Bhc3N0X3Z1X3RjcA0KQEAgLTAs MCArMSwyMTEgQEANCisjIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4wLW9yLWxhdGVy DQorIw0KKyMgUEFTU1QgLSBQbHVnIEEgU2ltcGxlIFNvY2tldCBUcmFuc3BvcnQNCisjICBmb3Ig cWVtdS9VTklYIGRvbWFpbiBzb2NrZXQgbW9kZQ0KKyMNCisjIFBBU1RBIC0gUGFjayBBIFN1YnRs ZSBUYXAgQWJzdHJhY3Rpb24NCisjICBmb3IgbmV0d29yayBuYW1lc3BhY2UvdGFwIGRldmljZSBt b2RlDQorIw0KKyMgdGVzdC9wZXJmL3Bhc3N0X3Z1X3RjcCAtIENoZWNrIFRDUCBwZXJmb3JtYW5j ZSBpbiBwYXNzdCB2aG9zdC11c2VyIG1vZGUNCisjDQorIyBDb3B5cmlnaHQgKGMpIDIwMjEgUmVk IEhhdCBHbWJIDQorIyBBdXRob3I6IFN0ZWZhbm8gQnJpdmlvIDxzYnJpdmlvQHJlZGhhdC5jb20+ DQorDQorZ3Rvb2xzCS9zYmluL3N5c2N0bCBpcCBqcSBucHJvYyBzZXEgc2xlZXAgaXBlcmYzIHRj cF9yciB0Y3BfY3JyICMgRnJvbSBuZXBlcg0KK25zdG9vbHMJL3NiaW4vc3lzY3RsIGlwIGpxIG5w cm9jIHNlcSBzbGVlcCBpcGVyZjMgdGNwX3JyIHRjcF9jcnINCitodG9vbHMJYmMgaGVhZCBzZWQg c2VxDQorDQorc2V0CU1BUF9OUzQgMTkyLjAuMi4yDQorc2V0CU1BUF9OUzYgMjAwMTpkYjg6OWE1 NTo6Mg0KKw0KK3Rlc3QJcGFzc3Q6IHRocm91Z2hwdXQgYW5kIGxhdGVuY3kNCisNCitndWVzdAkv c2Jpbi9zeXNjdGwgLXcgbmV0LmNvcmUucm1lbV9tYXg9NTM2ODcwOTEyDQorZ3Vlc3QJL3NiaW4v c3lzY3RsIC13IG5ldC5jb3JlLndtZW1fbWF4PTUzNjg3MDkxMg0KK2d1ZXN0CS9zYmluL3N5c2N0 bCAtdyBuZXQuY29yZS5ybWVtX2RlZmF1bHQ9MzM1NTQ0MzINCitndWVzdAkvc2Jpbi9zeXNjdGwg LXcgbmV0LmNvcmUud21lbV9kZWZhdWx0PTMzNTU0NDMyDQorZ3Vlc3QJL3NiaW4vc3lzY3RsIC13 IG5ldC5pcHY0LnRjcF9ybWVtPSI0MDk2IDEzMTA3MiAyNjg0MzU0NTYiDQorZ3Vlc3QJL3NiaW4v c3lzY3RsIC13IG5ldC5pcHY0LnRjcF93bWVtPSI0MDk2IDEzMTA3MiAyNjg0MzU0NTYiDQorZ3Vl c3QJL3NiaW4vc3lzY3RsIC13IG5ldC5pcHY0LnRjcF90aW1lc3RhbXBzPTANCisNCitucwkvc2Jp bi9zeXNjdGwgLXcgbmV0LmlwdjQudGNwX3JtZW09IjQwOTYgNTI0Mjg4IDEzNDIxNzcyOCINCitu cwkvc2Jpbi9zeXNjdGwgLXcgbmV0LmlwdjQudGNwX3dtZW09IjQwOTYgNTI0Mjg4IDEzNDIxNzcy OCINCitucwkvc2Jpbi9zeXNjdGwgLXcgbmV0LmlwdjQudGNwX3RpbWVzdGFtcHM9MA0KKw0KK2dv dXQJSUZOQU1FIGlwIC1qIGxpbmsgc2hvdyB8IGpxIC1yTSAnLltdIHwgc2VsZWN0KC5saW5rX3R5 cGUgPT0gImV0aGVyIikuaWZuYW1lJw0KKw0KK2hvdXQJRlJFUV9QUk9DRlMgKGVjaG8gInNjYWxl PTEiOyBzZWQgLW4gJ3MvY3B1IE1Iei4qOiBcKFswLTldKlwpXC4uKiQvKFwxKzEwXjJcLzIpXC8x MF4zL3AnIC9wcm9jL2NwdWluZm8pIHwgYmMgLWwgfCBoZWFkIC1uMQ0KK2hvdXQJRlJFUV9DUFVG UkVRIChlY2hvICJzY2FsZT0xIjsgcHJpbnRmICcoICVpICsgMTBeNSAvIDIgKSAvIDEwXjZcbicg JChjYXQgL3N5cy9kZXZpY2VzL3N5c3RlbS9jcHUvY3B1MC9jcHVmcmVxL3NjYWxpbmdfbWF4X2Zy ZXEpICkgfCBiYyAtbA0KK2hvdXQJRlJFUSBbIC1uICJfX0ZSRVFfQ1BVRlJFUV9fIiBdICYmIGVj aG8gX19GUkVRX0NQVUZSRVFfXyB8fCBlY2hvIF9fRlJFUV9QUk9DRlNfXw0KKw0KK3NldAlUSFJF QURTIDQNCitzZXQJVElNRSA1DQorc2V0CU9NSVQgMC4xDQorc2V0CU9QVFMgLVogLVAgX19USFJF QURTX18gLWwgMU0gLU9fX09NSVRfXyAtTg0KKw0KK2luZm8JVGhyb3VnaHB1dCBpbiBHYnBzLCBs YXRlbmN5IGluIMK1cywgX19USFJFQURTX18gdGhyZWFkcyBhdCBfX0ZSRVFfXyBHSHoNCityZXBv cnQJcGFzc3RfdnUgdGNwIF9fVEhSRUFEU19fIF9fRlJFUV9fDQorDQordGgJTVRVIDI1NkIgNTc2 QiAxMjgwQiAxNTAwQiA5MDAwQiA2NTUyMEINCisNCisNCit0cglUQ1AgdGhyb3VnaHB1dCBvdmVy IElQdjY6IGd1ZXN0IHRvIGhvc3QNCitpcGVyZjNzCW5zIDEwMDAyDQorDQorYncJLQ0KK2J3CS0N CitndWVzdAlpcCBsaW5rIHNldCBkZXYgX19JRk5BTUVfXyBtdHUgMTI4MA0KK2lwZXJmMwlCVyBn dWVzdCBfX01BUF9OUzZfXyAxMDAwMiBfX1RJTUVfXyBfX09QVFNfXyAtdyAxNk0NCitidwlfX0JX X18gMS4yIDEuNQ0KK2d1ZXN0CWlwIGxpbmsgc2V0IGRldiBfX0lGTkFNRV9fIG10dSAxNTAwDQor aXBlcmYzCUJXIGd1ZXN0IF9fTUFQX05TNl9fIDEwMDAyIF9fVElNRV9fIF9fT1BUU19fIC13IDMy TQ0KK2J3CV9fQldfXyAxLjYgMS44DQorZ3Vlc3QJaXAgbGluayBzZXQgZGV2IF9fSUZOQU1FX18g bXR1IDkwMDANCitpcGVyZjMJQlcgZ3Vlc3QgX19NQVBfTlM2X18gMTAwMDIgX19USU1FX18gX19P UFRTX18gLXcgNjRNDQorYncJX19CV19fIDQuMCA1LjANCitndWVzdAlpcCBsaW5rIHNldCBkZXYg X19JRk5BTUVfXyBtdHUgNjU1MjANCitpcGVyZjMJQlcgZ3Vlc3QgX19NQVBfTlM2X18gMTAwMDIg X19USU1FX18gX19PUFRTX18gLXcgNjRNDQorYncJX19CV19fIDcuMCA4LjANCisNCitpcGVyZjNr CW5zDQorDQordGwJVENQIFJSIGxhdGVuY3kgb3ZlciBJUHY2OiBndWVzdCB0byBob3N0DQorbGF0 CS0NCitsYXQJLQ0KK2xhdAktDQorbGF0CS0NCitsYXQJLQ0KK25zYgl0Y3BfcnIgLS1ub2xvZyAt Ng0KK2dvdXQJTEFUIHRjcF9yciAtLW5vbG9nIC1sMSAtNiAtYyAtSCBfX01BUF9OUzZfXyB8IHNl ZCAtbiAncy9edGhyb3VnaHB1dD1cKC4qXCkvXDEvcCcNCitsYXQJX19MQVRfXyAyMDAgMTUwDQor DQordGwJVENQIENSUiBsYXRlbmN5IG92ZXIgSVB2NjogZ3Vlc3QgdG8gaG9zdA0KK2xhdAktDQor bGF0CS0NCitsYXQJLQ0KK2xhdAktDQorbGF0CS0NCituc2IJdGNwX2NyciAtLW5vbG9nIC02DQor Z291dAlMQVQgdGNwX2NyciAtLW5vbG9nIC1sMSAtNiAtYyAtSCBfX01BUF9OUzZfXyB8IHNlZCAt biAncy9edGhyb3VnaHB1dD1cKC4qXCkvXDEvcCcNCitsYXQJX19MQVRfXyA1MDAgNDAwDQorDQor dHIJVENQIHRocm91Z2hwdXQgb3ZlciBJUHY0OiBndWVzdCB0byBob3N0DQoraXBlcmYzcwlucyAx MDAwMg0KKw0KK2d1ZXN0CWlwIGxpbmsgc2V0IGRldiBfX0lGTkFNRV9fIG10dSAyNTYNCitpcGVy ZjMJQlcgZ3Vlc3QgX19NQVBfTlM0X18gMTAwMDIgX19USU1FX18gX19PUFRTX18gLXcgMk0NCiti dwlfX0JXX18gMC4yIDAuMw0KK2d1ZXN0CWlwIGxpbmsgc2V0IGRldiBfX0lGTkFNRV9fIG10dSA1 NzYNCitpcGVyZjMJQlcgZ3Vlc3QgX19NQVBfTlM0X18gMTAwMDIgX19USU1FX18gX19PUFRTX18g LXcgNE0NCitidwlfX0JXX18gMC41IDAuOA0KK2d1ZXN0CWlwIGxpbmsgc2V0IGRldiBfX0lGTkFN RV9fIG10dSAxMjgwDQoraXBlcmYzCUJXIGd1ZXN0IF9fTUFQX05TNF9fIDEwMDAyIF9fVElNRV9f IF9fT1BUU19fIC13IDhNDQorYncJX19CV19fIDEuMiAxLjUNCitndWVzdAlpcCBsaW5rIHNldCBk ZXYgX19JRk5BTUVfXyBtdHUgMTUwMA0KK2lwZXJmMwlCVyBndWVzdCBfX01BUF9OUzRfXyAxMDAw MiBfX1RJTUVfXyBfX09QVFNfXyAtdyAxNk0NCitidwlfX0JXX18gMS42IDEuOA0KK2d1ZXN0CWlw IGxpbmsgc2V0IGRldiBfX0lGTkFNRV9fIG10dSA5MDAwDQoraXBlcmYzCUJXIGd1ZXN0IF9fTUFQ X05TNF9fIDEwMDAyIF9fVElNRV9fIF9fT1BUU19fIC13IDY0TQ0KK2J3CV9fQldfXyA0LjAgNS4w DQorZ3Vlc3QJaXAgbGluayBzZXQgZGV2IF9fSUZOQU1FX18gbXR1IDY1NTIwDQoraXBlcmYzCUJX IGd1ZXN0IF9fTUFQX05TNF9fIDEwMDAyIF9fVElNRV9fIF9fT1BUU19fIC13IDY0TQ0KK2J3CV9f QldfXyA3LjAgOC4wDQorDQoraXBlcmYzawlucw0KKw0KKyMgUmVkdWNpbmcgTVRVIGJlbG93IDEy ODAgZGVjb25maWd1cmVzIElQdjYsIGdldCBvdXIgYWRkcmVzcyBiYWNrDQorZ3Vlc3QJZGhjbGll bnQgLTYgLXgNCitndWVzdAlkaGNsaWVudCAtNiBfX0lGTkFNRV9fDQorDQordGwJVENQIFJSIGxh dGVuY3kgb3ZlciBJUHY0OiBndWVzdCB0byBob3N0DQorbGF0CS0NCitsYXQJLQ0KK2xhdAktDQor bGF0CS0NCitsYXQJLQ0KK25zYgl0Y3BfcnIgLS1ub2xvZyAtNA0KK2dvdXQJTEFUIHRjcF9yciAt LW5vbG9nIC1sMSAtNCAtYyAtSCBfX01BUF9OUzRfXyB8IHNlZCAtbiAncy9edGhyb3VnaHB1dD1c KC4qXCkvXDEvcCcNCitsYXQJX19MQVRfXyAyMDAgMTUwDQorDQordGwJVENQIENSUiBsYXRlbmN5 IG92ZXIgSVB2NDogZ3Vlc3QgdG8gaG9zdA0KK2xhdAktDQorbGF0CS0NCitsYXQJLQ0KK2xhdAkt DQorbGF0CS0NCituc2IJdGNwX2NyciAtLW5vbG9nIC00DQorZ291dAlMQVQgdGNwX2NyciAtLW5v bG9nIC1sMSAtNCAtYyAtSCBfX01BUF9OUzRfXyB8IHNlZCAtbiAncy9edGhyb3VnaHB1dD1cKC4q XCkvXDEvcCcNCitsYXQJX19MQVRfXyA1MDAgNDAwDQorDQordHIJVENQIHRocm91Z2hwdXQgb3Zl ciBJUHY2OiBob3N0IHRvIGd1ZXN0DQoraXBlcmYzcwlndWVzdCAxMDAwMQ0KKw0KK2J3CS0NCiti dwktDQorYncJLQ0KK2J3CS0NCitidwktDQoraXBlcmYzCUJXIG5zIDo6MSAxMDAwMSBfX1RJTUVf XyBfX09QVFNfXyAtdyAzMk0NCitidwlfX0JXX18gNi4wIDYuOA0KKw0KK2lwZXJmM2sJZ3Vlc3QN CisNCit0bAlUQ1AgUlIgbGF0ZW5jeSBvdmVyIElQdjY6IGhvc3QgdG8gZ3Vlc3QNCitsYXQJLQ0K K2xhdAktDQorbGF0CS0NCitsYXQJLQ0KK2xhdAktDQorZ3Vlc3RiCXRjcF9yciAtLW5vbG9nIC1Q IDEwMDAxIC1DIDEwMDExIC02DQorc2xlZXAJMQ0KK25zb3V0CUxBVCB0Y3BfcnIgLS1ub2xvZyAt bDEgLVAgMTAwMDEgLUMgMTAwMTEgLTYgLWMgLUggOjoxIHwgc2VkIC1uICdzL150aHJvdWdocHV0 PVwoLipcKS9cMS9wJw0KK2xhdAlfX0xBVF9fIDIwMCAxNTANCisNCit0bAlUQ1AgQ1JSIGxhdGVu Y3kgb3ZlciBJUHY2OiBob3N0IHRvIGd1ZXN0DQorbGF0CS0NCitsYXQJLQ0KK2xhdAktDQorbGF0 CS0NCitsYXQJLQ0KK2d1ZXN0Ygl0Y3BfY3JyIC0tbm9sb2cgLVAgMTAwMDEgLUMgMTAwMTEgLTYN CitzbGVlcAkxDQorbnNvdXQJTEFUIHRjcF9jcnIgLS1ub2xvZyAtbDEgLVAgMTAwMDEgLUMgMTAw MTEgLTYgLWMgLUggOjoxIHwgc2VkIC1uICdzL150aHJvdWdocHV0PVwoLipcKS9cMS9wJw0KK2xh dAlfX0xBVF9fIDUwMCAzNTANCisNCisNCit0cglUQ1AgdGhyb3VnaHB1dCBvdmVyIElQdjQ6IGhv c3QgdG8gZ3Vlc3QNCitpcGVyZjNzCWd1ZXN0IDEwMDAxDQorDQorYncJLQ0KK2J3CS0NCitidwkt DQorYncJLQ0KK2J3CS0NCitpcGVyZjMJQlcgbnMgMTI3LjAuMC4xIDEwMDAxIF9fVElNRV9fIF9f T1BUU19fIC13IDMyTQ0KK2J3CV9fQldfXyA2LjAgNi44DQorDQoraXBlcmYzawlndWVzdA0KKw0K K3RsCVRDUCBSUiBsYXRlbmN5IG92ZXIgSVB2NDogaG9zdCB0byBndWVzdA0KK2xhdAktDQorbGF0 CS0NCitsYXQJLQ0KK2xhdAktDQorbGF0CS0NCitndWVzdGIJdGNwX3JyIC0tbm9sb2cgLVAgMTAw MDEgLUMgMTAwMTEgLTQNCitzbGVlcAkxDQorbnNvdXQJTEFUIHRjcF9yciAtLW5vbG9nIC1sMSAt UCAxMDAwMSAtQyAxMDAxMSAtNCAtYyAtSCAxMjcuMC4wLjEgfCBzZWQgLW4gJ3MvXnRocm91Z2hw dXQ9XCguKlwpL1wxL3AnDQorbGF0CV9fTEFUX18gMjAwIDE1MA0KKw0KK3RsCVRDUCBDUlIgbGF0 ZW5jeSBvdmVyIElQdjY6IGhvc3QgdG8gZ3Vlc3QNCitsYXQJLQ0KK2xhdAktDQorbGF0CS0NCits YXQJLQ0KK2xhdAktDQorZ3Vlc3RiCXRjcF9jcnIgLS1ub2xvZyAtUCAxMDAwMSAtQyAxMDAxMSAt NA0KK3NsZWVwCTENCituc291dAlMQVQgdGNwX2NyciAtLW5vbG9nIC1sMSAtUCAxMDAwMSAtQyAx MDAxMSAtNCAtYyAtSCAxMjcuMC4wLjEgfCBzZWQgLW4gJ3MvXnRocm91Z2hwdXQ9XCguKlwpL1wx L3AnDQorbGF0CV9fTEFUX18gNTAwIDMwMA0KKw0KK3RlDQpkaWZmIC0tZ2l0IGEvdGVzdC9wZXJm L3Bhc3N0X3Z1X3VkcCBiL3Rlc3QvcGVyZi9wYXNzdF92dV91ZHANCm5ldyBmaWxlIG1vZGUgMTAw NjQ0DQppbmRleCAwMDAwMDAwLi45NDNhYzExDQotLS0gL2Rldi9udWxsDQorKysgYi90ZXN0L3Bl cmYvcGFzc3RfdnVfdWRwDQpAQCAtMCwwICsxLDE1OSBAQA0KKyMgU1BEWC1MaWNlbnNlLUlkZW50 aWZpZXI6IEdQTC0yLjAtb3ItbGF0ZXINCisjDQorIyBQQVNTVCAtIFBsdWcgQSBTaW1wbGUgU29j a2V0IFRyYW5zcG9ydA0KKyMgIGZvciBxZW11L1VOSVggZG9tYWluIHNvY2tldCBtb2RlDQorIw0K KyMgUEFTVEEgLSBQYWNrIEEgU3VidGxlIFRhcCBBYnN0cmFjdGlvbg0KKyMgIGZvciBuZXR3b3Jr IG5hbWVzcGFjZS90YXAgZGV2aWNlIG1vZGUNCisjDQorIyB0ZXN0L3BlcmYvcGFzc3RfdnVfdWRw IC0gQ2hlY2sgVURQIHBlcmZvcm1hbmNlIGluIHBhc3N0IHZob3N0LXVzZXIgbW9kZQ0KKyMNCisj IENvcHlyaWdodCAoYykgMjAyMSBSZWQgSGF0IEdtYkgNCisjIEF1dGhvcjogU3RlZmFubyBCcml2 aW8gPHNicml2aW9AcmVkaGF0LmNvbT4NCisNCitndG9vbHMJL3NiaW4vc3lzY3RsIGlwIGpxIG5w cm9jIHNsZWVwIGlwZXJmMyB1ZHBfcnIgIyBGcm9tIG5lcGVyDQorbnN0b29scwlpcCBqcSBzbGVl cCBpcGVyZjMgdWRwX3JyDQoraHRvb2xzCWJjIGhlYWQgc2VkDQorDQorc2V0CU1BUF9OUzQgMTky LjAuMi4yDQorc2V0CU1BUF9OUzYgMjAwMTpkYjg6OWE1NTo6Mg0KKw0KK3Rlc3QJcGFzc3Q6IHRo cm91Z2hwdXQgYW5kIGxhdGVuY3kNCisNCitndWVzdAkvc2Jpbi9zeXNjdGwgLXcgbmV0LmNvcmUu cm1lbV9tYXg9MTY3NzcyMTYNCitndWVzdAkvc2Jpbi9zeXNjdGwgLXcgbmV0LmNvcmUud21lbV9t YXg9MTY3NzcyMTYNCitndWVzdAkvc2Jpbi9zeXNjdGwgLXcgbmV0LmNvcmUucm1lbV9kZWZhdWx0 PTE2Nzc3MjE2DQorZ3Vlc3QJL3NiaW4vc3lzY3RsIC13IG5ldC5jb3JlLndtZW1fZGVmYXVsdD0x Njc3NzIxNg0KKw0KK2hvdXQJRlJFUV9QUk9DRlMgKGVjaG8gInNjYWxlPTEiOyBzZWQgLW4gJ3Mv Y3B1IE1Iei4qOiBcKFswLTldKlwpXC4uKiQvKFwxKzEwXjJcLzIpXC8xMF4zL3AnIC9wcm9jL2Nw dWluZm8pIHwgYmMgLWwgfCBoZWFkIC1uMQ0KK2hvdXQJRlJFUV9DUFVGUkVRIChlY2hvICJzY2Fs ZT0xIjsgcHJpbnRmICcoICVpICsgMTBeNSAvIDIgKSAvIDEwXjZcbicgJChjYXQgL3N5cy9kZXZp Y2VzL3N5c3RlbS9jcHUvY3B1MC9jcHVmcmVxL3NjYWxpbmdfbWF4X2ZyZXEpICkgfCBiYyAtbA0K K2hvdXQJRlJFUSBbIC1uICJfX0ZSRVFfQ1BVRlJFUV9fIiBdICYmIGVjaG8gX19GUkVRX0NQVUZS RVFfXyB8fCBlY2hvIF9fRlJFUV9QUk9DRlNfXw0KKw0KK3NldAlUSFJFQURTIDINCitzZXQJVElN RSAxDQorc2V0CU9QVFMgLXUgLVAgX19USFJFQURTX18gLS1wYWNpbmctdGltZXIgMTAwMA0KKw0K K2luZm8JVGhyb3VnaHB1dCBpbiBHYnBzLCBsYXRlbmN5IGluIMK1cywgX19USFJFQURTX18gdGhy ZWFkcyBhdCBfX0ZSRVFfXyBHSHoNCisNCityZXBvcnQJcGFzc3RfdnUgdWRwIF9fVEhSRUFEU19f IF9fRlJFUV9fDQorDQordGgJcGt0bGVuIDI1NkIgNTc2QiAxMjgwQiAxNTAwQiA5MDAwQiA2NTUy MEINCisNCit0cglVRFAgdGhyb3VnaHB1dCBvdmVyIElQdjY6IGd1ZXN0IHRvIGhvc3QNCitpcGVy ZjNzCW5zIDEwMDAyDQorIyAoZGF0YWdyYW0gc2l6ZSkgPSAocGFja2V0IHNpemUpIC0gNDg6IDQw IGJ5dGVzIG9mIElQdjYgaGVhZGVyLCA4IG9mIFVEUCBoZWFkZXINCisNCitidwktDQorYncJLQ0K K2lwZXJmMwlCVyBndWVzdCBfX01BUF9OUzZfXyAxMDAwMiBfX1RJTUVfXyBfX09QVFNfXyAtYiAz RyAtbCAxMjMyDQorYncJX19CV19fIDAuOCAxLjINCitpcGVyZjMJQlcgZ3Vlc3QgX19NQVBfTlM2 X18gMTAwMDIgX19USU1FX18gX19PUFRTX18gLWIgNEcgLWwgMTQ1Mg0KK2J3CV9fQldfXyAxLjAg MS41DQoraXBlcmYzCUJXIGd1ZXN0IF9fTUFQX05TNl9fIDEwMDAyIF9fVElNRV9fIF9fT1BUU19f IC1iIDEwRyAtbCA4OTUyDQorYncJX19CV19fIDQuMCA1LjANCitpcGVyZjMJQlcgZ3Vlc3QgX19N QVBfTlM2X18gMTAwMDIgX19USU1FX18gX19PUFRTX18gLWIgMjBHIC1sIDY0MzcyDQorYncJX19C V19fIDQuMCA1LjANCisNCitpcGVyZjNrCW5zDQorDQordGwJVURQIFJSIGxhdGVuY3kgb3ZlciBJ UHY2OiBndWVzdCB0byBob3N0DQorbGF0CS0NCitsYXQJLQ0KK2xhdAktDQorbGF0CS0NCitsYXQJ LQ0KK25zYgl1ZHBfcnIgLS1ub2xvZyAtNg0KK2dvdXQJTEFUIHVkcF9yciAtLW5vbG9nIC02IC1j IC1IIF9fTUFQX05TNl9fIHwgc2VkIC1uICdzL150aHJvdWdocHV0PVwoLipcKS9cMS9wJw0KK2xh dAlfX0xBVF9fIDIwMCAxNTANCisNCisNCit0cglVRFAgdGhyb3VnaHB1dCBvdmVyIElQdjQ6IGd1 ZXN0IHRvIGhvc3QNCitpcGVyZjNzCW5zIDEwMDAyDQorIyAoZGF0YWdyYW0gc2l6ZSkgPSAocGFj a2V0IHNpemUpIC0gMjg6IDIwIGJ5dGVzIG9mIElQdjQgaGVhZGVyLCA4IG9mIFVEUCBoZWFkZXIN CisNCitpcGVyZjMJQlcgZ3Vlc3QgX19NQVBfTlM0X18gMTAwMDIgX19USU1FX18gX19PUFRTX18g LWIgMUcgLWwgMjI4DQorYncJX19CV19fIDAuMCAwLjANCitpcGVyZjMJQlcgZ3Vlc3QgX19NQVBf TlM0X18gMTAwMDIgX19USU1FX18gX19PUFRTX18gLWIgMkcgLWwgNTQ4DQorYncJX19CV19fIDAu NCAwLjYNCitpcGVyZjMJQlcgZ3Vlc3QgX19NQVBfTlM0X18gMTAwMDIgX19USU1FX18gX19PUFRT X18gLWIgM0cgLWwgMTI1Mg0KK2J3CV9fQldfXyAwLjggMS4yDQoraXBlcmYzCUJXIGd1ZXN0IF9f TUFQX05TNF9fIDEwMDAyIF9fVElNRV9fIF9fT1BUU19fIC1iIDRHIC1sIDE0NzINCitidwlfX0JX X18gMS4wIDEuNQ0KK2lwZXJmMwlCVyBndWVzdCBfX01BUF9OUzRfXyAxMDAwMiBfX1RJTUVfXyBf X09QVFNfXyAtYiAxMEcgLWwgODk3Mg0KK2J3CV9fQldfXyA0LjAgNS4wDQoraXBlcmYzCUJXIGd1 ZXN0IF9fTUFQX05TNF9fIDEwMDAyIF9fVElNRV9fIF9fT1BUU19fIC1iIDIwRyAtbCA2NTQ5Mg0K K2J3CV9fQldfXyA0LjAgNS4wDQorDQoraXBlcmYzawlucw0KKw0KK3RsCVVEUCBSUiBsYXRlbmN5 IG92ZXIgSVB2NDogZ3Vlc3QgdG8gaG9zdA0KK2xhdAktDQorbGF0CS0NCitsYXQJLQ0KK2xhdAkt DQorbGF0CS0NCituc2IJdWRwX3JyIC0tbm9sb2cgLTQNCitnb3V0CUxBVCB1ZHBfcnIgLS1ub2xv ZyAtNCAtYyAtSCBfX01BUF9OUzRfXyB8IHNlZCAtbiAncy9edGhyb3VnaHB1dD1cKC4qXCkvXDEv cCcNCitsYXQJX19MQVRfXyAyMDAgMTUwDQorDQorDQordHIJVURQIHRocm91Z2hwdXQgb3ZlciBJ UHY2OiBob3N0IHRvIGd1ZXN0DQoraXBlcmYzcwlndWVzdCAxMDAwMQ0KKyMgKGRhdGFncmFtIHNp emUpID0gKHBhY2tldCBzaXplKSAtIDQ4OiA0MCBieXRlcyBvZiBJUHY2IGhlYWRlciwgOCBvZiBV RFAgaGVhZGVyDQorDQorYncJLQ0KK2J3CS0NCitpcGVyZjMJQlcgbnMgOjoxIDEwMDAxIF9fVElN RV9fIF9fT1BUU19fIC1iIDNHIC1sIDEyMzINCitidwlfX0JXX18gMC44IDEuMg0KK2lwZXJmMwlC VyBucyA6OjEgMTAwMDEgX19USU1FX18gX19PUFRTX18gLWIgNEcgLWwgMTQ1Mg0KK2J3CV9fQldf XyAxLjAgMS41DQoraXBlcmYzCUJXIG5zIDo6MSAxMDAwMSBfX1RJTUVfXyBfX09QVFNfXyAtYiAx MEcgLWwgODk1Mg0KK2J3CV9fQldfXyAzLjAgNC4wDQoraXBlcmYzCUJXIG5zIDo6MSAxMDAwMSBf X1RJTUVfXyBfX09QVFNfXyAtYiAyMEcgLWwgNjQzNzINCitidwlfX0JXX18gMy4wIDQuMA0KKw0K K2lwZXJmM2sJZ3Vlc3QNCisNCit0bAlVRFAgUlIgbGF0ZW5jeSBvdmVyIElQdjY6IGhvc3QgdG8g Z3Vlc3QNCitsYXQJLQ0KK2xhdAktDQorbGF0CS0NCitsYXQJLQ0KK2xhdAktDQorZ3Vlc3RiCXVk cF9yciAtLW5vbG9nIC1QIDEwMDAxIC1DIDEwMDExIC02DQorc2xlZXAJMQ0KK25zb3V0CUxBVCB1 ZHBfcnIgLS1ub2xvZyAtUCAxMDAwMSAtQyAxMDAxMSAtNiAtYyAtSCA6OjEgfCBzZWQgLW4gJ3Mv XnRocm91Z2hwdXQ9XCguKlwpL1wxL3AnDQorbGF0CV9fTEFUX18gMjAwIDE1MA0KKw0KKw0KK3Ry CVVEUCB0aHJvdWdocHV0IG92ZXIgSVB2NDogaG9zdCB0byBndWVzdA0KK2lwZXJmM3MJZ3Vlc3Qg MTAwMDENCisjIChkYXRhZ3JhbSBzaXplKSA9IChwYWNrZXQgc2l6ZSkgLSAyODogMjAgYnl0ZXMg b2YgSVB2NCBoZWFkZXIsIDggb2YgVURQIGhlYWRlcg0KKw0KK2lwZXJmMwlCVyBucyAxMjcuMC4w LjEgMTAwMDEgX19USU1FX18gX19PUFRTX18gLWIgMUcgLWwgMjI4DQorYncJX19CV19fIDAuMCAw LjANCitpcGVyZjMJQlcgbnMgMTI3LjAuMC4xIDEwMDAxIF9fVElNRV9fIF9fT1BUU19fIC1iIDJH IC1sIDU0OA0KK2J3CV9fQldfXyAwLjQgMC42DQoraXBlcmYzCUJXIG5zIDEyNy4wLjAuMSAxMDAw MSBfX1RJTUVfXyBfX09QVFNfXyAtYiAzRyAtbCAxMjUyDQorYncJX19CV19fIDAuOCAxLjINCitp cGVyZjMJQlcgbnMgMTI3LjAuMC4xIDEwMDAxIF9fVElNRV9fIF9fT1BUU19fIC1iIDRHIC1sIDE0 NzINCitidwlfX0JXX18gMS4wIDEuNQ0KK2lwZXJmMwlCVyBucyAxMjcuMC4wLjEgMTAwMDEgX19U SU1FX18gX19PUFRTX18gLWIgMTBHIC1sIDg5NzINCitidwlfX0JXX18gMy4wIDQuMA0KK2lwZXJm MwlCVyBucyAxMjcuMC4wLjEgMTAwMDEgX19USU1FX18gX19PUFRTX18gLWIgMjBHIC1sIDY1NDky DQorYncJX19CV19fIDMuMCA0LjANCisNCitpcGVyZjNrCWd1ZXN0DQorDQordGwJVURQIFJSIGxh dGVuY3kgb3ZlciBJUHY0OiBob3N0IHRvIGd1ZXN0DQorbGF0CS0NCitsYXQJLQ0KK2xhdAktDQor bGF0CS0NCitsYXQJLQ0KK2d1ZXN0Ygl1ZHBfcnIgLS1ub2xvZyAtUCAxMDAwMSAtQyAxMDAxMSAt NA0KK3NsZWVwCTENCituc291dAlMQVQgdWRwX3JyIC0tbm9sb2cgLVAgMTAwMDEgLUMgMTAwMTEg LTQgLWMgLUggMTI3LjAuMC4xIHwgc2VkIC1uICdzL150aHJvdWdocHV0PVwoLipcKS9cMS9wJw0K K2xhdAlfX0xBVF9fIDIwMCAxNTANCisNCit0ZQ0KZGlmZiAtLWdpdCBhL3Rlc3QvcnVuIGIvdGVz dC9ydW4NCmluZGV4IDU0N2E3MjkuLmYxODhkOGUgMTAwNzU1DQotLS0gYS90ZXN0L3J1bg0KKysr IGIvdGVzdC9ydW4NCkBAIC05Myw2ICs5Myw3IEBAIHJ1bigpIHsNCiAJdGVzdCBtZW1vcnkvcGFz c3QNCiAJdGVhcmRvd24gbWVtb3J5DQogDQorCVZIT1NUX1VTRVI9MA0KIAlzZXR1cCBwYXNzdA0K IAl0ZXN0IHBhc3N0L25kcA0KIAl0ZXN0IHBhc3N0L2RoY3ANCkBAIC0xMTUsNyArMTE2LDIyIEBA IHJ1bigpIHsNCiAJdGVzdCB0d29fZ3Vlc3RzL2Jhc2ljDQogCXRlYXJkb3duIHR3b19ndWVzdHMN CiANCisJVkhPU1RfVVNFUj0xDQorCXNldHVwIHBhc3N0X2luX25zDQorCXRlc3QgcGFzc3RfdnUv bmRwDQorCXRlc3QgcGFzc3RfdnVfaW5fbnMvZGhjcA0KKwl0ZXN0IHBhc3N0X3Z1X2luX25zL2lj bXANCisJdGVzdCBwYXNzdF92dV9pbl9ucy90Y3ANCisJdGVzdCBwYXNzdF92dV9pbl9ucy91ZHAN CisJdGVzdCBwYXNzdF92dV9pbl9ucy9zaHV0ZG93bg0KKwl0ZWFyZG93biBwYXNzdF9pbl9ucw0K Kw0KKwlzZXR1cCB0d29fZ3Vlc3RzDQorCXRlc3QgdHdvX2d1ZXN0c192dS9iYXNpYw0KKwl0ZWFy ZG93biB0d29fZ3Vlc3RzDQorDQogCVZBTEdSSU5EPTANCisJVkhPU1RfVVNFUj0wDQogCXNldHVw IHBhc3N0X2luX25zDQogCXRlc3QgcGFzc3QvbmRwDQogCXRlc3QgcGFzc3RfaW5fbnMvZGhjcA0K QEAgLTEyNiw2ICsxNDIsMTUgQEAgcnVuKCkgew0KIAl0ZXN0IHBhc3N0X2luX25zL3NodXRkb3du DQogCXRlYXJkb3duIHBhc3N0X2luX25zDQogDQorCVZIT1NUX1VTRVI9MQ0KKwlzZXR1cCBwYXNz dF9pbl9ucw0KKwl0ZXN0IHBhc3N0X3Z1L25kcA0KKwl0ZXN0IHBhc3N0X3Z1X2luX25zL2RoY3AN CisJdGVzdCBwZXJmL3Bhc3N0X3Z1X3RjcA0KKwl0ZXN0IHBlcmYvcGFzc3RfdnVfdWRwDQorCXRl c3QgcGFzc3RfdnVfaW5fbnMvc2h1dGRvd24NCisJdGVhcmRvd24gcGFzc3RfaW5fbnMNCisNCiAJ IyBUT0RPOiBNYWtlIHRob3NlIGZhc3RlciBieSBhdCBsZWFzdCBwcmUtaW5zdGFsbGluZyBnY2Mg YW5kIG1ha2Ugb24NCiAJIyBub24teDg2IGltYWdlcywgdGhlbiByZS1lbmFibGUuDQogc2tpcF9k aXN0cm8oKSB7DQpkaWZmIC0tZ2l0IGEvdGVzdC90d29fZ3Vlc3RzX3Z1IGIvdGVzdC90d29fZ3Vl c3RzX3Z1DQpuZXcgZmlsZSBtb2RlIDEyMDAwMA0KaW5kZXggMDAwMDAwMC4uMTQ0YjdjYQ0KLS0t IC9kZXYvbnVsbA0KKysrIGIvdGVzdC90d29fZ3Vlc3RzX3Z1DQpAQCAtMCwwICsxIEBADQordGVz dC90d29fZ3Vlc3RzDQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUNCi0tIA0KMi40My4wDQoN Cg==