From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=0.3 required=5.0 tests=ALL_TRUSTED,DKIM_ADSP_NXDOMAIN, NO_DNS_FOR_FROM,URIBL_SBL_A autolearn=no autolearn_force=no version=3.4.4 Received: from inbox.vuxu.org (inbox.vuxu.org [IPv6:::1]) by inbox.vuxu.org (Postfix) with ESMTP id 4F4BF23031 for ; Sat, 29 Jun 2024 13:22:50 +0200 (CEST) Content-Type: multipart/mixed; boundary="===============1782979968490259493==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_ffmpeg6_split?= To: ml@inbox.vuxu.org From: zlice Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Sat, 29 Jun 2024 13:22:50 +0200 List-Id: Message-Id: <20240629112250.4F4BF23031@inbox.vuxu.org> GitHub notification mails are now in MIME to allow UTF8. --===============1782979968490259493== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgemxpY2UgYWdhaW5zdCBtYXN0ZXIg b24gdGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL3psaWNl L3ZvaWQtcGFja2FnZXMgZmZtcGVnNi1zcGxpdApodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51 eC92b2lkLXBhY2thZ2VzL3B1bGwvNDM3NjEKCmZmbXBlZzYgc3BsaXQKW2NpIHNraXBdDQoNCg0K IyMjIyBUZXN0aW5nIHRoZSBjaGFuZ2VzDQoNCi0gSSB0ZXN0ZWQgdGhlIGNoYW5nZXMgaW4gdGhp cyBQUjogKipZRVMqKg0KDQptYWluIHRlc3RpbmcgaGFzIGJlZW4gdmFhcGkgaW4gRmlyZWZveCBO aWdodGx5IGFuZCBlbmMvZGVjIGluIFNob3RjdXQgb24gSW50ZWwgQTc3MA0KDQojIyMjIE5ldyBw YWNrYWdlDQoNCi0gVGhpcyBuZXcgcGFja2FnZSBjb25mb3JtcyB0byB0aGUgW3BhY2thZ2UgcmVx dWlyZW1lbnRzXShodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL2Js b2IvbWFzdGVyL0NPTlRSSUJVVElORy5tZCNwYWNrYWdlLXJlcXVpcmVtZW50cyk6ICoqWUVTKioN Cg0KIyMjIyBMb2NhbCBidWlsZCB0ZXN0aW5nDQoNCi0gSSBidWlsdCB0aGlzIFBSIGxvY2FsbHkg Zm9yIG15IG5hdGl2ZSBhcmNoaXRlY3R1cmUsICoqeDg2XzY0KioNCg0KIyMjIyBEaXNjdXNzaW9u DQoNCkNvbnRpbnVhdGlvbiBvZiBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBh Y2thZ2VzL3B1bGwvMzYzMTUNCg0KYGxpYmF2cmVzYW1wbGVgIGlzIGRlcHJlY2F0ZWQsIGJ1dCBt YXJrZWQgYXMgYSBkZXBlbmRlbmN5IHdoZW4gdHJ5aW5nIHRvIGJ1aWxkIG90aGVyIHBhY2thZ2Vz IGFuZCBpbnN0YWxsIGBmZm1wZWdgKDYpLiBJIHRoaW5rIHRoZSByaWdodCB3YXkgdG8gaGFuZGxl IHRoaXMgaXMgbWFrZSBhIG1ldGEgcGFja2FnZSBhbmQgdGhlIGFkZCB0byByZW1vdmFscz8NCg0K DQojIyMjIyBDb21taXQgbmFtaW5nIC8gbWlzYw0KDQp+fkNvbW1pdHMgYXJlICdkaXJ0eScgcmln aHQgbm93LCBydW5uaW5nIHdpdGggW2dzdHJlYW1lciAxLjIyLjEgdXBkYXRlc10oaHR0cHM6Ly9n aXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzQyODYxKSBhbmQgW0ludGVs IE9wZW5DTF0oaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxs LzQzMDg0KS4gVGhpcyB3aWxsIGFsc28gbWFrZSBbaW50ZWwgcGFja2FnZXMgcHJdKGh0dHBzOi8v Z2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC80MTEzMikgb2Jzb2xldGUu fn4gKHNlZSBSZXF1aXJlbWVudHMgYmVsb3cpDQoNCk1haW50YWluZXIgZm9yIHByZXZpb3VzIGZm bXBlZyg0KSB3YXMgb3JwaGFuZWQsIEkgY2FuIHB1dCBteSBuYW1lIGluIHRoZXJlIGlmIHRoYXQg bWF0dGVycywgdGhvdWdoIEkgZG9uJ3QgZXhhY3RseSBzZWUgbXlzZWxmIGtlZXBpbmcgdXAgb24g ZmZtcGVnLg0KDQp+flRoaXMgdXBkYXRlcyBRVDUgd2hpY2ggbG9va3MgbGlrZSBpdCBpcyB1c3Vh bGx5IGhvc3RlZCBieSBKb2hubnkuIE5vdCBzdXJlIGlmIHRoZXJlJ3MgYW55IHJlYXNvbiB0byBz dGF5IHRoZXJlIG9yIHRoZXNlIHNvdXJjZXMgYXJlIGZpbmUufn4gVXNpbmcgcXQ1LjE1LjExIG5v dywgcmV2YnVtcHMgYW5kIHNvbWUgcGF0Y2hlcy4NCg0KIyMjIyMgU1RJTEwgRkZNUEVHNA0KDQpU aGVzZSBhcmUgYSBtaXggb2YgZW11bGF0b3JzLCBnYW1lcyBhbmQvb3Igb2xkZXIgcGFja2FnZXMu DQoNCi0gfn5hdHRyYWN0fn4gKDIuNyBidWlsZHMpDQotIH5+YXVkYWNpdHkgKGh0dHBzOi8vZ2l0 aHViLmNvbS9hdWRhY2l0eS9hdWRhY2l0eS9pc3N1ZXMvMjMwNSBhbmQgaHR0cHM6Ly9zb3VyY2Vm b3JnZS5uZXQvcC9wb3J0bWVkaWEvd2lraS9wb3J0c21mLyBpcyAnYmV0YScpfn4gKHVwZGF0ZWQg dG8gMy54LCBjb21waWxlcyB3aXRoIGZmbXBlZzYpDQotIH5+Y2NleHRyYWN0b3J+fiAobWFzdGVy IHBhdGNoZXMpDQotIH5+dmljZSAoMy44IGNvbXBpbGVzLCBuZWVkcyBtYWtlZGVwZW5kcyBsaWJj dXJsLWRldmVsKX5+IHR5IHlvc2gNCi0ga29kaSAoZG9lc24ndCBidWlsZCkNCi0gbWx0IChvbmx5 IGRlcCBsZWZ0IGlzIGZsb3dibGFkZSAtIGZsb3dibGFkZSAyLjEyLjAuMiB3aXRoIG1sdDctcHl0 aG9uMyBjYW4gJ3JlbmRlcicgdmlkZW9zIHdpdGggY3B1IGFuZCBncHUgLSB+fmh0dHBzOi8vZ2l0 aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC80NzE5NX5+IGh0dHBzOi8vZ2l0 aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC81MDM4NSkNCi0gfn5zeW5maWcg KG1sdCl+fiAod29yayB3aXRoIG1sdDcsIGJ1bXAgc3luZmlnc3R1ZGlvKQ0KLSB0dmhlYWRlbmQg KGRvd25sb2FkIHBhZ2UgcmVjb21tZW5kcyB1c2luZyA0LjMgd2hpY2ggY29tcGlsZXMgZmluZSwg NC40IGV0YSBpcyBRMSAyMDI0KQ0KLSB+fnNzcn5+IChwYXRjaGVzKQ0KLSB+fnNwZWstYWx0ZXJu YXRpdmV+fiAocmVwbGFjZSB3aXRoIHNwZWsteCkNCi0gfn5wcHNzcHB+fiB+figxLjE3LjEgaXMg b3V0LCBidXQgdGhlcmUncyA1KyBkaXN0ZmlsZXMgdGhhdCBhcmUgYWxsIGdpdCBjb21taXRzKX5+ IChtaW5vciBwYXRjaCkNCi0gb2xpdmUgKGhhcyBiZWVuIGluIGFscGhhIHNpbmNlIDIwMjAsIHNl ZW1zIHRoZXkgZG8gbmlnaHRseSBidWlsZHMgYW5kIGFwcGltYWdlcykNCi0gbW9jDQotIG1lZGlh c3RyZWFtZXIgKGxpbnBob25lIGxpbmtzIGFyZSBkZWFkLCBjaGFuZ2VkIHRvIGdpdGh1YiBiZWxs YWRvbm5lLiB0aGVpciBzdHVmZiBuZXZlciB3b3JrZWQgZm9yIG1lIGJ1dCB0aGVyZSBhcmUgdXBk YXRlcyBpZiBzb21lb25lIHdhbnRzIHRvIGdpdmUgaXQgYSB0cnkpDQotIH5+bGliZXh0cmFjdG9y ICgxLjEzIGNvbXBpbGVzLCByZW1vdmUgZXhpdjIgcGF0Y2gpfn4gKGFzIHlvc2ggcG9pbnRlZCBv dXQsIDEuMTMganVzdCByZW1vdmVzIGZmbXBlZyBiaXRzKQ0KLSBpZGpjICgwLjkuOCBjb21waWxl cywgcmVtb3ZlIHB5dGhvbjMuMTAgcGF0Y2gsIG5lZWRzIG1ha2VkZXBlbmRzIGxpYmVidXIxMjgt ZGV2ZWwgYW5kIGxpYnNob3V0LWlkamMgMi40LjYgd2l0aCAnLXIxJyBmb3IgZGlzdGZpbGUgLSBo dHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL3B1bGwvNDg5NDQpDQot IH5+aGVkZ2V3YXJzfn4gKHBhdGNoIGZvciA2IGh0dHBzOi8vZ2l0aHViLmNvbS9oZWRnZXdhcnMv aHcvcHVsbC83NCkNCi0gfn5mZm1wZWd0aHVtYm5haWxlcn5+IChwYXRjaGVzIGZvciBtb3ZpZWRl Y29kZXIueHh4IGZpbGVzKQ0KLSB+fmZmbXBlZ3RodW1ic35+IChsYXRlc3QgY29tcGlsZXMpDQot IGRlYWRiZWVmICgxLjkuNiBtYXkgd29yayBidXQgcmVxdWlyZXMgbGliZGlzcGF0Y2ggZnJvbSBh cHBsZSkNCi0gfn5vbXhwbGF5ZXJ+fiAocGFja2FnZSByZW1vdmVkLCBkZXByZWNhdGVkIGluIGZh dm9yIG9mIHZsYykNCi0gcXRhdiAoZm9yayBoYXMgZmZtcGVnIDUgcGF0Y2ggLSBodHRwczovL2dp dGh1Yi5jb20vY21ndW8vUXRBVikNCi0gYHZsY2AgKHZsYzQgd2lsbCBzdXBwb3J0IGZmbXBlZzUs IHRoZXJlJ3MgYSBwYXRjaCB0byBidWlsZCAzLnggd2l0aCBmZm1wZWc1IGJ1dCBpdCB3aWxsIGxh Y2sgdmFhcGkpDQotIH5+YG9zZ2AgKE9wZW5TY2VuZUdyYXBoIHBsdXMgYHhpbmUtbGliYCkgKHBh dGNoZXMgZnJvbSBvc2cgaXNzdWUgYnVpbGQgd2l0aCBmZm1wZWc2LCBbZmZtcGVnNS5wYXRjaC50 eHRdKGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvZmlsZXMvMTQ3 NDMyNDYvZmZtcGVnNS5wYXRjaC50eHQpKX5+IHVzZWQgZmZtcGVnNiBwYXRjaA0KDQoNCg0KIyMj IyMgSEFWRSBOT1QgQlVJTFQgWUVUDQoNCi0gfn5vbXhwbGF5ZXIgKHJwaSBvbmx5PyBmZm1wZWc0 KX5+IChyZW1vdmVkKQ0KLSBrb2RpIChiaWcsIGJ1dCBmZm1wZWc0KQ0KDQoNCiMjIyMjIFVQREFU RUQgKGZvciBmZm1wZWc2KQ0KDQotIH5+YmxlbmRlcjogdXBkYXRlIHRvIDMuNS4xfn4gfn53aWxs IGJlIHJldmJ1bXAgd2l0aH5+IGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFj a2FnZXMvcHVsbC80Mzk5Mg0KLSB1bnBhcGVyOiB1cGRhdGUgdG8gNy4wLjAuDQotIGd1dmN2aWV3 OiB1cGRhdGUgdG8gMi4wLjguDQotIH5+cXQ1OiB1cGRhdGUgdG8gNS4xNS44fn4gdXBkYXRlZCBi eSBhbm90aGVyIFBSIHRvIDUuMTUuMTENCi0gfn5xdDUtd2ViZW5naW5lOiB1cGRhdGUgdG8gNS4x OC4xNX5+IHVwZGF0ZWQgYnkgYW5vdGhlciBQUiB0byA1LjE1LjE2IChzb21lIHBhdGNoaW5nIGZv ciBmZm1wZWcgYnVpbGQpDQotIH5+c2hpYm9rZW4yOiByZXZidW1wIGZvciBxdDUuMTUuOCAocGF0 Y2gpfn4gdXBkYXRlZCBieSBhbm90aGVyIFBSIHRvIDUuMTUuMTANCi0gfn5weXRob24zLXB5c2lk ZTI6IHVwZGF0ZSB0byA1LjE1LjggKHBhdGNoKX5+IHVwZGF0ZWQgYnkgYW5vdGhlciBQUiB0byA1 LjE1LjEwDQotIE5ldyBwYWNrYWdlOiBzcGV4LXggcmVwbGFjZXMgc3Blay1hbHRlcm5hdGl2ZSBm b3IgZmZtcGVnLTYuMA0KDQoNCiMjIyMjIFJlcXVpcmVtZW50cw0KDQotIH5+W2dzdHJlYW1lciAx LjIyLjJdKGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC80 Mjg2MSl+fiAtIGEgZmV3IHBhY2thZ2VzIHVzZSBmZm1wZWctZGV2ZWwgYW5kIHJlcXVpcmUgYSBy ZXZidW1wDQoNCi0gfn5bSW50ZWwgUGFja2FnZXNdKGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxp bnV4L3ZvaWQtcGFja2FnZXMvcHVsbC80MTEzMikgW0ludGVsIFBhY2thZ2VzIHYyXShodHRwczov L2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL3B1bGwvNDczMzApIC0gZmZtcGVn NCB1c2VzIGRpZmZlcmVudCBsaWJyYXJpZXMgdGhhbiA2IChsaWJtZnggLyBJbnRlbC1NZWRpYVNE SyB2cyBvbmx5IG9uZVZQTCB0aGF0IEludGVsIGlzIG1vdmluZyB0byksIGJvdGggYXJlIGluY2x1 ZGVkIGhlcmV+fi4gVXNpbmcgcmVwbGFjZW1lbnQgb25lVlBMIGZyb20gT0JTIHVwZGF0ZS4NCg0K LSB+fltzaG90Y3V0IDIzLjA1LjE0XShodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL3B1bGwvNDQyNjApfn4NCg0KLSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51 eC92b2lkLXBhY2thZ2VzL3B1bGwvNDQ3ODEgd2lsbCByZW1vdmUgZnJvbSB0aGlzIFBSCgpBIHBh dGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2thZ2Vz L3B1bGwvNDM3NjEucGF0Y2ggaXMgYXR0YWNoZWQ= --===============1782979968490259493== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-ffmpeg6-split-43761.patch" RnJvbSAxMDcwZjgzZGQ4N2JkNGIwNmFkOTkzZGI1NDkzZGJmZWY3Njg4NjYxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBTYXQs IDI5IEp1biAyMDI0IDA2OjU1OjE0IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMS84OV0gTmV3IHBh Y2thZ2U6IGZmbXBlZzYtNi4wLjEKCi0tLQogY29tbW9uL3NobGlicyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8ICAgOSArCiBzcmNwa2dzL2ZmbXBlZzYvcGF0Y2hlcy9xc3YucGF0Y2gg ICAgICAgICAgIHwgIDE1ICsrCiBzcmNwa2dzL2ZmbXBlZzYvcGF0Y2hlcy9xdDYtd2ViZW5naW5l LnBhdGNoIHwgIDM2ICsrKwogc3JjcGtncy9mZm1wZWc2L3RlbXBsYXRlICAgICAgICAgICAgICAg ICAgICB8IDIzOSArKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9mZnBsYXkgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQogc3JjcGtncy9saWJhdmNvZGVjNiAgICAgICAg ICAgICAgICAgICAgICAgICB8ICAgMSArCiBzcmNwa2dzL2xpYmF2ZGV2aWNlNiAgICAgICAgICAg ICAgICAgICAgICAgIHwgICAxICsKIHNyY3BrZ3MvbGliYXZmaWx0ZXI2ICAgICAgICAgICAgICAg ICAgICAgICAgfCAgIDEgKwogc3JjcGtncy9saWJhdmZvcm1hdDYgICAgICAgICAgICAgICAgICAg ICAgICB8ICAgMSArCiBzcmNwa2dzL2xpYmF2cmVzYW1wbGU2ICAgICAgICAgICAgICAgICAgICAg IHwgICAxICsKIHNyY3BrZ3MvbGliYXZ1dGlsNiAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg IDEgKwogc3JjcGtncy9saWJwb3N0cHJvYzYgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMSAr CiBzcmNwa2dzL2xpYnN3cmVzYW1wbGU2ICAgICAgICAgICAgICAgICAgICAgIHwgICAxICsKIHNy Y3BrZ3MvbGlic3dzY2FsZTYgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEgKwogMTQgZmls ZXMgY2hhbmdlZCwgMzA5IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2Rl IDEwMDY0NCBzcmNwa2dzL2ZmbXBlZzYvcGF0Y2hlcy9xc3YucGF0Y2gKIGNyZWF0ZSBtb2RlIDEw MDY0NCBzcmNwa2dzL2ZmbXBlZzYvcGF0Y2hlcy9xdDYtd2ViZW5naW5lLnBhdGNoCiBjcmVhdGUg bW9kZSAxMDA2NDQgc3JjcGtncy9mZm1wZWc2L3RlbXBsYXRlCiBjcmVhdGUgbW9kZSAxMjAwMDAg c3JjcGtncy9saWJhdmNvZGVjNgogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGliYXZkZXZp Y2U2CiBjcmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtncy9saWJhdmZpbHRlcjYKIGNyZWF0ZSBtb2Rl IDEyMDAwMCBzcmNwa2dzL2xpYmF2Zm9ybWF0NgogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3Mv bGliYXZyZXNhbXBsZTYKIGNyZWF0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL2xpYmF2dXRpbDYKIGNy ZWF0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL2xpYnBvc3Rwcm9jNgogY3JlYXRlIG1vZGUgMTIwMDAw IHNyY3BrZ3MvbGlic3dyZXNhbXBsZTYKIGNyZWF0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL2xpYnN3 c2NhbGU2CgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXgg ZGQwZTMzNDQxNDM1NGMuLmFjYzIwNzI2NmNhZmY0IDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJz CisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTM5Miw2ICszOTIsMTUgQEAgbGliaWQzdGFnLnNvLjAg bGliaWQzdGFnLTAuMTUuMWJfMQogbGliZ2lmLnNvLjcgZ2lmbGliLTUuMS4wXzEKIGxpYkltbGli Mi5zby4xIGltbGliMi0xLjQuMl8xCiBsaWJtcDNsYW1lLnNvLjAgbGFtZS0zLjk4LjJfMQorbGli bXAzbGFtZS5zby4wIGxhbWUtMy45OC4yXzEKK2xpYmF2ZGV2aWNlLnNvLjYwIGxpYmF2ZGV2aWNl Ni02LjBfMQorbGliYXZmb3JtYXQuc28uNjAgbGliYXZmb3JtYXQ2LTYuMF8xCitsaWJzd3NjYWxl LnNvLjcgbGlic3dzY2FsZTYtNi4wXzEKK2xpYnN3cmVzYW1wbGUuc28uNCBsaWJzd3Jlc2FtcGxl Ni02LjBfMQorbGlicG9zdHByb2Muc28uNTcgbGlicG9zdHByb2M2LTYuMF8xCitsaWJhdmNvZGVj LnNvLjYwIGxpYmF2Y29kZWM2LTYuMF8xCitsaWJhdnV0aWwuc28uNTggbGliYXZ1dGlsNi02LjBf MQorbGliYXZmaWx0ZXIuc28uOSBsaWJhdmZpbHRlcjYtNi4wXzEKIGxpYmF2ZGV2aWNlLnNvLjU4 IGxpYmF2ZGV2aWNlLTQuMF8xCiBsaWJhdmZvcm1hdC5zby41OCBsaWJhdmZvcm1hdC00LjBfMQog bGlic3dzY2FsZS5zby41IGxpYnN3c2NhbGUtNC4wXzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZmZt cGVnNi9wYXRjaGVzL3Fzdi5wYXRjaCBiL3NyY3BrZ3MvZmZtcGVnNi9wYXRjaGVzL3Fzdi5wYXRj aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uOTRlZjY4ZjU2ODNm M2EKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2ZmbXBlZzYvcGF0Y2hlcy9xc3YucGF0Y2gK QEAgLTAsMCArMSwxNSBAQAorZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvcXN2ZGVjLmMgYi9saWJh dmNvZGVjL3FzdmRlYy5jCitpbmRleCBkYTcwMGYyNWU5Li5iNTAxOTY0MDg5IDEwMDY0NAorLS0t IGEvbGliYXZjb2RlYy9xc3ZkZWMuYworKysrIGIvbGliYXZjb2RlYy9xc3ZkZWMuYworQEAgLTEw NzYsNiArMTA3Niw5IEBAICBzdGF0aWMgaW50IHFzdl9kZWNvZGVfZnJhbWUoQVZDb2RlY0NvbnRl eHQgKmF2Y3R4LCBBVkZyYW1lICpmcmFtZSwKKyAKKyAgICAgICAgIHJldCA9IHFzdl9wcm9jZXNz X2RhdGEoYXZjdHgsICZzLT5xc3YsIGZyYW1lLCBnb3RfZnJhbWUsICZzLT5idWZmZXJfcGt0KTsK KyAgICAgICAgIGlmIChyZXQgPCAwKXsKKysgICAgICAgICAgICBpZiAocmV0ID09IEFWRVJST1Io RUFHQUlOKSkKKysgICAgICAgICAgICAgICAgcmV0ID0gMDsKKysKKyAgICAgICAgICAgICAvKiBE cm9wIGJ1ZmZlcl9wa3Qgd2hlbiBmYWlsZWQgdG8gZGVjb2RlIHRoZSBwYWNrZXQuIE90aGVyd2lz ZSwKKyAgICAgICAgICAgICAgICB0aGUgZGVjb2RlciB3aWxsIGtlZXAgZGVjb2RpbmcgdGhlIGZh aWx1cmUgcGFja2V0LiAqLworICAgICAgICAgICAgIGF2X3BhY2tldF91bnJlZigmcy0+YnVmZmVy X3BrdCk7CisKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZmZtcGVnNi9wYXRjaGVzL3F0Ni13ZWJlbmdp bmUucGF0Y2ggYi9zcmNwa2dzL2ZmbXBlZzYvcGF0Y2hlcy9xdDYtd2ViZW5naW5lLnBhdGNoCm5l dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi5jMGIzOTdiYTg0OTQzOAot LS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZmZtcGVnNi9wYXRjaGVzL3F0Ni13ZWJlbmdpbmUu cGF0Y2gKQEAgLTAsMCArMSwzNiBAQAoraHR0cHM6Ly9hdXIuYXJjaGxpbnV4Lm9yZy9jZ2l0L2F1 ci5naXQvdHJlZS8wNDAtZmZtcGVnLWFkZC1hdl9zdHJlYW1fZ2V0X2ZpcnN0X2R0cy1mb3ItY2hy b21pdW0ucGF0Y2g/aD1mZm1wZWctaW50ZWwtZnVsbC1naXQKK2RpZmYgLS1naXQgYS9saWJhdmZv cm1hdC9hdmZvcm1hdC5oIGIvbGliYXZmb3JtYXQvYXZmb3JtYXQuaAoraW5kZXggY2Q3YjBkOTQx Yy4uYjRhNmRjZTg4NSAxMDA2NDQKKy0tLSBhL2xpYmF2Zm9ybWF0L2F2Zm9ybWF0LmgKKysrKyBi L2xpYmF2Zm9ybWF0L2F2Zm9ybWF0LmgKK0BAIC0xMDI1LDYgKzEwMjUsMTAgQEAKKworICNkZWZp bmUgQVZfUFJPR1JBTV9SVU5OSU5HIDEKKworKy8vIENocm9taXVtOiBXZSB1c2UgdGhlIGludGVy bmFsIGZpZWxkIGZpcnN0X2R0cyB2dnYKKytpbnQ2NF90ICAgIGF2X3N0cmVhbV9nZXRfZmlyc3Rf ZHRzKGNvbnN0IEFWU3RyZWFtICpzdCk7CisrLy8gQ2hyb21pdW06IFdlIHVzZSB0aGUgaW50ZXJu YWwgZmllbGQgZmlyc3RfZHRzIF5eXgorKworIC8qKgorICAqIE5ldyBmaWVsZHMgY2FuIGJlIGFk ZGVkIHRvIHRoZSBlbmQgd2l0aCBtaW5vciB2ZXJzaW9uIGJ1bXBzLgorICAqIFJlbW92YWwsIHJl b3JkZXJpbmcgYW5kIGNoYW5nZXMgdG8gZXhpc3RpbmcgZmllbGRzIHJlcXVpcmUgYSBtYWpvcgor CitkaWZmIC0tZ2l0IGEvbGliYXZmb3JtYXQvdXRpbHMuYyBiL2xpYmF2Zm9ybWF0L3V0aWxzLmMK K2luZGV4IGRlNzU4MGMzMmQuLjBlZjBmZTUzMGUgMTAwNjQ0CistLS0gYS9saWJhdmZvcm1hdC91 dGlscy5jCisrKysgYi9saWJhdmZvcm1hdC91dGlscy5jCitAQCAtMTUyLDYgKzE1MiwxMyBAQAor ICAgICByZXR1cm4gQVZfQ09ERUNfSURfTk9ORTsKKyB9CisKKysvLyBDaHJvbWl1bTogV2UgdXNl IHRoZSBpbnRlcm5hbCBmaWVsZCBmaXJzdF9kdHMgdnZ2CisraW50NjRfdCBhdl9zdHJlYW1fZ2V0 X2ZpcnN0X2R0cyhjb25zdCBBVlN0cmVhbSAqc3QpCisreworKyAgcmV0dXJuIGNmZnN0cmVhbShz dCktPmZpcnN0X2R0czsKKyt9CisrLy8gQ2hyb21pdW06IFdlIHVzZSB0aGUgaW50ZXJuYWwgZmll bGQgZmlyc3RfZHRzIF5eXgorKworIGVudW0gQVZDb2RlY0lEIGZmX2dldF9wY21fY29kZWNfaWQo aW50IGJwcywgaW50IGZsdCwgaW50IGJlLCBpbnQgc2ZsYWdzKQorIHsKKyAgICAgaWYgKGJwcyA8 PSAwIHx8IGJwcyA+IDY0KQorCmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZmbXBlZzYvdGVtcGxhdGUg Yi9zcmNwa2dzL2ZmbXBlZzYvdGVtcGxhdGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw MDAwMDAwMDAwMDAuLjA1MGIxMDMzNDlmNjU1Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9m Zm1wZWc2L3RlbXBsYXRlCkBAIC0wLDAgKzEsMjM5IEBACisjIFRlbXBsYXRlIGZpbGUgZm9yICdm Zm1wZWc2JworIyBhdWRhY2l0eSBhbHNvIG5lZWRzIHRvIGJlIGJ1bXBlZCB3aGVuIGEgbmV3IGZm bXBlZyB2ZXJzaW9uIGJ1bXBzIGxpYmF2Zm9ybWF0J3Mgc29uYW1lIQorcGtnbmFtZT1mZm1wZWc2 Cit2ZXJzaW9uPTYuMC4xCityZXZpc2lvbj0xCitzaG9ydF9kZXNjPSJEZWNvZGluZywgZW5jb2Rp bmcgYW5kIHN0cmVhbWluZyBzb2Z0d2FyZSIKK21haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5A dm9pZGxpbnV4Lm9yZz4iCitsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgoraG9tZXBhZ2U9Imh0 dHBzOi8vd3d3LmZmbXBlZy5vcmciCitjaGFuZ2Vsb2c9Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJj b250ZW50LmNvbS9GRm1wZWcvRkZtcGVnL21hc3Rlci9DaGFuZ2Vsb2ciCitkaXN0ZmlsZXM9Imh0 dHBzOi8vd3d3LmZmbXBlZy5vcmcvcmVsZWFzZXMvZmZtcGVnLSR7dmVyc2lvbn0udGFyLnh6Igor Y2hlY2tzdW09OWIxNmI4NzMxZDc4ZTU5NmI0YmUwZDcyMDQyOGNhNDJkZjY0MmJiMmQ3ODM0Mjg4 MWZmN2Y1YmMyOWZjOTYyMworCitob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgcGVybCIKK21h a2VkZXBlbmRzPSJ6bGliLWRldmVsIGJ6aXAyLWRldmVsIGZyZWV0eXBlLWRldmVsIGFsc2EtbGli LWRldmVsIGxpYlhmaXhlcy1kZXZlbAorIGxpYlhleHQtZGV2ZWwgbGliWHZNQy1kZXZlbCBsaWJ4 Y2ItZGV2ZWwgbGFtZS1kZXZlbCBsaWJ0aGVvcmEtZGV2ZWwKKyBsaWJ2b3JiaXMtZGV2ZWwgeDI2 NC1kZXZlbCB4dmlkY29yZS1kZXZlbCBqYWNrLWRldmVsIFNETDItZGV2ZWwKKyBsaWJjZGlvLXBh cmFub2lhLWRldmVsIGxpYnJ0bXAtZGV2ZWwgbGlibW9kcGx1Zy1kZXZlbCBnbnV0bHMtZGV2ZWwK KyBzcGVleC1kZXZlbCBjZWx0LWRldmVsIGhhcmZidXp6LWRldmVsIGxpYmFzcy1kZXZlbCBvcHVz LWRldmVsIG9jbC1pY2QtZGV2ZWwKKyBsaWJiczJiLWRldmVsIGxpYnZpZHN0YWItZGV2ZWwgdm1h Zi1kZXZlbCBsaWJibHVyYXktZGV2ZWwKKyAkKHZvcHRfaWYgcHVsc2VhdWRpbyBwdWxzZWF1ZGlv LWRldmVsKQorICQodm9wdF9pZiB2YWFwaSBsaWJ2YS1kZXZlbCkgJCh2b3B0X2lmIHZkcGF1IGxp YnZkcGF1LWRldmVsKQorICQodm9wdF9pZiB4MjY1IHgyNjUtZGV2ZWwpICQodm9wdF9pZiB2NGwy IHY0bC11dGlscy1kZXZlbCkKKyAkKHZvcHRfaWYgZmRrX2FhYyBmZGstYWFjLWRldmVsKSAkKHZv cHRfaWYgdnB4IGxpYnZweC1kZXZlbCkKKyAkKHZvcHRfaWYgYW9tIGxpYmFvbS1kZXZlbCkgJCh2 b3B0X2lmIHNuZGlvIHNuZGlvLWRldmVsKQorICQodm9wdF9pZiBkYXYxZCBsaWJkYXYxZC1kZXZl bCkgJCh2b3B0X2lmIHppbWcgemltZy1kZXZlbCkKKyAkKHZvcHRfaWYgd2VicCBsaWJ3ZWJwLWRl dmVsKSAkKHZvcHRfaWYgc29mYSBsaWJteXNvZmEtZGV2ZWwpCisgJCh2b3B0X2lmIGRybSBsaWJk cm0tZGV2ZWwpICQodm9wdF9pZiBzdnRhdjEgbGlic3Z0LWF2MS1kZXZlbCkKKyAkKHZvcHRfaWYg c3J0IHNydC1kZXZlbCkgJCh2b3B0X2lmIHJpc3QgbGlicmlzdC1kZXZlbCkKKyAkKHZvcHRfaWYg dnVsa2FuICd2dWxrYW4tbG9hZGVyLWRldmVsJykKKyAkKHZvcHRfaWYgb25ldnBsICdvbmVWUEwg b25lVlBMLWRldmVsJykKKyAkKHZvcHRfaWYgbnZlbmMgbnYtY29kZWMtaGVhZGVycykgJCh2b3B0 X2lmIG52ZGVjIG52LWNvZGVjLWhlYWRlcnMpIgorZGVwZW5kcz0iZmZwbGF5Pj0ke3ZlcnNpb259 XyR7cmV2aXNpb259IgorCitidWlsZF9vcHRpb25zPSJ4MjY1IHY0bDIgdmFhcGkgdmRwYXUgdnB4 IGZka19hYWMgYW9tIG52ZW5jIHNuZGlvIHB1bHNlYXVkaW8KKyBkYXYxZCB6aW1nIHdlYnAgc29m YSB2dWxrYW4gZHJtIHN2dGF2MSBzcnQgcmlzdCBudmRlYyBvbmV2cGwiCitidWlsZF9vcHRpb25z X2RlZmF1bHQ9IngyNjUgdjRsMiB2cHggYW9tIHNuZGlvIHB1bHNlYXVkaW8gZGF2MWQgd2VicCB2 dWxrYW4gZHJtIHNydCByaXN0IgorZGVzY19vcHRpb25fc3J0PSJFbmFibGUgc3VwcG9ydCBmb3Ig U1JUIChTZWN1cmUsIFJlbGlhYmxlLCBUcmFuc3BvcnQpIgorZGVzY19vcHRpb25fcmlzdD0iRW5h YmxlIHN1cHBvcnQgZm9yIFJJU1QgKFJlbGlhYmxlIEludGVybmV0IFN0cmVhbSBUcmFuc3BvcnQp IgorZGVzY19vcHRpb25fc29mYT0iRW5hYmxlIHN1cHBvcnQgZm9yIEFFUyBTT0ZBIgorZGVzY19v cHRpb25fd2VicD0iRW5hYmxlIHN1cHBvcnQgZm9yIFdlYlAiCisKK2Nhc2UgIiRYQlBTX1RBUkdF VF9NQUNISU5FIiBpbgorCWk2ODYqKQorCQlidWlsZF9vcHRpb25zX2RlZmF1bHQrPSIgdmFhcGkg dmRwYXUgbnZlbmMgbnZkZWMiCisJCWhvc3RtYWtlZGVwZW5kcys9IiBuYXNtIgorCQk7OworCXg4 Nl82NCopCisJCWhvc3RtYWtlZGVwZW5kcys9IiBuYXNtIgorCQlidWlsZF9vcHRpb25zX2RlZmF1 bHQrPSIgdmFhcGkgdmRwYXUgbnZlbmMgbnZkZWMgb25ldnBsIgorCQk7OworCXBwYzY0KikgYnVp bGRfb3B0aW9uc19kZWZhdWx0Kz0iIHZhYXBpIHZkcGF1Ijs7CisJbWlwcyopIENGTEFHUz0iLW1u YW49bGVnYWN5Ijs7Citlc2FjCisKK2lmIFsgIiRYQlBTX1RBUkdFVF9XT1JEU0laRSIgIT0gIjMy IiBdOyB0aGVuCisJYnVpbGRfb3B0aW9uc19kZWZhdWx0Kz0iIHN2dGF2MSIKK2ZpCisKK19hcHBs eV9wYXRjaCgpIHsKKwlsb2NhbCBhcmdzPSIkMSIgcG5hbWU9IiQoYmFzZW5hbWUgJDIpIgorCisJ aWYgWyAhIC1mICIuJHtwbmFtZX1fZG9uZSIgXTsgdGhlbgorCQlwYXRjaCAtTiAkYXJncyAtaSAk MgorCQl0b3VjaCAuJHtwbmFtZX1fZG9uZQorCWZpCit9CisKK3Bvc3RfcGF0Y2goKSB7CisJY2Fz ZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiIGluCisJCXBwYzY0bGUqKSA7OworCQlwcGMqKSBfYXBw bHlfcGF0Y2ggLXAxICR7RklMRVNESVJ9L2FsdGl2ZWMucGF0Y2ggOzsKKwllc2FjCit9CisKK2Rv X2NvbmZpZ3VyZSgpIHsKKwkjIEZpeCBnY2Mgb24geDg2XzY0LW11c2wgb25seQorCWlmIFsgIiRY QlBTX1RBUkdFVF9NQUNISU5FIiA9ICJ4ODZfNjQtbXVzbCIgXTsgdGhlbgorCQl2c2VkIC1pIGNv bmZpZ3VyZSAtZSAicztfY2ZsYWdzX3NwZWVkPSctTzMnO19jZmxhZ3Nfc3BlZWQ9Jy1PMic7Igor CWZpCisKKwlpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KKwkJY2FzZSAiJFhCUFNfVEFSR0VU X01BQ0hJTkUiIGluCisJCQlhcm0qKSBfYXJjaD0iYXJtIjs7CisJCQlhYXJjaDY0KikgX2FyY2g9 ImFhcmNoNjQiOzsKKwkJCW1pcHMqKSBfYXJjaD0ibWlwcyI7OworCQkJcHBjNjQqKSBfYXJjaD0i cHBjNjQiOzsKKwkJCXBwYyopIF9hcmNoPSJwcGMiOzsKKwkJCSopIF9hcmNoPSIke1hCUFNfVEFS R0VUX01BQ0hJTkUlJS1tdXNsfSI7OworCQllc2FjCisKKwkJX2FyZ3MrPSIgLS1lbmFibGUtY3Jv c3MtY29tcGlsZQorCQkJLS1zeXNyb290PSRYQlBTX0NST1NTX0JBU0UKKwkJCS0tY3Jvc3MtcHJl Zml4PSR7WEJQU19DUk9TU19UUklQTEVUfS0KKwkJCS0tdGFyZ2V0LW9zPWxpbnV4IC0tYXJjaD0k e19hcmNofSIKKwlmaQorCisJY2FzZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiIGluCisJCXBwY3xw cGMtbXVzbCkgX2FyZ3MrPSIgLS1kaXNhYmxlLWFsdGl2ZWMiOzsKKwllc2FjCisKKwlpZiBbICIk WEJQU19UQVJHRVRfTk9fQVRPTUlDOCIgXTsgdGhlbgorCQlfYXJncys9IiAtLWV4dHJhLWxpYnM9 LWxhdG9taWMiCisJZmkKKworCS4vY29uZmlndXJlIC0tcHJlZml4PS91c3IgLS1kaXNhYmxlLWRl YnVnIC0tZW5hYmxlLWdwbCAtLWVuYWJsZS1nbnV0bHMgXAorCQktLWRpc2FibGUtc3RyaXBwaW5n IFwKKwkJLS1lbmFibGUtbGliY2RpbyAtLWVuYWJsZS12ZXJzaW9uMyAtLWVuYWJsZS1ydW50aW1l LWNwdWRldGVjdCBcCisJCS0tZW5hYmxlLWxpYm1wM2xhbWUgLS1lbmFibGUtbGlidm9yYmlzIC0t ZW5hYmxlLWxpYnh2aWQgXAorCQktLWVuYWJsZS1saWJ4MjY0ICQodm9wdF9lbmFibGUgdnB4IGxp YnZweCkgLS1lbmFibGUtbGlidGhlb3JhIFwKKwkJLS1lbmFibGUtc2hhcmVkIC0tZW5hYmxlLXN0 YXRpYyAtLWVuYWJsZS1saWJ4Y2IgXAorCQkkKHZvcHRfZW5hYmxlIHB1bHNlYXVkaW8gbGlicHVs c2UpIC0tZW5hYmxlLWxpYmZyZWV0eXBlIC0tZW5hYmxlLWxpYm1vZHBsdWcgXAorCQktLWVuYWJs ZS1saWJzcGVleCAtLWVuYWJsZS1saWJjZWx0IC0tZW5hYmxlLWxpYmFzcyBcCisJCS0tZW5hYmxl LWxpYm9wdXMgLS1lbmFibGUtbGlicnRtcCAtLWVuYWJsZS1saWJqYWNrIFwKKwkJJCh2b3B0X2lm IGZka19hYWMgJy0tZW5hYmxlLW5vbmZyZWUgLS1lbmFibGUtbGliZmRrLWFhYycpIFwKKwkJLS1k aXNhYmxlLWxpYm9wZW5jb3JlX2Ftcm5iIC0tZGlzYWJsZS1saWJvcGVuY29yZV9hbXJ3YiBcCisJ CS0tZGlzYWJsZS1saWJvcGVuanBlZyAtLWVuYWJsZS1saWJibHVyYXkgXAorCQktLWVuYWJsZS1w b3N0cHJvYyAtLWVuYWJsZS1vcGVuY2wgLS1lbmFibGUtbGlidm1hZiAke19hcmdzfSBcCisJCSQo dm9wdF9lbmFibGUgeDI2NSBsaWJ4MjY1KSBcCisJCSQodm9wdF9lbmFibGUgdjRsMiBsaWJ2NGwy KSBcCisJCSQodm9wdF9lbmFibGUgYW9tIGxpYmFvbSkgJCh2b3B0X2VuYWJsZSB2YWFwaSkgJCh2 b3B0X2VuYWJsZSB2ZHBhdSkgXAorCQktLWVuYWJsZS1saWJiczJiIC0tZW5hYmxlLWxpYnZpZHN0 YWIgXAorCQkkKHZvcHRfZW5hYmxlIGRhdjFkIGxpYmRhdjFkKSBcCisJCSQodm9wdF9lbmFibGUg emltZyBsaWJ6aW1nKSBcCisJCSQodm9wdF9lbmFibGUgd2VicCBsaWJ3ZWJwKSBcCisJCSQodm9w dF9lbmFibGUgc29mYSBsaWJteXNvZmEpIFwKKwkJJCh2b3B0X2VuYWJsZSB2dWxrYW4pIFwKKwkJ JCh2b3B0X2VuYWJsZSBvbmV2cGwgbGlidnBsKSBcCisJCSQodm9wdF9lbmFibGUgZHJtIGxpYmRy bSkgXAorCQkkKHZvcHRfZW5hYmxlIHN2dGF2MSBsaWJzdnRhdjEpIFwKKwkJJCh2b3B0X2VuYWJs ZSBzcnQgbGlic3J0KSBcCisJCSQodm9wdF9lbmFibGUgcmlzdCBsaWJyaXN0KSBcCisJCSQodm9w dF9lbmFibGUgbnZlbmMgbnZlbmMpIFwKKwkJJCh2b3B0X2VuYWJsZSBudmRlYyBudmRlYykKK30K KworZG9fYnVpbGQoKSB7CisJbWFrZSAke21ha2Vqb2JzfQorCW1ha2UgZG9jL2Zme21wZWcscGxh eX0uMQorfQorCitkb19pbnN0YWxsKCkgeworCW1ha2UgREVTVERJUj0ke0RFU1RESVJ9IGluc3Rh bGwgaW5zdGFsbC1tYW4KK30KKworbGliYXZjb2RlYzZfcGFja2FnZSgpIHsKKwlzaG9ydF9kZXNj PSJGRm1wZWcgY29kZWMgbGlicmFyeSIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgInVzci9s aWIvbGliYXZjb2RlYy5zby4qIgorCX0KK30KKworbGliYXZkZXZpY2U2X3BhY2thZ2UoKSB7CisJ c2hvcnRfZGVzYz0iRkZtcGVnIGRldmljZSBoYW5kbGluZyBsaWJyYXJ5IgorCXBrZ19pbnN0YWxs KCkgeworCQl2bW92ZSAidXNyL2xpYi9saWJhdmRldmljZS5zby4qIgorCX0KK30KKworbGliYXZy ZXNhbXBsZTZfcGFja2FnZSgpIHsKKwlzaG9ydF9kZXNjPSJQYWNrYWdlIGRlcHJlY2F0ZWQsIHJl bW92YWwgbmVlZGVkIgorCWJ1aWxkX3N0eWxlPW1ldGEKK30KKworbGliYXZmb3JtYXQ2X3BhY2th Z2UoKSB7CisJc2hvcnRfZGVzYz0iRkZtcGVnIGZpbGUgZm9ybWF0IGxpYnJhcnkiCisJcGtnX2lu c3RhbGwoKSB7CisJCXZtb3ZlICJ1c3IvbGliL2xpYmF2Zm9ybWF0LnNvLioiCisJfQorfQorCits aWJhdnV0aWw2X3BhY2thZ2UoKSB7CisJc2hvcnRfZGVzYz0iRkZtcGVnIHV0aWxpdHkgbGlicmFy eSIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgInVzci9saWIvbGliYXZ1dGlsLnNvLioiCisJ fQorfQorCitsaWJhdmZpbHRlcjZfcGFja2FnZSgpIHsKKwlzaG9ydF9kZXNjPSJGRm1wZWcgYXVk aW8vdmlkZW8gZmlsdGVyIGxpYnJhcnkiCisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlICJ1c3Iv bGliL2xpYmF2ZmlsdGVyLnNvLioiCisJfQorfQorCitsaWJwb3N0cHJvYzZfcGFja2FnZSgpIHsK KwlzaG9ydF9kZXNjPSJGRm1wZWcgdmlkZW8gcG9zdHByb2Nlc3NpbmcgbGlicmFyeSIKKwlwa2df aW5zdGFsbCgpIHsKKwkJdm1vdmUgInVzci9saWIvbGlicG9zdHByb2Muc28uKiIKKwl9Cit9CisK K2xpYnN3c2NhbGU2X3BhY2thZ2UoKSB7CisJc2hvcnRfZGVzYz0iRkZtcGVnIHZpZGVvIHNjYWxp bmcgbGlicmFyeSIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgInVzci9saWIvbGlic3dzY2Fs ZS5zby4qIgorCX0KK30KKworbGlic3dyZXNhbXBsZTZfcGFja2FnZSgpIHsKKwlzaG9ydF9kZXNj PSJGRm1wZWcgdmlkZW8gcmVzYW1wbGluZyBsaWJyYXJ5IgorCXBrZ19pbnN0YWxsKCkgeworCQl2 bW92ZSAidXNyL2xpYi9saWJzd3Jlc2FtcGxlLnNvLioiCisJfQorfQorCitmZm1wZWc2LWRldmVs X3BhY2thZ2UoKSB7CisJZGVwZW5kcz0iCisJCWxpYmF2Y29kZWM2Pj0ke3ZlcnNpb259XyR7cmV2 aXNpb259CisJCWxpYmF2ZGV2aWNlNj49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufQorCQlsaWJhdmZv cm1hdDY+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KKwkJbGliYXZ1dGlsNj49JHt2ZXJzaW9ufV8k e3JldmlzaW9ufQorCQlsaWJhdmZpbHRlcjY+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KKwkJbGli cG9zdHByb2M2Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259CisJCWxpYnN3c2NhbGU2Pj0ke3ZlcnNp b259XyR7cmV2aXNpb259CisJCWxpYnN3cmVzYW1wbGU2Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259 IgorCXNob3J0X2Rlc2MrPSIgLSBkZXZlbG9wbWVudCBmaWxlcyIKKwljb25mbGljdHM9ImZmbXBl Zy1kZXZlbCIKKwlpZiBbICIkWEJQU19UQVJHRVRfTUFDSElORSIgPSAiaTY4NiIgXTsgdGhlbgor CQkjIC91c3IvYmluL3N0cmlwOiBlcnJvcjogdGhlIGlucHV0IGZpbGUgJy9kZXN0ZGlyLy9mZm1w ZWctZGV2ZWwtNC40LjQvdXNyL2xpYi9saWJhdmZpbHRlci5hKHZmX2F0YWRlbm9pc2UubyknIGhh cyBubyBzZWN0aW9ucworCQlub3N0cmlwX2ZpbGVzPSIvdXNyL2xpYi9saWJhdmZpbHRlci5hIgor CWZpCisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlIHVzci9pbmNsdWRlCisJCXZtb3ZlIHVzci9s aWIvcGtnY29uZmlnCisJCXZtb3ZlICJ1c3IvbGliLyouYSIKKwkJdm1vdmUgInVzci9saWIvKi5z byIKKwkJdm1vdmUgdXNyL3NoYXJlL2ZmbXBlZy9leGFtcGxlcworCQl2bW92ZSB1c3Ivc2hhcmUv bWFuL21hbjMKKwl9Cit9CisKK2ZmcGxheV9wYWNrYWdlKCkgeworCXNob3J0X2Rlc2M9IlNpbXBs ZSB2aWRlbyBwbGF5ZXIgdXNpbmcgRkZtcGVnIGFuZCBTREwyIgorCXBrZ19pbnN0YWxsKCkgewor CQl2bW92ZSB1c3IvYmluL2ZmcGxheQorCQl2bW92ZSAidXNyL3NoYXJlL21hbi9tYW4xL2ZmcGxh eSoiCisJfQorfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9mZnBsYXkgYi9zcmNwa2dzL2ZmcGxheQpp bmRleCBhOWYxZWVhMDkyZDVlOS4uY2NkZmM2YWEwZTg0ZWEgMTIwMDAwCi0tLSBhL3NyY3BrZ3Mv ZmZwbGF5CisrKyBiL3NyY3BrZ3MvZmZwbGF5CkBAIC0xICsxIEBACi1mZm1wZWcKXCBObyBuZXds aW5lIGF0IGVuZCBvZiBmaWxlCitmZm1wZWc2ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpk aWZmIC0tZ2l0IGEvc3JjcGtncy9saWJhdmNvZGVjNiBiL3NyY3BrZ3MvbGliYXZjb2RlYzYKbmV3 IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAwMDAuLmNjZGZjNmFhMGU4NGVhCi0t LSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9saWJhdmNvZGVjNgpAQCAtMCwwICsxIEBACitmZm1w ZWc2ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJh dmRldmljZTYgYi9zcmNwa2dzL2xpYmF2ZGV2aWNlNgpuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRl eCAwMDAwMDAwMDAwMDAwMC4uY2NkZmM2YWEwZTg0ZWEKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNw a2dzL2xpYmF2ZGV2aWNlNgpAQCAtMCwwICsxIEBACitmZm1wZWc2ClwgTm8gbmV3bGluZSBhdCBl bmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJhdmZpbHRlcjYgYi9zcmNwa2dzL2xp YmF2ZmlsdGVyNgpuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMDAwMC4uY2Nk ZmM2YWEwZTg0ZWEKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2xpYmF2ZmlsdGVyNgpAQCAt MCwwICsxIEBACitmZm1wZWc2ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9saWJhdmZvcm1hdDYgYi9zcmNwa2dzL2xpYmF2Zm9ybWF0NgpuZXcgZmlsZSBt b2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMDAwMC4uY2NkZmM2YWEwZTg0ZWEKLS0tIC9kZXYv bnVsbAorKysgYi9zcmNwa2dzL2xpYmF2Zm9ybWF0NgpAQCAtMCwwICsxIEBACitmZm1wZWc2Clwg Tm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJhdnJlc2Ft cGxlNiBiL3NyY3BrZ3MvbGliYXZyZXNhbXBsZTYKbmV3IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXgg MDAwMDAwMDAwMDAwMDAuLmNjZGZjNmFhMGU4NGVhCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtn cy9saWJhdnJlc2FtcGxlNgpAQCAtMCwwICsxIEBACitmZm1wZWc2ClwgTm8gbmV3bGluZSBhdCBl bmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJhdnV0aWw2IGIvc3JjcGtncy9saWJh dnV0aWw2Cm5ldyBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwMDAwLi5jY2RmYzZh YTBlODRlYQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbGliYXZ1dGlsNgpAQCAtMCwwICsx IEBACitmZm1wZWc2ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9saWJwb3N0cHJvYzYgYi9zcmNwa2dzL2xpYnBvc3Rwcm9jNgpuZXcgZmlsZSBtb2RlIDEy MDAwMAppbmRleCAwMDAwMDAwMDAwMDAwMC4uY2NkZmM2YWEwZTg0ZWEKLS0tIC9kZXYvbnVsbAor KysgYi9zcmNwa2dzL2xpYnBvc3Rwcm9jNgpAQCAtMCwwICsxIEBACitmZm1wZWc2ClwgTm8gbmV3 bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJzd3Jlc2FtcGxlNiBi L3NyY3BrZ3MvbGlic3dyZXNhbXBsZTYKbmV3IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAw MDAwMDAwMDAuLmNjZGZjNmFhMGU4NGVhCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9saWJz d3Jlc2FtcGxlNgpAQCAtMCwwICsxIEBACitmZm1wZWc2ClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg ZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJzd3NjYWxlNiBiL3NyY3BrZ3MvbGlic3dzY2Fs ZTYKbmV3IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAwMDAuLmNjZGZjNmFhMGU4 NGVhCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9saWJzd3NjYWxlNgpAQCAtMCwwICsxIEBA CitmZm1wZWc2ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQoKRnJvbSBjY2IzZWRlNWJjMzYw MjYyYjFhYzgzM2QxYzQwM2U3NjU3ZGRhYTFhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBTYXQsIDI5IEp1biAyMDI0IDA2OjUz OjIyIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMi84OV0gZmZtcGVnOiByZXZidW1wIGZvciBmZm1w ZWc2CgotLS0KIHNyY3BrZ3MvZmZtcGVnL3RlbXBsYXRlIHwgNzAgKysrKysrKysrKysrKysrKysr KystLS0tLS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAzNCBpbnNlcnRpb25zKCsp LCAzNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZmbXBlZy90ZW1wbGF0ZSBi L3NyY3BrZ3MvZmZtcGVnL3RlbXBsYXRlCmluZGV4IDkzNjE4Y2Q5Nzc1MzdlLi5lMmRmZGE2YzMx ZDk3OCAxMDA2NDQKLS0tIGEvc3JjcGtncy9mZm1wZWcvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9m Zm1wZWcvdGVtcGxhdGUKQEAgLTIsOCArMiw4IEBACiAjIGF1ZGFjaXR5IGFsc28gbmVlZHMgdG8g YmUgYnVtcGVkIHdoZW4gYSBuZXcgZmZtcGVnIHZlcnNpb24gYnVtcHMgbGliYXZmb3JtYXQncyBz b25hbWUhCiBwa2duYW1lPWZmbXBlZwogdmVyc2lvbj00LjQuNAotcmV2aXNpb249Nwotc2hvcnRf ZGVzYz0iRGVjb2RpbmcsIGVuY29kaW5nIGFuZCBzdHJlYW1pbmcgc29mdHdhcmUiCityZXZpc2lv bj04CitzaG9ydF9kZXNjPSJEZWNvZGluZywgZW5jb2RpbmcgYW5kIHN0cmVhbWluZyBzb2Z0d2Fy ZSAtIGZmbXBlZzQgbGlicmFyaWVzIG9ubHkiCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFu QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJo dHRwczovL3d3dy5mZm1wZWcub3JnIgpAQCAtMjcsMTMgKzI3LDE1IEBAIG1ha2VkZXBlbmRzPSJ6 bGliLWRldmVsIGJ6aXAyLWRldmVsIGZyZWV0eXBlLWRldmVsIGFsc2EtbGliLWRldmVsIGxpYlhm aXhlcy1kZXZlCiAgJCh2b3B0X2lmIHdlYnAgbGlid2VicC1kZXZlbCkgJCh2b3B0X2lmIHNvZmEg bGlibXlzb2ZhLWRldmVsKQogICQodm9wdF9pZiBkcm0gbGliZHJtLWRldmVsKSAkKHZvcHRfaWYg c3Z0YXYxIGxpYnN2dC1hdjEtZGV2ZWwpCiAgJCh2b3B0X2lmIHNydCBzcnQtZGV2ZWwpICQodm9w dF9pZiByaXN0IGxpYnJpc3QtZGV2ZWwpCi0gJCh2b3B0X2lmIHZ1bGthbiAndnVsa2FuLWxvYWRl ci1kZXZlbCcpCisgJCh2b3B0X2lmIHZ1bGthbiAndnVsa2FuLWxvYWRlciBWdWxrYW4tSGVhZGVy cycpCiAgJCh2b3B0X2lmIG52ZW5jIG52LWNvZGVjLWhlYWRlcnMpICQodm9wdF9pZiBudmRlYyBu di1jb2RlYy1oZWFkZXJzKSIKLWRlcGVuZHM9ImZmcGxheT49JHt2ZXJzaW9ufV8ke3JldmlzaW9u fSIKKyMgZmZtcGVnNiBwcm92aWRlcyBmZm1wZWcsIGZmcHJvYmUsIGZmcGxheSwgZXRjCitkZXBl bmRzPSJmZm1wZWc2IgogCiBidWlsZF9vcHRpb25zPSJ4MjY1IHY0bDIgdmFhcGkgdmRwYXUgdnB4 IGZka19hYWMgYW9tIG52ZW5jIHNuZGlvIHB1bHNlYXVkaW8KICBkYXYxZCB6aW1nIHdlYnAgc29m YSB2dWxrYW4gZHJtIHN2dGF2MSBzcnQgcmlzdCBudmRlYyIKIGJ1aWxkX29wdGlvbnNfZGVmYXVs dD0ieDI2NSB2NGwyIHZweCBhb20gc25kaW8gcHVsc2VhdWRpbyBkYXYxZCB3ZWJwIHZ1bGthbiBk cm0gc3J0IHJpc3QiCisKIGRlc2Nfb3B0aW9uX3NydD0iRW5hYmxlIHN1cHBvcnQgZm9yIFNSVCAo U2VjdXJlLCBSZWxpYWJsZSwgVHJhbnNwb3J0KSIKIGRlc2Nfb3B0aW9uX3Jpc3Q9IkVuYWJsZSBz dXBwb3J0IGZvciBSSVNUIChSZWxpYWJsZSBJbnRlcm5ldCBTdHJlYW0gVHJhbnNwb3J0KSIKIGRl c2Nfb3B0aW9uX3NvZmE9IkVuYWJsZSBzdXBwb3J0IGZvciBBRVMgU09GQSIKQEAgLTQxLDkgKzQz LDkgQEAgZGVzY19vcHRpb25fd2VicD0iRW5hYmxlIHN1cHBvcnQgZm9yIFdlYlAiCiAKIGNhc2Ug IiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgogCWk2ODYqfHg4Nl82NCopCi0JCWhvc3RtYWtlZGVw ZW5kcys9IiBuYXNtIgotCQlidWlsZF9vcHRpb25zX2RlZmF1bHQrPSIgdmFhcGkgdmRwYXUgbnZl bmMgbnZkZWMiCi0JCTs7CisJCQlob3N0bWFrZWRlcGVuZHMrPSIgbmFzbSIKKwkJCWJ1aWxkX29w dGlvbnNfZGVmYXVsdCs9IiB2YWFwaSB2ZHBhdSBudmVuYyBudmRlYyIKKwkJCTs7CiAJcHBjNjQq KSBidWlsZF9vcHRpb25zX2RlZmF1bHQrPSIgdmFhcGkgdmRwYXUiOzsKIAltaXBzKikgQ0ZMQUdT PSItbW5hbj1sZWdhY3kiOzsKIGVzYWMKQEAgLTUyLDYgKzU0LDEwIEBAIGlmIFsgIiRYQlBTX1RB UkdFVF9XT1JEU0laRSIgIT0gIjMyIiBdOyB0aGVuCiAJYnVpbGRfb3B0aW9uc19kZWZhdWx0Kz0i IHN2dGF2MSIKIGZpCiAKK2lmIFsgIiRYQlBTX1RBUkdFVF9OT19BVE9NSUM4IiBdOyB0aGVuCisJ bWFrZWRlcGVuZHMrPSIgbGliYXRvbWljLWRldmVsIgorZmkKKwogX2FwcGx5X3BhdGNoKCkgewog CWxvY2FsIGFyZ3M9IiQxIiBwbmFtZT0iJChiYXNlbmFtZSAkMikiCiAKQEAgLTExMiw3ICsxMTgs NyBAQCBkb19jb25maWd1cmUoKSB7CiAJCSQodm9wdF9pZiBmZGtfYWFjICctLWVuYWJsZS1ub25m cmVlIC0tZW5hYmxlLWxpYmZkay1hYWMnKSBcCiAJCS0tZGlzYWJsZS1saWJvcGVuY29yZV9hbXJu YiAtLWRpc2FibGUtbGlib3BlbmNvcmVfYW1yd2IgXAogCQktLWRpc2FibGUtbGlib3BlbmpwZWcg LS1lbmFibGUtbGliYmx1cmF5IFwKLQkJLS1lbmFibGUtcG9zdHByb2MgLS1lbmFibGUtb3BlbmNs IC0tZW5hYmxlLWxpYnZtYWYgJHtfYXJnc30gXAorCQktLWVuYWJsZS1wb3N0cHJvYyAtLWVuYWJs ZS1vcGVuY2wgJHtfYXJnc30gLS1lbmFibGUtbGlidm1hZiAke19hcmdzfSBcCiAJCSQodm9wdF9l bmFibGUgeDI2NSBsaWJ4MjY1KSBcCiAJCSQodm9wdF9lbmFibGUgdjRsMiBsaWJ2NGwyKSBcCiAJ CSQodm9wdF9lbmFibGUgYW9tIGxpYmFvbSkgJCh2b3B0X2VuYWJsZSB2YWFwaSkgJCh2b3B0X2Vu YWJsZSB2ZHBhdSkgXApAQCAtMTM3LDY1ICsxNDMsNjYgQEAgZG9fYnVpbGQoKSB7CiAKIGRvX2lu c3RhbGwoKSB7CiAJbWFrZSBERVNURElSPSR7REVTVERJUn0gaW5zdGFsbCBpbnN0YWxsLW1hbgor CXJtIC1yZiAke0RFU1RESVJ9L3Vzci9iaW4KIH0KIAotbGliYXZjb2RlY19wYWNrYWdlKCkgewor bGliYXZjb2RlYzRfcGFja2FnZSgpIHsKIAlzaG9ydF9kZXNjPSJGRm1wZWcgY29kZWMgbGlicmFy eSIKIAlwa2dfaW5zdGFsbCgpIHsKIAkJdm1vdmUgInVzci9saWIvbGliYXZjb2RlYy5zby4qIgog CX0KIH0KIAotbGliYXZkZXZpY2VfcGFja2FnZSgpIHsKK2xpYmF2ZGV2aWNlNF9wYWNrYWdlKCkg ewogCXNob3J0X2Rlc2M9IkZGbXBlZyBkZXZpY2UgaGFuZGxpbmcgbGlicmFyeSIKIAlwa2dfaW5z dGFsbCgpIHsKIAkJdm1vdmUgInVzci9saWIvbGliYXZkZXZpY2Uuc28uKiIKIAl9CiB9CiAKLWxp YmF2cmVzYW1wbGVfcGFja2FnZSgpIHsKK2xpYmF2cmVzYW1wbGU0X3BhY2thZ2UoKSB7CiAJc2hv cnRfZGVzYz0iRkZtcGVnIGF1ZGlvIHJlc2FtcGxpbmcgbGlicmFyeSIKIAlwa2dfaW5zdGFsbCgp IHsKIAkJdm1vdmUgInVzci9saWIvbGliYXZyZXNhbXBsZS5zby4qIgogCX0KIH0KIAotbGliYXZm b3JtYXRfcGFja2FnZSgpIHsKK2xpYmF2Zm9ybWF0NF9wYWNrYWdlKCkgewogCXNob3J0X2Rlc2M9 IkZGbXBlZyBmaWxlIGZvcm1hdCBsaWJyYXJ5IgogCXBrZ19pbnN0YWxsKCkgewogCQl2bW92ZSAi dXNyL2xpYi9saWJhdmZvcm1hdC5zby4qIgogCX0KIH0KIAotbGliYXZ1dGlsX3BhY2thZ2UoKSB7 CitsaWJhdnV0aWw0X3BhY2thZ2UoKSB7CiAJc2hvcnRfZGVzYz0iRkZtcGVnIHV0aWxpdHkgbGli cmFyeSIKIAlwa2dfaW5zdGFsbCgpIHsKIAkJdm1vdmUgInVzci9saWIvbGliYXZ1dGlsLnNvLioi CiAJfQogfQogCi1saWJhdmZpbHRlcl9wYWNrYWdlKCkgeworbGliYXZmaWx0ZXI0X3BhY2thZ2Uo KSB7CiAJc2hvcnRfZGVzYz0iRkZtcGVnIGF1ZGlvL3ZpZGVvIGZpbHRlciBsaWJyYXJ5IgogCXBr Z19pbnN0YWxsKCkgewogCQl2bW92ZSAidXNyL2xpYi9saWJhdmZpbHRlci5zby4qIgogCX0KIH0K IAotbGlicG9zdHByb2NfcGFja2FnZSgpIHsKK2xpYnBvc3Rwcm9jNF9wYWNrYWdlKCkgewogCXNo b3J0X2Rlc2M9IkZGbXBlZyB2aWRlbyBwb3N0cHJvY2Vzc2luZyBsaWJyYXJ5IgogCXBrZ19pbnN0 YWxsKCkgewogCQl2bW92ZSAidXNyL2xpYi9saWJwb3N0cHJvYy5zby4qIgogCX0KIH0KIAotbGli c3dzY2FsZV9wYWNrYWdlKCkgeworbGlic3dzY2FsZTRfcGFja2FnZSgpIHsKIAlzaG9ydF9kZXNj PSJGRm1wZWcgdmlkZW8gc2NhbGluZyBsaWJyYXJ5IgogCXBrZ19pbnN0YWxsKCkgewogCQl2bW92 ZSAidXNyL2xpYi9saWJzd3NjYWxlLnNvLioiCiAJfQogfQogCi1saWJzd3Jlc2FtcGxlX3BhY2th Z2UoKSB7CitsaWJzd3Jlc2FtcGxlNF9wYWNrYWdlKCkgewogCXNob3J0X2Rlc2M9IkZGbXBlZyB2 aWRlbyByZXNhbXBsaW5nIGxpYnJhcnkiCiAJcGtnX2luc3RhbGwoKSB7CiAJCXZtb3ZlICJ1c3Iv bGliL2xpYnN3cmVzYW1wbGUuc28uKiIKQEAgLTIwNCwyMiArMjExLDIxIEBAIGxpYnN3cmVzYW1w bGVfcGFja2FnZSgpIHsKIAogZmZtcGVnLWRldmVsX3BhY2thZ2UoKSB7CiAJZGVwZW5kcz0iCi0J CWxpYmF2Y29kZWM+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KLQkJbGliYXZkZXZpY2U+PSR7dmVy c2lvbn1fJHtyZXZpc2lvbn0KLQkJbGliYXZmb3JtYXQ+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0K LQkJbGliYXZ1dGlsPj0ke3ZlcnNpb259XyR7cmV2aXNpb259Ci0JCWxpYmF2ZmlsdGVyPj0ke3Zl cnNpb259XyR7cmV2aXNpb259Ci0JCWxpYnBvc3Rwcm9jPj0ke3ZlcnNpb259XyR7cmV2aXNpb259 Ci0JCWxpYnN3c2NhbGU+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KLQkJbGlic3dyZXNhbXBsZT49 JHt2ZXJzaW9ufV8ke3JldmlzaW9ufQotCQlsaWJhdnJlc2FtcGxlPj0ke3ZlcnNpb259XyR7cmV2 aXNpb259IgorCQlsaWJhdmNvZGVjND49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufQorCQlsaWJhdmRl dmljZTQ+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KKwkJbGliYXZmb3JtYXQ0Pj0ke3ZlcnNpb259 XyR7cmV2aXNpb259CisJCWxpYmF2dXRpbDQ+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KKwkJbGli YXZmaWx0ZXI0Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259CisJCWxpYnBvc3Rwcm9jND49JHt2ZXJz aW9ufV8ke3JldmlzaW9ufQorCQlsaWJzd3NjYWxlND49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufQor CQlsaWJzd3Jlc2FtcGxlND49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufQorCQlsaWJhdnJlc2FtcGxl ND49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKIAlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxvcG1lbnQg ZmlsZXMiCi0KKwljb25mbGljdHM9ImZmbXBlZzYtZGV2ZWwiCiAJaWYgWyAiJFhCUFNfVEFSR0VU X01BQ0hJTkUiID0gImk2ODYiIF07IHRoZW4KIAkJIyAvdXNyL2Jpbi9zdHJpcDogZXJyb3I6IHRo ZSBpbnB1dCBmaWxlICcvZGVzdGRpci8vZmZtcGVnLWRldmVsLTQuNC40L3Vzci9saWIvbGliYXZm aWx0ZXIuYSh2Zl9hdGFkZW5vaXNlLm8pJyBoYXMgbm8gc2VjdGlvbnMKIAkJbm9zdHJpcF9maWxl cz0iL3Vzci9saWIvbGliYXZmaWx0ZXIuYSIKIAlmaQotCiAJcGtnX2luc3RhbGwoKSB7CiAJCXZt b3ZlIHVzci9pbmNsdWRlCiAJCXZtb3ZlIHVzci9saWIvcGtnY29uZmlnCkBAIC0yMjksMTEgKzIz NSwzIEBAIGZmbXBlZy1kZXZlbF9wYWNrYWdlKCkgewogCQl2bW92ZSB1c3Ivc2hhcmUvbWFuL21h bjMKIAl9CiB9Ci0KLWZmcGxheV9wYWNrYWdlKCkgewotCXNob3J0X2Rlc2M9IlNpbXBsZSB2aWRl byBwbGF5ZXIgdXNpbmcgRkZtcGVnIGFuZCBTREwyIgotCXBrZ19pbnN0YWxsKCkgewotCQl2bW92 ZSB1c3IvYmluL2ZmcGxheQotCQl2bW92ZSAidXNyL3NoYXJlL21hbi9tYW4xL2ZmcGxheSoiCi0J fQotfQoKRnJvbSBkNDNlYmJjNTE5ODkxMGI3MDNlZDg2NDRiNjgxYTlhZmFlMzc1ZDM4IE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRl OiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ3IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMy84OV0g ZmZtcGVndGh1bWJuYWlsZXI6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogLi4uL2ZmbXBlZ3Ro dW1ibmFpbGVyL3BhdGNoZXMvZmZtcGVnNi5wYXRjaCAgIHwgMjAyICsrKysrKysrKysrKysrKysr Kwogc3JjcGtncy9mZm1wZWd0aHVtYm5haWxlci90ZW1wbGF0ZSAgICAgICAgICAgIHwgICA4ICst CiAyIGZpbGVzIGNoYW5nZWQsIDIwNiBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQogY3Jl YXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZmZtcGVndGh1bWJuYWlsZXIvcGF0Y2hlcy9mZm1wZWc2 LnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9mZm1wZWd0aHVtYm5haWxlci9wYXRjaGVzL2Zm bXBlZzYucGF0Y2ggYi9zcmNwa2dzL2ZmbXBlZ3RodW1ibmFpbGVyL3BhdGNoZXMvZmZtcGVnNi5w YXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uMzYzZmYzNWEy ODQxOWQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2ZmbXBlZ3RodW1ibmFpbGVyL3BhdGNo ZXMvZmZtcGVnNi5wYXRjaApAQCAtMCwwICsxLDIwMiBAQAorLS0tIGEvbGliZmZtcGVndGh1bWJu YWlsZXIvbW92aWVkZWNvZGVyLmNwcAkyMDE3LTExLTIxIDE0OjA2OjU3LjAwMDAwMDAwMCAtMDUw MAorKysrIGIvbGliZmZtcGVndGh1bWJuYWlsZXIvbW92aWVkZWNvZGVyLmNwcAkyMDIzLTA1LTA1 IDEzOjE0OjQ3Ljk0NjU2MDY2OCAtMDQwMAorQEAgLTQxLDExICs0MSw2IEBACisgbmFtZXNwYWNl IGZmbXBlZ3RodW1ibmFpbGVyCisgeworIAorLXN0cnVjdCBTaWxlbmNlTG9nTGV2ZWwKKy17Cist ICAgIFNpbGVuY2VMb2dMZXZlbCgpIHsgYXZfbG9nX3NldF9sZXZlbChBVl9MT0dfUVVJRVQpOyB9 CistfTsKKy0KKyBNb3ZpZURlY29kZXI6Ok1vdmllRGVjb2RlcihBVkZvcm1hdENvbnRleHQqIHBh dkNvbnRleHQpCisgOiBtX1ZpZGVvU3RyZWFtKC0xKQorICwgbV9wRm9ybWF0Q29udGV4dChwYXZD b250ZXh0KQorQEAgLTcwLDggKzY1LDYgQEAKKyAKKyB2b2lkIE1vdmllRGVjb2Rlcjo6aW5pdGlh bGl6ZShjb25zdCBzdHJpbmcmIGZpbGVuYW1lLCBib29sIHByZWZlckVtYmVkZGVkTWV0YWRhdGEp CisgeworLSAgICBhdl9yZWdpc3Rlcl9hbGwoKTsKKy0gICAgYXZjb2RlY19yZWdpc3Rlcl9hbGwo KTsKKyAgICAgYXZmb3JtYXRfbmV0d29ya19pbml0KCk7CisgCisgICAgIHN0cmluZyBpbnB1dEZp bGUgPSBmaWxlbmFtZSA9PSAiLSIgPyAicGlwZToiIDogZmlsZW5hbWU7CitAQCAtOTcsOCArOTAs NyBAQAorIHsKKyAgICAgaWYgKG1fcFZpZGVvQ29kZWNDb250ZXh0KQorICAgICB7CistICAgICAg ICBhdmNvZGVjX2Nsb3NlKG1fcFZpZGVvQ29kZWNDb250ZXh0KTsKKy0gICAgICAgIG1fcFZpZGVv Q29kZWNDb250ZXh0ID0gbnVsbHB0cjsKKysgICAgICAgIGF2Y29kZWNfZnJlZV9jb250ZXh0KCZt X3BWaWRlb0NvZGVjQ29udGV4dCk7CisgICAgIH0KKyAKKyAgICAgaWYgKCghbV9Gb3JtYXRDb250 ZXh0V2FzR2l2ZW4pICYmIG1fcEZvcm1hdENvbnRleHQpCitAQCAtMTUyLDEwICsxNDQsMTAgQEAK KyAgICAgZm9yICh1bnNpZ25lZCBpbnQgaSA9IDA7IGkgPCBtX3BGb3JtYXRDb250ZXh0LT5uYl9z dHJlYW1zOyArK2kpCisgICAgIHsKKyAgICAgICAgIEFWU3RyZWFtICpzdHJlYW0gPSBtX3BGb3Jt YXRDb250ZXh0LT5zdHJlYW1zW2ldOworLSAgICAgICAgYXV0byBjdHggPSBtX3BGb3JtYXRDb250 ZXh0LT5zdHJlYW1zW2ldLT5jb2RlYzsKKy0gICAgICAgIGlmIChjdHgtPmNvZGVjX3R5cGUgPT0g QVZNRURJQV9UWVBFX1ZJREVPKQorKyAgICAgICAgYXV0byBwYXIgPSBtX3BGb3JtYXRDb250ZXh0 LT5zdHJlYW1zW2ldLT5jb2RlY3BhcjsKKysgICAgICAgIGlmIChwYXItPmNvZGVjX3R5cGUgPT0g QVZNRURJQV9UWVBFX1ZJREVPKQorICAgICAgICAgeworLSAgICAgICAgICAgIGlmICghcHJlZmVy RW1iZWRkZWRNZXRhZGF0YSB8fCAhaXNTdGlsbEltYWdlQ29kZWMoY3R4LT5jb2RlY19pZCkpCisr ICAgICAgICAgICAgaWYgKCFwcmVmZXJFbWJlZGRlZE1ldGFkYXRhIHx8ICFpc1N0aWxsSW1hZ2VD b2RlYyhwYXItPmNvZGVjX2lkKSkKKyAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIHZp ZGVvU3RyZWFtcy5wdXNoX2JhY2soaSk7CisgICAgICAgICAgICAgICAgIGNvbnRpbnVlOworQEAg LTIwMyw4ICsxOTUsNyBAQAorICAgICB9CisgCisgICAgIG1fcFZpZGVvU3RyZWFtID0gbV9wRm9y bWF0Q29udGV4dC0+c3RyZWFtc1ttX1ZpZGVvU3RyZWFtXTsKKy0gICAgbV9wVmlkZW9Db2RlY0Nv bnRleHQgPSBtX3BWaWRlb1N0cmVhbS0+Y29kZWM7CistICAgIG1fcFZpZGVvQ29kZWMgPSBhdmNv ZGVjX2ZpbmRfZGVjb2RlcihtX3BWaWRlb0NvZGVjQ29udGV4dC0+Y29kZWNfaWQpOworKyAgICBt X3BWaWRlb0NvZGVjID0gYXZjb2RlY19maW5kX2RlY29kZXIobV9wVmlkZW9TdHJlYW0tPmNvZGVj cGFyLT5jb2RlY19pZCk7CisgCisgICAgIGlmIChtX3BWaWRlb0NvZGVjID09IG51bGxwdHIpCisg ICAgIHsKK0BAIC0yMTQsNiArMjA1LDIwIEBACisgICAgICAgICB0aHJvdyBsb2dpY19lcnJvcigi VmlkZW8gQ29kZWMgbm90IGZvdW5kIik7CisgICAgIH0KKyAKKysgICAgbV9wVmlkZW9Db2RlY0Nv bnRleHQgPSBhdmNvZGVjX2FsbG9jX2NvbnRleHQzKG1fcFZpZGVvQ29kZWMpOworKworKyAgICBp ZiAobV9wVmlkZW9Db2RlY0NvbnRleHQgPT0gbnVsbHB0cikKKysgICAgeworKyAgICAgICAgZGVz dHJveSgpOworKyAgICAgICAgdGhyb3cgbG9naWNfZXJyb3IoIkNvdWxkIG5vdCBhbGxvY2F0ZSB2 aWRlbyBjb2RlYyBjb250ZXh0Iik7CisrICAgIH0KKysKKysgICAgaWYgKGF2Y29kZWNfcGFyYW1l dGVyc190b19jb250ZXh0KG1fcFZpZGVvQ29kZWNDb250ZXh0LCBtX3BWaWRlb1N0cmVhbS0+Y29k ZWNwYXIpIDwgMCkKKysgICAgeworKyAgICAgICAgZGVzdHJveSgpOworKyAgICAgICAgdGhyb3cg bG9naWNfZXJyb3IoIkNvdWxkIG5vdCBjb25maWd1cmUgdmlkZW8gY29kZWMgY29udGV4dCIpOwor KyAgICB9CisrCisgICAgIG1fcFZpZGVvQ29kZWNDb250ZXh0LT53b3JrYXJvdW5kX2J1Z3MgPSAx OworIAorICAgICBpZiAoYXZjb2RlY19vcGVuMihtX3BWaWRlb0NvZGVjQ29udGV4dCwgbV9wVmlk ZW9Db2RlYywgbnVsbHB0cikgPCAwKQorQEAgLTM4NiwxMyArMzkxLDYgQEAKKyAKKyB2b2lkIE1v dmllRGVjb2Rlcjo6aW5pdGlhbGl6ZUZpbHRlckdyYXBoKGNvbnN0IEFWUmF0aW9uYWwmIHRpbWVC YXNlLCBjb25zdCBzdGQ6OnN0cmluZyYgc2l6ZSwgYm9vbCBtYWludGFpbkFzcGVjdFJhdGlvKQor IHsKKy0gICAgc3RhdGljIGNvbnN0IEFWUGl4ZWxGb3JtYXQgcGl4ZWxGb3JtYXRzW10gPSB7IEFW X1BJWF9GTVRfUkdCMjQsIEFWX1BJWF9GTVRfTk9ORSB9OworLQorLSAgICBhdXRvIGRlbCA9IFtd IChBVkJ1ZmZlclNpbmtQYXJhbXMqIHApIHsgYXZfZnJlZXAocCk7IH07CistICAgIHN0ZDo6dW5p cXVlX3B0cjxBVkJ1ZmZlclNpbmtQYXJhbXMsIGRlY2x0eXBlKGRlbCk+IGJ1ZmZlcnNpbmtQYXJh bXMoYXZfYnVmZmVyc2lua19wYXJhbXNfYWxsb2MoKSwgZGVsKTsKKy0KKy0gICAgYXZmaWx0ZXJf cmVnaXN0ZXJfYWxsKCk7CistCisgICAgIG1fcEZpbHRlckdyYXBoID0gYXZmaWx0ZXJfZ3JhcGhf YWxsb2MoKTsKKyAgICAgYXNzZXJ0KG1fcEZpbHRlckdyYXBoKTsKKyAKK0BAIC00MDQsMTAgKzQw Miw4IEBACisgCisgICAgIGNoZWNrUmMoYXZmaWx0ZXJfZ3JhcGhfY3JlYXRlX2ZpbHRlcigmbV9w RmlsdGVyU291cmNlLCBhdmZpbHRlcl9nZXRfYnlfbmFtZSgiYnVmZmVyIiksICJ0aHVtYl9idWZm ZXIiLCBzcy5zdHIoKS5jX3N0cigpLCBudWxscHRyLCBtX3BGaWx0ZXJHcmFwaCksCisgICAgICAg ICAgICAgIkZhaWxlZCB0byBjcmVhdGUgZmlsdGVyIHNvdXJjZSIpOworLSAgICBidWZmZXJzaW5r UGFyYW1zLT5waXhlbF9mbXRzID0gcGl4ZWxGb3JtYXRzOworLSAgICBjaGVja1JjKGF2ZmlsdGVy X2dyYXBoX2NyZWF0ZV9maWx0ZXIoJm1fcEZpbHRlclNpbmssIGF2ZmlsdGVyX2dldF9ieV9uYW1l KCJidWZmZXJzaW5rIiksICJ0aHVtYl9idWZmZXJzaW5rIiwgbnVsbHB0ciwgYnVmZmVyc2lua1Bh cmFtcy5nZXQoKSwgbV9wRmlsdGVyR3JhcGgpLAorKyAgICBjaGVja1JjKGF2ZmlsdGVyX2dyYXBo X2NyZWF0ZV9maWx0ZXIoJm1fcEZpbHRlclNpbmssIGF2ZmlsdGVyX2dldF9ieV9uYW1lKCJidWZm ZXJzaW5rIiksICJ0aHVtYl9idWZmZXJzaW5rIiwgbnVsbHB0ciwgbnVsbHB0ciwgbV9wRmlsdGVy R3JhcGgpLAorICAgICAgICAgICAgICJGYWlsZWQgdG8gY3JlYXRlIGZpbHRlciBzaW5rIik7Cist ICAgIGJ1ZmZlcnNpbmtQYXJhbXMucmVsZWFzZSgpOworIAorICAgICBBVkZpbHRlckNvbnRleHQq IHlhZGlmRmlsdGVyID0gbnVsbHB0cjsKKyAgICAgaWYgKG1fcEZyYW1lLT5pbnRlcmxhY2VkX2Zy YW1lICE9IDApCitAQCAtNTAwLDE1ICs0OTYsMTUgQEAKKyAgICAgfQorIAorICAgICBjaGVja1Jj KGF2X3NlZWtfZnJhbWUobV9wRm9ybWF0Q29udGV4dCwgLTEsIHRpbWVzdGFtcCwgMCksICJTZWVr aW5nIGluIHZpZGVvIGZhaWxlZCIpOworLSAgICBhdmNvZGVjX2ZsdXNoX2J1ZmZlcnMobV9wRm9y bWF0Q29udGV4dC0+c3RyZWFtc1ttX1ZpZGVvU3RyZWFtXS0+Y29kZWMpOworKyAgICBhdmNvZGVj X2ZsdXNoX2J1ZmZlcnMobV9wVmlkZW9Db2RlY0NvbnRleHQpOworIAorICAgICBpbnQga2V5RnJh bWVBdHRlbXB0cyA9IDA7CistICAgIGJvb2wgZ290RnJhbWUgPSAwOworKyAgICBib29sIGdvdEZy YW1lOworIAorICAgICBkbworICAgICB7CisgICAgICAgICBpbnQgY291bnQgPSAwOworLSAgICAg ICAgZ290RnJhbWUgPSAwOworKyAgICAgICAgZ290RnJhbWUgPSBmYWxzZTsKKyAKKyAgICAgICAg IHdoaWxlICghZ290RnJhbWUgJiYgY291bnQgPCAyMCkKKyAgICAgICAgIHsKK0BAIC01NTIsMTcg KzU0OCwzMyBAQAorICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICB9CisgCistICAgIGF2X2Zy YW1lX3VucmVmKG1fcEZyYW1lKTsKKy0KKy0gICAgaW50IGZyYW1lRmluaXNoZWQ7CisrICAgIGlu dCByYyA9IGF2Y29kZWNfc2VuZF9wYWNrZXQobV9wVmlkZW9Db2RlY0NvbnRleHQsIG1fcFBhY2tl dCk7CisrICAgIGlmKHJjID09IEFWRVJST1IoRUFHQUlOKSkKKysgICAgeworKyAgICAgICAgcmMg PSAwOworKyAgICB9CisgCistICAgIGludCBieXRlc0RlY29kZWQgPSBhdmNvZGVjX2RlY29kZV92 aWRlbzIobV9wVmlkZW9Db2RlY0NvbnRleHQsIG1fcEZyYW1lLCAmZnJhbWVGaW5pc2hlZCwgbV9w UGFja2V0KTsKKy0gICAgaWYgKGJ5dGVzRGVjb2RlZCA8IDApCisrICAgIGlmKHJjID09IEFWRVJS T1JfRU9GKQorKyAgICB7CisrICAgICAgICByZXR1cm4gZmFsc2U7CisrICAgIH0KKysgICAgZWxz ZSBpZihyYyA8IDApCisgICAgIHsKKy0gICAgICAgIHRocm93IGxvZ2ljX2Vycm9yKCJGYWlsZWQg dG8gZGVjb2RlIHZpZGVvIGZyYW1lOiBieXRlc0RlY29kZWQgPCAwIik7CisrICAgICAgICB0aHJv dyBsb2dpY19lcnJvcigiRmFpbGVkIHRvIGRlY29kZSB2aWRlbyBmcmFtZTogYXZjb2RlY19zZW5k X3BhY2tldCgpIDwgMCIpOworICAgICB9CisgCistICAgIHJldHVybiBmcmFtZUZpbmlzaGVkID4g MDsKKysgICAgcmMgPSBhdmNvZGVjX3JlY2VpdmVfZnJhbWUobV9wVmlkZW9Db2RlY0NvbnRleHQs IG1fcEZyYW1lKTsKKysgICAgc3dpdGNoKHJjKQorKyAgICB7CisrICAgICAgICBjYXNlIDA6Cisr ICAgICAgICAgICAgcmV0dXJuIHRydWU7CisrCisrICAgICAgICBjYXNlIEFWRVJST1IoRUFHQUlO KToKKysgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisrCisrICAgICAgICBkZWZhdWx0OgorKyAg ICAgICAgICAgIHRocm93IGxvZ2ljX2Vycm9yKCJGYWlsZWQgdG8gZGVjb2RlIHZpZGVvIGZyYW1l OiBhdmNvZGVjX3JlY2VpdmVfZnJhbWUoKSA8IDAiKTsKKysgICAgfQorIH0KKyAKKyBib29sIE1v dmllRGVjb2Rlcjo6Z2V0VmlkZW9QYWNrZXQoKQorQEAgLTU3MCw4ICs1ODIsNiBAQAorICAgICBi b29sIGZyYW1lc0F2YWlsYWJsZSA9IHRydWU7CisgICAgIGJvb2wgZnJhbWVEZWNvZGVkID0gZmFs c2U7CisgCistICAgIGludCBhdHRlbXB0cyA9IDA7CistCisgICAgIGlmIChtX3BQYWNrZXQpCisg ICAgIHsKKyAgICAgICAgIGF2X3BhY2tldF91bnJlZihtX3BQYWNrZXQpOworQEAgLTU4MCw2ICs1 OTAsNyBAQAorIAorICAgICBtX3BQYWNrZXQgPSBuZXcgQVZQYWNrZXQoKTsKKyAKKysKKyAgICAg d2hpbGUgKGZyYW1lc0F2YWlsYWJsZSAmJiAhZnJhbWVEZWNvZGVkKQorICAgICB7CisgICAgICAg ICBmcmFtZXNBdmFpbGFibGUgPSBhdl9yZWFkX2ZyYW1lKG1fcEZvcm1hdENvbnRleHQsIG1fcFBh Y2tldCkgPj0gMDsKK0BAIC02NDQsNyArNjU1LDcgQEAKKyAKKyBpbnQzMl90IE1vdmllRGVjb2Rl cjo6Z2V0U3RyZWFtUm90YXRpb24oKQorIHsKKy0gICAgaW50MzJfdCogbWF0cml4ID0gcmVpbnRl cnByZXRfY2FzdDxpbnQzMl90Kj4oYXZfc3RyZWFtX2dldF9zaWRlX2RhdGEobV9wVmlkZW9TdHJl YW0sIEFWX1BLVF9EQVRBX0RJU1BMQVlNQVRSSVgsIG51bGxwdHIpKTsKKysgICAgYXV0byBtYXRy aXggPSByZWludGVycHJldF9jYXN0PGludDMyX3QqPihhdl9zdHJlYW1fZ2V0X3NpZGVfZGF0YSht X3BWaWRlb1N0cmVhbSwgQVZfUEtUX0RBVEFfRElTUExBWU1BVFJJWCwgbnVsbHB0cikpOworICAg ICBpZiAobWF0cml4KQorICAgICB7CisgICAgICAgICBhdXRvIGFuZ2xlID0gbHJvdW5kKGF2X2Rp c3BsYXlfcm90YXRpb25fZ2V0KG1hdHJpeCkpOworCistLS0gYS9saWJmZm1wZWd0aHVtYm5haWxl ci9tb3ZpZWRlY29kZXIuaAkyMDE3LTExLTEyIDA0OjIzOjM4LjAwMDAwMDAwMCAtMDUwMAorKysr IGIvbGliZmZtcGVndGh1bWJuYWlsZXIvbW92aWVkZWNvZGVyLmgJMjAyMy0wNS0wNSAxMzoyNjow Ny4wOTU1Mjk5MTEgLTA0MDAKK0BAIC03OCw3ICs3OCw3IEBACisgICAgIGludCAgICAgICAgICAg ICAgICAgICAgIG1fVmlkZW9TdHJlYW07DQorICAgICBBVkZvcm1hdENvbnRleHQqICAgICAgICBt X3BGb3JtYXRDb250ZXh0Ow0KKyAgICAgQVZDb2RlY0NvbnRleHQqICAgICAgICAgbV9wVmlkZW9D b2RlY0NvbnRleHQ7DQorLSAgICBBVkNvZGVjKiAgICAgICAgICAgICAgICBtX3BWaWRlb0NvZGVj Ow0KKysgICAgY29uc3QgQVZDb2RlYyogICAgICAgICAgbV9wVmlkZW9Db2RlYzsNCisgICAgIEFW RmlsdGVyR3JhcGgqICAgICAgICAgIG1fcEZpbHRlckdyYXBoOw0KKyAgICAgQVZGaWx0ZXJDb250 ZXh0KiAgICAgICAgbV9wRmlsdGVyU291cmNlOw0KKyAgICAgQVZGaWx0ZXJDb250ZXh0KiAgICAg ICAgbV9wRmlsdGVyU2luazsNCmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZmbXBlZ3RodW1ibmFpbGVy L3RlbXBsYXRlIGIvc3JjcGtncy9mZm1wZWd0aHVtYm5haWxlci90ZW1wbGF0ZQppbmRleCAwMzll ZWE3NjIyYjM5MS4uYWRkMzgxOTk5ODZlYjUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZmZtcGVndGh1 bWJuYWlsZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9mZm1wZWd0aHVtYm5haWxlci90ZW1wbGF0 ZQpAQCAtMSwxNiArMSwxNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZmZtcGVndGh1bWJuYWls ZXInCiBwa2duYW1lPWZmbXBlZ3RodW1ibmFpbGVyCiB2ZXJzaW9uPTIuMi4yCi1yZXZpc2lvbj0x CityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29u ZmlnIgotbWFrZWRlcGVuZHM9ImxpYnBuZy1kZXZlbCBsaWJqcGVnLXR1cmJvLWRldmVsIGZmbXBl Zy1kZXZlbCIKK21ha2VkZXBlbmRzPSJsaWJwbmctZGV2ZWwgbGlianBlZy10dXJiby1kZXZlbCBm Zm1wZWc2LWRldmVsIgogZGVwZW5kcz0iZmZtcGVnIgogc2hvcnRfZGVzYz0iTGlnaHR3ZWlnaHQg dmlkZW8gdGh1bWJuYWlsZXIiCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51 eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKLWhvbWVwYWdlPSJodHRwczovL2dp dGh1Yi5jb20vZGlya3ZkYi8ke3BrZ25hbWV9IgotZGlzdGZpbGVzPSIke2hvbWVwYWdlfS9yZWxl YXNlcy9kb3dubG9hZC8ke3ZlcnNpb259LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIuYnoyIgor aG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9kaXJrdmRiIgorZGlzdGZpbGVzPSIke2hvbWVw YWdlfS8ke3BrZ25hbWV9L3JlbGVhc2VzL2Rvd25sb2FkLyR7dmVyc2lvbn0vJHtwa2duYW1lfS0k e3ZlcnNpb259LnRhci5iejIiCiBjaGVja3N1bT0xY2IyNDA1OWMzODIyM2Y2NTdiMzAwYzg0ZGQ4 MDQ5MWI3MDQwZDRiNjk0NzFjNGZlYTY5YmU4NjJiYzk5YjViCiAKIHBvc3RfaW5zdGFsbCgpIHsK CkZyb20gYzEyYTUxYzY4YjIzZTBlNDkxOTg2ZjM4NGNjZjQ4YmIyMThlMDQ2MCBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2Vk LCAyMiBNYXIgMjAyMyAyMDowMTo0NyAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDQvODldIGZmbXBl Z3RodW1iczogcmV2YnVtcCBmb3IgZmZtcGVnNgoKZmZtcGVndGh1bWJzIDogcmVkbwotLS0KIHNy Y3BrZ3MvZmZtcGVndGh1bWJzL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBp bnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZmZtcGVn dGh1bWJzL3RlbXBsYXRlIGIvc3JjcGtncy9mZm1wZWd0aHVtYnMvdGVtcGxhdGUKaW5kZXggYzI2 YjI2MjdiNWEwZTMuLjZjZTAzM2MyMDU5MzQ3IDEwMDY0NAotLS0gYS9zcmNwa2dzL2ZmbXBlZ3Ro dW1icy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2ZmbXBlZ3RodW1icy90ZW1wbGF0ZQpAQCAtMSwx NCArMSwxNCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZmZtcGVndGh1bWJzJwogcGtnbmFtZT1m Zm1wZWd0aHVtYnMKIHZlcnNpb249MjQuMDIuMgotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVp bGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItRFFUX01BSk9SX1ZFUlNJT049NiAtREtG Nl9IT1NUX1RPT0xJTkc9L3Vzci9saWIvY21ha2UKICAtREtERV9JTlNUQUxMX1FUUExVR0lORElS PWxpYi9xdDYvcGx1Z2lucyIKIGhvc3RtYWtlZGVwZW5kcz0iZXh0cmEtY21ha2UtbW9kdWxlcyBw a2ctY29uZmlnIGdldHRleHQgcXQ2LWJhc2UKICBrZjYta2NvbmZpZyIKIG1ha2VkZXBlbmRzPSJx dDYtYmFzZS1kZXZlbCBrZjYta2NvbmZpZy1kZXZlbCBrZjYta2lvLWRldmVsIGtmNi1raTE4bi1k ZXZlbAotIGZmbXBlZy1kZXZlbCB0YWdsaWItZGV2ZWwiCisgZmZtcGVnNi1kZXZlbCB0YWdsaWIt ZGV2ZWwiCiBzaG9ydF9kZXNjPSJGRm1wZWctYmFzZWQgdGh1bWJuYWlsIGNyZWF0b3IgZm9yIHZp ZGVvIGZpbGVzIgogbWFpbnRhaW5lcj0iTWljaGFlbCBTdHJhdWJlIDxzdHJhdWJlbUBnbXguZGU+ IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKCkZyb20gMTQ5MDhiNzQ0ZmNmM2YzOTY1ZWM4 MWEyYTI0ZTA5ZDhhZmNhMThhMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2Ug PHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogRnJpLCAzMSBNYXIgMjAyMyAwOTowNzo0MCAtMDQw MApTdWJqZWN0OiBbUEFUQ0ggMDUvODldIG52LWNvZGVjLWhlYWRlcnM6IHVwZGF0ZSB0byAxMi4w LjE2LjAKCi0tLQogc3JjcGtncy9udi1jb2RlYy1oZWFkZXJzL3RlbXBsYXRlIHwgNCArKy0tCiAx IGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvbnYtY29kZWMtaGVhZGVycy90ZW1wbGF0ZSBiL3NyY3BrZ3MvbnYtY29kZWMt aGVhZGVycy90ZW1wbGF0ZQppbmRleCAzZDQyMmE2MWU0ODkxNy4uMjUxZTA1N2Y4MjZmYjggMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvbnYtY29kZWMtaGVhZGVycy90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L252LWNvZGVjLWhlYWRlcnMvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdudi1jb2RlYy1oZWFkZXJzJwogcGtnbmFtZT1udi1jb2RlYy1oZWFkZXJzCi12ZXJz aW9uPTExLjEuNS4xCit2ZXJzaW9uPTEyLjAuMTYuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9 Z251LW1ha2VmaWxlCiBzaG9ydF9kZXNjPSJGRm1wZWcgdmVyc2lvbiBvZiBoZWFkZXJzIHJlcXVp cmVkIHRvIGludGVyZmFjZSB3aXRoIE52aWRpYXMgY29kZWMgQVBJcyIKQEAgLTgsNyArOCw3IEBA IG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJN SVQiCiBob21lcGFnZT0iaHR0cDovL2dpdC52aWRlb2xhbi5vcmcvP3A9ZmZtcGVnL252LWNvZGVj LWhlYWRlcnMuZ2l0IgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vRkZtcGVnL252LWNv ZGVjLWhlYWRlcnMvYXJjaGl2ZS9uJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT1kMDk1ZmJk NTZhYTkzNzcyNDcxYTMyM2JlMGViZTY1NTA0YTBmNDNmMDZjNzZhMzBiNmQyNWRhNzdiMDZhZTlj CitjaGVja3N1bT0yYTE1MzNiNjVmNTVmOWRhNTI5NTZmYWYwNjI3ZWQzYjc0ODY4YWMwYzdmMjY5 OTkwZWRkMjEzNjkxMTNiNDhmCiAKIHBvc3RfaW5zdGFsbCgpIHsKIAlzZWQgLW4gJzQsMjVwJyBp bmNsdWRlL2ZmbnZjb2RlYy9udkVuY29kZUFQSS5oID4gTElDRU5TRQoKRnJvbSA5ZDg0MjVlZTg4 MzA1NThiM2VkMTA2MTg0NTYyODA4M2U2ZThhYzgwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIw OjAxOjQ3IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNi84OV0gZ3V2Y3ZpZXc6IHVwZGF0ZSB0byAy LjAuOC4KCi0tLQogc3JjcGtncy9ndXZjdmlldy9wYXRjaGVzL2ZpeC1pbmNsdWRlLnBhdGNoIHwg MTAgKysrKysrKysrKwogc3JjcGtncy9ndXZjdmlldy90ZW1wbGF0ZSAgICAgICAgICAgICAgICAg IHwgIDkgKysrKy0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDUgZGVs ZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9ndXZjdmlldy9wYXRjaGVzL2Zp eC1pbmNsdWRlLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ndXZjdmlldy9wYXRjaGVzL2Zp eC1pbmNsdWRlLnBhdGNoIGIvc3JjcGtncy9ndXZjdmlldy9wYXRjaGVzL2ZpeC1pbmNsdWRlLnBh dGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi41MDNjMmFmM2I3 OGMxYQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZ3V2Y3ZpZXcvcGF0Y2hlcy9maXgtaW5j bHVkZS5wYXRjaApAQCAtMCwwICsxLDEwIEBACistLS0gYS9ndXZjdmlldy9ndXZjdmlldy5jCisr KysgYi9ndXZjdmlldy9ndXZjdmlldy5jCitAQCAtMjgsNiArMjgsNyBAQAorICNpbmNsdWRlIDxz eXMvc3RhdC5oPgorICNpbmNsdWRlIDxzeXMvcmVzb3VyY2UuaD4KKyAjaW5jbHVkZSA8ZXJybm8u aD4KKysjaW5jbHVkZSA8bG9jYWxlLmg+CisgCisgI2luY2x1ZGUgImd2aWV3LmgiCisgI2luY2x1 ZGUgImd2aWV3djRsMmNvcmUuaCIKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ3V2Y3ZpZXcvdGVtcGxh dGUgYi9zcmNwa2dzL2d1dmN2aWV3L3RlbXBsYXRlCmluZGV4IGQ0MmZkMzhmYTRhZDEyLi4wN2Vm ZGIxYjliNGFlMyAxMDA2NDQKLS0tIGEvc3JjcGtncy9ndXZjdmlldy90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL2d1dmN2aWV3L3RlbXBsYXRlCkBAIC0xLDEyICsxLDExIEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdndXZjdmlldycKIHBrZ25hbWU9Z3V2Y3ZpZXcKLXZlcnNpb249Mi4wLjcKLXJldmlz aW9uPTIKLWNyZWF0ZV93cmtzcmM9eWVzCit2ZXJzaW9uPTIuMC44CityZXZpc2lvbj0xCiBidWls ZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1kaXNhYmxlLXN0YXRpYyAt LWRpc2FibGUtZGViaWFuLW1lbnUiCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgaW50bHRv b2wgYXV0b2NvbmYgYXV0b21ha2UgbGlidG9vbCBnbGliLWRldmVsIgotbWFrZWRlcGVuZHM9ImV1 ZGV2LWxpYnVkZXYtZGV2ZWwgZ3RrKzMtZGV2ZWwgU0RMMi1kZXZlbCBmZm1wZWctZGV2ZWwgbGli dXNiLWRldmVsCittYWtlZGVwZW5kcz0iZXVkZXYtbGlidWRldi1kZXZlbCBndGsrMy1kZXZlbCBT REwyLWRldmVsIGZmbXBlZzYtZGV2ZWwgbGlidXNiLWRldmVsCiAgcHVsc2VhdWRpby1kZXZlbCB2 NGwtdXRpbHMtZGV2ZWwgcG9ydGF1ZGlvLWRldmVsIGdzbC1kZXZlbCIKIGRlcGVuZHM9ImRlc2t0 b3AtZmlsZS11dGlscyIKIHNob3J0X2Rlc2M9IlNpbXBsZSBHVEsgaW50ZXJmYWNlIGZvciBjYXB0 dXJpbmcgYW5kIHZpZXdpbmcgdmlkZW8gZnJvbSBVVkMgZGV2aWNlcyIKQEAgLTE0LDcgKzEzLDcg QEAgbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9 IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cDovL2d1dmN2aWV3LnNvdXJjZWZvcmdl Lm5ldC8iCiBkaXN0ZmlsZXM9IiR7U09VUkNFRk9SR0VfU0lURX0vJHtwa2duYW1lfS8ke3BrZ25h bWV9LXNyYy0ke3ZlcnNpb259LnRhci5iejIiCi1jaGVja3N1bT1mNDdkNTFmYmQwNmU0NGVlYWEx YTgyZjRhMTUzYzkyNzUyN2M5MGQ5NDUxNDE5N2E3MGIyOTU2MDI4Y2M4YWQ0CitjaGVja3N1bT1h MjFmNGU0NDgyODY2NjZjZjI3YmFmZWY1MjkwY2M5NTNhMGExNzk2Yjc1MmU1YmJlNTIxMjY2ZGMx MjMwYzgxCiAKIHBvc3RfcGF0Y2goKSB7CiAJc2VkICczMWEjaW5jbHVkZSA8bG9jYWxlLmg+JyAt aSAgZ3V2Y3ZpZXcvZ3V2Y3ZpZXcuYwoKRnJvbSAyYzA4MThiZjYzYTQxNDljYzU5ZTZiZWYzNTAw ZTNjOWNlNGNjNTNjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1 NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ4IC0wNDAwClN1Ympl Y3Q6IFtQQVRDSCAwNy84OV0gaGFuZGJyYWtlOiB1cGRhdGUgdG8gMS42LjEKCi0tLQogLi4uL3Bh dGNoZXMvZml4LW1pc3NpbmcteDI2NS1saW5rLWZsYWcucGF0Y2ggIHwgMTEgKysrKysrLS0tLS0K IC4uLi9oYW5kYnJha2UvcGF0Y2hlcy9saWJoYi12cGwtaW5jbHVkZS5wYXRjaCB8IDE1ICsrKysr KysrKysrKysrKwogc3JjcGtncy9oYW5kYnJha2UvdGVtcGxhdGUgICAgICAgICAgICAgICAgICAg IHwgMTkgKysrKysrKysrKystLS0tLS0tLQogMyBmaWxlcyBjaGFuZ2VkLCAzMiBpbnNlcnRpb25z KCspLCAxMyBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2hhbmRicmFr ZS9wYXRjaGVzL2xpYmhiLXZwbC1pbmNsdWRlLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9o YW5kYnJha2UvcGF0Y2hlcy9maXgtbWlzc2luZy14MjY1LWxpbmstZmxhZy5wYXRjaCBiL3NyY3Br Z3MvaGFuZGJyYWtlL3BhdGNoZXMvZml4LW1pc3NpbmcteDI2NS1saW5rLWZsYWcucGF0Y2gKaW5k ZXggMjZkYjAzODY3YTBjODMuLmQ2YmIyZWRhNjI3YTM2IDEwMDY0NAotLS0gYS9zcmNwa2dzL2hh bmRicmFrZS9wYXRjaGVzL2ZpeC1taXNzaW5nLXgyNjUtbGluay1mbGFnLnBhdGNoCisrKyBiL3Ny Y3BrZ3MvaGFuZGJyYWtlL3BhdGNoZXMvZml4LW1pc3NpbmcteDI2NS1saW5rLWZsYWcucGF0Y2gK QEAgLTEsMTQgKzEsMTUgQEAKIC0tLSBhL2d0ay9jb25maWd1cmUuYWMKICsrKyBiL2d0ay9jb25m aWd1cmUuYWMKIEBAIC0yMDMsNyArMjAzLDcgQEAKLSAKKwogIEFNX0NPTkRJVElPTkFMKFtNSU5H V10sIFt0ZXN0ICJ4JG1pbmd3X2ZsYWciID0gInh5ZXMiXSkKLSAKLS1IQl9MSUJTPSIkSEJfTElC UyAtbGhhbmRicmFrZSAtbGF2Zm9ybWF0IC1sYXZmaWx0ZXIgLWxhdmNvZGVjIC1sYXZ1dGlsIC1s ZGF2MWQgLWxzd3Jlc2FtcGxlIC1scG9zdHByb2MgLWxkdmRuYXYgLWxkdmRyZWFkIC1sbXAzbGFt ZSAtbHZvcmJpcyAtbHZvcmJpc2VuYyAtbG9nZyAtbHN3c2NhbGUgLWx0aGVvcmFlbmMgLWx0aGVv cmFkZWMgLWx2cHggLWx6IC1sYnoyIC1sYmx1cmF5IC1sYXNzIC1sZm9udGNvbmZpZyAtbGZyZWV0 eXBlIC1seG1sMiAtbGphbnNzb24gLWxvcHVzIC1sc3BlZXggLWx0dXJib2pwZWcgLWxsem1hIC1s emltZyIKLStIQl9MSUJTPSIkSEJfTElCUyAtbGhhbmRicmFrZSAtbGF2Zm9ybWF0IC1sYXZmaWx0 ZXIgLWxhdmNvZGVjIC1sYXZ1dGlsIC1sZGF2MWQgLWxzd3Jlc2FtcGxlIC1scG9zdHByb2MgLWxk dmRuYXYgLWxkdmRyZWFkIC1sbXAzbGFtZSAtbHZvcmJpcyAtbHZvcmJpc2VuYyAtbG9nZyAtbHN3 c2NhbGUgLWx0aGVvcmFlbmMgLWx0aGVvcmFkZWMgLWx2cHggLWx6IC1sYnoyIC1sYmx1cmF5IC1s YXNzIC1sZm9udGNvbmZpZyAtbGZyZWV0eXBlIC1seG1sMiAtbGphbnNzb24gLWxvcHVzIC1sc3Bl ZXggLWx0dXJib2pwZWcgLWxsem1hIC1semltZyAtbGRsIgorCistSEJfTElCUz0iJEhCX0xJQlMg LWxoYW5kYnJha2UgLWxhdmZvcm1hdCAtbGF2ZmlsdGVyIC1sYXZjb2RlYyAtbGF2dXRpbCAtbGRh djFkIC1sc3dyZXNhbXBsZSAtbHBvc3Rwcm9jIC1sZHZkbmF2IC1sZHZkcmVhZCAtbG1wM2xhbWUg LWx2b3JiaXMgLWx2b3JiaXNlbmMgLWxvZ2cgLWxzd3NjYWxlIC1sdGhlb3JhZW5jIC1sdGhlb3Jh ZGVjIC1sdnB4IC1seiAtbGJ6MiAtbGJsdXJheSAtbGFzcyAtbGZvbnRjb25maWcgLWxmcmVldHlw ZSAtbHhtbDIgLWxqYW5zc29uIC1sb3B1cyAtbHNwZWV4IC1sdHVyYm9qcGVnIC1sbHptYSAtbHpp bWcgLWxTdnRBdjFFbmMiCisrSEJfTElCUz0iJEhCX0xJQlMgLWxoYW5kYnJha2UgLWxhdmZvcm1h dCAtbGF2ZmlsdGVyIC1sYXZjb2RlYyAtbGF2dXRpbCAtbGRhdjFkIC1sc3dyZXNhbXBsZSAtbHBv c3Rwcm9jIC1sZHZkbmF2IC1sZHZkcmVhZCAtbG1wM2xhbWUgLWx2b3JiaXMgLWx2b3JiaXNlbmMg LWxvZ2cgLWxzd3NjYWxlIC1sdGhlb3JhZW5jIC1sdGhlb3JhZGVjIC1sdnB4IC1seiAtbGJ6MiAt bGJsdXJheSAtbGFzcyAtbGZvbnRjb25maWcgLWxmcmVldHlwZSAtbHhtbDIgLWxqYW5zc29uIC1s b3B1cyAtbHNwZWV4IC1sdHVyYm9qcGVnIC1sbHptYSAtbHppbWcgLWxTdnRBdjFFbmMgLWxkbCIK ICBIQl9DUFBGTEFHUz0iJEhCX0NQUEZMQUdTICRIQklOQyIKLSAKKwogIFBLR19DSEVDS19NT0RV TEVTKFt4MjY0XSwgW3gyNjRdLCBzeXNfeDI2ND15ZXMsIHN5c194MjY0PW5vKQorCiAtLS0gYS90 ZXN0L21vZHVsZS5kZWZzCiArKysgYi90ZXN0L21vZHVsZS5kZWZzCiBAQCAtNjksNiArNjksOSBA QApkaWZmIC0tZ2l0IGEvc3JjcGtncy9oYW5kYnJha2UvcGF0Y2hlcy9saWJoYi12cGwtaW5jbHVk ZS5wYXRjaCBiL3NyY3BrZ3MvaGFuZGJyYWtlL3BhdGNoZXMvbGliaGItdnBsLWluY2x1ZGUucGF0 Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAuLjI5OGY5ZjRhYjI4 ZjJhCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9oYW5kYnJha2UvcGF0Y2hlcy9saWJoYi12 cGwtaW5jbHVkZS5wYXRjaApAQCAtMCwwICsxLDE1IEBACistLS0gYS9saWJoYi9tb2R1bGUuZGVm cwkyMDIzLTAxLTIyIDExOjM2OjQ5LjAwMDAwMDAwMCAtMDUwMAorKysrIGIvbGliaGIvbW9kdWxl LmRlZnMJMjAyMy0wNC0wMyAyMjozNzo1Mi4zOTU0NjcwMTAgLTA0MDAKK0BAIC00NiwxMSArNDYs NyBAQAorIExJQkhCLkdDQy5JICs9ICQoTElCSEIuYnVpbGQvKSAkKENPTlRSSUIuYnVpbGQvKWlu Y2x1ZGUKKyAKKyBpZmVxICgxLCQoRkVBVFVSRS5xc3YpKQorLSAgICBpZmVxICgkKEhPU1Quc3lz dGVtKSxmcmVlYnNkKSkKKy0gICAgICAgIExJQkhCLkdDQy5JICs9ICQoTE9DQUxCQVNFKS9pbmNs dWRlL3ZwbAorLSAgICBlbHNlCistICAgICAgICBMSUJIQi5HQ0MuSSArPSAkKENPTlRSSUIuYnVp bGQvKWluY2x1ZGUvdnBsCistICAgIGVuZGlmCisrICAgIExJQkhCLkdDQy5JICs9IC91c3IvaW5j bHVkZS92cGwKKyBlbmRpZgorIAorIGlmbmVxICgsJChmaWx0ZXIgJChIT1NULnN5c3RlbSksZnJl ZWJzZCBuZXRic2Qgb3BlbmJzZCkpCmRpZmYgLS1naXQgYS9zcmNwa2dzL2hhbmRicmFrZS90ZW1w bGF0ZSBiL3NyY3BrZ3MvaGFuZGJyYWtlL3RlbXBsYXRlCmluZGV4IGNhNWU0NTcxZTQ5YzM3Li5h MjdkNzRkMjQ1OGYzZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9oYW5kYnJha2UvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9oYW5kYnJha2UvdGVtcGxhdGUKQEAgLTEsMTkgKzEsMjIgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2hhbmRicmFrZScKIHBrZ25hbWU9aGFuZGJyYWtlCi12ZXJzaW9uPTEuNS4x Cit2ZXJzaW9uPTEuNi4xCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBj b25maWd1cmVfYXJncz0iLS1mb3JjZSAtLWRpc2FibGUtZ3RrLXVwZGF0ZS1jaGVja3MgLS1kaXNh YmxlLWRmLWZldGNoIC0taGFyZGVuCi0gJCh2b3B0X2VuYWJsZSBmZGtfYWFjIGZkay1hYWMpICQo dm9wdF9lbmFibGUgbnZlbmMpIgorICQodm9wdF9lbmFibGUgZmRrX2FhYyBmZGstYWFjKSAkKHZv cHRfZW5hYmxlIG52ZW5jKSAkKHZvcHRfZW5hYmxlIHFzdikiCiBtYWtlX2J1aWxkX2FyZ3M9Ii1D ICR7WEJQU19UUklQTEVUfSIKIG1ha2VfaW5zdGFsbF9hcmdzPSItQyAke1hCUFNfVFJJUExFVH0i CiBob3N0bWFrZWRlcGVuZHM9ImF1dG9tYWtlIGNtYWtlIGdldHRleHQtZGV2ZWwgZ2xpYi1kZXZl bCBpbnRsdG9vbCBsaWJ0b29sIG00IG1lc29uIG5hc20gcGtnLWNvbmZpZyBweXRob24zIgotbWFr ZWRlcGVuZHM9ImJ6aXAyLWRldmVsIGZmbXBlZy1kZXZlbCBnc3QtcGx1Z2lucy1iYXNlMS1kZXZl bCBndGsrMy1kZXZlbAorbWFrZWRlcGVuZHM9ImJ6aXAyLWRldmVsIGZmbXBlZzYtZGV2ZWwgZ3N0 LXBsdWdpbnMtYmFzZTEtZGV2ZWwgZ3RrKzMtZGV2ZWwKICBqYW5zc29uLWRldmVsIGxhbWUtZGV2 ZWwgbGliYXNzLWRldmVsIGxpYmJsdXJheS1kZXZlbCBsaWJkYXYxZC1kZXZlbAogIGxpYmR2ZG5h di1kZXZlbCBsaWJkdmRyZWFkLWRldmVsIGxpYmd1ZGV2LWRldmVsIGxpYm51bWEtZGV2ZWwKICBs aWJzYW1wbGVyYXRlLWRldmVsIGxpYnRoZW9yYS1kZXZlbCBsaWJ2b3JiaXMtZGV2ZWwgbGlidnB4 LWRldmVsIGxpYnhtbDItZGV2ZWwKLSBvcHVzLWRldmVsIHNwZWV4LWRldmVsIHgyNjQtZGV2ZWwg eDI2NS1kZXZlbCB6aW1nLWRldmVsCisgb3B1cy1kZXZlbCBzcGVleC1kZXZlbCB4MjY0LWRldmVs IHgyNjUtZGV2ZWwgemltZy1kZXZlbCBsaWJzdnQtYXYxLWRldmVsCiAgJCh2b3B0X2lmIGZka19h YWMgZmRrLWFhYy1kZXZlbCkKKyAkKHZvcHRfaWYgcXN2IGxpYnZhLWRldmVsKQorICQodm9wdF9p ZiBxc3YgbGliZHJtLWRldmVsKQorICQodm9wdF9pZiBxc3Ygb25lVlBMLWRldmVsKQogICQodm9w dF9pZiBudmVuYyBudi1jb2RlYy1oZWFkZXJzKSIKIGRlcGVuZHM9ImRlc2t0b3AtZmlsZS11dGls cyBnc3QtcGx1Z2lucy1nb29kMSBoaWNvbG9yLWljb24tdGhlbWUiCiBzaG9ydF9kZXNjPSJNdWx0 aXRocmVhZGVkIHZpZGVvIHRyYW5zY29kZXIiCkBAIC0yMSwxNSArMjQsMTUgQEAgbWFpbnRhaW5l cj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAt b25seSIKIGhvbWVwYWdlPSJodHRwczovL2hhbmRicmFrZS5mci8iCiBkaXN0ZmlsZXM9Imh0dHBz Oi8vZ2l0aHViLmNvbS9IYW5kQnJha2UvSGFuZEJyYWtlL3JlbGVhc2VzL2Rvd25sb2FkLyR7dmVy c2lvbn0vSGFuZEJyYWtlLSR7dmVyc2lvbn0tc291cmNlLnRhci5iejIiCi1jaGVja3N1bT0zOTk5 ZmUwNmQ1MzA5YzgxOTc5OWE3M2E5NjhhOGVjMzg0MGU3ODQwYzJiNjRhZjhmNWNkYjdmZDhjOTQz MGYwCitjaGVja3N1bT05NGNjZmUwM2RiOTE3YTkxNjUwMDAwYzUxMGY3ZmQ1M2Y4NDRkYTE5ZjE5 YWQ0YjRiZTFiOGY2YmMzMWE4ZDRjCiBub2Nyb3NzPXllcwogCi1idWlsZF9vcHRpb25zPSJmZGtf YWFjIG52ZW5jIgorYnVpbGRfb3B0aW9ucz0iZmRrX2FhYyBudmVuYyBxc3YiCiAKIGNhc2UgIiRY QlBTX1RBUkdFVF9NQUNISU5FIiBpbgogCXg4Nl82NCp8aTY4NiopCiAJCUNGTEFHUz0iLW1zc2Ui Ci0JCWJ1aWxkX29wdGlvbnNfZGVmYXVsdD0ibnZlbmMiCisJCWJ1aWxkX29wdGlvbnNfZGVmYXVs dD0ibnZlbmMgcXN2IgogCQk7OwogZXNhYwogCkBAIC0zNyw3ICs0MCw3IEBAIHByZV9jb25maWd1 cmUoKSB7CiAJIyB1c2Ugc3lzdGVtIGxpYnJhcmllcywgZG9uJ3QgZG93bmxvYWQgdGhlbQogCXJt IC1yZiBjb250cmliLwogCWZvciBtb2R1bGUgaW4gZmRrLWFhYyBmZm1wZWcgbGliYmx1cmF5IGxp YmRhdjFkIGxpYmR2ZG5hdiBsaWJkdmRyZWFkIG52ZW5jIFwKLQkJeDI2NSB6aW1nOyBkbworCQl4 MjY1IHppbWcgc3Z0LWF2MSBsaWJ2cGw7IGRvCiAJICAgIHZzZWQgLWkgIi9NT0RVTEVTICs9IGNv bnRyaWJcLyR7bW9kdWxlfS9kIiBtYWtlL2luY2x1ZGUvbWFpbi5kZWZzCiAJZG9uZQogfQoKRnJv bSBhZDM3NTEzMGU3ODE2YjBhYTc2YjY4ZWFiNDMzOGUzNGE4NGExN2M2IE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIy IE1hciAyMDIzIDE5OjU5OjA0IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwOC84OV0gb3BlbmN2OiB1 cGRhdGUgdG8gNC43LjAuCgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAgICAgIHwgMTA0ICsrKysr KysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KIHNyY3BrZ3Mvb3BlbmN2L3RlbXBs YXRlIHwgIDEwICsrLS0KIDIgZmlsZXMgY2hhbmdlZCwgNTcgaW5zZXJ0aW9ucygrKSwgNTcgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5k ZXggYWNjMjA3MjY2Y2FmZjQuLmJmYWNkN2I5OWM1NzQwIDEwMDY0NAotLS0gYS9jb21tb24vc2hs aWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTIxOTEsNTggKzIxOTEsNTggQEAgbGliY2Fwc3Rv bmUuc28uNSBjYXBzdG9uZS01LjAuMV8xCiBsaWJoYXZlZ2Uuc28uMiBsaWJoYXZlZ2VkLTEuOS4x MV8xCiBsaWJuaWguc28uMSBsaWJuaWgtMS4wLjNfMQogbGlibmloLWRidXMuc28uMSBsaWJuaWgt MS4wLjNfMQotbGlib3BlbmN2X3F1YWxpdHkuc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJv cGVuY3ZfcmVnLnNvLjQwNiBsaWJvcGVuY3YtNC42LjBfMQotbGlib3BlbmN2X3N1cmZhY2VfbWF0 Y2hpbmcuc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfeHBob3RvLnNvLjQwNiBs aWJvcGVuY3YtNC42LjBfMQotbGlib3BlbmN2X2ZyZWV0eXBlLnNvLjQwNiBsaWJvcGVuY3YtNC42 LjBfMQotbGlib3BlbmN2X2Z1enp5LnNvLjQwNiBsaWJvcGVuY3YtNC42LjBfMQotbGlib3BlbmN2 X2hmcy5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl9pbWdfaGFzaC5zby40MDYg bGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl9saW5lX2Rlc2NyaXB0b3Iuc28uNDA2IGxpYm9w ZW5jdi00LjYuMF8xCi1saWJvcGVuY3Zfc2FsaWVuY3kuc28uNDA2IGxpYm9wZW5jdi00LjYuMF8x Ci1saWJvcGVuY3Zfc3RydWN0dXJlZF9saWdodC5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxp Ym9wZW5jdl9hcnVjby5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl9iZ3NlZ20u c28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfYmlvaW5zcGlyZWQuc28uNDA2IGxp Ym9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfY2NhbGliLnNvLjQwNiBsaWJvcGVuY3YtNC42LjBf MQotbGlib3BlbmN2X2ZhY2Uuc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfdHJh Y2tpbmcuc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfeGZlYXR1cmVzMmQuc28u NDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3Zfb3B0Zmxvdy5zby40MDYgbGlib3BlbmN2 LTQuNi4wXzEKLWxpYm9wZW5jdl94aW1ncHJvYy5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxp Ym9wZW5jdl9wbG90LnNvLjQwNiBsaWJvcGVuY3YtNC42LjBfMQotbGlib3BlbmN2X3RleHQuc28u NDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfbWwuc28uNDA2IGxpYm9wZW5jdi00LjYu MF8xCi1saWJvcGVuY3Zfb2JqZGV0ZWN0LnNvLjQwNiBsaWJvcGVuY3YtNC42LjBfMQotbGlib3Bl bmN2X2Rubi5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl9zaGFwZS5zby40MDYg bGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl9zdGl0Y2hpbmcuc28uNDA2IGxpYm9wZW5jdi00 LjYuMF8xCi1saWJvcGVuY3ZfcGhvdG8uc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVu Y3ZfdmlkZW8uc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfY2FsaWIzZC5zby40 MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl9mZWF0dXJlczJkLnNvLjQwNiBsaWJvcGVu Y3YtNC42LjBfMQotbGlib3BlbmN2X2ZsYW5uLnNvLjQwNiBsaWJvcGVuY3YtNC42LjBfMQotbGli b3BlbmN2X2hpZ2hndWkuc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfdmlkZW9p by5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl9pbWdjb2RlY3Muc28uNDA2IGxp Ym9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfaW1ncHJvYy5zby40MDYgbGlib3BlbmN2LTQuNi4w XzEKLWxpYm9wZW5jdl9jb3JlLnNvLjQwNiBsaWJvcGVuY3YtNC42LjBfMQotbGlib3BlbmN2X3N1 cGVycmVzLnNvLjQwNiBsaWJvcGVuY3YtNC42LjBfMQotbGlib3BlbmN2X3ZpZGVvc3RhYi5zby40 MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl9nYXBpLnNvLjQwNiBsaWJvcGVuY3YtNC42 LjBfMQotbGlib3BlbmN2X3hvYmpkZXRlY3Quc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJv cGVuY3ZfZGF0YXNldHMuc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfZG5uX29i amRldGVjdC5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl9kbm5fc3VwZXJyZXMu c28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfZHBtLnNvLjQwNiBsaWJvcGVuY3Yt NC42LjBfMQotbGlib3BlbmN2X3BoYXNlX3Vud3JhcHBpbmcuc28uNDA2IGxpYm9wZW5jdi00LjYu MF8xCi1saWJvcGVuY3Zfc3RlcmVvLnNvLjQwNiBsaWJvcGVuY3YtNC42LjBfMQotbGlib3BlbmN2 X3JhcGlkLnNvLjQwNiBsaWJvcGVuY3YtNC42LjBfMQotbGlib3BlbmN2X2ludGVuc2l0eV90cmFu c2Zvcm0uc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfYWxwaGFtYXQuc28uNDA2 IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfYmFyY29kZS5zby40MDYgbGlib3BlbmN2LTQu Ni4wXzEKLWxpYm9wZW5jdl9tY2Muc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCitsaWJvcGVuY3Zf cXVhbGl0eS5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9yZWcuc28uNDA3IGxp Ym9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3Zfc3VyZmFjZV9tYXRjaGluZy5zby40MDcgbGlib3Bl bmN2LTQuNy4wXzEKK2xpYm9wZW5jdl94cGhvdG8uc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCits aWJvcGVuY3ZfZnJlZXR5cGUuc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3ZfZnV6 enkuc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3ZfaGZzLnNvLjQwNyBsaWJvcGVu Y3YtNC43LjBfMQorbGlib3BlbmN2X2ltZ19oYXNoLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQor bGlib3BlbmN2X2xpbmVfZGVzY3JpcHRvci5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xpYm9w ZW5jdl9zYWxpZW5jeS5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9zdHJ1Y3R1 cmVkX2xpZ2h0LnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2X2FydWNvLnNvLjQw NyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2X2Jnc2VnbS5zby40MDcgbGlib3BlbmN2LTQu Ny4wXzEKK2xpYm9wZW5jdl9iaW9pbnNwaXJlZC5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xp Ym9wZW5jdl9jY2FsaWIuc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3ZfZmFjZS5z by40MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl90cmFja2luZy5zby40MDcgbGlib3Bl bmN2LTQuNy4wXzEKK2xpYm9wZW5jdl94ZmVhdHVyZXMyZC5zby40MDcgbGlib3BlbmN2LTQuNy4w XzEKK2xpYm9wZW5jdl9vcHRmbG93LnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2 X3hpbWdwcm9jLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2X3Bsb3Quc28uNDA3 IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3ZfdGV4dC5zby40MDcgbGlib3BlbmN2LTQuNy4w XzEKK2xpYm9wZW5jdl9tbC5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9vYmpk ZXRlY3Quc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3ZfZG5uLnNvLjQwNyBsaWJv cGVuY3YtNC43LjBfMQorbGlib3BlbmN2X3NoYXBlLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQor bGlib3BlbmN2X3N0aXRjaGluZy5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9w aG90by5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl92aWRlby5zby40MDcgbGli b3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9jYWxpYjNkLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBf MQorbGlib3BlbmN2X2ZlYXR1cmVzMmQuc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVu Y3ZfZmxhbm4uc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3ZfaGlnaGd1aS5zby40 MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl92aWRlb2lvLnNvLjQwNyBsaWJvcGVuY3Yt NC43LjBfMQorbGlib3BlbmN2X2ltZ2NvZGVjcy5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xp Ym9wZW5jdl9pbWdwcm9jLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2X2NvcmUu c28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3Zfc3VwZXJyZXMuc28uNDA3IGxpYm9w ZW5jdi00LjcuMF8xCitsaWJvcGVuY3ZfdmlkZW9zdGFiLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBf MQorbGlib3BlbmN2X2dhcGkuc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3ZfeG9i amRldGVjdC5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9kYXRhc2V0cy5zby40 MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9kbm5fb2JqZGV0ZWN0LnNvLjQwNyBsaWJv cGVuY3YtNC43LjBfMQorbGlib3BlbmN2X2Rubl9zdXBlcnJlcy5zby40MDcgbGlib3BlbmN2LTQu Ny4wXzEKK2xpYm9wZW5jdl9kcG0uc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3Zf cGhhc2VfdW53cmFwcGluZy5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9zdGVy ZW8uc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3ZfcmFwaWQuc28uNDA3IGxpYm9w ZW5jdi00LjcuMF8xCitsaWJvcGVuY3ZfaW50ZW5zaXR5X3RyYW5zZm9ybS5zby40MDcgbGlib3Bl bmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9hbHBoYW1hdC5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEK K2xpYm9wZW5jdl9iYXJjb2RlLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2X21j Yy5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEKIGxpYnVuaWNvbmYuc28uNC42IHd2c3RyZWFtcy00 LjYuMV8yMAogbGlid3ZiYXNlLnNvLjQuNiB3dnN0cmVhbXMtNC42LjFfMjAKIGxpYnd2dXRpbHMu c28uNC42IHd2c3RyZWFtcy00LjYuMV8yMApkaWZmIC0tZ2l0IGEvc3JjcGtncy9vcGVuY3YvdGVt cGxhdGUgYi9zcmNwa2dzL29wZW5jdi90ZW1wbGF0ZQppbmRleCBhZWE0YmZjM2EyNjVjZi4uNDk4 YmVlNzg5ZDY0MGYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvb3BlbmN2L3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3Mvb3BlbmN2L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnb3BlbmN2JwogcGtnbmFtZT1vcGVuY3YKLXZlcnNpb249NC42LjAKLXJldmlzaW9uPTYKK3Zl cnNpb249NC43LjAKK3JldmlzaW9uPTEKIGNyZWF0ZV93cmtzcmM9eWVzCiBidWlsZF93cmtzcmM9 JHtwa2duYW1lfS0ke3ZlcnNpb259CiBidWlsZF9zdHlsZT1jbWFrZQpAQCAtMTMsNyArMTMsNyBA QCBjb25maWd1cmVfYXJncz0iLURFTkFCTEVfUFJFQ09NUElMRURfSEVBREVSUz1PRkYgLURXSVRI X09QRU5NUD1PTgogIC1EQlVJTERfb3BlbmN2X3dlY2hhdF9xcmNvZGU9T0ZGIC1EQlVJTERfb3Bl bmN2X3JnYmQ9T0ZGCiAgLURCVUlMRF9URVNUUz1PRkYgLURCVUlMRF9QRVJGX1RFU1RTPU9GRiIK IGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBlaWdlbiBweXRob24zLW51bXB5IHB5dGhvbjMt c2V0dXB0b29scyIKLW1ha2VkZXBlbmRzPSJmZm1wZWctZGV2ZWwgbGlicG5nLWRldmVsIGxpYmpw ZWctdHVyYm8tZGV2ZWwgdGlmZi1kZXZlbAorbWFrZWRlcGVuZHM9ImZmbXBlZzYtZGV2ZWwgbGli cG5nLWRldmVsIGxpYmpwZWctdHVyYm8tZGV2ZWwgdGlmZi1kZXZlbAogIGphc3Blci1kZXZlbCBv Y2wtaWNkLWRldmVsIGxpYmdvbXAtZGV2ZWwgbGlib3BlbmV4ci1kZXZlbCBndGsrMy1kZXZlbAog IGxpYmdwaG90bzItZGV2ZWwgZ3N0LXBsdWdpbnMtYmFzZTEtZGV2ZWwgb3BlbmJsYXMtZGV2ZWwK ICBweXRob24zLW51bXB5IHB5dGhvbjMtZGV2ZWwiCkBAIC0yNCw4ICsyNCw4IEBAIGhvbWVwYWdl PSJodHRwczovL29wZW5jdi5vcmciCiBjaGFuZ2Vsb2c9Imh0dHBzOi8vZ2l0aHViLmNvbS9vcGVu Y3Yvb3BlbmN2L3dpa2kvQ2hhbmdlTG9nIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20v b3BlbmN2L29wZW5jdi9hcmNoaXZlLyR7dmVyc2lvbn0udGFyLmd6CiAgaHR0cHM6Ly9naXRodWIu Y29tL29wZW5jdi9vcGVuY3ZfY29udHJpYi9hcmNoaXZlLyR7dmVyc2lvbn0udGFyLmd6PmNvbnRy aWIudGFyLmd6IgotY2hlY2tzdW09IjFlYzFjYmE2NWY5ZjIwZmU1YTQxZmRhMTU4NmUwMWM3MGVh MGM5YTZkN2I2N2M5ZTEzZWRmMGNmZTIyMzkyNzcKLSAxNzc3ZDVmZDJiNTkwMjljZjUzN2U1ZmQ2 ZjhhYTY4ZDcwNzA3NTgyMmY5MGJkZTY4M2ZjZGUwODZmODVmN2E3IgorY2hlY2tzdW09IjhkZjAw NzljZGJlMTc5NzQ4YTE4ZDQ0NzMxYWY2MmEyNDVhNDVlYmY1MDg1MjIzZGMwMzEzMzk1NGM2NjI5 NzMKKyA0MmRmODQwY2Y5MDU1ZTU5ZDBlMjJjMjQ5Y2ZiMTlmMDQ3NDNlMWJkYWQxMTNkMzFiMTU3 M2QzOTM0ZDYyNTg0IgogcGF0Y2hfYXJncz0iLU5wMSAtZCAke2J1aWxkX3dya3NyY30iCiAjIHRl c3RzIGhhbmcgaW5kZW5maW5pdGVseSwgZXZlbiB3aXRoIHRlc3QgZGF0YSBpbmNsdWRlZAogbWFr ZV9jaGVjaz1ubwoKRnJvbSAyMGRmYTJmZTg5NDkxZmNkODYzNTQ0ZDlmYjc1NTVhNDg1MDZkY2Ji IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29t PgpEYXRlOiBTdW4sIDE1IE9jdCAyMDIzIDIxOjE4OjM2IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAw OS84OV0gc3VtbzogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL3N1bW8vdGVtcGxh dGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zdW1vL3RlbXBsYXRlIGIvc3JjcGtncy9zdW1vL3Rl bXBsYXRlCmluZGV4IGE3MzBhZmE5ZmFmYTkyLi5mNTQ3NWFjOWI1YzAwYSAxMDA2NDQKLS0tIGEv c3JjcGtncy9zdW1vL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvc3Vtby90ZW1wbGF0ZQpAQCAtMSwx MCArMSwxMCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnc3VtbycKIHBrZ25hbWU9c3VtbwogdmVy c2lvbj0xLjEyLjAKLXJldmlzaW9uPTcKK3JldmlzaW9uPTgKIGJ1aWxkX3N0eWxlPWNtYWtlCiBo b3N0bWFrZWRlcGVuZHM9ImxpYmdkYWwtdG9vbHMgcGtnLWNvbmZpZyBzd2lnIHB5dGhvbjMtc2V0 dXB0b29scyIKLW1ha2VkZXBlbmRzPSJweXRob24zLWRldmVsIGZmbXBlZy1kZXZlbCBmb3gtZGV2 ZWwgZ2wycHMtZGV2ZWwgbGliZ2RhbC1kZXZlbAorbWFrZWRlcGVuZHM9InB5dGhvbjMtZGV2ZWwg ZmZtcGVnNi1kZXZlbCBmb3gtZGV2ZWwgZ2wycHMtZGV2ZWwgbGliZ2RhbC1kZXZlbAogIGxpYnhl cmNlcy1jLWRldmVsIG9zZy1kZXZlbCBwcm9qLWRldmVsIgogc2hvcnRfZGVzYz0iU1VNTyAoU2lt dWxhdGlvbiBvZiBVcmJhbiBNT2JpbGl0eSkgYW5kIGluY2x1ZGVkIGFwcGxpY2F0aW9ucyIKIG1h aW50YWluZXI9IldhcnJpb3IgR3JhcGggPG1hcnF1ZXNAbGFyY2VzLnVlY2UuYnI+IgoKRnJvbSAw ODg2ODAyNjNjYWJhNjUzZmJhOGMyMmY3OGU0YWIxMDJlMjBlZDNmIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1h ciAyMDIzIDIwOjAxOjUyIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAxMC84OV0gdW5wYXBlcjogdXBk YXRlIHRvIDcuMC4wLgoKLS0tCiBzcmNwa2dzL3VucGFwZXIvdGVtcGxhdGUgfCAxNiArKysrKysr Ky0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdW5wYXBlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvdW5wYXBl ci90ZW1wbGF0ZQppbmRleCAzOGVkNDdhNTg0MDE2NS4uNjBkM2UyNTE3NTRkY2YgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvdW5wYXBlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3VucGFwZXIvdGVtcGxh dGUKQEAgLTEsMTMgKzEsMTMgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3VucGFwZXInCiBwa2du YW1lPXVucGFwZXIKLXZlcnNpb249Ni4xCi1yZXZpc2lvbj0zCi1idWlsZF9zdHlsZT1nbnUtY29u ZmlndXJlCit2ZXJzaW9uPTcuMC4wCityZXZpc2lvbj0xCitidWlsZF9zdHlsZT1tZXNvbgoraG9z dG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIG1lc29uIGxpYnhzbHQiCittYWtlZGVwZW5kcz0iZmZt cGVnNi1kZXZlbCBweXRob24zLVNwaGlueCIKK3Nob3J0X2Rlc2M9IlBvc3QtcHJvY2Vzc2luZyB0 b29sIGZvciBzY2FubmVkIHNoZWV0cyBvZiBwYXBlciIKIG1haW50YWluZXI9Ik9ycGhhbmVkIDxv cnBoYW5Adm9pZGxpbnV4Lm9yZz4iCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgbGlieHNs dCIKLW1ha2VkZXBlbmRzPSJmZm1wZWctZGV2ZWwiCi1saWNlbnNlPSJHUEwtMiIKK2xpY2Vuc2U9 IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93d3cuZmxhbWVleWVzLmV1L3By b2plY3RzL3VucGFwZXIiCi1zaG9ydF9kZXNjPSJBIHBvc3QtcHJvY2Vzc2luZyB0b29sIGZvciBz Y2FubmVkIHNoZWV0cyBvZiBwYXBlciIKIGRpc3RmaWxlcz0iaHR0cHM6Ly93d3cuZmxhbWVleWVz LmV1L2ZpbGVzLyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0yMzdjODRm NWRhNTQ0YjNmNzcwOTgyN2Y5ZjEyYzM3YzM0NmNkZjAyOWIxMTI4ZmI0NjMzZjliYWZhNWNiOTMw CitjaGVja3N1bT0yNTc1ZmJiZjI2YzIyNzE5ZDFjYjg4MmI1OTYwMmM5OTAwYzdmNzQ3MTE4YWMx MzA4ODNmNjM0MTliZTQ2YTgwCgpGcm9tIGQzNTVkYWE2ODc0OTU4YTM4YjI3YjhlYTA1NzZhZDlj MGY2ODI4ZGIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBn bWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMTk6NTk6NDUgLTA0MDAKU3ViamVjdDog W1BBVENIIDExLzg5XSBhY3Rpb25hOiByZXZidW1wIGZvciBvcGVuY3YtNC43LjAKCi0tLQogc3Jj cGtncy9hY3Rpb25hL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9u KCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hY3Rpb25hL3RlbXBsYXRl IGIvc3JjcGtncy9hY3Rpb25hL3RlbXBsYXRlCmluZGV4IGNmNWYwYjdhMmFlNjEwLi4wZDg5OTMx MWU2ZGY3NSAxMDA2NDQKLS0tIGEvc3JjcGtncy9hY3Rpb25hL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvYWN0aW9uYS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J2FjdGlvbmEnCiBwa2duYW1lPWFjdGlvbmEKIHZlcnNpb249My4xMC4xCi1yZXZpc2lvbj0yCity ZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1xbWFrZQogY29uZmlndXJlX2FyZ3M9IlBLR0NPTkZJR19P UEVOQ1Y9b3BlbmN2NCIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBxdDUtcGx1Z2luLW15 c3FsIHF0NS1xbWFrZSBxdDUtaG9zdC10b29scyIKCkZyb20gYmYzNzU4ODc2NjNkM2I2ZDhhZWYz MDk4OGJmMzZlZDQzNGY4MGExYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2Ug PHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAxOTo1OTo0NiAtMDQw MApTdWJqZWN0OiBbUEFUQ0ggMTIvODldIHJldHJvc2hhcmU6IHJldmJ1bXAgZm9yIG9wZW5jdi00 LjcuMAoKLS0tCiBzcmNwa2dzL3JldHJvc2hhcmUvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hh bmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dz L3JldHJvc2hhcmUvdGVtcGxhdGUgYi9zcmNwa2dzL3JldHJvc2hhcmUvdGVtcGxhdGUKaW5kZXgg MzVhMjczMmM3N2Y2MzQuLjMxYTQwYTZhYzZkNGE3IDEwMDY0NAotLS0gYS9zcmNwa2dzL3JldHJv c2hhcmUvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9yZXRyb3NoYXJlL3RlbXBsYXRlCkBAIC0xLDcg KzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncmV0cm9zaGFyZScKIHBrZ25hbWU9cmV0cm9z aGFyZQogdmVyc2lvbj0wLjYuNgotcmV2aXNpb249NAorcmV2aXNpb249NQogYnVpbGRfc3R5bGU9 cW1ha2UKICNYWFggYnJvYWRjYXN0IGZlYXR1cmUgcmVxdWlyZXMgYW4gYW5jaWVudCB1ZHAtZGlz Y292ZXJ5LWNwcCB3aGljaCBlaXRoZXIgbmVlZHMKICMgdG8gYmUgZmV0Y2hlZCtwYXRjaGVkIChG VEJGUykgaGVyZSBvciBwYWNrYWdlZCA6LwoKRnJvbSBkMDc1MTNlNjQzM2I3ZmJjM2ViNWRhNDJi YjQ3Zjk0NDViOGM5MWY4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxp Y2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDE5OjU5OjQ2IC0wNDAwClN1 YmplY3Q6IFtQQVRDSCAxMy84OV0gd2FpZnUyeC1jb252ZXJ0ZXItY3BwOiByZXZidW1wIGZvciBv cGVuY3YtNC43LjAKCi0tLQogc3JjcGtncy93YWlmdTJ4LWNvbnZlcnRlci1jcHAvdGVtcGxhdGUg fCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL3dhaWZ1MngtY29udmVydGVyLWNwcC90ZW1wbGF0ZSBiL3NyY3Br Z3Mvd2FpZnUyeC1jb252ZXJ0ZXItY3BwL3RlbXBsYXRlCmluZGV4IDM2MWI4YTIzYjk0OTc3Li5j NWFjMTdlYjU0ZWE0YyAxMDA2NDQKLS0tIGEvc3JjcGtncy93YWlmdTJ4LWNvbnZlcnRlci1jcHAv dGVtcGxhdGUKKysrIGIvc3JjcGtncy93YWlmdTJ4LWNvbnZlcnRlci1jcHAvdGVtcGxhdGUKQEAg LTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd3YWlmdTJ4LWNvbnZlcnRlci1jcHAn CiBwa2duYW1lPXdhaWZ1MngtY29udmVydGVyLWNwcAogdmVyc2lvbj01LjIuNAotcmV2aXNpb249 MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItRElOU1RB TExfTU9ERUxTPU9OIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIgoKRnJvbSA2ZDlhMmRh Yzg5N2ZkNmY2MTgyNWQ4MzIwMDQwNDI1MDdmNTQwMTQ3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBUdWUsIDE3IE9jdCAyMDIz IDA4OjU0OjExIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAxNC84OV0gTmV3IHBhY2thZ2U6IHNwZXgt eCByZXBsYWNlcyBzcGVrLWFsdGVybmF0aXZlIGZvcgogZmZtcGVnNgoKLS0tCiBzcmNwa2dzL3Nw ZWstYWx0ZXJuYXRpdmUgICAgICAgICAgICAgICAgICAgICAgfCAgMSArCiBzcmNwa2dzL3NwZWst eC9wYXRjaGVzL211c2wucGF0Y2ggICAgICAgICAgICAgfCAgNyArKysrKysKIHNyY3BrZ3Mve3Nw ZWstYWx0ZXJuYXRpdmUgPT4gc3Blay14fS90ZW1wbGF0ZSB8IDIzICsrKysrKysrKysrKy0tLS0t LS0KIDMgZmlsZXMgY2hhbmdlZCwgMjMgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKIGNy ZWF0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL3NwZWstYWx0ZXJuYXRpdmUKIGNyZWF0ZSBtb2RlIDEw MDY0NCBzcmNwa2dzL3NwZWsteC9wYXRjaGVzL211c2wucGF0Y2gKIHJlbmFtZSBzcmNwa2dzL3tz cGVrLWFsdGVybmF0aXZlID0+IHNwZWsteH0vdGVtcGxhdGUgKDUwJSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL3NwZWstYWx0ZXJuYXRpdmUgYi9zcmNwa2dzL3NwZWstYWx0ZXJuYXRpdmUKbmV3IGZp bGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAwMDAuLjc2NjQ4MjM2ZGE3MDE3Ci0tLSAv ZGV2L251bGwKKysrIGIvc3JjcGtncy9zcGVrLWFsdGVybmF0aXZlCkBAIC0wLDAgKzEgQEAKK3Nw ZWsteApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc3Bl ay14L3BhdGNoZXMvbXVzbC5wYXRjaCBiL3NyY3BrZ3Mvc3Blay14L3BhdGNoZXMvbXVzbC5wYXRj aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uNjYyZjQ1OTM2ZmVi YzYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3NwZWsteC9wYXRjaGVzL211c2wucGF0Y2gK QEAgLTAsMCArMSw3IEBACistLS0gYS90ZXN0cy9wZXJmLmNjCTIwMjQtMDMtMDkgMTc6MTM6NDku MDg2NjAzNDE4IC0wNTAwCisrKysgYi90ZXN0cy9wZXJmLmNjCTIwMjQtMDMtMDkgMTc6MTM6NTku NDUzNjAzNzUzIC0wNTAwCitAQCAtMSwzICsxLDQgQEAKKysjaW5jbHVkZSA8Y3N0ZGludD4KKyAj aW5jbHVkZSA8Y3N0ZGxpYj4KKyAjaW5jbHVkZSA8aW9zdHJlYW0+CisgI2luY2x1ZGUgPGZzdHJl YW0+CmRpZmYgLS1naXQgYS9zcmNwa2dzL3NwZWstYWx0ZXJuYXRpdmUvdGVtcGxhdGUgYi9zcmNw a2dzL3NwZWsteC90ZW1wbGF0ZQpzaW1pbGFyaXR5IGluZGV4IDUwJQpyZW5hbWUgZnJvbSBzcmNw a2dzL3NwZWstYWx0ZXJuYXRpdmUvdGVtcGxhdGUKcmVuYW1lIHRvIHNyY3BrZ3Mvc3Blay14L3Rl bXBsYXRlCmluZGV4IGQ3YjU1Yzc3NmIxZDQzLi43YTNmYTMzNGNiNGJkNyAxMDA2NDQKLS0tIGEv c3JjcGtncy9zcGVrLWFsdGVybmF0aXZlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvc3Blay14L3Rl bXBsYXRlCkBAIC0xLDE4ICsxLDE5IEBACi0jIFRlbXBsYXRlIGZpbGUgZm9yICdzcGVrLWFsdGVy bmF0aXZlJwotcGtnbmFtZT1zcGVrLWFsdGVybmF0aXZlCi12ZXJzaW9uPTAuOC4yLjMKLXJldmlz aW9uPTIKKyMgVGVtcGxhdGUgZmlsZSBmb3IgJ3NwZWsteCcKK3BrZ25hbWU9c3Blay14Cit2ZXJz aW9uPTAuOS4zCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBob3N0bWFr ZWRlcGVuZHM9ImF1dG9tYWtlIGdldHRleHQtZGV2ZWwgaW50bHRvb2wgbGlidG9vbCBwa2ctY29u ZmlnCiAgd3hXaWRnZXRzLWNvbW1vbiB3eFdpZGdldHMtZ3RrMy1kZXZlbCIKIG1ha2VkZXBlbmRz PSJmZm1wZWctZGV2ZWwgd3hXaWRnZXRzLWd0azMtZGV2ZWwiCiBkZXBlbmRzPSJmZm1wZWciCiBz aG9ydF9kZXNjPSJBY291c3RpYyBzcGVjdHJ1bSBhbmFseXNlciIKLW1haW50YWluZXI9IkthcnRp ayBTaW5naCA8a2FydGlrLnlud2FAZ21haWwuY29tPiIKK21haW50YWluZXI9InpsaWNlIDx6bGlj ZTU1NUBnbWFpbC5jb20+IgogbGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKLWhvbWVwYWdlPSJo dHRwczovL2dpdGh1Yi5jb20vd2l0aG1vcnRlbi9zcGVrLWFsdGVybmF0aXZlIgotZGlzdGZpbGVz PSJodHRwczovL2dpdGh1Yi5jb20vd2l0aG1vcnRlbi9zcGVrLWFsdGVybmF0aXZlL2FyY2hpdmUv JHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT0iMDA3YmE0Yjg0YTMxMGIwNzhlMzc4YWE4NGM4 ZTgwNzgzZGI1ODIxNDM3YTc1N2E0ODhjM2VjZWMzNzdlNmIyYSIKK2hvbWVwYWdlPSJodHRwczov L2dpdGh1Yi5jb20vTWlrZVdhbmcwMDAwMDAvc3Blay14IgorZGlzdGZpbGVzPSJodHRwczovL2dp dGh1Yi5jb20vTWlrZVdhbmcwMDAwMDAvc3Blay14L2FyY2hpdmUvdiR7dmVyc2lvbn0udGFyLmd6 IgorY2hlY2tzdW09IjdmNGIxMDk5MDMzMzNjZGQzMTBhYjJiOTE3NmYwZGM0OWE1NjU4OTEzNzZl MjgxYTIzM2QzNDJjZWRmOTBlZjciCityZXBsYWNlcz0ic3Blay1hbHRlcm5hdGl2ZXM8PTAuOC4y LjNfMiIKIAogQ1hYRkxBR1M9Ii1EX0xBUkdFRklMRV9TT1VSQ0UgLURfRklMRV9PRkZTRVRfQklU Uz02NCIKIApAQCAtMjIsMyArMjMsOSBAQCBleHBvcnQgV1hfQ09ORklHX05BTUU9Ind4LWNvbmZp Zy1ndGszIgogcHJlX2NvbmZpZ3VyZSgpIHsKIAlOT0NPTkZJR1VSRT0xIC4vYXV0b2dlbi5zaAog fQorCitzcGVrLWFsdGVybmF0aXZlX3BhY2thZ2UoKSB7CisJZGVwZW5kcz0ic3Blay14IgorCXNo b3J0X2Rlc2MrPSIgLSB0cmFuc2l0aW9uYWwgZHVtbXkgcGFja2FnZSIKKwlidWlsZF9zdHlsZT1t ZXRhCit9CgpGcm9tIGZkYmJhMjZhN2M0M2MxODI4YWM0MGE0N2RjZGZjY2NmNWY4ZjU1ZTMgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRh dGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDUgLTA0MDAKU3ViamVjdDogW1BBVENIIDE1Lzg5 XSBhdHRyYWN0OiByZXZidW1wIGZvciBmZm1wZWc2CgphdHRyYWN0IDogcmVkbwotLS0KIHNyY3Br Z3MvYXR0cmFjdC90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9u cygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F0dHJhY3QvdGVtcGxh dGUgYi9zcmNwa2dzL2F0dHJhY3QvdGVtcGxhdGUKaW5kZXggNzc2Y2JlNGViZDJjOTMuLmY2Y2Rh OTQxYzI5N2NmIDEwMDY0NAotLS0gYS9zcmNwa2dzL2F0dHJhY3QvdGVtcGxhdGUKKysrIGIvc3Jj cGtncy9hdHRyYWN0L3RlbXBsYXRlCkBAIC0xLDEyICsxLDEyIEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdhdHRyYWN0JwogcGtnbmFtZT1hdHRyYWN0CiB2ZXJzaW9uPTIuNy4wCi1yZXZpc2lvbj0y CityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1nbnUtbWFrZWZpbGUKIG1ha2VfYnVpbGRfYXJncz0i VkVSQk9TRT0xIgogbWFrZV91c2VfZW52PXllcwogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmln IgotbWFrZWRlcGVuZHM9IlNGTUwtZGV2ZWwgZmZtcGVnLWRldmVsIGZvbnRjb25maWctZGV2ZWwg Z2x1LWRldmVsIGxpYmFyY2hpdmUtZGV2ZWwKK21ha2VkZXBlbmRzPSJTRk1MLWRldmVsIGZmbXBl ZzYtZGV2ZWwgZm9udGNvbmZpZy1kZXZlbCBnbHUtZGV2ZWwgbGliYXJjaGl2ZS1kZXZlbAogIGxp YmN1cmwtZGV2ZWwgbGlianBlZy10dXJiby1kZXZlbCBsaWJYaW5lcmFtYS1kZXZlbCBsaWJYcmFu ZHItZGV2ZWwiCiBzaG9ydF9kZXNjPSJBdHRyYWN0LU1vZGUgaXMgYSBncmFwaGljYWwgZnJvbnRl bmQgZm9yIGVtdWxhdG9ycyIKIG1haW50YWluZXI9IlBlZHJvIE5hcmNpc28gR2FyY8OtYSBSZXZp bmd0b24gPHAucmV2aW5ndG9uQGdtYWlsLmNvbT4iCgpGcm9tIDY2ODJkNmVhOWE1OTZlODZkMzJi ZjFiZGJmOWViYzcwZWIyYzU1OTggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNl IDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDUgLTA0 MDAKU3ViamVjdDogW1BBVENIIDE2Lzg5XSBhdWJpbzogcmV2YnVtcCBmb3IgZmZtcGVnNgoKYXVi aW8gOiByZWRvCi0tLQogc3JjcGtncy9hdWJpby9wYXRjaGVzL2ZmbXBlZzUucGF0Y2ggICAgfCAy NSArKysrKysrKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2F1YmlvL3BhdGNoZXMvcHl0aG9u My4xMi5wYXRjaCB8IDIxICsrKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9hdWJpby90ZW1w bGF0ZSAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiAzIGZpbGVzIGNoYW5nZWQsIDQ4IGluc2Vy dGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9hdWJp by9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2F1Ymlv L3BhdGNoZXMvcHl0aG9uMy4xMi5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXViaW8vcGF0 Y2hlcy9mZm1wZWc1LnBhdGNoIGIvc3JjcGtncy9hdWJpby9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAuLmFhY2U0MWE2ZTZkOWE0 Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9hdWJpby9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gK QEAgLTAsMCArMSwyNSBAQAorRnJvbSA4YTA1NDIwZTVkZDhjN2I4YjI0NDdmODJkYzkxOTc2NTg3 NjUxMWIzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogUGF1bCBCcm9zc2llciA8cGll bUBwaWVtLm9yZz4KK0RhdGU6IFR1ZSwgMjUgSmFuIDIwMjIgMTg6MzA6MjcgKzAxMDAKK1N1Ympl Y3Q6IFtQQVRDSF0gW3NvdXJjZV9hdmNvZGVjXSBkZWZpbmUgRkZfQVBJX0xBVkZfQVZDVFggZm9y IGxpYmF2Y29kZWMgPgorIDU5LCB0aHggQGJlcm9saW51eCAoY2xvc2VzIGdoLTM1MykKKworLS0t Cisgc3JjL2lvL3NvdXJjZV9hdmNvZGVjLmMgfCA0ICsrKysKKyAxIGZpbGUgY2hhbmdlZCwgNCBp bnNlcnRpb25zKCspCisKK2RpZmYgLS1naXQgYS9zcmMvaW8vc291cmNlX2F2Y29kZWMuYyBiL3Ny Yy9pby9zb3VyY2VfYXZjb2RlYy5jCitpbmRleCBlMGFlOTNiNS4uMTQyMWJkOWEgMTAwNjQ0Cist LS0gYS9zcmMvaW8vc291cmNlX2F2Y29kZWMuYworKysrIGIvc3JjL2lvL3NvdXJjZV9hdmNvZGVj LmMKK0BAIC02OCw2ICs2OCwxMCBAQAorICNkZWZpbmUgQVVCSU9fQVZDT0RFQ19NQVhfQlVGRkVS X1NJWkUgQVZfSU5QVVRfQlVGRkVSX01JTl9TSVpFCisgI2VuZGlmCisgCisrI2lmIExJQkFWQ09E RUNfVkVSU0lPTl9NQUpPUiA+PSA1OQorKyNkZWZpbmUgRkZfQVBJX0xBVkZfQVZDVFggMQorKyNl bmRpZgorKworIHN0cnVjdCBfYXViaW9fc291cmNlX2F2Y29kZWNfdCB7CisgICB1aW50X3QgaG9w X3NpemU7CisgICB1aW50X3Qgc2FtcGxlcmF0ZTsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXViaW8v cGF0Y2hlcy9weXRob24zLjEyLnBhdGNoIGIvc3JjcGtncy9hdWJpby9wYXRjaGVzL3B5dGhvbjMu MTIucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAuLjgxY2Y2 ZDFmMGY3Y2FiCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9hdWJpby9wYXRjaGVzL3B5dGhv bjMuMTIucGF0Y2gKQEAgLTAsMCArMSwyMSBAQAorLS0tIGEvd2FmbGliL0NvbnRleHQucHkJMjAy NC0wNi0wNCAwNzo0OToxMy4zOTk3OTM4MTkgLTA0MDAKKysrKyBiL3dhZmxpYi9Db250ZXh0LnB5 CTIwMjQtMDYtMDQgMDg6MDA6MzUuNDczODI0MzA2IC0wNDAwCitAQCAtMiw3ICsyLDcgQEAKKyAj IGVuY29kaW5nOiB1dGYtOAorICMgV0FSTklORyEgRG8gbm90IGVkaXQhIGh0dHBzOi8vd2FmLmlv L2Jvb2svaW5kZXguaHRtbCNfb2J0YWluaW5nX3RoZV93YWZfZmlsZQorCistaW1wb3J0IG9zLHJl LGltcCxzeXMKKytpbXBvcnQgb3MscmUsdHlwZXMsc3lzCisgZnJvbSB3YWZsaWIgaW1wb3J0IFV0 aWxzLEVycm9ycyxMb2dzCisgaW1wb3J0IHdhZmxpYi5Ob2RlCisgSEVYVkVSU0lPTj0weDIwMDBl MDAKK0BAIC0zNDQsNyArMzQ0LDcgQEAKKyAJCXJldHVybiBjYWNoZV9tb2R1bGVzW3BhdGhdCisg CWV4Y2VwdCBLZXlFcnJvcjoKKyAJCXBhc3MKKy0JbW9kdWxlPWltcC5uZXdfbW9kdWxlKFdTQ1JJ UFRfRklMRSkKKysJbW9kdWxlPXR5cGVzLk1vZHVsZVR5cGUoV1NDUklQVF9GSUxFKQorIAl0cnk6 CisgCQljb2RlPVV0aWxzLnJlYWRmKHBhdGgsbT0ncicsZW5jb2Rpbmc9ZW5jb2RpbmcpCisgCWV4 Y2VwdCBFbnZpcm9ubWVudEVycm9yOgorCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F1YmlvL3RlbXBs YXRlIGIvc3JjcGtncy9hdWJpby90ZW1wbGF0ZQppbmRleCBhZDFjNGIyNTY5OTE3OC4uOThiNWI4 MTY4YzJhMjUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYXViaW8vdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9hdWJpby90ZW1wbGF0ZQpAQCAtMSwxMSArMSwxMSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn YXViaW8nCiBwa2duYW1lPWF1YmlvCiB2ZXJzaW9uPTAuNC45Ci1yZXZpc2lvbj0xCityZXZpc2lv bj0yCiBidWlsZF9zdHlsZT13YWYzCiAjIFhYWCBsYXNoLCBwdXJlIGFuZCBzd2lnIHN1cHBvcnQu CiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgdHh0Mm1hbiIKLW1ha2VkZXBlbmRzPSJsaWJz YW1wbGVyYXRlLWRldmVsIGZmdHctZGV2ZWwgamFjay1kZXZlbCBmZm1wZWctZGV2ZWwiCittYWtl ZGVwZW5kcz0ibGlic2FtcGxlcmF0ZS1kZXZlbCBmZnR3LWRldmVsIGphY2stZGV2ZWwgZmZtcGVn Ni1kZXZlbCIKIHNob3J0X2Rlc2M9IkxpYnJhcnkgZm9yIGF1ZGlvIGxhYmVsbGluZyIKIG1haW50 YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMy4w LW9yLWxhdGVyIgoKRnJvbSBiMDY5ZmFjZWQzYWE3NDAxODMyMDU1NjM2NzM0N2NkZDlmNDYyNzgw IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29t PgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ1IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAx Ny84OV0gYXVkYWNpb3VzLXBsdWdpbnM6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCmF1ZGFjaW91cy1w bHVnaW5zIDogcmVkbwotLS0KIC4uLi9hdWRhY2lvdXMtcGx1Z2lucy9wYXRjaGVzL2ZmbXBlZzUu cGF0Y2ggICB8IDQzICsrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvYXVkYWNpb3VzLXBsdWdp bnMvdGVtcGxhdGUgICAgICAgICAgICB8ICAyICstCiAyIGZpbGVzIGNoYW5nZWQsIDQ0IGluc2Vy dGlvbnMoKyksIDEgZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2F1ZGFj aW91cy1wbHVnaW5zL3BhdGNoZXMvZmZtcGVnNS5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv YXVkYWNpb3VzLXBsdWdpbnMvcGF0Y2hlcy9mZm1wZWc1LnBhdGNoIGIvc3JjcGtncy9hdWRhY2lv dXMtcGx1Z2lucy9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMDAwMDAwMDAwMDAwMDAuLjRlNWUzNDA5OWQ3MWM0Ci0tLSAvZGV2L251bGwKKysrIGIvc3Jj cGtncy9hdWRhY2lvdXMtcGx1Z2lucy9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gKQEAgLTAsMCArMSw0 MyBAQAorY29tbWl0IDI5OGFhMzcxYzU2YzJmNTJjMjVhMzNkOWJkZWM0OTE4YjExY2ViZGMKK0F1 dGhvcjogdGliZXF1YWRvcmlhbiA8dGliZXF1YWRvcmlhbkBwb3N0ZW8uZGU+CitEYXRlOiAgIFNh dCBNYXIgMTkgMTg6NDA6MTIgMjAyMiArMDEwMAorCisgICAgYXVkYWNpb3VzLXBsdWdpbnM6IHJl YnVpbGQgYWdhaW5zdCBmZm1wZWctNS4wCisKK2RpZmYgLS1naXQgYS9zcmNwa2dzL2F1ZGFjaW91 cy1wbHVnaW5zL3BhdGNoZXMvZmZtcGVnLTUuMC5wYXRjaCBiL3NyY3BrZ3MvYXVkYWNpb3VzLXBs dWdpbnMvcGF0Y2hlcy9mZm1wZWctNS4wLnBhdGNoCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5k ZXggMDAwMDAwMDAwMC4uNjE3YzExMjE1YgorLS0tIC9kZXYvbnVsbAorKysrIGIvc3JjcGtncy9h dWRhY2lvdXMtcGx1Z2lucy9wYXRjaGVzL2ZmbXBlZy01LjAucGF0Y2gKK0BAIC0wLDAgKzEsMzEg QEAKKytGcm9tIGY2MGJlYjQwMGVlYjFlNDc3OGJiZmQ3MzhiYzRhNGNjZWYzZGU1MzkgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCisrRnJvbTogSm9obiBMaW5kZ3JlbiA8am9obkBqbGluZGdyZW4u bmV0PgorK0RhdGU6IFNhdCwgNSBNYXIgMjAyMiAxMjowNTozNCAtMDUwMAorK1N1YmplY3Q6IFtQ QVRDSF0gRml4IGJ1aWxkIHdpdGggRkZtcGVnIDUuMAorKworKy0tLQorKyBzcmMvZmZhdWRpby9m ZmF1ZGlvLWNvcmUuY2MgfCA0ICsrLS0KKysgMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygr KSwgMiBkZWxldGlvbnMoLSkKKysKKytkaWZmIC0tZ2l0IGEvc3JjL2ZmYXVkaW8vZmZhdWRpby1j b3JlLmNjIGIvc3JjL2ZmYXVkaW8vZmZhdWRpby1jb3JlLmNjCisraW5kZXggMTZkYzYzZTNhLi5h MmI5NWZkNmMgMTAwNjQ0CisrLS0tIGEvc3JjL2ZmYXVkaW8vZmZhdWRpby1jb3JlLmNjCisrKysr IGIvc3JjL2ZmYXVkaW8vZmZhdWRpby1jb3JlLmNjCisrQEAgLTI3NCw3ICsyNzQsNyBAQCBzdGF0 aWMgQVZJbnB1dEZvcm1hdCAqIGdldF9mb3JtYXRfYnlfY29udGVudCAoY29uc3QgY2hhciAqIG5h bWUsIFZGU0ZpbGUgJiBmaWxlKQorKyAgICAgICAgIEFWUHJvYmVEYXRhIGQgPSB7bmFtZSwgYnVm LCBmaWxsZWR9OworKyAgICAgICAgIHNjb3JlID0gdGFyZ2V0OworKyAKKystICAgICAgICBmID0g YXZfcHJvYmVfaW5wdXRfZm9ybWF0MiAoJiBkLCB0cnVlLCAmIHNjb3JlKTsKKysrICAgICAgICBm ID0gKEFWSW5wdXRGb3JtYXQgKikgYXZfcHJvYmVfaW5wdXRfZm9ybWF0MiAoJiBkLCB0cnVlLCAm IHNjb3JlKTsKKysgICAgICAgICBpZiAoZikKKysgICAgICAgICAgICAgYnJlYWs7CisrIAorK0BA IC0zNDcsNyArMzQ3LDcgQEAgc3RhdGljIGJvb2wgZmluZF9jb2RlYyAoQVZGb3JtYXRDb250ZXh0 ICogYywgQ29kZWNJbmZvICogY2luZm8pCisrICNlbmRpZgorKyAgICAgICAgIGlmIChzdHJlYW0g JiYgc3RyZWFtLT5jb2RlY3BhciAmJiBzdHJlYW0tPmNvZGVjcGFyLT5jb2RlY190eXBlID09IEFW TUVESUFfVFlQRV9BVURJTykKKysgICAgICAgICB7CisrLSAgICAgICAgICAgIEFWQ29kZWMgKiBj b2RlYyA9IGF2Y29kZWNfZmluZF9kZWNvZGVyIChzdHJlYW0tPmNvZGVjcGFyLT5jb2RlY19pZCk7 CisrKyAgICAgICAgICAgIEFWQ29kZWMgKiBjb2RlYyA9IChBVkNvZGVjICopIGF2Y29kZWNfZmlu ZF9kZWNvZGVyIChzdHJlYW0tPmNvZGVjcGFyLT5jb2RlY19pZCk7CisrIAorKyAgICAgICAgICAg ICBpZiAoY29kZWMpCisrICAgICAgICAgICAgIHsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXVkYWNp b3VzLXBsdWdpbnMvdGVtcGxhdGUgYi9zcmNwa2dzL2F1ZGFjaW91cy1wbHVnaW5zL3RlbXBsYXRl CmluZGV4IDRhNjdlMzYyYzNlOTFkLi4wYmUxMDYwMWQyMDUxYSAxMDA2NDQKLS0tIGEvc3JjcGtn cy9hdWRhY2lvdXMtcGx1Z2lucy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2F1ZGFjaW91cy1wbHVn aW5zL3RlbXBsYXRlCkBAIC03LDcgKzcsNyBAQCBidWlsZF9zdHlsZT1tZXNvbgogY29uZmlndXJl X2FyZ3M9IiQodm9wdF9ib29sIGd0aykgJCh2b3B0X2Jvb2wgcXQpIgogaG9zdG1ha2VkZXBlbmRz PSJnZXR0ZXh0IHBrZy1jb25maWcgZ2xpYi1kZXZlbCAkKHZvcHRfaWYgcXQgcXQ2LXRvb2xzKSIK IG1ha2VkZXBlbmRzPSJhdWRhY2lvdXMtYmFzZS1kZXZlbCBhbHNhLWxpYi1kZXZlbCBwdWxzZWF1 ZGlvLWRldmVsIGphY2stZGV2ZWwKLSBsYW1lLWRldmVsIGxpYnZvcmJpcy1kZXZlbCBsaWJmbGFj LWRldmVsIG1wZzEyMy1kZXZlbCBmYWFkMi1kZXZlbCBmZm1wZWctZGV2ZWwKKyBsYW1lLWRldmVs IGxpYnZvcmJpcy1kZXZlbCBsaWJmbGFjLWRldmVsIG1wZzEyMy1kZXZlbCBmYWFkMi1kZXZlbCBm Zm1wZWc2LWRldmVsCiAgbGlibW9kcGx1Zy1kZXZlbCBmbHVpZHN5bnRoLWRldmVsIGxpYmNkaW8t cGFyYW5vaWEtZGV2ZWwgd2F2cGFjay1kZXZlbCBsaWJub3RpZnktZGV2ZWwKICBsaWJjdXJsLWRl dmVsIGxpYm10cC1kZXZlbCBuZW9uLWRldmVsIGxpYm1tcy1kZXZlbCBsaWJ4bWwyLWRldmVsIG9w dXMtZGV2ZWwgb3B1c2ZpbGUtZGV2ZWwKICBsaWJiczJiLWRldmVsIGxpYnNveHItZGV2ZWwgbGli c2lkcGxheWZwLWRldmVsIGxpYmN1ZS1kZXZlbCBsaWJvcGVubXB0LWRldmVsIHBpcGV3aXJlLWRl dmVsCgpGcm9tIDM2YThmMzE0ZWQ3YTI0YjM2YjlmNDg3NDU3YjRiYTkxZGM0YTZmNGIgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6 IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDUgLTA0MDAKU3ViamVjdDogW1BBVENIIDE4Lzg5XSBh dWRhY2l0eTogcmV2YnVtcCBmb3IgZmZtcGVnNgoKYXVkYWNpdHkgOiByZWRvCi0tLQogc3JjcGtn cy9hdWRhY2l0eS90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9u cygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F1ZGFjaXR5L3RlbXBs YXRlIGIvc3JjcGtncy9hdWRhY2l0eS90ZW1wbGF0ZQppbmRleCA3YjgzODExOWFiMjYxMS4uZjM0 ZTBlZDE5NDY2YWQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYXVkYWNpdHkvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9hdWRhY2l0eS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ2F1ZGFjaXR5JwogcGtnbmFtZT1hdWRhY2l0eQogdmVyc2lvbj0zLjQuMgotcmV2aXNp b249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hlbHBlcj0iY21ha2Ut d3hXaWRnZXRzLWd0azMgcWVtdSIKIGNvbmZpZ3VyZV9hcmdzPSItRGF1ZGFjaXR5X3VzZV9mZm1w ZWc9bG9hZGVkIC1EYXVkYWNpdHlfbGliX3ByZWZlcmVuY2U9c3lzdGVtCkBAIC0xMiw3ICsxMiw3 IEBAIGNvbmZpZ3VyZV9hcmdzPSItRGF1ZGFjaXR5X3VzZV9mZm1wZWc9bG9hZGVkIC1EYXVkYWNp dHlfbGliX3ByZWZlcmVuY2U9c3lzdGVtCiAgLURhdWRhY2l0eV9oYXNfdXBkYXRlc19jaGVjaz1P RkYgLURBVURBQ0lUWV9CVUlMRF9MRVZFTD0yIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmln IGdldHRleHQgcHl0aG9uMyIKIG1ha2VkZXBlbmRzPSJ3eFdpZGdldHMtZ3RrMy1kZXZlbCBndGsr My1kZXZlbCBleHBhdC1kZXZlbCBsYW1lLWRldmVsCi0gbGlic294ci1kZXZlbCBwb3J0YXVkaW8t ZGV2ZWwgc3FsaXRlLWRldmVsIGZmbXBlZy1kZXZlbAorIGxpYnNveHItZGV2ZWwgcG9ydGF1ZGlv LWRldmVsIHNxbGl0ZS1kZXZlbCBmZm1wZWc2LWRldmVsCiAgbGliaWQzdGFnLWRldmVsIGxpYm1h ZC1kZXZlbCB2YW1wLXBsdWdpbi1zZGstZGV2ZWwgbGlib2dnLWRldmVsCiAgbGlidm9yYmlzLWRl dmVsIGxpYmZsYWMtZGV2ZWwgbGlsdi1kZXZlbCBsdjIgc2VyZC1kZXZlbCBzb3JkLWRldmVsCiAg c3JhdG9tLWRldmVsIHN1aWwtZGV2ZWwgcG9ydG1pZGktZGV2ZWwgc291bmR0b3VjaC1kZXZlbCB0 d29sYW1lLWRldmVsCgpGcm9tIDg0ZGNmODZiYzViYTM1YmNjNDc2M2VjYzk0MTJiNjJlNzI4NTc4 MTkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5j b20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDUgLTA0MDAKU3ViamVjdDogW1BBVENI IDE5Lzg5XSBhdmlkZW11eDogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2F2aWRl bXV4L2ZpbGVzL25lZ2F0aXZlLXNoaWZ0LnBhdGNoIHwgNzMgKysrKysrKysrKysrKysrKysrKysr CiBzcmNwa2dzL2F2aWRlbXV4L3RlbXBsYXRlICAgICAgICAgICAgICAgICAgIHwgIDggKystCiAy IGZpbGVzIGNoYW5nZWQsIDc5IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCiBjcmVhdGUg bW9kZSAxMDA2NDQgc3JjcGtncy9hdmlkZW11eC9maWxlcy9uZWdhdGl2ZS1zaGlmdC5wYXRjaAoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXZpZGVtdXgvZmlsZXMvbmVnYXRpdmUtc2hpZnQucGF0Y2gg Yi9zcmNwa2dzL2F2aWRlbXV4L2ZpbGVzL25lZ2F0aXZlLXNoaWZ0LnBhdGNoCm5ldyBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi5kZGQzZmEyYThlMjlhYQotLS0gL2Rldi9u dWxsCisrKyBiL3NyY3BrZ3MvYXZpZGVtdXgvZmlsZXMvbmVnYXRpdmUtc2hpZnQucGF0Y2gKQEAg LTAsMCArMSw3MyBAQAorCitGcm9tIGVmZmFkY2U2Yzc1NjI0N2VhOGJhZTMyZGMxM2JiM2U2ZjQ2 NGYwZWIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiA9P1VURi04P3E/Uj1DMz1BOW1p PTIwRGVuaXMtQ291cm1vbnQ/PSA8cmVtaUByZW1sYWIubmV0PgorRGF0ZTogU3VuLCAxNiBKdWwg MjAyMyAxODoxODowMiArMDMwMAorU3ViamVjdDogW1BBVENIXSBhdmNvZGVjL3g4Ni9tYXRob3Bz OiBjbGlwIGNvbnN0YW50cyB1c2VkIHdpdGggc2hpZnQKKyBpbnN0cnVjdGlvbnMgd2l0aGluIGlu bGluZSBhc3NlbWJseQorCitGaXhlcyBhc3NlbWJsaW5nIHdpdGggYmludXRpbCBhcyA+PSAyLjQx CisKK1NpZ25lZC1vZmYtYnk6IEphbWVzIEFsbWVyIDxqYW1yaWFsQGdtYWlsLmNvbT4KKy0tLQor IGxpYmF2Y29kZWMveDg2L21hdGhvcHMuaCB8IDI2ICsrKysrKysrKysrKysrKysrKysrKysrLS0t CisgMSBmaWxlIGNoYW5nZWQsIDIzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2Rp ZmYgLS1naXQgYS9saWJhdmNvZGVjL3g4Ni9tYXRob3BzLmggYi9saWJhdmNvZGVjL3g4Ni9tYXRo b3BzLmgKK2luZGV4IDYyOThmNWVkMTk4M2IuLmNhN2UyZGZmYzEwNzYgMTAwNjQ0CistLS0gbGli YXZjb2RlYy94ODYvbWF0aG9wcy5oCisrKysgbGliYXZjb2RlYy94ODYvbWF0aG9wcy5oCitAQCAt MzUsMTIgKzM1LDIwIEBACisgc3RhdGljIGF2X2Fsd2F5c19pbmxpbmUgYXZfY29uc3QgaW50IE1V TEwoaW50IGEsIGludCBiLCB1bnNpZ25lZCBzaGlmdCkKKyB7CisgICAgIGludCBydCwgZHVtbXk7 CisrICAgIGlmIChfX2J1aWx0aW5fY29uc3RhbnRfcChzaGlmdCkpCisgICAgIF9fYXNtX18gKAor ICAgICAgICAgImltdWxsICUzICAgICAgICAgICAgICAgXG5cdCIKKyAgICAgICAgICJzaHJkbCAl NCwgJSVlZHgsICUlZWF4IFxuXHQiCisgICAgICAgICA6Ij1hIihydCksICI9ZCIoZHVtbXkpCist ICAgICAgICA6ImEiKGEpLCAicm0iKGIpLCAiY2kiKCh1aW50OF90KXNoaWZ0KQorKyAgICAgICAg OiJhIihhKSwgInJtIihiKSwgImkiKHNoaWZ0ICYgMHgxRikKKyAgICAgKTsKKysgICAgZWxzZQor KyAgICAgICAgX19hc21fXyAoCisrICAgICAgICAgICAgImltdWxsICUzICAgICAgICAgICAgICAg XG5cdCIKKysgICAgICAgICAgICAic2hyZGwgJTQsICUlZWR4LCAlJWVheCBcblx0IgorKyAgICAg ICAgICAgIDoiPWEiKHJ0KSwgIj1kIihkdW1teSkKKysgICAgICAgICAgICA6ImEiKGEpLCAicm0i KGIpLCAiYyIoKHVpbnQ4X3Qpc2hpZnQpCisrICAgICAgICApOworICAgICByZXR1cm4gcnQ7Cisg fQorCitAQCAtMTEzLDE5ICsxMjEsMzEgQEAgX19hc21fXyB2b2xhdGlsZShcCisgLy8gYXZvaWQg KzMyIGZvciBzaGlmdCBvcHRpbWl6YXRpb24gKGdjYyBzaG91bGQgZG8gdGhhdCAuLi4pCisgI2Rl ZmluZSBORUdfU1NSMzIgTkVHX1NTUjMyCisgc3RhdGljIGlubGluZSAgaW50MzJfdCBORUdfU1NS MzIoIGludDMyX3QgYSwgaW50OF90IHMpeworKyAgICBpZiAoX19idWlsdGluX2NvbnN0YW50X3Ao cykpCisgICAgIF9fYXNtX18gKCJzYXJsICUxLCAlMFxuXHQiCisgICAgICAgICAgOiAiK3IiIChh KQorLSAgICAgICAgIDogImljIiAoKHVpbnQ4X3QpKC1zKSkKKysgICAgICAgICA6ICJpIiAoLXMg JiAweDFGKQorICAgICApOworKyAgICBlbHNlCisrICAgICAgICBfX2FzbV9fICgic2FybCAlMSwg JTBcblx0IgorKyAgICAgICAgICAgICAgIDogIityIiAoYSkKKysgICAgICAgICAgICAgICA6ICJj IiAoKHVpbnQ4X3QpKC1zKSkKKysgICAgICAgICk7CisgICAgIHJldHVybiBhOworIH0KKworICNk ZWZpbmUgTkVHX1VTUjMyIE5FR19VU1IzMgorIHN0YXRpYyBpbmxpbmUgdWludDMyX3QgTkVHX1VT UjMyKHVpbnQzMl90IGEsIGludDhfdCBzKXsKKysgICAgaWYgKF9fYnVpbHRpbl9jb25zdGFudF9w KHMpKQorICAgICBfX2FzbV9fICgic2hybCAlMSwgJTBcblx0IgorICAgICAgICAgIDogIityIiAo YSkKKy0gICAgICAgICA6ICJpYyIgKCh1aW50OF90KSgtcykpCisrICAgICAgICAgOiAiaSIgKC1z ICYgMHgxRikKKyAgICAgKTsKKysgICAgZWxzZQorKyAgICAgICAgX19hc21fXyAoInNocmwgJTEs ICUwXG5cdCIKKysgICAgICAgICAgICAgICA6ICIrciIgKGEpCisrICAgICAgICAgICAgICAgOiAi YyIgKCh1aW50OF90KSgtcykpCisrICAgICAgICApOworICAgICByZXR1cm4gYTsKKyB9CmRpZmYg LS1naXQgYS9zcmNwa2dzL2F2aWRlbXV4L3RlbXBsYXRlIGIvc3JjcGtncy9hdmlkZW11eC90ZW1w bGF0ZQppbmRleCAyNTNhMDI0M2UyMjU5OS4uNGFkMTIwZTFiNTI1OWIgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvYXZpZGVtdXgvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9hdmlkZW11eC90ZW1wbGF0ZQpA QCAtMSwxNCArMSwxNCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYXZpZGVtdXgnCiBwa2duYW1l PWF2aWRlbXV4CiB2ZXJzaW9uPTIuOC4wCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiAjIENhbid0 IGJlIGNvbXBpbGVkIGZvciBhYXJjaDY0LCBhcm0qIG9yIG1pcHMqCiBhcmNocz0ieDg2XzY0KiBp Njg2KiIKIGhvc3RtYWtlZGVwZW5kcz0iY21ha2UgcGtnLWNvbmZpZyBxdDUtaG9zdC10b29scyBx dDUtZGV2ZWwgdGFyIHlhc20iCiBtYWtlZGVwZW5kcz0iYWxzYS1saWItZGV2ZWwgZmFhYy1kZXZl bCBmYWFkMi1kZXZlbCBnZXR0ZXh0LWRldmVsIGphY2stZGV2ZWwgZ2x1LWRldmVsCiAgbGFtZS1k ZXZlbCBsaWJhc3MtZGV2ZWwgbGliZGNhLWRldmVsIGxpYnZvcmJpcy1kZXZlbCBsaWJYdi1kZXZl bAogIHZhcG91cnN5bnRoLWRldmVsIGxpYm1wNHYyLWRldmVsIHNxbGl0ZS1kZXZlbCBsaWJ2YS1k ZXZlbCBsaWJ2ZHBhdS1kZXZlbAotIHF0NS1tdWx0aW1lZGlhLWRldmVsIHF0NS1zY3JpcHQtZGV2 ZWwgcXQ1LXRvb2xzLWRldmVsIGZmbXBlZy1kZXZlbAorIHF0NS1tdWx0aW1lZGlhLWRldmVsIHF0 NS1zY3JpcHQtZGV2ZWwgcXQ1LXRvb2xzLWRldmVsIGZmbXBlZzYtZGV2ZWwKICBsaWJhNTItZGV2 ZWwgbGlibWFkLWRldmVsIHgyNjQtZGV2ZWwgeDI2NS1kZXZlbCB4dmlkY29yZS1kZXZlbCIKIHNo b3J0X2Rlc2M9IlZpZGVvIGVkaXRpbmcgYW5kIHByb2Nlc3NpbmcgYXBwbGljYXRpb24iCiBtYWlu dGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgpAQCAtMjUsNiArMjUsMTAg QEAgY2FzZSAiJHtYQlBTX1RBUkdFVF9NQUNISU5FfSIgaW4KIAlpNjg2KikgQ0ZMQUdTPSItZm5v LVBJQyI7OwogZXNhYwogCitwb3N0X2V4dHJhY3QoKSB7CisJY3AgJHtGSUxFU0RJUn0vKnBhdGNo ICR7d3Jrc3JjfS9hdmlkZW11eF9jb3JlL2ZmbXBlZ19wYWNrYWdlL3BhdGNoZXMvCit9CisKIGRv X2NvbmZpZ3VyZSgpIHsKIAlNQUtFRkxBR1M9JHttYWtlam9ic30gXAogCQliYXNoIGJvb3RTdHJh cC5iYXNoIFwKCkZyb20gYzljYzczZTI0NDJiYzg5NTBhN2I5YmIzMDczMDUxM2EwZDZkMzhiNyBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4K RGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0NiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMjAv ODldIGJsZW5kZXI6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCmJsZW5kZXIgOiByZWRvCi0tLQogc3Jj cGtncy9ibGVuZGVyL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRp b25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYmxlbmRlci90ZW1w bGF0ZSBiL3NyY3BrZ3MvYmxlbmRlci90ZW1wbGF0ZQppbmRleCA2ODc4N2I3NmEyNmMxOC4uN2Uz MjFhOWFkNTI1Y2QgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYmxlbmRlci90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL2JsZW5kZXIvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdibGVuZGVyJwogcGtnbmFtZT1ibGVuZGVyCiB2ZXJzaW9uPTQuMC4yCi1yZXZpc2lvbj0y CityZXZpc2lvbj0zCiBhcmNocz0ieDg2XzY0KiBwcGM2NCoiCiBidWlsZF9zdHlsZT0iY21ha2Ui CiBweWNvbXBpbGVfZGlycz0idXNyL3NoYXJlL2JsZW5kZXIvJHt2ZXJzaW9uJS4qfS9zY3JpcHRz IgpAQCAtMTcsNyArMTcsNyBAQCBjb25maWd1cmVfYXJncz0iLURXSVRIX0lOU1RBTExfUE9SVEFC TEU9T0ZGIC1EV0lUSF9QWVRIT05fSU5TVEFMTD1PRkYKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNv bmZpZyIKIG1ha2VkZXBlbmRzPSJsaWJnb21wLWRldmVsIGxpYnBuZy1kZXZlbCB0aWZmLWRldmVs IHB5dGhvbjMtZGV2ZWwgZ2x1LWRldmVsCiAgZ2xldy1kZXZlbCBmcmVldHlwZS1kZXZlbCBqYWNr LWRldmVsIGxpYm9wZW5hbC1kZXZlbCBsaWJzbmRmaWxlLWRldmVsCi0gbGlic2FtcGxlcmF0ZS1k ZXZlbCBmZm1wZWctZGV2ZWwgZmZ0dy1kZXZlbCBib29zdC1kZXZlbCBwY3JlLWRldmVsIGxsdm0K KyBsaWJzYW1wbGVyYXRlLWRldmVsIGZmbXBlZzYtZGV2ZWwgZmZ0dy1kZXZlbCBib29zdC1kZXZl bCBwY3JlLWRldmVsIGxsdm0KICBsaWJvcGVuZXhyLWRldmVsIGxpYm9wZW5qcGVnMi1kZXZlbCBs aWJYaS1kZXZlbCBvcGVuaW1hZ2Vpby1kZXZlbAogIG9wZW5jb2xvcmlvLWRldmVsIG9wZW5jb2xs YWRhLWRldmVsIHB5dGhvbjMtbnVtcHkgbGliWHJlbmRlci1kZXZlbAogIE9wZW5TdWJkaXYtZGV2 ZWwgdGJiLWRldmVsIGxpYnhtbDItZGV2ZWwgb3BlbnZkYi1kZXZlbCBhbGVtYmljLWRldmVsCgpG cm9tIGRhZWIyNDUzMDUzMDNiMGUxZmYyMjA2YzRjMGZlNGM1ZTVlZTVmZTkgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwg MjIgTWFyIDIwMjMgMjA6MDE6NDYgLTA0MDAKU3ViamVjdDogW1BBVENIIDIxLzg5XSBjYW50YXRh OiByZXZidW1wIGZvciBmZm1wZWc2CgpjYW50YXRhIDogcmVkbwotLS0KIHNyY3BrZ3MvY2FudGF0 YS90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2NhbnRhdGEvdGVtcGxhdGUgYi9zcmNw a2dzL2NhbnRhdGEvdGVtcGxhdGUKaW5kZXggNGI0MTdkODBkNWMyZGEuLjU0ZTgyZmJiODVkZmU4 IDEwMDY0NAotLS0gYS9zcmNwa2dzL2NhbnRhdGEvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9jYW50 YXRhL3RlbXBsYXRlCkBAIC0xLDEyICsxLDEyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdjYW50 YXRhJwogcGtnbmFtZT1jYW50YXRhCiB2ZXJzaW9uPTIuNS4wCi1yZXZpc2lvbj0xCityZXZpc2lv bj0yCiBidWlsZF9zdHlsZT1jbWFrZQogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIHF0NS1x bWFrZSBxdDUtaG9zdC10b29scyBxdDUtdG9vbHMiCiBtYWtlZGVwZW5kcz0icXQ1LWRldmVsIHF0 NS10b29scy1kZXZlbCBxdDUtc3ZnLWRldmVsIHF0NS14bWxwYXR0ZXJucy1kZXZlbAogIHF0NS1w bHVnaW4tbXlzcWwgcXQ1LXBsdWdpbi1wZ3NxbCBxdDUtcGx1Z2luLXNxbGl0ZSBxdDUtcGx1Z2lu LW9kYmMKLSBxdDUtcGx1Z2luLXRkcyB2bGMtZGV2ZWwgemxpYi1kZXZlbCBmZm1wZWctZGV2ZWwg dGFnbGliLWRldmVsCisgcXQ1LXBsdWdpbi10ZHMgdmxjLWRldmVsIHpsaWItZGV2ZWwgZmZtcGVn Ni1kZXZlbCB0YWdsaWItZGV2ZWwKICB0YWdsaWItZXh0cmFzLWRldmVsIGxpYm10cC1kZXZlbCBt cGcxMjMtZGV2ZWwgbGliY2RwYXJhbm9pYS1kZXZlbCBsaWJjZGRiLWRldmVsCiAgc3BlZXgtZGV2 ZWwgZXVkZXYtbGlidWRldi1kZXZlbCB1ZGlza3MyLWRldmVsIGxpYm11c2ljYnJhaW56NS1kZXZl bAogIHF0NS1tdWx0aW1lZGlhLWRldmVsIGxpYmNkaW8tcGFyYW5vaWEtZGV2ZWwiCgpGcm9tIGVj NWVhNGZmYzBmNjY1ZDExNDY2NWE0YWRiNGUzYWU1N2JiNzI2NDcgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFy IDIwMjMgMjA6MDE6NDYgLTA0MDAKU3ViamVjdDogW1BBVENIIDIyLzg5XSBjY2V4dHJhY3Rvcjog cmV2YnVtcCBmb3IgZmZtcGVnNgoKY2NleHRyYWN0b3IgOiByZWRvCi0tLQogLi4uNS1hbmQtdGVz c2VyYWN0LTUtY29tcGF0aWJpbGl0eS0xNDc5LnBhdGNoIHwgMTY4ICsrKysrKysrKysrKysrKysr Kwogc3JjcGtncy9jY2V4dHJhY3Rvci90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgIHwgICA0ICst CiAyIGZpbGVzIGNoYW5nZWQsIDE3MCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQogY3Jl YXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvY2NleHRyYWN0b3IvcGF0Y2hlcy8wMDAxLWZpeC1mZm1w ZWctNS1hbmQtdGVzc2VyYWN0LTUtY29tcGF0aWJpbGl0eS0xNDc5LnBhdGNoCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9jY2V4dHJhY3Rvci9wYXRjaGVzLzAwMDEtZml4LWZmbXBlZy01LWFuZC10ZXNz ZXJhY3QtNS1jb21wYXRpYmlsaXR5LTE0NzkucGF0Y2ggYi9zcmNwa2dzL2NjZXh0cmFjdG9yL3Bh dGNoZXMvMDAwMS1maXgtZmZtcGVnLTUtYW5kLXRlc3NlcmFjdC01LWNvbXBhdGliaWxpdHktMTQ3 OS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uYmNhYjQ4 OTA1NTRiOWEKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2NjZXh0cmFjdG9yL3BhdGNoZXMv MDAwMS1maXgtZmZtcGVnLTUtYW5kLXRlc3NlcmFjdC01LWNvbXBhdGliaWxpdHktMTQ3OS5wYXRj aApAQCAtMCwwICsxLDE2OCBAQAorRnJvbSBiMWNiZmNlYTliOWM2ODcxNDNiZjBkODBiYzE3OWI1 NjNlOTlkMDI1IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogUHJhdGVlayBTdW5hbCA8 cHJ0a3N1bmFsQGdtYWlsLmNvbT4KK0RhdGU6IFRodSwgOSBNYXIgMjAyMyAwMTo0NDo1MyArMDUz MAorU3ViamVjdDogW1BBVENIXSBmaXg6IGZmbXBlZyA1IGFuZCB0ZXNzZXJhY3QgNSBjb21wYXRp YmlsaXR5ICgjMTQ3OSkKKworKiBmaXg6IHJlcGxhY2UgZGVwcmVjYXRlZCBgY29kZWNgIHByb3Bl cnR5IHdpdGggYGNvZGVjcGFyYAorCisqIGZpeDogcmVwbGFjZSBkZXByZWNhdGVkIG1ldGhvZCBg YXZjb2RlY19kZWNvZGVfdmlkZW8yYCB3aXRoIGBhdmNvZGVjX3JlY2VpdmVfZnJhbWVgIGFuZCBg YXZjb2RlY19zZW5kX3BhY2tldGAKKworKiBVcGRhdGUgQ0hBTkdFUy5UWFQKKworKiBmaXg6IHJl bW92ZSBkZXByZWNhdGVkIGBhdl9yZWdpc3Rlcl9hbGxgIGZ1bmN0aW9uCisKKyogZml4OiBmb3Jt YXR0aW5nCisKKyogZml4OiBhZGQgc3VwcG9ydCBmb3IgdGVzc2VyYWN0IDUKKworKiBmaXg6IHRl c3NlcmFjdCB2NQorCisqIGZpeDogaGFyZHN1YnggY29kZWMgY29udGV4dCBlcnJvcgorCisqIGZp eDogbGludCBjb25zdCB3YXJuaW5nCistLS0KKyBkb2NzL0NIQU5HRVMuVFhUICAgICAgICAgICAg ICAgfCAgMSArCisgc3JjL2xpYl9jY3gvZmZtcGVnX2ludGdyLmMgICAgIHwgIDcgKysrLS0tCisg c3JjL2xpYl9jY3gvaGFyZHN1YnguYyAgICAgICAgIHwgMjUgKysrKysrKysrKysrLS0tLS0tCisg c3JjL2xpYl9jY3gvaGFyZHN1YnhfZGVjb2Rlci5jIHwgMjcgKysrKysrKystLS0tLS0tLS0tLS0K KyBzcmMvbGliX2NjeC9vY3IuYyAgICAgICAgICAgICAgfCA0NiArKysrKysrKysrKystLS0tLS0t LS0tLS0tLS0tLS0tLS0tCisgNSBmaWxlcyBjaGFuZ2VkLCA0NyBpbnNlcnRpb25zKCspLCA1OSBk ZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL3NyYy9saWJfY2N4L2ZmbXBlZ19pbnRnci5jIGIv c3JjL2xpYl9jY3gvZmZtcGVnX2ludGdyLmMKK2luZGV4IGJlOTg4ODkwLi5lNmYyMWUyMCAxMDA2 NDQKKy0tLSBhL3NyYy9saWJfY2N4L2ZmbXBlZ19pbnRnci5jCisrKysgYi9zcmMvbGliX2NjeC9m Zm1wZWdfaW50Z3IuYworQEAgLTY2LDcgKzY2LDYgQEAgdm9pZCAqaW5pdF9mZm1wZWcoY29uc3Qg Y2hhciAqcGF0aCkKKyAJc3RydWN0IGZmbXBlZ19jdHggKmN0eDsKKyAJQVZDb2RlYyAqZGVjID0g TlVMTDsKKyAJYXZjb2RlY19yZWdpc3Rlcl9hbGwoKTsKKy0JYXZfcmVnaXN0ZXJfYWxsKCk7Cisg CisgCWlmIChjY3hfb3B0aW9ucy5kZWJ1Z19tYXNrICYgQ0NYX0RNVF9WRVJCT1NFKQorIAkJYXZf bG9nX3NldF9sZXZlbChBVl9MT0dfSU5GTyk7CitAQCAtMTMzLDcgKzEzMiw2IEBAIGludCBmZl9n ZXRfY2NmcmFtZSh2b2lkICphcmcsIHVuc2lnbmVkIGNoYXIgKmRhdGEsIGludCBtYXhsZW4pCisg CXN0cnVjdCBmZm1wZWdfY3R4ICpjdHggPSBhcmc7CisgCWludCBsZW4gPSAwOworIAlpbnQgcmV0 ID0gMDsKKy0JaW50IGdvdF9mcmFtZTsKKyAJQVZQYWNrZXQgcGFja2V0OworIAorIAlyZXQgPSBh dl9yZWFkX2ZyYW1lKGN0eC0+aWZtdCwgJnBhY2tldCk7CitAQCAtMTUxLDEyICsxNDksMTMgQEAg aW50IGZmX2dldF9jY2ZyYW1lKHZvaWQgKmFyZywgdW5zaWduZWQgY2hhciAqZGF0YSwgaW50IG1h eGxlbikKKyAJCXJldHVybiBBVkVSUk9SKEVBR0FJTik7CisgCX0KKyAKKy0JcmV0ID0gYXZjb2Rl Y19kZWNvZGVfdmlkZW8yKGN0eC0+ZGVjX2N0eCwgY3R4LT5mcmFtZSwgJmdvdF9mcmFtZSwgJnBh Y2tldCk7CisrCWF2Y29kZWNfc2VuZF9wYWNrZXQoY3R4LT5jb2RlY19jdHgsICZjdHgtPnBhY2tl dCk7CisrCXJldCA9IGF2Y29kZWNfcmVjZWl2ZV9mcmFtZShjdHgtPmRlY19jdHgsIGN0eC0+ZnJh bWUpOworIAlpZiAocmV0IDwgMCkKKyAJeworIAkJYXZfbG9nKE5VTEwsIEFWX0xPR19FUlJPUiwg InVuYWJsZSB0byBkZWNvZGUgcGFja2V0XG4iKTsKKyAJfQorLQllbHNlIGlmICghZ290X2ZyYW1l KQorKwllbHNlIGlmIChyZXQgIT0gMCkKKyAJeworIAkJcmV0dXJuIEFWRVJST1IoRUFHQUlOKTsK KyAJfQorZGlmZiAtLWdpdCBhL3NyYy9saWJfY2N4L2hhcmRzdWJ4LmMgYi9zcmMvbGliX2NjeC9o YXJkc3VieC5jCitpbmRleCA0MTEzNzdmOS4uZmI4NDRjOTEgMTAwNjQ0CistLS0gYS9zcmMvbGli X2NjeC9oYXJkc3VieC5jCisrKysgYi9zcmMvbGliX2NjeC9oYXJkc3VieC5jCitAQCAtMTIsOSAr MTIsNiBAQAorCisgaW50IGhhcmRzdWJ4X3Byb2Nlc3NfZGF0YShzdHJ1Y3QgbGliX2hhcmRzdWJ4 X2N0eCAqY3R4KQorIHsKKy0JLy8gR2V0IHRoZSByZXF1aXJlZCBtZWRpYSBhdHRyaWJ1dGVzIGFu ZCBpbml0aWFsaXplIHN0cnVjdHVyZXMKKy0JYXZfcmVnaXN0ZXJfYWxsKCk7CistCisgCWlmIChh dmZvcm1hdF9vcGVuX2lucHV0KCZjdHgtPmZvcm1hdF9jdHgsIGN0eC0+aW5wdXRmaWxlWzBdLCBO VUxMLCBOVUxMKSAhPSAwKQorIAl7CisgCQlmYXRhbChFWElUX1JFQURfRVJST1IsICJFcnJvciBy ZWFkaW5nIGlucHV0IGZpbGUhXG4iKTsKK0BAIC0zMiw3ICsyOSw3IEBACisgCWN0eC0+dmlkZW9f c3RyZWFtX2lkID0gLTE7CisgCWZvciAoaW50IGkgPSAwOyBpIDwgY3R4LT5mb3JtYXRfY3R4LT5u Yl9zdHJlYW1zOyBpKyspCisgCXsKKy0JCWlmIChjdHgtPmZvcm1hdF9jdHgtPnN0cmVhbXNbaV0t PmNvZGVjLT5jb2RlY190eXBlID09IEFWTUVESUFfVFlQRV9WSURFTykKKysJCWlmIChjdHgtPmZv cm1hdF9jdHgtPnN0cmVhbXNbaV0tPmNvZGVjcGFyLT5jb2RlY190eXBlID09IEFWTUVESUFfVFlQ RV9WSURFTykKKyAJCXsKKyAJCQljdHgtPnZpZGVvX3N0cmVhbV9pZCA9IGk7CisgCQkJYnJlYWs7 CitAQCAtNDMsOCArNDAsMjEgQEAKKyAJCWZhdGFsKEVYSVRfUkVBRF9FUlJPUiwgIlZpZGVvIFN0 cmVhbSBub3QgZm91bmQhXG4iKTsKKyAJfQorCistCWN0eC0+Y29kZWNfY3R4ID0gY3R4LT5mb3Jt YXRfY3R4LT5zdHJlYW1zW2N0eC0+dmlkZW9fc3RyZWFtX2lkXS0+Y29kZWM7CistCWN0eC0+Y29k ZWMgPSBhdmNvZGVjX2ZpbmRfZGVjb2RlcihjdHgtPmNvZGVjX2N0eC0+Y29kZWNfaWQpOworKwlj dHgtPmNvZGVjX2N0eCA9IGF2Y29kZWNfYWxsb2NfY29udGV4dDMoTlVMTCk7CisrCWlmICghY3R4 LT5jb2RlY19jdHgpCisrCXsKKysJCSAgICBmYXRhbChFWElUX05PVF9FTk9VR0hfTUVNT1JZLCAi Q291bGQgbm90IGFsbG9jYXRlIGNvZGVjIGNvbnRleHQhXG4iKTsKKysJfQorKworKwkvLyBBc3Np Z24gY29kZWMgcGFyYW1ldGVycyB0byBjb2RlYyBjb250ZXh0CisrCWlmIChhdmNvZGVjX3BhcmFt ZXRlcnNfdG9fY29udGV4dChjdHgtPmNvZGVjX2N0eCwgY3R4LT5mb3JtYXRfY3R4LT5zdHJlYW1z W2N0eC0+dmlkZW9fc3RyZWFtX2lkXS0+Y29kZWNwYXIpIDwgMCkKKysJeworKwkJICAgIGZhdGFs KEVYSVRfUkVBRF9FUlJPUiwgIkNvdWxkIG5vdCBpbml0aWFsaXplIGNvZGVjIGNvbnRleHQhXG4i KTsKKysJfQorKworKwkvLyBGaW5kIGRlY29kZXIgZm9yIHRoZSBjb2RlYyBjb250ZXh0CisrCWN0 eC0+Y29kZWMgPSAoQVZDb2RlYyAqKWF2Y29kZWNfZmluZF9kZWNvZGVyKGN0eC0+Y29kZWNfY3R4 LT5jb2RlY19pZCk7CisrCisgCWlmIChjdHgtPmNvZGVjID09IE5VTEwpCisgCXsKKyAJCWZhdGFs KEVYSVRfUkVBRF9FUlJPUiwgIklucHV0IGNvZGVjIGlzIG5vdCBzdXBwb3J0ZWQhXG4iKTsKK2Rp ZmYgLS1naXQgYS9zcmMvbGliX2NjeC9oYXJkc3VieF9kZWNvZGVyLmMgYi9zcmMvbGliX2NjeC9o YXJkc3VieF9kZWNvZGVyLmMKK2luZGV4IGJkOWIwOTgwLi5iNWRmYWVjNCAxMDA2NDQKKy0tLSBh L3NyYy9saWJfY2N4L2hhcmRzdWJ4X2RlY29kZXIuYworKysrIGIvc3JjL2xpYl9jY3gvaGFyZHN1 YnhfZGVjb2Rlci5jCitAQCAtMzcxLDcgKzM3MSw2IEBACisgaW50IGhhcmRzdWJ4X3Byb2Nlc3Nf ZnJhbWVzX3RpY2tlcnRleHQoc3RydWN0IGxpYl9oYXJkc3VieF9jdHggKmN0eCwgc3RydWN0IGVu Y29kZXJfY3R4ICplbmNfY3R4KQorIHsKKyAJLy8gU2VhcmNoIGZvciB0aWNrZXIgdGV4dCBhdCB0 aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4sIHN1Y2ggYXMgaW4gUnVzc2lhIFRWMSBvciBzdG9jayBw cmljZXMKKy0JaW50IGdvdF9mcmFtZTsKKyAJaW50IGN1cl9zZWMgPSAwLCB0b3RhbF9zZWMsIHBy b2dyZXNzOworIAlpbnQgZnJhbWVfbnVtYmVyID0gMDsKKyAJY2hhciAqdGlja2VyX3RleHQgPSBO VUxMOworQEAgLTM4Miw4ICszODEsOCBAQAorIAkJeworIAkJCWZyYW1lX251bWJlcisrOworIAkJ CS8vRGVjb2RlIHRoZSB2aWRlbyBzdHJlYW0gcGFja2V0CistCQkJYXZjb2RlY19kZWNvZGVfdmlk ZW8yKGN0eC0+Y29kZWNfY3R4LCBjdHgtPmZyYW1lLCAmZ290X2ZyYW1lLCAmY3R4LT5wYWNrZXQp OworLQkJCWlmIChnb3RfZnJhbWUgJiYgZnJhbWVfbnVtYmVyICUgMTAwMCA9PSAwKQorKyAgICAg IGF2Y29kZWNfc2VuZF9wYWNrZXQoY3R4LT5jb2RlY19jdHgsICZjdHgtPnBhY2tldCk7CisrICAg ICAgaWYgKGF2Y29kZWNfcmVjZWl2ZV9mcmFtZShjdHgtPmNvZGVjX2N0eCwgY3R4LT5mcmFtZSkg PT0gMCAmJiBmcmFtZV9udW1iZXIgJSAxMDAwID09IDApCisgCQkJeworIAkJCQkvLyBzd3Nfc2Nh bGUgaXMgdXNlZCB0byBjb252ZXJ0IHRoZSBwaXhlbCBmb3JtYXQgdG8gUkdCMjQgZnJvbSBhbGwg b3RoZXIgY2FzZXMKKyAJCQkJc3dzX3NjYWxlKAorQEAgLTQzNCw5ICs0MzMsOCBAQAorIAkJCWZy YW1lX251bWJlcisrOworCisgCQkJLy9EZWNvZGUgdGhlIHZpZGVvIHN0cmVhbSBwYWNrZXQKKy0J CQlhdmNvZGVjX2RlY29kZV92aWRlbzIoY3R4LT5jb2RlY19jdHgsIGN0eC0+ZnJhbWUsICZnb3Rf ZnJhbWUsICZjdHgtPnBhY2tldCk7CistCistCQkJaWYgKGdvdF9mcmFtZSAmJiBmcmFtZV9udW1i ZXIgJSAyNSA9PSAwKQorKwkJCWF2Y29kZWNfc2VuZF9wYWNrZXQoY3R4LT5jb2RlY19jdHgsICZj dHgtPnBhY2tldCk7CisrICAgICAgaWYgKGF2Y29kZWNfcmVjZWl2ZV9mcmFtZShjdHgtPmNvZGVj X2N0eCwgY3R4LT5mcmFtZSkgPT0gMCAmJiBmcmFtZV9udW1iZXIgJSAyNSA9PSAwKQorIAkJCXsK KyAJCQkJZmxvYXQgZGlmZiA9IChmbG9hdCljb252ZXJ0X3B0c190b19tcyhjdHgtPnBhY2tldC5w dHMgLSBwcmV2X3BhY2tldF9wdHMsIGN0eC0+Zm9ybWF0X2N0eC0+c3RyZWFtc1tjdHgtPnZpZGVv X3N0cmVhbV9pZF0tPnRpbWVfYmFzZSk7CisgCQkJCWlmIChmYWJzZihkaWZmKSA8IDEwMDAgKiBj dHgtPm1pbl9zdWJfZHVyYXRpb24pIC8vSWYgdGhlIG1pbmltdW0gZHVyYXRpb24gb2YgYSBzdWJ0 aXRsZSBsaW5lIGlzIGV4Y2VlZGVkLCBwcm9jZXNzIHBhY2tldAorQEAgLTU0OCw3ICs1NDYsNiBA QAorIHsKKyAJLy8gRG8gYSBiaW5hcnkgc2VhcmNoIG92ZXIgdGhlIGlucHV0IHZpZGVvIGZvciBm YXN0ZXIgcHJvY2Vzc2luZworIAkvLyBwcmludGYoIkR1cmF0aW9uOiAlZFxuIiwgKGludCljdHgt PmZvcm1hdF9jdHgtPmR1cmF0aW9uKTsKKy0JaW50IGdvdF9mcmFtZTsKKyAJaW50IHNlY29uZHNf dGltZSA9IDA7CisgCWZvciAoc2Vjb25kc190aW1lID0gMDsgc2Vjb25kc190aW1lIDwgMjA7IHNl Y29uZHNfdGltZSsrKQorIAl7CitAQCAtNTY4LDggKzU2NSw5IEBACisgCQkJeworIAkJCQlpZiAo Y3R4LT5wYWNrZXQuc3RyZWFtX2luZGV4ID09IGN0eC0+dmlkZW9fc3RyZWFtX2lkKQorIAkJCQl7 CistCQkJCQlhdmNvZGVjX2RlY29kZV92aWRlbzIoY3R4LT5jb2RlY19jdHgsIGN0eC0+ZnJhbWUs ICZnb3RfZnJhbWUsICZjdHgtPnBhY2tldCk7CistCQkJCQlpZiAoZ290X2ZyYW1lKQorKyAgICAg ICAgICBhdmNvZGVjX3NlbmRfcGFja2V0KGN0eC0+Y29kZWNfY3R4LCAmY3R4LT5wYWNrZXQpOwor KyAgICAgICAgICBpZiAoYXZjb2RlY19yZWNlaXZlX2ZyYW1lKGN0eC0+Y29kZWNfY3R4LCBjdHgt PmZyYW1lKSA9PSAwKQorKworIAkJCQkJeworIAkJCQkJCS8vIHByaW50ZigiJWRcbiIsIHNlZWtf dGltZSk7CisgCQkJCQkJaWYgKGN0eC0+cGFja2V0LnB0cyA8IHNlZWtfdGltZSkKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvY2NleHRyYWN0b3IvdGVtcGxhdGUgYi9zcmNwa2dzL2NjZXh0cmFjdG9yL3Rl bXBsYXRlCmluZGV4IDY1OWFmN2U2NGZlZTRjLi41ZDkyMmFjMGU0NDJmNyAxMDA2NDQKLS0tIGEv c3JjcGtncy9jY2V4dHJhY3Rvci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2NjZXh0cmFjdG9yL3Rl bXBsYXRlCkBAIC0xLDEyICsxLDEyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdjY2V4dHJhY3Rv cicKIHBrZ25hbWU9Y2NleHRyYWN0b3IKIHZlcnNpb249MC45MwotcmV2aXNpb249MgorcmV2aXNp b249MwogYnVpbGRfd3Jrc3JjPSJsaW51eCIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNv bmZpZ3VyZV9hcmdzPSItLWVuYWJsZS1vY3IgLS1lbmFibGUtaGFyZHN1YngiCiBob3N0bWFrZWRl cGVuZHM9ImF1dG9tYWtlIHBrZy1jb25maWcgdGVzc2VyYWN0LW9jci1kZXZlbCIKLW1ha2VkZXBl bmRzPSJsZXB0b25pY2EtZGV2ZWwgdGVzc2VyYWN0LW9jci1kZXZlbCBmZm1wZWctZGV2ZWwiCitt YWtlZGVwZW5kcz0ibGVwdG9uaWNhLWRldmVsIHRlc3NlcmFjdC1vY3ItZGV2ZWwgZmZtcGVnNi1k ZXZlbCIKIHNob3J0X2Rlc2M9IkV4dHJhY3Qgc3VidGl0bGVzIGZyb20gdmlkZW8gc3RyZWFtcyIK IG1haW50YWluZXI9Im5ld2JsdWVtb29uIDxibGF1bW9sY2hAbWFpbGJveC5vcmc+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciIKCkZyb20gMDQ1M2MyN2FmYjRhYzQ5MTM4NWM3Y2M4ODYyNTc4 MDM0MGM2N2ZkNyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1 QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0NiAtMDQwMApTdWJqZWN0 OiBbUEFUQ0ggMjMvODldIGNocm9tYXByaW50OiByZXZidW1wIGZvciBmZm1wZWc2CgpjaHJvbWFw cmludCA6IHJlZG8KLS0tCiBzcmNwa2dzL2Nocm9tYXByaW50L3BhdGNoZXMvZmZtcGVnNS5wYXRj aCB8IDU2OSArKysrKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2Nocm9tYXByaW50L3RlbXBs YXRlICAgICAgICAgICAgICB8ICAgNCArLQogMiBmaWxlcyBjaGFuZ2VkLCA1NzEgaW5zZXJ0aW9u cygrKSwgMiBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2Nocm9tYXBy aW50L3BhdGNoZXMvZmZtcGVnNS5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2hyb21hcHJp bnQvcGF0Y2hlcy9mZm1wZWc1LnBhdGNoIGIvc3JjcGtncy9jaHJvbWFwcmludC9wYXRjaGVzL2Zm bXBlZzUucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAuLmE5 ZmQzMDdhMjNjOGE0Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9jaHJvbWFwcmludC9wYXRj aGVzL2ZmbXBlZzUucGF0Y2gKQEAgLTAsMCArMSw1NjkgQEAKK0Zyb20gOGNjYWQ2OTM3MTc3YjFi OTJlNDBhYjhmNDQ0N2VhMjdiYWMwMDlhNyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206 ID0/VVRGLTg/cT9MdWs9QzM9QTE9QzU9QTE9MjBMYWxpbnNrPUMzPUJEPz0gPGxhbGluc2t5QGdt YWlsLmNvbT4KK0RhdGU6IEZyaSwgNCBOb3YgMjAyMiAyMTo0NzozOCArMDEwMAorU3ViamVjdDog W1BBVENIXSBVc2UgRkZtcGVnIDUueCAoIzEyMCkKKworKiBVc2UgRkZtcGVnIDUuMS4yIGZvciBD SSBidWlsZHMKKworKiBCdWlsZCBvbiBVYnVudHUgMjAuMDQKKworKiBVcGdyYWRlIGNvZGUgdG8g RkZtcGVnIDUueCBBUElzCisKKyogT25seSBzZXQgRkZtcGVnIGluY2x1ZGUgZGlycyBpZiBidWls ZGluZyB0b29scworCisqIE5vIGxvbmdlciBuZWVkZWQKKworKiBVc2UgdWJ1bnR1IDIwLjA0Cist LS0KKyAuZ2l0aHViL3dvcmtmbG93cy9idWlsZC55bWwgICAgICAgICAgICAgICAgICAgfCAgIDYg Ky0KKyBDTWFrZUxpc3RzLnR4dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTYg LS0KKyBwYWNrYWdlL2J1aWxkLnNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQg Ky0KKyBzcmMvYXVkaW8vZmZtcGVnX2F1ZGlvX3Byb2Nlc3Nvci5oICAgICAgICAgICAgfCAgIDIg LQorIHNyYy9hdWRpby9mZm1wZWdfYXVkaW9fcHJvY2Vzc29yX2F2cmVzYW1wbGUuaCB8ICA3MiAt LS0tLS0tCisgc3JjL2F1ZGlvL2ZmbXBlZ19hdWRpb19wcm9jZXNzb3Jfc3dyZXNhbXBsZS5oIHwg IDE4ICstCisgc3JjL2F1ZGlvL2ZmbXBlZ19hdWRpb19yZWFkZXIuaCAgICAgICAgICAgICAgIHwg MTk3ICsrKysrKysrKy0tLS0tLS0tLQorIHRlc3RzL0NNYWtlTGlzdHMudHh0ICAgICAgICAgICAg ICAgICAgICAgICAgICB8ICAgNiArCisgOCBmaWxlcyBjaGFuZ2VkLCAxMjIgaW5zZXJ0aW9ucygr KSwgMTk5IGRlbGV0aW9ucygtKQorIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmMvYXVkaW8vZmZtcGVn X2F1ZGlvX3Byb2Nlc3Nvcl9hdnJlc2FtcGxlLmgKKworZGlmZiAtLWdpdCBhL0NNYWtlTGlzdHMu dHh0IGIvQ01ha2VMaXN0cy50eHQKK2luZGV4IGY4ZDZhMzIuLjRkYTI0MDUgMTAwNjQ0CistLS0g YS9DTWFrZUxpc3RzLnR4dAorKysrIGIvQ01ha2VMaXN0cy50eHQKK0BAIC04NCw5ICs4NCw2IEBA IGZpbmRfcGFja2FnZShGRm1wZWcpCisgaWYoRkZNUEVHX0xJQlJBUklFUykKKyAJY21ha2VfcHVz aF9jaGVja19zdGF0ZShSRVNFVCkKKyAJc2V0KENNQUtFX1JFUVVJUkVEX0xJQlJBUklFUyAke0ZG TVBFR19MSUJSQVJJRVN9ICR7Q01BS0VfVEhSRUFEX0xJQlNfSU5JVH0gLWxtKQorLQljaGVja19m dW5jdGlvbl9leGlzdHMoYXZfcGFja2V0X3VucmVmIEhBVkVfQVZfUEFDS0VUX1VOUkVGKQorLQlj aGVja19mdW5jdGlvbl9leGlzdHMoYXZfZnJhbWVfYWxsb2MgSEFWRV9BVl9GUkFNRV9BTExPQykK Ky0JY2hlY2tfZnVuY3Rpb25fZXhpc3RzKGF2X2ZyYW1lX2ZyZWUgSEFWRV9BVl9GUkFNRV9GUkVF KQorIAljbWFrZV9wb3BfY2hlY2tfc3RhdGUoKQorIGVuZGlmKCkKKworQEAgLTE2MywxNCArMTYw LDExIEBAIG1lc3NhZ2UoU1RBVFVTICJVc2luZyAke0ZGVF9MSUJ9IGZvciBGRlQgY2FsY3VsYXRp b25zIikKKyBpZihOT1QgQVVESU9fUFJPQ0VTU09SX0xJQikKKyAJaWYoRkZNUEVHX0xJQlNXUkVT QU1QTEVfRk9VTkQpCisgCQlzZXQoQVVESU9fUFJPQ0VTU09SX0xJQiAic3dyZXNhbXBsZSIpCist CWVsc2VpZihGRk1QRUdfTElCQVZSRVNBTVBMRV9GT1VORCkKKy0JCXNldChBVURJT19QUk9DRVNT T1JfTElCICJhdnJlc2FtcGxlIikKKyAJZW5kaWYoKQorIGVuZGlmKCkKKworIGlmKEFVRElPX1BS T0NFU1NPUl9MSUIgU1RSRVFVQUwgInN3cmVzYW1wbGUiKQorIAlpZihGRk1QRUdfTElCU1dSRVNB TVBMRV9GT1VORCkKKy0JCXNldChVU0VfQVZSRVNBTVBMRSBPRkYpCisgCQlzZXQoVVNFX1NXUkVT QU1QTEUgT04pCisgCQlzZXQoQVVESU9fUFJPQ0VTU09SX0xJQlJBUklFUyAke0ZGTVBFR19MSUJT V1JFU0FNUExFX0xJQlJBUklFU30pCisgCQlzZXQoQVVESU9fUFJPQ0VTU09SX0lOQ0xVREVfRElS UyAke0ZGTVBFR19MSUJTV1JFU0FNUExFX0lOQ0xVREVfRElSU30pCitAQCAtMTc4LDE2ICsxNzIs NiBAQCBpZihBVURJT19QUk9DRVNTT1JfTElCIFNUUkVRVUFMICJzd3Jlc2FtcGxlIikKKyAJCW1l c3NhZ2UoRkFUQUxfRVJST1IgIlNlbGVjdGVkICR7QVVESU9fUFJPQ0VTU09SX0xJQn0gZm9yIGF1 ZGlvIHByb2Nlc3NpbmcsIGJ1dCB0aGUgbGlicmFyeSBpcyBub3QgZm91bmQiKQorIAllbmRpZigp CisgCW1lc3NhZ2UoU1RBVFVTICJVc2luZyAke0FVRElPX1BST0NFU1NPUl9MSUJ9IGZvciBhdWRp byBjb252ZXJzaW9uIikKKy1lbHNlaWYoQVVESU9fUFJPQ0VTU09SX0xJQiBTVFJFUVVBTCAiYXZy ZXNhbXBsZSIpCistCWlmKEZGTVBFR19MSUJBVlJFU0FNUExFX0ZPVU5EKQorLQkJc2V0KFVTRV9B VlJFU0FNUExFIE9OKQorLQkJc2V0KFVTRV9TV1JFU0FNUExFIE9GRikKKy0JCXNldChBVURJT19Q Uk9DRVNTT1JfTElCUkFSSUVTICR7RkZNUEVHX0xJQkFWUkVTQU1QTEVfTElCUkFSSUVTfSkKKy0J CXNldChBVURJT19QUk9DRVNTT1JfSU5DTFVERV9ESVJTICR7RkZNUEVHX0xJQkFWUkVTQU1QTEVf SU5DTFVERV9ESVJTfSkKKy0JZWxzZSgpCistCQltZXNzYWdlKEZBVEFMX0VSUk9SICJTZWxlY3Rl ZCAke0FVRElPX1BST0NFU1NPUl9MSUJ9IGZvciBhdWRpbyBwcm9jZXNzaW5nLCBidXQgdGhlIGxp YnJhcnkgaXMgbm90IGZvdW5kIikKKy0JZW5kaWYoKQorLQltZXNzYWdlKFNUQVRVUyAiVXNpbmcg JHtBVURJT19QUk9DRVNTT1JfTElCfSBmb3IgYXVkaW8gY29udmVyc2lvbiIpCisgZWxzZSgpCisg CW1lc3NhZ2UoU1RBVFVTICJCdWlsZGluZyB3aXRob3V0IGF1ZGlvIGNvbnZlcnNpb24gc3VwcG9y dCwgcGxlYXNlIGluc3RhbGwgRkZtcGVnIHdpdGggbGlic3dyZXNhbXBsZSIpCisgZW5kaWYoKQor ZGlmZiAtLWdpdCBhL3BhY2thZ2UvYnVpbGQuc2ggYi9wYWNrYWdlL2J1aWxkLnNoCitpbmRleCBk YTYzMWFlLi5iNDFkMzZlIDEwMDc1NQorLS0tIGEvcGFja2FnZS9idWlsZC5zaAorKysrIGIvcGFj a2FnZS9idWlsZC5zaAorQEAgLTcsOCArNyw4IEBAIHNldCAtZXV4CisKKyBCQVNFX0RJUj0kKGNk ICQoZGlybmFtZSAkMCkvLi4gJiYgcHdkKQorCistRkZNUEVHX1ZFUlNJT049NC40LjEKKy1GRk1Q RUdfQlVJTERfVEFHPXY0LjQuMS0xCisrRkZNUEVHX1ZFUlNJT049NS4xLjIKKytGRk1QRUdfQlVJ TERfVEFHPXYke0ZGTVBFR19WRVJTSU9OfS0xCisKKyBUTVBfQlVJTERfRElSPSRCQVNFX0RJUi8k KG1rdGVtcCAtZCBidWlsZC5YWFhYWFhYWCkKKyB0cmFwICdybSAtcmYgJFRNUF9CVUlMRF9ESVIn IEVYSVQKK2RpZmYgLS1naXQgYS9zcmMvYXVkaW8vZmZtcGVnX2F1ZGlvX3Byb2Nlc3Nvci5oIGIv c3JjL2F1ZGlvL2ZmbXBlZ19hdWRpb19wcm9jZXNzb3IuaAoraW5kZXggNzYyOGZjNy4uMzlmNGY2 ZCAxMDA2NDQKKy0tLSBhL3NyYy9hdWRpby9mZm1wZWdfYXVkaW9fcHJvY2Vzc29yLmgKKysrKyBi L3NyYy9hdWRpby9mZm1wZWdfYXVkaW9fcHJvY2Vzc29yLmgKK0BAIC0xMCw4ICsxMCw2IEBACisK KyAjaWYgZGVmaW5lZChVU0VfU1dSRVNBTVBMRSkKKyAjaW5jbHVkZSAiYXVkaW8vZmZtcGVnX2F1 ZGlvX3Byb2Nlc3Nvcl9zd3Jlc2FtcGxlLmgiCistI2VsaWYgZGVmaW5lZChVU0VfQVZSRVNBTVBM RSkKKy0jaW5jbHVkZSAiYXVkaW8vZmZtcGVnX2F1ZGlvX3Byb2Nlc3Nvcl9hdnJlc2FtcGxlLmgi CisgI2Vsc2UKKyAjZXJyb3IgIm5vIGF1ZGlvIHByb2Nlc3NpbmcgbGlicmFyeSIKKyAjZW5kaWYK K2RpZmYgLS1naXQgYS9zcmMvYXVkaW8vZmZtcGVnX2F1ZGlvX3Byb2Nlc3Nvcl9hdnJlc2FtcGxl LmggYi9zcmMvYXVkaW8vZmZtcGVnX2F1ZGlvX3Byb2Nlc3Nvcl9hdnJlc2FtcGxlLmgKK2RlbGV0 ZWQgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggYmQ4NWY5Mi4uMDAwMDAwMAorLS0tIGEvc3JjL2F1 ZGlvL2ZmbXBlZ19hdWRpb19wcm9jZXNzb3JfYXZyZXNhbXBsZS5oCisrKysgL2Rldi9udWxsCitA QCAtMSw3MiArMCwwIEBACistLy8gQ29weXJpZ2h0IChDKSAyMDE2ICBMdWthcyBMYWxpbnNreQor LS8vIERpc3RyaWJ1dGVkIHVuZGVyIHRoZSBNSVQgbGljZW5zZSwgc2VlIHRoZSBMSUNFTlNFIGZp bGUgZm9yIGRldGFpbHMuCistCistI2lmbmRlZiBDSFJPTUFQUklOVF9BVURJT19GRk1QRUdfQVVE SU9fUFJPQ0VTU09SX0FWUkVTQU1QTEVfSF8KKy0jZGVmaW5lIENIUk9NQVBSSU5UX0FVRElPX0ZG TVBFR19BVURJT19QUk9DRVNTT1JfQVZSRVNBTVBMRV9IXworLQorLWV4dGVybiAiQyIgeworLSNp bmNsdWRlIDxsaWJhdnJlc2FtcGxlL2F2cmVzYW1wbGUuaD4KKy19CistCistbmFtZXNwYWNlIGNo cm9tYXByaW50IHsKKy0KKy1jbGFzcyBGRm1wZWdBdWRpb1Byb2Nlc3NvciB7CistcHVibGljOgor LQlGRm1wZWdBdWRpb1Byb2Nlc3NvcigpIHsKKy0JCW1fcmVzYW1wbGVfY3R4ID0gYXZyZXNhbXBs ZV9hbGxvY19jb250ZXh0KCk7CistCX0KKy0KKy0JfkZGbXBlZ0F1ZGlvUHJvY2Vzc29yKCkgewor LQkJYXZyZXNhbXBsZV9mcmVlKCZtX3Jlc2FtcGxlX2N0eCk7CistCX0KKy0KKy0Jdm9pZCBTZXRD b21wYXRpYmxlTW9kZSgpIHsKKy0JCWF2X29wdF9zZXRfaW50KG1fcmVzYW1wbGVfY3R4LCAiZmls dGVyX3NpemUiLCAxNiwgMCk7CistCQlhdl9vcHRfc2V0X2ludChtX3Jlc2FtcGxlX2N0eCwgInBo YXNlX3NoaWZ0IiwgOCwgMCk7CistCQlhdl9vcHRfc2V0X2ludChtX3Jlc2FtcGxlX2N0eCwgImxp bmVhcl9pbnRlcnAiLCAxLCAwKTsKKy0JCWF2X29wdF9zZXRfZG91YmxlKG1fcmVzYW1wbGVfY3R4 LCAiY3V0b2ZmIiwgMC44LCAwKTsKKy0JfQorLQorLQl2b2lkIFNldElucHV0Q2hhbm5lbExheW91 dChpbnQ2NF90IGNoYW5uZWxfbGF5b3V0KSB7CistCQlhdl9vcHRfc2V0X2ludChtX3Jlc2FtcGxl X2N0eCwgImluX2NoYW5uZWxfbGF5b3V0IiwgY2hhbm5lbF9sYXlvdXQsIDApOworLQl9CistCist CXZvaWQgU2V0SW5wdXRTYW1wbGVGb3JtYXQoQVZTYW1wbGVGb3JtYXQgc2FtcGxlX2Zvcm1hdCkg eworLQkJYXZfb3B0X3NldF9pbnQobV9yZXNhbXBsZV9jdHgsICJpbl9zYW1wbGVfZm10Iiwgc2Ft cGxlX2Zvcm1hdCwgMCk7CistCX0KKy0KKy0Jdm9pZCBTZXRJbnB1dFNhbXBsZVJhdGUoaW50IHNh bXBsZV9yYXRlKSB7CistCQlhdl9vcHRfc2V0X2ludChtX3Jlc2FtcGxlX2N0eCwgImluX3NhbXBs ZV9yYXRlIiwgc2FtcGxlX3JhdGUsIDApOworLQl9CistCistCXZvaWQgU2V0T3V0cHV0Q2hhbm5l bExheW91dChpbnQ2NF90IGNoYW5uZWxfbGF5b3V0KSB7CistCQlhdl9vcHRfc2V0X2ludChtX3Jl c2FtcGxlX2N0eCwgIm91dF9jaGFubmVsX2xheW91dCIsIGNoYW5uZWxfbGF5b3V0LCAwKTsKKy0J fQorLQorLQl2b2lkIFNldE91dHB1dFNhbXBsZUZvcm1hdChBVlNhbXBsZUZvcm1hdCBzYW1wbGVf Zm9ybWF0KSB7CistCQlhdl9vcHRfc2V0X2ludChtX3Jlc2FtcGxlX2N0eCwgIm91dF9zYW1wbGVf Zm10Iiwgc2FtcGxlX2Zvcm1hdCwgMCk7CistCX0KKy0KKy0Jdm9pZCBTZXRPdXRwdXRTYW1wbGVS YXRlKGludCBzYW1wbGVfcmF0ZSkgeworLQkJYXZfb3B0X3NldF9pbnQobV9yZXNhbXBsZV9jdHgs ICJvdXRfc2FtcGxlX2ZtdCIsIHNhbXBsZV9yYXRlLCAwKTsKKy0JfQorLQorLQlpbnQgSW5pdCgp IHsKKy0JCXJldHVybiBhdnJlc2FtcGxlX29wZW4obV9yZXNhbXBsZV9jdHgpOworLQl9CistCist CWludCBDb252ZXJ0KHVpbnQ4X3QgKipvdXQsIGludCBvdXRfY291bnQsIGNvbnN0IHVpbnQ4X3Qg KippbiwgaW50IGluX2NvdW50KSB7CistCQlyZXR1cm4gYXZyZXNhbXBsZV9jb252ZXJ0KG1fcmVz YW1wbGVfY3R4LCBvdXQsIDAsIG91dF9jb3VudCwgKHVpbnQ4X3QgKiopIGluLCAwLCBpbl9jb3Vu dCk7CistCX0KKy0KKy0JaW50IEZsdXNoKHVpbnQ4X3QgKipvdXQsIGludCBvdXRfY291bnQpIHsK Ky0JCXJldHVybiBhdnJlc2FtcGxlX3JlYWQobV9yZXNhbXBsZV9jdHgsIG91dCwgb3V0X2NvdW50 KTsKKy0JfQorLQorLXByaXZhdGU6CistCUFWQXVkaW9SZXNhbXBsZUNvbnRleHQgKm1fcmVzYW1w bGVfY3R4ID0gbnVsbHB0cjsKKy19OworLQorLX07IC8vIG5hbWVzcGFjZSBjaHJvbWFwcmludAor LQorLSNlbmRpZgorZGlmZiAtLWdpdCBhL3NyYy9hdWRpby9mZm1wZWdfYXVkaW9fcHJvY2Vzc29y X3N3cmVzYW1wbGUuaCBiL3NyYy9hdWRpby9mZm1wZWdfYXVkaW9fcHJvY2Vzc29yX3N3cmVzYW1w bGUuaAoraW5kZXggYjg2MjY2Yi4uYjFkNGJlYSAxMDA2NDQKKy0tLSBhL3NyYy9hdWRpby9mZm1w ZWdfYXVkaW9fcHJvY2Vzc29yX3N3cmVzYW1wbGUuaAorKysrIGIvc3JjL2F1ZGlvL2ZmbXBlZ19h dWRpb19wcm9jZXNzb3Jfc3dyZXNhbXBsZS5oCitAQCAtMjgsMzAgKzI4LDI4IEBAIHB1YmxpYzoK KyAJCWF2X29wdF9zZXRfZG91YmxlKG1fc3dyX2N0eCwgImN1dG9mZiIsIDAuOCwgMCk7CisgCX0K KworLQl2b2lkIFNldElucHV0Q2hhbm5lbExheW91dChpbnQ2NF90IGNoYW5uZWxfbGF5b3V0KSB7 CistCQlhdl9vcHRfc2V0X2ludChtX3N3cl9jdHgsICJpY2wiLCBjaGFubmVsX2xheW91dCwgMCk7 CistCQlhdl9vcHRfc2V0X2ludChtX3N3cl9jdHgsICJpY2giLCBhdl9nZXRfY2hhbm5lbF9sYXlv dXRfbmJfY2hhbm5lbHMoY2hhbm5lbF9sYXlvdXQpLCAwKTsKKysJdm9pZCBTZXRJbnB1dENoYW5u ZWxMYXlvdXQoQVZDaGFubmVsTGF5b3V0ICpjaGFubmVsX2xheW91dCkgeworKwkJYXZfb3B0X3Nl dF9pbnQobV9zd3JfY3R4LCAiaW5fY2hhbm5lbF9sYXlvdXQiLCBjaGFubmVsX2xheW91dC0+dS5t YXNrLCAwKTsKKyAJfQorCisgCXZvaWQgU2V0SW5wdXRTYW1wbGVGb3JtYXQoQVZTYW1wbGVGb3Jt YXQgc2FtcGxlX2Zvcm1hdCkgeworLQkJYXZfb3B0X3NldF9pbnQobV9zd3JfY3R4LCAiaXNmIiwg c2FtcGxlX2Zvcm1hdCwgMCk7CisrCQlhdl9vcHRfc2V0X3NhbXBsZV9mbXQobV9zd3JfY3R4LCAi aW5fc2FtcGxlX2ZtdCIsIHNhbXBsZV9mb3JtYXQsIDApOworIAl9CisKKyAJdm9pZCBTZXRJbnB1 dFNhbXBsZVJhdGUoaW50IHNhbXBsZV9yYXRlKSB7CistCQlhdl9vcHRfc2V0X2ludChtX3N3cl9j dHgsICJpc3IiLCBzYW1wbGVfcmF0ZSwgMCk7CisrCQlhdl9vcHRfc2V0X2ludChtX3N3cl9jdHgs ICJpbl9zYW1wbGVfcmF0ZSIsIHNhbXBsZV9yYXRlLCAwKTsKKyAJfQorCistCXZvaWQgU2V0T3V0 cHV0Q2hhbm5lbExheW91dChpbnQ2NF90IGNoYW5uZWxfbGF5b3V0KSB7CistCQlhdl9vcHRfc2V0 X2ludChtX3N3cl9jdHgsICJvY2wiLCBjaGFubmVsX2xheW91dCwgMCk7CistCQlhdl9vcHRfc2V0 X2ludChtX3N3cl9jdHgsICJvY2giLCBhdl9nZXRfY2hhbm5lbF9sYXlvdXRfbmJfY2hhbm5lbHMo Y2hhbm5lbF9sYXlvdXQpLCAwKTsKKysJdm9pZCBTZXRPdXRwdXRDaGFubmVsTGF5b3V0KEFWQ2hh bm5lbExheW91dCAqY2hhbm5lbF9sYXlvdXQpIHsKKysJCWF2X29wdF9zZXRfaW50KG1fc3dyX2N0 eCwgIm91dF9jaGFubmVsX2xheW91dCIsIGNoYW5uZWxfbGF5b3V0LT51Lm1hc2ssIDApOworIAl9 CisKKyAJdm9pZCBTZXRPdXRwdXRTYW1wbGVGb3JtYXQoQVZTYW1wbGVGb3JtYXQgc2FtcGxlX2Zv cm1hdCkgeworLQkJYXZfb3B0X3NldF9pbnQobV9zd3JfY3R4LCAib3NmIiwgc2FtcGxlX2Zvcm1h dCwgMCk7CisrCQlhdl9vcHRfc2V0X3NhbXBsZV9mbXQobV9zd3JfY3R4LCAib3V0X3NhbXBsZV9m bXQiLCBzYW1wbGVfZm9ybWF0LCAwKTsKKyAJfQorCisgCXZvaWQgU2V0T3V0cHV0U2FtcGxlUmF0 ZShpbnQgc2FtcGxlX3JhdGUpIHsKKy0JCWF2X29wdF9zZXRfaW50KG1fc3dyX2N0eCwgIm9zciIs IHNhbXBsZV9yYXRlLCAwKTsKKysJCWF2X29wdF9zZXRfaW50KG1fc3dyX2N0eCwgIm91dF9zYW1w bGVfcmF0ZSIsIHNhbXBsZV9yYXRlLCAwKTsKKyAJfQorCisgCWludCBJbml0KCkgeworZGlmZiAt LWdpdCBhL3NyYy9hdWRpby9mZm1wZWdfYXVkaW9fcmVhZGVyLmggYi9zcmMvYXVkaW8vZmZtcGVn X2F1ZGlvX3JlYWRlci5oCitpbmRleCA1NTUwMTY0Li4xYzZiMzQ2IDEwMDY0NAorLS0tIGEvc3Jj L2F1ZGlvL2ZmbXBlZ19hdWRpb19yZWFkZXIuaAorKysrIGIvc3JjL2F1ZGlvL2ZmbXBlZ19hdWRp b19yZWFkZXIuaAorQEAgLTYyLDcgKzYyLDcgQEAgcHVibGljOgorIAlib29sIFJlYWQoY29uc3Qg aW50MTZfdCAqKmRhdGEsIHNpemVfdCAqc2l6ZSk7CisKKyAJYm9vbCBJc09wZW4oKSBjb25zdCB7 IHJldHVybiBtX29wZW5lZDsgfQorLQlib29sIElzRmluaXNoZWQoKSBjb25zdCB7IHJldHVybiBt X2ZpbmlzaGVkICYmICFtX2dvdF9mcmFtZTsgfQorKwlib29sIElzRmluaXNoZWQoKSBjb25zdCB7 IHJldHVybiAhbV9oYXNfbW9yZV9wYWNrZXRzICYmICFtX2hhc19tb3JlX2ZyYW1lczsgfQorCisg CXN0ZDo6c3RyaW5nIEdldEVycm9yKCkgY29uc3QgeyByZXR1cm4gbV9lcnJvcjsgfQorIAlpbnQg R2V0RXJyb3JDb2RlKCkgY29uc3QgeyByZXR1cm4gbV9lcnJvcl9jb2RlOyB9CitAQCAtNzQsMjAg Kzc0LDE5IEBAIHByaXZhdGU6CisgCXVpbnQ4X3QgKm1fY29udmVydF9idWZmZXJbMV0gPSB7IG51 bGxwdHIgfTsKKyAJaW50IG1fY29udmVydF9idWZmZXJfbmJfc2FtcGxlcyA9IDA7CisKKy0JQVZJ bnB1dEZvcm1hdCAqbV9pbnB1dF9mbXQgPSBudWxscHRyOworKwljb25zdCBBVklucHV0Rm9ybWF0 ICptX2lucHV0X2ZtdCA9IG51bGxwdHI7CisgCUFWRGljdGlvbmFyeSAqbV9pbnB1dF9vcHRzID0g bnVsbHB0cjsKKworIAlBVkZvcm1hdENvbnRleHQgKm1fZm9ybWF0X2N0eCA9IG51bGxwdHI7Cisg CUFWQ29kZWNDb250ZXh0ICptX2NvZGVjX2N0eCA9IG51bGxwdHI7CistCUFWRnJhbWUgKm1fZnJh bWUgPSBudWxscHRyOworIAlpbnQgbV9zdHJlYW1faW5kZXggPSAtMTsKKyAJc3RkOjpzdHJpbmcg bV9lcnJvcjsKKyAJaW50IG1fZXJyb3JfY29kZSA9IDA7CistCWJvb2wgbV9maW5pc2hlZCA9IGZh bHNlOworIAlib29sIG1fb3BlbmVkID0gZmFsc2U7CistCWludCBtX2dvdF9mcmFtZSA9IDA7Cist CUFWUGFja2V0IG1fcGFja2V0OworLQlBVlBhY2tldCBtX3BhY2tldDA7CisrCWJvb2wgbV9oYXNf bW9yZV9wYWNrZXRzID0gdHJ1ZTsKKysJYm9vbCBtX2hhc19tb3JlX2ZyYW1lcyA9IHRydWU7Cisr CUFWUGFja2V0ICptX3BhY2tldCA9IG51bGxwdHI7CisrCUFWRnJhbWUgKm1fZnJhbWUgPSBudWxs cHRyOworCisgCWludCBtX291dHB1dF9zYW1wbGVfcmF0ZSA9IDA7CisgCWludCBtX291dHB1dF9j aGFubmVscyA9IDA7CitAQCAtOTgsMTkgKzk3LDEyIEBAIHByaXZhdGU6CisKKyBpbmxpbmUgRkZt cGVnQXVkaW9SZWFkZXI6OkZGbXBlZ0F1ZGlvUmVhZGVyKCkgeworIAlhdl9sb2dfc2V0X2xldmVs KEFWX0xPR19RVUlFVCk7CistCistCWF2X2luaXRfcGFja2V0KCZtX3BhY2tldCk7CistCW1fcGFj a2V0LmRhdGEgPSBudWxscHRyOworLQltX3BhY2tldC5zaXplID0gMDsKKy0KKy0JbV9wYWNrZXQw ID0gbV9wYWNrZXQ7CisgfQorCisgaW5saW5lIEZGbXBlZ0F1ZGlvUmVhZGVyOjp+RkZtcGVnQXVk aW9SZWFkZXIoKSB7CisgCUNsb3NlKCk7CisgCWF2X2RpY3RfZnJlZSgmbV9pbnB1dF9vcHRzKTsK KyAJYXZfZnJlZXAoJm1fY29udmVydF9idWZmZXJbMF0pOworLQlhdl9wYWNrZXRfdW5yZWYoJm1f cGFja2V0MCk7CisgfQorCisgaW5saW5lIGJvb2wgRkZtcGVnQXVkaW9SZWFkZXI6OlNldElucHV0 Rm9ybWF0KGNvbnN0IGNoYXIgKm5hbWUpIHsKK0BAIC0xMzUsMTEgKzEyNywxMCBAQCBpbmxpbmUg Ym9vbCBGRm1wZWdBdWRpb1JlYWRlcjo6T3Blbihjb25zdCBzdGQ6OnN0cmluZyAmZmlsZV9uYW1l KSB7CisKKyAJQ2xvc2UoKTsKKworLSAgICBhdl9pbml0X3BhY2tldCgmbV9wYWNrZXQpOworLQlt X3BhY2tldC5kYXRhID0gbnVsbHB0cjsKKy0JbV9wYWNrZXQuc2l6ZSA9IDA7CistCistCW1fcGFj a2V0MCA9IG1fcGFja2V0OworKwltX3BhY2tldCA9IGF2X3BhY2tldF9hbGxvYygpOworKwlpZiAo IW1fcGFja2V0KSB7CisrCQlyZXR1cm4gZmFsc2U7CisrCX0KKworIAlyZXQgPSBhdmZvcm1hdF9v cGVuX2lucHV0KCZtX2Zvcm1hdF9jdHgsIGZpbGVfbmFtZS5jX3N0cigpLCBtX2lucHV0X2ZtdCwg Jm1faW5wdXRfb3B0cyk7CisgCWlmIChyZXQgPCAwKSB7CitAQCAtMTUzLDI2ICsxNDQsMzEgQEAg aW5saW5lIGJvb2wgRkZtcGVnQXVkaW9SZWFkZXI6Ok9wZW4oY29uc3Qgc3RkOjpzdHJpbmcgJmZp bGVfbmFtZSkgeworIAkJcmV0dXJuIGZhbHNlOworIAl9CisKKy0JQVZDb2RlYyAqY29kZWM7Cisr CWNvbnN0IEFWQ29kZWMgKmNvZGVjOworIAlyZXQgPSBhdl9maW5kX2Jlc3Rfc3RyZWFtKG1fZm9y bWF0X2N0eCwgQVZNRURJQV9UWVBFX0FVRElPLCAtMSwgLTEsICZjb2RlYywgMCk7CisgCWlmIChy ZXQgPCAwKSB7CisgCQlTZXRFcnJvcigiQ291bGQgbm90IGZpbmQgYW55IGF1ZGlvIHN0cmVhbSBp biB0aGUgZmlsZSIsIHJldCk7CisgCQlyZXR1cm4gZmFsc2U7CisgCX0KKyAJbV9zdHJlYW1faW5k ZXggPSByZXQ7CisrCWF1dG8gc3RyZWFtID0gbV9mb3JtYXRfY3R4LT5zdHJlYW1zW21fc3RyZWFt X2luZGV4XTsKKworLQltX2NvZGVjX2N0eCA9IG1fZm9ybWF0X2N0eC0+c3RyZWFtc1ttX3N0cmVh bV9pbmRleF0tPmNvZGVjOworKwltX2NvZGVjX2N0eCA9IGF2Y29kZWNfYWxsb2NfY29udGV4dDMo Y29kZWMpOworIAltX2NvZGVjX2N0eC0+cmVxdWVzdF9zYW1wbGVfZm10ID0gQVZfU0FNUExFX0ZN VF9TMTY7CisKKysJcmV0ID0gYXZjb2RlY19wYXJhbWV0ZXJzX3RvX2NvbnRleHQobV9jb2RlY19j dHgsIHN0cmVhbS0+Y29kZWNwYXIpOworKwlpZiAocmV0IDwgMCkgeworKwkJU2V0RXJyb3IoIkNv dWxkIG5vdCBjb3B5IHRoZSBzdHJlYW0gcGFyYW1ldGVycyIsIHJldCk7CisrCQlyZXR1cm4gZmFs c2U7CisrCX0KKysKKyAJcmV0ID0gYXZjb2RlY19vcGVuMihtX2NvZGVjX2N0eCwgY29kZWMsIG51 bGxwdHIpOworIAlpZiAocmV0IDwgMCkgeworIAkJU2V0RXJyb3IoIkNvdWxkIG5vdCBvcGVuIHRo ZSBjb2RlYyIsIHJldCk7CisgCQlyZXR1cm4gZmFsc2U7CisgCX0KKworLQlpZiAoIW1fY29kZWNf Y3R4LT5jaGFubmVsX2xheW91dCkgeworLQkJbV9jb2RlY19jdHgtPmNoYW5uZWxfbGF5b3V0ID0g YXZfZ2V0X2RlZmF1bHRfY2hhbm5lbF9sYXlvdXQobV9jb2RlY19jdHgtPmNoYW5uZWxzKTsKKy0J fQorKwlhdl9kdW1wX2Zvcm1hdChtX2Zvcm1hdF9jdHgsIDAsICJmb28iLCAwKTsKKworIAltX2Zy YW1lID0gYXZfZnJhbWVfYWxsb2MoKTsKKyAJaWYgKCFtX2ZyYW1lKSB7CitAQCAtMTgzLDE5ICsx NzksMjMgQEAgaW5saW5lIGJvb2wgRkZtcGVnQXVkaW9SZWFkZXI6Ok9wZW4oY29uc3Qgc3RkOjpz dHJpbmcgJmZpbGVfbmFtZSkgeworIAkJbV9vdXRwdXRfc2FtcGxlX3JhdGUgPSBtX2NvZGVjX2N0 eC0+c2FtcGxlX3JhdGU7CisgCX0KKworLQlpZiAoIW1fb3V0cHV0X2NoYW5uZWxzKSB7CistCQlt X291dHB1dF9jaGFubmVscyA9IG1fY29kZWNfY3R4LT5jaGFubmVsczsKKysJQVZDaGFubmVsTGF5 b3V0IG91dHB1dF9jaGFubmVsX2xheW91dDsKKysJaWYgKG1fb3V0cHV0X2NoYW5uZWxzKSB7Cisr CQlhdl9jaGFubmVsX2xheW91dF9kZWZhdWx0KCZvdXRwdXRfY2hhbm5lbF9sYXlvdXQsIG1fb3V0 cHV0X2NoYW5uZWxzKTsKKysJfSBlbHNlIHsKKysJCW1fb3V0cHV0X2NoYW5uZWxzID0gbV9jb2Rl Y19jdHgtPmNoX2xheW91dC5uYl9jaGFubmVsczsKKysJCWF2X2NoYW5uZWxfbGF5b3V0X2RlZmF1 bHQoJm91dHB1dF9jaGFubmVsX2xheW91dCwgbV9vdXRwdXRfY2hhbm5lbHMpOworIAl9CisKKy0J aWYgKG1fY29kZWNfY3R4LT5zYW1wbGVfZm10ICE9IEFWX1NBTVBMRV9GTVRfUzE2IHx8IG1fY29k ZWNfY3R4LT5jaGFubmVscyAhPSBtX291dHB1dF9jaGFubmVscyB8fCBtX2NvZGVjX2N0eC0+c2Ft cGxlX3JhdGUgIT0gbV9vdXRwdXRfc2FtcGxlX3JhdGUpIHsKKysJaWYgKG1fY29kZWNfY3R4LT5z YW1wbGVfZm10ICE9IEFWX1NBTVBMRV9GTVRfUzE2IHx8IG1fY29kZWNfY3R4LT5jaF9sYXlvdXQu bmJfY2hhbm5lbHMgIT0gbV9vdXRwdXRfY2hhbm5lbHMgfHwgbV9jb2RlY19jdHgtPnNhbXBsZV9y YXRlICE9IG1fb3V0cHV0X3NhbXBsZV9yYXRlKSB7CisgCQltX2NvbnZlcnRlci5yZXNldChuZXcg RkZtcGVnQXVkaW9Qcm9jZXNzb3IoKSk7CisgCQltX2NvbnZlcnRlci0+U2V0Q29tcGF0aWJsZU1v ZGUoKTsKKyAJCW1fY29udmVydGVyLT5TZXRJbnB1dFNhbXBsZUZvcm1hdChtX2NvZGVjX2N0eC0+ c2FtcGxlX2ZtdCk7CisgCQltX2NvbnZlcnRlci0+U2V0SW5wdXRTYW1wbGVSYXRlKG1fY29kZWNf Y3R4LT5zYW1wbGVfcmF0ZSk7CistCQltX2NvbnZlcnRlci0+U2V0SW5wdXRDaGFubmVsTGF5b3V0 KG1fY29kZWNfY3R4LT5jaGFubmVsX2xheW91dCk7CisrCQltX2NvbnZlcnRlci0+U2V0SW5wdXRD aGFubmVsTGF5b3V0KCYobV9jb2RlY19jdHgtPmNoX2xheW91dCkpOworIAkJbV9jb252ZXJ0ZXIt PlNldE91dHB1dFNhbXBsZUZvcm1hdChBVl9TQU1QTEVfRk1UX1MxNik7CisgCQltX2NvbnZlcnRl ci0+U2V0T3V0cHV0U2FtcGxlUmF0ZShtX291dHB1dF9zYW1wbGVfcmF0ZSk7CistCQltX2NvbnZl cnRlci0+U2V0T3V0cHV0Q2hhbm5lbExheW91dChhdl9nZXRfZGVmYXVsdF9jaGFubmVsX2xheW91 dChtX291dHB1dF9jaGFubmVscykpOworKwkJbV9jb252ZXJ0ZXItPlNldE91dHB1dENoYW5uZWxM YXlvdXQoJm91dHB1dF9jaGFubmVsX2xheW91dCk7CisgCQlhdXRvIHJldCA9IG1fY29udmVydGVy LT5Jbml0KCk7CisgCQlpZiAocmV0ICE9IDApIHsKKyAJCQlTZXRFcnJvcigiQ291bGQgbm90IGNy ZWF0ZSBhbiBhdWRpbyBjb252ZXJ0ZXIgaW5zdGFuY2UiLCByZXQpOworQEAgLTIwMywxMCArMjAz LDExIEBAIGlubGluZSBib29sIEZGbXBlZ0F1ZGlvUmVhZGVyOjpPcGVuKGNvbnN0IHN0ZDo6c3Ry aW5nICZmaWxlX25hbWUpIHsKKyAJCX0KKyAJfQorCisrCWF2X2NoYW5uZWxfbGF5b3V0X3VuaW5p dCgmb3V0cHV0X2NoYW5uZWxfbGF5b3V0KTsKKysKKyAJbV9vcGVuZWQgPSB0cnVlOworLQltX2Zp bmlzaGVkID0gZmFsc2U7CistCW1fZ290X2ZyYW1lID0gMDsKKy0JbV9uYl9wYWNrZXRzID0gMDsK KysJbV9oYXNfbW9yZV9wYWNrZXRzID0gdHJ1ZTsKKysJbV9oYXNfbW9yZV9mcmFtZXMgPSB0cnVl OworIAltX2RlY29kZV9lcnJvciA9IDA7CisKKyAJcmV0dXJuIHRydWU7CitAQCAtMjE0LDYgKzIx NSw3IEBAIGlubGluZSBib29sIEZGbXBlZ0F1ZGlvUmVhZGVyOjpPcGVuKGNvbnN0IHN0ZDo6c3Ry aW5nICZmaWxlX25hbWUpIHsKKworIGlubGluZSB2b2lkIEZGbXBlZ0F1ZGlvUmVhZGVyOjpDbG9z ZSgpIHsKKyAJYXZfZnJhbWVfZnJlZSgmbV9mcmFtZSk7CisrCWF2X3BhY2tldF9mcmVlKCZtX3Bh Y2tldCk7CisKKyAJbV9zdHJlYW1faW5kZXggPSAtMTsKKworQEAgLTI1Miw5MSArMjU0LDk4IEBA IGlubGluZSBib29sIEZGbXBlZ0F1ZGlvUmVhZGVyOjpSZWFkKGNvbnN0IGludDE2X3QgKipkYXRh LCBzaXplX3QgKnNpemUpIHsKKyAJCXJldHVybiBmYWxzZTsKKyAJfQorCisrCSpkYXRhID0gbnVs bHB0cjsKKysJKnNpemUgPSAwOworKworIAlpbnQgcmV0OworKwlib29sIG5lZWRzX3BhY2tldCA9 IGZhbHNlOworIAl3aGlsZSAodHJ1ZSkgeworLQkJd2hpbGUgKG1fcGFja2V0LnNpemUgPD0gMCkg eworLQkJCWF2X3BhY2tldF91bnJlZigmbV9wYWNrZXQwKTsKKy0JCQlhdl9pbml0X3BhY2tldCgm bV9wYWNrZXQpOworLQkJCW1fcGFja2V0LmRhdGEgPSBudWxscHRyOworLQkJCW1fcGFja2V0LnNp emUgPSAwOworLQkJCXJldCA9IGF2X3JlYWRfZnJhbWUobV9mb3JtYXRfY3R4LCAmbV9wYWNrZXQp OworKwkJd2hpbGUgKG5lZWRzX3BhY2tldCAmJiBtX3BhY2tldC0+c2l6ZSA9PSAwKSB7CisrCQkJ cmV0ID0gYXZfcmVhZF9mcmFtZShtX2Zvcm1hdF9jdHgsIG1fcGFja2V0KTsKKyAJCQlpZiAocmV0 IDwgMCkgeworIAkJCQlpZiAocmV0ID09IEFWRVJST1JfRU9GKSB7CistCQkJCQltX2ZpbmlzaGVk ID0gdHJ1ZTsKKysJCQkJCW5lZWRzX3BhY2tldCA9IGZhbHNlOworKwkJCQkJbV9oYXNfbW9yZV9w YWNrZXRzID0gZmFsc2U7CisgCQkJCQlicmVhazsKKy0JCQkJfSBlbHNlIHsKKysJCQkJfQorKwkJ CQlTZXRFcnJvcigiRXJyb3IgcmVhZGluZyBmcm9tIHRoZSBhdWRpbyBzb3VyY2UiLCByZXQpOwor KwkJCQlyZXR1cm4gZmFsc2U7CisrCQkJfQorKwkJCWlmIChtX3BhY2tldC0+c3RyZWFtX2luZGV4 ID09IG1fc3RyZWFtX2luZGV4KSB7CisrCQkJCW5lZWRzX3BhY2tldCA9IGZhbHNlOworKwkJCX0g ZWxzZSB7CisrCQkJCWF2X3BhY2tldF91bnJlZihtX3BhY2tldCk7CisrCQkJfQorKwkJfQorKwor KwkJaWYgKG1fcGFja2V0LT5zaXplICE9IDApIHsKKysJCQlyZXQgPSBhdmNvZGVjX3NlbmRfcGFj a2V0KG1fY29kZWNfY3R4LCBtX3BhY2tldCk7CisrCQkJaWYgKHJldCA8IDApIHsKKysJCQkJaWYg KHJldCAhPSBBVkVSUk9SKEVBR0FJTikpIHsKKyAJCQkJCVNldEVycm9yKCJFcnJvciByZWFkaW5n IGZyb20gdGhlIGF1ZGlvIHNvdXJjZSIsIHJldCk7CisgCQkJCQlyZXR1cm4gZmFsc2U7CisgCQkJ CX0KKy0JCQl9CistCQkJbV9wYWNrZXQwID0gbV9wYWNrZXQ7CistCQkJaWYgKG1fcGFja2V0LnN0 cmVhbV9pbmRleCAhPSBtX3N0cmVhbV9pbmRleCkgeworLQkJCQltX3BhY2tldC5kYXRhID0gbnVs bHB0cjsKKy0JCQkJbV9wYWNrZXQuc2l6ZSA9IDA7CisgCQkJfSBlbHNlIHsKKy0JCQkJbV9uYl9w YWNrZXRzKys7CisrCQkJCWF2X3BhY2tldF91bnJlZihtX3BhY2tldCk7CisgCQkJfQorIAkJfQor CistCQlyZXQgPSBhdmNvZGVjX2RlY29kZV9hdWRpbzQobV9jb2RlY19jdHgsIG1fZnJhbWUsICZt X2dvdF9mcmFtZSwgJm1fcGFja2V0KTsKKysJCXJldCA9IGF2Y29kZWNfcmVjZWl2ZV9mcmFtZSht X2NvZGVjX2N0eCwgbV9mcmFtZSk7CisgCQlpZiAocmV0IDwgMCkgeworLQkJCWlmIChtX2RlY29k ZV9lcnJvcikgeworLQkJCQlTZXRFcnJvcigiRXJyb3IgZGVjb2RpbmcgYXVkaW8gZnJhbWUiLCBt X2RlY29kZV9lcnJvcik7CistCQkJCXJldHVybiBmYWxzZTsKKysJCQlpZiAocmV0ID09IEFWRVJS T1JfRU9GKSB7CisrCQkJCW1faGFzX21vcmVfZnJhbWVzID0gZmFsc2U7CisrCQkJfSBlbHNlIGlm IChyZXQgPT0gQVZFUlJPUihFQUdBSU4pKSB7CisrCQkJCWlmIChtX2hhc19tb3JlX3BhY2tldHMp IHsKKysJCQkJCW5lZWRzX3BhY2tldCA9IHRydWU7CisrCQkJCQljb250aW51ZTsKKysJCQkJfSBl bHNlIHsKKysJCQkJCW1faGFzX21vcmVfZnJhbWVzID0gZmFsc2U7CisrCQkJCX0KKyAJCQl9Cist CQkJbV9kZWNvZGVfZXJyb3IgPSByZXQ7CistCQkJbV9wYWNrZXQuZGF0YSA9IG51bGxwdHI7Cist CQkJbV9wYWNrZXQuc2l6ZSA9IDA7CistCQkJY29udGludWU7CisrCQkJU2V0RXJyb3IoIkVycm9y IGRlY29kaW5nIHRoZSBhdWRpbyBzb3VyY2UiLCByZXQpOworKwkJCXJldHVybiBmYWxzZTsKKyAJ CX0KKworLQkJYnJlYWs7CistCX0KKy0KKy0JbV9kZWNvZGVfZXJyb3IgPSAwOworLQorLQljb25z dCBpbnQgZGVjb2RlZCA9IHN0ZDo6bWluKHJldCwgbV9wYWNrZXQuc2l6ZSk7CistCW1fcGFja2V0 LmRhdGEgKz0gZGVjb2RlZDsKKy0JbV9wYWNrZXQuc2l6ZSAtPSBkZWNvZGVkOworLQorLQlpZiAo bV9nb3RfZnJhbWUpIHsKKy0JCWlmIChtX2NvbnZlcnRlcikgeworLQkJCWlmIChtX2ZyYW1lLT5u Yl9zYW1wbGVzID4gbV9jb252ZXJ0X2J1ZmZlcl9uYl9zYW1wbGVzKSB7CistCQkJCWludCBsaW5z aXplOworLQkJCQlhdl9mcmVlcCgmbV9jb252ZXJ0X2J1ZmZlclswXSk7CistCQkJCW1fY29udmVy dF9idWZmZXJfbmJfc2FtcGxlcyA9IHN0ZDo6bWF4KDEwMjQgKiA4LCBtX2ZyYW1lLT5uYl9zYW1w bGVzKTsKKy0JCQkJcmV0ID0gYXZfc2FtcGxlc19hbGxvYyhtX2NvbnZlcnRfYnVmZmVyLCAmbGlu c2l6ZSwgbV9jb2RlY19jdHgtPmNoYW5uZWxzLCBtX2NvbnZlcnRfYnVmZmVyX25iX3NhbXBsZXMs IEFWX1NBTVBMRV9GTVRfUzE2LCAxKTsKKy0JCQkJaWYgKHJldCA8IDApIHsKKy0JCQkJCVNldEVy cm9yKCJDb3VsZG4ndCBhbGxvY2F0ZSBhdWRpbyBjb252ZXJ0ZXIgYnVmZmVyIiwgcmV0KTsKKysJ CWlmIChtX2ZyYW1lLT5uYl9zYW1wbGVzID4gMCkgeworKwkJCWlmIChtX2NvbnZlcnRlcikgewor KwkJCQlpZiAobV9mcmFtZS0+bmJfc2FtcGxlcyA+IG1fY29udmVydF9idWZmZXJfbmJfc2FtcGxl cykgeworKwkJCQkJaW50IGxpbnNpemU7CisrCQkJCQlhdl9mcmVlcCgmbV9jb252ZXJ0X2J1ZmZl clswXSk7CisrCQkJCQltX2NvbnZlcnRfYnVmZmVyX25iX3NhbXBsZXMgPSBzdGQ6Om1heCgxMDI0 ICogOCwgbV9mcmFtZS0+bmJfc2FtcGxlcyk7CisrCQkJCQlyZXQgPSBhdl9zYW1wbGVzX2FsbG9j KG1fY29udmVydF9idWZmZXIsICZsaW5zaXplLCBtX2NvZGVjX2N0eC0+Y2hfbGF5b3V0Lm5iX2No YW5uZWxzLCBtX2NvbnZlcnRfYnVmZmVyX25iX3NhbXBsZXMsIEFWX1NBTVBMRV9GTVRfUzE2LCAx KTsKKysJCQkJCWlmIChyZXQgPCAwKSB7CisrCQkJCQkJU2V0RXJyb3IoIkNvdWxkbid0IGFsbG9j YXRlIGF1ZGlvIGNvbnZlcnRlciBidWZmZXIiLCByZXQpOworKwkJCQkJCXJldHVybiBmYWxzZTsK KysJCQkJCX0KKysJCQkJfQorKwkJCQlhdXRvIG5iX3NhbXBsZXMgPSBtX2NvbnZlcnRlci0+Q29u dmVydChtX2NvbnZlcnRfYnVmZmVyLCBtX2NvbnZlcnRfYnVmZmVyX25iX3NhbXBsZXMsIChjb25z dCB1aW50OF90ICoqKSBtX2ZyYW1lLT5kYXRhLCBtX2ZyYW1lLT5uYl9zYW1wbGVzKTsKKysJCQkJ aWYgKG5iX3NhbXBsZXMgPCAwKSB7CisrCQkJCQlTZXRFcnJvcigiQ291bGRuJ3QgY29udmVydCBh dWRpbyIsIHJldCk7CisgCQkJCQlyZXR1cm4gZmFsc2U7CisgCQkJCX0KKy0JCQl9CistCQkJYXV0 byBuYl9zYW1wbGVzID0gbV9jb252ZXJ0ZXItPkNvbnZlcnQobV9jb252ZXJ0X2J1ZmZlciwgbV9j b252ZXJ0X2J1ZmZlcl9uYl9zYW1wbGVzLCAoY29uc3QgdWludDhfdCAqKikgbV9mcmFtZS0+ZGF0 YSwgbV9mcmFtZS0+bmJfc2FtcGxlcyk7CistCQkJaWYgKG5iX3NhbXBsZXMgPCAwKSB7CistCQkJ CVNldEVycm9yKCJDb3VsZG4ndCBjb252ZXJ0IGF1ZGlvIiwgcmV0KTsKKy0JCQkJcmV0dXJuIGZh bHNlOworLQkJCX0KKy0JCQkqZGF0YSA9IChjb25zdCBpbnQxNl90ICopIG1fY29udmVydF9idWZm ZXJbMF07CistCQkJKnNpemUgPSBuYl9zYW1wbGVzOworLQkJfSBlbHNlIHsKKy0JCQkqZGF0YSA9 IChjb25zdCBpbnQxNl90ICopIG1fZnJhbWUtPmRhdGFbMF07CistCQkJKnNpemUgPSBtX2ZyYW1l LT5uYl9zYW1wbGVzOworLQkJfQorLQl9IGVsc2UgeworLQkJaWYgKG1fZmluaXNoZWQgJiYgbV9j b252ZXJ0ZXIpIHsKKy0JCQlhdXRvIG5iX3NhbXBsZXMgPSBtX2NvbnZlcnRlci0+Rmx1c2gobV9j b252ZXJ0X2J1ZmZlciwgbV9jb252ZXJ0X2J1ZmZlcl9uYl9zYW1wbGVzKTsKKy0JCQlpZiAobmJf c2FtcGxlcyA8IDApIHsKKy0JCQkJU2V0RXJyb3IoIkNvdWxkbid0IGNvbnZlcnQgYXVkaW8iLCBy ZXQpOworLQkJCQlyZXR1cm4gZmFsc2U7CistCQkJfSBlbHNlIGlmIChuYl9zYW1wbGVzID4gMCkg eworLQkJCQltX2dvdF9mcmFtZSA9IDE7CisgCQkJCSpkYXRhID0gKGNvbnN0IGludDE2X3QgKikg bV9jb252ZXJ0X2J1ZmZlclswXTsKKyAJCQkJKnNpemUgPSBuYl9zYW1wbGVzOworKwkJCX0gZWxz ZSB7CisrCQkJCSpkYXRhID0gKGNvbnN0IGludDE2X3QgKikgbV9mcmFtZS0+ZGF0YVswXTsKKysJ CQkJKnNpemUgPSBtX2ZyYW1lLT5uYl9zYW1wbGVzOworKwkJCX0KKysJCX0gZWxzZSB7CisrCQkJ aWYgKG1fY29udmVydGVyKSB7CisrCQkJCWlmIChJc0ZpbmlzaGVkKCkpIHsKKysJCQkJCWF1dG8g bmJfc2FtcGxlcyA9IG1fY29udmVydGVyLT5GbHVzaChtX2NvbnZlcnRfYnVmZmVyLCBtX2NvbnZl cnRfYnVmZmVyX25iX3NhbXBsZXMpOworKwkJCQkJaWYgKG5iX3NhbXBsZXMgPCAwKSB7CisrCQkJ CQkJU2V0RXJyb3IoIkNvdWxkbid0IGNvbnZlcnQgYXVkaW8iLCByZXQpOworKwkJCQkJCXJldHVy biBmYWxzZTsKKysJCQkJCX0gZWxzZSBpZiAobmJfc2FtcGxlcyA+IDApIHsKKysJCQkJCQkqZGF0 YSA9IChjb25zdCBpbnQxNl90ICopIG1fY29udmVydF9idWZmZXJbMF07CisrCQkJCQkJKnNpemUg PSBuYl9zYW1wbGVzOworKwkJCQkJfQorKwkJCQl9CisgCQkJfQorIAkJfQorLQl9CisKKy0JcmV0 dXJuIHRydWU7CisrCQlyZXR1cm4gdHJ1ZTsKKysJfQorIH0KKworIGlubGluZSB2b2lkIEZGbXBl Z0F1ZGlvUmVhZGVyOjpTZXRFcnJvcihjb25zdCBjaGFyICptZXNzYWdlLCBpbnQgZXJybnVtKSB7 CitkaWZmIC0tZ2l0IGEvdGVzdHMvQ01ha2VMaXN0cy50eHQgYi90ZXN0cy9DTWFrZUxpc3RzLnR4 dAoraW5kZXggYTJiNTE3Yi4uMTIzZTY0MyAxMDA2NDQKKy0tLSBhL3Rlc3RzL0NNYWtlTGlzdHMu dHh0CisrKysgYi90ZXN0cy9DTWFrZUxpc3RzLnR4dAorQEAgLTM4LDYgKzM4LDEyIEBAIHNldChT UkNTCisKKyBpZihCVUlMRF9UT09MUykKKyAJc2V0KFNSQ1MgJHtTUkNTfSAuLi9zcmMvYXVkaW8v ZmZtcGVnX2F1ZGlvX3JlYWRlcl90ZXN0LmNwcCkKKysgICAgaW5jbHVkZV9kaXJlY3RvcmllcygK KysgICAgICAgICR7RkZNUEVHX0xJQkFWRk9STUFUX0lOQ0xVREVfRElSU30KKysgICAgICAgICR7 RkZNUEVHX0xJQkFWQ09ERUNfSU5DTFVERV9ESVJTfQorKyAgICAgICAgJHtGRk1QRUdfTElCQVZV VElMX0lOQ0xVREVfRElSU30KKysgICAgICAgICR7QVVESU9fUFJPQ0VTU09SX0lOQ0xVREVfRElS U30KKysgICAgKQorIAlsaW5rX2xpYnJhcmllcyhmcGNhbGNfbGlicykKKyBlbmRpZigpCisKKy0t IAorMi4zOC4xCisKKwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jaHJvbWFwcmludC90ZW1wbGF0ZSBi L3NyY3BrZ3MvY2hyb21hcHJpbnQvdGVtcGxhdGUKaW5kZXggN2VmNzgzODk0OWYzYTMuLjFiOTkw MTkxYjdmYjAyIDEwMDY0NAotLS0gYS9zcmNwa2dzL2Nocm9tYXByaW50L3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvY2hyb21hcHJpbnQvdGVtcGxhdGUKQEAgLTEsMTEgKzEsMTEgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2Nocm9tYXByaW50JwogcGtnbmFtZT1jaHJvbWFwcmludAogdmVyc2lvbj0x LjUuMQotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3Vy ZV9hcmdzPSItREJVSUxEX1RPT0xTPU9OIgogbWFrZV9jaGVja190YXJnZXQ9ImNoZWNrIgotbWFr ZWRlcGVuZHM9ImZmdHctZGV2ZWwgZmZtcGVnLWRldmVsIgorbWFrZWRlcGVuZHM9ImZmdHctZGV2 ZWwgZmZtcGVnNi1kZXZlbCIKIHNob3J0X2Rlc2M9IkxpYnJhcnkgdGhhdCBleHRyYWN0cyBmaW5n ZXJwcmludHMgZnJvbSBhbnkgYXVkaW8gc291cmNlIgogbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9y cGhhbkB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9Ik1JVCwgTEdQTC0yLjEtb25seSIKCkZyb20g MjI5MzNkYTM4NjgzNTZlNTNjMGUzN2M4YzEwMjM3YjZlY2NkMThiYyBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBN YXIgMjAyMyAyMDowMTo0NiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMjQvODldIGNocm9taXVtOiBy ZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvY2hyb21pdW0vcGF0Y2hlcy9mZm1wZWc1 LnBhdGNoIHwgNDcgKysrKysrKysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvY2hyb21pdW0v dGVtcGxhdGUgICAgICAgICAgICAgIHwgIDIgKy0KIDIgZmlsZXMgY2hhbmdlZCwgNDggaW5zZXJ0 aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvY2hyb21p dW0vcGF0Y2hlcy9mZm1wZWc1LnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jaHJvbWl1bS9w YXRjaGVzL2ZmbXBlZzUucGF0Y2ggYi9zcmNwa2dzL2Nocm9taXVtL3BhdGNoZXMvZmZtcGVnNS5w YXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uMjRlMmRhMzhl MzRjYTIKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2Nocm9taXVtL3BhdGNoZXMvZmZtcGVn NS5wYXRjaApAQCAtMCwwICsxLDQ3IEBACistLS0gYS9tZWRpYS9maWx0ZXJzL2ZmbXBlZ19kZW11 eGVyLmNjCTIwMjMtMDEtMjMgMTc6MzM6NTcuMzY2MjEzODA1ICswMjAwCisrKysgYi9tZWRpYS9m aWx0ZXJzL2ZmbXBlZ19kZW11eGVyLmNjCTIwMjMtMDEtMjMgMTc6NDM6MDkuMjgzNDM2OTgzICsw MjAwCitAQCAtOTIsMjQgKzkyLDEyIEBACisgCisgc3RhdGljIGJhc2U6OlRpbWVEZWx0YSBFeHRy YWN0U3RhcnRUaW1lKEFWU3RyZWFtKiBzdHJlYW0pIHsKKyAgIC8vIFRoZSBkZWZhdWx0IHN0YXJ0 IHRpbWUgaXMgemVyby4KKy0gIGJhc2U6OlRpbWVEZWx0YSBzdGFydF90aW1lOworKyAgYmFzZTo6 VGltZURlbHRhIHN0YXJ0X3RpbWUgPSBrTm9UaW1lc3RhbXA7CisgCisgICAvLyBGaXJzdCB0cnkg dG8gdXNlICB0aGUgfHN0YXJ0X3RpbWV8IHZhbHVlIGFzIGlzLgorLSAgaWYgKHN0cmVhbS0+c3Rh cnRfdGltZSAhPSBrTm9GRm1wZWdUaW1lc3RhbXApCisrICBpZiAoc3RyZWFtLT5zdGFydF90aW1l ICE9IGtOb0ZGbXBlZ1RpbWVzdGFtcCkgLy8gQVZfTk9QVFNfVkFMVUUKKyAgICAgc3RhcnRfdGlt ZSA9IENvbnZlcnRGcm9tVGltZUJhc2Uoc3RyZWFtLT50aW1lX2Jhc2UsIHN0cmVhbS0+c3RhcnRf dGltZSk7CisgCistICAvLyBOZXh0IHRyeSB0byB1c2UgdGhlIGZpcnN0IERUUyB2YWx1ZSwgZm9y IGNvZGVjcyB3aGVyZSB3ZSBrbm93IFBUUyA9PSBEVFMKKy0gIC8vIChleGNsdWRlcyBhbGwgSDI2 eCBjb2RlY3MpLiBUaGUgc3RhcnQgdGltZSBtdXN0IGJlIHJldHVybmVkIGluIFBUUy4KKy0gIGlm IChhdl9zdHJlYW1fZ2V0X2ZpcnN0X2R0cyhzdHJlYW0pICE9IGtOb0ZGbXBlZ1RpbWVzdGFtcCAm JgorLSAgICAgIHN0cmVhbS0+Y29kZWNwYXItPmNvZGVjX2lkICE9IEFWX0NPREVDX0lEX0hFVkMg JiYKKy0gICAgICBzdHJlYW0tPmNvZGVjcGFyLT5jb2RlY19pZCAhPSBBVl9DT0RFQ19JRF9IMjY0 ICYmCistICAgICAgc3RyZWFtLT5jb2RlY3Bhci0+Y29kZWNfaWQgIT0gQVZfQ09ERUNfSURfTVBF RzQpIHsKKy0gICAgY29uc3QgYmFzZTo6VGltZURlbHRhIGZpcnN0X3B0cyA9CistICAgICAgICBD b252ZXJ0RnJvbVRpbWVCYXNlKHN0cmVhbS0+dGltZV9iYXNlLCBhdl9zdHJlYW1fZ2V0X2ZpcnN0 X2R0cyhzdHJlYW0pKTsKKy0gICAgaWYgKGZpcnN0X3B0cyA8IHN0YXJ0X3RpbWUpCistICAgICAg c3RhcnRfdGltZSA9IGZpcnN0X3B0czsKKy0gIH0KKy0KKyAgIHJldHVybiBzdGFydF90aW1lOwor IH0KKyAKK0BAIC0xNTk3LDcgKzE1ODUsNyBAQAorICAgZm9yIChjb25zdCBhdXRvJiBzdHJlYW0g OiBzdHJlYW1zXykgeworICAgICBpZiAoIXN0cmVhbSB8fCBzdHJlYW0tPklzRW5hYmxlZCgpICE9 IGVuYWJsZWQpCisgICAgICAgY29udGludWU7CistICAgIGlmIChhdl9zdHJlYW1fZ2V0X2ZpcnN0 X2R0cyhzdHJlYW0tPmF2X3N0cmVhbSgpKSA9PSBrSW52YWxpZFBUU01hcmtlcikKKysgICAgaWYg KHN0cmVhbS0+YXZfc3RyZWFtKCktPnN0YXJ0X3RpbWUgPT0gQVZfTk9QVFNfVkFMVUUpCisgICAg ICAgY29udGludWU7CisgICAgIGlmICghbG93ZXN0X3N0YXJ0X3RpbWVfc3RyZWFtIHx8CisgICAg ICAgICBzdHJlYW0tPnN0YXJ0X3RpbWUoKSA8IGxvd2VzdF9zdGFydF90aW1lX3N0cmVhbS0+c3Rh cnRfdGltZSgpKSB7CitAQCAtMTYxOCw3ICsxNjA2LDcgQEAKKyAgICAgaWYgKHN0cmVhbS0+dHlw ZSgpICE9IERlbXV4ZXJTdHJlYW06OlZJREVPKQorICAgICAgIGNvbnRpbnVlOworIAorLSAgICBp ZiAoYXZfc3RyZWFtX2dldF9maXJzdF9kdHMoc3RyZWFtLT5hdl9zdHJlYW0oKSkgPT0ga0ludmFs aWRQVFNNYXJrZXIpCisrICAgIGlmIChzdHJlYW0tPmF2X3N0cmVhbSgpLT5zdGFydF90aW1lID09 IEFWX05PUFRTX1ZBTFVFKQorICAgICAgIGNvbnRpbnVlOworIAorICAgICBpZiAoIXN0cmVhbS0+ SXNFbmFibGVkKCkpCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Nocm9taXVtL3RlbXBsYXRlIGIvc3Jj cGtncy9jaHJvbWl1bS90ZW1wbGF0ZQppbmRleCBiZDUxNjEyZWQ2NDc0OC4uMjIwN2Y3NDRmMGM0 ZWYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvY2hyb21pdW0vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9j aHJvbWl1bS90ZW1wbGF0ZQpAQCAtMiw3ICsyLDcgQEAKIHBrZ25hbWU9Y2hyb21pdW0KICMgU2Vl IGh0dHBzOi8vY2hyb21pdW1kYXNoLmFwcHNwb3QuY29tL3JlbGVhc2VzP3BsYXRmb3JtPUxpbnV4 IGZvciB0aGUgbGF0ZXN0IHZlcnNpb24KIHZlcnNpb249MTI2LjAuNjQ3OC41NQotcmV2aXNpb249 MQorcmV2aXNpb249MgogYXJjaHM9Imk2ODYqIHg4Nl82NCogYWFyY2g2NCogYXJtdjdsKiIKIGhv c3RtYWtlZGVwZW5kcz0iCiAgJCh2b3B0X2lmIGNsYW5nICJjbGFuZzE3IGxsZDE3IGxsdm0xNyBj b21waWxlci1ydCIpCgpGcm9tIDJiOGQ3NTdiZjY5M2Q5ZTM3MDM2Zjc1M2IyMjBhM2ViZjgxZjFh NzMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5j b20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDYgLTA0MDAKU3ViamVjdDogW1BBVENI IDI1Lzg5XSBjbXVzOiByZXZidW1wIGZvciBmZm1wZWc2CgpjbXVzIDogcmVkbwotLS0KIHNyY3Br Z3MvY2hyb21pdW0vcGF0Y2hlcy9mZm1wZWc1LnBhdGNoIHwgNDcgLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KIHNyY3BrZ3MvY211cy9wYXRjaGVzL2ZmbXBlZzYucGF0Y2ggICAgIHwgMTIgKysr KysrKwogc3JjcGtncy9jbXVzL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgfCAgNCArLS0KIDMg ZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgNDkgZGVsZXRpb25zKC0pCiBkZWxldGUg bW9kZSAxMDA2NDQgc3JjcGtncy9jaHJvbWl1bS9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gKIGNyZWF0 ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2NtdXMvcGF0Y2hlcy9mZm1wZWc2LnBhdGNoCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy9jaHJvbWl1bS9wYXRjaGVzL2ZmbXBlZzUucGF0Y2ggYi9zcmNwa2dzL2No cm9taXVtL3BhdGNoZXMvZmZtcGVnNS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMjRlMmRhMzhlMzRjYTIuLjAwMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvY2hyb21pdW0v cGF0Y2hlcy9mZm1wZWc1LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNDcgKzAsMCBAQAotLS0t IGEvbWVkaWEvZmlsdGVycy9mZm1wZWdfZGVtdXhlci5jYwkyMDIzLTAxLTIzIDE3OjMzOjU3LjM2 NjIxMzgwNSArMDIwMAotKysrIGIvbWVkaWEvZmlsdGVycy9mZm1wZWdfZGVtdXhlci5jYwkyMDIz LTAxLTIzIDE3OjQzOjA5LjI4MzQzNjk4MyArMDIwMAotQEAgLTkyLDI0ICs5MiwxMiBAQAotIAot IHN0YXRpYyBiYXNlOjpUaW1lRGVsdGEgRXh0cmFjdFN0YXJ0VGltZShBVlN0cmVhbSogc3RyZWFt KSB7Ci0gICAvLyBUaGUgZGVmYXVsdCBzdGFydCB0aW1lIGlzIHplcm8uCi0tICBiYXNlOjpUaW1l RGVsdGEgc3RhcnRfdGltZTsKLSsgIGJhc2U6OlRpbWVEZWx0YSBzdGFydF90aW1lID0ga05vVGlt ZXN0YW1wOwotIAotICAgLy8gRmlyc3QgdHJ5IHRvIHVzZSAgdGhlIHxzdGFydF90aW1lfCB2YWx1 ZSBhcyBpcy4KLS0gIGlmIChzdHJlYW0tPnN0YXJ0X3RpbWUgIT0ga05vRkZtcGVnVGltZXN0YW1w KQotKyAgaWYgKHN0cmVhbS0+c3RhcnRfdGltZSAhPSBrTm9GRm1wZWdUaW1lc3RhbXApIC8vIEFW X05PUFRTX1ZBTFVFCi0gICAgIHN0YXJ0X3RpbWUgPSBDb252ZXJ0RnJvbVRpbWVCYXNlKHN0cmVh bS0+dGltZV9iYXNlLCBzdHJlYW0tPnN0YXJ0X3RpbWUpOwotIAotLSAgLy8gTmV4dCB0cnkgdG8g dXNlIHRoZSBmaXJzdCBEVFMgdmFsdWUsIGZvciBjb2RlY3Mgd2hlcmUgd2Uga25vdyBQVFMgPT0g RFRTCi0tICAvLyAoZXhjbHVkZXMgYWxsIEgyNnggY29kZWNzKS4gVGhlIHN0YXJ0IHRpbWUgbXVz dCBiZSByZXR1cm5lZCBpbiBQVFMuCi0tICBpZiAoYXZfc3RyZWFtX2dldF9maXJzdF9kdHMoc3Ry ZWFtKSAhPSBrTm9GRm1wZWdUaW1lc3RhbXAgJiYKLS0gICAgICBzdHJlYW0tPmNvZGVjcGFyLT5j b2RlY19pZCAhPSBBVl9DT0RFQ19JRF9IRVZDICYmCi0tICAgICAgc3RyZWFtLT5jb2RlY3Bhci0+ Y29kZWNfaWQgIT0gQVZfQ09ERUNfSURfSDI2NCAmJgotLSAgICAgIHN0cmVhbS0+Y29kZWNwYXIt PmNvZGVjX2lkICE9IEFWX0NPREVDX0lEX01QRUc0KSB7Ci0tICAgIGNvbnN0IGJhc2U6OlRpbWVE ZWx0YSBmaXJzdF9wdHMgPQotLSAgICAgICAgQ29udmVydEZyb21UaW1lQmFzZShzdHJlYW0tPnRp bWVfYmFzZSwgYXZfc3RyZWFtX2dldF9maXJzdF9kdHMoc3RyZWFtKSk7Ci0tICAgIGlmIChmaXJz dF9wdHMgPCBzdGFydF90aW1lKQotLSAgICAgIHN0YXJ0X3RpbWUgPSBmaXJzdF9wdHM7Ci0tICB9 Ci0tCi0gICByZXR1cm4gc3RhcnRfdGltZTsKLSB9Ci0gCi1AQCAtMTU5Nyw3ICsxNTg1LDcgQEAK LSAgIGZvciAoY29uc3QgYXV0byYgc3RyZWFtIDogc3RyZWFtc18pIHsKLSAgICAgaWYgKCFzdHJl YW0gfHwgc3RyZWFtLT5Jc0VuYWJsZWQoKSAhPSBlbmFibGVkKQotICAgICAgIGNvbnRpbnVlOwot LSAgICBpZiAoYXZfc3RyZWFtX2dldF9maXJzdF9kdHMoc3RyZWFtLT5hdl9zdHJlYW0oKSkgPT0g a0ludmFsaWRQVFNNYXJrZXIpCi0rICAgIGlmIChzdHJlYW0tPmF2X3N0cmVhbSgpLT5zdGFydF90 aW1lID09IEFWX05PUFRTX1ZBTFVFKQotICAgICAgIGNvbnRpbnVlOwotICAgICBpZiAoIWxvd2Vz dF9zdGFydF90aW1lX3N0cmVhbSB8fAotICAgICAgICAgc3RyZWFtLT5zdGFydF90aW1lKCkgPCBs b3dlc3Rfc3RhcnRfdGltZV9zdHJlYW0tPnN0YXJ0X3RpbWUoKSkgewotQEAgLTE2MTgsNyArMTYw Niw3IEBACi0gICAgIGlmIChzdHJlYW0tPnR5cGUoKSAhPSBEZW11eGVyU3RyZWFtOjpWSURFTykK LSAgICAgICBjb250aW51ZTsKLSAKLS0gICAgaWYgKGF2X3N0cmVhbV9nZXRfZmlyc3RfZHRzKHN0 cmVhbS0+YXZfc3RyZWFtKCkpID09IGtJbnZhbGlkUFRTTWFya2VyKQotKyAgICBpZiAoc3RyZWFt LT5hdl9zdHJlYW0oKS0+c3RhcnRfdGltZSA9PSBBVl9OT1BUU19WQUxVRSkKLSAgICAgICBjb250 aW51ZTsKLSAKLSAgICAgaWYgKCFzdHJlYW0tPklzRW5hYmxlZCgpKQpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9jbXVzL3BhdGNoZXMvZmZtcGVnNi5wYXRjaCBiL3NyY3BrZ3MvY211cy9wYXRjaGVzL2Zm bXBlZzYucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAuLmZm YTk1YWI4MTExMDFiCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9jbXVzL3BhdGNoZXMvZmZt cGVnNi5wYXRjaApAQCAtMCwwICsxLDEyIEBACistLS0gYS9pcC9mZm1wZWcuYworKysrIGIvaXAv ZmZtcGVnLmMKK0BAIC0yMDIsOSArMjAyLDYgQEAgc3RhdGljIGludCBmZm1wZWdfb3BlbihzdHJ1 Y3QgaW5wdXRfcGx1Z2luX2RhdGEgKmlwX2RhdGEpCisgCQkJYnJlYWs7CisgCQl9CisgCistCQlp ZiAoY29kZWMtPmNhcGFiaWxpdGllcyAmIEFWX0NPREVDX0NBUF9UUlVOQ0FURUQpCistCQkJY2Mt PmZsYWdzIHw9IEFWX0NPREVDX0ZMQUdfVFJVTkNBVEVEOworLQorIAkJaWYgKGF2Y29kZWNfb3Bl bjIoY2MsIGNvZGVjLCBOVUxMKSA8IDApIHsKKyAJCQlkX3ByaW50KCJjb3VsZCBub3Qgb3BlbiBj b2RlYzogJWQsICVzXG4iLCBjYy0+Y29kZWNfaWQsIGF2Y29kZWNfZ2V0X25hbWUoY2MtPmNvZGVj X2lkKSk7CisgCQkJZXJyID0gLUlQX0VSUk9SX1VOU1VQUE9SVEVEX0ZJTEVfVFlQRTsKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvY211cy90ZW1wbGF0ZSBiL3NyY3BrZ3MvY211cy90ZW1wbGF0ZQppbmRl eCAwZDE0MzY3NDRmMWIyYy4uNGJjMDhhMzFkM2ZiZTcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvY211 cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2NtdXMvdGVtcGxhdGUKQEAgLTEsMTQgKzEsMTQgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2NtdXMnCiBwa2duYW1lPWNtdXMKIHZlcnNpb249Mi4xMC4w Ci1yZXZpc2lvbj0zCityZXZpc2lvbj00CiBidWlsZF9zdHlsZT1jb25maWd1cmUKIGNvbmZpZ3Vy ZV9hcmdzPSJwcmVmaXg9L3VzciBMRD0kQ0MiCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWci CiBtYWtlZGVwZW5kcz0ibmN1cnNlcy1kZXZlbCBmYWFkMi1kZXZlbCBsaWJjZGlvLWRldmVsIGxp YmNkaW8tcGFyYW5vaWEtZGV2ZWwKICBsaWJjZGRiLWRldmVsIGxpYmRpc2NpZC1kZXZlbCBsaWJm bGFjLWRldmVsIGxpYmFvLWRldmVsIGxpYm1hZC1kZXZlbAogIGxpYm1vZHBsdWctZGV2ZWwgbGli bXA0djItZGV2ZWwgbGlibXBjZGVjLWRldmVsIHB1bHNlYXVkaW8tZGV2ZWwKLSBvcHVzZmlsZS1k ZXZlbCB3YXZwYWNrLWRldmVsIGFsc2EtbGliLWRldmVsIGxpYnZvcmJpcy1kZXZlbCBmZm1wZWct ZGV2ZWwKKyBvcHVzZmlsZS1kZXZlbCB3YXZwYWNrLWRldmVsIGFsc2EtbGliLWRldmVsIGxpYnZv cmJpcy1kZXZlbCBmZm1wZWc2LWRldmVsCiAgc25kaW8tZGV2ZWwgamFjay1kZXZlbCAkKHZvcHRf aWYgZWxvZ2luZCBlbG9naW5kLWRldmVsKSIKIHNob3J0X2Rlc2M9IlNtYWxsLCBmYXN0IGFuZCBw b3dlcmZ1bCBjb25zb2xlIG11c2ljIHBsYXllciIKIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBo YW5Adm9pZGxpbnV4Lm9yZz4iCgpGcm9tIDQwODY0ZjcyZTJmODEyNGNmYzkwZGI3NTlhNjYwMjk0 ZjAzZmRiN2UgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBn bWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDYgLTA0MDAKU3ViamVjdDog W1BBVENIIDI2Lzg5XSBjeWFucmlwOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3Mv Y3lhbnJpcC90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygr KSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2N5YW5yaXAvdGVtcGxhdGUg Yi9zcmNwa2dzL2N5YW5yaXAvdGVtcGxhdGUKaW5kZXggOTc5NmUzNDYxNjAxYTcuLmQ3MjVjYzhi OTdkYWM0IDEwMDY0NAotLS0gYS9zcmNwa2dzL2N5YW5yaXAvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9jeWFucmlwL3RlbXBsYXRlCkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdjeWFucmlwJwogcGtnbmFtZT1jeWFucmlwCiB2ZXJzaW9uPTAuOS4wCi1yZXZpc2lvbj0xCity ZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmln IgotbWFrZWRlcGVuZHM9ImZmbXBlZy1kZXZlbCBsaWJjZGlvLWRldmVsIGxpYmNkaW8tcGFyYW5v aWEtZGV2ZWwgbGliY3VybC1kZXZlbCBsaWJtdXNpY2JyYWluejUtZGV2ZWwiCittYWtlZGVwZW5k cz0iZmZtcGVnNi1kZXZlbCBsaWJjZGlvLWRldmVsIGxpYmNkaW8tcGFyYW5vaWEtZGV2ZWwgbGli Y3VybC1kZXZlbCBsaWJtdXNpY2JyYWluejUtZGV2ZWwiCiBzaG9ydF9kZXNjPSJCdWxlLWlzaCBD RCByaXBwZXIiCiBtYWludGFpbmVyPSJEdW5jYWVuIDxkdW5jYWVuQHZvaWRsaW51eC5vcmc+Igog bGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIiCgpGcm9tIDJhMTQ4MzhhNmUxOGFmM2UzNWJkMWRh ODFlN2JmNjdmYTU2MmNjYTQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6 bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDYgLTA0MDAK U3ViamVjdDogW1BBVENIIDI3Lzg5XSBkcm9pZGNhbS1vYnMtcGx1Z2luOiByZXZidW1wIGZvciBm Zm1wZWc2Cgpkcm9pZGNhbS1vYnMtcGx1Z2luIDogcmVkbwotLS0KIHNyY3BrZ3MvZHJvaWRjYW0t b2JzLXBsdWdpbi90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9u cygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Ryb2lkY2FtLW9icy1w bHVnaW4vdGVtcGxhdGUgYi9zcmNwa2dzL2Ryb2lkY2FtLW9icy1wbHVnaW4vdGVtcGxhdGUKaW5k ZXggOWRjNjY0OGVmZTk0YWQuLmFkNjQ0MDNlOGJhODQzIDEwMDY0NAotLS0gYS9zcmNwa2dzL2Ry b2lkY2FtLW9icy1wbHVnaW4vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kcm9pZGNhbS1vYnMtcGx1 Z2luL3RlbXBsYXRlCkBAIC0xLDEyICsxLDEyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdkcm9p ZGNhbS1vYnMtcGx1Z2luJwogcGtnbmFtZT1kcm9pZGNhbS1vYnMtcGx1Z2luCiB2ZXJzaW9uPTIu My4yCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtbWFrZWZpbGUKIG1h a2VfdXNlX2Vudj15ZXMKIG1ha2VfYnVpbGRfYXJncz0iQUxMT1dfU1RBVElDPW5vIgogbWFrZWRl cGVuZHM9Im9icy1kZXZlbCBsaWJ1c2JtdXhkLWRldmVsIGxpYmpwZWctdHVyYm8tZGV2ZWwKLSBm Zm1wZWctZGV2ZWwgbGliaW1vYmlsZWRldmljZS1kZXZlbCIKKyBmZm1wZWc2LWRldmVsIGxpYmlt b2JpbGVkZXZpY2UtZGV2ZWwiCiBzaG9ydF9kZXNjPSJEcm9pZENhbSBPQlMgU291cmNlIgogbWFp bnRhaW5lcj0iTWljaGFlbCBBbGRyaWRnZSA8bWFsZHJpZGdlQHZvaWRsaW51eC5vcmc+IgogbGlj ZW5zZT0iR1BMLTIuMC1vbmx5IgoKRnJvbSA1N2M5YWVmNGJhZTkwMTU1YjMyNjQ1OTg5ZDdiOGI5 ZTJiMjdjN2Y2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVA Z21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ2IC0wNDAwClN1YmplY3Q6 IFtQQVRDSCAyOC84OV0gZHJvaWRjYW06IHJldmJ1bXAgZm9yIGZmbXBlZzYKCmRyb2lkY2FtIDog cmVkbwotLS0KIHNyY3BrZ3MvZHJvaWRjYW0vdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFu Z2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9kcm9pZGNhbS90ZW1wbGF0ZSBiL3NyY3BrZ3MvZHJvaWRjYW0vdGVtcGxhdGUKaW5kZXggZjcy N2I3YTY0ZjNjOGUuLmU1ZjgwMDkzN2Q3YzliIDEwMDY0NAotLS0gYS9zcmNwa2dzL2Ryb2lkY2Ft L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZHJvaWRjYW0vdGVtcGxhdGUKQEAgLTEsMTIgKzEsMTIg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Ryb2lkY2FtJwogcGtnbmFtZT1kcm9pZGNhbQogdmVy c2lvbj0yLjEuMwotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LW1ha2Vm aWxlCiBtYWtlX3VzZV9lbnY9dHJ1ZQogbWFrZV9idWlsZF9hcmdzPSJVU0JNVVhEPS1sdXNibXV4 ZC0yLjAgQVBQSU5ESUNBVE9SPWF5YXRhbmEtYXBwaW5kaWNhdG9yMy0wLjEiCiBob3N0bWFrZWRl cGVuZHM9InBrZy1jb25maWciCi1tYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBsaWJqcGVnLXR1cmJv LWRldmVsIGZmbXBlZy1kZXZlbCBhbHNhLWxpYi1kZXZlbAorbWFrZWRlcGVuZHM9InBrZy1jb25m aWcgbGlianBlZy10dXJiby1kZXZlbCBmZm1wZWc2LWRldmVsIGFsc2EtbGliLWRldmVsCiAgc3Bl ZXgtZGV2ZWwgbGlidXNibXV4ZC1kZXZlbCBsaWJwbGlzdC1kZXZlbCBndGsrMy1kZXZlbAogIGxp YmF5YXRhbmEtYXBwaW5kaWNhdG9yLWRldmVsIgogZGVwZW5kcz0idjRsMmxvb3BiYWNrIgoKRnJv bSBhZjRhNmZlMWQwNTQzODI0MmQwYWU0OTQ4MmUyNTEwODU1YTE1OTE2IE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIy IE1hciAyMDIzIDIwOjAxOjQ3IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAyOS84OV0gZmZtczI6IHJl dmJ1bXAgZm9yIGZmbXBlZzYKCmZmbXMyIDogcmVkbwotLS0KIHNyY3BrZ3MvZmZtczIvcGF0Y2hl cy9mZm1wZWc1LnBhdGNoIHwgNDI0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysKIHNyY3Br Z3MvZmZtczIvdGVtcGxhdGUgICAgICAgICAgICAgIHwgICA0ICstCiAyIGZpbGVzIGNoYW5nZWQs IDQyNiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3MvZmZtczIvcGF0Y2hlcy9mZm1wZWc1LnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9m Zm1zMi9wYXRjaGVzL2ZmbXBlZzUucGF0Y2ggYi9zcmNwa2dzL2ZmbXMyL3BhdGNoZXMvZmZtcGVn NS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uMTQ3OWZh YmNhZmNiNGUKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2ZmbXMyL3BhdGNoZXMvZmZtcGVn NS5wYXRjaApAQCAtMCwwICsxLDQyNCBAQAorRnJvbSA0NTY3MzE0OWU5YTJmNTU4Njg1NWFkNDcy ZTMwNTkwODRlYWEzNmIxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogRGVyZWsgQnVp dGVuaHVpcyA8ZGVyZWsuYnVpdGVuaHVpc0BnbWFpbC5jb20+CitEYXRlOiBUdWUsIDQgTWF5IDIw MjEgMTQ6NDE6MjEgKzAxMDAKK1N1YmplY3Q6IFtQQVRDSF0gVXNlIGF1dG8gZm9yIEFWQ29kZWMK KworVGhlIGdlbml1c2VzIG92ZXIgYXQgRkZtcGVnIGRlY2lkZWQgdG8gY29uc3RpZnkgdGhpcyBB UEksIHNvIG9sZAordmVyc2lvbnMgb2YgdGhlIGxpYnJhcnkgd2lsbCByZXR1cm4gQVZDb2RlYyAq LCB3aGlsZSBuZXcgdmVyc2lvbnMKK29mIHRoZSBsaWJhcnkgd2lsbCByZXR1cm4gY29uc3QgQVZD b2RlYyAqLCB3aGljaCwgaW4gQysrLCBhcmUgbm90CitPSyB0byBjb252ZXJ0IGJldHdlZW4uCisK K1JhdGhlciB0aGFuIHVzZSBzb21lIG1hY3JvIGhlbGwgaW4gZmZtc2NvbXBhdC5oLCB3ZSBjYW4g d29yayBhcm91bmQKK3RoaXMgYnkgdXNpbmcgYXV0by4KKworR3Jvc3MuCisKK1NpZ25lZC1vZmYt Ynk6IERlcmVrIEJ1aXRlbmh1aXMgPGRlcmVrLmJ1aXRlbmh1aXNAZ21haWwuY29tPgorLS0tCisg c3JjL2NvcmUvYXVkaW9zb3VyY2UuY3BwIHwgMiArLQorIHNyYy9jb3JlL2luZGV4aW5nLmNwcCAg ICB8IDYgKysrLS0tCisgc3JjL2NvcmUvdmlkZW9zb3VyY2UuY3BwIHwgMiArLQorIDMgZmlsZXMg Y2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEv c3JjL2NvcmUvYXVkaW9zb3VyY2UuY3BwIGIvc3JjL2NvcmUvYXVkaW9zb3VyY2UuY3BwCitpbmRl eCBlNGNlOTdjLi5hYzA5NjY2IDEwMDY0NAorLS0tIGEvc3JjL2NvcmUvYXVkaW9zb3VyY2UuY3Bw CisrKysgYi9zcmMvY29yZS9hdWRpb3NvdXJjZS5jcHAKK0BAIC00NjksNyArNDY5LDcgQEAgdm9p ZCBGRk1TX0F1ZGlvU291cmNlOjpPcGVuRmlsZSgpIHsKKyAKKyAgICAgTEFWRk9wZW5GaWxlKFNv dXJjZUZpbGUuY19zdHIoKSwgRm9ybWF0Q29udGV4dCwgVHJhY2tOdW1iZXIpOworIAorLSAgICBB VkNvZGVjICpDb2RlYyA9IGF2Y29kZWNfZmluZF9kZWNvZGVyKEZvcm1hdENvbnRleHQtPnN0cmVh bXNbVHJhY2tOdW1iZXJdLT5jb2RlY3Bhci0+Y29kZWNfaWQpOworKyAgICBhdXRvICpDb2RlYyA9 IGF2Y29kZWNfZmluZF9kZWNvZGVyKEZvcm1hdENvbnRleHQtPnN0cmVhbXNbVHJhY2tOdW1iZXJd LT5jb2RlY3Bhci0+Y29kZWNfaWQpOworICAgICBpZiAoQ29kZWMgPT0gbnVsbHB0cikKKyAgICAg ICAgIHRocm93IEZGTVNfRXhjZXB0aW9uKEZGTVNfRVJST1JfREVDT0RJTkcsIEZGTVNfRVJST1Jf Q09ERUMsCisgICAgICAgICAgICAgIkF1ZGlvIGNvZGVjIG5vdCBmb3VuZCIpOworZGlmZiAtLWdp dCBhL3NyYy9jb3JlL2luZGV4aW5nLmNwcCBiL3NyYy9jb3JlL2luZGV4aW5nLmNwcAoraW5kZXgg ZTU0N2M1YS4uNTlmYjRlOCAxMDA2NDQKKy0tLSBhL3NyYy9jb3JlL2luZGV4aW5nLmNwcAorKysr IGIvc3JjL2NvcmUvaW5kZXhpbmcuY3BwCitAQCAtMzg0LDcgKzM4NCw3IEBAIEZGTVNfVHJhY2tU eXBlIEZGTVNfSW5kZXhlcjo6R2V0VHJhY2tUeXBlKGludCBUcmFjaykgeworIH0KKyAKKyBjb25z dCBjaGFyICpGRk1TX0luZGV4ZXI6OkdldFRyYWNrQ29kZWMoaW50IFRyYWNrKSB7CistICAgIEFW Q29kZWMgKmNvZGVjID0gYXZjb2RlY19maW5kX2RlY29kZXIoRm9ybWF0Q29udGV4dC0+c3RyZWFt c1tUcmFja10tPmNvZGVjcGFyLT5jb2RlY19pZCk7CisrICAgIGF1dG8gKmNvZGVjID0gYXZjb2Rl Y19maW5kX2RlY29kZXIoRm9ybWF0Q29udGV4dC0+c3RyZWFtc1tUcmFja10tPmNvZGVjcGFyLT5j b2RlY19pZCk7CisgICAgIHJldHVybiBjb2RlYyA/IGNvZGVjLT5uYW1lIDogbnVsbHB0cjsKKyB9 CisgCitAQCAtNDAyLDcgKzQwMiw3IEBAIEZGTVNfSW5kZXggKkZGTVNfSW5kZXhlcjo6RG9JbmRl eGluZygpIHsKKyAgICAgICAgICAgICBVc2VEVFMpOworIAorICAgICAgICAgaWYgKEluZGV4TWFz ay5jb3VudChpKSAmJiBGb3JtYXRDb250ZXh0LT5zdHJlYW1zW2ldLT5jb2RlY3Bhci0+Y29kZWNf dHlwZSA9PSBBVk1FRElBX1RZUEVfVklERU8pIHsKKy0gICAgICAgICAgICBBVkNvZGVjICpWaWRl b0NvZGVjID0gYXZjb2RlY19maW5kX2RlY29kZXIoRm9ybWF0Q29udGV4dC0+c3RyZWFtc1tpXS0+ Y29kZWNwYXItPmNvZGVjX2lkKTsKKysgICAgICAgICAgICBhdXRvICpWaWRlb0NvZGVjID0gYXZj b2RlY19maW5kX2RlY29kZXIoRm9ybWF0Q29udGV4dC0+c3RyZWFtc1tpXS0+Y29kZWNwYXItPmNv ZGVjX2lkKTsKKyAgICAgICAgICAgICBpZiAoIVZpZGVvQ29kZWMpIHsKKyAgICAgICAgICAgICAg ICAgRm9ybWF0Q29udGV4dC0+c3RyZWFtc1tpXS0+ZGlzY2FyZCA9IEFWRElTQ0FSRF9BTEw7Cisg ICAgICAgICAgICAgICAgIEluZGV4TWFzay5lcmFzZShpKTsKK0BAIC00MzMsNyArNDMzLDcgQEAg RkZNU19JbmRleCAqRkZNU19JbmRleGVyOjpEb0luZGV4aW5nKCkgeworICAgICAgICAgICAgICAg ICBJbmRleE1hc2suaW5zZXJ0KGkpOworICAgICAgICAgICAgIH0KKyAgICAgICAgIH0gZWxzZSBp ZiAoSW5kZXhNYXNrLmNvdW50KGkpICYmIEZvcm1hdENvbnRleHQtPnN0cmVhbXNbaV0tPmNvZGVj cGFyLT5jb2RlY190eXBlID09IEFWTUVESUFfVFlQRV9BVURJTykgeworLSAgICAgICAgICAgIEFW Q29kZWMgKkF1ZGlvQ29kZWMgPSBhdmNvZGVjX2ZpbmRfZGVjb2RlcihGb3JtYXRDb250ZXh0LT5z dHJlYW1zW2ldLT5jb2RlY3Bhci0+Y29kZWNfaWQpOworKyAgICAgICAgICAgIGF1dG8gKkF1ZGlv Q29kZWMgPSBhdmNvZGVjX2ZpbmRfZGVjb2RlcihGb3JtYXRDb250ZXh0LT5zdHJlYW1zW2ldLT5j b2RlY3Bhci0+Y29kZWNfaWQpOworICAgICAgICAgICAgIGlmIChBdWRpb0NvZGVjID09IG51bGxw dHIpCisgICAgICAgICAgICAgICAgIHRocm93IEZGTVNfRXhjZXB0aW9uKEZGTVNfRVJST1JfQ09E RUMsIEZGTVNfRVJST1JfVU5TVVBQT1JURUQsCisgICAgICAgICAgICAgICAgICAgICAiQXVkaW8g Y29kZWMgbm90IGZvdW5kIik7CitkaWZmIC0tZ2l0IGEvc3JjL2NvcmUvdmlkZW9zb3VyY2UuY3Bw IGIvc3JjL2NvcmUvdmlkZW9zb3VyY2UuY3BwCitpbmRleCBiODg5OTcwLi44OTU2YzIyIDEwMDY0 NAorLS0tIGEvc3JjL2NvcmUvdmlkZW9zb3VyY2UuY3BwCisrKysgYi9zcmMvY29yZS92aWRlb3Nv dXJjZS5jcHAKK0BAIC0xNzEsNyArMTcxLDcgQEAgRkZNU19WaWRlb1NvdXJjZTo6RkZNU19WaWRl b1NvdXJjZShjb25zdCBjaGFyICpTb3VyY2VGaWxlLCBGRk1TX0luZGV4ICZJbmRleCwgaW4KKyAK KyAgICAgICAgIExBVkZPcGVuRmlsZShTb3VyY2VGaWxlLCBGb3JtYXRDb250ZXh0LCBWaWRlb1Ry YWNrKTsKKyAKKy0gICAgICAgIEFWQ29kZWMgKkNvZGVjID0gYXZjb2RlY19maW5kX2RlY29kZXIo Rm9ybWF0Q29udGV4dC0+c3RyZWFtc1tWaWRlb1RyYWNrXS0+Y29kZWNwYXItPmNvZGVjX2lkKTsK KysgICAgICAgIGF1dG8gKkNvZGVjID0gYXZjb2RlY19maW5kX2RlY29kZXIoRm9ybWF0Q29udGV4 dC0+c3RyZWFtc1tWaWRlb1RyYWNrXS0+Y29kZWNwYXItPmNvZGVjX2lkKTsKKyAgICAgICAgIGlm IChDb2RlYyA9PSBudWxscHRyKQorICAgICAgICAgICAgIHRocm93IEZGTVNfRXhjZXB0aW9uKEZG TVNfRVJST1JfREVDT0RJTkcsIEZGTVNfRVJST1JfQ09ERUMsCisgICAgICAgICAgICAgICAgICJW aWRlbyBjb2RlYyBub3QgZm91bmQiKTsKKy0tIAorMi40MC4wCisKK0Zyb20gOTZjYmYzOGVhOTM4 MTgyOWExMzE0ZjQzMmEyYzYwNDk1ZGNlZmFhZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zy b206IERlcmVrIEJ1aXRlbmh1aXMgPGRlcmVrLmJ1aXRlbmh1aXNAZ21haWwuY29tPgorRGF0ZTog VHVlLCA0IE1heSAyMDIxIDE0OjEyOjQxICswMTAwCitTdWJqZWN0OiBbUEFUQ0hdIGFsbDogVXBk YXRlIEFWUGFja2V0IEFQSSB1c2FnZQorCitBVlBhY2tldHMgbXVzdCBhbGwgYmUgb24gdGhlIGhl YXAgbm93LCBzaW5jZSBpdCBpcyBubyBsb25nZXIKK3BhcnQgb2YgdGhlIGxpYmF2KiBBQkkuCisK K1NpZ25lZC1vZmYtYnk6IERlcmVrIEJ1aXRlbmh1aXMgPGRlcmVrLmJ1aXRlbmh1aXNAZ21haWwu Y29tPgorLS0tCisgc3JjL2NvcmUvYXVkaW9zb3VyY2UuY3BwIHwgMTYgKysrKysrLS0tLQorIHNy Yy9jb3JlL2luZGV4aW5nLmNwcCAgICB8IDYzICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0t LS0tLS0tLS0tLS0KKyBzcmMvY29yZS9pbmRleGluZy5oICAgICAgfCAgNCArLS0KKyBzcmMvY29y ZS91dGlscy5jcHAgICAgICAgfCAgNiAtLS0tCisgc3JjL2NvcmUvdXRpbHMuaCAgICAgICAgIHwg IDEgLQorIHNyYy9jb3JlL3ZpZGVvc291cmNlLmNwcCB8IDMwICsrKysrKysrKystLS0tLS0tLS0K KyA2IGZpbGVzIGNoYW5nZWQsIDY0IGluc2VydGlvbnMoKyksIDU2IGRlbGV0aW9ucygtKQorCitk aWZmIC0tZ2l0IGEvc3JjL2NvcmUvYXVkaW9zb3VyY2UuY3BwIGIvc3JjL2NvcmUvYXVkaW9zb3Vy Y2UuY3BwCitpbmRleCAzN2NmOWFlLi5lNGNlOTdjIDEwMDY0NAorLS0tIGEvc3JjL2NvcmUvYXVk aW9zb3VyY2UuY3BwCisrKysgYi9zcmMvY29yZS9hdWRpb3NvdXJjZS5jcHAKK0BAIC0yODUsMTAg KzI4NSwxNSBAQCBGRk1TX0F1ZGlvU291cmNlOjpBdWRpb0Jsb2NrICpGRk1TX0F1ZGlvU291cmNl OjpDYWNoZUJsb2NrKENhY2hlSXRlcmF0b3IgJnBvcykgeworIGludCBGRk1TX0F1ZGlvU291cmNl OjpEZWNvZGVOZXh0QmxvY2soQ2FjaGVJdGVyYXRvciAqcG9zKSB7CisgICAgIEN1cnJlbnRGcmFt ZSA9ICZGcmFtZXNbUGFja2V0TnVtYmVyXTsKKyAKKy0gICAgQVZQYWNrZXQgUGFja2V0OworLSAg ICBpZiAoIVJlYWRQYWNrZXQoJlBhY2tldCkpCisrICAgIEFWUGFja2V0ICpQYWNrZXQgPSBhdl9w YWNrZXRfYWxsb2MoKTsKKysgICAgaWYgKCFQYWNrZXQpCisrICAgICAgICB0aHJvdyBGRk1TX0V4 Y2VwdGlvbihGRk1TX0VSUk9SX1BBUlNFUiwgRkZNU19FUlJPUl9BTExPQ0FUSU9OX0ZBSUxFRCwK KysgICAgICAgICAgICAiQ291bGQgbm90IGFsbG9jYXRlIHBhY2tldC4iKTsKKysgICAgaWYgKCFS ZWFkUGFja2V0KFBhY2tldCkpIHsKKysgICAgICAgIGF2X3BhY2tldF9mcmVlKCZQYWNrZXQpOwor ICAgICAgICAgdGhyb3cgRkZNU19FeGNlcHRpb24oRkZNU19FUlJPUl9QQVJTRVIsIEZGTVNfRVJS T1JfVU5LTk9XTiwKKyAgICAgICAgICAgICAiUmVhZFBhY2tldCB1bmV4cGVjdGVkbHkgZmFpbGVk IHRvIHJlYWQgYSBwYWNrZXQiKTsKKysgICAgfQorIAorICAgICAvLyBSZWFkUGFja2V0IG1heSBo YXZlIGNoYW5nZWQgdGhlIHBhY2tldCBudW1iZXIKKyAgICAgQ3VycmVudEZyYW1lID0gJkZyYW1l c1tQYWNrZXROdW1iZXJdOworQEAgLTI5Nyw4ICszMDIsOSBAQCBpbnQgRkZNU19BdWRpb1NvdXJj ZTo6RGVjb2RlTmV4dEJsb2NrKENhY2hlSXRlcmF0b3IgKnBvcykgeworICAgICBpbnQgTnVtYmVy T2ZTYW1wbGVzID0gMDsKKyAgICAgQXVkaW9CbG9jayAqQ2FjaGVkQmxvY2sgPSBudWxscHRyOwor ICAgICAKKy0gICAgaW50IFJldCA9IGF2Y29kZWNfc2VuZF9wYWNrZXQoQ29kZWNDb250ZXh0LCAm UGFja2V0KTsKKy0gICAgYXZfcGFja2V0X3VucmVmKCZQYWNrZXQpOworKyAgICBpbnQgUmV0ID0g YXZjb2RlY19zZW5kX3BhY2tldChDb2RlY0NvbnRleHQsIFBhY2tldCk7CisrICAgIGF2X3BhY2tl dF91bnJlZihQYWNrZXQpOworKyAgICBhdl9wYWNrZXRfZnJlZSgmUGFja2V0KTsKKyAKKyAgICAg YXZfZnJhbWVfdW5yZWYoRGVjb2RlRnJhbWUpOworICAgICBSZXQgPSBhdmNvZGVjX3JlY2VpdmVf ZnJhbWUoQ29kZWNDb250ZXh0LCBEZWNvZGVGcmFtZSk7CitAQCAtNTEzLDggKzUxOSw2IEBAIHZv aWQgRkZNU19BdWRpb1NvdXJjZTo6U2VlaygpIHsKKyB9CisgCisgYm9vbCBGRk1TX0F1ZGlvU291 cmNlOjpSZWFkUGFja2V0KEFWUGFja2V0ICpQYWNrZXQpIHsKKy0gICAgSW5pdE51bGxQYWNrZXQo KlBhY2tldCk7CistCisgICAgIHdoaWxlIChhdl9yZWFkX2ZyYW1lKEZvcm1hdENvbnRleHQsIFBh Y2tldCkgPj0gMCkgeworICAgICAgICAgaWYgKFBhY2tldC0+c3RyZWFtX2luZGV4ID09IFRyYWNr TnVtYmVyKSB7CisgICAgICAgICAgICAgLy8gUmVxdWlyZWQgYmVjYXVzZSBub3QgYWxsIGF1ZGlv IHBhY2tldHMsIGVzcGVjaWFsbHkgaW4gb2dnLCBoYXZlIGEgcHRzLiBVc2UgdGhlIHByZXZpb3Vz IHZhbGlkIHBhY2tldCdzIHB0cyBpbnN0ZWFkLgorZGlmZiAtLWdpdCBhL3NyYy9jb3JlL2luZGV4 aW5nLmNwcCBiL3NyYy9jb3JlL2luZGV4aW5nLmNwcAoraW5kZXggMjNmYjk1Yi4uZTU0N2M1YSAx MDA2NDQKKy0tLSBhL3NyYy9jb3JlL2luZGV4aW5nLmNwcAorKysrIGIvc3JjL2NvcmUvaW5kZXhp bmcuY3BwCitAQCAtMzIwLDcgKzMyMCw3IEBAIHZvaWQgRkZNU19JbmRleGVyOjpDaGVja0F1ZGlv UHJvcGVydGllcyhpbnQgVHJhY2ssIEFWQ29kZWNDb250ZXh0ICpDb250ZXh0KSB7CisgICAgIH0K KyB9CisgCistdm9pZCBGRk1TX0luZGV4ZXI6OlBhcnNlVmlkZW9QYWNrZXQoU2hhcmVkQVZDb250 ZXh0ICZWaWRlb0NvbnRleHQsIEFWUGFja2V0ICZwa3QsIGludCAqUmVwZWF0UGljdCwKKyt2b2lk IEZGTVNfSW5kZXhlcjo6UGFyc2VWaWRlb1BhY2tldChTaGFyZWRBVkNvbnRleHQgJlZpZGVvQ29u dGV4dCwgQVZQYWNrZXQgKnBrdCwgaW50ICpSZXBlYXRQaWN0LAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGludCAqRnJhbWVUeXBlLCBib29sICpJbnZpc2libGUsIGVudW0g QVZQaWN0dXJlU3RydWN0dXJlICpMYXN0UGljU3RydWN0KSB7CisgICAgIGlmIChWaWRlb0NvbnRl eHQuUGFyc2VyKSB7CisgICAgICAgICB1aW50OF90ICpPQjsKK0BAIC0zMzAsOCArMzMwLDggQEAg dm9pZCBGRk1TX0luZGV4ZXI6OlBhcnNlVmlkZW9QYWNrZXQoU2hhcmVkQVZDb250ZXh0ICZWaWRl b0NvbnRleHQsIEFWUGFja2V0ICZwa3QKKyAgICAgICAgIGF2X3BhcnNlcl9wYXJzZTIoVmlkZW9D b250ZXh0LlBhcnNlciwKKyAgICAgICAgICAgICBWaWRlb0NvbnRleHQuQ29kZWNDb250ZXh0LAor ICAgICAgICAgICAgICZPQiwgJk9CU2l6ZSwKKy0gICAgICAgICAgICBwa3QuZGF0YSwgcGt0LnNp emUsCistICAgICAgICAgICAgcGt0LnB0cywgcGt0LmR0cywgcGt0LnBvcyk7CisrICAgICAgICAg ICAgcGt0LT5kYXRhLCBwa3QtPnNpemUsCisrICAgICAgICAgICAgcGt0LT5wdHMsIHBrdC0+ZHRz LCBwa3QtPnBvcyk7CisgCisgICAgICAgICAvLyBILjI2NCAoUEFGRikgYW5kIEhFVkMgbWF5IGhh dmUgb25lIGZpZWxkIHBlciBwYWNrZXQsIHNvIHdlIG5lZWQgdG8gdHJhY2sKKyAgICAgICAgIC8v IHdoZW4gd2UgaGF2ZSBhIGZ1bGwgb3IgaGFsZiBmcmFtZSBhdmFpbGFibGUsIGFuZCBtYXJrIG9u ZSBvZiB0aGVtIGFzCitAQCAtMzUxLDE1ICszNTEsMTUgQEAgdm9pZCBGRk1TX0luZGV4ZXI6OlBh cnNlVmlkZW9QYWNrZXQoU2hhcmVkQVZDb250ZXh0ICZWaWRlb0NvbnRleHQsIEFWUGFja2V0ICZw a3QKKyAKKyAgICAgICAgICpSZXBlYXRQaWN0ID0gVmlkZW9Db250ZXh0LlBhcnNlci0+cmVwZWF0 X3BpY3Q7CisgICAgICAgICAqRnJhbWVUeXBlID0gVmlkZW9Db250ZXh0LlBhcnNlci0+cGljdF90 eXBlOworLSAgICAgICAgKkludmlzaWJsZSA9IChJbmNvbXBsZXRlRnJhbWUgfHwgVmlkZW9Db250 ZXh0LlBhcnNlci0+cmVwZWF0X3BpY3QgPCAwIHx8IChwa3QuZmxhZ3MgJiBBVl9QS1RfRkxBR19E SVNDQVJEKSk7CisrICAgICAgICAqSW52aXNpYmxlID0gKEluY29tcGxldGVGcmFtZSB8fCBWaWRl b0NvbnRleHQuUGFyc2VyLT5yZXBlYXRfcGljdCA8IDAgfHwgKHBrdC0+ZmxhZ3MgJiBBVl9QS1Rf RkxBR19ESVNDQVJEKSk7CisgICAgIH0gZWxzZSB7CistICAgICAgICAqSW52aXNpYmxlID0gISEo cGt0LmZsYWdzICYgQVZfUEtUX0ZMQUdfRElTQ0FSRCk7CisrICAgICAgICAqSW52aXNpYmxlID0g ISEocGt0LT5mbGFncyAmIEFWX1BLVF9GTEFHX0RJU0NBUkQpOworICAgICB9CisgCisgICAgIGlm IChWaWRlb0NvbnRleHQuQ29kZWNDb250ZXh0LT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9WUDgp CistICAgICAgICBQYXJzZVZQOChwa3QuZGF0YVswXSwgSW52aXNpYmxlLCBGcmFtZVR5cGUpOwor KyAgICAgICAgUGFyc2VWUDgocGt0LT5kYXRhWzBdLCBJbnZpc2libGUsIEZyYW1lVHlwZSk7Cisg ICAgIGVsc2UgaWYgKFZpZGVvQ29udGV4dC5Db2RlY0NvbnRleHQtPmNvZGVjX2lkID09IEFWX0NP REVDX0lEX1ZQOSkKKy0gICAgICAgIFBhcnNlVlA5KHBrdC5kYXRhWzBdLCBJbnZpc2libGUsIEZy YW1lVHlwZSk7CisrICAgICAgICBQYXJzZVZQOShwa3QtPmRhdGFbMF0sIEludmlzaWJsZSwgRnJh bWVUeXBlKTsKKyB9CisgCisgdm9pZCBGRk1TX0luZGV4ZXI6OkZyZWUoKSB7CitAQCAtNDU4LDMy ICs0NTgsMzYgQEAgRkZNU19JbmRleCAqRkZNU19JbmRleGVyOjpEb0luZGV4aW5nKCkgeworICAg ICAgICAgfQorICAgICB9CisgCistICAgIEFWUGFja2V0IFBhY2tldDsKKy0gICAgSW5pdE51bGxQ YWNrZXQoUGFja2V0KTsKKysgICAgQVZQYWNrZXQgKlBhY2tldCA9IGF2X3BhY2tldF9hbGxvYygp OworKyAgICBpZiAoIVBhY2tldCkKKysgICAgICAgIHRocm93IEZGTVNfRXhjZXB0aW9uKEZGTVNf RVJST1JfQ09ERUMsIEZGTVNfRVJST1JfQUxMT0NBVElPTl9GQUlMRUQsCisrICAgICAgICAgICAg IkNvdWxkIG5vdCBhbGxvY2F0ZSBwYWNrZXQuIik7CisgICAgIHN0ZDo6dmVjdG9yPGludDY0X3Q+ IExhc3RWYWxpZFRTKEZvcm1hdENvbnRleHQtPm5iX3N0cmVhbXMsIEFWX05PUFRTX1ZBTFVFKTsK KyAKKyAgICAgaW50NjRfdCBmaWxlc2l6ZSA9IGF2aW9fc2l6ZShGb3JtYXRDb250ZXh0LT5wYik7 CisgICAgIGVudW0gQVZQaWN0dXJlU3RydWN0dXJlIExhc3RQaWNTdHJ1Y3QgPSBBVl9QSUNUVVJF X1NUUlVDVFVSRV9VTktOT1dOOworLSAgICB3aGlsZSAoYXZfcmVhZF9mcmFtZShGb3JtYXRDb250 ZXh0LCAmUGFja2V0KSA+PSAwKSB7CisrICAgIHdoaWxlIChhdl9yZWFkX2ZyYW1lKEZvcm1hdENv bnRleHQsIFBhY2tldCkgPj0gMCkgeworICAgICAgICAgLy8gVXBkYXRlIHByb2dyZXNzCisgICAg ICAgICAvLyBGb3JtYXRDb250ZXh0LT5wYiBjYW4gYXBwYXJlbnRseSBiZSBOVUxMIHdoZW4gb3Bl bmluZyBpbWFnZXMuCisgICAgICAgICBpZiAoSUMgJiYgRm9ybWF0Q29udGV4dC0+cGIpIHsKKy0g ICAgICAgICAgICBpZiAoKCpJQykoRm9ybWF0Q29udGV4dC0+cGItPnBvcywgZmlsZXNpemUsIElD UHJpdmF0ZSkpCisrICAgICAgICAgICAgaWYgKCgqSUMpKEZvcm1hdENvbnRleHQtPnBiLT5wb3Ms IGZpbGVzaXplLCBJQ1ByaXZhdGUpKSB7CisrICAgICAgICAgICAgICAgIGF2X3BhY2tldF9mcmVl KCZQYWNrZXQpOworICAgICAgICAgICAgICAgICB0aHJvdyBGRk1TX0V4Y2VwdGlvbihGRk1TX0VS Uk9SX0NBTkNFTExFRCwgRkZNU19FUlJPUl9VU0VSLAorICAgICAgICAgICAgICAgICAgICAgIkNh bmNlbGxlZCBieSB1c2VyIik7CisrICAgICAgICAgICAgfQorICAgICAgICAgfQorLSAgICAgICAg aWYgKCFJbmRleE1hc2suY291bnQoUGFja2V0LnN0cmVhbV9pbmRleCkpIHsKKy0gICAgICAgICAg ICBhdl9wYWNrZXRfdW5yZWYoJlBhY2tldCk7CisrICAgICAgICBpZiAoIUluZGV4TWFzay5jb3Vu dChQYWNrZXQtPnN0cmVhbV9pbmRleCkpIHsKKysgICAgICAgICAgICBhdl9wYWNrZXRfdW5yZWYo UGFja2V0KTsKKyAgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgIH0KKyAKKy0gICAgICAg IGludCBUcmFjayA9IFBhY2tldC5zdHJlYW1faW5kZXg7CisrICAgICAgICBpbnQgVHJhY2sgPSBQ YWNrZXQtPnN0cmVhbV9pbmRleDsKKyAgICAgICAgIEZGTVNfVHJhY2sgJlRyYWNrSW5mbyA9ICgq VHJhY2tJbmRpY2VzKVtUcmFja107CistICAgICAgICBib29sIEtleUZyYW1lID0gISEoUGFja2V0 LmZsYWdzICYgQVZfUEtUX0ZMQUdfS0VZKTsKKysgICAgICAgIGJvb2wgS2V5RnJhbWUgPSAhIShQ YWNrZXQtPmZsYWdzICYgQVZfUEtUX0ZMQUdfS0VZKTsKKyAgICAgICAgIFJlYWRUUyhQYWNrZXQs IExhc3RWYWxpZFRTW1RyYWNrXSwgKCpUcmFja0luZGljZXMpW1RyYWNrXS5Vc2VEVFMpOworIAor ICAgICAgICAgaWYgKEZvcm1hdENvbnRleHQtPnN0cmVhbXNbVHJhY2tdLT5jb2RlY3Bhci0+Y29k ZWNfdHlwZSA9PSBBVk1FRElBX1RZUEVfVklERU8pIHsKKy0gICAgICAgICAgICBpbnQ2NF90IFBU UyA9IFRyYWNrSW5mby5Vc2VEVFMgPyBQYWNrZXQuZHRzIDogUGFja2V0LnB0czsKKysgICAgICAg ICAgICBpbnQ2NF90IFBUUyA9IFRyYWNrSW5mby5Vc2VEVFMgPyBQYWNrZXQtPmR0cyA6IFBhY2tl dC0+cHRzOworICAgICAgICAgICAgIGlmIChQVFMgPT0gQVZfTk9QVFNfVkFMVUUpIHsKKyAgICAg ICAgICAgICAgICAgLy8gVlB4IGFsdC1yZWZzIGFyZSBvdXRwdXQgYXMgcGFja2V0cyB3aGljaCBs YWNrIHRpbWVzdG1wcyBvciBkdXJhdGlvbnMsIHNpbmNlCisgICAgICAgICAgICAgICAgIC8vIHRo ZXkgYXJlIGludmlzaWJsZS4gQ3VycmVudGx5LCB0aGUgdGltZXN0YW1wIG1hbmdsaW5nIGNvZGUg aW4gbGliYXZmb3JtYXQKK0BAIC00OTUsOSArNDk5LDExIEBAIEZGTVNfSW5kZXggKkZGTVNfSW5k ZXhlcjo6RG9JbmRleGluZygpIHsKKyAgICAgICAgICAgICAgICAgLy8gRkZNUzIgY3VycmVudGx5 IHNvcnRzIHBhY2tldHMgYnkgUFRTLCB3aGljaCB3aWxsIGJyZWFrIGRlY29kaW5nLCBvdGhlcndp c2UuCisgICAgICAgICAgICAgICAgIGJvb2wgSGFzQWx0UmVmcyA9IChGb3JtYXRDb250ZXh0LT5z dHJlYW1zW1RyYWNrXS0+Y29kZWNwYXItPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX1ZQOCB8fAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRm9ybWF0Q29udGV4dC0+c3RyZWFt c1tUcmFja10tPmNvZGVjcGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9WUDkpOworLSAgICAg ICAgICAgICAgICBpZiAoUGFja2V0LmR1cmF0aW9uID09IDAgJiYgIUhhc0FsdFJlZnMpCisrICAg ICAgICAgICAgICAgIGlmIChQYWNrZXQtPmR1cmF0aW9uID09IDAgJiYgIUhhc0FsdFJlZnMpIHsK KysgICAgICAgICAgICAgICAgICAgIGF2X3BhY2tldF9mcmVlKCZQYWNrZXQpOworICAgICAgICAg ICAgICAgICAgICAgdGhyb3cgRkZNU19FeGNlcHRpb24oRkZNU19FUlJPUl9JTkRFWElORywgRkZN U19FUlJPUl9QQVJTRVIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIkludmFsaWQgcGFja2V0 IHB0cywgZHRzLCBhbmQgZHVyYXRpb24iKTsKKysgICAgICAgICAgICAgICAgfQorIAorICAgICAg ICAgICAgICAgICBpZiAoVHJhY2tJbmZvLmVtcHR5KCkpCisgICAgICAgICAgICAgICAgICAgICBQ VFMgPSAwOworQEAgLTUxMyw3ICs1MTksNyBAQCBGRk1TX0luZGV4ICpGRk1TX0luZGV4ZXI6OkRv SW5kZXhpbmcoKSB7CisgICAgICAgICAgICAgUGFyc2VWaWRlb1BhY2tldChBVkNvbnRleHRzW1Ry YWNrXSwgUGFja2V0LCAmUmVwZWF0UGljdCwgJkZyYW1lVHlwZSwgJkludmlzaWJsZSwgJkxhc3RQ aWNTdHJ1Y3QpOworIAorICAgICAgICAgICAgIFRyYWNrSW5mby5BZGRWaWRlb0ZyYW1lKFBUUywg UmVwZWF0UGljdCwgS2V5RnJhbWUsCistICAgICAgICAgICAgICAgIEZyYW1lVHlwZSwgUGFja2V0 LnBvcywgSW52aXNpYmxlKTsKKysgICAgICAgICAgICAgICAgRnJhbWVUeXBlLCBQYWNrZXQtPnBv cywgSW52aXNpYmxlKTsKKyAgICAgICAgIH0gZWxzZSBpZiAoRm9ybWF0Q29udGV4dC0+c3RyZWFt c1tUcmFja10tPmNvZGVjcGFyLT5jb2RlY190eXBlID09IEFWTUVESUFfVFlQRV9BVURJTykgewor ICAgICAgICAgICAgIC8vIEZvciB2aWRlbyBzZWVraW5nIHRpbWVzdGFtcHMgYXJlIHVzZWQgb25s eSBpZiBhbGwgcGFja2V0cyBoYXZlCisgICAgICAgICAgICAgLy8gdGltZXN0YW1wcywgd2hpbGUg Zm9yIGF1ZGlvIHRoZXkncmUgdXNlZCBpZiBhbnkgaGF2ZSB0aW1lc3RhbXBzLAorQEAgLTUyMiwy OCArNTI4LDI5IEBAIEZGTVNfSW5kZXggKkZGTVNfSW5kZXhlcjo6RG9JbmRleGluZygpIHsKKyAg ICAgICAgICAgICAgICAgVHJhY2tJbmZvLkhhc1RTID0gdHJ1ZTsKKyAKKyAgICAgICAgICAgICBp bnQ2NF90IFN0YXJ0U2FtcGxlID0gQVZDb250ZXh0c1tUcmFja10uQ3VycmVudFNhbXBsZTsKKy0g ICAgICAgICAgICB1aW50MzJfdCBTYW1wbGVDb3VudCA9IEluZGV4QXVkaW9QYWNrZXQoVHJhY2ss ICZQYWNrZXQsIEFWQ29udGV4dHNbVHJhY2tdLCAqVHJhY2tJbmRpY2VzKTsKKysgICAgICAgICAg ICB1aW50MzJfdCBTYW1wbGVDb3VudCA9IEluZGV4QXVkaW9QYWNrZXQoVHJhY2ssIFBhY2tldCwg QVZDb250ZXh0c1tUcmFja10sICpUcmFja0luZGljZXMpOworICAgICAgICAgICAgIFRyYWNrSW5m by5TYW1wbGVSYXRlID0gQVZDb250ZXh0c1tUcmFja10uQ29kZWNDb250ZXh0LT5zYW1wbGVfcmF0 ZTsKKyAKKyAgICAgICAgICAgICBUcmFja0luZm8uQWRkQXVkaW9GcmFtZShMYXN0VmFsaWRUU1tU cmFja10sCistICAgICAgICAgICAgICAgIFN0YXJ0U2FtcGxlLCBTYW1wbGVDb3VudCwgS2V5RnJh bWUsIFBhY2tldC5wb3MsIFBhY2tldC5mbGFncyAmIEFWX1BLVF9GTEFHX0RJU0NBUkQpOworKyAg ICAgICAgICAgICAgICBTdGFydFNhbXBsZSwgU2FtcGxlQ291bnQsIEtleUZyYW1lLCBQYWNrZXQt PnBvcywgUGFja2V0LT5mbGFncyAmIEFWX1BLVF9GTEFHX0RJU0NBUkQpOworICAgICAgICAgfQor IAorLSAgICAgICAgaWYgKCEoUGFja2V0LmZsYWdzICYgQVZfUEtUX0ZMQUdfRElTQ0FSRCkpCist ICAgICAgICAgICAgVHJhY2tJbmZvLkxhc3REdXJhdGlvbiA9IFBhY2tldC5kdXJhdGlvbjsKKysg ICAgICAgIGlmICghKFBhY2tldC0+ZmxhZ3MgJiBBVl9QS1RfRkxBR19ESVNDQVJEKSkKKysgICAg ICAgICAgICBUcmFja0luZm8uTGFzdER1cmF0aW9uID0gUGFja2V0LT5kdXJhdGlvbjsKKyAKKy0g ICAgICAgIGF2X3BhY2tldF91bnJlZigmUGFja2V0KTsKKysgICAgICAgIGF2X3BhY2tldF91bnJl ZihQYWNrZXQpOworICAgICB9CisrICAgIGF2X3BhY2tldF9mcmVlKCZQYWNrZXQpOworIAorICAg ICBUcmFja0luZGljZXMtPkZpbmFsaXplKEFWQ29udGV4dHMsIEZvcm1hdENvbnRleHQtPmlmb3Jt YXQtPm5hbWUpOworICAgICByZXR1cm4gVHJhY2tJbmRpY2VzLnJlbGVhc2UoKTsKKyB9CisgCist dm9pZCBGRk1TX0luZGV4ZXI6OlJlYWRUUyhjb25zdCBBVlBhY2tldCAmUGFja2V0LCBpbnQ2NF90 ICZUUywgYm9vbCAmVXNlRFRTKSB7CistICAgIGlmICghVXNlRFRTICYmIFBhY2tldC5wdHMgIT0g QVZfTk9QVFNfVkFMVUUpCistICAgICAgICBUUyA9IFBhY2tldC5wdHM7Cisrdm9pZCBGRk1TX0lu ZGV4ZXI6OlJlYWRUUyhjb25zdCBBVlBhY2tldCAqUGFja2V0LCBpbnQ2NF90ICZUUywgYm9vbCAm VXNlRFRTKSB7CisrICAgIGlmICghVXNlRFRTICYmIFBhY2tldC0+cHRzICE9IEFWX05PUFRTX1ZB TFVFKQorKyAgICAgICAgVFMgPSBQYWNrZXQtPnB0czsKKyAgICAgaWYgKFRTID09IEFWX05PUFRT X1ZBTFVFKQorICAgICAgICAgVXNlRFRTID0gdHJ1ZTsKKy0gICAgaWYgKFVzZURUUyAmJiBQYWNr ZXQuZHRzICE9IEFWX05PUFRTX1ZBTFVFKQorLSAgICAgICAgVFMgPSBQYWNrZXQuZHRzOworKyAg ICBpZiAoVXNlRFRTICYmIFBhY2tldC0+ZHRzICE9IEFWX05PUFRTX1ZBTFVFKQorKyAgICAgICAg VFMgPSBQYWNrZXQtPmR0czsKKyB9CitkaWZmIC0tZ2l0IGEvc3JjL2NvcmUvaW5kZXhpbmcuaCBi L3NyYy9jb3JlL2luZGV4aW5nLmgKK2luZGV4IDNjZmMzYzMuLjVjMDY4NjggMTAwNjQ0CistLS0g YS9zcmMvY29yZS9pbmRleGluZy5oCisrKysgYi9zcmMvY29yZS9pbmRleGluZy5oCitAQCAtODAs MTAgKzgwLDEwIEBAIHByaXZhdGU6CisgICAgIGludDY0X3QgRmlsZXNpemU7CisgICAgIHVpbnQ4 X3QgRGlnZXN0WzIwXTsKKyAKKy0gICAgdm9pZCBSZWFkVFMoY29uc3QgQVZQYWNrZXQgJlBhY2tl dCwgaW50NjRfdCAmVFMsIGJvb2wgJlVzZURUUyk7CisrICAgIHZvaWQgUmVhZFRTKGNvbnN0IEFW UGFja2V0ICpQYWNrZXQsIGludDY0X3QgJlRTLCBib29sICZVc2VEVFMpOworICAgICB2b2lkIENo ZWNrQXVkaW9Qcm9wZXJ0aWVzKGludCBUcmFjaywgQVZDb2RlY0NvbnRleHQgKkNvbnRleHQpOwor ICAgICB1aW50MzJfdCBJbmRleEF1ZGlvUGFja2V0KGludCBUcmFjaywgQVZQYWNrZXQgKlBhY2tl dCwgU2hhcmVkQVZDb250ZXh0ICZDb250ZXh0LCBGRk1TX0luZGV4ICZUcmFja0luZGljZXMpOwor LSAgICB2b2lkIFBhcnNlVmlkZW9QYWNrZXQoU2hhcmVkQVZDb250ZXh0ICZWaWRlb0NvbnRleHQs IEFWUGFja2V0ICZwa3QsIGludCAqUmVwZWF0UGljdCwgaW50ICpGcmFtZVR5cGUsIGJvb2wgKklu dmlzaWJsZSwgZW51bSBBVlBpY3R1cmVTdHJ1Y3R1cmUgKkxhc3RQaWNTdHJ1Y3QpOworKyAgICB2 b2lkIFBhcnNlVmlkZW9QYWNrZXQoU2hhcmVkQVZDb250ZXh0ICZWaWRlb0NvbnRleHQsIEFWUGFj a2V0ICpwa3QsIGludCAqUmVwZWF0UGljdCwgaW50ICpGcmFtZVR5cGUsIGJvb2wgKkludmlzaWJs ZSwgZW51bSBBVlBpY3R1cmVTdHJ1Y3R1cmUgKkxhc3RQaWNTdHJ1Y3QpOworICAgICB2b2lkIEZy ZWUoKTsKKyBwdWJsaWM6CisgICAgIEZGTVNfSW5kZXhlcihjb25zdCBjaGFyICpGaWxlbmFtZSk7 CitkaWZmIC0tZ2l0IGEvc3JjL2NvcmUvdXRpbHMuY3BwIGIvc3JjL2NvcmUvdXRpbHMuY3BwCitp bmRleCBjZTY3NTMzLi44YTJlOTk3IDEwMDY0NAorLS0tIGEvc3JjL2NvcmUvdXRpbHMuY3BwCisr KysgYi9zcmMvY29yZS91dGlscy5jcHAKK0BAIC02MiwxMiArNjIsNiBAQCB2b2lkIENsZWFyRXJy b3JJbmZvKEZGTVNfRXJyb3JJbmZvICpFcnJvckluZm8pIHsKKyAgICAgfQorIH0KKyAKKy12b2lk IEluaXROdWxsUGFja2V0KEFWUGFja2V0ICZwa3QpIHsKKy0gICAgYXZfaW5pdF9wYWNrZXQoJnBr dCk7CistICAgIHBrdC5kYXRhID0gbnVsbHB0cjsKKy0gICAgcGt0LnNpemUgPSAwOworLX0KKy0K KyB2b2lkIEZpbGxBUChGRk1TX0F1ZGlvUHJvcGVydGllcyAmQVAsIEFWQ29kZWNDb250ZXh0ICpD VFgsIEZGTVNfVHJhY2sgJkZyYW1lcykgeworICAgICBBUC5TYW1wbGVGb3JtYXQgPSBzdGF0aWNf Y2FzdDxGRk1TX1NhbXBsZUZvcm1hdD4oYXZfZ2V0X3BhY2tlZF9zYW1wbGVfZm10KENUWC0+c2Ft cGxlX2ZtdCkpOworICAgICBBUC5CaXRzUGVyU2FtcGxlID0gYXZfZ2V0X2J5dGVzX3Blcl9zYW1w bGUoQ1RYLT5zYW1wbGVfZm10KSAqIDg7CitkaWZmIC0tZ2l0IGEvc3JjL2NvcmUvdXRpbHMuaCBi L3NyYy9jb3JlL3V0aWxzLmgKK2luZGV4IDk4MTlkYzcuLjAwM2FiNzkgMTAwNjQ0CistLS0gYS9z cmMvY29yZS91dGlscy5oCisrKysgYi9zcmMvY29yZS91dGlscy5oCitAQCAtNTgsNyArNTgsNiBA QCBzdGQ6OnVuaXF1ZV9wdHI8VD4gbWFrZV91bmlxdWUoQXJncyYmLi4uIGFyZ3MpIHsKKyB9Cisg Cisgdm9pZCBDbGVhckVycm9ySW5mbyhGRk1TX0Vycm9ySW5mbyAqRXJyb3JJbmZvKTsKKy12b2lk IEluaXROdWxsUGFja2V0KEFWUGFja2V0ICZwa3QpOworIHZvaWQgRmlsbEFQKEZGTVNfQXVkaW9Q cm9wZXJ0aWVzICZBUCwgQVZDb2RlY0NvbnRleHQgKkNUWCwgRkZNU19UcmFjayAmRnJhbWVzKTsK KyAKKyB2b2lkIExBVkZPcGVuRmlsZShjb25zdCBjaGFyICpTb3VyY2VGaWxlLCBBVkZvcm1hdENv bnRleHQgKiZGb3JtYXRDb250ZXh0LCBpbnQgVHJhY2spOworZGlmZiAtLWdpdCBhL3NyYy9jb3Jl L3ZpZGVvc291cmNlLmNwcCBiL3NyYy9jb3JlL3ZpZGVvc291cmNlLmNwcAoraW5kZXggMDZiZDE2 MS4uYjg4OTk3MCAxMDA2NDQKKy0tLSBhL3NyYy9jb3JlL3ZpZGVvc291cmNlLmNwcAorKysrIGIv c3JjL2NvcmUvdmlkZW9zb3VyY2UuY3BwCitAQCAtNjczLDMwICs2NzMsMzQgQEAgdm9pZCBGRk1T X1ZpZGVvU291cmNlOjpEZWNvZGVOZXh0RnJhbWUoaW50NjRfdCAmQVN0YXJ0VGltZSwgaW50NjRf dCAmUG9zKSB7CisgICAgIGlmIChIYXNQZW5kaW5nRGVsYXllZEZyYW1lcygpKQorICAgICAgICAg cmV0dXJuOworIAorLSAgICBBVlBhY2tldCBQYWNrZXQ7CistICAgIEluaXROdWxsUGFja2V0KFBh Y2tldCk7CistCistICAgIHdoaWxlIChSZWFkRnJhbWUoJlBhY2tldCkgPj0gMCkgeworLSAgICAg ICAgaWYgKFBhY2tldC5zdHJlYW1faW5kZXggIT0gVmlkZW9UcmFjaykgeworLSAgICAgICAgICAg IGF2X3BhY2tldF91bnJlZigmUGFja2V0KTsKKysgICAgQVZQYWNrZXQgKlBhY2tldCA9IGF2X3Bh Y2tldF9hbGxvYygpOworKyAgICBpZiAoIVBhY2tldCkKKysgICAgICAgIHRocm93IEZGTVNfRXhj ZXB0aW9uKEZGTVNfRVJST1JfREVDT0RJTkcsIEZGTVNfRVJST1JfQUxMT0NBVElPTl9GQUlMRUQs CisrICAgICAgICAgICAgIkNvdWxkIG5vdCBhbGxvY2F0ZSBwYWNrZXQuIik7CisrCisrICAgIHdo aWxlIChSZWFkRnJhbWUoUGFja2V0KSA+PSAwKSB7CisrICAgICAgICBpZiAoUGFja2V0LT5zdHJl YW1faW5kZXggIT0gVmlkZW9UcmFjaykgeworKyAgICAgICAgICAgIGF2X3BhY2tldF91bnJlZihQ YWNrZXQpOworICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgfQorIAorICAgICAgICAg aWYgKEFTdGFydFRpbWUgPCAwKQorLSAgICAgICAgICAgIEFTdGFydFRpbWUgPSBGcmFtZXMuVXNl RFRTID8gUGFja2V0LmR0cyA6IFBhY2tldC5wdHM7CisrICAgICAgICAgICAgQVN0YXJ0VGltZSA9 IEZyYW1lcy5Vc2VEVFMgPyBQYWNrZXQtPmR0cyA6IFBhY2tldC0+cHRzOworIAorICAgICAgICAg aWYgKFBvcyA8IDApCistICAgICAgICAgICAgUG9zID0gUGFja2V0LnBvczsKKysgICAgICAgICAg ICBQb3MgPSBQYWNrZXQtPnBvczsKKyAKKy0gICAgICAgIGJvb2wgRnJhbWVGaW5pc2hlZCA9IERl Y29kZVBhY2tldCgmUGFja2V0KTsKKy0gICAgICAgIGF2X3BhY2tldF91bnJlZigmUGFja2V0KTsK Ky0gICAgICAgIGlmIChGcmFtZUZpbmlzaGVkKQorKyAgICAgICAgYm9vbCBGcmFtZUZpbmlzaGVk ID0gRGVjb2RlUGFja2V0KFBhY2tldCk7CisrICAgICAgICBhdl9wYWNrZXRfdW5yZWYoUGFja2V0 KTsKKysgICAgICAgIGlmIChGcmFtZUZpbmlzaGVkKSB7CisrICAgICAgICAgICAgYXZfcGFja2V0 X2ZyZWUoJlBhY2tldCk7CisgICAgICAgICAgICAgcmV0dXJuOworKyAgICAgICAgfQorICAgICB9 CisgCisgICAgIC8vIEZsdXNoIGZpbmFsIGZyYW1lcworLSAgICBJbml0TnVsbFBhY2tldChQYWNr ZXQpOworLSAgICBEZWNvZGVQYWNrZXQoJlBhY2tldCk7CisrICAgIERlY29kZVBhY2tldChQYWNr ZXQpOworKyAgICBhdl9wYWNrZXRfZnJlZSgmUGFja2V0KTsKKyB9CisgCisgYm9vbCBGRk1TX1Zp ZGVvU291cmNlOjpTZWVrVG8oaW50IG4sIGludCBTZWVrT2Zmc2V0KSB7CistLSAKKzIuNDAuMAor CitGcm9tIGJmOWUwM2U5ZTA4NTM0YzAyNGU1YTc0NGE2NDM3YzRhYWMxNjAyMDEgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCitGcm9tOiBEZXJlayBCdWl0ZW5odWlzIDxkZXJlay5idWl0ZW5odWlz QGdtYWlsLmNvbT4KK0RhdGU6IFR1ZSwgNCBNYXkgMjAyMSAxNDoyMDo0NyArMDEwMAorU3ViamVj dDogW1BBVENIIDIvM10gY29uZmlndXJlOiBSZW1vdmUgZGVwcmVjYXRlZCBBUEkgdXNlCisKK1Np Z25lZC1vZmYtYnk6IERlcmVrIEJ1aXRlbmh1aXMgPGRlcmVrLmJ1aXRlbmh1aXNAZ21haWwuY29t PgorLS0tCisgY29uZmlndXJlLmFjIHwgNCArKy0tCisgMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0 aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL2NvbmZpZ3VyZS5hYyBiL2Nv bmZpZ3VyZS5hYworaW5kZXggYjM1ZWY4MGJjLi5kMTk3MTRkMGYgMTAwNjQ0CistLS0gYS9jb25m aWd1cmUuYWMKKysrKyBiL2NvbmZpZ3VyZS5hYworQEAgLTEwMiwxMCArMTAyLDEwIEBAIENGTEFH Uz0iJF9DRkxBR1MgJEZGTVBFR19DRkxBR1MiCisKKyBBQ19ERUZVTihbVEVTVF9GRk1QRUddLAor ICAgICAgICAgIFtBQ19MSU5LX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbCistICAgICAgICAg ICAgI2luY2x1ZGUgPGxpYmF2Y29kZWMvYXZjb2RlYy5oPgorKyAgICAgICAgICAgICNpbmNsdWRl IDxsaWJhdmZvcm1hdC9hdmZvcm1hdC5oPgorICAgICAgICAgICAgICNpbmNsdWRlIDxsaWJzd3Nj YWxlL3N3c2NhbGUuaD4KKyAgICAgICAgICAgICBdXSxbWworLSAgICAgICAgICAgICAgICBhdmNv ZGVjX3JlZ2lzdGVyX2FsbCgpOworKyAgICAgICAgICAgICAgICBhdmZvcm1hdF9uZXR3b3JrX2lu aXQoKTsKKyAgICAgICAgICAgICAgICAgc3dzY2FsZV92ZXJzaW9uKCk7CisgICAgICAgICAgICAg XV0pXSwgW2V2YWwgJDE9eWVzXSwgW2V2YWwgJDE9bm9dKQorICAgICAgICAgXSkKKwpkaWZmIC0t Z2l0IGEvc3JjcGtncy9mZm1zMi90ZW1wbGF0ZSBiL3NyY3BrZ3MvZmZtczIvdGVtcGxhdGUKaW5k ZXggMzY1ZjY0ZDEwY2JhYmYuLjQyZjQwMmNlNjgwMTUxIDEwMDY0NAotLS0gYS9zcmNwa2dzL2Zm bXMyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZmZtczIvdGVtcGxhdGUKQEAgLTEsMTEgKzEsMTEg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2ZmbXMyJwogcGtnbmFtZT1mZm1zMgogdmVyc2lvbj0y LjQwCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBj b25maWd1cmVfYXJncz0iLS1lbmFibGUtc2hhcmVkIC0tZGlzYWJsZS1zdGF0aWMiCiBob3N0bWFr ZWRlcGVuZHM9InBrZy1jb25maWcgYXV0b2NvbmYgYXV0b21ha2UgbGlidG9vbCIKLW1ha2VkZXBl bmRzPSJmZm1wZWctZGV2ZWwgemxpYi1kZXZlbCIKK21ha2VkZXBlbmRzPSJmZm1wZWc2LWRldmVs IHpsaWItZGV2ZWwiCiBzaG9ydF9kZXNjPSJMaWJhdi9mZm1wZWcgYmFzZWQgZnJhbWVzIHNlcnZl ciIKIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNl PSJNSVQsIEdQTC0zLjAtb3ItbGF0ZXIiCgpGcm9tIDI5YjU4M2Q0ZThlODdjMDEzNDk0MjE5N2Zh NWM2ZjQ1YjVjNjExMzUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGlj ZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDcgLTA0MDAKU3Vi amVjdDogW1BBVENIIDMwLzg5XSBmcmVlcmRwOiByZXZidW1wIGZvciBmZm1wZWc2CgpmcmVlcmRw IDogcmVkbwotLS0KIHNyY3BrZ3MvZnJlZXJkcC90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNo YW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNw a2dzL2ZyZWVyZHAvdGVtcGxhdGUgYi9zcmNwa2dzL2ZyZWVyZHAvdGVtcGxhdGUKaW5kZXggZjZj YTM5ODBjNGMxNDUuLjU3YzMzMGJhNzc0NjliIDEwMDY0NAotLS0gYS9zcmNwa2dzL2ZyZWVyZHAv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9mcmVlcmRwL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnZnJlZXJkcCcKIHBrZ25hbWU9ZnJlZXJkcAogdmVyc2lvbj0y LjExLjQKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1 cmVfYXJncz0iLURXSVRIX0FMU0E9T04gLURXSVRIX0NVUFM9T0ZGIC1EV0lUSF9GRk1QRUc9T04K ICAtRFdJVEhfR1NUUkVBTUVSXzBfMTA9T0ZGIC1EV0lUSF9HU1RSRUFNRVJfMV8wPU9GRiAtRFdJ VEhfSlBFRz1PTgpAQCAtMTAsNyArMTAsNyBAQCBjb25maWd1cmVfYXJncz0iLURXSVRIX0FMU0E9 T04gLURXSVRIX0NVUFM9T0ZGIC1EV0lUSF9GRk1QRUc9T04KICAtRFdJVEhfWEtCRklMRT1PTiAt RFdJVEhfWFJFTkRFUj1PTiAtRFdJVEhfWFY9T04gLURXSVRIX1NFUlZFUj1PTgogIC1EV0FZTEFO RF9TQ0FOTkVSPS91c3IvYmluL3dheWxhbmQtc2Nhbm5lciAtRFdJVEhfQ0FJUk89T04iCiBob3N0 bWFrZWRlcGVuZHM9InBrZy1jb25maWcgeG1sdG8gd2F5bGFuZC1kZXZlbCIKLW1ha2VkZXBlbmRz PSJhbHNhLWxpYi1kZXZlbCBmZm1wZWctZGV2ZWwgZ2xpYi1kZXZlbCBsaWJ1c2ItZGV2ZWwKK21h a2VkZXBlbmRzPSJhbHNhLWxpYi1kZXZlbCBmZm1wZWc2LWRldmVsIGdsaWItZGV2ZWwgbGlidXNi LWRldmVsCiAgbGliWGN1cnNvci1kZXZlbCBsaWJYaW5lcmFtYS1kZXZlbCBsaWJYcmFuZHItZGV2 ZWwgbGliWHYtZGV2ZWwKICBsaWJqcGVnLXR1cmJvLWRldmVsIG9wZW5zc2wtZGV2ZWwgbGlieGti ZmlsZS1kZXZlbCBwdWxzZWF1ZGlvLWRldmVsCiAgbGlieGtiY29tbW9uLWRldmVsIHdheWxhbmQt ZGV2ZWwgY2Fpcm8tZGV2ZWwgbGliWGRhbWFnZS1kZXZlbCIKCkZyb20gNzU4YzMyOGZiYjFlM2Vh NTI5OWU0NWQwNWZkODEwMGNjNzU5ZWFmYiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog emxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0 NyAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMzEvODldIGdlcmJlcmE6IHJldmJ1bXAgZm9yIGZmbXBl ZzYKCi0tLQogc3JjcGtncy9nZXJiZXJhL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdl ZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv Z2VyYmVyYS90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ2VyYmVyYS90ZW1wbGF0ZQppbmRleCBhZTE0ZjM1 Yzc2N2MwMy4uNWUyZGE5Yzk4ZGE4NmIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ2VyYmVyYS90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL2dlcmJlcmEvdGVtcGxhdGUKQEAgLTEsMTEgKzEsMTEgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ2dlcmJlcmEnCiBwa2duYW1lPWdlcmJlcmEKIHZlcnNpb249MS4x Mi4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJl X2FyZ3M9Ii1EV0lUSF9TWVNURU1EPTAgLURXSVRIX0FWQ09ERUM9MSIKIGhvc3RtYWtlZGVwZW5k cz0icGtnLWNvbmZpZyIKLW1ha2VkZXBlbmRzPSJkdWt0YXBlLWRldmVsIGV4cGF0LWRldmVsIGZm bXBlZy1kZXZlbCBmaWxlLWRldmVsIGxpYmN1cmwtZGV2ZWwKK21ha2VkZXBlbmRzPSJkdWt0YXBl LWRldmVsIGV4cGF0LWRldmVsIGZmbXBlZzYtZGV2ZWwgZmlsZS1kZXZlbCBsaWJjdXJsLWRldmVs CiAgbGliZXhpZi1kZXZlbCBsaWJ1cG5wLWRldmVsIGxpYnV1aWQtZGV2ZWwgc3FsaXRlLWRldmVs IHRhZ2xpYi1kZXZlbAogIGZtdC1kZXZlbCBzcGRsb2cgcHVnaXhtbC1kZXZlbCBsaWJlYm1sLWRl dmVsIGxpYm1hdHJvc2thLWRldmVsIgogc2hvcnRfZGVzYz0iVVBuUCBNZWRpYSBTZXJ2ZXIgYmFz ZWQgb24gTWVkaWFUb21iIgoKRnJvbSAzNTQ2MGIyMmUyMTJlNDU1MGZkYjY3MTY2OTk1NzllOTlm ZjNlYTQ3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21h aWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ3IC0wNDAwClN1YmplY3Q6IFtQ QVRDSCAzMi84OV0gZ29sZGVuZGljdDogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dz L2dvbGRlbmRpY3QvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0 aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dvbGRlbmRpY3Qv dGVtcGxhdGUgYi9zcmNwa2dzL2dvbGRlbmRpY3QvdGVtcGxhdGUKaW5kZXggZjRhMDU3NTlmNjkz ZDMuLjQwMGEwZTQ0ZjJhOWRlIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dvbGRlbmRpY3QvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9nb2xkZW5kaWN0L3RlbXBsYXRlCkBAIC0xLDE2ICsxLDE2IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdnb2xkZW5kaWN0JwogcGtnbmFtZT1nb2xkZW5kaWN0CiB2ZXJz aW9uPTEuNS4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1xbWFrZQogY29u ZmlndXJlX2FyZ3M9IkNPTkZJRys9emltX3N1cHBvcnQgZ29sZGVuZGljdC5wcm8iCiBob3N0bWFr ZWRlcGVuZHM9InF0NS1xbWFrZSBwa2ctY29uZmlnIHF0NS1ob3N0LXRvb2xzIgogbWFrZWRlcGVu ZHM9InRpZmYtZGV2ZWwgcXQ1LWRldmVsIGxpYnZvcmJpcy1kZXZlbCB6bGliLWRldmVsCiAgbGli WHRzdC1kZXZlbCBodW5zcGVsbC1kZXZlbCBxdDUtdG9vbHMtZGV2ZWwgcXQ1LWRlY2xhcmF0aXZl LWRldmVsCiAgcXQ1LXdlYmtpdC1kZXZlbCBsem8tZGV2ZWwgYnppcDItZGV2ZWwgbGliYW8tZGV2 ZWwgcXQ1LXN2Zy1kZXZlbAotIGxpYmViLWRldmVsIHF0NS14MTFleHRyYXMtZGV2ZWwgZmZtcGVn LWRldmVsIGxpYmx6bWEtZGV2ZWwKKyBsaWJlYi1kZXZlbCBxdDUteDExZXh0cmFzLWRldmVsIGZm bXBlZzYtZGV2ZWwgbGlibHptYS1kZXZlbAogIHF0NS1tdWx0aW1lZGlhLWRldmVsIgotc2hvcnRf ZGVzYz0iQSBmZWF0dXJlLXJpY2ggZGljdGlvbmFyeSBsb29rdXAgcHJvZ3JhbSIKK3Nob3J0X2Rl c2M9IkZlYXR1cmUtcmljaCBkaWN0aW9uYXJ5IGxvb2t1cCBwcm9ncmFtIgogbWFpbnRhaW5lcj0i Sm9obiA8bWVAam9obm55bmF0b3IuZGV2PiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBo b21lcGFnZT0iaHR0cDovL2dvbGRlbmRpY3Qub3JnLyIKCkZyb20gMDNiZDY3YmU1ZDc1NWQyZGQ1 N2Y3ZmYyMWJiMjAwNTMzNmFmZTc3NSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxp Y2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0NyAt MDQwMApTdWJqZWN0OiBbUEFUQ0ggMzMvODldIGdzdC1saWJhdjogcmV2YnVtcCBmb3IgZmZtcGVn NgoKLS0tCiBzcmNwa2dzL2dzdC1saWJhdi90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5n ZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dz L2dzdC1saWJhdi90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ3N0LWxpYmF2L3RlbXBsYXRlCmluZGV4IDQ1 Y2E0N2M0OGI2MGI4Li4yOGJmZTczOGFmN2Q3MSAxMDA2NDQKLS0tIGEvc3JjcGtncy9nc3QtbGli YXYvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nc3QtbGliYXYvdGVtcGxhdGUKQEAgLTEsMTAgKzEs MTAgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dzdC1saWJhdicKIHBrZ25hbWU9Z3N0LWxpYmF2 CiB2ZXJzaW9uPTEuMjQuNAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9bWVz b24KIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyB5YXNtIgotbWFrZWRlcGVuZHM9Im9yYy1k ZXZlbCBnc3QtcGx1Z2lucy1iYXNlMS1kZXZlbCBmZm1wZWctZGV2ZWwiCittYWtlZGVwZW5kcz0i b3JjLWRldmVsIGdzdC1wbHVnaW5zLWJhc2UxLWRldmVsIGZmbXBlZzYtZGV2ZWwiCiBkZXBlbmRz PSJvcmM+PTAuNC4xOCBnc3QtcGx1Z2lucy1iYXNlMT49JHt2ZXJzaW9ufSIKIHNob3J0X2Rlc2M9 IkdTdHJlYW1lciBsaWJhdiBwbHVnaW4gKDEueCkiCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3Jw aGFuQHZvaWRsaW51eC5vcmc+IgoKRnJvbSBkYzc2Y2JhZDU5NDYyZmI1YmE0NGY1NWE3MjJmZTdk N2I0ZjExNDUxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVA Z21haWwuY29tPgpEYXRlOiBTYXQsIDMgRmViIDIwMjQgMDE6NTI6NDYgLTA1MDAKU3ViamVjdDog W1BBVENIIDM0Lzg5XSBnc3QtcGx1Z2lucy1iYWQxOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0K IHNyY3BrZ3MvZ3N0LXBsdWdpbnMtYmFkMS90ZW1wbGF0ZSB8IDkgKysrKystLS0tCiAxIGZpbGUg Y2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvZ3N0LXBsdWdpbnMtYmFkMS90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ3N0LXBsdWdpbnMtYmFk MS90ZW1wbGF0ZQppbmRleCA1ZmMyMTNlNzViODI5Yy4uMzQ1NDI1Nzg1ZDQzNWQgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvZ3N0LXBsdWdpbnMtYmFkMS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dzdC1w bHVnaW5zLWJhZDEvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdnc3QtcGx1Z2lucy1iYWQxJwogcGtnbmFtZT1nc3QtcGx1Z2lucy1iYWQxCiB2ZXJzaW9uPTEu MjQuNAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9z dHlsZT1tZXNvbgogY29uZmlndXJlX2FyZ3M9Ii1EcGFja2FnZS1vcmlnaW49aHR0cHM6Ly92b2lk bGludXgub3JnIC1EZG9jPWRpc2FibGVkCkBAIC0yNiw4ICsyNiw4IEBAIG1ha2VkZXBlbmRzPSJh bHNhLWxpYi1kZXZlbCBjZWx0LWRldmVsIG9wZW5zc2wtZGV2ZWwgZXhlbXBpLWRldmVsCiAgbGli Z3VkZXYtZGV2ZWwgbGlidXNiLWRldmVsIGxpYmFvbS1kZXZlbCBsaWJiczJiLWRldmVsIGNocm9t YXByaW50LWRldmVsCiAgZmRrLWFhYy1kZXZlbCBmbGl0ZS1kZXZlbCBmbHVpZHN5bnRoLWRldmVs IGxpYmxyZGYtZGV2ZWwgbGFkc3BhLXNkawogIGxpbHYtZGV2ZWwgbHYyIGxpYm9wZW5qcGVnMi1k ZXZlbCBzYmMtZGV2ZWwgc3BhbmRzcC1kZXZlbCB2dWxrYW4tbG9hZGVyLWRldmVsCi0gd2VicnRj LWF1ZGlvLXByb2Nlc3NpbmctZGV2ZWwgbGliemJhci1kZXZlbCBmZm1wZWctZGV2ZWwgc3J0LWRl dmVsIGxpYnZhLWRldmVsCi0gJCh2b3B0X2lmIGdtZSBsaWJnbWUtZGV2ZWwpIgorIHdlYnJ0Yy1h dWRpby1wcm9jZXNzaW5nLWRldmVsIGxpYnpiYXItZGV2ZWwgZmZtcGVnNi1kZXZlbAorIHNydC1k ZXZlbCBsaWJ2YS1kZXZlbCAkKHZvcHRfaWYgb25ldnBsIG9uZVZQTC1kZXZlbCkgJCh2b3B0X2lm IGdtZSBsaWJnbWUtZGV2ZWwpIgogZGVwZW5kcz0iZ3N0LXBsdWdpbnMtYmFzZTE+PSR7dmVyc2lv bn0iCiBzaG9ydF9kZXNjPSJHU3RyZWFtZXIgcGx1Z2lucyBmcm9tIHRoZSBiYWQgc2V0ICh2MS54 KSIKIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCkBAIC0zNywx MiArMzcsMTMgQEAgY2hhbmdlbG9nPSJodHRwczovL2dzdHJlYW1lci5mcmVlZGVza3RvcC5vcmcv cmVsZWFzZXMvJHt2ZXJzaW9uJS4qfS8jJHt2ZXJzaW9ufSIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9n c3RyZWFtZXIuZnJlZWRlc2t0b3Aub3JnL3NyYy9nc3QtcGx1Z2lucy1iYWQvZ3N0LXBsdWdpbnMt YmFkLSR7dmVyc2lvbn0udGFyLnh6IgogY2hlY2tzdW09MjYwYmQwYTQ2M2I0ZmFmZjlhNDJmNDFl NWUwMjhmNzg3ZjEwYTkyYjc3OWFmODk1OWFlYzY0NTg2ZjU0NmJkMwogCi1idWlsZF9vcHRpb25z PSJnaXIgZ21lIHdheWxhbmQiCitidWlsZF9vcHRpb25zPSJnaXIgZ21lIG9uZXZwbCB3YXlsYW5k IgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIgd2F5bGFuZCIKIGRlc2Nfb3B0aW9uX2dtZT0i QnVpbGQgd2l0aCBHYW1lIE11c2ljIEVtdWxhdG9yIHN1cHBvcnQiCiAKIGNhc2UgIiRYQlBTX1RB UkdFVF9NQUNISU5FIiBpbgogCW1pcHMqKSA7OyAjIGxpYmdtZSBjYW5ub3QgYmUgYnVpbHQgZm9y IG1pcHMqCisJeDg2XzY0KikgYnVpbGRfb3B0aW9uc19kZWZhdWx0Kz0iIGdtZSBvbmV2cGwiIDs7 ICMgb25ldnBsIG9ubHkgc3VwcG9ydHMgNjRiaXQKIAkqKSBidWlsZF9vcHRpb25zX2RlZmF1bHQr PSIgZ21lIiA7OwogZXNhYwogCgpGcm9tIDMwM2Q5NDMzOTRlMmEzNjRiNmMyYmRkYTQxNGUwZmI4 M2I2MTFmMWQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBn bWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDcgLTA0MDAKU3ViamVjdDog W1BBVENIIDM1Lzg5XSBnc3QtcnRzcC1zZXJ2ZXI6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQog c3JjcGtncy9nc3QtcnRzcC1zZXJ2ZXIvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2Vk LCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9n c3QtcnRzcC1zZXJ2ZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2dzdC1ydHNwLXNlcnZlci90ZW1wbGF0 ZQppbmRleCBiNmE3NDE4MWE0MDYyZC4uODA2ZDMzNjIwNWU0ZTQgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvZ3N0LXJ0c3Atc2VydmVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ3N0LXJ0c3Atc2VydmVy L3RlbXBsYXRlCkBAIC0xLDEyICsxLDEyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnc3QtcnRz cC1zZXJ2ZXInCiBwa2duYW1lPWdzdC1ydHNwLXNlcnZlcgogdmVyc2lvbj0xLjI0LjQKLXJldmlz aW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9Z2lyCiBj b25maWd1cmVfYXJncz0iLURpbnRyb3NwZWN0aW9uPWVuYWJsZWQiCiBob3N0bWFrZWRlcGVuZHM9 InBrZy1jb25maWcgcHl0aG9uMyIKLW1ha2VkZXBlbmRzPSJnbGliLWRldmVsIGdzdC1wbHVnaW5z LWJhZDEtZGV2ZWwgZ3N0LXBsdWdpbnMtZ29vZDEgZmZtcGVnLWRldmVsCittYWtlZGVwZW5kcz0i Z2xpYi1kZXZlbCBnc3QtcGx1Z2lucy1iYWQxLWRldmVsIGdzdC1wbHVnaW5zLWdvb2QxIGZmbXBl ZzYtZGV2ZWwKICBweXRob24zLWdvYmplY3QtZGV2ZWwiCiBzaG9ydF9kZXNjPSJHU3RyZWFtZXIg bXVsdGltZWRpYSBncmFwaCBmcmFtZXdvcmsgLSBydHNwIHNlcnZlciIKIG1haW50YWluZXI9IjFp czdhYzMgPGlzYWFjLnFhMTNAZ21haWwuY29tPiIKCkZyb20gNzMxM2RjNmYxY2I3ZTZiZmRkZDhk OTQ3MTU5OTRmZTRiMmRjZmZkZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2Ug PHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0OCAtMDQw MApTdWJqZWN0OiBbUEFUQ0ggMzYvODldIGhlZGdld2FyczogcmV2YnVtcCBmb3IgZmZtcGVnNgoK LS0tCiAuLi4vMDAwMS1BZGQtc3VwcG9ydC1mb3ItZmZtcGVnLTYuMC5wYXRjaCAgICAgfCA0NTkg KysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2hlZGdld2Fycy90ZW1wbGF0ZSAgICAgICAgICAg ICAgICAgICAgfCAgIDQgKy0KIDIgZmlsZXMgY2hhbmdlZCwgNDYxIGluc2VydGlvbnMoKyksIDIg ZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9oZWRnZXdhcnMvcGF0Y2hl cy8wMDAxLUFkZC1zdXBwb3J0LWZvci1mZm1wZWctNi4wLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9oZWRnZXdhcnMvcGF0Y2hlcy8wMDAxLUFkZC1zdXBwb3J0LWZvci1mZm1wZWctNi4wLnBh dGNoIGIvc3JjcGtncy9oZWRnZXdhcnMvcGF0Y2hlcy8wMDAxLUFkZC1zdXBwb3J0LWZvci1mZm1w ZWctNi4wLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi4y MjhmMzI5ZmMzODAyZQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvaGVkZ2V3YXJzL3BhdGNo ZXMvMDAwMS1BZGQtc3VwcG9ydC1mb3ItZmZtcGVnLTYuMC5wYXRjaApAQCAtMCwwICsxLDQ1OSBA QAorRnJvbSA3MTY5MWZhZDg2NTQwMzEzMjhmNGFmMDc3ZmMzMmFhZjI5Y2RiN2QwIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQorRnJvbTogUGVra2EgUmlzdG9sYSA8cGVra2FyckBwcm90b25tYWls LmNvbT4KK0RhdGU6IFR1ZSwgOSBNYXkgMjAyMyAyMDoxMTo0NyArMDMwMAorU3ViamVjdDogW1BB VENIXSBBZGQgc3VwcG9ydCBmb3IgZmZtcGVnIDYuMAorCistIFVzZSB0aGUgbmV3IHNlbmRfZnJh bWUvcmVjZWl2ZV9wYWNrZXQgQVBJIGZvciBlbmNvZGluZworLSBVc2UgdGhlIG5ldyBjaGFubmVs IGxheW91dCBBUEkgZm9yIGF1ZGlvCistIEZpeCBhdWRpbyByZWNvcmRpbmcKKyAgLSBDb3B5IGNv ZGVjIHBhcmFtZXRlcnMgdG8gdGhlIHN0cmVhbSBwYXJhbWV0ZXJzCisgIC0gU2V0IGNvcnJlY3Qg cHRzIGZvciBhdWRpbyBmcmFtZXMKKy0gUmVhZCBhdWRpbyBzYW1wbGVzIGZyb20gZmlsZSBkaXJl Y3RseSB0byB0aGUgcmVmY291bnRlZCBBVkZyYW1lIGJ1ZmZlciBpbnN0ZWFkIG9mIHRoZSBgZ19w U2FtcGxlc2AgYnVmZmVyCistIFVzZSBnbG9iYWwgQVZQYWNrZXRzIGFsbG9jYXRlZCB3aXRoIGBh dl9wYWNrZXRfYWxsb2NgCistIFN0b3AgdHJ5aW5nIHRvIHdyaXRlIG1vcmUgYXVkaW8gZnJhbWVz IHdoZW4gYFdyaXRlQXVkaW9GcmFtZWAgZmFpbHMgd2l0aCBhIG5lZ2F0aXZlIGVycm9yIGNvZGUK Ky0gRml4IHNlZ2ZhdWx0IHdpdGggYGdfcENvbnRhaW5lci0+dXJsYC4gVGhlIGZpZWxkIGhhcyB0 byBiZSBhbGxvY2F0ZWQgd2l0aCBgYXZfbWFsbG9jYCBiZWZvcmUgd3JpdGluZyB0byBpdC4gSXQn cyBzZXQgdG8gYE5VTExgIGJ5IGRlZmF1bHQuCistIFByb3Blcmx5IGZyZWUgYWxsb2NhdGlvbnMg d2l0aCBgYXZjb2RlY19mcmVlX2NvbnRleHRgIGFuZCBgYXZmb3JtYXRfZnJlZV9jb250ZXh0YAor LS0tCisgaGVkZ2V3YXJzL2F2d3JhcHBlci9hdndyYXBwZXIuYyB8IDIzNCArKysrKysrKysrKysr KysrKysrKysrKysrKystLS0tLQorIDEgZmlsZSBjaGFuZ2VkLCAyMDMgaW5zZXJ0aW9ucygrKSwg MzEgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9oZWRnZXdhcnMvYXZ3cmFwcGVyL2F2d3Jh cHBlci5jIGIvaGVkZ2V3YXJzL2F2d3JhcHBlci9hdndyYXBwZXIuYworaW5kZXggNmMwZmU3Mzli Li4zZGFlYjA3YjcgMTAwNjQ0CistLS0gYS9oZWRnZXdhcnMvYXZ3cmFwcGVyL2F2d3JhcHBlci5j CisrKysgYi9oZWRnZXdhcnMvYXZ3cmFwcGVyL2F2d3JhcHBlci5jCitAQCAtNDIsMTUgKzQyLDE5 IEBACisgI2RlZmluZSBVTlVTRUQoeCkgKHZvaWQpKHgpCisgCisgc3RhdGljIEFWRm9ybWF0Q29u dGV4dCogZ19wQ29udGFpbmVyOworLXN0YXRpYyBBVk91dHB1dEZvcm1hdCogZ19wRm9ybWF0Owor K3N0YXRpYyBjb25zdCBBVk91dHB1dEZvcm1hdCogZ19wRm9ybWF0OworIHN0YXRpYyBBVlN0cmVh bSogZ19wQVN0cmVhbTsKKyBzdGF0aWMgQVZTdHJlYW0qIGdfcFZTdHJlYW07Cisgc3RhdGljIEFW RnJhbWUqIGdfcEFGcmFtZTsKKyBzdGF0aWMgQVZGcmFtZSogZ19wVkZyYW1lOworLXN0YXRpYyBB VkNvZGVjKiBnX3BBQ29kZWM7Cistc3RhdGljIEFWQ29kZWMqIGdfcFZDb2RlYzsKKytzdGF0aWMg Y29uc3QgQVZDb2RlYyogZ19wQUNvZGVjOworK3N0YXRpYyBjb25zdCBBVkNvZGVjKiBnX3BWQ29k ZWM7Cisgc3RhdGljIEFWQ29kZWNDb250ZXh0KiBnX3BBdWRpbzsKKyBzdGF0aWMgQVZDb2RlY0Nv bnRleHQqIGdfcFZpZGVvOworKyNpZiBMSUJBVkNPREVDX1ZFUlNJT05fTUFKT1IgPj0gNTgKKytz dGF0aWMgQVZQYWNrZXQqIGdfcEFQYWNrZXQ7Cisrc3RhdGljIEFWUGFja2V0KiBnX3BWUGFja2V0 OworKyNlbmRpZgorIAorIHN0YXRpYyBpbnQgZ19XaWR0aCwgZ19IZWlnaHQ7Cisgc3RhdGljIHVp bnQzMl90IGdfRnJlcXVlbmN5LCBnX0NoYW5uZWxzOworQEAgLTU4LDggKzYyLDEzIEBAIHN0YXRp YyBpbnQgZ19WUXVhbGl0eTsKKyBzdGF0aWMgQVZSYXRpb25hbCBnX0ZyYW1lcmF0ZTsKKyAKKyBz dGF0aWMgRklMRSogZ19wU291bmRGaWxlOworKyNpZiBMSUJBVlVUSUxfVkVSU0lPTl9NQUpPUiA8 IDUzCisgc3RhdGljIGludDE2X3QqIGdfcFNhbXBsZXM7CisrI2VuZGlmCisgc3RhdGljIGludCBn X051bVNhbXBsZXM7CisrI2lmIExJQkFWQ09ERUNfVkVSU0lPTl9NQUpPUiA+PSA1MworK3N0YXRp YyBpbnQ2NF90IGdfTmV4dEF1ZGlvUHRzOworKyNlbmRpZgorIAorIAorIC8vIGNvbXBhdGliaWxp dHkgc2VjdGlvbgorQEAgLTkzLDYgKzEwMiw4IEBAIHN0YXRpYyB2b2lkIHJlc2NhbGVfdHMoQVZQ YWNrZXQgKnBrdCwgQVZSYXRpb25hbCBjdGIsIEFWUmF0aW9uYWwgc3RiKQorICAgICBpZiAocGt0 LT5kdXJhdGlvbiA+IDApCisgICAgICAgICBwa3QtPmR1cmF0aW9uID0gYXZfcmVzY2FsZV9xKHBr dC0+ZHVyYXRpb24sIGN0Yiwgc3RiKTsKKyB9CisrCisrI2RlZmluZSBhdmNvZGVjX2ZyZWVfY29u dGV4dChjdHgpICAgICAgICAgICBkbyB7IGF2Y29kZWNfY2xvc2UoKmN0eCk7IGF2X2ZyZWVwKGN0 eCk7IH0gd2hpbGUgKDApCisgI2VuZGlmCisgCisgI2lmbmRlZiBBVl9DT0RFQ19DQVBfREVMQVkK K0BAIC0xNjUsOCArMTc2LDQyIEBAIHN0YXRpYyB2b2lkIExvZyhjb25zdCBjaGFyKiBwRm10LCAu Li4pCisgICAgIEFkZEZpbGVMb2dSYXcoQnVmZmVyKTsKKyB9CisgCisrI2lmIExJQkFWQ09ERUNf VkVSU0lPTl9NQUpPUiA+PSA1OAorK3N0YXRpYyBpbnQgRW5jb2RlQW5kV3JpdGVGcmFtZSgKKysg ICAgICAgIGNvbnN0IEFWU3RyZWFtKiBwU3RyZWFtLAorKyAgICAgICAgQVZDb2RlY0NvbnRleHQq IHBDb2RlY0NvbnRleHQsCisrICAgICAgICBjb25zdCBBVkZyYW1lKiBwRnJhbWUsCisrICAgICAg ICBBVlBhY2tldCogcFBhY2tldCkKKyt7CisrICAgIGludCByZXQ7CisrCisrICAgIHJldCA9IGF2 Y29kZWNfc2VuZF9mcmFtZShwQ29kZWNDb250ZXh0LCBwRnJhbWUpOworKyAgICBpZiAocmV0IDwg MCkKKysgICAgICAgIHJldHVybiBGYXRhbEVycm9yKCJhdmNvZGVjX3NlbmRfZnJhbWUgZmFpbGVk OiAlZCIsIHJldCk7CisrICAgIHdoaWxlICgxKQorKyAgICB7CisrICAgICAgICByZXQgPSBhdmNv ZGVjX3JlY2VpdmVfcGFja2V0KHBDb2RlY0NvbnRleHQsIHBQYWNrZXQpOworKyAgICAgICAgaWYg KHJldCA9PSBBVkVSUk9SKEVBR0FJTikpCisrICAgICAgICAgICAgcmV0dXJuIDE7CisrICAgICAg ICBlbHNlIGlmIChyZXQgPT0gQVZFUlJPUl9FT0YpCisrICAgICAgICAgICAgcmV0dXJuIDA7Cisr ICAgICAgICBlbHNlIGlmIChyZXQgPCAwKQorKyAgICAgICAgICAgIHJldHVybiBGYXRhbEVycm9y KCJhdmNvZGVjX3JlY2VpdmVfcGFja2V0IGZhaWxlZDogJWQiLCByZXQpOworKworKyAgICAgICAg YXZfcGFja2V0X3Jlc2NhbGVfdHMocFBhY2tldCwgcENvZGVjQ29udGV4dC0+dGltZV9iYXNlLCBw U3RyZWFtLT50aW1lX2Jhc2UpOworKworKyAgICAgICAgLy8gV3JpdGUgdGhlIGNvbXByZXNzZWQg ZnJhbWUgdG8gdGhlIG1lZGlhIGZpbGUuCisrICAgICAgICBwUGFja2V0LT5zdHJlYW1faW5kZXgg PSBwU3RyZWFtLT5pbmRleDsKKysgICAgICAgIHJldCA9IGF2X2ludGVybGVhdmVkX3dyaXRlX2Zy YW1lKGdfcENvbnRhaW5lciwgcFBhY2tldCk7CisrICAgICAgICBpZiAocmV0ICE9IDApCisrICAg ICAgICAgICAgcmV0dXJuIEZhdGFsRXJyb3IoIkVycm9yIHdoaWxlIHdyaXRpbmcgZnJhbWU6ICVk IiwgcmV0KTsKKysgICAgfQorK30KKysjZW5kaWYKKysKKyBzdGF0aWMgdm9pZCBBZGRBdWRpb1N0 cmVhbSgpCisgeworKyAgICBpbnQgcmV0OworICAgICBnX3BBU3RyZWFtID0gYXZmb3JtYXRfbmV3 X3N0cmVhbShnX3BDb250YWluZXIsIGdfcEFDb2RlYyk7CisgICAgIGlmKCFnX3BBU3RyZWFtKQor ICAgICB7CitAQCAtMTc2LDIwICsyMjEsNDQgQEAgc3RhdGljIHZvaWQgQWRkQXVkaW9TdHJlYW0o KQorICAgICBnX3BBU3RyZWFtLT5pZCA9IDE7CisgCisgI2lmIExJQkFWQ09ERUNfVkVSU0lPTl9N QUpPUiA+PSA1OQorLSAgICBjb25zdCBBVkNvZGVjICphdWRpb19zdF9jb2RlYyA9IGF2Y29kZWNf ZmluZF9kZWNvZGVyKGdfcEFTdHJlYW0tPmNvZGVjcGFyLT5jb2RlY19pZCk7CistICAgIGdfcEF1 ZGlvID0gYXZjb2RlY19hbGxvY19jb250ZXh0MyhhdWRpb19zdF9jb2RlYyk7CistICAgIGF2Y29k ZWNfcGFyYW1ldGVyc190b19jb250ZXh0KGdfcEF1ZGlvLCBnX3BBU3RyZWFtLT5jb2RlY3Bhcik7 CisrICAgIGdfcEF1ZGlvID0gYXZjb2RlY19hbGxvY19jb250ZXh0MyhnX3BBQ29kZWMpOworICNl bHNlCisgICAgIGdfcEF1ZGlvID0gZ19wQVN0cmVhbS0+Y29kZWM7CistI2VuZGlmCisgCisgICAg IGF2Y29kZWNfZ2V0X2NvbnRleHRfZGVmYXVsdHMzKGdfcEF1ZGlvLCBnX3BBQ29kZWMpOworICAg ICBnX3BBdWRpby0+Y29kZWNfaWQgPSBnX3BBQ29kZWMtPmlkOworKyNlbmRpZgorIAorICAgICAv LyBwdXQgcGFyYW1ldGVycworICAgICBnX3BBdWRpby0+c2FtcGxlX2ZtdCA9IEFWX1NBTVBMRV9G TVRfUzE2OworICAgICBnX3BBdWRpby0+c2FtcGxlX3JhdGUgPSBnX0ZyZXF1ZW5jeTsKKysjaWYg TElCQVZDT0RFQ19WRVJTSU9OX01BSk9SID49IDYwCisrICAgIGNvbnN0IEFWQ2hhbm5lbExheW91 dCogcENoTGF5b3V0ID0gZ19wQUNvZGVjLT5jaF9sYXlvdXRzOworKyAgICBpZiAocENoTGF5b3V0 KQorKyAgICB7CisrICAgICAgICBmb3IgKDsgcENoTGF5b3V0LT5uYl9jaGFubmVsczsgcENoTGF5 b3V0KyspCisrICAgICAgICB7CisrICAgICAgICAgICAgaWYgKHBDaExheW91dC0+bmJfY2hhbm5l bHMgPT0gZ19DaGFubmVscykKKysgICAgICAgICAgICB7CisrICAgICAgICAgICAgICAgIHJldCA9 IGF2X2NoYW5uZWxfbGF5b3V0X2NvcHkoJmdfcEF1ZGlvLT5jaF9sYXlvdXQsIHBDaExheW91dCk7 CisrICAgICAgICAgICAgICAgIGlmIChyZXQgIT0gMCkKKysgICAgICAgICAgICAgICAgeworKyAg ICAgICAgICAgICAgICAgICAgTG9nKCJDaGFubmVsIGxheW91dCBjb3B5IGZhaWxlZDogJWRcbiIs IHJldCk7CisrICAgICAgICAgICAgICAgICAgICByZXR1cm47CisrICAgICAgICAgICAgICAgIH0K KysgICAgICAgICAgICAgICAgYnJlYWs7CisrICAgICAgICAgICAgfQorKyAgICAgICAgfQorKyAg ICB9CisrICAgIGlmICghZ19wQXVkaW8tPmNoX2xheW91dC5uYl9jaGFubmVscykKKysgICAgewor KyAgICAgICAgLy8gbm8gc3VpdGFibGUgbGF5b3V0IGZvdW5kCisrICAgICAgICBnX3BBdWRpby0+ Y2hfbGF5b3V0Lm9yZGVyID0gQVZfQ0hBTk5FTF9PUkRFUl9VTlNQRUM7CisrICAgICAgICBnX3BB dWRpby0+Y2hfbGF5b3V0Lm5iX2NoYW5uZWxzID0gZ19DaGFubmVsczsKKysgICAgfQorKyNlbHNl CisgICAgIGdfcEF1ZGlvLT5jaGFubmVscyA9IGdfQ2hhbm5lbHM7CisrI2VuZGlmCisgCisgICAg IC8vIHNldCB0aW1lIGJhc2UgYXMgaW52ZXJzIG9mIHNhbXBsZSByYXRlCisgICAgIGdfcEF1ZGlv LT50aW1lX2Jhc2UuZGVuID0gZ19wQVN0cmVhbS0+dGltZV9iYXNlLmRlbiA9IGdfRnJlcXVlbmN5 OworQEAgLTIxMyw2ICsyODIsMTUgQEAgc3RhdGljIHZvaWQgQWRkQXVkaW9TdHJlYW0oKQorICAg ICAgICAgcmV0dXJuOworICAgICB9CisgCisrI2lmIExJQkFWQ09ERUNfVkVSU0lPTl9NQUpPUiA+ PSA1OAorKyAgICByZXQgPSBhdmNvZGVjX3BhcmFtZXRlcnNfZnJvbV9jb250ZXh0KGdfcEFTdHJl YW0tPmNvZGVjcGFyLCBnX3BBdWRpbyk7CisrICAgIGlmIChyZXQgPCAwKQorKyAgICB7CisrICAg ICAgICBMb2coIkNvdWxkIG5vdCBjb3B5IHBhcmFtZXRlcnMgZnJvbSBjb2RlYyBjb250ZXh0OiAl ZFxuIiwgcmV0KTsKKysgICAgICAgIHJldHVybjsKKysgICAgfQorKyNlbmRpZgorKworICNpZiBM SUJBVkNPREVDX1ZFUlNJT05fTUFKT1IgPj0gNTQKKyAgICAgaWYgKGdfcEFDb2RlYy0+Y2FwYWJp bGl0aWVzICYgQVZfQ09ERUNfQ0FQX1ZBUklBQkxFX0ZSQU1FX1NJWkUpCisgI2Vsc2UKK0BAIC0y MjEsMTMgKzI5OSw0NiBAQCBzdGF0aWMgdm9pZCBBZGRBdWRpb1N0cmVhbSgpCisgICAgICAgICBn X051bVNhbXBsZXMgPSA0MDk2OworICAgICBlbHNlCisgICAgICAgICBnX051bVNhbXBsZXMgPSBn X3BBdWRpby0+ZnJhbWVfc2l6ZTsKKy0gICAgZ19wU2FtcGxlcyA9IChpbnQxNl90Kilhdl9tYWxs b2MoZ19OdW1TYW1wbGVzKmdfQ2hhbm5lbHMqc2l6ZW9mKGludDE2X3QpKTsKKyAgICAgZ19wQUZy YW1lID0gYXZfZnJhbWVfYWxsb2MoKTsKKyAgICAgaWYgKCFnX3BBRnJhbWUpCisgICAgIHsKKyAg ICAgICAgIExvZygiQ291bGQgbm90IGFsbG9jYXRlIGZyYW1lXG4iKTsKKyAgICAgICAgIHJldHVy bjsKKyAgICAgfQorKyNpZiBMSUJBVlVUSUxfVkVSU0lPTl9NQUpPUiA+PSA1MworKyNpZiBMSUJB VkNPREVDX1ZFUlNJT05fTUFKT1IgPj0gNjAKKysgICAgcmV0ID0gYXZfY2hhbm5lbF9sYXlvdXRf Y29weSgmZ19wQUZyYW1lLT5jaF9sYXlvdXQsICZnX3BBdWRpby0+Y2hfbGF5b3V0KTsKKysgICAg aWYgKHJldCAhPSAwKQorKyAgICB7CisrICAgICAgICBMb2coIkNoYW5uZWwgbGF5b3V0IGNvcHkg Zm9yIGZyYW1lIGZhaWxlZDogJWRcbiIsIHJldCk7CisrICAgICAgICByZXR1cm47CisrICAgIH0K KysjZWxzZQorKyAgICBnX3BBRnJhbWUtPmNoYW5uZWxzID0gZ19wQXVkaW8tPmNoYW5uZWxzOwor KyNlbmRpZgorKyAgICBnX3BBRnJhbWUtPmZvcm1hdCA9IGdfcEF1ZGlvLT5zYW1wbGVfZm10Owor KyAgICBnX3BBRnJhbWUtPnNhbXBsZV9yYXRlID0gZ19wQXVkaW8tPnNhbXBsZV9yYXRlOworKyAg ICBnX3BBRnJhbWUtPm5iX3NhbXBsZXMgPSBnX051bVNhbXBsZXM7CisrICAgIHJldCA9IGF2X2Zy YW1lX2dldF9idWZmZXIoZ19wQUZyYW1lLCAxKTsKKysgICAgaWYgKHJldCA8IDApCisrICAgIHsK KysgICAgICAgIExvZygiRmFpbGVkIHRvIGFsbG9jYXRlIGZyYW1lIGJ1ZmZlcjogJWRcbiIsIHJl dCk7CisrICAgICAgICByZXR1cm47CisrICAgIH0KKysjZWxzZQorKyAgICBnX3BTYW1wbGVzID0g KGludDE2X3QqKWF2X21hbGxvYyhnX051bVNhbXBsZXMqZ19DaGFubmVscypzaXplb2YoaW50MTZf dCkpOworKyNlbmRpZgorKyNpZiBMSUJBVkNPREVDX1ZFUlNJT05fTUFKT1IgPj0gNTgKKysgICAg Z19wQVBhY2tldCA9IGF2X3BhY2tldF9hbGxvYygpOworKyAgICBpZiAoIWdfcEFQYWNrZXQpCisr ICAgIHsKKysgICAgICAgIExvZygiQ291bGQgbm90IGFsbG9jYXRlIGF1ZGlvIHBhY2tldFxuIik7 CisrICAgICAgICByZXR1cm47CisrICAgIH0KKysjZW5kaWYKKysjaWYgTElCQVZDT0RFQ19WRVJT SU9OX01BSk9SID49IDUzCisrICAgIGdfTmV4dEF1ZGlvUHRzID0gMDsKKysjZW5kaWYKKyB9Cisg CisgLy8gcmV0dXJucyBub24temVybyBpZiB0aGVyZSBpcyBtb3JlIHNvdW5kLCAtMSBpbiBjYXNl IG9mIGVycm9yCitAQCAtMjM2LDIyICszNDcsNDYgQEAgc3RhdGljIGludCBXcml0ZUF1ZGlvRnJh bWUoKQorICAgICBpZiAoIWdfcEFTdHJlYW0pCisgICAgICAgICByZXR1cm4gMDsKKyAKKy0gICAg QVZQYWNrZXQgUGFja2V0OworLSAgICBhdl9pbml0X3BhY2tldCgmUGFja2V0KTsKKy0gICAgUGFj a2V0LmRhdGEgPSBOVUxMOworLSAgICBQYWNrZXQuc2l6ZSA9IDA7CisrICAgIGludCByZXQ7Cisr ICAgIGludDE2X3QqIHBEYXRhOworKyNpZiBMSUJBVlVUSUxfVkVSU0lPTl9NQUpPUiA+PSA1Mwor KyAgICByZXQgPSBhdl9mcmFtZV9tYWtlX3dyaXRhYmxlKGdfcEFGcmFtZSk7CisrICAgIGlmIChy ZXQgPCAwKQorKyAgICAgICAgcmV0dXJuIEZhdGFsRXJyb3IoIkNvdWxkIG5vdCBtYWtlIGF1ZGlv IGZyYW1lIHdyaXRhYmxlOiAlZCIsIHJldCk7CisrICAgIHBEYXRhID0gKGludDE2X3QqKSBnX3BB RnJhbWUtPmRhdGFbMF07CisrI2Vsc2UKKysgICAgcERhdGEgPSBnX3BTYW1wbGVzOworKyNlbmRp ZgorIAorLSAgICBpbnQgTnVtU2FtcGxlcyA9IGZyZWFkKGdfcFNhbXBsZXMsIDIqZ19DaGFubmVs cywgZ19OdW1TYW1wbGVzLCBnX3BTb3VuZEZpbGUpOworKyAgICBpbnQgTnVtU2FtcGxlcyA9IGZy ZWFkKHBEYXRhLCAyKmdfQ2hhbm5lbHMsIGdfTnVtU2FtcGxlcywgZ19wU291bmRGaWxlKTsKKyAK KyAjaWYgTElCQVZDT0RFQ19WRVJTSU9OX01BSk9SID49IDUzCisgICAgIEFWRnJhbWUqIHBGcmFt ZSA9IE5VTEw7CisgICAgIGlmIChOdW1TYW1wbGVzID4gMCkKKyAgICAgeworICAgICAgICAgZ19w QUZyYW1lLT5uYl9zYW1wbGVzID0gTnVtU2FtcGxlczsKKysgICAgICAgIGdfcEFGcmFtZS0+cHRz ID0gZ19OZXh0QXVkaW9QdHM7CisrICAgICAgICBnX05leHRBdWRpb1B0cyArPSBOdW1TYW1wbGVz OworKyNpZiBMSUJBVlVUSUxfVkVSU0lPTl9NQUpPUiA8IDUzCisgICAgICAgICBhdmNvZGVjX2Zp bGxfYXVkaW9fZnJhbWUoZ19wQUZyYW1lLCBnX0NoYW5uZWxzLCBBVl9TQU1QTEVfRk1UX1MxNiwK Ky0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCopZ19wU2FtcGxlcywg TnVtU2FtcGxlcyoyKmdfQ2hhbm5lbHMsIDEpOworKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICh1aW50OF90KilwRGF0YSwgTnVtU2FtcGxlcyoyKmdfQ2hhbm5lbHMsIDEpOworKyNl bmRpZgorICAgICAgICAgcEZyYW1lID0gZ19wQUZyYW1lOworICAgICB9CisrI2VuZGlmCisrCisr I2lmIExJQkFWQ09ERUNfVkVSU0lPTl9NQUpPUiA+PSA1OAorKyAgICByZXQgPSBFbmNvZGVBbmRX cml0ZUZyYW1lKGdfcEFTdHJlYW0sIGdfcEF1ZGlvLCBwRnJhbWUsIGdfcEFQYWNrZXQpOworKyAg ICBpZiAocmV0IDwgMCkKKysgICAgICAgIHJldHVybiBGYXRhbEVycm9yKCJBdWRpbyBmcmFtZSBw cm9jZXNzaW5nIGZhaWxlZCIpOworKyAgICByZXR1cm4gcmV0OworKyNlbHNlCisrICAgIEFWUGFj a2V0IFBhY2tldDsKKysgICAgYXZfaW5pdF9wYWNrZXQoJlBhY2tldCk7CisrICAgIFBhY2tldC5k YXRhID0gTlVMTDsKKysgICAgUGFja2V0LnNpemUgPSAwOworKworKyNpZiBMSUJBVkNPREVDX1ZF UlNJT05fTUFKT1IgPj0gNTMKKyAgICAgLy8gd2hlbiBOdW1TYW1wbGVzID09IDAgd2Ugc3RpbGwg bmVlZCB0byBjYWxsIGVuY29kZV9hdWRpbzIgdG8gZmx1c2gKKyAgICAgaW50IGdvdF9wYWNrZXQ7 CisgICAgIGlmIChhdmNvZGVjX2VuY29kZV9hdWRpbzIoZ19wQXVkaW8sICZQYWNrZXQsIHBGcmFt ZSwgJmdvdF9wYWNrZXQpICE9IDApCitAQCAtMjY2LDcgKzQwMSw3IEBAIHN0YXRpYyBpbnQgV3Jp dGVBdWRpb0ZyYW1lKCkKKyAgICAgaW50IEJ1ZmZlclNpemUgPSBPVVRCVUZGRVJfU0laRTsKKyAg ICAgaWYgKGdfcEF1ZGlvLT5mcmFtZV9zaXplID09IDApCisgICAgICAgICBCdWZmZXJTaXplID0g TnVtU2FtcGxlcypnX0NoYW5uZWxzKjI7CistICAgIFBhY2tldC5zaXplID0gYXZjb2RlY19lbmNv ZGVfYXVkaW8oZ19wQXVkaW8sIGdfT3V0QnVmZmVyLCBCdWZmZXJTaXplLCBnX3BTYW1wbGVzKTsK KysgICAgUGFja2V0LnNpemUgPSBhdmNvZGVjX2VuY29kZV9hdWRpbyhnX3BBdWRpbywgZ19PdXRC dWZmZXIsIEJ1ZmZlclNpemUsIHBEYXRhKTsKKyAgICAgaWYgKFBhY2tldC5zaXplID09IDApCisg ICAgICAgICByZXR1cm4gMTsKKyAgICAgaWYgKGdfcEF1ZGlvLT5jb2RlZF9mcmFtZSAmJiBnX3BB dWRpby0+Y29kZWRfZnJhbWUtPnB0cyAhPSBBVl9OT1BUU19WQUxVRSkKK0BAIC0yODAsMjUgKzQx NSwyNSBAQCBzdGF0aWMgaW50IFdyaXRlQXVkaW9GcmFtZSgpCisgICAgIGlmIChhdl9pbnRlcmxl YXZlZF93cml0ZV9mcmFtZShnX3BDb250YWluZXIsICZQYWNrZXQpICE9IDApCisgICAgICAgICBy ZXR1cm4gRmF0YWxFcnJvcigiRXJyb3Igd2hpbGUgd3JpdGluZyBhdWRpbyBmcmFtZSIpOworICAg ICByZXR1cm4gMTsKKysjZW5kaWYKKyB9CisgCisgLy8gYWRkIGEgdmlkZW8gb3V0cHV0IHN0cmVh bQorIHN0YXRpYyBpbnQgQWRkVmlkZW9TdHJlYW0oKQorIHsKKysgICAgaW50IHJldDsKKyAgICAg Z19wVlN0cmVhbSA9IGF2Zm9ybWF0X25ld19zdHJlYW0oZ19wQ29udGFpbmVyLCBnX3BWQ29kZWMp OworICAgICBpZiAoIWdfcFZTdHJlYW0pCisgICAgICAgICByZXR1cm4gRmF0YWxFcnJvcigiQ291 bGQgbm90IGFsbG9jYXRlIHZpZGVvIHN0cmVhbSIpOworIAorICNpZiBMSUJBVkNPREVDX1ZFUlNJ T05fTUFKT1IgPj0gNTkKKy0gICAgY29uc3QgQVZDb2RlYyAqdmlkZW9fc3RfY29kZWMgPSBhdmNv ZGVjX2ZpbmRfZGVjb2RlcihnX3BWU3RyZWFtLT5jb2RlY3Bhci0+Y29kZWNfaWQpOworLSAgICBn X3BWaWRlbyA9IGF2Y29kZWNfYWxsb2NfY29udGV4dDModmlkZW9fc3RfY29kZWMpOworLSAgICBh dmNvZGVjX3BhcmFtZXRlcnNfdG9fY29udGV4dChnX3BWaWRlbywgZ19wVlN0cmVhbS0+Y29kZWNw YXIpOworKyAgICBnX3BWaWRlbyA9IGF2Y29kZWNfYWxsb2NfY29udGV4dDMoZ19wVkNvZGVjKTsK KyAjZWxzZQorICAgICBnX3BWaWRlbyA9IGdfcFZTdHJlYW0tPmNvZGVjOworLSNlbmRpZgorIAor ICAgICBhdmNvZGVjX2dldF9jb250ZXh0X2RlZmF1bHRzMyhnX3BWaWRlbywgZ19wVkNvZGVjKTsK KyAgICAgZ19wVmlkZW8tPmNvZGVjX2lkID0gZ19wVkNvZGVjLT5pZDsKKysjZW5kaWYKKyAKKyAg ICAgLy8gcHV0IHBhcmFtZXRlcnMKKyAgICAgLy8gcmVzb2x1dGlvbiBtdXN0IGJlIGEgbXVsdGlw bGUgb2YgdHdvCitAQCAtMzYxLDYgKzQ5NiwxMiBAQCBzdGF0aWMgaW50IEFkZFZpZGVvU3RyZWFt KCkKKyAgICAgaWYgKGF2Y29kZWNfb3BlbjIoZ19wVmlkZW8sIGdfcFZDb2RlYywgTlVMTCkgPCAw KQorICAgICAgICAgcmV0dXJuIEZhdGFsRXJyb3IoIkNvdWxkIG5vdCBvcGVuIHZpZGVvIGNvZGVj ICVzIiwgZ19wVkNvZGVjLT5sb25nX25hbWUpOworIAorKyNpZiBMSUJBVkNPREVDX1ZFUlNJT05f TUFKT1IgPj0gNTgKKysgICAgcmV0ID0gYXZjb2RlY19wYXJhbWV0ZXJzX2Zyb21fY29udGV4dChn X3BWU3RyZWFtLT5jb2RlY3BhciwgZ19wVmlkZW8pOworKyAgICBpZiAocmV0IDwgMCkKKysgICAg ICAgIHJldHVybiBGYXRhbEVycm9yKCJDb3VsZCBub3QgY29weSBwYXJhbWV0ZXJzIGZyb20gY29k ZWMgY29udGV4dDogJWQiLCByZXQpOworKyNlbmRpZgorKworICAgICBnX3BWRnJhbWUgPSBhdl9m cmFtZV9hbGxvYygpOworICAgICBpZiAoIWdfcFZGcmFtZSkKKyAgICAgICAgIHJldHVybiBGYXRh bEVycm9yKCJDb3VsZCBub3QgYWxsb2NhdGUgZnJhbWUiKTsKK0BAIC0zNzAsNiArNTExLDEyIEBA IHN0YXRpYyBpbnQgQWRkVmlkZW9TdHJlYW0oKQorICAgICBnX3BWRnJhbWUtPmhlaWdodCA9IGdf SGVpZ2h0OworICAgICBnX3BWRnJhbWUtPmZvcm1hdCA9IEFWX1BJWF9GTVRfWVVWNDIwUDsKKyAK KysjaWYgTElCQVZDT0RFQ19WRVJTSU9OX01BSk9SID49IDU4CisrICAgIGdfcFZQYWNrZXQgPSBh dl9wYWNrZXRfYWxsb2MoKTsKKysgICAgaWYgKCFnX3BWUGFja2V0KQorKyAgICAgICAgcmV0dXJu IEZhdGFsRXJyb3IoIkNvdWxkIG5vdCBhbGxvY2F0ZSBwYWNrZXQiKTsKKysjZW5kaWYKKysKKyAg ICAgcmV0dXJuIGF2Y29kZWNfZGVmYXVsdF9nZXRfYnVmZmVyMihnX3BWaWRlbywgZ19wVkZyYW1l LCAwKTsKKyB9CisgCitAQCAtMzgwLDYgKzUyNywxMCBAQCBzdGF0aWMgaW50IFdyaXRlRnJhbWUo QVZGcmFtZSogcEZyYW1lKQorICAgICAvLyB3cml0ZSBpbnRlcmxlYXZlZCBhdWRpbyBmcmFtZQor ICAgICBpZiAoZ19wQVN0cmVhbSkKKyAgICAgeworKyNpZiBMSUJBVkNPREVDX1ZFUlNJT05fTUFK T1IgPj0gNTgKKysgICAgICAgIGlmICghZ19wQVBhY2tldCkKKysgICAgICAgICAgICByZXR1cm4g RmF0YWxFcnJvcigiRXJyb3Igd2hpbGUgd3JpdGluZyB2aWRlbyBmcmFtZTogZ19wQVBhY2tldCBk b2VzIG5vdCBleGlzdCIpOworKyNlbmRpZgorICAgICAgICAgVmlkZW9UaW1lID0gKGRvdWJsZSln X3BWRnJhbWUtPnB0cyAqIGdfcFZTdHJlYW0tPnRpbWVfYmFzZS5udW0vZ19wVlN0cmVhbS0+dGlt ZV9iYXNlLmRlbjsKKyAgICAgICAgIGRvCisgICAgICAgICB7CitAQCAtMzg4LDcgKzUzOSw3IEBA IHN0YXRpYyBpbnQgV3JpdGVGcmFtZShBVkZyYW1lKiBwRnJhbWUpCisgICAgICAgICAgICAgQXVk aW9UaW1lID0gKGRvdWJsZSlnX3BBRnJhbWUtPnB0cyAqIGdfcEFTdHJlYW0tPnRpbWVfYmFzZS5u dW0vZ19wQVN0cmVhbS0+dGltZV9iYXNlLmRlbjsKKyAgICAgICAgICAgICByZXQgPSBXcml0ZUF1 ZGlvRnJhbWUoKTsKKyAgICAgICAgIH0KKy0gICAgICAgIHdoaWxlIChBdWRpb1RpbWUgPCBWaWRl b1RpbWUgJiYgcmV0KTsKKysgICAgICAgIHdoaWxlIChBdWRpb1RpbWUgPCBWaWRlb1RpbWUgJiYg cmV0ID4gMCk7CisgICAgICAgICBpZiAocmV0IDwgMCkKKyAgICAgICAgICAgICByZXR1cm4gcmV0 OworICAgICB9CitAQCAtMzk2LDEzICs1NDcsMTggQEAgc3RhdGljIGludCBXcml0ZUZyYW1lKEFW RnJhbWUqIHBGcmFtZSkKKyAgICAgaWYgKCFnX3BWU3RyZWFtKQorICAgICAgICAgcmV0dXJuIDA7 CisgCisrICAgIGdfcFZGcmFtZS0+cHRzKys7CisrI2lmIExJQkFWQ09ERUNfVkVSU0lPTl9NQUpP UiA+PSA1OAorKyAgICByZXQgPSBFbmNvZGVBbmRXcml0ZUZyYW1lKGdfcFZTdHJlYW0sIGdfcFZp ZGVvLCBwRnJhbWUsIGdfcFZQYWNrZXQpOworKyAgICBpZiAocmV0IDwgMCkKKysgICAgICAgIHJl dHVybiBGYXRhbEVycm9yKCJWaWRlbyBmcmFtZSBwcm9jZXNzaW5nIGZhaWxlZCIpOworKyAgICBy ZXR1cm4gcmV0OworKyNlbHNlCisgICAgIEFWUGFja2V0IFBhY2tldDsKKyAgICAgYXZfaW5pdF9w YWNrZXQoJlBhY2tldCk7CisgICAgIFBhY2tldC5kYXRhID0gTlVMTDsKKyAgICAgUGFja2V0LnNp emUgPSAwOworIAorLSAgICBnX3BWRnJhbWUtPnB0cysrOworLSNpZiBMSUJBVkNPREVDX1ZFUlNJ T05fTUFKT1IgPCA1OAorICAgICBpZiAoZ19wRm9ybWF0LT5mbGFncyAmIEFWRk1UX1JBV1BJQ1RV UkUpCisgICAgIHsKKyAgICAgICAgIC8qIHJhdyB2aWRlbyBjYXNlLiBUaGUgQVBJIHdpbGwgY2hh bmdlIHNsaWdodGx5IGluIHRoZSBuZWFyCitAQCAtNDE3LDcgKzU3Myw2IEBAIHN0YXRpYyBpbnQg V3JpdGVGcmFtZShBVkZyYW1lKiBwRnJhbWUpCisgICAgICAgICByZXR1cm4gMDsKKyAgICAgfQor ICAgICBlbHNlCistI2VuZGlmCisgICAgIHsKKyAjaWYgTElCQVZDT0RFQ19WRVJTSU9OX01BSk9S ID49IDU0CisgICAgICAgICBpbnQgZ290X3BhY2tldDsKK0BAIC00NDcsNiArNjAyLDcgQEAgc3Rh dGljIGludCBXcml0ZUZyYW1lKEFWRnJhbWUqIHBGcmFtZSkKKyAKKyAgICAgICAgIHJldHVybiAx OworICAgICB9CisrI2VuZGlmCisgfQorIAorIEFWV1JBUF9ERUNMIGludCBBVldyYXBwZXJfV3Jp dGVGcmFtZSh1aW50OF90ICpidWYpCitAQCAtNTM5LDkgKzY5NSwxMyBAQCBBVldSQVBfREVDTCBp bnQgQVZXcmFwcGVyX0luaXQoCisgICAgIGNoYXIgZXh0WzE2XTsKKyAgICAgc3RybmNweShleHQs IGdfcEZvcm1hdC0+ZXh0ZW5zaW9ucywgMTYpOworICAgICBleHRbMTVdID0gMDsKKy0gICAgZXh0 W3N0cmNzcG4oZXh0LCIsIildID0gMDsKKysgICAgc2l6ZV90IGV4dExlbiA9IHN0cmNzcG4oZXh0 LCAiLCIpOworKyAgICBleHRbZXh0TGVuXSA9IDA7CisgI2lmIExJQkFWQ09ERUNfVkVSU0lPTl9N QUpPUiA+PSA1OQorLSAgICBzbnByaW50ZihnX3BDb250YWluZXItPnVybCwgc2l6ZW9mKGdfcENv bnRhaW5lci0+dXJsKSwgIiVzLiVzIiwgcEZpbGVuYW1lLCBleHQpOworKyAgICAvLyBwRmlsZW5h bWUgKyBkb3QgKyBleHQgKyBudWxsIGJ5dGUKKysgICAgc2l6ZV90IHVybExlbiA9IHN0cmxlbihw RmlsZW5hbWUpICsgMSArIGV4dExlbiArIDE7CisrICAgIGdfcENvbnRhaW5lci0+dXJsID0gYXZf bWFsbG9jKHVybExlbik7CisrICAgIHNucHJpbnRmKGdfcENvbnRhaW5lci0+dXJsLCB1cmxMZW4s ICIlcy4lcyIsIHBGaWxlbmFtZSwgZXh0KTsKKyAjZWxzZQorICAgICBzbnByaW50ZihnX3BDb250 YWluZXItPmZpbGVuYW1lLCBzaXplb2YoZ19wQ29udGFpbmVyLT5maWxlbmFtZSksICIlcy4lcyIs IHBGaWxlbmFtZSwgZXh0KTsKKyAjZW5kaWYKK0BAIC02MzYsMjEgKzc5NiwzMyBAQCBBVldSQVBf REVDTCBpbnQgQVZXcmFwcGVyX0Nsb3NlKCkKKyAgICAgLy8gZnJlZSBldmVyeXRoaW5nCisgICAg IGlmIChnX3BWU3RyZWFtKQorICAgICB7CistICAgICAgICBhdmNvZGVjX2Nsb3NlKGdfcFZpZGVv KTsKKy0gICAgICAgIGF2X2ZyZWUoZ19wVmlkZW8pOworLSAgICAgICAgYXZfZnJlZShnX3BWU3Ry ZWFtKTsKKysgICAgICAgIGF2Y29kZWNfZnJlZV9jb250ZXh0KCZnX3BWaWRlbyk7CisgICAgICAg ICBhdl9mcmFtZV9mcmVlKCZnX3BWRnJhbWUpOworKyNpZiBMSUJBVkNPREVDX1ZFUlNJT05fTUFK T1IgPj0gNTgKKysgICAgICAgIGF2X3BhY2tldF9mcmVlKCZnX3BWUGFja2V0KTsKKysjZW5kaWYK KyAgICAgfQorICAgICBpZiAoZ19wQVN0cmVhbSkKKyAgICAgeworLSAgICAgICAgYXZjb2RlY19j bG9zZShnX3BBdWRpbyk7CistICAgICAgICBhdl9mcmVlKGdfcEF1ZGlvKTsKKy0gICAgICAgIGF2 X2ZyZWUoZ19wQVN0cmVhbSk7CisrICAgICAgICBhdmNvZGVjX2ZyZWVfY29udGV4dCgmZ19wQXVk aW8pOworICAgICAgICAgYXZfZnJhbWVfZnJlZSgmZ19wQUZyYW1lKTsKKysjaWYgTElCQVZDT0RF Q19WRVJTSU9OX01BSk9SID49IDU4CisrICAgICAgICBhdl9wYWNrZXRfZnJlZSgmZ19wQVBhY2tl dCk7CisrI2VuZGlmCisrI2lmIExJQkFWVVRJTF9WRVJTSU9OX01BSk9SIDwgNTMKKyAgICAgICAg IGF2X2ZyZWUoZ19wU2FtcGxlcyk7CisrI2VuZGlmCisgICAgICAgICBmY2xvc2UoZ19wU291bmRG aWxlKTsKKyAgICAgfQorIAorKyNpZiBMSUJBVkNPREVDX1ZFUlNJT05fTUFKT1IgPj0gNTkKKysg ICAgYXZmb3JtYXRfZnJlZV9jb250ZXh0KGdfcENvbnRhaW5lcik7CisrI2Vsc2UKKysgICAgaWYg KGdfcFZTdHJlYW0pCisrICAgICAgICBhdl9mcmVlKGdfcFZTdHJlYW0pOworKyAgICBpZiAoZ19w QVN0cmVhbSkKKysgICAgICAgIGF2X2ZyZWUoZ19wQVN0cmVhbSk7CisgICAgIGF2X2ZyZWUoZ19w Q29udGFpbmVyKTsKKysjZW5kaWYKKyAgICAgcmV0dXJuIDA7CisgfQorLS0gCisyLjQ1LjIKKwpk aWZmIC0tZ2l0IGEvc3JjcGtncy9oZWRnZXdhcnMvdGVtcGxhdGUgYi9zcmNwa2dzL2hlZGdld2Fy cy90ZW1wbGF0ZQppbmRleCA4ZGQwZTQyNTJjYThjNS4uODVlYjljZGM5NDNkYjQgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvaGVkZ2V3YXJzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvaGVkZ2V3YXJzL3Rl bXBsYXRlCkBAIC0xLDEzICsxLDEzIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdoZWRnZXdhcnMn CiBwa2duYW1lPWhlZGdld2FycwogdmVyc2lvbj0xLjAuMgotcmV2aXNpb249MQorcmV2aXNpb249 MgogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItRE5PU0VSVkVSPTEgLUREQVRB X0lOU1RBTExfRElSPS91c3Ivc2hhcmUvJHtwa2duYW1lfQogIC1EUEhZU0ZTX1NZU1RFTT0xIC1E TUlOSU1BTF9GTEFHUz0xIgogbWFrZV9jbWQ9bWFrZQogaG9zdG1ha2VkZXBlbmRzPSJsdWE1MSBw a2ctY29uZmlnIHF0NS1xbWFrZSBxdDUtaG9zdC10b29scyIKLW1ha2VkZXBlbmRzPSJmZm1wZWct ZGV2ZWwgbHVhNTEtZGV2ZWwgcGh5c2ZzLWRldmVsIHF0NS10b29scy1kZXZlbCBTREwyX2ltYWdl LWRldmVsCittYWtlZGVwZW5kcz0iZmZtcGVnNi1kZXZlbCBsdWE1MS1kZXZlbCBwaHlzZnMtZGV2 ZWwgcXQ1LXRvb2xzLWRldmVsIFNETDJfaW1hZ2UtZGV2ZWwKICBTREwyX21peGVyLWRldmVsIFNE TDJfbmV0LWRldmVsIFNETDJfdHRmLWRldmVsIgogZGVwZW5kcz0ibGliZnJlZWdsdXQiCiBzaG9y dF9kZXNjPSJGdW5ueSB0dXJuLWJhc2VkIGFydGlsbGVyeSBnYW1lLCBmZWF0dXJpbmcgZmlnaHRp bmcgSGVkZ2Vob2dzISIKCkZyb20gZTJkMWY0NTZiYTc4NmVhYjhiYTg0ODI4MzQ2ZDlhMzI5MmRh NTcwNCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWls LmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0OCAtMDQwMApTdWJqZWN0OiBbUEFU Q0ggMzcvODldIGtpZDM6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9raWQzL3Bh dGNoZXMvZmZtcGVnNS5wYXRjaCB8IDE3ICsrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2tpZDMv dGVtcGxhdGUgICAgICAgICAgICAgIHwgIDIgKy0KIDIgZmlsZXMgY2hhbmdlZCwgMTggaW5zZXJ0 aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mva2lkMy9w YXRjaGVzL2ZmbXBlZzUucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2tpZDMvcGF0Y2hlcy9m Zm1wZWc1LnBhdGNoIGIvc3JjcGtncy9raWQzL3BhdGNoZXMvZmZtcGVnNS5wYXRjaApuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uMTM1ZmM1MGUwN2M5YmEKLS0tIC9k ZXYvbnVsbAorKysgYi9zcmNwa2dzL2tpZDMvcGF0Y2hlcy9mZm1wZWc1LnBhdGNoCkBAIC0wLDAg KzEsMTcgQEAKKyMgaHR0cHM6Ly9hdXIuYXJjaGxpbnV4Lm9yZy9jZ2l0L2F1ci5naXQvZGlmZi9m Zm1wZWc1LnBhdGNoP2g9a2lkMy1jbGkmaWQ9MTI0MTBhNzQ5MDY2MTJlN2VmYzBlYzhmYmNlNzM5 YjRhMGZlZjdlNworZGlmZiAtLWdpdCBhL3NyYy9wbHVnaW5zL2Fjb3VzdGlkaW1wb3J0L2ZmbXBl Z2ZpbmdlcnByaW50ZGVjb2Rlci5jcHAgYi9zcmMvcGx1Z2lucy9hY291c3RpZGltcG9ydC9mZm1w ZWdmaW5nZXJwcmludGRlY29kZXIuY3BwCitpbmRleCBlMTU2ZDQyNC4uZTEyYjlhYmQgMTAwNjQ0 CistLS0gYS9zcmMvcGx1Z2lucy9hY291c3RpZGltcG9ydC9mZm1wZWdmaW5nZXJwcmludGRlY29k ZXIuY3BwCisrKysgYi9zcmMvcGx1Z2lucy9hY291c3RpZGltcG9ydC9mZm1wZWdmaW5nZXJwcmlu dGRlY29kZXIuY3BwCitAQCAtMjMyLDcgKzIzMiwxMSBAQCBwcml2YXRlOgorICAgZnJpZW5kIGNs YXNzIEZvcm1hdDsKKyAgIGZyaWVuZCBjbGFzcyBDb252ZXJ0ZXI7CisgICBBVkNvZGVjQ29udGV4 dCogbV9wdHI7CisrI2lmIExJQkFWQ09ERUNfVkVSU0lPTl9JTlQgPCBBVl9WRVJTSU9OX0lOVCg1 OSwgMCwgMCkKKyAgIEFWQ29kZWMqIG1faW1wbDsKKysjZWxzZQorKyAgY29uc3QgQVZDb2RlYyog bV9pbXBsOworKyNlbmRpZgorICAgQVZGcmFtZSogbV9mcmFtZTsKKyAgIGJvb2wgbV9vcGVuZWQ7 CisgfTsKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mva2lkMy90ZW1wbGF0ZSBiL3NyY3BrZ3Mva2lkMy90 ZW1wbGF0ZQppbmRleCBmMzJmOWRlY2IwZTdmNi4uODY5ZmRlZDU5NzU1NWMgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3Mva2lkMy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2tpZDMvdGVtcGxhdGUKQEAgLTEx LDcgKzExLDcgQEAgY29uZmlndXJlX2FyZ3M9Ii1EV0lUSF9BUFBTPSdDTEk7JCh2b3B0X2lmIEtE RSBLREUgUXQpJwogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIHB5dGhvbjMgbGlieHNsdCAk KHZvcHRfaWYgS0RFIGV4dHJhLWNtYWtlLW1vZHVsZXMpIgogbWFrZWRlcGVuZHM9InF0NS1kZWNs YXJhdGl2ZS1kZXZlbCBxdDUtbXVsdGltZWRpYS1kZXZlbCBxdDUtdG9vbHMtZGV2ZWwgZG9jYm9v ay14c2wKICByZWFkbGluZS1kZXZlbCAkKHZvcHRfaWYgS0RFIGtpby1kZXZlbCkgJCh2b3B0X2lm IHZvcmJpcyBsaWJ2b3JiaXMtZGV2ZWwpCi0gJCh2b3B0X2lmIG1wNCBsaWJtcDR2Mi1kZXZlbCkg JCh2b3B0X2lmIGNocm9tYXByaW50ICdjaHJvbWFwcmludC1kZXZlbCBmZm1wZWctZGV2ZWwnKQor ICQodm9wdF9pZiBtcDQgbGlibXA0djItZGV2ZWwpICQodm9wdF9pZiBjaHJvbWFwcmludCAnY2hy b21hcHJpbnQtZGV2ZWwgZmZtcGVnNi1kZXZlbCcpCiAgJCh2b3B0X2lmIG1wMyBpZDNsaWItZGV2 ZWwpICQodm9wdF9pZiBmbGFjIGxpYmZsYWMtZGV2ZWwpICQodm9wdF9pZiB0YWdsaWIgdGFnbGli LWRldmVsKSIKIGRlcGVuZHM9ImRlc2t0b3AtZmlsZS11dGlscyBoaWNvbG9yLWljb24tdGhlbWUi CiBzaG9ydF9kZXNjPSJNUDMsIE9nZy9Wb3JiaXMgYW5kIEZMQUMgdGFnIGVkaXRvciIKCkZyb20g ZGNmZTYxOWNmMjZiMzRlMmRkYzRkZjdiZmNkNWJlNGQ1NmE3MmM4OSBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBN YXIgMjAyMyAyMDowMTo0OCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMzgvODldIGtwaXBld2lyZTog cmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2twaXBld2lyZS90ZW1wbGF0ZSB8IDQg KystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2twaXBld2lyZS90ZW1wbGF0ZSBiL3NyY3BrZ3Mva3BpcGV3aXJl L3RlbXBsYXRlCmluZGV4IGJjNDFlZmU3YjFlMjUwLi41N2NmMzU2YTJlODRjNiAxMDA2NDQKLS0t IGEvc3JjcGtncy9rcGlwZXdpcmUvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9rcGlwZXdpcmUvdGVt cGxhdGUKQEAgLTEsMTMgKzEsMTMgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2twaXBld2lyZScK IHBrZ25hbWU9a3BpcGV3aXJlCiB2ZXJzaW9uPTYuMC41Ci1yZXZpc2lvbj0yCityZXZpc2lvbj0z CiBidWlsZF9zdHlsZT1jbWFrZQogYnVpbGRfaGVscGVyPXFlbXUKIGNvbmZpZ3VyZV9hcmdzPSIt REtERV9JTlNUQUxMX1FNTERJUj1saWIvcXQ2L3FtbCIKIGhvc3RtYWtlZGVwZW5kcz0iZXh0cmEt Y21ha2UtbW9kdWxlcyBnZXR0ZXh0IHF0Ni1iYXNlIHF0Ni10b29scyBwa2ctY29uZmlnCiAgcGlw ZXdpcmUgcXQ2LXdheWxhbmQtdG9vbHMgd2F5bGFuZC1kZXZlbCBxdDYtZGVjbGFyYXRpdmUtaG9z dC10b29scyIKLW1ha2VkZXBlbmRzPSJmZm1wZWctZGV2ZWwga2Y2LWtjb3JlYWRkb25zLWRldmVs IGtmNi1rd2F5bGFuZC1kZXZlbAorbWFrZWRlcGVuZHM9ImZmbXBlZzYtZGV2ZWwga2Y2LWtjb3Jl YWRkb25zLWRldmVsIGtmNi1rd2F5bGFuZC1kZXZlbAogIGtmNi1raTE4bi1kZXZlbCBsaWJ2YS1k ZXZlbCBsaWJlcG94eS1kZXZlbCBwaXBld2lyZS1kZXZlbCBxdDYtd2F5bGFuZC1kZXZlbAogIHdh eWxhbmQtZGV2ZWwgcXQ2LWRlY2xhcmF0aXZlLWRldmVsIHF0Ni1iYXNlLXByaXZhdGUtZGV2ZWwi CiBkZXBlbmRzPSJwaXBld2lyZSIKCkZyb20gOTA2ZWU1ZWYyNTc3MzBmZTVhMmU3YTkxYmYyOWRl NGIwYmEwM2Q5MCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1 QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0OCAtMDQwMApTdWJqZWN0 OiBbUEFUQ0ggMzkvODldIGxpYm9wZW5hbDogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNw a2dzL2xpYm9wZW5hbC90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0 aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYm9wZW5hbC90 ZW1wbGF0ZSBiL3NyY3BrZ3MvbGlib3BlbmFsL3RlbXBsYXRlCmluZGV4IDg4ZDBmMTEzMDdkODFh Li5jNDA1NzBhNzY5NDI3YSAxMDA2NDQKLS0tIGEvc3JjcGtncy9saWJvcGVuYWwvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9saWJvcGVuYWwvdGVtcGxhdGUKQEAgLTEsMTEgKzEsMTEgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ2xpYm9wZW5hbCcKIHBrZ25hbWU9bGlib3BlbmFsCiB2ZXJzaW9uPTEu MjMuMQotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3Vy ZV9hcmdzPSItREFMU09GVF9FWEFNUExFUz1PRkYiCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25m aWciCi1tYWtlZGVwZW5kcz0iemxpYi1kZXZlbCBhbHNhLWxpYi1kZXZlbCBwdWxzZWF1ZGlvLWRl dmVsIFNETDItZGV2ZWwgZmZtcGVnLWRldmVsCittYWtlZGVwZW5kcz0iemxpYi1kZXZlbCBhbHNh LWxpYi1kZXZlbCBwdWxzZWF1ZGlvLWRldmVsIFNETDItZGV2ZWwgZmZtcGVnNi1kZXZlbAogIGph Y2stZGV2ZWwgJCh2b3B0X2lmIHNuZGlvIHNuZGlvLWRldmVsKSIKIHNob3J0X2Rlc2M9IkNyb3Nz LXBsYXRmb3JtIDNEIGF1ZGlvIGxpYnJhcnkiCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFu QHZvaWRsaW51eC5vcmc+IgoKRnJvbSAzODgyODk4ZDBlODdjNmE5YmI3MzYzMGFiODQxY2NiZTM4 MzljMTI5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21h aWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ4IC0wNDAwClN1YmplY3Q6IFtQ QVRDSCA0MC84OV0gbG91ZGdhaW46IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9s b3VkZ2Fpbi9wYXRjaGVzL2ZmbXBlZzUucGF0Y2ggfCAxMSArKysrKysrKysrKwogc3JjcGtncy9s b3VkZ2Fpbi90ZW1wbGF0ZSAgICAgICAgICAgICAgfCAgNCArKy0tCiAyIGZpbGVzIGNoYW5nZWQs IDEzIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3Jj cGtncy9sb3VkZ2Fpbi9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dz L2xvdWRnYWluL3BhdGNoZXMvZmZtcGVnNS5wYXRjaCBiL3NyY3BrZ3MvbG91ZGdhaW4vcGF0Y2hl cy9mZm1wZWc1LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw Li4xNmQ0NTEwZWU5OGZhYQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbG91ZGdhaW4vcGF0 Y2hlcy9mZm1wZWc1LnBhdGNoCkBAIC0wLDAgKzEsMTEgQEAKKy0tLSBhL3NyYy9zY2FuLmMJMjAx OS0wOS0wNiAxMTozMToxOS4wMDAwMDAwMDAgLTA0MDAKKysrKyBiL3NyYy9zY2FuLmMJMjAyMy0w My0yMyAxMToxNTo0MC44Njc5Njg1MjEgLTA0MDAKK0BAIC02OSw4ICs2OSw2IEBACisgCSAqIEl0 IGlzIG5vdyB1c2VsZXNzCisgCSAqIGh0dHBzOi8vZ2l0aHViLmNvbS9GRm1wZWcvRkZtcGVnL2Js b2IvNzBkMjUyNjhjMjFjYmVlNWYwODMwNGRhOTViZTFmNjQ3YzYzMGMxNS9kb2MvQVBJY2hhbmdl cyNMODYKKyAJICovCistICBpZiAoYXZmb3JtYXRfdmVyc2lvbigpIDwgQVZfVkVSU0lPTl9JTlQo NTgsOSwxMDApKQorLSAgICBhdl9yZWdpc3Rlcl9hbGwoKTsKKyAKKyAJYXZfbG9nX3NldF9jYWxs YmFjayhzY2FuX2F2X2xvZyk7CisgCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xvdWRnYWluL3RlbXBs YXRlIGIvc3JjcGtncy9sb3VkZ2Fpbi90ZW1wbGF0ZQppbmRleCBkYTRmMmQ1NmU5NGMzZC4uOGQ2 YzZhZWI3NzI2MzYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbG91ZGdhaW4vdGVtcGxhdGUKKysrIGIv c3JjcGtncy9sb3VkZ2Fpbi90ZW1wbGF0ZQpAQCAtMSwxMCArMSwxMCBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnbG91ZGdhaW4nCiBwa2duYW1lPWxvdWRnYWluCiB2ZXJzaW9uPTAuNi44Ci1yZXZp c2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1jbWFrZQogaG9zdG1ha2VkZXBlbmRzPSJw a2ctY29uZmlnIgotbWFrZWRlcGVuZHM9ImxpYmVidXIxMjgtZGV2ZWwgdGFnbGliLWRldmVsIGZm bXBlZy1kZXZlbCIKK21ha2VkZXBlbmRzPSJsaWJlYnVyMTI4LWRldmVsIHRhZ2xpYi1kZXZlbCBm Zm1wZWc2LWRldmVsIgogc2hvcnRfZGVzYz0iUmVwbGF5R2FpbiAyLjAgbG91ZG5lc3Mgbm9ybWFs aXplciIKIG1haW50YWluZXI9IkthcnRpayBTaW5naCA8a2FydGlrLnlud2FAZ21haWwuY29tPiIK IGxpY2Vuc2U9IkJTRC0yLUNsYXVzZSIKCkZyb20gYjc4YzE2MDZhMWFlNDFlNDdjOWYxMmUzNWE3 OTUzNTFjZTUyMmMyYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNl NTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0OCAtMDQwMApTdWJq ZWN0OiBbUEFUQ0ggNDEvODldIG1nYmE6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtn cy9tZ2JhL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCsp LCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbWdiYS90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvbWdiYS90ZW1wbGF0ZQppbmRleCA2Y2Q2NTY1MDMxMjU0My4uYzJkMzljZDE3ZDg2YmMg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbWdiYS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL21nYmEvdGVt cGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ21nYmEnCiBwa2du YW1lPW1nYmEKIHZlcnNpb249MC4xMC4zCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9z dHlsZT1jbWFrZQogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIHF0NS1ob3N0LXRvb2xzIHF0 NS1xbWFrZSBkZXNrdG9wLWZpbGUtdXRpbHMiCi1tYWtlZGVwZW5kcz0iU0RMMi1kZXZlbCBmZm1w ZWctZGV2ZWwgbGliZWRpdC1kZXZlbCBsaWJlcG94eS1kZXZlbCBsaWJtYWdpY2stZGV2ZWwKK21h a2VkZXBlbmRzPSJTREwyLWRldmVsIGZmbXBlZzYtZGV2ZWwgbGliZWRpdC1kZXZlbCBsaWJlcG94 eS1kZXZlbCBsaWJtYWdpY2stZGV2ZWwKICBsaWJ6aXAtZGV2ZWwgcXQ1LW11bHRpbWVkaWEtZGV2 ZWwgcXQ1LXRvb2xzLWRldmVsIgogc2hvcnRfZGVzYz0iR2FtZSBCb3kgQWR2YW5jZSBlbXVsYXRv ciB3cml0dGVuIGluIEMiCiBtYWludGFpbmVyPSJmYW55eCA8ZmFueXhAcG9zdGVvLm5ldD4iCgpG cm9tIDEwZjU2YzM4YTIxYjk5NmM1ODRhY2M2ZDUzZGY4ZmRjYmE1ZTgzYWMgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwg MjIgTWFyIDIwMjMgMjA6MDE6NDkgLTA0MDAKU3ViamVjdDogW1BBVENIIDQyLzg5XSBtb3Rpb246 IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9tb3Rpb24vdGVtcGxhdGUgfCA0ICsr LS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9tb3Rpb24vdGVtcGxhdGUgYi9zcmNwa2dzL21vdGlvbi90ZW1wbGF0 ZQppbmRleCA2MDdlYmViM2M3YjI0Mi4uZTMzNGEzMmE4YjE4OTYgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvbW90aW9uL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbW90aW9uL3RlbXBsYXRlCkBAIC0xLDEw ICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdtb3Rpb24nCiBwa2duYW1lPW1vdGlvbgog dmVyc2lvbj00LjYuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNv bmZpZ3VyZQogaG9zdG1ha2VkZXBlbmRzPSJhdXRvbWFrZSBwa2ctY29uZmlnIGdldHRleHQtZGV2 ZWwgdGFyIgotbWFrZWRlcGVuZHM9ImZmbXBlZy1kZXZlbCBsaWJtaWNyb2h0dHBkLWRldmVsIHY0 bC11dGlscy1kZXZlbCBnZXR0ZXh0LWRldmVsIgorbWFrZWRlcGVuZHM9ImZmbXBlZzYtZGV2ZWwg bGlibWljcm9odHRwZC1kZXZlbCB2NGwtdXRpbHMtZGV2ZWwgZ2V0dGV4dC1kZXZlbCIKIHNob3J0 X2Rlc2M9IlNvZnR3YXJlIG1vdGlvbiBkZXRlY3RvciIKIG1haW50YWluZXI9IkFuZHJlYSBCcmFu Y2FsZW9uaSA8YWJjQHBvbXBlbC5tZT4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgoKRnJv bSA0YmZlNGVjOTIwNjg5MTRhZjQ0NmU2ZDI0YmZlZTg5NzIzM2JlNDM1IE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIy IE1hciAyMDIzIDIwOjAxOjUwIC0wNDAwClN1YmplY3Q6IFtQQVRDSCA0My84OV0gb3BlbnRvb256 OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3Mvb3BlbnRvb256L3RlbXBsYXRlIHwg MiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9vcGVudG9vbnovdGVtcGxhdGUgYi9zcmNwa2dzL29wZW50b29uei90 ZW1wbGF0ZQppbmRleCA4MTI0OGE3ZGZmYjFkNy4uYTYxNjkwOTA1YTUzYzQgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3Mvb3BlbnRvb256L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvb3BlbnRvb256L3RlbXBs YXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnb3BlbnRvb256JwogcGtn bmFtZT1vcGVudG9vbnoKIHZlcnNpb249MS43LjEKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1 aWxkX3dya3NyYz0idG9vbnovc291cmNlcyIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBtYWtlX2NtZD1t YWtlCgpGcm9tIDZhYjRjZDJjYTZjMTM5NjYzMDEwYTI5YTlkY2NmMjAzN2NmOWYxMjYgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6 IFN1biwgMTUgT2N0IDIwMjMgMjE6MTg6MTQgLTA0MDAKU3ViamVjdDogW1BBVENIIDQ0Lzg5XSBv cGVuc2hvdDogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL29wZW5zaG90L3RlbXBs YXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvb3BlbnNob3QvdGVtcGxhdGUgYi9zcmNwa2dzL29w ZW5zaG90L3RlbXBsYXRlCmluZGV4IDM4NDk4NThmZTk2M2I1Li4xM2Q5NDliYWU5MTA0OCAxMDA2 NDQKLS0tIGEvc3JjcGtncy9vcGVuc2hvdC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL29wZW5zaG90 L3RlbXBsYXRlCkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdvcGVuc2hv dCcKIHBrZ25hbWU9b3BlbnNob3QKIHZlcnNpb249My4xLjEKLXJldmlzaW9uPTEKK3JldmlzaW9u PTIKIGJ1aWxkX3N0eWxlPXB5dGhvbjMtbW9kdWxlCiBob3N0bWFrZWRlcGVuZHM9InB5dGhvbjMg cHl0aG9uMy1zZXR1cHRvb2xzIgotbWFrZWRlcGVuZHM9ImZmbXBlZy1kZXZlbCBweXRob24zLVB5 UXQ1IgorbWFrZWRlcGVuZHM9ImZmbXBlZzYtZGV2ZWwgcHl0aG9uMy1QeVF0NSIKIGRlcGVuZHM9 IkltYWdlTWFnaWNrIGxpYm9wZW5zaG90IHB5dGhvbjMtUHlRdDUtc3ZnCiAgcHl0aG9uMy1QeVF0 NS13ZWJraXQgcHl0aG9uMy1odHRwbGliMiBweXRob24zLXB5em1xIHB5dGhvbjMtcmVxdWVzdHMi CiBzaG9ydF9kZXNjPSJPcGVuLXNvdXJjZSwgbm9uLWxpbmVhciB2aWRlbyBlZGl0b3IgZm9yIExp bnV4IgoKRnJvbSBiNTU0YTMyYmU3N2IyOWI1NjQ3OWQ5NzIxZmJjMmRiOTZiYTQ2MDFlIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRl OiBXZWQsIDIyIE1hciAyMDIzIDIwOjAwOjU1IC0wNDAwClN1YmplY3Q6IFtQQVRDSCA0NS84OV0g b3NnOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3Mvb3NnL3BhdGNoZXMvZmZtcGVn NS5wYXRjaCB8IDQ5MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3Mvb3Nn L3RlbXBsYXRlICAgICAgICAgICAgICB8ICAgMiArLQogMiBmaWxlcyBjaGFuZ2VkLCA0OTEgaW5z ZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvb3Nn L3BhdGNoZXMvZmZtcGVnNS5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvb3NnL3BhdGNoZXMv ZmZtcGVnNS5wYXRjaCBiL3NyY3BrZ3Mvb3NnL3BhdGNoZXMvZmZtcGVnNS5wYXRjaApuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uYWU0NmRjZDRjNDY3ZTMKLS0tIC9k ZXYvbnVsbAorKysgYi9zcmNwa2dzL29zZy9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gKQEAgLTAsMCAr MSw0OTAgQEAKK0luZGV4OiBvcGVuc2NlbmVncmFwaC0zLjYuNStkZnNnMS9zcmMvb3NnUGx1Z2lu cy9mZm1wZWcvRkZtcGVnRGVjb2RlckF1ZGlvLmNwcAorPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorLS0tIG9wZW5zY2Vu ZWdyYXBoLTMuNi41K2Rmc2cxLm9yaWcvc3JjL29zZ1BsdWdpbnMvZmZtcGVnL0ZGbXBlZ0RlY29k ZXJBdWRpby5jcHAKKysrKyBvcGVuc2NlbmVncmFwaC0zLjYuNStkZnNnMS9zcmMvb3NnUGx1Z2lu cy9mZm1wZWcvRkZtcGVnRGVjb2RlckF1ZGlvLmNwcAorQEAgLTQ1LDEyICs0NSwxOSBAQCBzdGF0 aWMgaW50IGRlY29kZV9hdWRpbyhBVkNvZGVjQ29udGV4dCAqCisgICAgIGlmICghZnJhbWUpCisg ICAgICAgICByZXR1cm4gQVZFUlJPUihFTk9NRU0pOworIAorLSAgICByZXQgPSBhdmNvZGVjX2Rl Y29kZV9hdWRpbzQoYXZjdHgsIGZyYW1lLCAmZ290X2ZyYW1lLCAmYXZwa3QpOworKyAgICByZXQg PSBhdmNvZGVjX3NlbmRfcGFja2V0KGF2Y3R4LCAmYXZwa3QpOworKyAgICBpZiAocmV0ID49IDAp IHsKKysgICAgICByZXQgPSBhdmNvZGVjX3JlY2VpdmVfZnJhbWUoYXZjdHgsIGZyYW1lKTsKKysg ICAgICBpZiAocmV0ID09IDApIHsKKysJZ290X2ZyYW1lID0gMTsKKysgICAgICB9CisrICAgIH0K KysKKyAKKyAjaWZkZWYgVVNFX0FWUkVTQU1QTEUgICAgLy8gbGliYXYncyBBVkZyYW1lIHN0cnVj dHVyZSBkb2VzIG5vdCBjb250YWluIGEgJ2NoYW5uZWxzJyBmaWVsZAorICAgICBpZiAocmV0ID49 IDAgJiYgZ290X2ZyYW1lKSB7CisgI2Vsc2UKKy0gICAgaWYgKHJldCA+PSAwICYmIGdvdF9mcmFt ZSAmJiBhdl9mcmFtZV9nZXRfY2hhbm5lbHMoZnJhbWUpPjApIHsKKysgICAgaWYgKHJldCA+PSAw ICYmIGdvdF9mcmFtZSAmJiBmcmFtZS0+Y2hfbGF5b3V0Lm5iX2NoYW5uZWxzPjApIHsKKyAjZW5k aWYKKyAgICAgICAgIGludCBjaCwgcGxhbmVfc2l6ZTsKKyAgICAgICAgIGludCBwbGFuYXIgPSBh dl9zYW1wbGVfZm10X2lzX3BsYW5hcihhdmN0eC0+c2FtcGxlX2ZtdCk7CitAQCAtMTUxLDExICsx NTgsMTMgQEAgdm9pZCBGRm1wZWdEZWNvZGVyQXVkaW86Om9wZW4oQVZTdHJlYW0gKgorICAgICAg ICAgICAgIHJldHVybjsKKyAKKyAgICAgICAgIG1fc3RyZWFtID0gc3RyZWFtOworLSAgICAgICAg bV9jb250ZXh0ID0gc3RyZWFtLT5jb2RlYzsKKy0KKy0gICAgICAgIG1faW5fc2FtcGxlX3JhdGUg PSBtX2NvbnRleHQtPnNhbXBsZV9yYXRlOworLSAgICAgICAgbV9pbl9uYl9jaGFubmVscyA9IG1f Y29udGV4dC0+Y2hhbm5lbHM7CistICAgICAgICBtX2luX3NhbXBsZV9mb3JtYXQgPSBtX2NvbnRl eHQtPnNhbXBsZV9mbXQ7CisrCUFWQ29kZWNQYXJhbWV0ZXJzKiBhdnAgPSBzdHJlYW0tPmNvZGVj cGFyOworKyAgICAgICAgY29uc3QgQVZDb2RlYyAqIHBfY29kZWMgPSBhdmNvZGVjX2ZpbmRfZGVj b2RlcihhdnAtPmNvZGVjX2lkKTsKKysJbV9jb250ZXh0ID0gYXZjb2RlY19hbGxvY19jb250ZXh0 MyhwX2NvZGVjKTsKKysKKysgICAgICAgIG1faW5fc2FtcGxlX3JhdGUgPSBhdnAtPnNhbXBsZV9y YXRlOworKyAgICAgICAgbV9pbl9uYl9jaGFubmVscyA9IGF2cC0+Y2hhbm5lbHM7CisrICAgICAg ICBtX2luX3NhbXBsZV9mb3JtYXQgPSAoKEFWU2FtcGxlRm9ybWF0KShhdnAtPmZvcm1hdCkpOwor IAorICAgICAgICAgQVZEaWN0aW9uYXJ5RW50cnkgKm9wdF9vdXRfc2FtcGxlX3JhdGUgPSBhdl9k aWN0X2dldCggKnBhcmFtZXRlcnMtPmdldE9wdGlvbnMoKSwgIm91dF9zYW1wbGVfcmF0ZSIsIE5V TEwsIDAgKTsKKyAgICAgICAgIGlmICggb3B0X291dF9zYW1wbGVfcmF0ZSApCitAQCAtMjEwLDEx ICsyMTksMTAgQEAgcHJpbnRmKCIjIyMgQ09OVkVSVElORyBmcm9tIHNhbXBsZSBmb3JtYQorICAg ICAgICAgfQorIAorICAgICAgICAgLy8gQ2hlY2sgc3RyZWFtIHNhbml0eQorLSAgICAgICAgaWYg KG1fY29udGV4dC0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfTk9ORSkKKysgICAgICAgIGlmIChh dnAtPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX05PTkUpCisgICAgICAgICAgICAgdGhyb3cgc3Rk OjpydW50aW1lX2Vycm9yKCJpbnZhbGlkIGF1ZGlvIGNvZGVjIik7OworIAorICAgICAgICAgLy8g RmluZCB0aGUgZGVjb2RlciBmb3IgdGhlIGF1ZGlvIHN0cmVhbQorLSAgICAgICAgQVZDb2RlYyAq IGNvbnN0IHBfY29kZWMgPSBhdmNvZGVjX2ZpbmRfZGVjb2RlcihtX2NvbnRleHQtPmNvZGVjX2lk KTsKKyAKKyAgICAgICAgIGlmIChwX2NvZGVjID09IDApCisgICAgICAgICAgICAgdGhyb3cgc3Rk OjpydW50aW1lX2Vycm9yKCJhdmNvZGVjX2ZpbmRfZGVjb2RlcigpIGZhaWxlZCIpOworZGlmZiAt TmF1ciBvbGQvc3JjL29zZ1BsdWdpbnMvZmZtcGVnL0ZGbXBlZ0RlY29kZXIuY3BwIG5ldy9zcmMv b3NnUGx1Z2lucy9mZm1wZWcvRkZtcGVnRGVjb2Rlci5jcHAKKy0tLSBvbGQvc3JjL29zZ1BsdWdp bnMvZmZtcGVnL0ZGbXBlZ0RlY29kZXIuY3BwCTIwMjAtMDEtMzEgMjE6MDM6MDcuMDAwMDAwMDAw ICsxMDAwCisrKysgbmV3L3NyYy9vc2dQbHVnaW5zL2ZmbXBlZy9GRm1wZWdEZWNvZGVyLmNwcAky MDIzLTExLTI2IDA4OjA5OjM3LjI4MDQ0MjE5MyArMTAwMAorQEAgLTYyLDcgKzYyLDcgQEAKKyAg ICAgeworICAgICAgICAgLy8gT3BlbiB2aWRlbyBmaWxlCisgICAgICAgICBBVkZvcm1hdENvbnRl eHQgKiBwX2Zvcm1hdF9jb250ZXh0ID0gMDsKKy0gICAgICAgIEFWSW5wdXRGb3JtYXQgKmlmb3Jt YXQgPSAwOworKyAgICAgICAgY29uc3QgQVZJbnB1dEZvcm1hdCAqaWZvcm1hdCA9IDA7CisgCisg ICAgICAgICBpZiAoZmlsZW5hbWUuY29tcGFyZSgwLCA1LCAiL2Rldi8iKT09MCkKKyAgICAgICAg IHsKK0BAIC0zMDQsMTIgKzMwNCwxMSBAQAorICAgICAgICAgZWxzZQorICAgICAgICAgeworICAg ICAgICAgICAgIC8vIE1ha2UgdGhlIHBhY2tldCBkYXRhIGF2YWlsYWJsZSBiZXlvbmQgYXZfcmVh ZF9mcmFtZSgpIGxvZ2ljYWwgc2NvcGUuCistICAgICAgICAgICAgaWYgKChlcnJvciA9IGF2X2R1 cF9wYWNrZXQoJnBhY2tldCkpIDwgMCkgeworLSAgICAgICAgICAgICAgICBPU0dfRkFUQUwgPDwg ImF2X2R1cF9wYWNrZXQoKSByZXR1cm5lZCAiIDw8IEF2U3RyRXJyb3IoZXJyb3IpIDw8IHN0ZDo6 ZW5kbDsKKy0gICAgICAgICAgICAgICAgdGhyb3cgc3RkOjpydW50aW1lX2Vycm9yKCJhdl9kdXBf cGFja2V0KCkgZmFpbGVkIik7CisrICAgICAgICAgICAgaWYgKChlcnJvciA9IGF2X3BhY2tldF9y ZWYoJihtX3BlbmRpbmdfcGFja2V0LnBhY2tldCksICZwYWNrZXQpKSA8IDApIHsKKysgICAgICAg ICAgICAgICAgT1NHX0ZBVEFMIDw8ICJhdl9wYWNrZXRfcmVmKCkgcmV0dXJuZWQgIiA8PCBBdlN0 ckVycm9yKGVycm9yKSA8PCBzdGQ6OmVuZGw7CisrICAgICAgICAgICAgICAgIHRocm93IHN0ZDo6 cnVudGltZV9lcnJvcigiYXZfcGFja2V0X3JlZigpIGZhaWxlZCIpOworICAgICAgICAgICAgIH0K Ky0KKy0gICAgICAgICAgICBtX3BlbmRpbmdfcGFja2V0ID0gRkZtcGVnUGFja2V0KHBhY2tldCk7 CisrCSAgICBtX3BlbmRpbmdfcGFja2V0LnR5cGUgPSBGRm1wZWdQYWNrZXQ6OlBBQ0tFVF9EQVRB OworICAgICAgICAgfQorICAgICB9CisgCitkaWZmIC1OYXVyIG9sZC9zcmMvb3NnUGx1Z2lucy9m Zm1wZWcvRkZtcGVnRGVjb2RlclZpZGVvLmNwcCBuZXcvc3JjL29zZ1BsdWdpbnMvZmZtcGVnL0ZG bXBlZ0RlY29kZXJWaWRlby5jcHAKKy0tLSBvbGQvc3JjL29zZ1BsdWdpbnMvZmZtcGVnL0ZGbXBl Z0RlY29kZXJWaWRlby5jcHAJMjAyMC0wMS0zMSAyMTowMzowNy4wMDAwMDAwMDAgKzEwMDAKKysr KyBuZXcvc3JjL29zZ1BsdWdpbnMvZmZtcGVnL0ZGbXBlZ0RlY29kZXJWaWRlby5jcHAJMjAyMy0x MS0yNiAxMzowNzowMi41MDE4MTIwNzUgKzEwMDAKK0BAIC02LDYgKzYsOSBAQAorICNpbmNsdWRl IDxzdGRleGNlcHQ+CisgI2luY2x1ZGUgPHN0cmluZy5oPgorIAorKyNpbmNsdWRlIDxsaWJhdnV0 aWwvaW1ndXRpbHMuaD4KKysKKysKKyBuYW1lc3BhY2Ugb3NnRkZtcGVnIHsKKyAKKyAvLyBUT0RP IC0gYWRkIHN1cHBvcnQgZm9yIHVzaW5nIFJHQiBvciBSR0JBIHBpeGVsIGZvcm1hdC4KK0BAIC0x OCw4ICsyMSw2IEBACisgICAgIG1fc3RyZWFtKDApLAorICAgICBtX2NvbnRleHQoMCksCisgICAg IG1fY29kZWMoMCksCistICAgIG1fcGFja2V0X2RhdGEoMCksCistICAgIG1fYnl0ZXNfcmVtYWlu aW5nKDApLAorICAgICBtX3BhY2tldF9wdHMoQVZfTk9QVFNfVkFMVUUpLAorICAgICBtX3dyaXRl QnVmZmVyKDApLAorICAgICBtX3VzZXJfZGF0YSgwKSwKK0BAIC02MSw4ICs2MiwxMiBAQAorIAor IHZvaWQgRkZtcGVnRGVjb2RlclZpZGVvOjpvcGVuKEFWU3RyZWFtICogY29uc3Qgc3RyZWFtKQor IHsKKysgICAgaW50IGxpbmVzaXplc1s0XTsKKysKKyAgICAgbV9zdHJlYW0gPSBzdHJlYW07Cist ICAgIG1fY29udGV4dCA9IHN0cmVhbS0+Y29kZWM7CisrCisrICAgIGlmIChhdmNvZGVjX3BhcmFt ZXRlcnNfdG9fY29udGV4dChtX2NvbnRleHQsIHN0cmVhbS0+Y29kZWNwYXIpIDwgMCkKKysgICAg ICAgIHRocm93IHN0ZDo6cnVudGltZV9lcnJvcigiYXZjb2RlY19wYXJhbWV0ZXJzX3RvX2NvbnRl eHQoKSBmYWlsZWQgaW5zaWRlIEZGTXBlZ0RlY29kZXJWaWRlbzo6b3BlbigpIik7CisgCisgICAg IC8vIFRydXN0IHRoZSB2aWRlbyBzaXplIGdpdmVuIGF0IHRoaXMgcG9pbnQKKyAgICAgLy8gKGF2 Y29kZWNfb3BlbiBzZWVtcyB0byBzb21ldGltZXMgcmV0dXJuIGEgMHgwIHNpemUpCitAQCAtOTks MTEgKzEwNCwxNSBAQAorIAorICAgICAvLyBBbGxvY2F0ZSBjb252ZXJ0ZWQgUkdCIGZyYW1lCisg ICAgIG1fZnJhbWVfcmdiYS5yZXNldChhdl9mcmFtZV9hbGxvYygpKTsKKy0gICAgbV9idWZmZXJf cmdiYVswXS5yZXNpemUoYXZwaWN0dXJlX2dldF9zaXplKEFWX1BJWF9GTVRfUkdCMjQsIHdpZHRo KCksIGhlaWdodCgpKSk7CisrICAgIG1fYnVmZmVyX3JnYmFbMF0ucmVzaXplKGF2X2ltYWdlX2dl dF9idWZmZXJfc2l6ZShBVl9QSVhfRk1UX1JHQjI0LCB3aWR0aCgpLCBoZWlnaHQoKSwgMSkpOwor ICAgICBtX2J1ZmZlcl9yZ2JhWzFdLnJlc2l6ZShtX2J1ZmZlcl9yZ2JhWzBdLnNpemUoKSk7Cisg CisgICAgIC8vIEFzc2lnbiBhcHByb3ByaWF0ZSBwYXJ0cyBvZiB0aGUgYnVmZmVyIHRvIGltYWdl IHBsYW5lcyBpbiBtX2ZyYW1lX3JnYmEKKysjaWYgQkNTCisgICAgIGF2cGljdHVyZV9maWxsKChB VlBpY3R1cmUgKikgKG1fZnJhbWVfcmdiYSkuZ2V0KCksICYobV9idWZmZXJfcmdiYVswXSlbMF0s IEFWX1BJWF9GTVRfUkdCMjQsIHdpZHRoKCksIGhlaWdodCgpKTsKKysjZWxzZQorKyAgICBhdl9p bWFnZV9maWxsX2FycmF5cyhtX2ZyYW1lX3JnYmEuZ2V0KCktPmRhdGEsIGxpbmVzaXplcywgJiht X2J1ZmZlcl9yZ2JhWzBdKVswXSwgQVZfUElYX0ZNVF9SR0IyNCwgd2lkdGgoKSwgaGVpZ2h0KCks IDEpOworKyNlbmRpZgorIAorICAgICAvLyBPdmVycmlkZSBnZXRfYnVmZmVyKCkvcmVsZWFzZV9i dWZmZXIoKSBmcm9tIGNvZGVjIGNvbnRleHQgaW4gb3JkZXIgdG8gcmV0cmlldmUgdGhlIFBUUyBv ZiBlYWNoIGZyYW1lLgorICAgICBtX2NvbnRleHQtPm9wYXF1ZSA9IHRoaXM7CitAQCAtMTQ4LDEy OCArMTU3LDEyMyBAQAorIH0KKyAKKyAKKy0KKy12b2lkIEZGbXBlZ0RlY29kZXJWaWRlbzo6ZGVj b2RlTG9vcCgpCisrZG91YmxlIEZGbXBlZ0RlY29kZXJWaWRlbzo6Y2FsY3VsYXRlRnJhbWVQVFMo aW50NjRfdCBwYWNrZXRfZHRzKQorIHsKKy0gICAgRkZtcGVnUGFja2V0IHBhY2tldDsKKy0gICAg ZG91YmxlIHB0czsKKysgICAgZG91YmxlIHB0cyA9IDA7CisgCistICAgIHdoaWxlICghIG1fZXhp dCkKKysjaWYgTElCQVZDT0RFQ19WRVJTSU9OX0lOVCA8PSBBVl9WRVJTSU9OX0lOVCg1NywyNCwx MDIpCisrICAgIC8vZmZtcGVnLTMuMCBhbmQgYmVsb3cKKysgICAgQVZSYXRpb25hbCB0aW1lYmFz ZTsKKysgICAgLy8gRmluZCBvdXQgdGhlIGZyYW1lIHB0cworKyAgICBpZiAobV9mcmFtZS0+cHRz ICE9IGludDY0X3QoQVZfTk9QVFNfVkFMVUUpKQorICAgICB7CistICAgICAgICAvLyBXb3JrIG9u IHRoZSBjdXJyZW50IHBhY2tldCB1bnRpbCB3ZSBoYXZlIGRlY29kZWQgYWxsIG9mIGl0CistCist ICAgICAgICB3aGlsZSAobV9ieXRlc19yZW1haW5pbmcgPiAwKQorLSAgICAgICAgeworLSAgICAg ICAgICAgIC8vIFNhdmUgZ2xvYmFsIFBUUyB0byBiZSBzdG9yZWQgaW4gbV9mcmFtZSB2aWEgZ2V0 QnVmZmVyKCkKKysgICAgICAgIHB0cyA9IG1fZnJhbWUtPnB0czsKKysgICAgICAgIHRpbWViYXNl ID0gbV9jb250ZXh0LT50aW1lX2Jhc2U7CisrICAgIH0KKysgICAgZWxzZSBpZiAocGFja2V0X2R0 cyA9PSBpbnQ2NF90KEFWX05PUFRTX1ZBTFVFKSAmJgorKyAgICAgICAgICAgIG1fZnJhbWUtPm9w YXF1ZSAhPSAwICYmCisrICAgICAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgaW50NjRf dCo+KG1fZnJhbWUtPm9wYXF1ZSkgIT0gaW50NjRfdChBVl9OT1BUU19WQUxVRSkpCisrICAgIHsK KysgICAgICAgIHB0cyA9ICpyZWludGVycHJldF9jYXN0PGNvbnN0IGludDY0X3QqPihtX2ZyYW1l LT5vcGFxdWUpOworKyAgICAgICAgdGltZWJhc2UgPSBtX3N0cmVhbS0+dGltZV9iYXNlOworKyAg ICB9CisrICAgIGVsc2UgaWYgKHBhY2tldF9kdHMgIT0gaW50NjRfdChBVl9OT1BUU19WQUxVRSkp CisrICAgIHsKKysgICAgICAgIHB0cyA9IHBhY2tldF9kdHM7CisrICAgICAgICB0aW1lYmFzZSA9 IG1fc3RyZWFtLT50aW1lX2Jhc2U7CisrICAgIH0KKysgICAgZWxzZQorKyAgICB7CisrICAgICAg ICB0aW1lYmFzZSA9IG1fY29udGV4dC0+dGltZV9iYXNlOworKyAgICB9CisgCistICAgICAgICAg ICAgbV9wYWNrZXRfcHRzID0gcGFja2V0LnBhY2tldC5wdHM7CisrICAgIHB0cyAqPSBhdl9xMmQo dGltZWJhc2UpOworIAorLSAgICAgICAgICAgIC8vIERlY29kZSB2aWRlbyBmcmFtZQorKyNlbHNl CisrICAgIC8vYWJvdmUgZmZtcGVnLTMuMAorKyAgICAvLyBGaW5kIG91dCB0aGUgZnJhbWUgcHRz CisrICAgIGlmIChtX2ZyYW1lLT5wdHMgIT0gaW50NjRfdChBVl9OT1BUU19WQUxVRSkpCisrICAg IHsKKysgICAgICAgIHB0cyA9IGF2X3EyZChtX3N0cmVhbS0+dGltZV9iYXNlKSAqIG1fZnJhbWUt PnB0czsKKysgICAgfQorKyAgICBlbHNlIGlmIChwYWNrZXRfZHRzID09IGludDY0X3QoQVZfTk9Q VFNfVkFMVUUpICYmCisrICAgICAgICAgICAgbV9mcmFtZS0+b3BhcXVlICE9IDAgJiYKKysgICAg ICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxjb25zdCBpbnQ2NF90Kj4obV9mcmFtZS0+b3BhcXVl KSAhPSBpbnQ2NF90KEFWX05PUFRTX1ZBTFVFKSkKKysgICAgeworKyAgICAgICAgcHRzID0gYXZf cTJkKG1fc3RyZWFtLT50aW1lX2Jhc2UpICogKnJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgaW50NjRf dCo+KG1fZnJhbWUtPm9wYXF1ZSk7CisrICAgIH0KKysgICAgZWxzZSBpZiAocGFja2V0X2R0cyAh PSBpbnQ2NF90KEFWX05PUFRTX1ZBTFVFKSkKKysgICAgeworKyAgICAgICAgcHRzID0gYXZfcTJk KG1fc3RyZWFtLT50aW1lX2Jhc2UpICogcGFja2V0X2R0czsKKysgICAgfQorKyNlbmRpZgorIAor LSAgICAgICAgICAgIGludCBmcmFtZV9maW5pc2hlZCA9IDA7CisrICAgIHJldHVybiBwdHM7Cisr fQorIAorLSAgICAgICAgICAgIC8vIFdlIHdhbnQgdG8gdXNlIHRoZSBlbnRpcmUgcGFja2V0IHNp bmNlIHNvbWUgY29kZWNzIHdpbGwgcmVxdWlyZSBleHRyYSBpbmZvcm1hdGlvbiBmb3IgZGVjb2Rp bmcKKy0gICAgICAgICAgICBjb25zdCBpbnQgYnl0ZXNfZGVjb2RlZCA9IGF2Y29kZWNfZGVjb2Rl X3ZpZGVvMihtX2NvbnRleHQsIG1fZnJhbWUuZ2V0KCksICZmcmFtZV9maW5pc2hlZCwgJihwYWNr ZXQucGFja2V0KSk7CisgCistICAgICAgICAgICAgaWYgKGJ5dGVzX2RlY29kZWQgPCAwKQorLSAg ICAgICAgICAgICAgICB0aHJvdyBzdGQ6OnJ1bnRpbWVfZXJyb3IoImF2Y29kZWNfZGVjb2RlX3Zp ZGVvIGZhaWxlZCgpIik7Cisrdm9pZCBGRm1wZWdEZWNvZGVyVmlkZW86OmRlY29kZUxvb3AoKQor K3sKKysgICAgYm9vbCBuZWVkX21vcmVfZGF0YSA9IHRydWU7CisrICAgIEZGbXBlZ1BhY2tldCBw YWNrZXQ7CisgCistICAgICAgICAgICAgbV9ieXRlc19yZW1haW5pbmcgLT0gYnl0ZXNfZGVjb2Rl ZDsKKy0gICAgICAgICAgICBtX3BhY2tldF9kYXRhICs9IGJ5dGVzX2RlY29kZWQ7CisrICAgIHdo aWxlICghIG1fZXhpdCkKKysgICAgeworKwlpZiAobmVlZF9tb3JlX2RhdGEpCisrCXsKKysgICAg ICAgICAgICBib29sIGlzX2VtcHR5ID0gdHJ1ZTsKKysgICAgICAgICAgICBwYWNrZXQgPSBtX3Bh Y2tldHMudGltZWRQb3AoaXNfZW1wdHksIDEwKTsKKyAKKy0gICAgICAgICAgICAvLyBQdWJsaXNo IHRoZSBmcmFtZSBpZiB3ZSBoYXZlIGRlY29kZWQgYSBjb21wbGV0ZSBmcmFtZQorLSAgICAgICAg ICAgIGlmIChmcmFtZV9maW5pc2hlZCkKKysgICAgICAgICAgICBpZiAoISBpc19lbXB0eSkKKyAg ICAgICAgICAgICB7CistI2lmIExJQkFWQ09ERUNfVkVSU0lPTl9JTlQgPD0gQVZfVkVSU0lPTl9J TlQoNTcsMjQsMTAyKQorLSAgICAgICAgICAgICAgICAvL2ZmbXBlZy0zLjAgYW5kIGJlbG93Cist ICAgICAgICAgICAgICAgIEFWUmF0aW9uYWwgdGltZWJhc2U7CistICAgICAgICAgICAgICAgIC8v IEZpbmQgb3V0IHRoZSBmcmFtZSBwdHMKKy0gICAgICAgICAgICAgICAgaWYgKG1fZnJhbWUtPnB0 cyAhPSBpbnQ2NF90KEFWX05PUFRTX1ZBTFVFKSkKKy0gICAgICAgICAgICAgICAgeworLSAgICAg ICAgICAgICAgICAgICAgcHRzID0gbV9mcmFtZS0+cHRzOworLSAgICAgICAgICAgICAgICAgICAg dGltZWJhc2UgPSBtX2NvbnRleHQtPnRpbWVfYmFzZTsKKy0gICAgICAgICAgICAgICAgfQorLSAg ICAgICAgICAgICAgICBlbHNlIGlmIChwYWNrZXQucGFja2V0LmR0cyA9PSBpbnQ2NF90KEFWX05P UFRTX1ZBTFVFKSAmJgorLSAgICAgICAgICAgICAgICAgICAgICAgIG1fZnJhbWUtPm9wYXF1ZSAh PSAwICYmCistICAgICAgICAgICAgICAgICAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3Qg aW50NjRfdCo+KG1fZnJhbWUtPm9wYXF1ZSkgIT0gaW50NjRfdChBVl9OT1BUU19WQUxVRSkpCist ICAgICAgICAgICAgICAgIHsKKy0gICAgICAgICAgICAgICAgICAgIHB0cyA9ICpyZWludGVycHJl dF9jYXN0PGNvbnN0IGludDY0X3QqPihtX2ZyYW1lLT5vcGFxdWUpOworLSAgICAgICAgICAgICAg ICAgICAgdGltZWJhc2UgPSBtX3N0cmVhbS0+dGltZV9iYXNlOworLSAgICAgICAgICAgICAgICB9 CistICAgICAgICAgICAgICAgIGVsc2UgaWYgKHBhY2tldC5wYWNrZXQuZHRzICE9IGludDY0X3Qo QVZfTk9QVFNfVkFMVUUpKQorLSAgICAgICAgICAgICAgICB7CistICAgICAgICAgICAgICAgICAg ICBwdHMgPSBwYWNrZXQucGFja2V0LmR0czsKKy0gICAgICAgICAgICAgICAgICAgIHRpbWViYXNl ID0gbV9zdHJlYW0tPnRpbWVfYmFzZTsKKy0gICAgICAgICAgICAgICAgfQorLSAgICAgICAgICAg ICAgICBlbHNlCistICAgICAgICAgICAgICAgIHsKKy0gICAgICAgICAgICAgICAgICAgIHB0cyA9 IDA7CistICAgICAgICAgICAgICAgICAgICB0aW1lYmFzZSA9IG1fY29udGV4dC0+dGltZV9iYXNl OworLSAgICAgICAgICAgICAgICB9CistCistICAgICAgICAgICAgICAgIHB0cyAqPSBhdl9xMmQo dGltZWJhc2UpOworKyAgICAgICAgICAgICAgICBpZiAocGFja2V0LnR5cGUgPT0gRkZtcGVnUGFj a2V0OjpQQUNLRVRfRkxVU0gpCisrICAgICAgICAgICAgICAgICAgICBhdmNvZGVjX2ZsdXNoX2J1 ZmZlcnMobV9jb250ZXh0KTsKKyAKKy0jZWxzZQorLSAgICAgICAgICAgICAgICAvL2Fib3ZlIGZm bXBlZy0zLjAKKy0gICAgICAgICAgICAgICAgLy8gRmluZCBvdXQgdGhlIGZyYW1lIHB0cworLSAg ICAgICAgICAgICAgICBpZiAobV9mcmFtZS0+cHRzICE9IGludDY0X3QoQVZfTk9QVFNfVkFMVUUp KQorLSAgICAgICAgICAgICAgICB7CistICAgICAgICAgICAgICAgICAgICBwdHMgPSBhdl9xMmQo bV9zdHJlYW0tPnRpbWVfYmFzZSkgKiBtX2ZyYW1lLT5wdHM7CistICAgICAgICAgICAgICAgIH0K Ky0gICAgICAgICAgICAgICAgZWxzZSBpZiAocGFja2V0LnBhY2tldC5kdHMgPT0gaW50NjRfdChB Vl9OT1BUU19WQUxVRSkgJiYKKy0gICAgICAgICAgICAgICAgICAgICAgICBtX2ZyYW1lLT5vcGFx dWUgIT0gMCAmJgorLSAgICAgICAgICAgICAgICAgICAgICAgICpyZWludGVycHJldF9jYXN0PGNv bnN0IGludDY0X3QqPihtX2ZyYW1lLT5vcGFxdWUpICE9IGludDY0X3QoQVZfTk9QVFNfVkFMVUUp KQorLSAgICAgICAgICAgICAgICB7CistICAgICAgICAgICAgICAgICAgICBwdHMgPSBhdl9xMmQo bV9zdHJlYW0tPnRpbWVfYmFzZSkgKiAqcmVpbnRlcnByZXRfY2FzdDxjb25zdCBpbnQ2NF90Kj4o bV9mcmFtZS0+b3BhcXVlKTsKKy0gICAgICAgICAgICAgICAgfQorLSAgICAgICAgICAgICAgICBl bHNlIGlmIChwYWNrZXQucGFja2V0LmR0cyAhPSBpbnQ2NF90KEFWX05PUFRTX1ZBTFVFKSkKKy0g ICAgICAgICAgICAgICAgeworLSAgICAgICAgICAgICAgICAgICAgcHRzID0gYXZfcTJkKG1fc3Ry ZWFtLT50aW1lX2Jhc2UpICogcGFja2V0LnBhY2tldC5kdHM7CistICAgICAgICAgICAgICAgIH0K Ky0gICAgICAgICAgICAgICAgZWxzZQorLSAgICAgICAgICAgICAgICB7CistICAgICAgICAgICAg ICAgICAgICBwdHMgPSAwOworLSAgICAgICAgICAgICAgICB9CistI2VuZGlmCistICAgICAgICAg ICAgICAgIGNvbnN0IGRvdWJsZSBzeW5jaGVkX3B0cyA9IG1fY2xvY2tzLnZpZGVvU3luY2hDbG9j ayhtX2ZyYW1lLmdldCgpLCBhdl9xMmQoYXZfaW52X3EobV9jb250ZXh0LT5mcmFtZXJhdGUpKSwg cHRzKTsKKy0gICAgICAgICAgICAgICAgY29uc3QgZG91YmxlIGZyYW1lX2RlbGF5ID0gbV9jbG9j a3MudmlkZW9SZWZyZXNoU2NoZWR1bGUoc3luY2hlZF9wdHMpOworKyAgICAgICAgICAgICAgICAv LyBTYXZlIGdsb2JhbCBQVFMgdG8gYmUgc3RvcmVkIGluIG1fZnJhbWUgdmlhIGdldEJ1ZmZlcigp CisrICAgICAgICAgICAgICAgIG1fcGFja2V0X3B0cyA9IHBhY2tldC5wYWNrZXQucHRzOworIAor LSAgICAgICAgICAgICAgICBwdWJsaXNoRnJhbWUoZnJhbWVfZGVsYXksIG1fY2xvY2tzLmF1ZGlv RGlzYWJsZWQoKSk7CisrCSAgICAgICAgaWYgKGF2Y29kZWNfc2VuZF9wYWNrZXQobV9jb250ZXh0 LCAmcGFja2V0LnBhY2tldCkgPCAwKQorKyAgICAgICAgICAgICAgICAgICAgdGhyb3cgc3RkOjpy dW50aW1lX2Vycm9yKCJhdmNvZGVjX3NlbmRfcGFja2V0KCkgZmFpbGVkIGluc2lkZSBGRm1wZWdE ZWNvZGVyVmlkZW86OmRlY29kZUxvb3AoKSIpOworICAgICAgICAgICAgIH0KKy0gICAgICAgIH0K Ky0KKy0gICAgICAgIHdoaWxlKG1fcGF1c2VkICYmICFtX2V4aXQpCistICAgICAgICB7CistICAg ICAgICAgICAgbWljcm9TbGVlcCgxMDAwMCk7CistICAgICAgICB9CisrCX0KKyAKKy0gICAgICAg IC8vIEdldCB0aGUgbmV4dCBwYWNrZXQKKysgICAgICAgIGNvbnN0IGludCBkZWNvZGVfc3RhdHVz ID0gYXZjb2RlY19yZWNlaXZlX2ZyYW1lKG1fY29udGV4dCwgbV9mcmFtZS5nZXQoKSk7CisgCist ICAgICAgICBwdHMgPSAwOworKwlpZiAoZGVjb2RlX3N0YXR1cyA9PSAwKQorKwl7CisrICAgICAg ICAgICAgLy8gQ29tcGxldGVkIGF0IGxlYXN0IG9uZSBmdWxsIGZyYW1lCisrCSAgICBuZWVkX21v cmVfZGF0YSA9IGZhbHNlOworIAorLSAgICAgICAgaWYgKHBhY2tldC52YWxpZCgpKQorLSAgICAg ICAgICAgIHBhY2tldC5jbGVhcigpOworKwkgICAgY29uc3QgZG91YmxlIHB0cyA9IGNhbGN1bGF0 ZUZyYW1lUFRTKG1fZnJhbWUuZ2V0KCktPnBrdF9kdHMpOworKyAgICAgICAgICAgIGNvbnN0IGRv dWJsZSBzeW5jaGVkX3B0cyA9IG1fY2xvY2tzLnZpZGVvU3luY2hDbG9jayhtX2ZyYW1lLmdldCgp LCBhdl9xMmQoYXZfaW52X3EobV9jb250ZXh0LT5mcmFtZXJhdGUpKSwgcHRzKTsKKysgICAgICAg ICAgICBjb25zdCBkb3VibGUgZnJhbWVfZGVsYXkgPSBtX2Nsb2Nrcy52aWRlb1JlZnJlc2hTY2hl ZHVsZShzeW5jaGVkX3B0cyk7CisgCistICAgICAgICBib29sIGlzX2VtcHR5ID0gdHJ1ZTsKKy0g ICAgICAgIHBhY2tldCA9IG1fcGFja2V0cy50aW1lZFBvcChpc19lbXB0eSwgMTApOworKyAgICAg ICAgICAgIHB1Ymxpc2hGcmFtZShmcmFtZV9kZWxheSwgbV9jbG9ja3MuYXVkaW9EaXNhYmxlZCgp KTsKKysgICAgICAgIH0KKysJZWxzZSBpZiAoZGVjb2RlX3N0YXR1cyA9PSBBVkVSUk9SKEVPRikp CisrCXsKKysgICAgICAgICAgICAvLyBEZWNvZGVyIGhhcyByZWFjaGVkIGVuZCBvZiB0aGUgc3Ry ZWFtCisrCSAgICByZXR1cm47CisrICAgICAgICB9CisrCWVsc2UgaWYgKGRlY29kZV9zdGF0dXMg PT0gQVZFUlJPUihFQUdBSU4pKQorKwl7CisrICAgICAgICAgICAgLy8gRnJhbWUgbm90IHlldCBj b21wbGV0ZQorKwkgICAgbmVlZF9tb3JlX2RhdGEgPSB0cnVlOworKworKyAgICAgICAgICAgIGlm IChwYWNrZXQudmFsaWQoKSkKKysgICAgICAgICAgICAgICAgcGFja2V0LmNsZWFyKCk7CisrCX0K KysJZWxzZQorKyAgICAgICAgICAgIHRocm93IHN0ZDo6cnVudGltZV9lcnJvcigiYXZjb2RlY19y ZWNlaXZlX2ZyYW1lKCkgZmFpbGVkIGluc2lkZSBGRm1wZWdEZWNvZGVyVmlkZW86OmRlY29kZUxv b3AoKSIpOworIAorLSAgICAgICAgaWYgKCEgaXNfZW1wdHkpCisrICAgICAgICB3aGlsZShtX3Bh dXNlZCAmJiAhbV9leGl0KQorICAgICAgICAgeworLSAgICAgICAgICAgIGlmIChwYWNrZXQudHlw ZSA9PSBGRm1wZWdQYWNrZXQ6OlBBQ0tFVF9EQVRBKQorLSAgICAgICAgICAgIHsKKy0gICAgICAg ICAgICAgICAgbV9ieXRlc19yZW1haW5pbmcgPSBwYWNrZXQucGFja2V0LnNpemU7CistICAgICAg ICAgICAgICAgIG1fcGFja2V0X2RhdGEgPSBwYWNrZXQucGFja2V0LmRhdGE7CistICAgICAgICAg ICAgfQorLSAgICAgICAgICAgIGVsc2UgaWYgKHBhY2tldC50eXBlID09IEZGbXBlZ1BhY2tldDo6 UEFDS0VUX0ZMVVNIKQorLSAgICAgICAgICAgIHsKKy0gICAgICAgICAgICAgICAgYXZjb2RlY19m bHVzaF9idWZmZXJzKG1fY29udGV4dCk7CistICAgICAgICAgICAgfQorKyAgICAgICAgICAgIG1p Y3JvU2xlZXAoMTAwMDApOworICAgICAgICAgfQorICAgICB9CisgfQorIAorIAorLQorIHZvaWQg RkZtcGVnRGVjb2RlclZpZGVvOjpmaW5kQXNwZWN0UmF0aW8oKQorIHsKKyAgICAgZmxvYXQgcmF0 aW8gPSAwLjBmOworQEAgLTI4Myw3ICsyODcsOCBAQAorICAgICBtX3BpeGVsX2FzcGVjdF9yYXRp byA9IHJhdGlvOworIH0KKyAKKy1pbnQgRkZtcGVnRGVjb2RlclZpZGVvOjpjb252ZXJ0KEFWUGlj dHVyZSAqZHN0LCBpbnQgZHN0X3BpeF9mbXQsIEFWUGljdHVyZSAqc3JjLAorKworK2ludCBGRm1w ZWdEZWNvZGVyVmlkZW86OmNvbnZlcnQoQVZGcmFtZSAqZHN0LCBpbnQgZHN0X3BpeF9mbXQsIEFW RnJhbWUgKnNyYywKKyAgICAgICAgICAgICBpbnQgc3JjX3BpeF9mbXQsIGludCBzcmNfd2lkdGgs IGludCBzcmNfaGVpZ2h0KQorIHsKKyAgICAgb3NnOjpUaW1lcl90IHN0YXJ0VGljayA9IG9zZzo6 VGltZXI6Omluc3RhbmNlKCktPnRpY2soKTsKK0BAIC0zMTgsNiArMzIzLDggQEAKKyAKKyB2b2lk IEZGbXBlZ0RlY29kZXJWaWRlbzo6cHVibGlzaEZyYW1lKGNvbnN0IGRvdWJsZSBkZWxheSwgYm9v bCBhdWRpb19kaXNhYmxlZCkKKyB7CisrICAgIGludCBsaW5lc2l6ZXNbNF07CisrCisgICAgIC8v IElmIG5vIHB1Ymxpc2hpbmcgZnVuY3Rpb24sIGp1c3QgaWdub3JlIHRoZSBmcmFtZQorICAgICBp ZiAobV9wdWJsaXNoX2Z1bmMgPT0gMCkKKyAgICAgICAgIHJldHVybjsKK0BAIC0zMzQsMTEgKzM0 MSwxMSBAQAorICAgICAgICAgcmV0dXJuOworICNlbmRpZgorIAorLSAgICBBVlBpY3R1cmUgKiBj b25zdCBzcmMgPSAoQVZQaWN0dXJlICopIG1fZnJhbWUuZ2V0KCk7CistICAgIEFWUGljdHVyZSAq IGNvbnN0IGRzdCA9IChBVlBpY3R1cmUgKikgbV9mcmFtZV9yZ2JhLmdldCgpOworKyAgICBBVkZy YW1lICogY29uc3Qgc3JjID0gKEFWRnJhbWUgKikgbV9mcmFtZS5nZXQoKTsKKysgICAgQVZGcmFt ZSAqIGNvbnN0IGRzdCA9IChBVkZyYW1lICopIG1fZnJhbWVfcmdiYS5nZXQoKTsKKyAKKyAgICAg Ly8gQXNzaWduIGFwcHJvcHJpYXRlIHBhcnRzIG9mIHRoZSBidWZmZXIgdG8gaW1hZ2UgcGxhbmVz IGluIG1fZnJhbWVfcmdiYQorLSAgICBhdnBpY3R1cmVfZmlsbCgoQVZQaWN0dXJlICopIChtX2Zy YW1lX3JnYmEpLmdldCgpLCAmKG1fYnVmZmVyX3JnYmFbbV93cml0ZUJ1ZmZlcl0pWzBdLCBBVl9Q SVhfRk1UX1JHQjI0LCB3aWR0aCgpLCBoZWlnaHQoKSk7CisrICAgIGF2X2ltYWdlX2ZpbGxfYXJy YXlzKG1fZnJhbWVfcmdiYS5nZXQoKS0+ZGF0YSwgbGluZXNpemVzLCAmKG1fYnVmZmVyX3JnYmFb bV93cml0ZUJ1ZmZlcl0pWzBdLCBBVl9QSVhfRk1UX1JHQjI0LCB3aWR0aCgpLCBoZWlnaHQoKSwg MSk7CisgCisgICAgIC8vIENvbnZlcnQgWVVWQTQyMHAgKGkuZS4gWVVWNDIwcCBwbHVzIGFscGhh IGNoYW5uZWwpIHVzaW5nIG91ciBvd24gcm91dGluZQorIAorQEAgLTM3MCw3ICszNzcsNyBAQAor IAorIAorIAorLXZvaWQgRkZtcGVnRGVjb2RlclZpZGVvOjp5dXZhNDIwcFRvUmdiYShBVlBpY3R1 cmUgKiBjb25zdCBkc3QsIEFWUGljdHVyZSAqIGNvbnN0IHNyYywgaW50IHdpZHRoLCBpbnQgaGVp Z2h0KQorK3ZvaWQgRkZtcGVnRGVjb2RlclZpZGVvOjp5dXZhNDIwcFRvUmdiYShBVkZyYW1lICog Y29uc3QgZHN0LCBBVkZyYW1lICogY29uc3Qgc3JjLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpCisg eworICAgICBjb252ZXJ0KGRzdCwgQVZfUElYX0ZNVF9SR0IyNCwgc3JjLCBtX2NvbnRleHQtPnBp eF9mbXQsIHdpZHRoLCBoZWlnaHQpOworIAorZGlmZiAtTmF1ciBvbGQvc3JjL29zZ1BsdWdpbnMv ZmZtcGVnL0ZGbXBlZ0RlY29kZXJWaWRlby5ocHAgbmV3L3NyYy9vc2dQbHVnaW5zL2ZmbXBlZy9G Rm1wZWdEZWNvZGVyVmlkZW8uaHBwCistLS0gb2xkL3NyYy9vc2dQbHVnaW5zL2ZmbXBlZy9GRm1w ZWdEZWNvZGVyVmlkZW8uaHBwCTIwMjAtMDEtMzEgMjE6MDM6MDcuMDAwMDAwMDAwICsxMDAwCisr KysgbmV3L3NyYy9vc2dQbHVnaW5zL2ZmbXBlZy9GRm1wZWdEZWNvZGVyVmlkZW8uaHBwCTIwMjMt MTEtMjYgMDk6MzQ6MDAuMDQwMjYzNDI2ICsxMDAwCitAQCAtODcsMTAgKzg3LDExIEBACisgICAg IHZvaWQgZGVjb2RlTG9vcCgpOworICAgICB2b2lkIGZpbmRBc3BlY3RSYXRpbygpOworICAgICB2 b2lkIHB1Ymxpc2hGcmFtZShkb3VibGUgZGVsYXksIGJvb2wgYXVkaW9fZGlzYWJsZWQpOworKyAg ICBkb3VibGUgY2FsY3VsYXRlRnJhbWVQVFMoaW50NjRfdCBwYWNrZXRfZHRzKTsKKyAgICAgZG91 YmxlIHN5bmNocm9uaXplVmlkZW8oZG91YmxlIHB0cyk7CistICAgIHZvaWQgeXV2YTQyMHBUb1Jn YmEoQVZQaWN0dXJlICpkc3QsIEFWUGljdHVyZSAqc3JjLCBpbnQgd2lkdGgsIGludCBoZWlnaHQp OworKyAgICB2b2lkIHl1dmE0MjBwVG9SZ2JhKEFWRnJhbWUgKmRzdCwgQVZGcmFtZSAqc3JjLCBp bnQgd2lkdGgsIGludCBoZWlnaHQpOworIAorLSAgICBpbnQgY29udmVydChBVlBpY3R1cmUgKmRz dCwgaW50IGRzdF9waXhfZm10LCBBVlBpY3R1cmUgKnNyYywKKysgICAgaW50IGNvbnZlcnQoQVZG cmFtZSAqZHN0LCBpbnQgZHN0X3BpeF9mbXQsIEFWRnJhbWUgKnNyYywKKyAgICAgICAgICAgICAg ICAgaW50IHNyY19waXhfZm10LCBpbnQgc3JjX3dpZHRoLCBpbnQgc3JjX2hlaWdodCk7CisgCisg CitAQCAtMTAxLDkgKzEwMiw3IEBACisgICAgIEZGbXBlZ0Nsb2NrcyAmICAgICAgICAgIG1fY2xv Y2tzOworICAgICBBVlN0cmVhbSAqICAgICAgICAgICAgICBtX3N0cmVhbTsKKyAgICAgQVZDb2Rl Y0NvbnRleHQgKiAgICAgICAgbV9jb250ZXh0OworLSAgICBBVkNvZGVjICogICAgICAgICAgICAg ICBtX2NvZGVjOworLSAgICBjb25zdCB1aW50OF90ICogICAgICAgICBtX3BhY2tldF9kYXRhOwor LSAgICBpbnQgICAgICAgICAgICAgICAgICAgICBtX2J5dGVzX3JlbWFpbmluZzsKKysgICAgY29u c3QgQVZDb2RlYyAqICAgICAgICAgbV9jb2RlYzsKKyAgICAgaW50NjRfdCAgICAgICAgICAgICAg ICAgbV9wYWNrZXRfcHRzOworICAgICAKKyAgICAgRnJhbWVQdHIgICAgICAgICAgICAgICAgbV9m cmFtZTsKK2RpZmYgLU5hdXIgb2xkL3NyYy9vc2dQbHVnaW5zL2ZmbXBlZy9GRm1wZWdQYWNrZXQu aHBwIG5ldy9zcmMvb3NnUGx1Z2lucy9mZm1wZWcvRkZtcGVnUGFja2V0LmhwcAorLS0tIG9sZC9z cmMvb3NnUGx1Z2lucy9mZm1wZWcvRkZtcGVnUGFja2V0LmhwcAkyMDIwLTAxLTMxIDIxOjAzOjA3 LjAwMDAwMDAwMCArMTAwMAorKysrIG5ldy9zcmMvb3NnUGx1Z2lucy9mZm1wZWcvRkZtcGVnUGFj a2V0LmhwcAkyMDIzLTExLTI2IDA3OjIwOjAzLjczOTU0NzE5MCArMTAwMAorQEAgLTQyLDcgKzQy LDcgQEAKKyAgICAgICAgIHZvaWQgY2xlYXIoKQorICAgICAgICAgeworICAgICAgICAgICAgIGlm IChwYWNrZXQuZGF0YSAhPSAwKQorLSAgICAgICAgICAgICAgICBhdl9mcmVlX3BhY2tldCgmcGFj a2V0KTsKKysgICAgICAgICAgICAgICAgYXZfcGFja2V0X3VucmVmKCZwYWNrZXQpOworIAorICAg ICAgICAgICAgIHJlbGVhc2UoKTsKKyAgICAgICAgIH0KK2RpZmYgLU5hdXIgb2xkL3NyYy9vc2dQ bHVnaW5zL2ZmbXBlZy9GRm1wZWdQYXJhbWV0ZXJzLmhwcCBuZXcvc3JjL29zZ1BsdWdpbnMvZmZt cGVnL0ZGbXBlZ1BhcmFtZXRlcnMuaHBwCistLS0gb2xkL3NyYy9vc2dQbHVnaW5zL2ZmbXBlZy9G Rm1wZWdQYXJhbWV0ZXJzLmhwcAkyMDIwLTAxLTMxIDIxOjAzOjA3LjAwMDAwMDAwMCArMTAwMAor KysrIG5ldy9zcmMvb3NnUGx1Z2lucy9mZm1wZWcvRkZtcGVnUGFyYW1ldGVycy5ocHAJMjAyMy0x MS0yNiAxMzowOToyNS4xOTg4MDcwMzYgKzEwMDAKK0BAIC0yMCw3ICsyMCw3IEBACisgCisgICAg IGJvb2wgaXNGb3JtYXRBdmFpbGFibGUoKSBjb25zdCB7IHJldHVybiBtX2Zvcm1hdCE9TlVMTDsg fQorICAgICAKKy0gICAgQVZJbnB1dEZvcm1hdCogZ2V0Rm9ybWF0KCkgeyByZXR1cm4gbV9mb3Jt YXQ7IH0KKysgICAgY29uc3QgQVZJbnB1dEZvcm1hdCogZ2V0Rm9ybWF0KCkgeyByZXR1cm4gbV9m b3JtYXQ7IH0KKyAgICAgQVZEaWN0aW9uYXJ5KiogZ2V0T3B0aW9ucygpIHsgcmV0dXJuICZtX29w dGlvbnM7IH0KKyAgICAgdm9pZCBzZXRDb250ZXh0KEFWSU9Db250ZXh0KiBjb250ZXh0KSB7IG1f Y29udGV4dCA9IGNvbnRleHQ7IH0KKyAgICAgQVZJT0NvbnRleHQqIGdldENvbnRleHQoKSB7IHJl dHVybiBtX2NvbnRleHQ7IH0KK0BAIC0yOSw3ICsyOSw3IEBACisgCisgcHJvdGVjdGVkOgorIAor LSAgICBBVklucHV0Rm9ybWF0KiBtX2Zvcm1hdDsKKysgICAgY29uc3QgQVZJbnB1dEZvcm1hdCog bV9mb3JtYXQ7CisgICAgIEFWSU9Db250ZXh0KiBtX2NvbnRleHQ7CisgICAgIEFWRGljdGlvbmFy eSogbV9vcHRpb25zOworIH07CitkaWZmIC1OYXVyIG9sZC9zcmMvb3NnUGx1Z2lucy9mZm1wZWcv UmVhZGVyV3JpdGVyRkZtcGVnLmNwcCBuZXcvc3JjL29zZ1BsdWdpbnMvZmZtcGVnL1JlYWRlcldy aXRlckZGbXBlZy5jcHAKKy0tLSBvbGQvc3JjL29zZ1BsdWdpbnMvZmZtcGVnL1JlYWRlcldyaXRl ckZGbXBlZy5jcHAJMjAyMC0wMS0zMSAyMTowMzowNy4wMDAwMDAwMDAgKzEwMDAKKysrKyBuZXcv c3JjL29zZ1BsdWdpbnMvZmZtcGVnL1JlYWRlcldyaXRlckZGbXBlZy5jcHAJMjAyMy0xMS0yNiAx MzoyNToyMi4wNjA3NzMyNDkgKzEwMDAKK0BAIC0yMCw3ICsyMCw3IEBACisgI2luY2x1ZGUgPG9z Z0RCL0ZpbGVVdGlscz4KKyAKKyAKKy0jaWYgTElCQVZDT0RFQ19WRVJTSU9OX01BSk9SID49IDUz IHx8IFwKKysjaWYgKExJQkFWQ09ERUNfVkVSU0lPTl9NQUpPUj49NTMgJiYgTElCQVZDT0RFQ19W RVJTSU9OX01BSk9SPD01OCkgfHwgXAorICAgICAoTElCQVZDT0RFQ19WRVJTSU9OX01BSk9SPT01 MiAmJiBMSUJBVkNPREVDX1ZFUlNJT05fTUlOT1I+PTMwKSB8fCBcCisgICAgIChMSUJBVkNPREVD X1ZFUlNJT05fTUFKT1I9PTUyICYmIExJQkFWQ09ERUNfVkVSU0lPTl9NSU5PUj09MjAgJiYgTElC QVZDT0RFQ19WRVJTSU9OX01JQ1JPID49IDEpCisgICAgICNkZWZpbmUgVVNFX0FWX0xPQ0tfTUFO QUdFUgorQEAgLTExNyw4ICsxMTcsMTEgQEAKKyAgICAgICAgIC8vIGVuYWJsZSB0aHJlYWQgbG9j a2luZworICAgICAgICAgYXZfbG9ja21ncl9yZWdpc3RlcigmbG9ja01ncik7CisgI2VuZGlmCist ICAgICAgICAvLyBSZWdpc3RlciBhbGwgRkZtcGVnIGZvcm1hdHMvY29kZWNzCisrCisrI2lmIExJ QkFWQ09ERUNfVkVSU0lPTl9NQUpPUjw9NTcKKysgICAgICAgIC8vIFJlZ2lzdGVyIGFsbCBGRm1w ZWcgZm9ybWF0cy9jb2RlY3MtLS0gbm90IHJlcXVpcmVkIGluIEZGbXBlZyA0LjAgYW5kIGxhdGVy CisgICAgICAgICBhdl9yZWdpc3Rlcl9hbGwoKTsKKysjZW5kaWYKKyAKKyAgICAgICAgIGF2Zm9y bWF0X25ldHdvcmtfaW5pdCgpOworICAgICB9CmRpZmYgLS1naXQgYS9zcmNwa2dzL29zZy90ZW1w bGF0ZSBiL3NyY3BrZ3Mvb3NnL3RlbXBsYXRlCmluZGV4IDhlZjBlZmM1OTlhMWIxLi44NjBjMWM3 M2Y5MDk0OSAxMDA2NDQKLS0tIGEvc3JjcGtncy9vc2cvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9v c2cvdGVtcGxhdGUKQEAgLTgsNyArOCw3IEBAIGJ1aWxkX2hlbHBlcj0icWVtdSIKIGNvbmZpZ3Vy ZV9hcmdzPSItRExJQl9QT1NURklYPSIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyB4cmFu ZHIiCiBtYWtlZGVwZW5kcz0iTWVzYUxpYi1kZXZlbCBndGtnbGV4dC1kZXZlbCBsaWJjdXJsLWRl dmVsIGdpZmxpYi1kZXZlbCBsaWJyc3ZnLWRldmVsCi0gamFzcGVyLWRldmVsIHRpZmYtZGV2ZWwg bGliZ2RhbC1kZXZlbCBsaWJndGEtZGV2ZWwgZmZtcGVnLWRldmVsIHhpbmUtbGliLWRldmVsCisg amFzcGVyLWRldmVsIHRpZmYtZGV2ZWwgbGliZ2RhbC1kZXZlbCBsaWJndGEtZGV2ZWwgZmZtcGVn Ni1kZXZlbCB4aW5lLWxpYi1kZXZlbAogIFNETDItZGV2ZWwgZ3N0LXBsdWdpbnMtYmFzZTEtZGV2 ZWwKICAkKHZvcHRfaWYgb3BlbmV4ciBsaWJvcGVuZXhyLWRldmVsKQogICQodm9wdF9pZiBwb3Bw bGVyIHBvcHBsZXItZ2xpYi1kZXZlbCkKCkZyb20gNzI4Y2IzYTdjYzdmYTdiZmU4ZTk0MWZjZGMz ZjMzNmE3NmZkZjk4OSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNl NTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMToxMyAtMDQwMApTdWJq ZWN0OiBbUEFUQ0ggNDYvODldIHhpbmUtbGliOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNy Y3BrZ3MveGluZS1saWIvdGVtcGxhdGUgfCA4ICsrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwgNCBp bnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MveGluZS1s aWIvdGVtcGxhdGUgYi9zcmNwa2dzL3hpbmUtbGliL3RlbXBsYXRlCmluZGV4IDNiZTRkMDhlYWM3 N2EzLi5mNTRhZDBhOTFlMTVjNyAxMDA2NDQKLS0tIGEvc3JjcGtncy94aW5lLWxpYi90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL3hpbmUtbGliL3RlbXBsYXRlCkBAIC0xLDE0ICsxLDE0IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICd4aW5lLWxpYicKIHBrZ25hbWU9eGluZS1saWIKLXZlcnNpb249MS4y LjEyCi1yZXZpc2lvbj0zCit2ZXJzaW9uPTEuMi4xMworcmV2aXNpb249MQogYnVpbGRfc3R5bGU9 Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS12Y2QgLS1kaXNhYmxlLWdu b21ldmZzIC0td2l0aG91dC1lc291bmQgLS1kaXNhYmxlLWR4cjMKICAtLWRpc2FibGUtb3NzIgog aG9zdG1ha2VkZXBlbmRzPSJhdXRvbWFrZSBnZXR0ZXh0LWRldmVsIGxpYnRvb2wgcGtnLWNvbmZp ZyBwZXJsIgogbWFrZWRlcGVuZHM9IgogIHpsaWItZGV2ZWwgYWxzYS1saWItZGV2ZWwgbGlieGNi LWRldmVsIGxpYlNNLWRldmVsIGxpYlhleHQtZGV2ZWwgbGliWHYtZGV2ZWwKLSBsaWJYdk1DLWRl dmVsIGxpYmE1Mi1kZXZlbCBsaWJtYWQtZGV2ZWwgZmZtcGVnLWRldmVsIHB1bHNlYXVkaW8tZGV2 ZWwKKyBsaWJYdk1DLWRldmVsIGxpYmE1Mi1kZXZlbCBsaWJtYWQtZGV2ZWwgZmZtcGVnNi1kZXZl bCBwdWxzZWF1ZGlvLWRldmVsCiAgamFjay1kZXZlbCBzYW1iYS1kZXZlbCBsaWJmbGFjLWRldmVs IGxpYm1vZHBsdWctZGV2ZWwgbGlibXBjZGVjLWRldmVsCiAgc3BlZXgtZGV2ZWwgbGlidGhlb3Jh LWRldmVsIGxpYnZvcmJpcy1kZXZlbCBsaWJkY2EtZGV2ZWwgZmFhZDItZGV2ZWwKICBsaWJjZGlv LWRldmVsIGxpYmJsdXJheS1kZXZlbCBhYWxpYi1kZXZlbCBsaWJjYWNhLWRldmVsIGxpYlhpbmVy YW1hLWRldmVsCkBAIC0xOSw3ICsxOSw3IEBAIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIsIExH UEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHA6Ly93d3cueGluZS1wcm9qZWN0Lm9yZyIK IGNoYW5nZWxvZz0iaHR0cHM6Ly9zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdHMveGluZS9maWxlcy94 aW5lLWxpYi8ke3ZlcnNpb259L1JFQURNRS50eHQvdmlldyIKIGRpc3RmaWxlcz0iJHtTT1VSQ0VG T1JHRV9TSVRFfS94aW5lLyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1k NjA2MjcwNDY4ZTE1NDBjMmE4OWMwZDdmNWZkZjExZTE3ZWNjMGMyNjk4Y2MwYmNiMTA2NWZmMjZh YmVlMDk4CitjaGVja3N1bT01ZjEwZDZkNzE4YTRhNTFjMTdlZDFiMzJiMDMxZDRmOWI4MGIwNjFl ODI3NjUzNWIyYmUzMWU1YWM0Yjc1ZTZmCiAKIGNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBp bgogCWk2ODYtbXVzbCkKCkZyb20gYWQ1MGZjNTdjZjViZmJjN2RjZGVmMTlhNzgxNWFhODJhMjhj MzY2NyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWls LmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo1MCAtMDQwMApTdWJqZWN0OiBbUEFU Q0ggNDcvODldIHBpYW5vYmFyOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvcGlh bm9iYXIvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyks IDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9waWFub2Jhci90ZW1wbGF0ZSBi L3NyY3BrZ3MvcGlhbm9iYXIvdGVtcGxhdGUKaW5kZXggZTNmZWJiODIxYTQ1MTAuLjI1ZWYxYWI0 YzM0YWY2IDEwMDY0NAotLS0gYS9zcmNwa2dzL3BpYW5vYmFyL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvcGlhbm9iYXIvdGVtcGxhdGUKQEAgLTEsMTEgKzEsMTEgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ3BpYW5vYmFyJwogcGtnbmFtZT1waWFub2JhcgogdmVyc2lvbj0yMDIyLjA0LjAxCi1yZXZp c2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtbWFrZWZpbGUKIG1ha2VfYnVpbGRf YXJncz0iVj0xIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIgotbWFrZWRlcGVuZHM9ImZh YWQyLWRldmVsIGZmbXBlZy1kZXZlbCBnbnV0bHMtZGV2ZWwganNvbi1jLWRldmVsIGxpYmFvLWRl dmVsCittYWtlZGVwZW5kcz0iZmFhZDItZGV2ZWwgZmZtcGVnNi1kZXZlbCBnbnV0bHMtZGV2ZWwg anNvbi1jLWRldmVsIGxpYmFvLWRldmVsCiAgbGliY3VybC1kZXZlbCBsaWJnY3J5cHQtZGV2ZWwi CiBzaG9ydF9kZXNjPSJGcmVlL29wZW4tc291cmNlLCBjb25zb2xlLWJhc2VkIGNsaWVudCBmb3Ig UGFuZG9yYSByYWRpbyIKIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9y Zz4iCgpGcm9tIDBlYWFmNmIxMDQwODA2ZDUyZmM5MzEwNTNmNzRkNTkyMzYyNTI4MjUgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6 IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NTAgLTA0MDAKU3ViamVjdDogW1BBVENIIDQ4Lzg5XSBw cHNzcHA6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9wcHNzcHAvcGF0Y2hlcy9m Zm1wZWc2LnBhdGNoIHwgMTUgKysrKysrKysrKysrKysrCiBzcmNwa2dzL3Bwc3NwcC90ZW1wbGF0 ZSAgICAgICAgICAgICAgfCAgNSArKy0tLQogMiBmaWxlcyBjaGFuZ2VkLCAxNyBpbnNlcnRpb25z KCspLCAzIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcHBzc3BwL3Bh dGNoZXMvZmZtcGVnNi5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHBzc3BwL3BhdGNoZXMv ZmZtcGVnNi5wYXRjaCBiL3NyY3BrZ3MvcHBzc3BwL3BhdGNoZXMvZmZtcGVnNi5wYXRjaApuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uNTgwM2M3YmYyMjczMDkKLS0t IC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3Bwc3NwcC9wYXRjaGVzL2ZmbXBlZzYucGF0Y2gKQEAg LTAsMCArMSwxNSBAQAorLS0tIGEvQ29yZS9IVy9TaW1wbGVBdWRpb0RlYy5jcHAJMjAyNC0wMi0w NCAwODowODowMi4wMDAwMDAwMDAgLTA1MDAKKysrKyBiL0NvcmUvSFcvU2ltcGxlQXVkaW9EZWMu Y3BwCTIwMjQtMDItMTUgMTQ6NDg6MjcuMTE0MzYyMDUxIC0wNTAwCitAQCAtODEsNyArODEsMTEg QEAKKyAJCXJldHVybjsKKyAJfQorIAkvLyBGaW5kIGRlY29kZXIKKysjaWYgTElCQVZGT1JNQVRf VkVSU0lPTl9JTlQgPCBBVl9WRVJTSU9OX0lOVCg1OCwgMTgsIDEwMCkKKyAJY29kZWNfID0gYXZj b2RlY19maW5kX2RlY29kZXIoKEFWQ29kZWNJRClhdWRpb0NvZGVjSWQpOworKyNlbHNlIC8vIHRo aXMgaXMgYSBtYWNybyB0byBjb25zdCBpbiB0aGUgaGVhZGVyCisrCWNvZGVjXyA9IChBVkNvZGVj KilhdmNvZGVjX2ZpbmRfZGVjb2RlcigoQVZDb2RlY0lEKWF1ZGlvQ29kZWNJZCk7CisrI2VuZGlm CisgCWlmICghY29kZWNfKSB7CisgCQkvLyBFaCwgd2Ugc2hvdWxkbid0IGV2ZW4gaGF2ZSBtYW5h Z2VkIHRvIGNvbXBpbGUuIEJ1dCBtZWguCisgCQlFUlJPUl9MT0coTUUsICJUaGlzIHZlcnNpb24g b2YgRkZNUEVHIGRvZXMgbm90IHN1cHBvcnQgQVZfQ09ERUNfY3R4IGZvciBhdWRpbyAoJXMpLiBV cGRhdGUgeW91ciBzdWJtb2R1bGUuIiwgR2V0Q29kZWNOYW1lKGF1ZGlvVHlwZSkpOworCmRpZmYg LS1naXQgYS9zcmNwa2dzL3Bwc3NwcC90ZW1wbGF0ZSBiL3NyY3BrZ3MvcHBzc3BwL3RlbXBsYXRl CmluZGV4IDIyMzhhNzYwMWMwYWY4Li5lOTI5ZmQxODEyMmM3YyAxMDA2NDQKLS0tIGEvc3JjcGtn cy9wcHNzcHAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9wcHNzcHAvdGVtcGxhdGUKQEAgLTEsNyAr MSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdwcHNzcHAnCiBwa2duYW1lPXBwc3NwcAogdmVy c2lvbj0xLjE3LjEKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIF9nbHNsYW5nX2NvbW1pdD1iMzRm NjE5ZTFjODU4MTBkY2IzYzU3ODEwN2QyZTQ4YmE0ZWUyYjM3CiBfU1BJUlZfQ3Jvc3NfY29tbWl0 PTQyMTJlZWY2N2VkMGNhMDQ4Y2I3MjZhNjc2NzE4NTUwNGU3Njk1ZTUKIF9hcm1pcHNfY29tbWl0 PWE4ZDcxZjBmMjc5ZWIwZDMwZWNmNmFmNTE0NzNiNjZhZTBjZjhlOGQKQEAgLTE1LDcgKzE1LDcg QEAgY29uZmlndXJlX2FyZ3M9Ii1ESEVBRExFU1M9MSAtRFVTRV9TWVNURU1fRkZNUEVHPTEgLURV TklUVEVTVD1PTgogIC1EVVNJTkdfUVRfVUk9JCh2b3B0X2lmIHF0IE9OIE9GRikgLURVU0VfU1lT VEVNX1pTVEQ9T04KICAtREFSTUlQU19VU0VfU1REX0ZJTEVTWVNURU09T04iCiBob3N0bWFrZWRl cGVuZHM9InBrZy1jb25maWcgcHl0aG9uMyAkKHZvcHRfaWYgcXQgcXQ1LWhvc3QtdG9vbHMpIgot bWFrZWRlcGVuZHM9InpsaWItZGV2ZWwgZ2xldy1kZXZlbCBmZm1wZWctZGV2ZWwgbGliemlwLWRl dmVsCittYWtlZGVwZW5kcz0iemxpYi1kZXZlbCBnbGV3LWRldmVsIGZmbXBlZzYtZGV2ZWwgbGli emlwLWRldmVsCiAgc25hcHB5LWRldmVsIHJhcGlkanNvbiBsaWJwbmctZGV2ZWwgbGlienN0ZC1k ZXZlbAogICQodm9wdF9pZiBzZGwyICdTREwyX3R0Zi1kZXZlbCBTREwyLWRldmVsJykgd2F5bGFu ZC1kZXZlbAogICQodm9wdF9pZiBxdCAncXQ1LWRldmVsIHF0NS1tdWx0aW1lZGlhLWRldmVsJyki CkBAIC05MSw3ICs5MSw2IEBAIHBvc3RfY29uZmlndXJlKCkgewogfQogCiBkb19pbnN0YWxsKCkg ewotCXZsaWNlbnNlIExJQ0VOU0UuVFhUCiAJdmluc3RhbGwgaWNvbnMvaWNvbi5zdmcgNjQ0IHVz ci9zaGFyZS9waXhtYXBzIHBwc3NwcC5zdmcKIAl2aW5zdGFsbCBRdC9QUFNTUFAuZGVza3RvcCA2 NDQgdXNyL3NoYXJlL2FwcGxpY2F0aW9ucwogCXZiaW4gYnVpbGQvUFBTU1BQSGVhZGxlc3MgcHBz c3BwLWhlYWRsZXNzCgpGcm9tIDJmODMxNGY2OGMyZTMzMjQ0OTA4MGMyYWNjYTI3NGFmODIzN2Jh ZWEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5j b20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NTAgLTA0MDAKU3ViamVjdDogW1BBVENI IDQ5Lzg5XSBwcWl2OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvcHFpdi90ZW1w bGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3BxaXYvdGVtcGxhdGUgYi9zcmNwa2dzL3BxaXYv dGVtcGxhdGUKaW5kZXggZjlmNzc1MTE5NmQ0ZWUuLjdkNjM4YzAzMTA1ODJlIDEwMDY0NAotLS0g YS9zcmNwa2dzL3BxaXYvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9wcWl2L3RlbXBsYXRlCkBAIC0x LDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdwcWl2JwogcGtnbmFtZT1wcWl2CiB2 ZXJzaW9uPTIuMTMuMQotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LW1h a2VmaWxlCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWciCi1tYWtlZGVwZW5kcz0iZ2xpYi1k ZXZlbCBndGsrMy1kZXZlbCAkKHZvcHRfaWYgZmZtcGVnIGZmbXBlZy1kZXZlbCkKK21ha2VkZXBl bmRzPSJnbGliLWRldmVsIGd0ayszLWRldmVsICQodm9wdF9pZiBmZm1wZWcgZmZtcGVnNi1kZXZl bCkKICAkKHZvcHRfaWYgYXJjaGl2ZSBsaWJhcmNoaXZlLWRldmVsKSAkKHZvcHRfaWYgcHMgbGli c3BlY3RyZS1kZXZlbCkKICAkKHZvcHRfaWYgd2VicCBsaWJ3ZWJwLWRldmVsKSAkKHZvcHRfaWYg cGRmIHBvcHBsZXItZ2xpYi1kZXZlbCkiCiBzaG9ydF9kZXNjPSJQb3dlcmZ1bCBxdWljayBpbWFn ZSB2aWV3ZXIiCgpGcm9tIDc3NWE5OGFiNGI0OWRkMDY3NzRlYzMyYzcwYjA0ZmNkMTU2NmE2ZTIg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+ CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NTAgLTA0MDAKU3ViamVjdDogW1BBVENIIDUw Lzg5XSBxbW1wOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvcW1tcC90ZW1wbGF0 ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3FtbXAvdGVtcGxhdGUgYi9zcmNwa2dzL3FtbXAvdGVt cGxhdGUKaW5kZXggNTM3ODFlYTNiYzI4YWQuLmU5NjE3NWIwNWVhZWQ2IDEwMDY0NAotLS0gYS9z cmNwa2dzL3FtbXAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9xbW1wL3RlbXBsYXRlCkBAIC0xLDEy ICsxLDEyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdxbW1wJwogcGtnbmFtZT1xbW1wCiB2ZXJz aW9uPTEuNi4xCi1yZXZpc2lvbj0zCityZXZpc2lvbj00CiBidWlsZF9zdHlsZT1jbWFrZQogY29u ZmlndXJlX2FyZ3M9Ii1EVVNFX0hBTDpCT09MPUZBTFNFIC1EUU1NUF9ERUZBVUxUX1VJOlNUUklO Rz1zaW1wbGUiCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgcXQ1LWhvc3QtdG9vbHMgcXQ1 LXFtYWtlIgogIyBYWFggcHJvamVjdG0KLW1ha2VkZXBlbmRzPSJlbmNhLWRldmVsIGZhYWQyLWRl dmVsIGZmbXBlZy1kZXZlbCBqYWNrLWRldmVsIGxpYmFyY2hpdmUtZGV2ZWwKK21ha2VkZXBlbmRz PSJlbmNhLWRldmVsIGZhYWQyLWRldmVsIGZmbXBlZzYtZGV2ZWwgamFjay1kZXZlbCBsaWJhcmNo aXZlLWRldmVsCiAgbGliYnMyYi1kZXZlbCBsaWJjZGlvLXBhcmFub2lhLWRldmVsIGxpYmN1cmwt ZGV2ZWwgbGliZ21lLWRldmVsIGxpYm1hZC1kZXZlbAogIGxpYm1tcy1kZXZlbCBsaWJtb2RwbHVn LWRldmVsIGxpYm1wY2RlYy1kZXZlbCBsaWJzYW1wbGVyYXRlLWRldmVsIGxpYndpbGRtaWRpLWRl dmVsCiAgbGlic2hvdXQtZGV2ZWwgbGlic2lkcGxheWZwLWRldmVsIGxpYnNveHItZGV2ZWwgb3B1 c2ZpbGUtZGV2ZWwgcHVsc2VhdWRpby1kZXZlbAoKRnJvbSA0ZGZhZjQ1YzdmZWU5Mzg5NmE3NDg2 ZDU5MDE5ODRiMjljZTJhNzFkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8 emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjUxIC0wNDAw ClN1YmplY3Q6IFtQQVRDSCA1MS84OV0gcmV0cm9hcmNoOiByZXZidW1wIGZvciBmZm1wZWc2Cgot LS0KIHNyY3BrZ3MvcmV0cm9hcmNoL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwg MiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcmV0 cm9hcmNoL3RlbXBsYXRlIGIvc3JjcGtncy9yZXRyb2FyY2gvdGVtcGxhdGUKaW5kZXggNTQyOWQx M2VmM2VlYTQuLjAxMWMxNGI3NDQ3NWMxIDEwMDY0NAotLS0gYS9zcmNwa2dzL3JldHJvYXJjaC90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3JldHJvYXJjaC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3JldHJvYXJjaCcKIHBrZ25hbWU9cmV0cm9hcmNoCiB2ZXJz aW9uPTEuMTYuMC4zCi1yZXZpc2lvbj0zCityZXZpc2lvbj00CiBidWlsZF9zdHlsZT1jb25maWd1 cmUKIGNvbmZpZ3VyZV9hcmdzPSItLXByZWZpeD0vdXNyIC0tc3lzY29uZmRpcj0vZXRjIC0tZW5h YmxlLW5ldHdvcmtpbmcKICAtLWVuYWJsZS11ZGV2IC0tZGlzYWJsZS1idWlsdGluZmxhYyAtLWRp c2FibGUtYnVpbHRpbmdsc2xhbmcKQEAgLTEyLDcgKzEyLDcgQEAgY29uZmlndXJlX2FyZ3M9Ii0t cHJlZml4PS91c3IgLS1zeXNjb25mZGlyPS9ldGMgLS1lbmFibGUtbmV0d29ya2luZwogY29uZl9m aWxlcz0iL2V0Yy9yZXRyb2FyY2guY2ZnIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIgog bWFrZWRlcGVuZHM9ImFsc2EtbGliLWRldmVsIGV1ZGV2LWxpYnVkZXYtZGV2ZWwgZnJlZXR5cGUt ZGV2ZWwgbGlidXNiLWRldmVsIGxpYnhrYmNvbW1vbi1kZXZlbAotIG1iZWR0bHMtZGV2ZWwgemxp Yi1kZXZlbCAkKHZvcHRfaWYgZmZtcGVnIGZmbXBlZy1kZXZlbCkgJCh2b3B0X2lmIGZsYWMgbGli ZmxhYy1kZXZlbCkKKyBtYmVkdGxzLWRldmVsIHpsaWItZGV2ZWwgJCh2b3B0X2lmIGZmbXBlZyBm Zm1wZWc2LWRldmVsKSAkKHZvcHRfaWYgZmxhYyBsaWJmbGFjLWRldmVsKQogICQodm9wdF9pZiBn bHNsYW5nICdnbHNsYW5nLWRldmVsIFNQSVJWLVRvb2xzLWRldmVsJykgJCh2b3B0X2lmIGphY2sg amFjay1kZXZlbCkKICAkKHZvcHRfaWYgcHVsc2VhdWRpbyBwdWxzZWF1ZGlvLWRldmVsKQogICQo dm9wdF9pZiBxdDUgcXQ1LWRldmVsKSAkKHZvcHRfaWYgc2RsMiBTREwyLWRldmVsKSAkKHZvcHRf aWYgdnVsa2FuIHZ1bGthbi1sb2FkZXItZGV2ZWwpCgpGcm9tIDJhYTcxNzU4Njk2NDA2ZTA0YzFm M2MyZDMzYWVmYmY5MjFiZWFjOTcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNl IDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NTEgLTA0 MDAKU3ViamVjdDogW1BBVENIIDUyLzg5XSBzY3JjcHk6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0t LQogc3JjcGtncy9zY3JjcHkvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGlu c2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zY3JjcHkv dGVtcGxhdGUgYi9zcmNwa2dzL3NjcmNweS90ZW1wbGF0ZQppbmRleCBkNDA2NTFhZDhkYzgzNS4u ZGMyMzY1MDIyNWY4NDkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc2NyY3B5L3RlbXBsYXRlCisrKyBi L3NyY3BrZ3Mvc2NyY3B5L3RlbXBsYXRlCkBAIC0xLDEyICsxLDEyIEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdzY3JjcHknCiBwa2duYW1lPXNjcmNweQogdmVyc2lvbj0yLjQKLXJldmlzaW9uPTEK K3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPW1lc29uCiBjb25maWd1cmVfYXJncz0iLURjb21waWxl X3NlcnZlcj1mYWxzZQogIC1EcHJlYnVpbHRfc2VydmVyPS91c3Ivc2hhcmUvc2NyY3B5L3NjcmNw eS1zZXJ2ZXItdiR7dmVyc2lvbn0iCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWciCi1tYWtl ZGVwZW5kcz0iU0RMMi1kZXZlbCBmZm1wZWctZGV2ZWwiCittYWtlZGVwZW5kcz0iU0RMMi1kZXZl bCBmZm1wZWc2LWRldmVsIgogZGVwZW5kcz0iYW5kcm9pZC10b29scyIKIHNob3J0X2Rlc2M9IkRp c3BsYXkgYW5kIGNvbnRyb2wgeW91ciBBbmRyb2lkIGRldmljZSIKIG1haW50YWluZXI9IlNvbGl0 dWRlU0YgPHNvbGl0dWRlc2ZAcHJvdG9ubWFpbC5jb20+IgoKRnJvbSA5MThjZmMwNTY3NmNkOTVl MDEwN2YzOTcwMDM1N2UyZWU0ZGZhZTBjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6 bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjUx IC0wNDAwClN1YmplY3Q6IFtQQVRDSCA1My84OV0gc3NyOiByZXZidW1wIGZvciBmZm1wZWc2Cgot LS0KIC4uLi8wMDAxLUZpeC1idWlsZC13aXRoLWZmbXBlZy01LjAucGF0Y2ggICAgICB8IDI0MSAr KysrKysrKysrKysrKysrKysKIHNyY3BrZ3Mvc3NyL3RlbXBsYXRlICAgICAgICAgICAgICAgICAg ICAgICAgICB8ICAgNCArLQogMiBmaWxlcyBjaGFuZ2VkLCAyNDMgaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3Nzci9wYXRjaGVzLzAwMDEt Rml4LWJ1aWxkLXdpdGgtZmZtcGVnLTUuMC5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc3Ny L3BhdGNoZXMvMDAwMS1GaXgtYnVpbGQtd2l0aC1mZm1wZWctNS4wLnBhdGNoIGIvc3JjcGtncy9z c3IvcGF0Y2hlcy8wMDAxLUZpeC1idWlsZC13aXRoLWZmbXBlZy01LjAucGF0Y2gKbmV3IGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAuLjRjMDY5YjVhOWZjNDY0Ci0tLSAvZGV2 L251bGwKKysrIGIvc3JjcGtncy9zc3IvcGF0Y2hlcy8wMDAxLUZpeC1idWlsZC13aXRoLWZmbXBl Zy01LjAucGF0Y2gKQEAgLTAsMCArMSwyNDEgQEAKK0Zyb20gZjRjYmRlMzgwMjFkOTMzMGRjNzNk MmUzZGZhOGE3MGRhM2ZmNTcyMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206ID0/VVRG LTg/cT9CZXJuaGFyZD0yMFJvc2Vua3I9QzM9QTRuemVyPz0gPGJlcm9AbGluZGV2LmNoPgorRGF0 ZTogU3VuLCAxNiBKYW4gMjAyMiAwMjo0MDowNCArMDEwMAorU3ViamVjdDogW1BBVENIXSBGaXgg YnVpbGQgd2l0aCBmZm1wZWcgNS4wCitNSU1FLVZlcnNpb246IDEuMAorQ29udGVudC1UeXBlOiB0 ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04CitDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0 CisKK0FkYXB0IHRvIGZmbXBlZyA1LjAgcmVxdWlyaW5nIG1vcmUgY29uc3QtbmVzcyBmb3IgQVZD b2RlYy4KKworU2lnbmVkLW9mZi1ieTogQmVybmhhcmQgUm9zZW5rcsOkbnplciA8YmVyb0BsaW5k ZXYuY2g+CistLS0KKyBzcmMvQVYvT3V0cHV0L0F1ZGlvRW5jb2Rlci5jcHAgfCAgNiArKystLS0K KyBzcmMvQVYvT3V0cHV0L0F1ZGlvRW5jb2Rlci5oICAgfCAgNCArKy0tCisgc3JjL0FWL091dHB1 dC9CYXNlRW5jb2Rlci5jcHAgIHwgIDQgKystLQorIHNyYy9BVi9PdXRwdXQvQmFzZUVuY29kZXIu aCAgICB8ICA0ICsrLS0KKyBzcmMvQVYvT3V0cHV0L011eGVyLmNwcCAgICAgICAgfCAxMiArKysr KystLS0tLS0KKyBzcmMvQVYvT3V0cHV0L011eGVyLmggICAgICAgICAgfCAgNCArKy0tCisgc3Jj L0FWL091dHB1dC9WaWRlb0VuY29kZXIuY3BwIHwgIDYgKysrLS0tCisgc3JjL0FWL091dHB1dC9W aWRlb0VuY29kZXIuaCAgIHwgIDQgKystLQorIDggZmlsZXMgY2hhbmdlZCwgMjIgaW5zZXJ0aW9u cygrKSwgMjIgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9zcmMvQVYvT3V0cHV0L0F1ZGlv RW5jb2Rlci5jcHAgYi9zcmMvQVYvT3V0cHV0L0F1ZGlvRW5jb2Rlci5jcHAKK2luZGV4IDM0ZDAx NWMuLmNlZmMyZTAgMTAwNjQ0CistLS0gYS9zcmMvQVYvT3V0cHV0L0F1ZGlvRW5jb2Rlci5jcHAK KysrKyBiL3NyYy9BVi9PdXRwdXQvQXVkaW9FbmNvZGVyLmNwcAorQEAgLTM0LDcgKzM0LDcgQEAg Y29uc3Qgc3RkOjp2ZWN0b3I8QXVkaW9FbmNvZGVyOjpTYW1wbGVGb3JtYXREYXRhPiBBdWRpb0Vu Y29kZXI6OlNVUFBPUlRFRF9TQU1QTEUKKyAKKyBjb25zdCB1bnNpZ25lZCBpbnQgQXVkaW9FbmNv ZGVyOjpERUZBVUxUX0ZSQU1FX1NBTVBMRVMgPSAxMDI0OworIAorLUF1ZGlvRW5jb2Rlcjo6QXVk aW9FbmNvZGVyKE11eGVyKiBtdXhlciwgQVZTdHJlYW0qIHN0cmVhbSwgQVZDb2RlY0NvbnRleHQg KmNvZGVjX2NvbnRleHQsIEFWQ29kZWMqIGNvZGVjLCBBVkRpY3Rpb25hcnkqKiBvcHRpb25zKQor K0F1ZGlvRW5jb2Rlcjo6QXVkaW9FbmNvZGVyKE11eGVyKiBtdXhlciwgQVZTdHJlYW0qIHN0cmVh bSwgQVZDb2RlY0NvbnRleHQgKmNvZGVjX2NvbnRleHQsIGNvbnN0IEFWQ29kZWMqIGNvZGVjLCBB VkRpY3Rpb25hcnkqKiBvcHRpb25zKQorIAk6IEJhc2VFbmNvZGVyKG11eGVyLCBzdHJlYW0sIGNv ZGVjX2NvbnRleHQsIGNvZGVjLCBvcHRpb25zKSB7CisgCisgI2lmICFTU1JfVVNFX0FWQ09ERUNf RU5DT0RFX0FVRElPMgorQEAgLTc3LDcgKzc3LDcgQEAgdW5zaWduZWQgaW50IEF1ZGlvRW5jb2Rl cjo6R2V0U2FtcGxlUmF0ZSgpIHsKKyB9CisgCisgYm9vbCBBdWRpb0VuY29kZXI6OkFWQ29kZWNJ c1N1cHBvcnRlZChjb25zdCBRU3RyaW5nJiBjb2RlY19uYW1lKSB7CistCUFWQ29kZWMgKmNvZGVj ID0gYXZjb2RlY19maW5kX2VuY29kZXJfYnlfbmFtZShjb2RlY19uYW1lLnRvVXRmOCgpLmNvbnN0 RGF0YSgpKTsKKysJY29uc3QgQVZDb2RlYyAqY29kZWMgPSBhdmNvZGVjX2ZpbmRfZW5jb2Rlcl9i eV9uYW1lKGNvZGVjX25hbWUudG9VdGY4KCkuY29uc3REYXRhKCkpOworIAlpZihjb2RlYyA9PSBO VUxMKQorIAkJcmV0dXJuIGZhbHNlOworIAlpZighYXZfY29kZWNfaXNfZW5jb2Rlcihjb2RlYykp CitAQCAtOTMsNyArOTMsNyBAQCBib29sIEF1ZGlvRW5jb2Rlcjo6QVZDb2RlY0lzU3VwcG9ydGVk KGNvbnN0IFFTdHJpbmcmIGNvZGVjX25hbWUpIHsKKyAJcmV0dXJuIGZhbHNlOworIH0KKyAKKy12 b2lkIEF1ZGlvRW5jb2Rlcjo6UHJlcGFyZVN0cmVhbShBVlN0cmVhbSogc3RyZWFtLCBBVkNvZGVj Q29udGV4dCogY29kZWNfY29udGV4dCwgQVZDb2RlYyogY29kZWMsIEFWRGljdGlvbmFyeSoqIG9w dGlvbnMsIGNvbnN0IHN0ZDo6dmVjdG9yPHN0ZDo6cGFpcjxRU3RyaW5nLCBRU3RyaW5nPiA+JiBj b2RlY19vcHRpb25zLAorK3ZvaWQgQXVkaW9FbmNvZGVyOjpQcmVwYXJlU3RyZWFtKEFWU3RyZWFt KiBzdHJlYW0sIEFWQ29kZWNDb250ZXh0KiBjb2RlY19jb250ZXh0LCBjb25zdCBBVkNvZGVjKiBj b2RlYywgQVZEaWN0aW9uYXJ5Kiogb3B0aW9ucywgY29uc3Qgc3RkOjp2ZWN0b3I8c3RkOjpwYWly PFFTdHJpbmcsIFFTdHJpbmc+ID4mIGNvZGVjX29wdGlvbnMsCisgCQkJCQkJCQkgdW5zaWduZWQg aW50IGJpdF9yYXRlLCB1bnNpZ25lZCBpbnQgY2hhbm5lbHMsIHVuc2lnbmVkIGludCBzYW1wbGVf cmF0ZSkgeworIAorIAlpZihjaGFubmVscyA9PSAwKSB7CitkaWZmIC0tZ2l0IGEvc3JjL0FWL091 dHB1dC9BdWRpb0VuY29kZXIuaCBiL3NyYy9BVi9PdXRwdXQvQXVkaW9FbmNvZGVyLmgKK2luZGV4 IGM5MzI3OGMuLmFlOWM4MmUgMTAwNjQ0CistLS0gYS9zcmMvQVYvT3V0cHV0L0F1ZGlvRW5jb2Rl ci5oCisrKysgYi9zcmMvQVYvT3V0cHV0L0F1ZGlvRW5jb2Rlci5oCitAQCAtNDAsNyArNDAsNyBA QCBwcml2YXRlOgorICNlbmRpZgorIAorIHB1YmxpYzoKKy0JQXVkaW9FbmNvZGVyKE11eGVyKiBt dXhlciwgQVZTdHJlYW0qIHN0cmVhbSwgQVZDb2RlY0NvbnRleHQqIGNvZGVjX2NvbnRleHQsIEFW Q29kZWMqIGNvZGVjLCBBVkRpY3Rpb25hcnkqKiBvcHRpb25zKTsKKysJQXVkaW9FbmNvZGVyKE11 eGVyKiBtdXhlciwgQVZTdHJlYW0qIHN0cmVhbSwgQVZDb2RlY0NvbnRleHQqIGNvZGVjX2NvbnRl eHQsIGNvbnN0IEFWQ29kZWMqIGNvZGVjLCBBVkRpY3Rpb25hcnkqKiBvcHRpb25zKTsKKyAJfkF1 ZGlvRW5jb2RlcigpOworIAorIAkvLyBSZXR1cm5zIHRoZSByZXF1aXJlZCBmcmFtZSBzaXplLCBp LmUuIHRoZSBudW1iZXIgb2Ygc2FtcGxlcyAoZm9yIGVhY2ggY2hhbm5lbCkuCitAQCAtNTcsNyAr NTcsNyBAQCBwdWJsaWM6CisgCisgcHVibGljOgorIAlzdGF0aWMgYm9vbCBBVkNvZGVjSXNTdXBw b3J0ZWQoY29uc3QgUVN0cmluZyYgY29kZWNfbmFtZSk7CistCXN0YXRpYyB2b2lkIFByZXBhcmVT dHJlYW0oQVZTdHJlYW0qIHN0cmVhbSwgQVZDb2RlY0NvbnRleHQqIGNvZGVjX2NvbnRleHQsIEFW Q29kZWMqIGNvZGVjLCBBVkRpY3Rpb25hcnkqKiBvcHRpb25zLCBjb25zdCBzdGQ6OnZlY3Rvcjxz dGQ6OnBhaXI8UVN0cmluZywgUVN0cmluZz4gPiYgY29kZWNfb3B0aW9ucywKKysJc3RhdGljIHZv aWQgUHJlcGFyZVN0cmVhbShBVlN0cmVhbSogc3RyZWFtLCBBVkNvZGVjQ29udGV4dCogY29kZWNf Y29udGV4dCwgY29uc3QgQVZDb2RlYyogY29kZWMsIEFWRGljdGlvbmFyeSoqIG9wdGlvbnMsIGNv bnN0IHN0ZDo6dmVjdG9yPHN0ZDo6cGFpcjxRU3RyaW5nLCBRU3RyaW5nPiA+JiBjb2RlY19vcHRp b25zLAorIAkJCQkJCQkgIHVuc2lnbmVkIGludCBiaXRfcmF0ZSwgdW5zaWduZWQgaW50IGNoYW5u ZWxzLCB1bnNpZ25lZCBpbnQgc2FtcGxlX3JhdGUpOworIAorIHByaXZhdGU6CitkaWZmIC0tZ2l0 IGEvc3JjL0FWL091dHB1dC9CYXNlRW5jb2Rlci5jcHAgYi9zcmMvQVYvT3V0cHV0L0Jhc2VFbmNv ZGVyLmNwcAoraW5kZXggN2MwMWVmMy4uNDc4MGFhZiAxMDA2NDQKKy0tLSBhL3NyYy9BVi9PdXRw dXQvQmFzZUVuY29kZXIuY3BwCisrKysgYi9zcmMvQVYvT3V0cHV0L0Jhc2VFbmNvZGVyLmNwcAor QEAgLTQyLDcgKzQyLDcgQEAgZG91YmxlIFBhcnNlQ29kZWNPcHRpb25Eb3VibGUoY29uc3QgUVN0 cmluZyYga2V5LCBjb25zdCBRU3RyaW5nJiB2YWx1ZSwgZG91YmxlIG0KKyAJcmV0dXJuIGNsYW1w KHZhbHVlX2RvdWJsZSwgbWluLCBtYXgpICogbXVsdGlwbHk7CisgfQorIAorLUJhc2VFbmNvZGVy OjpCYXNlRW5jb2RlcihNdXhlciogbXV4ZXIsIEFWU3RyZWFtKiBzdHJlYW0sIEFWQ29kZWNDb250 ZXh0KiBjb2RlY19jb250ZXh0LCBBVkNvZGVjKiBjb2RlYywgQVZEaWN0aW9uYXJ5Kiogb3B0aW9u cykgeworK0Jhc2VFbmNvZGVyOjpCYXNlRW5jb2RlcihNdXhlciogbXV4ZXIsIEFWU3RyZWFtKiBz dHJlYW0sIEFWQ29kZWNDb250ZXh0KiBjb2RlY19jb250ZXh0LCBjb25zdCBBVkNvZGVjKiBjb2Rl YywgQVZEaWN0aW9uYXJ5Kiogb3B0aW9ucykgeworIAorIAltX211eGVyID0gbXV4ZXI7CisgCW1f c3RyZWFtID0gc3RyZWFtOworQEAgLTE1Nyw3ICsxNTcsNyBAQCB2b2lkIEJhc2VFbmNvZGVyOjpJ bmNyZW1lbnRQYWNrZXRDb3VudGVyKCkgeworIAkrK2xvY2stPm1fdG90YWxfcGFja2V0czsKKyB9 CisgCistdm9pZCBCYXNlRW5jb2Rlcjo6SW5pdChBVkNvZGVjKiBjb2RlYywgQVZEaWN0aW9uYXJ5 Kiogb3B0aW9ucykgeworK3ZvaWQgQmFzZUVuY29kZXI6OkluaXQoY29uc3QgQVZDb2RlYyogY29k ZWMsIEFWRGljdGlvbmFyeSoqIG9wdGlvbnMpIHsKKyAKKyAJLy8gb3BlbiBjb2RlYworIAlpZihh dmNvZGVjX29wZW4yKG1fY29kZWNfY29udGV4dCwgY29kZWMsIG9wdGlvbnMpIDwgMCkgeworZGlm ZiAtLWdpdCBhL3NyYy9BVi9PdXRwdXQvQmFzZUVuY29kZXIuaCBiL3NyYy9BVi9PdXRwdXQvQmFz ZUVuY29kZXIuaAoraW5kZXggM2Q5MmYyOS4uN2YwMmJiZCAxMDA2NDQKKy0tLSBhL3NyYy9BVi9P dXRwdXQvQmFzZUVuY29kZXIuaAorKysrIGIvc3JjL0FWL091dHB1dC9CYXNlRW5jb2Rlci5oCitA QCAtNTEsNyArNTEsNyBAQCBwcml2YXRlOgorIAlzdGQ6OmF0b21pYzxib29sPiBtX3Nob3VsZF9z dG9wLCBtX3Nob3VsZF9maW5pc2gsIG1faXNfZG9uZSwgbV9lcnJvcl9vY2N1cnJlZDsKKyAKKyBw cm90ZWN0ZWQ6CistCUJhc2VFbmNvZGVyKE11eGVyKiBtdXhlciwgQVZTdHJlYW0qIHN0cmVhbSwg QVZDb2RlY0NvbnRleHQqIGNvZGVjX2NvbnRleHQsIEFWQ29kZWMqIGNvZGVjLCBBVkRpY3Rpb25h cnkqKiBvcHRpb25zKTsKKysJQmFzZUVuY29kZXIoTXV4ZXIqIG11eGVyLCBBVlN0cmVhbSogc3Ry ZWFtLCBBVkNvZGVjQ29udGV4dCogY29kZWNfY29udGV4dCwgY29uc3QgQVZDb2RlYyogY29kZWMs IEFWRGljdGlvbmFyeSoqIG9wdGlvbnMpOworIAorIHB1YmxpYzoKKyAJdmlydHVhbCB+QmFzZUVu Y29kZXIoKTsgLy8gZW5jb2RlcnMgd2lsbCBiZSBkZWxldGVkIGJ5IE11eGVyLCBkb24ndCBkZWxl dGUgdGhlbSB5b3Vyc2VsZiEKK0BAIC0xMTcsNyArMTE3LDcgQEAgcHJvdGVjdGVkOgorIAl2b2lk IEluY3JlbWVudFBhY2tldENvdW50ZXIoKTsKKyAKKyBwcml2YXRlOgorLQl2b2lkIEluaXQoQVZD b2RlYyogY29kZWMsIEFWRGljdGlvbmFyeSoqIG9wdGlvbnMpOworKwl2b2lkIEluaXQoY29uc3Qg QVZDb2RlYyogY29kZWMsIEFWRGljdGlvbmFyeSoqIG9wdGlvbnMpOworIAl2b2lkIEZyZWUoKTsK KyAKKyAJdm9pZCBFbmNvZGVyVGhyZWFkKCk7CitkaWZmIC0tZ2l0IGEvc3JjL0FWL091dHB1dC9N dXhlci5jcHAgYi9zcmMvQVYvT3V0cHV0L011eGVyLmNwcAoraW5kZXggYWQ1ODM4MC4uMTQ2NTBi MCAxMDA2NDQKKy0tLSBhL3NyYy9BVi9PdXRwdXQvTXV4ZXIuY3BwCisrKysgYi9zcmMvQVYvT3V0 cHV0L011eGVyLmNwcAorQEAgLTg3LDcgKzg3LDcgQEAgTXV4ZXI6On5NdXhlcigpIHsKKyAKKyBW aWRlb0VuY29kZXIqIE11eGVyOjpBZGRWaWRlb0VuY29kZXIoY29uc3QgUVN0cmluZyYgY29kZWNf bmFtZSwgY29uc3Qgc3RkOjp2ZWN0b3I8c3RkOjpwYWlyPFFTdHJpbmcsIFFTdHJpbmc+ID4mIGNv ZGVjX29wdGlvbnMsCisgCQkJCQkJCQkJIHVuc2lnbmVkIGludCBiaXRfcmF0ZSwgdW5zaWduZWQg aW50IHdpZHRoLCB1bnNpZ25lZCBpbnQgaGVpZ2h0LCB1bnNpZ25lZCBpbnQgZnJhbWVfcmF0ZSkg eworLQlBVkNvZGVjICpjb2RlYyA9IEZpbmRDb2RlYyhjb2RlY19uYW1lKTsKKysJY29uc3QgQVZD b2RlYyAqY29kZWMgPSBGaW5kQ29kZWMoY29kZWNfbmFtZSk7CisgCUFWQ29kZWNDb250ZXh0ICpj b2RlY19jb250ZXh0ID0gTlVMTDsKKyAJQVZTdHJlYW0gKnN0cmVhbSA9IEFkZFN0cmVhbShjb2Rl YywgJmNvZGVjX2NvbnRleHQpOworIAlWaWRlb0VuY29kZXIgKmVuY29kZXI7CitAQCAtMTExLDcg KzExMSw3IEBAIFZpZGVvRW5jb2RlciogTXV4ZXI6OkFkZFZpZGVvRW5jb2Rlcihjb25zdCBRU3Ry aW5nJiBjb2RlY19uYW1lLCBjb25zdCBzdGQ6OnZlY3RvCisgCisgQXVkaW9FbmNvZGVyKiBNdXhl cjo6QWRkQXVkaW9FbmNvZGVyKGNvbnN0IFFTdHJpbmcmIGNvZGVjX25hbWUsIGNvbnN0IHN0ZDo6 dmVjdG9yPHN0ZDo6cGFpcjxRU3RyaW5nLCBRU3RyaW5nPiA+JiBjb2RlY19vcHRpb25zLAorIAkJ CQkJCQkJCSB1bnNpZ25lZCBpbnQgYml0X3JhdGUsIHVuc2lnbmVkIGludCBjaGFubmVscywgdW5z aWduZWQgaW50IHNhbXBsZV9yYXRlKSB7CistCUFWQ29kZWMgKmNvZGVjID0gRmluZENvZGVjKGNv ZGVjX25hbWUpOworKwljb25zdCBBVkNvZGVjICpjb2RlYyA9IEZpbmRDb2RlYyhjb2RlY19uYW1l KTsKKyAJQVZDb2RlY0NvbnRleHQgKmNvZGVjX2NvbnRleHQgPSBOVUxMOworIAlBVlN0cmVhbSAq c3RyZWFtID0gQWRkU3RyZWFtKGNvZGVjLCAmY29kZWNfY29udGV4dCk7CisgCUF1ZGlvRW5jb2Rl ciAqZW5jb2RlcjsKK0BAIC0xOTQsNyArMTk0LDcgQEAgdW5zaWduZWQgaW50IE11eGVyOjpHZXRR dWV1ZWRQYWNrZXRDb3VudCh1bnNpZ25lZCBpbnQgc3RyZWFtX2luZGV4KSB7Cisgdm9pZCBNdXhl cjo6SW5pdCgpIHsKKyAKKyAJLy8gZ2V0IHRoZSBmb3JtYXQgd2Ugd2FudCAodGhpcyBpcyBqdXN0 IGEgcG9pbnRlciwgd2UgZG9uJ3QgaGF2ZSB0byBmcmVlIHRoaXMpCistCUFWT3V0cHV0Rm9ybWF0 ICpmb3JtYXQgPSBhdl9ndWVzc19mb3JtYXQobV9jb250YWluZXJfbmFtZS50b1V0ZjgoKS5jb25z dERhdGEoKSwgTlVMTCwgTlVMTCk7CisrCWNvbnN0IEFWT3V0cHV0Rm9ybWF0ICpmb3JtYXQgPSBh dl9ndWVzc19mb3JtYXQobV9jb250YWluZXJfbmFtZS50b1V0ZjgoKS5jb25zdERhdGEoKSwgTlVM TCwgTlVMTCk7CisgCWlmKGZvcm1hdCA9PSBOVUxMKSB7CisgCQlMb2dnZXI6OkxvZ0Vycm9yKCJb TXV4ZXI6OkluaXRdICIgKyBMb2dnZXI6OnRyKCJFcnJvcjogQ2FuJ3QgZmluZCBjaG9zZW4gb3V0 cHV0IGZvcm1hdCEiKSk7CisgCQl0aHJvdyBMaWJhdkV4Y2VwdGlvbigpOworQEAgLTI2MSw4ICsy NjEsOCBAQCB2b2lkIE11eGVyOjpGcmVlKCkgeworIAl9CisgfQorIAorLUFWQ29kZWMqIE11eGVy OjpGaW5kQ29kZWMoY29uc3QgUVN0cmluZyYgY29kZWNfbmFtZSkgeworLQlBVkNvZGVjICpjb2Rl YyA9IGF2Y29kZWNfZmluZF9lbmNvZGVyX2J5X25hbWUoY29kZWNfbmFtZS50b1V0ZjgoKS5jb25z dERhdGEoKSk7CisrY29uc3QgQVZDb2RlYyogTXV4ZXI6OkZpbmRDb2RlYyhjb25zdCBRU3RyaW5n JiBjb2RlY19uYW1lKSB7CisrCWNvbnN0IEFWQ29kZWMgKmNvZGVjID0gYXZjb2RlY19maW5kX2Vu Y29kZXJfYnlfbmFtZShjb2RlY19uYW1lLnRvVXRmOCgpLmNvbnN0RGF0YSgpKTsKKyAJaWYoY29k ZWMgPT0gTlVMTCkgeworIAkJTG9nZ2VyOjpMb2dFcnJvcigiW011eGVyOjpGaW5kQ29kZWNdICIg KyBMb2dnZXI6OnRyKCJFcnJvcjogQ2FuJ3QgZmluZCBjb2RlYyEiKSk7CisgCQl0aHJvdyBMaWJh dkV4Y2VwdGlvbigpOworQEAgLTI3MCw3ICsyNzAsNyBAQCBBVkNvZGVjKiBNdXhlcjo6RmluZENv ZGVjKGNvbnN0IFFTdHJpbmcmIGNvZGVjX25hbWUpIHsKKyAJcmV0dXJuIGNvZGVjOworIH0KKyAK Ky1BVlN0cmVhbSogTXV4ZXI6OkFkZFN0cmVhbShBVkNvZGVjKiBjb2RlYywgQVZDb2RlY0NvbnRl eHQqKiBjb2RlY19jb250ZXh0KSB7CisrQVZTdHJlYW0qIE11eGVyOjpBZGRTdHJlYW0oY29uc3Qg QVZDb2RlYyogY29kZWMsIEFWQ29kZWNDb250ZXh0KiogY29kZWNfY29udGV4dCkgeworIAlhc3Nl cnQoIW1fc3RhcnRlZCk7CisgCWFzc2VydChtX2Zvcm1hdF9jb250ZXh0LT5uYl9zdHJlYW1zIDwg TVVYRVJfTUFYX1NUUkVBTVMpOworIAorZGlmZiAtLWdpdCBhL3NyYy9BVi9PdXRwdXQvTXV4ZXIu aCBiL3NyYy9BVi9PdXRwdXQvTXV4ZXIuaAoraW5kZXggZDcyMzQ3ZC4uYjEwNGJjYiAxMDA2NDQK Ky0tLSBhL3NyYy9BVi9PdXRwdXQvTXV4ZXIuaAorKysrIGIvc3JjL0FWL091dHB1dC9NdXhlci5o CitAQCAtMTE0LDggKzExNCw4IEBAIHByaXZhdGU6CisgCXZvaWQgSW5pdCgpOworIAl2b2lkIEZy ZWUoKTsKKyAKKy0JQVZDb2RlYyogRmluZENvZGVjKGNvbnN0IFFTdHJpbmcmIGNvZGVjX25hbWUp OworLQlBVlN0cmVhbSogQWRkU3RyZWFtKEFWQ29kZWMqIGNvZGVjLCBBVkNvZGVjQ29udGV4dCoq IGNvZGVjX2NvbnRleHQpOworKwljb25zdCBBVkNvZGVjKiBGaW5kQ29kZWMoY29uc3QgUVN0cmlu ZyYgY29kZWNfbmFtZSk7CisrCUFWU3RyZWFtKiBBZGRTdHJlYW0oY29uc3QgQVZDb2RlYyogY29k ZWMsIEFWQ29kZWNDb250ZXh0KiogY29kZWNfY29udGV4dCk7CisgCisgCXZvaWQgTXV4ZXJUaHJl YWQoKTsKKyAKK2RpZmYgLS1naXQgYS9zcmMvQVYvT3V0cHV0L1ZpZGVvRW5jb2Rlci5jcHAgYi9z cmMvQVYvT3V0cHV0L1ZpZGVvRW5jb2Rlci5jcHAKK2luZGV4IDgwODdlOGUuLmZjOGI1ZDEgMTAw NjQ0CistLS0gYS9zcmMvQVYvT3V0cHV0L1ZpZGVvRW5jb2Rlci5jcHAKKysrKyBiL3NyYy9BVi9P dXRwdXQvVmlkZW9FbmNvZGVyLmNwcAorQEAgLTM0LDcgKzM0LDcgQEAgY29uc3Qgc3RkOjp2ZWN0 b3I8VmlkZW9FbmNvZGVyOjpQaXhlbEZvcm1hdERhdGE+IFZpZGVvRW5jb2Rlcjo6U1VQUE9SVEVE X1BJWEVMX0YKKyAJeyJyZ2IiLCBBVl9QSVhfRk1UX1JHQjI0LCBmYWxzZX0sCisgfTsKKyAKKy1W aWRlb0VuY29kZXI6OlZpZGVvRW5jb2RlcihNdXhlciogbXV4ZXIsIEFWU3RyZWFtKiBzdHJlYW0s IEFWQ29kZWNDb250ZXh0KiBjb2RlY19jb250ZXh0LCBBVkNvZGVjKiBjb2RlYywgQVZEaWN0aW9u YXJ5Kiogb3B0aW9ucykKKytWaWRlb0VuY29kZXI6OlZpZGVvRW5jb2RlcihNdXhlciogbXV4ZXIs IEFWU3RyZWFtKiBzdHJlYW0sIEFWQ29kZWNDb250ZXh0KiBjb2RlY19jb250ZXh0LCBjb25zdCBB VkNvZGVjKiBjb2RlYywgQVZEaWN0aW9uYXJ5Kiogb3B0aW9ucykKKyAJOiBCYXNlRW5jb2Rlciht dXhlciwgc3RyZWFtLCBjb2RlY19jb250ZXh0LCBjb2RlYywgb3B0aW9ucykgeworIAorICNpZiAh U1NSX1VTRV9BVkNPREVDX0VOQ09ERV9WSURFTzIKK0BAIC05NSw3ICs5NSw3IEBAIHVuc2lnbmVk IGludCBWaWRlb0VuY29kZXI6OkdldEZyYW1lUmF0ZSgpIHsKKyB9CisgCisgYm9vbCBWaWRlb0Vu Y29kZXI6OkFWQ29kZWNJc1N1cHBvcnRlZChjb25zdCBRU3RyaW5nJiBjb2RlY19uYW1lKSB7Cist CUFWQ29kZWMgKmNvZGVjID0gYXZjb2RlY19maW5kX2VuY29kZXJfYnlfbmFtZShjb2RlY19uYW1l LnRvVXRmOCgpLmNvbnN0RGF0YSgpKTsKKysJY29uc3QgQVZDb2RlYyAqY29kZWMgPSBhdmNvZGVj X2ZpbmRfZW5jb2Rlcl9ieV9uYW1lKGNvZGVjX25hbWUudG9VdGY4KCkuY29uc3REYXRhKCkpOwor IAlpZihjb2RlYyA9PSBOVUxMKQorIAkJcmV0dXJuIGZhbHNlOworIAlpZighYXZfY29kZWNfaXNf ZW5jb2Rlcihjb2RlYykpCitAQCAtMTExLDcgKzExMSw3IEBAIGJvb2wgVmlkZW9FbmNvZGVyOjpB VkNvZGVjSXNTdXBwb3J0ZWQoY29uc3QgUVN0cmluZyYgY29kZWNfbmFtZSkgeworIAlyZXR1cm4g ZmFsc2U7CisgfQorIAorLXZvaWQgVmlkZW9FbmNvZGVyOjpQcmVwYXJlU3RyZWFtKEFWU3RyZWFt KiBzdHJlYW0sIEFWQ29kZWNDb250ZXh0KiBjb2RlY19jb250ZXh0LCBBVkNvZGVjKiBjb2RlYywg QVZEaWN0aW9uYXJ5Kiogb3B0aW9ucywgY29uc3Qgc3RkOjp2ZWN0b3I8c3RkOjpwYWlyPFFTdHJp bmcsIFFTdHJpbmc+ID4mIGNvZGVjX29wdGlvbnMsCisrdm9pZCBWaWRlb0VuY29kZXI6OlByZXBh cmVTdHJlYW0oQVZTdHJlYW0qIHN0cmVhbSwgQVZDb2RlY0NvbnRleHQqIGNvZGVjX2NvbnRleHQs IGNvbnN0IEFWQ29kZWMqIGNvZGVjLCBBVkRpY3Rpb25hcnkqKiBvcHRpb25zLCBjb25zdCBzdGQ6 OnZlY3RvcjxzdGQ6OnBhaXI8UVN0cmluZywgUVN0cmluZz4gPiYgY29kZWNfb3B0aW9ucywKKyAJ CQkJCQkJCSB1bnNpZ25lZCBpbnQgYml0X3JhdGUsIHVuc2lnbmVkIGludCB3aWR0aCwgdW5zaWdu ZWQgaW50IGhlaWdodCwgdW5zaWduZWQgaW50IGZyYW1lX3JhdGUpIHsKKyAKKyAJaWYod2lkdGgg PT0gMCB8fCBoZWlnaHQgPT0gMCkgeworZGlmZiAtLWdpdCBhL3NyYy9BVi9PdXRwdXQvVmlkZW9F bmNvZGVyLmggYi9zcmMvQVYvT3V0cHV0L1ZpZGVvRW5jb2Rlci5oCitpbmRleCBjYjdjYTI3Li42 OGQ4NzJlIDEwMDY0NAorLS0tIGEvc3JjL0FWL091dHB1dC9WaWRlb0VuY29kZXIuaAorKysrIGIv c3JjL0FWL091dHB1dC9WaWRlb0VuY29kZXIuaAorQEAgLTQwLDcgKzQwLDcgQEAgcHJpdmF0ZToK KyAjZW5kaWYKKyAKKyBwdWJsaWM6CistCVZpZGVvRW5jb2RlcihNdXhlciogbXV4ZXIsIEFWU3Ry ZWFtKiBzdHJlYW0sIEFWQ29kZWNDb250ZXh0KiBjb2RlY19jb250ZXh0LCBBVkNvZGVjKiBjb2Rl YywgQVZEaWN0aW9uYXJ5Kiogb3B0aW9ucyk7CisrCVZpZGVvRW5jb2RlcihNdXhlciogbXV4ZXIs IEFWU3RyZWFtKiBzdHJlYW0sIEFWQ29kZWNDb250ZXh0KiBjb2RlY19jb250ZXh0LCBjb25zdCBB VkNvZGVjKiBjb2RlYywgQVZEaWN0aW9uYXJ5Kiogb3B0aW9ucyk7CisgCX5WaWRlb0VuY29kZXIo KTsKKyAKKyAJLy8gUmV0dXJucyB0aGUgcmVxdWlyZWQgcGl4ZWwgZm9ybWF0LgorQEAgLTU1LDcg KzU1LDcgQEAgcHVibGljOgorIAorIHB1YmxpYzoKKyAJc3RhdGljIGJvb2wgQVZDb2RlY0lzU3Vw cG9ydGVkKGNvbnN0IFFTdHJpbmcmIGNvZGVjX25hbWUpOworLQlzdGF0aWMgdm9pZCBQcmVwYXJl U3RyZWFtKEFWU3RyZWFtKiBzdHJlYW0sIEFWQ29kZWNDb250ZXh0KiBjb2RlY19jb250ZXh0LCBB VkNvZGVjKiBjb2RlYywgQVZEaWN0aW9uYXJ5Kiogb3B0aW9ucywgY29uc3Qgc3RkOjp2ZWN0b3I8 c3RkOjpwYWlyPFFTdHJpbmcsIFFTdHJpbmc+ID4mIGNvZGVjX29wdGlvbnMsCisrCXN0YXRpYyB2 b2lkIFByZXBhcmVTdHJlYW0oQVZTdHJlYW0qIHN0cmVhbSwgQVZDb2RlY0NvbnRleHQqIGNvZGVj X2NvbnRleHQsIGNvbnN0IEFWQ29kZWMqIGNvZGVjLCBBVkRpY3Rpb25hcnkqKiBvcHRpb25zLCBj b25zdCBzdGQ6OnZlY3RvcjxzdGQ6OnBhaXI8UVN0cmluZywgUVN0cmluZz4gPiYgY29kZWNfb3B0 aW9ucywKKyAJCQkJCQkJICB1bnNpZ25lZCBpbnQgYml0X3JhdGUsIHVuc2lnbmVkIGludCB3aWR0 aCwgdW5zaWduZWQgaW50IGhlaWdodCwgdW5zaWduZWQgaW50IGZyYW1lX3JhdGUpOworIAorIHBy aXZhdGU6CistLSAKKzIuNDMuMAorCmRpZmYgLS1naXQgYS9zcmNwa2dzL3Nzci90ZW1wbGF0ZSBi L3NyY3BrZ3Mvc3NyL3RlbXBsYXRlCmluZGV4IDMwOTc3NTRlM2NiZTU0Li41ZDVjMGE5OGQ2NWY1 OCAxMDA2NDQKLS0tIGEvc3JjcGtncy9zc3IvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9zc3IvdGVt cGxhdGUKQEAgLTEsMTEgKzEsMTEgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3NzcicKIHBrZ25h bWU9c3NyCiB2ZXJzaW9uPTAuNC40Ci1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHls ZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EV0lUSF9RVDU9T04iCiBob3N0bWFrZWRlcGVuZHM9 InBrZy1jb25maWciCi1tYWtlZGVwZW5kcz0iYWxzYS1saWItZGV2ZWwgZmZtcGVnLWRldmVsIGds dS1kZXZlbCBqYWNrLWRldmVsIHB1bHNlYXVkaW8tZGV2ZWwKK21ha2VkZXBlbmRzPSJhbHNhLWxp Yi1kZXZlbCBmZm1wZWc2LWRldmVsIGdsdS1kZXZlbCBqYWNrLWRldmVsIHB1bHNlYXVkaW8tZGV2 ZWwKICBxdDUtdG9vbHMtZGV2ZWwgcXQ1LXgxMWV4dHJhcy1kZXZlbCBsaWJYaW5lcmFtYS1kZXZl bCB2NGwtdXRpbHMtZGV2ZWwiCiBkZXBlbmRzPSJkZXNrdG9wLWZpbGUtdXRpbHMgaGljb2xvci1p Y29uLXRoZW1lIgogc2hvcnRfZGVzYz0iU2ltcGxlIFNjcmVlbiBSZWNvcmRlciBmb3IgcHJvZ3Jh bXMgYW5kIGdhbWVzIgoKRnJvbSAyYzMwYWIyMzYyYmFmNjEwZjA5OWMwY2JkYWE2ZWQ5MzdjYjJl MjQwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwu Y29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjUyIC0wNDAwClN1YmplY3Q6IFtQQVRD SCA1NC84OV0gc3luZmlnOiByZXZidW1wIGZvciBmZm1wZWc2IGFuZCBtbHQ3CgotLS0KIHNyY3Br Z3Mvc3luZmlnL3BhdGNoZXMvZmZtcGVnNi5wYXRjaCB8IDcxICsrKysrKysrKysrKysrKysrKysr KysrKysrKysKIHNyY3BrZ3Mvc3luZmlnL3RlbXBsYXRlICAgICAgICAgICAgICB8ICA4ICsrLS0K IDIgZmlsZXMgY2hhbmdlZCwgNzUgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKIGNyZWF0 ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3N5bmZpZy9wYXRjaGVzL2ZmbXBlZzYucGF0Y2gKCmRpZmYg LS1naXQgYS9zcmNwa2dzL3N5bmZpZy9wYXRjaGVzL2ZmbXBlZzYucGF0Y2ggYi9zcmNwa2dzL3N5 bmZpZy9wYXRjaGVzL2ZmbXBlZzYucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw MDAwMDAwMDAwMDAuLjEwNzgwYjQyNzgyZjRiCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9z eW5maWcvcGF0Y2hlcy9mZm1wZWc2LnBhdGNoCkBAIC0wLDAgKzEsNzEgQEAKKy0tLSBhL3NyYy9t b2R1bGVzL21vZF9saWJhdmNvZGVjL3RyZ3RfYXYuY3BwCTIwMjItMTAtMjUgMDk6MTQ6MTIuMDAw MDAwMDAwIC0wNDAwCisrKysgYi9zcmMvbW9kdWxlcy9tb2RfbGliYXZjb2RlYy90cmd0X2F2LmNw cAkyMDIzLTA1LTA1IDIxOjM0OjE3Ljg5OTE5NDU1OSAtMDQwMAorQEAgLTM4LDYgKzQxLDcgQEAK KyBleHRlcm4gIkMiCisgeworICNpZmRlZiBIQVZFX0xJQkFWRk9STUFUX0FWRk9STUFUX0gKKysj CWluY2x1ZGUgPGxpYmF2Y29kZWMvYXZjb2RlYy5oPgorICMJaW5jbHVkZSA8bGliYXZmb3JtYXQv YXZmb3JtYXQuaD4KKyAjZWxpZiBkZWZpbmVkKEhBVkVfQVZGT1JNQVRfSCkKKyAjCWluY2x1ZGUg PGF2Zm9ybWF0Lmg+CitAQCAtMTU1LDExICsxNTYsMTEgQEAKKyAgICAgfQorIAorIAlib29sIG9w ZW5fdmlkZW9fc3RyZWFtKCkgeworLQkJaWYgKGF2Y29kZWNfb3BlbjIodmlkZW9fY29udGV4dCwg TlVMTCwgTlVMTCkgPCAwKSB7CisrCQlpZiAoYXZjb2RlY19vcGVuMih2aWRlb19jb250ZXh0LCBu dWxscHRyLCBudWxscHRyKSA8IDApIHsKKyAJCQlzeW5maWc6OmVycm9yKCJUYXJnZXRfTGliQVZD b2RlYzogY291bGQgbm90IG9wZW4gdmlkZW8gY29kZWMiKTsKKyAJCQkvLyBzZWVtcyB0aGUgY2Fs bGluZyBvZiBhdmNvZGVjX2ZyZWVfY29udGV4dCBhZnRlciBlcnJvciB3aWxsIGNhdXNlIGNyYXNo CisgCQkJLy8gc28ganVzdCBmb3JnZXQgYWJvdXQgdGhpcyBjb250ZXh0CistCQkJdmlkZW9fY29u dGV4dCA9IE5VTEw7CisrCQkJdmlkZW9fY29udGV4dCA9IG51bGxwdHI7CisgCQkJY2xvc2UoKTsK KyAJCQlyZXR1cm4gZmFsc2U7CisgICAgICAgICB9CitAQCAtMjM0LDE1ICsyMzUsMjEgQEAKKyAJ CWNsb3NlKCk7CisgCisgCQlpZiAoIWF2X3JlZ2lzdGVyZWQpIHsKKysjaWYgTElCQVZDT0RFQ19W RVJTSU9OX01BSk9SIDwgNTggLy8gRkZNUEVHIDwgNC4wCisgCQkJYXZfcmVnaXN0ZXJfYWxsKCk7 CisrI2VuZGlmCisgCQkJYXZfcmVnaXN0ZXJlZCA9IHRydWU7CisgCQl9CisgCisgCQkvLyBndWVz cyBmb3JtYXQKKy0JCUFWT3V0cHV0Rm9ybWF0ICpmb3JtYXQgPSBhdl9ndWVzc19mb3JtYXQoTlVM TCwgZmlsZW5hbWUuY19zdHIoKSwgTlVMTCk7CisrI2lmIExJQkFWQ09ERUNfVkVSU0lPTl9NQUpP UiA8IDU5IC8vIEZGTVBFRyA8IDUuMAorKwkJQVZPdXRwdXRGb3JtYXQqIGZvcm1hdCA9IGF2X2d1 ZXNzX2Zvcm1hdChudWxscHRyLCBmaWxlbmFtZS5jX3N0cigpLCBudWxscHRyKTsKKysjZWxzZQor KwkJY29uc3QgQVZPdXRwdXRGb3JtYXQqIGZvcm1hdCA9IGF2X2d1ZXNzX2Zvcm1hdChudWxscHRy LCBmaWxlbmFtZS5jX3N0cigpLCBudWxscHRyKTsKKysjZW5kaWYKKyAJCWlmICghZm9ybWF0KSB7 CisgCQkJc3luZmlnOjp3YXJuaW5nKCJUYXJnZXRfTGliQVZDb2RlYzogdW5hYmxlIHRvIGd1ZXNz IHRoZSBvdXRwdXQgZm9ybWF0LCBkZWZhdWx0aW5nIHRvIE1QRUciKTsKKy0JCQlmb3JtYXQgPSBh dl9ndWVzc19mb3JtYXQoIm1wZWciLCBOVUxMLCBOVUxMKTsKKysJCQlmb3JtYXQgPSBhdl9ndWVz c19mb3JtYXQoIm1wZWciLCBudWxscHRyLCBudWxscHRyKTsKKyAJCX0KKyAJCWlmICghZm9ybWF0 KSB7CisgCQkJc3luZmlnOjplcnJvcigiVGFyZ2V0X0xpYkFWQ29kZWM6IHVuYWJsZSB0byBmaW5k ICdtcGVnJyBvdXRwdXQgZm9ybWF0Iik7CitAQCAtMjU0LDYgKzI2MSw3IEBACisgCQljb250ZXh0 ID0gYXZmb3JtYXRfYWxsb2NfY29udGV4dCgpOworIAkJYXNzZXJ0KGNvbnRleHQpOworIAkJY29u dGV4dC0+b2Zvcm1hdCA9IGZvcm1hdDsKKysjaWYgTElCQVZDT0RFQ19WRVJTSU9OX01BSk9SIDwg NTggLy8gRkZNUEVHIDwgNC4wCisgCQlpZiAoZmlsZW5hbWUuc2l6ZSgpICsgMSA+IHNpemVvZihj b250ZXh0LT5maWxlbmFtZSkpIHsKKyAJCQlzeW5maWc6OmVycm9yKAorIAkJCQkiVGFyZ2V0X0xp YkFWQ29kZWM6IGZpbGVuYW1lIHRvbyBsb25nLCBtYXggbGVuZ3RoIGlzICVkLCBmaWxlbmFtZSBp cyAnJXMnIiwKK0BAIC0yNjMsNiArMjcxLDE0IEBACisgCQkJcmV0dXJuIGZhbHNlOworIAkJfQor IAkJbWVtY3B5KGNvbnRleHQtPmZpbGVuYW1lLCBmaWxlbmFtZS5jX3N0cigpLCBmaWxlbmFtZS5z aXplKCkgKyAxKTsKKysjZWxzZQorKwkJY29udGV4dC0+dXJsID0gYXZfc3RybmR1cChmaWxlbmFt ZS5jX3N0cigpLCBmaWxlbmFtZS5zaXplKCkpOworKwkJaWYgKCFjb250ZXh0LT51cmwpIHsKKysJ CQlzeW5maWc6OmVycm9yKCJUYXJnZXRfTGliQVZDb2RlYzogY2Fubm90IGFsbG9jYXRlIHNwYWNl IGZvciBmaWxlbmFtZSIpOworKwkJCWNsb3NlKCk7CisrCQkJcmV0dXJuIGZhbHNlOworKwkJfQor KyNlbmRpZgorIAorIAkJcGFja2V0ID0gYXZfcGFja2V0X2FsbG9jKCk7CisgCQlhc3NlcnQocGFj a2V0KTsKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc3luZmlnL3RlbXBsYXRlIGIvc3JjcGtncy9zeW5m aWcvdGVtcGxhdGUKaW5kZXggNTEwZWIyYjRkYmYwNWQuLjYzMDhiZGYxNzU4MTI0IDEwMDY0NAot LS0gYS9zcmNwa2dzL3N5bmZpZy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3N5bmZpZy90ZW1wbGF0 ZQpAQCAtMiwxMiArMiwxMiBAQAogIyBTaG91bGQgYmUga2VwdCBpbiBzeW5jIHdpdGggJ3N5bmZp Z3N0dWRpbycgYW5kICdFVEwnCiBwa2duYW1lPXN5bmZpZwogdmVyc2lvbj0xLjQuNQotcmV2aXNp b249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2Fy Z3M9Ii0td2l0aC1ib29zdC1saWJkaXI9JHtYQlBTX0NST1NTX0JBU0V9L3Vzci9saWIiCiBob3N0 bWFrZWRlcGVuZHM9ImJvb3N0LWJ1aWxkIEltYWdlTWFnaWNrIHBrZy1jb25maWcgaW50bHRvb2wi Ci1tYWtlZGVwZW5kcz0iRVRMIGdldHRleHQtZGV2ZWwgbGlieG1sKystZGV2ZWwgbWx0LWRldmVs IGxpYm1hZ2ljay1kZXZlbAotIGxpYm1uZy1kZXZlbCBib29zdC1idWlsZCBib29zdC1kZXZlbCBs aWJvcGVuZXhyLWRldmVsIGZmbXBlZy1kZXZlbCIKK21ha2VkZXBlbmRzPSJFVEwgZ2V0dGV4dC1k ZXZlbCBsaWJ4bWwrKy1kZXZlbCBtbHQ3LWRldmVsIGxpYm1hZ2ljay1kZXZlbAorIGxpYm1uZy1k ZXZlbCBib29zdC1idWlsZCBib29zdC1kZXZlbCBsaWJvcGVuZXhyLWRldmVsIGZmbXBlZzYtZGV2 ZWwiCiBkZXBlbmRzPSJJbWFnZU1hZ2ljayIKIHNob3J0X2Rlc2M9IkNMSSAyRCB2ZWN0b3IgYW5k IHRpbWVsaW5lLWJhc2VkIGFuaW1hdGlvbiBzb2Z0d2FyZSIKIG1haW50YWluZXI9Ik9ycGhhbmVk IDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCkBAIC0yMCw3ICsyMCw3IEBAIENYWEZMQUdTPSItc3Rk PWMrKzExIC1ESEFWRV9MT0NBTEVfSD0xIgogCiBzeW5maWctZGV2ZWxfcGFja2FnZSgpIHsKIAlk ZXBlbmRzPSIke3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KLQkgbGlib3BlbmV4 ci1kZXZlbCBsaWJ4bWwrKy1kZXZlbCBtbHQtZGV2ZWwiCisJIGxpYm9wZW5leHItZGV2ZWwgbGli eG1sKystZGV2ZWwgbWx0Ny1kZXZlbCIKIAlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxvcG1lbnQgZmls ZXMiCiAJcGtnX2luc3RhbGwoKSB7CiAJCXZtb3ZlIHVzci9iaW4vc3luZmlnLWNvbmZpZwoKRnJv bSAzZTAyNDBlZjAzNDE1ZjFiNzg5ODY5MTEwNmFkYjEyNjQ0ODY1ZDAwIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIy IE1hciAyMDIzIDIwOjAxOjUyIC0wNDAwClN1YmplY3Q6IFtQQVRDSCA1NS84OV0gdGltZzogcmV2 YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL3RpbWcvdGVtcGxhdGUgfCA0ICsrLS0KIDEg ZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy90aW1nL3RlbXBsYXRlIGIvc3JjcGtncy90aW1nL3RlbXBsYXRlCmluZGV4IDJh MmFiNzYzZDJmZGRmLi5jNGVmOTc2NWZmNGU1ZCAxMDA2NDQKLS0tIGEvc3JjcGtncy90aW1nL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvdGltZy90ZW1wbGF0ZQpAQCAtMSwxMSArMSwxMSBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAndGltZycKIHBrZ25hbWU9dGltZwogdmVyc2lvbj0xLjQuNQotcmV2 aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSIt RFdJVEhfT1BFTlNMSURFX1NVUFBPUlQ9b2ZmIC1Xbm8tZGV2IgogaG9zdG1ha2VkZXBlbmRzPSJw a2ctY29uZmlnIGdpdCIKLW1ha2VkZXBlbmRzPSJsaWJncmFwaGljc21hZ2ljay1kZXZlbCBmZm1w ZWctZGV2ZWwgbGlianBlZy10dXJiby1kZXZlbCBsaWJleGlmLWRldmVsIgorbWFrZWRlcGVuZHM9 ImxpYmdyYXBoaWNzbWFnaWNrLWRldmVsIGZmbXBlZzYtZGV2ZWwgbGlianBlZy10dXJiby1kZXZl bCBsaWJleGlmLWRldmVsIgogc2hvcnRfZGVzYz0iMjQtYml0IGNvbG9yIGltYWdlICYgdmlkZW8g dmlld2VyIGZvciB0ZXJtaW5hbCIKIG1haW50YWluZXI9IjMzS0sgPGczM2trQHBtLm1lPiIKIGxp Y2Vuc2U9IkdQTC0yLjAtb25seSIKCkZyb20gZGUyOGY1YzY3YzFjZjY1ZThiNGNiZmJkOTViMzI2 MzRhZjUyMTIyZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1 QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo1MiAtMDQwMApTdWJqZWN0 OiBbUEFUQ0ggNTYvODldIHZpY2U6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy92 aWNlL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAy IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdmljZS90ZW1wbGF0ZSBiL3NyY3Br Z3MvdmljZS90ZW1wbGF0ZQppbmRleCAxYzY0MWQ5YWU5YmUyMi4uMDUyZmExZWVjYzYyNjggMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvdmljZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3ZpY2UvdGVtcGxh dGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd2aWNlJwogcGtnbmFtZT12 aWNlCiB2ZXJzaW9uPTMuOAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251 LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLWNwdWhpc3RvcnkgLS1lbmFibGUt eDY0IC0tZGlzYWJsZS1wZGYtZG9jcwogIC0tbGliZGlyPS91c3IvbGliJFhCUFNfVEFSR0VUX1dP UkRTSVpFICQodm9wdF9lbmFibGUgc2RsMiBzZGx1aTIpCkBAIC0xMiw3ICsxMiw3IEBAIGhvc3Rt YWtlZGVwZW5kcz0icGtnLWNvbmZpZyBmbGV4IGRvczJ1bml4IHhhIHBlcmwgZ2xpYi1kZXZlbCB4 ZGctdXRpbHMiCiBtYWtlZGVwZW5kcz0iemxpYi1kZXZlbCByZWFkbGluZS1kZXZlbCBsaWJwbmct ZGV2ZWwgZ2xldy1kZXZlbCBhbHNhLWxpYi1kZXZlbAogIGxpYmN1cmwtZGV2ZWwgJCh2b3B0X2lm IHNkbDIgU0RMMl9taXhlci1kZXZlbCkgJCh2b3B0X2lmIHNkbDIgU0RMMi1kZXZlbCkKICAkKHZv cHRfaWYgZ3RrMyBndGsrMy1kZXZlbCkgJCh2b3B0X2lmIGd0azMgcHVsc2VhdWRpby1kZXZlbCkK LSAkKHZvcHRfaWYgZmZtcGVnIGZmbXBlZy1kZXZlbCkiCisgJCh2b3B0X2lmIGZmbXBlZyBmZm1w ZWc2LWRldmVsKSIKIHNob3J0X2Rlc2M9IkVtdWxhdG9yIGZvciBDNjQsIEMxMjgsIENCTS1JSSwg UEVULCBWSUMyMCwgUGx1czQgYW5kIEMxNiIKIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5A dm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgoKRnJvbSAwZmQwZDE3 MDFmYTY3MTkzNjQ4N2ViZDg3YWRhMzlhNTc2YWYxNzE3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIz IDIwOjAxOjUyIC0wNDAwClN1YmplY3Q6IFtQQVRDSCA1Ny84OV0gd2F5cGlwZTogcmV2YnVtcCBm b3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL3dheXBpcGUvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmls ZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy93YXlwaXBlL3RlbXBsYXRlIGIvc3JjcGtncy93YXlwaXBlL3RlbXBsYXRlCmluZGV4 IDZkYTg4YjIxYmYyYTE5Li44NzExNDdiMGUyMTQ4ZSAxMDA2NDQKLS0tIGEvc3JjcGtncy93YXlw aXBlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvd2F5cGlwZS90ZW1wbGF0ZQpAQCAtMSwxNCArMSwx NCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnd2F5cGlwZScKIHBrZ25hbWU9d2F5cGlwZQogdmVy c2lvbj0wLjguNgotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9bWVzb24KICMg bHRvIGlzIG9mZiBiZWNhdXNlIGl0IGNhdXNlcyBsaW5raW5nIGVycm9ycyBpbiBhcm12NmwgYW5k IGFybXY3bCAoZHVlIHRvIE5FT04pCiBjb25maWd1cmVfYXJncz0iLUR3ZXJyb3I9ZmFsc2UgLUR3 aXRoX2RtYWJ1Zj1lbmFibGVkIC1Ed2l0aF9sejQ9ZW5hYmxlZAogIC1Ed2l0aF96c3RkPWVuYWJs ZWQgLUR3aXRoX3ZpZGVvPWVuYWJsZWQgLUR3aXRoX3ZhYXBpPWVuYWJsZWQgLURiX2x0bz1mYWxz ZSIKIGhvc3RtYWtlZGVwZW5kcz0id2F5bGFuZC1kZXZlbCBzY2RvYyBwa2ctY29uZmlnIgogbWFr ZWRlcGVuZHM9ImxpYmx6NC1kZXZlbCBsaWJ6c3RkLWRldmVsIGxpYnZhLWRldmVsCi0gTWVzYUxp Yi1kZXZlbCBsaWJkcm0tZGV2ZWwgZmZtcGVnLWRldmVsIgorIE1lc2FMaWItZGV2ZWwgbGliZHJt LWRldmVsIGZmbXBlZzYtZGV2ZWwiCiBkZXBlbmRzPSJvcGVuc3NoIgogc2hvcnRfZGVzYz0iUHJv eHkgZm9yIFdheWxhbmQgY2xpZW50cyIKIG1haW50YWluZXI9IsOJcmljbyBOb2d1ZWlyYSA8ZXJp Y29uckBkaXNyb290Lm9yZz4iCgpGcm9tIGIyZWJhYWViNjc1Y2U1MDRjZGZjZDI2ZDFjNWZkMzVh YjcwZDAzOGYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBn bWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NTIgLTA0MDAKU3ViamVjdDog W1BBVENIIDU4Lzg5XSB4cHJhOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MveHBy YS90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3hwcmEvdGVtcGxhdGUgYi9zcmNwa2dz L3hwcmEvdGVtcGxhdGUKaW5kZXggYTViZDg3MDQwZDAxZDMuLmZkMWY1MmFjNjRiNzUwIDEwMDY0 NAotLS0gYS9zcmNwa2dzL3hwcmEvdGVtcGxhdGUKKysrIGIvc3JjcGtncy94cHJhL3RlbXBsYXRl CkBAIC0xLDEyICsxLDEyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd4cHJhJwogcGtnbmFtZT14 cHJhCiB2ZXJzaW9uPTYuMC4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1w eXRob24zLW1vZHVsZQogbWFrZV9idWlsZF9hcmdzPSItLXdpdGhvdXQtY3VkYV9rZXJuZWxzIC0t d2l0aG91dC1jdWRhX3JlYnVpbGQiCiBtYWtlX2luc3RhbGxfYXJncz0iJCh2b3B0X3dpdGggZG9j cykgJHttYWtlX2J1aWxkX2FyZ3N9IgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIHB5dGhv bjMtQ3l0aG9uICQodm9wdF9pZiBkb2NzIHBhbmRvYykiCi1tYWtlZGVwZW5kcz0iZmZtcGVnLWRl dmVsIGxpYlhjb21wb3NpdGUtZGV2ZWwgbGliWHJhbmRyLWRldmVsIGxpYlh0c3QtZGV2ZWwKK21h a2VkZXBlbmRzPSJmZm1wZWc2LWRldmVsIGxpYlhjb21wb3NpdGUtZGV2ZWwgbGliWHJhbmRyLWRl dmVsIGxpYlh0c3QtZGV2ZWwKICBsaWJ2cHgtZGV2ZWwgbGlid2VicC1kZXZlbCBsaWJ4a2JmaWxl LWRldmVsIHB5dGhvbjMtZ29iamVjdC1kZXZlbCB4MjY0LWRldmVsCiAgZ3RrKzMtZGV2ZWwgcGFt LWRldmVsIGxpYlhyZXMtZGV2ZWwgbGlibHo0LWRldmVsIGxpYmF2aWYtZGV2ZWwgcHJvY3BzLW5n LWRldmVsCiAgeHhIYXNoLWRldmVsIgoKRnJvbSBiOTgxMzQzZjM3MjQ3MDM1YmE5NmE4YmQzYjI5 ZTE2OTA3MDdlY2EyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1 NTVAZ21haWwuY29tPgpEYXRlOiBGcmksIDMxIE1hciAyMDIzIDA5OjA4OjQwIC0wNDAwClN1Ympl Y3Q6IFtQQVRDSCA1OS84OV0gb3BlbmltYWdlZGVub2lzZTogcmV2YnVtcCBmb3IgZmZtcGVnNgoK LS0tCiBzcmNwa2dzL29wZW5pbWFnZWRlbm9pc2UvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hh bmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dz L29wZW5pbWFnZWRlbm9pc2UvdGVtcGxhdGUgYi9zcmNwa2dzL29wZW5pbWFnZWRlbm9pc2UvdGVt cGxhdGUKaW5kZXggMTA5ZGViMTcxYzNmNzUuLjQ0ZWRmMzhmYjI4OWQ4IDEwMDY0NAotLS0gYS9z cmNwa2dzL29wZW5pbWFnZWRlbm9pc2UvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9vcGVuaW1hZ2Vk ZW5vaXNlL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnb3Bl bmltYWdlZGVub2lzZScKIHBrZ25hbWU9b3BlbmltYWdlZGVub2lzZQogdmVyc2lvbj0xLjQuMwot cmV2aXNpb249MgorcmV2aXNpb249MwogYXJjaHM9Ing4Nl82NCoiCiBidWlsZF9zdHlsZT1jbWFr ZQogaG9zdG1ha2VkZXBlbmRzPSJpc3BjIHB5dGhvbjMiCgpGcm9tIDg4YmRkMWI0NjFkNDhkNzRk ZjRmZDAwYWY1M2E3NWQ5YWI0YzYzZjcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHps aWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IE1vbiwgMyBBcHIgMjAyMyAyMzozMTo0NSAt MDQwMApTdWJqZWN0OiBbUEFUQ0ggNjAvODldIHNob3RjdXQ6IHJldmJ1bXAgZm9yIGZmbXBlZzYK Ci0tLQogc3JjcGtncy9zaG90Y3V0L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEg aW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zaG90Y3V0 L3RlbXBsYXRlIGIvc3JjcGtncy9zaG90Y3V0L3RlbXBsYXRlCmluZGV4IDEzZThhMDg1MjJiNjhm Li5kNTJiMGZmNDdkNWRlNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9zaG90Y3V0L3RlbXBsYXRlCisr KyBiL3NyY3BrZ3Mvc2hvdGN1dC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ3Nob3RjdXQnCiBwa2duYW1lPXNob3RjdXQKIHZlcnNpb249MjMuMDkuMjkKLXJl dmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0i LURTSE9UQ1VUX1ZFUlNJT049JHt2ZXJzaW9ufSIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZp ZyBxdDYtYmFzZSBxdDYtdG9vbHMiCgpGcm9tIDg3NjFjYmQyMTMwOGNjYWI2NTA5MGJmY2RlNjgz MzgxOGM2ZGVlZjcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1 NUBnbWFpbC5jb20+CkRhdGU6IFR1ZSwgNCBBcHIgMjAyMyAxMToxNDozNSAtMDQwMApTdWJqZWN0 OiBbUEFUQ0ggNjEvODldIGtvbnF1ZXJvcjogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNw a2dzL2tvbnF1ZXJvci90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlv bigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mva29ucXVlcm9yL3RlbXBs YXRlIGIvc3JjcGtncy9rb25xdWVyb3IvdGVtcGxhdGUKaW5kZXggODY1NjNhODExMjY2OGQuLmNj MzNkZDExZDJhZjIwIDEwMDY0NAotLS0gYS9zcmNwa2dzL2tvbnF1ZXJvci90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL2tvbnF1ZXJvci90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ2tvbnF1ZXJvcicKIHBrZ25hbWU9a29ucXVlcm9yCiB2ZXJzaW9uPTI0LjAyLjIK LXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJn cz0iLURCVUlMRF9XSVRIX1FUNj1PTiAtREJVSUxEX1RFU1RJTkc9T0ZGCiAgLURLRjZfSE9TVF9U T09MSU5HPS91c3IvbGliL2NtYWtlCgpGcm9tIDBmNzNjYTExMWQ4ZDExNDY2YWE5YzE5NWZmNjZk NjhjMzM2YTViMmMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1 NUBnbWFpbC5jb20+CkRhdGU6IFN1biwgNCBKdW4gMjAyMyAxMToyODoyNiAtMDQwMApTdWJqZWN0 OiBbUEFUQ0ggNjIvODldIHNpcmlsOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3Mv c2lyaWwvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyks IDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zaXJpbC90ZW1wbGF0ZSBiL3Ny Y3BrZ3Mvc2lyaWwvdGVtcGxhdGUKaW5kZXggODQzMzJmNzlkMDYwZDIuLjY1YTdkOGY4NGZlNjkz IDEwMDY0NAotLS0gYS9zcmNwa2dzL3NpcmlsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvc2lyaWwv dGVtcGxhdGUKQEAgLTEsMTIgKzEsMTIgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3NpcmlsJwog cGtnbmFtZT1zaXJpbAogdmVyc2lvbj0wLjkuMTIKLXJldmlzaW9uPTEwCityZXZpc2lvbj0xMQog YnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGlu dGx0b29sIGF1dG9jb25mIGF1dG9tYWtlIGdldHRleHQtZGV2ZWwiCiBtYWtlZGVwZW5kcz0iZmZ0 dy1kZXZlbCBsaWJjb25maWctZGV2ZWwgbGlib3BlbmN2LWRldmVsIGxpYmZmbXMyLWRldmVsCiAg Z3NsLWRldmVsIGxpYnJhdy1kZXZlbCB0aWZmLWRldmVsIGxpYnBuZy1kZXZlbCBsaWJjdXJsLWRl dmVsCi0gZmZtcGVnLWRldmVsIGd0ayszLWRldmVsIGNmaXRzaW8tZGV2ZWwgZ3NsLWRldmVsIGxp YmdvbXAtZGV2ZWwiCisgZmZtcGVnNi1kZXZlbCBndGsrMy1kZXZlbCBjZml0c2lvLWRldmVsIGdz bC1kZXZlbCBsaWJnb21wLWRldmVsIgogZGVwZW5kcz0iZ251cGxvdCIKIHNob3J0X2Rlc2M9IkZy ZWUgYXN0cm9ub21pY2FsIGltYWdlIHByb2Nlc3Npbmcgc29mdHdhcmUiCiBtYWludGFpbmVyPSJP cnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgoKRnJvbSBlMzczNjYwYTI3NjlhYjQwNTAx N2RmNmUyMjY3NThlMzFjOGZmNjlmIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGlj ZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBTYXQsIDggSnVsIDIwMjMgMjA6MjA6NTkgLTA0 MDAKU3ViamVjdDogW1BBVENIIDYzLzg5XSB0cmFja2VyLW1pbmVyczogcmV2YnVtcCBmb3IgZmZt cGVnNgoKLS0tCiBzcmNwa2dzL3RyYWNrZXItbWluZXJzL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZp bGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvdHJhY2tlci1taW5lcnMvdGVtcGxhdGUgYi9zcmNwa2dzL3RyYWNrZXItbWluZXJz L3RlbXBsYXRlCmluZGV4IDE2OWNmYzU4YWZhZTUyLi5iYjQxMjZiNDkzNjQyMyAxMDA2NDQKLS0t IGEvc3JjcGtncy90cmFja2VyLW1pbmVycy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3RyYWNrZXIt bWluZXJzL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAndHJh Y2tlci1taW5lcnMnCiBwa2duYW1lPXRyYWNrZXItbWluZXJzCiB2ZXJzaW9uPTMuNy4zCi1yZXZp c2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPXFlbXUK ICMgbWlzc2luZyBsaWJncnNzIGZvciBtaW5lcl9yc3MKQEAgLTE0LDcgKzE0LDcgQEAgY29uZmln dXJlX2FyZ3M9Ii1EdHJhY2tlcl9jb3JlPXN5c3RlbSAtRGV4dHJhY3Q9dHJ1ZSAtRGN1ZT1lbmFi bGVkIC1EZXhpZj1lbmFibGUKICAtRHN5c3RlbWRfdXNlcl9zZXJ2aWNlcz1mYWxzZSAtRG5ldHdv cmtfbWFuYWdlcj1lbmFibGVkCiAgJCh2b3B0X2ZlYXR1cmUgbGFuZGxvY2spIgogaG9zdG1ha2Vk ZXBlbmRzPSJwa2ctY29uZmlnIGdsaWItZGV2ZWwgaW50bHRvb2wgYXNjaWlkb2MiCi1tYWtlZGVw ZW5kcz0idHJhY2tlci1kZXZlbCBmZm1wZWctZGV2ZWwgZGJ1cy1kZXZlbCBleGVtcGktZGV2ZWwK K21ha2VkZXBlbmRzPSJ0cmFja2VyLWRldmVsIGZmbXBlZzYtZGV2ZWwgZGJ1cy1kZXZlbCBleGVt cGktZGV2ZWwKICBsaWJnbGliLWRldmVsIGxpYmdleGl2Mi1kZXZlbCBnc3RyZWFtZXIxLWRldmVs IGljdS1kZXZlbCBsaWJjdWUtZGV2ZWwKICBsaWJleGlmLWRldmVsIGxpYmdzZi1kZXZlbCBsaWJn eHBzLWRldmVsIGxpYmlwdGNkYXRhLWRldmVsIGxpYmpwZWctdHVyYm8tZGV2ZWwKICBsaWJvc2lu Zm8tZGV2ZWwgbGlicG5nLWRldmVsIGxpYnNlY2NvbXAtZGV2ZWwgdGlmZi1kZXZlbCBsaWJ4bWwy LWRldmVsCgpGcm9tIGNiMWI5YmFiMDY4YTMxZjRiYWQzYjY2MWIxMmI0MjI4MzE5NTM5MDEgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRh dGU6IFdlZCwgMzAgQXVnIDIwMjMgMDk6MTA6MDIgLTA0MDAKU3ViamVjdDogW1BBVENIIDY0Lzg5 XSB0Z19vd3Q6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy90Z19vd3QvdGVtcGxh dGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy90Z19vd3QvdGVtcGxhdGUgYi9zcmNwa2dzL3RnX293 dC90ZW1wbGF0ZQppbmRleCAzNGU4ZmVmMDU0MDU2OS4uNGUxM2RiODE4NjlhMzIgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvdGdfb3d0L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvdGdfb3d0L3RlbXBsYXRl CkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAndGdfb3d0JwogcGtnbmFtZT10 Z19vd3QKIHZlcnNpb249MC4wLjAuMjAyMzEyMjEKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIF9j b21taXQ9YWZkOWQ1ZDMxNzk4ZDNlYWNmOWVkNmMzMDYwMWU5MWQwZjFlNGQ2MAogX2xpYnl1dl9j b21taXQ9MDQ4MjFkMWU3ZDYwODQ1NTI1ZThkYjU1YzdiY2Q0MWVmNWJlOTQwNgogX2Fic2VpbF9j b21taXQ9OGMwYjk0ZTc5M2E2NjQ5NWUwYjFmMzRhNWViMjZiZDdkYzY3MmRiMApAQCAtMTEsNyAr MTEsNyBAQCBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EQlVJTERfU0hBUkVE X0xJQlM9T0ZGIC1EVEdfT1dUX0FSQ0hfQVJNVjdfVVNFX05FT049T0ZGIgogaG9zdG1ha2VkZXBl bmRzPSJwa2ctY29uZmlnIHlhc20gcHJvdG9idWYiCiBtYWtlZGVwZW5kcz0iYWxzYS1saWItZGV2 ZWwgcHVsc2VhdWRpby1kZXZlbCBvcGVuc3NsLWRldmVsIG9wdXMtZGV2ZWwKLSBwaXBld2lyZS1k ZXZlbCBmZm1wZWctZGV2ZWwgbGlianBlZy10dXJiby1kZXZlbCBwcm90b2J1Zi1kZXZlbAorIHBp cGV3aXJlLWRldmVsIGZmbXBlZzYtZGV2ZWwgbGlianBlZy10dXJiby1kZXZlbCBwcm90b2J1Zi1k ZXZlbAogIGxpYmV2ZW50LWRldmVsIGxpYlhjb21wb3NpdGUtZGV2ZWwgbGliWHJhbmRyLWRldmVs IGxpYlhkYW1hZ2UtZGV2ZWwKICBsaWJlcG94eS1kZXZlbCBsaWJkcm0tZGV2ZWwgbGliWHJlbmRl ci1kZXZlbCBsaWJnbGliLWRldmVsIGxpYmdibS1kZXZlbAogIGxpYnZweC1kZXZlbCIKCkZyb20g MmEwYmUzNjJmZmYyMjFmOWVlNzc0NTc2YmQwZmI5ZWI2NWQ1MDhhOCBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAzMCBB dWcgMjAyMyAwOToxMDo0NCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggNjUvODldIHRlbGVncmFtLWRl c2t0b3A6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy90ZWxlZ3JhbS1kZXNrdG9w L3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdGVsZWdyYW0tZGVza3RvcC90ZW1wbGF0 ZSBiL3NyY3BrZ3MvdGVsZWdyYW0tZGVza3RvcC90ZW1wbGF0ZQppbmRleCA0ZTRhYTc5NzQ3ZTY0 YS4uYzU3YzAzNzNhMDkzMjcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvdGVsZWdyYW0tZGVza3RvcC90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3RlbGVncmFtLWRlc2t0b3AvdGVtcGxhdGUKQEAgLTEsNyAr MSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd0ZWxlZ3JhbS1kZXNrdG9wJwogcGtnbmFtZT10 ZWxlZ3JhbS1kZXNrdG9wCiB2ZXJzaW9uPTUuMS43Ci1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBi dWlsZF9zdHlsZT1jbWFrZQogYnVpbGRfaGVscGVyPSJxZW11IGdpciIKIGNvbmZpZ3VyZV9hcmdz PSItRFRERVNLVE9QX0FQSV9JRD0yMDkyMzUKQEAgLTEyLDcgKzEyLDcgQEAgY29uZmlndXJlX2Fy Z3M9Ii1EVERFU0tUT1BfQVBJX0lEPTIwOTIzNQogIC1EUVRfSE9TVF9QQVRIPS91c3IiCiBob3N0 bWFrZWRlcGVuZHM9InBrZy1jb25maWcgcXQ2LWJhc2UgcHl0aG9uMyBleHRyYS1jbWFrZS1tb2R1 bGVzCiAgcXQ2LXdheWxhbmQtdG9vbHMgd2F5bGFuZC1kZXZlbCBwcm90b2J1ZiBnbGliLWRldmVs IGtmNi1rY29yZWFkZG9ucyIKLW1ha2VkZXBlbmRzPSJhbHNhLWxpYi1kZXZlbCBib29zdC1kZXZl bCBmbXQtZGV2ZWwgZmZtcGVnLWRldmVsIGxpYmdsaWItZGV2ZWwKK21ha2VkZXBlbmRzPSJhbHNh LWxpYi1kZXZlbCBib29zdC1kZXZlbCBmbXQtZGV2ZWwgZmZtcGVnNi1kZXZlbCBsaWJnbGliLWRl dmVsCiAgZ29iamVjdC1pbnRyb3NwZWN0aW9uIGxpYmRidXNtZW51LWdsaWItZGV2ZWwgbGlib3Bl bmFsLWRldmVsCiAgbWluaXppcC1kZXZlbCBvcHVzLWRldmVsIHh4SGFzaC1kZXZlbCBwdWxzZWF1 ZGlvLWRldmVsIHJhbmdlLXYzCiAgcXQ2LXN2Zy1kZXZlbCBsaWJ2YS1kZXZlbCByYXBpZGpzb24g bGlibHo0LWRldmVsIGxpYmx6bWEtZGV2ZWwKCkZyb20gYzhkMzhhZGNmNTI3NjljMGIwYzg5Mjkw ODljZjRiMGMxZmQxOTk3MSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHps aWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAzMCBBdWcgMjAyMyAwOToxMjowOSAtMDQwMApT dWJqZWN0OiBbUEFUQ0ggNjYvODldIG9wZW5tdzogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBz cmNwa2dzL29wZW5tdy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0 aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL29wZW5tdy90ZW1w bGF0ZSBiL3NyY3BrZ3Mvb3Blbm13L3RlbXBsYXRlCmluZGV4IDBhYmY1ZmY3Y2RiZWNjLi4yYzZj MzUxZjYwNmY5MiAxMDA2NDQKLS0tIGEvc3JjcGtncy9vcGVubXcvdGVtcGxhdGUKKysrIGIvc3Jj cGtncy9vcGVubXcvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdvcGVubXcnCiBwa2duYW1lPW9wZW5tdwogdmVyc2lvbj0wLjQ4LjAKLXJldmlzaW9uPTIKK3Jl dmlzaW9uPTMKIGJ1aWxkX3N0eWxlPWNtYWtlCiBfcmVjYXN0X2NvbW1pdD1lNzVhZGY4NmY5MWVi MzA4MjIyMDA4NWU0MmRkYTYyNjc5ZjlhM2VhCiBfYnVsbGV0X3RhZz0zLjE3CkBAIC0xMCw3ICsx MCw3IEBAIF9idWxsZXRfdGFnPTMuMTcKIGNvbmZpZ3VyZV9hcmdzPSItRERFU0lSRURfUVRfVkVS U0lPTj01IC1ET1BFTk1XX1VTRV9TWVNURU1fQlVMTEVUPU9GRgogIC1ET1BFTk1XX0xUT19CVUlM RD1PTiAtREZFVENIQ09OVEVOVF9GVUxMWV9ESVNDT05ORUNURUQ9T24iCiBob3N0bWFrZWRlcGVu ZHM9InBrZy1jb25maWcgcXQ1LWhvc3QtdG9vbHMgcXQ1LXFtYWtlIgotbWFrZWRlcGVuZHM9IlNE TDItZGV2ZWwgYm9vc3QtZGV2ZWwgZmZtcGVnLWRldmVsIGxpYlh0LWRldmVsCittYWtlZGVwZW5k cz0iU0RMMi1kZXZlbCBib29zdC1kZXZlbCBmZm1wZWc2LWRldmVsIGxpYlh0LWRldmVsCiAgbGli bXlndWktZGV2ZWwgbGlib3BlbmFsLWRldmVsIGxpYnVuc2hpZWxkLWRldmVsIG9zZy1kZXZlbCBx dDUtZGV2ZWwKICBsaWJsejQtZGV2ZWwgeWFtbC1jcHAtZGV2ZWwgTHVhSklULWRldmVsIgogc2hv cnRfZGVzYz0iT3BlbiBJbXBsZW1lbnRhdGlvbiBvZiBNb3Jyb3dpbmQncyBFbmdpbmUiCgpGcm9t IDQ1NjQ2YWNmMzkxODE4NzAzZTcyOGU3MTA4NzNhNWY2YjcwNGNjN2UgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFN1biwgMTUg T2N0IDIwMjMgMjE6NDc6MTggLTA0MDAKU3ViamVjdDogW1BBVENIIDY3Lzg5XSBsaWJvcGVuc2hv dDogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2xpYm9wZW5zaG90L3RlbXBsYXRl IHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGlib3BlbnNob3QvdGVtcGxhdGUgYi9zcmNwa2dzL2xp Ym9wZW5zaG90L3RlbXBsYXRlCmluZGV4IGZjNDVhMjU4MDU3MDc5Li4yZGEyMjc2NGY2NmU5YiAx MDA2NDQKLS0tIGEvc3JjcGtncy9saWJvcGVuc2hvdC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2xp Ym9wZW5zaG90L3RlbXBsYXRlCkBAIC0xLDEzICsxLDEzIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdsaWJvcGVuc2hvdCcKIHBrZ25hbWU9bGlib3BlbnNob3QKIHZlcnNpb249MC4zLjIKLXJldmlz aW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiAjIEJ1aWxkcyBmYWlsIHdpdGgg UnVieS0yLjQuMQogY29uZmlndXJlX2FyZ3M9Ii1ERU5BQkxFX1JVQlk9T0ZGIC1EVVNFX1NZU1RF TV9KU09OQ1BQPU9OIgogaG9zdG1ha2VkZXBlbmRzPSJzd2lnIGRveHlnZW4gcnVieSBweXRob24z IHB5dGhvbjMtc2V0dXB0b29scyBwa2ctY29uZmlnCiAgcXQ1LXFtYWtlIHF0NS1ob3N0LXRvb2xz IgotbWFrZWRlcGVuZHM9InB5dGhvbjMtZGV2ZWwgZmZtcGVnLWRldmVsIGxpYm1hZ2ljay1kZXZl bCBxdDUtZGV2ZWwgbGliZ29tcC1kZXZlbAorbWFrZWRlcGVuZHM9InB5dGhvbjMtZGV2ZWwgZmZt cGVnNi1kZXZlbCBsaWJtYWdpY2stZGV2ZWwgcXQ1LWRldmVsIGxpYmdvbXAtZGV2ZWwKICBsaWJv cGVuc2hvdC1hdWRpby1kZXZlbCBxdDUtbXVsdGltZWRpYS1kZXZlbCB1bml0dGVzdC1jcHAgemVy b21xLWRldmVsIGNwcHptcQogIGpzb25jcHAtZGV2ZWwgcXQ1LXN2Zy1kZXZlbCIKIGRlcGVuZHM9 InB5dGhvbjMiCgpGcm9tIDY4NTAwNTdkOWFmM2U0ZTQ4OTYxYzRiN2Q0NGQzY2Y3MzQzZmM1YzYg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+ CkRhdGU6IFdlZCwgOCBOb3YgMjAyMyAxMDoxMDozMCAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggNjgv ODldIG9wZW5pbWFnZWlvOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3Mvb3Blbmlt YWdlaW8vdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyks IDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9vcGVuaW1hZ2Vpby90ZW1wbGF0 ZSBiL3NyY3BrZ3Mvb3BlbmltYWdlaW8vdGVtcGxhdGUKaW5kZXggMjdkMjEzMWJjMGE2MWEuLjI3 YTNlY2QzYWE5MmRlIDEwMDY0NAotLS0gYS9zcmNwa2dzL29wZW5pbWFnZWlvL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3Mvb3BlbmltYWdlaW8vdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdvcGVuaW1hZ2VpbycKIHBrZ25hbWU9b3BlbmltYWdlaW8KIHZlcnNpb249 Mi40LjkuMAotcmV2aXNpb249OAorcmV2aXNpb249OQogYnVpbGRfc3R5bGU9Y21ha2UKIGJ1aWxk X2hlbHBlcj1xZW11CiBjb25maWd1cmVfYXJncz0iLURVU0VfUVQ9MCAtRFVTRV9QWVRIT049MCAt RE9JSU9fQlVJTERfVEVTVFM9MApAQCAtMTAsNyArMTAsNyBAQCBjb25maWd1cmVfYXJncz0iLURV U0VfUVQ9MCAtRFVTRV9QWVRIT049MCAtRE9JSU9fQlVJTERfVEVTVFM9MAogaG9zdG1ha2VkZXBl bmRzPSJwa2ctY29uZmlnIGdpdCIKIG1ha2VkZXBlbmRzPSJib29zdC1kZXZlbCBnaWZsaWItZGV2 ZWwgbGlicmF3LWRldmVsIGxpYm9wZW5qcGVnLWRldmVsIGxpYndlYnAtZGV2ZWwKICBsaWJqcGVn LXR1cmJvLWRldmVsIHRpZmYtZGV2ZWwgbGlicG5nLWRldmVsIGxpYm9wZW5leHItZGV2ZWwgZnJl ZXR5cGUtZGV2ZWwKLSBmZm1wZWctZGV2ZWwgb3BlbmNvbG9yaW8tZGV2ZWwgcHRleC1kZXZlbCBs aWJoZWlmLWRldmVsIG9wZW52ZGItZGV2ZWwKKyBmZm1wZWc2LWRldmVsIG9wZW5jb2xvcmlvLWRl dmVsIHB0ZXgtZGV2ZWwgbGliaGVpZi1kZXZlbCBvcGVudmRiLWRldmVsCiAgcm9iaW4tbWFwIGZt dC1kZXZlbCIKIHNob3J0X2Rlc2M9IkxpYnJhcnkgZm9yIHJlYWRpbmcgYW5kIHdyaXRpbmcgaW1h Z2VzIgogbWFpbnRhaW5lcj0ibGVtbWkgPGxlbW1pQG5lcmQybmVyZC5vcmc+IgoKRnJvbSBmMzQ0 MDZjM2IxNmVkMTBhMTkzMjlhNjNmN2U4NmU0NmU5Nzk3NDE2IE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDggTm92IDIw MjMgMTA6MTE6NTcgLTA1MDAKU3ViamVjdDogW1BBVENIIDY5Lzg5XSBzeW5maWdzdHVkaW86IHJl dmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9zeW5maWdzdHVkaW8vdGVtcGxhdGUgfCAy ICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL3N5bmZpZ3N0dWRpby90ZW1wbGF0ZSBiL3NyY3BrZ3Mvc3luZmlnc3R1 ZGlvL3RlbXBsYXRlCmluZGV4IDVjZGU5MTliNzAzMzQzLi5kYjg2MjUyYzk1ZDZmZSAxMDA2NDQK LS0tIGEvc3JjcGtncy9zeW5maWdzdHVkaW8vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9zeW5maWdz dHVkaW8vdGVtcGxhdGUKQEAgLTIsNyArMiw3IEBACiAjIFNob3VsZCBiZSBrZXB0IGluIHN5bmMg d2l0aCAnc3luZmlnJyBhbmQgJ0VUTCcKIHBrZ25hbWU9c3luZmlnc3R1ZGlvCiB2ZXJzaW9uPTEu NC41Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBj b25maWd1cmVfYXJncz0iLS1kaXNhYmxlLXVwZGF0ZS1taW1lZGIiCiBob3N0bWFrZWRlcGVuZHM9 InBrZy1jb25maWcgaW50bHRvb2wgZ2V0dGV4dCBzeW5maWciCgpGcm9tIGQ4ZjIzMzE1ZWZjZmNj NDU3YmJhNmQ2MGZlNDQ1YzMxZDdmNmM1YmIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IEZyaSwgMTAgTm92IDIwMjMgMTQ6NTM6 MTAgLTA1MDAKU3ViamVjdDogW1BBVENIIDcwLzg5XSBtaXh4eDogcmV2YnVtcCBmb3IgZmZtcGVn NgoKLS0tCiBzcmNwa2dzL21peHh4L3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwg MiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbWl4 eHgvdGVtcGxhdGUgYi9zcmNwa2dzL21peHh4L3RlbXBsYXRlCmluZGV4IDZhNzliMzI4YzFhYmYw Li4zNTY4MzE1NDcwYTI2MCAxMDA2NDQKLS0tIGEvc3JjcGtncy9taXh4eC90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL21peHh4L3RlbXBsYXRlCkBAIC0xLDExICsxLDExIEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdtaXh4eCcKIHBrZ25hbWU9bWl4eHgKIHZlcnNpb249Mi4zLjMKLXJldmlzaW9uPTcK K3JldmlzaW9uPTgKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURDTUFLRV9C VUlMRF9UWVBFPVJlbGVhc2UiCiBob3N0bWFrZWRlcGVuZHM9ImV4dHJhLWNtYWtlLW1vZHVsZXMg cGtnLWNvbmZpZyBwcm90b2J1ZiBxdDUtaG9zdC10b29scyBxdDUtcW1ha2UiCi1tYWtlZGVwZW5k cz0iY2hyb21hcHJpbnQtZGV2ZWwgZmFhZDItZGV2ZWwgZmZtcGVnLWRldmVsIGxpYmtleWZpbmRl ci1kZXZlbCBnbHUtZGV2ZWwKK21ha2VkZXBlbmRzPSJjaHJvbWFwcmludC1kZXZlbCBmYWFkMi1k ZXZlbCBmZm1wZWc2LWRldmVsIGxpYmtleWZpbmRlci1kZXZlbCBnbHUtZGV2ZWwKICBsYW1lLWRl dmVsIGxpYmlkM3RhZy1kZXZlbCBsaWJtYWQtZGV2ZWwgbGlibW9kcGx1Zy1kZXZlbCBsaWJ1c2It ZGV2ZWwKICBvcHVzZmlsZS1kZXZlbCBsaWJmbGFjLWRldmVsIGxpYm9nZy1kZXZlbCBsaWJzbmRm aWxlLWRldmVsIGxpYnZvcmJpcy1kZXZlbAogIHdhdnBhY2stZGV2ZWwgcG9ydGF1ZGlvLWRldmVs IHBvcnRtaWRpLWRldmVsIHByb3RvYnVmLWRldmVsIHF0NS1zY3JpcHQtZGV2ZWwKCkZyb20gZjVh ZGY5M2E5OTM0YmM5ZTE0NzJkYTQzNWIyNjEyZjJjOTM3NGJkYyBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogRnJpLCAxMCBOb3Yg MjAyMyAxNDo1MzoyOCAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggNzEvODldIG11c2lrY3ViZTogcmV2 YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL211c2lrY3ViZS90ZW1wbGF0ZSB8IDQgKyst LQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL211c2lrY3ViZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvbXVzaWtjdWJlL3Rl bXBsYXRlCmluZGV4IGFjZGY1MTQ1M2I4Yzk0Li43YjU5NGFjNDMyYTY2NiAxMDA2NDQKLS0tIGEv c3JjcGtncy9tdXNpa2N1YmUvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tdXNpa2N1YmUvdGVtcGxh dGUKQEAgLTEsMTIgKzEsMTIgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ211c2lrY3ViZScKIHBr Z25hbWU9bXVzaWtjdWJlCiB2ZXJzaW9uPTMuMC4yCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBi dWlsZF9zdHlsZT1jbWFrZQogbWFrZV9jbWQ9bWFrZQogY29uZmlndXJlX2FyZ3M9Ii1ETk9fTkNV UlNFU1c9MSIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKLW1ha2VkZXBlbmRzPSJsaWJn bWUtZGV2ZWwgbGlib2dnLWRldmVsIGxpYm1pY3JvaHR0cGQtZGV2ZWwgZmZtcGVnLWRldmVsCitt YWtlZGVwZW5kcz0ibGliZ21lLWRldmVsIGxpYm9nZy1kZXZlbCBsaWJtaWNyb2h0dHBkLWRldmVs IGZmbXBlZzYtZGV2ZWwKICBvcGVuc3NsLWRldmVsIHB1bHNlYXVkaW8tZGV2ZWwgbGFtZS1kZXZl bCB6bGliLWRldmVsIGFsc2EtbGliLWRldmVsCiAgbGlidm9yYmlzLWRldmVsIGxpYmN1cmwtZGV2 ZWwgbmN1cnNlcy1kZXZlbCBsaWJldi1kZXZlbCB0YWdsaWItZGV2ZWwKICBzbmRpby1kZXZlbCBw aXBld2lyZS1kZXZlbCBuY3Vyc2VzLWxpYnRpbmZvLWRldmVsIGxpYm9wZW5tcHQtZGV2ZWwKCkZy b20gNGY3NTY0MTg4YWMwYjY1YWViZTMzZTdhYmRlODMyYmRkMTY0NTkyMyBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogRnJpLCAx MCBOb3YgMjAyMyAxNDo1NDoxMyAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggNzIvODldIHdmLXJlY29y ZGVyOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3Mvd2YtcmVjb3JkZXIvdGVtcGxh dGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy93Zi1yZWNvcmRlci90ZW1wbGF0ZSBiL3NyY3BrZ3Mv d2YtcmVjb3JkZXIvdGVtcGxhdGUKaW5kZXggMDhmOTg2YjAzMTAwNjcuLjdhMWJjN2FmYzUwOWVj IDEwMDY0NAotLS0gYS9zcmNwa2dzL3dmLXJlY29yZGVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv d2YtcmVjb3JkZXIvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ3dmLXJlY29yZGVyJwogcGtnbmFtZT13Zi1yZWNvcmRlcgogdmVyc2lvbj0wLjQuMQotcmV2 aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0i cGtnLWNvbmZpZyBzY2RvYyB3YXlsYW5kLWRldmVsIgotbWFrZWRlcGVuZHM9IndheWxhbmQtcHJv dG9jb2xzIHdheWxhbmQtZGV2ZWwgZmZtcGVnLWRldmVsIGxpYmdibS1kZXZlbCB4MjY0LWRldmVs CittYWtlZGVwZW5kcz0id2F5bGFuZC1wcm90b2NvbHMgd2F5bGFuZC1kZXZlbCBmZm1wZWc2LWRl dmVsIGxpYmdibS1kZXZlbCB4MjY0LWRldmVsCiAJcHVsc2VhdWRpby1kZXZlbCIKIHNob3J0X2Rl c2M9IlNjcmVlbiByZWNvcmRlciBmb3Igd2xyb290cy1iYXNlZCBjb21wb3NpdG9ycyIKIG1haW50 YWluZXI9IkpvbnkgPG1heWJlLW9uZS1kYXktdWJlcm1lbnNjaEBwcm90b25tYWlsLmNvbT4iCgpG cm9tIDIzYmI0MjI1MTI4NTRmOTc2OWU3ZjRjYTYzYTdiMmUzYjEzYWIyNTQgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IEZyaSwg MTAgTm92IDIwMjMgMTQ6NTQ6MjYgLTA1MDAKU3ViamVjdDogW1BBVENIIDczLzg5XSBvYnM6IHJl dmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9vYnMvdGVtcGxhdGUgfCA0ICsrLS0KIDEg ZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9vYnMvdGVtcGxhdGUgYi9zcmNwa2dzL29icy90ZW1wbGF0ZQppbmRleCBmZWI5 NjQ5OTc3YThkNC4uZTI0ZjFlNzYzM2ViODQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvb2JzL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3Mvb2JzL3RlbXBsYXRlCkBAIC0xLDE0ICsxLDE0IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdvYnMnCiBwa2duYW1lPW9icwogdmVyc2lvbj0zMC4xLjEKLXJldmlzaW9u PTEKK3JldmlzaW9uPTIKIGFyY2hzPSJpNjg2KiB4ODZfNjQqIHBwYzY0bGUqIGFhcmNoNjQqIHJp c2N2NjQqIgogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItRE9CU19WRVJTSU9O X09WRVJSSURFPSR7dmVyc2lvbn0gLURFTkFCTEVfSkFDSz1PTgogIC1ERU5BQkxFX1ZTVD1PRkYg LURFTkFCTEVfQUpBPU9GRiAtRENBTE1fREVQUkVDQVRJT049T04KICAtREVOQUJMRV9TQ1JJUFRJ TkdfTFVBPSQodm9wdF9pZiBsdWFqaXQgJ09OJyAnT0ZGJykiCiBob3N0bWFrZWRlcGVuZHM9InBr Zy1jb25maWcgc3dpZyBweXRob24zLWRldmVsIHF0Ni1iYXNlIgotbWFrZWRlcGVuZHM9IiQodm9w dF9pZiBsdWFqaXQgTHVhSklULWRldmVsKSBmZGstYWFjLWRldmVsIGZmbXBlZy1kZXZlbCBnbHUt ZGV2ZWwKK21ha2VkZXBlbmRzPSIkKHZvcHRfaWYgbHVhaml0IEx1YUpJVC1kZXZlbCkgZmRrLWFh Yy1kZXZlbCBmZm1wZWc2LWRldmVsIGdsdS1kZXZlbAogIGphY2stZGV2ZWwgbGliWGNvbXBvc2l0 ZS1kZXZlbCBsaWJjdXJsLWRldmVsIGxpYnZhLWRldmVsCiAgcHVsc2VhdWRpby1kZXZlbCBweXRo b24zLWRldmVsIHNwZWV4ZHNwLWRldmVsIHY0bC11dGlscy1kZXZlbAogIHZsYy1kZXZlbCBxdDYt c3ZnLWRldmVsIHgyNjQtZGV2ZWwgbWJlZHRscy1kZXZlbCBqYW5zc29uLWRldmVsCgpGcm9tIDA1 N2Y2NTFhM2QzMmE0NjBmMzNmNzVmZDZjZjk1NWVkMDk0OTUxMDcgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IEZyaSwgMTAgTm92 IDIwMjMgMTQ6NTQ6MzYgLTA1MDAKU3ViamVjdDogW1BBVENIIDc0Lzg5XSBtbHQ3OiByZXZidW1w IGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvbWx0Ny90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZp bGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvbWx0Ny90ZW1wbGF0ZSBiL3NyY3BrZ3MvbWx0Ny90ZW1wbGF0ZQppbmRleCA2NWVl ZDk5OGQzOTgzMi4uM2VlMGMwNWYyNmY5YzcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbWx0Ny90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL21sdDcvdGVtcGxhdGUKQEAgLTEsMTMgKzEsMTMgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ21sdDcnCiBwa2duYW1lPW1sdDcKIHZlcnNpb249Ny4yMC4wCi1yZXZp c2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1E U1dJR19QWVRIT049T04gLURNT0RfUVQ2PU9OIgogaG9zdG1ha2VkZXBlbmRzPSJkb3h5Z2VuIHBr Zy1jb25maWcgbGFkc3BhLXNkayBzd2lnIHB5dGhvbjMgd2hpY2gKICBxdDUtaG9zdC10b29scyBx dDUtcW1ha2UgcXQ2LWJhc2UgcXQ2LXRvb2xzIgotbWFrZWRlcGVuZHM9ImFsc2EtbGliLWRldmVs IGZmbXBlZy1kZXZlbCBndGsrLWRldmVsIGphY2stZGV2ZWwgbGFkc3BhLXNkawotIGxpYmV4aWYt ZGV2ZWwgbGlic2FtcGxlcmF0ZS1kZXZlbCBsaWJ4bWwyLWRldmVsIHNveC1kZXZlbCBTRExfaW1h Z2UtZGV2ZWwKK21ha2VkZXBlbmRzPSJhbHNhLWxpYi1kZXZlbCBmZm1wZWc2LWRldmVsIGd0ayst ZGV2ZWwgamFjay1kZXZlbCBsYWRzcGEtc2RrCisgbGliZXhpZi1kZXZlbCBsaWJzYW1wbGVyYXRl LWRldmVsIGxpYnhtbDItZGV2ZWwgc294LWRldmVsIFNETDJfaW1hZ2UtZGV2ZWwKICBmZnR3LWRl dmVsIGZyZWkwci1wbHVnaW5zIHB5dGhvbjMtZGV2ZWwgcHVsc2VhdWRpby1kZXZlbCBtb3ZpdC1k ZXZlbAogIGxpYnZpZHN0YWItZGV2ZWwgcXQ1LXN2Zy1kZXZlbCBxdDYtc3ZnLWRldmVsIHF0Ni1x dDVjb21wYXQtZGV2ZWwiCiBkZXBlbmRzPSJtbHQ3LWRhdGE+PSR7dmVyc2lvbn1fJHtyZXZpc2lv bn0gbGFkc3BhLXNkay1leGFtcGxlLXBsdWdpbnMiCgpGcm9tIDAxMzkzYzk2Y2Y4NTM0OGU0MzUz ZDI5MDNkZjM5N2E0MThlZDY0MGQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNl IDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IEZyaSwgMTAgTm92IDIwMjMgMTU6MDA6MTUgLTA1 MDAKU3ViamVjdDogW1BBVENIIDc1Lzg5XSBiYXJlc2lwOiByZXZidW1wIGZvciBmZm1wZWc2Cgot LS0KIHNyY3BrZ3MvYmFyZXNpcC90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIg aW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2JhcmVz aXAvdGVtcGxhdGUgYi9zcmNwa2dzL2JhcmVzaXAvdGVtcGxhdGUKaW5kZXggZTZjODQ1NjM3YmI1 MGUuLmY1OTFhZmQ2YzRkNTNhIDEwMDY0NAotLS0gYS9zcmNwa2dzL2JhcmVzaXAvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9iYXJlc2lwL3RlbXBsYXRlCkBAIC0xLDEzICsxLDEzIEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdiYXJlc2lwJwogcGtnbmFtZT1iYXJlc2lwCiB2ZXJzaW9uPTMuMTEuMAot cmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5k cz0icGtnLWNvbmZpZyBnbGliLWRldmVsIgogbWFrZWRlcGVuZHM9ImxpYmdzbS1kZXZlbCBsaWJw bmctZGV2ZWwgb3BlbnNzbC1kZXZlbCBsaWJzbmRmaWxlLWRldmVsCiAgb3B1cy1kZXZlbCByZS1k ZXZlbCBzcGFuZHNwLWRldmVsIHNwZWV4LWRldmVsIHNwZWV4ZHNwLWRldmVsCiAgdGlmZi1kZXZl bCB0d29sYW1lLWRldmVsIGNhaXJvLWRldmVsIGdzdC1wbHVnaW5zLWJhc2UxLWRldmVsIGphY2st ZGV2ZWwKLSBnc3RyZWFtZXIxLWRldmVsIGd0ayszLWRldmVsIG1wZzEyMy1kZXZlbCBTREwyLWRl dmVsIGZmbXBlZy1kZXZlbCBsaWJ2cHgtZGV2ZWwKKyBnc3RyZWFtZXIxLWRldmVsIGd0ayszLWRl dmVsIG1wZzEyMy1kZXZlbCBTREwyLWRldmVsIGZmbXBlZzYtZGV2ZWwgbGlidnB4LWRldmVsCiAg bGliWDExLWRldmVsIHY0bC11dGlscy1kZXZlbCB4MjY1LWRldmVsIGxpYlhleHQtZGV2ZWwgd2Vi cnRjLWF1ZGlvLXByb2Nlc3NpbmctZGV2ZWwKICBmZGstYWFjLWRldmVsIGxpYm1vc3F1aXR0by1k ZXZlbCBjb2RlYzItZGV2ZWwiCiAjIHNuZGlvLWRldmVsIEN1cnJlbnRseSBub3QgaG9va2VkIHVw IGluIHRoZWlyIGNtYWtlIGJ1aWxkIHN5c3RlbQoKRnJvbSA3Njc0YjA3NTI1NWEwNDAwOTZkZjM4 OWYzMzRhMGY1OTNkNDZkMTEwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8 emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBGcmksIDEwIE5vdiAyMDIzIDE1OjAyOjMwIC0wNTAw ClN1YmplY3Q6IFtQQVRDSCA3Ni84OV0gUU1QbGF5MjogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0t CiBzcmNwa2dzL1FNUGxheTIvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGlu c2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9RTVBsYXky L3RlbXBsYXRlIGIvc3JjcGtncy9RTVBsYXkyL3RlbXBsYXRlCmluZGV4IDA1NGI3YmFkMDQ1MmY3 Li5iNThlZjdjMDg5YmQ0ZSAxMDA2NDQKLS0tIGEvc3JjcGtncy9RTVBsYXkyL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvUU1QbGF5Mi90ZW1wbGF0ZQpAQCAtMSwxMCArMSwxMCBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAnUU1QbGF5MicKIHBrZ25hbWU9UU1QbGF5MgogdmVyc2lvbj0yNC4wNi4xNgot cmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5k cz0icGtnLWNvbmZpZyBxdDUtcW1ha2UgcXQ1LWhvc3QtdG9vbHMiCi1tYWtlZGVwZW5kcz0iYWxz YS1saWItZGV2ZWwgZmZtcGVnLWRldmVsIGxpYmFzcy1kZXZlbCBsaWJjZGlvLWRldmVsIGxpYmdt ZS1kZXZlbAorbWFrZWRlcGVuZHM9ImFsc2EtbGliLWRldmVsIGZmbXBlZzYtZGV2ZWwgbGliYXNz LWRldmVsIGxpYmNkaW8tZGV2ZWwgbGliZ21lLWRldmVsCiAgbGlic2lkcGxheWZwLWRldmVsIGxp YnZhLWdseC1kZXZlbCBsaWJYdi1kZXZlbCBwdWxzZWF1ZGlvLWRldmVsCiAgcXQ1LXN2Zy1kZXZl bCBxdDUtdG9vbHMtZGV2ZWwgcXQ1LXgxMWV4dHJhcy1kZXZlbCB0YWdsaWItZGV2ZWwKICBsaWJj ZGlvLXBhcmFub2lhLWRldmVsIHF0NS1kZWNsYXJhdGl2ZS1kZXZlbCIKCkZyb20gZGMyZDg3NjY5 MDM2NTQwZWE0NGZkNWRmYWQwMDJlYzZmNTM2YWYwYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogRnJpLCAxMCBOb3YgMjAyMyAx NTowMjozNCAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggNzcvODldIGFsc2EtcGx1Z2luczogcmV2YnVt cCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2Fsc2EtcGx1Z2lucy90ZW1wbGF0ZSB8IDQgKyst LQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2Fsc2EtcGx1Z2lucy90ZW1wbGF0ZSBiL3NyY3BrZ3MvYWxzYS1wbHVn aW5zL3RlbXBsYXRlCmluZGV4IDRjODkyZWQ3MzBkOWE1Li43OTQ4NTcwY2MwMDAzZCAxMDA2NDQK LS0tIGEvc3JjcGtncy9hbHNhLXBsdWdpbnMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9hbHNhLXBs dWdpbnMvdGVtcGxhdGUKQEAgLTEsMTEgKzEsMTEgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Fs c2EtcGx1Z2lucycKIHBrZ25hbWU9YWxzYS1wbHVnaW5zCiB2ZXJzaW9uPTEuMi4xMgotcmV2aXNp b249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2Fy Z3M9Ii0tZGlzYWJsZS1tYWVtby1wbHVnaW4iCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWci Ci1tYWtlZGVwZW5kcz0iZmZtcGVnLWRldmVsIGphY2stZGV2ZWwgbGlic2FtcGxlcmF0ZS1kZXZl bCBwdWxzZWF1ZGlvLWRldmVsIgorbWFrZWRlcGVuZHM9ImZmbXBlZzYtZGV2ZWwgamFjay1kZXZl bCBsaWJzYW1wbGVyYXRlLWRldmVsIHB1bHNlYXVkaW8tZGV2ZWwiCiBzaG9ydF9kZXNjPSJBZHZh bmNlZCBMaW51eCBTb3VuZCBBcmNoaXRlY3R1cmUgKEFMU0EpIGV4dHJhIHBsdWdpbnMiCiBtYWlu dGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIu MC1vci1sYXRlciwgTEdQTC0yLjEtb3ItbGF0ZXIiCgpGcm9tIGJjM2QzNDI0ODYwNTNmNjZhZmE5 YWRmNjcxOTM0N2U3NDQxYzk5YjUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNl IDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IEZyaSwgMTAgTm92IDIwMjMgMTU6MDI6NDMgLTA1 MDAKU3ViamVjdDogW1BBVENIIDc4Lzg5XSBtaW5pZGxuYTogcmV2YnVtcCBmb3IgZmZtcGVnNgoK LS0tCiBzcmNwa2dzL21pbmlkbG5hL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwg MiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbWlu aWRsbmEvdGVtcGxhdGUgYi9zcmNwa2dzL21pbmlkbG5hL3RlbXBsYXRlCmluZGV4IDVmYTkyOWYz YTBjMTI0Li40NzNjOWE5NWFlYWY0MyAxMDA2NDQKLS0tIGEvc3JjcGtncy9taW5pZGxuYS90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL21pbmlkbG5hL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAnbWluaWRsbmEnCiBwa2duYW1lPW1pbmlkbG5hCiB2ZXJzaW9uPTEu My4zCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBj b25maWd1cmVfYXJncz0iCiAgLS1zYmluZGlyPS91c3IvYmluCkBAIC0xMiw3ICsxMiw3IEBAIG1h a2VfZGlycz0iCiAgL3Zhci9saWIvbWluaWRsbmEgMDc1MCBtaW5pZGxuYSBtaW5pZGxuYQogIC92 YXIvbG9nL21pbmlkbG5hIDA3NTAgbWluaWRsbmEgbWluaWRsbmEiCiBob3N0bWFrZWRlcGVuZHM9 InBrZy1jb25maWcgZ2V0dGV4dCIKLW1ha2VkZXBlbmRzPSJmZm1wZWctZGV2ZWwgbGlianBlZy10 dXJiby1kZXZlbCBzcWxpdGUtZGV2ZWwgbGliZXhpZi1kZXZlbAorbWFrZWRlcGVuZHM9ImZmbXBl ZzYtZGV2ZWwgbGlianBlZy10dXJiby1kZXZlbCBzcWxpdGUtZGV2ZWwgbGliZXhpZi1kZXZlbAog IGxpYmlkM3RhZy1kZXZlbCBsaWJ2b3JiaXMtZGV2ZWwgbGliZmxhYy1kZXZlbCIKIHNob3J0X2Rl c2M9IkRMTkEvVVBuUC1BViBjb21wbGlhbnQgbWVkaWEgc2VydmVyIgogbWFpbnRhaW5lcj0iRHVu Y2FlbiA8ZHVuY2FlbkB2b2lkbGludXgub3JnPiIKCkZyb20gMmExMWE3ODBkMzUzMDU0YTljODJh ZjhiOTlmM2JhMmUyMzQyNDg3ZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2Ug PHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogTW9uLCAyMCBOb3YgMjAyMyAxNzo1Nzo0NyAtMDUw MApTdWJqZWN0OiBbUEFUQ0ggNzkvODldIG1wdjogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBz cmNwa2dzL21wdi90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9u cygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL21wdi90ZW1wbGF0ZSBi L3NyY3BrZ3MvbXB2L3RlbXBsYXRlCmluZGV4IDMyZGQ5NTZjNmJmNmI2Li42NDRiOTJmMjg1NjMz NyAxMDA2NDQKLS0tIGEvc3JjcGtncy9tcHYvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tcHYvdGVt cGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdtcHYnCiBwa2duYW1l PW1wdgogdmVyc2lvbj0wLjM4LjAKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0eWxl PW1lc29uCiBjb25maWd1cmVfYXJncz0iLURjZGRhPWVuYWJsZWQgLURkdmJpbj1lbmFibGVkIC1E ZHZkbmF2PWVuYWJsZWQKICAtRGxpYm1wdj10cnVlIC1EY3BsdWdpbnM9ZW5hYmxlZApAQCAtMjEs NyArMjEsNyBAQCBjb25maWd1cmVfYXJncz0iLURjZGRhPWVuYWJsZWQgLURkdmJpbj1lbmFibGVk IC1EZHZkbmF2PWVuYWJsZWQKICAkKHZvcHRfZmVhdHVyZSBwaXBld2lyZSBwaXBld2lyZSkKICAk KHZvcHRfZmVhdHVyZSBzbmRpbyBzbmRpbykiCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcg cHl0aG9uMy1kb2N1dGlscyAkKHZvcHRfaWYgd2F5bGFuZCB3YXlsYW5kLWRldmVsKSIKLW1ha2Vk ZXBlbmRzPSJNZXNhTGliLWRldmVsIGZmbXBlZy1kZXZlbCBoYXJmYnV6ei1kZXZlbCBsaWJYdi1k ZXZlbCBsaWJhc3MtZGV2ZWwKK21ha2VkZXBlbmRzPSJNZXNhTGliLWRldmVsIGZmbXBlZzYtZGV2 ZWwgaGFyZmJ1enotZGV2ZWwgbGliWHYtZGV2ZWwgbGliYXNzLWRldmVsCiAgbGliYmx1cmF5LWRl dmVsIGxpYmNkaW8tcGFyYW5vaWEtZGV2ZWwgbGliZHZkbmF2LWRldmVsIGxpYnV1aWQtZGV2ZWwK ICBsaWJ2YS1kZXZlbCBydWJiZXJiYW5kLWRldmVsIHVjaGFyZGV0LWRldmVsIGxpYnBsYWNlYm8t ZGV2ZWwgbGliYXJjaGl2ZS1kZXZlbAogICQodm9wdF9pZiBhbHNhIGFsc2EtbGliLWRldmVsKSAk KHZvcHRfaWYgY2FjYSBsaWJjYWNhLWRldmVsKQoKRnJvbSAxOWQ1NzUwMTIwZWZhYzI5NWRmZDQ4 ODE3MTU2YjJhODdkNjljZjEwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8 emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBNb24sIDIwIE5vdiAyMDIzIDE3OjU5OjI5IC0wNTAw ClN1YmplY3Q6IFtQQVRDSCA4MC84OV0gcWltZ3Y6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQog c3JjcGtncy9xaW1ndi90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlv bigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcWltZ3YvdGVtcGxhdGUg Yi9zcmNwa2dzL3FpbWd2L3RlbXBsYXRlCmluZGV4IGRkMzQxZGZlMWJmY2U4Li44YTdlMWMwODFl ZjEyZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9xaW1ndi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3Fp bWd2L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncWltZ3Yn CiBwa2duYW1lPXFpbWd2CiB2ZXJzaW9uPTEuMC4yCi1yZXZpc2lvbj0zCityZXZpc2lvbj00CiBi dWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9IiQodm9wdF9pZiB2aWRlbyAtRFZJREVP X1NVUFBPUlQ9T04gLURWSURFT19TVVBQT1JUPU9GRikKICAkKHZvcHRfaWYgc2NhbGUgLURPUEVO Q1ZfU1VQUE9SVD1PTiAtRE9QRU5DVl9TVVBQT1JUPU9GRikKCkZyb20gOWYwNWI2MDlkZGIyOGZj Y2MxNTQ0OWQ4MjNmMzVlMzM1NzA0ZWI3YyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog emxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogTW9uLCAyMCBOb3YgMjAyMyAxODowMDoz NiAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggODEvODldIGtmaWxlbWV0YWRhdGE1OiByZXZidW1wIGZv ciBmZm1wZWc2CgotLS0KIHNyY3BrZ3Mva2ZpbGVtZXRhZGF0YTUvdGVtcGxhdGUgfCA0ICsrLS0K IDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy9rZmlsZW1ldGFkYXRhNS90ZW1wbGF0ZSBiL3NyY3BrZ3Mva2ZpbGVtZXRh ZGF0YTUvdGVtcGxhdGUKaW5kZXggYTBjNGQ4MDkzOTUzMjMuLjUxNDUwZTgwYTYyMGZjIDEwMDY0 NAotLS0gYS9zcmNwa2dzL2tmaWxlbWV0YWRhdGE1L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mva2Zp bGVtZXRhZGF0YTUvdGVtcGxhdGUKQEAgLTEsMTIgKzEsMTIgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ2tmaWxlbWV0YWRhdGE1JwogcGtnbmFtZT1rZmlsZW1ldGFkYXRhNQogdmVyc2lvbj01LjEx NS4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogaG9zdG1ha2Vk ZXBlbmRzPSJrY29yZWFkZG9ucyBleHRyYS1jbWFrZS1tb2R1bGVzIHBrZy1jb25maWcgcXQ1LWhv c3QtdG9vbHMgcXQ1LXFtYWtlCiAgZ2V0dGV4dCBrY29yZWFkZG9ucyBweXRob24zIgogbWFrZWRl cGVuZHM9ImthcmNoaXZlLWRldmVsIGtpMThuLWRldmVsIHBvcHBsZXItcXQ1LWRldmVsIGtjb3Jl YWRkb25zLWRldmVsCi0gdGFnbGliLWRldmVsIGV4aXYyLWRldmVsIGZmbXBlZy1kZXZlbCBhdHRy LWRldmVsIGVib29rLXRvb2xzLWRldmVsCisgdGFnbGliLWRldmVsIGV4aXYyLWRldmVsIGZmbXBl ZzYtZGV2ZWwgYXR0ci1kZXZlbCBlYm9vay10b29scy1kZXZlbAogIGxpYnFtb2JpcG9ja2V0LWRl dmVsIgogc2hvcnRfZGVzYz0iU2ltcGxlIGxpYnJhcnkgZm9yIGV4dHJhY3RpbmcgdGhlIHRleHQg YW5kIG1ldGFkYXRhIgogbWFpbnRhaW5lcj0iSm9obiA8bWVAam9obm55bmF0b3IuZGV2PiIKCkZy b20gYjI3ZjZjZmNkZjU0MmRkNDMyMjczMmRiY2VkOWJjNWQ2ZGQwNmE3YyBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogRnJpLCA4 IERlYyAyMDIzIDExOjQ2OjAxIC0wNTAwClN1YmplY3Q6IFtQQVRDSCA4Mi84OV0gdmJhLW06IHJl dmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy92YmEtbS90ZW1wbGF0ZSB8IDQgKystLQog MSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL3ZiYS1tL3RlbXBsYXRlIGIvc3JjcGtncy92YmEtbS90ZW1wbGF0ZQppbmRl eCAzZDEzNWVmYTFkMGI2OS4uYjg4ZDhjZjcyZmRiZjQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvdmJh LW0vdGVtcGxhdGUKKysrIGIvc3JjcGtncy92YmEtbS90ZW1wbGF0ZQpAQCAtMiwxMiArMiwxMiBA QAogcGtnbmFtZT12YmEtbQogcmV2ZXJ0cz0xMjkyXzIKIHZlcnNpb249Mi4xLjkKLXJldmlzaW9u PTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURFTkFC TEVfR1RLPVRSVUUgLURFTkFCTEVfRkZNUEVHPVRSVUUgLURFTkFCTEVfTElOSz1UUlVFIC1EQ01B S0VfQlVJTERfVFlQRT1SZWxlYXNlIgogaG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IHBrZy1jb25m aWcgdW56aXAgemlwIHlhc20gd3hXaWRnZXRzLWd0azMtZGV2ZWwiCiBtYWtlZGVwZW5kcz0iemxp Yi1kZXZlbCBsaWJwbmctZGV2ZWwgTWVzYUxpYi1kZXZlbCBsaWJvcGVuYWwtZGV2ZWwgU0RMMi1k ZXZlbAotIGd0a21tMi1kZXZlbCBmZm1wZWctZGV2ZWwgZ3RrKzMtZGV2ZWwKKyBndGttbTItZGV2 ZWwgZmZtcGVnNi1kZXZlbCBndGsrMy1kZXZlbAogIFNGTUwtZGV2ZWwgd3hXaWRnZXRzLWd0azMt ZGV2ZWwgbGliZ29tcC1kZXZlbCIKIHNob3J0X2Rlc2M9IkdhbWVib3kgQWR2YW5jZSBFbXVsYXRv ciIKIG1haW50YWluZXI9IkFuZHJlYSBCcmFuY2FsZW9uaSA8YWJjQHBvbXBlbC5tZT4iCgpGcm9t IGQwMmZiM2I3YmYzN2FiNzEwZTUxOGZjMWMzNTQ5OTFhMDNkMmJjYmEgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IEZyaSwgOCBE ZWMgMjAyMyAxMTo0NjoxOSAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggODMvODldIGRvbHBoaW4tZW11 OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvYXVkYWNpdHkvcGF0Y2hlcy9oc2Ny b2xsLnBhdGNoICAgIHwgMjYgKysrKysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvZG9scGhp bi1lbXUvcGF0Y2hlcy9pcHByb3RvLnBhdGNoIHwgMTMgKysrKysrKysrKysrCiBzcmNwa2dzL2Rv bHBoaW4tZW11L3RlbXBsYXRlICAgICAgICAgICAgICB8ICA0ICsrLS0KIDMgZmlsZXMgY2hhbmdl ZCwgNDEgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBz cmNwa2dzL2F1ZGFjaXR5L3BhdGNoZXMvaHNjcm9sbC5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0 IHNyY3BrZ3MvZG9scGhpbi1lbXUvcGF0Y2hlcy9pcHByb3RvLnBhdGNoCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9hdWRhY2l0eS9wYXRjaGVzL2hzY3JvbGwucGF0Y2ggYi9zcmNwa2dzL2F1ZGFjaXR5 L3BhdGNoZXMvaHNjcm9sbC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw MDAwMDAwMC4uMmUwODM3OTJkOGUxMTQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2F1ZGFj aXR5L3BhdGNoZXMvaHNjcm9sbC5wYXRjaApAQCAtMCwwICsxLDI2IEBACistLS0gYS9saWJyYXJp ZXMvbGliLXZpZXdwb3J0L1ZpZXdwb3J0LmNwcAkyMDI0LTA2LTAxIDA5OjI1OjU4LjkxNTg1NTA1 NyAtMDQwMAorKysrIGIvbGlicmFyaWVzL2xpYi12aWV3cG9ydC9WaWV3cG9ydC5jcHAJMjAyNC0w Ni0wMSAxMTowNjowOC43Nzk3OTk1ODkgLTA0MDAKK0BAIC0zMjYsMTAgKzMyNiwxMCBAQAorICAg IGJvb2wgbmV3dnN0YXRlID0gcGFuZWxIZWlnaHQgPCB0b3RhbEhlaWdodDsKKworICAgIC8vIEhp ZGUgc2Nyb2xsYmFyIHRodW1icyBhbmQgYnV0dG9ucyBpZiBub3Qgc2Nyb2xsYWJsZQorLSAgIGlm IChtcENhbGxiYWNrcykgeworLSAgICAgIG1wQ2FsbGJhY2tzLT5TaG93SG9yaXpvbnRhbFNjcm9s bGJhcihuZXdoc3RhdGUpOworLSAgICAgIG1wQ2FsbGJhY2tzLT5TaG93VmVydGljYWxTY3JvbGxi YXIobmV3dnN0YXRlKTsKKy0gICB9CisrICAgLy9pZiAobXBDYWxsYmFja3MpIHsKKysgICAvLyAg IG1wQ2FsbGJhY2tzLT5TaG93SG9yaXpvbnRhbFNjcm9sbGJhcihuZXdoc3RhdGUpOworKyAgIC8v ICAgbXBDYWxsYmFja3MtPlNob3dWZXJ0aWNhbFNjcm9sbGJhcihuZXd2c3RhdGUpOworKyAgIC8v fQorCisgICAgLy8gV2hlbiBub3Qgc2Nyb2xsYWJsZSBpbiBlaXRoZXIgYXhpcywgYWxpZ24gdmll d3BvcnQgdG8gdG9wIG9yIGxlZnQgYW5kCisgICAgLy8gcmVwYWludCBpdCBsYXRlcgorQEAgLTM3 OCw3ICszNzgsNyBAQAorICAgICAgICAgIHRvdGFsSGVpZ2h0IC8gc2Nyb2xsU3RlcCwKKyAgICAg ICAgICBwYW5lbEhlaWdodCAvIHNjcm9sbFN0ZXAsIHRydWUpOworCistICAgcmVzY3JvbGwgPSAo cmVzY3JvbGwgJiYKKysgICByZXNjcm9sbCA9IChyZXNjcm9sbCB8fAorICAgICAgICAodmlld0lu Zm8uR2V0U2NyZWVuRW5kVGltZSgpIC0gdmlld0luZm8uaHBvcykgPCB0b3RhbCk7CisgICAgUHVi bGlzaCh7IChyZWZyZXNoIHx8IHJlc2Nyb2xsKSwKKyAgICAgICAob2xkaHN0YXRlICE9IG5ld2hz dGF0ZSB8fCBvbGR2c3RhdGUgIT0gbmV3dnN0YXRlKSwgZmFsc2UgfSk7CmRpZmYgLS1naXQgYS9z cmNwa2dzL2RvbHBoaW4tZW11L3BhdGNoZXMvaXBwcm90by5wYXRjaCBiL3NyY3BrZ3MvZG9scGhp bi1lbXUvcGF0Y2hlcy9pcHByb3RvLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAwMDAwMDAwLi42N2MzNzFmMGI2YTkwMAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mv ZG9scGhpbi1lbXUvcGF0Y2hlcy9pcHByb3RvLnBhdGNoCkBAIC0wLDAgKzEsMTMgQEAKKy0tLSBh L1NvdXJjZS9Db3JlL0NvcmUvSFcvRVhJL0JCQS9CdWlsdEluLmgJMjAyMy0wNS0xMSAxNzowMjoz MC4wMDAwMDAwMDAgLTA0MDAKKysrKyBiL1NvdXJjZS9Db3JlL0NvcmUvSFcvRVhJL0JCQS9CdWls dEluLmgJMjAyNC0wNi0wNCAwOToyNDoxOS40NzYyNjIzNDUgLTA0MDAKK0BAIC0yMCw5ICsyMCw2 IEBACisgY29uc3RleHByIHUxNiBUQ1BfRkxBR19GSU4gPSAweDE7CisgY29uc3RleHByIHUxNiBU Q1BfRkxBR19SU1QgPSAweDQ7CisgCistY29uc3RleHByIHUxNiBJUF9QUk9UT0NPTCA9IDB4ODAw OworLWNvbnN0ZXhwciB1MTYgQVJQX1BST1RPQ09MID0gMHg4MDY7CistCisgY29uc3RleHByIHU4 IE1BWF9UQ1BfQlVGRkVSID0gNDsKKyBjb25zdGV4cHIgdTE2IE1BWF9VRFBfTEVOR1RIID0gMTUw MDsKKyBjb25zdGV4cHIgdTE2IE1BWF9UQ1BfTEVOR1RIID0gNDQwOworCmRpZmYgLS1naXQgYS9z cmNwa2dzL2RvbHBoaW4tZW11L3RlbXBsYXRlIGIvc3JjcGtncy9kb2xwaGluLWVtdS90ZW1wbGF0 ZQppbmRleCA4NjJkM2FlOTY0ZWVjNC4uYzRhNmFkNDAxNjI4MzQgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvZG9scGhpbi1lbXUvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kb2xwaGluLWVtdS90ZW1wbGF0 ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2RvbHBoaW4tZW11JwogcGtn bmFtZT1kb2xwaGluLWVtdQogdmVyc2lvbj01LjAuMTkzNjgKLXJldmlzaW9uPTMKK3JldmlzaW9u PTQKIF9kb2xwaGluX2NvbW1pdD1kYWRiZWI0YmFlN2U3ZmEyM2FmMmI0NmUwYWRkNDE0MzA5NGRj MTA3CiBfbWdiYV9jb21taXQ9NDRlMDc0YTE1ZTk2NTE0ODFmN2Y2NTJhYzAwNmE3YzlkNThjYmVi OQogX2dvb2dsZXRlc3RfY29tbWl0PWJlMDNkMDBmNWYwY2MzYTk5N2QxYTM2OGJlZThhMWZlOTM2 NTFmNDgKQEAgLTI0LDcgKzI0LDcgQEAgY29uZmlndXJlX2FyZ3M9Ii1EVVNFX1NIQVJFRF9FTkVU PU9OCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgcXQ2LXRvb2xzIHF0Ni1iYXNlIGdldHRl eHQtZGV2ZWwiCiBtYWtlZGVwZW5kcz0iCiAgemxpYi1kZXZlbCBnbGV3LWRldmVsIGxpYnVzYi1k ZXZlbCBxdDYtYmFzZS1kZXZlbCBtaW5pdXBucGMtZGV2ZWwgbGliZXZkZXYtZGV2ZWwKLSBTREwy LWRldmVsIHB1bHNlYXVkaW8tZGV2ZWwgYWxzYS1saWItZGV2ZWwgZmZtcGVnLWRldmVsIGxpYmdv bXAtZGV2ZWwgbGliY3VybC1kZXZlbAorIFNETDItZGV2ZWwgcHVsc2VhdWRpby1kZXZlbCBhbHNh LWxpYi1kZXZlbCBmZm1wZWc2LWRldmVsIGxpYmdvbXAtZGV2ZWwgbGliY3VybC1kZXZlbAogIHBv cnRhdWRpby1kZXZlbCBsaWJvcGVuYWwtZGV2ZWwgc291bmR0b3VjaC1kZXZlbCBsem8tZGV2ZWwg bGliYmx1ZXRvb3RoLWRldmVsCiAgbWJlZHRscy1kZXZlbCBTRk1MLWRldmVsIGxpYmVuZXQtZGV2 ZWwgbGlibHptYS1kZXZlbCBwdWdpeG1sLWRldmVsIgogZGVwZW5kcz0iZGVza3RvcC1maWxlLXV0 aWxzIgoKRnJvbSAxN2ViYzFlNTdjYzk2MTU1ZmYwNzRhNTMxN2FjNWVkMzJjMmUyYWY4IE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRl OiBUaHUsIDExIEphbiAyMDI0IDExOjUyOjAwIC0wNTAwClN1YmplY3Q6IFtQQVRDSCA4NC84OV0g YXJjYW46IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9hcmNhbi90ZW1wbGF0ZSB8 IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2FyY2FuL3RlbXBsYXRlIGIvc3JjcGtncy9hcmNhbi90ZW1w bGF0ZQppbmRleCBmZjkwOTFmOTBlYmIxMC4uNmRmZDdlYTMwODU5YzEgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvYXJjYW4vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9hcmNhbi90ZW1wbGF0ZQpAQCAtMiw3 ICsyLDcgQEAKICMgISEga2VlcCBzeW5jZWQgd2l0aDogYWNmZ2ZzIGFjbGlwIGFsb2FkaW1hZ2UK IHBrZ25hbWU9YXJjYW4KIHZlcnNpb249MC42LjIuMQotcmV2aXNpb249MgorcmV2aXNpb249Mwog Y3JlYXRlX3dya3NyYz15ZXMKIGJ1aWxkX3dya3NyYz1hcmNhbi9zcmMKIGJ1aWxkX3N0eWxlPWNt YWtlCkBAIC0xMiw3ICsxMiw3IEBAIGNvbmZpZ3VyZV9hcmdzPSItRERJU1RSX1RBRz0nVm9pZCBM aW51eCcgLURWSURFT19QTEFURk9STT1lZ2wtZHJpCiAgJCh2b3B0X2lmIGx1YWppdCAnLURESVNB QkxFX0pJVD1PRkYnICctRERJU0FCTEVfSklUPU9OJykiCiBob3N0bWFrZWRlcGVuZHM9InBrZy1j b25maWcKICAkKHZvcHRfaWYgd2F5bGFuZCB3YXlsYW5kLWRldmVsKSIKLW1ha2VkZXBlbmRzPSJN ZXNhTGliLWRldmVsIGZmbXBlZy1kZXZlbCBmaWxlLWRldmVsIGZyZWV0eXBlLWRldmVsIGxpYmx6 bWEtZGV2ZWwKK21ha2VkZXBlbmRzPSJNZXNhTGliLWRldmVsIGZmbXBlZzYtZGV2ZWwgZmlsZS1k ZXZlbCBmcmVldHlwZS1kZXZlbCBsaWJsem1hLWRldmVsCiAgbGlib3BlbmFsLWRldmVsIGxpYnVz Yi1kZXZlbCBsaWJ2bmNzZXJ2ZXItZGV2ZWwgbGlieGtiY29tbW9uLWRldmVsIHNxbGl0ZS1kZXZl bAogIHZsYy1kZXZlbCBTREwyLWRldmVsIHhjYi11dGlsLWRldmVsIHhjYi11dGlsLXdtLWRldmVs CiAgJCh2b3B0X2lmIHR0cyAnbGliZXNwZWFrLW5nLWRldmVsJykKCkZyb20gYWEwMTZkMTI5NTFk YTgxZGZjOGU1N2VkMDBiNTg4YjJlZjUzNzViOSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogVGh1LCAxMSBKYW4gMjAyNCAxMTo1 MjoxMCAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggODUvODldIG5vdGN1cnNlczogcmV2YnVtcCBmb3Ig ZmZtcGVnNgoKLS0tCiBzcmNwa2dzL25vdGN1cnNlcy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxl IGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL25vdGN1cnNlcy90ZW1wbGF0ZSBiL3NyY3BrZ3Mvbm90Y3Vyc2VzL3RlbXBsYXRlCmlu ZGV4IDQ4YTc0NjNjYjY4ZWI5Li41NzA0YzI2NGQ2Njg0NCAxMDA2NDQKLS0tIGEvc3JjcGtncy9u b3RjdXJzZXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9ub3RjdXJzZXMvdGVtcGxhdGUKQEAgLTEs MTEgKzEsMTEgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ25vdGN1cnNlcycKIHBrZ25hbWU9bm90 Y3Vyc2VzCiB2ZXJzaW9uPTMuMC45Ci1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHls ZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EVVNFX1NUQVRJQz1PTiAtRFVTRV9RUkNPREVHRU49 T24gJCh2b3B0X2Jvb2wgbWFuIFVTRV9QQU5ET0MpIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29u ZmlnICQodm9wdF9pZiBtYW4gcGFuZG9jKSIKLW1ha2VkZXBlbmRzPSJsaWJ1bmlzdHJpbmctZGV2 ZWwgZmZtcGVnLWRldmVsIG5jdXJzZXMtbGlidGluZm8tZGV2ZWwgcXJjb2RlZ2VuCittYWtlZGVw ZW5kcz0ibGlidW5pc3RyaW5nLWRldmVsIGZmbXBlZzYtZGV2ZWwgbmN1cnNlcy1saWJ0aW5mby1k ZXZlbCBxcmNvZGVnZW4KICBkb2N0ZXN0LWRldmVsIGxpYmRlZmxhdGUtZGV2ZWwiCiBkZXBlbmRz PSJuY3Vyc2VzLWJhc2UiCiBzaG9ydF9kZXNjPSJCbGluZ2Z1bCBjaGFyYWN0ZXIgZ3JhcGhpY3Mv VFVJIGxpYnJhcnkiCgpGcm9tIDNjYmYzMDg3YWVmN2FiZjM0YzI3MTFiZTJjNGE3ZGRlYTA5MmU1 YzIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5j b20+CkRhdGU6IE1vbiwgMyBKdW4gMjAyNCAxOTo0NToyOSAtMDQwMApTdWJqZWN0OiBbUEFUQ0gg ODYvODldIG1wZDogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL21wZC90ZW1wbGF0 ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL21wZC90ZW1wbGF0ZSBiL3NyY3BrZ3MvbXBkL3RlbXBs YXRlCmluZGV4IGI4ZTJiZDRjMWI1OWM4Li43ZTA1OWNhM2Y3OGFmNSAxMDA2NDQKLS0tIGEvc3Jj cGtncy9tcGQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tcGQvdGVtcGxhdGUKQEAgLTEsNyArMSw3 IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdtcGQnCiBwa2duYW1lPW1wZAogdmVyc2lvbj0wLjIz LjE1Ci1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1tZXNvbgogY29uZmlndXJl X2FyZ3M9Ii1Eb3B1cz1lbmFibGVkIC1EbWlrbW9kPWVuYWJsZWQgLURuZWlnaGJvcj10cnVlCiAg LURzb3VuZGNsb3VkPWVuYWJsZWQgLURwaXBlPXRydWUgLUR0d29sYW1lPWVuYWJsZWQgLURiemlw Mj1lbmFibGVkCkBAIC0xOCw3ICsxOCw3IEBAIGNvbmZpZ3VyZV9hcmdzPSItRG9wdXM9ZW5hYmxl ZCAtRG1pa21vZD1lbmFibGVkIC1EbmVpZ2hib3I9dHJ1ZQogICQodm9wdF9mZWF0dXJlIG9wZW5t cHQgb3Blbm1wdCkgJCh2b3B0X2ZlYXR1cmUgcGlwZXdpcmUgcGlwZXdpcmUpIgogY29uZl9maWxl cz0iL2V0Yy9tcGQuY29uZiIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBweXRob24zLVNw aGlueCIKLW1ha2VkZXBlbmRzPSJhdmFoaS1nbGliLWxpYnMtZGV2ZWwgYm9vc3QtZGV2ZWwgZmFh ZDItZGV2ZWwgZmZtcGVnLWRldmVsCittYWtlZGVwZW5kcz0iYXZhaGktZ2xpYi1saWJzLWRldmVs IGJvb3N0LWRldmVsIGZhYWQyLWRldmVsIGZmbXBlZzYtZGV2ZWwKICBsaWJjdXJsLWRldmVsIGxp YmlkM3RhZy1kZXZlbCBsaWJtYWQtZGV2ZWwgbGlibWlrbW9kLWRldmVsIGxpYm1tcy1kZXZlbAog IGxpYm1vZHBsdWctZGV2ZWwgbGlibXBkY2xpZW50LWRldmVsIGxpYm5mcy1kZXZlbCBsaWJzYW1w bGVyYXRlLWRldmVsCiAgbGlibnB1cG5wLWRldmVsIG1wZzEyMy1kZXZlbCBvcHVzLWRldmVsIHlh amwtZGV2ZWwgcGNyZTItZGV2ZWwgaWN1LWRldmVsCgpGcm9tIDUzZTk0NTUyNzBmYTg1OWQ5NzMy ZGMwZGUwZTYwNjBhNTU1NDVlMWIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNl IDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFR1ZSwgNCBKdW4gMjAyNCAwOTowNToxOCAtMDQw MApTdWJqZWN0OiBbUEFUQ0ggODcvODldIGtmNi1rZmlsZW1ldGFkYXRhOiByZXZidW1wIGZvciBm Zm1wZWc2CgotLS0KIHNyY3BrZ3Mva2Y2LWtmaWxlbWV0YWRhdGEvdGVtcGxhdGUgfCA0ICsrLS0K IDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy9rZjYta2ZpbGVtZXRhZGF0YS90ZW1wbGF0ZSBiL3NyY3BrZ3Mva2Y2LWtm aWxlbWV0YWRhdGEvdGVtcGxhdGUKaW5kZXggZTE2OTM1YWE1MmI1MWIuLjE1NGIxMzRhNDZlNDM3 IDEwMDY0NAotLS0gYS9zcmNwa2dzL2tmNi1rZmlsZW1ldGFkYXRhL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3Mva2Y2LWtmaWxlbWV0YWRhdGEvdGVtcGxhdGUKQEAgLTEsMTQgKzEsMTQgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ2tmNi1rZmlsZW1ldGFkYXRhJwogcGtnbmFtZT1rZjYta2ZpbGVtZXRh ZGF0YQogdmVyc2lvbj02LjMuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9 Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREtERV9JTlNUQUxMX1FUUExVR0lORElSPWxpYi9xdDYv cGx1Z2lucyIKIGhvc3RtYWtlZGVwZW5kcz0iZXh0cmEtY21ha2UtbW9kdWxlcyBxdDYtdG9vbHMg cXQ2LWJhc2UKICBnZXR0ZXh0IHBrZy1jb25maWciCiBtYWtlZGVwZW5kcz0icXQ2LWJhc2UtZGV2 ZWwga2Y2LWtjb2RlY3MtZGV2ZWwga2Y2LWtpMThuLWRldmVsIGtmNi1rYXJjaGl2ZS1kZXZlbAog IGtmNi1rY29yZWFkZG9ucy1kZXZlbCBrZjYta2NvbmZpZy1kZXZlbCBhdHRyLWRldmVsIHRhZ2xp Yi1kZXZlbCBsaWJxbW9iaXBvY2tldDYtZGV2ZWwKLSBleGl2Mi1kZXZlbCBmZm1wZWctZGV2ZWwg ZWJvb2stdG9vbHMtZGV2ZWwgcG9wcGxlci1xdDYtZGV2ZWwiCisgZXhpdjItZGV2ZWwgZmZtcGVn Ni1kZXZlbCBlYm9vay10b29scy1kZXZlbCBwb3BwbGVyLXF0Ni1kZXZlbCIKIHNob3J0X2Rlc2M9 IkxpYnJhcnkgZm9yIGV4dHJhY3RpbmcgZmlsZSBtZXRhZGF0YSIKIG1haW50YWluZXI9IkpvaG4g PG1lQGpvaG5ueW5hdG9yLmRldj4iCiBsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRlciIKCkZyb20g YmMyZDQ3NTZjZDFmMzU5ODc1NzM0YjNhOTc0ZGRjNTYzNGU0Y2IwYyBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogTW9uLCAzIEFw ciAyMDIzIDIzOjMzOjMwIC0wNDAwClN1YmplY3Q6IFtQQVRDSCA4OC84OV0gc2hpYm9rZW4yOiBy ZXZidW1wIGZvciBxdDUtNS4xNS4xMQoKLS0tCiBzcmNwa2dzL3NoaWJva2VuMi9wYXRjaGVzL2lt cG9ydGxpYi1tYWNoaW5lcnktYnlwYXNzLnBhdGNoIHwgMSArCiAxIGZpbGUgY2hhbmdlZCwgMSBp bnNlcnRpb24oKykKIGNyZWF0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL3NoaWJva2VuMi9wYXRjaGVz L2ltcG9ydGxpYi1tYWNoaW5lcnktYnlwYXNzLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9z aGlib2tlbjIvcGF0Y2hlcy9pbXBvcnRsaWItbWFjaGluZXJ5LWJ5cGFzcy5wYXRjaCBiL3NyY3Br Z3Mvc2hpYm9rZW4yL3BhdGNoZXMvaW1wb3J0bGliLW1hY2hpbmVyeS1ieXBhc3MucGF0Y2gKbmV3 IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAwMDAuLmVmY2YzMjQ5YmQ4ODU0Ci0t LSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9zaGlib2tlbjIvcGF0Y2hlcy9pbXBvcnRsaWItbWFj aGluZXJ5LWJ5cGFzcy5wYXRjaApAQCAtMCwwICsxIEBACisuLi8uLi9weXRob24zLXB5c2lkZTIv cGF0Y2hlcy9pbXBvcnRsaWItbWFjaGluZXJ5LWJ5cGFzcy5wYXRjaApcIE5vIG5ld2xpbmUgYXQg ZW5kIG9mIGZpbGUKCkZyb20gYjY5ZDIzODkzOTUzNTRjYTZlN2Q3ODc5YzY1MTI1YTJmNmFiYzUz NSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNv bT4KRGF0ZTogTW9uLCAzIEFwciAyMDIzIDIzOjMzOjUzIC0wNDAwClN1YmplY3Q6IFtQQVRDSCA4 OS84OV0gcHl0aG9uMy1weXNpZGUyOiByZXZidW1wIGZvciBxdDUtNS4xNS4xMQoKLS0tCiAuLi4v cGF0Y2hlcy9pbXBvcnRsaWItbWFjaGluZXJ5LWJ5cGFzcy5wYXRjaCAgICAgIHwgMTUgKysrKysr KysrKysrKysrCiBzcmNwa2dzL3B5dGhvbjMtcHlzaWRlMi90ZW1wbGF0ZSAgICAgICAgICAgICAg ICAgIHwgIDIgKy0KIDIgZmlsZXMgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlv bigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcHl0aG9uMy1weXNpZGUyL3BhdGNoZXMv aW1wb3J0bGliLW1hY2hpbmVyeS1ieXBhc3MucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5 dGhvbjMtcHlzaWRlMi9wYXRjaGVzL2ltcG9ydGxpYi1tYWNoaW5lcnktYnlwYXNzLnBhdGNoIGIv c3JjcGtncy9weXRob24zLXB5c2lkZTIvcGF0Y2hlcy9pbXBvcnRsaWItbWFjaGluZXJ5LWJ5cGFz cy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uNjRjNDI5 NTg0Nzc2YjUKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3B5dGhvbjMtcHlzaWRlMi9wYXRj aGVzL2ltcG9ydGxpYi1tYWNoaW5lcnktYnlwYXNzLnBhdGNoCkBAIC0wLDAgKzEsMTUgQEAKK1Vz aW5nIHRoaXMgcHJldmVudHMgYW4gZXJyb3IgYXJvdW5kIGxpbmUgMjIwIGJlbG93IGl0LgorIkF0 dHJpYnV0ZUVycm9yOiBtb2R1bGUgJ2ltcG9ydGxpYicgaGFzIG5vIGF0dHJpYnV0ZSAnbWFjaGlu ZXJ5JyIKK1RoZSBvbGQgYmFja3VwIGxvZ2ljIGlzIGluIHBsYWNlIGFuZCBjb21waWxlcyB3aXRo b3V0IGlzc3Vlcy4KKy0tLSBhL3NvdXJjZXMvc2hpYm9rZW4yL2xpYnNoaWJva2VuL2VtYmVkL3Np Z25hdHVyZV9ib290c3RyYXAucHkJMjAyMy0wNC0wMiAyMzowOTozNC42ODg5MTI0MDIgLTA0MDAK KysrKyBiL3NvdXJjZXMvc2hpYm9rZW4yL2xpYnNoaWJva2VuL2VtYmVkL3NpZ25hdHVyZV9ib290 c3RyYXAucHkJMjAyMy0wNC0wMiAyMzoxMDowMy4zOTU1Mjk1ODIgLTA0MDAKK0BAIC0xNzAsOSAr MTcwLDYgQEAKKworICAgICAjICd6aXBzdHJpbmdfc2VxdWVuY2UnIGNvbWVzIGZyb20gc2lnbmF0 dXJlLmNwcAorICAgICB6aXBieXRlcyA9IGJhc2U2NC5iNjRkZWNvZGUoJycuam9pbih6aXBzdHJp bmdfc2VxdWVuY2UpKQorLSAgICBpZiBzeXMudmVyc2lvbl9pbmZvWzBdID49IDM6CistICAgICAg ICB2emlwID0gemlwZmlsZS5aaXBGaWxlKGlvLkJ5dGVzSU8oemlwYnl0ZXMpKQorLSAgICAgICAg cmV0dXJuIHN5cy5tZXRhX3BhdGgsIEVtYmVkZGFibGVaaXBJbXBvcnRlcih2emlwKQorCisgICAg ICMgT2xkIHZlcnNpb24gZm9yIFB5dGhvbiAyLjcsIG9ubHkuCisgICAgIGltcG9ydCBvcwpkaWZm IC0tZ2l0IGEvc3JjcGtncy9weXRob24zLXB5c2lkZTIvdGVtcGxhdGUgYi9zcmNwa2dzL3B5dGhv bjMtcHlzaWRlMi90ZW1wbGF0ZQppbmRleCAyNDllZmE5MDk4ODQyNS4uNTI2MjY0MzZjZTc1ZjIg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcHl0aG9uMy1weXNpZGUyL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvcHl0aG9uMy1weXNpZGUyL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAncHl0aG9uMy1weXNpZGUyJwogcGtnbmFtZT1weXRob24zLXB5c2lkZTIKIHZlcnNp b249NS4xNS4xMAotcmV2aXNpb249MQorcmV2aXNpb249MgogX3BrZ25hbWU9InB5c2lkZS1zZXR1 cC1vcGVuc291cmNlLXNyYy0ke3ZlcnNpb259IgogYnVpbGRfd3Jrc3JjPSJzb3VyY2VzL3B5c2lk ZTIiCiBidWlsZF9zdHlsZT1jbWFrZQo= --===============1782979968490259493==--