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.9 required=5.0 tests=ALL_TRUSTED,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 DE73525CC6 for ; Tue, 25 Jun 2024 19:43:46 +0200 (CEST) Content-Type: multipart/mixed; boundary="===============5493383780482214509==" 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: Tue, 25 Jun 2024 19:43:46 +0200 List-Id: Message-Id: <20240625174346.DE73525CC6@inbox.vuxu.org> GitHub notification mails are now in MIME to allow UTF8. --===============5493383780482214509== 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= --===============5493383780482214509== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-ffmpeg6-split-43761.patch" RnJvbSA5NjFlMTFlOTdmN2YyODhhOWRkZWExM2YyZTljYzFkYzMyNTY1MzcyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBTdW4s IDE1IE9jdCAyMDIzIDIxOjE2OjU2IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMDEvMTA4XSBmZm1w ZWc6IHVwZGF0ZSB0byA2LjAuMS4KCi0tLQogY29tbW9uL3NobGlicyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgMjYgKysrKy0tLQogc3JjcGtncy9mZm1wZWcvZmlsZXMvYWx0aXZl Yy5wYXRjaCAgICAgICAgICAgIHwgNjAgLS0tLS0tLS0tLS0tLS0tCiAuLi4vcGF0Y2hlcy9hcm12 NXRlbC1mbG9hdGluZy1wb2ludC5wYXRjaCAgICAgfCAxOCAtLS0tLQogc3JjcGtncy9mZm1wZWcv cGF0Y2hlcy9iaW51dGlscy0yLjQxLnBhdGNoICAgIHwgNzMgLS0tLS0tLS0tLS0tLS0tLS0tLQog Li4uaC1saWJhdmNvZGVjLWxpYnN2dGF2MS10ZW5fYml0X2Zvcm1hdC5kaWZmIHwgNDAgLS0tLS0t LS0tLQogc3JjcGtncy9mZm1wZWcvcGF0Y2hlcy9xc3YucGF0Y2ggICAgICAgICAgICAgIHwgMTUg KysrKwogc3JjcGtncy9mZm1wZWcvcGF0Y2hlcy9xdDYtd2ViZW5naW5lLnBhdGNoICAgIHwgMzYg KysrKysrKysrCiAuLi4vd29ya2Fyb3VuZC1tZXNhLXJlYWRlb24tdmFhcGktYnVnLnBhdGNoICAg fCAyOCAtLS0tLS0tCiBzcmNwa2dzL2ZmbXBlZy90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAg ICAgfCAzOCArKysrKy0tLS0tCiA5IGZpbGVzIGNoYW5nZWQsIDg3IGluc2VydGlvbnMoKyksIDI0 NyBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2ZmbXBlZy9maWxlcy9h bHRpdmVjLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9mZm1wZWcvcGF0Y2hlcy9h cm12NXRlbC1mbG9hdGluZy1wb2ludC5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mv ZmZtcGVnL3BhdGNoZXMvYmludXRpbHMtMi40MS5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3MvZmZtcGVnL3BhdGNoZXMvcGF0Y2gtbGliYXZjb2RlYy1saWJzdnRhdjEtdGVuX2JpdF9m b3JtYXQuZGlmZgogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZmZtcGVnL3BhdGNoZXMvcXN2 LnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9mZm1wZWcvcGF0Y2hlcy9xdDYtd2Vi ZW5naW5lLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9mZm1wZWcvcGF0Y2hlcy93 b3JrYXJvdW5kLW1lc2EtcmVhZGVvbi12YWFwaS1idWcucGF0Y2gKCmRpZmYgLS1naXQgYS9jb21t b24vc2hsaWJzIGIvY29tbW9uL3NobGlicwppbmRleCBlOTNkNGNkNjNhZTAzYi4uMzZhNzUyNjU2 ODRiMTcgMTAwNjQ0Ci0tLSBhL2NvbW1vbi9zaGxpYnMKKysrIGIvY29tbW9uL3NobGlicwpAQCAt MzkyLDE1ICszOTIsMjMgQEAgbGliaWQzdGFnLnNvLjAgbGliaWQzdGFnLTAuMTUuMWJfMQogbGli Z2lmLnNvLjcgZ2lmbGliLTUuMS4wXzEKIGxpYkltbGliMi5zby4xIGltbGliMi0xLjQuMl8xCiBs aWJtcDNsYW1lLnNvLjAgbGFtZS0zLjk4LjJfMQotbGliYXZkZXZpY2Uuc28uNTggbGliYXZkZXZp Y2UtNC4wXzEKLWxpYmF2Zm9ybWF0LnNvLjU4IGxpYmF2Zm9ybWF0LTQuMF8xCi1saWJzd3NjYWxl LnNvLjUgbGlic3dzY2FsZS00LjBfMQotbGlic3dyZXNhbXBsZS5zby4zIGxpYnN3cmVzYW1wbGUt NC4wXzEKLWxpYmF2cmVzYW1wbGUuc28uNCBsaWJhdnJlc2FtcGxlLTQuMF8xCi1saWJwb3N0cHJv Yy5zby41NSBsaWJwb3N0cHJvYy00LjBfMQotbGliYXZjb2RlYy5zby41OCBsaWJhdmNvZGVjLTQu MF8xCi1saWJhdnV0aWwuc28uNTYgbGliYXZ1dGlsLTQuMF8xCi1saWJhdmZpbHRlci5zby43IGxp YmF2ZmlsdGVyLTQuMF8xCitsaWJhdmRldmljZS5zby42MCBsaWJhdmRldmljZS02LjBfMQorbGli YXZmb3JtYXQuc28uNjAgbGliYXZmb3JtYXQtNi4wXzEKK2xpYnN3c2NhbGUuc28uNyBsaWJzd3Nj YWxlLTYuMF8xCitsaWJzd3Jlc2FtcGxlLnNvLjQgbGlic3dyZXNhbXBsZS02LjBfMQorbGlicG9z dHByb2Muc28uNTcgbGlicG9zdHByb2MtNi4wXzEKK2xpYmF2Y29kZWMuc28uNjAgbGliYXZjb2Rl Yy02LjBfMQorbGliYXZ1dGlsLnNvLjU4IGxpYmF2dXRpbC02LjBfMQorbGliYXZmaWx0ZXIuc28u OSBsaWJhdmZpbHRlci02LjBfMQorbGliYXZkZXZpY2Uuc28uNTggbGliYXZkZXZpY2U0LTQuMF8x CitsaWJhdmZvcm1hdC5zby41OCBsaWJhdmZvcm1hdDQtNC4wXzEKK2xpYnN3c2NhbGUuc28uNSBs aWJzd3NjYWxlNC00LjBfMQorbGlic3dyZXNhbXBsZS5zby4zIGxpYnN3cmVzYW1wbGU0LTQuMF8x CitsaWJhdnJlc2FtcGxlLnNvLjQgbGliYXZyZXNhbXBsZTQtNC4wXzEKK2xpYnBvc3Rwcm9jLnNv LjU1IGxpYnBvc3Rwcm9jNC00LjBfMQorbGliYXZjb2RlYy5zby41OCBsaWJhdmNvZGVjNC00LjBf MQorbGliYXZ1dGlsLnNvLjU2IGxpYmF2dXRpbDQtNC4wXzEKK2xpYmF2ZmlsdGVyLnNvLjcgbGli YXZmaWx0ZXI0LTQuMF8xCiBsaWJTREwtMS4yLnNvLjAgU0RMLTEuMi4xNF8xCiBsaWJTRExfaW1h Z2UtMS4yLnNvLjAgU0RMX2ltYWdlLTEuMi4xMF8xCiBsaWJ4MjY0LnNvLjE1NyB4MjY0LTIwMTkw NTA3LjIyNDVfMQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9mZm1wZWcvZmlsZXMvYWx0aXZlYy5wYXRj aCBiL3NyY3BrZ3MvZmZtcGVnL2ZpbGVzL2FsdGl2ZWMucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUg MTAwNjQ0CmluZGV4IDljNTcyMDA0NjMzMjBlLi4wMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dz L2ZmbXBlZy9maWxlcy9hbHRpdmVjLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNjAgKzAsMCBA QAotcmV2ZXJ0IHNvbWUgYWx0aXZlYyBzcGVjaWZpYyBjaGFuZ2Ugb24gYWxsIHBwYyogZXhjZXB0 IHBwYzY0bGUqCi0KLXE2NjogIldlIHNob3VsZCBhbHNvIHRocm93IGluIGEgcmV2ZXJ0IG9mIEZG bXBlZy9GRm1wZWdAM2E1NTdjNSBidXQgb25seQotY29uZGl0aW9uYWxseSwgZm9yIHBwYyogYnV0 IG5vdCBwcGM2NGxlKiAodGhlIG5ldyBjb2RlIGlzIHZhbGlkIGZvcgotUE9XRVI4IFZTWCB3aGlj aCBMRSB0YXJnZXRzIGFzIGEgYmFzZWxpbmUgYnV0IG5vdCBCRSkiCi0KLQotVGhpcyByZXZlcnRz IGNvbW1pdCAzYTU1N2M1ZDg4YjdiMTViNTk1NGJhMjc0M2ZlYmIwNTU1NDliNTM2LgotLS0tCi0g bGlic3dzY2FsZS9wcGMveXV2MnJnYl9hbHRpdmVjLmMgfCAyNCArKysrKysrKysrKysrKysrKysr Ky0tLS0KLSAxIGZpbGUgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkK LQotZGlmZiAtLWdpdCBhL2xpYnN3c2NhbGUvcHBjL3l1djJyZ2JfYWx0aXZlYy5jIGIvbGlic3dz Y2FsZS9wcGMveXV2MnJnYl9hbHRpdmVjLmMKLWluZGV4IDUzNjU0NTI5M2QuLmMxZTI4NTJhZGIg MTAwNjQ0Ci0tLS0gYS9saWJzd3NjYWxlL3BwYy95dXYycmdiX2FsdGl2ZWMuYwotKysrIGIvbGli c3dzY2FsZS9wcGMveXV2MnJnYl9hbHRpdmVjLmMKLUBAIC0zMDUsNiArMzA1LDkgQEAgc3RhdGlj IGludCBhbHRpdmVjXyAjIyBuYW1lKFN3c0NvbnRleHQgKmMsIGNvbnN0IHVuc2lnbmVkIGNoYXIg KippbiwgICAgICAgICAgXAotICAgICB2ZWN0b3Igc2lnbmVkIHNob3J0IFIxLCBHMSwgQjE7ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgdmVjdG9yIHVu c2lnbmVkIGNoYXIgUiwgRywgQjsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICBjb25zdCB2ZWN0b3IgdW5z aWduZWQgY2hhciAqeTFpdlAsICp5Mml2UCwgKnVpdlAsICp2aXZQOyAgICAgICAgICAgICAgICAg IFwKLSsgICAgdmVjdG9yIHVuc2lnbmVkIGNoYXIgYWxpZ25fcGVybTsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAg ICB2ZWN0b3Igc2lnbmVkIHNob3J0IGxDWSAgICAgICA9IGMtPkNZOyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFwKLSAgICAgdmVjdG9yIHNpZ25lZCBzaG9ydCBsT1kgICAgICAg PSBjLT5PWTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgIHZlY3Rv ciBzaWduZWQgc2hvcnQgbENSViAgICAgID0gYy0+Q1JWOyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXAotQEAgLTMzNSwxMyArMzM4LDI2IEBAIHN0YXRpYyBpbnQgYWx0aXZlY18g IyMgbmFtZShTd3NDb250ZXh0ICpjLCBjb25zdCB1bnNpZ25lZCBjaGFyICoqaW4sICAgICAgICAg IFwKLSAgICAgICAgIHZlY19kc3RzdChvdXRlLCAoMHgwMjAwMDAwMiB8ICgoKHcgKiAzICsgMzIp IC8gMzIpIDw8IDE2KSksIDEpOyAgICAgICBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAg ICAgICAgZm9yIChqID0gMDsgaiA8IHcgLyAxNjsgaisrKSB7ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFwKLS0gICAgICAgICAgICB5MCA9IHZlY194bCgwLCB5MWkpOyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICAg ICAgeTFpdlAgPSAoY29uc3QgdmVjdG9yIHVuc2lnbmVkIGNoYXIgKikgeTFpOyAgICAgICAgICAg ICAgICAgICAgICAgXAotKyAgICAgICAgICAgIHkyaXZQID0gKGNvbnN0IHZlY3RvciB1bnNpZ25l ZCBjaGFyICopIHkyaTsgICAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAgICAgICAgICB1aXZQ ICA9IChjb25zdCB2ZWN0b3IgdW5zaWduZWQgY2hhciAqKSB1aTsgICAgICAgICAgICAgICAgICAg ICAgICBcCi0rICAgICAgICAgICAgdml2UCAgPSAoY29uc3QgdmVjdG9yIHVuc2lnbmVkIGNoYXIg Kikgdmk7ICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK LSsgICAgICAgICAgICBhbGlnbl9wZXJtID0gdmVjX2x2c2woMCwgeTFpKTsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICAgICAgeTAgPSAodmVjdG9yIHVuc2ln bmVkIGNoYXIpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAg ICAgICAgICAgICAgICAgIHZlY19wZXJtKHkxaXZQWzBdLCB5MWl2UFsxXSwgYWxpZ25fcGVybSk7 ICAgICAgICAgICAgICAgIFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0tICAgICAgICAgICAg eTEgPSB2ZWNfeGwoMCwgeTJpKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXAotKyAgICAgICAgICAgIGFsaWduX3Blcm0gPSB2ZWNfbHZzbCgwLCB5MmkpOyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAgICAgICAgICB5MSA9ICh2 ZWN0b3IgdW5zaWduZWQgY2hhcikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBcCi0rICAgICAgICAgICAgICAgICAgICAgdmVjX3Blcm0oeTJpdlBbMF0sIHkyaXZQWzFdLCBh bGlnbl9wZXJtKTsgICAgICAgICAgICAgICAgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLS0g ICAgICAgICAgICB1ID0gKHZlY3RvciBzaWduZWQgY2hhcikgdmVjX3hsKDAsIHVpKTsgICAgICAg ICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICAgICAgYWxpZ25fcGVybSA9IHZlY19sdnNs KDAsIHVpKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAg ICAgIHUgPSAodmVjdG9yIHNpZ25lZCBjaGFyKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFwKLSsgICAgICAgICAgICAgICAgICAgIHZlY19wZXJtKHVpdlBbMF0sIHVp dlBbMV0sIGFsaWduX3Blcm0pOyAgICAgICAgICAgICAgICAgICBcCi0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXAotLSAgICAgICAgICAgIHYgPSAodmVjdG9yIHNpZ25lZCBjaGFyKSB2ZWNfeGwoMCwg dmkpOyAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAgICAgICAgICBhbGlnbl9wZXJt ID0gdmVjX2x2c2woMCwgdmkpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc Ci0rICAgICAgICAgICAgdiA9ICh2ZWN0b3Igc2lnbmVkIGNoYXIpICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgICAgICAgICAgICAgdmVjX3Blcm0o dml2UFswXSwgdml2UFsxXSwgYWxpZ25fcGVybSk7ICAgICAgICAgICAgICAgICAgIFwKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBcCi0gICAgICAgICAgICAgdSA9ICh2ZWN0b3Igc2lnbmVkIGNoYXIp ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgICAgICAgICAg ICAgICAgICAgdmVjX3N1Yih1LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKLS0tIAotMi4yNy4wCi0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZmZtcGVnL3Bh dGNoZXMvYXJtdjV0ZWwtZmxvYXRpbmctcG9pbnQucGF0Y2ggYi9zcmNwa2dzL2ZmbXBlZy9wYXRj aGVzL2FybXY1dGVsLWZsb2F0aW5nLXBvaW50LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCA5YTU1MTc4Yzc0ZjBmZC4uMDAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9mZm1w ZWcvcGF0Y2hlcy9hcm12NXRlbC1mbG9hdGluZy1wb2ludC5wYXRjaAorKysgL2Rldi9udWxsCkBA IC0xLDE4ICswLDAgQEAKLS0tLSBhL2xpYmF2ZmlsdGVyL3ZmX2RyYXd0ZXh0LmMJMjAxNy0xMC0y NiAyMTowMzowMy4wMDAwMDAwMDAgKzAyMDAKLSsrKyBiL2xpYmF2ZmlsdGVyL3ZmX2RyYXd0ZXh0 LmMJMjAxNy0xMS0yMSAxMTowNjo0OS42MDIyODQ0MjIgKzAxMDAKLUBAIC0zOSw2ICszOSwxNSBA QAotICNlbmRpZgotICNpbmNsdWRlIDxmZW52Lmg+Ci0gCi0rI2lmIChGRV9BTExfRVhDRVBUID09 IDApCi0rLyogRS5nLiBBUk0gc29mdCBmbG9hdCBkb2VzIG5vdCBkZWZpbmUgdGhlc2UgKi8KLSsj ZGVmaW5lIEZFX0lOVkFMSUQgICAgMAotKyNkZWZpbmUgRkVfRElWQllaRVJPICAwCi0rI2RlZmlu ZSBGRV9PVkVSRkxPVyAgIDAKLSsjZGVmaW5lIEZFX1VOREVSRkxPVyAgMAotKyNkZWZpbmUgRkVf SU5FWEFDVCAgICAwCi0rI2VuZGlmCi0rCi0gI2lmIENPTkZJR19MSUJGT05UQ09ORklHCi0gI2lu Y2x1ZGUgPGZvbnRjb25maWcvZm9udGNvbmZpZy5oPgotICNlbmRpZgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9mZm1wZWcvcGF0Y2hlcy9iaW51dGlscy0yLjQxLnBhdGNoIGIvc3JjcGtncy9mZm1wZWcv cGF0Y2hlcy9iaW51dGlscy0yLjQxLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCA1M2E1OTZkMGVlN2Q0ZS4uMDAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9mZm1wZWcvcGF0 Y2hlcy9iaW51dGlscy0yLjQxLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNzMgKzAsMCBAQAot RnJvbSBlZmZhZGNlNmM3NTYyNDdlYThiYWUzMmRjMTNiYjNlNmY0NjRmMGViIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQotRnJvbTogPT9VVEYtOD9xP1I9QzM9QTltaT0yMERlbmlzLUNvdXJtb250 Pz0gPHJlbWlAcmVtbGFiLm5ldD4KLURhdGU6IFN1biwgMTYgSnVsIDIwMjMgMTg6MTg6MDIgKzAz MDAKLVN1YmplY3Q6IFtQQVRDSF0gYXZjb2RlYy94ODYvbWF0aG9wczogY2xpcCBjb25zdGFudHMg dXNlZCB3aXRoIHNoaWZ0Ci0gaW5zdHJ1Y3Rpb25zIHdpdGhpbiBpbmxpbmUgYXNzZW1ibHkKLQot Rml4ZXMgYXNzZW1ibGluZyB3aXRoIGJpbnV0aWwgYXMgPj0gMi40MQotCi1TaWduZWQtb2ZmLWJ5 OiBKYW1lcyBBbG1lciA8amFtcmlhbEBnbWFpbC5jb20+Ci0tLS0KLSBsaWJhdmNvZGVjL3g4Ni9t YXRob3BzLmggfCAyNiArKysrKysrKysrKysrKysrKysrKysrKy0tLQotIDEgZmlsZSBjaGFuZ2Vk LCAyMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEvbGliYXZj b2RlYy94ODYvbWF0aG9wcy5oIGIvbGliYXZjb2RlYy94ODYvbWF0aG9wcy5oCi1pbmRleCA2Mjk4 ZjVlZDE5ODNiLi5jYTdlMmRmZmMxMDc2IDEwMDY0NAotLS0tIGEvbGliYXZjb2RlYy94ODYvbWF0 aG9wcy5oCi0rKysgYi9saWJhdmNvZGVjL3g4Ni9tYXRob3BzLmgKLUBAIC0zNSwxMiArMzUsMjAg QEAKLSBzdGF0aWMgYXZfYWx3YXlzX2lubGluZSBhdl9jb25zdCBpbnQgTVVMTChpbnQgYSwgaW50 IGIsIHVuc2lnbmVkIHNoaWZ0KQotIHsKLSAgICAgaW50IHJ0LCBkdW1teTsKLSsgICAgaWYgKF9f YnVpbHRpbl9jb25zdGFudF9wKHNoaWZ0KSkKLSAgICAgX19hc21fXyAoCi0gICAgICAgICAiaW11 bGwgJTMgICAgICAgICAgICAgICBcblx0IgotICAgICAgICAgInNocmRsICU0LCAlJWVkeCwgJSVl YXggXG5cdCIKLSAgICAgICAgIDoiPWEiKHJ0KSwgIj1kIihkdW1teSkKLS0gICAgICAgIDoiYSIo YSksICJybSIoYiksICJjaSIoKHVpbnQ4X3Qpc2hpZnQpCi0rICAgICAgICA6ImEiKGEpLCAicm0i KGIpLCAiaSIoc2hpZnQgJiAweDFGKQotICAgICApOwotKyAgICBlbHNlCi0rICAgICAgICBfX2Fz bV9fICgKLSsgICAgICAgICAgICAiaW11bGwgJTMgICAgICAgICAgICAgICBcblx0IgotKyAgICAg ICAgICAgICJzaHJkbCAlNCwgJSVlZHgsICUlZWF4IFxuXHQiCi0rICAgICAgICAgICAgOiI9YSIo cnQpLCAiPWQiKGR1bW15KQotKyAgICAgICAgICAgIDoiYSIoYSksICJybSIoYiksICJjIigodWlu dDhfdClzaGlmdCkKLSsgICAgICAgICk7Ci0gICAgIHJldHVybiBydDsKLSB9Ci0gCi1AQCAtMTEz LDE5ICsxMjEsMzEgQEAgX19hc21fXyB2b2xhdGlsZShcCi0gLy8gYXZvaWQgKzMyIGZvciBzaGlm dCBvcHRpbWl6YXRpb24gKGdjYyBzaG91bGQgZG8gdGhhdCAuLi4pCi0gI2RlZmluZSBORUdfU1NS MzIgTkVHX1NTUjMyCi0gc3RhdGljIGlubGluZSAgaW50MzJfdCBORUdfU1NSMzIoIGludDMyX3Qg YSwgaW50OF90IHMpewotKyAgICBpZiAoX19idWlsdGluX2NvbnN0YW50X3AocykpCi0gICAgIF9f YXNtX18gKCJzYXJsICUxLCAlMFxuXHQiCi0gICAgICAgICAgOiAiK3IiIChhKQotLSAgICAgICAg IDogImljIiAoKHVpbnQ4X3QpKC1zKSkKLSsgICAgICAgICA6ICJpIiAoLXMgJiAweDFGKQotICAg ICApOwotKyAgICBlbHNlCi0rICAgICAgICBfX2FzbV9fICgic2FybCAlMSwgJTBcblx0IgotKyAg ICAgICAgICAgICAgIDogIityIiAoYSkKLSsgICAgICAgICAgICAgICA6ICJjIiAoKHVpbnQ4X3Qp KC1zKSkKLSsgICAgICAgICk7Ci0gICAgIHJldHVybiBhOwotIH0KLSAKLSAjZGVmaW5lIE5FR19V U1IzMiBORUdfVVNSMzIKLSBzdGF0aWMgaW5saW5lIHVpbnQzMl90IE5FR19VU1IzMih1aW50MzJf dCBhLCBpbnQ4X3Qgcyl7Ci0rICAgIGlmIChfX2J1aWx0aW5fY29uc3RhbnRfcChzKSkKLSAgICAg X19hc21fXyAoInNocmwgJTEsICUwXG5cdCIKLSAgICAgICAgICA6ICIrciIgKGEpCi0tICAgICAg ICAgOiAiaWMiICgodWludDhfdCkoLXMpKQotKyAgICAgICAgIDogImkiICgtcyAmIDB4MUYpCi0g ICAgICk7Ci0rICAgIGVsc2UKLSsgICAgICAgIF9fYXNtX18gKCJzaHJsICUxLCAlMFxuXHQiCi0r ICAgICAgICAgICAgICAgOiAiK3IiIChhKQotKyAgICAgICAgICAgICAgIDogImMiICgodWludDhf dCkoLXMpKQotKyAgICAgICAgKTsKLSAgICAgcmV0dXJuIGE7Ci0gfQotIApkaWZmIC0tZ2l0IGEv c3JjcGtncy9mZm1wZWcvcGF0Y2hlcy9wYXRjaC1saWJhdmNvZGVjLWxpYnN2dGF2MS10ZW5fYml0 X2Zvcm1hdC5kaWZmIGIvc3JjcGtncy9mZm1wZWcvcGF0Y2hlcy9wYXRjaC1saWJhdmNvZGVjLWxp YnN2dGF2MS10ZW5fYml0X2Zvcm1hdC5kaWZmCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCBhYTk0OGY3YThhMmRmYi4uMDAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9mZm1wZWcvcGF0 Y2hlcy9wYXRjaC1saWJhdmNvZGVjLWxpYnN2dGF2MS10ZW5fYml0X2Zvcm1hdC5kaWZmCisrKyAv ZGV2L251bGwKQEAgLTEsNDAgKzAsMCBAQAotIz09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09Ci0jIEZyb20gMDMxZjE1NjFjZDI4NjU5NmNkYjM3NGRhMzJmOGFhODE2Y2Uz YjEzNSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLSMgRnJvbTogQ2hyaXN0b3BoZXIgRGVnYXdh IDxjaHJpc3RvcGhlci5kZWdhd2FAaW50ZWwuY29tPgotIyBEYXRlOiBUaHUsIDIwIE9jdCAyMDIy IDIyOjU1OjI3IC0wNTAwCi0jIFN1YmplY3Q6IFtQQVRDSF0gYXZjb2RlYy9saWJzdnRhdjE6IHJl bW92ZSBjb21wcmVzc2VkX3Rlbl9iaXRfZm9ybWF0IGFuZCBzaW1wbGlmeSBhbGxvY19idWZmZXIK LSMKLSMgY29tcHJlc3NlZF90ZW5fYml0X2Zvcm1hdCBoYXMgYmVlbiBkZXByZWNhdGVkIHVwc3Ry ZWFtIGFuZCBoYXMgbm8gZWZmZWN0Ci0jIGFuZCBjYW4gYmUgcmVtb3ZlZC4gUGx1cywgdGVjaG5p Y2FsbHkgaXQgd2FzIG5ldmVyIHVzZWQgaW4gdGhlIGZpcnN0IHBsYWNlCi0jIHNpbmNlIGl0IHdv dWxkIHJlcXVpcmUgdGhlIGFwcCAoZmZtcGVnKSB0byBzZXQgaXQgYW5kIGRvIGFkZGl0aW9uYWwK LSMgcHJvY2Vzc2luZyBvZiB0aGUgaW5wdXQgZnJhbWVzLgotIwotIyBBbHNvIHNpbXBsaWZ5IGFs bG9jX2J1ZmZlciBieSByZW1vdmluZyBjYWxjdWxhdGlvbnMgcmVsYXRpbmcgdG8gdGhlIG5vbi1l eGlzdGFudCBwcm9jZXNzaW5nLgotIwotIyBTaWduZWQtb2ZmLWJ5OiBDaHJpc3RvcGhlciBEZWdh d2EgPGNocmlzdG9waGVyLmRlZ2F3YUBpbnRlbC5jb20+Ci0jPT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0KLS0tLSBhL2xpYmF2Y29kZWMvbGlic3Z0YXYxLmMKLSsrKyBi L2xpYmF2Y29kZWMvbGlic3Z0YXYxLmMKLUBAIC0xMjQsMTYgKzEyNCwxMiBAQCBzdGF0aWMgaW50 IHN2dF9wcmludF9lcnJvcih2b2lkICpsb2dfY3R4LCBFYkVycm9yVHlwZSBlcnIsCi0gCi0gc3Rh dGljIGludCBhbGxvY19idWZmZXIoRWJTdnRBdjFFbmNDb25maWd1cmF0aW9uICpjb25maWcsIFN2 dENvbnRleHQgKnN2dF9lbmMpCi0gewotLSAgICBjb25zdCBpbnQgICAgcGFja19tb2RlXzEwYml0 ID0KLS0gICAgICAgIChjb25maWctPmVuY29kZXJfYml0X2RlcHRoID4gOCkgJiYgKGNvbmZpZy0+ Y29tcHJlc3NlZF90ZW5fYml0X2Zvcm1hdCA9PSAwKSA/IDEgOiAwOwotLSAgICBjb25zdCBzaXpl X3QgbHVtYV9zaXplXzhiaXQgID0KLS0gICAgICAgIGNvbmZpZy0+c291cmNlX3dpZHRoICogY29u ZmlnLT5zb3VyY2VfaGVpZ2h0ICogKDEgPDwgcGFja19tb2RlXzEwYml0KTsKLS0gICAgY29uc3Qg c2l6ZV90IGx1bWFfc2l6ZV8xMGJpdCA9Ci0tICAgICAgICAoY29uZmlnLT5lbmNvZGVyX2JpdF9k ZXB0aCA+IDggJiYgcGFja19tb2RlXzEwYml0ID09IDApID8gbHVtYV9zaXplXzhiaXQgOiAwOwot KyAgICBjb25zdCBzaXplX3QgbHVtYV9zaXplID0gY29uZmlnLT5zb3VyY2Vfd2lkdGggKiBjb25m aWctPnNvdXJjZV9oZWlnaHQgKgotKyAgICAgICAgKGNvbmZpZy0+ZW5jb2Rlcl9iaXRfZGVwdGgg PiA4ID8gMiA6IDEpOwotIAotICAgICBFYlN2dElPRm9ybWF0ICppbl9kYXRhOwotIAotLSAgICBz dnRfZW5jLT5yYXdfc2l6ZSA9IChsdW1hX3NpemVfOGJpdCArIGx1bWFfc2l6ZV8xMGJpdCkgKiAz IC8gMjsKLSsgICAgc3Z0X2VuYy0+cmF3X3NpemUgPSBsdW1hX3NpemUgKiAzIC8gMjsKLSAKLSAg ICAgLy8gYWxsb2NhdGUgYnVmZmVyIGZvciBpbiBhbmQgb3V0Ci0gICAgIHN2dF9lbmMtPmluX2J1 ZiAgICAgICAgICAgPSBhdl9tYWxsb2N6KHNpemVvZigqc3Z0X2VuYy0+aW5fYnVmKSk7Ci0tLSAK LUdpdExhYgotCmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZmbXBlZy9wYXRjaGVzL3Fzdi5wYXRjaCBi L3NyY3BrZ3MvZmZtcGVnL3BhdGNoZXMvcXN2LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwMDAwLi45NGVmNjhmNTY4M2YzYQotLS0gL2Rldi9udWxsCisrKyBiL3Ny Y3BrZ3MvZmZtcGVnL3BhdGNoZXMvcXN2LnBhdGNoCkBAIC0wLDAgKzEsMTUgQEAKK2RpZmYgLS1n aXQgYS9saWJhdmNvZGVjL3FzdmRlYy5jIGIvbGliYXZjb2RlYy9xc3ZkZWMuYworaW5kZXggZGE3 MDBmMjVlOS4uYjUwMTk2NDA4OSAxMDA2NDQKKy0tLSBhL2xpYmF2Y29kZWMvcXN2ZGVjLmMKKysr KyBiL2xpYmF2Y29kZWMvcXN2ZGVjLmMKK0BAIC0xMDc2LDYgKzEwNzYsOSBAQCAgc3RhdGljIGlu dCBxc3ZfZGVjb2RlX2ZyYW1lKEFWQ29kZWNDb250ZXh0ICphdmN0eCwgQVZGcmFtZSAqZnJhbWUs CisgCisgICAgICAgICByZXQgPSBxc3ZfcHJvY2Vzc19kYXRhKGF2Y3R4LCAmcy0+cXN2LCBmcmFt ZSwgZ290X2ZyYW1lLCAmcy0+YnVmZmVyX3BrdCk7CisgICAgICAgICBpZiAocmV0IDwgMCl7Cisr ICAgICAgICAgICAgaWYgKHJldCA9PSBBVkVSUk9SKEVBR0FJTikpCisrICAgICAgICAgICAgICAg IHJldCA9IDA7CisrCisgICAgICAgICAgICAgLyogRHJvcCBidWZmZXJfcGt0IHdoZW4gZmFpbGVk IHRvIGRlY29kZSB0aGUgcGFja2V0LiBPdGhlcndpc2UsCisgICAgICAgICAgICAgICAgdGhlIGRl Y29kZXIgd2lsbCBrZWVwIGRlY29kaW5nIHRoZSBmYWlsdXJlIHBhY2tldC4gKi8KKyAgICAgICAg ICAgICBhdl9wYWNrZXRfdW5yZWYoJnMtPmJ1ZmZlcl9wa3QpOworCmRpZmYgLS1naXQgYS9zcmNw a2dzL2ZmbXBlZy9wYXRjaGVzL3F0Ni13ZWJlbmdpbmUucGF0Y2ggYi9zcmNwa2dzL2ZmbXBlZy9w YXRjaGVzL3F0Ni13ZWJlbmdpbmUucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw MDAwMDAwMDAwMDAuLmMwYjM5N2JhODQ5NDM4Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9m Zm1wZWcvcGF0Y2hlcy9xdDYtd2ViZW5naW5lLnBhdGNoCkBAIC0wLDAgKzEsMzYgQEAKK2h0dHBz Oi8vYXVyLmFyY2hsaW51eC5vcmcvY2dpdC9hdXIuZ2l0L3RyZWUvMDQwLWZmbXBlZy1hZGQtYXZf c3RyZWFtX2dldF9maXJzdF9kdHMtZm9yLWNocm9taXVtLnBhdGNoP2g9ZmZtcGVnLWludGVsLWZ1 bGwtZ2l0CitkaWZmIC0tZ2l0IGEvbGliYXZmb3JtYXQvYXZmb3JtYXQuaCBiL2xpYmF2Zm9ybWF0 L2F2Zm9ybWF0LmgKK2luZGV4IGNkN2IwZDk0MWMuLmI0YTZkY2U4ODUgMTAwNjQ0CistLS0gYS9s aWJhdmZvcm1hdC9hdmZvcm1hdC5oCisrKysgYi9saWJhdmZvcm1hdC9hdmZvcm1hdC5oCitAQCAt MTAyNSw2ICsxMDI1LDEwIEBACisKKyAjZGVmaW5lIEFWX1BST0dSQU1fUlVOTklORyAxCisKKysv LyBDaHJvbWl1bTogV2UgdXNlIHRoZSBpbnRlcm5hbCBmaWVsZCBmaXJzdF9kdHMgdnZ2CisraW50 NjRfdCAgICBhdl9zdHJlYW1fZ2V0X2ZpcnN0X2R0cyhjb25zdCBBVlN0cmVhbSAqc3QpOworKy8v IENocm9taXVtOiBXZSB1c2UgdGhlIGludGVybmFsIGZpZWxkIGZpcnN0X2R0cyBeXl4KKysKKyAv KioKKyAgKiBOZXcgZmllbGRzIGNhbiBiZSBhZGRlZCB0byB0aGUgZW5kIHdpdGggbWlub3IgdmVy c2lvbiBidW1wcy4KKyAgKiBSZW1vdmFsLCByZW9yZGVyaW5nIGFuZCBjaGFuZ2VzIHRvIGV4aXN0 aW5nIGZpZWxkcyByZXF1aXJlIGEgbWFqb3IKKworZGlmZiAtLWdpdCBhL2xpYmF2Zm9ybWF0L3V0 aWxzLmMgYi9saWJhdmZvcm1hdC91dGlscy5jCitpbmRleCBkZTc1ODBjMzJkLi4wZWYwZmU1MzBl IDEwMDY0NAorLS0tIGEvbGliYXZmb3JtYXQvdXRpbHMuYworKysrIGIvbGliYXZmb3JtYXQvdXRp bHMuYworQEAgLTE1Miw2ICsxNTIsMTMgQEAKKyAgICAgcmV0dXJuIEFWX0NPREVDX0lEX05PTkU7 CisgfQorCisrLy8gQ2hyb21pdW06IFdlIHVzZSB0aGUgaW50ZXJuYWwgZmllbGQgZmlyc3RfZHRz IHZ2dgorK2ludDY0X3QgYXZfc3RyZWFtX2dldF9maXJzdF9kdHMoY29uc3QgQVZTdHJlYW0gKnN0 KQorK3sKKysgIHJldHVybiBjZmZzdHJlYW0oc3QpLT5maXJzdF9kdHM7CisrfQorKy8vIENocm9t aXVtOiBXZSB1c2UgdGhlIGludGVybmFsIGZpZWxkIGZpcnN0X2R0cyBeXl4KKysKKyBlbnVtIEFW Q29kZWNJRCBmZl9nZXRfcGNtX2NvZGVjX2lkKGludCBicHMsIGludCBmbHQsIGludCBiZSwgaW50 IHNmbGFncykKKyB7CisgICAgIGlmIChicHMgPD0gMCB8fCBicHMgPiA2NCkKKwpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9mZm1wZWcvcGF0Y2hlcy93b3JrYXJvdW5kLW1lc2EtcmVhZGVvbi12YWFwaS1i dWcucGF0Y2ggYi9zcmNwa2dzL2ZmbXBlZy9wYXRjaGVzL3dvcmthcm91bmQtbWVzYS1yZWFkZW9u LXZhYXBpLWJ1Zy5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDBlM2Y2OGE0 MTViODQuLjAwMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvZmZtcGVnL3BhdGNoZXMvd29ya2Fy b3VuZC1tZXNhLXJlYWRlb24tdmFhcGktYnVnLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMjgg KzAsMCBAQAotRnJvbSA4MTFkMjkwODQ0MjA2ZmM3M2RjMzljM2U1YjY3ZDVkODk1YmFlZGY4IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogUmFpbmVyIEhvY2hlY2tlciA8ZmVybmV0bWVu dGFAb25saW5lLmRlPgotRGF0ZTogU2F0LCAyNiBKYW4gMjAxOSAxOTo0ODozNSArMDEwMAotU3Vi amVjdDogW1BBVENIXSBhdmNvZGVjL3ZhYXBpX2gyNjQ6IHNraXAgZGVjb2RlIGlmIHBpYyBoYXMg bm8gc2xpY2VzCi0KLVRoaXMgZml4ZXMgLyB3b3JrYXJvdW5kcyBodHRwczovL2J1Z3MuZnJlZWRl c2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDUzNjguCi1JdCB3YXMgaGl0IGZyZXF1ZW50bHkg d2hlbiB3YXRjaGluZyBoMjY0IGNoYW5uZWxzIHJlY2VpdmVkIHZpYSBEVkItWC4KLUNvcnJlc3Bv bmRpbmcga29kaSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS94Ym1jL3hibWMvaXNzdWVzLzE1NzA0 Ci0tLS0KLSBsaWJhdmNvZGVjL3ZhYXBpX2gyNjQuYyB8IDUgKysrKysKLSAxIGZpbGUgY2hhbmdl ZCwgNSBpbnNlcnRpb25zKCspCi0KLWRpZmYgLS1naXQgYS9saWJhdmNvZGVjL3ZhYXBpX2gyNjQu YyBiL2xpYmF2Y29kZWMvdmFhcGlfaDI2NC5jCi1pbmRleCA1ODU0NTg3YTI1NS4uZjEyZmRjNDU3 YTQgMTAwNjQ0Ci0tLS0gYS9saWJhdmNvZGVjL3ZhYXBpX2gyNjQuYwotKysrIGIvbGliYXZjb2Rl Yy92YWFwaV9oMjY0LmMKLUBAIC0zMTcsNiArMzE3LDExIEBAIHN0YXRpYyBpbnQgdmFhcGlfaDI2 NF9lbmRfZnJhbWUoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQotICAgICBIMjY0U2xpY2VDb250ZXh0 ICpzbCA9ICZoLT5zbGljZV9jdHhbMF07Ci0gICAgIGludCByZXQ7Ci0gCi0rICAgIGlmIChwaWMt Pm5iX3NsaWNlcyA9PSAwKSB7Ci0rICAgICAgICByZXQgPSBBVkVSUk9SX0lOVkFMSUREQVRBOwot KyAgICAgICAgZ290byBmaW5pc2g7Ci0rICAgIH0KLSsKLSAgICAgcmV0ID0gZmZfdmFhcGlfZGVj b2RlX2lzc3VlKGF2Y3R4LCBwaWMpOwotICAgICBpZiAocmV0IDwgMCkKLSAgICAgICAgIGdvdG8g ZmluaXNoOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9mZm1wZWcvdGVtcGxhdGUgYi9zcmNwa2dzL2Zm bXBlZy90ZW1wbGF0ZQppbmRleCA5MzYxOGNkOTc3NTM3ZS4uNTNiNDgwNWI2NGFmZjAgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvZmZtcGVnL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZmZtcGVnL3RlbXBs YXRlCkBAIC0xLDE1ICsxLDE1IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdmZm1wZWcnCiAjIGF1 ZGFjaXR5IGFsc28gbmVlZHMgdG8gYmUgYnVtcGVkIHdoZW4gYSBuZXcgZmZtcGVnIHZlcnNpb24g YnVtcHMgbGliYXZmb3JtYXQncyBzb25hbWUhCiBwa2duYW1lPWZmbXBlZwotdmVyc2lvbj00LjQu NAotcmV2aXNpb249NwordmVyc2lvbj02LjAuMQorcmV2aXNpb249MQogc2hvcnRfZGVzYz0iRGVj b2RpbmcsIGVuY29kaW5nIGFuZCBzdHJlYW1pbmcgc29mdHdhcmUiCiBtYWludGFpbmVyPSJPcnBo YW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIK IGhvbWVwYWdlPSJodHRwczovL3d3dy5mZm1wZWcub3JnIgogY2hhbmdlbG9nPSJodHRwczovL3Jh dy5naXRodWJ1c2VyY29udGVudC5jb20vRkZtcGVnL0ZGbXBlZy9tYXN0ZXIvQ2hhbmdlbG9nIgog ZGlzdGZpbGVzPSJodHRwczovL3d3dy5mZm1wZWcub3JnL3JlbGVhc2VzL2ZmbXBlZy0ke3ZlcnNp b259LnRhci54eiIKLWNoZWNrc3VtPWU4MGIzODBkNTk1YzgwOTA2MGY2NmY5NmE1ZDg0OTUxMWVm NGE3NmEyNmI3NmVhY2Y1Nzc4Yjk0YzM1NzAzMDkKK2NoZWNrc3VtPTliMTZiODczMWQ3OGU1OTZi NGJlMGQ3MjA0MjhjYTQyZGY2NDJiYjJkNzgzNDI4ODFmZjdmNWJjMjlmYzk2MjMKIAogaG9zdG1h a2VkZXBlbmRzPSJwa2ctY29uZmlnIHBlcmwiCiBtYWtlZGVwZW5kcz0iemxpYi1kZXZlbCBiemlw Mi1kZXZlbCBmcmVldHlwZS1kZXZlbCBhbHNhLWxpYi1kZXZlbCBsaWJYZml4ZXMtZGV2ZWwKQEAg LTI4LDExICsyOCwxMiBAQCBtYWtlZGVwZW5kcz0iemxpYi1kZXZlbCBiemlwMi1kZXZlbCBmcmVl dHlwZS1kZXZlbCBhbHNhLWxpYi1kZXZlbCBsaWJYZml4ZXMtZGV2ZQogICQodm9wdF9pZiBkcm0g bGliZHJtLWRldmVsKSAkKHZvcHRfaWYgc3Z0YXYxIGxpYnN2dC1hdjEtZGV2ZWwpCiAgJCh2b3B0 X2lmIHNydCBzcnQtZGV2ZWwpICQodm9wdF9pZiByaXN0IGxpYnJpc3QtZGV2ZWwpCiAgJCh2b3B0 X2lmIHZ1bGthbiAndnVsa2FuLWxvYWRlci1kZXZlbCcpCisgJCh2b3B0X2lmIG9uZXZwbCAnb25l VlBMIG9uZVZQTC1kZXZlbCcpCiAgJCh2b3B0X2lmIG52ZW5jIG52LWNvZGVjLWhlYWRlcnMpICQo dm9wdF9pZiBudmRlYyBudi1jb2RlYy1oZWFkZXJzKSIKIGRlcGVuZHM9ImZmcGxheT49JHt2ZXJz aW9ufV8ke3JldmlzaW9ufSIKIAogYnVpbGRfb3B0aW9ucz0ieDI2NSB2NGwyIHZhYXBpIHZkcGF1 IHZweCBmZGtfYWFjIGFvbSBudmVuYyBzbmRpbyBwdWxzZWF1ZGlvCi0gZGF2MWQgemltZyB3ZWJw IHNvZmEgdnVsa2FuIGRybSBzdnRhdjEgc3J0IHJpc3QgbnZkZWMiCisgZGF2MWQgemltZyB3ZWJw IHNvZmEgdnVsa2FuIGRybSBzdnRhdjEgc3J0IHJpc3QgbnZkZWMgb25ldnBsIgogYnVpbGRfb3B0 aW9uc19kZWZhdWx0PSJ4MjY1IHY0bDIgdnB4IGFvbSBzbmRpbyBwdWxzZWF1ZGlvIGRhdjFkIHdl YnAgdnVsa2FuIGRybSBzcnQgcmlzdCIKIGRlc2Nfb3B0aW9uX3NydD0iRW5hYmxlIHN1cHBvcnQg Zm9yIFNSVCAoU2VjdXJlLCBSZWxpYWJsZSwgVHJhbnNwb3J0KSIKIGRlc2Nfb3B0aW9uX3Jpc3Q9 IkVuYWJsZSBzdXBwb3J0IGZvciBSSVNUIChSZWxpYWJsZSBJbnRlcm5ldCBTdHJlYW0gVHJhbnNw b3J0KSIKQEAgLTQwLDkgKzQxLDEzIEBAIGRlc2Nfb3B0aW9uX3NvZmE9IkVuYWJsZSBzdXBwb3J0 IGZvciBBRVMgU09GQSIKIGRlc2Nfb3B0aW9uX3dlYnA9IkVuYWJsZSBzdXBwb3J0IGZvciBXZWJQ IgogCiBjYXNlICIkWEJQU19UQVJHRVRfTUFDSElORSIgaW4KLQlpNjg2Knx4ODZfNjQqKQotCQlo b3N0bWFrZWRlcGVuZHMrPSIgbmFzbSIKKwlpNjg2KikKIAkJYnVpbGRfb3B0aW9uc19kZWZhdWx0 Kz0iIHZhYXBpIHZkcGF1IG52ZW5jIG52ZGVjIgorCQlob3N0bWFrZWRlcGVuZHMrPSIgbmFzbSIK KwkJOzsKKwl4ODZfNjQqKQorCQlob3N0bWFrZWRlcGVuZHMrPSIgbmFzbSIKKwkJYnVpbGRfb3B0 aW9uc19kZWZhdWx0Kz0iIHZhYXBpIHZkcGF1IG52ZW5jIG52ZGVjIG9uZXZwbCIKIAkJOzsKIAlw cGM2NCopIGJ1aWxkX29wdGlvbnNfZGVmYXVsdCs9IiB2YWFwaSB2ZHBhdSI7OwogCW1pcHMqKSBD RkxBR1M9Ii1tbmFuPWxlZ2FjeSI7OwpAQCAtNjYsOCArNzEsNiBAQCBwb3N0X3BhdGNoKCkgewog CQlwcGM2NGxlKikgOzsKIAkJcHBjKikgX2FwcGx5X3BhdGNoIC1wMSAke0ZJTEVTRElSfS9hbHRp dmVjLnBhdGNoIDs7CiAJZXNhYwotCi0JdnNlZCAtaSBsaWJhdmZpbHRlci92Zl9saWJ2bWFmLmMg LWUgJ3MhL3Vzci9sb2NhbC9zaGFyZS9tb2RlbC9cKHZtYWZfdjAuNi4xXCkucGtsIS91c3Ivc2hh cmUvdm1hZi9cMS5qc29uIScKIH0KIAogZG9fY29uZmlndXJlKCkgewpAQCAtMTE2LDE4ICsxMTks MTkgQEAgZG9fY29uZmlndXJlKCkgewogCQkkKHZvcHRfZW5hYmxlIHgyNjUgbGlieDI2NSkgXAog CQkkKHZvcHRfZW5hYmxlIHY0bDIgbGlidjRsMikgXAogCQkkKHZvcHRfZW5hYmxlIGFvbSBsaWJh b20pICQodm9wdF9lbmFibGUgdmFhcGkpICQodm9wdF9lbmFibGUgdmRwYXUpIFwKLQkJLS1lbmFi bGUtbGliYnMyYiAtLWVuYWJsZS1hdnJlc2FtcGxlIC0tZW5hYmxlLWxpYnZpZHN0YWIgXAorCQkt LWVuYWJsZS1saWJiczJiIC0tZW5hYmxlLWxpYnZpZHN0YWIgXAogCQkkKHZvcHRfZW5hYmxlIGRh djFkIGxpYmRhdjFkKSBcCiAJCSQodm9wdF9lbmFibGUgemltZyBsaWJ6aW1nKSBcCiAJCSQodm9w dF9lbmFibGUgd2VicCBsaWJ3ZWJwKSBcCiAJCSQodm9wdF9lbmFibGUgc29mYSBsaWJteXNvZmEp IFwKIAkJJCh2b3B0X2VuYWJsZSB2dWxrYW4pIFwKKwkJJCh2b3B0X2VuYWJsZSBvbmV2cGwgbGli dnBsKSBcCiAJCSQodm9wdF9lbmFibGUgZHJtIGxpYmRybSkgXAogCQkkKHZvcHRfZW5hYmxlIHN2 dGF2MSBsaWJzdnRhdjEpIFwKIAkJJCh2b3B0X2VuYWJsZSBzcnQgbGlic3J0KSBcCiAJCSQodm9w dF9lbmFibGUgcmlzdCBsaWJyaXN0KSBcCi0JCSQodm9wdF9pZiBudmVuYyAnLS1lbmFibGUtbnZl bmMnKSBcCi0JCSQodm9wdF9pZiBudmRlYyAnLS1lbmFibGUtbnZkZWMnKQorCQkkKHZvcHRfZW5h YmxlIG52ZW5jIG52ZW5jKSBcCisJCSQodm9wdF9lbmFibGUgbnZkZWMgbnZkZWMpCiB9CiAKIGRv X2J1aWxkKCkgewpAQCAtMTU0LDEwICsxNTgsOCBAQCBsaWJhdmRldmljZV9wYWNrYWdlKCkgewog fQogCiBsaWJhdnJlc2FtcGxlX3BhY2thZ2UoKSB7Ci0Jc2hvcnRfZGVzYz0iRkZtcGVnIGF1ZGlv IHJlc2FtcGxpbmcgbGlicmFyeSIKLQlwa2dfaW5zdGFsbCgpIHsKLQkJdm1vdmUgInVzci9saWIv bGliYXZyZXNhbXBsZS5zby4qIgotCX0KKwlzaG9ydF9kZXNjPSJQYWNrYWdlIGRlcHJlY2F0ZWQs IHJlbW92YWwgbmVlZGVkIgorCWJ1aWxkX3N0eWxlPW1ldGEKIH0KIAogbGliYXZmb3JtYXRfcGFj a2FnZSgpIHsKQEAgLTIxMSwxNSArMjEzLDEzIEBAIGZmbXBlZy1kZXZlbF9wYWNrYWdlKCkgewog CQlsaWJhdmZpbHRlcj49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufQogCQlsaWJwb3N0cHJvYz49JHt2 ZXJzaW9ufV8ke3JldmlzaW9ufQogCQlsaWJzd3NjYWxlPj0ke3ZlcnNpb259XyR7cmV2aXNpb259 Ci0JCWxpYnN3cmVzYW1wbGU+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KLQkJbGliYXZyZXNhbXBs ZT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwkJbGlic3dyZXNhbXBsZT49JHt2ZXJzaW9ufV8k e3JldmlzaW9ufSIKIAlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxvcG1lbnQgZmlsZXMiCi0KKwljb25m bGljdHM9ImZmbXBlZzQtZGV2ZWwiCiAJaWYgWyAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiID0gImk2 ODYiIF07IHRoZW4KIAkJIyAvdXNyL2Jpbi9zdHJpcDogZXJyb3I6IHRoZSBpbnB1dCBmaWxlICcv ZGVzdGRpci8vZmZtcGVnLWRldmVsLTQuNC40L3Vzci9saWIvbGliYXZmaWx0ZXIuYSh2Zl9hdGFk ZW5vaXNlLm8pJyBoYXMgbm8gc2VjdGlvbnMKIAkJbm9zdHJpcF9maWxlcz0iL3Vzci9saWIvbGli YXZmaWx0ZXIuYSIKIAlmaQotCiAJcGtnX2luc3RhbGwoKSB7CiAJCXZtb3ZlIHVzci9pbmNsdWRl CiAJCXZtb3ZlIHVzci9saWIvcGtnY29uZmlnCgpGcm9tIGVlMTUxMzk1Nzk3ZThjZmIxZWI3Y2Fi NGQ3MmEzZGZlZDAxMTJhYzggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6 bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFN1biwgMTUgT2N0IDIwMjMgMjE6MTg6MTQgLTA0MDAK U3ViamVjdDogW1BBVENIIDAwMi8xMDhdIG9wZW5zaG90OiByZXZidW1wIGZvciBmZm1wZWc2Cgot LS0KIHNyY3BrZ3Mvb3BlbnNob3QvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBp bnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL29wZW5zaG90 L3RlbXBsYXRlIGIvc3JjcGtncy9vcGVuc2hvdC90ZW1wbGF0ZQppbmRleCAzODQ5ODU4ZmU5NjNi NS4uMTI3ODliYzk4Njc0OTkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvb3BlbnNob3QvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9vcGVuc2hvdC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ29wZW5zaG90JwogcGtnbmFtZT1vcGVuc2hvdAogdmVyc2lvbj0zLjEuMQot cmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9cHl0aG9uMy1tb2R1bGUKIGhvc3Rt YWtlZGVwZW5kcz0icHl0aG9uMyBweXRob24zLXNldHVwdG9vbHMiCiBtYWtlZGVwZW5kcz0iZmZt cGVnLWRldmVsIHB5dGhvbjMtUHlRdDUiCgpGcm9tIGNkZWZjMjQwZmYxMzM1OTQzMmQ3NmU3NWUy ZWE4ZDljZTdhZmYxYTUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGlj ZTU1NUBnbWFpbC5jb20+CkRhdGU6IFN1biwgMTUgT2N0IDIwMjMgMjE6MTg6MzYgLTA0MDAKU3Vi amVjdDogW1BBVENIIDAwMy8xMDhdIHN1bW86IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3Jj cGtncy9zdW1vL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCsp LCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zdW1vL3RlbXBsYXRlIGIvc3Jj cGtncy9zdW1vL3RlbXBsYXRlCmluZGV4IGE3MzBhZmE5ZmFmYTkyLi5lMmRlZjA2ZmE0YmQ3ZCAx MDA2NDQKLS0tIGEvc3JjcGtncy9zdW1vL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvc3Vtby90ZW1w bGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3N1bW8nCiBwa2duYW1l PXN1bW8KIHZlcnNpb249MS4xMi4wCi1yZXZpc2lvbj03CityZXZpc2lvbj04CiBidWlsZF9zdHls ZT1jbWFrZQogaG9zdG1ha2VkZXBlbmRzPSJsaWJnZGFsLXRvb2xzIHBrZy1jb25maWcgc3dpZyBw eXRob24zLXNldHVwdG9vbHMiCiBtYWtlZGVwZW5kcz0icHl0aG9uMy1kZXZlbCBmZm1wZWctZGV2 ZWwgZm94LWRldmVsIGdsMnBzLWRldmVsIGxpYmdkYWwtZGV2ZWwKCkZyb20gZjU1MGQ0ZDVmMDU4 OTMxZWM4YTVmOTFmMGFjNGJmNTZlYWJlZWY2ZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAxOTo1 NjoyMiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDA0LzEwOF0gTmV3IHBhY2thZ2U6IGZmbXBlZzQt NC40LjQuCgotLS0KIHNyY3BrZ3MvZmZtcGVnNC1kZXZlbCAgICAgICAgICAgICAgICAgICAgICAg ICB8ICAgMSArCiBzcmNwa2dzL2ZmbXBlZzQvZmlsZXMvYWx0aXZlYy5wYXRjaCAgICAgICAgICAg fCAgNjAgKysrKysKIC4uLi9wYXRjaGVzL2FybXY1dGVsLWZsb2F0aW5nLXBvaW50LnBhdGNoICAg ICB8ICAxOCArKwogc3JjcGtncy9mZm1wZWc0L3BhdGNoZXMvYmludXRpbHMtMi40MS5wYXRjaCAg IHwgIDczICsrKysrKwogLi4uaC1saWJhdmNvZGVjLWxpYnN2dGF2MS10ZW5fYml0X2Zvcm1hdC5k aWZmIHwgIDQwICsrKwogLi4uL3dvcmthcm91bmQtbWVzYS1yZWFkZW9uLXZhYXBpLWJ1Zy5wYXRj aCAgIHwgIDI4ICsrKwogc3JjcGtncy9mZm1wZWc0L3RlbXBsYXRlICAgICAgICAgICAgICAgICAg ICAgIHwgMjM1ICsrKysrKysrKysrKysrKysrKwogc3JjcGtncy9saWJhdmNvZGVjNCAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgICAxICsKIHNyY3BrZ3MvbGliYXZkZXZpY2U0ICAgICAgICAg ICAgICAgICAgICAgICAgICB8ICAgMSArCiBzcmNwa2dzL2xpYmF2ZmlsdGVyNCAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgIDEgKwogc3JjcGtncy9saWJhdmZvcm1hdDQgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgICAxICsKIHNyY3BrZ3MvbGliYXZyZXNhbXBsZTQgICAgICAgICAgICAg ICAgICAgICAgICB8ICAgMSArCiBzcmNwa2dzL2xpYmF2dXRpbDQgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCAgIDEgKwogc3JjcGtncy9saWJwb3N0cHJvYzQgICAgICAgICAgICAgICAgICAg ICAgICAgIHwgICAxICsKIHNyY3BrZ3MvbGlic3dyZXNhbXBsZTQgICAgICAgICAgICAgICAgICAg ICAgICB8ICAgMSArCiBzcmNwa2dzL2xpYnN3c2NhbGU0ICAgICAgICAgICAgICAgICAgICAgICAg ICAgfCAgIDEgKwogMTYgZmlsZXMgY2hhbmdlZCwgNDY0IGluc2VydGlvbnMoKykKIGNyZWF0ZSBt b2RlIDEyMDAwMCBzcmNwa2dzL2ZmbXBlZzQtZGV2ZWwKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNw a2dzL2ZmbXBlZzQvZmlsZXMvYWx0aXZlYy5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3Br Z3MvZmZtcGVnNC9wYXRjaGVzL2FybXY1dGVsLWZsb2F0aW5nLXBvaW50LnBhdGNoCiBjcmVhdGUg bW9kZSAxMDA2NDQgc3JjcGtncy9mZm1wZWc0L3BhdGNoZXMvYmludXRpbHMtMi40MS5wYXRjaAog Y3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZmZtcGVnNC9wYXRjaGVzL3BhdGNoLWxpYmF2Y29k ZWMtbGlic3Z0YXYxLXRlbl9iaXRfZm9ybWF0LmRpZmYKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNw a2dzL2ZmbXBlZzQvcGF0Y2hlcy93b3JrYXJvdW5kLW1lc2EtcmVhZGVvbi12YWFwaS1idWcucGF0 Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2ZmbXBlZzQvdGVtcGxhdGUKIGNyZWF0ZSBt b2RlIDEyMDAwMCBzcmNwa2dzL2xpYmF2Y29kZWM0CiBjcmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtn cy9saWJhdmRldmljZTQKIGNyZWF0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL2xpYmF2ZmlsdGVyNAog Y3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGliYXZmb3JtYXQ0CiBjcmVhdGUgbW9kZSAxMjAw MDAgc3JjcGtncy9saWJhdnJlc2FtcGxlNAogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGli YXZ1dGlsNAogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGlicG9zdHByb2M0CiBjcmVhdGUg bW9kZSAxMjAwMDAgc3JjcGtncy9saWJzd3Jlc2FtcGxlNAogY3JlYXRlIG1vZGUgMTIwMDAwIHNy Y3BrZ3MvbGlic3dzY2FsZTQKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZmbXBlZzQtZGV2ZWwgYi9z cmNwa2dzL2ZmbXBlZzQtZGV2ZWwKbmV3IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAw MDAwMDAuLjg4N2YzNTRlN2M2YmUzCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9mZm1wZWc0 LWRldmVsCkBAIC0wLDAgKzEgQEAKK2ZmbXBlZzQKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl CmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZmbXBlZzQvZmlsZXMvYWx0aXZlYy5wYXRjaCBiL3NyY3Br Z3MvZmZtcGVnNC9maWxlcy9hbHRpdmVjLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDAwMDAwMDAwMDAwMDAwLi45YzU3MjAwNDYzMzIwZQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3Br Z3MvZmZtcGVnNC9maWxlcy9hbHRpdmVjLnBhdGNoCkBAIC0wLDAgKzEsNjAgQEAKK3JldmVydCBz b21lIGFsdGl2ZWMgc3BlY2lmaWMgY2hhbmdlIG9uIGFsbCBwcGMqIGV4Y2VwdCBwcGM2NGxlKgor CitxNjY6ICJXZSBzaG91bGQgYWxzbyB0aHJvdyBpbiBhIHJldmVydCBvZiBGRm1wZWcvRkZtcGVn QDNhNTU3YzUgYnV0IG9ubHkKK2NvbmRpdGlvbmFsbHksIGZvciBwcGMqIGJ1dCBub3QgcHBjNjRs ZSogKHRoZSBuZXcgY29kZSBpcyB2YWxpZCBmb3IKK1BPV0VSOCBWU1ggd2hpY2ggTEUgdGFyZ2V0 cyBhcyBhIGJhc2VsaW5lIGJ1dCBub3QgQkUpIgorCisKK1RoaXMgcmV2ZXJ0cyBjb21taXQgM2E1 NTdjNWQ4OGI3YjE1YjU5NTRiYTI3NDNmZWJiMDU1NTQ5YjUzNi4KKy0tLQorIGxpYnN3c2NhbGUv cHBjL3l1djJyZ2JfYWx0aXZlYy5jIHwgMjQgKysrKysrKysrKysrKysrKysrKystLS0tCisgMSBm aWxlIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1n aXQgYS9saWJzd3NjYWxlL3BwYy95dXYycmdiX2FsdGl2ZWMuYyBiL2xpYnN3c2NhbGUvcHBjL3l1 djJyZ2JfYWx0aXZlYy5jCitpbmRleCA1MzY1NDUyOTNkLi5jMWUyODUyYWRiIDEwMDY0NAorLS0t IGEvbGlic3dzY2FsZS9wcGMveXV2MnJnYl9hbHRpdmVjLmMKKysrKyBiL2xpYnN3c2NhbGUvcHBj L3l1djJyZ2JfYWx0aXZlYy5jCitAQCAtMzA1LDYgKzMwNSw5IEBAIHN0YXRpYyBpbnQgYWx0aXZl Y18gIyMgbmFtZShTd3NDb250ZXh0ICpjLCBjb25zdCB1bnNpZ25lZCBjaGFyICoqaW4sICAgICAg ICAgIFwKKyAgICAgdmVjdG9yIHNpZ25lZCBzaG9ydCBSMSwgRzEsIEIxOyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgIHZlY3RvciB1bnNpZ25lZCBjaGFy IFIsIEcsIEI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFwKKysgICAgY29uc3QgdmVjdG9yIHVuc2lnbmVkIGNoYXIg KnkxaXZQLCAqeTJpdlAsICp1aXZQLCAqdml2UDsgICAgICAgICAgICAgICAgICBcCisrICAgIHZl Y3RvciB1bnNpZ25lZCBjaGFyIGFsaWduX3Blcm07ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgdmVjdG9yIHNp Z25lZCBzaG9ydCBsQ1kgICAgICAgPSBjLT5DWTsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcCisgICAgIHZlY3RvciBzaWduZWQgc2hvcnQgbE9ZICAgICAgID0gYy0+T1k7ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICB2ZWN0b3Igc2lnbmVkIHNo b3J0IGxDUlYgICAgICA9IGMtPkNSVjsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFwKK0BAIC0zMzUsMTMgKzMzOCwyNiBAQCBzdGF0aWMgaW50IGFsdGl2ZWNfICMjIG5hbWUoU3dz Q29udGV4dCAqYywgY29uc3QgdW5zaWduZWQgY2hhciAqKmluLCAgICAgICAgICBcCisgICAgICAg ICB2ZWNfZHN0c3Qob3V0ZSwgKDB4MDIwMDAwMDIgfCAoKCh3ICogMyArIDMyKSAvIDMyKSA8PCAx NikpLCAxKTsgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgIGZvciAo aiA9IDA7IGogPCB3IC8gMTY7IGorKykgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcCistICAgICAgICAgICAgeTAgPSB2ZWNfeGwoMCwgeTFpKTsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorKyAgICAgICAgICAgIHkxaXZQID0g KGNvbnN0IHZlY3RvciB1bnNpZ25lZCBjaGFyICopIHkxaTsgICAgICAgICAgICAgICAgICAgICAg IFwKKysgICAgICAgICAgICB5Mml2UCA9IChjb25zdCB2ZWN0b3IgdW5zaWduZWQgY2hhciAqKSB5 Mmk7ICAgICAgICAgICAgICAgICAgICAgICBcCisrICAgICAgICAgICAgdWl2UCAgPSAoY29uc3Qg dmVjdG9yIHVuc2lnbmVkIGNoYXIgKikgdWk7ICAgICAgICAgICAgICAgICAgICAgICAgXAorKyAg ICAgICAgICAgIHZpdlAgID0gKGNvbnN0IHZlY3RvciB1bnNpZ25lZCBjaGFyICopIHZpOyAgICAg ICAgICAgICAgICAgICAgICAgIFwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisrICAgICAgICAg ICAgYWxpZ25fcGVybSA9IHZlY19sdnNsKDAsIHkxaSk7ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXAorKyAgICAgICAgICAgIHkwID0gKHZlY3RvciB1bnNpZ25lZCBjaGFyKSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKysgICAgICAgICAgICAgICAg ICAgICB2ZWNfcGVybSh5MWl2UFswXSwgeTFpdlBbMV0sIGFsaWduX3Blcm0pOyAgICAgICAgICAg ICAgICBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorLSAgICAgICAgICAgIHkxID0gdmVjX3hs KDAsIHkyaSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK KysgICAgICAgICAgICBhbGlnbl9wZXJtID0gdmVjX2x2c2woMCwgeTJpKTsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCisrICAgICAgICAgICAgeTEgPSAodmVjdG9yIHVuc2ln bmVkIGNoYXIpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorKyAgICAg ICAgICAgICAgICAgICAgIHZlY19wZXJtKHkyaXZQWzBdLCB5Mml2UFsxXSwgYWxpZ25fcGVybSk7 ICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCistICAgICAgICAgICAg dSA9ICh2ZWN0b3Igc2lnbmVkIGNoYXIpIHZlY194bCgwLCB1aSk7ICAgICAgICAgICAgICAgICAg ICAgICAgICAgXAorKyAgICAgICAgICAgIGFsaWduX3Blcm0gPSB2ZWNfbHZzbCgwLCB1aSk7ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKysgICAgICAgICAgICB1ID0gKHZl Y3RvciBzaWduZWQgY2hhcikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBcCisrICAgICAgICAgICAgICAgICAgICB2ZWNfcGVybSh1aXZQWzBdLCB1aXZQWzFdLCBhbGln bl9wZXJtKTsgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKy0g ICAgICAgICAgICB2ID0gKHZlY3RvciBzaWduZWQgY2hhcikgdmVjX3hsKDAsIHZpKTsgICAgICAg ICAgICAgICAgICAgICAgICAgICBcCisrICAgICAgICAgICAgYWxpZ25fcGVybSA9IHZlY19sdnNs KDAsIHZpKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorKyAgICAgICAg ICAgIHYgPSAodmVjdG9yIHNpZ25lZCBjaGFyKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFwKKysgICAgICAgICAgICAgICAgICAgIHZlY19wZXJtKHZpdlBbMF0sIHZp dlBbMV0sIGFsaWduX3Blcm0pOyAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXAorICAgICAgICAgICAgIHUgPSAodmVjdG9yIHNpZ25lZCBjaGFyKSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICAgICAgICAgIHZl Y19zdWIodSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc CistLSAKKzIuMjcuMAorCmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZmbXBlZzQvcGF0Y2hlcy9hcm12 NXRlbC1mbG9hdGluZy1wb2ludC5wYXRjaCBiL3NyY3BrZ3MvZmZtcGVnNC9wYXRjaGVzL2FybXY1 dGVsLWZsb2F0aW5nLXBvaW50LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw MDAwMDAwMDAwLi45YTU1MTc4Yzc0ZjBmZAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZmZt cGVnNC9wYXRjaGVzL2FybXY1dGVsLWZsb2F0aW5nLXBvaW50LnBhdGNoCkBAIC0wLDAgKzEsMTgg QEAKKy0tLSBhL2xpYmF2ZmlsdGVyL3ZmX2RyYXd0ZXh0LmMJMjAxNy0xMC0yNiAyMTowMzowMy4w MDAwMDAwMDAgKzAyMDAKKysrKyBiL2xpYmF2ZmlsdGVyL3ZmX2RyYXd0ZXh0LmMJMjAxNy0xMS0y MSAxMTowNjo0OS42MDIyODQ0MjIgKzAxMDAKK0BAIC0zOSw2ICszOSwxNSBAQAorICNlbmRpZgor ICNpbmNsdWRlIDxmZW52Lmg+CisgCisrI2lmIChGRV9BTExfRVhDRVBUID09IDApCisrLyogRS5n LiBBUk0gc29mdCBmbG9hdCBkb2VzIG5vdCBkZWZpbmUgdGhlc2UgKi8KKysjZGVmaW5lIEZFX0lO VkFMSUQgICAgMAorKyNkZWZpbmUgRkVfRElWQllaRVJPICAwCisrI2RlZmluZSBGRV9PVkVSRkxP VyAgIDAKKysjZGVmaW5lIEZFX1VOREVSRkxPVyAgMAorKyNkZWZpbmUgRkVfSU5FWEFDVCAgICAw CisrI2VuZGlmCisrCisgI2lmIENPTkZJR19MSUJGT05UQ09ORklHCisgI2luY2x1ZGUgPGZvbnRj b25maWcvZm9udGNvbmZpZy5oPgorICNlbmRpZgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9mZm1wZWc0 L3BhdGNoZXMvYmludXRpbHMtMi40MS5wYXRjaCBiL3NyY3BrZ3MvZmZtcGVnNC9wYXRjaGVzL2Jp bnV0aWxzLTIuNDEucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw MDAuLjUzYTU5NmQwZWU3ZDRlCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9mZm1wZWc0L3Bh dGNoZXMvYmludXRpbHMtMi40MS5wYXRjaApAQCAtMCwwICsxLDczIEBACitGcm9tIGVmZmFkY2U2 Yzc1NjI0N2VhOGJhZTMyZGMxM2JiM2U2ZjQ2NGYwZWIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CitGcm9tOiA9P1VURi04P3E/Uj1DMz1BOW1pPTIwRGVuaXMtQ291cm1vbnQ/PSA8cmVtaUByZW1s YWIubmV0PgorRGF0ZTogU3VuLCAxNiBKdWwgMjAyMyAxODoxODowMiArMDMwMAorU3ViamVjdDog W1BBVENIXSBhdmNvZGVjL3g4Ni9tYXRob3BzOiBjbGlwIGNvbnN0YW50cyB1c2VkIHdpdGggc2hp ZnQKKyBpbnN0cnVjdGlvbnMgd2l0aGluIGlubGluZSBhc3NlbWJseQorCitGaXhlcyBhc3NlbWJs aW5nIHdpdGggYmludXRpbCBhcyA+PSAyLjQxCisKK1NpZ25lZC1vZmYtYnk6IEphbWVzIEFsbWVy IDxqYW1yaWFsQGdtYWlsLmNvbT4KKy0tLQorIGxpYmF2Y29kZWMveDg2L21hdGhvcHMuaCB8IDI2 ICsrKysrKysrKysrKysrKysrKysrKysrLS0tCisgMSBmaWxlIGNoYW5nZWQsIDIzIGluc2VydGlv bnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9saWJhdmNvZGVjL3g4Ni9tYXRo b3BzLmggYi9saWJhdmNvZGVjL3g4Ni9tYXRob3BzLmgKK2luZGV4IDYyOThmNWVkMTk4M2IuLmNh N2UyZGZmYzEwNzYgMTAwNjQ0CistLS0gYS9saWJhdmNvZGVjL3g4Ni9tYXRob3BzLmgKKysrKyBi L2xpYmF2Y29kZWMveDg2L21hdGhvcHMuaAorQEAgLTM1LDEyICszNSwyMCBAQAorIHN0YXRpYyBh dl9hbHdheXNfaW5saW5lIGF2X2NvbnN0IGludCBNVUxMKGludCBhLCBpbnQgYiwgdW5zaWduZWQg c2hpZnQpCisgeworICAgICBpbnQgcnQsIGR1bW15OworKyAgICBpZiAoX19idWlsdGluX2NvbnN0 YW50X3Aoc2hpZnQpKQorICAgICBfX2FzbV9fICgKKyAgICAgICAgICJpbXVsbCAlMyAgICAgICAg ICAgICAgIFxuXHQiCisgICAgICAgICAic2hyZGwgJTQsICUlZWR4LCAlJWVheCBcblx0IgorICAg ICAgICAgOiI9YSIocnQpLCAiPWQiKGR1bW15KQorLSAgICAgICAgOiJhIihhKSwgInJtIihiKSwg ImNpIigodWludDhfdClzaGlmdCkKKysgICAgICAgIDoiYSIoYSksICJybSIoYiksICJpIihzaGlm dCAmIDB4MUYpCisgICAgICk7CisrICAgIGVsc2UKKysgICAgICAgIF9fYXNtX18gKAorKyAgICAg ICAgICAgICJpbXVsbCAlMyAgICAgICAgICAgICAgIFxuXHQiCisrICAgICAgICAgICAgInNocmRs ICU0LCAlJWVkeCwgJSVlYXggXG5cdCIKKysgICAgICAgICAgICA6Ij1hIihydCksICI9ZCIoZHVt bXkpCisrICAgICAgICAgICAgOiJhIihhKSwgInJtIihiKSwgImMiKCh1aW50OF90KXNoaWZ0KQor KyAgICAgICAgKTsKKyAgICAgcmV0dXJuIHJ0OworIH0KKyAKK0BAIC0xMTMsMTkgKzEyMSwzMSBA QCBfX2FzbV9fIHZvbGF0aWxlKFwKKyAvLyBhdm9pZCArMzIgZm9yIHNoaWZ0IG9wdGltaXphdGlv biAoZ2NjIHNob3VsZCBkbyB0aGF0IC4uLikKKyAjZGVmaW5lIE5FR19TU1IzMiBORUdfU1NSMzIK KyBzdGF0aWMgaW5saW5lICBpbnQzMl90IE5FR19TU1IzMiggaW50MzJfdCBhLCBpbnQ4X3Qgcyl7 CisrICAgIGlmIChfX2J1aWx0aW5fY29uc3RhbnRfcChzKSkKKyAgICAgX19hc21fXyAoInNhcmwg JTEsICUwXG5cdCIKKyAgICAgICAgICA6ICIrciIgKGEpCistICAgICAgICAgOiAiaWMiICgodWlu dDhfdCkoLXMpKQorKyAgICAgICAgIDogImkiICgtcyAmIDB4MUYpCisgICAgICk7CisrICAgIGVs c2UKKysgICAgICAgIF9fYXNtX18gKCJzYXJsICUxLCAlMFxuXHQiCisrICAgICAgICAgICAgICAg OiAiK3IiIChhKQorKyAgICAgICAgICAgICAgIDogImMiICgodWludDhfdCkoLXMpKQorKyAgICAg ICAgKTsKKyAgICAgcmV0dXJuIGE7CisgfQorIAorICNkZWZpbmUgTkVHX1VTUjMyIE5FR19VU1Iz MgorIHN0YXRpYyBpbmxpbmUgdWludDMyX3QgTkVHX1VTUjMyKHVpbnQzMl90IGEsIGludDhfdCBz KXsKKysgICAgaWYgKF9fYnVpbHRpbl9jb25zdGFudF9wKHMpKQorICAgICBfX2FzbV9fICgic2hy bCAlMSwgJTBcblx0IgorICAgICAgICAgIDogIityIiAoYSkKKy0gICAgICAgICA6ICJpYyIgKCh1 aW50OF90KSgtcykpCisrICAgICAgICAgOiAiaSIgKC1zICYgMHgxRikKKyAgICAgKTsKKysgICAg ZWxzZQorKyAgICAgICAgX19hc21fXyAoInNocmwgJTEsICUwXG5cdCIKKysgICAgICAgICAgICAg ICA6ICIrciIgKGEpCisrICAgICAgICAgICAgICAgOiAiYyIgKCh1aW50OF90KSgtcykpCisrICAg ICAgICApOworICAgICByZXR1cm4gYTsKKyB9CisgCmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZmbXBl ZzQvcGF0Y2hlcy9wYXRjaC1saWJhdmNvZGVjLWxpYnN2dGF2MS10ZW5fYml0X2Zvcm1hdC5kaWZm IGIvc3JjcGtncy9mZm1wZWc0L3BhdGNoZXMvcGF0Y2gtbGliYXZjb2RlYy1saWJzdnRhdjEtdGVu X2JpdF9mb3JtYXQuZGlmZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw MC4uYWE5NDhmN2E4YTJkZmIKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2ZmbXBlZzQvcGF0 Y2hlcy9wYXRjaC1saWJhdmNvZGVjLWxpYnN2dGF2MS10ZW5fYml0X2Zvcm1hdC5kaWZmCkBAIC0w LDAgKzEsNDAgQEAKKyM9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQor IyBGcm9tIDAzMWYxNTYxY2QyODY1OTZjZGIzNzRkYTMyZjhhYTgxNmNlM2IxMzUgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCisjIEZyb206IENocmlzdG9waGVyIERlZ2F3YSA8Y2hyaXN0b3BoZXIu ZGVnYXdhQGludGVsLmNvbT4KKyMgRGF0ZTogVGh1LCAyMCBPY3QgMjAyMiAyMjo1NToyNyAtMDUw MAorIyBTdWJqZWN0OiBbUEFUQ0hdIGF2Y29kZWMvbGlic3Z0YXYxOiByZW1vdmUgY29tcHJlc3Nl ZF90ZW5fYml0X2Zvcm1hdCBhbmQgc2ltcGxpZnkgYWxsb2NfYnVmZmVyCisjCisjIGNvbXByZXNz ZWRfdGVuX2JpdF9mb3JtYXQgaGFzIGJlZW4gZGVwcmVjYXRlZCB1cHN0cmVhbSBhbmQgaGFzIG5v IGVmZmVjdAorIyBhbmQgY2FuIGJlIHJlbW92ZWQuIFBsdXMsIHRlY2huaWNhbGx5IGl0IHdhcyBu ZXZlciB1c2VkIGluIHRoZSBmaXJzdCBwbGFjZQorIyBzaW5jZSBpdCB3b3VsZCByZXF1aXJlIHRo ZSBhcHAgKGZmbXBlZykgdG8gc2V0IGl0IGFuZCBkbyBhZGRpdGlvbmFsCisjIHByb2Nlc3Npbmcg b2YgdGhlIGlucHV0IGZyYW1lcy4KKyMKKyMgQWxzbyBzaW1wbGlmeSBhbGxvY19idWZmZXIgYnkg cmVtb3ZpbmcgY2FsY3VsYXRpb25zIHJlbGF0aW5nIHRvIHRoZSBub24tZXhpc3RhbnQgcHJvY2Vz c2luZy4KKyMKKyMgU2lnbmVkLW9mZi1ieTogQ2hyaXN0b3BoZXIgRGVnYXdhIDxjaHJpc3RvcGhl ci5kZWdhd2FAaW50ZWwuY29tPgorIz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09CistLS0gYS9saWJhdmNvZGVjL2xpYnN2dGF2MS5jCisrKysgYi9saWJhdmNvZGVjL2xp YnN2dGF2MS5jCitAQCAtMTI0LDE2ICsxMjQsMTIgQEAgc3RhdGljIGludCBzdnRfcHJpbnRfZXJy b3Iodm9pZCAqbG9nX2N0eCwgRWJFcnJvclR5cGUgZXJyLAorIAorIHN0YXRpYyBpbnQgYWxsb2Nf YnVmZmVyKEViU3Z0QXYxRW5jQ29uZmlndXJhdGlvbiAqY29uZmlnLCBTdnRDb250ZXh0ICpzdnRf ZW5jKQorIHsKKy0gICAgY29uc3QgaW50ICAgIHBhY2tfbW9kZV8xMGJpdCA9CistICAgICAgICAo Y29uZmlnLT5lbmNvZGVyX2JpdF9kZXB0aCA+IDgpICYmIChjb25maWctPmNvbXByZXNzZWRfdGVu X2JpdF9mb3JtYXQgPT0gMCkgPyAxIDogMDsKKy0gICAgY29uc3Qgc2l6ZV90IGx1bWFfc2l6ZV84 Yml0ICA9CistICAgICAgICBjb25maWctPnNvdXJjZV93aWR0aCAqIGNvbmZpZy0+c291cmNlX2hl aWdodCAqICgxIDw8IHBhY2tfbW9kZV8xMGJpdCk7CistICAgIGNvbnN0IHNpemVfdCBsdW1hX3Np emVfMTBiaXQgPQorLSAgICAgICAgKGNvbmZpZy0+ZW5jb2Rlcl9iaXRfZGVwdGggPiA4ICYmIHBh Y2tfbW9kZV8xMGJpdCA9PSAwKSA/IGx1bWFfc2l6ZV84Yml0IDogMDsKKysgICAgY29uc3Qgc2l6 ZV90IGx1bWFfc2l6ZSA9IGNvbmZpZy0+c291cmNlX3dpZHRoICogY29uZmlnLT5zb3VyY2VfaGVp Z2h0ICoKKysgICAgICAgIChjb25maWctPmVuY29kZXJfYml0X2RlcHRoID4gOCA/IDIgOiAxKTsK KyAKKyAgICAgRWJTdnRJT0Zvcm1hdCAqaW5fZGF0YTsKKyAKKy0gICAgc3Z0X2VuYy0+cmF3X3Np emUgPSAobHVtYV9zaXplXzhiaXQgKyBsdW1hX3NpemVfMTBiaXQpICogMyAvIDI7CisrICAgIHN2 dF9lbmMtPnJhd19zaXplID0gbHVtYV9zaXplICogMyAvIDI7CisgCisgICAgIC8vIGFsbG9jYXRl IGJ1ZmZlciBmb3IgaW4gYW5kIG91dAorICAgICBzdnRfZW5jLT5pbl9idWYgICAgICAgICAgID0g YXZfbWFsbG9jeihzaXplb2YoKnN2dF9lbmMtPmluX2J1ZikpOworLS0gCitHaXRMYWIKKwpkaWZm IC0tZ2l0IGEvc3JjcGtncy9mZm1wZWc0L3BhdGNoZXMvd29ya2Fyb3VuZC1tZXNhLXJlYWRlb24t dmFhcGktYnVnLnBhdGNoIGIvc3JjcGtncy9mZm1wZWc0L3BhdGNoZXMvd29ya2Fyb3VuZC1tZXNh LXJlYWRlb24tdmFhcGktYnVnLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw MDAwMDAwMDAwLi4wMGUzZjY4YTQxNWI4NAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZmZt cGVnNC9wYXRjaGVzL3dvcmthcm91bmQtbWVzYS1yZWFkZW9uLXZhYXBpLWJ1Zy5wYXRjaApAQCAt MCwwICsxLDI4IEBACitGcm9tIDgxMWQyOTA4NDQyMDZmYzczZGMzOWMzZTViNjdkNWQ4OTViYWVk ZjggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBSYWluZXIgSG9jaGVja2VyIDxmZXJu ZXRtZW50YUBvbmxpbmUuZGU+CitEYXRlOiBTYXQsIDI2IEphbiAyMDE5IDE5OjQ4OjM1ICswMTAw CitTdWJqZWN0OiBbUEFUQ0hdIGF2Y29kZWMvdmFhcGlfaDI2NDogc2tpcCBkZWNvZGUgaWYgcGlj IGhhcyBubyBzbGljZXMKKworVGhpcyBmaXhlcyAvIHdvcmthcm91bmRzIGh0dHBzOi8vYnVncy5m cmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNTM2OC4KK0l0IHdhcyBoaXQgZnJlcXVl bnRseSB3aGVuIHdhdGNoaW5nIGgyNjQgY2hhbm5lbHMgcmVjZWl2ZWQgdmlhIERWQi1YLgorQ29y cmVzcG9uZGluZyBrb2RpIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3hibWMveGJtYy9pc3N1ZXMv MTU3MDQKKy0tLQorIGxpYmF2Y29kZWMvdmFhcGlfaDI2NC5jIHwgNSArKysrKworIDEgZmlsZSBj aGFuZ2VkLCA1IGluc2VydGlvbnMoKykKKworZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvdmFhcGlf aDI2NC5jIGIvbGliYXZjb2RlYy92YWFwaV9oMjY0LmMKK2luZGV4IDU4NTQ1ODdhMjU1Li5mMTJm ZGM0NTdhNCAxMDA2NDQKKy0tLSBhL2xpYmF2Y29kZWMvdmFhcGlfaDI2NC5jCisrKysgYi9saWJh dmNvZGVjL3ZhYXBpX2gyNjQuYworQEAgLTMxNyw2ICszMTcsMTEgQEAgc3RhdGljIGludCB2YWFw aV9oMjY0X2VuZF9mcmFtZShBVkNvZGVjQ29udGV4dCAqYXZjdHgpCisgICAgIEgyNjRTbGljZUNv bnRleHQgKnNsID0gJmgtPnNsaWNlX2N0eFswXTsKKyAgICAgaW50IHJldDsKKyAKKysgICAgaWYg KHBpYy0+bmJfc2xpY2VzID09IDApIHsKKysgICAgICAgIHJldCA9IEFWRVJST1JfSU5WQUxJRERB VEE7CisrICAgICAgICBnb3RvIGZpbmlzaDsKKysgICAgfQorKworICAgICByZXQgPSBmZl92YWFw aV9kZWNvZGVfaXNzdWUoYXZjdHgsIHBpYyk7CisgICAgIGlmIChyZXQgPCAwKQorICAgICAgICAg Z290byBmaW5pc2g7CmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZmbXBlZzQvdGVtcGxhdGUgYi9zcmNw a2dzL2ZmbXBlZzQvdGVtcGxhdGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw MDAwMDAuLjM3NjBjMmU5NDU0NzZlCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9mZm1wZWc0 L3RlbXBsYXRlCkBAIC0wLDAgKzEsMjM1IEBACisjIFRlbXBsYXRlIGZpbGUgZm9yICdmZm1wZWc0 JworIyBhdWRhY2l0eSBhbHNvIG5lZWRzIHRvIGJlIGJ1bXBlZCB3aGVuIGEgbmV3IGZmbXBlZyB2 ZXJzaW9uIGJ1bXBzIGxpYmF2Zm9ybWF0J3Mgc29uYW1lIQorcGtnbmFtZT1mZm1wZWc0Cit2ZXJz aW9uPTQuNC40CityZXZpc2lvbj0xCitzaG9ydF9kZXNjPSJEZWNvZGluZywgZW5jb2RpbmcgYW5k IHN0cmVhbWluZyBzb2Z0d2FyZSAtIGZmbXBlZzQgbGlicmFyaWVzIG9ubHkiCittYWludGFpbmVy PSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgorbGljZW5zZT0iR1BMLTMuMC1vci1s YXRlciIKK2hvbWVwYWdlPSJodHRwczovL3d3dy5mZm1wZWcub3JnIgorY2hhbmdlbG9nPSJodHRw czovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vRkZtcGVnL0ZGbXBlZy9tYXN0ZXIvQ2hhbmdl bG9nIgorZGlzdGZpbGVzPSJodHRwczovL3d3dy5mZm1wZWcub3JnL3JlbGVhc2VzL2ZmbXBlZy0k e3ZlcnNpb259LnRhci54eiIKK2NoZWNrc3VtPWU4MGIzODBkNTk1YzgwOTA2MGY2NmY5NmE1ZDg0 OTUxMWVmNGE3NmEyNmI3NmVhY2Y1Nzc4Yjk0YzM1NzAzMDkKKworaG9zdG1ha2VkZXBlbmRzPSJw a2ctY29uZmlnIHBlcmwiCittYWtlZGVwZW5kcz0iemxpYi1kZXZlbCBiemlwMi1kZXZlbCBmcmVl dHlwZS1kZXZlbCBhbHNhLWxpYi1kZXZlbCBsaWJYZml4ZXMtZGV2ZWwKKyBsaWJYZXh0LWRldmVs IGxpYlh2TUMtZGV2ZWwgbGlieGNiLWRldmVsIGxhbWUtZGV2ZWwgbGlidGhlb3JhLWRldmVsCisg bGlidm9yYmlzLWRldmVsIHgyNjQtZGV2ZWwgeHZpZGNvcmUtZGV2ZWwgamFjay1kZXZlbCBTREwy LWRldmVsCisgbGliY2Rpby1wYXJhbm9pYS1kZXZlbCBsaWJydG1wLWRldmVsIGxpYm1vZHBsdWct ZGV2ZWwgZ251dGxzLWRldmVsCisgc3BlZXgtZGV2ZWwgY2VsdC1kZXZlbCBoYXJmYnV6ei1kZXZl bCBsaWJhc3MtZGV2ZWwgb3B1cy1kZXZlbCBvY2wtaWNkLWRldmVsCisgbGliYnMyYi1kZXZlbCBs aWJ2aWRzdGFiLWRldmVsIHZtYWYtZGV2ZWwgbGliYmx1cmF5LWRldmVsCisgJCh2b3B0X2lmIHB1 bHNlYXVkaW8gcHVsc2VhdWRpby1kZXZlbCkKKyAkKHZvcHRfaWYgdmFhcGkgbGlidmEtZGV2ZWwp ICQodm9wdF9pZiB2ZHBhdSBsaWJ2ZHBhdS1kZXZlbCkKKyAkKHZvcHRfaWYgeDI2NSB4MjY1LWRl dmVsKSAkKHZvcHRfaWYgdjRsMiB2NGwtdXRpbHMtZGV2ZWwpCisgJCh2b3B0X2lmIGZka19hYWMg ZmRrLWFhYy1kZXZlbCkgJCh2b3B0X2lmIHZweCBsaWJ2cHgtZGV2ZWwpCisgJCh2b3B0X2lmIGFv bSBsaWJhb20tZGV2ZWwpICQodm9wdF9pZiBzbmRpbyBzbmRpby1kZXZlbCkKKyAkKHZvcHRfaWYg ZGF2MWQgbGliZGF2MWQtZGV2ZWwpICQodm9wdF9pZiB6aW1nIHppbWctZGV2ZWwpCisgJCh2b3B0 X2lmIHdlYnAgbGlid2VicC1kZXZlbCkgJCh2b3B0X2lmIHNvZmEgbGlibXlzb2ZhLWRldmVsKQor ICQodm9wdF9pZiBkcm0gbGliZHJtLWRldmVsKSAkKHZvcHRfaWYgc3Z0YXYxIGxpYnN2dC1hdjEt ZGV2ZWwpCisgJCh2b3B0X2lmIHNydCBzcnQtZGV2ZWwpICQodm9wdF9pZiByaXN0IGxpYnJpc3Qt ZGV2ZWwpCisgJCh2b3B0X2lmIHZ1bGthbiAndnVsa2FuLWxvYWRlciBWdWxrYW4tSGVhZGVycycp CisgJCh2b3B0X2lmIG52ZW5jIG52LWNvZGVjLWhlYWRlcnMpICQodm9wdF9pZiBudmRlYyBudi1j b2RlYy1oZWFkZXJzKSIKKworYnVpbGRfb3B0aW9ucz0ieDI2NSB2NGwyIHZhYXBpIHZkcGF1IHZw eCBmZGtfYWFjIGFvbSBudmVuYyBzbmRpbyBwdWxzZWF1ZGlvCisgZGF2MWQgemltZyB3ZWJwIHNv ZmEgdnVsa2FuIGRybSBzdnRhdjEgc3J0IHJpc3QgbnZkZWMiCitidWlsZF9vcHRpb25zX2RlZmF1 bHQ9IngyNjUgdjRsMiB2cHggYW9tIHNuZGlvIHB1bHNlYXVkaW8gZGF2MWQgd2VicCB2dWxrYW4g ZHJtIHNydCByaXN0IgorCitkZXNjX29wdGlvbl9zcnQ9IkVuYWJsZSBzdXBwb3J0IGZvciBTUlQg KFNlY3VyZSwgUmVsaWFibGUsIFRyYW5zcG9ydCkiCitkZXNjX29wdGlvbl9yaXN0PSJFbmFibGUg c3VwcG9ydCBmb3IgUklTVCAoUmVsaWFibGUgSW50ZXJuZXQgU3RyZWFtIFRyYW5zcG9ydCkiCitk ZXNjX29wdGlvbl9zb2ZhPSJFbmFibGUgc3VwcG9ydCBmb3IgQUVTIFNPRkEiCitkZXNjX29wdGlv bl93ZWJwPSJFbmFibGUgc3VwcG9ydCBmb3IgV2ViUCIKKworY2FzZSAiJFhCUFNfVEFSR0VUX01B Q0hJTkUiIGluCisJaTY4Nip8eDg2XzY0KikKKwkJCWhvc3RtYWtlZGVwZW5kcys9IiBuYXNtIgor CQkJYnVpbGRfb3B0aW9uc19kZWZhdWx0Kz0iIHZhYXBpIHZkcGF1IG52ZW5jIG52ZGVjIgorCQkJ OzsKKwlwcGM2NCopIGJ1aWxkX29wdGlvbnNfZGVmYXVsdCs9IiB2YWFwaSB2ZHBhdSI7OworCW1p cHMqKSBDRkxBR1M9Ii1tbmFuPWxlZ2FjeSI7OworZXNhYworCitpZiBbICIkWEJQU19UQVJHRVRf V09SRFNJWkUiICE9ICIzMiIgXTsgdGhlbgorCWJ1aWxkX29wdGlvbnNfZGVmYXVsdCs9IiBzdnRh djEiCitmaQorCitpZiBbICIkWEJQU19UQVJHRVRfTk9fQVRPTUlDOCIgXTsgdGhlbgorCW1ha2Vk ZXBlbmRzKz0iIGxpYmF0b21pYy1kZXZlbCIKK2ZpCisKK19hcHBseV9wYXRjaCgpIHsKKwlsb2Nh bCBhcmdzPSIkMSIgcG5hbWU9IiQoYmFzZW5hbWUgJDIpIgorCisJaWYgWyAhIC1mICIuJHtwbmFt ZX1fZG9uZSIgXTsgdGhlbgorCQlwYXRjaCAtTiAkYXJncyAtaSAkMgorCQl0b3VjaCAuJHtwbmFt ZX1fZG9uZQorCWZpCit9CisKK3Bvc3RfcGF0Y2goKSB7CisJY2FzZSAiJFhCUFNfVEFSR0VUX01B Q0hJTkUiIGluCisJCXBwYzY0bGUqKSA7OworCQlwcGMqKSBfYXBwbHlfcGF0Y2ggLXAxICR7RklM RVNESVJ9L2FsdGl2ZWMucGF0Y2ggOzsKKwllc2FjCisKKwl2c2VkIC1pIGxpYmF2ZmlsdGVyL3Zm X2xpYnZtYWYuYyAtZSAncyEvdXNyL2xvY2FsL3NoYXJlL21vZGVsL1wodm1hZl92MC42LjFcKS5w a2whL3Vzci9zaGFyZS92bWFmL1wxLmpzb24hJworfQorCitkb19jb25maWd1cmUoKSB7CisJIyBG aXggZ2NjIG9uIHg4Nl82NC1tdXNsIG9ubHkKKwlpZiBbICIkWEJQU19UQVJHRVRfTUFDSElORSIg PSAieDg2XzY0LW11c2wiIF07IHRoZW4KKwkJdnNlZCAtaSBjb25maWd1cmUgLWUgInM7X2NmbGFn c19zcGVlZD0nLU8zJztfY2ZsYWdzX3NwZWVkPSctTzInOyIKKwlmaQorCisJaWYgWyAiJENST1NT X0JVSUxEIiBdOyB0aGVuCisJCWNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgorCQkJYXJt KikgX2FyY2g9ImFybSI7OworCQkJYWFyY2g2NCopIF9hcmNoPSJhYXJjaDY0Ijs7CisJCQltaXBz KikgX2FyY2g9Im1pcHMiOzsKKwkJCXBwYzY0KikgX2FyY2g9InBwYzY0Ijs7CisJCQlwcGMqKSBf YXJjaD0icHBjIjs7CisJCQkqKSBfYXJjaD0iJHtYQlBTX1RBUkdFVF9NQUNISU5FJSUtbXVzbH0i OzsKKwkJZXNhYworCisJCV9hcmdzKz0iIC0tZW5hYmxlLWNyb3NzLWNvbXBpbGUKKwkJCS0tc3lz cm9vdD0kWEJQU19DUk9TU19CQVNFCisJCQktLWNyb3NzLXByZWZpeD0ke1hCUFNfQ1JPU1NfVFJJ UExFVH0tCisJCQktLXRhcmdldC1vcz1saW51eCAtLWFyY2g9JHtfYXJjaH0iCisJZmkKKworCWNh c2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgorCQlwcGN8cHBjLW11c2wpIF9hcmdzKz0iIC0t ZGlzYWJsZS1hbHRpdmVjIjs7CisJZXNhYworCisJaWYgWyAiJFhCUFNfVEFSR0VUX05PX0FUT01J QzgiIF07IHRoZW4KKwkJX2FyZ3MrPSIgLS1leHRyYS1saWJzPS1sYXRvbWljIgorCWZpCisKKwku L2NvbmZpZ3VyZSAtLXByZWZpeD0vdXNyIC0tZGlzYWJsZS1kZWJ1ZyAtLWVuYWJsZS1ncGwgLS1l bmFibGUtZ251dGxzIFwKKwkJLS1kaXNhYmxlLXN0cmlwcGluZyBcCisJCS0tZW5hYmxlLWxpYmNk aW8gLS1lbmFibGUtdmVyc2lvbjMgLS1lbmFibGUtcnVudGltZS1jcHVkZXRlY3QgXAorCQktLWVu YWJsZS1saWJtcDNsYW1lIC0tZW5hYmxlLWxpYnZvcmJpcyAtLWVuYWJsZS1saWJ4dmlkIFwKKwkJ LS1lbmFibGUtbGlieDI2NCAkKHZvcHRfZW5hYmxlIHZweCBsaWJ2cHgpIC0tZW5hYmxlLWxpYnRo ZW9yYSBcCisJCS0tZW5hYmxlLXNoYXJlZCAtLWVuYWJsZS1zdGF0aWMgLS1lbmFibGUtbGlieGNi IFwKKwkJJCh2b3B0X2VuYWJsZSBwdWxzZWF1ZGlvIGxpYnB1bHNlKSAtLWVuYWJsZS1saWJmcmVl dHlwZSAtLWVuYWJsZS1saWJtb2RwbHVnIFwKKwkJLS1lbmFibGUtbGlic3BlZXggLS1lbmFibGUt bGliY2VsdCAtLWVuYWJsZS1saWJhc3MgXAorCQktLWVuYWJsZS1saWJvcHVzIC0tZW5hYmxlLWxp YnJ0bXAgLS1lbmFibGUtbGliamFjayBcCisJCSQodm9wdF9pZiBmZGtfYWFjICctLWVuYWJsZS1u b25mcmVlIC0tZW5hYmxlLWxpYmZkay1hYWMnKSBcCisJCS0tZGlzYWJsZS1saWJvcGVuY29yZV9h bXJuYiAtLWRpc2FibGUtbGlib3BlbmNvcmVfYW1yd2IgXAorCQktLWRpc2FibGUtbGlib3Blbmpw ZWcgLS1lbmFibGUtbGliYmx1cmF5IFwKKwkJLS1lbmFibGUtcG9zdHByb2MgLS1lbmFibGUtb3Bl bmNsICR7X2FyZ3N9IC0tZW5hYmxlLWxpYnZtYWYgJHtfYXJnc30gXAorCQkkKHZvcHRfZW5hYmxl IHgyNjUgbGlieDI2NSkgXAorCQkkKHZvcHRfZW5hYmxlIHY0bDIgbGlidjRsMikgXAorCQkkKHZv cHRfZW5hYmxlIGFvbSBsaWJhb20pICQodm9wdF9lbmFibGUgdmFhcGkpICQodm9wdF9lbmFibGUg dmRwYXUpIFwKKwkJLS1lbmFibGUtbGliYnMyYiAtLWVuYWJsZS1hdnJlc2FtcGxlIC0tZW5hYmxl LWxpYnZpZHN0YWIgXAorCQkkKHZvcHRfZW5hYmxlIGRhdjFkIGxpYmRhdjFkKSBcCisJCSQodm9w dF9lbmFibGUgemltZyBsaWJ6aW1nKSBcCisJCSQodm9wdF9lbmFibGUgd2VicCBsaWJ3ZWJwKSBc CisJCSQodm9wdF9lbmFibGUgc29mYSBsaWJteXNvZmEpIFwKKwkJJCh2b3B0X2VuYWJsZSB2dWxr YW4pIFwKKwkJJCh2b3B0X2VuYWJsZSBkcm0gbGliZHJtKSBcCisJCSQodm9wdF9lbmFibGUgc3Z0 YXYxIGxpYnN2dGF2MSkgXAorCQkkKHZvcHRfZW5hYmxlIHNydCBsaWJzcnQpIFwKKwkJJCh2b3B0 X2VuYWJsZSByaXN0IGxpYnJpc3QpIFwKKwkJJCh2b3B0X2lmIG52ZW5jICctLWVuYWJsZS1udmVu YycpIFwKKwkJJCh2b3B0X2lmIG52ZGVjICctLWVuYWJsZS1udmRlYycpCit9CisKK2RvX2J1aWxk KCkgeworCW1ha2UgJHttYWtlam9ic30KKwltYWtlIGRvYy9mZnttcGVnLHBsYXl9LjEKK30KKwor ZG9faW5zdGFsbCgpIHsKKwltYWtlIERFU1RESVI9JHtERVNURElSfSBpbnN0YWxsIGluc3RhbGwt bWFuCisJcm0gLXJmICR7REVTVERJUn0vdXNyL2JpbgorfQorCitsaWJhdmNvZGVjNF9wYWNrYWdl KCkgeworCXNob3J0X2Rlc2M9IkZGbXBlZyBjb2RlYyBsaWJyYXJ5IgorCXBrZ19pbnN0YWxsKCkg eworCQl2bW92ZSAidXNyL2xpYi9saWJhdmNvZGVjLnNvLioiCisJfQorfQorCitsaWJhdmRldmlj ZTRfcGFja2FnZSgpIHsKKwlzaG9ydF9kZXNjPSJGRm1wZWcgZGV2aWNlIGhhbmRsaW5nIGxpYnJh cnkiCisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlICJ1c3IvbGliL2xpYmF2ZGV2aWNlLnNvLioi CisJfQorfQorCitsaWJhdnJlc2FtcGxlNF9wYWNrYWdlKCkgeworCXNob3J0X2Rlc2M9IkZGbXBl ZyBhdWRpbyByZXNhbXBsaW5nIGxpYnJhcnkiCisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlICJ1 c3IvbGliL2xpYmF2cmVzYW1wbGUuc28uKiIKKwl9Cit9CisKK2xpYmF2Zm9ybWF0NF9wYWNrYWdl KCkgeworCXNob3J0X2Rlc2M9IkZGbXBlZyBmaWxlIGZvcm1hdCBsaWJyYXJ5IgorCXBrZ19pbnN0 YWxsKCkgeworCQl2bW92ZSAidXNyL2xpYi9saWJhdmZvcm1hdC5zby4qIgorCX0KK30KKworbGli YXZ1dGlsNF9wYWNrYWdlKCkgeworCXNob3J0X2Rlc2M9IkZGbXBlZyB1dGlsaXR5IGxpYnJhcnki CisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlICJ1c3IvbGliL2xpYmF2dXRpbC5zby4qIgorCX0K K30KKworbGliYXZmaWx0ZXI0X3BhY2thZ2UoKSB7CisJc2hvcnRfZGVzYz0iRkZtcGVnIGF1ZGlv L3ZpZGVvIGZpbHRlciBsaWJyYXJ5IgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92ZSAidXNyL2xp Yi9saWJhdmZpbHRlci5zby4qIgorCX0KK30KKworbGlicG9zdHByb2M0X3BhY2thZ2UoKSB7CisJ c2hvcnRfZGVzYz0iRkZtcGVnIHZpZGVvIHBvc3Rwcm9jZXNzaW5nIGxpYnJhcnkiCisJcGtnX2lu c3RhbGwoKSB7CisJCXZtb3ZlICJ1c3IvbGliL2xpYnBvc3Rwcm9jLnNvLioiCisJfQorfQorCits aWJzd3NjYWxlNF9wYWNrYWdlKCkgeworCXNob3J0X2Rlc2M9IkZGbXBlZyB2aWRlbyBzY2FsaW5n IGxpYnJhcnkiCisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlICJ1c3IvbGliL2xpYnN3c2NhbGUu c28uKiIKKwl9Cit9CisKK2xpYnN3cmVzYW1wbGU0X3BhY2thZ2UoKSB7CisJc2hvcnRfZGVzYz0i RkZtcGVnIHZpZGVvIHJlc2FtcGxpbmcgbGlicmFyeSIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1v dmUgInVzci9saWIvbGlic3dyZXNhbXBsZS5zby4qIgorCX0KK30KKworZmZtcGVnNC1kZXZlbF9w YWNrYWdlKCkgeworCWRlcGVuZHM9IgorCQlsaWJhdmNvZGVjND49JHt2ZXJzaW9ufV8ke3Jldmlz aW9ufQorCQlsaWJhdmRldmljZTQ+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KKwkJbGliYXZmb3Jt YXQ0Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259CisJCWxpYmF2dXRpbDQ+PSR7dmVyc2lvbn1fJHty ZXZpc2lvbn0KKwkJbGliYXZmaWx0ZXI0Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259CisJCWxpYnBv c3Rwcm9jND49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufQorCQlsaWJzd3NjYWxlND49JHt2ZXJzaW9u fV8ke3JldmlzaW9ufQorCQlsaWJzd3Jlc2FtcGxlND49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufQor CQlsaWJhdnJlc2FtcGxlND49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlzaG9ydF9kZXNjKz0i IC0gZGV2ZWxvcG1lbnQgZmlsZXMiCisJY29uZmxpY3RzPSJmZm1wZWctZGV2ZWwiCisJaWYgWyAi JFhCUFNfVEFSR0VUX01BQ0hJTkUiID0gImk2ODYiIF07IHRoZW4KKwkJIyAvdXNyL2Jpbi9zdHJp cDogZXJyb3I6IHRoZSBpbnB1dCBmaWxlICcvZGVzdGRpci8vZmZtcGVnLWRldmVsLTQuNC40L3Vz ci9saWIvbGliYXZmaWx0ZXIuYSh2Zl9hdGFkZW5vaXNlLm8pJyBoYXMgbm8gc2VjdGlvbnMKKwkJ bm9zdHJpcF9maWxlcz0iL3Vzci9saWIvbGliYXZmaWx0ZXIuYSIKKwlmaQorCXBrZ19pbnN0YWxs KCkgeworCQl2bW92ZSB1c3IvaW5jbHVkZQorCQl2bW92ZSB1c3IvbGliL3BrZ2NvbmZpZworCQl2 bW92ZSAidXNyL2xpYi8qLmEiCisJCXZtb3ZlICJ1c3IvbGliLyouc28iCisJCXZtb3ZlIHVzci9z aGFyZS9mZm1wZWcvZXhhbXBsZXMKKwkJdm1vdmUgdXNyL3NoYXJlL21hbi9tYW4zCisJfQorfQpk aWZmIC0tZ2l0IGEvc3JjcGtncy9saWJhdmNvZGVjNCBiL3NyY3BrZ3MvbGliYXZjb2RlYzQKbmV3 IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAwMDAuLjg4N2YzNTRlN2M2YmUzCi0t LSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9saWJhdmNvZGVjNApAQCAtMCwwICsxIEBACitmZm1w ZWc0ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJh dmRldmljZTQgYi9zcmNwa2dzL2xpYmF2ZGV2aWNlNApuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRl eCAwMDAwMDAwMDAwMDAwMC4uODg3ZjM1NGU3YzZiZTMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNw a2dzL2xpYmF2ZGV2aWNlNApAQCAtMCwwICsxIEBACitmZm1wZWc0ClwgTm8gbmV3bGluZSBhdCBl bmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJhdmZpbHRlcjQgYi9zcmNwa2dzL2xp YmF2ZmlsdGVyNApuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMDAwMC4uODg3 ZjM1NGU3YzZiZTMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2xpYmF2ZmlsdGVyNApAQCAt MCwwICsxIEBACitmZm1wZWc0ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9saWJhdmZvcm1hdDQgYi9zcmNwa2dzL2xpYmF2Zm9ybWF0NApuZXcgZmlsZSBt b2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMDAwMC4uODg3ZjM1NGU3YzZiZTMKLS0tIC9kZXYv bnVsbAorKysgYi9zcmNwa2dzL2xpYmF2Zm9ybWF0NApAQCAtMCwwICsxIEBACitmZm1wZWc0Clwg Tm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJhdnJlc2Ft cGxlNCBiL3NyY3BrZ3MvbGliYXZyZXNhbXBsZTQKbmV3IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXgg MDAwMDAwMDAwMDAwMDAuLjg4N2YzNTRlN2M2YmUzCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtn cy9saWJhdnJlc2FtcGxlNApAQCAtMCwwICsxIEBACitmZm1wZWc0ClwgTm8gbmV3bGluZSBhdCBl bmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJhdnV0aWw0IGIvc3JjcGtncy9saWJh dnV0aWw0Cm5ldyBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwMDAwLi44ODdmMzU0 ZTdjNmJlMwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbGliYXZ1dGlsNApAQCAtMCwwICsx IEBACitmZm1wZWc0ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9saWJwb3N0cHJvYzQgYi9zcmNwa2dzL2xpYnBvc3Rwcm9jNApuZXcgZmlsZSBtb2RlIDEy MDAwMAppbmRleCAwMDAwMDAwMDAwMDAwMC4uODg3ZjM1NGU3YzZiZTMKLS0tIC9kZXYvbnVsbAor KysgYi9zcmNwa2dzL2xpYnBvc3Rwcm9jNApAQCAtMCwwICsxIEBACitmZm1wZWc0ClwgTm8gbmV3 bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJzd3Jlc2FtcGxlNCBi L3NyY3BrZ3MvbGlic3dyZXNhbXBsZTQKbmV3IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAw MDAwMDAwMDAuLjg4N2YzNTRlN2M2YmUzCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9saWJz d3Jlc2FtcGxlNApAQCAtMCwwICsxIEBACitmZm1wZWc0ClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg ZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJzd3NjYWxlNCBiL3NyY3BrZ3MvbGlic3dzY2Fs ZTQKbmV3IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAwMDAuLjg4N2YzNTRlN2M2 YmUzCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9saWJzd3NjYWxlNApAQCAtMCwwICsxIEBA CitmZm1wZWc0ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQoKRnJvbSBkN2Q2ZmI0MGQ3ODcx ZTE1ZTRhMjM4NjNkZTQ1NWVhYjZkNmJmZDA1IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDE5OjU5 OjA0IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMDUvMTA4XSBvcGVuY3Y6IHVwZGF0ZSB0byA0Ljcu MC4KCi0tLQogY29tbW9uL3NobGlicyAgICAgICAgICAgfCAxMDQgKysrKysrKysrKysrKysrKysr KystLS0tLS0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy9vcGVuY3YvdGVtcGxhdGUgfCAgIDggKyst LQogMiBmaWxlcyBjaGFuZ2VkLCA1NiBpbnNlcnRpb25zKCspLCA1NiBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9jb21tb24vc2hsaWJzIGIvY29tbW9uL3NobGlicwppbmRleCAzNmE3NTI2NTY4 NGIxNy4uNTA1ZmE3ZDhlNjhjNTIgMTAwNjQ0Ci0tLSBhL2NvbW1vbi9zaGxpYnMKKysrIGIvY29t bW9uL3NobGlicwpAQCAtMjE5MCw1OCArMjE5MCw1OCBAQCBsaWJjYXBzdG9uZS5zby41IGNhcHN0 b25lLTUuMC4xXzEKIGxpYmhhdmVnZS5zby4yIGxpYmhhdmVnZWQtMS45LjExXzEKIGxpYm5paC5z by4xIGxpYm5paC0xLjAuM18xCiBsaWJuaWgtZGJ1cy5zby4xIGxpYm5paC0xLjAuM18xCi1saWJv cGVuY3ZfcXVhbGl0eS5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl9yZWcuc28u NDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3Zfc3VyZmFjZV9tYXRjaGluZy5zby40MDYg bGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl94cGhvdG8uc28uNDA2IGxpYm9wZW5jdi00LjYu MF8xCi1saWJvcGVuY3ZfZnJlZXR5cGUuc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVu Y3ZfZnV6enkuc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfaGZzLnNvLjQwNiBs aWJvcGVuY3YtNC42LjBfMQotbGlib3BlbmN2X2ltZ19oYXNoLnNvLjQwNiBsaWJvcGVuY3YtNC42 LjBfMQotbGlib3BlbmN2X2xpbmVfZGVzY3JpcHRvci5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEK LWxpYm9wZW5jdl9zYWxpZW5jeS5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl9z dHJ1Y3R1cmVkX2xpZ2h0LnNvLjQwNiBsaWJvcGVuY3YtNC42LjBfMQotbGlib3BlbmN2X2FydWNv LnNvLjQwNiBsaWJvcGVuY3YtNC42LjBfMQotbGlib3BlbmN2X2Jnc2VnbS5zby40MDYgbGlib3Bl bmN2LTQuNi4wXzEKLWxpYm9wZW5jdl9iaW9pbnNwaXJlZC5zby40MDYgbGlib3BlbmN2LTQuNi4w XzEKLWxpYm9wZW5jdl9jY2FsaWIuc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3Zf ZmFjZS5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl90cmFja2luZy5zby40MDYg bGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl94ZmVhdHVyZXMyZC5zby40MDYgbGlib3BlbmN2 LTQuNi4wXzEKLWxpYm9wZW5jdl9vcHRmbG93LnNvLjQwNiBsaWJvcGVuY3YtNC42LjBfMQotbGli b3BlbmN2X3hpbWdwcm9jLnNvLjQwNiBsaWJvcGVuY3YtNC42LjBfMQotbGlib3BlbmN2X3Bsb3Qu c28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfdGV4dC5zby40MDYgbGlib3BlbmN2 LTQuNi4wXzEKLWxpYm9wZW5jdl9tbC5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5j dl9vYmpkZXRlY3Quc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfZG5uLnNvLjQw NiBsaWJvcGVuY3YtNC42LjBfMQotbGlib3BlbmN2X3NoYXBlLnNvLjQwNiBsaWJvcGVuY3YtNC42 LjBfMQotbGlib3BlbmN2X3N0aXRjaGluZy5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxpYm9w ZW5jdl9waG90by5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl92aWRlby5zby40 MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl9jYWxpYjNkLnNvLjQwNiBsaWJvcGVuY3Yt NC42LjBfMQotbGlib3BlbmN2X2ZlYXR1cmVzMmQuc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1s aWJvcGVuY3ZfZmxhbm4uc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfaGlnaGd1 aS5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl92aWRlb2lvLnNvLjQwNiBsaWJv cGVuY3YtNC42LjBfMQotbGlib3BlbmN2X2ltZ2NvZGVjcy5zby40MDYgbGlib3BlbmN2LTQuNi4w XzEKLWxpYm9wZW5jdl9pbWdwcm9jLnNvLjQwNiBsaWJvcGVuY3YtNC42LjBfMQotbGlib3BlbmN2 X2NvcmUuc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3Zfc3VwZXJyZXMuc28uNDA2 IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfdmlkZW9zdGFiLnNvLjQwNiBsaWJvcGVuY3Yt NC42LjBfMQotbGlib3BlbmN2X2dhcGkuc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVu Y3ZfeG9iamRldGVjdC5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl9kYXRhc2V0 cy5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl9kbm5fb2JqZGV0ZWN0LnNvLjQw NiBsaWJvcGVuY3YtNC42LjBfMQotbGlib3BlbmN2X2Rubl9zdXBlcnJlcy5zby40MDYgbGlib3Bl bmN2LTQuNi4wXzEKLWxpYm9wZW5jdl9kcG0uc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJv cGVuY3ZfcGhhc2VfdW53cmFwcGluZy5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5j dl9zdGVyZW8uc28uNDA2IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfcmFwaWQuc28uNDA2 IGxpYm9wZW5jdi00LjYuMF8xCi1saWJvcGVuY3ZfaW50ZW5zaXR5X3RyYW5zZm9ybS5zby40MDYg bGlib3BlbmN2LTQuNi4wXzEKLWxpYm9wZW5jdl9hbHBoYW1hdC5zby40MDYgbGlib3BlbmN2LTQu Ni4wXzEKLWxpYm9wZW5jdl9iYXJjb2RlLnNvLjQwNiBsaWJvcGVuY3YtNC42LjBfMQotbGlib3Bl bmN2X21jYy5zby40MDYgbGlib3BlbmN2LTQuNi4wXzEKK2xpYm9wZW5jdl9xdWFsaXR5LnNvLjQw NyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2X3JlZy5zby40MDcgbGlib3BlbmN2LTQuNy4w XzEKK2xpYm9wZW5jdl9zdXJmYWNlX21hdGNoaW5nLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQor bGlib3BlbmN2X3hwaG90by5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9mcmVl dHlwZS5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9mdXp6eS5zby40MDcgbGli b3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9oZnMuc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCits aWJvcGVuY3ZfaW1nX2hhc2guc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3ZfbGlu ZV9kZXNjcmlwdG9yLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2X3NhbGllbmN5 LnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2X3N0cnVjdHVyZWRfbGlnaHQuc28u NDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3ZfYXJ1Y28uc28uNDA3IGxpYm9wZW5jdi00 LjcuMF8xCitsaWJvcGVuY3ZfYmdzZWdtLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3Bl bmN2X2Jpb2luc3BpcmVkLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2X2NjYWxp Yi5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9mYWNlLnNvLjQwNyBsaWJvcGVu Y3YtNC43LjBfMQorbGlib3BlbmN2X3RyYWNraW5nLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQor bGlib3BlbmN2X3hmZWF0dXJlczJkLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2 X29wdGZsb3cuc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3ZfeGltZ3Byb2Muc28u NDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3ZfcGxvdC5zby40MDcgbGlib3BlbmN2LTQu Ny4wXzEKK2xpYm9wZW5jdl90ZXh0LnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2 X21sLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2X29iamRldGVjdC5zby40MDcg bGlib3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9kbm4uc28uNDA3IGxpYm9wZW5jdi00LjcuMF8x CitsaWJvcGVuY3Zfc2hhcGUuc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3Zfc3Rp dGNoaW5nLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2X3Bob3RvLnNvLjQwNyBs aWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2X3ZpZGVvLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBf MQorbGlib3BlbmN2X2NhbGliM2Quc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3Zf ZmVhdHVyZXMyZC5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9mbGFubi5zby40 MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9oaWdoZ3VpLnNvLjQwNyBsaWJvcGVuY3Yt NC43LjBfMQorbGlib3BlbmN2X3ZpZGVvaW8uc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJv cGVuY3ZfaW1nY29kZWNzLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2X2ltZ3By b2Muc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3ZfY29yZS5zby40MDcgbGlib3Bl bmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9zdXBlcnJlcy5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEK K2xpYm9wZW5jdl92aWRlb3N0YWIuc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3Zf Z2FwaS5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl94b2JqZGV0ZWN0LnNvLjQw NyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2X2RhdGFzZXRzLnNvLjQwNyBsaWJvcGVuY3Yt NC43LjBfMQorbGlib3BlbmN2X2Rubl9vYmpkZXRlY3Quc28uNDA3IGxpYm9wZW5jdi00LjcuMF8x CitsaWJvcGVuY3ZfZG5uX3N1cGVycmVzLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3Bl bmN2X2RwbS5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9waGFzZV91bndyYXBw aW5nLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2X3N0ZXJlby5zby40MDcgbGli b3BlbmN2LTQuNy4wXzEKK2xpYm9wZW5jdl9yYXBpZC5zby40MDcgbGlib3BlbmN2LTQuNy4wXzEK K2xpYm9wZW5jdl9pbnRlbnNpdHlfdHJhbnNmb3JtLnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQor bGlib3BlbmN2X2FscGhhbWF0LnNvLjQwNyBsaWJvcGVuY3YtNC43LjBfMQorbGlib3BlbmN2X2Jh cmNvZGUuc28uNDA3IGxpYm9wZW5jdi00LjcuMF8xCitsaWJvcGVuY3ZfbWNjLnNvLjQwNyBsaWJv cGVuY3YtNC43LjBfMQogbGlidW5pY29uZi5zby40LjYgd3ZzdHJlYW1zLTQuNi4xXzIwCiBsaWJ3 dmJhc2Uuc28uNC42IHd2c3RyZWFtcy00LjYuMV8yMAogbGlid3Z1dGlscy5zby40LjYgd3ZzdHJl YW1zLTQuNi4xXzIwCmRpZmYgLS1naXQgYS9zcmNwa2dzL29wZW5jdi90ZW1wbGF0ZSBiL3NyY3Br Z3Mvb3BlbmN2L3RlbXBsYXRlCmluZGV4IGFlYTRiZmMzYTI2NWNmLi5jZTk0ZGU5NDI0ZDE4ZCAx MDA2NDQKLS0tIGEvc3JjcGtncy9vcGVuY3YvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9vcGVuY3Yv dGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdvcGVuY3YnCiBw a2duYW1lPW9wZW5jdgotdmVyc2lvbj00LjYuMAotcmV2aXNpb249NgordmVyc2lvbj00LjcuMAor cmV2aXNpb249MQogY3JlYXRlX3dya3NyYz15ZXMKIGJ1aWxkX3dya3NyYz0ke3BrZ25hbWV9LSR7 dmVyc2lvbn0KIGJ1aWxkX3N0eWxlPWNtYWtlCkBAIC0yNCw4ICsyNCw4IEBAIGhvbWVwYWdlPSJo dHRwczovL29wZW5jdi5vcmciCiBjaGFuZ2Vsb2c9Imh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuY3Yv b3BlbmN2L3dpa2kvQ2hhbmdlTG9nIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vb3Bl bmN2L29wZW5jdi9hcmNoaXZlLyR7dmVyc2lvbn0udGFyLmd6CiAgaHR0cHM6Ly9naXRodWIuY29t L29wZW5jdi9vcGVuY3ZfY29udHJpYi9hcmNoaXZlLyR7dmVyc2lvbn0udGFyLmd6PmNvbnRyaWIu dGFyLmd6IgotY2hlY2tzdW09IjFlYzFjYmE2NWY5ZjIwZmU1YTQxZmRhMTU4NmUwMWM3MGVhMGM5 YTZkN2I2N2M5ZTEzZWRmMGNmZTIyMzkyNzcKLSAxNzc3ZDVmZDJiNTkwMjljZjUzN2U1ZmQ2Zjhh YTY4ZDcwNzA3NTgyMmY5MGJkZTY4M2ZjZGUwODZmODVmN2E3IgorY2hlY2tzdW09IjhkZjAwNzlj ZGJlMTc5NzQ4YTE4ZDQ0NzMxYWY2MmEyNDVhNDVlYmY1MDg1MjIzZGMwMzEzMzk1NGM2NjI5NzMK KyA0MmRmODQwY2Y5MDU1ZTU5ZDBlMjJjMjQ5Y2ZiMTlmMDQ3NDNlMWJkYWQxMTNkMzFiMTU3M2Qz OTM0ZDYyNTg0IgogcGF0Y2hfYXJncz0iLU5wMSAtZCAke2J1aWxkX3dya3NyY30iCiAjIHRlc3Rz IGhhbmcgaW5kZW5maW5pdGVseSwgZXZlbiB3aXRoIHRlc3QgZGF0YSBpbmNsdWRlZAogbWFrZV9j aGVjaz1ubwoKRnJvbSA5OGE0YzU0MzQ5MjNhODkwODU0NWYxODI2YmI0MzQ3MWYxMjgzOTVjIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpE YXRlOiBXZWQsIDIyIE1hciAyMDIzIDE5OjU5OjQ1IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMDYv MTA4XSBhY3Rpb25hOiByZXZidW1wIGZvciBvcGVuY3YtNC43LjAKCi0tLQogc3JjcGtncy9hY3Rp b25hL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRl bGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hY3Rpb25hL3RlbXBsYXRlIGIvc3JjcGtn cy9hY3Rpb25hL3RlbXBsYXRlCmluZGV4IGNmNWYwYjdhMmFlNjEwLi4wZDg5OTMxMWU2ZGY3NSAx MDA2NDQKLS0tIGEvc3JjcGtncy9hY3Rpb25hL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYWN0aW9u YS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2FjdGlvbmEn CiBwa2duYW1lPWFjdGlvbmEKIHZlcnNpb249My4xMC4xCi1yZXZpc2lvbj0yCityZXZpc2lvbj0z CiBidWlsZF9zdHlsZT1xbWFrZQogY29uZmlndXJlX2FyZ3M9IlBLR0NPTkZJR19PUEVOQ1Y9b3Bl bmN2NCIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBxdDUtcGx1Z2luLW15c3FsIHF0NS1x bWFrZSBxdDUtaG9zdC10b29scyIKCkZyb20gMjVlZjk4MmVmN2I5YmRhMTYyZmY4NDQzYjgxMDBi ZGJlMWY4ZmYzZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1 QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAxOTo1OTo0NiAtMDQwMApTdWJqZWN0 OiBbUEFUQ0ggMDA3LzEwOF0gcmV0cm9zaGFyZTogcmV2YnVtcCBmb3Igb3BlbmN2LTQuNy4wCgot LS0KIHNyY3BrZ3MvcmV0cm9zaGFyZS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAx IGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcmV0cm9z aGFyZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvcmV0cm9zaGFyZS90ZW1wbGF0ZQppbmRleCAzNWEyNzMy Yzc3ZjYzNC4uMzFhNDBhNmFjNmQ0YTcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcmV0cm9zaGFyZS90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3JldHJvc2hhcmUvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdyZXRyb3NoYXJlJwogcGtnbmFtZT1yZXRyb3NoYXJlCiB2 ZXJzaW9uPTAuNi42Ci1yZXZpc2lvbj00CityZXZpc2lvbj01CiBidWlsZF9zdHlsZT1xbWFrZQog I1hYWCBicm9hZGNhc3QgZmVhdHVyZSByZXF1aXJlcyBhbiBhbmNpZW50IHVkcC1kaXNjb3Zlcnkt Y3BwIHdoaWNoIGVpdGhlciBuZWVkcwogIyB0byBiZSBmZXRjaGVkK3BhdGNoZWQgKEZUQkZTKSBo ZXJlIG9yIHBhY2thZ2VkIDovCgpGcm9tIGI0YWY0NjViOTQ4MmI4Y2VhYThiMzg5OGMyZjcyMjg2 MTA3ZWE2OTEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBn bWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMTk6NTk6NDYgLTA0MDAKU3ViamVjdDog W1BBVENIIDAwOC8xMDhdIHdhaWZ1MngtY29udmVydGVyLWNwcDogcmV2YnVtcCBmb3Igb3BlbmN2 LTQuNy4wCgotLS0KIHNyY3BrZ3Mvd2FpZnUyeC1jb252ZXJ0ZXItY3BwL3RlbXBsYXRlIHwgMiAr LQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy93YWlmdTJ4LWNvbnZlcnRlci1jcHAvdGVtcGxhdGUgYi9zcmNwa2dzL3dh aWZ1MngtY29udmVydGVyLWNwcC90ZW1wbGF0ZQppbmRleCAzNjFiOGEyM2I5NDk3Ny4uYzVhYzE3 ZWI1NGVhNGMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvd2FpZnUyeC1jb252ZXJ0ZXItY3BwL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3Mvd2FpZnUyeC1jb252ZXJ0ZXItY3BwL3RlbXBsYXRlCkBAIC0xLDcg KzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnd2FpZnUyeC1jb252ZXJ0ZXItY3BwJwogcGtn bmFtZT13YWlmdTJ4LWNvbnZlcnRlci1jcHAKIHZlcnNpb249NS4yLjQKLXJldmlzaW9uPTIKK3Jl dmlzaW9uPTMKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURJTlNUQUxMX01P REVMUz1PTiIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKCkZyb20gZDRlMjE4ZWU0ZWEw MjAzZmE5ZjgyZGMxZTE0MzVlMjIzYTRkYjNkYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDow MDozOCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDA5LzEwOF0gdmxjOiByZXZidW1wIGZvciBmZm1w ZWc0CgotLS0KIHNyY3BrZ3MvdmxjL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwg MiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvdmxj L3RlbXBsYXRlIGIvc3JjcGtncy92bGMvdGVtcGxhdGUKaW5kZXggOTFjY2QyMWFjYmVhZjAuLmJl NDU2OTE1YjE2OWQ0IDEwMDY0NAotLS0gYS9zcmNwa2dzL3ZsYy90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL3ZsYy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3Zs YycKIHBrZ25hbWU9dmxjCiB2ZXJzaW9uPTMuMC4yMQotcmV2aXNpb249MQorcmV2aXNpb249Mgog YnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS1nbWUg LS1kaXNhYmxlLWxpYnRhciAtLWVuYWJsZS1qYWNrCiAgLS1lbmFibGUtbGl2ZTU1NSAtLWRpc2Fi bGUtZmx1aWRzeW50aCAtLWVuYWJsZS1kdmRyZWFkCkBAIC0yNSw3ICsyNSw3IEBAIGxpYjMyZGlz YWJsZWQ9eWVzCiBob3N0bWFrZWRlcGVuZHM9ImF1dG9tYWtlIGxpYnRvb2wgcGtnLWNvbmZpZyBm bGV4IGdldHRleHQgbGliZ2NyeXB0LWRldmVsCiAgbGl2ZTU1NS1kZXZlbCBnZXR0ZXh0LWRldmVs ICQodm9wdF9pZiBsdWEgbHVhNTIpICQodm9wdF9pZiBjaHJvbWVjYXN0IHByb3RvYnVmKSIKIG1h a2VkZXBlbmRzPSIKLSBhdmFoaS1saWJzLWRldmVsIGRidXMtZ2xpYi1kZXZlbCBmYWFkMi1kZXZl bCBmZm1wZWctZGV2ZWwgZnJlZWZvbnQtdHRmCisgYXZhaGktbGlicy1kZXZlbCBkYnVzLWdsaWIt ZGV2ZWwgZmFhZDItZGV2ZWwgZmZtcGVnNC1kZXZlbCBmcmVlZm9udC10dGYKICBnbnV0bHMtZGV2 ZWwgamFjay1kZXZlbCBsaWJhNTItZGV2ZWwgbGliYXNzLWRldmVsIGxpYmJsdXJheS1kZXZlbAog IGxpYmNkaW8tZGV2ZWwgbGliZGNhLWRldmVsIGxpYmR2YnBzaS1kZXZlbCBsaWJkdmRuYXYtZGV2 ZWwgbGlibWFkLWRldmVsCiAgbGlibWF0cm9za2EtZGV2ZWwgbGlibW9kcGx1Zy1kZXZlbCBsaWJt cGNkZWMtZGV2ZWwgbGlibXBlZzItZGV2ZWwKCkZyb20gOTg1N2RlZWJjMTEzMWY3OWIyN2FkMTNm MDM4YzNkNGJjMjA5N2FjMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHps aWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMDo1NSAtMDQwMApT dWJqZWN0OiBbUEFUQ0ggMDEwLzEwOF0gb3NnOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNy Y3BrZ3Mvb3NnL3BhdGNoZXMvZmZtcGVnNS5wYXRjaCB8IDQ5MCArKysrKysrKysrKysrKysrKysr KysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCA0OTAgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1v ZGUgMTAwNjQ0IHNyY3BrZ3Mvb3NnL3BhdGNoZXMvZmZtcGVnNS5wYXRjaAoKZGlmZiAtLWdpdCBh L3NyY3BrZ3Mvb3NnL3BhdGNoZXMvZmZtcGVnNS5wYXRjaCBiL3NyY3BrZ3Mvb3NnL3BhdGNoZXMv ZmZtcGVnNS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4u YWU0NmRjZDRjNDY3ZTMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL29zZy9wYXRjaGVzL2Zm bXBlZzUucGF0Y2gKQEAgLTAsMCArMSw0OTAgQEAKK0luZGV4OiBvcGVuc2NlbmVncmFwaC0zLjYu NStkZnNnMS9zcmMvb3NnUGx1Z2lucy9mZm1wZWcvRkZtcGVnRGVjb2RlckF1ZGlvLmNwcAorPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PQorLS0tIG9wZW5zY2VuZWdyYXBoLTMuNi41K2Rmc2cxLm9yaWcvc3JjL29zZ1BsdWdp bnMvZmZtcGVnL0ZGbXBlZ0RlY29kZXJBdWRpby5jcHAKKysrKyBvcGVuc2NlbmVncmFwaC0zLjYu NStkZnNnMS9zcmMvb3NnUGx1Z2lucy9mZm1wZWcvRkZtcGVnRGVjb2RlckF1ZGlvLmNwcAorQEAg LTQ1LDEyICs0NSwxOSBAQCBzdGF0aWMgaW50IGRlY29kZV9hdWRpbyhBVkNvZGVjQ29udGV4dCAq CisgICAgIGlmICghZnJhbWUpCisgICAgICAgICByZXR1cm4gQVZFUlJPUihFTk9NRU0pOworIAor LSAgICByZXQgPSBhdmNvZGVjX2RlY29kZV9hdWRpbzQoYXZjdHgsIGZyYW1lLCAmZ290X2ZyYW1l LCAmYXZwa3QpOworKyAgICByZXQgPSBhdmNvZGVjX3NlbmRfcGFja2V0KGF2Y3R4LCAmYXZwa3Qp OworKyAgICBpZiAocmV0ID49IDApIHsKKysgICAgICByZXQgPSBhdmNvZGVjX3JlY2VpdmVfZnJh bWUoYXZjdHgsIGZyYW1lKTsKKysgICAgICBpZiAocmV0ID09IDApIHsKKysJZ290X2ZyYW1lID0g MTsKKysgICAgICB9CisrICAgIH0KKysKKyAKKyAjaWZkZWYgVVNFX0FWUkVTQU1QTEUgICAgLy8g bGliYXYncyBBVkZyYW1lIHN0cnVjdHVyZSBkb2VzIG5vdCBjb250YWluIGEgJ2NoYW5uZWxzJyBm aWVsZAorICAgICBpZiAocmV0ID49IDAgJiYgZ290X2ZyYW1lKSB7CisgI2Vsc2UKKy0gICAgaWYg KHJldCA+PSAwICYmIGdvdF9mcmFtZSAmJiBhdl9mcmFtZV9nZXRfY2hhbm5lbHMoZnJhbWUpPjAp IHsKKysgICAgaWYgKHJldCA+PSAwICYmIGdvdF9mcmFtZSAmJiBmcmFtZS0+Y2hfbGF5b3V0Lm5i X2NoYW5uZWxzPjApIHsKKyAjZW5kaWYKKyAgICAgICAgIGludCBjaCwgcGxhbmVfc2l6ZTsKKyAg ICAgICAgIGludCBwbGFuYXIgPSBhdl9zYW1wbGVfZm10X2lzX3BsYW5hcihhdmN0eC0+c2FtcGxl X2ZtdCk7CitAQCAtMTUxLDExICsxNTgsMTMgQEAgdm9pZCBGRm1wZWdEZWNvZGVyQXVkaW86Om9w ZW4oQVZTdHJlYW0gKgorICAgICAgICAgICAgIHJldHVybjsKKyAKKyAgICAgICAgIG1fc3RyZWFt ID0gc3RyZWFtOworLSAgICAgICAgbV9jb250ZXh0ID0gc3RyZWFtLT5jb2RlYzsKKy0KKy0gICAg ICAgIG1faW5fc2FtcGxlX3JhdGUgPSBtX2NvbnRleHQtPnNhbXBsZV9yYXRlOworLSAgICAgICAg bV9pbl9uYl9jaGFubmVscyA9IG1fY29udGV4dC0+Y2hhbm5lbHM7CistICAgICAgICBtX2luX3Nh bXBsZV9mb3JtYXQgPSBtX2NvbnRleHQtPnNhbXBsZV9mbXQ7CisrCUFWQ29kZWNQYXJhbWV0ZXJz KiBhdnAgPSBzdHJlYW0tPmNvZGVjcGFyOworKyAgICAgICAgY29uc3QgQVZDb2RlYyAqIHBfY29k ZWMgPSBhdmNvZGVjX2ZpbmRfZGVjb2RlcihhdnAtPmNvZGVjX2lkKTsKKysJbV9jb250ZXh0ID0g YXZjb2RlY19hbGxvY19jb250ZXh0MyhwX2NvZGVjKTsKKysKKysgICAgICAgIG1faW5fc2FtcGxl X3JhdGUgPSBhdnAtPnNhbXBsZV9yYXRlOworKyAgICAgICAgbV9pbl9uYl9jaGFubmVscyA9IGF2 cC0+Y2hhbm5lbHM7CisrICAgICAgICBtX2luX3NhbXBsZV9mb3JtYXQgPSAoKEFWU2FtcGxlRm9y bWF0KShhdnAtPmZvcm1hdCkpOworIAorICAgICAgICAgQVZEaWN0aW9uYXJ5RW50cnkgKm9wdF9v dXRfc2FtcGxlX3JhdGUgPSBhdl9kaWN0X2dldCggKnBhcmFtZXRlcnMtPmdldE9wdGlvbnMoKSwg Im91dF9zYW1wbGVfcmF0ZSIsIE5VTEwsIDAgKTsKKyAgICAgICAgIGlmICggb3B0X291dF9zYW1w bGVfcmF0ZSApCitAQCAtMjEwLDExICsyMTksMTAgQEAgcHJpbnRmKCIjIyMgQ09OVkVSVElORyBm cm9tIHNhbXBsZSBmb3JtYQorICAgICAgICAgfQorIAorICAgICAgICAgLy8gQ2hlY2sgc3RyZWFt IHNhbml0eQorLSAgICAgICAgaWYgKG1fY29udGV4dC0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURf Tk9ORSkKKysgICAgICAgIGlmIChhdnAtPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX05PTkUpCisg ICAgICAgICAgICAgdGhyb3cgc3RkOjpydW50aW1lX2Vycm9yKCJpbnZhbGlkIGF1ZGlvIGNvZGVj Iik7OworIAorICAgICAgICAgLy8gRmluZCB0aGUgZGVjb2RlciBmb3IgdGhlIGF1ZGlvIHN0cmVh bQorLSAgICAgICAgQVZDb2RlYyAqIGNvbnN0IHBfY29kZWMgPSBhdmNvZGVjX2ZpbmRfZGVjb2Rl cihtX2NvbnRleHQtPmNvZGVjX2lkKTsKKyAKKyAgICAgICAgIGlmIChwX2NvZGVjID09IDApCisg ICAgICAgICAgICAgdGhyb3cgc3RkOjpydW50aW1lX2Vycm9yKCJhdmNvZGVjX2ZpbmRfZGVjb2Rl cigpIGZhaWxlZCIpOworZGlmZiAtTmF1ciBvbGQvc3JjL29zZ1BsdWdpbnMvZmZtcGVnL0ZGbXBl Z0RlY29kZXIuY3BwIG5ldy9zcmMvb3NnUGx1Z2lucy9mZm1wZWcvRkZtcGVnRGVjb2Rlci5jcHAK Ky0tLSBvbGQvc3JjL29zZ1BsdWdpbnMvZmZtcGVnL0ZGbXBlZ0RlY29kZXIuY3BwCTIwMjAtMDEt MzEgMjE6MDM6MDcuMDAwMDAwMDAwICsxMDAwCisrKysgbmV3L3NyYy9vc2dQbHVnaW5zL2ZmbXBl Zy9GRm1wZWdEZWNvZGVyLmNwcAkyMDIzLTExLTI2IDA4OjA5OjM3LjI4MDQ0MjE5MyArMTAwMAor QEAgLTYyLDcgKzYyLDcgQEAKKyAgICAgeworICAgICAgICAgLy8gT3BlbiB2aWRlbyBmaWxlCisg ICAgICAgICBBVkZvcm1hdENvbnRleHQgKiBwX2Zvcm1hdF9jb250ZXh0ID0gMDsKKy0gICAgICAg IEFWSW5wdXRGb3JtYXQgKmlmb3JtYXQgPSAwOworKyAgICAgICAgY29uc3QgQVZJbnB1dEZvcm1h dCAqaWZvcm1hdCA9IDA7CisgCisgICAgICAgICBpZiAoZmlsZW5hbWUuY29tcGFyZSgwLCA1LCAi L2Rldi8iKT09MCkKKyAgICAgICAgIHsKK0BAIC0zMDQsMTIgKzMwNCwxMSBAQAorICAgICAgICAg ZWxzZQorICAgICAgICAgeworICAgICAgICAgICAgIC8vIE1ha2UgdGhlIHBhY2tldCBkYXRhIGF2 YWlsYWJsZSBiZXlvbmQgYXZfcmVhZF9mcmFtZSgpIGxvZ2ljYWwgc2NvcGUuCistICAgICAgICAg ICAgaWYgKChlcnJvciA9IGF2X2R1cF9wYWNrZXQoJnBhY2tldCkpIDwgMCkgeworLSAgICAgICAg ICAgICAgICBPU0dfRkFUQUwgPDwgImF2X2R1cF9wYWNrZXQoKSByZXR1cm5lZCAiIDw8IEF2U3Ry RXJyb3IoZXJyb3IpIDw8IHN0ZDo6ZW5kbDsKKy0gICAgICAgICAgICAgICAgdGhyb3cgc3RkOjpy dW50aW1lX2Vycm9yKCJhdl9kdXBfcGFja2V0KCkgZmFpbGVkIik7CisrICAgICAgICAgICAgaWYg KChlcnJvciA9IGF2X3BhY2tldF9yZWYoJihtX3BlbmRpbmdfcGFja2V0LnBhY2tldCksICZwYWNr ZXQpKSA8IDApIHsKKysgICAgICAgICAgICAgICAgT1NHX0ZBVEFMIDw8ICJhdl9wYWNrZXRfcmVm KCkgcmV0dXJuZWQgIiA8PCBBdlN0ckVycm9yKGVycm9yKSA8PCBzdGQ6OmVuZGw7CisrICAgICAg ICAgICAgICAgIHRocm93IHN0ZDo6cnVudGltZV9lcnJvcigiYXZfcGFja2V0X3JlZigpIGZhaWxl ZCIpOworICAgICAgICAgICAgIH0KKy0KKy0gICAgICAgICAgICBtX3BlbmRpbmdfcGFja2V0ID0g RkZtcGVnUGFja2V0KHBhY2tldCk7CisrCSAgICBtX3BlbmRpbmdfcGFja2V0LnR5cGUgPSBGRm1w ZWdQYWNrZXQ6OlBBQ0tFVF9EQVRBOworICAgICAgICAgfQorICAgICB9CisgCitkaWZmIC1OYXVy IG9sZC9zcmMvb3NnUGx1Z2lucy9mZm1wZWcvRkZtcGVnRGVjb2RlclZpZGVvLmNwcCBuZXcvc3Jj L29zZ1BsdWdpbnMvZmZtcGVnL0ZGbXBlZ0RlY29kZXJWaWRlby5jcHAKKy0tLSBvbGQvc3JjL29z Z1BsdWdpbnMvZmZtcGVnL0ZGbXBlZ0RlY29kZXJWaWRlby5jcHAJMjAyMC0wMS0zMSAyMTowMzow Ny4wMDAwMDAwMDAgKzEwMDAKKysrKyBuZXcvc3JjL29zZ1BsdWdpbnMvZmZtcGVnL0ZGbXBlZ0Rl Y29kZXJWaWRlby5jcHAJMjAyMy0xMS0yNiAxMzowNzowMi41MDE4MTIwNzUgKzEwMDAKK0BAIC02 LDYgKzYsOSBAQAorICNpbmNsdWRlIDxzdGRleGNlcHQ+CisgI2luY2x1ZGUgPHN0cmluZy5oPgor IAorKyNpbmNsdWRlIDxsaWJhdnV0aWwvaW1ndXRpbHMuaD4KKysKKysKKyBuYW1lc3BhY2Ugb3Nn RkZtcGVnIHsKKyAKKyAvLyBUT0RPIC0gYWRkIHN1cHBvcnQgZm9yIHVzaW5nIFJHQiBvciBSR0JB IHBpeGVsIGZvcm1hdC4KK0BAIC0xOCw4ICsyMSw2IEBACisgICAgIG1fc3RyZWFtKDApLAorICAg ICBtX2NvbnRleHQoMCksCisgICAgIG1fY29kZWMoMCksCistICAgIG1fcGFja2V0X2RhdGEoMCks CistICAgIG1fYnl0ZXNfcmVtYWluaW5nKDApLAorICAgICBtX3BhY2tldF9wdHMoQVZfTk9QVFNf VkFMVUUpLAorICAgICBtX3dyaXRlQnVmZmVyKDApLAorICAgICBtX3VzZXJfZGF0YSgwKSwKK0BA IC02MSw4ICs2MiwxMiBAQAorIAorIHZvaWQgRkZtcGVnRGVjb2RlclZpZGVvOjpvcGVuKEFWU3Ry ZWFtICogY29uc3Qgc3RyZWFtKQorIHsKKysgICAgaW50IGxpbmVzaXplc1s0XTsKKysKKyAgICAg bV9zdHJlYW0gPSBzdHJlYW07CistICAgIG1fY29udGV4dCA9IHN0cmVhbS0+Y29kZWM7CisrCisr ICAgIGlmIChhdmNvZGVjX3BhcmFtZXRlcnNfdG9fY29udGV4dChtX2NvbnRleHQsIHN0cmVhbS0+ Y29kZWNwYXIpIDwgMCkKKysgICAgICAgIHRocm93IHN0ZDo6cnVudGltZV9lcnJvcigiYXZjb2Rl Y19wYXJhbWV0ZXJzX3RvX2NvbnRleHQoKSBmYWlsZWQgaW5zaWRlIEZGTXBlZ0RlY29kZXJWaWRl bzo6b3BlbigpIik7CisgCisgICAgIC8vIFRydXN0IHRoZSB2aWRlbyBzaXplIGdpdmVuIGF0IHRo aXMgcG9pbnQKKyAgICAgLy8gKGF2Y29kZWNfb3BlbiBzZWVtcyB0byBzb21ldGltZXMgcmV0dXJu IGEgMHgwIHNpemUpCitAQCAtOTksMTEgKzEwNCwxNSBAQAorIAorICAgICAvLyBBbGxvY2F0ZSBj b252ZXJ0ZWQgUkdCIGZyYW1lCisgICAgIG1fZnJhbWVfcmdiYS5yZXNldChhdl9mcmFtZV9hbGxv YygpKTsKKy0gICAgbV9idWZmZXJfcmdiYVswXS5yZXNpemUoYXZwaWN0dXJlX2dldF9zaXplKEFW X1BJWF9GTVRfUkdCMjQsIHdpZHRoKCksIGhlaWdodCgpKSk7CisrICAgIG1fYnVmZmVyX3JnYmFb MF0ucmVzaXplKGF2X2ltYWdlX2dldF9idWZmZXJfc2l6ZShBVl9QSVhfRk1UX1JHQjI0LCB3aWR0 aCgpLCBoZWlnaHQoKSwgMSkpOworICAgICBtX2J1ZmZlcl9yZ2JhWzFdLnJlc2l6ZShtX2J1ZmZl cl9yZ2JhWzBdLnNpemUoKSk7CisgCisgICAgIC8vIEFzc2lnbiBhcHByb3ByaWF0ZSBwYXJ0cyBv ZiB0aGUgYnVmZmVyIHRvIGltYWdlIHBsYW5lcyBpbiBtX2ZyYW1lX3JnYmEKKysjaWYgQkNTCisg ICAgIGF2cGljdHVyZV9maWxsKChBVlBpY3R1cmUgKikgKG1fZnJhbWVfcmdiYSkuZ2V0KCksICYo bV9idWZmZXJfcmdiYVswXSlbMF0sIEFWX1BJWF9GTVRfUkdCMjQsIHdpZHRoKCksIGhlaWdodCgp KTsKKysjZWxzZQorKyAgICBhdl9pbWFnZV9maWxsX2FycmF5cyhtX2ZyYW1lX3JnYmEuZ2V0KCkt PmRhdGEsIGxpbmVzaXplcywgJihtX2J1ZmZlcl9yZ2JhWzBdKVswXSwgQVZfUElYX0ZNVF9SR0Iy NCwgd2lkdGgoKSwgaGVpZ2h0KCksIDEpOworKyNlbmRpZgorIAorICAgICAvLyBPdmVycmlkZSBn ZXRfYnVmZmVyKCkvcmVsZWFzZV9idWZmZXIoKSBmcm9tIGNvZGVjIGNvbnRleHQgaW4gb3JkZXIg dG8gcmV0cmlldmUgdGhlIFBUUyBvZiBlYWNoIGZyYW1lLgorICAgICBtX2NvbnRleHQtPm9wYXF1 ZSA9IHRoaXM7CitAQCAtMTQ4LDEyOCArMTU3LDEyMyBAQAorIH0KKyAKKyAKKy0KKy12b2lkIEZG bXBlZ0RlY29kZXJWaWRlbzo6ZGVjb2RlTG9vcCgpCisrZG91YmxlIEZGbXBlZ0RlY29kZXJWaWRl bzo6Y2FsY3VsYXRlRnJhbWVQVFMoaW50NjRfdCBwYWNrZXRfZHRzKQorIHsKKy0gICAgRkZtcGVn UGFja2V0IHBhY2tldDsKKy0gICAgZG91YmxlIHB0czsKKysgICAgZG91YmxlIHB0cyA9IDA7Cisg CistICAgIHdoaWxlICghIG1fZXhpdCkKKysjaWYgTElCQVZDT0RFQ19WRVJTSU9OX0lOVCA8PSBB Vl9WRVJTSU9OX0lOVCg1NywyNCwxMDIpCisrICAgIC8vZmZtcGVnLTMuMCBhbmQgYmVsb3cKKysg ICAgQVZSYXRpb25hbCB0aW1lYmFzZTsKKysgICAgLy8gRmluZCBvdXQgdGhlIGZyYW1lIHB0cwor KyAgICBpZiAobV9mcmFtZS0+cHRzICE9IGludDY0X3QoQVZfTk9QVFNfVkFMVUUpKQorICAgICB7 CistICAgICAgICAvLyBXb3JrIG9uIHRoZSBjdXJyZW50IHBhY2tldCB1bnRpbCB3ZSBoYXZlIGRl Y29kZWQgYWxsIG9mIGl0CistCistICAgICAgICB3aGlsZSAobV9ieXRlc19yZW1haW5pbmcgPiAw KQorLSAgICAgICAgeworLSAgICAgICAgICAgIC8vIFNhdmUgZ2xvYmFsIFBUUyB0byBiZSBzdG9y ZWQgaW4gbV9mcmFtZSB2aWEgZ2V0QnVmZmVyKCkKKysgICAgICAgIHB0cyA9IG1fZnJhbWUtPnB0 czsKKysgICAgICAgIHRpbWViYXNlID0gbV9jb250ZXh0LT50aW1lX2Jhc2U7CisrICAgIH0KKysg ICAgZWxzZSBpZiAocGFja2V0X2R0cyA9PSBpbnQ2NF90KEFWX05PUFRTX1ZBTFVFKSAmJgorKyAg ICAgICAgICAgIG1fZnJhbWUtPm9wYXF1ZSAhPSAwICYmCisrICAgICAgICAgICAgKnJlaW50ZXJw cmV0X2Nhc3Q8Y29uc3QgaW50NjRfdCo+KG1fZnJhbWUtPm9wYXF1ZSkgIT0gaW50NjRfdChBVl9O T1BUU19WQUxVRSkpCisrICAgIHsKKysgICAgICAgIHB0cyA9ICpyZWludGVycHJldF9jYXN0PGNv bnN0IGludDY0X3QqPihtX2ZyYW1lLT5vcGFxdWUpOworKyAgICAgICAgdGltZWJhc2UgPSBtX3N0 cmVhbS0+dGltZV9iYXNlOworKyAgICB9CisrICAgIGVsc2UgaWYgKHBhY2tldF9kdHMgIT0gaW50 NjRfdChBVl9OT1BUU19WQUxVRSkpCisrICAgIHsKKysgICAgICAgIHB0cyA9IHBhY2tldF9kdHM7 CisrICAgICAgICB0aW1lYmFzZSA9IG1fc3RyZWFtLT50aW1lX2Jhc2U7CisrICAgIH0KKysgICAg ZWxzZQorKyAgICB7CisrICAgICAgICB0aW1lYmFzZSA9IG1fY29udGV4dC0+dGltZV9iYXNlOwor KyAgICB9CisgCistICAgICAgICAgICAgbV9wYWNrZXRfcHRzID0gcGFja2V0LnBhY2tldC5wdHM7 CisrICAgIHB0cyAqPSBhdl9xMmQodGltZWJhc2UpOworIAorLSAgICAgICAgICAgIC8vIERlY29k ZSB2aWRlbyBmcmFtZQorKyNlbHNlCisrICAgIC8vYWJvdmUgZmZtcGVnLTMuMAorKyAgICAvLyBG aW5kIG91dCB0aGUgZnJhbWUgcHRzCisrICAgIGlmIChtX2ZyYW1lLT5wdHMgIT0gaW50NjRfdChB Vl9OT1BUU19WQUxVRSkpCisrICAgIHsKKysgICAgICAgIHB0cyA9IGF2X3EyZChtX3N0cmVhbS0+ dGltZV9iYXNlKSAqIG1fZnJhbWUtPnB0czsKKysgICAgfQorKyAgICBlbHNlIGlmIChwYWNrZXRf ZHRzID09IGludDY0X3QoQVZfTk9QVFNfVkFMVUUpICYmCisrICAgICAgICAgICAgbV9mcmFtZS0+ b3BhcXVlICE9IDAgJiYKKysgICAgICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxjb25zdCBpbnQ2 NF90Kj4obV9mcmFtZS0+b3BhcXVlKSAhPSBpbnQ2NF90KEFWX05PUFRTX1ZBTFVFKSkKKysgICAg eworKyAgICAgICAgcHRzID0gYXZfcTJkKG1fc3RyZWFtLT50aW1lX2Jhc2UpICogKnJlaW50ZXJw cmV0X2Nhc3Q8Y29uc3QgaW50NjRfdCo+KG1fZnJhbWUtPm9wYXF1ZSk7CisrICAgIH0KKysgICAg ZWxzZSBpZiAocGFja2V0X2R0cyAhPSBpbnQ2NF90KEFWX05PUFRTX1ZBTFVFKSkKKysgICAgewor KyAgICAgICAgcHRzID0gYXZfcTJkKG1fc3RyZWFtLT50aW1lX2Jhc2UpICogcGFja2V0X2R0czsK KysgICAgfQorKyNlbmRpZgorIAorLSAgICAgICAgICAgIGludCBmcmFtZV9maW5pc2hlZCA9IDA7 CisrICAgIHJldHVybiBwdHM7CisrfQorIAorLSAgICAgICAgICAgIC8vIFdlIHdhbnQgdG8gdXNl IHRoZSBlbnRpcmUgcGFja2V0IHNpbmNlIHNvbWUgY29kZWNzIHdpbGwgcmVxdWlyZSBleHRyYSBp bmZvcm1hdGlvbiBmb3IgZGVjb2RpbmcKKy0gICAgICAgICAgICBjb25zdCBpbnQgYnl0ZXNfZGVj b2RlZCA9IGF2Y29kZWNfZGVjb2RlX3ZpZGVvMihtX2NvbnRleHQsIG1fZnJhbWUuZ2V0KCksICZm cmFtZV9maW5pc2hlZCwgJihwYWNrZXQucGFja2V0KSk7CisgCistICAgICAgICAgICAgaWYgKGJ5 dGVzX2RlY29kZWQgPCAwKQorLSAgICAgICAgICAgICAgICB0aHJvdyBzdGQ6OnJ1bnRpbWVfZXJy b3IoImF2Y29kZWNfZGVjb2RlX3ZpZGVvIGZhaWxlZCgpIik7Cisrdm9pZCBGRm1wZWdEZWNvZGVy VmlkZW86OmRlY29kZUxvb3AoKQorK3sKKysgICAgYm9vbCBuZWVkX21vcmVfZGF0YSA9IHRydWU7 CisrICAgIEZGbXBlZ1BhY2tldCBwYWNrZXQ7CisgCistICAgICAgICAgICAgbV9ieXRlc19yZW1h aW5pbmcgLT0gYnl0ZXNfZGVjb2RlZDsKKy0gICAgICAgICAgICBtX3BhY2tldF9kYXRhICs9IGJ5 dGVzX2RlY29kZWQ7CisrICAgIHdoaWxlICghIG1fZXhpdCkKKysgICAgeworKwlpZiAobmVlZF9t b3JlX2RhdGEpCisrCXsKKysgICAgICAgICAgICBib29sIGlzX2VtcHR5ID0gdHJ1ZTsKKysgICAg ICAgICAgICBwYWNrZXQgPSBtX3BhY2tldHMudGltZWRQb3AoaXNfZW1wdHksIDEwKTsKKyAKKy0g ICAgICAgICAgICAvLyBQdWJsaXNoIHRoZSBmcmFtZSBpZiB3ZSBoYXZlIGRlY29kZWQgYSBjb21w bGV0ZSBmcmFtZQorLSAgICAgICAgICAgIGlmIChmcmFtZV9maW5pc2hlZCkKKysgICAgICAgICAg ICBpZiAoISBpc19lbXB0eSkKKyAgICAgICAgICAgICB7CistI2lmIExJQkFWQ09ERUNfVkVSU0lP Tl9JTlQgPD0gQVZfVkVSU0lPTl9JTlQoNTcsMjQsMTAyKQorLSAgICAgICAgICAgICAgICAvL2Zm bXBlZy0zLjAgYW5kIGJlbG93CistICAgICAgICAgICAgICAgIEFWUmF0aW9uYWwgdGltZWJhc2U7 CistICAgICAgICAgICAgICAgIC8vIEZpbmQgb3V0IHRoZSBmcmFtZSBwdHMKKy0gICAgICAgICAg ICAgICAgaWYgKG1fZnJhbWUtPnB0cyAhPSBpbnQ2NF90KEFWX05PUFRTX1ZBTFVFKSkKKy0gICAg ICAgICAgICAgICAgeworLSAgICAgICAgICAgICAgICAgICAgcHRzID0gbV9mcmFtZS0+cHRzOwor LSAgICAgICAgICAgICAgICAgICAgdGltZWJhc2UgPSBtX2NvbnRleHQtPnRpbWVfYmFzZTsKKy0g ICAgICAgICAgICAgICAgfQorLSAgICAgICAgICAgICAgICBlbHNlIGlmIChwYWNrZXQucGFja2V0 LmR0cyA9PSBpbnQ2NF90KEFWX05PUFRTX1ZBTFVFKSAmJgorLSAgICAgICAgICAgICAgICAgICAg ICAgIG1fZnJhbWUtPm9wYXF1ZSAhPSAwICYmCistICAgICAgICAgICAgICAgICAgICAgICAgKnJl aW50ZXJwcmV0X2Nhc3Q8Y29uc3QgaW50NjRfdCo+KG1fZnJhbWUtPm9wYXF1ZSkgIT0gaW50NjRf dChBVl9OT1BUU19WQUxVRSkpCistICAgICAgICAgICAgICAgIHsKKy0gICAgICAgICAgICAgICAg ICAgIHB0cyA9ICpyZWludGVycHJldF9jYXN0PGNvbnN0IGludDY0X3QqPihtX2ZyYW1lLT5vcGFx dWUpOworLSAgICAgICAgICAgICAgICAgICAgdGltZWJhc2UgPSBtX3N0cmVhbS0+dGltZV9iYXNl OworLSAgICAgICAgICAgICAgICB9CistICAgICAgICAgICAgICAgIGVsc2UgaWYgKHBhY2tldC5w YWNrZXQuZHRzICE9IGludDY0X3QoQVZfTk9QVFNfVkFMVUUpKQorLSAgICAgICAgICAgICAgICB7 CistICAgICAgICAgICAgICAgICAgICBwdHMgPSBwYWNrZXQucGFja2V0LmR0czsKKy0gICAgICAg ICAgICAgICAgICAgIHRpbWViYXNlID0gbV9zdHJlYW0tPnRpbWVfYmFzZTsKKy0gICAgICAgICAg ICAgICAgfQorLSAgICAgICAgICAgICAgICBlbHNlCistICAgICAgICAgICAgICAgIHsKKy0gICAg ICAgICAgICAgICAgICAgIHB0cyA9IDA7CistICAgICAgICAgICAgICAgICAgICB0aW1lYmFzZSA9 IG1fY29udGV4dC0+dGltZV9iYXNlOworLSAgICAgICAgICAgICAgICB9CistCistICAgICAgICAg ICAgICAgIHB0cyAqPSBhdl9xMmQodGltZWJhc2UpOworKyAgICAgICAgICAgICAgICBpZiAocGFj a2V0LnR5cGUgPT0gRkZtcGVnUGFja2V0OjpQQUNLRVRfRkxVU0gpCisrICAgICAgICAgICAgICAg ICAgICBhdmNvZGVjX2ZsdXNoX2J1ZmZlcnMobV9jb250ZXh0KTsKKyAKKy0jZWxzZQorLSAgICAg ICAgICAgICAgICAvL2Fib3ZlIGZmbXBlZy0zLjAKKy0gICAgICAgICAgICAgICAgLy8gRmluZCBv dXQgdGhlIGZyYW1lIHB0cworLSAgICAgICAgICAgICAgICBpZiAobV9mcmFtZS0+cHRzICE9IGlu dDY0X3QoQVZfTk9QVFNfVkFMVUUpKQorLSAgICAgICAgICAgICAgICB7CistICAgICAgICAgICAg ICAgICAgICBwdHMgPSBhdl9xMmQobV9zdHJlYW0tPnRpbWVfYmFzZSkgKiBtX2ZyYW1lLT5wdHM7 CistICAgICAgICAgICAgICAgIH0KKy0gICAgICAgICAgICAgICAgZWxzZSBpZiAocGFja2V0LnBh Y2tldC5kdHMgPT0gaW50NjRfdChBVl9OT1BUU19WQUxVRSkgJiYKKy0gICAgICAgICAgICAgICAg ICAgICAgICBtX2ZyYW1lLT5vcGFxdWUgIT0gMCAmJgorLSAgICAgICAgICAgICAgICAgICAgICAg ICpyZWludGVycHJldF9jYXN0PGNvbnN0IGludDY0X3QqPihtX2ZyYW1lLT5vcGFxdWUpICE9IGlu dDY0X3QoQVZfTk9QVFNfVkFMVUUpKQorLSAgICAgICAgICAgICAgICB7CistICAgICAgICAgICAg ICAgICAgICBwdHMgPSBhdl9xMmQobV9zdHJlYW0tPnRpbWVfYmFzZSkgKiAqcmVpbnRlcnByZXRf Y2FzdDxjb25zdCBpbnQ2NF90Kj4obV9mcmFtZS0+b3BhcXVlKTsKKy0gICAgICAgICAgICAgICAg fQorLSAgICAgICAgICAgICAgICBlbHNlIGlmIChwYWNrZXQucGFja2V0LmR0cyAhPSBpbnQ2NF90 KEFWX05PUFRTX1ZBTFVFKSkKKy0gICAgICAgICAgICAgICAgeworLSAgICAgICAgICAgICAgICAg ICAgcHRzID0gYXZfcTJkKG1fc3RyZWFtLT50aW1lX2Jhc2UpICogcGFja2V0LnBhY2tldC5kdHM7 CistICAgICAgICAgICAgICAgIH0KKy0gICAgICAgICAgICAgICAgZWxzZQorLSAgICAgICAgICAg ICAgICB7CistICAgICAgICAgICAgICAgICAgICBwdHMgPSAwOworLSAgICAgICAgICAgICAgICB9 CistI2VuZGlmCistICAgICAgICAgICAgICAgIGNvbnN0IGRvdWJsZSBzeW5jaGVkX3B0cyA9IG1f Y2xvY2tzLnZpZGVvU3luY2hDbG9jayhtX2ZyYW1lLmdldCgpLCBhdl9xMmQoYXZfaW52X3EobV9j b250ZXh0LT5mcmFtZXJhdGUpKSwgcHRzKTsKKy0gICAgICAgICAgICAgICAgY29uc3QgZG91Ymxl IGZyYW1lX2RlbGF5ID0gbV9jbG9ja3MudmlkZW9SZWZyZXNoU2NoZWR1bGUoc3luY2hlZF9wdHMp OworKyAgICAgICAgICAgICAgICAvLyBTYXZlIGdsb2JhbCBQVFMgdG8gYmUgc3RvcmVkIGluIG1f ZnJhbWUgdmlhIGdldEJ1ZmZlcigpCisrICAgICAgICAgICAgICAgIG1fcGFja2V0X3B0cyA9IHBh Y2tldC5wYWNrZXQucHRzOworIAorLSAgICAgICAgICAgICAgICBwdWJsaXNoRnJhbWUoZnJhbWVf ZGVsYXksIG1fY2xvY2tzLmF1ZGlvRGlzYWJsZWQoKSk7CisrCSAgICAgICAgaWYgKGF2Y29kZWNf c2VuZF9wYWNrZXQobV9jb250ZXh0LCAmcGFja2V0LnBhY2tldCkgPCAwKQorKyAgICAgICAgICAg ICAgICAgICAgdGhyb3cgc3RkOjpydW50aW1lX2Vycm9yKCJhdmNvZGVjX3NlbmRfcGFja2V0KCkg ZmFpbGVkIGluc2lkZSBGRm1wZWdEZWNvZGVyVmlkZW86OmRlY29kZUxvb3AoKSIpOworICAgICAg ICAgICAgIH0KKy0gICAgICAgIH0KKy0KKy0gICAgICAgIHdoaWxlKG1fcGF1c2VkICYmICFtX2V4 aXQpCistICAgICAgICB7CistICAgICAgICAgICAgbWljcm9TbGVlcCgxMDAwMCk7CistICAgICAg ICB9CisrCX0KKyAKKy0gICAgICAgIC8vIEdldCB0aGUgbmV4dCBwYWNrZXQKKysgICAgICAgIGNv bnN0IGludCBkZWNvZGVfc3RhdHVzID0gYXZjb2RlY19yZWNlaXZlX2ZyYW1lKG1fY29udGV4dCwg bV9mcmFtZS5nZXQoKSk7CisgCistICAgICAgICBwdHMgPSAwOworKwlpZiAoZGVjb2RlX3N0YXR1 cyA9PSAwKQorKwl7CisrICAgICAgICAgICAgLy8gQ29tcGxldGVkIGF0IGxlYXN0IG9uZSBmdWxs IGZyYW1lCisrCSAgICBuZWVkX21vcmVfZGF0YSA9IGZhbHNlOworIAorLSAgICAgICAgaWYgKHBh Y2tldC52YWxpZCgpKQorLSAgICAgICAgICAgIHBhY2tldC5jbGVhcigpOworKwkgICAgY29uc3Qg ZG91YmxlIHB0cyA9IGNhbGN1bGF0ZUZyYW1lUFRTKG1fZnJhbWUuZ2V0KCktPnBrdF9kdHMpOwor KyAgICAgICAgICAgIGNvbnN0IGRvdWJsZSBzeW5jaGVkX3B0cyA9IG1fY2xvY2tzLnZpZGVvU3lu Y2hDbG9jayhtX2ZyYW1lLmdldCgpLCBhdl9xMmQoYXZfaW52X3EobV9jb250ZXh0LT5mcmFtZXJh dGUpKSwgcHRzKTsKKysgICAgICAgICAgICBjb25zdCBkb3VibGUgZnJhbWVfZGVsYXkgPSBtX2Ns b2Nrcy52aWRlb1JlZnJlc2hTY2hlZHVsZShzeW5jaGVkX3B0cyk7CisgCistICAgICAgICBib29s IGlzX2VtcHR5ID0gdHJ1ZTsKKy0gICAgICAgIHBhY2tldCA9IG1fcGFja2V0cy50aW1lZFBvcChp c19lbXB0eSwgMTApOworKyAgICAgICAgICAgIHB1Ymxpc2hGcmFtZShmcmFtZV9kZWxheSwgbV9j bG9ja3MuYXVkaW9EaXNhYmxlZCgpKTsKKysgICAgICAgIH0KKysJZWxzZSBpZiAoZGVjb2RlX3N0 YXR1cyA9PSBBVkVSUk9SKEVPRikpCisrCXsKKysgICAgICAgICAgICAvLyBEZWNvZGVyIGhhcyBy ZWFjaGVkIGVuZCBvZiB0aGUgc3RyZWFtCisrCSAgICByZXR1cm47CisrICAgICAgICB9CisrCWVs c2UgaWYgKGRlY29kZV9zdGF0dXMgPT0gQVZFUlJPUihFQUdBSU4pKQorKwl7CisrICAgICAgICAg ICAgLy8gRnJhbWUgbm90IHlldCBjb21wbGV0ZQorKwkgICAgbmVlZF9tb3JlX2RhdGEgPSB0cnVl OworKworKyAgICAgICAgICAgIGlmIChwYWNrZXQudmFsaWQoKSkKKysgICAgICAgICAgICAgICAg cGFja2V0LmNsZWFyKCk7CisrCX0KKysJZWxzZQorKyAgICAgICAgICAgIHRocm93IHN0ZDo6cnVu dGltZV9lcnJvcigiYXZjb2RlY19yZWNlaXZlX2ZyYW1lKCkgZmFpbGVkIGluc2lkZSBGRm1wZWdE ZWNvZGVyVmlkZW86OmRlY29kZUxvb3AoKSIpOworIAorLSAgICAgICAgaWYgKCEgaXNfZW1wdHkp CisrICAgICAgICB3aGlsZShtX3BhdXNlZCAmJiAhbV9leGl0KQorICAgICAgICAgeworLSAgICAg ICAgICAgIGlmIChwYWNrZXQudHlwZSA9PSBGRm1wZWdQYWNrZXQ6OlBBQ0tFVF9EQVRBKQorLSAg ICAgICAgICAgIHsKKy0gICAgICAgICAgICAgICAgbV9ieXRlc19yZW1haW5pbmcgPSBwYWNrZXQu cGFja2V0LnNpemU7CistICAgICAgICAgICAgICAgIG1fcGFja2V0X2RhdGEgPSBwYWNrZXQucGFj a2V0LmRhdGE7CistICAgICAgICAgICAgfQorLSAgICAgICAgICAgIGVsc2UgaWYgKHBhY2tldC50 eXBlID09IEZGbXBlZ1BhY2tldDo6UEFDS0VUX0ZMVVNIKQorLSAgICAgICAgICAgIHsKKy0gICAg ICAgICAgICAgICAgYXZjb2RlY19mbHVzaF9idWZmZXJzKG1fY29udGV4dCk7CistICAgICAgICAg ICAgfQorKyAgICAgICAgICAgIG1pY3JvU2xlZXAoMTAwMDApOworICAgICAgICAgfQorICAgICB9 CisgfQorIAorIAorLQorIHZvaWQgRkZtcGVnRGVjb2RlclZpZGVvOjpmaW5kQXNwZWN0UmF0aW8o KQorIHsKKyAgICAgZmxvYXQgcmF0aW8gPSAwLjBmOworQEAgLTI4Myw3ICsyODcsOCBAQAorICAg ICBtX3BpeGVsX2FzcGVjdF9yYXRpbyA9IHJhdGlvOworIH0KKyAKKy1pbnQgRkZtcGVnRGVjb2Rl clZpZGVvOjpjb252ZXJ0KEFWUGljdHVyZSAqZHN0LCBpbnQgZHN0X3BpeF9mbXQsIEFWUGljdHVy ZSAqc3JjLAorKworK2ludCBGRm1wZWdEZWNvZGVyVmlkZW86OmNvbnZlcnQoQVZGcmFtZSAqZHN0 LCBpbnQgZHN0X3BpeF9mbXQsIEFWRnJhbWUgKnNyYywKKyAgICAgICAgICAgICBpbnQgc3JjX3Bp eF9mbXQsIGludCBzcmNfd2lkdGgsIGludCBzcmNfaGVpZ2h0KQorIHsKKyAgICAgb3NnOjpUaW1l cl90IHN0YXJ0VGljayA9IG9zZzo6VGltZXI6Omluc3RhbmNlKCktPnRpY2soKTsKK0BAIC0zMTgs NiArMzIzLDggQEAKKyAKKyB2b2lkIEZGbXBlZ0RlY29kZXJWaWRlbzo6cHVibGlzaEZyYW1lKGNv bnN0IGRvdWJsZSBkZWxheSwgYm9vbCBhdWRpb19kaXNhYmxlZCkKKyB7CisrICAgIGludCBsaW5l c2l6ZXNbNF07CisrCisgICAgIC8vIElmIG5vIHB1Ymxpc2hpbmcgZnVuY3Rpb24sIGp1c3QgaWdu b3JlIHRoZSBmcmFtZQorICAgICBpZiAobV9wdWJsaXNoX2Z1bmMgPT0gMCkKKyAgICAgICAgIHJl dHVybjsKK0BAIC0zMzQsMTEgKzM0MSwxMSBAQAorICAgICAgICAgcmV0dXJuOworICNlbmRpZgor IAorLSAgICBBVlBpY3R1cmUgKiBjb25zdCBzcmMgPSAoQVZQaWN0dXJlICopIG1fZnJhbWUuZ2V0 KCk7CistICAgIEFWUGljdHVyZSAqIGNvbnN0IGRzdCA9IChBVlBpY3R1cmUgKikgbV9mcmFtZV9y Z2JhLmdldCgpOworKyAgICBBVkZyYW1lICogY29uc3Qgc3JjID0gKEFWRnJhbWUgKikgbV9mcmFt ZS5nZXQoKTsKKysgICAgQVZGcmFtZSAqIGNvbnN0IGRzdCA9IChBVkZyYW1lICopIG1fZnJhbWVf cmdiYS5nZXQoKTsKKyAKKyAgICAgLy8gQXNzaWduIGFwcHJvcHJpYXRlIHBhcnRzIG9mIHRoZSBi dWZmZXIgdG8gaW1hZ2UgcGxhbmVzIGluIG1fZnJhbWVfcmdiYQorLSAgICBhdnBpY3R1cmVfZmls bCgoQVZQaWN0dXJlICopIChtX2ZyYW1lX3JnYmEpLmdldCgpLCAmKG1fYnVmZmVyX3JnYmFbbV93 cml0ZUJ1ZmZlcl0pWzBdLCBBVl9QSVhfRk1UX1JHQjI0LCB3aWR0aCgpLCBoZWlnaHQoKSk7Cisr ICAgIGF2X2ltYWdlX2ZpbGxfYXJyYXlzKG1fZnJhbWVfcmdiYS5nZXQoKS0+ZGF0YSwgbGluZXNp emVzLCAmKG1fYnVmZmVyX3JnYmFbbV93cml0ZUJ1ZmZlcl0pWzBdLCBBVl9QSVhfRk1UX1JHQjI0 LCB3aWR0aCgpLCBoZWlnaHQoKSwgMSk7CisgCisgICAgIC8vIENvbnZlcnQgWVVWQTQyMHAgKGku ZS4gWVVWNDIwcCBwbHVzIGFscGhhIGNoYW5uZWwpIHVzaW5nIG91ciBvd24gcm91dGluZQorIAor QEAgLTM3MCw3ICszNzcsNyBAQAorIAorIAorIAorLXZvaWQgRkZtcGVnRGVjb2RlclZpZGVvOjp5 dXZhNDIwcFRvUmdiYShBVlBpY3R1cmUgKiBjb25zdCBkc3QsIEFWUGljdHVyZSAqIGNvbnN0IHNy YywgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KQorK3ZvaWQgRkZtcGVnRGVjb2RlclZpZGVvOjp5dXZh NDIwcFRvUmdiYShBVkZyYW1lICogY29uc3QgZHN0LCBBVkZyYW1lICogY29uc3Qgc3JjLCBpbnQg d2lkdGgsIGludCBoZWlnaHQpCisgeworICAgICBjb252ZXJ0KGRzdCwgQVZfUElYX0ZNVF9SR0Iy NCwgc3JjLCBtX2NvbnRleHQtPnBpeF9mbXQsIHdpZHRoLCBoZWlnaHQpOworIAorZGlmZiAtTmF1 ciBvbGQvc3JjL29zZ1BsdWdpbnMvZmZtcGVnL0ZGbXBlZ0RlY29kZXJWaWRlby5ocHAgbmV3L3Ny Yy9vc2dQbHVnaW5zL2ZmbXBlZy9GRm1wZWdEZWNvZGVyVmlkZW8uaHBwCistLS0gb2xkL3NyYy9v c2dQbHVnaW5zL2ZmbXBlZy9GRm1wZWdEZWNvZGVyVmlkZW8uaHBwCTIwMjAtMDEtMzEgMjE6MDM6 MDcuMDAwMDAwMDAwICsxMDAwCisrKysgbmV3L3NyYy9vc2dQbHVnaW5zL2ZmbXBlZy9GRm1wZWdE ZWNvZGVyVmlkZW8uaHBwCTIwMjMtMTEtMjYgMDk6MzQ6MDAuMDQwMjYzNDI2ICsxMDAwCitAQCAt ODcsMTAgKzg3LDExIEBACisgICAgIHZvaWQgZGVjb2RlTG9vcCgpOworICAgICB2b2lkIGZpbmRB c3BlY3RSYXRpbygpOworICAgICB2b2lkIHB1Ymxpc2hGcmFtZShkb3VibGUgZGVsYXksIGJvb2wg YXVkaW9fZGlzYWJsZWQpOworKyAgICBkb3VibGUgY2FsY3VsYXRlRnJhbWVQVFMoaW50NjRfdCBw YWNrZXRfZHRzKTsKKyAgICAgZG91YmxlIHN5bmNocm9uaXplVmlkZW8oZG91YmxlIHB0cyk7Cist ICAgIHZvaWQgeXV2YTQyMHBUb1JnYmEoQVZQaWN0dXJlICpkc3QsIEFWUGljdHVyZSAqc3JjLCBp bnQgd2lkdGgsIGludCBoZWlnaHQpOworKyAgICB2b2lkIHl1dmE0MjBwVG9SZ2JhKEFWRnJhbWUg KmRzdCwgQVZGcmFtZSAqc3JjLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOworIAorLSAgICBpbnQg Y29udmVydChBVlBpY3R1cmUgKmRzdCwgaW50IGRzdF9waXhfZm10LCBBVlBpY3R1cmUgKnNyYywK KysgICAgaW50IGNvbnZlcnQoQVZGcmFtZSAqZHN0LCBpbnQgZHN0X3BpeF9mbXQsIEFWRnJhbWUg KnNyYywKKyAgICAgICAgICAgICAgICAgaW50IHNyY19waXhfZm10LCBpbnQgc3JjX3dpZHRoLCBp bnQgc3JjX2hlaWdodCk7CisgCisgCitAQCAtMTAxLDkgKzEwMiw3IEBACisgICAgIEZGbXBlZ0Ns b2NrcyAmICAgICAgICAgIG1fY2xvY2tzOworICAgICBBVlN0cmVhbSAqICAgICAgICAgICAgICBt X3N0cmVhbTsKKyAgICAgQVZDb2RlY0NvbnRleHQgKiAgICAgICAgbV9jb250ZXh0OworLSAgICBB VkNvZGVjICogICAgICAgICAgICAgICBtX2NvZGVjOworLSAgICBjb25zdCB1aW50OF90ICogICAg ICAgICBtX3BhY2tldF9kYXRhOworLSAgICBpbnQgICAgICAgICAgICAgICAgICAgICBtX2J5dGVz X3JlbWFpbmluZzsKKysgICAgY29uc3QgQVZDb2RlYyAqICAgICAgICAgbV9jb2RlYzsKKyAgICAg aW50NjRfdCAgICAgICAgICAgICAgICAgbV9wYWNrZXRfcHRzOworICAgICAKKyAgICAgRnJhbWVQ dHIgICAgICAgICAgICAgICAgbV9mcmFtZTsKK2RpZmYgLU5hdXIgb2xkL3NyYy9vc2dQbHVnaW5z L2ZmbXBlZy9GRm1wZWdQYWNrZXQuaHBwIG5ldy9zcmMvb3NnUGx1Z2lucy9mZm1wZWcvRkZtcGVn UGFja2V0LmhwcAorLS0tIG9sZC9zcmMvb3NnUGx1Z2lucy9mZm1wZWcvRkZtcGVnUGFja2V0Lmhw cAkyMDIwLTAxLTMxIDIxOjAzOjA3LjAwMDAwMDAwMCArMTAwMAorKysrIG5ldy9zcmMvb3NnUGx1 Z2lucy9mZm1wZWcvRkZtcGVnUGFja2V0LmhwcAkyMDIzLTExLTI2IDA3OjIwOjAzLjczOTU0NzE5 MCArMTAwMAorQEAgLTQyLDcgKzQyLDcgQEAKKyAgICAgICAgIHZvaWQgY2xlYXIoKQorICAgICAg ICAgeworICAgICAgICAgICAgIGlmIChwYWNrZXQuZGF0YSAhPSAwKQorLSAgICAgICAgICAgICAg ICBhdl9mcmVlX3BhY2tldCgmcGFja2V0KTsKKysgICAgICAgICAgICAgICAgYXZfcGFja2V0X3Vu cmVmKCZwYWNrZXQpOworIAorICAgICAgICAgICAgIHJlbGVhc2UoKTsKKyAgICAgICAgIH0KK2Rp ZmYgLU5hdXIgb2xkL3NyYy9vc2dQbHVnaW5zL2ZmbXBlZy9GRm1wZWdQYXJhbWV0ZXJzLmhwcCBu ZXcvc3JjL29zZ1BsdWdpbnMvZmZtcGVnL0ZGbXBlZ1BhcmFtZXRlcnMuaHBwCistLS0gb2xkL3Ny Yy9vc2dQbHVnaW5zL2ZmbXBlZy9GRm1wZWdQYXJhbWV0ZXJzLmhwcAkyMDIwLTAxLTMxIDIxOjAz OjA3LjAwMDAwMDAwMCArMTAwMAorKysrIG5ldy9zcmMvb3NnUGx1Z2lucy9mZm1wZWcvRkZtcGVn UGFyYW1ldGVycy5ocHAJMjAyMy0xMS0yNiAxMzowOToyNS4xOTg4MDcwMzYgKzEwMDAKK0BAIC0y MCw3ICsyMCw3IEBACisgCisgICAgIGJvb2wgaXNGb3JtYXRBdmFpbGFibGUoKSBjb25zdCB7IHJl dHVybiBtX2Zvcm1hdCE9TlVMTDsgfQorICAgICAKKy0gICAgQVZJbnB1dEZvcm1hdCogZ2V0Rm9y bWF0KCkgeyByZXR1cm4gbV9mb3JtYXQ7IH0KKysgICAgY29uc3QgQVZJbnB1dEZvcm1hdCogZ2V0 Rm9ybWF0KCkgeyByZXR1cm4gbV9mb3JtYXQ7IH0KKyAgICAgQVZEaWN0aW9uYXJ5KiogZ2V0T3B0 aW9ucygpIHsgcmV0dXJuICZtX29wdGlvbnM7IH0KKyAgICAgdm9pZCBzZXRDb250ZXh0KEFWSU9D b250ZXh0KiBjb250ZXh0KSB7IG1fY29udGV4dCA9IGNvbnRleHQ7IH0KKyAgICAgQVZJT0NvbnRl eHQqIGdldENvbnRleHQoKSB7IHJldHVybiBtX2NvbnRleHQ7IH0KK0BAIC0yOSw3ICsyOSw3IEBA CisgCisgcHJvdGVjdGVkOgorIAorLSAgICBBVklucHV0Rm9ybWF0KiBtX2Zvcm1hdDsKKysgICAg Y29uc3QgQVZJbnB1dEZvcm1hdCogbV9mb3JtYXQ7CisgICAgIEFWSU9Db250ZXh0KiBtX2NvbnRl eHQ7CisgICAgIEFWRGljdGlvbmFyeSogbV9vcHRpb25zOworIH07CitkaWZmIC1OYXVyIG9sZC9z cmMvb3NnUGx1Z2lucy9mZm1wZWcvUmVhZGVyV3JpdGVyRkZtcGVnLmNwcCBuZXcvc3JjL29zZ1Bs dWdpbnMvZmZtcGVnL1JlYWRlcldyaXRlckZGbXBlZy5jcHAKKy0tLSBvbGQvc3JjL29zZ1BsdWdp bnMvZmZtcGVnL1JlYWRlcldyaXRlckZGbXBlZy5jcHAJMjAyMC0wMS0zMSAyMTowMzowNy4wMDAw MDAwMDAgKzEwMDAKKysrKyBuZXcvc3JjL29zZ1BsdWdpbnMvZmZtcGVnL1JlYWRlcldyaXRlckZG bXBlZy5jcHAJMjAyMy0xMS0yNiAxMzoyNToyMi4wNjA3NzMyNDkgKzEwMDAKK0BAIC0yMCw3ICsy MCw3IEBACisgI2luY2x1ZGUgPG9zZ0RCL0ZpbGVVdGlscz4KKyAKKyAKKy0jaWYgTElCQVZDT0RF Q19WRVJTSU9OX01BSk9SID49IDUzIHx8IFwKKysjaWYgKExJQkFWQ09ERUNfVkVSU0lPTl9NQUpP Uj49NTMgJiYgTElCQVZDT0RFQ19WRVJTSU9OX01BSk9SPD01OCkgfHwgXAorICAgICAoTElCQVZD T0RFQ19WRVJTSU9OX01BSk9SPT01MiAmJiBMSUJBVkNPREVDX1ZFUlNJT05fTUlOT1I+PTMwKSB8 fCBcCisgICAgIChMSUJBVkNPREVDX1ZFUlNJT05fTUFKT1I9PTUyICYmIExJQkFWQ09ERUNfVkVS U0lPTl9NSU5PUj09MjAgJiYgTElCQVZDT0RFQ19WRVJTSU9OX01JQ1JPID49IDEpCisgICAgICNk ZWZpbmUgVVNFX0FWX0xPQ0tfTUFOQUdFUgorQEAgLTExNyw4ICsxMTcsMTEgQEAKKyAgICAgICAg IC8vIGVuYWJsZSB0aHJlYWQgbG9ja2luZworICAgICAgICAgYXZfbG9ja21ncl9yZWdpc3Rlcigm bG9ja01ncik7CisgI2VuZGlmCistICAgICAgICAvLyBSZWdpc3RlciBhbGwgRkZtcGVnIGZvcm1h dHMvY29kZWNzCisrCisrI2lmIExJQkFWQ09ERUNfVkVSU0lPTl9NQUpPUjw9NTcKKysgICAgICAg IC8vIFJlZ2lzdGVyIGFsbCBGRm1wZWcgZm9ybWF0cy9jb2RlY3MtLS0gbm90IHJlcXVpcmVkIGlu IEZGbXBlZyA0LjAgYW5kIGxhdGVyCisgICAgICAgICBhdl9yZWdpc3Rlcl9hbGwoKTsKKysjZW5k aWYKKyAKKyAgICAgICAgIGF2Zm9ybWF0X25ldHdvcmtfaW5pdCgpOworICAgICB9CgpGcm9tIDcw YmQ5OWQyMGUwYjUwNjViODQxNzBmMTdjZmViYWYxNGJlMDE5YmIgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFy IDIwMjMgMjA6MDE6MTMgLTA0MDAKU3ViamVjdDogW1BBVENIIDAxMS8xMDhdIHhpbmUtbGliOiBy ZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MveGluZS1saWIvdGVtcGxhdGUgfCA2ICsr Ky0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL3hpbmUtbGliL3RlbXBsYXRlIGIvc3JjcGtncy94aW5lLWxpYi90 ZW1wbGF0ZQppbmRleCAzYmU0ZDA4ZWFjNzdhMy4uMjU2ZmQyYmM4YjU4ZGIgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MveGluZS1saWIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy94aW5lLWxpYi90ZW1wbGF0 ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3hpbmUtbGliJwogcGtnbmFt ZT14aW5lLWxpYgotdmVyc2lvbj0xLjIuMTIKLXJldmlzaW9uPTMKK3ZlcnNpb249MS4yLjEzCity ZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1k aXNhYmxlLXZjZCAtLWRpc2FibGUtZ25vbWV2ZnMgLS13aXRob3V0LWVzb3VuZCAtLWRpc2FibGUt ZHhyMwogIC0tZGlzYWJsZS1vc3MiCkBAIC0xOSw3ICsxOSw3IEBAIGxpY2Vuc2U9IkdQTC0yLjAt b3ItbGF0ZXIsIExHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHA6Ly93d3cueGluZS1w cm9qZWN0Lm9yZyIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdHMv eGluZS9maWxlcy94aW5lLWxpYi8ke3ZlcnNpb259L1JFQURNRS50eHQvdmlldyIKIGRpc3RmaWxl cz0iJHtTT1VSQ0VGT1JHRV9TSVRFfS94aW5lLyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoi Ci1jaGVja3N1bT1kNjA2MjcwNDY4ZTE1NDBjMmE4OWMwZDdmNWZkZjExZTE3ZWNjMGMyNjk4Y2Mw YmNiMTA2NWZmMjZhYmVlMDk4CitjaGVja3N1bT01ZjEwZDZkNzE4YTRhNTFjMTdlZDFiMzJiMDMx ZDRmOWI4MGIwNjFlODI3NjUzNWIyYmUzMWU1YWM0Yjc1ZTZmCiAKIGNhc2UgIiRYQlBTX1RBUkdF VF9NQUNISU5FIiBpbgogCWk2ODYtbXVzbCkKCkZyb20gMTQ1N2YxMzVkNjM1MDgwZmNkNDZhMjg0 NmE2Mjk0MWUyNzM2ZDFhNSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHps aWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0NSAtMDQwMApT dWJqZWN0OiBbUEFUQ0ggMDEyLzEwOF0gYXR0cmFjdDogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0t CiBzcmNwa2dzL2F0dHJhY3QvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNl cnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F0dHJhY3QvdGVt cGxhdGUgYi9zcmNwa2dzL2F0dHJhY3QvdGVtcGxhdGUKaW5kZXggNzc2Y2JlNGViZDJjOTMuLmY5 NjYzNGY0NDFhZTgwIDEwMDY0NAotLS0gYS9zcmNwa2dzL2F0dHJhY3QvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9hdHRyYWN0L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnYXR0cmFjdCcKIHBrZ25hbWU9YXR0cmFjdAogdmVyc2lvbj0yLjcuMAotcmV2aXNpb249 MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9Z251LW1ha2VmaWxlCiBtYWtlX2J1aWxkX2FyZ3M9 IlZFUkJPU0U9MSIKIG1ha2VfdXNlX2Vudj15ZXMKCkZyb20gODc4YmZhNTEyMmRiZGVmNmY2YjY2 NjQ1Y2U2N2M1ZTU3NjE0MDUyZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2Ug PHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0NSAtMDQw MApTdWJqZWN0OiBbUEFUQ0ggMDEzLzEwOF0gYXViaW86IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0t LQogc3JjcGtncy9hdWJpby9wYXRjaGVzL2ZmbXBlZzUucGF0Y2ggICAgfCAyNSArKysrKysrKysr KysrKysrKysrKysrKysrCiBzcmNwa2dzL2F1YmlvL3BhdGNoZXMvcHl0aG9uMy4xMi5wYXRjaCB8 IDIxICsrKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9hdWJpby90ZW1wbGF0ZSAgICAgICAg ICAgICAgICAgfCAgMiArLQogMyBmaWxlcyBjaGFuZ2VkLCA0NyBpbnNlcnRpb25zKCspLCAxIGRl bGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9hdWJpby9wYXRjaGVzL2ZmbXBl ZzUucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2F1YmlvL3BhdGNoZXMvcHl0aG9u My4xMi5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXViaW8vcGF0Y2hlcy9mZm1wZWc1LnBh dGNoIGIvc3JjcGtncy9hdWJpby9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gKbmV3IGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAuLmFhY2U0MWE2ZTZkOWE0Ci0tLSAvZGV2L251bGwK KysrIGIvc3JjcGtncy9hdWJpby9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gKQEAgLTAsMCArMSwyNSBA QAorRnJvbSA4YTA1NDIwZTVkZDhjN2I4YjI0NDdmODJkYzkxOTc2NTg3NjUxMWIzIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQorRnJvbTogUGF1bCBCcm9zc2llciA8cGllbUBwaWVtLm9yZz4KK0Rh dGU6IFR1ZSwgMjUgSmFuIDIwMjIgMTg6MzA6MjcgKzAxMDAKK1N1YmplY3Q6IFtQQVRDSF0gW3Nv dXJjZV9hdmNvZGVjXSBkZWZpbmUgRkZfQVBJX0xBVkZfQVZDVFggZm9yIGxpYmF2Y29kZWMgPgor IDU5LCB0aHggQGJlcm9saW51eCAoY2xvc2VzIGdoLTM1MykKKworLS0tCisgc3JjL2lvL3NvdXJj ZV9hdmNvZGVjLmMgfCA0ICsrKysKKyAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspCisK K2RpZmYgLS1naXQgYS9zcmMvaW8vc291cmNlX2F2Y29kZWMuYyBiL3NyYy9pby9zb3VyY2VfYXZj b2RlYy5jCitpbmRleCBlMGFlOTNiNS4uMTQyMWJkOWEgMTAwNjQ0CistLS0gYS9zcmMvaW8vc291 cmNlX2F2Y29kZWMuYworKysrIGIvc3JjL2lvL3NvdXJjZV9hdmNvZGVjLmMKK0BAIC02OCw2ICs2 OCwxMCBAQAorICNkZWZpbmUgQVVCSU9fQVZDT0RFQ19NQVhfQlVGRkVSX1NJWkUgQVZfSU5QVVRf QlVGRkVSX01JTl9TSVpFCisgI2VuZGlmCisgCisrI2lmIExJQkFWQ09ERUNfVkVSU0lPTl9NQUpP UiA+PSA1OQorKyNkZWZpbmUgRkZfQVBJX0xBVkZfQVZDVFggMQorKyNlbmRpZgorKworIHN0cnVj dCBfYXViaW9fc291cmNlX2F2Y29kZWNfdCB7CisgICB1aW50X3QgaG9wX3NpemU7CisgICB1aW50 X3Qgc2FtcGxlcmF0ZTsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXViaW8vcGF0Y2hlcy9weXRob24z LjEyLnBhdGNoIGIvc3JjcGtncy9hdWJpby9wYXRjaGVzL3B5dGhvbjMuMTIucGF0Y2gKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAuLjgxY2Y2ZDFmMGY3Y2FiCi0tLSAv ZGV2L251bGwKKysrIGIvc3JjcGtncy9hdWJpby9wYXRjaGVzL3B5dGhvbjMuMTIucGF0Y2gKQEAg LTAsMCArMSwyMSBAQAorLS0tIGEvd2FmbGliL0NvbnRleHQucHkJMjAyNC0wNi0wNCAwNzo0OTox My4zOTk3OTM4MTkgLTA0MDAKKysrKyBiL3dhZmxpYi9Db250ZXh0LnB5CTIwMjQtMDYtMDQgMDg6 MDA6MzUuNDczODI0MzA2IC0wNDAwCitAQCAtMiw3ICsyLDcgQEAKKyAjIGVuY29kaW5nOiB1dGYt OAorICMgV0FSTklORyEgRG8gbm90IGVkaXQhIGh0dHBzOi8vd2FmLmlvL2Jvb2svaW5kZXguaHRt bCNfb2J0YWluaW5nX3RoZV93YWZfZmlsZQorCistaW1wb3J0IG9zLHJlLGltcCxzeXMKKytpbXBv cnQgb3MscmUsdHlwZXMsc3lzCisgZnJvbSB3YWZsaWIgaW1wb3J0IFV0aWxzLEVycm9ycyxMb2dz CisgaW1wb3J0IHdhZmxpYi5Ob2RlCisgSEVYVkVSU0lPTj0weDIwMDBlMDAKK0BAIC0zNDQsNyAr MzQ0LDcgQEAKKyAJCXJldHVybiBjYWNoZV9tb2R1bGVzW3BhdGhdCisgCWV4Y2VwdCBLZXlFcnJv cjoKKyAJCXBhc3MKKy0JbW9kdWxlPWltcC5uZXdfbW9kdWxlKFdTQ1JJUFRfRklMRSkKKysJbW9k dWxlPXR5cGVzLk1vZHVsZVR5cGUoV1NDUklQVF9GSUxFKQorIAl0cnk6CisgCQljb2RlPVV0aWxz LnJlYWRmKHBhdGgsbT0ncicsZW5jb2Rpbmc9ZW5jb2RpbmcpCisgCWV4Y2VwdCBFbnZpcm9ubWVu dEVycm9yOgorCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F1YmlvL3RlbXBsYXRlIGIvc3JjcGtncy9h dWJpby90ZW1wbGF0ZQppbmRleCBhZDFjNGIyNTY5OTE3OC4uN2Q4NzVjYzAyNTQxYTcgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvYXViaW8vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9hdWJpby90ZW1wbGF0 ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2F1YmlvJwogcGtnbmFtZT1h dWJpbwogdmVyc2lvbj0wLjQuOQotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9 d2FmMwogIyBYWFggbGFzaCwgcHVyZSBhbmQgc3dpZyBzdXBwb3J0LgogaG9zdG1ha2VkZXBlbmRz PSJwa2ctY29uZmlnIHR4dDJtYW4iCgpGcm9tIGJkZDI4MDZkMTQ4M2JlYWM0OGIwZGVmZWViOTJi YTc5YjE1MjAwNjAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1 NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDUgLTA0MDAKU3ViamVj dDogW1BBVENIIDAxNC8xMDhdIGF1ZGFjaW91cy1wbHVnaW5zOiByZXZidW1wIGZvciBmZm1wZWc2 CgotLS0KIC4uLi9hdWRhY2lvdXMtcGx1Z2lucy9wYXRjaGVzL2ZmbXBlZzUucGF0Y2ggICB8IDQz ICsrKysrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCA0MyBpbnNlcnRpb25zKCspCiBj cmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9hdWRhY2lvdXMtcGx1Z2lucy9wYXRjaGVzL2ZmbXBl ZzUucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F1ZGFjaW91cy1wbHVnaW5zL3BhdGNoZXMv ZmZtcGVnNS5wYXRjaCBiL3NyY3BrZ3MvYXVkYWNpb3VzLXBsdWdpbnMvcGF0Y2hlcy9mZm1wZWc1 LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi40ZTVlMzQw OTlkNzFjNAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvYXVkYWNpb3VzLXBsdWdpbnMvcGF0 Y2hlcy9mZm1wZWc1LnBhdGNoCkBAIC0wLDAgKzEsNDMgQEAKK2NvbW1pdCAyOThhYTM3MWM1NmMy ZjUyYzI1YTMzZDliZGVjNDkxOGIxMWNlYmRjCitBdXRob3I6IHRpYmVxdWFkb3JpYW4gPHRpYmVx dWFkb3JpYW5AcG9zdGVvLmRlPgorRGF0ZTogICBTYXQgTWFyIDE5IDE4OjQwOjEyIDIwMjIgKzAx MDAKKworICAgIGF1ZGFjaW91cy1wbHVnaW5zOiByZWJ1aWxkIGFnYWluc3QgZmZtcGVnLTUuMAor CitkaWZmIC0tZ2l0IGEvc3JjcGtncy9hdWRhY2lvdXMtcGx1Z2lucy9wYXRjaGVzL2ZmbXBlZy01 LjAucGF0Y2ggYi9zcmNwa2dzL2F1ZGFjaW91cy1wbHVnaW5zL3BhdGNoZXMvZmZtcGVnLTUuMC5w YXRjaAorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwMDAuLjYxN2MxMTIxNWIK Ky0tLSAvZGV2L251bGwKKysrKyBiL3NyY3BrZ3MvYXVkYWNpb3VzLXBsdWdpbnMvcGF0Y2hlcy9m Zm1wZWctNS4wLnBhdGNoCitAQCAtMCwwICsxLDMxIEBACisrRnJvbSBmNjBiZWI0MDBlZWIxZTQ3 NzhiYmZkNzM4YmM0YTRjY2VmM2RlNTM5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorK0Zyb206 IEpvaG4gTGluZGdyZW4gPGpvaG5AamxpbmRncmVuLm5ldD4KKytEYXRlOiBTYXQsIDUgTWFyIDIw MjIgMTI6MDU6MzQgLTA1MDAKKytTdWJqZWN0OiBbUEFUQ0hdIEZpeCBidWlsZCB3aXRoIEZGbXBl ZyA1LjAKKysKKystLS0KKysgc3JjL2ZmYXVkaW8vZmZhdWRpby1jb3JlLmNjIHwgNCArKy0tCisr IDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisrCisrZGlm ZiAtLWdpdCBhL3NyYy9mZmF1ZGlvL2ZmYXVkaW8tY29yZS5jYyBiL3NyYy9mZmF1ZGlvL2ZmYXVk aW8tY29yZS5jYworK2luZGV4IDE2ZGM2M2UzYS4uYTJiOTVmZDZjIDEwMDY0NAorKy0tLSBhL3Ny Yy9mZmF1ZGlvL2ZmYXVkaW8tY29yZS5jYworKysrKyBiL3NyYy9mZmF1ZGlvL2ZmYXVkaW8tY29y ZS5jYworK0BAIC0yNzQsNyArMjc0LDcgQEAgc3RhdGljIEFWSW5wdXRGb3JtYXQgKiBnZXRfZm9y bWF0X2J5X2NvbnRlbnQgKGNvbnN0IGNoYXIgKiBuYW1lLCBWRlNGaWxlICYgZmlsZSkKKysgICAg ICAgICBBVlByb2JlRGF0YSBkID0ge25hbWUsIGJ1ZiwgZmlsbGVkfTsKKysgICAgICAgICBzY29y ZSA9IHRhcmdldDsKKysgCisrLSAgICAgICAgZiA9IGF2X3Byb2JlX2lucHV0X2Zvcm1hdDIgKCYg ZCwgdHJ1ZSwgJiBzY29yZSk7CisrKyAgICAgICAgZiA9IChBVklucHV0Rm9ybWF0ICopIGF2X3By b2JlX2lucHV0X2Zvcm1hdDIgKCYgZCwgdHJ1ZSwgJiBzY29yZSk7CisrICAgICAgICAgaWYgKGYp CisrICAgICAgICAgICAgIGJyZWFrOworKyAKKytAQCAtMzQ3LDcgKzM0Nyw3IEBAIHN0YXRpYyBi b29sIGZpbmRfY29kZWMgKEFWRm9ybWF0Q29udGV4dCAqIGMsIENvZGVjSW5mbyAqIGNpbmZvKQor KyAjZW5kaWYKKysgICAgICAgICBpZiAoc3RyZWFtICYmIHN0cmVhbS0+Y29kZWNwYXIgJiYgc3Ry ZWFtLT5jb2RlY3Bhci0+Y29kZWNfdHlwZSA9PSBBVk1FRElBX1RZUEVfQVVESU8pCisrICAgICAg ICAgeworKy0gICAgICAgICAgICBBVkNvZGVjICogY29kZWMgPSBhdmNvZGVjX2ZpbmRfZGVjb2Rl ciAoc3RyZWFtLT5jb2RlY3Bhci0+Y29kZWNfaWQpOworKysgICAgICAgICAgICBBVkNvZGVjICog Y29kZWMgPSAoQVZDb2RlYyAqKSBhdmNvZGVjX2ZpbmRfZGVjb2RlciAoc3RyZWFtLT5jb2RlY3Bh ci0+Y29kZWNfaWQpOworKyAKKysgICAgICAgICAgICAgaWYgKGNvZGVjKQorKyAgICAgICAgICAg ICB7CgpGcm9tIDkzNzc2MGE1MDJhYmI2NWU1OGYxNmE0MGYzM2RhZWFhM2E0NWRkMWEgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6 IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDUgLTA0MDAKU3ViamVjdDogW1BBVENIIDAxNS8xMDhd IGF1ZGFjaXR5OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvYXVkYWNpdHkvdGVt cGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24o LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F1ZGFjaXR5L3RlbXBsYXRlIGIvc3JjcGtncy9hdWRh Y2l0eS90ZW1wbGF0ZQppbmRleCA3YjgzODExOWFiMjYxMS4uODRiNDkzMDVlZGNlZjEgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvYXVkYWNpdHkvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9hdWRhY2l0eS90 ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2F1ZGFjaXR5Jwog cGtnbmFtZT1hdWRhY2l0eQogdmVyc2lvbj0zLjQuMgotcmV2aXNpb249MQorcmV2aXNpb249Mgog YnVpbGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hlbHBlcj0iY21ha2Utd3hXaWRnZXRzLWd0azMgcWVt dSIKIGNvbmZpZ3VyZV9hcmdzPSItRGF1ZGFjaXR5X3VzZV9mZm1wZWc9bG9hZGVkIC1EYXVkYWNp dHlfbGliX3ByZWZlcmVuY2U9c3lzdGVtCgpGcm9tIGVhNmE4NDhjZTlhMjFhZWFkNTdkNmI5OGRi YmU0YTU1NzYzMjhmNTYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGlj ZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDUgLTA0MDAKU3Vi amVjdDogW1BBVENIIDAxNi8xMDhdIGF2aWRlbXV4OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0K IHNyY3BrZ3MvYXZpZGVtdXgvZmlsZXMvbmVnYXRpdmUtc2hpZnQucGF0Y2ggfCA3MyArKysrKysr KysrKysrKysrKysrKysKIHNyY3BrZ3MvYXZpZGVtdXgvdGVtcGxhdGUgICAgICAgICAgICAgICAg ICAgfCAgNiArLQogMiBmaWxlcyBjaGFuZ2VkLCA3OCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9u KC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9hdmlkZW11eC9maWxlcy9uZWdhdGl2ZS1z aGlmdC5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXZpZGVtdXgvZmlsZXMvbmVnYXRpdmUt c2hpZnQucGF0Y2ggYi9zcmNwa2dzL2F2aWRlbXV4L2ZpbGVzL25lZ2F0aXZlLXNoaWZ0LnBhdGNo Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi5kZGQzZmEyYThlMjlh YQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvYXZpZGVtdXgvZmlsZXMvbmVnYXRpdmUtc2hp ZnQucGF0Y2gKQEAgLTAsMCArMSw3MyBAQAorCitGcm9tIGVmZmFkY2U2Yzc1NjI0N2VhOGJhZTMy ZGMxM2JiM2U2ZjQ2NGYwZWIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiA9P1VURi04 P3E/Uj1DMz1BOW1pPTIwRGVuaXMtQ291cm1vbnQ/PSA8cmVtaUByZW1sYWIubmV0PgorRGF0ZTog U3VuLCAxNiBKdWwgMjAyMyAxODoxODowMiArMDMwMAorU3ViamVjdDogW1BBVENIXSBhdmNvZGVj L3g4Ni9tYXRob3BzOiBjbGlwIGNvbnN0YW50cyB1c2VkIHdpdGggc2hpZnQKKyBpbnN0cnVjdGlv bnMgd2l0aGluIGlubGluZSBhc3NlbWJseQorCitGaXhlcyBhc3NlbWJsaW5nIHdpdGggYmludXRp bCBhcyA+PSAyLjQxCisKK1NpZ25lZC1vZmYtYnk6IEphbWVzIEFsbWVyIDxqYW1yaWFsQGdtYWls LmNvbT4KKy0tLQorIGxpYmF2Y29kZWMveDg2L21hdGhvcHMuaCB8IDI2ICsrKysrKysrKysrKysr KysrKysrKysrLS0tCisgMSBmaWxlIGNoYW5nZWQsIDIzIGluc2VydGlvbnMoKyksIDMgZGVsZXRp b25zKC0pCisKK2RpZmYgLS1naXQgYS9saWJhdmNvZGVjL3g4Ni9tYXRob3BzLmggYi9saWJhdmNv ZGVjL3g4Ni9tYXRob3BzLmgKK2luZGV4IDYyOThmNWVkMTk4M2IuLmNhN2UyZGZmYzEwNzYgMTAw NjQ0CistLS0gbGliYXZjb2RlYy94ODYvbWF0aG9wcy5oCisrKysgbGliYXZjb2RlYy94ODYvbWF0 aG9wcy5oCitAQCAtMzUsMTIgKzM1LDIwIEBACisgc3RhdGljIGF2X2Fsd2F5c19pbmxpbmUgYXZf Y29uc3QgaW50IE1VTEwoaW50IGEsIGludCBiLCB1bnNpZ25lZCBzaGlmdCkKKyB7CisgICAgIGlu dCBydCwgZHVtbXk7CisrICAgIGlmIChfX2J1aWx0aW5fY29uc3RhbnRfcChzaGlmdCkpCisgICAg IF9fYXNtX18gKAorICAgICAgICAgImltdWxsICUzICAgICAgICAgICAgICAgXG5cdCIKKyAgICAg ICAgICJzaHJkbCAlNCwgJSVlZHgsICUlZWF4IFxuXHQiCisgICAgICAgICA6Ij1hIihydCksICI9 ZCIoZHVtbXkpCistICAgICAgICA6ImEiKGEpLCAicm0iKGIpLCAiY2kiKCh1aW50OF90KXNoaWZ0 KQorKyAgICAgICAgOiJhIihhKSwgInJtIihiKSwgImkiKHNoaWZ0ICYgMHgxRikKKyAgICAgKTsK KysgICAgZWxzZQorKyAgICAgICAgX19hc21fXyAoCisrICAgICAgICAgICAgImltdWxsICUzICAg ICAgICAgICAgICAgXG5cdCIKKysgICAgICAgICAgICAic2hyZGwgJTQsICUlZWR4LCAlJWVheCBc blx0IgorKyAgICAgICAgICAgIDoiPWEiKHJ0KSwgIj1kIihkdW1teSkKKysgICAgICAgICAgICA6 ImEiKGEpLCAicm0iKGIpLCAiYyIoKHVpbnQ4X3Qpc2hpZnQpCisrICAgICAgICApOworICAgICBy ZXR1cm4gcnQ7CisgfQorCitAQCAtMTEzLDE5ICsxMjEsMzEgQEAgX19hc21fXyB2b2xhdGlsZShc CisgLy8gYXZvaWQgKzMyIGZvciBzaGlmdCBvcHRpbWl6YXRpb24gKGdjYyBzaG91bGQgZG8gdGhh dCAuLi4pCisgI2RlZmluZSBORUdfU1NSMzIgTkVHX1NTUjMyCisgc3RhdGljIGlubGluZSAgaW50 MzJfdCBORUdfU1NSMzIoIGludDMyX3QgYSwgaW50OF90IHMpeworKyAgICBpZiAoX19idWlsdGlu X2NvbnN0YW50X3AocykpCisgICAgIF9fYXNtX18gKCJzYXJsICUxLCAlMFxuXHQiCisgICAgICAg ICAgOiAiK3IiIChhKQorLSAgICAgICAgIDogImljIiAoKHVpbnQ4X3QpKC1zKSkKKysgICAgICAg ICA6ICJpIiAoLXMgJiAweDFGKQorICAgICApOworKyAgICBlbHNlCisrICAgICAgICBfX2FzbV9f ICgic2FybCAlMSwgJTBcblx0IgorKyAgICAgICAgICAgICAgIDogIityIiAoYSkKKysgICAgICAg ICAgICAgICA6ICJjIiAoKHVpbnQ4X3QpKC1zKSkKKysgICAgICAgICk7CisgICAgIHJldHVybiBh OworIH0KKworICNkZWZpbmUgTkVHX1VTUjMyIE5FR19VU1IzMgorIHN0YXRpYyBpbmxpbmUgdWlu dDMyX3QgTkVHX1VTUjMyKHVpbnQzMl90IGEsIGludDhfdCBzKXsKKysgICAgaWYgKF9fYnVpbHRp bl9jb25zdGFudF9wKHMpKQorICAgICBfX2FzbV9fICgic2hybCAlMSwgJTBcblx0IgorICAgICAg ICAgIDogIityIiAoYSkKKy0gICAgICAgICA6ICJpYyIgKCh1aW50OF90KSgtcykpCisrICAgICAg ICAgOiAiaSIgKC1zICYgMHgxRikKKyAgICAgKTsKKysgICAgZWxzZQorKyAgICAgICAgX19hc21f XyAoInNocmwgJTEsICUwXG5cdCIKKysgICAgICAgICAgICAgICA6ICIrciIgKGEpCisrICAgICAg ICAgICAgICAgOiAiYyIgKCh1aW50OF90KSgtcykpCisrICAgICAgICApOworICAgICByZXR1cm4g YTsKKyB9CmRpZmYgLS1naXQgYS9zcmNwa2dzL2F2aWRlbXV4L3RlbXBsYXRlIGIvc3JjcGtncy9h dmlkZW11eC90ZW1wbGF0ZQppbmRleCAyNTNhMDI0M2UyMjU5OS4uNzE4MWViZjMyMDNiMmMgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvYXZpZGVtdXgvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9hdmlkZW11 eC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2F2aWRlbXV4 JwogcGtnbmFtZT1hdmlkZW11eAogdmVyc2lvbj0yLjguMAotcmV2aXNpb249MgorcmV2aXNpb249 MwogIyBDYW4ndCBiZSBjb21waWxlZCBmb3IgYWFyY2g2NCwgYXJtKiBvciBtaXBzKgogYXJjaHM9 Ing4Nl82NCogaTY4NioiCiBob3N0bWFrZWRlcGVuZHM9ImNtYWtlIHBrZy1jb25maWcgcXQ1LWhv c3QtdG9vbHMgcXQ1LWRldmVsIHRhciB5YXNtIgpAQCAtMjUsNiArMjUsMTAgQEAgY2FzZSAiJHtY QlBTX1RBUkdFVF9NQUNISU5FfSIgaW4KIAlpNjg2KikgQ0ZMQUdTPSItZm5vLVBJQyI7OwogZXNh YwogCitwb3N0X2V4dHJhY3QoKSB7CisJY3AgJHtGSUxFU0RJUn0vKnBhdGNoICR7d3Jrc3JjfS9h dmlkZW11eF9jb3JlL2ZmbXBlZ19wYWNrYWdlL3BhdGNoZXMvCit9CisKIGRvX2NvbmZpZ3VyZSgp IHsKIAlNQUtFRkxBR1M9JHttYWtlam9ic30gXAogCQliYXNoIGJvb3RTdHJhcC5iYXNoIFwKCkZy b20gZjEzNDYzMzYwZjA3YWFmOTZmM2Y1N2JiMTdhMTFhYTY1Mjg4NTgwMiBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAy MiBNYXIgMjAyMyAyMDowMTo0NiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDE3LzEwOF0gYmxlbmRl cjogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2JsZW5kZXIvdGVtcGxhdGUgfCAy ICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2JsZW5kZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2JsZW5kZXIvdGVtcGxh dGUKaW5kZXggNjg3ODdiNzZhMjZjMTguLmUyZTA5MGU2ZGZhNDFjIDEwMDY0NAotLS0gYS9zcmNw a2dzL2JsZW5kZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9ibGVuZGVyL3RlbXBsYXRlCkBAIC0x LDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYmxlbmRlcicKIHBrZ25hbWU9YmxlbmRl cgogdmVyc2lvbj00LjAuMgotcmV2aXNpb249MgorcmV2aXNpb249MwogYXJjaHM9Ing4Nl82NCog cHBjNjQqIgogYnVpbGRfc3R5bGU9ImNtYWtlIgogcHljb21waWxlX2RpcnM9InVzci9zaGFyZS9i bGVuZGVyLyR7dmVyc2lvbiUuKn0vc2NyaXB0cyIKCkZyb20gYzVlMTVkZTRjYmEzMWEzMDE2ZTc1 NjhjNWRmMzE0NzczZDE4OTRhNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2Ug PHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0NiAtMDQw MApTdWJqZWN0OiBbUEFUQ0ggMDE4LzEwOF0gY2FudGF0YTogcmV2YnVtcCBmb3IgZmZtcGVnNgoK LS0tCiBzcmNwa2dzL2NhbnRhdGEvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBp bnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2NhbnRhdGEv dGVtcGxhdGUgYi9zcmNwa2dzL2NhbnRhdGEvdGVtcGxhdGUKaW5kZXggNGI0MTdkODBkNWMyZGEu LjhhOTBhYWE0YzA3YTJhIDEwMDY0NAotLS0gYS9zcmNwa2dzL2NhbnRhdGEvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9jYW50YXRhL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnY2FudGF0YScKIHBrZ25hbWU9Y2FudGF0YQogdmVyc2lvbj0yLjUuMAotcmV2aXNp b249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0icGtn LWNvbmZpZyBxdDUtcW1ha2UgcXQ1LWhvc3QtdG9vbHMgcXQ1LXRvb2xzIgogbWFrZWRlcGVuZHM9 InF0NS1kZXZlbCBxdDUtdG9vbHMtZGV2ZWwgcXQ1LXN2Zy1kZXZlbCBxdDUteG1scGF0dGVybnMt ZGV2ZWwKCkZyb20gOWE5NjNhM2Y5ZWQ2MGEwYTU0OWU1MzdhNzA0NTk0YmU1ZjQ0OGIzNCBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0 ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0NiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDE5LzEw OF0gY2NleHRyYWN0b3I6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogLi4uNS1hbmQtdGVzc2Vy YWN0LTUtY29tcGF0aWJpbGl0eS0xNDc5LnBhdGNoIHwgMTY4ICsrKysrKysrKysrKysrKysrKwog c3JjcGtncy9jY2V4dHJhY3Rvci90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgIHwgICAyICstCiAy IGZpbGVzIGNoYW5nZWQsIDE2OSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUg bW9kZSAxMDA2NDQgc3JjcGtncy9jY2V4dHJhY3Rvci9wYXRjaGVzLzAwMDEtZml4LWZmbXBlZy01 LWFuZC10ZXNzZXJhY3QtNS1jb21wYXRpYmlsaXR5LTE0NzkucGF0Y2gKCmRpZmYgLS1naXQgYS9z cmNwa2dzL2NjZXh0cmFjdG9yL3BhdGNoZXMvMDAwMS1maXgtZmZtcGVnLTUtYW5kLXRlc3NlcmFj dC01LWNvbXBhdGliaWxpdHktMTQ3OS5wYXRjaCBiL3NyY3BrZ3MvY2NleHRyYWN0b3IvcGF0Y2hl cy8wMDAxLWZpeC1mZm1wZWctNS1hbmQtdGVzc2VyYWN0LTUtY29tcGF0aWJpbGl0eS0xNDc5LnBh dGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi5iY2FiNDg5MDU1 NGI5YQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvY2NleHRyYWN0b3IvcGF0Y2hlcy8wMDAx LWZpeC1mZm1wZWctNS1hbmQtdGVzc2VyYWN0LTUtY29tcGF0aWJpbGl0eS0xNDc5LnBhdGNoCkBA IC0wLDAgKzEsMTY4IEBACitGcm9tIGIxY2JmY2VhOWI5YzY4NzE0M2JmMGQ4MGJjMTc5YjU2M2U5 OWQwMjUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBQcmF0ZWVrIFN1bmFsIDxwcnRr c3VuYWxAZ21haWwuY29tPgorRGF0ZTogVGh1LCA5IE1hciAyMDIzIDAxOjQ0OjUzICswNTMwCitT dWJqZWN0OiBbUEFUQ0hdIGZpeDogZmZtcGVnIDUgYW5kIHRlc3NlcmFjdCA1IGNvbXBhdGliaWxp dHkgKCMxNDc5KQorCisqIGZpeDogcmVwbGFjZSBkZXByZWNhdGVkIGBjb2RlY2AgcHJvcGVydHkg d2l0aCBgY29kZWNwYXJgCisKKyogZml4OiByZXBsYWNlIGRlcHJlY2F0ZWQgbWV0aG9kIGBhdmNv ZGVjX2RlY29kZV92aWRlbzJgIHdpdGggYGF2Y29kZWNfcmVjZWl2ZV9mcmFtZWAgYW5kIGBhdmNv ZGVjX3NlbmRfcGFja2V0YAorCisqIFVwZGF0ZSBDSEFOR0VTLlRYVAorCisqIGZpeDogcmVtb3Zl IGRlcHJlY2F0ZWQgYGF2X3JlZ2lzdGVyX2FsbGAgZnVuY3Rpb24KKworKiBmaXg6IGZvcm1hdHRp bmcKKworKiBmaXg6IGFkZCBzdXBwb3J0IGZvciB0ZXNzZXJhY3QgNQorCisqIGZpeDogdGVzc2Vy YWN0IHY1CisKKyogZml4OiBoYXJkc3VieCBjb2RlYyBjb250ZXh0IGVycm9yCisKKyogZml4OiBs aW50IGNvbnN0IHdhcm5pbmcKKy0tLQorIGRvY3MvQ0hBTkdFUy5UWFQgICAgICAgICAgICAgICB8 ICAxICsKKyBzcmMvbGliX2NjeC9mZm1wZWdfaW50Z3IuYyAgICAgfCAgNyArKystLS0KKyBzcmMv bGliX2NjeC9oYXJkc3VieC5jICAgICAgICAgfCAyNSArKysrKysrKysrKystLS0tLS0KKyBzcmMv bGliX2NjeC9oYXJkc3VieF9kZWNvZGVyLmMgfCAyNyArKysrKysrKy0tLS0tLS0tLS0tLQorIHNy Yy9saWJfY2N4L29jci5jICAgICAgICAgICAgICB8IDQ2ICsrKysrKysrKysrKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0KKyA1IGZpbGVzIGNoYW5nZWQsIDQ3IGluc2VydGlvbnMoKyksIDU5IGRlbGV0 aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvc3JjL2xpYl9jY3gvZmZtcGVnX2ludGdyLmMgYi9zcmMv bGliX2NjeC9mZm1wZWdfaW50Z3IuYworaW5kZXggYmU5ODg4OTAuLmU2ZjIxZTIwIDEwMDY0NAor LS0tIGEvc3JjL2xpYl9jY3gvZmZtcGVnX2ludGdyLmMKKysrKyBiL3NyYy9saWJfY2N4L2ZmbXBl Z19pbnRnci5jCitAQCAtNjYsNyArNjYsNiBAQCB2b2lkICppbml0X2ZmbXBlZyhjb25zdCBjaGFy ICpwYXRoKQorIAlzdHJ1Y3QgZmZtcGVnX2N0eCAqY3R4OworIAlBVkNvZGVjICpkZWMgPSBOVUxM OworIAlhdmNvZGVjX3JlZ2lzdGVyX2FsbCgpOworLQlhdl9yZWdpc3Rlcl9hbGwoKTsKKyAKKyAJ aWYgKGNjeF9vcHRpb25zLmRlYnVnX21hc2sgJiBDQ1hfRE1UX1ZFUkJPU0UpCisgCQlhdl9sb2df c2V0X2xldmVsKEFWX0xPR19JTkZPKTsKK0BAIC0xMzMsNyArMTMyLDYgQEAgaW50IGZmX2dldF9j Y2ZyYW1lKHZvaWQgKmFyZywgdW5zaWduZWQgY2hhciAqZGF0YSwgaW50IG1heGxlbikKKyAJc3Ry dWN0IGZmbXBlZ19jdHggKmN0eCA9IGFyZzsKKyAJaW50IGxlbiA9IDA7CisgCWludCByZXQgPSAw OworLQlpbnQgZ290X2ZyYW1lOworIAlBVlBhY2tldCBwYWNrZXQ7CisgCisgCXJldCA9IGF2X3Jl YWRfZnJhbWUoY3R4LT5pZm10LCAmcGFja2V0KTsKK0BAIC0xNTEsMTIgKzE0OSwxMyBAQCBpbnQg ZmZfZ2V0X2NjZnJhbWUodm9pZCAqYXJnLCB1bnNpZ25lZCBjaGFyICpkYXRhLCBpbnQgbWF4bGVu KQorIAkJcmV0dXJuIEFWRVJST1IoRUFHQUlOKTsKKyAJfQorIAorLQlyZXQgPSBhdmNvZGVjX2Rl Y29kZV92aWRlbzIoY3R4LT5kZWNfY3R4LCBjdHgtPmZyYW1lLCAmZ290X2ZyYW1lLCAmcGFja2V0 KTsKKysJYXZjb2RlY19zZW5kX3BhY2tldChjdHgtPmNvZGVjX2N0eCwgJmN0eC0+cGFja2V0KTsK KysJcmV0ID0gYXZjb2RlY19yZWNlaXZlX2ZyYW1lKGN0eC0+ZGVjX2N0eCwgY3R4LT5mcmFtZSk7 CisgCWlmIChyZXQgPCAwKQorIAl7CisgCQlhdl9sb2coTlVMTCwgQVZfTE9HX0VSUk9SLCAidW5h YmxlIHRvIGRlY29kZSBwYWNrZXRcbiIpOworIAl9CistCWVsc2UgaWYgKCFnb3RfZnJhbWUpCisr CWVsc2UgaWYgKHJldCAhPSAwKQorIAl7CisgCQlyZXR1cm4gQVZFUlJPUihFQUdBSU4pOworIAl9 CitkaWZmIC0tZ2l0IGEvc3JjL2xpYl9jY3gvaGFyZHN1YnguYyBiL3NyYy9saWJfY2N4L2hhcmRz dWJ4LmMKK2luZGV4IDQxMTM3N2Y5Li5mYjg0NGM5MSAxMDA2NDQKKy0tLSBhL3NyYy9saWJfY2N4 L2hhcmRzdWJ4LmMKKysrKyBiL3NyYy9saWJfY2N4L2hhcmRzdWJ4LmMKK0BAIC0xMiw5ICsxMiw2 IEBACisKKyBpbnQgaGFyZHN1YnhfcHJvY2Vzc19kYXRhKHN0cnVjdCBsaWJfaGFyZHN1YnhfY3R4 ICpjdHgpCisgeworLQkvLyBHZXQgdGhlIHJlcXVpcmVkIG1lZGlhIGF0dHJpYnV0ZXMgYW5kIGlu aXRpYWxpemUgc3RydWN0dXJlcworLQlhdl9yZWdpc3Rlcl9hbGwoKTsKKy0KKyAJaWYgKGF2Zm9y bWF0X29wZW5faW5wdXQoJmN0eC0+Zm9ybWF0X2N0eCwgY3R4LT5pbnB1dGZpbGVbMF0sIE5VTEws IE5VTEwpICE9IDApCisgCXsKKyAJCWZhdGFsKEVYSVRfUkVBRF9FUlJPUiwgIkVycm9yIHJlYWRp bmcgaW5wdXQgZmlsZSFcbiIpOworQEAgLTMyLDcgKzI5LDcgQEAKKyAJY3R4LT52aWRlb19zdHJl YW1faWQgPSAtMTsKKyAJZm9yIChpbnQgaSA9IDA7IGkgPCBjdHgtPmZvcm1hdF9jdHgtPm5iX3N0 cmVhbXM7IGkrKykKKyAJeworLQkJaWYgKGN0eC0+Zm9ybWF0X2N0eC0+c3RyZWFtc1tpXS0+Y29k ZWMtPmNvZGVjX3R5cGUgPT0gQVZNRURJQV9UWVBFX1ZJREVPKQorKwkJaWYgKGN0eC0+Zm9ybWF0 X2N0eC0+c3RyZWFtc1tpXS0+Y29kZWNwYXItPmNvZGVjX3R5cGUgPT0gQVZNRURJQV9UWVBFX1ZJ REVPKQorIAkJeworIAkJCWN0eC0+dmlkZW9fc3RyZWFtX2lkID0gaTsKKyAJCQlicmVhazsKK0BA IC00Myw4ICs0MCwyMSBAQAorIAkJZmF0YWwoRVhJVF9SRUFEX0VSUk9SLCAiVmlkZW8gU3RyZWFt IG5vdCBmb3VuZCFcbiIpOworIAl9CisKKy0JY3R4LT5jb2RlY19jdHggPSBjdHgtPmZvcm1hdF9j dHgtPnN0cmVhbXNbY3R4LT52aWRlb19zdHJlYW1faWRdLT5jb2RlYzsKKy0JY3R4LT5jb2RlYyA9 IGF2Y29kZWNfZmluZF9kZWNvZGVyKGN0eC0+Y29kZWNfY3R4LT5jb2RlY19pZCk7CisrCWN0eC0+ Y29kZWNfY3R4ID0gYXZjb2RlY19hbGxvY19jb250ZXh0MyhOVUxMKTsKKysJaWYgKCFjdHgtPmNv ZGVjX2N0eCkKKysJeworKwkJICAgIGZhdGFsKEVYSVRfTk9UX0VOT1VHSF9NRU1PUlksICJDb3Vs ZCBub3QgYWxsb2NhdGUgY29kZWMgY29udGV4dCFcbiIpOworKwl9CisrCisrCS8vIEFzc2lnbiBj b2RlYyBwYXJhbWV0ZXJzIHRvIGNvZGVjIGNvbnRleHQKKysJaWYgKGF2Y29kZWNfcGFyYW1ldGVy c190b19jb250ZXh0KGN0eC0+Y29kZWNfY3R4LCBjdHgtPmZvcm1hdF9jdHgtPnN0cmVhbXNbY3R4 LT52aWRlb19zdHJlYW1faWRdLT5jb2RlY3BhcikgPCAwKQorKwl7CisrCQkgICAgZmF0YWwoRVhJ VF9SRUFEX0VSUk9SLCAiQ291bGQgbm90IGluaXRpYWxpemUgY29kZWMgY29udGV4dCFcbiIpOwor Kwl9CisrCisrCS8vIEZpbmQgZGVjb2RlciBmb3IgdGhlIGNvZGVjIGNvbnRleHQKKysJY3R4LT5j b2RlYyA9IChBVkNvZGVjICopYXZjb2RlY19maW5kX2RlY29kZXIoY3R4LT5jb2RlY19jdHgtPmNv ZGVjX2lkKTsKKysKKyAJaWYgKGN0eC0+Y29kZWMgPT0gTlVMTCkKKyAJeworIAkJZmF0YWwoRVhJ VF9SRUFEX0VSUk9SLCAiSW5wdXQgY29kZWMgaXMgbm90IHN1cHBvcnRlZCFcbiIpOworZGlmZiAt LWdpdCBhL3NyYy9saWJfY2N4L2hhcmRzdWJ4X2RlY29kZXIuYyBiL3NyYy9saWJfY2N4L2hhcmRz dWJ4X2RlY29kZXIuYworaW5kZXggYmQ5YjA5ODAuLmI1ZGZhZWM0IDEwMDY0NAorLS0tIGEvc3Jj L2xpYl9jY3gvaGFyZHN1YnhfZGVjb2Rlci5jCisrKysgYi9zcmMvbGliX2NjeC9oYXJkc3VieF9k ZWNvZGVyLmMKK0BAIC0zNzEsNyArMzcxLDYgQEAKKyBpbnQgaGFyZHN1YnhfcHJvY2Vzc19mcmFt ZXNfdGlja2VydGV4dChzdHJ1Y3QgbGliX2hhcmRzdWJ4X2N0eCAqY3R4LCBzdHJ1Y3QgZW5jb2Rl cl9jdHggKmVuY19jdHgpCisgeworIAkvLyBTZWFyY2ggZm9yIHRpY2tlciB0ZXh0IGF0IHRoZSBi b3R0b20gb2YgdGhlIHNjcmVlbiwgc3VjaCBhcyBpbiBSdXNzaWEgVFYxIG9yIHN0b2NrIHByaWNl cworLQlpbnQgZ290X2ZyYW1lOworIAlpbnQgY3VyX3NlYyA9IDAsIHRvdGFsX3NlYywgcHJvZ3Jl c3M7CisgCWludCBmcmFtZV9udW1iZXIgPSAwOworIAljaGFyICp0aWNrZXJfdGV4dCA9IE5VTEw7 CitAQCAtMzgyLDggKzM4MSw4IEBACisgCQl7CisgCQkJZnJhbWVfbnVtYmVyKys7CisgCQkJLy9E ZWNvZGUgdGhlIHZpZGVvIHN0cmVhbSBwYWNrZXQKKy0JCQlhdmNvZGVjX2RlY29kZV92aWRlbzIo Y3R4LT5jb2RlY19jdHgsIGN0eC0+ZnJhbWUsICZnb3RfZnJhbWUsICZjdHgtPnBhY2tldCk7Cist CQkJaWYgKGdvdF9mcmFtZSAmJiBmcmFtZV9udW1iZXIgJSAxMDAwID09IDApCisrICAgICAgYXZj b2RlY19zZW5kX3BhY2tldChjdHgtPmNvZGVjX2N0eCwgJmN0eC0+cGFja2V0KTsKKysgICAgICBp ZiAoYXZjb2RlY19yZWNlaXZlX2ZyYW1lKGN0eC0+Y29kZWNfY3R4LCBjdHgtPmZyYW1lKSA9PSAw ICYmIGZyYW1lX251bWJlciAlIDEwMDAgPT0gMCkKKyAJCQl7CisgCQkJCS8vIHN3c19zY2FsZSBp cyB1c2VkIHRvIGNvbnZlcnQgdGhlIHBpeGVsIGZvcm1hdCB0byBSR0IyNCBmcm9tIGFsbCBvdGhl ciBjYXNlcworIAkJCQlzd3Nfc2NhbGUoCitAQCAtNDM0LDkgKzQzMyw4IEBACisgCQkJZnJhbWVf bnVtYmVyKys7CisKKyAJCQkvL0RlY29kZSB0aGUgdmlkZW8gc3RyZWFtIHBhY2tldAorLQkJCWF2 Y29kZWNfZGVjb2RlX3ZpZGVvMihjdHgtPmNvZGVjX2N0eCwgY3R4LT5mcmFtZSwgJmdvdF9mcmFt ZSwgJmN0eC0+cGFja2V0KTsKKy0KKy0JCQlpZiAoZ290X2ZyYW1lICYmIGZyYW1lX251bWJlciAl IDI1ID09IDApCisrCQkJYXZjb2RlY19zZW5kX3BhY2tldChjdHgtPmNvZGVjX2N0eCwgJmN0eC0+ cGFja2V0KTsKKysgICAgICBpZiAoYXZjb2RlY19yZWNlaXZlX2ZyYW1lKGN0eC0+Y29kZWNfY3R4 LCBjdHgtPmZyYW1lKSA9PSAwICYmIGZyYW1lX251bWJlciAlIDI1ID09IDApCisgCQkJeworIAkJ CQlmbG9hdCBkaWZmID0gKGZsb2F0KWNvbnZlcnRfcHRzX3RvX21zKGN0eC0+cGFja2V0LnB0cyAt IHByZXZfcGFja2V0X3B0cywgY3R4LT5mb3JtYXRfY3R4LT5zdHJlYW1zW2N0eC0+dmlkZW9fc3Ry ZWFtX2lkXS0+dGltZV9iYXNlKTsKKyAJCQkJaWYgKGZhYnNmKGRpZmYpIDwgMTAwMCAqIGN0eC0+ bWluX3N1Yl9kdXJhdGlvbikgLy9JZiB0aGUgbWluaW11bSBkdXJhdGlvbiBvZiBhIHN1YnRpdGxl IGxpbmUgaXMgZXhjZWVkZWQsIHByb2Nlc3MgcGFja2V0CitAQCAtNTQ4LDcgKzU0Niw2IEBACisg eworIAkvLyBEbyBhIGJpbmFyeSBzZWFyY2ggb3ZlciB0aGUgaW5wdXQgdmlkZW8gZm9yIGZhc3Rl ciBwcm9jZXNzaW5nCisgCS8vIHByaW50ZigiRHVyYXRpb246ICVkXG4iLCAoaW50KWN0eC0+Zm9y bWF0X2N0eC0+ZHVyYXRpb24pOworLQlpbnQgZ290X2ZyYW1lOworIAlpbnQgc2Vjb25kc190aW1l ID0gMDsKKyAJZm9yIChzZWNvbmRzX3RpbWUgPSAwOyBzZWNvbmRzX3RpbWUgPCAyMDsgc2Vjb25k c190aW1lKyspCisgCXsKK0BAIC01NjgsOCArNTY1LDkgQEAKKyAJCQl7CisgCQkJCWlmIChjdHgt PnBhY2tldC5zdHJlYW1faW5kZXggPT0gY3R4LT52aWRlb19zdHJlYW1faWQpCisgCQkJCXsKKy0J CQkJCWF2Y29kZWNfZGVjb2RlX3ZpZGVvMihjdHgtPmNvZGVjX2N0eCwgY3R4LT5mcmFtZSwgJmdv dF9mcmFtZSwgJmN0eC0+cGFja2V0KTsKKy0JCQkJCWlmIChnb3RfZnJhbWUpCisrICAgICAgICAg IGF2Y29kZWNfc2VuZF9wYWNrZXQoY3R4LT5jb2RlY19jdHgsICZjdHgtPnBhY2tldCk7CisrICAg ICAgICAgIGlmIChhdmNvZGVjX3JlY2VpdmVfZnJhbWUoY3R4LT5jb2RlY19jdHgsIGN0eC0+ZnJh bWUpID09IDApCisrCisgCQkJCQl7CisgCQkJCQkJLy8gcHJpbnRmKCIlZFxuIiwgc2Vla190aW1l KTsKKyAJCQkJCQlpZiAoY3R4LT5wYWNrZXQucHRzIDwgc2Vla190aW1lKQpkaWZmIC0tZ2l0IGEv c3JjcGtncy9jY2V4dHJhY3Rvci90ZW1wbGF0ZSBiL3NyY3BrZ3MvY2NleHRyYWN0b3IvdGVtcGxh dGUKaW5kZXggNjU5YWY3ZTY0ZmVlNGMuLjU4ZGYwOTU3YWFlMDJkIDEwMDY0NAotLS0gYS9zcmNw a2dzL2NjZXh0cmFjdG9yL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvY2NleHRyYWN0b3IvdGVtcGxh dGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdjY2V4dHJhY3RvcicKIHBr Z25hbWU9Y2NleHRyYWN0b3IKIHZlcnNpb249MC45MwotcmV2aXNpb249MgorcmV2aXNpb249Mwog YnVpbGRfd3Jrc3JjPSJsaW51eCIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3Vy ZV9hcmdzPSItLWVuYWJsZS1vY3IgLS1lbmFibGUtaGFyZHN1YngiCgpGcm9tIGQ1MDMxNDZkNGZm ZWYyM2U2N2RmM2ZmNTk4MDdlNmZlNzcxYTgwNjQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6 MDE6NDYgLTA0MDAKU3ViamVjdDogW1BBVENIIDAyMC8xMDhdIGNocm9tYXByaW50OiByZXZidW1w IGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvY2hyb21hcHJpbnQvcGF0Y2hlcy9mZm1wZWc1LnBh dGNoIHwgNTY5ICsrKysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvY2hyb21hcHJpbnQvdGVt cGxhdGUgICAgICAgICAgICAgIHwgICAyICstCiAyIGZpbGVzIGNoYW5nZWQsIDU3MCBpbnNlcnRp b25zKCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9jaHJvbWFw cmludC9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Nocm9tYXBy aW50L3BhdGNoZXMvZmZtcGVnNS5wYXRjaCBiL3NyY3BrZ3MvY2hyb21hcHJpbnQvcGF0Y2hlcy9m Zm1wZWc1LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi5h OWZkMzA3YTIzYzhhNAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvY2hyb21hcHJpbnQvcGF0 Y2hlcy9mZm1wZWc1LnBhdGNoCkBAIC0wLDAgKzEsNTY5IEBACitGcm9tIDhjY2FkNjkzNzE3N2Ix YjkyZTQwYWI4ZjQ0NDdlYTI3YmFjMDA5YTcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9t OiA9P1VURi04P3E/THVrPUMzPUExPUM1PUExPTIwTGFsaW5zaz1DMz1CRD89IDxsYWxpbnNreUBn bWFpbC5jb20+CitEYXRlOiBGcmksIDQgTm92IDIwMjIgMjE6NDc6MzggKzAxMDAKK1N1YmplY3Q6 IFtQQVRDSF0gVXNlIEZGbXBlZyA1LnggKCMxMjApCisKKyogVXNlIEZGbXBlZyA1LjEuMiBmb3Ig Q0kgYnVpbGRzCisKKyogQnVpbGQgb24gVWJ1bnR1IDIwLjA0CisKKyogVXBncmFkZSBjb2RlIHRv IEZGbXBlZyA1LnggQVBJcworCisqIE9ubHkgc2V0IEZGbXBlZyBpbmNsdWRlIGRpcnMgaWYgYnVp bGRpbmcgdG9vbHMKKworKiBObyBsb25nZXIgbmVlZGVkCisKKyogVXNlIHVidW50dSAyMC4wNAor LS0tCisgLmdpdGh1Yi93b3JrZmxvd3MvYnVpbGQueW1sICAgICAgICAgICAgICAgICAgIHwgICA2 ICstCisgQ01ha2VMaXN0cy50eHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDE2 IC0tCisgcGFja2FnZS9idWlsZC5zaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA0 ICstCisgc3JjL2F1ZGlvL2ZmbXBlZ19hdWRpb19wcm9jZXNzb3IuaCAgICAgICAgICAgIHwgICAy IC0KKyBzcmMvYXVkaW8vZmZtcGVnX2F1ZGlvX3Byb2Nlc3Nvcl9hdnJlc2FtcGxlLmggfCAgNzIg LS0tLS0tLQorIHNyYy9hdWRpby9mZm1wZWdfYXVkaW9fcHJvY2Vzc29yX3N3cmVzYW1wbGUuaCB8 ICAxOCArLQorIHNyYy9hdWRpby9mZm1wZWdfYXVkaW9fcmVhZGVyLmggICAgICAgICAgICAgICB8 IDE5NyArKysrKysrKystLS0tLS0tLS0KKyB0ZXN0cy9DTWFrZUxpc3RzLnR4dCAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgIDYgKworIDggZmlsZXMgY2hhbmdlZCwgMTIyIGluc2VydGlvbnMo KyksIDE5OSBkZWxldGlvbnMoLSkKKyBkZWxldGUgbW9kZSAxMDA2NDQgc3JjL2F1ZGlvL2ZmbXBl Z19hdWRpb19wcm9jZXNzb3JfYXZyZXNhbXBsZS5oCisKK2RpZmYgLS1naXQgYS9DTWFrZUxpc3Rz LnR4dCBiL0NNYWtlTGlzdHMudHh0CitpbmRleCBmOGQ2YTMyLi40ZGEyNDA1IDEwMDY0NAorLS0t IGEvQ01ha2VMaXN0cy50eHQKKysrKyBiL0NNYWtlTGlzdHMudHh0CitAQCAtODQsOSArODQsNiBA QCBmaW5kX3BhY2thZ2UoRkZtcGVnKQorIGlmKEZGTVBFR19MSUJSQVJJRVMpCisgCWNtYWtlX3B1 c2hfY2hlY2tfc3RhdGUoUkVTRVQpCisgCXNldChDTUFLRV9SRVFVSVJFRF9MSUJSQVJJRVMgJHtG Rk1QRUdfTElCUkFSSUVTfSAke0NNQUtFX1RIUkVBRF9MSUJTX0lOSVR9IC1sbSkKKy0JY2hlY2tf ZnVuY3Rpb25fZXhpc3RzKGF2X3BhY2tldF91bnJlZiBIQVZFX0FWX1BBQ0tFVF9VTlJFRikKKy0J Y2hlY2tfZnVuY3Rpb25fZXhpc3RzKGF2X2ZyYW1lX2FsbG9jIEhBVkVfQVZfRlJBTUVfQUxMT0Mp CistCWNoZWNrX2Z1bmN0aW9uX2V4aXN0cyhhdl9mcmFtZV9mcmVlIEhBVkVfQVZfRlJBTUVfRlJF RSkKKyAJY21ha2VfcG9wX2NoZWNrX3N0YXRlKCkKKyBlbmRpZigpCisKK0BAIC0xNjMsMTQgKzE2 MCwxMSBAQCBtZXNzYWdlKFNUQVRVUyAiVXNpbmcgJHtGRlRfTElCfSBmb3IgRkZUIGNhbGN1bGF0 aW9ucyIpCisgaWYoTk9UIEFVRElPX1BST0NFU1NPUl9MSUIpCisgCWlmKEZGTVBFR19MSUJTV1JF U0FNUExFX0ZPVU5EKQorIAkJc2V0KEFVRElPX1BST0NFU1NPUl9MSUIgInN3cmVzYW1wbGUiKQor LQllbHNlaWYoRkZNUEVHX0xJQkFWUkVTQU1QTEVfRk9VTkQpCistCQlzZXQoQVVESU9fUFJPQ0VT U09SX0xJQiAiYXZyZXNhbXBsZSIpCisgCWVuZGlmKCkKKyBlbmRpZigpCisKKyBpZihBVURJT19Q Uk9DRVNTT1JfTElCIFNUUkVRVUFMICJzd3Jlc2FtcGxlIikKKyAJaWYoRkZNUEVHX0xJQlNXUkVT QU1QTEVfRk9VTkQpCistCQlzZXQoVVNFX0FWUkVTQU1QTEUgT0ZGKQorIAkJc2V0KFVTRV9TV1JF U0FNUExFIE9OKQorIAkJc2V0KEFVRElPX1BST0NFU1NPUl9MSUJSQVJJRVMgJHtGRk1QRUdfTElC U1dSRVNBTVBMRV9MSUJSQVJJRVN9KQorIAkJc2V0KEFVRElPX1BST0NFU1NPUl9JTkNMVURFX0RJ UlMgJHtGRk1QRUdfTElCU1dSRVNBTVBMRV9JTkNMVURFX0RJUlN9KQorQEAgLTE3OCwxNiArMTcy LDYgQEAgaWYoQVVESU9fUFJPQ0VTU09SX0xJQiBTVFJFUVVBTCAic3dyZXNhbXBsZSIpCisgCQlt ZXNzYWdlKEZBVEFMX0VSUk9SICJTZWxlY3RlZCAke0FVRElPX1BST0NFU1NPUl9MSUJ9IGZvciBh dWRpbyBwcm9jZXNzaW5nLCBidXQgdGhlIGxpYnJhcnkgaXMgbm90IGZvdW5kIikKKyAJZW5kaWYo KQorIAltZXNzYWdlKFNUQVRVUyAiVXNpbmcgJHtBVURJT19QUk9DRVNTT1JfTElCfSBmb3IgYXVk aW8gY29udmVyc2lvbiIpCistZWxzZWlmKEFVRElPX1BST0NFU1NPUl9MSUIgU1RSRVFVQUwgImF2 cmVzYW1wbGUiKQorLQlpZihGRk1QRUdfTElCQVZSRVNBTVBMRV9GT1VORCkKKy0JCXNldChVU0Vf QVZSRVNBTVBMRSBPTikKKy0JCXNldChVU0VfU1dSRVNBTVBMRSBPRkYpCistCQlzZXQoQVVESU9f UFJPQ0VTU09SX0xJQlJBUklFUyAke0ZGTVBFR19MSUJBVlJFU0FNUExFX0xJQlJBUklFU30pCist CQlzZXQoQVVESU9fUFJPQ0VTU09SX0lOQ0xVREVfRElSUyAke0ZGTVBFR19MSUJBVlJFU0FNUExF X0lOQ0xVREVfRElSU30pCistCWVsc2UoKQorLQkJbWVzc2FnZShGQVRBTF9FUlJPUiAiU2VsZWN0 ZWQgJHtBVURJT19QUk9DRVNTT1JfTElCfSBmb3IgYXVkaW8gcHJvY2Vzc2luZywgYnV0IHRoZSBs aWJyYXJ5IGlzIG5vdCBmb3VuZCIpCistCWVuZGlmKCkKKy0JbWVzc2FnZShTVEFUVVMgIlVzaW5n ICR7QVVESU9fUFJPQ0VTU09SX0xJQn0gZm9yIGF1ZGlvIGNvbnZlcnNpb24iKQorIGVsc2UoKQor IAltZXNzYWdlKFNUQVRVUyAiQnVpbGRpbmcgd2l0aG91dCBhdWRpbyBjb252ZXJzaW9uIHN1cHBv cnQsIHBsZWFzZSBpbnN0YWxsIEZGbXBlZyB3aXRoIGxpYnN3cmVzYW1wbGUiKQorIGVuZGlmKCkK K2RpZmYgLS1naXQgYS9wYWNrYWdlL2J1aWxkLnNoIGIvcGFja2FnZS9idWlsZC5zaAoraW5kZXgg ZGE2MzFhZS4uYjQxZDM2ZSAxMDA3NTUKKy0tLSBhL3BhY2thZ2UvYnVpbGQuc2gKKysrKyBiL3Bh Y2thZ2UvYnVpbGQuc2gKK0BAIC03LDggKzcsOCBAQCBzZXQgLWV1eAorCisgQkFTRV9ESVI9JChj ZCAkKGRpcm5hbWUgJDApLy4uICYmIHB3ZCkKKworLUZGTVBFR19WRVJTSU9OPTQuNC4xCistRkZN UEVHX0JVSUxEX1RBRz12NC40LjEtMQorK0ZGTVBFR19WRVJTSU9OPTUuMS4yCisrRkZNUEVHX0JV SUxEX1RBRz12JHtGRk1QRUdfVkVSU0lPTn0tMQorCisgVE1QX0JVSUxEX0RJUj0kQkFTRV9ESVIv JChta3RlbXAgLWQgYnVpbGQuWFhYWFhYWFgpCisgdHJhcCAncm0gLXJmICRUTVBfQlVJTERfRElS JyBFWElUCitkaWZmIC0tZ2l0IGEvc3JjL2F1ZGlvL2ZmbXBlZ19hdWRpb19wcm9jZXNzb3IuaCBi L3NyYy9hdWRpby9mZm1wZWdfYXVkaW9fcHJvY2Vzc29yLmgKK2luZGV4IDc2MjhmYzcuLjM5ZjRm NmQgMTAwNjQ0CistLS0gYS9zcmMvYXVkaW8vZmZtcGVnX2F1ZGlvX3Byb2Nlc3Nvci5oCisrKysg Yi9zcmMvYXVkaW8vZmZtcGVnX2F1ZGlvX3Byb2Nlc3Nvci5oCitAQCAtMTAsOCArMTAsNiBAQAor CisgI2lmIGRlZmluZWQoVVNFX1NXUkVTQU1QTEUpCisgI2luY2x1ZGUgImF1ZGlvL2ZmbXBlZ19h dWRpb19wcm9jZXNzb3Jfc3dyZXNhbXBsZS5oIgorLSNlbGlmIGRlZmluZWQoVVNFX0FWUkVTQU1Q TEUpCistI2luY2x1ZGUgImF1ZGlvL2ZmbXBlZ19hdWRpb19wcm9jZXNzb3JfYXZyZXNhbXBsZS5o IgorICNlbHNlCisgI2Vycm9yICJubyBhdWRpbyBwcm9jZXNzaW5nIGxpYnJhcnkiCisgI2VuZGlm CitkaWZmIC0tZ2l0IGEvc3JjL2F1ZGlvL2ZmbXBlZ19hdWRpb19wcm9jZXNzb3JfYXZyZXNhbXBs ZS5oIGIvc3JjL2F1ZGlvL2ZmbXBlZ19hdWRpb19wcm9jZXNzb3JfYXZyZXNhbXBsZS5oCitkZWxl dGVkIGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IGJkODVmOTIuLjAwMDAwMDAKKy0tLSBhL3NyYy9h dWRpby9mZm1wZWdfYXVkaW9fcHJvY2Vzc29yX2F2cmVzYW1wbGUuaAorKysrIC9kZXYvbnVsbAor QEAgLTEsNzIgKzAsMCBAQAorLS8vIENvcHlyaWdodCAoQykgMjAxNiAgTHVrYXMgTGFsaW5za3kK Ky0vLyBEaXN0cmlidXRlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UsIHNlZSB0aGUgTElDRU5TRSBm aWxlIGZvciBkZXRhaWxzLgorLQorLSNpZm5kZWYgQ0hST01BUFJJTlRfQVVESU9fRkZNUEVHX0FV RElPX1BST0NFU1NPUl9BVlJFU0FNUExFX0hfCistI2RlZmluZSBDSFJPTUFQUklOVF9BVURJT19G Rk1QRUdfQVVESU9fUFJPQ0VTU09SX0FWUkVTQU1QTEVfSF8KKy0KKy1leHRlcm4gIkMiIHsKKy0j aW5jbHVkZSA8bGliYXZyZXNhbXBsZS9hdnJlc2FtcGxlLmg+CistfQorLQorLW5hbWVzcGFjZSBj aHJvbWFwcmludCB7CistCistY2xhc3MgRkZtcGVnQXVkaW9Qcm9jZXNzb3IgeworLXB1YmxpYzoK Ky0JRkZtcGVnQXVkaW9Qcm9jZXNzb3IoKSB7CistCQltX3Jlc2FtcGxlX2N0eCA9IGF2cmVzYW1w bGVfYWxsb2NfY29udGV4dCgpOworLQl9CistCistCX5GRm1wZWdBdWRpb1Byb2Nlc3NvcigpIHsK Ky0JCWF2cmVzYW1wbGVfZnJlZSgmbV9yZXNhbXBsZV9jdHgpOworLQl9CistCistCXZvaWQgU2V0 Q29tcGF0aWJsZU1vZGUoKSB7CistCQlhdl9vcHRfc2V0X2ludChtX3Jlc2FtcGxlX2N0eCwgImZp bHRlcl9zaXplIiwgMTYsIDApOworLQkJYXZfb3B0X3NldF9pbnQobV9yZXNhbXBsZV9jdHgsICJw aGFzZV9zaGlmdCIsIDgsIDApOworLQkJYXZfb3B0X3NldF9pbnQobV9yZXNhbXBsZV9jdHgsICJs aW5lYXJfaW50ZXJwIiwgMSwgMCk7CistCQlhdl9vcHRfc2V0X2RvdWJsZShtX3Jlc2FtcGxlX2N0 eCwgImN1dG9mZiIsIDAuOCwgMCk7CistCX0KKy0KKy0Jdm9pZCBTZXRJbnB1dENoYW5uZWxMYXlv dXQoaW50NjRfdCBjaGFubmVsX2xheW91dCkgeworLQkJYXZfb3B0X3NldF9pbnQobV9yZXNhbXBs ZV9jdHgsICJpbl9jaGFubmVsX2xheW91dCIsIGNoYW5uZWxfbGF5b3V0LCAwKTsKKy0JfQorLQor LQl2b2lkIFNldElucHV0U2FtcGxlRm9ybWF0KEFWU2FtcGxlRm9ybWF0IHNhbXBsZV9mb3JtYXQp IHsKKy0JCWF2X29wdF9zZXRfaW50KG1fcmVzYW1wbGVfY3R4LCAiaW5fc2FtcGxlX2ZtdCIsIHNh bXBsZV9mb3JtYXQsIDApOworLQl9CistCistCXZvaWQgU2V0SW5wdXRTYW1wbGVSYXRlKGludCBz YW1wbGVfcmF0ZSkgeworLQkJYXZfb3B0X3NldF9pbnQobV9yZXNhbXBsZV9jdHgsICJpbl9zYW1w bGVfcmF0ZSIsIHNhbXBsZV9yYXRlLCAwKTsKKy0JfQorLQorLQl2b2lkIFNldE91dHB1dENoYW5u ZWxMYXlvdXQoaW50NjRfdCBjaGFubmVsX2xheW91dCkgeworLQkJYXZfb3B0X3NldF9pbnQobV9y ZXNhbXBsZV9jdHgsICJvdXRfY2hhbm5lbF9sYXlvdXQiLCBjaGFubmVsX2xheW91dCwgMCk7Cist CX0KKy0KKy0Jdm9pZCBTZXRPdXRwdXRTYW1wbGVGb3JtYXQoQVZTYW1wbGVGb3JtYXQgc2FtcGxl X2Zvcm1hdCkgeworLQkJYXZfb3B0X3NldF9pbnQobV9yZXNhbXBsZV9jdHgsICJvdXRfc2FtcGxl X2ZtdCIsIHNhbXBsZV9mb3JtYXQsIDApOworLQl9CistCistCXZvaWQgU2V0T3V0cHV0U2FtcGxl UmF0ZShpbnQgc2FtcGxlX3JhdGUpIHsKKy0JCWF2X29wdF9zZXRfaW50KG1fcmVzYW1wbGVfY3R4 LCAib3V0X3NhbXBsZV9mbXQiLCBzYW1wbGVfcmF0ZSwgMCk7CistCX0KKy0KKy0JaW50IEluaXQo KSB7CistCQlyZXR1cm4gYXZyZXNhbXBsZV9vcGVuKG1fcmVzYW1wbGVfY3R4KTsKKy0JfQorLQor LQlpbnQgQ29udmVydCh1aW50OF90ICoqb3V0LCBpbnQgb3V0X2NvdW50LCBjb25zdCB1aW50OF90 ICoqaW4sIGludCBpbl9jb3VudCkgeworLQkJcmV0dXJuIGF2cmVzYW1wbGVfY29udmVydChtX3Jl c2FtcGxlX2N0eCwgb3V0LCAwLCBvdXRfY291bnQsICh1aW50OF90ICoqKSBpbiwgMCwgaW5fY291 bnQpOworLQl9CistCistCWludCBGbHVzaCh1aW50OF90ICoqb3V0LCBpbnQgb3V0X2NvdW50KSB7 CistCQlyZXR1cm4gYXZyZXNhbXBsZV9yZWFkKG1fcmVzYW1wbGVfY3R4LCBvdXQsIG91dF9jb3Vu dCk7CistCX0KKy0KKy1wcml2YXRlOgorLQlBVkF1ZGlvUmVzYW1wbGVDb250ZXh0ICptX3Jlc2Ft cGxlX2N0eCA9IG51bGxwdHI7CistfTsKKy0KKy19OyAvLyBuYW1lc3BhY2UgY2hyb21hcHJpbnQK Ky0KKy0jZW5kaWYKK2RpZmYgLS1naXQgYS9zcmMvYXVkaW8vZmZtcGVnX2F1ZGlvX3Byb2Nlc3Nv cl9zd3Jlc2FtcGxlLmggYi9zcmMvYXVkaW8vZmZtcGVnX2F1ZGlvX3Byb2Nlc3Nvcl9zd3Jlc2Ft cGxlLmgKK2luZGV4IGI4NjI2NmIuLmIxZDRiZWEgMTAwNjQ0CistLS0gYS9zcmMvYXVkaW8vZmZt cGVnX2F1ZGlvX3Byb2Nlc3Nvcl9zd3Jlc2FtcGxlLmgKKysrKyBiL3NyYy9hdWRpby9mZm1wZWdf YXVkaW9fcHJvY2Vzc29yX3N3cmVzYW1wbGUuaAorQEAgLTI4LDMwICsyOCwyOCBAQCBwdWJsaWM6 CisgCQlhdl9vcHRfc2V0X2RvdWJsZShtX3N3cl9jdHgsICJjdXRvZmYiLCAwLjgsIDApOworIAl9 CisKKy0Jdm9pZCBTZXRJbnB1dENoYW5uZWxMYXlvdXQoaW50NjRfdCBjaGFubmVsX2xheW91dCkg eworLQkJYXZfb3B0X3NldF9pbnQobV9zd3JfY3R4LCAiaWNsIiwgY2hhbm5lbF9sYXlvdXQsIDAp OworLQkJYXZfb3B0X3NldF9pbnQobV9zd3JfY3R4LCAiaWNoIiwgYXZfZ2V0X2NoYW5uZWxfbGF5 b3V0X25iX2NoYW5uZWxzKGNoYW5uZWxfbGF5b3V0KSwgMCk7CisrCXZvaWQgU2V0SW5wdXRDaGFu bmVsTGF5b3V0KEFWQ2hhbm5lbExheW91dCAqY2hhbm5lbF9sYXlvdXQpIHsKKysJCWF2X29wdF9z ZXRfaW50KG1fc3dyX2N0eCwgImluX2NoYW5uZWxfbGF5b3V0IiwgY2hhbm5lbF9sYXlvdXQtPnUu bWFzaywgMCk7CisgCX0KKworIAl2b2lkIFNldElucHV0U2FtcGxlRm9ybWF0KEFWU2FtcGxlRm9y bWF0IHNhbXBsZV9mb3JtYXQpIHsKKy0JCWF2X29wdF9zZXRfaW50KG1fc3dyX2N0eCwgImlzZiIs IHNhbXBsZV9mb3JtYXQsIDApOworKwkJYXZfb3B0X3NldF9zYW1wbGVfZm10KG1fc3dyX2N0eCwg ImluX3NhbXBsZV9mbXQiLCBzYW1wbGVfZm9ybWF0LCAwKTsKKyAJfQorCisgCXZvaWQgU2V0SW5w dXRTYW1wbGVSYXRlKGludCBzYW1wbGVfcmF0ZSkgeworLQkJYXZfb3B0X3NldF9pbnQobV9zd3Jf Y3R4LCAiaXNyIiwgc2FtcGxlX3JhdGUsIDApOworKwkJYXZfb3B0X3NldF9pbnQobV9zd3JfY3R4 LCAiaW5fc2FtcGxlX3JhdGUiLCBzYW1wbGVfcmF0ZSwgMCk7CisgCX0KKworLQl2b2lkIFNldE91 dHB1dENoYW5uZWxMYXlvdXQoaW50NjRfdCBjaGFubmVsX2xheW91dCkgeworLQkJYXZfb3B0X3Nl dF9pbnQobV9zd3JfY3R4LCAib2NsIiwgY2hhbm5lbF9sYXlvdXQsIDApOworLQkJYXZfb3B0X3Nl dF9pbnQobV9zd3JfY3R4LCAib2NoIiwgYXZfZ2V0X2NoYW5uZWxfbGF5b3V0X25iX2NoYW5uZWxz KGNoYW5uZWxfbGF5b3V0KSwgMCk7CisrCXZvaWQgU2V0T3V0cHV0Q2hhbm5lbExheW91dChBVkNo YW5uZWxMYXlvdXQgKmNoYW5uZWxfbGF5b3V0KSB7CisrCQlhdl9vcHRfc2V0X2ludChtX3N3cl9j dHgsICJvdXRfY2hhbm5lbF9sYXlvdXQiLCBjaGFubmVsX2xheW91dC0+dS5tYXNrLCAwKTsKKyAJ fQorCisgCXZvaWQgU2V0T3V0cHV0U2FtcGxlRm9ybWF0KEFWU2FtcGxlRm9ybWF0IHNhbXBsZV9m b3JtYXQpIHsKKy0JCWF2X29wdF9zZXRfaW50KG1fc3dyX2N0eCwgIm9zZiIsIHNhbXBsZV9mb3Jt YXQsIDApOworKwkJYXZfb3B0X3NldF9zYW1wbGVfZm10KG1fc3dyX2N0eCwgIm91dF9zYW1wbGVf Zm10Iiwgc2FtcGxlX2Zvcm1hdCwgMCk7CisgCX0KKworIAl2b2lkIFNldE91dHB1dFNhbXBsZVJh dGUoaW50IHNhbXBsZV9yYXRlKSB7CistCQlhdl9vcHRfc2V0X2ludChtX3N3cl9jdHgsICJvc3Ii LCBzYW1wbGVfcmF0ZSwgMCk7CisrCQlhdl9vcHRfc2V0X2ludChtX3N3cl9jdHgsICJvdXRfc2Ft cGxlX3JhdGUiLCBzYW1wbGVfcmF0ZSwgMCk7CisgCX0KKworIAlpbnQgSW5pdCgpIHsKK2RpZmYg LS1naXQgYS9zcmMvYXVkaW8vZmZtcGVnX2F1ZGlvX3JlYWRlci5oIGIvc3JjL2F1ZGlvL2ZmbXBl Z19hdWRpb19yZWFkZXIuaAoraW5kZXggNTU1MDE2NC4uMWM2YjM0NiAxMDA2NDQKKy0tLSBhL3Ny Yy9hdWRpby9mZm1wZWdfYXVkaW9fcmVhZGVyLmgKKysrKyBiL3NyYy9hdWRpby9mZm1wZWdfYXVk aW9fcmVhZGVyLmgKK0BAIC02Miw3ICs2Miw3IEBAIHB1YmxpYzoKKyAJYm9vbCBSZWFkKGNvbnN0 IGludDE2X3QgKipkYXRhLCBzaXplX3QgKnNpemUpOworCisgCWJvb2wgSXNPcGVuKCkgY29uc3Qg eyByZXR1cm4gbV9vcGVuZWQ7IH0KKy0JYm9vbCBJc0ZpbmlzaGVkKCkgY29uc3QgeyByZXR1cm4g bV9maW5pc2hlZCAmJiAhbV9nb3RfZnJhbWU7IH0KKysJYm9vbCBJc0ZpbmlzaGVkKCkgY29uc3Qg eyByZXR1cm4gIW1faGFzX21vcmVfcGFja2V0cyAmJiAhbV9oYXNfbW9yZV9mcmFtZXM7IH0KKwor IAlzdGQ6OnN0cmluZyBHZXRFcnJvcigpIGNvbnN0IHsgcmV0dXJuIG1fZXJyb3I7IH0KKyAJaW50 IEdldEVycm9yQ29kZSgpIGNvbnN0IHsgcmV0dXJuIG1fZXJyb3JfY29kZTsgfQorQEAgLTc0LDIw ICs3NCwxOSBAQCBwcml2YXRlOgorIAl1aW50OF90ICptX2NvbnZlcnRfYnVmZmVyWzFdID0geyBu dWxscHRyIH07CisgCWludCBtX2NvbnZlcnRfYnVmZmVyX25iX3NhbXBsZXMgPSAwOworCistCUFW SW5wdXRGb3JtYXQgKm1faW5wdXRfZm10ID0gbnVsbHB0cjsKKysJY29uc3QgQVZJbnB1dEZvcm1h dCAqbV9pbnB1dF9mbXQgPSBudWxscHRyOworIAlBVkRpY3Rpb25hcnkgKm1faW5wdXRfb3B0cyA9 IG51bGxwdHI7CisKKyAJQVZGb3JtYXRDb250ZXh0ICptX2Zvcm1hdF9jdHggPSBudWxscHRyOwor IAlBVkNvZGVjQ29udGV4dCAqbV9jb2RlY19jdHggPSBudWxscHRyOworLQlBVkZyYW1lICptX2Zy YW1lID0gbnVsbHB0cjsKKyAJaW50IG1fc3RyZWFtX2luZGV4ID0gLTE7CisgCXN0ZDo6c3RyaW5n IG1fZXJyb3I7CisgCWludCBtX2Vycm9yX2NvZGUgPSAwOworLQlib29sIG1fZmluaXNoZWQgPSBm YWxzZTsKKyAJYm9vbCBtX29wZW5lZCA9IGZhbHNlOworLQlpbnQgbV9nb3RfZnJhbWUgPSAwOwor LQlBVlBhY2tldCBtX3BhY2tldDsKKy0JQVZQYWNrZXQgbV9wYWNrZXQwOworKwlib29sIG1faGFz X21vcmVfcGFja2V0cyA9IHRydWU7CisrCWJvb2wgbV9oYXNfbW9yZV9mcmFtZXMgPSB0cnVlOwor KwlBVlBhY2tldCAqbV9wYWNrZXQgPSBudWxscHRyOworKwlBVkZyYW1lICptX2ZyYW1lID0gbnVs bHB0cjsKKworIAlpbnQgbV9vdXRwdXRfc2FtcGxlX3JhdGUgPSAwOworIAlpbnQgbV9vdXRwdXRf Y2hhbm5lbHMgPSAwOworQEAgLTk4LDE5ICs5NywxMiBAQCBwcml2YXRlOgorCisgaW5saW5lIEZG bXBlZ0F1ZGlvUmVhZGVyOjpGRm1wZWdBdWRpb1JlYWRlcigpIHsKKyAJYXZfbG9nX3NldF9sZXZl bChBVl9MT0dfUVVJRVQpOworLQorLQlhdl9pbml0X3BhY2tldCgmbV9wYWNrZXQpOworLQltX3Bh Y2tldC5kYXRhID0gbnVsbHB0cjsKKy0JbV9wYWNrZXQuc2l6ZSA9IDA7CistCistCW1fcGFja2V0 MCA9IG1fcGFja2V0OworIH0KKworIGlubGluZSBGRm1wZWdBdWRpb1JlYWRlcjo6fkZGbXBlZ0F1 ZGlvUmVhZGVyKCkgeworIAlDbG9zZSgpOworIAlhdl9kaWN0X2ZyZWUoJm1faW5wdXRfb3B0cyk7 CisgCWF2X2ZyZWVwKCZtX2NvbnZlcnRfYnVmZmVyWzBdKTsKKy0JYXZfcGFja2V0X3VucmVmKCZt X3BhY2tldDApOworIH0KKworIGlubGluZSBib29sIEZGbXBlZ0F1ZGlvUmVhZGVyOjpTZXRJbnB1 dEZvcm1hdChjb25zdCBjaGFyICpuYW1lKSB7CitAQCAtMTM1LDExICsxMjcsMTAgQEAgaW5saW5l IGJvb2wgRkZtcGVnQXVkaW9SZWFkZXI6Ok9wZW4oY29uc3Qgc3RkOjpzdHJpbmcgJmZpbGVfbmFt ZSkgeworCisgCUNsb3NlKCk7CisKKy0gICAgYXZfaW5pdF9wYWNrZXQoJm1fcGFja2V0KTsKKy0J bV9wYWNrZXQuZGF0YSA9IG51bGxwdHI7CistCW1fcGFja2V0LnNpemUgPSAwOworLQorLQltX3Bh Y2tldDAgPSBtX3BhY2tldDsKKysJbV9wYWNrZXQgPSBhdl9wYWNrZXRfYWxsb2MoKTsKKysJaWYg KCFtX3BhY2tldCkgeworKwkJcmV0dXJuIGZhbHNlOworKwl9CisKKyAJcmV0ID0gYXZmb3JtYXRf b3Blbl9pbnB1dCgmbV9mb3JtYXRfY3R4LCBmaWxlX25hbWUuY19zdHIoKSwgbV9pbnB1dF9mbXQs ICZtX2lucHV0X29wdHMpOworIAlpZiAocmV0IDwgMCkgeworQEAgLTE1MywyNiArMTQ0LDMxIEBA IGlubGluZSBib29sIEZGbXBlZ0F1ZGlvUmVhZGVyOjpPcGVuKGNvbnN0IHN0ZDo6c3RyaW5nICZm aWxlX25hbWUpIHsKKyAJCXJldHVybiBmYWxzZTsKKyAJfQorCistCUFWQ29kZWMgKmNvZGVjOwor Kwljb25zdCBBVkNvZGVjICpjb2RlYzsKKyAJcmV0ID0gYXZfZmluZF9iZXN0X3N0cmVhbShtX2Zv cm1hdF9jdHgsIEFWTUVESUFfVFlQRV9BVURJTywgLTEsIC0xLCAmY29kZWMsIDApOworIAlpZiAo cmV0IDwgMCkgeworIAkJU2V0RXJyb3IoIkNvdWxkIG5vdCBmaW5kIGFueSBhdWRpbyBzdHJlYW0g aW4gdGhlIGZpbGUiLCByZXQpOworIAkJcmV0dXJuIGZhbHNlOworIAl9CisgCW1fc3RyZWFtX2lu ZGV4ID0gcmV0OworKwlhdXRvIHN0cmVhbSA9IG1fZm9ybWF0X2N0eC0+c3RyZWFtc1ttX3N0cmVh bV9pbmRleF07CisKKy0JbV9jb2RlY19jdHggPSBtX2Zvcm1hdF9jdHgtPnN0cmVhbXNbbV9zdHJl YW1faW5kZXhdLT5jb2RlYzsKKysJbV9jb2RlY19jdHggPSBhdmNvZGVjX2FsbG9jX2NvbnRleHQz KGNvZGVjKTsKKyAJbV9jb2RlY19jdHgtPnJlcXVlc3Rfc2FtcGxlX2ZtdCA9IEFWX1NBTVBMRV9G TVRfUzE2OworCisrCXJldCA9IGF2Y29kZWNfcGFyYW1ldGVyc190b19jb250ZXh0KG1fY29kZWNf Y3R4LCBzdHJlYW0tPmNvZGVjcGFyKTsKKysJaWYgKHJldCA8IDApIHsKKysJCVNldEVycm9yKCJD b3VsZCBub3QgY29weSB0aGUgc3RyZWFtIHBhcmFtZXRlcnMiLCByZXQpOworKwkJcmV0dXJuIGZh bHNlOworKwl9CisrCisgCXJldCA9IGF2Y29kZWNfb3BlbjIobV9jb2RlY19jdHgsIGNvZGVjLCBu dWxscHRyKTsKKyAJaWYgKHJldCA8IDApIHsKKyAJCVNldEVycm9yKCJDb3VsZCBub3Qgb3BlbiB0 aGUgY29kZWMiLCByZXQpOworIAkJcmV0dXJuIGZhbHNlOworIAl9CisKKy0JaWYgKCFtX2NvZGVj X2N0eC0+Y2hhbm5lbF9sYXlvdXQpIHsKKy0JCW1fY29kZWNfY3R4LT5jaGFubmVsX2xheW91dCA9 IGF2X2dldF9kZWZhdWx0X2NoYW5uZWxfbGF5b3V0KG1fY29kZWNfY3R4LT5jaGFubmVscyk7Cist CX0KKysJYXZfZHVtcF9mb3JtYXQobV9mb3JtYXRfY3R4LCAwLCAiZm9vIiwgMCk7CisKKyAJbV9m cmFtZSA9IGF2X2ZyYW1lX2FsbG9jKCk7CisgCWlmICghbV9mcmFtZSkgeworQEAgLTE4MywxOSAr MTc5LDIzIEBAIGlubGluZSBib29sIEZGbXBlZ0F1ZGlvUmVhZGVyOjpPcGVuKGNvbnN0IHN0ZDo6 c3RyaW5nICZmaWxlX25hbWUpIHsKKyAJCW1fb3V0cHV0X3NhbXBsZV9yYXRlID0gbV9jb2RlY19j dHgtPnNhbXBsZV9yYXRlOworIAl9CisKKy0JaWYgKCFtX291dHB1dF9jaGFubmVscykgeworLQkJ bV9vdXRwdXRfY2hhbm5lbHMgPSBtX2NvZGVjX2N0eC0+Y2hhbm5lbHM7CisrCUFWQ2hhbm5lbExh eW91dCBvdXRwdXRfY2hhbm5lbF9sYXlvdXQ7CisrCWlmIChtX291dHB1dF9jaGFubmVscykgewor KwkJYXZfY2hhbm5lbF9sYXlvdXRfZGVmYXVsdCgmb3V0cHV0X2NoYW5uZWxfbGF5b3V0LCBtX291 dHB1dF9jaGFubmVscyk7CisrCX0gZWxzZSB7CisrCQltX291dHB1dF9jaGFubmVscyA9IG1fY29k ZWNfY3R4LT5jaF9sYXlvdXQubmJfY2hhbm5lbHM7CisrCQlhdl9jaGFubmVsX2xheW91dF9kZWZh dWx0KCZvdXRwdXRfY2hhbm5lbF9sYXlvdXQsIG1fb3V0cHV0X2NoYW5uZWxzKTsKKyAJfQorCist CWlmIChtX2NvZGVjX2N0eC0+c2FtcGxlX2ZtdCAhPSBBVl9TQU1QTEVfRk1UX1MxNiB8fCBtX2Nv ZGVjX2N0eC0+Y2hhbm5lbHMgIT0gbV9vdXRwdXRfY2hhbm5lbHMgfHwgbV9jb2RlY19jdHgtPnNh bXBsZV9yYXRlICE9IG1fb3V0cHV0X3NhbXBsZV9yYXRlKSB7CisrCWlmIChtX2NvZGVjX2N0eC0+ c2FtcGxlX2ZtdCAhPSBBVl9TQU1QTEVfRk1UX1MxNiB8fCBtX2NvZGVjX2N0eC0+Y2hfbGF5b3V0 Lm5iX2NoYW5uZWxzICE9IG1fb3V0cHV0X2NoYW5uZWxzIHx8IG1fY29kZWNfY3R4LT5zYW1wbGVf cmF0ZSAhPSBtX291dHB1dF9zYW1wbGVfcmF0ZSkgeworIAkJbV9jb252ZXJ0ZXIucmVzZXQobmV3 IEZGbXBlZ0F1ZGlvUHJvY2Vzc29yKCkpOworIAkJbV9jb252ZXJ0ZXItPlNldENvbXBhdGlibGVN b2RlKCk7CisgCQltX2NvbnZlcnRlci0+U2V0SW5wdXRTYW1wbGVGb3JtYXQobV9jb2RlY19jdHgt PnNhbXBsZV9mbXQpOworIAkJbV9jb252ZXJ0ZXItPlNldElucHV0U2FtcGxlUmF0ZShtX2NvZGVj X2N0eC0+c2FtcGxlX3JhdGUpOworLQkJbV9jb252ZXJ0ZXItPlNldElucHV0Q2hhbm5lbExheW91 dChtX2NvZGVjX2N0eC0+Y2hhbm5lbF9sYXlvdXQpOworKwkJbV9jb252ZXJ0ZXItPlNldElucHV0 Q2hhbm5lbExheW91dCgmKG1fY29kZWNfY3R4LT5jaF9sYXlvdXQpKTsKKyAJCW1fY29udmVydGVy LT5TZXRPdXRwdXRTYW1wbGVGb3JtYXQoQVZfU0FNUExFX0ZNVF9TMTYpOworIAkJbV9jb252ZXJ0 ZXItPlNldE91dHB1dFNhbXBsZVJhdGUobV9vdXRwdXRfc2FtcGxlX3JhdGUpOworLQkJbV9jb252 ZXJ0ZXItPlNldE91dHB1dENoYW5uZWxMYXlvdXQoYXZfZ2V0X2RlZmF1bHRfY2hhbm5lbF9sYXlv dXQobV9vdXRwdXRfY2hhbm5lbHMpKTsKKysJCW1fY29udmVydGVyLT5TZXRPdXRwdXRDaGFubmVs TGF5b3V0KCZvdXRwdXRfY2hhbm5lbF9sYXlvdXQpOworIAkJYXV0byByZXQgPSBtX2NvbnZlcnRl ci0+SW5pdCgpOworIAkJaWYgKHJldCAhPSAwKSB7CisgCQkJU2V0RXJyb3IoIkNvdWxkIG5vdCBj cmVhdGUgYW4gYXVkaW8gY29udmVydGVyIGluc3RhbmNlIiwgcmV0KTsKK0BAIC0yMDMsMTAgKzIw MywxMSBAQCBpbmxpbmUgYm9vbCBGRm1wZWdBdWRpb1JlYWRlcjo6T3Blbihjb25zdCBzdGQ6OnN0 cmluZyAmZmlsZV9uYW1lKSB7CisgCQl9CisgCX0KKworKwlhdl9jaGFubmVsX2xheW91dF91bmlu aXQoJm91dHB1dF9jaGFubmVsX2xheW91dCk7CisrCisgCW1fb3BlbmVkID0gdHJ1ZTsKKy0JbV9m aW5pc2hlZCA9IGZhbHNlOworLQltX2dvdF9mcmFtZSA9IDA7CistCW1fbmJfcGFja2V0cyA9IDA7 CisrCW1faGFzX21vcmVfcGFja2V0cyA9IHRydWU7CisrCW1faGFzX21vcmVfZnJhbWVzID0gdHJ1 ZTsKKyAJbV9kZWNvZGVfZXJyb3IgPSAwOworCisgCXJldHVybiB0cnVlOworQEAgLTIxNCw2ICsy MTUsNyBAQCBpbmxpbmUgYm9vbCBGRm1wZWdBdWRpb1JlYWRlcjo6T3Blbihjb25zdCBzdGQ6OnN0 cmluZyAmZmlsZV9uYW1lKSB7CisKKyBpbmxpbmUgdm9pZCBGRm1wZWdBdWRpb1JlYWRlcjo6Q2xv c2UoKSB7CisgCWF2X2ZyYW1lX2ZyZWUoJm1fZnJhbWUpOworKwlhdl9wYWNrZXRfZnJlZSgmbV9w YWNrZXQpOworCisgCW1fc3RyZWFtX2luZGV4ID0gLTE7CisKK0BAIC0yNTIsOTEgKzI1NCw5OCBA QCBpbmxpbmUgYm9vbCBGRm1wZWdBdWRpb1JlYWRlcjo6UmVhZChjb25zdCBpbnQxNl90ICoqZGF0 YSwgc2l6ZV90ICpzaXplKSB7CisgCQlyZXR1cm4gZmFsc2U7CisgCX0KKworKwkqZGF0YSA9IG51 bGxwdHI7CisrCSpzaXplID0gMDsKKysKKyAJaW50IHJldDsKKysJYm9vbCBuZWVkc19wYWNrZXQg PSBmYWxzZTsKKyAJd2hpbGUgKHRydWUpIHsKKy0JCXdoaWxlIChtX3BhY2tldC5zaXplIDw9IDAp IHsKKy0JCQlhdl9wYWNrZXRfdW5yZWYoJm1fcGFja2V0MCk7CistCQkJYXZfaW5pdF9wYWNrZXQo Jm1fcGFja2V0KTsKKy0JCQltX3BhY2tldC5kYXRhID0gbnVsbHB0cjsKKy0JCQltX3BhY2tldC5z aXplID0gMDsKKy0JCQlyZXQgPSBhdl9yZWFkX2ZyYW1lKG1fZm9ybWF0X2N0eCwgJm1fcGFja2V0 KTsKKysJCXdoaWxlIChuZWVkc19wYWNrZXQgJiYgbV9wYWNrZXQtPnNpemUgPT0gMCkgeworKwkJ CXJldCA9IGF2X3JlYWRfZnJhbWUobV9mb3JtYXRfY3R4LCBtX3BhY2tldCk7CisgCQkJaWYgKHJl dCA8IDApIHsKKyAJCQkJaWYgKHJldCA9PSBBVkVSUk9SX0VPRikgeworLQkJCQkJbV9maW5pc2hl ZCA9IHRydWU7CisrCQkJCQluZWVkc19wYWNrZXQgPSBmYWxzZTsKKysJCQkJCW1faGFzX21vcmVf cGFja2V0cyA9IGZhbHNlOworIAkJCQkJYnJlYWs7CistCQkJCX0gZWxzZSB7CisrCQkJCX0KKysJ CQkJU2V0RXJyb3IoIkVycm9yIHJlYWRpbmcgZnJvbSB0aGUgYXVkaW8gc291cmNlIiwgcmV0KTsK KysJCQkJcmV0dXJuIGZhbHNlOworKwkJCX0KKysJCQlpZiAobV9wYWNrZXQtPnN0cmVhbV9pbmRl eCA9PSBtX3N0cmVhbV9pbmRleCkgeworKwkJCQluZWVkc19wYWNrZXQgPSBmYWxzZTsKKysJCQl9 IGVsc2UgeworKwkJCQlhdl9wYWNrZXRfdW5yZWYobV9wYWNrZXQpOworKwkJCX0KKysJCX0KKysK KysJCWlmIChtX3BhY2tldC0+c2l6ZSAhPSAwKSB7CisrCQkJcmV0ID0gYXZjb2RlY19zZW5kX3Bh Y2tldChtX2NvZGVjX2N0eCwgbV9wYWNrZXQpOworKwkJCWlmIChyZXQgPCAwKSB7CisrCQkJCWlm IChyZXQgIT0gQVZFUlJPUihFQUdBSU4pKSB7CisgCQkJCQlTZXRFcnJvcigiRXJyb3IgcmVhZGlu ZyBmcm9tIHRoZSBhdWRpbyBzb3VyY2UiLCByZXQpOworIAkJCQkJcmV0dXJuIGZhbHNlOworIAkJ CQl9CistCQkJfQorLQkJCW1fcGFja2V0MCA9IG1fcGFja2V0OworLQkJCWlmIChtX3BhY2tldC5z dHJlYW1faW5kZXggIT0gbV9zdHJlYW1faW5kZXgpIHsKKy0JCQkJbV9wYWNrZXQuZGF0YSA9IG51 bGxwdHI7CistCQkJCW1fcGFja2V0LnNpemUgPSAwOworIAkJCX0gZWxzZSB7CistCQkJCW1fbmJf cGFja2V0cysrOworKwkJCQlhdl9wYWNrZXRfdW5yZWYobV9wYWNrZXQpOworIAkJCX0KKyAJCX0K KworLQkJcmV0ID0gYXZjb2RlY19kZWNvZGVfYXVkaW80KG1fY29kZWNfY3R4LCBtX2ZyYW1lLCAm bV9nb3RfZnJhbWUsICZtX3BhY2tldCk7CisrCQlyZXQgPSBhdmNvZGVjX3JlY2VpdmVfZnJhbWUo bV9jb2RlY19jdHgsIG1fZnJhbWUpOworIAkJaWYgKHJldCA8IDApIHsKKy0JCQlpZiAobV9kZWNv ZGVfZXJyb3IpIHsKKy0JCQkJU2V0RXJyb3IoIkVycm9yIGRlY29kaW5nIGF1ZGlvIGZyYW1lIiwg bV9kZWNvZGVfZXJyb3IpOworLQkJCQlyZXR1cm4gZmFsc2U7CisrCQkJaWYgKHJldCA9PSBBVkVS Uk9SX0VPRikgeworKwkJCQltX2hhc19tb3JlX2ZyYW1lcyA9IGZhbHNlOworKwkJCX0gZWxzZSBp ZiAocmV0ID09IEFWRVJST1IoRUFHQUlOKSkgeworKwkJCQlpZiAobV9oYXNfbW9yZV9wYWNrZXRz KSB7CisrCQkJCQluZWVkc19wYWNrZXQgPSB0cnVlOworKwkJCQkJY29udGludWU7CisrCQkJCX0g ZWxzZSB7CisrCQkJCQltX2hhc19tb3JlX2ZyYW1lcyA9IGZhbHNlOworKwkJCQl9CisgCQkJfQor LQkJCW1fZGVjb2RlX2Vycm9yID0gcmV0OworLQkJCW1fcGFja2V0LmRhdGEgPSBudWxscHRyOwor LQkJCW1fcGFja2V0LnNpemUgPSAwOworLQkJCWNvbnRpbnVlOworKwkJCVNldEVycm9yKCJFcnJv ciBkZWNvZGluZyB0aGUgYXVkaW8gc291cmNlIiwgcmV0KTsKKysJCQlyZXR1cm4gZmFsc2U7Cisg CQl9CisKKy0JCWJyZWFrOworLQl9CistCistCW1fZGVjb2RlX2Vycm9yID0gMDsKKy0KKy0JY29u c3QgaW50IGRlY29kZWQgPSBzdGQ6Om1pbihyZXQsIG1fcGFja2V0LnNpemUpOworLQltX3BhY2tl dC5kYXRhICs9IGRlY29kZWQ7CistCW1fcGFja2V0LnNpemUgLT0gZGVjb2RlZDsKKy0KKy0JaWYg KG1fZ290X2ZyYW1lKSB7CistCQlpZiAobV9jb252ZXJ0ZXIpIHsKKy0JCQlpZiAobV9mcmFtZS0+ bmJfc2FtcGxlcyA+IG1fY29udmVydF9idWZmZXJfbmJfc2FtcGxlcykgeworLQkJCQlpbnQgbGlu c2l6ZTsKKy0JCQkJYXZfZnJlZXAoJm1fY29udmVydF9idWZmZXJbMF0pOworLQkJCQltX2NvbnZl cnRfYnVmZmVyX25iX3NhbXBsZXMgPSBzdGQ6Om1heCgxMDI0ICogOCwgbV9mcmFtZS0+bmJfc2Ft cGxlcyk7CistCQkJCXJldCA9IGF2X3NhbXBsZXNfYWxsb2MobV9jb252ZXJ0X2J1ZmZlciwgJmxp bnNpemUsIG1fY29kZWNfY3R4LT5jaGFubmVscywgbV9jb252ZXJ0X2J1ZmZlcl9uYl9zYW1wbGVz LCBBVl9TQU1QTEVfRk1UX1MxNiwgMSk7CistCQkJCWlmIChyZXQgPCAwKSB7CistCQkJCQlTZXRF cnJvcigiQ291bGRuJ3QgYWxsb2NhdGUgYXVkaW8gY29udmVydGVyIGJ1ZmZlciIsIHJldCk7Cisr CQlpZiAobV9mcmFtZS0+bmJfc2FtcGxlcyA+IDApIHsKKysJCQlpZiAobV9jb252ZXJ0ZXIpIHsK KysJCQkJaWYgKG1fZnJhbWUtPm5iX3NhbXBsZXMgPiBtX2NvbnZlcnRfYnVmZmVyX25iX3NhbXBs ZXMpIHsKKysJCQkJCWludCBsaW5zaXplOworKwkJCQkJYXZfZnJlZXAoJm1fY29udmVydF9idWZm ZXJbMF0pOworKwkJCQkJbV9jb252ZXJ0X2J1ZmZlcl9uYl9zYW1wbGVzID0gc3RkOjptYXgoMTAy NCAqIDgsIG1fZnJhbWUtPm5iX3NhbXBsZXMpOworKwkJCQkJcmV0ID0gYXZfc2FtcGxlc19hbGxv YyhtX2NvbnZlcnRfYnVmZmVyLCAmbGluc2l6ZSwgbV9jb2RlY19jdHgtPmNoX2xheW91dC5uYl9j aGFubmVscywgbV9jb252ZXJ0X2J1ZmZlcl9uYl9zYW1wbGVzLCBBVl9TQU1QTEVfRk1UX1MxNiwg MSk7CisrCQkJCQlpZiAocmV0IDwgMCkgeworKwkJCQkJCVNldEVycm9yKCJDb3VsZG4ndCBhbGxv Y2F0ZSBhdWRpbyBjb252ZXJ0ZXIgYnVmZmVyIiwgcmV0KTsKKysJCQkJCQlyZXR1cm4gZmFsc2U7 CisrCQkJCQl9CisrCQkJCX0KKysJCQkJYXV0byBuYl9zYW1wbGVzID0gbV9jb252ZXJ0ZXItPkNv bnZlcnQobV9jb252ZXJ0X2J1ZmZlciwgbV9jb252ZXJ0X2J1ZmZlcl9uYl9zYW1wbGVzLCAoY29u c3QgdWludDhfdCAqKikgbV9mcmFtZS0+ZGF0YSwgbV9mcmFtZS0+bmJfc2FtcGxlcyk7CisrCQkJ CWlmIChuYl9zYW1wbGVzIDwgMCkgeworKwkJCQkJU2V0RXJyb3IoIkNvdWxkbid0IGNvbnZlcnQg YXVkaW8iLCByZXQpOworIAkJCQkJcmV0dXJuIGZhbHNlOworIAkJCQl9CistCQkJfQorLQkJCWF1 dG8gbmJfc2FtcGxlcyA9IG1fY29udmVydGVyLT5Db252ZXJ0KG1fY29udmVydF9idWZmZXIsIG1f Y29udmVydF9idWZmZXJfbmJfc2FtcGxlcywgKGNvbnN0IHVpbnQ4X3QgKiopIG1fZnJhbWUtPmRh dGEsIG1fZnJhbWUtPm5iX3NhbXBsZXMpOworLQkJCWlmIChuYl9zYW1wbGVzIDwgMCkgeworLQkJ CQlTZXRFcnJvcigiQ291bGRuJ3QgY29udmVydCBhdWRpbyIsIHJldCk7CistCQkJCXJldHVybiBm YWxzZTsKKy0JCQl9CistCQkJKmRhdGEgPSAoY29uc3QgaW50MTZfdCAqKSBtX2NvbnZlcnRfYnVm ZmVyWzBdOworLQkJCSpzaXplID0gbmJfc2FtcGxlczsKKy0JCX0gZWxzZSB7CistCQkJKmRhdGEg PSAoY29uc3QgaW50MTZfdCAqKSBtX2ZyYW1lLT5kYXRhWzBdOworLQkJCSpzaXplID0gbV9mcmFt ZS0+bmJfc2FtcGxlczsKKy0JCX0KKy0JfSBlbHNlIHsKKy0JCWlmIChtX2ZpbmlzaGVkICYmIG1f Y29udmVydGVyKSB7CistCQkJYXV0byBuYl9zYW1wbGVzID0gbV9jb252ZXJ0ZXItPkZsdXNoKG1f Y29udmVydF9idWZmZXIsIG1fY29udmVydF9idWZmZXJfbmJfc2FtcGxlcyk7CistCQkJaWYgKG5i X3NhbXBsZXMgPCAwKSB7CistCQkJCVNldEVycm9yKCJDb3VsZG4ndCBjb252ZXJ0IGF1ZGlvIiwg cmV0KTsKKy0JCQkJcmV0dXJuIGZhbHNlOworLQkJCX0gZWxzZSBpZiAobmJfc2FtcGxlcyA+IDAp IHsKKy0JCQkJbV9nb3RfZnJhbWUgPSAxOworIAkJCQkqZGF0YSA9IChjb25zdCBpbnQxNl90ICop IG1fY29udmVydF9idWZmZXJbMF07CisgCQkJCSpzaXplID0gbmJfc2FtcGxlczsKKysJCQl9IGVs c2UgeworKwkJCQkqZGF0YSA9IChjb25zdCBpbnQxNl90ICopIG1fZnJhbWUtPmRhdGFbMF07Cisr CQkJCSpzaXplID0gbV9mcmFtZS0+bmJfc2FtcGxlczsKKysJCQl9CisrCQl9IGVsc2UgeworKwkJ CWlmIChtX2NvbnZlcnRlcikgeworKwkJCQlpZiAoSXNGaW5pc2hlZCgpKSB7CisrCQkJCQlhdXRv IG5iX3NhbXBsZXMgPSBtX2NvbnZlcnRlci0+Rmx1c2gobV9jb252ZXJ0X2J1ZmZlciwgbV9jb252 ZXJ0X2J1ZmZlcl9uYl9zYW1wbGVzKTsKKysJCQkJCWlmIChuYl9zYW1wbGVzIDwgMCkgeworKwkJ CQkJCVNldEVycm9yKCJDb3VsZG4ndCBjb252ZXJ0IGF1ZGlvIiwgcmV0KTsKKysJCQkJCQlyZXR1 cm4gZmFsc2U7CisrCQkJCQl9IGVsc2UgaWYgKG5iX3NhbXBsZXMgPiAwKSB7CisrCQkJCQkJKmRh dGEgPSAoY29uc3QgaW50MTZfdCAqKSBtX2NvbnZlcnRfYnVmZmVyWzBdOworKwkJCQkJCSpzaXpl ID0gbmJfc2FtcGxlczsKKysJCQkJCX0KKysJCQkJfQorIAkJCX0KKyAJCX0KKy0JfQorCistCXJl dHVybiB0cnVlOworKwkJcmV0dXJuIHRydWU7CisrCX0KKyB9CisKKyBpbmxpbmUgdm9pZCBGRm1w ZWdBdWRpb1JlYWRlcjo6U2V0RXJyb3IoY29uc3QgY2hhciAqbWVzc2FnZSwgaW50IGVycm51bSkg eworZGlmZiAtLWdpdCBhL3Rlc3RzL0NNYWtlTGlzdHMudHh0IGIvdGVzdHMvQ01ha2VMaXN0cy50 eHQKK2luZGV4IGEyYjUxN2IuLjEyM2U2NDMgMTAwNjQ0CistLS0gYS90ZXN0cy9DTWFrZUxpc3Rz LnR4dAorKysrIGIvdGVzdHMvQ01ha2VMaXN0cy50eHQKK0BAIC0zOCw2ICszOCwxMiBAQCBzZXQo U1JDUworCisgaWYoQlVJTERfVE9PTFMpCisgCXNldChTUkNTICR7U1JDU30gLi4vc3JjL2F1ZGlv L2ZmbXBlZ19hdWRpb19yZWFkZXJfdGVzdC5jcHApCisrICAgIGluY2x1ZGVfZGlyZWN0b3JpZXMo CisrICAgICAgICAke0ZGTVBFR19MSUJBVkZPUk1BVF9JTkNMVURFX0RJUlN9CisrICAgICAgICAk e0ZGTVBFR19MSUJBVkNPREVDX0lOQ0xVREVfRElSU30KKysgICAgICAgICR7RkZNUEVHX0xJQkFW VVRJTF9JTkNMVURFX0RJUlN9CisrICAgICAgICAke0FVRElPX1BST0NFU1NPUl9JTkNMVURFX0RJ UlN9CisrICAgICkKKyAJbGlua19saWJyYXJpZXMoZnBjYWxjX2xpYnMpCisgZW5kaWYoKQorCist LSAKKzIuMzguMQorCisKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2hyb21hcHJpbnQvdGVtcGxhdGUg Yi9zcmNwa2dzL2Nocm9tYXByaW50L3RlbXBsYXRlCmluZGV4IDdlZjc4Mzg5NDlmM2EzLi4xZjdi YmM3MGEyMmM4MCAxMDA2NDQKLS0tIGEvc3JjcGtncy9jaHJvbWFwcmludC90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL2Nocm9tYXByaW50L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAnY2hyb21hcHJpbnQnCiBwa2duYW1lPWNocm9tYXByaW50CiB2ZXJzaW9uPTEu NS4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJl X2FyZ3M9Ii1EQlVJTERfVE9PTFM9T04iCiBtYWtlX2NoZWNrX3RhcmdldD0iY2hlY2siCgpGcm9t IGI0MjMzOTAyZTFlOTBiYzBmM2ZjNTI0YTBjZDM1YjgyZDAwMGE3MDAgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIg TWFyIDIwMjMgMjA6MDE6NDYgLTA0MDAKU3ViamVjdDogW1BBVENIIDAyMS8xMDhdIGNocm9taXVt OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvY2hyb21pdW0vcGF0Y2hlcy9mZm1w ZWc1LnBhdGNoIHwgNDcgKysrKysrKysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvY2hyb21p dW0vdGVtcGxhdGUgICAgICAgICAgICAgIHwgIDIgKy0KIDIgZmlsZXMgY2hhbmdlZCwgNDggaW5z ZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvY2hy b21pdW0vcGF0Y2hlcy9mZm1wZWc1LnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jaHJvbWl1 bS9wYXRjaGVzL2ZmbXBlZzUucGF0Y2ggYi9zcmNwa2dzL2Nocm9taXVtL3BhdGNoZXMvZmZtcGVn NS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uMjRlMmRh MzhlMzRjYTIKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2Nocm9taXVtL3BhdGNoZXMvZmZt cGVnNS5wYXRjaApAQCAtMCwwICsxLDQ3IEBACistLS0gYS9tZWRpYS9maWx0ZXJzL2ZmbXBlZ19k ZW11eGVyLmNjCTIwMjMtMDEtMjMgMTc6MzM6NTcuMzY2MjEzODA1ICswMjAwCisrKysgYi9tZWRp YS9maWx0ZXJzL2ZmbXBlZ19kZW11eGVyLmNjCTIwMjMtMDEtMjMgMTc6NDM6MDkuMjgzNDM2OTgz ICswMjAwCitAQCAtOTIsMjQgKzkyLDEyIEBACisgCisgc3RhdGljIGJhc2U6OlRpbWVEZWx0YSBF eHRyYWN0U3RhcnRUaW1lKEFWU3RyZWFtKiBzdHJlYW0pIHsKKyAgIC8vIFRoZSBkZWZhdWx0IHN0 YXJ0IHRpbWUgaXMgemVyby4KKy0gIGJhc2U6OlRpbWVEZWx0YSBzdGFydF90aW1lOworKyAgYmFz ZTo6VGltZURlbHRhIHN0YXJ0X3RpbWUgPSBrTm9UaW1lc3RhbXA7CisgCisgICAvLyBGaXJzdCB0 cnkgdG8gdXNlICB0aGUgfHN0YXJ0X3RpbWV8IHZhbHVlIGFzIGlzLgorLSAgaWYgKHN0cmVhbS0+ c3RhcnRfdGltZSAhPSBrTm9GRm1wZWdUaW1lc3RhbXApCisrICBpZiAoc3RyZWFtLT5zdGFydF90 aW1lICE9IGtOb0ZGbXBlZ1RpbWVzdGFtcCkgLy8gQVZfTk9QVFNfVkFMVUUKKyAgICAgc3RhcnRf dGltZSA9IENvbnZlcnRGcm9tVGltZUJhc2Uoc3RyZWFtLT50aW1lX2Jhc2UsIHN0cmVhbS0+c3Rh cnRfdGltZSk7CisgCistICAvLyBOZXh0IHRyeSB0byB1c2UgdGhlIGZpcnN0IERUUyB2YWx1ZSwg Zm9yIGNvZGVjcyB3aGVyZSB3ZSBrbm93IFBUUyA9PSBEVFMKKy0gIC8vIChleGNsdWRlcyBhbGwg SDI2eCBjb2RlY3MpLiBUaGUgc3RhcnQgdGltZSBtdXN0IGJlIHJldHVybmVkIGluIFBUUy4KKy0g IGlmIChhdl9zdHJlYW1fZ2V0X2ZpcnN0X2R0cyhzdHJlYW0pICE9IGtOb0ZGbXBlZ1RpbWVzdGFt cCAmJgorLSAgICAgIHN0cmVhbS0+Y29kZWNwYXItPmNvZGVjX2lkICE9IEFWX0NPREVDX0lEX0hF VkMgJiYKKy0gICAgICBzdHJlYW0tPmNvZGVjcGFyLT5jb2RlY19pZCAhPSBBVl9DT0RFQ19JRF9I MjY0ICYmCistICAgICAgc3RyZWFtLT5jb2RlY3Bhci0+Y29kZWNfaWQgIT0gQVZfQ09ERUNfSURf TVBFRzQpIHsKKy0gICAgY29uc3QgYmFzZTo6VGltZURlbHRhIGZpcnN0X3B0cyA9CistICAgICAg ICBDb252ZXJ0RnJvbVRpbWVCYXNlKHN0cmVhbS0+dGltZV9iYXNlLCBhdl9zdHJlYW1fZ2V0X2Zp cnN0X2R0cyhzdHJlYW0pKTsKKy0gICAgaWYgKGZpcnN0X3B0cyA8IHN0YXJ0X3RpbWUpCistICAg ICAgc3RhcnRfdGltZSA9IGZpcnN0X3B0czsKKy0gIH0KKy0KKyAgIHJldHVybiBzdGFydF90aW1l OworIH0KKyAKK0BAIC0xNTk3LDcgKzE1ODUsNyBAQAorICAgZm9yIChjb25zdCBhdXRvJiBzdHJl YW0gOiBzdHJlYW1zXykgeworICAgICBpZiAoIXN0cmVhbSB8fCBzdHJlYW0tPklzRW5hYmxlZCgp ICE9IGVuYWJsZWQpCisgICAgICAgY29udGludWU7CistICAgIGlmIChhdl9zdHJlYW1fZ2V0X2Zp cnN0X2R0cyhzdHJlYW0tPmF2X3N0cmVhbSgpKSA9PSBrSW52YWxpZFBUU01hcmtlcikKKysgICAg aWYgKHN0cmVhbS0+YXZfc3RyZWFtKCktPnN0YXJ0X3RpbWUgPT0gQVZfTk9QVFNfVkFMVUUpCisg ICAgICAgY29udGludWU7CisgICAgIGlmICghbG93ZXN0X3N0YXJ0X3RpbWVfc3RyZWFtIHx8Cisg ICAgICAgICBzdHJlYW0tPnN0YXJ0X3RpbWUoKSA8IGxvd2VzdF9zdGFydF90aW1lX3N0cmVhbS0+ c3RhcnRfdGltZSgpKSB7CitAQCAtMTYxOCw3ICsxNjA2LDcgQEAKKyAgICAgaWYgKHN0cmVhbS0+ dHlwZSgpICE9IERlbXV4ZXJTdHJlYW06OlZJREVPKQorICAgICAgIGNvbnRpbnVlOworIAorLSAg ICBpZiAoYXZfc3RyZWFtX2dldF9maXJzdF9kdHMoc3RyZWFtLT5hdl9zdHJlYW0oKSkgPT0ga0lu dmFsaWRQVFNNYXJrZXIpCisrICAgIGlmIChzdHJlYW0tPmF2X3N0cmVhbSgpLT5zdGFydF90aW1l ID09IEFWX05PUFRTX1ZBTFVFKQorICAgICAgIGNvbnRpbnVlOworIAorICAgICBpZiAoIXN0cmVh bS0+SXNFbmFibGVkKCkpCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Nocm9taXVtL3RlbXBsYXRlIGIv c3JjcGtncy9jaHJvbWl1bS90ZW1wbGF0ZQppbmRleCBiZDUxNjEyZWQ2NDc0OC4uMjIwN2Y3NDRm MGM0ZWYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvY2hyb21pdW0vdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9jaHJvbWl1bS90ZW1wbGF0ZQpAQCAtMiw3ICsyLDcgQEAKIHBrZ25hbWU9Y2hyb21pdW0KICMg U2VlIGh0dHBzOi8vY2hyb21pdW1kYXNoLmFwcHNwb3QuY29tL3JlbGVhc2VzP3BsYXRmb3JtPUxp bnV4IGZvciB0aGUgbGF0ZXN0IHZlcnNpb24KIHZlcnNpb249MTI2LjAuNjQ3OC41NQotcmV2aXNp b249MQorcmV2aXNpb249MgogYXJjaHM9Imk2ODYqIHg4Nl82NCogYWFyY2g2NCogYXJtdjdsKiIK IGhvc3RtYWtlZGVwZW5kcz0iCiAgJCh2b3B0X2lmIGNsYW5nICJjbGFuZzE3IGxsZDE3IGxsdm0x NyBjb21waWxlci1ydCIpCgpGcm9tIDkyMTc5MDRjMzA0Y2FhZmE3YTllMTkxMzRjOGIzYmQyODhi ZGNhMmQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFp bC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDYgLTA0MDAKU3ViamVjdDogW1BB VENIIDAyMi8xMDhdIGNtdXM6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9jaHJv bWl1bS9wYXRjaGVzL2ZmbXBlZzUucGF0Y2ggfCA0NyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQogc3JjcGtncy9jbXVzL3BhdGNoZXMvZmZtcGVnNi5wYXRjaCAgICAgfCAxMiArKysrKysrCiBz cmNwa2dzL2NtdXMvdGVtcGxhdGUgICAgICAgICAgICAgICAgICB8ICAyICstCiAzIGZpbGVzIGNo YW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDQ4IGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAw NjQ0IHNyY3BrZ3MvY2hyb21pdW0vcGF0Y2hlcy9mZm1wZWc1LnBhdGNoCiBjcmVhdGUgbW9kZSAx MDA2NDQgc3JjcGtncy9jbXVzL3BhdGNoZXMvZmZtcGVnNi5wYXRjaAoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvY2hyb21pdW0vcGF0Y2hlcy9mZm1wZWc1LnBhdGNoIGIvc3JjcGtncy9jaHJvbWl1bS9w YXRjaGVzL2ZmbXBlZzUucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI0ZTJk YTM4ZTM0Y2EyLi4wMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL2Nocm9taXVtL3BhdGNoZXMv ZmZtcGVnNS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDQ3ICswLDAgQEAKLS0tLSBhL21lZGlh L2ZpbHRlcnMvZmZtcGVnX2RlbXV4ZXIuY2MJMjAyMy0wMS0yMyAxNzozMzo1Ny4zNjYyMTM4MDUg KzAyMDAKLSsrKyBiL21lZGlhL2ZpbHRlcnMvZmZtcGVnX2RlbXV4ZXIuY2MJMjAyMy0wMS0yMyAx Nzo0MzowOS4yODM0MzY5ODMgKzAyMDAKLUBAIC05MiwyNCArOTIsMTIgQEAKLSAKLSBzdGF0aWMg YmFzZTo6VGltZURlbHRhIEV4dHJhY3RTdGFydFRpbWUoQVZTdHJlYW0qIHN0cmVhbSkgewotICAg Ly8gVGhlIGRlZmF1bHQgc3RhcnQgdGltZSBpcyB6ZXJvLgotLSAgYmFzZTo6VGltZURlbHRhIHN0 YXJ0X3RpbWU7Ci0rICBiYXNlOjpUaW1lRGVsdGEgc3RhcnRfdGltZSA9IGtOb1RpbWVzdGFtcDsK LSAKLSAgIC8vIEZpcnN0IHRyeSB0byB1c2UgIHRoZSB8c3RhcnRfdGltZXwgdmFsdWUgYXMgaXMu Ci0tICBpZiAoc3RyZWFtLT5zdGFydF90aW1lICE9IGtOb0ZGbXBlZ1RpbWVzdGFtcCkKLSsgIGlm IChzdHJlYW0tPnN0YXJ0X3RpbWUgIT0ga05vRkZtcGVnVGltZXN0YW1wKSAvLyBBVl9OT1BUU19W QUxVRQotICAgICBzdGFydF90aW1lID0gQ29udmVydEZyb21UaW1lQmFzZShzdHJlYW0tPnRpbWVf YmFzZSwgc3RyZWFtLT5zdGFydF90aW1lKTsKLSAKLS0gIC8vIE5leHQgdHJ5IHRvIHVzZSB0aGUg Zmlyc3QgRFRTIHZhbHVlLCBmb3IgY29kZWNzIHdoZXJlIHdlIGtub3cgUFRTID09IERUUwotLSAg Ly8gKGV4Y2x1ZGVzIGFsbCBIMjZ4IGNvZGVjcykuIFRoZSBzdGFydCB0aW1lIG11c3QgYmUgcmV0 dXJuZWQgaW4gUFRTLgotLSAgaWYgKGF2X3N0cmVhbV9nZXRfZmlyc3RfZHRzKHN0cmVhbSkgIT0g a05vRkZtcGVnVGltZXN0YW1wICYmCi0tICAgICAgc3RyZWFtLT5jb2RlY3Bhci0+Y29kZWNfaWQg IT0gQVZfQ09ERUNfSURfSEVWQyAmJgotLSAgICAgIHN0cmVhbS0+Y29kZWNwYXItPmNvZGVjX2lk ICE9IEFWX0NPREVDX0lEX0gyNjQgJiYKLS0gICAgICBzdHJlYW0tPmNvZGVjcGFyLT5jb2RlY19p ZCAhPSBBVl9DT0RFQ19JRF9NUEVHNCkgewotLSAgICBjb25zdCBiYXNlOjpUaW1lRGVsdGEgZmly c3RfcHRzID0KLS0gICAgICAgIENvbnZlcnRGcm9tVGltZUJhc2Uoc3RyZWFtLT50aW1lX2Jhc2Us IGF2X3N0cmVhbV9nZXRfZmlyc3RfZHRzKHN0cmVhbSkpOwotLSAgICBpZiAoZmlyc3RfcHRzIDwg c3RhcnRfdGltZSkKLS0gICAgICBzdGFydF90aW1lID0gZmlyc3RfcHRzOwotLSAgfQotLQotICAg cmV0dXJuIHN0YXJ0X3RpbWU7Ci0gfQotIAotQEAgLTE1OTcsNyArMTU4NSw3IEBACi0gICBmb3Ig KGNvbnN0IGF1dG8mIHN0cmVhbSA6IHN0cmVhbXNfKSB7Ci0gICAgIGlmICghc3RyZWFtIHx8IHN0 cmVhbS0+SXNFbmFibGVkKCkgIT0gZW5hYmxlZCkKLSAgICAgICBjb250aW51ZTsKLS0gICAgaWYg KGF2X3N0cmVhbV9nZXRfZmlyc3RfZHRzKHN0cmVhbS0+YXZfc3RyZWFtKCkpID09IGtJbnZhbGlk UFRTTWFya2VyKQotKyAgICBpZiAoc3RyZWFtLT5hdl9zdHJlYW0oKS0+c3RhcnRfdGltZSA9PSBB Vl9OT1BUU19WQUxVRSkKLSAgICAgICBjb250aW51ZTsKLSAgICAgaWYgKCFsb3dlc3Rfc3RhcnRf dGltZV9zdHJlYW0gfHwKLSAgICAgICAgIHN0cmVhbS0+c3RhcnRfdGltZSgpIDwgbG93ZXN0X3N0 YXJ0X3RpbWVfc3RyZWFtLT5zdGFydF90aW1lKCkpIHsKLUBAIC0xNjE4LDcgKzE2MDYsNyBAQAot ICAgICBpZiAoc3RyZWFtLT50eXBlKCkgIT0gRGVtdXhlclN0cmVhbTo6VklERU8pCi0gICAgICAg Y29udGludWU7Ci0gCi0tICAgIGlmIChhdl9zdHJlYW1fZ2V0X2ZpcnN0X2R0cyhzdHJlYW0tPmF2 X3N0cmVhbSgpKSA9PSBrSW52YWxpZFBUU01hcmtlcikKLSsgICAgaWYgKHN0cmVhbS0+YXZfc3Ry ZWFtKCktPnN0YXJ0X3RpbWUgPT0gQVZfTk9QVFNfVkFMVUUpCi0gICAgICAgY29udGludWU7Ci0g Ci0gICAgIGlmICghc3RyZWFtLT5Jc0VuYWJsZWQoKSkKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY211 cy9wYXRjaGVzL2ZmbXBlZzYucGF0Y2ggYi9zcmNwa2dzL2NtdXMvcGF0Y2hlcy9mZm1wZWc2LnBh dGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi5mZmE5NWFiODEx MTAxYgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvY211cy9wYXRjaGVzL2ZmbXBlZzYucGF0 Y2gKQEAgLTAsMCArMSwxMiBAQAorLS0tIGEvaXAvZmZtcGVnLmMKKysrKyBiL2lwL2ZmbXBlZy5j CitAQCAtMjAyLDkgKzIwMiw2IEBAIHN0YXRpYyBpbnQgZmZtcGVnX29wZW4oc3RydWN0IGlucHV0 X3BsdWdpbl9kYXRhICppcF9kYXRhKQorIAkJCWJyZWFrOworIAkJfQorIAorLQkJaWYgKGNvZGVj LT5jYXBhYmlsaXRpZXMgJiBBVl9DT0RFQ19DQVBfVFJVTkNBVEVEKQorLQkJCWNjLT5mbGFncyB8 PSBBVl9DT0RFQ19GTEFHX1RSVU5DQVRFRDsKKy0KKyAJCWlmIChhdmNvZGVjX29wZW4yKGNjLCBj b2RlYywgTlVMTCkgPCAwKSB7CisgCQkJZF9wcmludCgiY291bGQgbm90IG9wZW4gY29kZWM6ICVk LCAlc1xuIiwgY2MtPmNvZGVjX2lkLCBhdmNvZGVjX2dldF9uYW1lKGNjLT5jb2RlY19pZCkpOwor IAkJCWVyciA9IC1JUF9FUlJPUl9VTlNVUFBPUlRFRF9GSUxFX1RZUEU7CmRpZmYgLS1naXQgYS9z cmNwa2dzL2NtdXMvdGVtcGxhdGUgYi9zcmNwa2dzL2NtdXMvdGVtcGxhdGUKaW5kZXggMGQxNDM2 NzQ0ZjFiMmMuLmE2ZTRiNGZhODZjYjgzIDEwMDY0NAotLS0gYS9zcmNwa2dzL2NtdXMvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9jbXVzL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAnY211cycKIHBrZ25hbWU9Y211cwogdmVyc2lvbj0yLjEwLjAKLXJldmlzaW9u PTMKK3JldmlzaW9uPTQKIGJ1aWxkX3N0eWxlPWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9InBy ZWZpeD0vdXNyIExEPSRDQyIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKCkZyb20gNTQx Y2Q0NjQ3NmYzYWY0NzQzMGQ0ODVjMmVjZGM4OWFhMjg5MGM3YyBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIg MjAyMyAyMDowMTo0NiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDIzLzEwOF0gY3lhbnJpcDogcmV2 YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2N5YW5yaXAvdGVtcGxhdGUgfCAyICstCiAx IGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2N5YW5yaXAvdGVtcGxhdGUgYi9zcmNwa2dzL2N5YW5yaXAvdGVtcGxhdGUKaW5k ZXggOTc5NmUzNDYxNjAxYTcuLjVkYjMwZTAyMGQxN2VlIDEwMDY0NAotLS0gYS9zcmNwa2dzL2N5 YW5yaXAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9jeWFucmlwL3RlbXBsYXRlCkBAIC0xLDcgKzEs NyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnY3lhbnJpcCcKIHBrZ25hbWU9Y3lhbnJpcAogdmVy c2lvbj0wLjkuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9bWVzb24KIGhv c3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJmZm1wZWctZGV2ZWwgbGli Y2Rpby1kZXZlbCBsaWJjZGlvLXBhcmFub2lhLWRldmVsIGxpYmN1cmwtZGV2ZWwgbGlibXVzaWNi cmFpbno1LWRldmVsIgoKRnJvbSA2NThiODU0OTA1YWI3ODBmMTE2ZTAwMGQ1NDQ3MTgxOTk3ZmJj MTRkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwu Y29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ2IC0wNDAwClN1YmplY3Q6IFtQQVRD SCAwMjQvMTA4XSBkZWFkYmVlZjogcmV2YnVtcCBmb3IgZmZtcGVnNAoKLS0tCiBzcmNwa2dzL2Rl YWRiZWVmL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCsp LCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZGVhZGJlZWYvdGVtcGxhdGUg Yi9zcmNwa2dzL2RlYWRiZWVmL3RlbXBsYXRlCmluZGV4IGY1ZjRiZjI0YjhjYjZkLi43YjQ3ZTYx NWNkNDhlZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9kZWFkYmVlZi90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL2RlYWRiZWVmL3RlbXBsYXRlCkBAIC0xLDE0ICsxLDE0IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdkZWFkYmVlZicKIHBrZ25hbWU9ZGVhZGJlZWYKIHZlcnNpb249MS44LjgKLXJldmlzaW9u PTMKK3JldmlzaW9uPTQKIGNyZWF0ZV93cmtzcmM9eWVzCiBidWlsZF9zdHlsZT1nbnUtY29uZmln dXJlCiBjb25maWd1cmVfYXJncz0iLS1kaXNhYmxlLW9zcyAtLWRpc2FibGUtbGZtIC0tZGlzYWJs ZS1ub3RpZnkgLS1kaXNhYmxlLWd0azIiCiBob3N0bWFrZWRlcGVuZHM9ImF1dG9tYWtlIGxpYnRv b2wgZ2V0dGV4dCBnZXR0ZXh0LWRldmVsIGludGx0b29sIHBrZy1jb25maWcKICB5YXNtIGNsYW5n IGdsaWItZGV2ZWwiCiBtYWtlZGVwZW5kcz0iCi0gYWxzYS1saWItZGV2ZWwgZGJ1cy1kZXZlbCBm YWFkMi1kZXZlbCBmZm1wZWctZGV2ZWwgZ3RrKzMtZGV2ZWwgaW1saWIyLWRldmVsCisgYWxzYS1s aWItZGV2ZWwgZGJ1cy1kZXZlbCBmYWFkMi1kZXZlbCBmZm1wZWc0LWRldmVsIGd0ayszLWRldmVs IGltbGliMi1kZXZlbAogIGphbnNzb24tZGV2ZWwgbGliY2RkYi1kZXZlbCBsaWJjZGlvLWRldmVs IGxpYmN1cmwtZGV2ZWwgbGliZmxhYy1kZXZlbAogIGxpYm1hZC1kZXZlbCBsaWJwbmctZGV2ZWwg bGlic2FtcGxlcmF0ZS1kZXZlbCBsaWJzbmRmaWxlLWRldmVsIGxpYnZvcmJpcy1kZXZlbAogIGxp YnppcC1kZXZlbCBtcGcxMjMtZGV2ZWwgb3B1c2ZpbGUtZGV2ZWwgcHVsc2VhdWRpby1kZXZlbCB3 YXZwYWNrLWRldmVsIgoKRnJvbSA4NjU5YmZiNWFlZWY4NTU0OTNkZDUxYTk5NzJlN2JiZmQ1YTJi ZWU5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwu Y29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ2IC0wNDAwClN1YmplY3Q6IFtQQVRD SCAwMjUvMTA4XSBkcm9pZGNhbS1vYnMtcGx1Z2luOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0K IHNyY3BrZ3MvZHJvaWRjYW0tb2JzLXBsdWdpbi90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFu Z2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv ZHJvaWRjYW0tb2JzLXBsdWdpbi90ZW1wbGF0ZSBiL3NyY3BrZ3MvZHJvaWRjYW0tb2JzLXBsdWdp bi90ZW1wbGF0ZQppbmRleCA5ZGM2NjQ4ZWZlOTRhZC4uOTNhNzJhZGYzZDNjMzAgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvZHJvaWRjYW0tb2JzLXBsdWdpbi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Ry b2lkY2FtLW9icy1wbHVnaW4vdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdkcm9pZGNhbS1vYnMtcGx1Z2luJwogcGtnbmFtZT1kcm9pZGNhbS1vYnMtcGx1Z2lu CiB2ZXJzaW9uPTIuMy4yCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUt bWFrZWZpbGUKIG1ha2VfdXNlX2Vudj15ZXMKIG1ha2VfYnVpbGRfYXJncz0iQUxMT1dfU1RBVElD PW5vIgoKRnJvbSBmZDI0ZGJjZWNhY2U0MzQ4NDk1Y2RjMzJmOGQ5ZWQwMGQzNjMyM2RhIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRl OiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ2IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMjYvMTA4 XSBkcm9pZGNhbTogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2Ryb2lkY2FtL3Rl bXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9u KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9kcm9pZGNhbS90ZW1wbGF0ZSBiL3NyY3BrZ3MvZHJv aWRjYW0vdGVtcGxhdGUKaW5kZXggMWMzZjFiOGIxZmM2NzYuLjMyYTkyMjBiNzlhNGQxIDEwMDY0 NAotLS0gYS9zcmNwa2dzL2Ryb2lkY2FtL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZHJvaWRjYW0v dGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdkcm9pZGNhbScK IHBrZ25hbWU9ZHJvaWRjYW0KIHZlcnNpb249MS44LjIKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMK IGJ1aWxkX3N0eWxlPWdudS1tYWtlZmlsZQogbWFrZV9idWlsZF9hcmdzPSJVU0JNVVhEPS1sdXNi bXV4ZC0yLjAgSlBFRz0tbHR1cmJvanBlZyIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIK CkZyb20gMDk5YjNiOWUwYzAxZTdkZTIwMWU3MjdjMzEyY2I2NDBhYzZmZGExOSBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2Vk LCAyMiBNYXIgMjAyMyAyMDowMTo0NyAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDI3LzEwOF0gZmZt cGVndGh1bWJuYWlsZXI6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogLi4uL2ZmbXBlZ3RodW1i bmFpbGVyL3BhdGNoZXMvZmZtcGVnNi5wYXRjaCAgIHwgMjAyICsrKysrKysrKysrKysrKysrKwog c3JjcGtncy9mZm1wZWd0aHVtYm5haWxlci90ZW1wbGF0ZSAgICAgICAgICAgIHwgICA2ICstCiAy IGZpbGVzIGNoYW5nZWQsIDIwNSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQogY3JlYXRl IG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZmZtcGVndGh1bWJuYWlsZXIvcGF0Y2hlcy9mZm1wZWc2LnBh dGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9mZm1wZWd0aHVtYm5haWxlci9wYXRjaGVzL2ZmbXBl ZzYucGF0Y2ggYi9zcmNwa2dzL2ZmbXBlZ3RodW1ibmFpbGVyL3BhdGNoZXMvZmZtcGVnNi5wYXRj aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uMzYzZmYzNWEyODQx OWQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2ZmbXBlZ3RodW1ibmFpbGVyL3BhdGNoZXMv ZmZtcGVnNi5wYXRjaApAQCAtMCwwICsxLDIwMiBAQAorLS0tIGEvbGliZmZtcGVndGh1bWJuYWls ZXIvbW92aWVkZWNvZGVyLmNwcAkyMDE3LTExLTIxIDE0OjA2OjU3LjAwMDAwMDAwMCAtMDUwMAor KysrIGIvbGliZmZtcGVndGh1bWJuYWlsZXIvbW92aWVkZWNvZGVyLmNwcAkyMDIzLTA1LTA1IDEz OjE0OjQ3Ljk0NjU2MDY2OCAtMDQwMAorQEAgLTQxLDExICs0MSw2IEBACisgbmFtZXNwYWNlIGZm bXBlZ3RodW1ibmFpbGVyCisgeworIAorLXN0cnVjdCBTaWxlbmNlTG9nTGV2ZWwKKy17CistICAg IFNpbGVuY2VMb2dMZXZlbCgpIHsgYXZfbG9nX3NldF9sZXZlbChBVl9MT0dfUVVJRVQpOyB9Cist fTsKKy0KKyBNb3ZpZURlY29kZXI6Ok1vdmllRGVjb2RlcihBVkZvcm1hdENvbnRleHQqIHBhdkNv bnRleHQpCisgOiBtX1ZpZGVvU3RyZWFtKC0xKQorICwgbV9wRm9ybWF0Q29udGV4dChwYXZDb250 ZXh0KQorQEAgLTcwLDggKzY1LDYgQEAKKyAKKyB2b2lkIE1vdmllRGVjb2Rlcjo6aW5pdGlhbGl6 ZShjb25zdCBzdHJpbmcmIGZpbGVuYW1lLCBib29sIHByZWZlckVtYmVkZGVkTWV0YWRhdGEpCisg eworLSAgICBhdl9yZWdpc3Rlcl9hbGwoKTsKKy0gICAgYXZjb2RlY19yZWdpc3Rlcl9hbGwoKTsK KyAgICAgYXZmb3JtYXRfbmV0d29ya19pbml0KCk7CisgCisgICAgIHN0cmluZyBpbnB1dEZpbGUg PSBmaWxlbmFtZSA9PSAiLSIgPyAicGlwZToiIDogZmlsZW5hbWU7CitAQCAtOTcsOCArOTAsNyBA QAorIHsKKyAgICAgaWYgKG1fcFZpZGVvQ29kZWNDb250ZXh0KQorICAgICB7CistICAgICAgICBh dmNvZGVjX2Nsb3NlKG1fcFZpZGVvQ29kZWNDb250ZXh0KTsKKy0gICAgICAgIG1fcFZpZGVvQ29k ZWNDb250ZXh0ID0gbnVsbHB0cjsKKysgICAgICAgIGF2Y29kZWNfZnJlZV9jb250ZXh0KCZtX3BW aWRlb0NvZGVjQ29udGV4dCk7CisgICAgIH0KKyAKKyAgICAgaWYgKCghbV9Gb3JtYXRDb250ZXh0 V2FzR2l2ZW4pICYmIG1fcEZvcm1hdENvbnRleHQpCitAQCAtMTUyLDEwICsxNDQsMTAgQEAKKyAg ICAgZm9yICh1bnNpZ25lZCBpbnQgaSA9IDA7IGkgPCBtX3BGb3JtYXRDb250ZXh0LT5uYl9zdHJl YW1zOyArK2kpCisgICAgIHsKKyAgICAgICAgIEFWU3RyZWFtICpzdHJlYW0gPSBtX3BGb3JtYXRD b250ZXh0LT5zdHJlYW1zW2ldOworLSAgICAgICAgYXV0byBjdHggPSBtX3BGb3JtYXRDb250ZXh0 LT5zdHJlYW1zW2ldLT5jb2RlYzsKKy0gICAgICAgIGlmIChjdHgtPmNvZGVjX3R5cGUgPT0gQVZN RURJQV9UWVBFX1ZJREVPKQorKyAgICAgICAgYXV0byBwYXIgPSBtX3BGb3JtYXRDb250ZXh0LT5z dHJlYW1zW2ldLT5jb2RlY3BhcjsKKysgICAgICAgIGlmIChwYXItPmNvZGVjX3R5cGUgPT0gQVZN RURJQV9UWVBFX1ZJREVPKQorICAgICAgICAgeworLSAgICAgICAgICAgIGlmICghcHJlZmVyRW1i ZWRkZWRNZXRhZGF0YSB8fCAhaXNTdGlsbEltYWdlQ29kZWMoY3R4LT5jb2RlY19pZCkpCisrICAg ICAgICAgICAgaWYgKCFwcmVmZXJFbWJlZGRlZE1ldGFkYXRhIHx8ICFpc1N0aWxsSW1hZ2VDb2Rl YyhwYXItPmNvZGVjX2lkKSkKKyAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIHZpZGVv U3RyZWFtcy5wdXNoX2JhY2soaSk7CisgICAgICAgICAgICAgICAgIGNvbnRpbnVlOworQEAgLTIw Myw4ICsxOTUsNyBAQAorICAgICB9CisgCisgICAgIG1fcFZpZGVvU3RyZWFtID0gbV9wRm9ybWF0 Q29udGV4dC0+c3RyZWFtc1ttX1ZpZGVvU3RyZWFtXTsKKy0gICAgbV9wVmlkZW9Db2RlY0NvbnRl eHQgPSBtX3BWaWRlb1N0cmVhbS0+Y29kZWM7CistICAgIG1fcFZpZGVvQ29kZWMgPSBhdmNvZGVj X2ZpbmRfZGVjb2RlcihtX3BWaWRlb0NvZGVjQ29udGV4dC0+Y29kZWNfaWQpOworKyAgICBtX3BW aWRlb0NvZGVjID0gYXZjb2RlY19maW5kX2RlY29kZXIobV9wVmlkZW9TdHJlYW0tPmNvZGVjcGFy LT5jb2RlY19pZCk7CisgCisgICAgIGlmIChtX3BWaWRlb0NvZGVjID09IG51bGxwdHIpCisgICAg IHsKK0BAIC0yMTQsNiArMjA1LDIwIEBACisgICAgICAgICB0aHJvdyBsb2dpY19lcnJvcigiVmlk ZW8gQ29kZWMgbm90IGZvdW5kIik7CisgICAgIH0KKyAKKysgICAgbV9wVmlkZW9Db2RlY0NvbnRl eHQgPSBhdmNvZGVjX2FsbG9jX2NvbnRleHQzKG1fcFZpZGVvQ29kZWMpOworKworKyAgICBpZiAo bV9wVmlkZW9Db2RlY0NvbnRleHQgPT0gbnVsbHB0cikKKysgICAgeworKyAgICAgICAgZGVzdHJv eSgpOworKyAgICAgICAgdGhyb3cgbG9naWNfZXJyb3IoIkNvdWxkIG5vdCBhbGxvY2F0ZSB2aWRl byBjb2RlYyBjb250ZXh0Iik7CisrICAgIH0KKysKKysgICAgaWYgKGF2Y29kZWNfcGFyYW1ldGVy c190b19jb250ZXh0KG1fcFZpZGVvQ29kZWNDb250ZXh0LCBtX3BWaWRlb1N0cmVhbS0+Y29kZWNw YXIpIDwgMCkKKysgICAgeworKyAgICAgICAgZGVzdHJveSgpOworKyAgICAgICAgdGhyb3cgbG9n aWNfZXJyb3IoIkNvdWxkIG5vdCBjb25maWd1cmUgdmlkZW8gY29kZWMgY29udGV4dCIpOworKyAg ICB9CisrCisgICAgIG1fcFZpZGVvQ29kZWNDb250ZXh0LT53b3JrYXJvdW5kX2J1Z3MgPSAxOwor IAorICAgICBpZiAoYXZjb2RlY19vcGVuMihtX3BWaWRlb0NvZGVjQ29udGV4dCwgbV9wVmlkZW9D b2RlYywgbnVsbHB0cikgPCAwKQorQEAgLTM4NiwxMyArMzkxLDYgQEAKKyAKKyB2b2lkIE1vdmll RGVjb2Rlcjo6aW5pdGlhbGl6ZUZpbHRlckdyYXBoKGNvbnN0IEFWUmF0aW9uYWwmIHRpbWVCYXNl LCBjb25zdCBzdGQ6OnN0cmluZyYgc2l6ZSwgYm9vbCBtYWludGFpbkFzcGVjdFJhdGlvKQorIHsK Ky0gICAgc3RhdGljIGNvbnN0IEFWUGl4ZWxGb3JtYXQgcGl4ZWxGb3JtYXRzW10gPSB7IEFWX1BJ WF9GTVRfUkdCMjQsIEFWX1BJWF9GTVRfTk9ORSB9OworLQorLSAgICBhdXRvIGRlbCA9IFtdIChB VkJ1ZmZlclNpbmtQYXJhbXMqIHApIHsgYXZfZnJlZXAocCk7IH07CistICAgIHN0ZDo6dW5pcXVl X3B0cjxBVkJ1ZmZlclNpbmtQYXJhbXMsIGRlY2x0eXBlKGRlbCk+IGJ1ZmZlcnNpbmtQYXJhbXMo YXZfYnVmZmVyc2lua19wYXJhbXNfYWxsb2MoKSwgZGVsKTsKKy0KKy0gICAgYXZmaWx0ZXJfcmVn aXN0ZXJfYWxsKCk7CistCisgICAgIG1fcEZpbHRlckdyYXBoID0gYXZmaWx0ZXJfZ3JhcGhfYWxs b2MoKTsKKyAgICAgYXNzZXJ0KG1fcEZpbHRlckdyYXBoKTsKKyAKK0BAIC00MDQsMTAgKzQwMiw4 IEBACisgCisgICAgIGNoZWNrUmMoYXZmaWx0ZXJfZ3JhcGhfY3JlYXRlX2ZpbHRlcigmbV9wRmls dGVyU291cmNlLCBhdmZpbHRlcl9nZXRfYnlfbmFtZSgiYnVmZmVyIiksICJ0aHVtYl9idWZmZXIi LCBzcy5zdHIoKS5jX3N0cigpLCBudWxscHRyLCBtX3BGaWx0ZXJHcmFwaCksCisgICAgICAgICAg ICAgIkZhaWxlZCB0byBjcmVhdGUgZmlsdGVyIHNvdXJjZSIpOworLSAgICBidWZmZXJzaW5rUGFy YW1zLT5waXhlbF9mbXRzID0gcGl4ZWxGb3JtYXRzOworLSAgICBjaGVja1JjKGF2ZmlsdGVyX2dy YXBoX2NyZWF0ZV9maWx0ZXIoJm1fcEZpbHRlclNpbmssIGF2ZmlsdGVyX2dldF9ieV9uYW1lKCJi dWZmZXJzaW5rIiksICJ0aHVtYl9idWZmZXJzaW5rIiwgbnVsbHB0ciwgYnVmZmVyc2lua1BhcmFt cy5nZXQoKSwgbV9wRmlsdGVyR3JhcGgpLAorKyAgICBjaGVja1JjKGF2ZmlsdGVyX2dyYXBoX2Ny ZWF0ZV9maWx0ZXIoJm1fcEZpbHRlclNpbmssIGF2ZmlsdGVyX2dldF9ieV9uYW1lKCJidWZmZXJz aW5rIiksICJ0aHVtYl9idWZmZXJzaW5rIiwgbnVsbHB0ciwgbnVsbHB0ciwgbV9wRmlsdGVyR3Jh cGgpLAorICAgICAgICAgICAgICJGYWlsZWQgdG8gY3JlYXRlIGZpbHRlciBzaW5rIik7CistICAg IGJ1ZmZlcnNpbmtQYXJhbXMucmVsZWFzZSgpOworIAorICAgICBBVkZpbHRlckNvbnRleHQqIHlh ZGlmRmlsdGVyID0gbnVsbHB0cjsKKyAgICAgaWYgKG1fcEZyYW1lLT5pbnRlcmxhY2VkX2ZyYW1l ICE9IDApCitAQCAtNTAwLDE1ICs0OTYsMTUgQEAKKyAgICAgfQorIAorICAgICBjaGVja1JjKGF2 X3NlZWtfZnJhbWUobV9wRm9ybWF0Q29udGV4dCwgLTEsIHRpbWVzdGFtcCwgMCksICJTZWVraW5n IGluIHZpZGVvIGZhaWxlZCIpOworLSAgICBhdmNvZGVjX2ZsdXNoX2J1ZmZlcnMobV9wRm9ybWF0 Q29udGV4dC0+c3RyZWFtc1ttX1ZpZGVvU3RyZWFtXS0+Y29kZWMpOworKyAgICBhdmNvZGVjX2Zs dXNoX2J1ZmZlcnMobV9wVmlkZW9Db2RlY0NvbnRleHQpOworIAorICAgICBpbnQga2V5RnJhbWVB dHRlbXB0cyA9IDA7CistICAgIGJvb2wgZ290RnJhbWUgPSAwOworKyAgICBib29sIGdvdEZyYW1l OworIAorICAgICBkbworICAgICB7CisgICAgICAgICBpbnQgY291bnQgPSAwOworLSAgICAgICAg Z290RnJhbWUgPSAwOworKyAgICAgICAgZ290RnJhbWUgPSBmYWxzZTsKKyAKKyAgICAgICAgIHdo aWxlICghZ290RnJhbWUgJiYgY291bnQgPCAyMCkKKyAgICAgICAgIHsKK0BAIC01NTIsMTcgKzU0 OCwzMyBAQAorICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICB9CisgCistICAgIGF2X2ZyYW1l X3VucmVmKG1fcEZyYW1lKTsKKy0KKy0gICAgaW50IGZyYW1lRmluaXNoZWQ7CisrICAgIGludCBy YyA9IGF2Y29kZWNfc2VuZF9wYWNrZXQobV9wVmlkZW9Db2RlY0NvbnRleHQsIG1fcFBhY2tldCk7 CisrICAgIGlmKHJjID09IEFWRVJST1IoRUFHQUlOKSkKKysgICAgeworKyAgICAgICAgcmMgPSAw OworKyAgICB9CisgCistICAgIGludCBieXRlc0RlY29kZWQgPSBhdmNvZGVjX2RlY29kZV92aWRl bzIobV9wVmlkZW9Db2RlY0NvbnRleHQsIG1fcEZyYW1lLCAmZnJhbWVGaW5pc2hlZCwgbV9wUGFj a2V0KTsKKy0gICAgaWYgKGJ5dGVzRGVjb2RlZCA8IDApCisrICAgIGlmKHJjID09IEFWRVJST1Jf RU9GKQorKyAgICB7CisrICAgICAgICByZXR1cm4gZmFsc2U7CisrICAgIH0KKysgICAgZWxzZSBp ZihyYyA8IDApCisgICAgIHsKKy0gICAgICAgIHRocm93IGxvZ2ljX2Vycm9yKCJGYWlsZWQgdG8g ZGVjb2RlIHZpZGVvIGZyYW1lOiBieXRlc0RlY29kZWQgPCAwIik7CisrICAgICAgICB0aHJvdyBs b2dpY19lcnJvcigiRmFpbGVkIHRvIGRlY29kZSB2aWRlbyBmcmFtZTogYXZjb2RlY19zZW5kX3Bh Y2tldCgpIDwgMCIpOworICAgICB9CisgCistICAgIHJldHVybiBmcmFtZUZpbmlzaGVkID4gMDsK KysgICAgcmMgPSBhdmNvZGVjX3JlY2VpdmVfZnJhbWUobV9wVmlkZW9Db2RlY0NvbnRleHQsIG1f cEZyYW1lKTsKKysgICAgc3dpdGNoKHJjKQorKyAgICB7CisrICAgICAgICBjYXNlIDA6CisrICAg ICAgICAgICAgcmV0dXJuIHRydWU7CisrCisrICAgICAgICBjYXNlIEFWRVJST1IoRUFHQUlOKToK KysgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisrCisrICAgICAgICBkZWZhdWx0OgorKyAgICAg ICAgICAgIHRocm93IGxvZ2ljX2Vycm9yKCJGYWlsZWQgdG8gZGVjb2RlIHZpZGVvIGZyYW1lOiBh dmNvZGVjX3JlY2VpdmVfZnJhbWUoKSA8IDAiKTsKKysgICAgfQorIH0KKyAKKyBib29sIE1vdmll RGVjb2Rlcjo6Z2V0VmlkZW9QYWNrZXQoKQorQEAgLTU3MCw4ICs1ODIsNiBAQAorICAgICBib29s IGZyYW1lc0F2YWlsYWJsZSA9IHRydWU7CisgICAgIGJvb2wgZnJhbWVEZWNvZGVkID0gZmFsc2U7 CisgCistICAgIGludCBhdHRlbXB0cyA9IDA7CistCisgICAgIGlmIChtX3BQYWNrZXQpCisgICAg IHsKKyAgICAgICAgIGF2X3BhY2tldF91bnJlZihtX3BQYWNrZXQpOworQEAgLTU4MCw2ICs1OTAs NyBAQAorIAorICAgICBtX3BQYWNrZXQgPSBuZXcgQVZQYWNrZXQoKTsKKyAKKysKKyAgICAgd2hp bGUgKGZyYW1lc0F2YWlsYWJsZSAmJiAhZnJhbWVEZWNvZGVkKQorICAgICB7CisgICAgICAgICBm cmFtZXNBdmFpbGFibGUgPSBhdl9yZWFkX2ZyYW1lKG1fcEZvcm1hdENvbnRleHQsIG1fcFBhY2tl dCkgPj0gMDsKK0BAIC02NDQsNyArNjU1LDcgQEAKKyAKKyBpbnQzMl90IE1vdmllRGVjb2Rlcjo6 Z2V0U3RyZWFtUm90YXRpb24oKQorIHsKKy0gICAgaW50MzJfdCogbWF0cml4ID0gcmVpbnRlcnBy ZXRfY2FzdDxpbnQzMl90Kj4oYXZfc3RyZWFtX2dldF9zaWRlX2RhdGEobV9wVmlkZW9TdHJlYW0s IEFWX1BLVF9EQVRBX0RJU1BMQVlNQVRSSVgsIG51bGxwdHIpKTsKKysgICAgYXV0byBtYXRyaXgg PSByZWludGVycHJldF9jYXN0PGludDMyX3QqPihhdl9zdHJlYW1fZ2V0X3NpZGVfZGF0YShtX3BW aWRlb1N0cmVhbSwgQVZfUEtUX0RBVEFfRElTUExBWU1BVFJJWCwgbnVsbHB0cikpOworICAgICBp ZiAobWF0cml4KQorICAgICB7CisgICAgICAgICBhdXRvIGFuZ2xlID0gbHJvdW5kKGF2X2Rpc3Bs YXlfcm90YXRpb25fZ2V0KG1hdHJpeCkpOworCistLS0gYS9saWJmZm1wZWd0aHVtYm5haWxlci9t b3ZpZWRlY29kZXIuaAkyMDE3LTExLTEyIDA0OjIzOjM4LjAwMDAwMDAwMCAtMDUwMAorKysrIGIv bGliZmZtcGVndGh1bWJuYWlsZXIvbW92aWVkZWNvZGVyLmgJMjAyMy0wNS0wNSAxMzoyNjowNy4w OTU1Mjk5MTEgLTA0MDAKK0BAIC03OCw3ICs3OCw3IEBACisgICAgIGludCAgICAgICAgICAgICAg ICAgICAgIG1fVmlkZW9TdHJlYW07DQorICAgICBBVkZvcm1hdENvbnRleHQqICAgICAgICBtX3BG b3JtYXRDb250ZXh0Ow0KKyAgICAgQVZDb2RlY0NvbnRleHQqICAgICAgICAgbV9wVmlkZW9Db2Rl Y0NvbnRleHQ7DQorLSAgICBBVkNvZGVjKiAgICAgICAgICAgICAgICBtX3BWaWRlb0NvZGVjOw0K KysgICAgY29uc3QgQVZDb2RlYyogICAgICAgICAgbV9wVmlkZW9Db2RlYzsNCisgICAgIEFWRmls dGVyR3JhcGgqICAgICAgICAgIG1fcEZpbHRlckdyYXBoOw0KKyAgICAgQVZGaWx0ZXJDb250ZXh0 KiAgICAgICAgbV9wRmlsdGVyU291cmNlOw0KKyAgICAgQVZGaWx0ZXJDb250ZXh0KiAgICAgICAg bV9wRmlsdGVyU2luazsNCmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZmbXBlZ3RodW1ibmFpbGVyL3Rl bXBsYXRlIGIvc3JjcGtncy9mZm1wZWd0aHVtYm5haWxlci90ZW1wbGF0ZQppbmRleCAwMzllZWE3 NjIyYjM5MS4uMzVkNTQ2MDE4ZDEyYWYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZmZtcGVndGh1bWJu YWlsZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9mZm1wZWd0aHVtYm5haWxlci90ZW1wbGF0ZQpA QCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2ZmbXBlZ3RodW1ibmFpbGVyJwog cGtnbmFtZT1mZm1wZWd0aHVtYm5haWxlcgogdmVyc2lvbj0yLjIuMgotcmV2aXNpb249MQorcmV2 aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIK IG1ha2VkZXBlbmRzPSJsaWJwbmctZGV2ZWwgbGlianBlZy10dXJiby1kZXZlbCBmZm1wZWctZGV2 ZWwiCkBAIC05LDggKzksOCBAQCBkZXBlbmRzPSJmZm1wZWciCiBzaG9ydF9kZXNjPSJMaWdodHdl aWdodCB2aWRlbyB0aHVtYm5haWxlciIKIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9p ZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgotaG9tZXBhZ2U9Imh0dHBz Oi8vZ2l0aHViLmNvbS9kaXJrdmRiLyR7cGtnbmFtZX0iCi1kaXN0ZmlsZXM9IiR7aG9tZXBhZ2V9 L3JlbGVhc2VzL2Rvd25sb2FkLyR7dmVyc2lvbn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci5i ejIiCitob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL2Rpcmt2ZGIiCitkaXN0ZmlsZXM9IiR7 aG9tZXBhZ2V9LyR7cGtnbmFtZX0vcmVsZWFzZXMvZG93bmxvYWQvJHt2ZXJzaW9ufS8ke3BrZ25h bWV9LSR7dmVyc2lvbn0udGFyLmJ6MiIKIGNoZWNrc3VtPTFjYjI0MDU5YzM4MjIzZjY1N2IzMDBj ODRkZDgwNDkxYjcwNDBkNGI2OTQ3MWM0ZmVhNjliZTg2MmJjOTliNWIKIAogcG9zdF9pbnN0YWxs KCkgewoKRnJvbSA4N2QwODA2Zjc3YTBkZGM1YzVjY2VjNmM5MmFkZTE1Nzk0ZjU3YmRiIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRl OiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ3IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMjgvMTA4 XSBmZm1wZWd0aHVtYnM6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9mZm1wZWd0 aHVtYnMvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEg ZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZmbXBlZ3RodW1icy90ZW1wbGF0ZSBi L3NyY3BrZ3MvZmZtcGVndGh1bWJzL3RlbXBsYXRlCmluZGV4IGMyNmIyNjI3YjVhMGUzLi43YjNm ZDI2MjM3MWRiYyAxMDA2NDQKLS0tIGEvc3JjcGtncy9mZm1wZWd0aHVtYnMvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9mZm1wZWd0aHVtYnMvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdmZm1wZWd0aHVtYnMnCiBwa2duYW1lPWZmbXBlZ3RodW1icwogdmVyc2lv bj0yNC4wMi4yCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogY29u ZmlndXJlX2FyZ3M9Ii1EUVRfTUFKT1JfVkVSU0lPTj02IC1ES0Y2X0hPU1RfVE9PTElORz0vdXNy L2xpYi9jbWFrZQogIC1ES0RFX0lOU1RBTExfUVRQTFVHSU5ESVI9bGliL3F0Ni9wbHVnaW5zIgoK RnJvbSBjYmZiODc0NjNjZWIwOTJmM2YxOTgyNzA2ZjU1YWUxYWU1MDQxNDFhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQs IDIyIE1hciAyMDIzIDIwOjAxOjQ3IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMjkvMTA4XSBmZm1z MjogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2ZmbXMyL3BhdGNoZXMvZmZtcGVn NS5wYXRjaCB8IDQyNCArKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2ZmbXMy L3RlbXBsYXRlICAgICAgICAgICAgICB8ICAgMiArLQogMiBmaWxlcyBjaGFuZ2VkLCA0MjUgaW5z ZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZmZt czIvcGF0Y2hlcy9mZm1wZWc1LnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9mZm1zMi9wYXRj aGVzL2ZmbXBlZzUucGF0Y2ggYi9zcmNwa2dzL2ZmbXMyL3BhdGNoZXMvZmZtcGVnNS5wYXRjaApu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uMTQ3OWZhYmNhZmNiNGUK LS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2ZmbXMyL3BhdGNoZXMvZmZtcGVnNS5wYXRjaApA QCAtMCwwICsxLDQyNCBAQAorRnJvbSA0NTY3MzE0OWU5YTJmNTU4Njg1NWFkNDcyZTMwNTkwODRl YWEzNmIxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogRGVyZWsgQnVpdGVuaHVpcyA8 ZGVyZWsuYnVpdGVuaHVpc0BnbWFpbC5jb20+CitEYXRlOiBUdWUsIDQgTWF5IDIwMjEgMTQ6NDE6 MjEgKzAxMDAKK1N1YmplY3Q6IFtQQVRDSF0gVXNlIGF1dG8gZm9yIEFWQ29kZWMKKworVGhlIGdl bml1c2VzIG92ZXIgYXQgRkZtcGVnIGRlY2lkZWQgdG8gY29uc3RpZnkgdGhpcyBBUEksIHNvIG9s ZAordmVyc2lvbnMgb2YgdGhlIGxpYnJhcnkgd2lsbCByZXR1cm4gQVZDb2RlYyAqLCB3aGlsZSBu ZXcgdmVyc2lvbnMKK29mIHRoZSBsaWJhcnkgd2lsbCByZXR1cm4gY29uc3QgQVZDb2RlYyAqLCB3 aGljaCwgaW4gQysrLCBhcmUgbm90CitPSyB0byBjb252ZXJ0IGJldHdlZW4uCisKK1JhdGhlciB0 aGFuIHVzZSBzb21lIG1hY3JvIGhlbGwgaW4gZmZtc2NvbXBhdC5oLCB3ZSBjYW4gd29yayBhcm91 bmQKK3RoaXMgYnkgdXNpbmcgYXV0by4KKworR3Jvc3MuCisKK1NpZ25lZC1vZmYtYnk6IERlcmVr IEJ1aXRlbmh1aXMgPGRlcmVrLmJ1aXRlbmh1aXNAZ21haWwuY29tPgorLS0tCisgc3JjL2NvcmUv YXVkaW9zb3VyY2UuY3BwIHwgMiArLQorIHNyYy9jb3JlL2luZGV4aW5nLmNwcCAgICB8IDYgKysr LS0tCisgc3JjL2NvcmUvdmlkZW9zb3VyY2UuY3BwIHwgMiArLQorIDMgZmlsZXMgY2hhbmdlZCwg NSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvc3JjL2NvcmUv YXVkaW9zb3VyY2UuY3BwIGIvc3JjL2NvcmUvYXVkaW9zb3VyY2UuY3BwCitpbmRleCBlNGNlOTdj Li5hYzA5NjY2IDEwMDY0NAorLS0tIGEvc3JjL2NvcmUvYXVkaW9zb3VyY2UuY3BwCisrKysgYi9z cmMvY29yZS9hdWRpb3NvdXJjZS5jcHAKK0BAIC00NjksNyArNDY5LDcgQEAgdm9pZCBGRk1TX0F1 ZGlvU291cmNlOjpPcGVuRmlsZSgpIHsKKyAKKyAgICAgTEFWRk9wZW5GaWxlKFNvdXJjZUZpbGUu Y19zdHIoKSwgRm9ybWF0Q29udGV4dCwgVHJhY2tOdW1iZXIpOworIAorLSAgICBBVkNvZGVjICpD b2RlYyA9IGF2Y29kZWNfZmluZF9kZWNvZGVyKEZvcm1hdENvbnRleHQtPnN0cmVhbXNbVHJhY2tO dW1iZXJdLT5jb2RlY3Bhci0+Y29kZWNfaWQpOworKyAgICBhdXRvICpDb2RlYyA9IGF2Y29kZWNf ZmluZF9kZWNvZGVyKEZvcm1hdENvbnRleHQtPnN0cmVhbXNbVHJhY2tOdW1iZXJdLT5jb2RlY3Bh ci0+Y29kZWNfaWQpOworICAgICBpZiAoQ29kZWMgPT0gbnVsbHB0cikKKyAgICAgICAgIHRocm93 IEZGTVNfRXhjZXB0aW9uKEZGTVNfRVJST1JfREVDT0RJTkcsIEZGTVNfRVJST1JfQ09ERUMsCisg ICAgICAgICAgICAgIkF1ZGlvIGNvZGVjIG5vdCBmb3VuZCIpOworZGlmZiAtLWdpdCBhL3NyYy9j b3JlL2luZGV4aW5nLmNwcCBiL3NyYy9jb3JlL2luZGV4aW5nLmNwcAoraW5kZXggZTU0N2M1YS4u NTlmYjRlOCAxMDA2NDQKKy0tLSBhL3NyYy9jb3JlL2luZGV4aW5nLmNwcAorKysrIGIvc3JjL2Nv cmUvaW5kZXhpbmcuY3BwCitAQCAtMzg0LDcgKzM4NCw3IEBAIEZGTVNfVHJhY2tUeXBlIEZGTVNf SW5kZXhlcjo6R2V0VHJhY2tUeXBlKGludCBUcmFjaykgeworIH0KKyAKKyBjb25zdCBjaGFyICpG Rk1TX0luZGV4ZXI6OkdldFRyYWNrQ29kZWMoaW50IFRyYWNrKSB7CistICAgIEFWQ29kZWMgKmNv ZGVjID0gYXZjb2RlY19maW5kX2RlY29kZXIoRm9ybWF0Q29udGV4dC0+c3RyZWFtc1tUcmFja10t PmNvZGVjcGFyLT5jb2RlY19pZCk7CisrICAgIGF1dG8gKmNvZGVjID0gYXZjb2RlY19maW5kX2Rl Y29kZXIoRm9ybWF0Q29udGV4dC0+c3RyZWFtc1tUcmFja10tPmNvZGVjcGFyLT5jb2RlY19pZCk7 CisgICAgIHJldHVybiBjb2RlYyA/IGNvZGVjLT5uYW1lIDogbnVsbHB0cjsKKyB9CisgCitAQCAt NDAyLDcgKzQwMiw3IEBAIEZGTVNfSW5kZXggKkZGTVNfSW5kZXhlcjo6RG9JbmRleGluZygpIHsK KyAgICAgICAgICAgICBVc2VEVFMpOworIAorICAgICAgICAgaWYgKEluZGV4TWFzay5jb3VudChp KSAmJiBGb3JtYXRDb250ZXh0LT5zdHJlYW1zW2ldLT5jb2RlY3Bhci0+Y29kZWNfdHlwZSA9PSBB Vk1FRElBX1RZUEVfVklERU8pIHsKKy0gICAgICAgICAgICBBVkNvZGVjICpWaWRlb0NvZGVjID0g YXZjb2RlY19maW5kX2RlY29kZXIoRm9ybWF0Q29udGV4dC0+c3RyZWFtc1tpXS0+Y29kZWNwYXIt PmNvZGVjX2lkKTsKKysgICAgICAgICAgICBhdXRvICpWaWRlb0NvZGVjID0gYXZjb2RlY19maW5k X2RlY29kZXIoRm9ybWF0Q29udGV4dC0+c3RyZWFtc1tpXS0+Y29kZWNwYXItPmNvZGVjX2lkKTsK KyAgICAgICAgICAgICBpZiAoIVZpZGVvQ29kZWMpIHsKKyAgICAgICAgICAgICAgICAgRm9ybWF0 Q29udGV4dC0+c3RyZWFtc1tpXS0+ZGlzY2FyZCA9IEFWRElTQ0FSRF9BTEw7CisgICAgICAgICAg ICAgICAgIEluZGV4TWFzay5lcmFzZShpKTsKK0BAIC00MzMsNyArNDMzLDcgQEAgRkZNU19JbmRl eCAqRkZNU19JbmRleGVyOjpEb0luZGV4aW5nKCkgeworICAgICAgICAgICAgICAgICBJbmRleE1h c2suaW5zZXJ0KGkpOworICAgICAgICAgICAgIH0KKyAgICAgICAgIH0gZWxzZSBpZiAoSW5kZXhN YXNrLmNvdW50KGkpICYmIEZvcm1hdENvbnRleHQtPnN0cmVhbXNbaV0tPmNvZGVjcGFyLT5jb2Rl Y190eXBlID09IEFWTUVESUFfVFlQRV9BVURJTykgeworLSAgICAgICAgICAgIEFWQ29kZWMgKkF1 ZGlvQ29kZWMgPSBhdmNvZGVjX2ZpbmRfZGVjb2RlcihGb3JtYXRDb250ZXh0LT5zdHJlYW1zW2ld LT5jb2RlY3Bhci0+Y29kZWNfaWQpOworKyAgICAgICAgICAgIGF1dG8gKkF1ZGlvQ29kZWMgPSBh dmNvZGVjX2ZpbmRfZGVjb2RlcihGb3JtYXRDb250ZXh0LT5zdHJlYW1zW2ldLT5jb2RlY3Bhci0+ Y29kZWNfaWQpOworICAgICAgICAgICAgIGlmIChBdWRpb0NvZGVjID09IG51bGxwdHIpCisgICAg ICAgICAgICAgICAgIHRocm93IEZGTVNfRXhjZXB0aW9uKEZGTVNfRVJST1JfQ09ERUMsIEZGTVNf RVJST1JfVU5TVVBQT1JURUQsCisgICAgICAgICAgICAgICAgICAgICAiQXVkaW8gY29kZWMgbm90 IGZvdW5kIik7CitkaWZmIC0tZ2l0IGEvc3JjL2NvcmUvdmlkZW9zb3VyY2UuY3BwIGIvc3JjL2Nv cmUvdmlkZW9zb3VyY2UuY3BwCitpbmRleCBiODg5OTcwLi44OTU2YzIyIDEwMDY0NAorLS0tIGEv c3JjL2NvcmUvdmlkZW9zb3VyY2UuY3BwCisrKysgYi9zcmMvY29yZS92aWRlb3NvdXJjZS5jcHAK K0BAIC0xNzEsNyArMTcxLDcgQEAgRkZNU19WaWRlb1NvdXJjZTo6RkZNU19WaWRlb1NvdXJjZShj b25zdCBjaGFyICpTb3VyY2VGaWxlLCBGRk1TX0luZGV4ICZJbmRleCwgaW4KKyAKKyAgICAgICAg IExBVkZPcGVuRmlsZShTb3VyY2VGaWxlLCBGb3JtYXRDb250ZXh0LCBWaWRlb1RyYWNrKTsKKyAK Ky0gICAgICAgIEFWQ29kZWMgKkNvZGVjID0gYXZjb2RlY19maW5kX2RlY29kZXIoRm9ybWF0Q29u dGV4dC0+c3RyZWFtc1tWaWRlb1RyYWNrXS0+Y29kZWNwYXItPmNvZGVjX2lkKTsKKysgICAgICAg IGF1dG8gKkNvZGVjID0gYXZjb2RlY19maW5kX2RlY29kZXIoRm9ybWF0Q29udGV4dC0+c3RyZWFt c1tWaWRlb1RyYWNrXS0+Y29kZWNwYXItPmNvZGVjX2lkKTsKKyAgICAgICAgIGlmIChDb2RlYyA9 PSBudWxscHRyKQorICAgICAgICAgICAgIHRocm93IEZGTVNfRXhjZXB0aW9uKEZGTVNfRVJST1Jf REVDT0RJTkcsIEZGTVNfRVJST1JfQ09ERUMsCisgICAgICAgICAgICAgICAgICJWaWRlbyBjb2Rl YyBub3QgZm91bmQiKTsKKy0tIAorMi40MC4wCisKK0Zyb20gOTZjYmYzOGVhOTM4MTgyOWExMzE0 ZjQzMmEyYzYwNDk1ZGNlZmFhZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IERlcmVr IEJ1aXRlbmh1aXMgPGRlcmVrLmJ1aXRlbmh1aXNAZ21haWwuY29tPgorRGF0ZTogVHVlLCA0IE1h eSAyMDIxIDE0OjEyOjQxICswMTAwCitTdWJqZWN0OiBbUEFUQ0hdIGFsbDogVXBkYXRlIEFWUGFj a2V0IEFQSSB1c2FnZQorCitBVlBhY2tldHMgbXVzdCBhbGwgYmUgb24gdGhlIGhlYXAgbm93LCBz aW5jZSBpdCBpcyBubyBsb25nZXIKK3BhcnQgb2YgdGhlIGxpYmF2KiBBQkkuCisKK1NpZ25lZC1v ZmYtYnk6IERlcmVrIEJ1aXRlbmh1aXMgPGRlcmVrLmJ1aXRlbmh1aXNAZ21haWwuY29tPgorLS0t Cisgc3JjL2NvcmUvYXVkaW9zb3VyY2UuY3BwIHwgMTYgKysrKysrLS0tLQorIHNyYy9jb3JlL2lu ZGV4aW5nLmNwcCAgICB8IDYzICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0t LS0KKyBzcmMvY29yZS9pbmRleGluZy5oICAgICAgfCAgNCArLS0KKyBzcmMvY29yZS91dGlscy5j cHAgICAgICAgfCAgNiAtLS0tCisgc3JjL2NvcmUvdXRpbHMuaCAgICAgICAgIHwgIDEgLQorIHNy Yy9jb3JlL3ZpZGVvc291cmNlLmNwcCB8IDMwICsrKysrKysrKystLS0tLS0tLS0KKyA2IGZpbGVz IGNoYW5nZWQsIDY0IGluc2VydGlvbnMoKyksIDU2IGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0 IGEvc3JjL2NvcmUvYXVkaW9zb3VyY2UuY3BwIGIvc3JjL2NvcmUvYXVkaW9zb3VyY2UuY3BwCitp bmRleCAzN2NmOWFlLi5lNGNlOTdjIDEwMDY0NAorLS0tIGEvc3JjL2NvcmUvYXVkaW9zb3VyY2Uu Y3BwCisrKysgYi9zcmMvY29yZS9hdWRpb3NvdXJjZS5jcHAKK0BAIC0yODUsMTAgKzI4NSwxNSBA QCBGRk1TX0F1ZGlvU291cmNlOjpBdWRpb0Jsb2NrICpGRk1TX0F1ZGlvU291cmNlOjpDYWNoZUJs b2NrKENhY2hlSXRlcmF0b3IgJnBvcykgeworIGludCBGRk1TX0F1ZGlvU291cmNlOjpEZWNvZGVO ZXh0QmxvY2soQ2FjaGVJdGVyYXRvciAqcG9zKSB7CisgICAgIEN1cnJlbnRGcmFtZSA9ICZGcmFt ZXNbUGFja2V0TnVtYmVyXTsKKyAKKy0gICAgQVZQYWNrZXQgUGFja2V0OworLSAgICBpZiAoIVJl YWRQYWNrZXQoJlBhY2tldCkpCisrICAgIEFWUGFja2V0ICpQYWNrZXQgPSBhdl9wYWNrZXRfYWxs b2MoKTsKKysgICAgaWYgKCFQYWNrZXQpCisrICAgICAgICB0aHJvdyBGRk1TX0V4Y2VwdGlvbihG Rk1TX0VSUk9SX1BBUlNFUiwgRkZNU19FUlJPUl9BTExPQ0FUSU9OX0ZBSUxFRCwKKysgICAgICAg ICAgICAiQ291bGQgbm90IGFsbG9jYXRlIHBhY2tldC4iKTsKKysgICAgaWYgKCFSZWFkUGFja2V0 KFBhY2tldCkpIHsKKysgICAgICAgIGF2X3BhY2tldF9mcmVlKCZQYWNrZXQpOworICAgICAgICAg dGhyb3cgRkZNU19FeGNlcHRpb24oRkZNU19FUlJPUl9QQVJTRVIsIEZGTVNfRVJST1JfVU5LTk9X TiwKKyAgICAgICAgICAgICAiUmVhZFBhY2tldCB1bmV4cGVjdGVkbHkgZmFpbGVkIHRvIHJlYWQg YSBwYWNrZXQiKTsKKysgICAgfQorIAorICAgICAvLyBSZWFkUGFja2V0IG1heSBoYXZlIGNoYW5n ZWQgdGhlIHBhY2tldCBudW1iZXIKKyAgICAgQ3VycmVudEZyYW1lID0gJkZyYW1lc1tQYWNrZXRO dW1iZXJdOworQEAgLTI5Nyw4ICszMDIsOSBAQCBpbnQgRkZNU19BdWRpb1NvdXJjZTo6RGVjb2Rl TmV4dEJsb2NrKENhY2hlSXRlcmF0b3IgKnBvcykgeworICAgICBpbnQgTnVtYmVyT2ZTYW1wbGVz ID0gMDsKKyAgICAgQXVkaW9CbG9jayAqQ2FjaGVkQmxvY2sgPSBudWxscHRyOworICAgICAKKy0g ICAgaW50IFJldCA9IGF2Y29kZWNfc2VuZF9wYWNrZXQoQ29kZWNDb250ZXh0LCAmUGFja2V0KTsK Ky0gICAgYXZfcGFja2V0X3VucmVmKCZQYWNrZXQpOworKyAgICBpbnQgUmV0ID0gYXZjb2RlY19z ZW5kX3BhY2tldChDb2RlY0NvbnRleHQsIFBhY2tldCk7CisrICAgIGF2X3BhY2tldF91bnJlZihQ YWNrZXQpOworKyAgICBhdl9wYWNrZXRfZnJlZSgmUGFja2V0KTsKKyAKKyAgICAgYXZfZnJhbWVf dW5yZWYoRGVjb2RlRnJhbWUpOworICAgICBSZXQgPSBhdmNvZGVjX3JlY2VpdmVfZnJhbWUoQ29k ZWNDb250ZXh0LCBEZWNvZGVGcmFtZSk7CitAQCAtNTEzLDggKzUxOSw2IEBAIHZvaWQgRkZNU19B dWRpb1NvdXJjZTo6U2VlaygpIHsKKyB9CisgCisgYm9vbCBGRk1TX0F1ZGlvU291cmNlOjpSZWFk UGFja2V0KEFWUGFja2V0ICpQYWNrZXQpIHsKKy0gICAgSW5pdE51bGxQYWNrZXQoKlBhY2tldCk7 CistCisgICAgIHdoaWxlIChhdl9yZWFkX2ZyYW1lKEZvcm1hdENvbnRleHQsIFBhY2tldCkgPj0g MCkgeworICAgICAgICAgaWYgKFBhY2tldC0+c3RyZWFtX2luZGV4ID09IFRyYWNrTnVtYmVyKSB7 CisgICAgICAgICAgICAgLy8gUmVxdWlyZWQgYmVjYXVzZSBub3QgYWxsIGF1ZGlvIHBhY2tldHMs IGVzcGVjaWFsbHkgaW4gb2dnLCBoYXZlIGEgcHRzLiBVc2UgdGhlIHByZXZpb3VzIHZhbGlkIHBh Y2tldCdzIHB0cyBpbnN0ZWFkLgorZGlmZiAtLWdpdCBhL3NyYy9jb3JlL2luZGV4aW5nLmNwcCBi L3NyYy9jb3JlL2luZGV4aW5nLmNwcAoraW5kZXggMjNmYjk1Yi4uZTU0N2M1YSAxMDA2NDQKKy0t LSBhL3NyYy9jb3JlL2luZGV4aW5nLmNwcAorKysrIGIvc3JjL2NvcmUvaW5kZXhpbmcuY3BwCitA QCAtMzIwLDcgKzMyMCw3IEBAIHZvaWQgRkZNU19JbmRleGVyOjpDaGVja0F1ZGlvUHJvcGVydGll cyhpbnQgVHJhY2ssIEFWQ29kZWNDb250ZXh0ICpDb250ZXh0KSB7CisgICAgIH0KKyB9CisgCist dm9pZCBGRk1TX0luZGV4ZXI6OlBhcnNlVmlkZW9QYWNrZXQoU2hhcmVkQVZDb250ZXh0ICZWaWRl b0NvbnRleHQsIEFWUGFja2V0ICZwa3QsIGludCAqUmVwZWF0UGljdCwKKyt2b2lkIEZGTVNfSW5k ZXhlcjo6UGFyc2VWaWRlb1BhY2tldChTaGFyZWRBVkNvbnRleHQgJlZpZGVvQ29udGV4dCwgQVZQ YWNrZXQgKnBrdCwgaW50ICpSZXBlYXRQaWN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGludCAqRnJhbWVUeXBlLCBib29sICpJbnZpc2libGUsIGVudW0gQVZQaWN0dXJl U3RydWN0dXJlICpMYXN0UGljU3RydWN0KSB7CisgICAgIGlmIChWaWRlb0NvbnRleHQuUGFyc2Vy KSB7CisgICAgICAgICB1aW50OF90ICpPQjsKK0BAIC0zMzAsOCArMzMwLDggQEAgdm9pZCBGRk1T X0luZGV4ZXI6OlBhcnNlVmlkZW9QYWNrZXQoU2hhcmVkQVZDb250ZXh0ICZWaWRlb0NvbnRleHQs IEFWUGFja2V0ICZwa3QKKyAgICAgICAgIGF2X3BhcnNlcl9wYXJzZTIoVmlkZW9Db250ZXh0LlBh cnNlciwKKyAgICAgICAgICAgICBWaWRlb0NvbnRleHQuQ29kZWNDb250ZXh0LAorICAgICAgICAg ICAgICZPQiwgJk9CU2l6ZSwKKy0gICAgICAgICAgICBwa3QuZGF0YSwgcGt0LnNpemUsCistICAg ICAgICAgICAgcGt0LnB0cywgcGt0LmR0cywgcGt0LnBvcyk7CisrICAgICAgICAgICAgcGt0LT5k YXRhLCBwa3QtPnNpemUsCisrICAgICAgICAgICAgcGt0LT5wdHMsIHBrdC0+ZHRzLCBwa3QtPnBv cyk7CisgCisgICAgICAgICAvLyBILjI2NCAoUEFGRikgYW5kIEhFVkMgbWF5IGhhdmUgb25lIGZp ZWxkIHBlciBwYWNrZXQsIHNvIHdlIG5lZWQgdG8gdHJhY2sKKyAgICAgICAgIC8vIHdoZW4gd2Ug aGF2ZSBhIGZ1bGwgb3IgaGFsZiBmcmFtZSBhdmFpbGFibGUsIGFuZCBtYXJrIG9uZSBvZiB0aGVt IGFzCitAQCAtMzUxLDE1ICszNTEsMTUgQEAgdm9pZCBGRk1TX0luZGV4ZXI6OlBhcnNlVmlkZW9Q YWNrZXQoU2hhcmVkQVZDb250ZXh0ICZWaWRlb0NvbnRleHQsIEFWUGFja2V0ICZwa3QKKyAKKyAg ICAgICAgICpSZXBlYXRQaWN0ID0gVmlkZW9Db250ZXh0LlBhcnNlci0+cmVwZWF0X3BpY3Q7Cisg ICAgICAgICAqRnJhbWVUeXBlID0gVmlkZW9Db250ZXh0LlBhcnNlci0+cGljdF90eXBlOworLSAg ICAgICAgKkludmlzaWJsZSA9IChJbmNvbXBsZXRlRnJhbWUgfHwgVmlkZW9Db250ZXh0LlBhcnNl ci0+cmVwZWF0X3BpY3QgPCAwIHx8IChwa3QuZmxhZ3MgJiBBVl9QS1RfRkxBR19ESVNDQVJEKSk7 CisrICAgICAgICAqSW52aXNpYmxlID0gKEluY29tcGxldGVGcmFtZSB8fCBWaWRlb0NvbnRleHQu UGFyc2VyLT5yZXBlYXRfcGljdCA8IDAgfHwgKHBrdC0+ZmxhZ3MgJiBBVl9QS1RfRkxBR19ESVND QVJEKSk7CisgICAgIH0gZWxzZSB7CistICAgICAgICAqSW52aXNpYmxlID0gISEocGt0LmZsYWdz ICYgQVZfUEtUX0ZMQUdfRElTQ0FSRCk7CisrICAgICAgICAqSW52aXNpYmxlID0gISEocGt0LT5m bGFncyAmIEFWX1BLVF9GTEFHX0RJU0NBUkQpOworICAgICB9CisgCisgICAgIGlmIChWaWRlb0Nv bnRleHQuQ29kZWNDb250ZXh0LT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9WUDgpCistICAgICAg ICBQYXJzZVZQOChwa3QuZGF0YVswXSwgSW52aXNpYmxlLCBGcmFtZVR5cGUpOworKyAgICAgICAg UGFyc2VWUDgocGt0LT5kYXRhWzBdLCBJbnZpc2libGUsIEZyYW1lVHlwZSk7CisgICAgIGVsc2Ug aWYgKFZpZGVvQ29udGV4dC5Db2RlY0NvbnRleHQtPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX1ZQ OSkKKy0gICAgICAgIFBhcnNlVlA5KHBrdC5kYXRhWzBdLCBJbnZpc2libGUsIEZyYW1lVHlwZSk7 CisrICAgICAgICBQYXJzZVZQOShwa3QtPmRhdGFbMF0sIEludmlzaWJsZSwgRnJhbWVUeXBlKTsK KyB9CisgCisgdm9pZCBGRk1TX0luZGV4ZXI6OkZyZWUoKSB7CitAQCAtNDU4LDMyICs0NTgsMzYg QEAgRkZNU19JbmRleCAqRkZNU19JbmRleGVyOjpEb0luZGV4aW5nKCkgeworICAgICAgICAgfQor ICAgICB9CisgCistICAgIEFWUGFja2V0IFBhY2tldDsKKy0gICAgSW5pdE51bGxQYWNrZXQoUGFj a2V0KTsKKysgICAgQVZQYWNrZXQgKlBhY2tldCA9IGF2X3BhY2tldF9hbGxvYygpOworKyAgICBp ZiAoIVBhY2tldCkKKysgICAgICAgIHRocm93IEZGTVNfRXhjZXB0aW9uKEZGTVNfRVJST1JfQ09E RUMsIEZGTVNfRVJST1JfQUxMT0NBVElPTl9GQUlMRUQsCisrICAgICAgICAgICAgIkNvdWxkIG5v dCBhbGxvY2F0ZSBwYWNrZXQuIik7CisgICAgIHN0ZDo6dmVjdG9yPGludDY0X3Q+IExhc3RWYWxp ZFRTKEZvcm1hdENvbnRleHQtPm5iX3N0cmVhbXMsIEFWX05PUFRTX1ZBTFVFKTsKKyAKKyAgICAg aW50NjRfdCBmaWxlc2l6ZSA9IGF2aW9fc2l6ZShGb3JtYXRDb250ZXh0LT5wYik7CisgICAgIGVu dW0gQVZQaWN0dXJlU3RydWN0dXJlIExhc3RQaWNTdHJ1Y3QgPSBBVl9QSUNUVVJFX1NUUlVDVFVS RV9VTktOT1dOOworLSAgICB3aGlsZSAoYXZfcmVhZF9mcmFtZShGb3JtYXRDb250ZXh0LCAmUGFj a2V0KSA+PSAwKSB7CisrICAgIHdoaWxlIChhdl9yZWFkX2ZyYW1lKEZvcm1hdENvbnRleHQsIFBh Y2tldCkgPj0gMCkgeworICAgICAgICAgLy8gVXBkYXRlIHByb2dyZXNzCisgICAgICAgICAvLyBG b3JtYXRDb250ZXh0LT5wYiBjYW4gYXBwYXJlbnRseSBiZSBOVUxMIHdoZW4gb3BlbmluZyBpbWFn ZXMuCisgICAgICAgICBpZiAoSUMgJiYgRm9ybWF0Q29udGV4dC0+cGIpIHsKKy0gICAgICAgICAg ICBpZiAoKCpJQykoRm9ybWF0Q29udGV4dC0+cGItPnBvcywgZmlsZXNpemUsIElDUHJpdmF0ZSkp CisrICAgICAgICAgICAgaWYgKCgqSUMpKEZvcm1hdENvbnRleHQtPnBiLT5wb3MsIGZpbGVzaXpl LCBJQ1ByaXZhdGUpKSB7CisrICAgICAgICAgICAgICAgIGF2X3BhY2tldF9mcmVlKCZQYWNrZXQp OworICAgICAgICAgICAgICAgICB0aHJvdyBGRk1TX0V4Y2VwdGlvbihGRk1TX0VSUk9SX0NBTkNF TExFRCwgRkZNU19FUlJPUl9VU0VSLAorICAgICAgICAgICAgICAgICAgICAgIkNhbmNlbGxlZCBi eSB1c2VyIik7CisrICAgICAgICAgICAgfQorICAgICAgICAgfQorLSAgICAgICAgaWYgKCFJbmRl eE1hc2suY291bnQoUGFja2V0LnN0cmVhbV9pbmRleCkpIHsKKy0gICAgICAgICAgICBhdl9wYWNr ZXRfdW5yZWYoJlBhY2tldCk7CisrICAgICAgICBpZiAoIUluZGV4TWFzay5jb3VudChQYWNrZXQt PnN0cmVhbV9pbmRleCkpIHsKKysgICAgICAgICAgICBhdl9wYWNrZXRfdW5yZWYoUGFja2V0KTsK KyAgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgIH0KKyAKKy0gICAgICAgIGludCBUcmFj ayA9IFBhY2tldC5zdHJlYW1faW5kZXg7CisrICAgICAgICBpbnQgVHJhY2sgPSBQYWNrZXQtPnN0 cmVhbV9pbmRleDsKKyAgICAgICAgIEZGTVNfVHJhY2sgJlRyYWNrSW5mbyA9ICgqVHJhY2tJbmRp Y2VzKVtUcmFja107CistICAgICAgICBib29sIEtleUZyYW1lID0gISEoUGFja2V0LmZsYWdzICYg QVZfUEtUX0ZMQUdfS0VZKTsKKysgICAgICAgIGJvb2wgS2V5RnJhbWUgPSAhIShQYWNrZXQtPmZs YWdzICYgQVZfUEtUX0ZMQUdfS0VZKTsKKyAgICAgICAgIFJlYWRUUyhQYWNrZXQsIExhc3RWYWxp ZFRTW1RyYWNrXSwgKCpUcmFja0luZGljZXMpW1RyYWNrXS5Vc2VEVFMpOworIAorICAgICAgICAg aWYgKEZvcm1hdENvbnRleHQtPnN0cmVhbXNbVHJhY2tdLT5jb2RlY3Bhci0+Y29kZWNfdHlwZSA9 PSBBVk1FRElBX1RZUEVfVklERU8pIHsKKy0gICAgICAgICAgICBpbnQ2NF90IFBUUyA9IFRyYWNr SW5mby5Vc2VEVFMgPyBQYWNrZXQuZHRzIDogUGFja2V0LnB0czsKKysgICAgICAgICAgICBpbnQ2 NF90IFBUUyA9IFRyYWNrSW5mby5Vc2VEVFMgPyBQYWNrZXQtPmR0cyA6IFBhY2tldC0+cHRzOwor ICAgICAgICAgICAgIGlmIChQVFMgPT0gQVZfTk9QVFNfVkFMVUUpIHsKKyAgICAgICAgICAgICAg ICAgLy8gVlB4IGFsdC1yZWZzIGFyZSBvdXRwdXQgYXMgcGFja2V0cyB3aGljaCBsYWNrIHRpbWVz dG1wcyBvciBkdXJhdGlvbnMsIHNpbmNlCisgICAgICAgICAgICAgICAgIC8vIHRoZXkgYXJlIGlu dmlzaWJsZS4gQ3VycmVudGx5LCB0aGUgdGltZXN0YW1wIG1hbmdsaW5nIGNvZGUgaW4gbGliYXZm b3JtYXQKK0BAIC00OTUsOSArNDk5LDExIEBAIEZGTVNfSW5kZXggKkZGTVNfSW5kZXhlcjo6RG9J bmRleGluZygpIHsKKyAgICAgICAgICAgICAgICAgLy8gRkZNUzIgY3VycmVudGx5IHNvcnRzIHBh Y2tldHMgYnkgUFRTLCB3aGljaCB3aWxsIGJyZWFrIGRlY29kaW5nLCBvdGhlcndpc2UuCisgICAg ICAgICAgICAgICAgIGJvb2wgSGFzQWx0UmVmcyA9IChGb3JtYXRDb250ZXh0LT5zdHJlYW1zW1Ry YWNrXS0+Y29kZWNwYXItPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX1ZQOCB8fAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgRm9ybWF0Q29udGV4dC0+c3RyZWFtc1tUcmFja10t PmNvZGVjcGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9WUDkpOworLSAgICAgICAgICAgICAg ICBpZiAoUGFja2V0LmR1cmF0aW9uID09IDAgJiYgIUhhc0FsdFJlZnMpCisrICAgICAgICAgICAg ICAgIGlmIChQYWNrZXQtPmR1cmF0aW9uID09IDAgJiYgIUhhc0FsdFJlZnMpIHsKKysgICAgICAg ICAgICAgICAgICAgIGF2X3BhY2tldF9mcmVlKCZQYWNrZXQpOworICAgICAgICAgICAgICAgICAg ICAgdGhyb3cgRkZNU19FeGNlcHRpb24oRkZNU19FUlJPUl9JTkRFWElORywgRkZNU19FUlJPUl9Q QVJTRVIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIkludmFsaWQgcGFja2V0IHB0cywgZHRz LCBhbmQgZHVyYXRpb24iKTsKKysgICAgICAgICAgICAgICAgfQorIAorICAgICAgICAgICAgICAg ICBpZiAoVHJhY2tJbmZvLmVtcHR5KCkpCisgICAgICAgICAgICAgICAgICAgICBQVFMgPSAwOwor QEAgLTUxMyw3ICs1MTksNyBAQCBGRk1TX0luZGV4ICpGRk1TX0luZGV4ZXI6OkRvSW5kZXhpbmco KSB7CisgICAgICAgICAgICAgUGFyc2VWaWRlb1BhY2tldChBVkNvbnRleHRzW1RyYWNrXSwgUGFj a2V0LCAmUmVwZWF0UGljdCwgJkZyYW1lVHlwZSwgJkludmlzaWJsZSwgJkxhc3RQaWNTdHJ1Y3Qp OworIAorICAgICAgICAgICAgIFRyYWNrSW5mby5BZGRWaWRlb0ZyYW1lKFBUUywgUmVwZWF0UGlj dCwgS2V5RnJhbWUsCistICAgICAgICAgICAgICAgIEZyYW1lVHlwZSwgUGFja2V0LnBvcywgSW52 aXNpYmxlKTsKKysgICAgICAgICAgICAgICAgRnJhbWVUeXBlLCBQYWNrZXQtPnBvcywgSW52aXNp YmxlKTsKKyAgICAgICAgIH0gZWxzZSBpZiAoRm9ybWF0Q29udGV4dC0+c3RyZWFtc1tUcmFja10t PmNvZGVjcGFyLT5jb2RlY190eXBlID09IEFWTUVESUFfVFlQRV9BVURJTykgeworICAgICAgICAg ICAgIC8vIEZvciB2aWRlbyBzZWVraW5nIHRpbWVzdGFtcHMgYXJlIHVzZWQgb25seSBpZiBhbGwg cGFja2V0cyBoYXZlCisgICAgICAgICAgICAgLy8gdGltZXN0YW1wcywgd2hpbGUgZm9yIGF1ZGlv IHRoZXkncmUgdXNlZCBpZiBhbnkgaGF2ZSB0aW1lc3RhbXBzLAorQEAgLTUyMiwyOCArNTI4LDI5 IEBAIEZGTVNfSW5kZXggKkZGTVNfSW5kZXhlcjo6RG9JbmRleGluZygpIHsKKyAgICAgICAgICAg ICAgICAgVHJhY2tJbmZvLkhhc1RTID0gdHJ1ZTsKKyAKKyAgICAgICAgICAgICBpbnQ2NF90IFN0 YXJ0U2FtcGxlID0gQVZDb250ZXh0c1tUcmFja10uQ3VycmVudFNhbXBsZTsKKy0gICAgICAgICAg ICB1aW50MzJfdCBTYW1wbGVDb3VudCA9IEluZGV4QXVkaW9QYWNrZXQoVHJhY2ssICZQYWNrZXQs IEFWQ29udGV4dHNbVHJhY2tdLCAqVHJhY2tJbmRpY2VzKTsKKysgICAgICAgICAgICB1aW50MzJf dCBTYW1wbGVDb3VudCA9IEluZGV4QXVkaW9QYWNrZXQoVHJhY2ssIFBhY2tldCwgQVZDb250ZXh0 c1tUcmFja10sICpUcmFja0luZGljZXMpOworICAgICAgICAgICAgIFRyYWNrSW5mby5TYW1wbGVS YXRlID0gQVZDb250ZXh0c1tUcmFja10uQ29kZWNDb250ZXh0LT5zYW1wbGVfcmF0ZTsKKyAKKyAg ICAgICAgICAgICBUcmFja0luZm8uQWRkQXVkaW9GcmFtZShMYXN0VmFsaWRUU1tUcmFja10sCist ICAgICAgICAgICAgICAgIFN0YXJ0U2FtcGxlLCBTYW1wbGVDb3VudCwgS2V5RnJhbWUsIFBhY2tl dC5wb3MsIFBhY2tldC5mbGFncyAmIEFWX1BLVF9GTEFHX0RJU0NBUkQpOworKyAgICAgICAgICAg ICAgICBTdGFydFNhbXBsZSwgU2FtcGxlQ291bnQsIEtleUZyYW1lLCBQYWNrZXQtPnBvcywgUGFj a2V0LT5mbGFncyAmIEFWX1BLVF9GTEFHX0RJU0NBUkQpOworICAgICAgICAgfQorIAorLSAgICAg ICAgaWYgKCEoUGFja2V0LmZsYWdzICYgQVZfUEtUX0ZMQUdfRElTQ0FSRCkpCistICAgICAgICAg ICAgVHJhY2tJbmZvLkxhc3REdXJhdGlvbiA9IFBhY2tldC5kdXJhdGlvbjsKKysgICAgICAgIGlm ICghKFBhY2tldC0+ZmxhZ3MgJiBBVl9QS1RfRkxBR19ESVNDQVJEKSkKKysgICAgICAgICAgICBU cmFja0luZm8uTGFzdER1cmF0aW9uID0gUGFja2V0LT5kdXJhdGlvbjsKKyAKKy0gICAgICAgIGF2 X3BhY2tldF91bnJlZigmUGFja2V0KTsKKysgICAgICAgIGF2X3BhY2tldF91bnJlZihQYWNrZXQp OworICAgICB9CisrICAgIGF2X3BhY2tldF9mcmVlKCZQYWNrZXQpOworIAorICAgICBUcmFja0lu ZGljZXMtPkZpbmFsaXplKEFWQ29udGV4dHMsIEZvcm1hdENvbnRleHQtPmlmb3JtYXQtPm5hbWUp OworICAgICByZXR1cm4gVHJhY2tJbmRpY2VzLnJlbGVhc2UoKTsKKyB9CisgCistdm9pZCBGRk1T X0luZGV4ZXI6OlJlYWRUUyhjb25zdCBBVlBhY2tldCAmUGFja2V0LCBpbnQ2NF90ICZUUywgYm9v bCAmVXNlRFRTKSB7CistICAgIGlmICghVXNlRFRTICYmIFBhY2tldC5wdHMgIT0gQVZfTk9QVFNf VkFMVUUpCistICAgICAgICBUUyA9IFBhY2tldC5wdHM7Cisrdm9pZCBGRk1TX0luZGV4ZXI6OlJl YWRUUyhjb25zdCBBVlBhY2tldCAqUGFja2V0LCBpbnQ2NF90ICZUUywgYm9vbCAmVXNlRFRTKSB7 CisrICAgIGlmICghVXNlRFRTICYmIFBhY2tldC0+cHRzICE9IEFWX05PUFRTX1ZBTFVFKQorKyAg ICAgICAgVFMgPSBQYWNrZXQtPnB0czsKKyAgICAgaWYgKFRTID09IEFWX05PUFRTX1ZBTFVFKQor ICAgICAgICAgVXNlRFRTID0gdHJ1ZTsKKy0gICAgaWYgKFVzZURUUyAmJiBQYWNrZXQuZHRzICE9 IEFWX05PUFRTX1ZBTFVFKQorLSAgICAgICAgVFMgPSBQYWNrZXQuZHRzOworKyAgICBpZiAoVXNl RFRTICYmIFBhY2tldC0+ZHRzICE9IEFWX05PUFRTX1ZBTFVFKQorKyAgICAgICAgVFMgPSBQYWNr ZXQtPmR0czsKKyB9CitkaWZmIC0tZ2l0IGEvc3JjL2NvcmUvaW5kZXhpbmcuaCBiL3NyYy9jb3Jl L2luZGV4aW5nLmgKK2luZGV4IDNjZmMzYzMuLjVjMDY4NjggMTAwNjQ0CistLS0gYS9zcmMvY29y ZS9pbmRleGluZy5oCisrKysgYi9zcmMvY29yZS9pbmRleGluZy5oCitAQCAtODAsMTAgKzgwLDEw IEBAIHByaXZhdGU6CisgICAgIGludDY0X3QgRmlsZXNpemU7CisgICAgIHVpbnQ4X3QgRGlnZXN0 WzIwXTsKKyAKKy0gICAgdm9pZCBSZWFkVFMoY29uc3QgQVZQYWNrZXQgJlBhY2tldCwgaW50NjRf dCAmVFMsIGJvb2wgJlVzZURUUyk7CisrICAgIHZvaWQgUmVhZFRTKGNvbnN0IEFWUGFja2V0ICpQ YWNrZXQsIGludDY0X3QgJlRTLCBib29sICZVc2VEVFMpOworICAgICB2b2lkIENoZWNrQXVkaW9Q cm9wZXJ0aWVzKGludCBUcmFjaywgQVZDb2RlY0NvbnRleHQgKkNvbnRleHQpOworICAgICB1aW50 MzJfdCBJbmRleEF1ZGlvUGFja2V0KGludCBUcmFjaywgQVZQYWNrZXQgKlBhY2tldCwgU2hhcmVk QVZDb250ZXh0ICZDb250ZXh0LCBGRk1TX0luZGV4ICZUcmFja0luZGljZXMpOworLSAgICB2b2lk IFBhcnNlVmlkZW9QYWNrZXQoU2hhcmVkQVZDb250ZXh0ICZWaWRlb0NvbnRleHQsIEFWUGFja2V0 ICZwa3QsIGludCAqUmVwZWF0UGljdCwgaW50ICpGcmFtZVR5cGUsIGJvb2wgKkludmlzaWJsZSwg ZW51bSBBVlBpY3R1cmVTdHJ1Y3R1cmUgKkxhc3RQaWNTdHJ1Y3QpOworKyAgICB2b2lkIFBhcnNl VmlkZW9QYWNrZXQoU2hhcmVkQVZDb250ZXh0ICZWaWRlb0NvbnRleHQsIEFWUGFja2V0ICpwa3Qs IGludCAqUmVwZWF0UGljdCwgaW50ICpGcmFtZVR5cGUsIGJvb2wgKkludmlzaWJsZSwgZW51bSBB VlBpY3R1cmVTdHJ1Y3R1cmUgKkxhc3RQaWNTdHJ1Y3QpOworICAgICB2b2lkIEZyZWUoKTsKKyBw dWJsaWM6CisgICAgIEZGTVNfSW5kZXhlcihjb25zdCBjaGFyICpGaWxlbmFtZSk7CitkaWZmIC0t Z2l0IGEvc3JjL2NvcmUvdXRpbHMuY3BwIGIvc3JjL2NvcmUvdXRpbHMuY3BwCitpbmRleCBjZTY3 NTMzLi44YTJlOTk3IDEwMDY0NAorLS0tIGEvc3JjL2NvcmUvdXRpbHMuY3BwCisrKysgYi9zcmMv Y29yZS91dGlscy5jcHAKK0BAIC02MiwxMiArNjIsNiBAQCB2b2lkIENsZWFyRXJyb3JJbmZvKEZG TVNfRXJyb3JJbmZvICpFcnJvckluZm8pIHsKKyAgICAgfQorIH0KKyAKKy12b2lkIEluaXROdWxs UGFja2V0KEFWUGFja2V0ICZwa3QpIHsKKy0gICAgYXZfaW5pdF9wYWNrZXQoJnBrdCk7CistICAg IHBrdC5kYXRhID0gbnVsbHB0cjsKKy0gICAgcGt0LnNpemUgPSAwOworLX0KKy0KKyB2b2lkIEZp bGxBUChGRk1TX0F1ZGlvUHJvcGVydGllcyAmQVAsIEFWQ29kZWNDb250ZXh0ICpDVFgsIEZGTVNf VHJhY2sgJkZyYW1lcykgeworICAgICBBUC5TYW1wbGVGb3JtYXQgPSBzdGF0aWNfY2FzdDxGRk1T X1NhbXBsZUZvcm1hdD4oYXZfZ2V0X3BhY2tlZF9zYW1wbGVfZm10KENUWC0+c2FtcGxlX2ZtdCkp OworICAgICBBUC5CaXRzUGVyU2FtcGxlID0gYXZfZ2V0X2J5dGVzX3Blcl9zYW1wbGUoQ1RYLT5z YW1wbGVfZm10KSAqIDg7CitkaWZmIC0tZ2l0IGEvc3JjL2NvcmUvdXRpbHMuaCBiL3NyYy9jb3Jl L3V0aWxzLmgKK2luZGV4IDk4MTlkYzcuLjAwM2FiNzkgMTAwNjQ0CistLS0gYS9zcmMvY29yZS91 dGlscy5oCisrKysgYi9zcmMvY29yZS91dGlscy5oCitAQCAtNTgsNyArNTgsNiBAQCBzdGQ6OnVu aXF1ZV9wdHI8VD4gbWFrZV91bmlxdWUoQXJncyYmLi4uIGFyZ3MpIHsKKyB9CisgCisgdm9pZCBD bGVhckVycm9ySW5mbyhGRk1TX0Vycm9ySW5mbyAqRXJyb3JJbmZvKTsKKy12b2lkIEluaXROdWxs UGFja2V0KEFWUGFja2V0ICZwa3QpOworIHZvaWQgRmlsbEFQKEZGTVNfQXVkaW9Qcm9wZXJ0aWVz ICZBUCwgQVZDb2RlY0NvbnRleHQgKkNUWCwgRkZNU19UcmFjayAmRnJhbWVzKTsKKyAKKyB2b2lk IExBVkZPcGVuRmlsZShjb25zdCBjaGFyICpTb3VyY2VGaWxlLCBBVkZvcm1hdENvbnRleHQgKiZG b3JtYXRDb250ZXh0LCBpbnQgVHJhY2spOworZGlmZiAtLWdpdCBhL3NyYy9jb3JlL3ZpZGVvc291 cmNlLmNwcCBiL3NyYy9jb3JlL3ZpZGVvc291cmNlLmNwcAoraW5kZXggMDZiZDE2MS4uYjg4OTk3 MCAxMDA2NDQKKy0tLSBhL3NyYy9jb3JlL3ZpZGVvc291cmNlLmNwcAorKysrIGIvc3JjL2NvcmUv dmlkZW9zb3VyY2UuY3BwCitAQCAtNjczLDMwICs2NzMsMzQgQEAgdm9pZCBGRk1TX1ZpZGVvU291 cmNlOjpEZWNvZGVOZXh0RnJhbWUoaW50NjRfdCAmQVN0YXJ0VGltZSwgaW50NjRfdCAmUG9zKSB7 CisgICAgIGlmIChIYXNQZW5kaW5nRGVsYXllZEZyYW1lcygpKQorICAgICAgICAgcmV0dXJuOwor IAorLSAgICBBVlBhY2tldCBQYWNrZXQ7CistICAgIEluaXROdWxsUGFja2V0KFBhY2tldCk7Cist CistICAgIHdoaWxlIChSZWFkRnJhbWUoJlBhY2tldCkgPj0gMCkgeworLSAgICAgICAgaWYgKFBh Y2tldC5zdHJlYW1faW5kZXggIT0gVmlkZW9UcmFjaykgeworLSAgICAgICAgICAgIGF2X3BhY2tl dF91bnJlZigmUGFja2V0KTsKKysgICAgQVZQYWNrZXQgKlBhY2tldCA9IGF2X3BhY2tldF9hbGxv YygpOworKyAgICBpZiAoIVBhY2tldCkKKysgICAgICAgIHRocm93IEZGTVNfRXhjZXB0aW9uKEZG TVNfRVJST1JfREVDT0RJTkcsIEZGTVNfRVJST1JfQUxMT0NBVElPTl9GQUlMRUQsCisrICAgICAg ICAgICAgIkNvdWxkIG5vdCBhbGxvY2F0ZSBwYWNrZXQuIik7CisrCisrICAgIHdoaWxlIChSZWFk RnJhbWUoUGFja2V0KSA+PSAwKSB7CisrICAgICAgICBpZiAoUGFja2V0LT5zdHJlYW1faW5kZXgg IT0gVmlkZW9UcmFjaykgeworKyAgICAgICAgICAgIGF2X3BhY2tldF91bnJlZihQYWNrZXQpOwor ICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgfQorIAorICAgICAgICAgaWYgKEFTdGFy dFRpbWUgPCAwKQorLSAgICAgICAgICAgIEFTdGFydFRpbWUgPSBGcmFtZXMuVXNlRFRTID8gUGFj a2V0LmR0cyA6IFBhY2tldC5wdHM7CisrICAgICAgICAgICAgQVN0YXJ0VGltZSA9IEZyYW1lcy5V c2VEVFMgPyBQYWNrZXQtPmR0cyA6IFBhY2tldC0+cHRzOworIAorICAgICAgICAgaWYgKFBvcyA8 IDApCistICAgICAgICAgICAgUG9zID0gUGFja2V0LnBvczsKKysgICAgICAgICAgICBQb3MgPSBQ YWNrZXQtPnBvczsKKyAKKy0gICAgICAgIGJvb2wgRnJhbWVGaW5pc2hlZCA9IERlY29kZVBhY2tl dCgmUGFja2V0KTsKKy0gICAgICAgIGF2X3BhY2tldF91bnJlZigmUGFja2V0KTsKKy0gICAgICAg IGlmIChGcmFtZUZpbmlzaGVkKQorKyAgICAgICAgYm9vbCBGcmFtZUZpbmlzaGVkID0gRGVjb2Rl UGFja2V0KFBhY2tldCk7CisrICAgICAgICBhdl9wYWNrZXRfdW5yZWYoUGFja2V0KTsKKysgICAg ICAgIGlmIChGcmFtZUZpbmlzaGVkKSB7CisrICAgICAgICAgICAgYXZfcGFja2V0X2ZyZWUoJlBh Y2tldCk7CisgICAgICAgICAgICAgcmV0dXJuOworKyAgICAgICAgfQorICAgICB9CisgCisgICAg IC8vIEZsdXNoIGZpbmFsIGZyYW1lcworLSAgICBJbml0TnVsbFBhY2tldChQYWNrZXQpOworLSAg ICBEZWNvZGVQYWNrZXQoJlBhY2tldCk7CisrICAgIERlY29kZVBhY2tldChQYWNrZXQpOworKyAg ICBhdl9wYWNrZXRfZnJlZSgmUGFja2V0KTsKKyB9CisgCisgYm9vbCBGRk1TX1ZpZGVvU291cmNl OjpTZWVrVG8oaW50IG4sIGludCBTZWVrT2Zmc2V0KSB7CistLSAKKzIuNDAuMAorCitGcm9tIGJm OWUwM2U5ZTA4NTM0YzAyNGU1YTc0NGE2NDM3YzRhYWMxNjAyMDEgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCitGcm9tOiBEZXJlayBCdWl0ZW5odWlzIDxkZXJlay5idWl0ZW5odWlzQGdtYWlsLmNv bT4KK0RhdGU6IFR1ZSwgNCBNYXkgMjAyMSAxNDoyMDo0NyArMDEwMAorU3ViamVjdDogW1BBVENI IDIvM10gY29uZmlndXJlOiBSZW1vdmUgZGVwcmVjYXRlZCBBUEkgdXNlCisKK1NpZ25lZC1vZmYt Ynk6IERlcmVrIEJ1aXRlbmh1aXMgPGRlcmVrLmJ1aXRlbmh1aXNAZ21haWwuY29tPgorLS0tCisg Y29uZmlndXJlLmFjIHwgNCArKy0tCisgMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwg MiBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL2NvbmZpZ3VyZS5hYyBiL2NvbmZpZ3VyZS5h YworaW5kZXggYjM1ZWY4MGJjLi5kMTk3MTRkMGYgMTAwNjQ0CistLS0gYS9jb25maWd1cmUuYWMK KysrKyBiL2NvbmZpZ3VyZS5hYworQEAgLTEwMiwxMCArMTAyLDEwIEBAIENGTEFHUz0iJF9DRkxB R1MgJEZGTVBFR19DRkxBR1MiCisKKyBBQ19ERUZVTihbVEVTVF9GRk1QRUddLAorICAgICAgICAg IFtBQ19MSU5LX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbCistICAgICAgICAgICAgI2luY2x1 ZGUgPGxpYmF2Y29kZWMvYXZjb2RlYy5oPgorKyAgICAgICAgICAgICNpbmNsdWRlIDxsaWJhdmZv cm1hdC9hdmZvcm1hdC5oPgorICAgICAgICAgICAgICNpbmNsdWRlIDxsaWJzd3NjYWxlL3N3c2Nh bGUuaD4KKyAgICAgICAgICAgICBdXSxbWworLSAgICAgICAgICAgICAgICBhdmNvZGVjX3JlZ2lz dGVyX2FsbCgpOworKyAgICAgICAgICAgICAgICBhdmZvcm1hdF9uZXR3b3JrX2luaXQoKTsKKyAg ICAgICAgICAgICAgICAgc3dzY2FsZV92ZXJzaW9uKCk7CisgICAgICAgICAgICAgXV0pXSwgW2V2 YWwgJDE9eWVzXSwgW2V2YWwgJDE9bm9dKQorICAgICAgICAgXSkKKwpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9mZm1zMi90ZW1wbGF0ZSBiL3NyY3BrZ3MvZmZtczIvdGVtcGxhdGUKaW5kZXggMzY1ZjY0 ZDEwY2JhYmYuLjE2NDFlY2Y0M2JlNWJiIDEwMDY0NAotLS0gYS9zcmNwa2dzL2ZmbXMyL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvZmZtczIvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdmZm1zMicKIHBrZ25hbWU9ZmZtczIKIHZlcnNpb249Mi40MAotcmV2aXNp b249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2Fy Z3M9Ii0tZW5hYmxlLXNoYXJlZCAtLWRpc2FibGUtc3RhdGljIgogaG9zdG1ha2VkZXBlbmRzPSJw a2ctY29uZmlnIGF1dG9jb25mIGF1dG9tYWtlIGxpYnRvb2wiCgpGcm9tIGRmNmQ1NWJhNDM1Njc0 MGJmYzFjMDQxZjM0ODY4MzFhOTMzNTMzZDAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6 NDcgLTA0MDAKU3ViamVjdDogW1BBVENIIDAzMC8xMDhdIGZyZWVyZHA6IHJldmJ1bXAgZm9yIGZm bXBlZzYKCi0tLQogc3JjcGtncy9mcmVlcmRwL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5n ZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9m cmVlcmRwL3RlbXBsYXRlIGIvc3JjcGtncy9mcmVlcmRwL3RlbXBsYXRlCmluZGV4IDE2ZmRkZmJl OGY1Mjg3Li5iZjNhNGQyZTJiM2FlNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9mcmVlcmRwL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvZnJlZXJkcC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ2ZyZWVyZHAnCiBwa2duYW1lPWZyZWVyZHAKIHZlcnNpb249Mi4xMS40 Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2Fy Z3M9Ii1EV0lUSF9BTFNBPU9OIC1EV0lUSF9DVVBTPU9GRiAtRFdJVEhfRkZNUEVHPU9OCiAgLURX SVRIX0dTVFJFQU1FUl8wXzEwPU9GRiAtRFdJVEhfR1NUUkVBTUVSXzFfMD1PRkYgLURXSVRIX0pQ RUc9T04KCkZyb20gYTlkZjZmNWU0NzNkMGNmYWVlMjcxMTEwNDc3ZDkyZWIwZjZiM2EzNSBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0 ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0NyAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDMxLzEw OF0gZ2VyYmVyYTogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2dlcmJlcmEvdGVt cGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24o LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dlcmJlcmEvdGVtcGxhdGUgYi9zcmNwa2dzL2dlcmJl cmEvdGVtcGxhdGUKaW5kZXggYWUxNGYzNWM3NjdjMDMuLjJkYzBhYzBjZTAzYjU1IDEwMDY0NAot LS0gYS9zcmNwa2dzL2dlcmJlcmEvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nZXJiZXJhL3RlbXBs YXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ2VyYmVyYScKIHBrZ25h bWU9Z2VyYmVyYQogdmVyc2lvbj0xLjEyLjEKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxk X3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURXSVRIX1NZU1RFTUQ9MCAtRFdJVEhfQVZD T0RFQz0xIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIgoKRnJvbSBjNTJlOTdkMTg0OWZm YWQzZDQ4YjFhYTljNzc2MGNjYzVhYzRjMzFhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAx OjQ3IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMzIvMTA4XSBnb2xkZW5kaWN0OiByZXZidW1wIGZv ciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvZ29sZGVuZGljdC90ZW1wbGF0ZSB8IDQgKystLQogMSBm aWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2dvbGRlbmRpY3QvdGVtcGxhdGUgYi9zcmNwa2dzL2dvbGRlbmRpY3QvdGVtcGxh dGUKaW5kZXggZjRhMDU3NTlmNjkzZDMuLjk3ZjQ0MzQ3YjAzYTZhIDEwMDY0NAotLS0gYS9zcmNw a2dzL2dvbGRlbmRpY3QvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nb2xkZW5kaWN0L3RlbXBsYXRl CkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ29sZGVuZGljdCcKIHBrZ25h bWU9Z29sZGVuZGljdAogdmVyc2lvbj0xLjUuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVp bGRfc3R5bGU9cW1ha2UKIGNvbmZpZ3VyZV9hcmdzPSJDT05GSUcrPXppbV9zdXBwb3J0IGdvbGRl bmRpY3QucHJvIgogaG9zdG1ha2VkZXBlbmRzPSJxdDUtcW1ha2UgcGtnLWNvbmZpZyBxdDUtaG9z dC10b29scyIKQEAgLTEwLDcgKzEwLDcgQEAgbWFrZWRlcGVuZHM9InRpZmYtZGV2ZWwgcXQ1LWRl dmVsIGxpYnZvcmJpcy1kZXZlbCB6bGliLWRldmVsCiAgcXQ1LXdlYmtpdC1kZXZlbCBsem8tZGV2 ZWwgYnppcDItZGV2ZWwgbGliYW8tZGV2ZWwgcXQ1LXN2Zy1kZXZlbAogIGxpYmViLWRldmVsIHF0 NS14MTFleHRyYXMtZGV2ZWwgZmZtcGVnLWRldmVsIGxpYmx6bWEtZGV2ZWwKICBxdDUtbXVsdGlt ZWRpYS1kZXZlbCIKLXNob3J0X2Rlc2M9IkEgZmVhdHVyZS1yaWNoIGRpY3Rpb25hcnkgbG9va3Vw IHByb2dyYW0iCitzaG9ydF9kZXNjPSJGZWF0dXJlLXJpY2ggZGljdGlvbmFyeSBsb29rdXAgcHJv Z3JhbSIKIG1haW50YWluZXI9IkpvaG4gPG1lQGpvaG5ueW5hdG9yLmRldj4iCiBsaWNlbnNlPSJH UEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHA6Ly9nb2xkZW5kaWN0Lm9yZy8iCgpGcm9t IGFmYzc3YWVlMDllYTU4N2NlYzMzYjNmZTBkYmNlOWVkZTUzYjQ2YWMgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIg TWFyIDIwMjMgMjA6MDE6NDcgLTA0MDAKU3ViamVjdDogW1BBVENIIDAzMy8xMDhdIGdzdC1saWJh djogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2dzdC1saWJhdi90ZW1wbGF0ZSB8 IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvZ3N0LWxpYmF2L3RlbXBsYXRlIGIvc3JjcGtncy9nc3QtbGliYXYv dGVtcGxhdGUKaW5kZXggNDVjYTQ3YzQ4YjYwYjguLmQ2M2UwM2ZmYTg1ZWRjIDEwMDY0NAotLS0g YS9zcmNwa2dzL2dzdC1saWJhdi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dzdC1saWJhdi90ZW1w bGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dzdC1saWJhdicKIHBr Z25hbWU9Z3N0LWxpYmF2CiB2ZXJzaW9uPTEuMjQuNAotcmV2aXNpb249MQorcmV2aXNpb249Mgog YnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyB5YXNtIgogbWFr ZWRlcGVuZHM9Im9yYy1kZXZlbCBnc3QtcGx1Z2lucy1iYXNlMS1kZXZlbCBmZm1wZWctZGV2ZWwi CgpGcm9tIGRhM2Q0MWYyNzBmZDBlYjczZTllNDIzM2NhZTRjNjI5YjNiMzZlNWMgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFNh dCwgMyBGZWIgMjAyNCAwMTo1Mjo0NiAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggMDM0LzEwOF0gZ3N0 LXBsdWdpbnMtYmFkMTogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2dzdC1wbHVn aW5zLWJhZDEvdGVtcGxhdGUgfCA5ICsrKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDUgaW5zZXJ0 aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dzdC1wbHVnaW5z LWJhZDEvdGVtcGxhdGUgYi9zcmNwa2dzL2dzdC1wbHVnaW5zLWJhZDEvdGVtcGxhdGUKaW5kZXgg NWZjMjEzZTc1YjgyOWMuLmNlMWU5MTJlNGE4NDM4IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dzdC1w bHVnaW5zLWJhZDEvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nc3QtcGx1Z2lucy1iYWQxL3RlbXBs YXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ3N0LXBsdWdpbnMtYmFk MScKIHBrZ25hbWU9Z3N0LXBsdWdpbnMtYmFkMQogdmVyc2lvbj0xLjI0LjQKLXJldmlzaW9uPTEK K3JldmlzaW9uPTIKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVzb24KIGNvbmZp Z3VyZV9hcmdzPSItRHBhY2thZ2Utb3JpZ2luPWh0dHBzOi8vdm9pZGxpbnV4Lm9yZyAtRGRvYz1k aXNhYmxlZApAQCAtMjYsOCArMjYsOCBAQCBtYWtlZGVwZW5kcz0iYWxzYS1saWItZGV2ZWwgY2Vs dC1kZXZlbCBvcGVuc3NsLWRldmVsIGV4ZW1waS1kZXZlbAogIGxpYmd1ZGV2LWRldmVsIGxpYnVz Yi1kZXZlbCBsaWJhb20tZGV2ZWwgbGliYnMyYi1kZXZlbCBjaHJvbWFwcmludC1kZXZlbAogIGZk ay1hYWMtZGV2ZWwgZmxpdGUtZGV2ZWwgZmx1aWRzeW50aC1kZXZlbCBsaWJscmRmLWRldmVsIGxh ZHNwYS1zZGsKICBsaWx2LWRldmVsIGx2MiBsaWJvcGVuanBlZzItZGV2ZWwgc2JjLWRldmVsIHNw YW5kc3AtZGV2ZWwgdnVsa2FuLWxvYWRlci1kZXZlbAotIHdlYnJ0Yy1hdWRpby1wcm9jZXNzaW5n LWRldmVsIGxpYnpiYXItZGV2ZWwgZmZtcGVnLWRldmVsIHNydC1kZXZlbCBsaWJ2YS1kZXZlbAot ICQodm9wdF9pZiBnbWUgbGliZ21lLWRldmVsKSIKKyB3ZWJydGMtYXVkaW8tcHJvY2Vzc2luZy1k ZXZlbCBsaWJ6YmFyLWRldmVsIGZmbXBlZy1kZXZlbAorIHNydC1kZXZlbCBsaWJ2YS1kZXZlbCAk KHZvcHRfaWYgb25ldnBsIG9uZVZQTC1kZXZlbCkgJCh2b3B0X2lmIGdtZSBsaWJnbWUtZGV2ZWwp IgogZGVwZW5kcz0iZ3N0LXBsdWdpbnMtYmFzZTE+PSR7dmVyc2lvbn0iCiBzaG9ydF9kZXNjPSJH U3RyZWFtZXIgcGx1Z2lucyBmcm9tIHRoZSBiYWQgc2V0ICh2MS54KSIKIG1haW50YWluZXI9Ik9y cGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCkBAIC0zNywxMiArMzcsMTMgQEAgY2hhbmdl bG9nPSJodHRwczovL2dzdHJlYW1lci5mcmVlZGVza3RvcC5vcmcvcmVsZWFzZXMvJHt2ZXJzaW9u JS4qfS8jJHt2ZXJzaW9ufSIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9nc3RyZWFtZXIuZnJlZWRlc2t0 b3Aub3JnL3NyYy9nc3QtcGx1Z2lucy1iYWQvZ3N0LXBsdWdpbnMtYmFkLSR7dmVyc2lvbn0udGFy Lnh6IgogY2hlY2tzdW09MjYwYmQwYTQ2M2I0ZmFmZjlhNDJmNDFlNWUwMjhmNzg3ZjEwYTkyYjc3 OWFmODk1OWFlYzY0NTg2ZjU0NmJkMwogCi1idWlsZF9vcHRpb25zPSJnaXIgZ21lIHdheWxhbmQi CitidWlsZF9vcHRpb25zPSJnaXIgZ21lIG9uZXZwbCB3YXlsYW5kIgogYnVpbGRfb3B0aW9uc19k ZWZhdWx0PSJnaXIgd2F5bGFuZCIKIGRlc2Nfb3B0aW9uX2dtZT0iQnVpbGQgd2l0aCBHYW1lIE11 c2ljIEVtdWxhdG9yIHN1cHBvcnQiCiAKIGNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgog CW1pcHMqKSA7OyAjIGxpYmdtZSBjYW5ub3QgYmUgYnVpbHQgZm9yIG1pcHMqCisJeDg2XzY0Kikg YnVpbGRfb3B0aW9uc19kZWZhdWx0Kz0iIGdtZSBvbmV2cGwiIDs7ICMgb25ldnBsIG9ubHkgc3Vw cG9ydHMgNjRiaXQKIAkqKSBidWlsZF9vcHRpb25zX2RlZmF1bHQrPSIgZ21lIiA7OwogZXNhYwog CgpGcm9tIDViZjdiMWZkZDdkOTU4YzYxMmNiNTgxNzViMGE1Y2Q3OGZlN2VmOTAgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdl ZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDcgLTA0MDAKU3ViamVjdDogW1BBVENIIDAzNS8xMDhdIGdz dC1ydHNwLXNlcnZlcjogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2dzdC1ydHNw LXNlcnZlci90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwg MSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ3N0LXJ0c3Atc2VydmVyL3RlbXBs YXRlIGIvc3JjcGtncy9nc3QtcnRzcC1zZXJ2ZXIvdGVtcGxhdGUKaW5kZXggYjZhNzQxODFhNDA2 MmQuLjYwN2ZhZWEwMzU0YjA1IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dzdC1ydHNwLXNlcnZlci90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dzdC1ydHNwLXNlcnZlci90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dzdC1ydHNwLXNlcnZlcicKIHBrZ25hbWU9Z3N0 LXJ0c3Atc2VydmVyCiB2ZXJzaW9uPTEuMjQuNAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVp bGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj1naXIKIGNvbmZpZ3VyZV9hcmdzPSItRGludHJv c3BlY3Rpb249ZW5hYmxlZCIKCkZyb20gMzkxODk4YzY1MTc5Y2FmOWMzZjZiNDgxZTQ3MDZlNjU5 ZGE4OGM0YSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdt YWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0NyAtMDQwMApTdWJqZWN0OiBb UEFUQ0ggMDM2LzEwOF0gZ3V2Y3ZpZXc6IHVwZGF0ZSB0byAyLjAuOC4KCi0tLQogc3JjcGtncy9n dXZjdmlldy9wYXRjaGVzL2ZpeC1pbmNsdWRlLnBhdGNoIHwgMTAgKysrKysrKysrKwogc3JjcGtn cy9ndXZjdmlldy90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgIHwgIDcgKysrLS0tLQogMiBmaWxl cyBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUg MTAwNjQ0IHNyY3BrZ3MvZ3V2Y3ZpZXcvcGF0Y2hlcy9maXgtaW5jbHVkZS5wYXRjaAoKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvZ3V2Y3ZpZXcvcGF0Y2hlcy9maXgtaW5jbHVkZS5wYXRjaCBiL3NyY3Br Z3MvZ3V2Y3ZpZXcvcGF0Y2hlcy9maXgtaW5jbHVkZS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uNTAzYzJhZjNiNzhjMWEKLS0tIC9kZXYvbnVsbAorKysg Yi9zcmNwa2dzL2d1dmN2aWV3L3BhdGNoZXMvZml4LWluY2x1ZGUucGF0Y2gKQEAgLTAsMCArMSwx MCBAQAorLS0tIGEvZ3V2Y3ZpZXcvZ3V2Y3ZpZXcuYworKysrIGIvZ3V2Y3ZpZXcvZ3V2Y3ZpZXcu YworQEAgLTI4LDYgKzI4LDcgQEAKKyAjaW5jbHVkZSA8c3lzL3N0YXQuaD4KKyAjaW5jbHVkZSA8 c3lzL3Jlc291cmNlLmg+CisgI2luY2x1ZGUgPGVycm5vLmg+CisrI2luY2x1ZGUgPGxvY2FsZS5o PgorIAorICNpbmNsdWRlICJndmlldy5oIgorICNpbmNsdWRlICJndmlld3Y0bDJjb3JlLmgiCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2d1dmN2aWV3L3RlbXBsYXRlIGIvc3JjcGtncy9ndXZjdmlldy90 ZW1wbGF0ZQppbmRleCBkNDJmZDM4ZmE0YWQxMi4uODZhN2ZkNjE5NjEyYzggMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvZ3V2Y3ZpZXcvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9ndXZjdmlldy90ZW1wbGF0 ZQpAQCAtMSw4ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2d1dmN2aWV3JwogcGtnbmFt ZT1ndXZjdmlldwotdmVyc2lvbj0yLjAuNwotcmV2aXNpb249MgotY3JlYXRlX3dya3NyYz15ZXMK K3ZlcnNpb249Mi4wLjgKK3JldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNv bmZpZ3VyZV9hcmdzPSItLWRpc2FibGUtc3RhdGljIC0tZGlzYWJsZS1kZWJpYW4tbWVudSIKIGhv c3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBpbnRsdG9vbCBhdXRvY29uZiBhdXRvbWFrZSBsaWJ0 b29sIGdsaWItZGV2ZWwiCkBAIC0xNCw3ICsxMyw3IEBAIG1haW50YWluZXI9Ik9ycGhhbmVkIDxv cnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBh Z2U9Imh0dHA6Ly9ndXZjdmlldy5zb3VyY2Vmb3JnZS5uZXQvIgogZGlzdGZpbGVzPSIke1NPVVJD RUZPUkdFX1NJVEV9LyR7cGtnbmFtZX0vJHtwa2duYW1lfS1zcmMtJHt2ZXJzaW9ufS50YXIuYnoy IgotY2hlY2tzdW09ZjQ3ZDUxZmJkMDZlNDRlZWFhMWE4MmY0YTE1M2M5Mjc1MjdjOTBkOTQ1MTQx OTdhNzBiMjk1NjAyOGNjOGFkNAorY2hlY2tzdW09YTIxZjRlNDQ4Mjg2NjY2Y2YyN2JhZmVmNTI5 MGNjOTUzYTBhMTc5NmI3NTJlNWJiZTUyMTI2NmRjMTIzMGM4MQogCiBwb3N0X3BhdGNoKCkgewog CXNlZCAnMzFhI2luY2x1ZGUgPGxvY2FsZS5oPicgLWkgIGd1dmN2aWV3L2d1dmN2aWV3LmMKCkZy b20gZWI4NGRiOWRhMTJhOWFiYjBhZjZjZDc4YWY2MzgzOWM5ODg4NzRhOSBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAy MiBNYXIgMjAyMyAyMDowMTo0OCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDM3LzEwOF0gaGFuZGJy YWtlOiB1cGRhdGUgdG8gMS42LjEKCi0tLQogLi4uL3BhdGNoZXMvZml4LW1pc3NpbmcteDI2NS1s aW5rLWZsYWcucGF0Y2ggICAgfCAxMSArKysrKystLS0tLQogLi4uL2hhbmRicmFrZS9wYXRjaGVz L2xpYmhiLXZwbC1pbmNsdWRlLnBhdGNoICAgfCAxNSArKysrKysrKysrKysrKysKIHNyY3BrZ3Mv aGFuZGJyYWtlL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgIHwgMTcgKysrKysrKysrKy0t LS0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgMzEgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0p CiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9oYW5kYnJha2UvcGF0Y2hlcy9saWJoYi12cGwt aW5jbHVkZS5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvaGFuZGJyYWtlL3BhdGNoZXMvZml4 LW1pc3NpbmcteDI2NS1saW5rLWZsYWcucGF0Y2ggYi9zcmNwa2dzL2hhbmRicmFrZS9wYXRjaGVz L2ZpeC1taXNzaW5nLXgyNjUtbGluay1mbGFnLnBhdGNoCmluZGV4IDI2ZGIwMzg2N2EwYzgzLi5k NmJiMmVkYTYyN2EzNiAxMDA2NDQKLS0tIGEvc3JjcGtncy9oYW5kYnJha2UvcGF0Y2hlcy9maXgt bWlzc2luZy14MjY1LWxpbmstZmxhZy5wYXRjaAorKysgYi9zcmNwa2dzL2hhbmRicmFrZS9wYXRj aGVzL2ZpeC1taXNzaW5nLXgyNjUtbGluay1mbGFnLnBhdGNoCkBAIC0xLDE0ICsxLDE1IEBACiAt LS0gYS9ndGsvY29uZmlndXJlLmFjCiArKysgYi9ndGsvY29uZmlndXJlLmFjCiBAQCAtMjAzLDcg KzIwMyw3IEBACi0gCisKICBBTV9DT05ESVRJT05BTChbTUlOR1ddLCBbdGVzdCAieCRtaW5nd19m bGFnIiA9ICJ4eWVzIl0pCi0gCi0tSEJfTElCUz0iJEhCX0xJQlMgLWxoYW5kYnJha2UgLWxhdmZv cm1hdCAtbGF2ZmlsdGVyIC1sYXZjb2RlYyAtbGF2dXRpbCAtbGRhdjFkIC1sc3dyZXNhbXBsZSAt bHBvc3Rwcm9jIC1sZHZkbmF2IC1sZHZkcmVhZCAtbG1wM2xhbWUgLWx2b3JiaXMgLWx2b3JiaXNl bmMgLWxvZ2cgLWxzd3NjYWxlIC1sdGhlb3JhZW5jIC1sdGhlb3JhZGVjIC1sdnB4IC1seiAtbGJ6 MiAtbGJsdXJheSAtbGFzcyAtbGZvbnRjb25maWcgLWxmcmVldHlwZSAtbHhtbDIgLWxqYW5zc29u IC1sb3B1cyAtbHNwZWV4IC1sdHVyYm9qcGVnIC1sbHptYSAtbHppbWciCi0rSEJfTElCUz0iJEhC X0xJQlMgLWxoYW5kYnJha2UgLWxhdmZvcm1hdCAtbGF2ZmlsdGVyIC1sYXZjb2RlYyAtbGF2dXRp bCAtbGRhdjFkIC1sc3dyZXNhbXBsZSAtbHBvc3Rwcm9jIC1sZHZkbmF2IC1sZHZkcmVhZCAtbG1w M2xhbWUgLWx2b3JiaXMgLWx2b3JiaXNlbmMgLWxvZ2cgLWxzd3NjYWxlIC1sdGhlb3JhZW5jIC1s dGhlb3JhZGVjIC1sdnB4IC1seiAtbGJ6MiAtbGJsdXJheSAtbGFzcyAtbGZvbnRjb25maWcgLWxm cmVldHlwZSAtbHhtbDIgLWxqYW5zc29uIC1sb3B1cyAtbHNwZWV4IC1sdHVyYm9qcGVnIC1sbHpt YSAtbHppbWcgLWxkbCIKKworLUhCX0xJQlM9IiRIQl9MSUJTIC1saGFuZGJyYWtlIC1sYXZmb3Jt YXQgLWxhdmZpbHRlciAtbGF2Y29kZWMgLWxhdnV0aWwgLWxkYXYxZCAtbHN3cmVzYW1wbGUgLWxw b3N0cHJvYyAtbGR2ZG5hdiAtbGR2ZHJlYWQgLWxtcDNsYW1lIC1sdm9yYmlzIC1sdm9yYmlzZW5j IC1sb2dnIC1sc3dzY2FsZSAtbHRoZW9yYWVuYyAtbHRoZW9yYWRlYyAtbHZweCAtbHogLWxiejIg LWxibHVyYXkgLWxhc3MgLWxmb250Y29uZmlnIC1sZnJlZXR5cGUgLWx4bWwyIC1samFuc3NvbiAt bG9wdXMgLWxzcGVleCAtbHR1cmJvanBlZyAtbGx6bWEgLWx6aW1nIC1sU3Z0QXYxRW5jIgorK0hC X0xJQlM9IiRIQl9MSUJTIC1saGFuZGJyYWtlIC1sYXZmb3JtYXQgLWxhdmZpbHRlciAtbGF2Y29k ZWMgLWxhdnV0aWwgLWxkYXYxZCAtbHN3cmVzYW1wbGUgLWxwb3N0cHJvYyAtbGR2ZG5hdiAtbGR2 ZHJlYWQgLWxtcDNsYW1lIC1sdm9yYmlzIC1sdm9yYmlzZW5jIC1sb2dnIC1sc3dzY2FsZSAtbHRo ZW9yYWVuYyAtbHRoZW9yYWRlYyAtbHZweCAtbHogLWxiejIgLWxibHVyYXkgLWxhc3MgLWxmb250 Y29uZmlnIC1sZnJlZXR5cGUgLWx4bWwyIC1samFuc3NvbiAtbG9wdXMgLWxzcGVleCAtbHR1cmJv anBlZyAtbGx6bWEgLWx6aW1nIC1sU3Z0QXYxRW5jIC1sZGwiCiAgSEJfQ1BQRkxBR1M9IiRIQl9D UFBGTEFHUyAkSEJJTkMiCi0gCisKICBQS0dfQ0hFQ0tfTU9EVUxFUyhbeDI2NF0sIFt4MjY0XSwg c3lzX3gyNjQ9eWVzLCBzeXNfeDI2ND1ubykKKwogLS0tIGEvdGVzdC9tb2R1bGUuZGVmcwogKysr IGIvdGVzdC9tb2R1bGUuZGVmcwogQEAgLTY5LDYgKzY5LDkgQEAKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvaGFuZGJyYWtlL3BhdGNoZXMvbGliaGItdnBsLWluY2x1ZGUucGF0Y2ggYi9zcmNwa2dzL2hh bmRicmFrZS9wYXRjaGVzL2xpYmhiLXZwbC1pbmNsdWRlLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi4yOThmOWY0YWIyOGYyYQotLS0gL2Rldi9udWxsCisr KyBiL3NyY3BrZ3MvaGFuZGJyYWtlL3BhdGNoZXMvbGliaGItdnBsLWluY2x1ZGUucGF0Y2gKQEAg LTAsMCArMSwxNSBAQAorLS0tIGEvbGliaGIvbW9kdWxlLmRlZnMJMjAyMy0wMS0yMiAxMTozNjo0 OS4wMDAwMDAwMDAgLTA1MDAKKysrKyBiL2xpYmhiL21vZHVsZS5kZWZzCTIwMjMtMDQtMDMgMjI6 Mzc6NTIuMzk1NDY3MDEwIC0wNDAwCitAQCAtNDYsMTEgKzQ2LDcgQEAKKyBMSUJIQi5HQ0MuSSAr PSAkKExJQkhCLmJ1aWxkLykgJChDT05UUklCLmJ1aWxkLylpbmNsdWRlCisgCisgaWZlcSAoMSwk KEZFQVRVUkUucXN2KSkKKy0gICAgaWZlcSAoJChIT1NULnN5c3RlbSksZnJlZWJzZCkpCistICAg ICAgICBMSUJIQi5HQ0MuSSArPSAkKExPQ0FMQkFTRSkvaW5jbHVkZS92cGwKKy0gICAgZWxzZQor LSAgICAgICAgTElCSEIuR0NDLkkgKz0gJChDT05UUklCLmJ1aWxkLylpbmNsdWRlL3ZwbAorLSAg ICBlbmRpZgorKyAgICBMSUJIQi5HQ0MuSSArPSAvdXNyL2luY2x1ZGUvdnBsCisgZW5kaWYKKyAK KyBpZm5lcSAoLCQoZmlsdGVyICQoSE9TVC5zeXN0ZW0pLGZyZWVic2QgbmV0YnNkIG9wZW5ic2Qp KQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9oYW5kYnJha2UvdGVtcGxhdGUgYi9zcmNwa2dzL2hhbmRi cmFrZS90ZW1wbGF0ZQppbmRleCBjYTVlNDU3MWU0OWMzNy4uNmFjMjAwZjA5Y2Y1ZDAgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvaGFuZGJyYWtlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvaGFuZGJyYWtl L3RlbXBsYXRlCkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdoYW5kYnJh a2UnCiBwa2duYW1lPWhhbmRicmFrZQotdmVyc2lvbj0xLjUuMQordmVyc2lvbj0xLjYuMQogcmV2 aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZm9y Y2UgLS1kaXNhYmxlLWd0ay11cGRhdGUtY2hlY2tzIC0tZGlzYWJsZS1kZi1mZXRjaCAtLWhhcmRl bgotICQodm9wdF9lbmFibGUgZmRrX2FhYyBmZGstYWFjKSAkKHZvcHRfZW5hYmxlIG52ZW5jKSIK KyAkKHZvcHRfZW5hYmxlIGZka19hYWMgZmRrLWFhYykgJCh2b3B0X2VuYWJsZSBudmVuYykgJCh2 b3B0X2VuYWJsZSBxc3YpIgogbWFrZV9idWlsZF9hcmdzPSItQyAke1hCUFNfVFJJUExFVH0iCiBt YWtlX2luc3RhbGxfYXJncz0iLUMgJHtYQlBTX1RSSVBMRVR9IgogaG9zdG1ha2VkZXBlbmRzPSJh dXRvbWFrZSBjbWFrZSBnZXR0ZXh0LWRldmVsIGdsaWItZGV2ZWwgaW50bHRvb2wgbGlidG9vbCBt NCBtZXNvbiBuYXNtIHBrZy1jb25maWcgcHl0aG9uMyIKQEAgLTEyLDggKzEyLDExIEBAIG1ha2Vk ZXBlbmRzPSJiemlwMi1kZXZlbCBmZm1wZWctZGV2ZWwgZ3N0LXBsdWdpbnMtYmFzZTEtZGV2ZWwg Z3RrKzMtZGV2ZWwKICBqYW5zc29uLWRldmVsIGxhbWUtZGV2ZWwgbGliYXNzLWRldmVsIGxpYmJs dXJheS1kZXZlbCBsaWJkYXYxZC1kZXZlbAogIGxpYmR2ZG5hdi1kZXZlbCBsaWJkdmRyZWFkLWRl dmVsIGxpYmd1ZGV2LWRldmVsIGxpYm51bWEtZGV2ZWwKICBsaWJzYW1wbGVyYXRlLWRldmVsIGxp YnRoZW9yYS1kZXZlbCBsaWJ2b3JiaXMtZGV2ZWwgbGlidnB4LWRldmVsIGxpYnhtbDItZGV2ZWwK LSBvcHVzLWRldmVsIHNwZWV4LWRldmVsIHgyNjQtZGV2ZWwgeDI2NS1kZXZlbCB6aW1nLWRldmVs Cisgb3B1cy1kZXZlbCBzcGVleC1kZXZlbCB4MjY0LWRldmVsIHgyNjUtZGV2ZWwgemltZy1kZXZl bCBsaWJzdnQtYXYxLWRldmVsCiAgJCh2b3B0X2lmIGZka19hYWMgZmRrLWFhYy1kZXZlbCkKKyAk KHZvcHRfaWYgcXN2IGxpYnZhLWRldmVsKQorICQodm9wdF9pZiBxc3YgbGliZHJtLWRldmVsKQor ICQodm9wdF9pZiBxc3Ygb25lVlBMLWRldmVsKQogICQodm9wdF9pZiBudmVuYyBudi1jb2RlYy1o ZWFkZXJzKSIKIGRlcGVuZHM9ImRlc2t0b3AtZmlsZS11dGlscyBnc3QtcGx1Z2lucy1nb29kMSBo aWNvbG9yLWljb24tdGhlbWUiCiBzaG9ydF9kZXNjPSJNdWx0aXRocmVhZGVkIHZpZGVvIHRyYW5z Y29kZXIiCkBAIC0yMSwxNSArMjQsMTUgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRv eEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb25seSIKIGhvbWVwYWdlPSJodHRw czovL2hhbmRicmFrZS5mci8iCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9IYW5kQnJh a2UvSGFuZEJyYWtlL3JlbGVhc2VzL2Rvd25sb2FkLyR7dmVyc2lvbn0vSGFuZEJyYWtlLSR7dmVy c2lvbn0tc291cmNlLnRhci5iejIiCi1jaGVja3N1bT0zOTk5ZmUwNmQ1MzA5YzgxOTc5OWE3M2E5 NjhhOGVjMzg0MGU3ODQwYzJiNjRhZjhmNWNkYjdmZDhjOTQzMGYwCitjaGVja3N1bT05NGNjZmUw M2RiOTE3YTkxNjUwMDAwYzUxMGY3ZmQ1M2Y4NDRkYTE5ZjE5YWQ0YjRiZTFiOGY2YmMzMWE4ZDRj CiBub2Nyb3NzPXllcwogCi1idWlsZF9vcHRpb25zPSJmZGtfYWFjIG52ZW5jIgorYnVpbGRfb3B0 aW9ucz0iZmRrX2FhYyBudmVuYyBxc3YiCiAKIGNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBp bgogCXg4Nl82NCp8aTY4NiopCiAJCUNGTEFHUz0iLW1zc2UiCi0JCWJ1aWxkX29wdGlvbnNfZGVm YXVsdD0ibnZlbmMiCisJCWJ1aWxkX29wdGlvbnNfZGVmYXVsdD0ibnZlbmMgcXN2IgogCQk7Owog ZXNhYwogCkBAIC0zNyw3ICs0MCw3IEBAIHByZV9jb25maWd1cmUoKSB7CiAJIyB1c2Ugc3lzdGVt IGxpYnJhcmllcywgZG9uJ3QgZG93bmxvYWQgdGhlbQogCXJtIC1yZiBjb250cmliLwogCWZvciBt b2R1bGUgaW4gZmRrLWFhYyBmZm1wZWcgbGliYmx1cmF5IGxpYmRhdjFkIGxpYmR2ZG5hdiBsaWJk dmRyZWFkIG52ZW5jIFwKLQkJeDI2NSB6aW1nOyBkbworCQl4MjY1IHppbWcgc3Z0LWF2MSBsaWJ2 cGw7IGRvCiAJICAgIHZzZWQgLWkgIi9NT0RVTEVTICs9IGNvbnRyaWJcLyR7bW9kdWxlfS9kIiBt YWtlL2luY2x1ZGUvbWFpbi5kZWZzCiAJZG9uZQogfQoKRnJvbSA3NTU1OTkzZjZmZjA5NjFiNzZh NTI3NDRmMDgzY2JiMTAwOGRjZmI3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGlj ZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ4IC0w NDAwClN1YmplY3Q6IFtQQVRDSCAwMzgvMTA4XSBoZWRnZXdhcnM6IHJldmJ1bXAgZm9yIGZmbXBl ZzYKCi0tLQogc3JjcGtncy9oZWRnZXdhcnMvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdl ZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2hl ZGdld2Fycy90ZW1wbGF0ZSBiL3NyY3BrZ3MvaGVkZ2V3YXJzL3RlbXBsYXRlCmluZGV4IDhkZDBl NDI1MmNhOGM1Li4zYTI5ZTdiMmIyODA1ZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9oZWRnZXdhcnMv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9oZWRnZXdhcnMvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdoZWRnZXdhcnMnCiBwa2duYW1lPWhlZGdld2FycwogdmVy c2lvbj0xLjAuMgotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGNv bmZpZ3VyZV9hcmdzPSItRE5PU0VSVkVSPTEgLUREQVRBX0lOU1RBTExfRElSPS91c3Ivc2hhcmUv JHtwa2duYW1lfQogIC1EUEhZU0ZTX1NZU1RFTT0xIC1ETUlOSU1BTF9GTEFHUz0xIgoKRnJvbSA5 MjBiNjBiMzlkYTcyN2M3OTc1YzExYjZkYzFhZmJhNDZhNjRjNzlmIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1h ciAyMDIzIDIwOjAxOjQ4IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMzkvMTA4XSBpZGpjOiByZXZi dW1wIGZvciBmZm1wZWc0CgotLS0KIHNyY3BrZ3MvaWRqYy90ZW1wbGF0ZSB8IDQgKystLQogMSBm aWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2lkamMvdGVtcGxhdGUgYi9zcmNwa2dzL2lkamMvdGVtcGxhdGUKaW5kZXggYTlj ZGUwNjY1ZDU1YjEuLmY0MWUxZTRmYWJiYWU3IDEwMDY0NAotLS0gYS9zcmNwa2dzL2lkamMvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9pZGpjL3RlbXBsYXRlCkBAIC0xLDExICsxLDExIEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdpZGpjJwogcGtnbmFtZT1pZGpjCiB2ZXJzaW9uPTAuOS4xCi1yZXZp c2lvbj01CityZXZpc2lvbj02CiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBob3N0bWFrZWRl cGVuZHM9InBrZy1jb25maWcgZ2l0IHB5dGhvbjMgYXV0b21ha2UgZ2V0dGV4dC1kZXZlbCBsaWJ0 b29sIgogbWFrZWRlcGVuZHM9ImxpYnZvcmJpcy1kZXZlbCBsaWJvZ2ctZGV2ZWwgamFjay1kZXZl bCBsaWJzYW1wbGVyYXRlLWRldmVsCi0gbGliZmxhYy1kZXZlbCBsaWJzbmRmaWxlLWRldmVsIG1w ZzEyMy1kZXZlbCBmZm1wZWctZGV2ZWwgc3BlZXgtZGV2ZWwKKyBsaWJmbGFjLWRldmVsIGxpYnNu ZGZpbGUtZGV2ZWwgbXBnMTIzLWRldmVsIGZmbXBlZzQtZGV2ZWwgc3BlZXgtZGV2ZWwKICBnbGli LWRldmVsIHBpeG1hbi1kZXZlbCBsYW1lLWRldmVsIHB5dGhvbjMtZ29iamVjdC1kZXZlbCBsaWJz aG91dC1pZGpjLWRldmVsCiAgb3B1cy1kZXZlbCB0d29sYW1lLWRldmVsIHB5dGhvbjMtbXV0YWdl biBweXRob24zLWRldmVsIgogZGVwZW5kcz0icHl0aG9uMy1nb2JqZWN0IHB5dGhvbjMtbXV0YWdl biBkZXNrdG9wLWZpbGUtdXRpbHMgc2hhcmVkLW1pbWUtaW5mbyBweXRob24zLWRidXMgamFjayIK CkZyb20gN2U2YmUwMWFiZGIyZTQyZWQ3ZjFlOTk1NjJlNDBlOGQ5MDEzYmFmNyBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2Vk LCAyMiBNYXIgMjAyMyAyMDowMTo0OCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDQwLzEwOF0ga2lk MzogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2tpZDMvcGF0Y2hlcy9mZm1wZWc1 LnBhdGNoIHwgMTcgKysrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCAxNyBpbnNlcnRp b25zKCspCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9raWQzL3BhdGNoZXMvZmZtcGVnNS5w YXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mva2lkMy9wYXRjaGVzL2ZmbXBlZzUucGF0Y2ggYi9z cmNwa2dzL2tpZDMvcGF0Y2hlcy9mZm1wZWc1LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwMDAwLi4xMzVmYzUwZTA3YzliYQotLS0gL2Rldi9udWxsCisrKyBiL3Ny Y3BrZ3Mva2lkMy9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gKQEAgLTAsMCArMSwxNyBAQAorIyBodHRw czovL2F1ci5hcmNobGludXgub3JnL2NnaXQvYXVyLmdpdC9kaWZmL2ZmbXBlZzUucGF0Y2g/aD1r aWQzLWNsaSZpZD0xMjQxMGE3NDkwNjYxMmU3ZWZjMGVjOGZiY2U3MzliNGEwZmVmN2U3CitkaWZm IC0tZ2l0IGEvc3JjL3BsdWdpbnMvYWNvdXN0aWRpbXBvcnQvZmZtcGVnZmluZ2VycHJpbnRkZWNv ZGVyLmNwcCBiL3NyYy9wbHVnaW5zL2Fjb3VzdGlkaW1wb3J0L2ZmbXBlZ2ZpbmdlcnByaW50ZGVj b2Rlci5jcHAKK2luZGV4IGUxNTZkNDI0Li5lMTJiOWFiZCAxMDA2NDQKKy0tLSBhL3NyYy9wbHVn aW5zL2Fjb3VzdGlkaW1wb3J0L2ZmbXBlZ2ZpbmdlcnByaW50ZGVjb2Rlci5jcHAKKysrKyBiL3Ny Yy9wbHVnaW5zL2Fjb3VzdGlkaW1wb3J0L2ZmbXBlZ2ZpbmdlcnByaW50ZGVjb2Rlci5jcHAKK0BA IC0yMzIsNyArMjMyLDExIEBAIHByaXZhdGU6CisgICBmcmllbmQgY2xhc3MgRm9ybWF0OworICAg ZnJpZW5kIGNsYXNzIENvbnZlcnRlcjsKKyAgIEFWQ29kZWNDb250ZXh0KiBtX3B0cjsKKysjaWYg TElCQVZDT0RFQ19WRVJTSU9OX0lOVCA8IEFWX1ZFUlNJT05fSU5UKDU5LCAwLCAwKQorICAgQVZD b2RlYyogbV9pbXBsOworKyNlbHNlCisrICBjb25zdCBBVkNvZGVjKiBtX2ltcGw7CisrI2VuZGlm CisgICBBVkZyYW1lKiBtX2ZyYW1lOworICAgYm9vbCBtX29wZW5lZDsKKyB9OwoKRnJvbSA1Yjll M2Q0MWQ5OTdhODdkMWYwNzNiY2IxYmQ4ZTVkNjFkZjBhMjEzIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAy MDIzIDIwOjAxOjQ4IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNDEvMTA4XSBrb2RpOiByZXZidW1w IGZvciBmZm1wZWc0CgotLS0KIHNyY3BrZ3Mva29kaS90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxl IGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL2tvZGkvdGVtcGxhdGUgYi9zcmNwa2dzL2tvZGkvdGVtcGxhdGUKaW5kZXggZDM3YTU5 MThjZDY3NTguLmVhNzhlMGFjYTBmZTNlIDEwMDY0NAotLS0gYS9zcmNwa2dzL2tvZGkvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9rb2RpL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAna29kaScKIHBrZ25hbWU9a29kaQogdmVyc2lvbj0xOS40Ci1yZXZpc2lvbj05 CityZXZpc2lvbj0xMAogX2NvZGVuYW1lPSJNYXRyaXgiCiBidWlsZF9zdHlsZT1jbWFrZQogY29u ZmlndXJlX2FyZ3M9Ii1EV0lUSF9GRk1QRUc9L3VzciAtREVOQUJMRV9MREdPTEQ9T0ZGCkBAIC01 NCw3ICs1NCw3IEBAIG1ha2VkZXBlbmRzPSIKICBsaWJtYWQtZGV2ZWwgZm9udGNvbmZpZy1kZXZl bCBsaWJYaW5lcmFtYS1kZXZlbCBsaWJzYW1wbGVyYXRlLWRldmVsIGxpYm1tcy1kZXZlbAogIGVu Y2EtZGV2ZWwgYm9vc3QtZGV2ZWwgbGliY3VybC1kZXZlbCBsaWJ2YS1kZXZlbCBsaWJ2ZHBhdS1k ZXZlbCBsaWJhc3MtZGV2ZWwKICBsaWJibHVldG9vdGgtZGV2ZWwgeWFqbC1kZXZlbCBsaWJwbGlz dC1kZXZlbCBsaWJydG1wLWRldmVsIHRpbnl4bWwtZGV2ZWwKLSB0YWdsaWItZGV2ZWwgbGliY2Fw LWRldmVsIGxhbWUtZGV2ZWwgbGliYmx1cmF5LWRldmVsIGxpYm5mcy1kZXZlbCBmZm1wZWctZGV2 ZWwKKyB0YWdsaWItZGV2ZWwgbGliY2FwLWRldmVsIGxhbWUtZGV2ZWwgbGliYmx1cmF5LWRldmVs IGxpYm5mcy1kZXZlbCBmZm1wZWc0LWRldmVsCiAgZ2lmbGliLWRldmVsIGxpYnhzbHQtZGV2ZWwg Z251dGxzLWRldmVsIGxpYnNzaC1kZXZlbCBsaWJtaWNyb2h0dHBkLWRldmVsCiAgbGliY2VjLWRl dmVsIGRjYWRlYy1kZXZlbCBmbGF0YnVmZmVycy1kZXZlbCBmbXQtZGV2ZWwgbGNtczItZGV2ZWwK ICBsaWJmc3RyY21wLWRldmVsIHJhcGlkanNvbiBsaWJjZGlvLXBhcmFub2lhIHNwZGxvZyBsaWJ3 YXlsYW5kcHAtZGV2ZWwKCkZyb20gY2M5OWQ5MjUyMjU3ODg2OTk2OGFhMjBkZTEyMzA5Y2RjNWQ4 NzUwNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWls LmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0OCAtMDQwMApTdWJqZWN0OiBbUEFU Q0ggMDQyLzEwOF0ga3BpcGV3aXJlOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3Mv a3BpcGV3aXJlL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCsp LCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9rcGlwZXdpcmUvdGVtcGxhdGUg Yi9zcmNwa2dzL2twaXBld2lyZS90ZW1wbGF0ZQppbmRleCBiYzQxZWZlN2IxZTI1MC4uMTQ0Njc1 OTUwY2FmNWUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mva3BpcGV3aXJlL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3Mva3BpcGV3aXJlL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAna3BpcGV3aXJlJwogcGtnbmFtZT1rcGlwZXdpcmUKIHZlcnNpb249Ni4wLjUKLXJldmlz aW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0eWxlPWNtYWtlCiBidWlsZF9oZWxwZXI9cWVtdQog Y29uZmlndXJlX2FyZ3M9Ii1ES0RFX0lOU1RBTExfUU1MRElSPWxpYi9xdDYvcW1sIgoKRnJvbSA3 MGM5MDU1MDlhMmQ3NTkwNGRhZTUyN2M2MTEzNGE4NjBjY2ZiZmE0IE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1h ciAyMDIzIDIwOjAxOjQ4IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNDMvMTA4XSBsaWJvcGVuYWw6 IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9saWJvcGVuYWwvdGVtcGxhdGUgfCAy ICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2xpYm9wZW5hbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvbGlib3BlbmFsL3Rl bXBsYXRlCmluZGV4IDg4ZDBmMTEzMDdkODFhLi44MzA4ZmNhMDM5M2UzMyAxMDA2NDQKLS0tIGEv c3JjcGtncy9saWJvcGVuYWwvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9saWJvcGVuYWwvdGVtcGxh dGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdsaWJvcGVuYWwnCiBwa2du YW1lPWxpYm9wZW5hbAogdmVyc2lvbj0xLjIzLjEKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1 aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURBTFNPRlRfRVhBTVBMRVM9T0ZGIgog aG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIgoKRnJvbSAxN2FhZWM4NDk4NTY5Y2ExNTlhYmY4 YjBlNDA0MWMzNzg3M2RiNzdlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8 emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ4IC0wNDAw ClN1YmplY3Q6IFtQQVRDSCAwNDQvMTA4XSBsb3VkZ2FpbjogcmV2YnVtcCBmb3IgZmZtcGVnNgoK LS0tCiBzcmNwa2dzL2xvdWRnYWluL3BhdGNoZXMvZmZtcGVnNS5wYXRjaCB8IDExICsrKysrKysr KysrCiBzcmNwa2dzL2xvdWRnYWluL3RlbXBsYXRlICAgICAgICAgICAgICB8ICAyICstCiAyIGZp bGVzIGNoYW5nZWQsIDEyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2Rl IDEwMDY0NCBzcmNwa2dzL2xvdWRnYWluL3BhdGNoZXMvZmZtcGVnNS5wYXRjaAoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvbG91ZGdhaW4vcGF0Y2hlcy9mZm1wZWc1LnBhdGNoIGIvc3JjcGtncy9sb3Vk Z2Fpbi9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw MDAwMDAwMDAwMDAuLjE2ZDQ1MTBlZTk4ZmFhCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9s b3VkZ2Fpbi9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gKQEAgLTAsMCArMSwxMSBAQAorLS0tIGEvc3Jj L3NjYW4uYwkyMDE5LTA5LTA2IDExOjMxOjE5LjAwMDAwMDAwMCAtMDQwMAorKysrIGIvc3JjL3Nj YW4uYwkyMDIzLTAzLTIzIDExOjE1OjQwLjg2Nzk2ODUyMSAtMDQwMAorQEAgLTY5LDggKzY5LDYg QEAKKyAJICogSXQgaXMgbm93IHVzZWxlc3MKKyAJICogaHR0cHM6Ly9naXRodWIuY29tL0ZGbXBl Zy9GRm1wZWcvYmxvYi83MGQyNTI2OGMyMWNiZWU1ZjA4MzA0ZGE5NWJlMWY2NDdjNjMwYzE1L2Rv Yy9BUEljaGFuZ2VzI0w4NgorIAkgKi8KKy0gIGlmIChhdmZvcm1hdF92ZXJzaW9uKCkgPCBBVl9W RVJTSU9OX0lOVCg1OCw5LDEwMCkpCistICAgIGF2X3JlZ2lzdGVyX2FsbCgpOworIAorIAlhdl9s b2dfc2V0X2NhbGxiYWNrKHNjYW5fYXZfbG9nKTsKKyAKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbG91 ZGdhaW4vdGVtcGxhdGUgYi9zcmNwa2dzL2xvdWRnYWluL3RlbXBsYXRlCmluZGV4IGRhNGYyZDU2 ZTk0YzNkLi40ZDZiZjI5ZWZiNGZkZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9sb3VkZ2Fpbi90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL2xvdWRnYWluL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAnbG91ZGdhaW4nCiBwa2duYW1lPWxvdWRnYWluCiB2ZXJzaW9uPTAu Ni44Ci1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1jbWFrZQogaG9zdG1ha2Vk ZXBlbmRzPSJwa2ctY29uZmlnIgogbWFrZWRlcGVuZHM9ImxpYmVidXIxMjgtZGV2ZWwgdGFnbGli LWRldmVsIGZmbXBlZy1kZXZlbCIKCkZyb20gNWRiMTZiOTQ5MzMxYzI0NmJmOTdjYmZhMDk3NThk MTA4YjBjNWRkNSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1 QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0OCAtMDQwMApTdWJqZWN0 OiBbUEFUQ0ggMDQ1LzEwOF0gbWVkaWFzdHJlYW1lcjogcmV2YnVtcCBmb3IgZmZtcGVnNAoKLS0t CiBzcmNwa2dzL21lZGlhc3RyZWFtZXIvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2Vk LCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9t ZWRpYXN0cmVhbWVyL3RlbXBsYXRlIGIvc3JjcGtncy9tZWRpYXN0cmVhbWVyL3RlbXBsYXRlCmlu ZGV4IDBmY2ZmYTc2NTNkMThlLi5lODg4NjI2Yjk0NWU1NSAxMDA2NDQKLS0tIGEvc3JjcGtncy9t ZWRpYXN0cmVhbWVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbWVkaWFzdHJlYW1lci90ZW1wbGF0 ZQpAQCAtMSwxMSArMSwxMSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbWVkaWFzdHJlYW1lcicK IHBrZ25hbWU9bWVkaWFzdHJlYW1lcgogdmVyc2lvbj01LjIuMTExCi1yZXZpc2lvbj0yCityZXZp c2lvbj0zCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1ERU5BQkxFX1NUUklD VD0wIC1ERU5BQkxFX1VOSVRfVEVTVFM9MCIKIGhvc3RtYWtlZGVwZW5kcz0icHl0aG9uMyIKLW1h a2VkZXBlbmRzPSJienJ0cC1kZXZlbCBmZm1wZWctZGV2ZWwgZ2xldy1kZXZlbCBsaWJYdi1kZXZl bCBsaWJzcnRwLWRldmVsCittYWtlZGVwZW5kcz0iYnpydHAtZGV2ZWwgZmZtcGVnNC1kZXZlbCBn bGV3LWRldmVsIGxpYlh2LWRldmVsIGxpYnNydHAtZGV2ZWwKICBsaWJ1cG5wLWRldmVsIGxpYnZw eC1kZXZlbCBtYmVkdGxzLWRldmVsIG9wdXMtZGV2ZWwgb3J0cC1kZXZlbCBwdWxzZWF1ZGlvLWRl dmVsCiAgbGlidGhlb3JhLWRldmVsIHNwZWV4LWRldmVsIHY0bC11dGlscy1kZXZlbCBiY2c3Mjkt ZGV2ZWwgYmNtYXRyb3NrYTItZGV2ZWwgbGliZ3NtLWRldmVsCiAgenhpbmctY3BwLWRldmVsIgoK RnJvbSAwZjFhOTJmMzUyZGE1YzEyMWRhYmIxNmFjZGIxMzlhODQzZGU0Zjc2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQs IDIyIE1hciAyMDIzIDIwOjAxOjQ4IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNDYvMTA4XSBtZ2Jh OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvbWdiYS90ZW1wbGF0ZSB8IDIgKy0K IDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvbWdiYS90ZW1wbGF0ZSBiL3NyY3BrZ3MvbWdiYS90ZW1wbGF0ZQppbmRleCA2 Y2Q2NTY1MDMxMjU0My4uOTM0MDFhZGI2MThiZDggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbWdiYS90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL21nYmEvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdtZ2JhJwogcGtnbmFtZT1tZ2JhCiB2ZXJzaW9uPTAuMTAuMwotcmV2 aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0i cGtnLWNvbmZpZyBxdDUtaG9zdC10b29scyBxdDUtcW1ha2UgZGVza3RvcC1maWxlLXV0aWxzIgog bWFrZWRlcGVuZHM9IlNETDItZGV2ZWwgZmZtcGVnLWRldmVsIGxpYmVkaXQtZGV2ZWwgbGliZXBv eHktZGV2ZWwgbGlibWFnaWNrLWRldmVsCgpGcm9tIGQxNzc4NzRkYmU3OGE5MmUxZDAzMDcxZGE5 OTVkZDE1MDNlZTNmODcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGlj ZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDkgLTA0MDAKU3Vi amVjdDogW1BBVENIIDA0Ny8xMDhdIG1sdDogcmV2YnVtcCBmb3IgZmZtcGVnNAoKLS0tCiBzcmNw a2dzL21sdC90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygr KSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL21sdC90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvbWx0L3RlbXBsYXRlCmluZGV4IDczZTM5MTVhYWFiOWFjLi5kN2VkNGM0YjMwYTg2OCAx MDA2NDQKLS0tIGEvc3JjcGtncy9tbHQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tbHQvdGVtcGxh dGUKQEAgLTEsMTQgKzEsMTQgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ21sdCcKIHBrZ25hbWU9 bWx0CiB2ZXJzaW9uPTYuMjYuMQotcmV2aXNpb249MworcmV2aXNpb249NAogYnVpbGRfc3R5bGU9 Y29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1wcmVmaXg9L3VzciAtLWxpYmRpcj0vdXNyL2xp YiRYQlBTX1RBUkdFVF9XT1JEU0laRQogIC0tZW5hYmxlLWdwbCAtLWVuYWJsZS1ncGwzIC0tZGlz YWJsZS1zd2ZkZWMgLS13aXRob3V0LWtkZQogIC0tc3dpZy1sYW5ndWFnZXM9cHl0aG9uIgogaG9z dG1ha2VkZXBlbmRzPSJkb3h5Z2VuIHBrZy1jb25maWcgbGFkc3BhLXNkayBzd2lnIHB5dGhvbjMg d2hpY2giCiAjIFhYWDogbW92aXQgdmlkLnN0YWIKLW1ha2VkZXBlbmRzPSJhbHNhLWxpYi1kZXZl bCBmZm1wZWctZGV2ZWwgZ3RrKy1kZXZlbCBqYWNrLWRldmVsIGxhZHNwYS1zZGsKK21ha2VkZXBl bmRzPSJhbHNhLWxpYi1kZXZlbCBmZm1wZWc0LWRldmVsIGd0aystZGV2ZWwgamFjay1kZXZlbCBs YWRzcGEtc2RrCiAgbGliZXhpZi1kZXZlbCBsaWJzYW1wbGVyYXRlLWRldmVsIGxpYnhtbDItZGV2 ZWwgc294LWRldmVsIFNETF9pbWFnZS1kZXZlbAogIGZmdHctZGV2ZWwgZnJlaTByLXBsdWdpbnMg cHl0aG9uMy1kZXZlbCBwdWxzZWF1ZGlvLWRldmVsIG1vdml0LWRldmVsCiAgbGlidmlkc3RhYi1k ZXZlbCIKCkZyb20gMmVjNWU0YjcxNjEyM2JjZmM2NGZiYWI1NzlkZGI3MDBiYjRhYmE2MyBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0 ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0OSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDQ4LzEw OF0gbW9jOiByZXZidW1wIGZvciBmZm1wZWc0CgotLS0KIHNyY3BrZ3MvbW9jL3RlbXBsYXRlIHwg NCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbW9jL3RlbXBsYXRlIGIvc3JjcGtncy9tb2MvdGVtcGxhdGUK aW5kZXggM2EwNDkzMmM4ZjFlNjEuLjgzODc1NWY4OGRiMDllIDEwMDY0NAotLS0gYS9zcmNwa2dz L21vYy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL21vYy90ZW1wbGF0ZQpAQCAtMSwxMCArMSwxMCBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbW9jJwogcGtnbmFtZT1tb2MKIHZlcnNpb249Mi41LjIK LXJldmlzaW9uPTcKK3JldmlzaW9uPTgKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGhvc3Rt YWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKLW1ha2VkZXBlbmRzPSJkYi1kZXZlbCBuY3Vyc2VzLWRl dmVsIGxpYmN1cmwtZGV2ZWwgcG9wdC1kZXZlbCBmZm1wZWctZGV2ZWwKK21ha2VkZXBlbmRzPSJk Yi1kZXZlbCBuY3Vyc2VzLWRldmVsIGxpYmN1cmwtZGV2ZWwgcG9wdC1kZXZlbCBmZm1wZWc0LWRl dmVsCiAgamFjay1kZXZlbCBhbHNhLWxpYi1kZXZlbCBsaWJsdGRsLWRldmVsIGxpYmZsYWMtZGV2 ZWwgbGlidm9yYmlzLWRldmVsCiAgbGlibWFkLWRldmVsIGxpYm1wY2RlYy1kZXZlbCBsaWJtb2Rw bHVnLWRldmVsIGxpYmlkM3RhZy1kZXZlbCBmYWFkMi1kZXZlbAogIHRhZ2xpYi1kZXZlbCBsaWJz bmRmaWxlLWRldmVsIHdhdnBhY2stZGV2ZWwgc3BlZXgtZGV2ZWwgbGlic2FtcGxlcmF0ZS1kZXZl bAoKRnJvbSBmZDI1ZGQ4ODliMjE5MzI0OGI2Y2U3YzIyMDU1NWYxYTg4NWY3NzRlIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBX ZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ5IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNDkvMTA4XSBt b3Rpb246IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9tb3Rpb24vdGVtcGxhdGUg fCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL21vdGlvbi90ZW1wbGF0ZSBiL3NyY3BrZ3MvbW90aW9uL3RlbXBs YXRlCmluZGV4IDYwN2ViZWIzYzdiMjQyLi5iZjYzYTkxZDk3NjRmNiAxMDA2NDQKLS0tIGEvc3Jj cGtncy9tb3Rpb24vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tb3Rpb24vdGVtcGxhdGUKQEAgLTEs NyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdtb3Rpb24nCiBwa2duYW1lPW1vdGlvbgog dmVyc2lvbj00LjYuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNv bmZpZ3VyZQogaG9zdG1ha2VkZXBlbmRzPSJhdXRvbWFrZSBwa2ctY29uZmlnIGdldHRleHQtZGV2 ZWwgdGFyIgogbWFrZWRlcGVuZHM9ImZmbXBlZy1kZXZlbCBsaWJtaWNyb2h0dHBkLWRldmVsIHY0 bC11dGlscy1kZXZlbCBnZXR0ZXh0LWRldmVsIgoKRnJvbSAwOGJjNTcyMTVjYjlkMDBlNzE4ZTBl OGZmYWQxMTMzNTBiYWNlMWZmIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8 emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ5IC0wNDAw ClN1YmplY3Q6IFtQQVRDSCAwNTAvMTA4XSBvbGl2ZTogcmV2YnVtcCBmb3IgZmZtcGVnNAoKLS0t CiBzcmNwa2dzL29saXZlL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNl cnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvb2xpdmUvdGVt cGxhdGUgYi9zcmNwa2dzL29saXZlL3RlbXBsYXRlCmluZGV4IDEyYTQ2OTM2Yzk5MDAzLi41YzI5 MTdiOWM1MTI0NSAxMDA2NDQKLS0tIGEvc3JjcGtncy9vbGl2ZS90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL29saXZlL3RlbXBsYXRlCkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdvbGl2ZScKIHBrZ25hbWU9b2xpdmUKIHZlcnNpb249MC4xLjIKLXJldmlzaW9uPTIKK3Jldmlz aW9uPTMKIGJ1aWxkX3N0eWxlPXFtYWtlCiBob3N0bWFrZWRlcGVuZHM9InF0NS1xbWFrZSBxdDUt aG9zdC10b29scyBwa2ctY29uZmlnIgotbWFrZWRlcGVuZHM9InF0NS1kZXZlbCBxdDUtbXVsdGlt ZWRpYS1kZXZlbCBxdDUtc3ZnLWRldmVsIGZmbXBlZy1kZXZlbCBmcmVpMHItcGx1Z2lucyIKK21h a2VkZXBlbmRzPSJxdDUtZGV2ZWwgcXQ1LW11bHRpbWVkaWEtZGV2ZWwgcXQ1LXN2Zy1kZXZlbCBm Zm1wZWc0LWRldmVsIGZyZWkwci1wbHVnaW5zIgogc2hvcnRfZGVzYz0iTm9uLWxpbmVhciB2aWRl byBlZGl0b3IiCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+Igog bGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKCkZyb20gZWRjMGFiZDQ0NWMyM2M2MWE3MDczZDIx MjdiOGIyYmI3MzgwNWQ4NCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHps aWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo1MCAtMDQwMApT dWJqZWN0OiBbUEFUQ0ggMDUxLzEwOF0gb3BlbnRvb256OiByZXZidW1wIGZvciBmZm1wZWc2Cgot LS0KIHNyY3BrZ3Mvb3BlbnRvb256L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEg aW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9vcGVudG9v bnovdGVtcGxhdGUgYi9zcmNwa2dzL29wZW50b29uei90ZW1wbGF0ZQppbmRleCA4MTI0OGE3ZGZm YjFkNy4uYTYxNjkwOTA1YTUzYzQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvb3BlbnRvb256L3RlbXBs YXRlCisrKyBiL3NyY3BrZ3Mvb3BlbnRvb256L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAnb3BlbnRvb256JwogcGtnbmFtZT1vcGVudG9vbnoKIHZlcnNpb249 MS43LjEKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3dya3NyYz0idG9vbnovc291cmNl cyIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBtYWtlX2NtZD1tYWtlCgpGcm9tIDg5Y2I3MzEyY2M4YThl OTZmZWEzOTE1NjhhYjEzMzEwODFjYzMxYmYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6 NTAgLTA0MDAKU3ViamVjdDogW1BBVENIIDA1Mi8xMDhdIHBpYW5vYmFyOiByZXZidW1wIGZvciBm Zm1wZWc2CgotLS0KIHNyY3BrZ3MvcGlhbm9iYXIvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hh bmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dz L3BpYW5vYmFyL3RlbXBsYXRlIGIvc3JjcGtncy9waWFub2Jhci90ZW1wbGF0ZQppbmRleCBlM2Zl YmI4MjFhNDUxMC4uMWUzZGMxYmY5MzA4ZWUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcGlhbm9iYXIv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9waWFub2Jhci90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3BpYW5vYmFyJwogcGtnbmFtZT1waWFub2JhcgogdmVyc2lv bj0yMDIyLjA0LjAxCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtbWFr ZWZpbGUKIG1ha2VfYnVpbGRfYXJncz0iVj0xIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmln IgoKRnJvbSA3NDc0MDg0MzIzNTIzZmM2YWJhMjkyYTk0OTg2NDIyZGFjMmYxZmUzIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBX ZWQsIDIyIE1hciAyMDIzIDIwOjAxOjUwIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNTMvMTA4XSBw cHNzcHA6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9wcHNzcHAvcGF0Y2hlcy9m Zm1wZWc2LnBhdGNoIHwgMTUgKysrKysrKysrKysrKysrCiBzcmNwa2dzL3Bwc3NwcC90ZW1wbGF0 ZSAgICAgICAgICAgICAgfCAgMyArLS0KIDIgZmlsZXMgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygr KSwgMiBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3Bwc3NwcC9wYXRj aGVzL2ZmbXBlZzYucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3Bwc3NwcC9wYXRjaGVzL2Zm bXBlZzYucGF0Y2ggYi9zcmNwa2dzL3Bwc3NwcC9wYXRjaGVzL2ZmbXBlZzYucGF0Y2gKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAuLjU4MDNjN2JmMjI3MzA5Ci0tLSAv ZGV2L251bGwKKysrIGIvc3JjcGtncy9wcHNzcHAvcGF0Y2hlcy9mZm1wZWc2LnBhdGNoCkBAIC0w LDAgKzEsMTUgQEAKKy0tLSBhL0NvcmUvSFcvU2ltcGxlQXVkaW9EZWMuY3BwCTIwMjQtMDItMDQg MDg6MDg6MDIuMDAwMDAwMDAwIC0wNTAwCisrKysgYi9Db3JlL0hXL1NpbXBsZUF1ZGlvRGVjLmNw cAkyMDI0LTAyLTE1IDE0OjQ4OjI3LjExNDM2MjA1MSAtMDUwMAorQEAgLTgxLDcgKzgxLDExIEBA CisgCQlyZXR1cm47CisgCX0KKyAJLy8gRmluZCBkZWNvZGVyCisrI2lmIExJQkFWRk9STUFUX1ZF UlNJT05fSU5UIDwgQVZfVkVSU0lPTl9JTlQoNTgsIDE4LCAxMDApCisgCWNvZGVjXyA9IGF2Y29k ZWNfZmluZF9kZWNvZGVyKChBVkNvZGVjSUQpYXVkaW9Db2RlY0lkKTsKKysjZWxzZSAvLyB0aGlz IGlzIGEgbWFjcm8gdG8gY29uc3QgaW4gdGhlIGhlYWRlcgorKwljb2RlY18gPSAoQVZDb2RlYyop YXZjb2RlY19maW5kX2RlY29kZXIoKEFWQ29kZWNJRClhdWRpb0NvZGVjSWQpOworKyNlbmRpZgor IAlpZiAoIWNvZGVjXykgeworIAkJLy8gRWgsIHdlIHNob3VsZG4ndCBldmVuIGhhdmUgbWFuYWdl ZCB0byBjb21waWxlLiBCdXQgbWVoLgorIAkJRVJST1JfTE9HKE1FLCAiVGhpcyB2ZXJzaW9uIG9m IEZGTVBFRyBkb2VzIG5vdCBzdXBwb3J0IEFWX0NPREVDX2N0eCBmb3IgYXVkaW8gKCVzKS4gVXBk YXRlIHlvdXIgc3VibW9kdWxlLiIsIEdldENvZGVjTmFtZShhdWRpb1R5cGUpKTsKKwpkaWZmIC0t Z2l0IGEvc3JjcGtncy9wcHNzcHAvdGVtcGxhdGUgYi9zcmNwa2dzL3Bwc3NwcC90ZW1wbGF0ZQpp bmRleCAyMjM4YTc2MDFjMGFmOC4uMWZkYTU1MjY4YTJkMzkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv cHBzc3BwL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcHBzc3BwL3RlbXBsYXRlCkBAIC0xLDcgKzEs NyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncHBzc3BwJwogcGtnbmFtZT1wcHNzcHAKIHZlcnNp b249MS4xNy4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBfZ2xzbGFuZ19jb21taXQ9YjM0ZjYx OWUxYzg1ODEwZGNiM2M1NzgxMDdkMmU0OGJhNGVlMmIzNwogX1NQSVJWX0Nyb3NzX2NvbW1pdD00 MjEyZWVmNjdlZDBjYTA0OGNiNzI2YTY3NjcxODU1MDRlNzY5NWU1CiBfYXJtaXBzX2NvbW1pdD1h OGQ3MWYwZjI3OWViMGQzMGVjZjZhZjUxNDczYjY2YWUwY2Y4ZThkCkBAIC05MSw3ICs5MSw2IEBA IHBvc3RfY29uZmlndXJlKCkgewogfQogCiBkb19pbnN0YWxsKCkgewotCXZsaWNlbnNlIExJQ0VO U0UuVFhUCiAJdmluc3RhbGwgaWNvbnMvaWNvbi5zdmcgNjQ0IHVzci9zaGFyZS9waXhtYXBzIHBw c3NwcC5zdmcKIAl2aW5zdGFsbCBRdC9QUFNTUFAuZGVza3RvcCA2NDQgdXNyL3NoYXJlL2FwcGxp Y2F0aW9ucwogCXZiaW4gYnVpbGQvUFBTU1BQSGVhZGxlc3MgcHBzc3BwLWhlYWRsZXNzCgpGcm9t IDM0NGQyMmJhZDNmMWVhNGUyNDU3YmZjNTI0OWM2YWFhNzM3M2I2OGQgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIg TWFyIDIwMjMgMjA6MDE6NTAgLTA0MDAKU3ViamVjdDogW1BBVENIIDA1NC8xMDhdIHBxaXY6IHJl dmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9wcWl2L3RlbXBsYXRlIHwgMiArLQogMSBm aWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9wcWl2L3RlbXBsYXRlIGIvc3JjcGtncy9wcWl2L3RlbXBsYXRlCmluZGV4IGY5Zjc3 NTExOTZkNGVlLi4wZDUwNzc3ZTU2YTJkOCAxMDA2NDQKLS0tIGEvc3JjcGtncy9wcWl2L3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvcHFpdi90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ3BxaXYnCiBwa2duYW1lPXBxaXYKIHZlcnNpb249Mi4xMy4xCi1yZXZpc2lv bj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtbWFrZWZpbGUKIGhvc3RtYWtlZGVwZW5k cz0icGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJnbGliLWRldmVsIGd0ayszLWRldmVsICQodm9w dF9pZiBmZm1wZWcgZmZtcGVnLWRldmVsKQoKRnJvbSBiMTE0YzI5ZWEzNjExNzI0NWFmNTZkMmU3 ZWE3MTg0MGY1NThlMGI0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxp Y2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjUwIC0wNDAwClN1 YmplY3Q6IFtQQVRDSCAwNTUvMTA4XSBxbW1wOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNy Y3BrZ3MvcW1tcC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigr KSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcW1tcC90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvcW1tcC90ZW1wbGF0ZQppbmRleCA1Mzc4MWVhM2JjMjhhZC4uMmRhMDdmMWU4N2VhYzAg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcW1tcC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3FtbXAvdGVt cGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdxbW1wJwogcGtnbmFt ZT1xbW1wCiB2ZXJzaW9uPTEuNi4xCi1yZXZpc2lvbj0zCityZXZpc2lvbj00CiBidWlsZF9zdHls ZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EVVNFX0hBTDpCT09MPUZBTFNFIC1EUU1NUF9ERUZB VUxUX1VJOlNUUklORz1zaW1wbGUiCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgcXQ1LWhv c3QtdG9vbHMgcXQ1LXFtYWtlIgoKRnJvbSA4MDM5Mjc5ZGUzYzE1NjIyOWE1YjAzNGUwMjVmNzE0 ZGFmNGViYWQzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVA Z21haWwuY29tPgpEYXRlOiBUaHUsIDE0IERlYyAyMDIzIDEzOjI4OjEwIC0wNTAwClN1YmplY3Q6 IFtQQVRDSCAwNTYvMTA4XSBxdDYtcGRmOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3Br Z3MvcXQ2LXBkZi90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigr KSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ2LXBkZi90ZW1wbGF0ZSBi L3NyY3BrZ3MvcXQ2LXBkZi90ZW1wbGF0ZQppbmRleCBhN2Y2MWVhMGIwYWE1ZC4uN2E2NDM5YTc1 ODA0NzkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcXQ2LXBkZi90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L3F0Ni1wZGYvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdx dDYtcGRmJwogcGtnbmFtZT1xdDYtcGRmCiB2ZXJzaW9uPTYuNy4yCi1yZXZpc2lvbj0xCityZXZp c2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EUVRfRkVBVFVSRV9x dHBkZl9idWlsZD1PTgogIC1EUVRfRkVBVFVSRV9xdHBkZl93aWRnZXRzX2J1aWxkPU9OCgpGcm9t IDZkYzBmM2IzY2Q4OGY3ZWVkZjZhMDc4M2JkYzU3MGMwZmE3YjE0NGMgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIg TWFyIDIwMjMgMjA6MDE6NTAgLTA0MDAKU3ViamVjdDogW1BBVENIIDA1Ny8xMDhdIHF0NS13ZWJl bmdpbmU6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogLi4uL2Nocm9taXVtLW1lZGlhLWZpbHRl cnMtY3BwMTQucGF0Y2ggICAgICAgIHwgIDExICsrCiBzcmNwa2dzL3F0NS13ZWJlbmdpbmUvcGF0 Y2hlcy9mZm1wZWc1LnBhdGNoICAgfCAxNzkgKysrKysrKysrKysrKysrKysrCiAuLi4vcXR3ZWJl bmdpbmUtZml4LWZmbXBlZzUtYnVpbGQucGF0Y2ggICAgICAgfCAgMTQgKysKIHNyY3BrZ3MvcXQ1 LXdlYmVuZ2luZS90ZW1wbGF0ZSAgICAgICAgICAgICAgICB8ICAgNCArLQogNCBmaWxlcyBjaGFu Z2VkLCAyMDYgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0 NCBzcmNwa2dzL3F0NS13ZWJlbmdpbmUvcGF0Y2hlcy9jaHJvbWl1bS1tZWRpYS1maWx0ZXJzLWNw cDE0LnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9xdDUtd2ViZW5naW5lL3BhdGNo ZXMvZmZtcGVnNS5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcXQ1LXdlYmVuZ2lu ZS9wYXRjaGVzL3F0d2ViZW5naW5lLWZpeC1mZm1wZWc1LWJ1aWxkLnBhdGNoCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9xdDUtd2ViZW5naW5lL3BhdGNoZXMvY2hyb21pdW0tbWVkaWEtZmlsdGVycy1j cHAxNC5wYXRjaCBiL3NyY3BrZ3MvcXQ1LXdlYmVuZ2luZS9wYXRjaGVzL2Nocm9taXVtLW1lZGlh LWZpbHRlcnMtY3BwMTQucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw MDAwMDAuLjA0YWRjNTQwZjJjYmMwCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9xdDUtd2Vi ZW5naW5lL3BhdGNoZXMvY2hyb21pdW0tbWVkaWEtZmlsdGVycy1jcHAxNC5wYXRjaApAQCAtMCww ICsxLDExIEBACistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vbWVkaWEvZmlsdGVycy9CVUlM RC5nbgkyMDIzLTAyLTI3IDEzOjMyOjU5LjAwMDAwMDAwMCAtMDUwMAorKysrIGIvc3JjLzNyZHBh cnR5L2Nocm9taXVtL21lZGlhL2ZpbHRlcnMvQlVJTEQuZ24JMjAyMy0wNC0wMiAxNzoyMTozOS4y MDQwNjYzODQgLTA0MDAKK0BAIC05Niw2ICs5Niw4IEBACisgICAgICIvL3VpL2dmeC9nZW9tZXRy eTpnZW9tZXRyeSIsCisgICBdCisgCisrICBjZmxhZ3NfY2MgPSBbICItc3RkPWMrKzE0IiBdCisr CisgICBsaWJzID0gW10KKyAKKyAgIGlmIChwcm9wcmlldGFyeV9jb2RlY3MpIHsKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvcXQ1LXdlYmVuZ2luZS9wYXRjaGVzL2ZmbXBlZzUucGF0Y2ggYi9zcmNwa2dz L3F0NS13ZWJlbmdpbmUvcGF0Y2hlcy9mZm1wZWc1LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDAwMDAwMDAwMDAwMDAwLi5hYzU1ZTE2MzQ0MjNhOQotLS0gL2Rldi9udWxsCisrKyBi L3NyY3BrZ3MvcXQ1LXdlYmVuZ2luZS9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gKQEAgLTAsMCArMSwx NzkgQEAKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRpYS9maWx0ZXJzL2ZmbXBlZ19k ZW11eGVyLmNjCTIwMjMtMDQtMDIgMTY6NTA6NTcuNzMyNTQ3NDQ2IC0wNDAwCisrKysgYi9zcmMv M3JkcGFydHkvY2hyb21pdW0vbWVkaWEvZmlsdGVycy9mZm1wZWdfZGVtdXhlci5jYwkyMDIzLTA0 LTAyIDE2OjUwOjA5LjQ4NjQ3ODk5NSAtMDQwMAorQEAgLTU3LDYgKzU3LDggQEAKKyAKKyBuYW1l c3BhY2UgeworIAorK2NvbnN0ZXhwciBpbnQ2NF90IGtSZWxhdGl2ZVRzQmFzZSA9IHN0YXRpY19j YXN0PGludDY0X3Q+KDB4N2ZmZWZmZmZmZmZmZmZmZik7CisrCisgdm9pZCBTZXRBVlN0cmVhbURp c2NhcmQoQVZTdHJlYW0qIHN0cmVhbSwgQVZEaXNjYXJkIGRpc2NhcmQpIHsKKyAgIERDSEVDSyhz dHJlYW0pOworICAgc3RyZWFtLT5kaXNjYXJkID0gZGlzY2FyZDsKK0BAIC05MCwyNCArOTIsMTIg QEAKKyAKKyBzdGF0aWMgYmFzZTo6VGltZURlbHRhIEV4dHJhY3RTdGFydFRpbWUoQVZTdHJlYW0q IHN0cmVhbSkgeworICAgLy8gVGhlIGRlZmF1bHQgc3RhcnQgdGltZSBpcyB6ZXJvLgorLSAgYmFz ZTo6VGltZURlbHRhIHN0YXJ0X3RpbWU7CisrICBiYXNlOjpUaW1lRGVsdGEgc3RhcnRfdGltZSA9 IGtOb1RpbWVzdGFtcDsKKyAKKyAgIC8vIEZpcnN0IHRyeSB0byB1c2UgIHRoZSB8c3RhcnRfdGlt ZXwgdmFsdWUgYXMgaXMuCisgICBpZiAoc3RyZWFtLT5zdGFydF90aW1lICE9IGtOb0ZGbXBlZ1Rp bWVzdGFtcCkKKyAgICAgc3RhcnRfdGltZSA9IENvbnZlcnRGcm9tVGltZUJhc2Uoc3RyZWFtLT50 aW1lX2Jhc2UsIHN0cmVhbS0+c3RhcnRfdGltZSk7CisgCistICAvLyBOZXh0IHRyeSB0byB1c2Ug dGhlIGZpcnN0IERUUyB2YWx1ZSwgZm9yIGNvZGVjcyB3aGVyZSB3ZSBrbm93IFBUUyA9PSBEVFMK Ky0gIC8vIChleGNsdWRlcyBhbGwgSDI2eCBjb2RlY3MpLiBUaGUgc3RhcnQgdGltZSBtdXN0IGJl IHJldHVybmVkIGluIFBUUy4KKy0gIGlmIChzdHJlYW0tPmZpcnN0X2R0cyAhPSBrTm9GRm1wZWdU aW1lc3RhbXAgJiYKKy0gICAgICBzdHJlYW0tPmNvZGVjcGFyLT5jb2RlY19pZCAhPSBBVl9DT0RF Q19JRF9IRVZDICYmCistICAgICAgc3RyZWFtLT5jb2RlY3Bhci0+Y29kZWNfaWQgIT0gQVZfQ09E RUNfSURfSDI2NCAmJgorLSAgICAgIHN0cmVhbS0+Y29kZWNwYXItPmNvZGVjX2lkICE9IEFWX0NP REVDX0lEX01QRUc0KSB7CistICAgIGNvbnN0IGJhc2U6OlRpbWVEZWx0YSBmaXJzdF9wdHMgPQor LSAgICAgICAgQ29udmVydEZyb21UaW1lQmFzZShzdHJlYW0tPnRpbWVfYmFzZSwgc3RyZWFtLT5m aXJzdF9kdHMpOworLSAgICBpZiAoZmlyc3RfcHRzIDwgc3RhcnRfdGltZSkKKy0gICAgICBzdGFy dF90aW1lID0gZmlyc3RfcHRzOworLSAgfQorLQorICAgcmV0dXJuIHN0YXJ0X3RpbWU7CisgfQor IAorQEAgLTQwOCwxMSArMzk4LDExIEBACisgICBzY29wZWRfcmVmcHRyPERlY29kZXJCdWZmZXI+ IGJ1ZmZlcjsKKyAKKyAgIGlmICh0eXBlKCkgPT0gRGVtdXhlclN0cmVhbTo6VEVYVCkgeworLSAg ICBpbnQgaWRfc2l6ZSA9IDA7CisrICAgIHNpemVfdCBpZF9zaXplID0gMDsKKyAgICAgdWludDhf dCogaWRfZGF0YSA9IGF2X3BhY2tldF9nZXRfc2lkZV9kYXRhKAorICAgICAgICAgcGFja2V0Lmdl dCgpLCBBVl9QS1RfREFUQV9XRUJWVFRfSURFTlRJRklFUiwgJmlkX3NpemUpOworIAorLSAgICBp bnQgc2V0dGluZ3Nfc2l6ZSA9IDA7CisrICAgIHNpemVfdCBzZXR0aW5nc19zaXplID0gMDsKKyAg ICAgdWludDhfdCogc2V0dGluZ3NfZGF0YSA9IGF2X3BhY2tldF9nZXRfc2lkZV9kYXRhKAorICAg ICAgICAgcGFja2V0LmdldCgpLCBBVl9QS1RfREFUQV9XRUJWVFRfU0VUVElOR1MsICZzZXR0aW5n c19zaXplKTsKKyAKK0BAIC00MjQsNyArNDE0LDcgQEAKKyAgICAgYnVmZmVyID0gRGVjb2RlckJ1 ZmZlcjo6Q29weUZyb20ocGFja2V0LT5kYXRhLCBwYWNrZXQtPnNpemUsCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHNpZGVfZGF0YS5kYXRhKCksIHNpZGVfZGF0YS5zaXpl KCkpOworICAgfSBlbHNlIHsKKy0gICAgaW50IHNpZGVfZGF0YV9zaXplID0gMDsKKysgICAgc2l6 ZV90IHNpZGVfZGF0YV9zaXplID0gMDsKKyAgICAgdWludDhfdCogc2lkZV9kYXRhID0gYXZfcGFj a2V0X2dldF9zaWRlX2RhdGEoCisgICAgICAgICBwYWNrZXQuZ2V0KCksIEFWX1BLVF9EQVRBX01B VFJPU0tBX0JMT0NLQURESVRJT05BTCwgJnNpZGVfZGF0YV9zaXplKTsKKyAKK0BAIC00ODUsNyAr NDc1LDcgQEAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrZXQt PnNpemUgLSBkYXRhX29mZnNldCk7CisgICAgIH0KKyAKKy0gICAgaW50IHNraXBfc2FtcGxlc19z aXplID0gMDsKKysgICAgc2l6ZV90IHNraXBfc2FtcGxlc19zaXplID0gMDsKKyAgICAgY29uc3Qg dWludDMyX3QqIHNraXBfc2FtcGxlc19wdHIgPQorICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxj b25zdCB1aW50MzJfdCo+KGF2X3BhY2tldF9nZXRfc2lkZV9kYXRhKAorICAgICAgICAgICAgIHBh Y2tldC5nZXQoKSwgQVZfUEtUX0RBVEFfU0tJUF9TQU1QTEVTLCAmc2tpcF9zYW1wbGVzX3NpemUp KTsKK0BAIC0xNTg3LDYgKzE1NzcsOCBAQAorICAgZm9yIChjb25zdCBhdXRvJiBzdHJlYW0gOiBz dHJlYW1zXykgeworICAgICBpZiAoIXN0cmVhbSB8fCBzdHJlYW0tPklzRW5hYmxlZCgpICE9IGVu YWJsZWQpCisgICAgICAgY29udGludWU7CisrICAgIGlmIChzdHJlYW0tPmF2X3N0cmVhbSgpLT5z dGFydF90aW1lID09IEFWX05PUFRTX1ZBTFVFKQorKyAgICAgIGNvbnRpbnVlOworICAgICBpZiAo IWxvd2VzdF9zdGFydF90aW1lX3N0cmVhbSB8fAorICAgICAgICAgc3RyZWFtLT5zdGFydF90aW1l KCkgPCBsb3dlc3Rfc3RhcnRfdGltZV9zdHJlYW0tPnN0YXJ0X3RpbWUoKSkgeworICAgICAgIGxv d2VzdF9zdGFydF90aW1lX3N0cmVhbSA9IHN0cmVhbS5nZXQoKTsKK0BAIC0xNjA0LDYgKzE1OTYs OCBAQAorICAgICBpZiAoc3RyZWFtICYmIHN0cmVhbS0+dHlwZSgpID09IERlbXV4ZXJTdHJlYW06 OlZJREVPICYmCisgICAgICAgICBzdHJlYW0tPklzRW5hYmxlZCgpKSB7CisgICAgICAgdmlkZW9f c3RyZWFtID0gc3RyZWFtLmdldCgpOworKyAgICAgIGlmIChzdHJlYW0tPmF2X3N0cmVhbSgpLT5z dGFydF90aW1lID09IEFWX05PUFRTX1ZBTFVFKQorKyAgICAgICAgY29udGludWU7CisgICAgICAg aWYgKHZpZGVvX3N0cmVhbS0+c3RhcnRfdGltZSgpIDw9IHNlZWtfdGltZSkgeworICAgICAgICAg cmV0dXJuIHZpZGVvX3N0cmVhbTsKKyAgICAgICB9CitkaWZmIC1OYXVycCBxdHdlYmVuZ2luZS01 LjE1LjEwLm9yaWcvc3JjLzNyZHBhcnR5L2Nocm9taXVtL21lZGlhL2ZmbXBlZy9mZm1wZWdfY29t bW9uLmggcXR3ZWJlbmdpbmUtNS4xNS4xMC9zcmMvM3JkcGFydHkvY2hyb21pdW0vbWVkaWEvZmZt cGVnL2ZmbXBlZ19jb21tb24uaAorLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL21lZGlhL2Zm bXBlZy9mZm1wZWdfY29tbW9uLmgJMjAyMi0wNS0yMyAwNjozODo0MC4wMDAwMDAwMDAgLTA1MDAK KysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRpYS9mZm1wZWcvZmZtcGVnX2NvbW1vbi5o CTIwMjItMDctMTEgMjI6MTI6NDcuOTE3MTkyNzg4IC0wNTAwCitAQCAtMjksNiArMjksNyBAQCBl eHRlcm4gIkMiIHsKKyAjaW5jbHVkZSA8bGliYXZmb3JtYXQvYXZmb3JtYXQuaD4KKyAjaW5jbHVk ZSA8bGliYXZmb3JtYXQvYXZpby5oPgorICNpbmNsdWRlIDxsaWJhdnV0aWwvYXZ1dGlsLmg+Cisr I2luY2x1ZGUgPGxpYmF2dXRpbC9jaGFubmVsX2xheW91dC5oPgorICNpbmNsdWRlIDxsaWJhdnV0 aWwvaW1ndXRpbHMuaD4KKyAjaW5jbHVkZSA8bGliYXZ1dGlsL2xvZy5oPgorICNpbmNsdWRlIDxs aWJhdnV0aWwvbWFzdGVyaW5nX2Rpc3BsYXlfbWV0YWRhdGEuaD4KK2RpZmYgLU5hdXJwIHF0d2Vi ZW5naW5lLTUuMTUuMTAub3JpZy9zcmMvM3JkcGFydHkvY2hyb21pdW0vbWVkaWEvZmlsdGVycy9h dWRpb19maWxlX3JlYWRlci5jYyBxdHdlYmVuZ2luZS01LjE1LjEwL3NyYy8zcmRwYXJ0eS9jaHJv bWl1bS9tZWRpYS9maWx0ZXJzL2F1ZGlvX2ZpbGVfcmVhZGVyLmNjCistLS0gYS9zcmMvM3JkcGFy dHkvY2hyb21pdW0vbWVkaWEvZmlsdGVycy9hdWRpb19maWxlX3JlYWRlci5jYwkyMDIyLTA1LTIz IDA2OjM4OjQwLjAwMDAwMDAwMCAtMDUwMAorKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVtL21l ZGlhL2ZpbHRlcnMvYXVkaW9fZmlsZV9yZWFkZXIuY2MJMjAyMi0wNy0xMSAyMjoxMjo0Ny45MTcx OTI3ODggLTA1MDAKK0BAIC04NSw3ICs4NSw3IEBAIGJvb2wgQXVkaW9GaWxlUmVhZGVyOjpPcGVu RGVtdXhlcigpIHsKKyB9CisgCisgYm9vbCBBdWRpb0ZpbGVSZWFkZXI6Ok9wZW5EZWNvZGVyKCkg eworLSAgQVZDb2RlYyogY29kZWMgPSBhdmNvZGVjX2ZpbmRfZGVjb2Rlcihjb2RlY19jb250ZXh0 Xy0+Y29kZWNfaWQpOworKyAgY29uc3QgQVZDb2RlYyogY29kZWMgPSBhdmNvZGVjX2ZpbmRfZGVj b2Rlcihjb2RlY19jb250ZXh0Xy0+Y29kZWNfaWQpOworICAgaWYgKGNvZGVjKSB7CisgICAgIC8v IE1QMyBkZWNvZGVzIHRvIFMxNlAgd2hpY2ggd2UgZG9uJ3Qgc3VwcG9ydCwgdGVsbCBpdCB0byB1 c2UgUzE2IGluc3RlYWQuCisgICAgIGlmIChjb2RlY19jb250ZXh0Xy0+c2FtcGxlX2ZtdCA9PSBB Vl9TQU1QTEVfRk1UX1MxNlApCitkaWZmIC1OYXVycCBxdHdlYmVuZ2luZS01LjE1LjEwLm9yaWcv c3JjLzNyZHBhcnR5L2Nocm9taXVtL21lZGlhL2ZpbHRlcnMvZmZtcGVnX2F1ZGlvX2RlY29kZXIu Y2MgcXR3ZWJlbmdpbmUtNS4xNS4xMC9zcmMvM3JkcGFydHkvY2hyb21pdW0vbWVkaWEvZmlsdGVy cy9mZm1wZWdfYXVkaW9fZGVjb2Rlci5jYworLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL21l ZGlhL2ZpbHRlcnMvZmZtcGVnX2F1ZGlvX2RlY29kZXIuY2MJMjAyMi0wNS0yMyAwNjozODo0MC4w MDAwMDAwMDAgLTA1MDAKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRpYS9maWx0ZXJz L2ZmbXBlZ19hdWRpb19kZWNvZGVyLmNjCTIwMjItMDctMTEgMjI6MTI6NDcuOTE3MTkyNzg4IC0w NTAwCitAQCAtMzI5LDcgKzMyOSw3IEBAIGJvb2wgRkZtcGVnQXVkaW9EZWNvZGVyOjpDb25maWd1 cmVEZWNvZGUKKyAgICAgfQorICAgfQorIAorLSAgQVZDb2RlYyogY29kZWMgPSBhdmNvZGVjX2Zp bmRfZGVjb2Rlcihjb2RlY19jb250ZXh0Xy0+Y29kZWNfaWQpOworKyAgY29uc3QgQVZDb2RlYyog Y29kZWMgPSBhdmNvZGVjX2ZpbmRfZGVjb2Rlcihjb2RlY19jb250ZXh0Xy0+Y29kZWNfaWQpOwor ICAgaWYgKCFjb2RlYyB8fAorICAgICAgIGF2Y29kZWNfb3BlbjIoY29kZWNfY29udGV4dF8uZ2V0 KCksIGNvZGVjLCAmY29kZWNfb3B0aW9ucykgPCAwKSB7CisgICAgIERMT0coRVJST1IpIDw8ICJD b3VsZCBub3QgaW5pdGlhbGl6ZSBhdWRpbyBkZWNvZGVyOiAiCitkaWZmIC1OYXVycCBxdHdlYmVu Z2luZS01LjE1LjEwLm9yaWcvc3JjLzNyZHBhcnR5L2Nocm9taXVtL21lZGlhL2ZpbHRlcnMvZmZt cGVnX2dsdWUuY2MgcXR3ZWJlbmdpbmUtNS4xNS4xMC9zcmMvM3JkcGFydHkvY2hyb21pdW0vbWVk aWEvZmlsdGVycy9mZm1wZWdfZ2x1ZS5jYworLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL21l ZGlhL2ZpbHRlcnMvZmZtcGVnX2dsdWUuY2MJMjAyMi0wNS0yMyAwNjozODo0MC4wMDAwMDAwMDAg LTA1MDAKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRpYS9maWx0ZXJzL2ZmbXBlZ19n bHVlLmNjCTIwMjItMDctMTEgMjI6MTI6NDcuOTE4MTkyNzc5IC0wNTAwCitAQCAtNTksNyArNTks NiBAQCBzdGF0aWMgaW50NjRfdCBBVklPU2Vla09wZXJhdGlvbih2b2lkKiBvCisgfQorIAorIHZv aWQgRkZtcGVnR2x1ZTo6SW5pdGlhbGl6ZUZGbXBlZygpIHsKKy0gIGF2X3JlZ2lzdGVyX2FsbCgp OworIH0KKyAKKyBzdGF0aWMgdm9pZCBMb2dDb250YWluZXIoYm9vbCBpc19sb2NhbF9maWxlLAor QEAgLTk1LDkgKzk0LDYgQEAgRkZtcGVnR2x1ZTo6RkZtcGVnR2x1ZShGRm1wZWdVUkxQcm90b2Nv bAorICAgLy8gRW5hYmxlIGZhc3QsIGJ1dCBpbmFjY3VyYXRlIHNlZWtzIGZvciBNUDMuCisgICBm b3JtYXRfY29udGV4dF8tPmZsYWdzIHw9IEFWRk1UX0ZMQUdfRkFTVF9TRUVLOworIAorLSAgLy8g RW5zdXJlcyB3ZSBjYW4gcmVhZCBvdXQgdmFyaW91cyBtZXRhZGF0YSBiaXRzIGxpa2UgdnA4IGFs cGhhLgorLSAgZm9ybWF0X2NvbnRleHRfLT5mbGFncyB8PSBBVkZNVF9GTEFHX0tFRVBfU0lERV9E QVRBOworLQorICAgLy8gRW5zdXJlcyBmb3JtYXQgcGFyc2luZyBlcnJvcnMgd2lsbCBiYWlsIG91 dC4gRnJvbSBhbiBhdWRpdCBvbiAxMS8yMDE3LCBhbGwKKyAgIC8vIGluc3RhbmNlcyB3ZXJlIHJl YWwgZmFpbHVyZXMuIFNvbHZlcyBidWdzIGxpa2UgaHR0cDovL2NyYnVnLmNvbS83MTA3OTEuCisg ICBmb3JtYXRfY29udGV4dF8tPmVycm9yX3JlY29nbml0aW9uIHw9IEFWX0VGX0VYUExPREU7Citk aWZmIC1OYXVycCBxdHdlYmVuZ2luZS01LjE1LjEwLm9yaWcvc3JjLzNyZHBhcnR5L2Nocm9taXVt L21lZGlhL2ZpbHRlcnMvZmZtcGVnX3ZpZGVvX2RlY29kZXIuY2MgcXR3ZWJlbmdpbmUtNS4xNS4x MC9zcmMvM3JkcGFydHkvY2hyb21pdW0vbWVkaWEvZmlsdGVycy9mZm1wZWdfdmlkZW9fZGVjb2Rl ci5jYworLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL21lZGlhL2ZpbHRlcnMvZmZtcGVnX3Zp ZGVvX2RlY29kZXIuY2MJMjAyMi0wNS0yMyAwNjozODo0MC4wMDAwMDAwMDAgLTA1MDAKKysrKyBi L3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRpYS9maWx0ZXJzL2ZmbXBlZ192aWRlb19kZWNvZGVy LmNjCTIwMjItMDctMTEgMjI6MTI6NDcuOTE4MTkyNzc5IC0wNTAwCitAQCAtMzkxLDcgKzM5MSw3 IEBAIGJvb2wgRkZtcGVnVmlkZW9EZWNvZGVyOjpDb25maWd1cmVEZWNvZGUKKyAgIGlmIChkZWNv ZGVfbmFsdXNfKQorICAgICBjb2RlY19jb250ZXh0Xy0+ZmxhZ3MyIHw9IEFWX0NPREVDX0ZMQUcy X0NIVU5LUzsKKyAKKy0gIEFWQ29kZWMqIGNvZGVjID0gYXZjb2RlY19maW5kX2RlY29kZXIoY29k ZWNfY29udGV4dF8tPmNvZGVjX2lkKTsKKysgIGNvbnN0IEFWQ29kZWMqIGNvZGVjID0gYXZjb2Rl Y19maW5kX2RlY29kZXIoY29kZWNfY29udGV4dF8tPmNvZGVjX2lkKTsKKyAgIGlmICghY29kZWMg fHwgYXZjb2RlY19vcGVuMihjb2RlY19jb250ZXh0Xy5nZXQoKSwgY29kZWMsIE5VTEwpIDwgMCkg eworICAgICBSZWxlYXNlRkZtcGVnUmVzb3VyY2VzKCk7CisgICAgIHJldHVybiBmYWxzZTsKK2Rp ZmYgLU5hdXJwIHF0d2ViZW5naW5lLTUuMTUuMTAub3JpZy9zcmMvM3JkcGFydHkvY2hyb21pdW0v bWVkaWEvZmlsdGVycy9tZWRpYV9maWxlX2NoZWNrZXIuY2MgcXR3ZWJlbmdpbmUtNS4xNS4xMC9z cmMvM3JkcGFydHkvY2hyb21pdW0vbWVkaWEvZmlsdGVycy9tZWRpYV9maWxlX2NoZWNrZXIuY2MK Ky0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRpYS9maWx0ZXJzL21lZGlhX2ZpbGVfY2hl Y2tlci5jYwkyMDIyLTA1LTIzIDA2OjM4OjQwLjAwMDAwMDAwMCAtMDUwMAorKysrIGIvc3JjLzNy ZHBhcnR5L2Nocm9taXVtL21lZGlhL2ZpbHRlcnMvbWVkaWFfZmlsZV9jaGVja2VyLmNjCTIwMjIt MDctMTEgMjI6MTI6NDcuOTE4MTkyNzc5IC0wNTAwCitAQCAtNjgsNyArNjgsNyBAQCBib29sIE1l ZGlhRmlsZUNoZWNrZXI6OlN0YXJ0KGJhc2U6OlRpbWVECisgICAgICAgYXV0byBjb250ZXh0ID0g QVZTdHJlYW1Ub0FWQ29kZWNDb250ZXh0KGZvcm1hdF9jb250ZXh0LT5zdHJlYW1zW2ldKTsKKyAg ICAgICBpZiAoIWNvbnRleHQpCisgICAgICAgICBjb250aW51ZTsKKy0gICAgICBBVkNvZGVjKiBj b2RlYyA9IGF2Y29kZWNfZmluZF9kZWNvZGVyKGNwLT5jb2RlY19pZCk7CisrICAgICAgY29uc3Qg QVZDb2RlYyogY29kZWMgPSBhdmNvZGVjX2ZpbmRfZGVjb2RlcihjcC0+Y29kZWNfaWQpOworICAg ICAgIGlmIChjb2RlYyAmJiBhdmNvZGVjX29wZW4yKGNvbnRleHQuZ2V0KCksIGNvZGVjLCBudWxs cHRyKSA+PSAwKSB7CisgICAgICAgICBhdXRvIGxvb3AgPSBzdGQ6Om1ha2VfdW5pcXVlPEZGbXBl Z0RlY29kaW5nTG9vcD4oY29udGV4dC5nZXQoKSk7CisgICAgICAgICBzdHJlYW1fY29udGV4dHNb aV0gPSB7c3RkOjptb3ZlKGNvbnRleHQpLCBzdGQ6Om1vdmUobG9vcCl9OworZGlmZiAtTmF1cnAg cXR3ZWJlbmdpbmUtNS4xNS4xMC5vcmlnL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS90aGlyZF9wYXJ0 eS93ZWJydGMvbW9kdWxlcy92aWRlb19jb2RpbmcvY29kZWNzL2gyNjQvaDI2NF9kZWNvZGVyX2lt cGwuY2MgcXR3ZWJlbmdpbmUtNS4xNS4xMC9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFy dHkvd2VicnRjL21vZHVsZXMvdmlkZW9fY29kaW5nL2NvZGVjcy9oMjY0L2gyNjRfZGVjb2Rlcl9p bXBsLmNjCistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkvd2VicnRjL21v ZHVsZXMvdmlkZW9fY29kaW5nL2NvZGVjcy9oMjY0L2gyNjRfZGVjb2Rlcl9pbXBsLmNjCTIwMjIt MDUtMjMgMDY6Mzg6NDAuMDAwMDAwMDAwIC0wNTAwCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21p dW0vdGhpcmRfcGFydHkvd2VicnRjL21vZHVsZXMvdmlkZW9fY29kaW5nL2NvZGVjcy9oMjY0L2gy NjRfZGVjb2Rlcl9pbXBsLmNjCTIwMjItMDctMTEgMjI6MTI6NDcuOTE4MTkyNzc5IC0wNTAwCitA QCAtMjAzLDcgKzIwMyw3IEBAIGludDMyX3QgSDI2NERlY29kZXJJbXBsOjpJbml0RGVjb2RlKGNv bnMKKyAgIC8vIGEgcG9pbnRlciB8dGhpc3wuCisgICBhdl9jb250ZXh0Xy0+b3BhcXVlID0gdGhp czsKKyAKKy0gIEFWQ29kZWMqIGNvZGVjID0gYXZjb2RlY19maW5kX2RlY29kZXIoYXZfY29udGV4 dF8tPmNvZGVjX2lkKTsKKysgIGNvbnN0IEFWQ29kZWMqIGNvZGVjID0gYXZjb2RlY19maW5kX2Rl Y29kZXIoYXZfY29udGV4dF8tPmNvZGVjX2lkKTsKKyAgIGlmICghY29kZWMpIHsKKyAgICAgLy8g VGhpcyBpcyBhbiBpbmRpY2F0aW9uIHRoYXQgRkZtcGVnIGhhcyBub3QgYmVlbiBpbml0aWFsaXpl ZCBvciBpdCBoYXMgbm90CisgICAgIC8vIGJlZW4gY29tcGlsZWQvaW5pdGlhbGl6ZWQgd2l0aCB0 aGUgY29ycmVjdCBzZXQgb2YgY29kZWNzLgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDUtd2ViZW5n aW5lL3BhdGNoZXMvcXR3ZWJlbmdpbmUtZml4LWZmbXBlZzUtYnVpbGQucGF0Y2ggYi9zcmNwa2dz L3F0NS13ZWJlbmdpbmUvcGF0Y2hlcy9xdHdlYmVuZ2luZS1maXgtZmZtcGVnNS1idWlsZC5wYXRj aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uYmMyNGQ1YjlhMjlj YjUKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3F0NS13ZWJlbmdpbmUvcGF0Y2hlcy9xdHdl YmVuZ2luZS1maXgtZmZtcGVnNS1idWlsZC5wYXRjaApAQCAtMCwwICsxLDE0IEBACistLS0gYS9z cmMvYnVpbGR0b29scy9jb25maWd1cmUuanNvbgkyMDIzLTEyLTA5IDExOjA2OjAxLjUwMzA1ODU2 OSAtMDUwMAorKysrIGIvc3JjL2J1aWxkdG9vbHMvY29uZmlndXJlLmpzb24JMjAyMy0xMi0wOSAx MTowNjoxNC45ODIzNjEzNDUgLTA1MDAKK0BAIC03NzksMTEgKzc3OSw2IEBACisgICAgICAgICAg ICAgInR5cGUiOiAid2FybmluZyIsCisgICAgICAgICAgICAgImNvbmRpdGlvbiI6ICJjb25maWcu aW9zICYmIGNvbmZpZy5zaW11bGF0b3IgJiYgY29uZmlnLmRldmljZSAmJiBmZWF0dXJlcy5idWls ZC1xdHBkZiIsCisgICAgICAgICAgICAgIm1lc3NhZ2UiOiAiQnVpbGRpbmcgZmF0IGxpYnJheSB3 aXRoIGRldmljZSBhbmQgc2ltdWxhdG9yIGFyY2hpdGVjdHVyZXMgd2lsbCBkaXNhYmxlIE5FT04u IgorLSAgICAgICAgfSwKKy0gICAgICAgIHsKKy0gICAgICAgICAgICAidHlwZSI6ICJmYXRhbCIs CistICAgICAgICAgICAgImNvbmRpdGlvbiI6ICJmZWF0dXJlcy53ZWJlbmdpbmUtc3lzdGVtLWZm bXBlZyAmJiAhbGlicy53ZWJlbmdpbmUtZmZtcGVnLXN1cHBvcnQiLAorLSAgICAgICAgICAgICJt ZXNzYWdlIjogIlVubW9kaWZpZWQgZmZtcGVnID49IDUuMCBpcyBub3Qgc3VwcG9ydGVkLiBQbGVh c2UgY29uZmlndXJlIHdpdGggLXF0LXdlYmVuZ2luZS1mZm1wZWcuIgorICAgICAgICAgfQorICAg ICBdLAorICAgICAic3VtbWFyeSI6IFsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ1LXdlYmVuZ2lu ZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvcXQ1LXdlYmVuZ2luZS90ZW1wbGF0ZQppbmRleCAzYzBmNWJk YTY5YzdlZS4uZGY2ZTQ0MTc0N2NjNDMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcXQ1LXdlYmVuZ2lu ZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3F0NS13ZWJlbmdpbmUvdGVtcGxhdGUKQEAgLTEsMTQg KzEsMTQgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3F0NS13ZWJlbmdpbmUnCiBwa2duYW1lPXF0 NS13ZWJlbmdpbmUKIHZlcnNpb249NS4xNS4xNgotcmV2aXNpb249MQorcmV2aXNpb249MgogX3Zl cnNpb249IiR7dmVyc2lvbn0tbHRzIgogX2Nocm9taXVtX2NvbW1pdD0yMDdjMmFjNDVjYTMzODZk MTUzNzcwYzZiMGQyZWEyZWMyMWNhODgwCiBhcmNocz0ieDg2XzY0KiBpNjg2KiBhcm12WzY3XSog cHBjNjQqIGFhcmNoNjQqIgogY3JlYXRlX3dya3NyYz15ZXMKIGJ1aWxkX3N0eWxlPXFtYWtlCiBj b25maWd1cmVfYXJncz0iLS0KLSAtd2ViZW5naW5lLWljdSAtd2ViZW5naW5lLWZmbXBlZyAtd2Vi ZW5naW5lLW9wdXMgLXdlYmVuZ2luZS13ZWJwCisgLXdlYmVuZ2luZS1pY3UgLXN5c3RlbS1mZm1w ZWcgLXdlYmVuZ2luZS1vcHVzIC13ZWJlbmdpbmUtd2VicAogIC13ZWJlbmdpbmUtcGVwcGVyLXBs dWdpbnMgLXdlYmVuZ2luZS1wcmludGluZy1hbmQtcGRmIC13ZWJlbmdpbmUtcHJvcHJpZXRhcnkt Y29kZWNzCiAgLXdlYmVuZ2luZS1wdWxzZWF1ZGlvIC13ZWJlbmdpbmUtc3BlbGxjaGVja2VyIC13 ZWJlbmdpbmUtd2VicnRjIC13ZWJlbmdpbmUtZ2VvbG9jYXRpb24KICAtd2ViZW5naW5lLWtlcmJl cm9zIC1uby13ZWJlbmdpbmUtZW1iZWRkZWQtYnVpbGQgJCh2b3B0X2lmIHNuZGlvICcnICctbm8n KS13ZWJlbmdpbmUtc25kaW8KCkZyb20gNmUyMDUyNzA4Njk2YWQwNGE1MzA4MmUxNTExOWE2YTg5 NjZmMjkxNSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdt YWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo1MSAtMDQwMApTdWJqZWN0OiBb UEFUQ0ggMDU4LzEwOF0gcXQ1OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvcXQ1 L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0 aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDUvdGVtcGxhdGUgYi9zcmNwa2dzL3F0NS90 ZW1wbGF0ZQppbmRleCBlNTdlMTU5MzQ0NTIwNC4uZjUyNDU5YmYzZTVjZGIgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvcXQ1L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcXQ1L3RlbXBsYXRlCkBAIC0zLDcg KzMsNyBAQAogIyByZXZidW1wIGxpYnF0eGRnIGFmdGVyIGJ1bXBpbmcgcGF0Y2ggdmVyc2lvbgog cGtnbmFtZT1xdDUKIHZlcnNpb249NS4xNS4xMSsyMDIzMTEyNAotcmV2aXNpb249NAorcmV2aXNp b249NQogIyBjb21taXQgNDc2NWZhMWRmN2E4MzdkYjljMWY4OWM0ZGEwZGQ3NmI3NGJiNWZhYgog IyBiYXNlIHJlcG86IGh0dHBzOi8vaW52ZW50LmtkZS5vcmcvcXQvcXQvcXQ1CiBidWlsZF9zdHls ZT1tZXRhCgpGcm9tIDg3YmUxODE3Yjc0MDNiYzRmN2NlZDUxZmRjY2U5ZDg5YWJlNGE0NTkgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRh dGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NTEgLTA0MDAKU3ViamVjdDogW1BBVENIIDA1OS8x MDhdIHF0YXY6IHJldmJ1bXAgZm9yIGZmbXBlZzQKCi0tLQogc3JjcGtncy9xdGF2L3RlbXBsYXRl IHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXRhdi90ZW1wbGF0ZSBiL3NyY3BrZ3MvcXRhdi90ZW1w bGF0ZQppbmRleCA3NzVkNWExMzlhOWVmYS4uYWE2OWUyMTNjOTg0YjAgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvcXRhdi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3F0YXYvdGVtcGxhdGUKQEAgLTEsMTAg KzEsMTAgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3F0YXYnCiBwa2duYW1lPXF0YXYKIHZlcnNp b249MS4xMy4wCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1xbWFrZQogaG9z dG1ha2VkZXBlbmRzPSJxdDUtcW1ha2UgcXQ1LWhvc3QtdG9vbHMiCi1tYWtlZGVwZW5kcz0iZmZt cGVnLWRldmVsIGxpYmFzcy1kZXZlbCBsaWJvcGVuYWwtZGV2ZWwKK21ha2VkZXBlbmRzPSJmZm1w ZWc0LWRldmVsIGxpYmFzcy1kZXZlbCBsaWJvcGVuYWwtZGV2ZWwKICBsaWJ2YS1nbHgtZGV2ZWwg bGliWHYtZGV2ZWwgcHVsc2VhdWRpby1kZXZlbAogIHF0NS1kZWNsYXJhdGl2ZS1kZXZlbCBxdDUt c3ZnLWRldmVsCiAgcXQ1LXF1aWNrY29udHJvbHMiCgpGcm9tIGI2OTFhMDFjNzRmOGE5ZTNiZmZh MDBmODg0Zjk3YTI1YTVkOTJlYTIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNl IDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NTEgLTA0 MDAKU3ViamVjdDogW1BBVENIIDA2MC8xMDhdIHJldHJvYXJjaDogcmV2YnVtcCBmb3IgZmZtcGVn NgoKLS0tCiBzcmNwa2dzL3JldHJvYXJjaC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2Vk LCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcmV0 cm9hcmNoL3RlbXBsYXRlIGIvc3JjcGtncy9yZXRyb2FyY2gvdGVtcGxhdGUKaW5kZXggNTQyOWQx M2VmM2VlYTQuLjJlMGQ1Y2Q5NjgwYjY3IDEwMDY0NAotLS0gYS9zcmNwa2dzL3JldHJvYXJjaC90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3JldHJvYXJjaC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3JldHJvYXJjaCcKIHBrZ25hbWU9cmV0cm9hcmNoCiB2ZXJz aW9uPTEuMTYuMC4zCi1yZXZpc2lvbj0zCityZXZpc2lvbj00CiBidWlsZF9zdHlsZT1jb25maWd1 cmUKIGNvbmZpZ3VyZV9hcmdzPSItLXByZWZpeD0vdXNyIC0tc3lzY29uZmRpcj0vZXRjIC0tZW5h YmxlLW5ldHdvcmtpbmcKICAtLWVuYWJsZS11ZGV2IC0tZGlzYWJsZS1idWlsdGluZmxhYyAtLWRp c2FibGUtYnVpbHRpbmdsc2xhbmcKCkZyb20gZTg1YTVkZTJlYjNkN2VlZDU2MmI1NDZhYjc1YzRj NjdlYmViYmQ3NSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1 QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo1MSAtMDQwMApTdWJqZWN0 OiBbUEFUQ0ggMDYxLzEwOF0gc2NyY3B5OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3Br Z3Mvc2NyY3B5L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCsp LCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zY3JjcHkvdGVtcGxhdGUgYi9z cmNwa2dzL3NjcmNweS90ZW1wbGF0ZQppbmRleCBkNDA2NTFhZDhkYzgzNS4uM2VjNzEzOWJlNWMw YzUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc2NyY3B5L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvc2Ny Y3B5L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnc2NyY3B5 JwogcGtnbmFtZT1zY3JjcHkKIHZlcnNpb249Mi40Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBi dWlsZF9zdHlsZT1tZXNvbgogY29uZmlndXJlX2FyZ3M9Ii1EY29tcGlsZV9zZXJ2ZXI9ZmFsc2UK ICAtRHByZWJ1aWx0X3NlcnZlcj0vdXNyL3NoYXJlL3NjcmNweS9zY3JjcHktc2VydmVyLXYke3Zl cnNpb259IgoKRnJvbSAxYmVmODVlODIwZGIwZDU1MDUyN2JkNmJiODg3MjZmMWFiN2M5MDg1IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpE YXRlOiBUdWUsIDE3IE9jdCAyMDIzIDA4OjU0OjExIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNjIv MTA4XSBOZXcgcGFja2FnZTogc3BleC14IHJlcGxhY2VzIHNwZWstYWx0ZXJuYXRpdmUgZm9yCiBm Zm1wZWc2CgotLS0KIHNyY3BrZ3Mvc3Blay1hbHRlcm5hdGl2ZSAgICAgICAgICAgICAgICAgICAg ICB8ICAxICsKIHNyY3BrZ3Mvc3Blay14L3BhdGNoZXMvbXVzbC5wYXRjaCAgICAgICAgICAgICB8 ICA3ICsrKysrKwogc3JjcGtncy97c3Blay1hbHRlcm5hdGl2ZSA9PiBzcGVrLXh9L3RlbXBsYXRl IHwgMjMgKysrKysrKysrKysrLS0tLS0tLQogMyBmaWxlcyBjaGFuZ2VkLCAyMyBpbnNlcnRpb25z KCspLCA4IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3Mvc3Blay1hbHRl cm5hdGl2ZQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvc3Blay14L3BhdGNoZXMvbXVzbC5w YXRjaAogcmVuYW1lIHNyY3BrZ3Mve3NwZWstYWx0ZXJuYXRpdmUgPT4gc3Blay14fS90ZW1wbGF0 ZSAoNTAlKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc3Blay1hbHRlcm5hdGl2ZSBiL3NyY3BrZ3Mv c3Blay1hbHRlcm5hdGl2ZQpuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMDAw MC4uNzY2NDgyMzZkYTcwMTcKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3NwZWstYWx0ZXJu YXRpdmUKQEAgLTAsMCArMSBAQAorc3Blay14ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpk aWZmIC0tZ2l0IGEvc3JjcGtncy9zcGVrLXgvcGF0Y2hlcy9tdXNsLnBhdGNoIGIvc3JjcGtncy9z cGVrLXgvcGF0Y2hlcy9tdXNsLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw MDAwMDAwMDAwLi42NjJmNDU5MzZmZWJjNgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mvc3Bl ay14L3BhdGNoZXMvbXVzbC5wYXRjaApAQCAtMCwwICsxLDcgQEAKKy0tLSBhL3Rlc3RzL3BlcmYu Y2MJMjAyNC0wMy0wOSAxNzoxMzo0OS4wODY2MDM0MTggLTA1MDAKKysrKyBiL3Rlc3RzL3BlcmYu Y2MJMjAyNC0wMy0wOSAxNzoxMzo1OS40NTM2MDM3NTMgLTA1MDAKK0BAIC0xLDMgKzEsNCBAQAor KyNpbmNsdWRlIDxjc3RkaW50PgorICNpbmNsdWRlIDxjc3RkbGliPgorICNpbmNsdWRlIDxpb3N0 cmVhbT4KKyAjaW5jbHVkZSA8ZnN0cmVhbT4KZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc3Blay1hbHRl cm5hdGl2ZS90ZW1wbGF0ZSBiL3NyY3BrZ3Mvc3Blay14L3RlbXBsYXRlCnNpbWlsYXJpdHkgaW5k ZXggNTAlCnJlbmFtZSBmcm9tIHNyY3BrZ3Mvc3Blay1hbHRlcm5hdGl2ZS90ZW1wbGF0ZQpyZW5h bWUgdG8gc3JjcGtncy9zcGVrLXgvdGVtcGxhdGUKaW5kZXggZDdiNTVjNzc2YjFkNDMuLjdhM2Zh MzM0Y2I0YmQ3IDEwMDY0NAotLS0gYS9zcmNwa2dzL3NwZWstYWx0ZXJuYXRpdmUvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9zcGVrLXgvdGVtcGxhdGUKQEAgLTEsMTggKzEsMTkgQEAKLSMgVGVtcGxh dGUgZmlsZSBmb3IgJ3NwZWstYWx0ZXJuYXRpdmUnCi1wa2duYW1lPXNwZWstYWx0ZXJuYXRpdmUK LXZlcnNpb249MC44LjIuMwotcmV2aXNpb249MgorIyBUZW1wbGF0ZSBmaWxlIGZvciAnc3Blay14 JworcGtnbmFtZT1zcGVrLXgKK3ZlcnNpb249MC45LjMKK3JldmlzaW9uPTEKIGJ1aWxkX3N0eWxl PWdudS1jb25maWd1cmUKIGhvc3RtYWtlZGVwZW5kcz0iYXV0b21ha2UgZ2V0dGV4dC1kZXZlbCBp bnRsdG9vbCBsaWJ0b29sIHBrZy1jb25maWcKICB3eFdpZGdldHMtY29tbW9uIHd4V2lkZ2V0cy1n dGszLWRldmVsIgogbWFrZWRlcGVuZHM9ImZmbXBlZy1kZXZlbCB3eFdpZGdldHMtZ3RrMy1kZXZl bCIKIGRlcGVuZHM9ImZmbXBlZyIKIHNob3J0X2Rlc2M9IkFjb3VzdGljIHNwZWN0cnVtIGFuYWx5 c2VyIgotbWFpbnRhaW5lcj0iS2FydGlrIFNpbmdoIDxrYXJ0aWsueW53YUBnbWFpbC5jb20+Igor bWFpbnRhaW5lcj0iemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4iCiBsaWNlbnNlPSJHUEwtMy4w LW9yLWxhdGVyIgotaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS93aXRobW9ydGVuL3NwZWst YWx0ZXJuYXRpdmUiCi1kaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS93aXRobW9ydGVuL3Nw ZWstYWx0ZXJuYXRpdmUvYXJjaGl2ZS8ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPSIwMDdi YTRiODRhMzEwYjA3OGUzNzhhYTg0YzhlODA3ODNkYjU4MjE0MzdhNzU3YTQ4OGMzZWNlYzM3N2U2 YjJhIgoraG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9NaWtlV2FuZzAwMDAwMC9zcGVrLXgi CitkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9NaWtlV2FuZzAwMDAwMC9zcGVrLXgvYXJj aGl2ZS92JHt2ZXJzaW9ufS50YXIuZ3oiCitjaGVja3N1bT0iN2Y0YjEwOTkwMzMzM2NkZDMxMGFi MmI5MTc2ZjBkYzQ5YTU2NTg5MTM3NmUyODFhMjMzZDM0MmNlZGY5MGVmNyIKK3JlcGxhY2VzPSJz cGVrLWFsdGVybmF0aXZlczw9MC44LjIuM18yIgogCiBDWFhGTEFHUz0iLURfTEFSR0VGSUxFX1NP VVJDRSAtRF9GSUxFX09GRlNFVF9CSVRTPTY0IgogCkBAIC0yMiwzICsyMyw5IEBAIGV4cG9ydCBX WF9DT05GSUdfTkFNRT0id3gtY29uZmlnLWd0azMiCiBwcmVfY29uZmlndXJlKCkgewogCU5PQ09O RklHVVJFPTEgLi9hdXRvZ2VuLnNoCiB9CisKK3NwZWstYWx0ZXJuYXRpdmVfcGFja2FnZSgpIHsK KwlkZXBlbmRzPSJzcGVrLXgiCisJc2hvcnRfZGVzYys9IiAtIHRyYW5zaXRpb25hbCBkdW1teSBw YWNrYWdlIgorCWJ1aWxkX3N0eWxlPW1ldGEKK30KCkZyb20gNDMwNDJiMjQwYTMwYmUwZWZlOGY1 NjI0MjYwMzBhMzdlMGE1MTU1YSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2Ug PHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo1MSAtMDQw MApTdWJqZWN0OiBbUEFUQ0ggMDYzLzEwOF0gc3NyOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0K IC4uLi8wMDAxLUZpeC1idWlsZC13aXRoLWZmbXBlZy01LjAucGF0Y2ggICAgICB8IDI0MSArKysr KysrKysrKysrKysrKysKIHNyY3BrZ3Mvc3NyL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICAgMiArLQogMiBmaWxlcyBjaGFuZ2VkLCAyNDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxl dGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvc3NyL3BhdGNoZXMvMDAwMS1GaXgt YnVpbGQtd2l0aC1mZm1wZWctNS4wLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zc3IvcGF0 Y2hlcy8wMDAxLUZpeC1idWlsZC13aXRoLWZmbXBlZy01LjAucGF0Y2ggYi9zcmNwa2dzL3Nzci9w YXRjaGVzLzAwMDEtRml4LWJ1aWxkLXdpdGgtZmZtcGVnLTUuMC5wYXRjaApuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4uNGMwNjliNWE5ZmM0NjQKLS0tIC9kZXYvbnVs bAorKysgYi9zcmNwa2dzL3Nzci9wYXRjaGVzLzAwMDEtRml4LWJ1aWxkLXdpdGgtZmZtcGVnLTUu MC5wYXRjaApAQCAtMCwwICsxLDI0MSBAQAorRnJvbSBmNGNiZGUzODAyMWQ5MzMwZGM3M2QyZTNk ZmE4YTcwZGEzZmY1NzIxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogPT9VVEYtOD9x P0Jlcm5oYXJkPTIwUm9zZW5rcj1DMz1BNG56ZXI/PSA8YmVyb0BsaW5kZXYuY2g+CitEYXRlOiBT dW4sIDE2IEphbiAyMDIyIDAyOjQwOjA0ICswMTAwCitTdWJqZWN0OiBbUEFUQ0hdIEZpeCBidWls ZCB3aXRoIGZmbXBlZyA1LjAKK01JTUUtVmVyc2lvbjogMS4wCitDb250ZW50LVR5cGU6IHRleHQv cGxhaW47IGNoYXJzZXQ9VVRGLTgKK0NvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQKKwor QWRhcHQgdG8gZmZtcGVnIDUuMCByZXF1aXJpbmcgbW9yZSBjb25zdC1uZXNzIGZvciBBVkNvZGVj LgorCitTaWduZWQtb2ZmLWJ5OiBCZXJuaGFyZCBSb3Nlbmtyw6RuemVyIDxiZXJvQGxpbmRldi5j aD4KKy0tLQorIHNyYy9BVi9PdXRwdXQvQXVkaW9FbmNvZGVyLmNwcCB8ICA2ICsrKy0tLQorIHNy Yy9BVi9PdXRwdXQvQXVkaW9FbmNvZGVyLmggICB8ICA0ICsrLS0KKyBzcmMvQVYvT3V0cHV0L0Jh c2VFbmNvZGVyLmNwcCAgfCAgNCArKy0tCisgc3JjL0FWL091dHB1dC9CYXNlRW5jb2Rlci5oICAg IHwgIDQgKystLQorIHNyYy9BVi9PdXRwdXQvTXV4ZXIuY3BwICAgICAgICB8IDEyICsrKysrKy0t LS0tLQorIHNyYy9BVi9PdXRwdXQvTXV4ZXIuaCAgICAgICAgICB8ICA0ICsrLS0KKyBzcmMvQVYv T3V0cHV0L1ZpZGVvRW5jb2Rlci5jcHAgfCAgNiArKystLS0KKyBzcmMvQVYvT3V0cHV0L1ZpZGVv RW5jb2Rlci5oICAgfCAgNCArKy0tCisgOCBmaWxlcyBjaGFuZ2VkLCAyMiBpbnNlcnRpb25zKCsp LCAyMiBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL3NyYy9BVi9PdXRwdXQvQXVkaW9FbmNv ZGVyLmNwcCBiL3NyYy9BVi9PdXRwdXQvQXVkaW9FbmNvZGVyLmNwcAoraW5kZXggMzRkMDE1Yy4u Y2VmYzJlMCAxMDA2NDQKKy0tLSBhL3NyYy9BVi9PdXRwdXQvQXVkaW9FbmNvZGVyLmNwcAorKysr IGIvc3JjL0FWL091dHB1dC9BdWRpb0VuY29kZXIuY3BwCitAQCAtMzQsNyArMzQsNyBAQCBjb25z dCBzdGQ6OnZlY3RvcjxBdWRpb0VuY29kZXI6OlNhbXBsZUZvcm1hdERhdGE+IEF1ZGlvRW5jb2Rl cjo6U1VQUE9SVEVEX1NBTVBMRQorIAorIGNvbnN0IHVuc2lnbmVkIGludCBBdWRpb0VuY29kZXI6 OkRFRkFVTFRfRlJBTUVfU0FNUExFUyA9IDEwMjQ7CisgCistQXVkaW9FbmNvZGVyOjpBdWRpb0Vu Y29kZXIoTXV4ZXIqIG11eGVyLCBBVlN0cmVhbSogc3RyZWFtLCBBVkNvZGVjQ29udGV4dCAqY29k ZWNfY29udGV4dCwgQVZDb2RlYyogY29kZWMsIEFWRGljdGlvbmFyeSoqIG9wdGlvbnMpCisrQXVk aW9FbmNvZGVyOjpBdWRpb0VuY29kZXIoTXV4ZXIqIG11eGVyLCBBVlN0cmVhbSogc3RyZWFtLCBB VkNvZGVjQ29udGV4dCAqY29kZWNfY29udGV4dCwgY29uc3QgQVZDb2RlYyogY29kZWMsIEFWRGlj dGlvbmFyeSoqIG9wdGlvbnMpCisgCTogQmFzZUVuY29kZXIobXV4ZXIsIHN0cmVhbSwgY29kZWNf Y29udGV4dCwgY29kZWMsIG9wdGlvbnMpIHsKKyAKKyAjaWYgIVNTUl9VU0VfQVZDT0RFQ19FTkNP REVfQVVESU8yCitAQCAtNzcsNyArNzcsNyBAQCB1bnNpZ25lZCBpbnQgQXVkaW9FbmNvZGVyOjpH ZXRTYW1wbGVSYXRlKCkgeworIH0KKyAKKyBib29sIEF1ZGlvRW5jb2Rlcjo6QVZDb2RlY0lzU3Vw cG9ydGVkKGNvbnN0IFFTdHJpbmcmIGNvZGVjX25hbWUpIHsKKy0JQVZDb2RlYyAqY29kZWMgPSBh dmNvZGVjX2ZpbmRfZW5jb2Rlcl9ieV9uYW1lKGNvZGVjX25hbWUudG9VdGY4KCkuY29uc3REYXRh KCkpOworKwljb25zdCBBVkNvZGVjICpjb2RlYyA9IGF2Y29kZWNfZmluZF9lbmNvZGVyX2J5X25h bWUoY29kZWNfbmFtZS50b1V0ZjgoKS5jb25zdERhdGEoKSk7CisgCWlmKGNvZGVjID09IE5VTEwp CisgCQlyZXR1cm4gZmFsc2U7CisgCWlmKCFhdl9jb2RlY19pc19lbmNvZGVyKGNvZGVjKSkKK0BA IC05Myw3ICs5Myw3IEBAIGJvb2wgQXVkaW9FbmNvZGVyOjpBVkNvZGVjSXNTdXBwb3J0ZWQoY29u c3QgUVN0cmluZyYgY29kZWNfbmFtZSkgeworIAlyZXR1cm4gZmFsc2U7CisgfQorIAorLXZvaWQg QXVkaW9FbmNvZGVyOjpQcmVwYXJlU3RyZWFtKEFWU3RyZWFtKiBzdHJlYW0sIEFWQ29kZWNDb250 ZXh0KiBjb2RlY19jb250ZXh0LCBBVkNvZGVjKiBjb2RlYywgQVZEaWN0aW9uYXJ5Kiogb3B0aW9u cywgY29uc3Qgc3RkOjp2ZWN0b3I8c3RkOjpwYWlyPFFTdHJpbmcsIFFTdHJpbmc+ID4mIGNvZGVj X29wdGlvbnMsCisrdm9pZCBBdWRpb0VuY29kZXI6OlByZXBhcmVTdHJlYW0oQVZTdHJlYW0qIHN0 cmVhbSwgQVZDb2RlY0NvbnRleHQqIGNvZGVjX2NvbnRleHQsIGNvbnN0IEFWQ29kZWMqIGNvZGVj LCBBVkRpY3Rpb25hcnkqKiBvcHRpb25zLCBjb25zdCBzdGQ6OnZlY3RvcjxzdGQ6OnBhaXI8UVN0 cmluZywgUVN0cmluZz4gPiYgY29kZWNfb3B0aW9ucywKKyAJCQkJCQkJCSB1bnNpZ25lZCBpbnQg Yml0X3JhdGUsIHVuc2lnbmVkIGludCBjaGFubmVscywgdW5zaWduZWQgaW50IHNhbXBsZV9yYXRl KSB7CisgCisgCWlmKGNoYW5uZWxzID09IDApIHsKK2RpZmYgLS1naXQgYS9zcmMvQVYvT3V0cHV0 L0F1ZGlvRW5jb2Rlci5oIGIvc3JjL0FWL091dHB1dC9BdWRpb0VuY29kZXIuaAoraW5kZXggYzkz Mjc4Yy4uYWU5YzgyZSAxMDA2NDQKKy0tLSBhL3NyYy9BVi9PdXRwdXQvQXVkaW9FbmNvZGVyLmgK KysrKyBiL3NyYy9BVi9PdXRwdXQvQXVkaW9FbmNvZGVyLmgKK0BAIC00MCw3ICs0MCw3IEBAIHBy aXZhdGU6CisgI2VuZGlmCisgCisgcHVibGljOgorLQlBdWRpb0VuY29kZXIoTXV4ZXIqIG11eGVy LCBBVlN0cmVhbSogc3RyZWFtLCBBVkNvZGVjQ29udGV4dCogY29kZWNfY29udGV4dCwgQVZDb2Rl YyogY29kZWMsIEFWRGljdGlvbmFyeSoqIG9wdGlvbnMpOworKwlBdWRpb0VuY29kZXIoTXV4ZXIq IG11eGVyLCBBVlN0cmVhbSogc3RyZWFtLCBBVkNvZGVjQ29udGV4dCogY29kZWNfY29udGV4dCwg Y29uc3QgQVZDb2RlYyogY29kZWMsIEFWRGljdGlvbmFyeSoqIG9wdGlvbnMpOworIAl+QXVkaW9F bmNvZGVyKCk7CisgCisgCS8vIFJldHVybnMgdGhlIHJlcXVpcmVkIGZyYW1lIHNpemUsIGkuZS4g dGhlIG51bWJlciBvZiBzYW1wbGVzIChmb3IgZWFjaCBjaGFubmVsKS4KK0BAIC01Nyw3ICs1Nyw3 IEBAIHB1YmxpYzoKKyAKKyBwdWJsaWM6CisgCXN0YXRpYyBib29sIEFWQ29kZWNJc1N1cHBvcnRl ZChjb25zdCBRU3RyaW5nJiBjb2RlY19uYW1lKTsKKy0Jc3RhdGljIHZvaWQgUHJlcGFyZVN0cmVh bShBVlN0cmVhbSogc3RyZWFtLCBBVkNvZGVjQ29udGV4dCogY29kZWNfY29udGV4dCwgQVZDb2Rl YyogY29kZWMsIEFWRGljdGlvbmFyeSoqIG9wdGlvbnMsIGNvbnN0IHN0ZDo6dmVjdG9yPHN0ZDo6 cGFpcjxRU3RyaW5nLCBRU3RyaW5nPiA+JiBjb2RlY19vcHRpb25zLAorKwlzdGF0aWMgdm9pZCBQ cmVwYXJlU3RyZWFtKEFWU3RyZWFtKiBzdHJlYW0sIEFWQ29kZWNDb250ZXh0KiBjb2RlY19jb250 ZXh0LCBjb25zdCBBVkNvZGVjKiBjb2RlYywgQVZEaWN0aW9uYXJ5Kiogb3B0aW9ucywgY29uc3Qg c3RkOjp2ZWN0b3I8c3RkOjpwYWlyPFFTdHJpbmcsIFFTdHJpbmc+ID4mIGNvZGVjX29wdGlvbnMs CisgCQkJCQkJCSAgdW5zaWduZWQgaW50IGJpdF9yYXRlLCB1bnNpZ25lZCBpbnQgY2hhbm5lbHMs IHVuc2lnbmVkIGludCBzYW1wbGVfcmF0ZSk7CisgCisgcHJpdmF0ZToKK2RpZmYgLS1naXQgYS9z cmMvQVYvT3V0cHV0L0Jhc2VFbmNvZGVyLmNwcCBiL3NyYy9BVi9PdXRwdXQvQmFzZUVuY29kZXIu Y3BwCitpbmRleCA3YzAxZWYzLi40NzgwYWFmIDEwMDY0NAorLS0tIGEvc3JjL0FWL091dHB1dC9C YXNlRW5jb2Rlci5jcHAKKysrKyBiL3NyYy9BVi9PdXRwdXQvQmFzZUVuY29kZXIuY3BwCitAQCAt NDIsNyArNDIsNyBAQCBkb3VibGUgUGFyc2VDb2RlY09wdGlvbkRvdWJsZShjb25zdCBRU3RyaW5n JiBrZXksIGNvbnN0IFFTdHJpbmcmIHZhbHVlLCBkb3VibGUgbQorIAlyZXR1cm4gY2xhbXAodmFs dWVfZG91YmxlLCBtaW4sIG1heCkgKiBtdWx0aXBseTsKKyB9CisgCistQmFzZUVuY29kZXI6OkJh c2VFbmNvZGVyKE11eGVyKiBtdXhlciwgQVZTdHJlYW0qIHN0cmVhbSwgQVZDb2RlY0NvbnRleHQq IGNvZGVjX2NvbnRleHQsIEFWQ29kZWMqIGNvZGVjLCBBVkRpY3Rpb25hcnkqKiBvcHRpb25zKSB7 CisrQmFzZUVuY29kZXI6OkJhc2VFbmNvZGVyKE11eGVyKiBtdXhlciwgQVZTdHJlYW0qIHN0cmVh bSwgQVZDb2RlY0NvbnRleHQqIGNvZGVjX2NvbnRleHQsIGNvbnN0IEFWQ29kZWMqIGNvZGVjLCBB VkRpY3Rpb25hcnkqKiBvcHRpb25zKSB7CisgCisgCW1fbXV4ZXIgPSBtdXhlcjsKKyAJbV9zdHJl YW0gPSBzdHJlYW07CitAQCAtMTU3LDcgKzE1Nyw3IEBAIHZvaWQgQmFzZUVuY29kZXI6OkluY3Jl bWVudFBhY2tldENvdW50ZXIoKSB7CisgCSsrbG9jay0+bV90b3RhbF9wYWNrZXRzOworIH0KKyAK Ky12b2lkIEJhc2VFbmNvZGVyOjpJbml0KEFWQ29kZWMqIGNvZGVjLCBBVkRpY3Rpb25hcnkqKiBv cHRpb25zKSB7Cisrdm9pZCBCYXNlRW5jb2Rlcjo6SW5pdChjb25zdCBBVkNvZGVjKiBjb2RlYywg QVZEaWN0aW9uYXJ5Kiogb3B0aW9ucykgeworIAorIAkvLyBvcGVuIGNvZGVjCisgCWlmKGF2Y29k ZWNfb3BlbjIobV9jb2RlY19jb250ZXh0LCBjb2RlYywgb3B0aW9ucykgPCAwKSB7CitkaWZmIC0t Z2l0IGEvc3JjL0FWL091dHB1dC9CYXNlRW5jb2Rlci5oIGIvc3JjL0FWL091dHB1dC9CYXNlRW5j b2Rlci5oCitpbmRleCAzZDkyZjI5Li43ZjAyYmJkIDEwMDY0NAorLS0tIGEvc3JjL0FWL091dHB1 dC9CYXNlRW5jb2Rlci5oCisrKysgYi9zcmMvQVYvT3V0cHV0L0Jhc2VFbmNvZGVyLmgKK0BAIC01 MSw3ICs1MSw3IEBAIHByaXZhdGU6CisgCXN0ZDo6YXRvbWljPGJvb2w+IG1fc2hvdWxkX3N0b3As IG1fc2hvdWxkX2ZpbmlzaCwgbV9pc19kb25lLCBtX2Vycm9yX29jY3VycmVkOworIAorIHByb3Rl Y3RlZDoKKy0JQmFzZUVuY29kZXIoTXV4ZXIqIG11eGVyLCBBVlN0cmVhbSogc3RyZWFtLCBBVkNv ZGVjQ29udGV4dCogY29kZWNfY29udGV4dCwgQVZDb2RlYyogY29kZWMsIEFWRGljdGlvbmFyeSoq IG9wdGlvbnMpOworKwlCYXNlRW5jb2RlcihNdXhlciogbXV4ZXIsIEFWU3RyZWFtKiBzdHJlYW0s IEFWQ29kZWNDb250ZXh0KiBjb2RlY19jb250ZXh0LCBjb25zdCBBVkNvZGVjKiBjb2RlYywgQVZE aWN0aW9uYXJ5Kiogb3B0aW9ucyk7CisgCisgcHVibGljOgorIAl2aXJ0dWFsIH5CYXNlRW5jb2Rl cigpOyAvLyBlbmNvZGVycyB3aWxsIGJlIGRlbGV0ZWQgYnkgTXV4ZXIsIGRvbid0IGRlbGV0ZSB0 aGVtIHlvdXJzZWxmIQorQEAgLTExNyw3ICsxMTcsNyBAQCBwcm90ZWN0ZWQ6CisgCXZvaWQgSW5j cmVtZW50UGFja2V0Q291bnRlcigpOworIAorIHByaXZhdGU6CistCXZvaWQgSW5pdChBVkNvZGVj KiBjb2RlYywgQVZEaWN0aW9uYXJ5Kiogb3B0aW9ucyk7CisrCXZvaWQgSW5pdChjb25zdCBBVkNv ZGVjKiBjb2RlYywgQVZEaWN0aW9uYXJ5Kiogb3B0aW9ucyk7CisgCXZvaWQgRnJlZSgpOworIAor IAl2b2lkIEVuY29kZXJUaHJlYWQoKTsKK2RpZmYgLS1naXQgYS9zcmMvQVYvT3V0cHV0L011eGVy LmNwcCBiL3NyYy9BVi9PdXRwdXQvTXV4ZXIuY3BwCitpbmRleCBhZDU4MzgwLi4xNDY1MGIwIDEw MDY0NAorLS0tIGEvc3JjL0FWL091dHB1dC9NdXhlci5jcHAKKysrKyBiL3NyYy9BVi9PdXRwdXQv TXV4ZXIuY3BwCitAQCAtODcsNyArODcsNyBAQCBNdXhlcjo6fk11eGVyKCkgeworIAorIFZpZGVv RW5jb2RlciogTXV4ZXI6OkFkZFZpZGVvRW5jb2Rlcihjb25zdCBRU3RyaW5nJiBjb2RlY19uYW1l LCBjb25zdCBzdGQ6OnZlY3RvcjxzdGQ6OnBhaXI8UVN0cmluZywgUVN0cmluZz4gPiYgY29kZWNf b3B0aW9ucywKKyAJCQkJCQkJCQkgdW5zaWduZWQgaW50IGJpdF9yYXRlLCB1bnNpZ25lZCBpbnQg d2lkdGgsIHVuc2lnbmVkIGludCBoZWlnaHQsIHVuc2lnbmVkIGludCBmcmFtZV9yYXRlKSB7Cist CUFWQ29kZWMgKmNvZGVjID0gRmluZENvZGVjKGNvZGVjX25hbWUpOworKwljb25zdCBBVkNvZGVj ICpjb2RlYyA9IEZpbmRDb2RlYyhjb2RlY19uYW1lKTsKKyAJQVZDb2RlY0NvbnRleHQgKmNvZGVj X2NvbnRleHQgPSBOVUxMOworIAlBVlN0cmVhbSAqc3RyZWFtID0gQWRkU3RyZWFtKGNvZGVjLCAm Y29kZWNfY29udGV4dCk7CisgCVZpZGVvRW5jb2RlciAqZW5jb2RlcjsKK0BAIC0xMTEsNyArMTEx LDcgQEAgVmlkZW9FbmNvZGVyKiBNdXhlcjo6QWRkVmlkZW9FbmNvZGVyKGNvbnN0IFFTdHJpbmcm IGNvZGVjX25hbWUsIGNvbnN0IHN0ZDo6dmVjdG8KKyAKKyBBdWRpb0VuY29kZXIqIE11eGVyOjpB ZGRBdWRpb0VuY29kZXIoY29uc3QgUVN0cmluZyYgY29kZWNfbmFtZSwgY29uc3Qgc3RkOjp2ZWN0 b3I8c3RkOjpwYWlyPFFTdHJpbmcsIFFTdHJpbmc+ID4mIGNvZGVjX29wdGlvbnMsCisgCQkJCQkJ CQkJIHVuc2lnbmVkIGludCBiaXRfcmF0ZSwgdW5zaWduZWQgaW50IGNoYW5uZWxzLCB1bnNpZ25l ZCBpbnQgc2FtcGxlX3JhdGUpIHsKKy0JQVZDb2RlYyAqY29kZWMgPSBGaW5kQ29kZWMoY29kZWNf bmFtZSk7CisrCWNvbnN0IEFWQ29kZWMgKmNvZGVjID0gRmluZENvZGVjKGNvZGVjX25hbWUpOwor IAlBVkNvZGVjQ29udGV4dCAqY29kZWNfY29udGV4dCA9IE5VTEw7CisgCUFWU3RyZWFtICpzdHJl YW0gPSBBZGRTdHJlYW0oY29kZWMsICZjb2RlY19jb250ZXh0KTsKKyAJQXVkaW9FbmNvZGVyICpl bmNvZGVyOworQEAgLTE5NCw3ICsxOTQsNyBAQCB1bnNpZ25lZCBpbnQgTXV4ZXI6OkdldFF1ZXVl ZFBhY2tldENvdW50KHVuc2lnbmVkIGludCBzdHJlYW1faW5kZXgpIHsKKyB2b2lkIE11eGVyOjpJ bml0KCkgeworIAorIAkvLyBnZXQgdGhlIGZvcm1hdCB3ZSB3YW50ICh0aGlzIGlzIGp1c3QgYSBw b2ludGVyLCB3ZSBkb24ndCBoYXZlIHRvIGZyZWUgdGhpcykKKy0JQVZPdXRwdXRGb3JtYXQgKmZv cm1hdCA9IGF2X2d1ZXNzX2Zvcm1hdChtX2NvbnRhaW5lcl9uYW1lLnRvVXRmOCgpLmNvbnN0RGF0 YSgpLCBOVUxMLCBOVUxMKTsKKysJY29uc3QgQVZPdXRwdXRGb3JtYXQgKmZvcm1hdCA9IGF2X2d1 ZXNzX2Zvcm1hdChtX2NvbnRhaW5lcl9uYW1lLnRvVXRmOCgpLmNvbnN0RGF0YSgpLCBOVUxMLCBO VUxMKTsKKyAJaWYoZm9ybWF0ID09IE5VTEwpIHsKKyAJCUxvZ2dlcjo6TG9nRXJyb3IoIltNdXhl cjo6SW5pdF0gIiArIExvZ2dlcjo6dHIoIkVycm9yOiBDYW4ndCBmaW5kIGNob3NlbiBvdXRwdXQg Zm9ybWF0ISIpKTsKKyAJCXRocm93IExpYmF2RXhjZXB0aW9uKCk7CitAQCAtMjYxLDggKzI2MSw4 IEBAIHZvaWQgTXV4ZXI6OkZyZWUoKSB7CisgCX0KKyB9CisgCistQVZDb2RlYyogTXV4ZXI6OkZp bmRDb2RlYyhjb25zdCBRU3RyaW5nJiBjb2RlY19uYW1lKSB7CistCUFWQ29kZWMgKmNvZGVjID0g YXZjb2RlY19maW5kX2VuY29kZXJfYnlfbmFtZShjb2RlY19uYW1lLnRvVXRmOCgpLmNvbnN0RGF0 YSgpKTsKKytjb25zdCBBVkNvZGVjKiBNdXhlcjo6RmluZENvZGVjKGNvbnN0IFFTdHJpbmcmIGNv ZGVjX25hbWUpIHsKKysJY29uc3QgQVZDb2RlYyAqY29kZWMgPSBhdmNvZGVjX2ZpbmRfZW5jb2Rl cl9ieV9uYW1lKGNvZGVjX25hbWUudG9VdGY4KCkuY29uc3REYXRhKCkpOworIAlpZihjb2RlYyA9 PSBOVUxMKSB7CisgCQlMb2dnZXI6OkxvZ0Vycm9yKCJbTXV4ZXI6OkZpbmRDb2RlY10gIiArIExv Z2dlcjo6dHIoIkVycm9yOiBDYW4ndCBmaW5kIGNvZGVjISIpKTsKKyAJCXRocm93IExpYmF2RXhj ZXB0aW9uKCk7CitAQCAtMjcwLDcgKzI3MCw3IEBAIEFWQ29kZWMqIE11eGVyOjpGaW5kQ29kZWMo Y29uc3QgUVN0cmluZyYgY29kZWNfbmFtZSkgeworIAlyZXR1cm4gY29kZWM7CisgfQorIAorLUFW U3RyZWFtKiBNdXhlcjo6QWRkU3RyZWFtKEFWQ29kZWMqIGNvZGVjLCBBVkNvZGVjQ29udGV4dCoq IGNvZGVjX2NvbnRleHQpIHsKKytBVlN0cmVhbSogTXV4ZXI6OkFkZFN0cmVhbShjb25zdCBBVkNv ZGVjKiBjb2RlYywgQVZDb2RlY0NvbnRleHQqKiBjb2RlY19jb250ZXh0KSB7CisgCWFzc2VydCgh bV9zdGFydGVkKTsKKyAJYXNzZXJ0KG1fZm9ybWF0X2NvbnRleHQtPm5iX3N0cmVhbXMgPCBNVVhF Ul9NQVhfU1RSRUFNUyk7CisgCitkaWZmIC0tZ2l0IGEvc3JjL0FWL091dHB1dC9NdXhlci5oIGIv c3JjL0FWL091dHB1dC9NdXhlci5oCitpbmRleCBkNzIzNDdkLi5iMTA0YmNiIDEwMDY0NAorLS0t IGEvc3JjL0FWL091dHB1dC9NdXhlci5oCisrKysgYi9zcmMvQVYvT3V0cHV0L011eGVyLmgKK0BA IC0xMTQsOCArMTE0LDggQEAgcHJpdmF0ZToKKyAJdm9pZCBJbml0KCk7CisgCXZvaWQgRnJlZSgp OworIAorLQlBVkNvZGVjKiBGaW5kQ29kZWMoY29uc3QgUVN0cmluZyYgY29kZWNfbmFtZSk7Cist CUFWU3RyZWFtKiBBZGRTdHJlYW0oQVZDb2RlYyogY29kZWMsIEFWQ29kZWNDb250ZXh0KiogY29k ZWNfY29udGV4dCk7CisrCWNvbnN0IEFWQ29kZWMqIEZpbmRDb2RlYyhjb25zdCBRU3RyaW5nJiBj b2RlY19uYW1lKTsKKysJQVZTdHJlYW0qIEFkZFN0cmVhbShjb25zdCBBVkNvZGVjKiBjb2RlYywg QVZDb2RlY0NvbnRleHQqKiBjb2RlY19jb250ZXh0KTsKKyAKKyAJdm9pZCBNdXhlclRocmVhZCgp OworIAorZGlmZiAtLWdpdCBhL3NyYy9BVi9PdXRwdXQvVmlkZW9FbmNvZGVyLmNwcCBiL3NyYy9B Vi9PdXRwdXQvVmlkZW9FbmNvZGVyLmNwcAoraW5kZXggODA4N2U4ZS4uZmM4YjVkMSAxMDA2NDQK Ky0tLSBhL3NyYy9BVi9PdXRwdXQvVmlkZW9FbmNvZGVyLmNwcAorKysrIGIvc3JjL0FWL091dHB1 dC9WaWRlb0VuY29kZXIuY3BwCitAQCAtMzQsNyArMzQsNyBAQCBjb25zdCBzdGQ6OnZlY3RvcjxW aWRlb0VuY29kZXI6OlBpeGVsRm9ybWF0RGF0YT4gVmlkZW9FbmNvZGVyOjpTVVBQT1JURURfUElY RUxfRgorIAl7InJnYiIsIEFWX1BJWF9GTVRfUkdCMjQsIGZhbHNlfSwKKyB9OworIAorLVZpZGVv RW5jb2Rlcjo6VmlkZW9FbmNvZGVyKE11eGVyKiBtdXhlciwgQVZTdHJlYW0qIHN0cmVhbSwgQVZD b2RlY0NvbnRleHQqIGNvZGVjX2NvbnRleHQsIEFWQ29kZWMqIGNvZGVjLCBBVkRpY3Rpb25hcnkq KiBvcHRpb25zKQorK1ZpZGVvRW5jb2Rlcjo6VmlkZW9FbmNvZGVyKE11eGVyKiBtdXhlciwgQVZT dHJlYW0qIHN0cmVhbSwgQVZDb2RlY0NvbnRleHQqIGNvZGVjX2NvbnRleHQsIGNvbnN0IEFWQ29k ZWMqIGNvZGVjLCBBVkRpY3Rpb25hcnkqKiBvcHRpb25zKQorIAk6IEJhc2VFbmNvZGVyKG11eGVy LCBzdHJlYW0sIGNvZGVjX2NvbnRleHQsIGNvZGVjLCBvcHRpb25zKSB7CisgCisgI2lmICFTU1Jf VVNFX0FWQ09ERUNfRU5DT0RFX1ZJREVPMgorQEAgLTk1LDcgKzk1LDcgQEAgdW5zaWduZWQgaW50 IFZpZGVvRW5jb2Rlcjo6R2V0RnJhbWVSYXRlKCkgeworIH0KKyAKKyBib29sIFZpZGVvRW5jb2Rl cjo6QVZDb2RlY0lzU3VwcG9ydGVkKGNvbnN0IFFTdHJpbmcmIGNvZGVjX25hbWUpIHsKKy0JQVZD b2RlYyAqY29kZWMgPSBhdmNvZGVjX2ZpbmRfZW5jb2Rlcl9ieV9uYW1lKGNvZGVjX25hbWUudG9V dGY4KCkuY29uc3REYXRhKCkpOworKwljb25zdCBBVkNvZGVjICpjb2RlYyA9IGF2Y29kZWNfZmlu ZF9lbmNvZGVyX2J5X25hbWUoY29kZWNfbmFtZS50b1V0ZjgoKS5jb25zdERhdGEoKSk7CisgCWlm KGNvZGVjID09IE5VTEwpCisgCQlyZXR1cm4gZmFsc2U7CisgCWlmKCFhdl9jb2RlY19pc19lbmNv ZGVyKGNvZGVjKSkKK0BAIC0xMTEsNyArMTExLDcgQEAgYm9vbCBWaWRlb0VuY29kZXI6OkFWQ29k ZWNJc1N1cHBvcnRlZChjb25zdCBRU3RyaW5nJiBjb2RlY19uYW1lKSB7CisgCXJldHVybiBmYWxz ZTsKKyB9CisgCistdm9pZCBWaWRlb0VuY29kZXI6OlByZXBhcmVTdHJlYW0oQVZTdHJlYW0qIHN0 cmVhbSwgQVZDb2RlY0NvbnRleHQqIGNvZGVjX2NvbnRleHQsIEFWQ29kZWMqIGNvZGVjLCBBVkRp Y3Rpb25hcnkqKiBvcHRpb25zLCBjb25zdCBzdGQ6OnZlY3RvcjxzdGQ6OnBhaXI8UVN0cmluZywg UVN0cmluZz4gPiYgY29kZWNfb3B0aW9ucywKKyt2b2lkIFZpZGVvRW5jb2Rlcjo6UHJlcGFyZVN0 cmVhbShBVlN0cmVhbSogc3RyZWFtLCBBVkNvZGVjQ29udGV4dCogY29kZWNfY29udGV4dCwgY29u c3QgQVZDb2RlYyogY29kZWMsIEFWRGljdGlvbmFyeSoqIG9wdGlvbnMsIGNvbnN0IHN0ZDo6dmVj dG9yPHN0ZDo6cGFpcjxRU3RyaW5nLCBRU3RyaW5nPiA+JiBjb2RlY19vcHRpb25zLAorIAkJCQkJ CQkJIHVuc2lnbmVkIGludCBiaXRfcmF0ZSwgdW5zaWduZWQgaW50IHdpZHRoLCB1bnNpZ25lZCBp bnQgaGVpZ2h0LCB1bnNpZ25lZCBpbnQgZnJhbWVfcmF0ZSkgeworIAorIAlpZih3aWR0aCA9PSAw IHx8IGhlaWdodCA9PSAwKSB7CitkaWZmIC0tZ2l0IGEvc3JjL0FWL091dHB1dC9WaWRlb0VuY29k ZXIuaCBiL3NyYy9BVi9PdXRwdXQvVmlkZW9FbmNvZGVyLmgKK2luZGV4IGNiN2NhMjcuLjY4ZDg3 MmUgMTAwNjQ0CistLS0gYS9zcmMvQVYvT3V0cHV0L1ZpZGVvRW5jb2Rlci5oCisrKysgYi9zcmMv QVYvT3V0cHV0L1ZpZGVvRW5jb2Rlci5oCitAQCAtNDAsNyArNDAsNyBAQCBwcml2YXRlOgorICNl bmRpZgorIAorIHB1YmxpYzoKKy0JVmlkZW9FbmNvZGVyKE11eGVyKiBtdXhlciwgQVZTdHJlYW0q IHN0cmVhbSwgQVZDb2RlY0NvbnRleHQqIGNvZGVjX2NvbnRleHQsIEFWQ29kZWMqIGNvZGVjLCBB VkRpY3Rpb25hcnkqKiBvcHRpb25zKTsKKysJVmlkZW9FbmNvZGVyKE11eGVyKiBtdXhlciwgQVZT dHJlYW0qIHN0cmVhbSwgQVZDb2RlY0NvbnRleHQqIGNvZGVjX2NvbnRleHQsIGNvbnN0IEFWQ29k ZWMqIGNvZGVjLCBBVkRpY3Rpb25hcnkqKiBvcHRpb25zKTsKKyAJflZpZGVvRW5jb2RlcigpOwor IAorIAkvLyBSZXR1cm5zIHRoZSByZXF1aXJlZCBwaXhlbCBmb3JtYXQuCitAQCAtNTUsNyArNTUs NyBAQCBwdWJsaWM6CisgCisgcHVibGljOgorIAlzdGF0aWMgYm9vbCBBVkNvZGVjSXNTdXBwb3J0 ZWQoY29uc3QgUVN0cmluZyYgY29kZWNfbmFtZSk7CistCXN0YXRpYyB2b2lkIFByZXBhcmVTdHJl YW0oQVZTdHJlYW0qIHN0cmVhbSwgQVZDb2RlY0NvbnRleHQqIGNvZGVjX2NvbnRleHQsIEFWQ29k ZWMqIGNvZGVjLCBBVkRpY3Rpb25hcnkqKiBvcHRpb25zLCBjb25zdCBzdGQ6OnZlY3RvcjxzdGQ6 OnBhaXI8UVN0cmluZywgUVN0cmluZz4gPiYgY29kZWNfb3B0aW9ucywKKysJc3RhdGljIHZvaWQg UHJlcGFyZVN0cmVhbShBVlN0cmVhbSogc3RyZWFtLCBBVkNvZGVjQ29udGV4dCogY29kZWNfY29u dGV4dCwgY29uc3QgQVZDb2RlYyogY29kZWMsIEFWRGljdGlvbmFyeSoqIG9wdGlvbnMsIGNvbnN0 IHN0ZDo6dmVjdG9yPHN0ZDo6cGFpcjxRU3RyaW5nLCBRU3RyaW5nPiA+JiBjb2RlY19vcHRpb25z LAorIAkJCQkJCQkgIHVuc2lnbmVkIGludCBiaXRfcmF0ZSwgdW5zaWduZWQgaW50IHdpZHRoLCB1 bnNpZ25lZCBpbnQgaGVpZ2h0LCB1bnNpZ25lZCBpbnQgZnJhbWVfcmF0ZSk7CisgCisgcHJpdmF0 ZToKKy0tIAorMi40My4wCisKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc3NyL3RlbXBsYXRlIGIvc3Jj cGtncy9zc3IvdGVtcGxhdGUKaW5kZXggMzA5Nzc1NGUzY2JlNTQuLmUzYzQyNjFmMWY1YTY0IDEw MDY0NAotLS0gYS9zcmNwa2dzL3Nzci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3Nzci90ZW1wbGF0 ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3NzcicKIHBrZ25hbWU9c3Ny CiB2ZXJzaW9uPTAuNC40Ci1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1jbWFr ZQogY29uZmlndXJlX2FyZ3M9Ii1EV0lUSF9RVDU9T04iCiBob3N0bWFrZWRlcGVuZHM9InBrZy1j b25maWciCgpGcm9tIDI3NzY0YzRiM2VkOGYxNzk3NmUwODcxYmNhNTkxZjNmODg4ZmQ3Y2QgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRh dGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NTIgLTA0MDAKU3ViamVjdDogW1BBVENIIDA2NC8x MDhdIHN5bmZpZzogcmV2YnVtcCBmb3IgZmZtcGVnNiBhbmQgbWx0NwoKLS0tCiBzcmNwa2dzL3N5 bmZpZy9wYXRjaGVzL2ZmbXBlZzYucGF0Y2ggfCA3MSArKysrKysrKysrKysrKysrKysrKysrKysr KysrCiBzcmNwa2dzL3N5bmZpZy90ZW1wbGF0ZSAgICAgICAgICAgICAgfCAgNiArLS0KIDIgZmls ZXMgY2hhbmdlZCwgNzQgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2Rl IDEwMDY0NCBzcmNwa2dzL3N5bmZpZy9wYXRjaGVzL2ZmbXBlZzYucGF0Y2gKCmRpZmYgLS1naXQg YS9zcmNwa2dzL3N5bmZpZy9wYXRjaGVzL2ZmbXBlZzYucGF0Y2ggYi9zcmNwa2dzL3N5bmZpZy9w YXRjaGVzL2ZmbXBlZzYucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw MDAwMDAuLjEwNzgwYjQyNzgyZjRiCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9zeW5maWcv cGF0Y2hlcy9mZm1wZWc2LnBhdGNoCkBAIC0wLDAgKzEsNzEgQEAKKy0tLSBhL3NyYy9tb2R1bGVz L21vZF9saWJhdmNvZGVjL3RyZ3RfYXYuY3BwCTIwMjItMTAtMjUgMDk6MTQ6MTIuMDAwMDAwMDAw IC0wNDAwCisrKysgYi9zcmMvbW9kdWxlcy9tb2RfbGliYXZjb2RlYy90cmd0X2F2LmNwcAkyMDIz LTA1LTA1IDIxOjM0OjE3Ljg5OTE5NDU1OSAtMDQwMAorQEAgLTM4LDYgKzQxLDcgQEAKKyBleHRl cm4gIkMiCisgeworICNpZmRlZiBIQVZFX0xJQkFWRk9STUFUX0FWRk9STUFUX0gKKysjCWluY2x1 ZGUgPGxpYmF2Y29kZWMvYXZjb2RlYy5oPgorICMJaW5jbHVkZSA8bGliYXZmb3JtYXQvYXZmb3Jt YXQuaD4KKyAjZWxpZiBkZWZpbmVkKEhBVkVfQVZGT1JNQVRfSCkKKyAjCWluY2x1ZGUgPGF2Zm9y bWF0Lmg+CitAQCAtMTU1LDExICsxNTYsMTEgQEAKKyAgICAgfQorIAorIAlib29sIG9wZW5fdmlk ZW9fc3RyZWFtKCkgeworLQkJaWYgKGF2Y29kZWNfb3BlbjIodmlkZW9fY29udGV4dCwgTlVMTCwg TlVMTCkgPCAwKSB7CisrCQlpZiAoYXZjb2RlY19vcGVuMih2aWRlb19jb250ZXh0LCBudWxscHRy LCBudWxscHRyKSA8IDApIHsKKyAJCQlzeW5maWc6OmVycm9yKCJUYXJnZXRfTGliQVZDb2RlYzog Y291bGQgbm90IG9wZW4gdmlkZW8gY29kZWMiKTsKKyAJCQkvLyBzZWVtcyB0aGUgY2FsbGluZyBv ZiBhdmNvZGVjX2ZyZWVfY29udGV4dCBhZnRlciBlcnJvciB3aWxsIGNhdXNlIGNyYXNoCisgCQkJ Ly8gc28ganVzdCBmb3JnZXQgYWJvdXQgdGhpcyBjb250ZXh0CistCQkJdmlkZW9fY29udGV4dCA9 IE5VTEw7CisrCQkJdmlkZW9fY29udGV4dCA9IG51bGxwdHI7CisgCQkJY2xvc2UoKTsKKyAJCQly ZXR1cm4gZmFsc2U7CisgICAgICAgICB9CitAQCAtMjM0LDE1ICsyMzUsMjEgQEAKKyAJCWNsb3Nl KCk7CisgCisgCQlpZiAoIWF2X3JlZ2lzdGVyZWQpIHsKKysjaWYgTElCQVZDT0RFQ19WRVJTSU9O X01BSk9SIDwgNTggLy8gRkZNUEVHIDwgNC4wCisgCQkJYXZfcmVnaXN0ZXJfYWxsKCk7CisrI2Vu ZGlmCisgCQkJYXZfcmVnaXN0ZXJlZCA9IHRydWU7CisgCQl9CisgCisgCQkvLyBndWVzcyBmb3Jt YXQKKy0JCUFWT3V0cHV0Rm9ybWF0ICpmb3JtYXQgPSBhdl9ndWVzc19mb3JtYXQoTlVMTCwgZmls ZW5hbWUuY19zdHIoKSwgTlVMTCk7CisrI2lmIExJQkFWQ09ERUNfVkVSU0lPTl9NQUpPUiA8IDU5 IC8vIEZGTVBFRyA8IDUuMAorKwkJQVZPdXRwdXRGb3JtYXQqIGZvcm1hdCA9IGF2X2d1ZXNzX2Zv cm1hdChudWxscHRyLCBmaWxlbmFtZS5jX3N0cigpLCBudWxscHRyKTsKKysjZWxzZQorKwkJY29u c3QgQVZPdXRwdXRGb3JtYXQqIGZvcm1hdCA9IGF2X2d1ZXNzX2Zvcm1hdChudWxscHRyLCBmaWxl bmFtZS5jX3N0cigpLCBudWxscHRyKTsKKysjZW5kaWYKKyAJCWlmICghZm9ybWF0KSB7CisgCQkJ c3luZmlnOjp3YXJuaW5nKCJUYXJnZXRfTGliQVZDb2RlYzogdW5hYmxlIHRvIGd1ZXNzIHRoZSBv dXRwdXQgZm9ybWF0LCBkZWZhdWx0aW5nIHRvIE1QRUciKTsKKy0JCQlmb3JtYXQgPSBhdl9ndWVz c19mb3JtYXQoIm1wZWciLCBOVUxMLCBOVUxMKTsKKysJCQlmb3JtYXQgPSBhdl9ndWVzc19mb3Jt YXQoIm1wZWciLCBudWxscHRyLCBudWxscHRyKTsKKyAJCX0KKyAJCWlmICghZm9ybWF0KSB7Cisg CQkJc3luZmlnOjplcnJvcigiVGFyZ2V0X0xpYkFWQ29kZWM6IHVuYWJsZSB0byBmaW5kICdtcGVn JyBvdXRwdXQgZm9ybWF0Iik7CitAQCAtMjU0LDYgKzI2MSw3IEBACisgCQljb250ZXh0ID0gYXZm b3JtYXRfYWxsb2NfY29udGV4dCgpOworIAkJYXNzZXJ0KGNvbnRleHQpOworIAkJY29udGV4dC0+ b2Zvcm1hdCA9IGZvcm1hdDsKKysjaWYgTElCQVZDT0RFQ19WRVJTSU9OX01BSk9SIDwgNTggLy8g RkZNUEVHIDwgNC4wCisgCQlpZiAoZmlsZW5hbWUuc2l6ZSgpICsgMSA+IHNpemVvZihjb250ZXh0 LT5maWxlbmFtZSkpIHsKKyAJCQlzeW5maWc6OmVycm9yKAorIAkJCQkiVGFyZ2V0X0xpYkFWQ29k ZWM6IGZpbGVuYW1lIHRvbyBsb25nLCBtYXggbGVuZ3RoIGlzICVkLCBmaWxlbmFtZSBpcyAnJXMn IiwKK0BAIC0yNjMsNiArMjcxLDE0IEBACisgCQkJcmV0dXJuIGZhbHNlOworIAkJfQorIAkJbWVt Y3B5KGNvbnRleHQtPmZpbGVuYW1lLCBmaWxlbmFtZS5jX3N0cigpLCBmaWxlbmFtZS5zaXplKCkg KyAxKTsKKysjZWxzZQorKwkJY29udGV4dC0+dXJsID0gYXZfc3RybmR1cChmaWxlbmFtZS5jX3N0 cigpLCBmaWxlbmFtZS5zaXplKCkpOworKwkJaWYgKCFjb250ZXh0LT51cmwpIHsKKysJCQlzeW5m aWc6OmVycm9yKCJUYXJnZXRfTGliQVZDb2RlYzogY2Fubm90IGFsbG9jYXRlIHNwYWNlIGZvciBm aWxlbmFtZSIpOworKwkJCWNsb3NlKCk7CisrCQkJcmV0dXJuIGZhbHNlOworKwkJfQorKyNlbmRp ZgorIAorIAkJcGFja2V0ID0gYXZfcGFja2V0X2FsbG9jKCk7CisgCQlhc3NlcnQocGFja2V0KTsK ZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc3luZmlnL3RlbXBsYXRlIGIvc3JjcGtncy9zeW5maWcvdGVt cGxhdGUKaW5kZXggNTEwZWIyYjRkYmYwNWQuLjU0Njk2MDhjZTU4ZDAwIDEwMDY0NAotLS0gYS9z cmNwa2dzL3N5bmZpZy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3N5bmZpZy90ZW1wbGF0ZQpAQCAt MiwxMSArMiwxMSBAQAogIyBTaG91bGQgYmUga2VwdCBpbiBzeW5jIHdpdGggJ3N5bmZpZ3N0dWRp bycgYW5kICdFVEwnCiBwa2duYW1lPXN5bmZpZwogdmVyc2lvbj0xLjQuNQotcmV2aXNpb249MQor cmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0t d2l0aC1ib29zdC1saWJkaXI9JHtYQlBTX0NST1NTX0JBU0V9L3Vzci9saWIiCiBob3N0bWFrZWRl cGVuZHM9ImJvb3N0LWJ1aWxkIEltYWdlTWFnaWNrIHBrZy1jb25maWcgaW50bHRvb2wiCi1tYWtl ZGVwZW5kcz0iRVRMIGdldHRleHQtZGV2ZWwgbGlieG1sKystZGV2ZWwgbWx0LWRldmVsIGxpYm1h Z2ljay1kZXZlbAorbWFrZWRlcGVuZHM9IkVUTCBnZXR0ZXh0LWRldmVsIGxpYnhtbCsrLWRldmVs IG1sdDctZGV2ZWwgbGlibWFnaWNrLWRldmVsCiAgbGlibW5nLWRldmVsIGJvb3N0LWJ1aWxkIGJv b3N0LWRldmVsIGxpYm9wZW5leHItZGV2ZWwgZmZtcGVnLWRldmVsIgogZGVwZW5kcz0iSW1hZ2VN YWdpY2siCiBzaG9ydF9kZXNjPSJDTEkgMkQgdmVjdG9yIGFuZCB0aW1lbGluZS1iYXNlZCBhbmlt YXRpb24gc29mdHdhcmUiCkBAIC0yMCw3ICsyMCw3IEBAIENYWEZMQUdTPSItc3RkPWMrKzExIC1E SEFWRV9MT0NBTEVfSD0xIgogCiBzeW5maWctZGV2ZWxfcGFja2FnZSgpIHsKIAlkZXBlbmRzPSIk e3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KLQkgbGlib3BlbmV4ci1kZXZlbCBs aWJ4bWwrKy1kZXZlbCBtbHQtZGV2ZWwiCisJIGxpYm9wZW5leHItZGV2ZWwgbGlieG1sKystZGV2 ZWwgbWx0Ny1kZXZlbCIKIAlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxvcG1lbnQgZmlsZXMiCiAJcGtn X2luc3RhbGwoKSB7CiAJCXZtb3ZlIHVzci9iaW4vc3luZmlnLWNvbmZpZwoKRnJvbSA2MWQyMjNj YzRiOTUyYmMyMmU1MjYzMmNkZmMxNzQ2ZmJkNGUwNWE0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIz IDIwOjAxOjUyIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNjUvMTA4XSB0aW1nOiByZXZidW1wIGZv ciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvdGltZy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFu Z2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv dGltZy90ZW1wbGF0ZSBiL3NyY3BrZ3MvdGltZy90ZW1wbGF0ZQppbmRleCAyYTJhYjc2M2QyZmRk Zi4uOGZiNDMyNzUzNWVmOTMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvdGltZy90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL3RpbWcvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICd0aW1nJwogcGtnbmFtZT10aW1nCiB2ZXJzaW9uPTEuNC41Ci1yZXZpc2lvbj0xCityZXZp c2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EV0lUSF9PUEVOU0xJ REVfU1VQUE9SVD1vZmYgLVduby1kZXYiCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgZ2l0 IgoKRnJvbSBlMjI0YjE1N2Y3NDQ0NGFiZTExNjhjZGY2NjQ1NzFjNDAyYjY5NWFjIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBX ZWQsIDIyIE1hciAyMDIzIDIwOjAxOjUyIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNjYvMTA4XSB0 dmhlYWRlbmQ6IHJldmJ1bXAgZm9yIGZmbXBlZzQKCi0tLQogc3JjcGtncy90dmhlYWRlbmQvdGVt cGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24o LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3R2aGVhZGVuZC90ZW1wbGF0ZSBiL3NyY3BrZ3MvdHZo ZWFkZW5kL3RlbXBsYXRlCmluZGV4IDlhZWE3ZGU0ZWM3MDU3Li4wMTJkMzFjNDg3OWZmMSAxMDA2 NDQKLS0tIGEvc3JjcGtncy90dmhlYWRlbmQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy90dmhlYWRl bmQvdGVtcGxhdGUKQEAgLTgsNyArOCw3IEBAIGNvbmZpZ3VyZV9hcmdzPSItLWVuYWJsZS1kdmJz Y2FuIC0tZGlzYWJsZS1mZm1wZWdfc3RhdGljCiAtLWRpc2FibGUtbGlieDI2NV9zdGF0aWMgLS1k aXNhYmxlLWxpYnZweF9zdGF0aWMgLS1kaXNhYmxlLWxpYnRoZW9yYV9zdGF0aWMKIC0tZGlzYWJs ZS1saWJ2b3JiaXNfc3RhdGljIC0tZGlzYWJsZS1saWJmZGthYWNfc3RhdGljIgogaG9zdG1ha2Vk ZXBlbmRzPSJnZXR0ZXh0IHBrZy1jb25maWcgcHl0aG9uMyBnaXQgd2hpY2giCi1tYWtlZGVwZW5k cz0iYXZhaGktbGlicy1kZXZlbCBvcGVuc3NsLWRldmVsIHpsaWItZGV2ZWwgbGliY3VybC1kZXZl bCBmZm1wZWctZGV2ZWwiCittYWtlZGVwZW5kcz0iYXZhaGktbGlicy1kZXZlbCBvcGVuc3NsLWRl dmVsIHpsaWItZGV2ZWwgbGliY3VybC1kZXZlbCBmZm1wZWc0LWRldmVsIgogc2hvcnRfZGVzYz0i VFYgc3RyZWFtaW5nIHNlcnZlciIKIG1haW50YWluZXI9ImxlbW1pIDxsZW1taUBuZXJkMm5lcmQu b3JnPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb25seSIKCkZyb20gZjJjNDBkNjMxOTgzNmYwMzcxYjg2 MTdjMGQ0ZDVkOGY3MWZkMTEwZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2Ug PHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo1MiAtMDQw MApTdWJqZWN0OiBbUEFUQ0ggMDY3LzEwOF0gdW5wYXBlcjogdXBkYXRlIHRvIDcuMC4wLgoKLS0t CiBzcmNwa2dzL3VucGFwZXIvdGVtcGxhdGUgfCAxNiArKysrKysrKy0tLS0tLS0tCiAxIGZpbGUg Y2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvdW5wYXBlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvdW5wYXBlci90ZW1wbGF0ZQppbmRleCAz OGVkNDdhNTg0MDE2NS4uMWZmOTEwZTcyMmFmYzggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvdW5wYXBl ci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3VucGFwZXIvdGVtcGxhdGUKQEAgLTEsMTMgKzEsMTMg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3VucGFwZXInCiBwa2duYW1lPXVucGFwZXIKLXZlcnNp b249Ni4xCi1yZXZpc2lvbj0zCi1idWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCit2ZXJzaW9uPTcu MC4wCityZXZpc2lvbj0xCitidWlsZF9zdHlsZT1tZXNvbgoraG9zdG1ha2VkZXBlbmRzPSJwa2ct Y29uZmlnIG1lc29uIGxpYnhzbHQiCittYWtlZGVwZW5kcz0iZmZtcGVnLWRldmVsIHB5dGhvbjMt U3BoaW54Igorc2hvcnRfZGVzYz0iUG9zdC1wcm9jZXNzaW5nIHRvb2wgZm9yIHNjYW5uZWQgc2hl ZXRzIG9mIHBhcGVyIgogbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3Jn PiIKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBsaWJ4c2x0IgotbWFrZWRlcGVuZHM9ImZm bXBlZy1kZXZlbCIKLWxpY2Vuc2U9IkdQTC0yIgorbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIK IGhvbWVwYWdlPSJodHRwczovL3d3dy5mbGFtZWV5ZXMuZXUvcHJvamVjdHMvdW5wYXBlciIKLXNo b3J0X2Rlc2M9IkEgcG9zdC1wcm9jZXNzaW5nIHRvb2wgZm9yIHNjYW5uZWQgc2hlZXRzIG9mIHBh cGVyIgogZGlzdGZpbGVzPSJodHRwczovL3d3dy5mbGFtZWV5ZXMuZXUvZmlsZXMvJHtwa2duYW1l fS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTIzN2M4NGY1ZGE1NDRiM2Y3NzA5ODI3Zjlm MTJjMzdjMzQ2Y2RmMDI5YjExMjhmYjQ2MzNmOWJhZmE1Y2I5MzAKK2NoZWNrc3VtPTI1NzVmYmJm MjZjMjI3MTlkMWNiODgyYjU5NjAyYzk5MDBjN2Y3NDcxMThhYzEzMDg4M2Y2MzQxOWJlNDZhODAK CkZyb20gYjI2ZWFiNjIyMzM2Mjk4OTI0YmYwNzMxZjdlYWQ5MTVlYWY3YmYwZSBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2Vk LCAyMiBNYXIgMjAyMyAyMDowMTo1MiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDY4LzEwOF0gdmlj ZTogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL3ZpY2UvdGVtcGxhdGUgfCAyICst CiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL3ZpY2UvdGVtcGxhdGUgYi9zcmNwa2dzL3ZpY2UvdGVtcGxhdGUKaW5kZXgg MWM2NDFkOWFlOWJlMjIuLjRmNDNlODViNWI4OTcyIDEwMDY0NAotLS0gYS9zcmNwa2dzL3ZpY2Uv dGVtcGxhdGUKKysrIGIvc3JjcGtncy92aWNlL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAndmljZScKIHBrZ25hbWU9dmljZQogdmVyc2lvbj0zLjgKLXJldmlz aW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9h cmdzPSItLWVuYWJsZS1jcHVoaXN0b3J5IC0tZW5hYmxlLXg2NCAtLWRpc2FibGUtcGRmLWRvY3MK ICAtLWxpYmRpcj0vdXNyL2xpYiRYQlBTX1RBUkdFVF9XT1JEU0laRSAkKHZvcHRfZW5hYmxlIHNk bDIgc2RsdWkyKQoKRnJvbSAyMmQ2NWNjNWU1ODBlZThlY2E3ODQyYmExNzJjMTkxNjc1ZWNhYTU0 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29t PgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjUyIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAw NjkvMTA4XSB3YXlwaXBlOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3Mvd2F5cGlw ZS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxl dGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvd2F5cGlwZS90ZW1wbGF0ZSBiL3NyY3BrZ3Mv d2F5cGlwZS90ZW1wbGF0ZQppbmRleCA2ZGE4OGIyMWJmMmExOS4uNGRhODA1ODQwMGI1ODggMTAw NjQ0Ci0tLSBhL3NyY3BrZ3Mvd2F5cGlwZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3dheXBpcGUv dGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd3YXlwaXBlJwog cGtnbmFtZT13YXlwaXBlCiB2ZXJzaW9uPTAuOC42Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBi dWlsZF9zdHlsZT1tZXNvbgogIyBsdG8gaXMgb2ZmIGJlY2F1c2UgaXQgY2F1c2VzIGxpbmtpbmcg ZXJyb3JzIGluIGFybXY2bCBhbmQgYXJtdjdsIChkdWUgdG8gTkVPTikKIGNvbmZpZ3VyZV9hcmdz PSItRHdlcnJvcj1mYWxzZSAtRHdpdGhfZG1hYnVmPWVuYWJsZWQgLUR3aXRoX2x6ND1lbmFibGVk CgpGcm9tIDNmNGIwMjYwMjY5NGQ1MDliOTk4MzYxYWU4NTBlNWM3ZjRlNGJiYTIgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdl ZCwgMjIgTWFyIDIwMjMgMjA6MDE6NTIgLTA0MDAKU3ViamVjdDogW1BBVENIIDA3MC8xMDhdIHhw cmE6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy94cHJhL3RlbXBsYXRlIHwgMiAr LQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy94cHJhL3RlbXBsYXRlIGIvc3JjcGtncy94cHJhL3RlbXBsYXRlCmluZGV4 IGE1YmQ4NzA0MGQwMWQzLi4xZWVkYTE0NmRkMmU3NCAxMDA2NDQKLS0tIGEvc3JjcGtncy94cHJh L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MveHByYS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ3hwcmEnCiBwa2duYW1lPXhwcmEKIHZlcnNpb249Ni4wLjEKLXJl dmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPXB5dGhvbjMtbW9kdWxlCiBtYWtlX2J1 aWxkX2FyZ3M9Ii0td2l0aG91dC1jdWRhX2tlcm5lbHMgLS13aXRob3V0LWN1ZGFfcmVidWlsZCIK IG1ha2VfaW5zdGFsbF9hcmdzPSIkKHZvcHRfd2l0aCBkb2NzKSAke21ha2VfYnVpbGRfYXJnc30i CgpGcm9tIDdkZjU5MDU3YjI0ZTZiYzZmNzU0YTY3ODdmNWRhYjk1ZDg2MWNkMWQgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IEZy aSwgMzEgTWFyIDIwMjMgMDk6MDc6NDAgLTA0MDAKU3ViamVjdDogW1BBVENIIDA3MS8xMDhdIG52 LWNvZGVjLWhlYWRlcnM6IHVwZGF0ZSB0byAxMi4wLjE2LjAKCi0tLQogc3JjcGtncy9udi1jb2Rl Yy1oZWFkZXJzL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25z KCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbnYtY29kZWMtaGVhZGVy cy90ZW1wbGF0ZSBiL3NyY3BrZ3MvbnYtY29kZWMtaGVhZGVycy90ZW1wbGF0ZQppbmRleCAzZDQy MmE2MWU0ODkxNy4uMjUxZTA1N2Y4MjZmYjggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbnYtY29kZWMt aGVhZGVycy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL252LWNvZGVjLWhlYWRlcnMvdGVtcGxhdGUK QEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdudi1jb2RlYy1oZWFkZXJzJwog cGtnbmFtZT1udi1jb2RlYy1oZWFkZXJzCi12ZXJzaW9uPTExLjEuNS4xCit2ZXJzaW9uPTEyLjAu MTYuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LW1ha2VmaWxlCiBzaG9ydF9kZXNjPSJG Rm1wZWcgdmVyc2lvbiBvZiBoZWFkZXJzIHJlcXVpcmVkIHRvIGludGVyZmFjZSB3aXRoIE52aWRp YXMgY29kZWMgQVBJcyIKQEAgLTgsNyArOCw3IEBAIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBo YW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJNSVQiCiBob21lcGFnZT0iaHR0cDovL2dpdC52 aWRlb2xhbi5vcmcvP3A9ZmZtcGVnL252LWNvZGVjLWhlYWRlcnMuZ2l0IgogZGlzdGZpbGVzPSJo dHRwczovL2dpdGh1Yi5jb20vRkZtcGVnL252LWNvZGVjLWhlYWRlcnMvYXJjaGl2ZS9uJHt2ZXJz aW9ufS50YXIuZ3oiCi1jaGVja3N1bT1kMDk1ZmJkNTZhYTkzNzcyNDcxYTMyM2JlMGViZTY1NTA0 YTBmNDNmMDZjNzZhMzBiNmQyNWRhNzdiMDZhZTljCitjaGVja3N1bT0yYTE1MzNiNjVmNTVmOWRh NTI5NTZmYWYwNjI3ZWQzYjc0ODY4YWMwYzdmMjY5OTkwZWRkMjEzNjkxMTNiNDhmCiAKIHBvc3Rf aW5zdGFsbCgpIHsKIAlzZWQgLW4gJzQsMjVwJyBpbmNsdWRlL2ZmbnZjb2RlYy9udkVuY29kZUFQ SS5oID4gTElDRU5TRQoKRnJvbSA5MzNkMWZjZWUwNTgyZGYyOWFiM2RjMGU1NWM2MDU0ZjJjN2Jj ZTlmIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwu Y29tPgpEYXRlOiBGcmksIDMxIE1hciAyMDIzIDA5OjA4OjQwIC0wNDAwClN1YmplY3Q6IFtQQVRD SCAwNzIvMTA4XSBvcGVuaW1hZ2VkZW5vaXNlOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNy Y3BrZ3Mvb3BlbmltYWdlZGVub2lzZS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAx IGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvb3Blbmlt YWdlZGVub2lzZS90ZW1wbGF0ZSBiL3NyY3BrZ3Mvb3BlbmltYWdlZGVub2lzZS90ZW1wbGF0ZQpp bmRleCAxMDlkZWIxNzFjM2Y3NS4uNDRlZGYzOGZiMjg5ZDggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv b3BlbmltYWdlZGVub2lzZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL29wZW5pbWFnZWRlbm9pc2Uv dGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdvcGVuaW1hZ2Vk ZW5vaXNlJwogcGtnbmFtZT1vcGVuaW1hZ2VkZW5vaXNlCiB2ZXJzaW9uPTEuNC4zCi1yZXZpc2lv bj0yCityZXZpc2lvbj0zCiBhcmNocz0ieDg2XzY0KiIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBob3N0 bWFrZWRlcGVuZHM9ImlzcGMgcHl0aG9uMyIKCkZyb20gM2M2YmUzNDhkYmE2MThjZjA3MWRkMDky YWUwOWFiOWFmZjIwNDEzYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHps aWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogTW9uLCAzIEFwciAyMDIzIDIzOjMxOjQ1IC0wNDAwClN1 YmplY3Q6IFtQQVRDSCAwNzMvMTA4XSBzaG90Y3V0OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0K IHNyY3BrZ3Mvc2hvdGN1dC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2Vy dGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2hvdGN1dC90ZW1w bGF0ZSBiL3NyY3BrZ3Mvc2hvdGN1dC90ZW1wbGF0ZQppbmRleCAxM2U4YTA4NTIyYjY4Zi4uZDUy YjBmZjQ3ZDVkZTcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc2hvdGN1dC90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL3Nob3RjdXQvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdzaG90Y3V0JwogcGtnbmFtZT1zaG90Y3V0CiB2ZXJzaW9uPTIzLjA5LjI5Ci1yZXZpc2lv bj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EU0hP VENVVF9WRVJTSU9OPSR7dmVyc2lvbn0iCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgcXQ2 LWJhc2UgcXQ2LXRvb2xzIgoKRnJvbSBmMzFiN2RkYWIwY2JmMTk0MDMzMjc2NjIyMjM0MmJkZjVh MTliMGI0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21h aWwuY29tPgpEYXRlOiBNb24sIDMgQXByIDIwMjMgMjM6MzM6MzAgLTA0MDAKU3ViamVjdDogW1BB VENIIDA3NC8xMDhdIHNoaWJva2VuMjogcmV2YnVtcCBmb3IgcXQ1LTUuMTUuMTEKCi0tLQogc3Jj cGtncy9zaGlib2tlbjIvcGF0Y2hlcy9pbXBvcnRsaWItbWFjaGluZXJ5LWJ5cGFzcy5wYXRjaCB8 IDEgKwogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspCiBjcmVhdGUgbW9kZSAxMjAwMDAg c3JjcGtncy9zaGlib2tlbjIvcGF0Y2hlcy9pbXBvcnRsaWItbWFjaGluZXJ5LWJ5cGFzcy5wYXRj aAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2hpYm9rZW4yL3BhdGNoZXMvaW1wb3J0bGliLW1hY2hp bmVyeS1ieXBhc3MucGF0Y2ggYi9zcmNwa2dzL3NoaWJva2VuMi9wYXRjaGVzL2ltcG9ydGxpYi1t YWNoaW5lcnktYnlwYXNzLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAw MDAwMDAwLi5lZmNmMzI0OWJkODg1NAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mvc2hpYm9r ZW4yL3BhdGNoZXMvaW1wb3J0bGliLW1hY2hpbmVyeS1ieXBhc3MucGF0Y2gKQEAgLTAsMCArMSBA QAorLi4vLi4vcHl0aG9uMy1weXNpZGUyL3BhdGNoZXMvaW1wb3J0bGliLW1hY2hpbmVyeS1ieXBh c3MucGF0Y2gKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCgpGcm9tIDA4MjM2OTNhNGRiNjRh YTRlYzQyNTMzZWFjNDQ1M2M1MjQ3MWI0YjMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IE1vbiwgMyBBcHIgMjAyMyAyMzozMzo1 MyAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDc1LzEwOF0gcHl0aG9uMy1weXNpZGUyOiByZXZidW1w IGZvciBxdDUtNS4xNS4xMQoKLS0tCiAuLi4vcGF0Y2hlcy9pbXBvcnRsaWItbWFjaGluZXJ5LWJ5 cGFzcy5wYXRjaCAgICAgIHwgMTUgKysrKysrKysrKysrKysrCiBzcmNwa2dzL3B5dGhvbjMtcHlz aWRlMi90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIDIgZmlsZXMgY2hhbmdlZCwg MTYgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3Br Z3MvcHl0aG9uMy1weXNpZGUyL3BhdGNoZXMvaW1wb3J0bGliLW1hY2hpbmVyeS1ieXBhc3MucGF0 Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3B5dGhvbjMtcHlzaWRlMi9wYXRjaGVzL2ltcG9ydGxp Yi1tYWNoaW5lcnktYnlwYXNzLnBhdGNoIGIvc3JjcGtncy9weXRob24zLXB5c2lkZTIvcGF0Y2hl cy9pbXBvcnRsaWItbWFjaGluZXJ5LWJ5cGFzcy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwMDAwMDAwMC4uNjRjNDI5NTg0Nzc2YjUKLS0tIC9kZXYvbnVsbAorKysgYi9z cmNwa2dzL3B5dGhvbjMtcHlzaWRlMi9wYXRjaGVzL2ltcG9ydGxpYi1tYWNoaW5lcnktYnlwYXNz LnBhdGNoCkBAIC0wLDAgKzEsMTUgQEAKK1VzaW5nIHRoaXMgcHJldmVudHMgYW4gZXJyb3IgYXJv dW5kIGxpbmUgMjIwIGJlbG93IGl0LgorIkF0dHJpYnV0ZUVycm9yOiBtb2R1bGUgJ2ltcG9ydGxp YicgaGFzIG5vIGF0dHJpYnV0ZSAnbWFjaGluZXJ5JyIKK1RoZSBvbGQgYmFja3VwIGxvZ2ljIGlz IGluIHBsYWNlIGFuZCBjb21waWxlcyB3aXRob3V0IGlzc3Vlcy4KKy0tLSBhL3NvdXJjZXMvc2hp Ym9rZW4yL2xpYnNoaWJva2VuL2VtYmVkL3NpZ25hdHVyZV9ib290c3RyYXAucHkJMjAyMy0wNC0w MiAyMzowOTozNC42ODg5MTI0MDIgLTA0MDAKKysrKyBiL3NvdXJjZXMvc2hpYm9rZW4yL2xpYnNo aWJva2VuL2VtYmVkL3NpZ25hdHVyZV9ib290c3RyYXAucHkJMjAyMy0wNC0wMiAyMzoxMDowMy4z OTU1Mjk1ODIgLTA0MDAKK0BAIC0xNzAsOSArMTcwLDYgQEAKKworICAgICAjICd6aXBzdHJpbmdf c2VxdWVuY2UnIGNvbWVzIGZyb20gc2lnbmF0dXJlLmNwcAorICAgICB6aXBieXRlcyA9IGJhc2U2 NC5iNjRkZWNvZGUoJycuam9pbih6aXBzdHJpbmdfc2VxdWVuY2UpKQorLSAgICBpZiBzeXMudmVy c2lvbl9pbmZvWzBdID49IDM6CistICAgICAgICB2emlwID0gemlwZmlsZS5aaXBGaWxlKGlvLkJ5 dGVzSU8oemlwYnl0ZXMpKQorLSAgICAgICAgcmV0dXJuIHN5cy5tZXRhX3BhdGgsIEVtYmVkZGFi bGVaaXBJbXBvcnRlcih2emlwKQorCisgICAgICMgT2xkIHZlcnNpb24gZm9yIFB5dGhvbiAyLjcs IG9ubHkuCisgICAgIGltcG9ydCBvcwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9weXRob24zLXB5c2lk ZTIvdGVtcGxhdGUgYi9zcmNwa2dzL3B5dGhvbjMtcHlzaWRlMi90ZW1wbGF0ZQppbmRleCAyNDll ZmE5MDk4ODQyNS4uNTI2MjY0MzZjZTc1ZjIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcHl0aG9uMy1w eXNpZGUyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcHl0aG9uMy1weXNpZGUyL3RlbXBsYXRlCkBA IC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncHl0aG9uMy1weXNpZGUyJwogcGtn bmFtZT1weXRob24zLXB5c2lkZTIKIHZlcnNpb249NS4xNS4xMAotcmV2aXNpb249MQorcmV2aXNp b249MgogX3BrZ25hbWU9InB5c2lkZS1zZXR1cC1vcGVuc291cmNlLXNyYy0ke3ZlcnNpb259Igog YnVpbGRfd3Jrc3JjPSJzb3VyY2VzL3B5c2lkZTIiCiBidWlsZF9zdHlsZT1jbWFrZQoKRnJvbSAy MDlmODBjOGNlZmQ5NDFhZTg5ZDNiODRlZDdlODkwNDRhYmI0ZjBmIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBUdWUsIDQgQXBy IDIwMjMgMTE6MTQ6MzUgLTA0MDAKU3ViamVjdDogW1BBVENIIDA3Ni8xMDhdIGtvbnF1ZXJvcjog cmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2tvbnF1ZXJvci90ZW1wbGF0ZSB8IDIg Ky0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAt LWdpdCBhL3NyY3BrZ3Mva29ucXVlcm9yL3RlbXBsYXRlIGIvc3JjcGtncy9rb25xdWVyb3IvdGVt cGxhdGUKaW5kZXggODY1NjNhODExMjY2OGQuLmNjMzNkZDExZDJhZjIwIDEwMDY0NAotLS0gYS9z cmNwa2dzL2tvbnF1ZXJvci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2tvbnF1ZXJvci90ZW1wbGF0 ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2tvbnF1ZXJvcicKIHBrZ25h bWU9a29ucXVlcm9yCiB2ZXJzaW9uPTI0LjAyLjIKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1 aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURCVUlMRF9XSVRIX1FUNj1PTiAtREJV SUxEX1RFU1RJTkc9T0ZGCiAgLURLRjZfSE9TVF9UT09MSU5HPS91c3IvbGliL2NtYWtlCgpGcm9t IGZiY2VlMjA1M2EzOWE4ZjE2Y2I2YzM1NTJiMzRjMTZiNjczOTJlNzIgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFR1ZSwgNCBB cHIgMjAyMyAxMToxNDo1OCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDc3LzEwOF0gcXQ1LXNwZWVj aDogcmV2YnVtcCBmb3IgcXQ1LTUuMTUuMTEKCi0tLQogc3JjcGtncy9xdDUtc3BlZWNoL3RlbXBs YXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0p CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDUtc3BlZWNoL3RlbXBsYXRlIGIvc3JjcGtncy9xdDUt c3BlZWNoL3RlbXBsYXRlCmluZGV4IDEyMjhiYjYwYzQxZGI0Li4yN2E3ZGExZGJkYjkxYiAxMDA2 NDQKLS0tIGEvc3JjcGtncy9xdDUtc3BlZWNoL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcXQ1LXNw ZWVjaC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3F0NS1z cGVlY2gnCiBwa2duYW1lPXF0NS1zcGVlY2gKIHZlcnNpb249NS4xNS4xMQotcmV2aXNpb249MQor cmV2aXNpb249MgogX2NvbW1pdD1kMzJmNGE0NzlkMzhhMTFmNTQ3NTk4MDA0Yjk3NWY0MzU2NDI0 YTE2CiBidWlsZF9zdHlsZT1xbWFrZQogY29uZmlndXJlX2FyZ3M9Ii0tIC1mbGl0ZSAtZmxpdGUt YWxzYSAtc3BlZWNoZCIKCkZyb20gMWEwNjM3MGE0M2FkYjhhYjFiY2VjNTFmMjU5NmU0MjZkYzVm ZGJmOCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWls LmNvbT4KRGF0ZTogU2F0LCAzIEp1biAyMDIzIDA4OjIwOjIyIC0wNDAwClN1YmplY3Q6IFtQQVRD SCAwNzgvMTA4XSBndGs0OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvZ3RrNC90 ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlv bigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ3RrNC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ3RrNC90 ZW1wbGF0ZQppbmRleCAxNWQ3OGE4NDg0NjJhMi4uMmUyZmI2NDM1ZGI2MDcgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvZ3RrNC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2d0azQvdGVtcGxhdGUKQEAgLTEs NyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdndGs0JwogcGtnbmFtZT1ndGs0CiB2ZXJz aW9uPTQuMTQuNAotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9bWVzb24KIGJ1 aWxkX2hlbHBlcj0iZ2lyIgogY29uZmlndXJlX2FyZ3M9Ii1EbWFuLXBhZ2VzPXRydWUgLURkb2N1 bWVudGF0aW9uPXRydWUgLURidWlsZC10ZXN0cz1mYWxzZQoKRnJvbSBhODdlMDhjZWQ3NjkyZmJl YjVmZDU1MmIxMmY3MzJhZTE5MjkwZTRjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6 bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBTdW4sIDQgSnVuIDIwMjMgMTE6Mjg6MjYg LTA0MDAKU3ViamVjdDogW1BBVENIIDA3OS8xMDhdIHNpcmlsOiByZXZidW1wIGZvciBmZm1wZWc2 CgotLS0KIHNyY3BrZ3Mvc2lyaWwvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBp bnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3NpcmlsL3Rl bXBsYXRlIGIvc3JjcGtncy9zaXJpbC90ZW1wbGF0ZQppbmRleCA4NDMzMmY3OWQwNjBkMi4uNjI3 NTBkZDI0NzU0OGYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc2lyaWwvdGVtcGxhdGUKKysrIGIvc3Jj cGtncy9zaXJpbC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J3NpcmlsJwogcGtnbmFtZT1zaXJpbAogdmVyc2lvbj0wLjkuMTIKLXJldmlzaW9uPTEwCityZXZp c2lvbj0xMQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogaG9zdG1ha2VkZXBlbmRzPSJwa2ct Y29uZmlnIGludGx0b29sIGF1dG9jb25mIGF1dG9tYWtlIGdldHRleHQtZGV2ZWwiCiBtYWtlZGVw ZW5kcz0iZmZ0dy1kZXZlbCBsaWJjb25maWctZGV2ZWwgbGlib3BlbmN2LWRldmVsIGxpYmZmbXMy LWRldmVsCgpGcm9tIDA2NTY2OGNkZTk3MmI2YmM2YjA0MGI2ZmJmY2RkZjRmNTQ2YjlkYzkgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRh dGU6IFNhdCwgOCBKdWwgMjAyMyAyMDoyMDo1OSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDgwLzEw OF0gdHJhY2tlci1taW5lcnM6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy90cmFj a2VyLW1pbmVycy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigr KSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdHJhY2tlci1taW5lcnMvdGVt cGxhdGUgYi9zcmNwa2dzL3RyYWNrZXItbWluZXJzL3RlbXBsYXRlCmluZGV4IDE2OWNmYzU4YWZh ZTUyLi43NzIxN2JkZjFhYWFlOCAxMDA2NDQKLS0tIGEvc3JjcGtncy90cmFja2VyLW1pbmVycy90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3RyYWNrZXItbWluZXJzL3RlbXBsYXRlCkBAIC0xLDcgKzEs NyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAndHJhY2tlci1taW5lcnMnCiBwa2duYW1lPXRyYWNr ZXItbWluZXJzCiB2ZXJzaW9uPTMuNy4zCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9z dHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPXFlbXUKICMgbWlzc2luZyBsaWJncnNzIGZvciBtaW5l cl9yc3MKCkZyb20gZTIzZThmZmM1OTE1ZDdiYzg1NTIyNmU3NDBkMTM4MzRiZTQyOWU4ZCBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0 ZTogV2VkLCAzMCBBdWcgMjAyMyAwOToxMDowMiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDgxLzEw OF0gdGdfb3d0OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvdGdfb3d0L3RlbXBs YXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0p CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy90Z19vd3QvdGVtcGxhdGUgYi9zcmNwa2dzL3RnX293dC90 ZW1wbGF0ZQppbmRleCAzNGU4ZmVmMDU0MDU2OS4uMWE0NmE4YmVkZjM0NzMgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvdGdfb3d0L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvdGdfb3d0L3RlbXBsYXRlCkBA IC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAndGdfb3d0JwogcGtnbmFtZT10Z19v d3QKIHZlcnNpb249MC4wLjAuMjAyMzEyMjEKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIF9jb21t aXQ9YWZkOWQ1ZDMxNzk4ZDNlYWNmOWVkNmMzMDYwMWU5MWQwZjFlNGQ2MAogX2xpYnl1dl9jb21t aXQ9MDQ4MjFkMWU3ZDYwODQ1NTI1ZThkYjU1YzdiY2Q0MWVmNWJlOTQwNgogX2Fic2VpbF9jb21t aXQ9OGMwYjk0ZTc5M2E2NjQ5NWUwYjFmMzRhNWViMjZiZDdkYzY3MmRiMAoKRnJvbSBhMmM2YTVk ZjNmNWFjOGZiZTU1ZGJjN2M3MzY3MWQ2ZTQxOTI4ZWQ3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDMwIEF1ZyAyMDIz IDA5OjEwOjQ0IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwODIvMTA4XSB0ZWxlZ3JhbS1kZXNrdG9w OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvdGVsZWdyYW0tZGVza3RvcC90ZW1w bGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdGVsZWdyYW0tZGVza3RvcC90ZW1wbGF0ZSBiL3NyY3Br Z3MvdGVsZWdyYW0tZGVza3RvcC90ZW1wbGF0ZQppbmRleCA0ZTRhYTc5NzQ3ZTY0YS4uNTJkOGFh NTRkMDY0MjIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvdGVsZWdyYW0tZGVza3RvcC90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL3RlbGVncmFtLWRlc2t0b3AvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICd0ZWxlZ3JhbS1kZXNrdG9wJwogcGtnbmFtZT10ZWxlZ3JhbS1k ZXNrdG9wCiB2ZXJzaW9uPTUuMS43Ci1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHls ZT1jbWFrZQogYnVpbGRfaGVscGVyPSJxZW11IGdpciIKIGNvbmZpZ3VyZV9hcmdzPSItRFRERVNL VE9QX0FQSV9JRD0yMDkyMzUKCkZyb20gYmUzMTQ3N2QwOGYxMDJiZWI3OGNhZTA1ODYzY2U2OWQ3 ZmNjNzMyYiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdt YWlsLmNvbT4KRGF0ZTogV2VkLCAzMCBBdWcgMjAyMyAwOToxMjowOSAtMDQwMApTdWJqZWN0OiBb UEFUQ0ggMDgzLzEwOF0gb3Blbm13OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3Mv b3Blbm13L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAx IGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9vcGVubXcvdGVtcGxhdGUgYi9zcmNw a2dzL29wZW5tdy90ZW1wbGF0ZQppbmRleCAwYWJmNWZmN2NkYmVjYy4uYjU3MTgwZjFhNDQ0NmYg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvb3Blbm13L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvb3Blbm13 L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnb3Blbm13Jwog cGtnbmFtZT1vcGVubXcKIHZlcnNpb249MC40OC4wCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBi dWlsZF9zdHlsZT1jbWFrZQogX3JlY2FzdF9jb21taXQ9ZTc1YWRmODZmOTFlYjMwODIyMjAwODVl NDJkZGE2MjY3OWY5YTNlYQogX2J1bGxldF90YWc9My4xNwoKRnJvbSA3NDgxYWQwOWZlMjE0OWM0 NzZjNmE5YTc4MzQ5YjUxOWU0MzY3ZjhjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6 bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBTdW4sIDE1IE9jdCAyMDIzIDIxOjQ3OjE4 IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwODQvMTA4XSBsaWJvcGVuc2hvdDogcmV2YnVtcCBmb3Ig ZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2xpYm9wZW5zaG90L3RlbXBsYXRlIHwgMiArLQogMSBmaWxl IGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9saWJvcGVuc2hvdC90ZW1wbGF0ZSBiL3NyY3BrZ3MvbGlib3BlbnNob3QvdGVtcGxhdGUK aW5kZXggZmM0NWEyNTgwNTcwNzkuLjdjMWRlNjk0ZDA2YzAwIDEwMDY0NAotLS0gYS9zcmNwa2dz L2xpYm9wZW5zaG90L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbGlib3BlbnNob3QvdGVtcGxhdGUK QEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdsaWJvcGVuc2hvdCcKIHBrZ25h bWU9bGlib3BlbnNob3QKIHZlcnNpb249MC4zLjIKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1 aWxkX3N0eWxlPWNtYWtlCiAjIEJ1aWxkcyBmYWlsIHdpdGggUnVieS0yLjQuMQogY29uZmlndXJl X2FyZ3M9Ii1ERU5BQkxFX1JVQlk9T0ZGIC1EVVNFX1NZU1RFTV9KU09OQ1BQPU9OIgoKRnJvbSBl M2QxZTZhOGRiZGQ5MWY2YzIxMWU3ODFlNzI0MmIyYTcyZjg3NjVmIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDggTm92 IDIwMjMgMTA6MTA6MzAgLTA1MDAKU3ViamVjdDogW1BBVENIIDA4NS8xMDhdIG9wZW5pbWFnZWlv OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3Mvb3BlbmltYWdlaW8vdGVtcGxhdGUg fCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL29wZW5pbWFnZWlvL3RlbXBsYXRlIGIvc3JjcGtncy9vcGVuaW1h Z2Vpby90ZW1wbGF0ZQppbmRleCAyN2QyMTMxYmMwYTYxYS4uNjFmNDRiNDNmOTA4M2UgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3Mvb3BlbmltYWdlaW8vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9vcGVuaW1h Z2Vpby90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ29wZW5p bWFnZWlvJwogcGtnbmFtZT1vcGVuaW1hZ2VpbwogdmVyc2lvbj0yLjQuOS4wCi1yZXZpc2lvbj04 CityZXZpc2lvbj05CiBidWlsZF9zdHlsZT1jbWFrZQogYnVpbGRfaGVscGVyPXFlbXUKIGNvbmZp Z3VyZV9hcmdzPSItRFVTRV9RVD0wIC1EVVNFX1BZVEhPTj0wIC1ET0lJT19CVUlMRF9URVNUUz0w CgpGcm9tIGQ0ZTBiMzk3NDA3NTE1NGM1ZDEwZmNlNjU2YWNmZThhOTNiNGZiMDggTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdl ZCwgOCBOb3YgMjAyMyAxMDoxMTo1NyAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggMDg2LzEwOF0gc3lu Zmlnc3R1ZGlvOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3Mvc3luZmlnc3R1ZGlv L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0 aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zeW5maWdzdHVkaW8vdGVtcGxhdGUgYi9zcmNw a2dzL3N5bmZpZ3N0dWRpby90ZW1wbGF0ZQppbmRleCA1Y2RlOTE5YjcwMzM0My4uZGI4NjI1MmM5 NWQ2ZmUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc3luZmlnc3R1ZGlvL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3Mvc3luZmlnc3R1ZGlvL3RlbXBsYXRlCkBAIC0yLDcgKzIsNyBAQAogIyBTaG91bGQgYmUg a2VwdCBpbiBzeW5jIHdpdGggJ3N5bmZpZycgYW5kICdFVEwnCiBwa2duYW1lPXN5bmZpZ3N0dWRp bwogdmVyc2lvbj0xLjQuNQotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251 LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS11cGRhdGUtbWltZWRiIgogaG9z dG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGludGx0b29sIGdldHRleHQgc3luZmlnIgoKRnJvbSAx YWYzMTY1MzNlYzNhNjQ5ZWM3NGEyMzBkZmY0M2FjOGYzMzFhMmI2IE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBGcmksIDEwIE5v diAyMDIzIDE0OjUzOjEwIC0wNTAwClN1YmplY3Q6IFtQQVRDSCAwODcvMTA4XSBtaXh4eDogcmV2 YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL21peHh4L3RlbXBsYXRlIHwgMiArLQogMSBm aWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9taXh4eC90ZW1wbGF0ZSBiL3NyY3BrZ3MvbWl4eHgvdGVtcGxhdGUKaW5kZXggNmE3 OWIzMjhjMWFiZjAuLjlhNTE0MTg1Njg2MGI5IDEwMDY0NAotLS0gYS9zcmNwa2dzL21peHh4L3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvbWl4eHgvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdtaXh4eCcKIHBrZ25hbWU9bWl4eHgKIHZlcnNpb249Mi4zLjMKLXJl dmlzaW9uPTcKK3JldmlzaW9uPTgKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0i LURDTUFLRV9CVUlMRF9UWVBFPVJlbGVhc2UiCiBob3N0bWFrZWRlcGVuZHM9ImV4dHJhLWNtYWtl LW1vZHVsZXMgcGtnLWNvbmZpZyBwcm90b2J1ZiBxdDUtaG9zdC10b29scyBxdDUtcW1ha2UiCgpG cm9tIDgxMWQ2NTNhZmZiMDgxYTMzYTM1MzcwNGU4ODUxOWJjN2JmMjI0NjggTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IEZyaSwg MTAgTm92IDIwMjMgMTQ6NTM6MjggLTA1MDAKU3ViamVjdDogW1BBVENIIDA4OC8xMDhdIG11c2lr Y3ViZTogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL211c2lrY3ViZS90ZW1wbGF0 ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXVzaWtjdWJlL3RlbXBsYXRlIGIvc3JjcGtncy9tdXNpa2N1 YmUvdGVtcGxhdGUKaW5kZXggYWNkZjUxNDUzYjhjOTQuLjljNGMxYWFhN2Y5ZmY0IDEwMDY0NAot LS0gYS9zcmNwa2dzL211c2lrY3ViZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL211c2lrY3ViZS90 ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ211c2lrY3ViZScK IHBrZ25hbWU9bXVzaWtjdWJlCiB2ZXJzaW9uPTMuMC4yCi1yZXZpc2lvbj0xCityZXZpc2lvbj0y CiBidWlsZF9zdHlsZT1jbWFrZQogbWFrZV9jbWQ9bWFrZQogY29uZmlndXJlX2FyZ3M9Ii1ETk9f TkNVUlNFU1c9MSIKCkZyb20gNDUxY2I4NjdkOGJlN2UzODc5MmFmZGFmMDZlNmYzOGFlODNmNTBj NSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNv bT4KRGF0ZTogRnJpLCAxMCBOb3YgMjAyMyAxNDo1Mzo0NSAtMDUwMApTdWJqZWN0OiBbUEFUQ0gg MDg5LzEwOF0gZWxlY3Ryb24yNDogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2Vs ZWN0cm9uMjQvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2VsZWN0cm9uMjQvdGVtcGxhdGUg Yi9zcmNwa2dzL2VsZWN0cm9uMjQvdGVtcGxhdGUKaW5kZXggZWFmYjlhMGM2OTYxMzEuLjQyYjU3 ZGM1MTJkODIyIDEwMDY0NAotLS0gYS9zcmNwa2dzL2VsZWN0cm9uMjQvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9lbGVjdHJvbjI0L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnZWxlY3Ryb24yNCcKIHBrZ25hbWU9ZWxlY3Ryb24yNAogdmVyc2lvbj0yNC4zLjAK LXJldmlzaW9uPTMKK3JldmlzaW9uPTQKIF9ub2RldmVyPTE4LjE0LjAKIF9jaHJvbWl1bXZlcj0x MTIuMC41NjE1LjE2NQogYXJjaHM9Ing4Nl82NCogYWFyY2g2NCoiCgpGcm9tIDdkNjI1MWU1Zjlk NGZhMmY0NzFmNDI3NjQ5MWMzMGMzMjk1M2U0MzAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IEZyaSwgMTAgTm92IDIwMjMgMTQ6 NTQ6MDAgLTA1MDAKU3ViamVjdDogW1BBVENIIDA5MC8xMDhdIGVsZWN0cm9uMTk6IHJldmJ1bXAg Zm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9lbGVjdHJvbjE5L3RlbXBsYXRlIHwgMiArLQogMSBm aWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9lbGVjdHJvbjE5L3RlbXBsYXRlIGIvc3JjcGtncy9lbGVjdHJvbjE5L3RlbXBsYXRl CmluZGV4IGIxZmRiNjNjYjY3ZDQ2Li44ODFmMDRkN2Q4MjViNyAxMDA2NDQKLS0tIGEvc3JjcGtn cy9lbGVjdHJvbjE5L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZWxlY3Ryb24xOS90ZW1wbGF0ZQpA QCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2VsZWN0cm9uMTknCiBwa2duYW1l PWVsZWN0cm9uMTkKIHZlcnNpb249MTkuMC44Ci1yZXZpc2lvbj00CityZXZpc2lvbj01CiBfbm9k ZXZlcj0xNi4xNC4yCiBfY2hyb21pdW12ZXI9MTAyLjAuNTAwNS4xMjUKIGFyY2hzPSJ4ODZfNjQq IGFhcmNoNjQqIHBwYzY0bGUqIgoKRnJvbSBkYjIwYzc0ODExNTBkMzkzMDNjNTEyZWUxZmFmOTI1 YTc5NDIyN2YxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVA Z21haWwuY29tPgpEYXRlOiBGcmksIDEwIE5vdiAyMDIzIDE0OjU0OjEzIC0wNTAwClN1YmplY3Q6 IFtQQVRDSCAwOTEvMTA4XSB3Zi1yZWNvcmRlcjogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBz cmNwa2dzL3dmLXJlY29yZGVyL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5z ZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy93Zi1yZWNvcmRl ci90ZW1wbGF0ZSBiL3NyY3BrZ3Mvd2YtcmVjb3JkZXIvdGVtcGxhdGUKaW5kZXggMDhmOTg2YjAz MTAwNjcuLjYzYzQ1Y2Y0YjgxNGQ3IDEwMDY0NAotLS0gYS9zcmNwa2dzL3dmLXJlY29yZGVyL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3Mvd2YtcmVjb3JkZXIvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICd3Zi1yZWNvcmRlcicKIHBrZ25hbWU9d2YtcmVjb3JkZXIK IHZlcnNpb249MC40LjEKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0eWxlPW1lc29u CiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgc2Nkb2Mgd2F5bGFuZC1kZXZlbCIKIG1ha2Vk ZXBlbmRzPSJ3YXlsYW5kLXByb3RvY29scyB3YXlsYW5kLWRldmVsIGZmbXBlZy1kZXZlbCBsaWJn Ym0tZGV2ZWwgeDI2NC1kZXZlbAoKRnJvbSBkMzNhM2M1OGUyMTIxYTdhNDQ4M2FiZTIxMjgxZTdl NjUzNDI2ZDAyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVA Z21haWwuY29tPgpEYXRlOiBGcmksIDEwIE5vdiAyMDIzIDE0OjU0OjI2IC0wNTAwClN1YmplY3Q6 IFtQQVRDSCAwOTIvMTA4XSBvYnM6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9v YnMvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVs ZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL29icy90ZW1wbGF0ZSBiL3NyY3BrZ3Mvb2Jz L3RlbXBsYXRlCmluZGV4IGZlYjk2NDk5NzdhOGQ0Li4wODg4ZmIzYWFhY2NmZSAxMDA2NDQKLS0t IGEvc3JjcGtncy9vYnMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9vYnMvdGVtcGxhdGUKQEAgLTEs NyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdvYnMnCiBwa2duYW1lPW9icwogdmVyc2lv bj0zMC4xLjEKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGFyY2hzPSJpNjg2KiB4ODZfNjQqIHBw YzY0bGUqIGFhcmNoNjQqIHJpc2N2NjQqIgogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9h cmdzPSItRE9CU19WRVJTSU9OX09WRVJSSURFPSR7dmVyc2lvbn0gLURFTkFCTEVfSkFDSz1PTgoK RnJvbSAzYzQzNTQ1NDcwYzU0ZTNmNGY2ZTk1MjA1ZDAxZGE2Njk2ZTJmMTQ0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBGcmks IDEwIE5vdiAyMDIzIDE0OjU0OjM2IC0wNTAwClN1YmplY3Q6IFtQQVRDSCAwOTMvMTA4XSBtbHQ3 OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvbWx0Ny90ZW1wbGF0ZSB8IDQgKyst LQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL21sdDcvdGVtcGxhdGUgYi9zcmNwa2dzL21sdDcvdGVtcGxhdGUKaW5k ZXggNjVlZWQ5OThkMzk4MzIuLjE5ZmUzNWQ0N2FmM2Q0IDEwMDY0NAotLS0gYS9zcmNwa2dzL21s dDcvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tbHQ3L3RlbXBsYXRlCkBAIC0xLDEzICsxLDEzIEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdtbHQ3JwogcGtnbmFtZT1tbHQ3CiB2ZXJzaW9uPTcuMjAu MAotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9h cmdzPSItRFNXSUdfUFlUSE9OPU9OIC1ETU9EX1FUNj1PTiIKIGhvc3RtYWtlZGVwZW5kcz0iZG94 eWdlbiBwa2ctY29uZmlnIGxhZHNwYS1zZGsgc3dpZyBweXRob24zIHdoaWNoCiAgcXQ1LWhvc3Qt dG9vbHMgcXQ1LXFtYWtlIHF0Ni1iYXNlIHF0Ni10b29scyIKIG1ha2VkZXBlbmRzPSJhbHNhLWxp Yi1kZXZlbCBmZm1wZWctZGV2ZWwgZ3RrKy1kZXZlbCBqYWNrLWRldmVsIGxhZHNwYS1zZGsKLSBs aWJleGlmLWRldmVsIGxpYnNhbXBsZXJhdGUtZGV2ZWwgbGlieG1sMi1kZXZlbCBzb3gtZGV2ZWwg U0RMX2ltYWdlLWRldmVsCisgbGliZXhpZi1kZXZlbCBsaWJzYW1wbGVyYXRlLWRldmVsIGxpYnht bDItZGV2ZWwgc294LWRldmVsIFNETDJfaW1hZ2UtZGV2ZWwKICBmZnR3LWRldmVsIGZyZWkwci1w bHVnaW5zIHB5dGhvbjMtZGV2ZWwgcHVsc2VhdWRpby1kZXZlbCBtb3ZpdC1kZXZlbAogIGxpYnZp ZHN0YWItZGV2ZWwgcXQ1LXN2Zy1kZXZlbCBxdDYtc3ZnLWRldmVsIHF0Ni1xdDVjb21wYXQtZGV2 ZWwiCiBkZXBlbmRzPSJtbHQ3LWRhdGE+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0gbGFkc3BhLXNk ay1leGFtcGxlLXBsdWdpbnMiCgpGcm9tIDkwMjNiZjM3MjM5YTkwZDU4MzYxNDg0MzY3NDRlNzll NTJmZTkwZTIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBn bWFpbC5jb20+CkRhdGU6IEZyaSwgMTAgTm92IDIwMjMgMTQ6NTQ6NDggLTA1MDAKU3ViamVjdDog W1BBVENIIDA5NC8xMDhdIHF0Ni1tdWx0aW1lZGlhOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0K IHNyY3BrZ3MvcXQ2LW11bHRpbWVkaWEvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwg MSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1t dWx0aW1lZGlhL3RlbXBsYXRlIGIvc3JjcGtncy9xdDYtbXVsdGltZWRpYS90ZW1wbGF0ZQppbmRl eCAwNDZjYzBiNDg2Y2NkYy4uM2E3M2ZlNGVlOTkyY2MgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcXQ2 LW11bHRpbWVkaWEvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9xdDYtbXVsdGltZWRpYS90ZW1wbGF0 ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3F0Ni1tdWx0aW1lZGlhJwog cGtnbmFtZT1xdDYtbXVsdGltZWRpYQogdmVyc2lvbj02LjcuMgotcmV2aXNpb249MQorcmV2aXNp b249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItRFFUX0ZFQVRVUkVfZ3N0 cmVhbWVyPU9OIgogaG9zdG1ha2VkZXBlbmRzPSJwZXJsIHF0Ni1kZWNsYXJhdGl2ZS1ob3N0LXRv b2xzIHBrZy1jb25maWcgcXQ2LXNoYWRlcnRvb2xzIgoKRnJvbSAwNDM1ZDVmMzY3YjZmYWRhNTRj YWNiM2Q3OGQyNzU3ZmRjNTczM2ZiIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGlj ZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBGcmksIDEwIE5vdiAyMDIzIDE1OjAwOjE1IC0w NTAwClN1YmplY3Q6IFtQQVRDSCAwOTUvMTA4XSBiYXJlc2lwOiByZXZidW1wIGZvciBmZm1wZWc2 CgotLS0KIHNyY3BrZ3MvYmFyZXNpcC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAx IGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYmFyZXNp cC90ZW1wbGF0ZSBiL3NyY3BrZ3MvYmFyZXNpcC90ZW1wbGF0ZQppbmRleCBlNmM4NDU2MzdiYjUw ZS4uNzQzYzU2N2FhY2Y1MGUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYmFyZXNpcC90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2JhcmVzaXAvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRl IGZpbGUgZm9yICdiYXJlc2lwJwogcGtnbmFtZT1iYXJlc2lwCiB2ZXJzaW9uPTMuMTEuMAotcmV2 aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0i cGtnLWNvbmZpZyBnbGliLWRldmVsIgogbWFrZWRlcGVuZHM9ImxpYmdzbS1kZXZlbCBsaWJwbmct ZGV2ZWwgb3BlbnNzbC1kZXZlbCBsaWJzbmRmaWxlLWRldmVsCgpGcm9tIGQ3NWYwMDVjMTNmNmVh ODE0NGUyZjYwNzkxZTU2NGY2YjBkYTA0M2QgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IEZyaSwgMTAgTm92IDIwMjMgMTU6MDI6 MzAgLTA1MDAKU3ViamVjdDogW1BBVENIIDA5Ni8xMDhdIFFNUGxheTI6IHJldmJ1bXAgZm9yIGZm bXBlZzYKCi0tLQogc3JjcGtncy9RTVBsYXkyL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5n ZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9R TVBsYXkyL3RlbXBsYXRlIGIvc3JjcGtncy9RTVBsYXkyL3RlbXBsYXRlCmluZGV4IDA1NGI3YmFk MDQ1MmY3Li4wNThkNjg1YWYwODdlZSAxMDA2NDQKLS0tIGEvc3JjcGtncy9RTVBsYXkyL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvUU1QbGF5Mi90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ1FNUGxheTInCiBwa2duYW1lPVFNUGxheTIKIHZlcnNpb249MjQuMDYu MTYKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBob3N0bWFrZWRl cGVuZHM9InBrZy1jb25maWcgcXQ1LXFtYWtlIHF0NS1ob3N0LXRvb2xzIgogbWFrZWRlcGVuZHM9 ImFsc2EtbGliLWRldmVsIGZmbXBlZy1kZXZlbCBsaWJhc3MtZGV2ZWwgbGliY2Rpby1kZXZlbCBs aWJnbWUtZGV2ZWwKCkZyb20gZjIzY2I5YTY4ZGM2MzQyNjcyNTI4Y2QyZDQ5MTU5ZmZkODNkOWNm OCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNv bT4KRGF0ZTogRnJpLCAxMCBOb3YgMjAyMyAxNTowMjozNCAtMDUwMApTdWJqZWN0OiBbUEFUQ0gg MDk3LzEwOF0gYWxzYS1wbHVnaW5zOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3Mv YWxzYS1wbHVnaW5zL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9u KCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hbHNhLXBsdWdpbnMvdGVt cGxhdGUgYi9zcmNwa2dzL2Fsc2EtcGx1Z2lucy90ZW1wbGF0ZQppbmRleCA0Yzg5MmVkNzMwZDlh NS4uYWYzNzA4Nzg1ZGJjMjEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYWxzYS1wbHVnaW5zL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvYWxzYS1wbHVnaW5zL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnYWxzYS1wbHVnaW5zJwogcGtnbmFtZT1hbHNhLXBsdWdpbnMK IHZlcnNpb249MS4yLjEyCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUt Y29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1kaXNhYmxlLW1hZW1vLXBsdWdpbiIKIGhvc3Rt YWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKCkZyb20gNzdmNTk0NGEyYWU0NzZhNWNiZGJjYzg3ZjA1 MDFhOTM2MDFmNGU5ZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNl NTU1QGdtYWlsLmNvbT4KRGF0ZTogRnJpLCAxMCBOb3YgMjAyMyAxNTowMjo0MyAtMDUwMApTdWJq ZWN0OiBbUEFUQ0ggMDk4LzEwOF0gbWluaWRsbmE6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQog c3JjcGtncy9taW5pZGxuYS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2Vy dGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbWluaWRsbmEvdGVt cGxhdGUgYi9zcmNwa2dzL21pbmlkbG5hL3RlbXBsYXRlCmluZGV4IDVmYTkyOWYzYTBjMTI0Li43 NDI5OTFlY2QwNGFmYyAxMDA2NDQKLS0tIGEvc3JjcGtncy9taW5pZGxuYS90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL21pbmlkbG5hL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnbWluaWRsbmEnCiBwa2duYW1lPW1pbmlkbG5hCiB2ZXJzaW9uPTEuMy4zCi1yZXZp c2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVf YXJncz0iCiAgLS1zYmluZGlyPS91c3IvYmluCgpGcm9tIDY0N2E5ZWFmZTI0YzVkZjNlYjdhZTU5 NzNkZTg2MTZlZGE4OTlmNWMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6 bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IE1vbiwgMjAgTm92IDIwMjMgMTc6NTc6NDcgLTA1MDAK U3ViamVjdDogW1BBVENIIDA5OS8xMDhdIG1wdjogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBz cmNwa2dzL21wdi90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigr KSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXB2L3RlbXBsYXRlIGIvc3Jj cGtncy9tcHYvdGVtcGxhdGUKaW5kZXggMzJkZDk1NmM2YmY2YjYuLmY4ZTkzZGI1MjNkOTJkIDEw MDY0NAotLS0gYS9zcmNwa2dzL21wdi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL21wdi90ZW1wbGF0 ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ21wdicKIHBrZ25hbWU9bXB2 CiB2ZXJzaW9uPTAuMzguMAotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9bWVz b24KIGNvbmZpZ3VyZV9hcmdzPSItRGNkZGE9ZW5hYmxlZCAtRGR2YmluPWVuYWJsZWQgLURkdmRu YXY9ZW5hYmxlZAogIC1EbGlibXB2PXRydWUgLURjcGx1Z2lucz1lbmFibGVkCgpGcm9tIDBjNzdh YjMzNzUzYThmMjVmNmIxZGY4ZWI3N2IwMGZlZjFmY2JmOWEgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IE1vbiwgMjAgTm92IDIw MjMgMTc6NTk6MjkgLTA1MDAKU3ViamVjdDogW1BBVENIIDEwMC8xMDhdIHFpbWd2OiByZXZidW1w IGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvcWltZ3YvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUg Y2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNw a2dzL3FpbWd2L3RlbXBsYXRlIGIvc3JjcGtncy9xaW1ndi90ZW1wbGF0ZQppbmRleCBkZDM0MWRm ZTFiZmNlOC4uOGE3ZTFjMDgxZWYxMmYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcWltZ3YvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9xaW1ndi90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ3FpbWd2JwogcGtnbmFtZT1xaW1ndgogdmVyc2lvbj0xLjAuMgotcmV2aXNp b249MworcmV2aXNpb249NAogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSIkKHZv cHRfaWYgdmlkZW8gLURWSURFT19TVVBQT1JUPU9OIC1EVklERU9fU1VQUE9SVD1PRkYpCiAgJCh2 b3B0X2lmIHNjYWxlIC1ET1BFTkNWX1NVUFBPUlQ9T04gLURPUEVOQ1ZfU1VQUE9SVD1PRkYpCgpG cm9tIDY1NzRjM2FjZmYyMDRlMjMyODFkYmU1NDc1M2MzMGU3Mzk2MDZjNTUgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IE1vbiwg MjAgTm92IDIwMjMgMTg6MDA6MzYgLTA1MDAKU3ViamVjdDogW1BBVENIIDEwMS8xMDhdIGtmaWxl bWV0YWRhdGE1OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3Mva2ZpbGVtZXRhZGF0 YTUvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVs ZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2tmaWxlbWV0YWRhdGE1L3RlbXBsYXRlIGIv c3JjcGtncy9rZmlsZW1ldGFkYXRhNS90ZW1wbGF0ZQppbmRleCBhMGM0ZDgwOTM5NTMyMy4uYjU4 NGY4NWZmMjA1OGIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mva2ZpbGVtZXRhZGF0YTUvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9rZmlsZW1ldGFkYXRhNS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ2tmaWxlbWV0YWRhdGE1JwogcGtnbmFtZT1rZmlsZW1ldGFkYXRh NQogdmVyc2lvbj01LjExNS4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1j bWFrZQogaG9zdG1ha2VkZXBlbmRzPSJrY29yZWFkZG9ucyBleHRyYS1jbWFrZS1tb2R1bGVzIHBr Zy1jb25maWcgcXQ1LWhvc3QtdG9vbHMgcXQ1LXFtYWtlCiAgZ2V0dGV4dCBrY29yZWFkZG9ucyBw eXRob24zIgoKRnJvbSBkNmRhMjg2Y2E0ZWUyNTFiMmE4M2IwYWUxZTY1MmMzMmZkZTBlMTk2IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpE YXRlOiBGcmksIDggRGVjIDIwMjMgMTE6NDY6MDEgLTA1MDAKU3ViamVjdDogW1BBVENIIDEwMi8x MDhdIHZiYS1tOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvdmJhLW0vdGVtcGxh dGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL3ZiYS1tL3RlbXBsYXRlIGIvc3JjcGtncy92YmEtbS90ZW1w bGF0ZQppbmRleCAzZDEzNWVmYTFkMGI2OS4uM2M1YTIwZGIwZmE5ODQgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvdmJhLW0vdGVtcGxhdGUKKysrIGIvc3JjcGtncy92YmEtbS90ZW1wbGF0ZQpAQCAtMiw3 ICsyLDcgQEAKIHBrZ25hbWU9dmJhLW0KIHJldmVydHM9MTI5Ml8yCiB2ZXJzaW9uPTIuMS45Ci1y ZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9 Ii1ERU5BQkxFX0dUSz1UUlVFIC1ERU5BQkxFX0ZGTVBFRz1UUlVFIC1ERU5BQkxFX0xJTks9VFJV RSAtRENNQUtFX0JVSUxEX1RZUEU9UmVsZWFzZSIKIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBw a2ctY29uZmlnIHVuemlwIHppcCB5YXNtIHd4V2lkZ2V0cy1ndGszLWRldmVsIgoKRnJvbSBhODRi N2ZiZjdiNzUzYzRjOTgwZTRjOTUzY2QzZWMzYTJjMGYxZjhmIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBGcmksIDggRGVjIDIw MjMgMTE6NDY6MTkgLTA1MDAKU3ViamVjdDogW1BBVENIIDEwMy8xMDhdIGRvbHBoaW4tZW11OiBy ZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvYXVkYWNpdHkvcGF0Y2hlcy9oc2Nyb2xs LnBhdGNoICAgIHwgMjYgKysrKysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvZG9scGhpbi1l bXUvcGF0Y2hlcy9pcHByb3RvLnBhdGNoIHwgMTMgKysrKysrKysrKysrCiBzcmNwa2dzL2RvbHBo aW4tZW11L3RlbXBsYXRlICAgICAgICAgICAgICB8ICAyICstCiAzIGZpbGVzIGNoYW5nZWQsIDQw IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dz L2F1ZGFjaXR5L3BhdGNoZXMvaHNjcm9sbC5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3Br Z3MvZG9scGhpbi1lbXUvcGF0Y2hlcy9pcHByb3RvLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9hdWRhY2l0eS9wYXRjaGVzL2hzY3JvbGwucGF0Y2ggYi9zcmNwa2dzL2F1ZGFjaXR5L3BhdGNo ZXMvaHNjcm9sbC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw MC4uMmUwODM3OTJkOGUxMTQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2F1ZGFjaXR5L3Bh dGNoZXMvaHNjcm9sbC5wYXRjaApAQCAtMCwwICsxLDI2IEBACistLS0gYS9saWJyYXJpZXMvbGli LXZpZXdwb3J0L1ZpZXdwb3J0LmNwcAkyMDI0LTA2LTAxIDA5OjI1OjU4LjkxNTg1NTA1NyAtMDQw MAorKysrIGIvbGlicmFyaWVzL2xpYi12aWV3cG9ydC9WaWV3cG9ydC5jcHAJMjAyNC0wNi0wMSAx MTowNjowOC43Nzk3OTk1ODkgLTA0MDAKK0BAIC0zMjYsMTAgKzMyNiwxMCBAQAorICAgIGJvb2wg bmV3dnN0YXRlID0gcGFuZWxIZWlnaHQgPCB0b3RhbEhlaWdodDsKKworICAgIC8vIEhpZGUgc2Ny b2xsYmFyIHRodW1icyBhbmQgYnV0dG9ucyBpZiBub3Qgc2Nyb2xsYWJsZQorLSAgIGlmIChtcENh bGxiYWNrcykgeworLSAgICAgIG1wQ2FsbGJhY2tzLT5TaG93SG9yaXpvbnRhbFNjcm9sbGJhcihu ZXdoc3RhdGUpOworLSAgICAgIG1wQ2FsbGJhY2tzLT5TaG93VmVydGljYWxTY3JvbGxiYXIobmV3 dnN0YXRlKTsKKy0gICB9CisrICAgLy9pZiAobXBDYWxsYmFja3MpIHsKKysgICAvLyAgIG1wQ2Fs bGJhY2tzLT5TaG93SG9yaXpvbnRhbFNjcm9sbGJhcihuZXdoc3RhdGUpOworKyAgIC8vICAgbXBD YWxsYmFja3MtPlNob3dWZXJ0aWNhbFNjcm9sbGJhcihuZXd2c3RhdGUpOworKyAgIC8vfQorCisg ICAgLy8gV2hlbiBub3Qgc2Nyb2xsYWJsZSBpbiBlaXRoZXIgYXhpcywgYWxpZ24gdmlld3BvcnQg dG8gdG9wIG9yIGxlZnQgYW5kCisgICAgLy8gcmVwYWludCBpdCBsYXRlcgorQEAgLTM3OCw3ICsz NzgsNyBAQAorICAgICAgICAgIHRvdGFsSGVpZ2h0IC8gc2Nyb2xsU3RlcCwKKyAgICAgICAgICBw YW5lbEhlaWdodCAvIHNjcm9sbFN0ZXAsIHRydWUpOworCistICAgcmVzY3JvbGwgPSAocmVzY3Jv bGwgJiYKKysgICByZXNjcm9sbCA9IChyZXNjcm9sbCB8fAorICAgICAgICAodmlld0luZm8uR2V0 U2NyZWVuRW5kVGltZSgpIC0gdmlld0luZm8uaHBvcykgPCB0b3RhbCk7CisgICAgUHVibGlzaCh7 IChyZWZyZXNoIHx8IHJlc2Nyb2xsKSwKKyAgICAgICAob2xkaHN0YXRlICE9IG5ld2hzdGF0ZSB8 fCBvbGR2c3RhdGUgIT0gbmV3dnN0YXRlKSwgZmFsc2UgfSk7CmRpZmYgLS1naXQgYS9zcmNwa2dz L2RvbHBoaW4tZW11L3BhdGNoZXMvaXBwcm90by5wYXRjaCBiL3NyY3BrZ3MvZG9scGhpbi1lbXUv cGF0Y2hlcy9pcHByb3RvLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw MDAwMDAwLi42N2MzNzFmMGI2YTkwMAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZG9scGhp bi1lbXUvcGF0Y2hlcy9pcHByb3RvLnBhdGNoCkBAIC0wLDAgKzEsMTMgQEAKKy0tLSBhL1NvdXJj ZS9Db3JlL0NvcmUvSFcvRVhJL0JCQS9CdWlsdEluLmgJMjAyMy0wNS0xMSAxNzowMjozMC4wMDAw MDAwMDAgLTA0MDAKKysrKyBiL1NvdXJjZS9Db3JlL0NvcmUvSFcvRVhJL0JCQS9CdWlsdEluLmgJ MjAyNC0wNi0wNCAwOToyNDoxOS40NzYyNjIzNDUgLTA0MDAKK0BAIC0yMCw5ICsyMCw2IEBACisg Y29uc3RleHByIHUxNiBUQ1BfRkxBR19GSU4gPSAweDE7CisgY29uc3RleHByIHUxNiBUQ1BfRkxB R19SU1QgPSAweDQ7CisgCistY29uc3RleHByIHUxNiBJUF9QUk9UT0NPTCA9IDB4ODAwOworLWNv bnN0ZXhwciB1MTYgQVJQX1BST1RPQ09MID0gMHg4MDY7CistCisgY29uc3RleHByIHU4IE1BWF9U Q1BfQlVGRkVSID0gNDsKKyBjb25zdGV4cHIgdTE2IE1BWF9VRFBfTEVOR1RIID0gMTUwMDsKKyBj b25zdGV4cHIgdTE2IE1BWF9UQ1BfTEVOR1RIID0gNDQwOworCmRpZmYgLS1naXQgYS9zcmNwa2dz L2RvbHBoaW4tZW11L3RlbXBsYXRlIGIvc3JjcGtncy9kb2xwaGluLWVtdS90ZW1wbGF0ZQppbmRl eCA4NjJkM2FlOTY0ZWVjNC4uYTdhZTBlZmI1OGZiNzUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZG9s cGhpbi1lbXUvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kb2xwaGluLWVtdS90ZW1wbGF0ZQpAQCAt MSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2RvbHBoaW4tZW11JwogcGtnbmFtZT1k b2xwaGluLWVtdQogdmVyc2lvbj01LjAuMTkzNjgKLXJldmlzaW9uPTMKK3JldmlzaW9uPTQKIF9k b2xwaGluX2NvbW1pdD1kYWRiZWI0YmFlN2U3ZmEyM2FmMmI0NmUwYWRkNDE0MzA5NGRjMTA3CiBf bWdiYV9jb21taXQ9NDRlMDc0YTE1ZTk2NTE0ODFmN2Y2NTJhYzAwNmE3YzlkNThjYmViOQogX2dv b2dsZXRlc3RfY29tbWl0PWJlMDNkMDBmNWYwY2MzYTk5N2QxYTM2OGJlZThhMWZlOTM2NTFmNDgK CkZyb20gYWFmYTc4M2Q5YTQ5YWExOGJmYTBlMjc1ZTlkZWRiZWVkYWZjYTE3MCBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogVHVl LCAxOSBEZWMgMjAyMyAxNTozODo1MSAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggMTA0LzEwOF0gcXRv eDogcmV2YnVtcCBmb3IgZmZtcGVnNAoKLS0tCiBzcmNwa2dzL3F0b3gvdGVtcGxhdGUgfCA0ICsr LS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9xdG94L3RlbXBsYXRlIGIvc3JjcGtncy9xdG94L3RlbXBsYXRlCmlu ZGV4IGJiNzBlN2Y1MTI0MGE0Li43NTVlNDQ2MmJjMDEzNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9x dG94L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcXRveC90ZW1wbGF0ZQpAQCAtMSwxMyArMSwxMyBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncXRveCcKIHBrZ25hbWU9cXRveAogdmVyc2lvbj0xLjE3 LjYKLXJldmlzaW9uPTMKK3JldmlzaW9uPTQKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVf YXJncz0iLURVUERBVEVfQ0hFQ0s9T0ZGCiAgLURHSVRfREVTQ1JJQkU9JHt2ZXJzaW9ufQogICQo dm9wdF9pZiBzbm9yZW5vdGlmeSAtRERFU0tUT1BfTk9USUZJQ0FUSU9OUz1PTikiCiBob3N0bWFr ZWRlcGVuZHM9InBrZy1jb25maWcgcXQ1LWhvc3QtdG9vbHMgcXQ1LWRldmVsIgotbWFrZWRlcGVu ZHM9ImZmbXBlZy1kZXZlbCBsaWJleGlmLWRldmVsIGxpYm9wZW5hbC1kZXZlbCBsaWJzb2RpdW0t ZGV2ZWwKK21ha2VkZXBlbmRzPSJmZm1wZWc0LWRldmVsIGxpYmV4aWYtZGV2ZWwgbGlib3BlbmFs LWRldmVsIGxpYnNvZGl1bS1kZXZlbAogIGxpYnZweC1kZXZlbCBvcHVzLWRldmVsIHFyZW5jb2Rl LWRldmVsIHF0NS1zdmctZGV2ZWwgc29ubmV0LWRldmVsCiAgc3FsY2lwaGVyLWRldmVsIHRveGNv cmUtZGV2ZWwKICAkKHZvcHRfaWYgc25vcmVub3RpZnkgc25vcmVub3RpZnktZGV2ZWwpIgoKRnJv bSBhNzI4Yzg5Y2NlYzQ1MDZiMGE2ZmI3N2U0ZDIzMGRlN2UyOWUxNGJiIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBUaHUsIDEx IEphbiAyMDI0IDExOjUyOjAwIC0wNTAwClN1YmplY3Q6IFtQQVRDSCAxMDUvMTA4XSBhcmNhbjog cmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2FyY2FuL3RlbXBsYXRlIHwgMiArLQog MSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9hcmNhbi90ZW1wbGF0ZSBiL3NyY3BrZ3MvYXJjYW4vdGVtcGxhdGUKaW5kZXgg ZmY5MDkxZjkwZWJiMTAuLjAzMDA5MWE2Y2M5ZDBjIDEwMDY0NAotLS0gYS9zcmNwa2dzL2FyY2Fu L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYXJjYW4vdGVtcGxhdGUKQEAgLTIsNyArMiw3IEBACiAj ICEhIGtlZXAgc3luY2VkIHdpdGg6IGFjZmdmcyBhY2xpcCBhbG9hZGltYWdlCiBwa2duYW1lPWFy Y2FuCiB2ZXJzaW9uPTAuNi4yLjEKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGNyZWF0ZV93cmtz cmM9eWVzCiBidWlsZF93cmtzcmM9YXJjYW4vc3JjCiBidWlsZF9zdHlsZT1jbWFrZQoKRnJvbSBm NzVlZTNmOGJhMzhmMTAwZTUzZDhlN2RiNDU5ODY5Mjk2YWZjZTVhIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBUaHUsIDExIEph biAyMDI0IDExOjUyOjEwIC0wNTAwClN1YmplY3Q6IFtQQVRDSCAxMDYvMTA4XSBub3RjdXJzZXM6 IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9ub3RjdXJzZXMvdGVtcGxhdGUgfCAy ICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL25vdGN1cnNlcy90ZW1wbGF0ZSBiL3NyY3BrZ3Mvbm90Y3Vyc2VzL3Rl bXBsYXRlCmluZGV4IDQ4YTc0NjNjYjY4ZWI5Li41MTVmMzE2YWI0NTc2YyAxMDA2NDQKLS0tIGEv c3JjcGtncy9ub3RjdXJzZXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9ub3RjdXJzZXMvdGVtcGxh dGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdub3RjdXJzZXMnCiBwa2du YW1lPW5vdGN1cnNlcwogdmVyc2lvbj0zLjAuOQotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVp bGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItRFVTRV9TVEFUSUM9T04gLURVU0VfUVJD T0RFR0VOPU9uICQodm9wdF9ib29sIG1hbiBVU0VfUEFORE9DKSIKIGhvc3RtYWtlZGVwZW5kcz0i cGtnLWNvbmZpZyAkKHZvcHRfaWYgbWFuIHBhbmRvYykiCgpGcm9tIDI1NTMyOTI2MGZmNTI5NzEw NDg1MDc0ODJjMmRjZjRjYmM0NWNjMTAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHps aWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IE1vbiwgMyBKdW4gMjAyNCAxOTo0NToyOSAt MDQwMApTdWJqZWN0OiBbUEFUQ0ggMTA3LzEwOF0gbXBkOiByZXZidW1wIGZvciBmZm1wZWc2Cgot LS0KIHNyY3BrZ3MvbXBkL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0 aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tcGQvdGVtcGxhdGUg Yi9zcmNwa2dzL21wZC90ZW1wbGF0ZQppbmRleCBiOGUyYmQ0YzFiNTljOC4uZGMzNDY5OTdhOTA5 N2UgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbXBkL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbXBkL3Rl bXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbXBkJwogcGtnbmFt ZT1tcGQKIHZlcnNpb249MC4yMy4xNQotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5 bGU9bWVzb24KIGNvbmZpZ3VyZV9hcmdzPSItRG9wdXM9ZW5hYmxlZCAtRG1pa21vZD1lbmFibGVk IC1EbmVpZ2hib3I9dHJ1ZQogIC1Ec291bmRjbG91ZD1lbmFibGVkIC1EcGlwZT10cnVlIC1EdHdv bGFtZT1lbmFibGVkIC1EYnppcDI9ZW5hYmxlZAoKRnJvbSBjZmJjYTAzOWI1MmEyNGU5ODFkMzVh MjA4ZTlkODEwMDZkNTYyNjJiIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8 emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBUdWUsIDQgSnVuIDIwMjQgMDk6MDU6MTggLTA0MDAK U3ViamVjdDogW1BBVENIIDEwOC8xMDhdIGtmNi1rZmlsZW1ldGFkYXRhOiByZXZidW1wIGZvciBm Zm1wZWc2CgotLS0KIHNyY3BrZ3Mva2Y2LWtmaWxlbWV0YWRhdGEvdGVtcGxhdGUgfCAyICstCiAx IGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2tmNi1rZmlsZW1ldGFkYXRhL3RlbXBsYXRlIGIvc3JjcGtncy9rZjYta2ZpbGVt ZXRhZGF0YS90ZW1wbGF0ZQppbmRleCBlMTY5MzVhYTUyYjUxYi4uYjJlOWM1YjU5ZGQ1NTQgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3Mva2Y2LWtmaWxlbWV0YWRhdGEvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9rZjYta2ZpbGVtZXRhZGF0YS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ2tmNi1rZmlsZW1ldGFkYXRhJwogcGtnbmFtZT1rZjYta2ZpbGVtZXRhZGF0YQog dmVyc2lvbj02LjMuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UK IGNvbmZpZ3VyZV9hcmdzPSItREtERV9JTlNUQUxMX1FUUExVR0lORElSPWxpYi9xdDYvcGx1Z2lu cyIKIGhvc3RtYWtlZGVwZW5kcz0iZXh0cmEtY21ha2UtbW9kdWxlcyBxdDYtdG9vbHMgcXQ2LWJh c2UK --===============5493383780482214509==--