From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=0.3 required=5.0 tests=ALL_TRUSTED,DKIM_ADSP_NXDOMAIN, NO_DNS_FOR_FROM,T_SCC_BODY_TEXT_LINE,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 3172329450 for ; Tue, 4 Jun 2024 16:07:16 +0200 (CEST) Content-Type: multipart/mixed; boundary="===============5687929094384629480==" 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, 04 Jun 2024 16:07:16 +0200 List-Id: Message-Id: <20240604140716.3172329450@inbox.vuxu.org> GitHub notification mails are now in MIME to allow UTF8. --===============5687929094384629480== 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+IHR5IHlvc2gNCi0ga29kaQ0KLSBtbHQgKG9ubHkgZGVwIGxlZnQgaXMgZmxv d2JsYWRlIC0gZmxvd2JsYWRlIDIuMTIuMC4yIHdpdGggbWx0Ny1weXRob24zIGNhbiAncmVuZGVy JyB2aWRlb3Mgd2l0aCBjcHUgYW5kIGdwdSAtIH5+aHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGlu dXgvdm9pZC1wYWNrYWdlcy9wdWxsLzQ3MTk1fn4gaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGlu dXgvdm9pZC1wYWNrYWdlcy9wdWxsLzUwMzg1KQ0KLSB+fnN5bmZpZyAobWx0KX5+ICh3b3JrIHdp dGggbWx0NywgYnVtcCBzeW5maWdzdHVkaW8pDQotIHR2aGVhZGVuZCAoZG93bmxvYWQgcGFnZSBy ZWNvbW1lbmRzIHVzaW5nIDQuMyB3aGljaCBjb21waWxlcyBmaW5lLCA0LjQgZXRhIGlzIFExIDIw MjQpDQotIH5+c3Nyfn4gKHBhdGNoZXMpDQotIH5+c3Blay1hbHRlcm5hdGl2ZX5+IChyZXBsYWNl IHdpdGggc3Blay14KQ0KLSB+fnBwc3NwcH5+IH5+KDEuMTcuMSBpcyBvdXQsIGJ1dCB0aGVyZSdz IDUrIGRpc3RmaWxlcyB0aGF0IGFyZSBhbGwgZ2l0IGNvbW1pdHMpfn4gKG1pbm9yIHBhdGNoKQ0K LSBvbGl2ZSAoaGFzIGJlZW4gaW4gYWxwaGEgc2luY2UgMjAyMCwgc2VlbXMgdGhleSBkbyBuaWdo dGx5IGJ1aWxkcyBhbmQgYXBwaW1hZ2VzKQ0KLSBtb2MNCi0gbWVkaWFzdHJlYW1lciAobGlucGhv bmUgbGlua3MgYXJlIGRlYWQsIGNoYW5nZWQgdG8gZ2l0aHViIGJlbGxhZG9ubmUuIHRoZWlyIHN0 dWZmIG5ldmVyIHdvcmtlZCBmb3IgbWUgYnV0IHRoZXJlIGFyZSB1cGRhdGVzIGlmIHNvbWVvbmUg d2FudHMgdG8gZ2l2ZSBpdCBhIHRyeSkNCi0gfn5saWJleHRyYWN0b3IgKDEuMTMgY29tcGlsZXMs IHJlbW92ZSBleGl2MiBwYXRjaCl+fiAoYXMgeW9zaCBwb2ludGVkIG91dCwgMS4xMyBqdXN0IHJl bW92ZXMgZmZtcGVnIGJpdHMpDQotIGlkamMgKDAuOS44IGNvbXBpbGVzLCByZW1vdmUgcHl0aG9u My4xMCBwYXRjaCwgbmVlZHMgbWFrZWRlcGVuZHMgbGliZWJ1cjEyOC1kZXZlbCBhbmQgbGlic2hv dXQtaWRqYyAyLjQuNiB3aXRoICctcjEnIGZvciBkaXN0ZmlsZSAtIGh0dHBzOi8vZ2l0aHViLmNv bS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC80ODk0NCkNCi0gaGVkZ2V3YXJzDQotIH5+ ZmZtcGVndGh1bWJuYWlsZXJ+fiAocGF0Y2hlcyBmb3IgbW92aWVkZWNvZGVyLnh4eCBmaWxlcykN Ci0gfn5mZm1wZWd0aHVtYnN+fiAobGF0ZXN0IGNvbXBpbGVzKQ0KLSBkZWFkYmVlZiAoMS45LjYg bWF5IHdvcmsgYnV0IHJlcXVpcmVzIGxpYmRpc3BhdGNoIGZyb20gYXBwbGUpDQotIH5+b214cGxh eWVyfn4gKHBhY2thZ2UgcmVtb3ZlZCwgZGVwcmVjYXRlZCBpbiBmYXZvciBvZiB2bGMpDQotIHF0 YXYgKGZvcmsgaGFzIGZmbXBlZyA1IHBhdGNoIC0gaHR0cHM6Ly9naXRodWIuY29tL2NtZ3VvL1F0 QVYpDQotIGB2bGNgICh2bGM0IHdpbGwgc3VwcG9ydCBmZm1wZWc1LCB0aGVyZSdzIGEgcGF0Y2gg dG8gYnVpbGQgMy54IHdpdGggZmZtcGVnNSBidXQgaXQgd2lsbCBsYWNrIHZhYXBpKQ0KLSBgb3Nn YCAoT3BlblNjZW5lR3JhcGggcGx1cyBgeGluZS1saWJgKSAocGF0Y2hlcyBmcm9tIG9zZyBpc3N1 ZSBidWlsZCB3aXRoIGZmbXBlZzYsIFtmZm1wZWc1LnBhdGNoLnR4dF0oaHR0cHM6Ly9naXRodWIu Y29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9maWxlcy8xNDc0MzI0Ni9mZm1wZWc1LnBhdGNo LnR4dCkpDQoNCg0KDQojIyMjIyBIQVZFIE5PVCBCVUlMVCBZRVQNCg0KLSB+fm9teHBsYXllciAo cnBpIG9ubHk/IGZmbXBlZzQpfn4gKHJlbW92ZWQpDQotIGtvZGkgKGJpZywgYnV0IGZmbXBlZzQp DQoNCg0KIyMjIyMgVVBEQVRFRCAoZm9yIGZmbXBlZzYpDQoNCi0gfn5ibGVuZGVyOiB1cGRhdGUg dG8gMy41LjF+fiB+fndpbGwgYmUgcmV2YnVtcCB3aXRofn4gaHR0cHM6Ly9naXRodWIuY29tL3Zv aWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzQzOTkyDQotIHVucGFwZXI6IHVwZGF0ZSB0byA3 LjAuMC4NCi0gZ3V2Y3ZpZXc6IHVwZGF0ZSB0byAyLjAuOC4NCi0gfn5xdDU6IHVwZGF0ZSB0byA1 LjE1Ljh+fiB1cGRhdGVkIGJ5IGFub3RoZXIgUFIgdG8gNS4xNS4xMQ0KLSB+fnF0NS13ZWJlbmdp bmU6IHVwZGF0ZSB0byA1LjE4LjE1fn4gdXBkYXRlZCBieSBhbm90aGVyIFBSIHRvIDUuMTUuMTYg KHNvbWUgcGF0Y2hpbmcgZm9yIGZmbXBlZyBidWlsZCkNCi0gfn5zaGlib2tlbjI6IHJldmJ1bXAg Zm9yIHF0NS4xNS44IChwYXRjaCl+fiB1cGRhdGVkIGJ5IGFub3RoZXIgUFIgdG8gNS4xNS4xMA0K LSB+fnB5dGhvbjMtcHlzaWRlMjogdXBkYXRlIHRvIDUuMTUuOCAocGF0Y2gpfn4gdXBkYXRlZCBi eSBhbm90aGVyIFBSIHRvIDUuMTUuMTANCi0gTmV3IHBhY2thZ2U6IHNwZXgteCByZXBsYWNlcyBz cGVrLWFsdGVybmF0aXZlIGZvciBmZm1wZWctNi4wDQoNCg0KIyMjIyMgUmVxdWlyZW1lbnRzDQoN Ci0gfn5bZ3N0cmVhbWVyIDEuMjIuMl0oaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9p ZC1wYWNrYWdlcy9wdWxsLzQyODYxKX5+IC0gYSBmZXcgcGFja2FnZXMgdXNlIGZmbXBlZy1kZXZl bCBhbmQgcmVxdWlyZSBhIHJldmJ1bXANCg0KLSB+fltJbnRlbCBQYWNrYWdlc10oaHR0cHM6Ly9n aXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzQxMTMyKSBbSW50ZWwgUGFj a2FnZXMgdjJdKGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVs bC80NzMzMCkgLSBmZm1wZWc0IHVzZXMgZGlmZmVyZW50IGxpYnJhcmllcyB0aGFuIDYgKGxpYm1m eCAvIEludGVsLU1lZGlhU0RLIHZzIG9ubHkgb25lVlBMIHRoYXQgSW50ZWwgaXMgbW92aW5nIHRv KSwgYm90aCBhcmUgaW5jbHVkZWQgaGVyZX5+LiBVc2luZyByZXBsYWNlbWVudCBvbmVWUEwgZnJv bSBPQlMgdXBkYXRlLg0KDQotIH5+W3Nob3RjdXQgMjMuMDUuMTRdKGh0dHBzOi8vZ2l0aHViLmNv bS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC80NDI2MCl+fg0KDQotIGh0dHBzOi8vZ2l0 aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC80NDc4MSB3aWxsIHJlbW92ZSBm cm9tIHRoaXMgUFIKCkEgcGF0Y2ggZmlsZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxp bnV4L3ZvaWQtcGFja2FnZXMvcHVsbC80Mzc2MS5wYXRjaCBpcyBhdHRhY2hlZA== --===============5687929094384629480== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-ffmpeg6-split-43761.patch" RnJvbSA3N2IxM2E2NjE3ZTBkZThlMzBmZTdkNTg2ODlmNzhjMWJmMGRlZTc0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBTdW4s IDE1IE9jdCAyMDIzIDIxOjE2OjU2IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMDEvMTA5XSBmZm1w ZWc6IHVwZGF0ZSB0byA2LjAuMS4KCi0tLQogY29tbW9uL3NobGlicyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgMjYgKysrKy0tLQogc3JjcGtncy9mZm1wZWcvZmlsZXMvYWx0aXZl Yy5wYXRjaCAgICAgICAgICAgIHwgNjAgLS0tLS0tLS0tLS0tLS0tCiAuLi4vcGF0Y2hlcy9hcm12 NXRlbC1mbG9hdGluZy1wb2ludC5wYXRjaCAgICAgfCAxOCAtLS0tLQogc3JjcGtncy9mZm1wZWcv cGF0Y2hlcy9iaW51dGlscy0yLjQxLnBhdGNoICAgIHwgNzMgLS0tLS0tLS0tLS0tLS0tLS0tLQog Li4uaC1saWJhdmNvZGVjLWxpYnN2dGF2MS10ZW5fYml0X2Zvcm1hdC5kaWZmIHwgNDAgLS0tLS0t LS0tLQogc3JjcGtncy9mZm1wZWcvcGF0Y2hlcy9xc3YucGF0Y2ggICAgICAgICAgICAgIHwgMTUg KysrKwogc3JjcGtncy9mZm1wZWcvcGF0Y2hlcy9xdDYtd2ViZW5naW5lLnBhdGNoICAgIHwgMzYg KysrKysrKysrCiAuLi4vd29ya2Fyb3VuZC1tZXNhLXJlYWRlb24tdmFhcGktYnVnLnBhdGNoICAg fCAyOCAtLS0tLS0tCiBzcmNwa2dzL2ZmbXBlZy90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAg ICAgfCAzOCArKysrKy0tLS0tCiA5IGZpbGVzIGNoYW5nZWQsIDg3IGluc2VydGlvbnMoKyksIDI0 NyBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2ZmbXBlZy9maWxlcy9h bHRpdmVjLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9mZm1wZWcvcGF0Y2hlcy9h cm12NXRlbC1mbG9hdGluZy1wb2ludC5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mv ZmZtcGVnL3BhdGNoZXMvYmludXRpbHMtMi40MS5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3MvZmZtcGVnL3BhdGNoZXMvcGF0Y2gtbGliYXZjb2RlYy1saWJzdnRhdjEtdGVuX2JpdF9m b3JtYXQuZGlmZgogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZmZtcGVnL3BhdGNoZXMvcXN2 LnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9mZm1wZWcvcGF0Y2hlcy9xdDYtd2Vi ZW5naW5lLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9mZm1wZWcvcGF0Y2hlcy93 b3JrYXJvdW5kLW1lc2EtcmVhZGVvbi12YWFwaS1idWcucGF0Y2gKCmRpZmYgLS1naXQgYS9jb21t b24vc2hsaWJzIGIvY29tbW9uL3NobGlicwppbmRleCAyNzliZjEwZDc3ZDI2ZS4uMWFlOGRhNmU4 YjM3MjYgMTAwNjQ0Ci0tLSBhL2NvbW1vbi9zaGxpYnMKKysrIGIvY29tbW9uL3NobGlicwpAQCAt MzkxLDE1ICszOTEsMjMgQEAgbGliaWQzdGFnLnNvLjAgbGliaWQzdGFnLTAuMTUuMWJfMQogbGli 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 CiAJCXZtb3ZlIHVzci9saWIvcGtnY29uZmlnCgpGcm9tIDE5YjUwZjNhNmRjMGNlY2QyOWM0ZGYz MTE0MjYzZGUwYTZjYmIwNWEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6 bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFN1biwgMTUgT2N0IDIwMjMgMjE6MTg6MTQgLTA0MDAK U3ViamVjdDogW1BBVENIIDAwMi8xMDldIG9wZW5zaG90OiByZXZidW1wIGZvciBmZm1wZWc2Cgot LS0KIHNyY3BrZ3Mvb3BlbnNob3QvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBp bnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL29wZW5zaG90 L3RlbXBsYXRlIGIvc3JjcGtncy9vcGVuc2hvdC90ZW1wbGF0ZQppbmRleCAzODQ5ODU4ZmU5NjNi NS4uMTI3ODliYzk4Njc0OTkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvb3BlbnNob3QvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9vcGVuc2hvdC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ29wZW5zaG90JwogcGtnbmFtZT1vcGVuc2hvdAogdmVyc2lvbj0zLjEuMQot cmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9cHl0aG9uMy1tb2R1bGUKIGhvc3Rt YWtlZGVwZW5kcz0icHl0aG9uMyBweXRob24zLXNldHVwdG9vbHMiCiBtYWtlZGVwZW5kcz0iZmZt cGVnLWRldmVsIHB5dGhvbjMtUHlRdDUiCgpGcm9tIDdkZDY2MTQ1NmEzMDkxN2ZlODFjN2Q4OGEz NTIyYjVlZTRkMzM0NGQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGlj ZTU1NUBnbWFpbC5jb20+CkRhdGU6IFN1biwgMTUgT2N0IDIwMjMgMjE6MTg6MzYgLTA0MDAKU3Vi amVjdDogW1BBVENIIDAwMy8xMDldIHN1bW86IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3Jj cGtncy9zdW1vL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCsp LCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zdW1vL3RlbXBsYXRlIGIvc3Jj cGtncy9zdW1vL3RlbXBsYXRlCmluZGV4IGE3MzBhZmE5ZmFmYTkyLi5lMmRlZjA2ZmE0YmQ3ZCAx MDA2NDQKLS0tIGEvc3JjcGtncy9zdW1vL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvc3Vtby90ZW1w bGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3N1bW8nCiBwa2duYW1l PXN1bW8KIHZlcnNpb249MS4xMi4wCi1yZXZpc2lvbj03CityZXZpc2lvbj04CiBidWlsZF9zdHls ZT1jbWFrZQogaG9zdG1ha2VkZXBlbmRzPSJsaWJnZGFsLXRvb2xzIHBrZy1jb25maWcgc3dpZyBw eXRob24zLXNldHVwdG9vbHMiCiBtYWtlZGVwZW5kcz0icHl0aG9uMy1kZXZlbCBmZm1wZWctZGV2 ZWwgZm94LWRldmVsIGdsMnBzLWRldmVsIGxpYmdkYWwtZGV2ZWwKCkZyb20gOTJlZjM4ODllNWQ4 ZjU1Yjc2MGE0NjQ0OTlmMzY3NGQ3ZTQyNmE3OSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAxOTo1 NjoyMiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDA0LzEwOV0gTmV3IHBhY2thZ2U6IGZmbXBlZzQt 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 CitmZm1wZWc0ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQoKRnJvbSBmMDZmN2FhOGJkOTAz ZTNhYmNkNWI5ZTMyOTMxNTYyNzFmNWM5NTVhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDE5OjU5 OjA0IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMDUvMTA5XSBvcGVuY3Y6IHVwZGF0ZSB0byA0Ljcu MC4KCi0tLQogY29tbW9uL3NobGlicyAgICAgICAgICAgfCAxMDQgKysrKysrKysrKysrKysrKysr KystLS0tLS0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy9vcGVuY3YvdGVtcGxhdGUgfCAgIDggKyst LQogMiBmaWxlcyBjaGFuZ2VkLCA1NiBpbnNlcnRpb25zKCspLCA1NiBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9jb21tb24vc2hsaWJzIGIvY29tbW9uL3NobGlicwppbmRleCAxYWU4ZGE2ZThi MzcyNi4uMWZlMjgxY2I2ZmVhNWQgMTAwNjQ0Ci0tLSBhL2NvbW1vbi9zaGxpYnMKKysrIGIvY29t bW9uL3NobGlicwpAQCAtMjE4MCw1OCArMjE4MCw1OCBAQCBsaWJjYXBzdG9uZS5zby41IGNhcHN0 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 aGVjaz1ubwoKRnJvbSAyNTBjNGVlODg5ZTQxZDVjZWU2ZDgxZTQ3OTg1YWQ0MWZjOTUwOTI5IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpE YXRlOiBXZWQsIDIyIE1hciAyMDIzIDE5OjU5OjQ1IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMDYv MTA5XSBhY3Rpb25hOiByZXZidW1wIGZvciBvcGVuY3YtNC43LjAKCi0tLQogc3JjcGtncy9hY3Rp b25hL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRl bGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hY3Rpb25hL3RlbXBsYXRlIGIvc3JjcGtn cy9hY3Rpb25hL3RlbXBsYXRlCmluZGV4IGNmNWYwYjdhMmFlNjEwLi4wZDg5OTMxMWU2ZGY3NSAx MDA2NDQKLS0tIGEvc3JjcGtncy9hY3Rpb25hL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYWN0aW9u YS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2FjdGlvbmEn CiBwa2duYW1lPWFjdGlvbmEKIHZlcnNpb249My4xMC4xCi1yZXZpc2lvbj0yCityZXZpc2lvbj0z CiBidWlsZF9zdHlsZT1xbWFrZQogY29uZmlndXJlX2FyZ3M9IlBLR0NPTkZJR19PUEVOQ1Y9b3Bl bmN2NCIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBxdDUtcGx1Z2luLW15c3FsIHF0NS1x bWFrZSBxdDUtaG9zdC10b29scyIKCkZyb20gOGYxYTlmOWMyOWE3NDZhM2Q0ZWU1MDRhODgzN2Vh OGE5ZTI0NDU2NCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1 QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAxOTo1OTo0NiAtMDQwMApTdWJqZWN0 OiBbUEFUQ0ggMDA3LzEwOV0gcmV0cm9zaGFyZTogcmV2YnVtcCBmb3Igb3BlbmN2LTQuNy4wCgot LS0KIHNyY3BrZ3MvcmV0cm9zaGFyZS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAx IGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcmV0cm9z aGFyZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvcmV0cm9zaGFyZS90ZW1wbGF0ZQppbmRleCAzNWEyNzMy Yzc3ZjYzNC4uMzFhNDBhNmFjNmQ0YTcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcmV0cm9zaGFyZS90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3JldHJvc2hhcmUvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdyZXRyb3NoYXJlJwogcGtnbmFtZT1yZXRyb3NoYXJlCiB2 ZXJzaW9uPTAuNi42Ci1yZXZpc2lvbj00CityZXZpc2lvbj01CiBidWlsZF9zdHlsZT1xbWFrZQog I1hYWCBicm9hZGNhc3QgZmVhdHVyZSByZXF1aXJlcyBhbiBhbmNpZW50IHVkcC1kaXNjb3Zlcnkt Y3BwIHdoaWNoIGVpdGhlciBuZWVkcwogIyB0byBiZSBmZXRjaGVkK3BhdGNoZWQgKEZUQkZTKSBo ZXJlIG9yIHBhY2thZ2VkIDovCgpGcm9tIDYxZjBmZWM1NTY1ZWY3OGU2ZmRkN2UzMjNmNDUzOTVl OWY4YWRlODAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBn bWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMTk6NTk6NDYgLTA0MDAKU3ViamVjdDog W1BBVENIIDAwOC8xMDldIHdhaWZ1MngtY29udmVydGVyLWNwcDogcmV2YnVtcCBmb3Igb3BlbmN2 LTQuNy4wCgotLS0KIHNyY3BrZ3Mvd2FpZnUyeC1jb252ZXJ0ZXItY3BwL3RlbXBsYXRlIHwgMiAr LQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy93YWlmdTJ4LWNvbnZlcnRlci1jcHAvdGVtcGxhdGUgYi9zcmNwa2dzL3dh aWZ1MngtY29udmVydGVyLWNwcC90ZW1wbGF0ZQppbmRleCAzNjFiOGEyM2I5NDk3Ny4uYzVhYzE3 ZWI1NGVhNGMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvd2FpZnUyeC1jb252ZXJ0ZXItY3BwL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3Mvd2FpZnUyeC1jb252ZXJ0ZXItY3BwL3RlbXBsYXRlCkBAIC0xLDcg KzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnd2FpZnUyeC1jb252ZXJ0ZXItY3BwJwogcGtn bmFtZT13YWlmdTJ4LWNvbnZlcnRlci1jcHAKIHZlcnNpb249NS4yLjQKLXJldmlzaW9uPTIKK3Jl dmlzaW9uPTMKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURJTlNUQUxMX01P REVMUz1PTiIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKCkZyb20gYWZmZmZiNjBkYjBh NTdhNDllMjM1MDU5YjI5NGJiMzY3ZTc1OWUyMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDow MDozOCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDA5LzEwOV0gdmxjOiByZXZidW1wIGZvciBmZm1w ZWc0CgotLS0KIHNyY3BrZ3MvdmxjL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwg MiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvdmxj L3RlbXBsYXRlIGIvc3JjcGtncy92bGMvdGVtcGxhdGUKaW5kZXggNTU5YjFjNGZmZjMzOWYuLmZj Mzk5ZjFhNmU5YmZjIDEwMDY0NAotLS0gYS9zcmNwa2dzL3ZsYy90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL3ZsYy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3Zs YycKIHBrZ25hbWU9dmxjCiB2ZXJzaW9uPTMuMC4yMAotcmV2aXNpb249NAorcmV2aXNpb249NQog YnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS1nbWUg LS1kaXNhYmxlLWxpYnRhciAtLWVuYWJsZS1qYWNrCiAgLS1lbmFibGUtbGl2ZTU1NSAtLWRpc2Fi bGUtZmx1aWRzeW50aCAtLWVuYWJsZS1kdmRyZWFkCkBAIC0yNSw3ICsyNSw3IEBAIGxpYjMyZGlz YWJsZWQ9eWVzCiBob3N0bWFrZWRlcGVuZHM9ImF1dG9tYWtlIGxpYnRvb2wgcGtnLWNvbmZpZyBm bGV4IGdldHRleHQgbGliZ2NyeXB0LWRldmVsCiAgbGl2ZTU1NS1kZXZlbCBnZXR0ZXh0LWRldmVs ICQodm9wdF9pZiBsdWEgbHVhNTIpICQodm9wdF9pZiBjaHJvbWVjYXN0IHByb3RvYnVmKSIKIG1h a2VkZXBlbmRzPSIKLSBhdmFoaS1saWJzLWRldmVsIGRidXMtZ2xpYi1kZXZlbCBmYWFkMi1kZXZl bCBmZm1wZWctZGV2ZWwgZnJlZWZvbnQtdHRmCisgYXZhaGktbGlicy1kZXZlbCBkYnVzLWdsaWIt ZGV2ZWwgZmFhZDItZGV2ZWwgZmZtcGVnNC1kZXZlbCBmcmVlZm9udC10dGYKICBnbnV0bHMtZGV2 ZWwgamFjay1kZXZlbCBsaWJhNTItZGV2ZWwgbGliYXNzLWRldmVsIGxpYmJsdXJheS1kZXZlbAog IGxpYmNkaW8tZGV2ZWwgbGliZGNhLWRldmVsIGxpYmR2YnBzaS1kZXZlbCBsaWJkdmRuYXYtZGV2 ZWwgbGlibWFkLWRldmVsCiAgbGlibWF0cm9za2EtZGV2ZWwgbGlibW9kcGx1Zy1kZXZlbCBsaWJt cGNkZWMtZGV2ZWwgbGlibXBlZzItZGV2ZWwKCkZyb20gYWIwOTVmNjc1MTg3OWI4MTFkMGUwZDc5 MGZkYTUwNTUzNTQ4YTE4NSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHps aWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMDo1NSAtMDQwMApT dWJqZWN0OiBbUEFUQ0ggMDEwLzEwOV0gb3NnOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNy 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 aWYKKyAKKyAgICAgICAgIGF2Zm9ybWF0X25ldHdvcmtfaW5pdCgpOworICAgICB9CgpGcm9tIDhj OThlNWVhOTkwYWRjOTkyOTk0MGE4ODkyZTVjZWZkNDVhOTg1ODkgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFy IDIwMjMgMjA6MDE6MTMgLTA0MDAKU3ViamVjdDogW1BBVENIIDAxMS8xMDldIHhpbmUtbGliOiBy ZXZidW1wIGZvciBmZm1wZWc0CgotLS0KIHNyY3BrZ3MveGluZS1saWIvdGVtcGxhdGUgfCA4ICsr KystLS0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MveGluZS1saWIvdGVtcGxhdGUgYi9zcmNwa2dzL3hpbmUtbGli L3RlbXBsYXRlCmluZGV4IDNiZTRkMDhlYWM3N2EzLi5lZDYxOTRjMTdkMTFlOCAxMDA2NDQKLS0t IGEvc3JjcGtncy94aW5lLWxpYi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3hpbmUtbGliL3RlbXBs YXRlCkBAIC0xLDE0ICsxLDE0IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd4aW5lLWxpYicKIHBr Z25hbWU9eGluZS1saWIKLXZlcnNpb249MS4yLjEyCi1yZXZpc2lvbj0zCit2ZXJzaW9uPTEuMi4x MworcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9 Ii0tZGlzYWJsZS12Y2QgLS1kaXNhYmxlLWdub21ldmZzIC0td2l0aG91dC1lc291bmQgLS1kaXNh YmxlLWR4cjMKICAtLWRpc2FibGUtb3NzIgogaG9zdG1ha2VkZXBlbmRzPSJhdXRvbWFrZSBnZXR0 ZXh0LWRldmVsIGxpYnRvb2wgcGtnLWNvbmZpZyBwZXJsIgogbWFrZWRlcGVuZHM9IgogIHpsaWIt ZGV2ZWwgYWxzYS1saWItZGV2ZWwgbGlieGNiLWRldmVsIGxpYlNNLWRldmVsIGxpYlhleHQtZGV2 ZWwgbGliWHYtZGV2ZWwKLSBsaWJYdk1DLWRldmVsIGxpYmE1Mi1kZXZlbCBsaWJtYWQtZGV2ZWwg ZmZtcGVnLWRldmVsIHB1bHNlYXVkaW8tZGV2ZWwKKyBsaWJYdk1DLWRldmVsIGxpYmE1Mi1kZXZl bCBsaWJtYWQtZGV2ZWwgZmZtcGVnNC1kZXZlbCBwdWxzZWF1ZGlvLWRldmVsCiAgamFjay1kZXZl bCBzYW1iYS1kZXZlbCBsaWJmbGFjLWRldmVsIGxpYm1vZHBsdWctZGV2ZWwgbGlibXBjZGVjLWRl dmVsCiAgc3BlZXgtZGV2ZWwgbGlidGhlb3JhLWRldmVsIGxpYnZvcmJpcy1kZXZlbCBsaWJkY2Et ZGV2ZWwgZmFhZDItZGV2ZWwKICBsaWJjZGlvLWRldmVsIGxpYmJsdXJheS1kZXZlbCBhYWxpYi1k ZXZlbCBsaWJjYWNhLWRldmVsIGxpYlhpbmVyYW1hLWRldmVsCkBAIC0xOSw3ICsxOSw3IEBAIGxp Y2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIsIExHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0 dHA6Ly93d3cueGluZS1wcm9qZWN0Lm9yZyIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9zb3VyY2Vmb3Jn ZS5uZXQvcHJvamVjdHMveGluZS9maWxlcy94aW5lLWxpYi8ke3ZlcnNpb259L1JFQURNRS50eHQv dmlldyIKIGRpc3RmaWxlcz0iJHtTT1VSQ0VGT1JHRV9TSVRFfS94aW5lLyR7cGtnbmFtZX0tJHt2 ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1kNjA2MjcwNDY4ZTE1NDBjMmE4OWMwZDdmNWZkZjEx ZTE3ZWNjMGMyNjk4Y2MwYmNiMTA2NWZmMjZhYmVlMDk4CitjaGVja3N1bT01ZjEwZDZkNzE4YTRh NTFjMTdlZDFiMzJiMDMxZDRmOWI4MGIwNjFlODI3NjUzNWIyYmUzMWU1YWM0Yjc1ZTZmCiAKIGNh c2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgogCWk2ODYtbXVzbCkKCkZyb20gMWM4YTBlNTZm NDQzNjY0YWY1ZjUwOWNmNzBhNDBjYjlkZjQxMDhkZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAy MDowMTo0NSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDEyLzEwOV0gYXR0cmFjdDogcmV2YnVtcCBm b3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2F0dHJhY3QvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUg Y2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNw a2dzL2F0dHJhY3QvdGVtcGxhdGUgYi9zcmNwa2dzL2F0dHJhY3QvdGVtcGxhdGUKaW5kZXggNzc2 Y2JlNGViZDJjOTMuLmY5NjYzNGY0NDFhZTgwIDEwMDY0NAotLS0gYS9zcmNwa2dzL2F0dHJhY3Qv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9hdHRyYWN0L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnYXR0cmFjdCcKIHBrZ25hbWU9YXR0cmFjdAogdmVyc2lvbj0y LjcuMAotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9Z251LW1ha2VmaWxlCiBt YWtlX2J1aWxkX2FyZ3M9IlZFUkJPU0U9MSIKIG1ha2VfdXNlX2Vudj15ZXMKCkZyb20gZjE4NTAy NzdmYWUxODU4M2U1NzFhZDdlYjZlNDg2NmFkOTBlMmVkOCBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAy MyAyMDowMTo0NSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDEzLzEwOV0gYXViaW86IHJldmJ1bXAg Zm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9hdWJpby9wYXRjaGVzL2ZmbXBlZzUucGF0Y2ggICAg fCAyNSArKysrKysrKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2F1YmlvL3BhdGNoZXMvcHl0 aG9uMy4xMi5wYXRjaCB8IDIxICsrKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9hdWJpby90 ZW1wbGF0ZSAgICAgICAgICAgICAgICAgfCAgMiArLQogMyBmaWxlcyBjaGFuZ2VkLCA0NyBpbnNl cnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9hdWJp by9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2F1Ymlv L3BhdGNoZXMvcHl0aG9uMy4xMi5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXViaW8vcGF0 Y2hlcy9mZm1wZWc1LnBhdGNoIGIvc3JjcGtncy9hdWJpby9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAuLmFhY2U0MWE2ZTZkOWE0 Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9hdWJpby9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gK QEAgLTAsMCArMSwyNSBAQAorRnJvbSA4YTA1NDIwZTVkZDhjN2I4YjI0NDdmODJkYzkxOTc2NTg3 NjUxMWIzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogUGF1bCBCcm9zc2llciA8cGll bUBwaWVtLm9yZz4KK0RhdGU6IFR1ZSwgMjUgSmFuIDIwMjIgMTg6MzA6MjcgKzAxMDAKK1N1Ympl Y3Q6IFtQQVRDSF0gW3NvdXJjZV9hdmNvZGVjXSBkZWZpbmUgRkZfQVBJX0xBVkZfQVZDVFggZm9y IGxpYmF2Y29kZWMgPgorIDU5LCB0aHggQGJlcm9saW51eCAoY2xvc2VzIGdoLTM1MykKKworLS0t Cisgc3JjL2lvL3NvdXJjZV9hdmNvZGVjLmMgfCA0ICsrKysKKyAxIGZpbGUgY2hhbmdlZCwgNCBp bnNlcnRpb25zKCspCisKK2RpZmYgLS1naXQgYS9zcmMvaW8vc291cmNlX2F2Y29kZWMuYyBiL3Ny Yy9pby9zb3VyY2VfYXZjb2RlYy5jCitpbmRleCBlMGFlOTNiNS4uMTQyMWJkOWEgMTAwNjQ0Cist LS0gYS9zcmMvaW8vc291cmNlX2F2Y29kZWMuYworKysrIGIvc3JjL2lvL3NvdXJjZV9hdmNvZGVj LmMKK0BAIC02OCw2ICs2OCwxMCBAQAorICNkZWZpbmUgQVVCSU9fQVZDT0RFQ19NQVhfQlVGRkVS X1NJWkUgQVZfSU5QVVRfQlVGRkVSX01JTl9TSVpFCisgI2VuZGlmCisgCisrI2lmIExJQkFWQ09E RUNfVkVSU0lPTl9NQUpPUiA+PSA1OQorKyNkZWZpbmUgRkZfQVBJX0xBVkZfQVZDVFggMQorKyNl bmRpZgorKworIHN0cnVjdCBfYXViaW9fc291cmNlX2F2Y29kZWNfdCB7CisgICB1aW50X3QgaG9w X3NpemU7CisgICB1aW50X3Qgc2FtcGxlcmF0ZTsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXViaW8v cGF0Y2hlcy9weXRob24zLjEyLnBhdGNoIGIvc3JjcGtncy9hdWJpby9wYXRjaGVzL3B5dGhvbjMu MTIucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAuLjgxY2Y2 ZDFmMGY3Y2FiCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9hdWJpby9wYXRjaGVzL3B5dGhv bjMuMTIucGF0Y2gKQEAgLTAsMCArMSwyMSBAQAorLS0tIGEvd2FmbGliL0NvbnRleHQucHkJMjAy NC0wNi0wNCAwNzo0OToxMy4zOTk3OTM4MTkgLTA0MDAKKysrKyBiL3dhZmxpYi9Db250ZXh0LnB5 CTIwMjQtMDYtMDQgMDg6MDA6MzUuNDczODI0MzA2IC0wNDAwCitAQCAtMiw3ICsyLDcgQEAKKyAj IGVuY29kaW5nOiB1dGYtOAorICMgV0FSTklORyEgRG8gbm90IGVkaXQhIGh0dHBzOi8vd2FmLmlv L2Jvb2svaW5kZXguaHRtbCNfb2J0YWluaW5nX3RoZV93YWZfZmlsZQorCistaW1wb3J0IG9zLHJl LGltcCxzeXMKKytpbXBvcnQgb3MscmUsdHlwZXMsc3lzCisgZnJvbSB3YWZsaWIgaW1wb3J0IFV0 aWxzLEVycm9ycyxMb2dzCisgaW1wb3J0IHdhZmxpYi5Ob2RlCisgSEVYVkVSU0lPTj0weDIwMDBl MDAKK0BAIC0zNDQsNyArMzQ0LDcgQEAKKyAJCXJldHVybiBjYWNoZV9tb2R1bGVzW3BhdGhdCisg CWV4Y2VwdCBLZXlFcnJvcjoKKyAJCXBhc3MKKy0JbW9kdWxlPWltcC5uZXdfbW9kdWxlKFdTQ1JJ UFRfRklMRSkKKysJbW9kdWxlPXR5cGVzLk1vZHVsZVR5cGUoV1NDUklQVF9GSUxFKQorIAl0cnk6 CisgCQljb2RlPVV0aWxzLnJlYWRmKHBhdGgsbT0ncicsZW5jb2Rpbmc9ZW5jb2RpbmcpCisgCWV4 Y2VwdCBFbnZpcm9ubWVudEVycm9yOgorCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F1YmlvL3RlbXBs YXRlIGIvc3JjcGtncy9hdWJpby90ZW1wbGF0ZQppbmRleCBhZDFjNGIyNTY5OTE3OC4uN2Q4NzVj YzAyNTQxYTcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYXViaW8vdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9hdWJpby90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2F1 YmlvJwogcGtnbmFtZT1hdWJpbwogdmVyc2lvbj0wLjQuOQotcmV2aXNpb249MQorcmV2aXNpb249 MgogYnVpbGRfc3R5bGU9d2FmMwogIyBYWFggbGFzaCwgcHVyZSBhbmQgc3dpZyBzdXBwb3J0Lgog aG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIHR4dDJtYW4iCgpGcm9tIGU0YTliMTJlNzFiNDkx ZWZlNGUxODEzYmI5ZDAxOTNiMTJiMWJhZjAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6 NDUgLTA0MDAKU3ViamVjdDogW1BBVENIIDAxNC8xMDldIGF1ZGFjaW91cy1wbHVnaW5zOiByZXZi dW1wIGZvciBmZm1wZWc2CgotLS0KIC4uLi9hdWRhY2lvdXMtcGx1Z2lucy9wYXRjaGVzL2ZmbXBl ZzUucGF0Y2ggICB8IDQzICsrKysrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCA0MyBp bnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9hdWRhY2lvdXMtcGx1Z2lu cy9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F1ZGFjaW91cy1w bHVnaW5zL3BhdGNoZXMvZmZtcGVnNS5wYXRjaCBiL3NyY3BrZ3MvYXVkYWNpb3VzLXBsdWdpbnMv cGF0Y2hlcy9mZm1wZWc1LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw MDAwMDAwLi40ZTVlMzQwOTlkNzFjNAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvYXVkYWNp b3VzLXBsdWdpbnMvcGF0Y2hlcy9mZm1wZWc1LnBhdGNoCkBAIC0wLDAgKzEsNDMgQEAKK2NvbW1p dCAyOThhYTM3MWM1NmMyZjUyYzI1YTMzZDliZGVjNDkxOGIxMWNlYmRjCitBdXRob3I6IHRpYmVx dWFkb3JpYW4gPHRpYmVxdWFkb3JpYW5AcG9zdGVvLmRlPgorRGF0ZTogICBTYXQgTWFyIDE5IDE4 OjQwOjEyIDIwMjIgKzAxMDAKKworICAgIGF1ZGFjaW91cy1wbHVnaW5zOiByZWJ1aWxkIGFnYWlu c3QgZmZtcGVnLTUuMAorCitkaWZmIC0tZ2l0IGEvc3JjcGtncy9hdWRhY2lvdXMtcGx1Z2lucy9w YXRjaGVzL2ZmbXBlZy01LjAucGF0Y2ggYi9zcmNwa2dzL2F1ZGFjaW91cy1wbHVnaW5zL3BhdGNo ZXMvZmZtcGVnLTUuMC5wYXRjaAorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAw MDAuLjYxN2MxMTIxNWIKKy0tLSAvZGV2L251bGwKKysrKyBiL3NyY3BrZ3MvYXVkYWNpb3VzLXBs dWdpbnMvcGF0Y2hlcy9mZm1wZWctNS4wLnBhdGNoCitAQCAtMCwwICsxLDMxIEBACisrRnJvbSBm NjBiZWI0MDBlZWIxZTQ3NzhiYmZkNzM4YmM0YTRjY2VmM2RlNTM5IE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQorK0Zyb206IEpvaG4gTGluZGdyZW4gPGpvaG5AamxpbmRncmVuLm5ldD4KKytEYXRl OiBTYXQsIDUgTWFyIDIwMjIgMTI6MDU6MzQgLTA1MDAKKytTdWJqZWN0OiBbUEFUQ0hdIEZpeCBi dWlsZCB3aXRoIEZGbXBlZyA1LjAKKysKKystLS0KKysgc3JjL2ZmYXVkaW8vZmZhdWRpby1jb3Jl LmNjIHwgNCArKy0tCisrIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRp b25zKC0pCisrCisrZGlmZiAtLWdpdCBhL3NyYy9mZmF1ZGlvL2ZmYXVkaW8tY29yZS5jYyBiL3Ny Yy9mZmF1ZGlvL2ZmYXVkaW8tY29yZS5jYworK2luZGV4IDE2ZGM2M2UzYS4uYTJiOTVmZDZjIDEw MDY0NAorKy0tLSBhL3NyYy9mZmF1ZGlvL2ZmYXVkaW8tY29yZS5jYworKysrKyBiL3NyYy9mZmF1 ZGlvL2ZmYXVkaW8tY29yZS5jYworK0BAIC0yNzQsNyArMjc0LDcgQEAgc3RhdGljIEFWSW5wdXRG b3JtYXQgKiBnZXRfZm9ybWF0X2J5X2NvbnRlbnQgKGNvbnN0IGNoYXIgKiBuYW1lLCBWRlNGaWxl ICYgZmlsZSkKKysgICAgICAgICBBVlByb2JlRGF0YSBkID0ge25hbWUsIGJ1ZiwgZmlsbGVkfTsK KysgICAgICAgICBzY29yZSA9IHRhcmdldDsKKysgCisrLSAgICAgICAgZiA9IGF2X3Byb2JlX2lu cHV0X2Zvcm1hdDIgKCYgZCwgdHJ1ZSwgJiBzY29yZSk7CisrKyAgICAgICAgZiA9IChBVklucHV0 Rm9ybWF0ICopIGF2X3Byb2JlX2lucHV0X2Zvcm1hdDIgKCYgZCwgdHJ1ZSwgJiBzY29yZSk7Cisr ICAgICAgICAgaWYgKGYpCisrICAgICAgICAgICAgIGJyZWFrOworKyAKKytAQCAtMzQ3LDcgKzM0 Nyw3IEBAIHN0YXRpYyBib29sIGZpbmRfY29kZWMgKEFWRm9ybWF0Q29udGV4dCAqIGMsIENvZGVj SW5mbyAqIGNpbmZvKQorKyAjZW5kaWYKKysgICAgICAgICBpZiAoc3RyZWFtICYmIHN0cmVhbS0+ Y29kZWNwYXIgJiYgc3RyZWFtLT5jb2RlY3Bhci0+Y29kZWNfdHlwZSA9PSBBVk1FRElBX1RZUEVf QVVESU8pCisrICAgICAgICAgeworKy0gICAgICAgICAgICBBVkNvZGVjICogY29kZWMgPSBhdmNv ZGVjX2ZpbmRfZGVjb2RlciAoc3RyZWFtLT5jb2RlY3Bhci0+Y29kZWNfaWQpOworKysgICAgICAg ICAgICBBVkNvZGVjICogY29kZWMgPSAoQVZDb2RlYyAqKSBhdmNvZGVjX2ZpbmRfZGVjb2RlciAo c3RyZWFtLT5jb2RlY3Bhci0+Y29kZWNfaWQpOworKyAKKysgICAgICAgICAgICAgaWYgKGNvZGVj KQorKyAgICAgICAgICAgICB7CgpGcm9tIGE0YTQ0NWZlZDgzZmJiMTllMDYyZjFlNzIwYTBhNzYx YTlmMjk3NGMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBn bWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDUgLTA0MDAKU3ViamVjdDog W1BBVENIIDAxNS8xMDldIGF1ZGFjaXR5OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3Br Z3MvYXVkYWNpdHkvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24o KyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F1ZGFjaXR5L3RlbXBsYXRl IGIvc3JjcGtncy9hdWRhY2l0eS90ZW1wbGF0ZQppbmRleCA3YjgzODExOWFiMjYxMS4uODRiNDkz MDVlZGNlZjEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYXVkYWNpdHkvdGVtcGxhdGUKKysrIGIvc3Jj cGtncy9hdWRhY2l0eS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ2F1ZGFjaXR5JwogcGtnbmFtZT1hdWRhY2l0eQogdmVyc2lvbj0zLjQuMgotcmV2aXNpb249 MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hlbHBlcj0iY21ha2Utd3hX aWRnZXRzLWd0azMgcWVtdSIKIGNvbmZpZ3VyZV9hcmdzPSItRGF1ZGFjaXR5X3VzZV9mZm1wZWc9 bG9hZGVkIC1EYXVkYWNpdHlfbGliX3ByZWZlcmVuY2U9c3lzdGVtCgpGcm9tIDVmOGY3ZDFjYmJj OTUwODU5MTdkMWRkMWI2ZWUzOWZmMTdiMzdkNmMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6 MDE6NDUgLTA0MDAKU3ViamVjdDogW1BBVENIIDAxNi8xMDldIGF2aWRlbXV4OiByZXZidW1wIGZv ciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvYXZpZGVtdXgvZmlsZXMvbmVnYXRpdmUtc2hpZnQucGF0 Y2ggfCA3MyArKysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvYXZpZGVtdXgvdGVtcGxhdGUg ICAgICAgICAgICAgICAgICAgfCAgNiArLQogMiBmaWxlcyBjaGFuZ2VkLCA3OCBpbnNlcnRpb25z KCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9hdmlkZW11eC9m aWxlcy9uZWdhdGl2ZS1zaGlmdC5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXZpZGVtdXgv ZmlsZXMvbmVnYXRpdmUtc2hpZnQucGF0Y2ggYi9zcmNwa2dzL2F2aWRlbXV4L2ZpbGVzL25lZ2F0 aXZlLXNoaWZ0LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw Li5kZGQzZmEyYThlMjlhYQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvYXZpZGVtdXgvZmls ZXMvbmVnYXRpdmUtc2hpZnQucGF0Y2gKQEAgLTAsMCArMSw3MyBAQAorCitGcm9tIGVmZmFkY2U2 Yzc1NjI0N2VhOGJhZTMyZGMxM2JiM2U2ZjQ2NGYwZWIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CitGcm9tOiA9P1VURi04P3E/Uj1DMz1BOW1pPTIwRGVuaXMtQ291cm1vbnQ/PSA8cmVtaUByZW1s YWIubmV0PgorRGF0ZTogU3VuLCAxNiBKdWwgMjAyMyAxODoxODowMiArMDMwMAorU3ViamVjdDog W1BBVENIXSBhdmNvZGVjL3g4Ni9tYXRob3BzOiBjbGlwIGNvbnN0YW50cyB1c2VkIHdpdGggc2hp ZnQKKyBpbnN0cnVjdGlvbnMgd2l0aGluIGlubGluZSBhc3NlbWJseQorCitGaXhlcyBhc3NlbWJs aW5nIHdpdGggYmludXRpbCBhcyA+PSAyLjQxCisKK1NpZ25lZC1vZmYtYnk6IEphbWVzIEFsbWVy IDxqYW1yaWFsQGdtYWlsLmNvbT4KKy0tLQorIGxpYmF2Y29kZWMveDg2L21hdGhvcHMuaCB8IDI2 ICsrKysrKysrKysrKysrKysrKysrKysrLS0tCisgMSBmaWxlIGNoYW5nZWQsIDIzIGluc2VydGlv bnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9saWJhdmNvZGVjL3g4Ni9tYXRo b3BzLmggYi9saWJhdmNvZGVjL3g4Ni9tYXRob3BzLmgKK2luZGV4IDYyOThmNWVkMTk4M2IuLmNh N2UyZGZmYzEwNzYgMTAwNjQ0CistLS0gbGliYXZjb2RlYy94ODYvbWF0aG9wcy5oCisrKysgbGli YXZjb2RlYy94ODYvbWF0aG9wcy5oCitAQCAtMzUsMTIgKzM1LDIwIEBACisgc3RhdGljIGF2X2Fs d2F5c19pbmxpbmUgYXZfY29uc3QgaW50IE1VTEwoaW50IGEsIGludCBiLCB1bnNpZ25lZCBzaGlm dCkKKyB7CisgICAgIGludCBydCwgZHVtbXk7CisrICAgIGlmIChfX2J1aWx0aW5fY29uc3RhbnRf cChzaGlmdCkpCisgICAgIF9fYXNtX18gKAorICAgICAgICAgImltdWxsICUzICAgICAgICAgICAg ICAgXG5cdCIKKyAgICAgICAgICJzaHJkbCAlNCwgJSVlZHgsICUlZWF4IFxuXHQiCisgICAgICAg ICA6Ij1hIihydCksICI9ZCIoZHVtbXkpCistICAgICAgICA6ImEiKGEpLCAicm0iKGIpLCAiY2ki KCh1aW50OF90KXNoaWZ0KQorKyAgICAgICAgOiJhIihhKSwgInJtIihiKSwgImkiKHNoaWZ0ICYg MHgxRikKKyAgICAgKTsKKysgICAgZWxzZQorKyAgICAgICAgX19hc21fXyAoCisrICAgICAgICAg ICAgImltdWxsICUzICAgICAgICAgICAgICAgXG5cdCIKKysgICAgICAgICAgICAic2hyZGwgJTQs ICUlZWR4LCAlJWVheCBcblx0IgorKyAgICAgICAgICAgIDoiPWEiKHJ0KSwgIj1kIihkdW1teSkK KysgICAgICAgICAgICA6ImEiKGEpLCAicm0iKGIpLCAiYyIoKHVpbnQ4X3Qpc2hpZnQpCisrICAg ICAgICApOworICAgICByZXR1cm4gcnQ7CisgfQorCitAQCAtMTEzLDE5ICsxMjEsMzEgQEAgX19h c21fXyB2b2xhdGlsZShcCisgLy8gYXZvaWQgKzMyIGZvciBzaGlmdCBvcHRpbWl6YXRpb24gKGdj YyBzaG91bGQgZG8gdGhhdCAuLi4pCisgI2RlZmluZSBORUdfU1NSMzIgTkVHX1NTUjMyCisgc3Rh dGljIGlubGluZSAgaW50MzJfdCBORUdfU1NSMzIoIGludDMyX3QgYSwgaW50OF90IHMpeworKyAg ICBpZiAoX19idWlsdGluX2NvbnN0YW50X3AocykpCisgICAgIF9fYXNtX18gKCJzYXJsICUxLCAl MFxuXHQiCisgICAgICAgICAgOiAiK3IiIChhKQorLSAgICAgICAgIDogImljIiAoKHVpbnQ4X3Qp KC1zKSkKKysgICAgICAgICA6ICJpIiAoLXMgJiAweDFGKQorICAgICApOworKyAgICBlbHNlCisr ICAgICAgICBfX2FzbV9fICgic2FybCAlMSwgJTBcblx0IgorKyAgICAgICAgICAgICAgIDogIity IiAoYSkKKysgICAgICAgICAgICAgICA6ICJjIiAoKHVpbnQ4X3QpKC1zKSkKKysgICAgICAgICk7 CisgICAgIHJldHVybiBhOworIH0KKworICNkZWZpbmUgTkVHX1VTUjMyIE5FR19VU1IzMgorIHN0 YXRpYyBpbmxpbmUgdWludDMyX3QgTkVHX1VTUjMyKHVpbnQzMl90IGEsIGludDhfdCBzKXsKKysg ICAgaWYgKF9fYnVpbHRpbl9jb25zdGFudF9wKHMpKQorICAgICBfX2FzbV9fICgic2hybCAlMSwg JTBcblx0IgorICAgICAgICAgIDogIityIiAoYSkKKy0gICAgICAgICA6ICJpYyIgKCh1aW50OF90 KSgtcykpCisrICAgICAgICAgOiAiaSIgKC1zICYgMHgxRikKKyAgICAgKTsKKysgICAgZWxzZQor KyAgICAgICAgX19hc21fXyAoInNocmwgJTEsICUwXG5cdCIKKysgICAgICAgICAgICAgICA6ICIr ciIgKGEpCisrICAgICAgICAgICAgICAgOiAiYyIgKCh1aW50OF90KSgtcykpCisrICAgICAgICAp OworICAgICByZXR1cm4gYTsKKyB9CmRpZmYgLS1naXQgYS9zcmNwa2dzL2F2aWRlbXV4L3RlbXBs YXRlIGIvc3JjcGtncy9hdmlkZW11eC90ZW1wbGF0ZQppbmRleCAyNTNhMDI0M2UyMjU5OS4uNzE4 MWViZjMyMDNiMmMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYXZpZGVtdXgvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9hdmlkZW11eC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ2F2aWRlbXV4JwogcGtnbmFtZT1hdmlkZW11eAogdmVyc2lvbj0yLjguMAotcmV2aXNp b249MgorcmV2aXNpb249MwogIyBDYW4ndCBiZSBjb21waWxlZCBmb3IgYWFyY2g2NCwgYXJtKiBv ciBtaXBzKgogYXJjaHM9Ing4Nl82NCogaTY4NioiCiBob3N0bWFrZWRlcGVuZHM9ImNtYWtlIHBr Zy1jb25maWcgcXQ1LWhvc3QtdG9vbHMgcXQ1LWRldmVsIHRhciB5YXNtIgpAQCAtMjUsNiArMjUs MTAgQEAgY2FzZSAiJHtYQlBTX1RBUkdFVF9NQUNISU5FfSIgaW4KIAlpNjg2KikgQ0ZMQUdTPSIt Zm5vLVBJQyI7OwogZXNhYwogCitwb3N0X2V4dHJhY3QoKSB7CisJY3AgJHtGSUxFU0RJUn0vKnBh dGNoICR7d3Jrc3JjfS9hdmlkZW11eF9jb3JlL2ZmbXBlZ19wYWNrYWdlL3BhdGNoZXMvCit9CisK IGRvX2NvbmZpZ3VyZSgpIHsKIAlNQUtFRkxBR1M9JHttYWtlam9ic30gXAogCQliYXNoIGJvb3RT dHJhcC5iYXNoIFwKCkZyb20gY2FjMTE4MjQyMzllZDRjMTliNzk4N2NiZmI4NDY2OTRjOGE0YmY2 ZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNv bT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0NiAtMDQwMApTdWJqZWN0OiBbUEFUQ0gg MDE3LzEwOV0gYmxlbmRlcjogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2JsZW5k ZXIvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVs ZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2JsZW5kZXIvdGVtcGxhdGUgYi9zcmNwa2dz L2JsZW5kZXIvdGVtcGxhdGUKaW5kZXggNjg3ODdiNzZhMjZjMTguLmUyZTA5MGU2ZGZhNDFjIDEw MDY0NAotLS0gYS9zcmNwa2dzL2JsZW5kZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9ibGVuZGVy L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYmxlbmRlcicK IHBrZ25hbWU9YmxlbmRlcgogdmVyc2lvbj00LjAuMgotcmV2aXNpb249MgorcmV2aXNpb249Mwog YXJjaHM9Ing4Nl82NCogcHBjNjQqIgogYnVpbGRfc3R5bGU9ImNtYWtlIgogcHljb21waWxlX2Rp cnM9InVzci9zaGFyZS9ibGVuZGVyLyR7dmVyc2lvbiUuKn0vc2NyaXB0cyIKCkZyb20gNzUxM2Fm YTMwZTZkYmQ0MDY2ZTk1MzVmNzdmYTljM2FkMmFlMDMzMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAy MyAyMDowMTo0NiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDE4LzEwOV0gY2FudGF0YTogcmV2YnVt cCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2NhbnRhdGEvdGVtcGxhdGUgfCAyICstCiAxIGZp bGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL2NhbnRhdGEvdGVtcGxhdGUgYi9zcmNwa2dzL2NhbnRhdGEvdGVtcGxhdGUKaW5kZXgg NGI0MTdkODBkNWMyZGEuLjhhOTBhYWE0YzA3YTJhIDEwMDY0NAotLS0gYS9zcmNwa2dzL2NhbnRh dGEvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9jYW50YXRhL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnY2FudGF0YScKIHBrZ25hbWU9Y2FudGF0YQogdmVyc2lv bj0yLjUuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3Rt YWtlZGVwZW5kcz0icGtnLWNvbmZpZyBxdDUtcW1ha2UgcXQ1LWhvc3QtdG9vbHMgcXQ1LXRvb2xz IgogbWFrZWRlcGVuZHM9InF0NS1kZXZlbCBxdDUtdG9vbHMtZGV2ZWwgcXQ1LXN2Zy1kZXZlbCBx dDUteG1scGF0dGVybnMtZGV2ZWwKCkZyb20gNjczYTUwNjBkNjNiNTNkYWJmZTE2MjEyZDA1OGIx YjZhMzI4NzU4NCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1 QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0NiAtMDQwMApTdWJqZWN0 OiBbUEFUQ0ggMDE5LzEwOV0gY2NleHRyYWN0b3I6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQog Li4uNS1hbmQtdGVzc2VyYWN0LTUtY29tcGF0aWJpbGl0eS0xNDc5LnBhdGNoIHwgMTY4ICsrKysr KysrKysrKysrKysrKwogc3JjcGtncy9jY2V4dHJhY3Rvci90ZW1wbGF0ZSAgICAgICAgICAgICAg ICAgIHwgICAyICstCiAyIGZpbGVzIGNoYW5nZWQsIDE2OSBpbnNlcnRpb25zKCspLCAxIGRlbGV0 aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9jY2V4dHJhY3Rvci9wYXRjaGVzLzAw MDEtZml4LWZmbXBlZy01LWFuZC10ZXNzZXJhY3QtNS1jb21wYXRpYmlsaXR5LTE0NzkucGF0Y2gK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2NjZXh0cmFjdG9yL3BhdGNoZXMvMDAwMS1maXgtZmZtcGVn LTUtYW5kLXRlc3NlcmFjdC01LWNvbXBhdGliaWxpdHktMTQ3OS5wYXRjaCBiL3NyY3BrZ3MvY2Nl eHRyYWN0b3IvcGF0Y2hlcy8wMDAxLWZpeC1mZm1wZWctNS1hbmQtdGVzc2VyYWN0LTUtY29tcGF0 aWJpbGl0eS0xNDc5LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw MDAwLi5iY2FiNDg5MDU1NGI5YQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvY2NleHRyYWN0 b3IvcGF0Y2hlcy8wMDAxLWZpeC1mZm1wZWctNS1hbmQtdGVzc2VyYWN0LTUtY29tcGF0aWJpbGl0 eS0xNDc5LnBhdGNoCkBAIC0wLDAgKzEsMTY4IEBACitGcm9tIGIxY2JmY2VhOWI5YzY4NzE0M2Jm MGQ4MGJjMTc5YjU2M2U5OWQwMjUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBQcmF0 ZWVrIFN1bmFsIDxwcnRrc3VuYWxAZ21haWwuY29tPgorRGF0ZTogVGh1LCA5IE1hciAyMDIzIDAx OjQ0OjUzICswNTMwCitTdWJqZWN0OiBbUEFUQ0hdIGZpeDogZmZtcGVnIDUgYW5kIHRlc3NlcmFj dCA1IGNvbXBhdGliaWxpdHkgKCMxNDc5KQorCisqIGZpeDogcmVwbGFjZSBkZXByZWNhdGVkIGBj b2RlY2AgcHJvcGVydHkgd2l0aCBgY29kZWNwYXJgCisKKyogZml4OiByZXBsYWNlIGRlcHJlY2F0 ZWQgbWV0aG9kIGBhdmNvZGVjX2RlY29kZV92aWRlbzJgIHdpdGggYGF2Y29kZWNfcmVjZWl2ZV9m cmFtZWAgYW5kIGBhdmNvZGVjX3NlbmRfcGFja2V0YAorCisqIFVwZGF0ZSBDSEFOR0VTLlRYVAor CisqIGZpeDogcmVtb3ZlIGRlcHJlY2F0ZWQgYGF2X3JlZ2lzdGVyX2FsbGAgZnVuY3Rpb24KKwor KiBmaXg6IGZvcm1hdHRpbmcKKworKiBmaXg6IGFkZCBzdXBwb3J0IGZvciB0ZXNzZXJhY3QgNQor CisqIGZpeDogdGVzc2VyYWN0IHY1CisKKyogZml4OiBoYXJkc3VieCBjb2RlYyBjb250ZXh0IGVy cm9yCisKKyogZml4OiBsaW50IGNvbnN0IHdhcm5pbmcKKy0tLQorIGRvY3MvQ0hBTkdFUy5UWFQg ICAgICAgICAgICAgICB8ICAxICsKKyBzcmMvbGliX2NjeC9mZm1wZWdfaW50Z3IuYyAgICAgfCAg NyArKystLS0KKyBzcmMvbGliX2NjeC9oYXJkc3VieC5jICAgICAgICAgfCAyNSArKysrKysrKysr KystLS0tLS0KKyBzcmMvbGliX2NjeC9oYXJkc3VieF9kZWNvZGVyLmMgfCAyNyArKysrKysrKy0t LS0tLS0tLS0tLQorIHNyYy9saWJfY2N4L29jci5jICAgICAgICAgICAgICB8IDQ2ICsrKysrKysr KysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyA1IGZpbGVzIGNoYW5nZWQsIDQ3IGluc2VydGlv bnMoKyksIDU5IGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvc3JjL2xpYl9jY3gvZmZtcGVn X2ludGdyLmMgYi9zcmMvbGliX2NjeC9mZm1wZWdfaW50Z3IuYworaW5kZXggYmU5ODg4OTAuLmU2 ZjIxZTIwIDEwMDY0NAorLS0tIGEvc3JjL2xpYl9jY3gvZmZtcGVnX2ludGdyLmMKKysrKyBiL3Ny Yy9saWJfY2N4L2ZmbXBlZ19pbnRnci5jCitAQCAtNjYsNyArNjYsNiBAQCB2b2lkICppbml0X2Zm bXBlZyhjb25zdCBjaGFyICpwYXRoKQorIAlzdHJ1Y3QgZmZtcGVnX2N0eCAqY3R4OworIAlBVkNv ZGVjICpkZWMgPSBOVUxMOworIAlhdmNvZGVjX3JlZ2lzdGVyX2FsbCgpOworLQlhdl9yZWdpc3Rl cl9hbGwoKTsKKyAKKyAJaWYgKGNjeF9vcHRpb25zLmRlYnVnX21hc2sgJiBDQ1hfRE1UX1ZFUkJP U0UpCisgCQlhdl9sb2dfc2V0X2xldmVsKEFWX0xPR19JTkZPKTsKK0BAIC0xMzMsNyArMTMyLDYg QEAgaW50IGZmX2dldF9jY2ZyYW1lKHZvaWQgKmFyZywgdW5zaWduZWQgY2hhciAqZGF0YSwgaW50 IG1heGxlbikKKyAJc3RydWN0IGZmbXBlZ19jdHggKmN0eCA9IGFyZzsKKyAJaW50IGxlbiA9IDA7 CisgCWludCByZXQgPSAwOworLQlpbnQgZ290X2ZyYW1lOworIAlBVlBhY2tldCBwYWNrZXQ7Cisg CisgCXJldCA9IGF2X3JlYWRfZnJhbWUoY3R4LT5pZm10LCAmcGFja2V0KTsKK0BAIC0xNTEsMTIg KzE0OSwxMyBAQCBpbnQgZmZfZ2V0X2NjZnJhbWUodm9pZCAqYXJnLCB1bnNpZ25lZCBjaGFyICpk YXRhLCBpbnQgbWF4bGVuKQorIAkJcmV0dXJuIEFWRVJST1IoRUFHQUlOKTsKKyAJfQorIAorLQly ZXQgPSBhdmNvZGVjX2RlY29kZV92aWRlbzIoY3R4LT5kZWNfY3R4LCBjdHgtPmZyYW1lLCAmZ290 X2ZyYW1lLCAmcGFja2V0KTsKKysJYXZjb2RlY19zZW5kX3BhY2tldChjdHgtPmNvZGVjX2N0eCwg JmN0eC0+cGFja2V0KTsKKysJcmV0ID0gYXZjb2RlY19yZWNlaXZlX2ZyYW1lKGN0eC0+ZGVjX2N0 eCwgY3R4LT5mcmFtZSk7CisgCWlmIChyZXQgPCAwKQorIAl7CisgCQlhdl9sb2coTlVMTCwgQVZf TE9HX0VSUk9SLCAidW5hYmxlIHRvIGRlY29kZSBwYWNrZXRcbiIpOworIAl9CistCWVsc2UgaWYg KCFnb3RfZnJhbWUpCisrCWVsc2UgaWYgKHJldCAhPSAwKQorIAl7CisgCQlyZXR1cm4gQVZFUlJP UihFQUdBSU4pOworIAl9CitkaWZmIC0tZ2l0IGEvc3JjL2xpYl9jY3gvaGFyZHN1YnguYyBiL3Ny Yy9saWJfY2N4L2hhcmRzdWJ4LmMKK2luZGV4IDQxMTM3N2Y5Li5mYjg0NGM5MSAxMDA2NDQKKy0t LSBhL3NyYy9saWJfY2N4L2hhcmRzdWJ4LmMKKysrKyBiL3NyYy9saWJfY2N4L2hhcmRzdWJ4LmMK K0BAIC0xMiw5ICsxMiw2IEBACisKKyBpbnQgaGFyZHN1YnhfcHJvY2Vzc19kYXRhKHN0cnVjdCBs aWJfaGFyZHN1YnhfY3R4ICpjdHgpCisgeworLQkvLyBHZXQgdGhlIHJlcXVpcmVkIG1lZGlhIGF0 dHJpYnV0ZXMgYW5kIGluaXRpYWxpemUgc3RydWN0dXJlcworLQlhdl9yZWdpc3Rlcl9hbGwoKTsK Ky0KKyAJaWYgKGF2Zm9ybWF0X29wZW5faW5wdXQoJmN0eC0+Zm9ybWF0X2N0eCwgY3R4LT5pbnB1 dGZpbGVbMF0sIE5VTEwsIE5VTEwpICE9IDApCisgCXsKKyAJCWZhdGFsKEVYSVRfUkVBRF9FUlJP UiwgIkVycm9yIHJlYWRpbmcgaW5wdXQgZmlsZSFcbiIpOworQEAgLTMyLDcgKzI5LDcgQEAKKyAJ Y3R4LT52aWRlb19zdHJlYW1faWQgPSAtMTsKKyAJZm9yIChpbnQgaSA9IDA7IGkgPCBjdHgtPmZv cm1hdF9jdHgtPm5iX3N0cmVhbXM7IGkrKykKKyAJeworLQkJaWYgKGN0eC0+Zm9ybWF0X2N0eC0+ c3RyZWFtc1tpXS0+Y29kZWMtPmNvZGVjX3R5cGUgPT0gQVZNRURJQV9UWVBFX1ZJREVPKQorKwkJ aWYgKGN0eC0+Zm9ybWF0X2N0eC0+c3RyZWFtc1tpXS0+Y29kZWNwYXItPmNvZGVjX3R5cGUgPT0g QVZNRURJQV9UWVBFX1ZJREVPKQorIAkJeworIAkJCWN0eC0+dmlkZW9fc3RyZWFtX2lkID0gaTsK KyAJCQlicmVhazsKK0BAIC00Myw4ICs0MCwyMSBAQAorIAkJZmF0YWwoRVhJVF9SRUFEX0VSUk9S LCAiVmlkZW8gU3RyZWFtIG5vdCBmb3VuZCFcbiIpOworIAl9CisKKy0JY3R4LT5jb2RlY19jdHgg PSBjdHgtPmZvcm1hdF9jdHgtPnN0cmVhbXNbY3R4LT52aWRlb19zdHJlYW1faWRdLT5jb2RlYzsK Ky0JY3R4LT5jb2RlYyA9IGF2Y29kZWNfZmluZF9kZWNvZGVyKGN0eC0+Y29kZWNfY3R4LT5jb2Rl Y19pZCk7CisrCWN0eC0+Y29kZWNfY3R4ID0gYXZjb2RlY19hbGxvY19jb250ZXh0MyhOVUxMKTsK KysJaWYgKCFjdHgtPmNvZGVjX2N0eCkKKysJeworKwkJICAgIGZhdGFsKEVYSVRfTk9UX0VOT1VH SF9NRU1PUlksICJDb3VsZCBub3QgYWxsb2NhdGUgY29kZWMgY29udGV4dCFcbiIpOworKwl9Cisr CisrCS8vIEFzc2lnbiBjb2RlYyBwYXJhbWV0ZXJzIHRvIGNvZGVjIGNvbnRleHQKKysJaWYgKGF2 Y29kZWNfcGFyYW1ldGVyc190b19jb250ZXh0KGN0eC0+Y29kZWNfY3R4LCBjdHgtPmZvcm1hdF9j dHgtPnN0cmVhbXNbY3R4LT52aWRlb19zdHJlYW1faWRdLT5jb2RlY3BhcikgPCAwKQorKwl7Cisr CQkgICAgZmF0YWwoRVhJVF9SRUFEX0VSUk9SLCAiQ291bGQgbm90IGluaXRpYWxpemUgY29kZWMg Y29udGV4dCFcbiIpOworKwl9CisrCisrCS8vIEZpbmQgZGVjb2RlciBmb3IgdGhlIGNvZGVjIGNv bnRleHQKKysJY3R4LT5jb2RlYyA9IChBVkNvZGVjICopYXZjb2RlY19maW5kX2RlY29kZXIoY3R4 LT5jb2RlY19jdHgtPmNvZGVjX2lkKTsKKysKKyAJaWYgKGN0eC0+Y29kZWMgPT0gTlVMTCkKKyAJ eworIAkJZmF0YWwoRVhJVF9SRUFEX0VSUk9SLCAiSW5wdXQgY29kZWMgaXMgbm90IHN1cHBvcnRl ZCFcbiIpOworZGlmZiAtLWdpdCBhL3NyYy9saWJfY2N4L2hhcmRzdWJ4X2RlY29kZXIuYyBiL3Ny Yy9saWJfY2N4L2hhcmRzdWJ4X2RlY29kZXIuYworaW5kZXggYmQ5YjA5ODAuLmI1ZGZhZWM0IDEw MDY0NAorLS0tIGEvc3JjL2xpYl9jY3gvaGFyZHN1YnhfZGVjb2Rlci5jCisrKysgYi9zcmMvbGli X2NjeC9oYXJkc3VieF9kZWNvZGVyLmMKK0BAIC0zNzEsNyArMzcxLDYgQEAKKyBpbnQgaGFyZHN1 YnhfcHJvY2Vzc19mcmFtZXNfdGlja2VydGV4dChzdHJ1Y3QgbGliX2hhcmRzdWJ4X2N0eCAqY3R4 LCBzdHJ1Y3QgZW5jb2Rlcl9jdHggKmVuY19jdHgpCisgeworIAkvLyBTZWFyY2ggZm9yIHRpY2tl ciB0ZXh0IGF0IHRoZSBib3R0b20gb2YgdGhlIHNjcmVlbiwgc3VjaCBhcyBpbiBSdXNzaWEgVFYx IG9yIHN0b2NrIHByaWNlcworLQlpbnQgZ290X2ZyYW1lOworIAlpbnQgY3VyX3NlYyA9IDAsIHRv dGFsX3NlYywgcHJvZ3Jlc3M7CisgCWludCBmcmFtZV9udW1iZXIgPSAwOworIAljaGFyICp0aWNr ZXJfdGV4dCA9IE5VTEw7CitAQCAtMzgyLDggKzM4MSw4IEBACisgCQl7CisgCQkJZnJhbWVfbnVt YmVyKys7CisgCQkJLy9EZWNvZGUgdGhlIHZpZGVvIHN0cmVhbSBwYWNrZXQKKy0JCQlhdmNvZGVj X2RlY29kZV92aWRlbzIoY3R4LT5jb2RlY19jdHgsIGN0eC0+ZnJhbWUsICZnb3RfZnJhbWUsICZj dHgtPnBhY2tldCk7CistCQkJaWYgKGdvdF9mcmFtZSAmJiBmcmFtZV9udW1iZXIgJSAxMDAwID09 IDApCisrICAgICAgYXZjb2RlY19zZW5kX3BhY2tldChjdHgtPmNvZGVjX2N0eCwgJmN0eC0+cGFj a2V0KTsKKysgICAgICBpZiAoYXZjb2RlY19yZWNlaXZlX2ZyYW1lKGN0eC0+Y29kZWNfY3R4LCBj dHgtPmZyYW1lKSA9PSAwICYmIGZyYW1lX251bWJlciAlIDEwMDAgPT0gMCkKKyAJCQl7CisgCQkJ CS8vIHN3c19zY2FsZSBpcyB1c2VkIHRvIGNvbnZlcnQgdGhlIHBpeGVsIGZvcm1hdCB0byBSR0Iy NCBmcm9tIGFsbCBvdGhlciBjYXNlcworIAkJCQlzd3Nfc2NhbGUoCitAQCAtNDM0LDkgKzQzMyw4 IEBACisgCQkJZnJhbWVfbnVtYmVyKys7CisKKyAJCQkvL0RlY29kZSB0aGUgdmlkZW8gc3RyZWFt IHBhY2tldAorLQkJCWF2Y29kZWNfZGVjb2RlX3ZpZGVvMihjdHgtPmNvZGVjX2N0eCwgY3R4LT5m cmFtZSwgJmdvdF9mcmFtZSwgJmN0eC0+cGFja2V0KTsKKy0KKy0JCQlpZiAoZ290X2ZyYW1lICYm IGZyYW1lX251bWJlciAlIDI1ID09IDApCisrCQkJYXZjb2RlY19zZW5kX3BhY2tldChjdHgtPmNv ZGVjX2N0eCwgJmN0eC0+cGFja2V0KTsKKysgICAgICBpZiAoYXZjb2RlY19yZWNlaXZlX2ZyYW1l KGN0eC0+Y29kZWNfY3R4LCBjdHgtPmZyYW1lKSA9PSAwICYmIGZyYW1lX251bWJlciAlIDI1ID09 IDApCisgCQkJeworIAkJCQlmbG9hdCBkaWZmID0gKGZsb2F0KWNvbnZlcnRfcHRzX3RvX21zKGN0 eC0+cGFja2V0LnB0cyAtIHByZXZfcGFja2V0X3B0cywgY3R4LT5mb3JtYXRfY3R4LT5zdHJlYW1z W2N0eC0+dmlkZW9fc3RyZWFtX2lkXS0+dGltZV9iYXNlKTsKKyAJCQkJaWYgKGZhYnNmKGRpZmYp IDwgMTAwMCAqIGN0eC0+bWluX3N1Yl9kdXJhdGlvbikgLy9JZiB0aGUgbWluaW11bSBkdXJhdGlv biBvZiBhIHN1YnRpdGxlIGxpbmUgaXMgZXhjZWVkZWQsIHByb2Nlc3MgcGFja2V0CitAQCAtNTQ4 LDcgKzU0Niw2IEBACisgeworIAkvLyBEbyBhIGJpbmFyeSBzZWFyY2ggb3ZlciB0aGUgaW5wdXQg dmlkZW8gZm9yIGZhc3RlciBwcm9jZXNzaW5nCisgCS8vIHByaW50ZigiRHVyYXRpb246ICVkXG4i LCAoaW50KWN0eC0+Zm9ybWF0X2N0eC0+ZHVyYXRpb24pOworLQlpbnQgZ290X2ZyYW1lOworIAlp bnQgc2Vjb25kc190aW1lID0gMDsKKyAJZm9yIChzZWNvbmRzX3RpbWUgPSAwOyBzZWNvbmRzX3Rp bWUgPCAyMDsgc2Vjb25kc190aW1lKyspCisgCXsKK0BAIC01NjgsOCArNTY1LDkgQEAKKyAJCQl7 CisgCQkJCWlmIChjdHgtPnBhY2tldC5zdHJlYW1faW5kZXggPT0gY3R4LT52aWRlb19zdHJlYW1f aWQpCisgCQkJCXsKKy0JCQkJCWF2Y29kZWNfZGVjb2RlX3ZpZGVvMihjdHgtPmNvZGVjX2N0eCwg Y3R4LT5mcmFtZSwgJmdvdF9mcmFtZSwgJmN0eC0+cGFja2V0KTsKKy0JCQkJCWlmIChnb3RfZnJh bWUpCisrICAgICAgICAgIGF2Y29kZWNfc2VuZF9wYWNrZXQoY3R4LT5jb2RlY19jdHgsICZjdHgt PnBhY2tldCk7CisrICAgICAgICAgIGlmIChhdmNvZGVjX3JlY2VpdmVfZnJhbWUoY3R4LT5jb2Rl Y19jdHgsIGN0eC0+ZnJhbWUpID09IDApCisrCisgCQkJCQl7CisgCQkJCQkJLy8gcHJpbnRmKCIl ZFxuIiwgc2Vla190aW1lKTsKKyAJCQkJCQlpZiAoY3R4LT5wYWNrZXQucHRzIDwgc2Vla190aW1l KQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jY2V4dHJhY3Rvci90ZW1wbGF0ZSBiL3NyY3BrZ3MvY2Nl eHRyYWN0b3IvdGVtcGxhdGUKaW5kZXggODQwNTlmZmQwMjM5OGEuLmE2NzA3NThiY2JlNDFiIDEw MDY0NAotLS0gYS9zcmNwa2dzL2NjZXh0cmFjdG9yL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvY2Nl eHRyYWN0b3IvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdj Y2V4dHJhY3RvcicKIHBrZ25hbWU9Y2NleHRyYWN0b3IKIHZlcnNpb249MC45MwotcmV2aXNpb249 MgorcmV2aXNpb249MwogYnVpbGRfd3Jrc3JjPSJsaW51eCIKIGJ1aWxkX3N0eWxlPWdudS1jb25m aWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWVuYWJsZS1vY3IgLS1lbmFibGUtaGFyZHN1YngiCgpG cm9tIDhjYzFhMjFkN2Y3ZTk3MDRiNDc0Mzk3NDliNTMxYjJjYzg4MTQ1MGEgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwg MjIgTWFyIDIwMjMgMjA6MDE6NDYgLTA0MDAKU3ViamVjdDogW1BBVENIIDAyMC8xMDldIGNocm9t YXByaW50OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvY2hyb21hcHJpbnQvcGF0 Y2hlcy9mZm1wZWc1LnBhdGNoIHwgNTY5ICsrKysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3Mv Y2hyb21hcHJpbnQvdGVtcGxhdGUgICAgICAgICAgICAgIHwgICAyICstCiAyIGZpbGVzIGNoYW5n ZWQsIDU3MCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQg c3JjcGtncy9jaHJvbWFwcmludC9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gKCmRpZmYgLS1naXQgYS9z cmNwa2dzL2Nocm9tYXByaW50L3BhdGNoZXMvZmZtcGVnNS5wYXRjaCBiL3NyY3BrZ3MvY2hyb21h cHJpbnQvcGF0Y2hlcy9mZm1wZWc1LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAwMDAwMDAwLi5hOWZkMzA3YTIzYzhhNAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mv Y2hyb21hcHJpbnQvcGF0Y2hlcy9mZm1wZWc1LnBhdGNoCkBAIC0wLDAgKzEsNTY5IEBACitGcm9t IDhjY2FkNjkzNzE3N2IxYjkyZTQwYWI4ZjQ0NDdlYTI3YmFjMDA5YTcgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCitGcm9tOiA9P1VURi04P3E/THVrPUMzPUExPUM1PUExPTIwTGFsaW5zaz1DMz1C RD89IDxsYWxpbnNreUBnbWFpbC5jb20+CitEYXRlOiBGcmksIDQgTm92IDIwMjIgMjE6NDc6Mzgg KzAxMDAKK1N1YmplY3Q6IFtQQVRDSF0gVXNlIEZGbXBlZyA1LnggKCMxMjApCisKKyogVXNlIEZG bXBlZyA1LjEuMiBmb3IgQ0kgYnVpbGRzCisKKyogQnVpbGQgb24gVWJ1bnR1IDIwLjA0CisKKyog VXBncmFkZSBjb2RlIHRvIEZGbXBlZyA1LnggQVBJcworCisqIE9ubHkgc2V0IEZGbXBlZyBpbmNs dWRlIGRpcnMgaWYgYnVpbGRpbmcgdG9vbHMKKworKiBObyBsb25nZXIgbmVlZGVkCisKKyogVXNl IHVidW50dSAyMC4wNAorLS0tCisgLmdpdGh1Yi93b3JrZmxvd3MvYnVpbGQueW1sICAgICAgICAg ICAgICAgICAgIHwgICA2ICstCisgQ01ha2VMaXN0cy50eHQgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgIDE2IC0tCisgcGFja2FnZS9idWlsZC5zaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgICA0ICstCisgc3JjL2F1ZGlvL2ZmbXBlZ19hdWRpb19wcm9jZXNzb3IuaCAg ICAgICAgICAgIHwgICAyIC0KKyBzcmMvYXVkaW8vZmZtcGVnX2F1ZGlvX3Byb2Nlc3Nvcl9hdnJl c2FtcGxlLmggfCAgNzIgLS0tLS0tLQorIHNyYy9hdWRpby9mZm1wZWdfYXVkaW9fcHJvY2Vzc29y X3N3cmVzYW1wbGUuaCB8ICAxOCArLQorIHNyYy9hdWRpby9mZm1wZWdfYXVkaW9fcmVhZGVyLmgg ICAgICAgICAgICAgICB8IDE5NyArKysrKysrKystLS0tLS0tLS0KKyB0ZXN0cy9DTWFrZUxpc3Rz LnR4dCAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDYgKworIDggZmlsZXMgY2hhbmdlZCwg MTIyIGluc2VydGlvbnMoKyksIDE5OSBkZWxldGlvbnMoLSkKKyBkZWxldGUgbW9kZSAxMDA2NDQg c3JjL2F1ZGlvL2ZmbXBlZ19hdWRpb19wcm9jZXNzb3JfYXZyZXNhbXBsZS5oCisKK2RpZmYgLS1n aXQgYS9DTWFrZUxpc3RzLnR4dCBiL0NNYWtlTGlzdHMudHh0CitpbmRleCBmOGQ2YTMyLi40ZGEy NDA1IDEwMDY0NAorLS0tIGEvQ01ha2VMaXN0cy50eHQKKysrKyBiL0NNYWtlTGlzdHMudHh0CitA QCAtODQsOSArODQsNiBAQCBmaW5kX3BhY2thZ2UoRkZtcGVnKQorIGlmKEZGTVBFR19MSUJSQVJJ RVMpCisgCWNtYWtlX3B1c2hfY2hlY2tfc3RhdGUoUkVTRVQpCisgCXNldChDTUFLRV9SRVFVSVJF RF9MSUJSQVJJRVMgJHtGRk1QRUdfTElCUkFSSUVTfSAke0NNQUtFX1RIUkVBRF9MSUJTX0lOSVR9 IC1sbSkKKy0JY2hlY2tfZnVuY3Rpb25fZXhpc3RzKGF2X3BhY2tldF91bnJlZiBIQVZFX0FWX1BB Q0tFVF9VTlJFRikKKy0JY2hlY2tfZnVuY3Rpb25fZXhpc3RzKGF2X2ZyYW1lX2FsbG9jIEhBVkVf QVZfRlJBTUVfQUxMT0MpCistCWNoZWNrX2Z1bmN0aW9uX2V4aXN0cyhhdl9mcmFtZV9mcmVlIEhB VkVfQVZfRlJBTUVfRlJFRSkKKyAJY21ha2VfcG9wX2NoZWNrX3N0YXRlKCkKKyBlbmRpZigpCisK K0BAIC0xNjMsMTQgKzE2MCwxMSBAQCBtZXNzYWdlKFNUQVRVUyAiVXNpbmcgJHtGRlRfTElCfSBm b3IgRkZUIGNhbGN1bGF0aW9ucyIpCisgaWYoTk9UIEFVRElPX1BST0NFU1NPUl9MSUIpCisgCWlm KEZGTVBFR19MSUJTV1JFU0FNUExFX0ZPVU5EKQorIAkJc2V0KEFVRElPX1BST0NFU1NPUl9MSUIg InN3cmVzYW1wbGUiKQorLQllbHNlaWYoRkZNUEVHX0xJQkFWUkVTQU1QTEVfRk9VTkQpCistCQlz ZXQoQVVESU9fUFJPQ0VTU09SX0xJQiAiYXZyZXNhbXBsZSIpCisgCWVuZGlmKCkKKyBlbmRpZigp CisKKyBpZihBVURJT19QUk9DRVNTT1JfTElCIFNUUkVRVUFMICJzd3Jlc2FtcGxlIikKKyAJaWYo RkZNUEVHX0xJQlNXUkVTQU1QTEVfRk9VTkQpCistCQlzZXQoVVNFX0FWUkVTQU1QTEUgT0ZGKQor IAkJc2V0KFVTRV9TV1JFU0FNUExFIE9OKQorIAkJc2V0KEFVRElPX1BST0NFU1NPUl9MSUJSQVJJ RVMgJHtGRk1QRUdfTElCU1dSRVNBTVBMRV9MSUJSQVJJRVN9KQorIAkJc2V0KEFVRElPX1BST0NF U1NPUl9JTkNMVURFX0RJUlMgJHtGRk1QRUdfTElCU1dSRVNBTVBMRV9JTkNMVURFX0RJUlN9KQor QEAgLTE3OCwxNiArMTcyLDYgQEAgaWYoQVVESU9fUFJPQ0VTU09SX0xJQiBTVFJFUVVBTCAic3dy ZXNhbXBsZSIpCisgCQltZXNzYWdlKEZBVEFMX0VSUk9SICJTZWxlY3RlZCAke0FVRElPX1BST0NF U1NPUl9MSUJ9IGZvciBhdWRpbyBwcm9jZXNzaW5nLCBidXQgdGhlIGxpYnJhcnkgaXMgbm90IGZv dW5kIikKKyAJZW5kaWYoKQorIAltZXNzYWdlKFNUQVRVUyAiVXNpbmcgJHtBVURJT19QUk9DRVNT T1JfTElCfSBmb3IgYXVkaW8gY29udmVyc2lvbiIpCistZWxzZWlmKEFVRElPX1BST0NFU1NPUl9M SUIgU1RSRVFVQUwgImF2cmVzYW1wbGUiKQorLQlpZihGRk1QRUdfTElCQVZSRVNBTVBMRV9GT1VO RCkKKy0JCXNldChVU0VfQVZSRVNBTVBMRSBPTikKKy0JCXNldChVU0VfU1dSRVNBTVBMRSBPRkYp CistCQlzZXQoQVVESU9fUFJPQ0VTU09SX0xJQlJBUklFUyAke0ZGTVBFR19MSUJBVlJFU0FNUExF X0xJQlJBUklFU30pCistCQlzZXQoQVVESU9fUFJPQ0VTU09SX0lOQ0xVREVfRElSUyAke0ZGTVBF R19MSUJBVlJFU0FNUExFX0lOQ0xVREVfRElSU30pCistCWVsc2UoKQorLQkJbWVzc2FnZShGQVRB TF9FUlJPUiAiU2VsZWN0ZWQgJHtBVURJT19QUk9DRVNTT1JfTElCfSBmb3IgYXVkaW8gcHJvY2Vz c2luZywgYnV0IHRoZSBsaWJyYXJ5IGlzIG5vdCBmb3VuZCIpCistCWVuZGlmKCkKKy0JbWVzc2Fn ZShTVEFUVVMgIlVzaW5nICR7QVVESU9fUFJPQ0VTU09SX0xJQn0gZm9yIGF1ZGlvIGNvbnZlcnNp b24iKQorIGVsc2UoKQorIAltZXNzYWdlKFNUQVRVUyAiQnVpbGRpbmcgd2l0aG91dCBhdWRpbyBj b252ZXJzaW9uIHN1cHBvcnQsIHBsZWFzZSBpbnN0YWxsIEZGbXBlZyB3aXRoIGxpYnN3cmVzYW1w bGUiKQorIGVuZGlmKCkKK2RpZmYgLS1naXQgYS9wYWNrYWdlL2J1aWxkLnNoIGIvcGFja2FnZS9i dWlsZC5zaAoraW5kZXggZGE2MzFhZS4uYjQxZDM2ZSAxMDA3NTUKKy0tLSBhL3BhY2thZ2UvYnVp bGQuc2gKKysrKyBiL3BhY2thZ2UvYnVpbGQuc2gKK0BAIC03LDggKzcsOCBAQCBzZXQgLWV1eAor CisgQkFTRV9ESVI9JChjZCAkKGRpcm5hbWUgJDApLy4uICYmIHB3ZCkKKworLUZGTVBFR19WRVJT SU9OPTQuNC4xCistRkZNUEVHX0JVSUxEX1RBRz12NC40LjEtMQorK0ZGTVBFR19WRVJTSU9OPTUu MS4yCisrRkZNUEVHX0JVSUxEX1RBRz12JHtGRk1QRUdfVkVSU0lPTn0tMQorCisgVE1QX0JVSUxE X0RJUj0kQkFTRV9ESVIvJChta3RlbXAgLWQgYnVpbGQuWFhYWFhYWFgpCisgdHJhcCAncm0gLXJm ICRUTVBfQlVJTERfRElSJyBFWElUCitkaWZmIC0tZ2l0IGEvc3JjL2F1ZGlvL2ZmbXBlZ19hdWRp b19wcm9jZXNzb3IuaCBiL3NyYy9hdWRpby9mZm1wZWdfYXVkaW9fcHJvY2Vzc29yLmgKK2luZGV4 IDc2MjhmYzcuLjM5ZjRmNmQgMTAwNjQ0CistLS0gYS9zcmMvYXVkaW8vZmZtcGVnX2F1ZGlvX3By b2Nlc3Nvci5oCisrKysgYi9zcmMvYXVkaW8vZmZtcGVnX2F1ZGlvX3Byb2Nlc3Nvci5oCitAQCAt MTAsOCArMTAsNiBAQAorCisgI2lmIGRlZmluZWQoVVNFX1NXUkVTQU1QTEUpCisgI2luY2x1ZGUg ImF1ZGlvL2ZmbXBlZ19hdWRpb19wcm9jZXNzb3Jfc3dyZXNhbXBsZS5oIgorLSNlbGlmIGRlZmlu ZWQoVVNFX0FWUkVTQU1QTEUpCistI2luY2x1ZGUgImF1ZGlvL2ZmbXBlZ19hdWRpb19wcm9jZXNz b3JfYXZyZXNhbXBsZS5oIgorICNlbHNlCisgI2Vycm9yICJubyBhdWRpbyBwcm9jZXNzaW5nIGxp YnJhcnkiCisgI2VuZGlmCitkaWZmIC0tZ2l0IGEvc3JjL2F1ZGlvL2ZmbXBlZ19hdWRpb19wcm9j ZXNzb3JfYXZyZXNhbXBsZS5oIGIvc3JjL2F1ZGlvL2ZmbXBlZ19hdWRpb19wcm9jZXNzb3JfYXZy ZXNhbXBsZS5oCitkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IGJkODVmOTIuLjAwMDAw MDAKKy0tLSBhL3NyYy9hdWRpby9mZm1wZWdfYXVkaW9fcHJvY2Vzc29yX2F2cmVzYW1wbGUuaAor KysrIC9kZXYvbnVsbAorQEAgLTEsNzIgKzAsMCBAQAorLS8vIENvcHlyaWdodCAoQykgMjAxNiAg THVrYXMgTGFsaW5za3kKKy0vLyBEaXN0cmlidXRlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UsIHNl ZSB0aGUgTElDRU5TRSBmaWxlIGZvciBkZXRhaWxzLgorLQorLSNpZm5kZWYgQ0hST01BUFJJTlRf QVVESU9fRkZNUEVHX0FVRElPX1BST0NFU1NPUl9BVlJFU0FNUExFX0hfCistI2RlZmluZSBDSFJP TUFQUklOVF9BVURJT19GRk1QRUdfQVVESU9fUFJPQ0VTU09SX0FWUkVTQU1QTEVfSF8KKy0KKy1l eHRlcm4gIkMiIHsKKy0jaW5jbHVkZSA8bGliYXZyZXNhbXBsZS9hdnJlc2FtcGxlLmg+CistfQor LQorLW5hbWVzcGFjZSBjaHJvbWFwcmludCB7CistCistY2xhc3MgRkZtcGVnQXVkaW9Qcm9jZXNz b3IgeworLXB1YmxpYzoKKy0JRkZtcGVnQXVkaW9Qcm9jZXNzb3IoKSB7CistCQltX3Jlc2FtcGxl X2N0eCA9IGF2cmVzYW1wbGVfYWxsb2NfY29udGV4dCgpOworLQl9CistCistCX5GRm1wZWdBdWRp b1Byb2Nlc3NvcigpIHsKKy0JCWF2cmVzYW1wbGVfZnJlZSgmbV9yZXNhbXBsZV9jdHgpOworLQl9 CistCistCXZvaWQgU2V0Q29tcGF0aWJsZU1vZGUoKSB7CistCQlhdl9vcHRfc2V0X2ludChtX3Jl c2FtcGxlX2N0eCwgImZpbHRlcl9zaXplIiwgMTYsIDApOworLQkJYXZfb3B0X3NldF9pbnQobV9y ZXNhbXBsZV9jdHgsICJwaGFzZV9zaGlmdCIsIDgsIDApOworLQkJYXZfb3B0X3NldF9pbnQobV9y ZXNhbXBsZV9jdHgsICJsaW5lYXJfaW50ZXJwIiwgMSwgMCk7CistCQlhdl9vcHRfc2V0X2RvdWJs ZShtX3Jlc2FtcGxlX2N0eCwgImN1dG9mZiIsIDAuOCwgMCk7CistCX0KKy0KKy0Jdm9pZCBTZXRJ bnB1dENoYW5uZWxMYXlvdXQoaW50NjRfdCBjaGFubmVsX2xheW91dCkgeworLQkJYXZfb3B0X3Nl dF9pbnQobV9yZXNhbXBsZV9jdHgsICJpbl9jaGFubmVsX2xheW91dCIsIGNoYW5uZWxfbGF5b3V0 LCAwKTsKKy0JfQorLQorLQl2b2lkIFNldElucHV0U2FtcGxlRm9ybWF0KEFWU2FtcGxlRm9ybWF0 IHNhbXBsZV9mb3JtYXQpIHsKKy0JCWF2X29wdF9zZXRfaW50KG1fcmVzYW1wbGVfY3R4LCAiaW5f c2FtcGxlX2ZtdCIsIHNhbXBsZV9mb3JtYXQsIDApOworLQl9CistCistCXZvaWQgU2V0SW5wdXRT YW1wbGVSYXRlKGludCBzYW1wbGVfcmF0ZSkgeworLQkJYXZfb3B0X3NldF9pbnQobV9yZXNhbXBs ZV9jdHgsICJpbl9zYW1wbGVfcmF0ZSIsIHNhbXBsZV9yYXRlLCAwKTsKKy0JfQorLQorLQl2b2lk IFNldE91dHB1dENoYW5uZWxMYXlvdXQoaW50NjRfdCBjaGFubmVsX2xheW91dCkgeworLQkJYXZf b3B0X3NldF9pbnQobV9yZXNhbXBsZV9jdHgsICJvdXRfY2hhbm5lbF9sYXlvdXQiLCBjaGFubmVs X2xheW91dCwgMCk7CistCX0KKy0KKy0Jdm9pZCBTZXRPdXRwdXRTYW1wbGVGb3JtYXQoQVZTYW1w bGVGb3JtYXQgc2FtcGxlX2Zvcm1hdCkgeworLQkJYXZfb3B0X3NldF9pbnQobV9yZXNhbXBsZV9j dHgsICJvdXRfc2FtcGxlX2ZtdCIsIHNhbXBsZV9mb3JtYXQsIDApOworLQl9CistCistCXZvaWQg U2V0T3V0cHV0U2FtcGxlUmF0ZShpbnQgc2FtcGxlX3JhdGUpIHsKKy0JCWF2X29wdF9zZXRfaW50 KG1fcmVzYW1wbGVfY3R4LCAib3V0X3NhbXBsZV9mbXQiLCBzYW1wbGVfcmF0ZSwgMCk7CistCX0K Ky0KKy0JaW50IEluaXQoKSB7CistCQlyZXR1cm4gYXZyZXNhbXBsZV9vcGVuKG1fcmVzYW1wbGVf Y3R4KTsKKy0JfQorLQorLQlpbnQgQ29udmVydCh1aW50OF90ICoqb3V0LCBpbnQgb3V0X2NvdW50 LCBjb25zdCB1aW50OF90ICoqaW4sIGludCBpbl9jb3VudCkgeworLQkJcmV0dXJuIGF2cmVzYW1w bGVfY29udmVydChtX3Jlc2FtcGxlX2N0eCwgb3V0LCAwLCBvdXRfY291bnQsICh1aW50OF90ICoq KSBpbiwgMCwgaW5fY291bnQpOworLQl9CistCistCWludCBGbHVzaCh1aW50OF90ICoqb3V0LCBp bnQgb3V0X2NvdW50KSB7CistCQlyZXR1cm4gYXZyZXNhbXBsZV9yZWFkKG1fcmVzYW1wbGVfY3R4 LCBvdXQsIG91dF9jb3VudCk7CistCX0KKy0KKy1wcml2YXRlOgorLQlBVkF1ZGlvUmVzYW1wbGVD b250ZXh0ICptX3Jlc2FtcGxlX2N0eCA9IG51bGxwdHI7CistfTsKKy0KKy19OyAvLyBuYW1lc3Bh Y2UgY2hyb21hcHJpbnQKKy0KKy0jZW5kaWYKK2RpZmYgLS1naXQgYS9zcmMvYXVkaW8vZmZtcGVn X2F1ZGlvX3Byb2Nlc3Nvcl9zd3Jlc2FtcGxlLmggYi9zcmMvYXVkaW8vZmZtcGVnX2F1ZGlvX3By b2Nlc3Nvcl9zd3Jlc2FtcGxlLmgKK2luZGV4IGI4NjI2NmIuLmIxZDRiZWEgMTAwNjQ0CistLS0g YS9zcmMvYXVkaW8vZmZtcGVnX2F1ZGlvX3Byb2Nlc3Nvcl9zd3Jlc2FtcGxlLmgKKysrKyBiL3Ny Yy9hdWRpby9mZm1wZWdfYXVkaW9fcHJvY2Vzc29yX3N3cmVzYW1wbGUuaAorQEAgLTI4LDMwICsy OCwyOCBAQCBwdWJsaWM6CisgCQlhdl9vcHRfc2V0X2RvdWJsZShtX3N3cl9jdHgsICJjdXRvZmYi LCAwLjgsIDApOworIAl9CisKKy0Jdm9pZCBTZXRJbnB1dENoYW5uZWxMYXlvdXQoaW50NjRfdCBj aGFubmVsX2xheW91dCkgeworLQkJYXZfb3B0X3NldF9pbnQobV9zd3JfY3R4LCAiaWNsIiwgY2hh bm5lbF9sYXlvdXQsIDApOworLQkJYXZfb3B0X3NldF9pbnQobV9zd3JfY3R4LCAiaWNoIiwgYXZf Z2V0X2NoYW5uZWxfbGF5b3V0X25iX2NoYW5uZWxzKGNoYW5uZWxfbGF5b3V0KSwgMCk7CisrCXZv aWQgU2V0SW5wdXRDaGFubmVsTGF5b3V0KEFWQ2hhbm5lbExheW91dCAqY2hhbm5lbF9sYXlvdXQp IHsKKysJCWF2X29wdF9zZXRfaW50KG1fc3dyX2N0eCwgImluX2NoYW5uZWxfbGF5b3V0IiwgY2hh bm5lbF9sYXlvdXQtPnUubWFzaywgMCk7CisgCX0KKworIAl2b2lkIFNldElucHV0U2FtcGxlRm9y bWF0KEFWU2FtcGxlRm9ybWF0IHNhbXBsZV9mb3JtYXQpIHsKKy0JCWF2X29wdF9zZXRfaW50KG1f c3dyX2N0eCwgImlzZiIsIHNhbXBsZV9mb3JtYXQsIDApOworKwkJYXZfb3B0X3NldF9zYW1wbGVf Zm10KG1fc3dyX2N0eCwgImluX3NhbXBsZV9mbXQiLCBzYW1wbGVfZm9ybWF0LCAwKTsKKyAJfQor CisgCXZvaWQgU2V0SW5wdXRTYW1wbGVSYXRlKGludCBzYW1wbGVfcmF0ZSkgeworLQkJYXZfb3B0 X3NldF9pbnQobV9zd3JfY3R4LCAiaXNyIiwgc2FtcGxlX3JhdGUsIDApOworKwkJYXZfb3B0X3Nl dF9pbnQobV9zd3JfY3R4LCAiaW5fc2FtcGxlX3JhdGUiLCBzYW1wbGVfcmF0ZSwgMCk7CisgCX0K KworLQl2b2lkIFNldE91dHB1dENoYW5uZWxMYXlvdXQoaW50NjRfdCBjaGFubmVsX2xheW91dCkg eworLQkJYXZfb3B0X3NldF9pbnQobV9zd3JfY3R4LCAib2NsIiwgY2hhbm5lbF9sYXlvdXQsIDAp OworLQkJYXZfb3B0X3NldF9pbnQobV9zd3JfY3R4LCAib2NoIiwgYXZfZ2V0X2NoYW5uZWxfbGF5 b3V0X25iX2NoYW5uZWxzKGNoYW5uZWxfbGF5b3V0KSwgMCk7CisrCXZvaWQgU2V0T3V0cHV0Q2hh bm5lbExheW91dChBVkNoYW5uZWxMYXlvdXQgKmNoYW5uZWxfbGF5b3V0KSB7CisrCQlhdl9vcHRf c2V0X2ludChtX3N3cl9jdHgsICJvdXRfY2hhbm5lbF9sYXlvdXQiLCBjaGFubmVsX2xheW91dC0+ dS5tYXNrLCAwKTsKKyAJfQorCisgCXZvaWQgU2V0T3V0cHV0U2FtcGxlRm9ybWF0KEFWU2FtcGxl Rm9ybWF0IHNhbXBsZV9mb3JtYXQpIHsKKy0JCWF2X29wdF9zZXRfaW50KG1fc3dyX2N0eCwgIm9z ZiIsIHNhbXBsZV9mb3JtYXQsIDApOworKwkJYXZfb3B0X3NldF9zYW1wbGVfZm10KG1fc3dyX2N0 eCwgIm91dF9zYW1wbGVfZm10Iiwgc2FtcGxlX2Zvcm1hdCwgMCk7CisgCX0KKworIAl2b2lkIFNl dE91dHB1dFNhbXBsZVJhdGUoaW50IHNhbXBsZV9yYXRlKSB7CistCQlhdl9vcHRfc2V0X2ludCht X3N3cl9jdHgsICJvc3IiLCBzYW1wbGVfcmF0ZSwgMCk7CisrCQlhdl9vcHRfc2V0X2ludChtX3N3 cl9jdHgsICJvdXRfc2FtcGxlX3JhdGUiLCBzYW1wbGVfcmF0ZSwgMCk7CisgCX0KKworIAlpbnQg SW5pdCgpIHsKK2RpZmYgLS1naXQgYS9zcmMvYXVkaW8vZmZtcGVnX2F1ZGlvX3JlYWRlci5oIGIv c3JjL2F1ZGlvL2ZmbXBlZ19hdWRpb19yZWFkZXIuaAoraW5kZXggNTU1MDE2NC4uMWM2YjM0NiAx MDA2NDQKKy0tLSBhL3NyYy9hdWRpby9mZm1wZWdfYXVkaW9fcmVhZGVyLmgKKysrKyBiL3NyYy9h dWRpby9mZm1wZWdfYXVkaW9fcmVhZGVyLmgKK0BAIC02Miw3ICs2Miw3IEBAIHB1YmxpYzoKKyAJ Ym9vbCBSZWFkKGNvbnN0IGludDE2X3QgKipkYXRhLCBzaXplX3QgKnNpemUpOworCisgCWJvb2wg SXNPcGVuKCkgY29uc3QgeyByZXR1cm4gbV9vcGVuZWQ7IH0KKy0JYm9vbCBJc0ZpbmlzaGVkKCkg Y29uc3QgeyByZXR1cm4gbV9maW5pc2hlZCAmJiAhbV9nb3RfZnJhbWU7IH0KKysJYm9vbCBJc0Zp bmlzaGVkKCkgY29uc3QgeyByZXR1cm4gIW1faGFzX21vcmVfcGFja2V0cyAmJiAhbV9oYXNfbW9y ZV9mcmFtZXM7IH0KKworIAlzdGQ6OnN0cmluZyBHZXRFcnJvcigpIGNvbnN0IHsgcmV0dXJuIG1f ZXJyb3I7IH0KKyAJaW50IEdldEVycm9yQ29kZSgpIGNvbnN0IHsgcmV0dXJuIG1fZXJyb3JfY29k ZTsgfQorQEAgLTc0LDIwICs3NCwxOSBAQCBwcml2YXRlOgorIAl1aW50OF90ICptX2NvbnZlcnRf YnVmZmVyWzFdID0geyBudWxscHRyIH07CisgCWludCBtX2NvbnZlcnRfYnVmZmVyX25iX3NhbXBs ZXMgPSAwOworCistCUFWSW5wdXRGb3JtYXQgKm1faW5wdXRfZm10ID0gbnVsbHB0cjsKKysJY29u c3QgQVZJbnB1dEZvcm1hdCAqbV9pbnB1dF9mbXQgPSBudWxscHRyOworIAlBVkRpY3Rpb25hcnkg Km1faW5wdXRfb3B0cyA9IG51bGxwdHI7CisKKyAJQVZGb3JtYXRDb250ZXh0ICptX2Zvcm1hdF9j dHggPSBudWxscHRyOworIAlBVkNvZGVjQ29udGV4dCAqbV9jb2RlY19jdHggPSBudWxscHRyOwor LQlBVkZyYW1lICptX2ZyYW1lID0gbnVsbHB0cjsKKyAJaW50IG1fc3RyZWFtX2luZGV4ID0gLTE7 CisgCXN0ZDo6c3RyaW5nIG1fZXJyb3I7CisgCWludCBtX2Vycm9yX2NvZGUgPSAwOworLQlib29s IG1fZmluaXNoZWQgPSBmYWxzZTsKKyAJYm9vbCBtX29wZW5lZCA9IGZhbHNlOworLQlpbnQgbV9n b3RfZnJhbWUgPSAwOworLQlBVlBhY2tldCBtX3BhY2tldDsKKy0JQVZQYWNrZXQgbV9wYWNrZXQw OworKwlib29sIG1faGFzX21vcmVfcGFja2V0cyA9IHRydWU7CisrCWJvb2wgbV9oYXNfbW9yZV9m cmFtZXMgPSB0cnVlOworKwlBVlBhY2tldCAqbV9wYWNrZXQgPSBudWxscHRyOworKwlBVkZyYW1l ICptX2ZyYW1lID0gbnVsbHB0cjsKKworIAlpbnQgbV9vdXRwdXRfc2FtcGxlX3JhdGUgPSAwOwor IAlpbnQgbV9vdXRwdXRfY2hhbm5lbHMgPSAwOworQEAgLTk4LDE5ICs5NywxMiBAQCBwcml2YXRl OgorCisgaW5saW5lIEZGbXBlZ0F1ZGlvUmVhZGVyOjpGRm1wZWdBdWRpb1JlYWRlcigpIHsKKyAJ YXZfbG9nX3NldF9sZXZlbChBVl9MT0dfUVVJRVQpOworLQorLQlhdl9pbml0X3BhY2tldCgmbV9w YWNrZXQpOworLQltX3BhY2tldC5kYXRhID0gbnVsbHB0cjsKKy0JbV9wYWNrZXQuc2l6ZSA9IDA7 CistCistCW1fcGFja2V0MCA9IG1fcGFja2V0OworIH0KKworIGlubGluZSBGRm1wZWdBdWRpb1Jl YWRlcjo6fkZGbXBlZ0F1ZGlvUmVhZGVyKCkgeworIAlDbG9zZSgpOworIAlhdl9kaWN0X2ZyZWUo Jm1faW5wdXRfb3B0cyk7CisgCWF2X2ZyZWVwKCZtX2NvbnZlcnRfYnVmZmVyWzBdKTsKKy0JYXZf cGFja2V0X3VucmVmKCZtX3BhY2tldDApOworIH0KKworIGlubGluZSBib29sIEZGbXBlZ0F1ZGlv UmVhZGVyOjpTZXRJbnB1dEZvcm1hdChjb25zdCBjaGFyICpuYW1lKSB7CitAQCAtMTM1LDExICsx MjcsMTAgQEAgaW5saW5lIGJvb2wgRkZtcGVnQXVkaW9SZWFkZXI6Ok9wZW4oY29uc3Qgc3RkOjpz dHJpbmcgJmZpbGVfbmFtZSkgeworCisgCUNsb3NlKCk7CisKKy0gICAgYXZfaW5pdF9wYWNrZXQo Jm1fcGFja2V0KTsKKy0JbV9wYWNrZXQuZGF0YSA9IG51bGxwdHI7CistCW1fcGFja2V0LnNpemUg PSAwOworLQorLQltX3BhY2tldDAgPSBtX3BhY2tldDsKKysJbV9wYWNrZXQgPSBhdl9wYWNrZXRf YWxsb2MoKTsKKysJaWYgKCFtX3BhY2tldCkgeworKwkJcmV0dXJuIGZhbHNlOworKwl9CisKKyAJ cmV0ID0gYXZmb3JtYXRfb3Blbl9pbnB1dCgmbV9mb3JtYXRfY3R4LCBmaWxlX25hbWUuY19zdHIo KSwgbV9pbnB1dF9mbXQsICZtX2lucHV0X29wdHMpOworIAlpZiAocmV0IDwgMCkgeworQEAgLTE1 MywyNiArMTQ0LDMxIEBAIGlubGluZSBib29sIEZGbXBlZ0F1ZGlvUmVhZGVyOjpPcGVuKGNvbnN0 IHN0ZDo6c3RyaW5nICZmaWxlX25hbWUpIHsKKyAJCXJldHVybiBmYWxzZTsKKyAJfQorCistCUFW Q29kZWMgKmNvZGVjOworKwljb25zdCBBVkNvZGVjICpjb2RlYzsKKyAJcmV0ID0gYXZfZmluZF9i ZXN0X3N0cmVhbShtX2Zvcm1hdF9jdHgsIEFWTUVESUFfVFlQRV9BVURJTywgLTEsIC0xLCAmY29k ZWMsIDApOworIAlpZiAocmV0IDwgMCkgeworIAkJU2V0RXJyb3IoIkNvdWxkIG5vdCBmaW5kIGFu eSBhdWRpbyBzdHJlYW0gaW4gdGhlIGZpbGUiLCByZXQpOworIAkJcmV0dXJuIGZhbHNlOworIAl9 CisgCW1fc3RyZWFtX2luZGV4ID0gcmV0OworKwlhdXRvIHN0cmVhbSA9IG1fZm9ybWF0X2N0eC0+ c3RyZWFtc1ttX3N0cmVhbV9pbmRleF07CisKKy0JbV9jb2RlY19jdHggPSBtX2Zvcm1hdF9jdHgt PnN0cmVhbXNbbV9zdHJlYW1faW5kZXhdLT5jb2RlYzsKKysJbV9jb2RlY19jdHggPSBhdmNvZGVj X2FsbG9jX2NvbnRleHQzKGNvZGVjKTsKKyAJbV9jb2RlY19jdHgtPnJlcXVlc3Rfc2FtcGxlX2Zt dCA9IEFWX1NBTVBMRV9GTVRfUzE2OworCisrCXJldCA9IGF2Y29kZWNfcGFyYW1ldGVyc190b19j b250ZXh0KG1fY29kZWNfY3R4LCBzdHJlYW0tPmNvZGVjcGFyKTsKKysJaWYgKHJldCA8IDApIHsK KysJCVNldEVycm9yKCJDb3VsZCBub3QgY29weSB0aGUgc3RyZWFtIHBhcmFtZXRlcnMiLCByZXQp OworKwkJcmV0dXJuIGZhbHNlOworKwl9CisrCisgCXJldCA9IGF2Y29kZWNfb3BlbjIobV9jb2Rl Y19jdHgsIGNvZGVjLCBudWxscHRyKTsKKyAJaWYgKHJldCA8IDApIHsKKyAJCVNldEVycm9yKCJD b3VsZCBub3Qgb3BlbiB0aGUgY29kZWMiLCByZXQpOworIAkJcmV0dXJuIGZhbHNlOworIAl9CisK Ky0JaWYgKCFtX2NvZGVjX2N0eC0+Y2hhbm5lbF9sYXlvdXQpIHsKKy0JCW1fY29kZWNfY3R4LT5j aGFubmVsX2xheW91dCA9IGF2X2dldF9kZWZhdWx0X2NoYW5uZWxfbGF5b3V0KG1fY29kZWNfY3R4 LT5jaGFubmVscyk7CistCX0KKysJYXZfZHVtcF9mb3JtYXQobV9mb3JtYXRfY3R4LCAwLCAiZm9v IiwgMCk7CisKKyAJbV9mcmFtZSA9IGF2X2ZyYW1lX2FsbG9jKCk7CisgCWlmICghbV9mcmFtZSkg eworQEAgLTE4MywxOSArMTc5LDIzIEBAIGlubGluZSBib29sIEZGbXBlZ0F1ZGlvUmVhZGVyOjpP cGVuKGNvbnN0IHN0ZDo6c3RyaW5nICZmaWxlX25hbWUpIHsKKyAJCW1fb3V0cHV0X3NhbXBsZV9y YXRlID0gbV9jb2RlY19jdHgtPnNhbXBsZV9yYXRlOworIAl9CisKKy0JaWYgKCFtX291dHB1dF9j aGFubmVscykgeworLQkJbV9vdXRwdXRfY2hhbm5lbHMgPSBtX2NvZGVjX2N0eC0+Y2hhbm5lbHM7 CisrCUFWQ2hhbm5lbExheW91dCBvdXRwdXRfY2hhbm5lbF9sYXlvdXQ7CisrCWlmIChtX291dHB1 dF9jaGFubmVscykgeworKwkJYXZfY2hhbm5lbF9sYXlvdXRfZGVmYXVsdCgmb3V0cHV0X2NoYW5u ZWxfbGF5b3V0LCBtX291dHB1dF9jaGFubmVscyk7CisrCX0gZWxzZSB7CisrCQltX291dHB1dF9j aGFubmVscyA9IG1fY29kZWNfY3R4LT5jaF9sYXlvdXQubmJfY2hhbm5lbHM7CisrCQlhdl9jaGFu bmVsX2xheW91dF9kZWZhdWx0KCZvdXRwdXRfY2hhbm5lbF9sYXlvdXQsIG1fb3V0cHV0X2NoYW5u ZWxzKTsKKyAJfQorCistCWlmIChtX2NvZGVjX2N0eC0+c2FtcGxlX2ZtdCAhPSBBVl9TQU1QTEVf Rk1UX1MxNiB8fCBtX2NvZGVjX2N0eC0+Y2hhbm5lbHMgIT0gbV9vdXRwdXRfY2hhbm5lbHMgfHwg bV9jb2RlY19jdHgtPnNhbXBsZV9yYXRlICE9IG1fb3V0cHV0X3NhbXBsZV9yYXRlKSB7CisrCWlm IChtX2NvZGVjX2N0eC0+c2FtcGxlX2ZtdCAhPSBBVl9TQU1QTEVfRk1UX1MxNiB8fCBtX2NvZGVj X2N0eC0+Y2hfbGF5b3V0Lm5iX2NoYW5uZWxzICE9IG1fb3V0cHV0X2NoYW5uZWxzIHx8IG1fY29k ZWNfY3R4LT5zYW1wbGVfcmF0ZSAhPSBtX291dHB1dF9zYW1wbGVfcmF0ZSkgeworIAkJbV9jb252 ZXJ0ZXIucmVzZXQobmV3IEZGbXBlZ0F1ZGlvUHJvY2Vzc29yKCkpOworIAkJbV9jb252ZXJ0ZXIt PlNldENvbXBhdGlibGVNb2RlKCk7CisgCQltX2NvbnZlcnRlci0+U2V0SW5wdXRTYW1wbGVGb3Jt YXQobV9jb2RlY19jdHgtPnNhbXBsZV9mbXQpOworIAkJbV9jb252ZXJ0ZXItPlNldElucHV0U2Ft cGxlUmF0ZShtX2NvZGVjX2N0eC0+c2FtcGxlX3JhdGUpOworLQkJbV9jb252ZXJ0ZXItPlNldElu cHV0Q2hhbm5lbExheW91dChtX2NvZGVjX2N0eC0+Y2hhbm5lbF9sYXlvdXQpOworKwkJbV9jb252 ZXJ0ZXItPlNldElucHV0Q2hhbm5lbExheW91dCgmKG1fY29kZWNfY3R4LT5jaF9sYXlvdXQpKTsK KyAJCW1fY29udmVydGVyLT5TZXRPdXRwdXRTYW1wbGVGb3JtYXQoQVZfU0FNUExFX0ZNVF9TMTYp OworIAkJbV9jb252ZXJ0ZXItPlNldE91dHB1dFNhbXBsZVJhdGUobV9vdXRwdXRfc2FtcGxlX3Jh dGUpOworLQkJbV9jb252ZXJ0ZXItPlNldE91dHB1dENoYW5uZWxMYXlvdXQoYXZfZ2V0X2RlZmF1 bHRfY2hhbm5lbF9sYXlvdXQobV9vdXRwdXRfY2hhbm5lbHMpKTsKKysJCW1fY29udmVydGVyLT5T ZXRPdXRwdXRDaGFubmVsTGF5b3V0KCZvdXRwdXRfY2hhbm5lbF9sYXlvdXQpOworIAkJYXV0byBy ZXQgPSBtX2NvbnZlcnRlci0+SW5pdCgpOworIAkJaWYgKHJldCAhPSAwKSB7CisgCQkJU2V0RXJy b3IoIkNvdWxkIG5vdCBjcmVhdGUgYW4gYXVkaW8gY29udmVydGVyIGluc3RhbmNlIiwgcmV0KTsK K0BAIC0yMDMsMTAgKzIwMywxMSBAQCBpbmxpbmUgYm9vbCBGRm1wZWdBdWRpb1JlYWRlcjo6T3Bl bihjb25zdCBzdGQ6OnN0cmluZyAmZmlsZV9uYW1lKSB7CisgCQl9CisgCX0KKworKwlhdl9jaGFu bmVsX2xheW91dF91bmluaXQoJm91dHB1dF9jaGFubmVsX2xheW91dCk7CisrCisgCW1fb3BlbmVk ID0gdHJ1ZTsKKy0JbV9maW5pc2hlZCA9IGZhbHNlOworLQltX2dvdF9mcmFtZSA9IDA7CistCW1f bmJfcGFja2V0cyA9IDA7CisrCW1faGFzX21vcmVfcGFja2V0cyA9IHRydWU7CisrCW1faGFzX21v cmVfZnJhbWVzID0gdHJ1ZTsKKyAJbV9kZWNvZGVfZXJyb3IgPSAwOworCisgCXJldHVybiB0cnVl OworQEAgLTIxNCw2ICsyMTUsNyBAQCBpbmxpbmUgYm9vbCBGRm1wZWdBdWRpb1JlYWRlcjo6T3Bl bihjb25zdCBzdGQ6OnN0cmluZyAmZmlsZV9uYW1lKSB7CisKKyBpbmxpbmUgdm9pZCBGRm1wZWdB dWRpb1JlYWRlcjo6Q2xvc2UoKSB7CisgCWF2X2ZyYW1lX2ZyZWUoJm1fZnJhbWUpOworKwlhdl9w YWNrZXRfZnJlZSgmbV9wYWNrZXQpOworCisgCW1fc3RyZWFtX2luZGV4ID0gLTE7CisKK0BAIC0y NTIsOTEgKzI1NCw5OCBAQCBpbmxpbmUgYm9vbCBGRm1wZWdBdWRpb1JlYWRlcjo6UmVhZChjb25z dCBpbnQxNl90ICoqZGF0YSwgc2l6ZV90ICpzaXplKSB7CisgCQlyZXR1cm4gZmFsc2U7CisgCX0K KworKwkqZGF0YSA9IG51bGxwdHI7CisrCSpzaXplID0gMDsKKysKKyAJaW50IHJldDsKKysJYm9v bCBuZWVkc19wYWNrZXQgPSBmYWxzZTsKKyAJd2hpbGUgKHRydWUpIHsKKy0JCXdoaWxlIChtX3Bh Y2tldC5zaXplIDw9IDApIHsKKy0JCQlhdl9wYWNrZXRfdW5yZWYoJm1fcGFja2V0MCk7CistCQkJ YXZfaW5pdF9wYWNrZXQoJm1fcGFja2V0KTsKKy0JCQltX3BhY2tldC5kYXRhID0gbnVsbHB0cjsK Ky0JCQltX3BhY2tldC5zaXplID0gMDsKKy0JCQlyZXQgPSBhdl9yZWFkX2ZyYW1lKG1fZm9ybWF0 X2N0eCwgJm1fcGFja2V0KTsKKysJCXdoaWxlIChuZWVkc19wYWNrZXQgJiYgbV9wYWNrZXQtPnNp emUgPT0gMCkgeworKwkJCXJldCA9IGF2X3JlYWRfZnJhbWUobV9mb3JtYXRfY3R4LCBtX3BhY2tl dCk7CisgCQkJaWYgKHJldCA8IDApIHsKKyAJCQkJaWYgKHJldCA9PSBBVkVSUk9SX0VPRikgewor LQkJCQkJbV9maW5pc2hlZCA9IHRydWU7CisrCQkJCQluZWVkc19wYWNrZXQgPSBmYWxzZTsKKysJ CQkJCW1faGFzX21vcmVfcGFja2V0cyA9IGZhbHNlOworIAkJCQkJYnJlYWs7CistCQkJCX0gZWxz ZSB7CisrCQkJCX0KKysJCQkJU2V0RXJyb3IoIkVycm9yIHJlYWRpbmcgZnJvbSB0aGUgYXVkaW8g c291cmNlIiwgcmV0KTsKKysJCQkJcmV0dXJuIGZhbHNlOworKwkJCX0KKysJCQlpZiAobV9wYWNr ZXQtPnN0cmVhbV9pbmRleCA9PSBtX3N0cmVhbV9pbmRleCkgeworKwkJCQluZWVkc19wYWNrZXQg PSBmYWxzZTsKKysJCQl9IGVsc2UgeworKwkJCQlhdl9wYWNrZXRfdW5yZWYobV9wYWNrZXQpOwor KwkJCX0KKysJCX0KKysKKysJCWlmIChtX3BhY2tldC0+c2l6ZSAhPSAwKSB7CisrCQkJcmV0ID0g YXZjb2RlY19zZW5kX3BhY2tldChtX2NvZGVjX2N0eCwgbV9wYWNrZXQpOworKwkJCWlmIChyZXQg PCAwKSB7CisrCQkJCWlmIChyZXQgIT0gQVZFUlJPUihFQUdBSU4pKSB7CisgCQkJCQlTZXRFcnJv cigiRXJyb3IgcmVhZGluZyBmcm9tIHRoZSBhdWRpbyBzb3VyY2UiLCByZXQpOworIAkJCQkJcmV0 dXJuIGZhbHNlOworIAkJCQl9CistCQkJfQorLQkJCW1fcGFja2V0MCA9IG1fcGFja2V0OworLQkJ CWlmIChtX3BhY2tldC5zdHJlYW1faW5kZXggIT0gbV9zdHJlYW1faW5kZXgpIHsKKy0JCQkJbV9w YWNrZXQuZGF0YSA9IG51bGxwdHI7CistCQkJCW1fcGFja2V0LnNpemUgPSAwOworIAkJCX0gZWxz ZSB7CistCQkJCW1fbmJfcGFja2V0cysrOworKwkJCQlhdl9wYWNrZXRfdW5yZWYobV9wYWNrZXQp OworIAkJCX0KKyAJCX0KKworLQkJcmV0ID0gYXZjb2RlY19kZWNvZGVfYXVkaW80KG1fY29kZWNf Y3R4LCBtX2ZyYW1lLCAmbV9nb3RfZnJhbWUsICZtX3BhY2tldCk7CisrCQlyZXQgPSBhdmNvZGVj X3JlY2VpdmVfZnJhbWUobV9jb2RlY19jdHgsIG1fZnJhbWUpOworIAkJaWYgKHJldCA8IDApIHsK Ky0JCQlpZiAobV9kZWNvZGVfZXJyb3IpIHsKKy0JCQkJU2V0RXJyb3IoIkVycm9yIGRlY29kaW5n IGF1ZGlvIGZyYW1lIiwgbV9kZWNvZGVfZXJyb3IpOworLQkJCQlyZXR1cm4gZmFsc2U7CisrCQkJ aWYgKHJldCA9PSBBVkVSUk9SX0VPRikgeworKwkJCQltX2hhc19tb3JlX2ZyYW1lcyA9IGZhbHNl OworKwkJCX0gZWxzZSBpZiAocmV0ID09IEFWRVJST1IoRUFHQUlOKSkgeworKwkJCQlpZiAobV9o YXNfbW9yZV9wYWNrZXRzKSB7CisrCQkJCQluZWVkc19wYWNrZXQgPSB0cnVlOworKwkJCQkJY29u dGludWU7CisrCQkJCX0gZWxzZSB7CisrCQkJCQltX2hhc19tb3JlX2ZyYW1lcyA9IGZhbHNlOwor KwkJCQl9CisgCQkJfQorLQkJCW1fZGVjb2RlX2Vycm9yID0gcmV0OworLQkJCW1fcGFja2V0LmRh dGEgPSBudWxscHRyOworLQkJCW1fcGFja2V0LnNpemUgPSAwOworLQkJCWNvbnRpbnVlOworKwkJ CVNldEVycm9yKCJFcnJvciBkZWNvZGluZyB0aGUgYXVkaW8gc291cmNlIiwgcmV0KTsKKysJCQly ZXR1cm4gZmFsc2U7CisgCQl9CisKKy0JCWJyZWFrOworLQl9CistCistCW1fZGVjb2RlX2Vycm9y ID0gMDsKKy0KKy0JY29uc3QgaW50IGRlY29kZWQgPSBzdGQ6Om1pbihyZXQsIG1fcGFja2V0LnNp emUpOworLQltX3BhY2tldC5kYXRhICs9IGRlY29kZWQ7CistCW1fcGFja2V0LnNpemUgLT0gZGVj b2RlZDsKKy0KKy0JaWYgKG1fZ290X2ZyYW1lKSB7CistCQlpZiAobV9jb252ZXJ0ZXIpIHsKKy0J CQlpZiAobV9mcmFtZS0+bmJfc2FtcGxlcyA+IG1fY29udmVydF9idWZmZXJfbmJfc2FtcGxlcykg eworLQkJCQlpbnQgbGluc2l6ZTsKKy0JCQkJYXZfZnJlZXAoJm1fY29udmVydF9idWZmZXJbMF0p OworLQkJCQltX2NvbnZlcnRfYnVmZmVyX25iX3NhbXBsZXMgPSBzdGQ6Om1heCgxMDI0ICogOCwg bV9mcmFtZS0+bmJfc2FtcGxlcyk7CistCQkJCXJldCA9IGF2X3NhbXBsZXNfYWxsb2MobV9jb252 ZXJ0X2J1ZmZlciwgJmxpbnNpemUsIG1fY29kZWNfY3R4LT5jaGFubmVscywgbV9jb252ZXJ0X2J1 ZmZlcl9uYl9zYW1wbGVzLCBBVl9TQU1QTEVfRk1UX1MxNiwgMSk7CistCQkJCWlmIChyZXQgPCAw KSB7CistCQkJCQlTZXRFcnJvcigiQ291bGRuJ3QgYWxsb2NhdGUgYXVkaW8gY29udmVydGVyIGJ1 ZmZlciIsIHJldCk7CisrCQlpZiAobV9mcmFtZS0+bmJfc2FtcGxlcyA+IDApIHsKKysJCQlpZiAo bV9jb252ZXJ0ZXIpIHsKKysJCQkJaWYgKG1fZnJhbWUtPm5iX3NhbXBsZXMgPiBtX2NvbnZlcnRf YnVmZmVyX25iX3NhbXBsZXMpIHsKKysJCQkJCWludCBsaW5zaXplOworKwkJCQkJYXZfZnJlZXAo Jm1fY29udmVydF9idWZmZXJbMF0pOworKwkJCQkJbV9jb252ZXJ0X2J1ZmZlcl9uYl9zYW1wbGVz ID0gc3RkOjptYXgoMTAyNCAqIDgsIG1fZnJhbWUtPm5iX3NhbXBsZXMpOworKwkJCQkJcmV0ID0g YXZfc2FtcGxlc19hbGxvYyhtX2NvbnZlcnRfYnVmZmVyLCAmbGluc2l6ZSwgbV9jb2RlY19jdHgt PmNoX2xheW91dC5uYl9jaGFubmVscywgbV9jb252ZXJ0X2J1ZmZlcl9uYl9zYW1wbGVzLCBBVl9T QU1QTEVfRk1UX1MxNiwgMSk7CisrCQkJCQlpZiAocmV0IDwgMCkgeworKwkJCQkJCVNldEVycm9y KCJDb3VsZG4ndCBhbGxvY2F0ZSBhdWRpbyBjb252ZXJ0ZXIgYnVmZmVyIiwgcmV0KTsKKysJCQkJ CQlyZXR1cm4gZmFsc2U7CisrCQkJCQl9CisrCQkJCX0KKysJCQkJYXV0byBuYl9zYW1wbGVzID0g bV9jb252ZXJ0ZXItPkNvbnZlcnQobV9jb252ZXJ0X2J1ZmZlciwgbV9jb252ZXJ0X2J1ZmZlcl9u Yl9zYW1wbGVzLCAoY29uc3QgdWludDhfdCAqKikgbV9mcmFtZS0+ZGF0YSwgbV9mcmFtZS0+bmJf c2FtcGxlcyk7CisrCQkJCWlmIChuYl9zYW1wbGVzIDwgMCkgeworKwkJCQkJU2V0RXJyb3IoIkNv dWxkbid0IGNvbnZlcnQgYXVkaW8iLCByZXQpOworIAkJCQkJcmV0dXJuIGZhbHNlOworIAkJCQl9 CistCQkJfQorLQkJCWF1dG8gbmJfc2FtcGxlcyA9IG1fY29udmVydGVyLT5Db252ZXJ0KG1fY29u dmVydF9idWZmZXIsIG1fY29udmVydF9idWZmZXJfbmJfc2FtcGxlcywgKGNvbnN0IHVpbnQ4X3Qg KiopIG1fZnJhbWUtPmRhdGEsIG1fZnJhbWUtPm5iX3NhbXBsZXMpOworLQkJCWlmIChuYl9zYW1w bGVzIDwgMCkgeworLQkJCQlTZXRFcnJvcigiQ291bGRuJ3QgY29udmVydCBhdWRpbyIsIHJldCk7 CistCQkJCXJldHVybiBmYWxzZTsKKy0JCQl9CistCQkJKmRhdGEgPSAoY29uc3QgaW50MTZfdCAq KSBtX2NvbnZlcnRfYnVmZmVyWzBdOworLQkJCSpzaXplID0gbmJfc2FtcGxlczsKKy0JCX0gZWxz ZSB7CistCQkJKmRhdGEgPSAoY29uc3QgaW50MTZfdCAqKSBtX2ZyYW1lLT5kYXRhWzBdOworLQkJ CSpzaXplID0gbV9mcmFtZS0+bmJfc2FtcGxlczsKKy0JCX0KKy0JfSBlbHNlIHsKKy0JCWlmICht X2ZpbmlzaGVkICYmIG1fY29udmVydGVyKSB7CistCQkJYXV0byBuYl9zYW1wbGVzID0gbV9jb252 ZXJ0ZXItPkZsdXNoKG1fY29udmVydF9idWZmZXIsIG1fY29udmVydF9idWZmZXJfbmJfc2FtcGxl cyk7CistCQkJaWYgKG5iX3NhbXBsZXMgPCAwKSB7CistCQkJCVNldEVycm9yKCJDb3VsZG4ndCBj b252ZXJ0IGF1ZGlvIiwgcmV0KTsKKy0JCQkJcmV0dXJuIGZhbHNlOworLQkJCX0gZWxzZSBpZiAo bmJfc2FtcGxlcyA+IDApIHsKKy0JCQkJbV9nb3RfZnJhbWUgPSAxOworIAkJCQkqZGF0YSA9IChj b25zdCBpbnQxNl90ICopIG1fY29udmVydF9idWZmZXJbMF07CisgCQkJCSpzaXplID0gbmJfc2Ft cGxlczsKKysJCQl9IGVsc2UgeworKwkJCQkqZGF0YSA9IChjb25zdCBpbnQxNl90ICopIG1fZnJh bWUtPmRhdGFbMF07CisrCQkJCSpzaXplID0gbV9mcmFtZS0+bmJfc2FtcGxlczsKKysJCQl9Cisr CQl9IGVsc2UgeworKwkJCWlmIChtX2NvbnZlcnRlcikgeworKwkJCQlpZiAoSXNGaW5pc2hlZCgp KSB7CisrCQkJCQlhdXRvIG5iX3NhbXBsZXMgPSBtX2NvbnZlcnRlci0+Rmx1c2gobV9jb252ZXJ0 X2J1ZmZlciwgbV9jb252ZXJ0X2J1ZmZlcl9uYl9zYW1wbGVzKTsKKysJCQkJCWlmIChuYl9zYW1w bGVzIDwgMCkgeworKwkJCQkJCVNldEVycm9yKCJDb3VsZG4ndCBjb252ZXJ0IGF1ZGlvIiwgcmV0 KTsKKysJCQkJCQlyZXR1cm4gZmFsc2U7CisrCQkJCQl9IGVsc2UgaWYgKG5iX3NhbXBsZXMgPiAw KSB7CisrCQkJCQkJKmRhdGEgPSAoY29uc3QgaW50MTZfdCAqKSBtX2NvbnZlcnRfYnVmZmVyWzBd OworKwkJCQkJCSpzaXplID0gbmJfc2FtcGxlczsKKysJCQkJCX0KKysJCQkJfQorIAkJCX0KKyAJ CX0KKy0JfQorCistCXJldHVybiB0cnVlOworKwkJcmV0dXJuIHRydWU7CisrCX0KKyB9CisKKyBp bmxpbmUgdm9pZCBGRm1wZWdBdWRpb1JlYWRlcjo6U2V0RXJyb3IoY29uc3QgY2hhciAqbWVzc2Fn ZSwgaW50IGVycm51bSkgeworZGlmZiAtLWdpdCBhL3Rlc3RzL0NNYWtlTGlzdHMudHh0IGIvdGVz dHMvQ01ha2VMaXN0cy50eHQKK2luZGV4IGEyYjUxN2IuLjEyM2U2NDMgMTAwNjQ0CistLS0gYS90 ZXN0cy9DTWFrZUxpc3RzLnR4dAorKysrIGIvdGVzdHMvQ01ha2VMaXN0cy50eHQKK0BAIC0zOCw2 ICszOCwxMiBAQCBzZXQoU1JDUworCisgaWYoQlVJTERfVE9PTFMpCisgCXNldChTUkNTICR7U1JD U30gLi4vc3JjL2F1ZGlvL2ZmbXBlZ19hdWRpb19yZWFkZXJfdGVzdC5jcHApCisrICAgIGluY2x1 ZGVfZGlyZWN0b3JpZXMoCisrICAgICAgICAke0ZGTVBFR19MSUJBVkZPUk1BVF9JTkNMVURFX0RJ UlN9CisrICAgICAgICAke0ZGTVBFR19MSUJBVkNPREVDX0lOQ0xVREVfRElSU30KKysgICAgICAg ICR7RkZNUEVHX0xJQkFWVVRJTF9JTkNMVURFX0RJUlN9CisrICAgICAgICAke0FVRElPX1BST0NF U1NPUl9JTkNMVURFX0RJUlN9CisrICAgICkKKyAJbGlua19saWJyYXJpZXMoZnBjYWxjX2xpYnMp CisgZW5kaWYoKQorCistLSAKKzIuMzguMQorCisKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2hyb21h cHJpbnQvdGVtcGxhdGUgYi9zcmNwa2dzL2Nocm9tYXByaW50L3RlbXBsYXRlCmluZGV4IDdlZjc4 Mzg5NDlmM2EzLi4xZjdiYmM3MGEyMmM4MCAxMDA2NDQKLS0tIGEvc3JjcGtncy9jaHJvbWFwcmlu dC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Nocm9tYXByaW50L3RlbXBsYXRlCkBAIC0xLDcgKzEs NyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnY2hyb21hcHJpbnQnCiBwa2duYW1lPWNocm9tYXBy aW50CiB2ZXJzaW9uPTEuNS4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1j bWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EQlVJTERfVE9PTFM9T04iCiBtYWtlX2NoZWNrX3Rhcmdl dD0iY2hlY2siCgpGcm9tIGQ0NzFmY2ExZTA4Zjc2YzJhNzBhN2UxYTY0NjliZTBmOTkyODYwOWQg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+ CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDYgLTA0MDAKU3ViamVjdDogW1BBVENIIDAy MS8xMDldIGNocm9taXVtOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvY2hyb21p dW0vcGF0Y2hlcy9mZm1wZWc1LnBhdGNoIHwgNDcgKysrKysrKysrKysrKysrKysrKysrKysrKysK IHNyY3BrZ3MvY2hyb21pdW0vdGVtcGxhdGUgICAgICAgICAgICAgIHwgIDIgKy0KIDIgZmlsZXMg Y2hhbmdlZCwgNDggaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAw NjQ0IHNyY3BrZ3MvY2hyb21pdW0vcGF0Y2hlcy9mZm1wZWc1LnBhdGNoCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9jaHJvbWl1bS9wYXRjaGVzL2ZmbXBlZzUucGF0Y2ggYi9zcmNwa2dzL2Nocm9taXVt L3BhdGNoZXMvZmZtcGVnNS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw MDAwMDAwMC4uMjRlMmRhMzhlMzRjYTIKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2Nocm9t aXVtL3BhdGNoZXMvZmZtcGVnNS5wYXRjaApAQCAtMCwwICsxLDQ3IEBACistLS0gYS9tZWRpYS9m aWx0ZXJzL2ZmbXBlZ19kZW11eGVyLmNjCTIwMjMtMDEtMjMgMTc6MzM6NTcuMzY2MjEzODA1ICsw MjAwCisrKysgYi9tZWRpYS9maWx0ZXJzL2ZmbXBlZ19kZW11eGVyLmNjCTIwMjMtMDEtMjMgMTc6 NDM6MDkuMjgzNDM2OTgzICswMjAwCitAQCAtOTIsMjQgKzkyLDEyIEBACisgCisgc3RhdGljIGJh c2U6OlRpbWVEZWx0YSBFeHRyYWN0U3RhcnRUaW1lKEFWU3RyZWFtKiBzdHJlYW0pIHsKKyAgIC8v IFRoZSBkZWZhdWx0IHN0YXJ0IHRpbWUgaXMgemVyby4KKy0gIGJhc2U6OlRpbWVEZWx0YSBzdGFy dF90aW1lOworKyAgYmFzZTo6VGltZURlbHRhIHN0YXJ0X3RpbWUgPSBrTm9UaW1lc3RhbXA7Cisg CisgICAvLyBGaXJzdCB0cnkgdG8gdXNlICB0aGUgfHN0YXJ0X3RpbWV8IHZhbHVlIGFzIGlzLgor LSAgaWYgKHN0cmVhbS0+c3RhcnRfdGltZSAhPSBrTm9GRm1wZWdUaW1lc3RhbXApCisrICBpZiAo c3RyZWFtLT5zdGFydF90aW1lICE9IGtOb0ZGbXBlZ1RpbWVzdGFtcCkgLy8gQVZfTk9QVFNfVkFM VUUKKyAgICAgc3RhcnRfdGltZSA9IENvbnZlcnRGcm9tVGltZUJhc2Uoc3RyZWFtLT50aW1lX2Jh c2UsIHN0cmVhbS0+c3RhcnRfdGltZSk7CisgCistICAvLyBOZXh0IHRyeSB0byB1c2UgdGhlIGZp cnN0IERUUyB2YWx1ZSwgZm9yIGNvZGVjcyB3aGVyZSB3ZSBrbm93IFBUUyA9PSBEVFMKKy0gIC8v IChleGNsdWRlcyBhbGwgSDI2eCBjb2RlY3MpLiBUaGUgc3RhcnQgdGltZSBtdXN0IGJlIHJldHVy bmVkIGluIFBUUy4KKy0gIGlmIChhdl9zdHJlYW1fZ2V0X2ZpcnN0X2R0cyhzdHJlYW0pICE9IGtO b0ZGbXBlZ1RpbWVzdGFtcCAmJgorLSAgICAgIHN0cmVhbS0+Y29kZWNwYXItPmNvZGVjX2lkICE9 IEFWX0NPREVDX0lEX0hFVkMgJiYKKy0gICAgICBzdHJlYW0tPmNvZGVjcGFyLT5jb2RlY19pZCAh PSBBVl9DT0RFQ19JRF9IMjY0ICYmCistICAgICAgc3RyZWFtLT5jb2RlY3Bhci0+Y29kZWNfaWQg IT0gQVZfQ09ERUNfSURfTVBFRzQpIHsKKy0gICAgY29uc3QgYmFzZTo6VGltZURlbHRhIGZpcnN0 X3B0cyA9CistICAgICAgICBDb252ZXJ0RnJvbVRpbWVCYXNlKHN0cmVhbS0+dGltZV9iYXNlLCBh dl9zdHJlYW1fZ2V0X2ZpcnN0X2R0cyhzdHJlYW0pKTsKKy0gICAgaWYgKGZpcnN0X3B0cyA8IHN0 YXJ0X3RpbWUpCistICAgICAgc3RhcnRfdGltZSA9IGZpcnN0X3B0czsKKy0gIH0KKy0KKyAgIHJl dHVybiBzdGFydF90aW1lOworIH0KKyAKK0BAIC0xNTk3LDcgKzE1ODUsNyBAQAorICAgZm9yIChj b25zdCBhdXRvJiBzdHJlYW0gOiBzdHJlYW1zXykgeworICAgICBpZiAoIXN0cmVhbSB8fCBzdHJl YW0tPklzRW5hYmxlZCgpICE9IGVuYWJsZWQpCisgICAgICAgY29udGludWU7CistICAgIGlmIChh dl9zdHJlYW1fZ2V0X2ZpcnN0X2R0cyhzdHJlYW0tPmF2X3N0cmVhbSgpKSA9PSBrSW52YWxpZFBU U01hcmtlcikKKysgICAgaWYgKHN0cmVhbS0+YXZfc3RyZWFtKCktPnN0YXJ0X3RpbWUgPT0gQVZf Tk9QVFNfVkFMVUUpCisgICAgICAgY29udGludWU7CisgICAgIGlmICghbG93ZXN0X3N0YXJ0X3Rp bWVfc3RyZWFtIHx8CisgICAgICAgICBzdHJlYW0tPnN0YXJ0X3RpbWUoKSA8IGxvd2VzdF9zdGFy dF90aW1lX3N0cmVhbS0+c3RhcnRfdGltZSgpKSB7CitAQCAtMTYxOCw3ICsxNjA2LDcgQEAKKyAg ICAgaWYgKHN0cmVhbS0+dHlwZSgpICE9IERlbXV4ZXJTdHJlYW06OlZJREVPKQorICAgICAgIGNv bnRpbnVlOworIAorLSAgICBpZiAoYXZfc3RyZWFtX2dldF9maXJzdF9kdHMoc3RyZWFtLT5hdl9z dHJlYW0oKSkgPT0ga0ludmFsaWRQVFNNYXJrZXIpCisrICAgIGlmIChzdHJlYW0tPmF2X3N0cmVh bSgpLT5zdGFydF90aW1lID09IEFWX05PUFRTX1ZBTFVFKQorICAgICAgIGNvbnRpbnVlOworIAor ICAgICBpZiAoIXN0cmVhbS0+SXNFbmFibGVkKCkpCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Nocm9t aXVtL3RlbXBsYXRlIGIvc3JjcGtncy9jaHJvbWl1bS90ZW1wbGF0ZQppbmRleCBmM2FkODgyMmRh MzQzNS4uN2UwYTk5MDFkNTg3YzcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvY2hyb21pdW0vdGVtcGxh dGUKKysrIGIvc3JjcGtncy9jaHJvbWl1bS90ZW1wbGF0ZQpAQCAtMiw3ICsyLDcgQEAKIHBrZ25h bWU9Y2hyb21pdW0KICMgU2VlIGh0dHBzOi8vY2hyb21pdW1kYXNoLmFwcHNwb3QuY29tL3JlbGVh c2VzP3BsYXRmb3JtPUxpbnV4IGZvciB0aGUgbGF0ZXN0IHZlcnNpb24KIHZlcnNpb249MTI1LjAu NjQyMi42MAotcmV2aXNpb249MQorcmV2aXNpb249MgogYXJjaHM9Imk2ODYqIHg4Nl82NCogYWFy Y2g2NCogYXJtdjdsKiIKIGhvc3RtYWtlZGVwZW5kcz0iCiAgJCh2b3B0X2lmIGNsYW5nICJjbGFu ZzE3IGxsZDE3IGxsdm0xNyBjb21waWxlci1ydCIpCgpGcm9tIDM5NjE5ZDM3ZTA3YmI0OWVjNjk0 OTc2ZmJlNzIzZjFmMDNmMGY4MDggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNl IDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDYgLTA0 MDAKU3ViamVjdDogW1BBVENIIDAyMi8xMDldIGNtdXM6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0t LQogc3JjcGtncy9jaHJvbWl1bS9wYXRjaGVzL2ZmbXBlZzUucGF0Y2ggfCA0NyAtLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy9jbXVzL3BhdGNoZXMvZmZtcGVnNi5wYXRjaCAgICAg fCAxMiArKysrKysrCiBzcmNwa2dzL2NtdXMvdGVtcGxhdGUgICAgICAgICAgICAgICAgICB8ICAy ICstCiAzIGZpbGVzIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDQ4IGRlbGV0aW9ucygtKQog ZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvY2hyb21pdW0vcGF0Y2hlcy9mZm1wZWc1LnBhdGNo CiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9jbXVzL3BhdGNoZXMvZmZtcGVnNi5wYXRjaAoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2hyb21pdW0vcGF0Y2hlcy9mZm1wZWc1LnBhdGNoIGIvc3Jj cGtncy9jaHJvbWl1bS9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDI0ZTJkYTM4ZTM0Y2EyLi4wMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL2No cm9taXVtL3BhdGNoZXMvZmZtcGVnNS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDQ3ICswLDAg QEAKLS0tLSBhL21lZGlhL2ZpbHRlcnMvZmZtcGVnX2RlbXV4ZXIuY2MJMjAyMy0wMS0yMyAxNzoz Mzo1Ny4zNjYyMTM4MDUgKzAyMDAKLSsrKyBiL21lZGlhL2ZpbHRlcnMvZmZtcGVnX2RlbXV4ZXIu Y2MJMjAyMy0wMS0yMyAxNzo0MzowOS4yODM0MzY5ODMgKzAyMDAKLUBAIC05MiwyNCArOTIsMTIg QEAKLSAKLSBzdGF0aWMgYmFzZTo6VGltZURlbHRhIEV4dHJhY3RTdGFydFRpbWUoQVZTdHJlYW0q IHN0cmVhbSkgewotICAgLy8gVGhlIGRlZmF1bHQgc3RhcnQgdGltZSBpcyB6ZXJvLgotLSAgYmFz ZTo6VGltZURlbHRhIHN0YXJ0X3RpbWU7Ci0rICBiYXNlOjpUaW1lRGVsdGEgc3RhcnRfdGltZSA9 IGtOb1RpbWVzdGFtcDsKLSAKLSAgIC8vIEZpcnN0IHRyeSB0byB1c2UgIHRoZSB8c3RhcnRfdGlt ZXwgdmFsdWUgYXMgaXMuCi0tICBpZiAoc3RyZWFtLT5zdGFydF90aW1lICE9IGtOb0ZGbXBlZ1Rp bWVzdGFtcCkKLSsgIGlmIChzdHJlYW0tPnN0YXJ0X3RpbWUgIT0ga05vRkZtcGVnVGltZXN0YW1w KSAvLyBBVl9OT1BUU19WQUxVRQotICAgICBzdGFydF90aW1lID0gQ29udmVydEZyb21UaW1lQmFz ZShzdHJlYW0tPnRpbWVfYmFzZSwgc3RyZWFtLT5zdGFydF90aW1lKTsKLSAKLS0gIC8vIE5leHQg dHJ5IHRvIHVzZSB0aGUgZmlyc3QgRFRTIHZhbHVlLCBmb3IgY29kZWNzIHdoZXJlIHdlIGtub3cg UFRTID09IERUUwotLSAgLy8gKGV4Y2x1ZGVzIGFsbCBIMjZ4IGNvZGVjcykuIFRoZSBzdGFydCB0 aW1lIG11c3QgYmUgcmV0dXJuZWQgaW4gUFRTLgotLSAgaWYgKGF2X3N0cmVhbV9nZXRfZmlyc3Rf ZHRzKHN0cmVhbSkgIT0ga05vRkZtcGVnVGltZXN0YW1wICYmCi0tICAgICAgc3RyZWFtLT5jb2Rl Y3Bhci0+Y29kZWNfaWQgIT0gQVZfQ09ERUNfSURfSEVWQyAmJgotLSAgICAgIHN0cmVhbS0+Y29k ZWNwYXItPmNvZGVjX2lkICE9IEFWX0NPREVDX0lEX0gyNjQgJiYKLS0gICAgICBzdHJlYW0tPmNv ZGVjcGFyLT5jb2RlY19pZCAhPSBBVl9DT0RFQ19JRF9NUEVHNCkgewotLSAgICBjb25zdCBiYXNl OjpUaW1lRGVsdGEgZmlyc3RfcHRzID0KLS0gICAgICAgIENvbnZlcnRGcm9tVGltZUJhc2Uoc3Ry ZWFtLT50aW1lX2Jhc2UsIGF2X3N0cmVhbV9nZXRfZmlyc3RfZHRzKHN0cmVhbSkpOwotLSAgICBp ZiAoZmlyc3RfcHRzIDwgc3RhcnRfdGltZSkKLS0gICAgICBzdGFydF90aW1lID0gZmlyc3RfcHRz OwotLSAgfQotLQotICAgcmV0dXJuIHN0YXJ0X3RpbWU7Ci0gfQotIAotQEAgLTE1OTcsNyArMTU4 NSw3IEBACi0gICBmb3IgKGNvbnN0IGF1dG8mIHN0cmVhbSA6IHN0cmVhbXNfKSB7Ci0gICAgIGlm ICghc3RyZWFtIHx8IHN0cmVhbS0+SXNFbmFibGVkKCkgIT0gZW5hYmxlZCkKLSAgICAgICBjb250 aW51ZTsKLS0gICAgaWYgKGF2X3N0cmVhbV9nZXRfZmlyc3RfZHRzKHN0cmVhbS0+YXZfc3RyZWFt KCkpID09IGtJbnZhbGlkUFRTTWFya2VyKQotKyAgICBpZiAoc3RyZWFtLT5hdl9zdHJlYW0oKS0+ c3RhcnRfdGltZSA9PSBBVl9OT1BUU19WQUxVRSkKLSAgICAgICBjb250aW51ZTsKLSAgICAgaWYg KCFsb3dlc3Rfc3RhcnRfdGltZV9zdHJlYW0gfHwKLSAgICAgICAgIHN0cmVhbS0+c3RhcnRfdGlt ZSgpIDwgbG93ZXN0X3N0YXJ0X3RpbWVfc3RyZWFtLT5zdGFydF90aW1lKCkpIHsKLUBAIC0xNjE4 LDcgKzE2MDYsNyBAQAotICAgICBpZiAoc3RyZWFtLT50eXBlKCkgIT0gRGVtdXhlclN0cmVhbTo6 VklERU8pCi0gICAgICAgY29udGludWU7Ci0gCi0tICAgIGlmIChhdl9zdHJlYW1fZ2V0X2ZpcnN0 X2R0cyhzdHJlYW0tPmF2X3N0cmVhbSgpKSA9PSBrSW52YWxpZFBUU01hcmtlcikKLSsgICAgaWYg KHN0cmVhbS0+YXZfc3RyZWFtKCktPnN0YXJ0X3RpbWUgPT0gQVZfTk9QVFNfVkFMVUUpCi0gICAg ICAgY29udGludWU7Ci0gCi0gICAgIGlmICghc3RyZWFtLT5Jc0VuYWJsZWQoKSkKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvY211cy9wYXRjaGVzL2ZmbXBlZzYucGF0Y2ggYi9zcmNwa2dzL2NtdXMvcGF0 Y2hlcy9mZm1wZWc2LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw MDAwLi5mZmE5NWFiODExMTAxYgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvY211cy9wYXRj aGVzL2ZmbXBlZzYucGF0Y2gKQEAgLTAsMCArMSwxMiBAQAorLS0tIGEvaXAvZmZtcGVnLmMKKysr KyBiL2lwL2ZmbXBlZy5jCitAQCAtMjAyLDkgKzIwMiw2IEBAIHN0YXRpYyBpbnQgZmZtcGVnX29w ZW4oc3RydWN0IGlucHV0X3BsdWdpbl9kYXRhICppcF9kYXRhKQorIAkJCWJyZWFrOworIAkJfQor IAorLQkJaWYgKGNvZGVjLT5jYXBhYmlsaXRpZXMgJiBBVl9DT0RFQ19DQVBfVFJVTkNBVEVEKQor LQkJCWNjLT5mbGFncyB8PSBBVl9DT0RFQ19GTEFHX1RSVU5DQVRFRDsKKy0KKyAJCWlmIChhdmNv ZGVjX29wZW4yKGNjLCBjb2RlYywgTlVMTCkgPCAwKSB7CisgCQkJZF9wcmludCgiY291bGQgbm90 IG9wZW4gY29kZWM6ICVkLCAlc1xuIiwgY2MtPmNvZGVjX2lkLCBhdmNvZGVjX2dldF9uYW1lKGNj LT5jb2RlY19pZCkpOworIAkJCWVyciA9IC1JUF9FUlJPUl9VTlNVUFBPUlRFRF9GSUxFX1RZUEU7 CmRpZmYgLS1naXQgYS9zcmNwa2dzL2NtdXMvdGVtcGxhdGUgYi9zcmNwa2dzL2NtdXMvdGVtcGxh dGUKaW5kZXggMGQxNDM2NzQ0ZjFiMmMuLmE2ZTRiNGZhODZjYjgzIDEwMDY0NAotLS0gYS9zcmNw a2dzL2NtdXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9jbXVzL3RlbXBsYXRlCkBAIC0xLDcgKzEs NyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnY211cycKIHBrZ25hbWU9Y211cwogdmVyc2lvbj0y LjEwLjAKLXJldmlzaW9uPTMKK3JldmlzaW9uPTQKIGJ1aWxkX3N0eWxlPWNvbmZpZ3VyZQogY29u ZmlndXJlX2FyZ3M9InByZWZpeD0vdXNyIExEPSRDQyIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNv bmZpZyIKCkZyb20gYmFmMWZlZjc1OGQxZmUwYzc1NWVhNWFkNDY5ZmYxOTAzMzg0Njg1ZiBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0 ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0NiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDIzLzEw OV0gY3lhbnJpcDogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2N5YW5yaXAvdGVt cGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24o LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2N5YW5yaXAvdGVtcGxhdGUgYi9zcmNwa2dzL2N5YW5y aXAvdGVtcGxhdGUKaW5kZXggOTc5NmUzNDYxNjAxYTcuLjVkYjMwZTAyMGQxN2VlIDEwMDY0NAot LS0gYS9zcmNwa2dzL2N5YW5yaXAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9jeWFucmlwL3RlbXBs YXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnY3lhbnJpcCcKIHBrZ25h bWU9Y3lhbnJpcAogdmVyc2lvbj0wLjkuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRf c3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJm Zm1wZWctZGV2ZWwgbGliY2Rpby1kZXZlbCBsaWJjZGlvLXBhcmFub2lhLWRldmVsIGxpYmN1cmwt ZGV2ZWwgbGlibXVzaWNicmFpbno1LWRldmVsIgoKRnJvbSBiYjFiMzU5YThkOTAyZGExZjQ0MjJk YzhiYzgxYjc0MjYwMWI0OGYwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8 emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ2IC0wNDAw ClN1YmplY3Q6IFtQQVRDSCAwMjQvMTA5XSBkZWFkYmVlZjogcmV2YnVtcCBmb3IgZmZtcGVnNAoK LS0tCiBzcmNwa2dzL2RlYWRiZWVmL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwg MiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZGVh ZGJlZWYvdGVtcGxhdGUgYi9zcmNwa2dzL2RlYWRiZWVmL3RlbXBsYXRlCmluZGV4IGY1ZjRiZjI0 YjhjYjZkLi43YjQ3ZTYxNWNkNDhlZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9kZWFkYmVlZi90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL2RlYWRiZWVmL3RlbXBsYXRlCkBAIC0xLDE0ICsxLDE0IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdkZWFkYmVlZicKIHBrZ25hbWU9ZGVhZGJlZWYKIHZlcnNpb249 MS44LjgKLXJldmlzaW9uPTMKK3JldmlzaW9uPTQKIGNyZWF0ZV93cmtzcmM9eWVzCiBidWlsZF9z dHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1kaXNhYmxlLW9zcyAtLWRpc2Fi bGUtbGZtIC0tZGlzYWJsZS1ub3RpZnkgLS1kaXNhYmxlLWd0azIiCiBob3N0bWFrZWRlcGVuZHM9 ImF1dG9tYWtlIGxpYnRvb2wgZ2V0dGV4dCBnZXR0ZXh0LWRldmVsIGludGx0b29sIHBrZy1jb25m aWcKICB5YXNtIGNsYW5nIGdsaWItZGV2ZWwiCiBtYWtlZGVwZW5kcz0iCi0gYWxzYS1saWItZGV2 ZWwgZGJ1cy1kZXZlbCBmYWFkMi1kZXZlbCBmZm1wZWctZGV2ZWwgZ3RrKzMtZGV2ZWwgaW1saWIy LWRldmVsCisgYWxzYS1saWItZGV2ZWwgZGJ1cy1kZXZlbCBmYWFkMi1kZXZlbCBmZm1wZWc0LWRl dmVsIGd0ayszLWRldmVsIGltbGliMi1kZXZlbAogIGphbnNzb24tZGV2ZWwgbGliY2RkYi1kZXZl bCBsaWJjZGlvLWRldmVsIGxpYmN1cmwtZGV2ZWwgbGliZmxhYy1kZXZlbAogIGxpYm1hZC1kZXZl bCBsaWJwbmctZGV2ZWwgbGlic2FtcGxlcmF0ZS1kZXZlbCBsaWJzbmRmaWxlLWRldmVsIGxpYnZv cmJpcy1kZXZlbAogIGxpYnppcC1kZXZlbCBtcGcxMjMtZGV2ZWwgb3B1c2ZpbGUtZGV2ZWwgcHVs c2VhdWRpby1kZXZlbCB3YXZwYWNrLWRldmVsIgoKRnJvbSAzOWIyMDI5MmNkZWY0YTA1YjIwMjM4 MTZlMzY2MWY2ODc0NDdjYWQ1IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8 emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ2IC0wNDAw ClN1YmplY3Q6IFtQQVRDSCAwMjUvMTA5XSBkcm9pZGNhbS1vYnMtcGx1Z2luOiByZXZidW1wIGZv ciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvZHJvaWRjYW0tb2JzLXBsdWdpbi90ZW1wbGF0ZSB8IDIg Ky0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvZHJvaWRjYW0tb2JzLXBsdWdpbi90ZW1wbGF0ZSBiL3NyY3BrZ3MvZHJv aWRjYW0tb2JzLXBsdWdpbi90ZW1wbGF0ZQppbmRleCA5ZGM2NjQ4ZWZlOTRhZC4uOTNhNzJhZGYz ZDNjMzAgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZHJvaWRjYW0tb2JzLXBsdWdpbi90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2Ryb2lkY2FtLW9icy1wbHVnaW4vdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdkcm9pZGNhbS1vYnMtcGx1Z2luJwogcGtnbmFtZT1kcm9p ZGNhbS1vYnMtcGx1Z2luCiB2ZXJzaW9uPTIuMy4yCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBi dWlsZF9zdHlsZT1nbnUtbWFrZWZpbGUKIG1ha2VfdXNlX2Vudj15ZXMKIG1ha2VfYnVpbGRfYXJn cz0iQUxMT1dfU1RBVElDPW5vIgoKRnJvbSBjM2I4MjU4YWI0OWU1OTEyY2M2ZTUxMDNhY2ZmYWY2 ZDViYjMxZWM4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVA Z21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ2IC0wNDAwClN1YmplY3Q6 IFtQQVRDSCAwMjYvMTA5XSBkcm9pZGNhbTogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNw a2dzL2Ryb2lkY2FtL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9u KCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9kcm9pZGNhbS90ZW1wbGF0 ZSBiL3NyY3BrZ3MvZHJvaWRjYW0vdGVtcGxhdGUKaW5kZXggMWMzZjFiOGIxZmM2NzYuLjMyYTky MjBiNzlhNGQxIDEwMDY0NAotLS0gYS9zcmNwa2dzL2Ryb2lkY2FtL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvZHJvaWRjYW0vdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdkcm9pZGNhbScKIHBrZ25hbWU9ZHJvaWRjYW0KIHZlcnNpb249MS44LjIKLXJldmlzaW9u PTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0eWxlPWdudS1tYWtlZmlsZQogbWFrZV9idWlsZF9hcmdz PSJVU0JNVVhEPS1sdXNibXV4ZC0yLjAgSlBFRz0tbHR1cmJvanBlZyIKIGhvc3RtYWtlZGVwZW5k cz0icGtnLWNvbmZpZyIKCkZyb20gNTk3N2MwY2VmYmNlYzc5ZGQxOTA0ZDRmZWI4MzJlNDVmZmFh ZmQ4NCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWls LmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0NyAtMDQwMApTdWJqZWN0OiBbUEFU Q0ggMDI3LzEwOV0gZmZtcGVndGh1bWJuYWlsZXI6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQog Li4uL2ZmbXBlZ3RodW1ibmFpbGVyL3BhdGNoZXMvZmZtcGVnNi5wYXRjaCAgIHwgMjAyICsrKysr KysrKysrKysrKysrKwogc3JjcGtncy9mZm1wZWd0aHVtYm5haWxlci90ZW1wbGF0ZSAgICAgICAg ICAgIHwgICA2ICstCiAyIGZpbGVzIGNoYW5nZWQsIDIwNSBpbnNlcnRpb25zKCspLCAzIGRlbGV0 aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZmZtcGVndGh1bWJuYWlsZXIvcGF0 Y2hlcy9mZm1wZWc2LnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9mZm1wZWd0aHVtYm5haWxl ci9wYXRjaGVzL2ZmbXBlZzYucGF0Y2ggYi9zcmNwa2dzL2ZmbXBlZ3RodW1ibmFpbGVyL3BhdGNo ZXMvZmZtcGVnNi5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw MC4uMzYzZmYzNWEyODQxOWQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2ZmbXBlZ3RodW1i bmFpbGVyL3BhdGNoZXMvZmZtcGVnNi5wYXRjaApAQCAtMCwwICsxLDIwMiBAQAorLS0tIGEvbGli ZmZtcGVndGh1bWJuYWlsZXIvbW92aWVkZWNvZGVyLmNwcAkyMDE3LTExLTIxIDE0OjA2OjU3LjAw MDAwMDAwMCAtMDUwMAorKysrIGIvbGliZmZtcGVndGh1bWJuYWlsZXIvbW92aWVkZWNvZGVyLmNw cAkyMDIzLTA1LTA1IDEzOjE0OjQ3Ljk0NjU2MDY2OCAtMDQwMAorQEAgLTQxLDExICs0MSw2IEBA CisgbmFtZXNwYWNlIGZmbXBlZ3RodW1ibmFpbGVyCisgeworIAorLXN0cnVjdCBTaWxlbmNlTG9n TGV2ZWwKKy17CistICAgIFNpbGVuY2VMb2dMZXZlbCgpIHsgYXZfbG9nX3NldF9sZXZlbChBVl9M T0dfUVVJRVQpOyB9CistfTsKKy0KKyBNb3ZpZURlY29kZXI6Ok1vdmllRGVjb2RlcihBVkZvcm1h dENvbnRleHQqIHBhdkNvbnRleHQpCisgOiBtX1ZpZGVvU3RyZWFtKC0xKQorICwgbV9wRm9ybWF0 Q29udGV4dChwYXZDb250ZXh0KQorQEAgLTcwLDggKzY1LDYgQEAKKyAKKyB2b2lkIE1vdmllRGVj b2Rlcjo6aW5pdGlhbGl6ZShjb25zdCBzdHJpbmcmIGZpbGVuYW1lLCBib29sIHByZWZlckVtYmVk ZGVkTWV0YWRhdGEpCisgeworLSAgICBhdl9yZWdpc3Rlcl9hbGwoKTsKKy0gICAgYXZjb2RlY19y ZWdpc3Rlcl9hbGwoKTsKKyAgICAgYXZmb3JtYXRfbmV0d29ya19pbml0KCk7CisgCisgICAgIHN0 cmluZyBpbnB1dEZpbGUgPSBmaWxlbmFtZSA9PSAiLSIgPyAicGlwZToiIDogZmlsZW5hbWU7CitA QCAtOTcsOCArOTAsNyBAQAorIHsKKyAgICAgaWYgKG1fcFZpZGVvQ29kZWNDb250ZXh0KQorICAg ICB7CistICAgICAgICBhdmNvZGVjX2Nsb3NlKG1fcFZpZGVvQ29kZWNDb250ZXh0KTsKKy0gICAg ICAgIG1fcFZpZGVvQ29kZWNDb250ZXh0ID0gbnVsbHB0cjsKKysgICAgICAgIGF2Y29kZWNfZnJl ZV9jb250ZXh0KCZtX3BWaWRlb0NvZGVjQ29udGV4dCk7CisgICAgIH0KKyAKKyAgICAgaWYgKCgh bV9Gb3JtYXRDb250ZXh0V2FzR2l2ZW4pICYmIG1fcEZvcm1hdENvbnRleHQpCitAQCAtMTUyLDEw ICsxNDQsMTAgQEAKKyAgICAgZm9yICh1bnNpZ25lZCBpbnQgaSA9IDA7IGkgPCBtX3BGb3JtYXRD b250ZXh0LT5uYl9zdHJlYW1zOyArK2kpCisgICAgIHsKKyAgICAgICAgIEFWU3RyZWFtICpzdHJl YW0gPSBtX3BGb3JtYXRDb250ZXh0LT5zdHJlYW1zW2ldOworLSAgICAgICAgYXV0byBjdHggPSBt X3BGb3JtYXRDb250ZXh0LT5zdHJlYW1zW2ldLT5jb2RlYzsKKy0gICAgICAgIGlmIChjdHgtPmNv ZGVjX3R5cGUgPT0gQVZNRURJQV9UWVBFX1ZJREVPKQorKyAgICAgICAgYXV0byBwYXIgPSBtX3BG b3JtYXRDb250ZXh0LT5zdHJlYW1zW2ldLT5jb2RlY3BhcjsKKysgICAgICAgIGlmIChwYXItPmNv ZGVjX3R5cGUgPT0gQVZNRURJQV9UWVBFX1ZJREVPKQorICAgICAgICAgeworLSAgICAgICAgICAg IGlmICghcHJlZmVyRW1iZWRkZWRNZXRhZGF0YSB8fCAhaXNTdGlsbEltYWdlQ29kZWMoY3R4LT5j b2RlY19pZCkpCisrICAgICAgICAgICAgaWYgKCFwcmVmZXJFbWJlZGRlZE1ldGFkYXRhIHx8ICFp c1N0aWxsSW1hZ2VDb2RlYyhwYXItPmNvZGVjX2lkKSkKKyAgICAgICAgICAgICB7CisgICAgICAg ICAgICAgICAgIHZpZGVvU3RyZWFtcy5wdXNoX2JhY2soaSk7CisgICAgICAgICAgICAgICAgIGNv bnRpbnVlOworQEAgLTIwMyw4ICsxOTUsNyBAQAorICAgICB9CisgCisgICAgIG1fcFZpZGVvU3Ry ZWFtID0gbV9wRm9ybWF0Q29udGV4dC0+c3RyZWFtc1ttX1ZpZGVvU3RyZWFtXTsKKy0gICAgbV9w VmlkZW9Db2RlY0NvbnRleHQgPSBtX3BWaWRlb1N0cmVhbS0+Y29kZWM7CistICAgIG1fcFZpZGVv Q29kZWMgPSBhdmNvZGVjX2ZpbmRfZGVjb2RlcihtX3BWaWRlb0NvZGVjQ29udGV4dC0+Y29kZWNf aWQpOworKyAgICBtX3BWaWRlb0NvZGVjID0gYXZjb2RlY19maW5kX2RlY29kZXIobV9wVmlkZW9T dHJlYW0tPmNvZGVjcGFyLT5jb2RlY19pZCk7CisgCisgICAgIGlmIChtX3BWaWRlb0NvZGVjID09 IG51bGxwdHIpCisgICAgIHsKK0BAIC0yMTQsNiArMjA1LDIwIEBACisgICAgICAgICB0aHJvdyBs b2dpY19lcnJvcigiVmlkZW8gQ29kZWMgbm90IGZvdW5kIik7CisgICAgIH0KKyAKKysgICAgbV9w VmlkZW9Db2RlY0NvbnRleHQgPSBhdmNvZGVjX2FsbG9jX2NvbnRleHQzKG1fcFZpZGVvQ29kZWMp OworKworKyAgICBpZiAobV9wVmlkZW9Db2RlY0NvbnRleHQgPT0gbnVsbHB0cikKKysgICAgewor KyAgICAgICAgZGVzdHJveSgpOworKyAgICAgICAgdGhyb3cgbG9naWNfZXJyb3IoIkNvdWxkIG5v dCBhbGxvY2F0ZSB2aWRlbyBjb2RlYyBjb250ZXh0Iik7CisrICAgIH0KKysKKysgICAgaWYgKGF2 Y29kZWNfcGFyYW1ldGVyc190b19jb250ZXh0KG1fcFZpZGVvQ29kZWNDb250ZXh0LCBtX3BWaWRl b1N0cmVhbS0+Y29kZWNwYXIpIDwgMCkKKysgICAgeworKyAgICAgICAgZGVzdHJveSgpOworKyAg ICAgICAgdGhyb3cgbG9naWNfZXJyb3IoIkNvdWxkIG5vdCBjb25maWd1cmUgdmlkZW8gY29kZWMg Y29udGV4dCIpOworKyAgICB9CisrCisgICAgIG1fcFZpZGVvQ29kZWNDb250ZXh0LT53b3JrYXJv dW5kX2J1Z3MgPSAxOworIAorICAgICBpZiAoYXZjb2RlY19vcGVuMihtX3BWaWRlb0NvZGVjQ29u dGV4dCwgbV9wVmlkZW9Db2RlYywgbnVsbHB0cikgPCAwKQorQEAgLTM4NiwxMyArMzkxLDYgQEAK KyAKKyB2b2lkIE1vdmllRGVjb2Rlcjo6aW5pdGlhbGl6ZUZpbHRlckdyYXBoKGNvbnN0IEFWUmF0 aW9uYWwmIHRpbWVCYXNlLCBjb25zdCBzdGQ6OnN0cmluZyYgc2l6ZSwgYm9vbCBtYWludGFpbkFz cGVjdFJhdGlvKQorIHsKKy0gICAgc3RhdGljIGNvbnN0IEFWUGl4ZWxGb3JtYXQgcGl4ZWxGb3Jt YXRzW10gPSB7IEFWX1BJWF9GTVRfUkdCMjQsIEFWX1BJWF9GTVRfTk9ORSB9OworLQorLSAgICBh dXRvIGRlbCA9IFtdIChBVkJ1ZmZlclNpbmtQYXJhbXMqIHApIHsgYXZfZnJlZXAocCk7IH07Cist ICAgIHN0ZDo6dW5pcXVlX3B0cjxBVkJ1ZmZlclNpbmtQYXJhbXMsIGRlY2x0eXBlKGRlbCk+IGJ1 ZmZlcnNpbmtQYXJhbXMoYXZfYnVmZmVyc2lua19wYXJhbXNfYWxsb2MoKSwgZGVsKTsKKy0KKy0g ICAgYXZmaWx0ZXJfcmVnaXN0ZXJfYWxsKCk7CistCisgICAgIG1fcEZpbHRlckdyYXBoID0gYXZm aWx0ZXJfZ3JhcGhfYWxsb2MoKTsKKyAgICAgYXNzZXJ0KG1fcEZpbHRlckdyYXBoKTsKKyAKK0BA IC00MDQsMTAgKzQwMiw4IEBACisgCisgICAgIGNoZWNrUmMoYXZmaWx0ZXJfZ3JhcGhfY3JlYXRl X2ZpbHRlcigmbV9wRmlsdGVyU291cmNlLCBhdmZpbHRlcl9nZXRfYnlfbmFtZSgiYnVmZmVyIiks ICJ0aHVtYl9idWZmZXIiLCBzcy5zdHIoKS5jX3N0cigpLCBudWxscHRyLCBtX3BGaWx0ZXJHcmFw aCksCisgICAgICAgICAgICAgIkZhaWxlZCB0byBjcmVhdGUgZmlsdGVyIHNvdXJjZSIpOworLSAg ICBidWZmZXJzaW5rUGFyYW1zLT5waXhlbF9mbXRzID0gcGl4ZWxGb3JtYXRzOworLSAgICBjaGVj a1JjKGF2ZmlsdGVyX2dyYXBoX2NyZWF0ZV9maWx0ZXIoJm1fcEZpbHRlclNpbmssIGF2ZmlsdGVy X2dldF9ieV9uYW1lKCJidWZmZXJzaW5rIiksICJ0aHVtYl9idWZmZXJzaW5rIiwgbnVsbHB0ciwg YnVmZmVyc2lua1BhcmFtcy5nZXQoKSwgbV9wRmlsdGVyR3JhcGgpLAorKyAgICBjaGVja1JjKGF2 ZmlsdGVyX2dyYXBoX2NyZWF0ZV9maWx0ZXIoJm1fcEZpbHRlclNpbmssIGF2ZmlsdGVyX2dldF9i eV9uYW1lKCJidWZmZXJzaW5rIiksICJ0aHVtYl9idWZmZXJzaW5rIiwgbnVsbHB0ciwgbnVsbHB0 ciwgbV9wRmlsdGVyR3JhcGgpLAorICAgICAgICAgICAgICJGYWlsZWQgdG8gY3JlYXRlIGZpbHRl ciBzaW5rIik7CistICAgIGJ1ZmZlcnNpbmtQYXJhbXMucmVsZWFzZSgpOworIAorICAgICBBVkZp bHRlckNvbnRleHQqIHlhZGlmRmlsdGVyID0gbnVsbHB0cjsKKyAgICAgaWYgKG1fcEZyYW1lLT5p bnRlcmxhY2VkX2ZyYW1lICE9IDApCitAQCAtNTAwLDE1ICs0OTYsMTUgQEAKKyAgICAgfQorIAor ICAgICBjaGVja1JjKGF2X3NlZWtfZnJhbWUobV9wRm9ybWF0Q29udGV4dCwgLTEsIHRpbWVzdGFt cCwgMCksICJTZWVraW5nIGluIHZpZGVvIGZhaWxlZCIpOworLSAgICBhdmNvZGVjX2ZsdXNoX2J1 ZmZlcnMobV9wRm9ybWF0Q29udGV4dC0+c3RyZWFtc1ttX1ZpZGVvU3RyZWFtXS0+Y29kZWMpOwor KyAgICBhdmNvZGVjX2ZsdXNoX2J1ZmZlcnMobV9wVmlkZW9Db2RlY0NvbnRleHQpOworIAorICAg ICBpbnQga2V5RnJhbWVBdHRlbXB0cyA9IDA7CistICAgIGJvb2wgZ290RnJhbWUgPSAwOworKyAg ICBib29sIGdvdEZyYW1lOworIAorICAgICBkbworICAgICB7CisgICAgICAgICBpbnQgY291bnQg PSAwOworLSAgICAgICAgZ290RnJhbWUgPSAwOworKyAgICAgICAgZ290RnJhbWUgPSBmYWxzZTsK KyAKKyAgICAgICAgIHdoaWxlICghZ290RnJhbWUgJiYgY291bnQgPCAyMCkKKyAgICAgICAgIHsK K0BAIC01NTIsMTcgKzU0OCwzMyBAQAorICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICB9Cisg CistICAgIGF2X2ZyYW1lX3VucmVmKG1fcEZyYW1lKTsKKy0KKy0gICAgaW50IGZyYW1lRmluaXNo ZWQ7CisrICAgIGludCByYyA9IGF2Y29kZWNfc2VuZF9wYWNrZXQobV9wVmlkZW9Db2RlY0NvbnRl eHQsIG1fcFBhY2tldCk7CisrICAgIGlmKHJjID09IEFWRVJST1IoRUFHQUlOKSkKKysgICAgewor KyAgICAgICAgcmMgPSAwOworKyAgICB9CisgCistICAgIGludCBieXRlc0RlY29kZWQgPSBhdmNv ZGVjX2RlY29kZV92aWRlbzIobV9wVmlkZW9Db2RlY0NvbnRleHQsIG1fcEZyYW1lLCAmZnJhbWVG aW5pc2hlZCwgbV9wUGFja2V0KTsKKy0gICAgaWYgKGJ5dGVzRGVjb2RlZCA8IDApCisrICAgIGlm KHJjID09IEFWRVJST1JfRU9GKQorKyAgICB7CisrICAgICAgICByZXR1cm4gZmFsc2U7CisrICAg IH0KKysgICAgZWxzZSBpZihyYyA8IDApCisgICAgIHsKKy0gICAgICAgIHRocm93IGxvZ2ljX2Vy cm9yKCJGYWlsZWQgdG8gZGVjb2RlIHZpZGVvIGZyYW1lOiBieXRlc0RlY29kZWQgPCAwIik7Cisr ICAgICAgICB0aHJvdyBsb2dpY19lcnJvcigiRmFpbGVkIHRvIGRlY29kZSB2aWRlbyBmcmFtZTog YXZjb2RlY19zZW5kX3BhY2tldCgpIDwgMCIpOworICAgICB9CisgCistICAgIHJldHVybiBmcmFt ZUZpbmlzaGVkID4gMDsKKysgICAgcmMgPSBhdmNvZGVjX3JlY2VpdmVfZnJhbWUobV9wVmlkZW9D b2RlY0NvbnRleHQsIG1fcEZyYW1lKTsKKysgICAgc3dpdGNoKHJjKQorKyAgICB7CisrICAgICAg ICBjYXNlIDA6CisrICAgICAgICAgICAgcmV0dXJuIHRydWU7CisrCisrICAgICAgICBjYXNlIEFW RVJST1IoRUFHQUlOKToKKysgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisrCisrICAgICAgICBk ZWZhdWx0OgorKyAgICAgICAgICAgIHRocm93IGxvZ2ljX2Vycm9yKCJGYWlsZWQgdG8gZGVjb2Rl IHZpZGVvIGZyYW1lOiBhdmNvZGVjX3JlY2VpdmVfZnJhbWUoKSA8IDAiKTsKKysgICAgfQorIH0K KyAKKyBib29sIE1vdmllRGVjb2Rlcjo6Z2V0VmlkZW9QYWNrZXQoKQorQEAgLTU3MCw4ICs1ODIs NiBAQAorICAgICBib29sIGZyYW1lc0F2YWlsYWJsZSA9IHRydWU7CisgICAgIGJvb2wgZnJhbWVE ZWNvZGVkID0gZmFsc2U7CisgCistICAgIGludCBhdHRlbXB0cyA9IDA7CistCisgICAgIGlmICht X3BQYWNrZXQpCisgICAgIHsKKyAgICAgICAgIGF2X3BhY2tldF91bnJlZihtX3BQYWNrZXQpOwor QEAgLTU4MCw2ICs1OTAsNyBAQAorIAorICAgICBtX3BQYWNrZXQgPSBuZXcgQVZQYWNrZXQoKTsK KyAKKysKKyAgICAgd2hpbGUgKGZyYW1lc0F2YWlsYWJsZSAmJiAhZnJhbWVEZWNvZGVkKQorICAg ICB7CisgICAgICAgICBmcmFtZXNBdmFpbGFibGUgPSBhdl9yZWFkX2ZyYW1lKG1fcEZvcm1hdENv bnRleHQsIG1fcFBhY2tldCkgPj0gMDsKK0BAIC02NDQsNyArNjU1LDcgQEAKKyAKKyBpbnQzMl90 IE1vdmllRGVjb2Rlcjo6Z2V0U3RyZWFtUm90YXRpb24oKQorIHsKKy0gICAgaW50MzJfdCogbWF0 cml4ID0gcmVpbnRlcnByZXRfY2FzdDxpbnQzMl90Kj4oYXZfc3RyZWFtX2dldF9zaWRlX2RhdGEo bV9wVmlkZW9TdHJlYW0sIEFWX1BLVF9EQVRBX0RJU1BMQVlNQVRSSVgsIG51bGxwdHIpKTsKKysg ICAgYXV0byBtYXRyaXggPSByZWludGVycHJldF9jYXN0PGludDMyX3QqPihhdl9zdHJlYW1fZ2V0 X3NpZGVfZGF0YShtX3BWaWRlb1N0cmVhbSwgQVZfUEtUX0RBVEFfRElTUExBWU1BVFJJWCwgbnVs bHB0cikpOworICAgICBpZiAobWF0cml4KQorICAgICB7CisgICAgICAgICBhdXRvIGFuZ2xlID0g bHJvdW5kKGF2X2Rpc3BsYXlfcm90YXRpb25fZ2V0KG1hdHJpeCkpOworCistLS0gYS9saWJmZm1w ZWd0aHVtYm5haWxlci9tb3ZpZWRlY29kZXIuaAkyMDE3LTExLTEyIDA0OjIzOjM4LjAwMDAwMDAw MCAtMDUwMAorKysrIGIvbGliZmZtcGVndGh1bWJuYWlsZXIvbW92aWVkZWNvZGVyLmgJMjAyMy0w NS0wNSAxMzoyNjowNy4wOTU1Mjk5MTEgLTA0MDAKK0BAIC03OCw3ICs3OCw3IEBACisgICAgIGlu dCAgICAgICAgICAgICAgICAgICAgIG1fVmlkZW9TdHJlYW07DQorICAgICBBVkZvcm1hdENvbnRl eHQqICAgICAgICBtX3BGb3JtYXRDb250ZXh0Ow0KKyAgICAgQVZDb2RlY0NvbnRleHQqICAgICAg ICAgbV9wVmlkZW9Db2RlY0NvbnRleHQ7DQorLSAgICBBVkNvZGVjKiAgICAgICAgICAgICAgICBt X3BWaWRlb0NvZGVjOw0KKysgICAgY29uc3QgQVZDb2RlYyogICAgICAgICAgbV9wVmlkZW9Db2Rl YzsNCisgICAgIEFWRmlsdGVyR3JhcGgqICAgICAgICAgIG1fcEZpbHRlckdyYXBoOw0KKyAgICAg QVZGaWx0ZXJDb250ZXh0KiAgICAgICAgbV9wRmlsdGVyU291cmNlOw0KKyAgICAgQVZGaWx0ZXJD b250ZXh0KiAgICAgICAgbV9wRmlsdGVyU2luazsNCmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZmbXBl Z3RodW1ibmFpbGVyL3RlbXBsYXRlIGIvc3JjcGtncy9mZm1wZWd0aHVtYm5haWxlci90ZW1wbGF0 ZQppbmRleCAwMzllZWE3NjIyYjM5MS4uMzVkNTQ2MDE4ZDEyYWYgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvZmZtcGVndGh1bWJuYWlsZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9mZm1wZWd0aHVtYm5h aWxlci90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2ZmbXBl Z3RodW1ibmFpbGVyJwogcGtnbmFtZT1mZm1wZWd0aHVtYm5haWxlcgogdmVyc2lvbj0yLjIuMgot cmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5k cz0icGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJsaWJwbmctZGV2ZWwgbGlianBlZy10dXJiby1k ZXZlbCBmZm1wZWctZGV2ZWwiCkBAIC05LDggKzksOCBAQCBkZXBlbmRzPSJmZm1wZWciCiBzaG9y dF9kZXNjPSJMaWdodHdlaWdodCB2aWRlbyB0aHVtYm5haWxlciIKIG1haW50YWluZXI9Ik9ycGhh bmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgot aG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9kaXJrdmRiLyR7cGtnbmFtZX0iCi1kaXN0Zmls ZXM9IiR7aG9tZXBhZ2V9L3JlbGVhc2VzL2Rvd25sb2FkLyR7dmVyc2lvbn0vJHtwa2duYW1lfS0k e3ZlcnNpb259LnRhci5iejIiCitob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL2Rpcmt2ZGIi CitkaXN0ZmlsZXM9IiR7aG9tZXBhZ2V9LyR7cGtnbmFtZX0vcmVsZWFzZXMvZG93bmxvYWQvJHt2 ZXJzaW9ufS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLmJ6MiIKIGNoZWNrc3VtPTFjYjI0MDU5 YzM4MjIzZjY1N2IzMDBjODRkZDgwNDkxYjcwNDBkNGI2OTQ3MWM0ZmVhNjliZTg2MmJjOTliNWIK IAogcG9zdF9pbnN0YWxsKCkgewoKRnJvbSBmZmM2NDAyZDhkNzczNjZmYTQ4MTFiYTA5M2ZiMjY0 MzQ0MGYyMzJhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVA Z21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ3IC0wNDAwClN1YmplY3Q6 IFtQQVRDSCAwMjgvMTA5XSBmZm1wZWd0aHVtYnM6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQog c3JjcGtncy9mZm1wZWd0aHVtYnMvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBp bnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZmbXBlZ3Ro dW1icy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZmZtcGVndGh1bWJzL3RlbXBsYXRlCmluZGV4IGMyNmIy NjI3YjVhMGUzLi43YjNmZDI2MjM3MWRiYyAxMDA2NDQKLS0tIGEvc3JjcGtncy9mZm1wZWd0aHVt YnMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9mZm1wZWd0aHVtYnMvdGVtcGxhdGUKQEAgLTEsNyAr MSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdmZm1wZWd0aHVtYnMnCiBwa2duYW1lPWZmbXBl Z3RodW1icwogdmVyc2lvbj0yNC4wMi4yCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9z dHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EUVRfTUFKT1JfVkVSU0lPTj02IC1ES0Y2X0hP U1RfVE9PTElORz0vdXNyL2xpYi9jbWFrZQogIC1ES0RFX0lOU1RBTExfUVRQTFVHSU5ESVI9bGli L3F0Ni9wbHVnaW5zIgoKRnJvbSA5MGZhNzU1NzMzNmZkZDIwYWM3NjI2M2Q0M2Q4YWY3Y2NmOWI5 YjM2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwu Y29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ3IC0wNDAwClN1YmplY3Q6IFtQQVRD SCAwMjkvMTA5XSBmZm1zMjogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2ZmbXMy L3BhdGNoZXMvZmZtcGVnNS5wYXRjaCB8IDQyNCArKysrKysrKysrKysrKysrKysrKysrKysrKysr CiBzcmNwa2dzL2ZmbXMyL3RlbXBsYXRlICAgICAgICAgICAgICB8ICAgMiArLQogMiBmaWxlcyBj aGFuZ2VkLCA0MjUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAw NjQ0IHNyY3BrZ3MvZmZtczIvcGF0Y2hlcy9mZm1wZWc1LnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9mZm1zMi9wYXRjaGVzL2ZmbXBlZzUucGF0Y2ggYi9zcmNwa2dzL2ZmbXMyL3BhdGNoZXMv ZmZtcGVnNS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMC4u MTQ3OWZhYmNhZmNiNGUKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2ZmbXMyL3BhdGNoZXMv ZmZtcGVnNS5wYXRjaApAQCAtMCwwICsxLDQyNCBAQAorRnJvbSA0NTY3MzE0OWU5YTJmNTU4Njg1 NWFkNDcyZTMwNTkwODRlYWEzNmIxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogRGVy ZWsgQnVpdGVuaHVpcyA8ZGVyZWsuYnVpdGVuaHVpc0BnbWFpbC5jb20+CitEYXRlOiBUdWUsIDQg TWF5IDIwMjEgMTQ6NDE6MjEgKzAxMDAKK1N1YmplY3Q6IFtQQVRDSF0gVXNlIGF1dG8gZm9yIEFW Q29kZWMKKworVGhlIGdlbml1c2VzIG92ZXIgYXQgRkZtcGVnIGRlY2lkZWQgdG8gY29uc3RpZnkg dGhpcyBBUEksIHNvIG9sZAordmVyc2lvbnMgb2YgdGhlIGxpYnJhcnkgd2lsbCByZXR1cm4gQVZD b2RlYyAqLCB3aGlsZSBuZXcgdmVyc2lvbnMKK29mIHRoZSBsaWJhcnkgd2lsbCByZXR1cm4gY29u c3QgQVZDb2RlYyAqLCB3aGljaCwgaW4gQysrLCBhcmUgbm90CitPSyB0byBjb252ZXJ0IGJldHdl ZW4uCisKK1JhdGhlciB0aGFuIHVzZSBzb21lIG1hY3JvIGhlbGwgaW4gZmZtc2NvbXBhdC5oLCB3 ZSBjYW4gd29yayBhcm91bmQKK3RoaXMgYnkgdXNpbmcgYXV0by4KKworR3Jvc3MuCisKK1NpZ25l ZC1vZmYtYnk6IERlcmVrIEJ1aXRlbmh1aXMgPGRlcmVrLmJ1aXRlbmh1aXNAZ21haWwuY29tPgor LS0tCisgc3JjL2NvcmUvYXVkaW9zb3VyY2UuY3BwIHwgMiArLQorIHNyYy9jb3JlL2luZGV4aW5n LmNwcCAgICB8IDYgKysrLS0tCisgc3JjL2NvcmUvdmlkZW9zb3VyY2UuY3BwIHwgMiArLQorIDMg ZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitkaWZmIC0t Z2l0IGEvc3JjL2NvcmUvYXVkaW9zb3VyY2UuY3BwIGIvc3JjL2NvcmUvYXVkaW9zb3VyY2UuY3Bw CitpbmRleCBlNGNlOTdjLi5hYzA5NjY2IDEwMDY0NAorLS0tIGEvc3JjL2NvcmUvYXVkaW9zb3Vy Y2UuY3BwCisrKysgYi9zcmMvY29yZS9hdWRpb3NvdXJjZS5jcHAKK0BAIC00NjksNyArNDY5LDcg QEAgdm9pZCBGRk1TX0F1ZGlvU291cmNlOjpPcGVuRmlsZSgpIHsKKyAKKyAgICAgTEFWRk9wZW5G aWxlKFNvdXJjZUZpbGUuY19zdHIoKSwgRm9ybWF0Q29udGV4dCwgVHJhY2tOdW1iZXIpOworIAor LSAgICBBVkNvZGVjICpDb2RlYyA9IGF2Y29kZWNfZmluZF9kZWNvZGVyKEZvcm1hdENvbnRleHQt PnN0cmVhbXNbVHJhY2tOdW1iZXJdLT5jb2RlY3Bhci0+Y29kZWNfaWQpOworKyAgICBhdXRvICpD b2RlYyA9IGF2Y29kZWNfZmluZF9kZWNvZGVyKEZvcm1hdENvbnRleHQtPnN0cmVhbXNbVHJhY2tO dW1iZXJdLT5jb2RlY3Bhci0+Y29kZWNfaWQpOworICAgICBpZiAoQ29kZWMgPT0gbnVsbHB0cikK KyAgICAgICAgIHRocm93IEZGTVNfRXhjZXB0aW9uKEZGTVNfRVJST1JfREVDT0RJTkcsIEZGTVNf RVJST1JfQ09ERUMsCisgICAgICAgICAgICAgIkF1ZGlvIGNvZGVjIG5vdCBmb3VuZCIpOworZGlm ZiAtLWdpdCBhL3NyYy9jb3JlL2luZGV4aW5nLmNwcCBiL3NyYy9jb3JlL2luZGV4aW5nLmNwcAor aW5kZXggZTU0N2M1YS4uNTlmYjRlOCAxMDA2NDQKKy0tLSBhL3NyYy9jb3JlL2luZGV4aW5nLmNw cAorKysrIGIvc3JjL2NvcmUvaW5kZXhpbmcuY3BwCitAQCAtMzg0LDcgKzM4NCw3IEBAIEZGTVNf VHJhY2tUeXBlIEZGTVNfSW5kZXhlcjo6R2V0VHJhY2tUeXBlKGludCBUcmFjaykgeworIH0KKyAK KyBjb25zdCBjaGFyICpGRk1TX0luZGV4ZXI6OkdldFRyYWNrQ29kZWMoaW50IFRyYWNrKSB7Cist ICAgIEFWQ29kZWMgKmNvZGVjID0gYXZjb2RlY19maW5kX2RlY29kZXIoRm9ybWF0Q29udGV4dC0+ c3RyZWFtc1tUcmFja10tPmNvZGVjcGFyLT5jb2RlY19pZCk7CisrICAgIGF1dG8gKmNvZGVjID0g YXZjb2RlY19maW5kX2RlY29kZXIoRm9ybWF0Q29udGV4dC0+c3RyZWFtc1tUcmFja10tPmNvZGVj cGFyLT5jb2RlY19pZCk7CisgICAgIHJldHVybiBjb2RlYyA/IGNvZGVjLT5uYW1lIDogbnVsbHB0 cjsKKyB9CisgCitAQCAtNDAyLDcgKzQwMiw3IEBAIEZGTVNfSW5kZXggKkZGTVNfSW5kZXhlcjo6 RG9JbmRleGluZygpIHsKKyAgICAgICAgICAgICBVc2VEVFMpOworIAorICAgICAgICAgaWYgKElu ZGV4TWFzay5jb3VudChpKSAmJiBGb3JtYXRDb250ZXh0LT5zdHJlYW1zW2ldLT5jb2RlY3Bhci0+ Y29kZWNfdHlwZSA9PSBBVk1FRElBX1RZUEVfVklERU8pIHsKKy0gICAgICAgICAgICBBVkNvZGVj ICpWaWRlb0NvZGVjID0gYXZjb2RlY19maW5kX2RlY29kZXIoRm9ybWF0Q29udGV4dC0+c3RyZWFt c1tpXS0+Y29kZWNwYXItPmNvZGVjX2lkKTsKKysgICAgICAgICAgICBhdXRvICpWaWRlb0NvZGVj ID0gYXZjb2RlY19maW5kX2RlY29kZXIoRm9ybWF0Q29udGV4dC0+c3RyZWFtc1tpXS0+Y29kZWNw YXItPmNvZGVjX2lkKTsKKyAgICAgICAgICAgICBpZiAoIVZpZGVvQ29kZWMpIHsKKyAgICAgICAg ICAgICAgICAgRm9ybWF0Q29udGV4dC0+c3RyZWFtc1tpXS0+ZGlzY2FyZCA9IEFWRElTQ0FSRF9B TEw7CisgICAgICAgICAgICAgICAgIEluZGV4TWFzay5lcmFzZShpKTsKK0BAIC00MzMsNyArNDMz LDcgQEAgRkZNU19JbmRleCAqRkZNU19JbmRleGVyOjpEb0luZGV4aW5nKCkgeworICAgICAgICAg ICAgICAgICBJbmRleE1hc2suaW5zZXJ0KGkpOworICAgICAgICAgICAgIH0KKyAgICAgICAgIH0g ZWxzZSBpZiAoSW5kZXhNYXNrLmNvdW50KGkpICYmIEZvcm1hdENvbnRleHQtPnN0cmVhbXNbaV0t PmNvZGVjcGFyLT5jb2RlY190eXBlID09IEFWTUVESUFfVFlQRV9BVURJTykgeworLSAgICAgICAg ICAgIEFWQ29kZWMgKkF1ZGlvQ29kZWMgPSBhdmNvZGVjX2ZpbmRfZGVjb2RlcihGb3JtYXRDb250 ZXh0LT5zdHJlYW1zW2ldLT5jb2RlY3Bhci0+Y29kZWNfaWQpOworKyAgICAgICAgICAgIGF1dG8g KkF1ZGlvQ29kZWMgPSBhdmNvZGVjX2ZpbmRfZGVjb2RlcihGb3JtYXRDb250ZXh0LT5zdHJlYW1z W2ldLT5jb2RlY3Bhci0+Y29kZWNfaWQpOworICAgICAgICAgICAgIGlmIChBdWRpb0NvZGVjID09 IG51bGxwdHIpCisgICAgICAgICAgICAgICAgIHRocm93IEZGTVNfRXhjZXB0aW9uKEZGTVNfRVJS T1JfQ09ERUMsIEZGTVNfRVJST1JfVU5TVVBQT1JURUQsCisgICAgICAgICAgICAgICAgICAgICAi QXVkaW8gY29kZWMgbm90IGZvdW5kIik7CitkaWZmIC0tZ2l0IGEvc3JjL2NvcmUvdmlkZW9zb3Vy Y2UuY3BwIGIvc3JjL2NvcmUvdmlkZW9zb3VyY2UuY3BwCitpbmRleCBiODg5OTcwLi44OTU2YzIy IDEwMDY0NAorLS0tIGEvc3JjL2NvcmUvdmlkZW9zb3VyY2UuY3BwCisrKysgYi9zcmMvY29yZS92 aWRlb3NvdXJjZS5jcHAKK0BAIC0xNzEsNyArMTcxLDcgQEAgRkZNU19WaWRlb1NvdXJjZTo6RkZN U19WaWRlb1NvdXJjZShjb25zdCBjaGFyICpTb3VyY2VGaWxlLCBGRk1TX0luZGV4ICZJbmRleCwg aW4KKyAKKyAgICAgICAgIExBVkZPcGVuRmlsZShTb3VyY2VGaWxlLCBGb3JtYXRDb250ZXh0LCBW aWRlb1RyYWNrKTsKKyAKKy0gICAgICAgIEFWQ29kZWMgKkNvZGVjID0gYXZjb2RlY19maW5kX2Rl Y29kZXIoRm9ybWF0Q29udGV4dC0+c3RyZWFtc1tWaWRlb1RyYWNrXS0+Y29kZWNwYXItPmNvZGVj X2lkKTsKKysgICAgICAgIGF1dG8gKkNvZGVjID0gYXZjb2RlY19maW5kX2RlY29kZXIoRm9ybWF0 Q29udGV4dC0+c3RyZWFtc1tWaWRlb1RyYWNrXS0+Y29kZWNwYXItPmNvZGVjX2lkKTsKKyAgICAg ICAgIGlmIChDb2RlYyA9PSBudWxscHRyKQorICAgICAgICAgICAgIHRocm93IEZGTVNfRXhjZXB0 aW9uKEZGTVNfRVJST1JfREVDT0RJTkcsIEZGTVNfRVJST1JfQ09ERUMsCisgICAgICAgICAgICAg ICAgICJWaWRlbyBjb2RlYyBub3QgZm91bmQiKTsKKy0tIAorMi40MC4wCisKK0Zyb20gOTZjYmYz OGVhOTM4MTgyOWExMzE0ZjQzMmEyYzYwNDk1ZGNlZmFhZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKK0Zyb206IERlcmVrIEJ1aXRlbmh1aXMgPGRlcmVrLmJ1aXRlbmh1aXNAZ21haWwuY29tPgor RGF0ZTogVHVlLCA0IE1heSAyMDIxIDE0OjEyOjQxICswMTAwCitTdWJqZWN0OiBbUEFUQ0hdIGFs bDogVXBkYXRlIEFWUGFja2V0IEFQSSB1c2FnZQorCitBVlBhY2tldHMgbXVzdCBhbGwgYmUgb24g dGhlIGhlYXAgbm93LCBzaW5jZSBpdCBpcyBubyBsb25nZXIKK3BhcnQgb2YgdGhlIGxpYmF2KiBB QkkuCisKK1NpZ25lZC1vZmYtYnk6IERlcmVrIEJ1aXRlbmh1aXMgPGRlcmVrLmJ1aXRlbmh1aXNA Z21haWwuY29tPgorLS0tCisgc3JjL2NvcmUvYXVkaW9zb3VyY2UuY3BwIHwgMTYgKysrKysrLS0t LQorIHNyYy9jb3JlL2luZGV4aW5nLmNwcCAgICB8IDYzICsrKysrKysrKysrKysrKysrKysrKyst LS0tLS0tLS0tLS0tLS0tLS0KKyBzcmMvY29yZS9pbmRleGluZy5oICAgICAgfCAgNCArLS0KKyBz cmMvY29yZS91dGlscy5jcHAgICAgICAgfCAgNiAtLS0tCisgc3JjL2NvcmUvdXRpbHMuaCAgICAg ICAgIHwgIDEgLQorIHNyYy9jb3JlL3ZpZGVvc291cmNlLmNwcCB8IDMwICsrKysrKysrKystLS0t LS0tLS0KKyA2IGZpbGVzIGNoYW5nZWQsIDY0IGluc2VydGlvbnMoKyksIDU2IGRlbGV0aW9ucygt KQorCitkaWZmIC0tZ2l0IGEvc3JjL2NvcmUvYXVkaW9zb3VyY2UuY3BwIGIvc3JjL2NvcmUvYXVk aW9zb3VyY2UuY3BwCitpbmRleCAzN2NmOWFlLi5lNGNlOTdjIDEwMDY0NAorLS0tIGEvc3JjL2Nv cmUvYXVkaW9zb3VyY2UuY3BwCisrKysgYi9zcmMvY29yZS9hdWRpb3NvdXJjZS5jcHAKK0BAIC0y ODUsMTAgKzI4NSwxNSBAQCBGRk1TX0F1ZGlvU291cmNlOjpBdWRpb0Jsb2NrICpGRk1TX0F1ZGlv U291cmNlOjpDYWNoZUJsb2NrKENhY2hlSXRlcmF0b3IgJnBvcykgeworIGludCBGRk1TX0F1ZGlv U291cmNlOjpEZWNvZGVOZXh0QmxvY2soQ2FjaGVJdGVyYXRvciAqcG9zKSB7CisgICAgIEN1cnJl bnRGcmFtZSA9ICZGcmFtZXNbUGFja2V0TnVtYmVyXTsKKyAKKy0gICAgQVZQYWNrZXQgUGFja2V0 OworLSAgICBpZiAoIVJlYWRQYWNrZXQoJlBhY2tldCkpCisrICAgIEFWUGFja2V0ICpQYWNrZXQg PSBhdl9wYWNrZXRfYWxsb2MoKTsKKysgICAgaWYgKCFQYWNrZXQpCisrICAgICAgICB0aHJvdyBG Rk1TX0V4Y2VwdGlvbihGRk1TX0VSUk9SX1BBUlNFUiwgRkZNU19FUlJPUl9BTExPQ0FUSU9OX0ZB SUxFRCwKKysgICAgICAgICAgICAiQ291bGQgbm90IGFsbG9jYXRlIHBhY2tldC4iKTsKKysgICAg aWYgKCFSZWFkUGFja2V0KFBhY2tldCkpIHsKKysgICAgICAgIGF2X3BhY2tldF9mcmVlKCZQYWNr ZXQpOworICAgICAgICAgdGhyb3cgRkZNU19FeGNlcHRpb24oRkZNU19FUlJPUl9QQVJTRVIsIEZG TVNfRVJST1JfVU5LTk9XTiwKKyAgICAgICAgICAgICAiUmVhZFBhY2tldCB1bmV4cGVjdGVkbHkg ZmFpbGVkIHRvIHJlYWQgYSBwYWNrZXQiKTsKKysgICAgfQorIAorICAgICAvLyBSZWFkUGFja2V0 IG1heSBoYXZlIGNoYW5nZWQgdGhlIHBhY2tldCBudW1iZXIKKyAgICAgQ3VycmVudEZyYW1lID0g JkZyYW1lc1tQYWNrZXROdW1iZXJdOworQEAgLTI5Nyw4ICszMDIsOSBAQCBpbnQgRkZNU19BdWRp b1NvdXJjZTo6RGVjb2RlTmV4dEJsb2NrKENhY2hlSXRlcmF0b3IgKnBvcykgeworICAgICBpbnQg TnVtYmVyT2ZTYW1wbGVzID0gMDsKKyAgICAgQXVkaW9CbG9jayAqQ2FjaGVkQmxvY2sgPSBudWxs cHRyOworICAgICAKKy0gICAgaW50IFJldCA9IGF2Y29kZWNfc2VuZF9wYWNrZXQoQ29kZWNDb250 ZXh0LCAmUGFja2V0KTsKKy0gICAgYXZfcGFja2V0X3VucmVmKCZQYWNrZXQpOworKyAgICBpbnQg UmV0ID0gYXZjb2RlY19zZW5kX3BhY2tldChDb2RlY0NvbnRleHQsIFBhY2tldCk7CisrICAgIGF2 X3BhY2tldF91bnJlZihQYWNrZXQpOworKyAgICBhdl9wYWNrZXRfZnJlZSgmUGFja2V0KTsKKyAK KyAgICAgYXZfZnJhbWVfdW5yZWYoRGVjb2RlRnJhbWUpOworICAgICBSZXQgPSBhdmNvZGVjX3Jl Y2VpdmVfZnJhbWUoQ29kZWNDb250ZXh0LCBEZWNvZGVGcmFtZSk7CitAQCAtNTEzLDggKzUxOSw2 IEBAIHZvaWQgRkZNU19BdWRpb1NvdXJjZTo6U2VlaygpIHsKKyB9CisgCisgYm9vbCBGRk1TX0F1 ZGlvU291cmNlOjpSZWFkUGFja2V0KEFWUGFja2V0ICpQYWNrZXQpIHsKKy0gICAgSW5pdE51bGxQ YWNrZXQoKlBhY2tldCk7CistCisgICAgIHdoaWxlIChhdl9yZWFkX2ZyYW1lKEZvcm1hdENvbnRl eHQsIFBhY2tldCkgPj0gMCkgeworICAgICAgICAgaWYgKFBhY2tldC0+c3RyZWFtX2luZGV4ID09 IFRyYWNrTnVtYmVyKSB7CisgICAgICAgICAgICAgLy8gUmVxdWlyZWQgYmVjYXVzZSBub3QgYWxs IGF1ZGlvIHBhY2tldHMsIGVzcGVjaWFsbHkgaW4gb2dnLCBoYXZlIGEgcHRzLiBVc2UgdGhlIHBy ZXZpb3VzIHZhbGlkIHBhY2tldCdzIHB0cyBpbnN0ZWFkLgorZGlmZiAtLWdpdCBhL3NyYy9jb3Jl L2luZGV4aW5nLmNwcCBiL3NyYy9jb3JlL2luZGV4aW5nLmNwcAoraW5kZXggMjNmYjk1Yi4uZTU0 N2M1YSAxMDA2NDQKKy0tLSBhL3NyYy9jb3JlL2luZGV4aW5nLmNwcAorKysrIGIvc3JjL2NvcmUv aW5kZXhpbmcuY3BwCitAQCAtMzIwLDcgKzMyMCw3IEBAIHZvaWQgRkZNU19JbmRleGVyOjpDaGVj a0F1ZGlvUHJvcGVydGllcyhpbnQgVHJhY2ssIEFWQ29kZWNDb250ZXh0ICpDb250ZXh0KSB7Cisg ICAgIH0KKyB9CisgCistdm9pZCBGRk1TX0luZGV4ZXI6OlBhcnNlVmlkZW9QYWNrZXQoU2hhcmVk QVZDb250ZXh0ICZWaWRlb0NvbnRleHQsIEFWUGFja2V0ICZwa3QsIGludCAqUmVwZWF0UGljdCwK Kyt2b2lkIEZGTVNfSW5kZXhlcjo6UGFyc2VWaWRlb1BhY2tldChTaGFyZWRBVkNvbnRleHQgJlZp ZGVvQ29udGV4dCwgQVZQYWNrZXQgKnBrdCwgaW50ICpSZXBlYXRQaWN0LAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqRnJhbWVUeXBlLCBib29sICpJbnZpc2libGUs IGVudW0gQVZQaWN0dXJlU3RydWN0dXJlICpMYXN0UGljU3RydWN0KSB7CisgICAgIGlmIChWaWRl b0NvbnRleHQuUGFyc2VyKSB7CisgICAgICAgICB1aW50OF90ICpPQjsKK0BAIC0zMzAsOCArMzMw LDggQEAgdm9pZCBGRk1TX0luZGV4ZXI6OlBhcnNlVmlkZW9QYWNrZXQoU2hhcmVkQVZDb250ZXh0 ICZWaWRlb0NvbnRleHQsIEFWUGFja2V0ICZwa3QKKyAgICAgICAgIGF2X3BhcnNlcl9wYXJzZTIo VmlkZW9Db250ZXh0LlBhcnNlciwKKyAgICAgICAgICAgICBWaWRlb0NvbnRleHQuQ29kZWNDb250 ZXh0LAorICAgICAgICAgICAgICZPQiwgJk9CU2l6ZSwKKy0gICAgICAgICAgICBwa3QuZGF0YSwg cGt0LnNpemUsCistICAgICAgICAgICAgcGt0LnB0cywgcGt0LmR0cywgcGt0LnBvcyk7CisrICAg ICAgICAgICAgcGt0LT5kYXRhLCBwa3QtPnNpemUsCisrICAgICAgICAgICAgcGt0LT5wdHMsIHBr dC0+ZHRzLCBwa3QtPnBvcyk7CisgCisgICAgICAgICAvLyBILjI2NCAoUEFGRikgYW5kIEhFVkMg bWF5IGhhdmUgb25lIGZpZWxkIHBlciBwYWNrZXQsIHNvIHdlIG5lZWQgdG8gdHJhY2sKKyAgICAg ICAgIC8vIHdoZW4gd2UgaGF2ZSBhIGZ1bGwgb3IgaGFsZiBmcmFtZSBhdmFpbGFibGUsIGFuZCBt YXJrIG9uZSBvZiB0aGVtIGFzCitAQCAtMzUxLDE1ICszNTEsMTUgQEAgdm9pZCBGRk1TX0luZGV4 ZXI6OlBhcnNlVmlkZW9QYWNrZXQoU2hhcmVkQVZDb250ZXh0ICZWaWRlb0NvbnRleHQsIEFWUGFj a2V0ICZwa3QKKyAKKyAgICAgICAgICpSZXBlYXRQaWN0ID0gVmlkZW9Db250ZXh0LlBhcnNlci0+ cmVwZWF0X3BpY3Q7CisgICAgICAgICAqRnJhbWVUeXBlID0gVmlkZW9Db250ZXh0LlBhcnNlci0+ cGljdF90eXBlOworLSAgICAgICAgKkludmlzaWJsZSA9IChJbmNvbXBsZXRlRnJhbWUgfHwgVmlk ZW9Db250ZXh0LlBhcnNlci0+cmVwZWF0X3BpY3QgPCAwIHx8IChwa3QuZmxhZ3MgJiBBVl9QS1Rf RkxBR19ESVNDQVJEKSk7CisrICAgICAgICAqSW52aXNpYmxlID0gKEluY29tcGxldGVGcmFtZSB8 fCBWaWRlb0NvbnRleHQuUGFyc2VyLT5yZXBlYXRfcGljdCA8IDAgfHwgKHBrdC0+ZmxhZ3MgJiBB Vl9QS1RfRkxBR19ESVNDQVJEKSk7CisgICAgIH0gZWxzZSB7CistICAgICAgICAqSW52aXNpYmxl ID0gISEocGt0LmZsYWdzICYgQVZfUEtUX0ZMQUdfRElTQ0FSRCk7CisrICAgICAgICAqSW52aXNp YmxlID0gISEocGt0LT5mbGFncyAmIEFWX1BLVF9GTEFHX0RJU0NBUkQpOworICAgICB9CisgCisg ICAgIGlmIChWaWRlb0NvbnRleHQuQ29kZWNDb250ZXh0LT5jb2RlY19pZCA9PSBBVl9DT0RFQ19J RF9WUDgpCistICAgICAgICBQYXJzZVZQOChwa3QuZGF0YVswXSwgSW52aXNpYmxlLCBGcmFtZVR5 cGUpOworKyAgICAgICAgUGFyc2VWUDgocGt0LT5kYXRhWzBdLCBJbnZpc2libGUsIEZyYW1lVHlw ZSk7CisgICAgIGVsc2UgaWYgKFZpZGVvQ29udGV4dC5Db2RlY0NvbnRleHQtPmNvZGVjX2lkID09 IEFWX0NPREVDX0lEX1ZQOSkKKy0gICAgICAgIFBhcnNlVlA5KHBrdC5kYXRhWzBdLCBJbnZpc2li bGUsIEZyYW1lVHlwZSk7CisrICAgICAgICBQYXJzZVZQOShwa3QtPmRhdGFbMF0sIEludmlzaWJs ZSwgRnJhbWVUeXBlKTsKKyB9CisgCisgdm9pZCBGRk1TX0luZGV4ZXI6OkZyZWUoKSB7CitAQCAt NDU4LDMyICs0NTgsMzYgQEAgRkZNU19JbmRleCAqRkZNU19JbmRleGVyOjpEb0luZGV4aW5nKCkg eworICAgICAgICAgfQorICAgICB9CisgCistICAgIEFWUGFja2V0IFBhY2tldDsKKy0gICAgSW5p dE51bGxQYWNrZXQoUGFja2V0KTsKKysgICAgQVZQYWNrZXQgKlBhY2tldCA9IGF2X3BhY2tldF9h bGxvYygpOworKyAgICBpZiAoIVBhY2tldCkKKysgICAgICAgIHRocm93IEZGTVNfRXhjZXB0aW9u KEZGTVNfRVJST1JfQ09ERUMsIEZGTVNfRVJST1JfQUxMT0NBVElPTl9GQUlMRUQsCisrICAgICAg ICAgICAgIkNvdWxkIG5vdCBhbGxvY2F0ZSBwYWNrZXQuIik7CisgICAgIHN0ZDo6dmVjdG9yPGlu dDY0X3Q+IExhc3RWYWxpZFRTKEZvcm1hdENvbnRleHQtPm5iX3N0cmVhbXMsIEFWX05PUFRTX1ZB TFVFKTsKKyAKKyAgICAgaW50NjRfdCBmaWxlc2l6ZSA9IGF2aW9fc2l6ZShGb3JtYXRDb250ZXh0 LT5wYik7CisgICAgIGVudW0gQVZQaWN0dXJlU3RydWN0dXJlIExhc3RQaWNTdHJ1Y3QgPSBBVl9Q SUNUVVJFX1NUUlVDVFVSRV9VTktOT1dOOworLSAgICB3aGlsZSAoYXZfcmVhZF9mcmFtZShGb3Jt YXRDb250ZXh0LCAmUGFja2V0KSA+PSAwKSB7CisrICAgIHdoaWxlIChhdl9yZWFkX2ZyYW1lKEZv cm1hdENvbnRleHQsIFBhY2tldCkgPj0gMCkgeworICAgICAgICAgLy8gVXBkYXRlIHByb2dyZXNz CisgICAgICAgICAvLyBGb3JtYXRDb250ZXh0LT5wYiBjYW4gYXBwYXJlbnRseSBiZSBOVUxMIHdo ZW4gb3BlbmluZyBpbWFnZXMuCisgICAgICAgICBpZiAoSUMgJiYgRm9ybWF0Q29udGV4dC0+cGIp IHsKKy0gICAgICAgICAgICBpZiAoKCpJQykoRm9ybWF0Q29udGV4dC0+cGItPnBvcywgZmlsZXNp emUsIElDUHJpdmF0ZSkpCisrICAgICAgICAgICAgaWYgKCgqSUMpKEZvcm1hdENvbnRleHQtPnBi LT5wb3MsIGZpbGVzaXplLCBJQ1ByaXZhdGUpKSB7CisrICAgICAgICAgICAgICAgIGF2X3BhY2tl dF9mcmVlKCZQYWNrZXQpOworICAgICAgICAgICAgICAgICB0aHJvdyBGRk1TX0V4Y2VwdGlvbihG Rk1TX0VSUk9SX0NBTkNFTExFRCwgRkZNU19FUlJPUl9VU0VSLAorICAgICAgICAgICAgICAgICAg ICAgIkNhbmNlbGxlZCBieSB1c2VyIik7CisrICAgICAgICAgICAgfQorICAgICAgICAgfQorLSAg ICAgICAgaWYgKCFJbmRleE1hc2suY291bnQoUGFja2V0LnN0cmVhbV9pbmRleCkpIHsKKy0gICAg ICAgICAgICBhdl9wYWNrZXRfdW5yZWYoJlBhY2tldCk7CisrICAgICAgICBpZiAoIUluZGV4TWFz ay5jb3VudChQYWNrZXQtPnN0cmVhbV9pbmRleCkpIHsKKysgICAgICAgICAgICBhdl9wYWNrZXRf dW5yZWYoUGFja2V0KTsKKyAgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgIH0KKyAKKy0g ICAgICAgIGludCBUcmFjayA9IFBhY2tldC5zdHJlYW1faW5kZXg7CisrICAgICAgICBpbnQgVHJh Y2sgPSBQYWNrZXQtPnN0cmVhbV9pbmRleDsKKyAgICAgICAgIEZGTVNfVHJhY2sgJlRyYWNrSW5m byA9ICgqVHJhY2tJbmRpY2VzKVtUcmFja107CistICAgICAgICBib29sIEtleUZyYW1lID0gISEo UGFja2V0LmZsYWdzICYgQVZfUEtUX0ZMQUdfS0VZKTsKKysgICAgICAgIGJvb2wgS2V5RnJhbWUg PSAhIShQYWNrZXQtPmZsYWdzICYgQVZfUEtUX0ZMQUdfS0VZKTsKKyAgICAgICAgIFJlYWRUUyhQ YWNrZXQsIExhc3RWYWxpZFRTW1RyYWNrXSwgKCpUcmFja0luZGljZXMpW1RyYWNrXS5Vc2VEVFMp OworIAorICAgICAgICAgaWYgKEZvcm1hdENvbnRleHQtPnN0cmVhbXNbVHJhY2tdLT5jb2RlY3Bh ci0+Y29kZWNfdHlwZSA9PSBBVk1FRElBX1RZUEVfVklERU8pIHsKKy0gICAgICAgICAgICBpbnQ2 NF90IFBUUyA9IFRyYWNrSW5mby5Vc2VEVFMgPyBQYWNrZXQuZHRzIDogUGFja2V0LnB0czsKKysg ICAgICAgICAgICBpbnQ2NF90IFBUUyA9IFRyYWNrSW5mby5Vc2VEVFMgPyBQYWNrZXQtPmR0cyA6 IFBhY2tldC0+cHRzOworICAgICAgICAgICAgIGlmIChQVFMgPT0gQVZfTk9QVFNfVkFMVUUpIHsK KyAgICAgICAgICAgICAgICAgLy8gVlB4IGFsdC1yZWZzIGFyZSBvdXRwdXQgYXMgcGFja2V0cyB3 aGljaCBsYWNrIHRpbWVzdG1wcyBvciBkdXJhdGlvbnMsIHNpbmNlCisgICAgICAgICAgICAgICAg IC8vIHRoZXkgYXJlIGludmlzaWJsZS4gQ3VycmVudGx5LCB0aGUgdGltZXN0YW1wIG1hbmdsaW5n IGNvZGUgaW4gbGliYXZmb3JtYXQKK0BAIC00OTUsOSArNDk5LDExIEBAIEZGTVNfSW5kZXggKkZG TVNfSW5kZXhlcjo6RG9JbmRleGluZygpIHsKKyAgICAgICAgICAgICAgICAgLy8gRkZNUzIgY3Vy cmVudGx5IHNvcnRzIHBhY2tldHMgYnkgUFRTLCB3aGljaCB3aWxsIGJyZWFrIGRlY29kaW5nLCBv dGhlcndpc2UuCisgICAgICAgICAgICAgICAgIGJvb2wgSGFzQWx0UmVmcyA9IChGb3JtYXRDb250 ZXh0LT5zdHJlYW1zW1RyYWNrXS0+Y29kZWNwYXItPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX1ZQ OCB8fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRm9ybWF0Q29udGV4dC0+ c3RyZWFtc1tUcmFja10tPmNvZGVjcGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9WUDkpOwor LSAgICAgICAgICAgICAgICBpZiAoUGFja2V0LmR1cmF0aW9uID09IDAgJiYgIUhhc0FsdFJlZnMp CisrICAgICAgICAgICAgICAgIGlmIChQYWNrZXQtPmR1cmF0aW9uID09IDAgJiYgIUhhc0FsdFJl ZnMpIHsKKysgICAgICAgICAgICAgICAgICAgIGF2X3BhY2tldF9mcmVlKCZQYWNrZXQpOworICAg ICAgICAgICAgICAgICAgICAgdGhyb3cgRkZNU19FeGNlcHRpb24oRkZNU19FUlJPUl9JTkRFWElO RywgRkZNU19FUlJPUl9QQVJTRVIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIkludmFsaWQg cGFja2V0IHB0cywgZHRzLCBhbmQgZHVyYXRpb24iKTsKKysgICAgICAgICAgICAgICAgfQorIAor ICAgICAgICAgICAgICAgICBpZiAoVHJhY2tJbmZvLmVtcHR5KCkpCisgICAgICAgICAgICAgICAg ICAgICBQVFMgPSAwOworQEAgLTUxMyw3ICs1MTksNyBAQCBGRk1TX0luZGV4ICpGRk1TX0luZGV4 ZXI6OkRvSW5kZXhpbmcoKSB7CisgICAgICAgICAgICAgUGFyc2VWaWRlb1BhY2tldChBVkNvbnRl eHRzW1RyYWNrXSwgUGFja2V0LCAmUmVwZWF0UGljdCwgJkZyYW1lVHlwZSwgJkludmlzaWJsZSwg Jkxhc3RQaWNTdHJ1Y3QpOworIAorICAgICAgICAgICAgIFRyYWNrSW5mby5BZGRWaWRlb0ZyYW1l KFBUUywgUmVwZWF0UGljdCwgS2V5RnJhbWUsCistICAgICAgICAgICAgICAgIEZyYW1lVHlwZSwg UGFja2V0LnBvcywgSW52aXNpYmxlKTsKKysgICAgICAgICAgICAgICAgRnJhbWVUeXBlLCBQYWNr ZXQtPnBvcywgSW52aXNpYmxlKTsKKyAgICAgICAgIH0gZWxzZSBpZiAoRm9ybWF0Q29udGV4dC0+ c3RyZWFtc1tUcmFja10tPmNvZGVjcGFyLT5jb2RlY190eXBlID09IEFWTUVESUFfVFlQRV9BVURJ TykgeworICAgICAgICAgICAgIC8vIEZvciB2aWRlbyBzZWVraW5nIHRpbWVzdGFtcHMgYXJlIHVz ZWQgb25seSBpZiBhbGwgcGFja2V0cyBoYXZlCisgICAgICAgICAgICAgLy8gdGltZXN0YW1wcywg d2hpbGUgZm9yIGF1ZGlvIHRoZXkncmUgdXNlZCBpZiBhbnkgaGF2ZSB0aW1lc3RhbXBzLAorQEAg LTUyMiwyOCArNTI4LDI5IEBAIEZGTVNfSW5kZXggKkZGTVNfSW5kZXhlcjo6RG9JbmRleGluZygp IHsKKyAgICAgICAgICAgICAgICAgVHJhY2tJbmZvLkhhc1RTID0gdHJ1ZTsKKyAKKyAgICAgICAg ICAgICBpbnQ2NF90IFN0YXJ0U2FtcGxlID0gQVZDb250ZXh0c1tUcmFja10uQ3VycmVudFNhbXBs ZTsKKy0gICAgICAgICAgICB1aW50MzJfdCBTYW1wbGVDb3VudCA9IEluZGV4QXVkaW9QYWNrZXQo VHJhY2ssICZQYWNrZXQsIEFWQ29udGV4dHNbVHJhY2tdLCAqVHJhY2tJbmRpY2VzKTsKKysgICAg ICAgICAgICB1aW50MzJfdCBTYW1wbGVDb3VudCA9IEluZGV4QXVkaW9QYWNrZXQoVHJhY2ssIFBh Y2tldCwgQVZDb250ZXh0c1tUcmFja10sICpUcmFja0luZGljZXMpOworICAgICAgICAgICAgIFRy YWNrSW5mby5TYW1wbGVSYXRlID0gQVZDb250ZXh0c1tUcmFja10uQ29kZWNDb250ZXh0LT5zYW1w bGVfcmF0ZTsKKyAKKyAgICAgICAgICAgICBUcmFja0luZm8uQWRkQXVkaW9GcmFtZShMYXN0VmFs aWRUU1tUcmFja10sCistICAgICAgICAgICAgICAgIFN0YXJ0U2FtcGxlLCBTYW1wbGVDb3VudCwg S2V5RnJhbWUsIFBhY2tldC5wb3MsIFBhY2tldC5mbGFncyAmIEFWX1BLVF9GTEFHX0RJU0NBUkQp OworKyAgICAgICAgICAgICAgICBTdGFydFNhbXBsZSwgU2FtcGxlQ291bnQsIEtleUZyYW1lLCBQ YWNrZXQtPnBvcywgUGFja2V0LT5mbGFncyAmIEFWX1BLVF9GTEFHX0RJU0NBUkQpOworICAgICAg ICAgfQorIAorLSAgICAgICAgaWYgKCEoUGFja2V0LmZsYWdzICYgQVZfUEtUX0ZMQUdfRElTQ0FS RCkpCistICAgICAgICAgICAgVHJhY2tJbmZvLkxhc3REdXJhdGlvbiA9IFBhY2tldC5kdXJhdGlv bjsKKysgICAgICAgIGlmICghKFBhY2tldC0+ZmxhZ3MgJiBBVl9QS1RfRkxBR19ESVNDQVJEKSkK KysgICAgICAgICAgICBUcmFja0luZm8uTGFzdER1cmF0aW9uID0gUGFja2V0LT5kdXJhdGlvbjsK KyAKKy0gICAgICAgIGF2X3BhY2tldF91bnJlZigmUGFja2V0KTsKKysgICAgICAgIGF2X3BhY2tl dF91bnJlZihQYWNrZXQpOworICAgICB9CisrICAgIGF2X3BhY2tldF9mcmVlKCZQYWNrZXQpOwor IAorICAgICBUcmFja0luZGljZXMtPkZpbmFsaXplKEFWQ29udGV4dHMsIEZvcm1hdENvbnRleHQt Pmlmb3JtYXQtPm5hbWUpOworICAgICByZXR1cm4gVHJhY2tJbmRpY2VzLnJlbGVhc2UoKTsKKyB9 CisgCistdm9pZCBGRk1TX0luZGV4ZXI6OlJlYWRUUyhjb25zdCBBVlBhY2tldCAmUGFja2V0LCBp bnQ2NF90ICZUUywgYm9vbCAmVXNlRFRTKSB7CistICAgIGlmICghVXNlRFRTICYmIFBhY2tldC5w dHMgIT0gQVZfTk9QVFNfVkFMVUUpCistICAgICAgICBUUyA9IFBhY2tldC5wdHM7Cisrdm9pZCBG Rk1TX0luZGV4ZXI6OlJlYWRUUyhjb25zdCBBVlBhY2tldCAqUGFja2V0LCBpbnQ2NF90ICZUUywg Ym9vbCAmVXNlRFRTKSB7CisrICAgIGlmICghVXNlRFRTICYmIFBhY2tldC0+cHRzICE9IEFWX05P UFRTX1ZBTFVFKQorKyAgICAgICAgVFMgPSBQYWNrZXQtPnB0czsKKyAgICAgaWYgKFRTID09IEFW X05PUFRTX1ZBTFVFKQorICAgICAgICAgVXNlRFRTID0gdHJ1ZTsKKy0gICAgaWYgKFVzZURUUyAm JiBQYWNrZXQuZHRzICE9IEFWX05PUFRTX1ZBTFVFKQorLSAgICAgICAgVFMgPSBQYWNrZXQuZHRz OworKyAgICBpZiAoVXNlRFRTICYmIFBhY2tldC0+ZHRzICE9IEFWX05PUFRTX1ZBTFVFKQorKyAg ICAgICAgVFMgPSBQYWNrZXQtPmR0czsKKyB9CitkaWZmIC0tZ2l0IGEvc3JjL2NvcmUvaW5kZXhp bmcuaCBiL3NyYy9jb3JlL2luZGV4aW5nLmgKK2luZGV4IDNjZmMzYzMuLjVjMDY4NjggMTAwNjQ0 CistLS0gYS9zcmMvY29yZS9pbmRleGluZy5oCisrKysgYi9zcmMvY29yZS9pbmRleGluZy5oCitA QCAtODAsMTAgKzgwLDEwIEBAIHByaXZhdGU6CisgICAgIGludDY0X3QgRmlsZXNpemU7CisgICAg IHVpbnQ4X3QgRGlnZXN0WzIwXTsKKyAKKy0gICAgdm9pZCBSZWFkVFMoY29uc3QgQVZQYWNrZXQg JlBhY2tldCwgaW50NjRfdCAmVFMsIGJvb2wgJlVzZURUUyk7CisrICAgIHZvaWQgUmVhZFRTKGNv bnN0IEFWUGFja2V0ICpQYWNrZXQsIGludDY0X3QgJlRTLCBib29sICZVc2VEVFMpOworICAgICB2 b2lkIENoZWNrQXVkaW9Qcm9wZXJ0aWVzKGludCBUcmFjaywgQVZDb2RlY0NvbnRleHQgKkNvbnRl eHQpOworICAgICB1aW50MzJfdCBJbmRleEF1ZGlvUGFja2V0KGludCBUcmFjaywgQVZQYWNrZXQg KlBhY2tldCwgU2hhcmVkQVZDb250ZXh0ICZDb250ZXh0LCBGRk1TX0luZGV4ICZUcmFja0luZGlj ZXMpOworLSAgICB2b2lkIFBhcnNlVmlkZW9QYWNrZXQoU2hhcmVkQVZDb250ZXh0ICZWaWRlb0Nv bnRleHQsIEFWUGFja2V0ICZwa3QsIGludCAqUmVwZWF0UGljdCwgaW50ICpGcmFtZVR5cGUsIGJv b2wgKkludmlzaWJsZSwgZW51bSBBVlBpY3R1cmVTdHJ1Y3R1cmUgKkxhc3RQaWNTdHJ1Y3QpOwor KyAgICB2b2lkIFBhcnNlVmlkZW9QYWNrZXQoU2hhcmVkQVZDb250ZXh0ICZWaWRlb0NvbnRleHQs IEFWUGFja2V0ICpwa3QsIGludCAqUmVwZWF0UGljdCwgaW50ICpGcmFtZVR5cGUsIGJvb2wgKklu dmlzaWJsZSwgZW51bSBBVlBpY3R1cmVTdHJ1Y3R1cmUgKkxhc3RQaWNTdHJ1Y3QpOworICAgICB2 b2lkIEZyZWUoKTsKKyBwdWJsaWM6CisgICAgIEZGTVNfSW5kZXhlcihjb25zdCBjaGFyICpGaWxl bmFtZSk7CitkaWZmIC0tZ2l0IGEvc3JjL2NvcmUvdXRpbHMuY3BwIGIvc3JjL2NvcmUvdXRpbHMu Y3BwCitpbmRleCBjZTY3NTMzLi44YTJlOTk3IDEwMDY0NAorLS0tIGEvc3JjL2NvcmUvdXRpbHMu Y3BwCisrKysgYi9zcmMvY29yZS91dGlscy5jcHAKK0BAIC02MiwxMiArNjIsNiBAQCB2b2lkIENs ZWFyRXJyb3JJbmZvKEZGTVNfRXJyb3JJbmZvICpFcnJvckluZm8pIHsKKyAgICAgfQorIH0KKyAK Ky12b2lkIEluaXROdWxsUGFja2V0KEFWUGFja2V0ICZwa3QpIHsKKy0gICAgYXZfaW5pdF9wYWNr ZXQoJnBrdCk7CistICAgIHBrdC5kYXRhID0gbnVsbHB0cjsKKy0gICAgcGt0LnNpemUgPSAwOwor LX0KKy0KKyB2b2lkIEZpbGxBUChGRk1TX0F1ZGlvUHJvcGVydGllcyAmQVAsIEFWQ29kZWNDb250 ZXh0ICpDVFgsIEZGTVNfVHJhY2sgJkZyYW1lcykgeworICAgICBBUC5TYW1wbGVGb3JtYXQgPSBz dGF0aWNfY2FzdDxGRk1TX1NhbXBsZUZvcm1hdD4oYXZfZ2V0X3BhY2tlZF9zYW1wbGVfZm10KENU WC0+c2FtcGxlX2ZtdCkpOworICAgICBBUC5CaXRzUGVyU2FtcGxlID0gYXZfZ2V0X2J5dGVzX3Bl cl9zYW1wbGUoQ1RYLT5zYW1wbGVfZm10KSAqIDg7CitkaWZmIC0tZ2l0IGEvc3JjL2NvcmUvdXRp bHMuaCBiL3NyYy9jb3JlL3V0aWxzLmgKK2luZGV4IDk4MTlkYzcuLjAwM2FiNzkgMTAwNjQ0Cist LS0gYS9zcmMvY29yZS91dGlscy5oCisrKysgYi9zcmMvY29yZS91dGlscy5oCitAQCAtNTgsNyAr NTgsNiBAQCBzdGQ6OnVuaXF1ZV9wdHI8VD4gbWFrZV91bmlxdWUoQXJncyYmLi4uIGFyZ3MpIHsK KyB9CisgCisgdm9pZCBDbGVhckVycm9ySW5mbyhGRk1TX0Vycm9ySW5mbyAqRXJyb3JJbmZvKTsK Ky12b2lkIEluaXROdWxsUGFja2V0KEFWUGFja2V0ICZwa3QpOworIHZvaWQgRmlsbEFQKEZGTVNf QXVkaW9Qcm9wZXJ0aWVzICZBUCwgQVZDb2RlY0NvbnRleHQgKkNUWCwgRkZNU19UcmFjayAmRnJh bWVzKTsKKyAKKyB2b2lkIExBVkZPcGVuRmlsZShjb25zdCBjaGFyICpTb3VyY2VGaWxlLCBBVkZv cm1hdENvbnRleHQgKiZGb3JtYXRDb250ZXh0LCBpbnQgVHJhY2spOworZGlmZiAtLWdpdCBhL3Ny Yy9jb3JlL3ZpZGVvc291cmNlLmNwcCBiL3NyYy9jb3JlL3ZpZGVvc291cmNlLmNwcAoraW5kZXgg MDZiZDE2MS4uYjg4OTk3MCAxMDA2NDQKKy0tLSBhL3NyYy9jb3JlL3ZpZGVvc291cmNlLmNwcAor KysrIGIvc3JjL2NvcmUvdmlkZW9zb3VyY2UuY3BwCitAQCAtNjczLDMwICs2NzMsMzQgQEAgdm9p ZCBGRk1TX1ZpZGVvU291cmNlOjpEZWNvZGVOZXh0RnJhbWUoaW50NjRfdCAmQVN0YXJ0VGltZSwg aW50NjRfdCAmUG9zKSB7CisgICAgIGlmIChIYXNQZW5kaW5nRGVsYXllZEZyYW1lcygpKQorICAg ICAgICAgcmV0dXJuOworIAorLSAgICBBVlBhY2tldCBQYWNrZXQ7CistICAgIEluaXROdWxsUGFj a2V0KFBhY2tldCk7CistCistICAgIHdoaWxlIChSZWFkRnJhbWUoJlBhY2tldCkgPj0gMCkgewor LSAgICAgICAgaWYgKFBhY2tldC5zdHJlYW1faW5kZXggIT0gVmlkZW9UcmFjaykgeworLSAgICAg ICAgICAgIGF2X3BhY2tldF91bnJlZigmUGFja2V0KTsKKysgICAgQVZQYWNrZXQgKlBhY2tldCA9 IGF2X3BhY2tldF9hbGxvYygpOworKyAgICBpZiAoIVBhY2tldCkKKysgICAgICAgIHRocm93IEZG TVNfRXhjZXB0aW9uKEZGTVNfRVJST1JfREVDT0RJTkcsIEZGTVNfRVJST1JfQUxMT0NBVElPTl9G QUlMRUQsCisrICAgICAgICAgICAgIkNvdWxkIG5vdCBhbGxvY2F0ZSBwYWNrZXQuIik7CisrCisr ICAgIHdoaWxlIChSZWFkRnJhbWUoUGFja2V0KSA+PSAwKSB7CisrICAgICAgICBpZiAoUGFja2V0 LT5zdHJlYW1faW5kZXggIT0gVmlkZW9UcmFjaykgeworKyAgICAgICAgICAgIGF2X3BhY2tldF91 bnJlZihQYWNrZXQpOworICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgfQorIAorICAg ICAgICAgaWYgKEFTdGFydFRpbWUgPCAwKQorLSAgICAgICAgICAgIEFTdGFydFRpbWUgPSBGcmFt ZXMuVXNlRFRTID8gUGFja2V0LmR0cyA6IFBhY2tldC5wdHM7CisrICAgICAgICAgICAgQVN0YXJ0 VGltZSA9IEZyYW1lcy5Vc2VEVFMgPyBQYWNrZXQtPmR0cyA6IFBhY2tldC0+cHRzOworIAorICAg ICAgICAgaWYgKFBvcyA8IDApCistICAgICAgICAgICAgUG9zID0gUGFja2V0LnBvczsKKysgICAg ICAgICAgICBQb3MgPSBQYWNrZXQtPnBvczsKKyAKKy0gICAgICAgIGJvb2wgRnJhbWVGaW5pc2hl ZCA9IERlY29kZVBhY2tldCgmUGFja2V0KTsKKy0gICAgICAgIGF2X3BhY2tldF91bnJlZigmUGFj a2V0KTsKKy0gICAgICAgIGlmIChGcmFtZUZpbmlzaGVkKQorKyAgICAgICAgYm9vbCBGcmFtZUZp bmlzaGVkID0gRGVjb2RlUGFja2V0KFBhY2tldCk7CisrICAgICAgICBhdl9wYWNrZXRfdW5yZWYo UGFja2V0KTsKKysgICAgICAgIGlmIChGcmFtZUZpbmlzaGVkKSB7CisrICAgICAgICAgICAgYXZf cGFja2V0X2ZyZWUoJlBhY2tldCk7CisgICAgICAgICAgICAgcmV0dXJuOworKyAgICAgICAgfQor ICAgICB9CisgCisgICAgIC8vIEZsdXNoIGZpbmFsIGZyYW1lcworLSAgICBJbml0TnVsbFBhY2tl dChQYWNrZXQpOworLSAgICBEZWNvZGVQYWNrZXQoJlBhY2tldCk7CisrICAgIERlY29kZVBhY2tl dChQYWNrZXQpOworKyAgICBhdl9wYWNrZXRfZnJlZSgmUGFja2V0KTsKKyB9CisgCisgYm9vbCBG Rk1TX1ZpZGVvU291cmNlOjpTZWVrVG8oaW50IG4sIGludCBTZWVrT2Zmc2V0KSB7CistLSAKKzIu NDAuMAorCitGcm9tIGJmOWUwM2U5ZTA4NTM0YzAyNGU1YTc0NGE2NDM3YzRhYWMxNjAyMDEgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBEZXJlayBCdWl0ZW5odWlzIDxkZXJlay5idWl0 ZW5odWlzQGdtYWlsLmNvbT4KK0RhdGU6IFR1ZSwgNCBNYXkgMjAyMSAxNDoyMDo0NyArMDEwMAor U3ViamVjdDogW1BBVENIIDIvM10gY29uZmlndXJlOiBSZW1vdmUgZGVwcmVjYXRlZCBBUEkgdXNl CisKK1NpZ25lZC1vZmYtYnk6IERlcmVrIEJ1aXRlbmh1aXMgPGRlcmVrLmJ1aXRlbmh1aXNAZ21h aWwuY29tPgorLS0tCisgY29uZmlndXJlLmFjIHwgNCArKy0tCisgMSBmaWxlIGNoYW5nZWQsIDIg aW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL2NvbmZpZ3VyZS5h YyBiL2NvbmZpZ3VyZS5hYworaW5kZXggYjM1ZWY4MGJjLi5kMTk3MTRkMGYgMTAwNjQ0CistLS0g YS9jb25maWd1cmUuYWMKKysrKyBiL2NvbmZpZ3VyZS5hYworQEAgLTEwMiwxMCArMTAyLDEwIEBA IENGTEFHUz0iJF9DRkxBR1MgJEZGTVBFR19DRkxBR1MiCisKKyBBQ19ERUZVTihbVEVTVF9GRk1Q RUddLAorICAgICAgICAgIFtBQ19MSU5LX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbCistICAg ICAgICAgICAgI2luY2x1ZGUgPGxpYmF2Y29kZWMvYXZjb2RlYy5oPgorKyAgICAgICAgICAgICNp bmNsdWRlIDxsaWJhdmZvcm1hdC9hdmZvcm1hdC5oPgorICAgICAgICAgICAgICNpbmNsdWRlIDxs aWJzd3NjYWxlL3N3c2NhbGUuaD4KKyAgICAgICAgICAgICBdXSxbWworLSAgICAgICAgICAgICAg ICBhdmNvZGVjX3JlZ2lzdGVyX2FsbCgpOworKyAgICAgICAgICAgICAgICBhdmZvcm1hdF9uZXR3 b3JrX2luaXQoKTsKKyAgICAgICAgICAgICAgICAgc3dzY2FsZV92ZXJzaW9uKCk7CisgICAgICAg ICAgICAgXV0pXSwgW2V2YWwgJDE9eWVzXSwgW2V2YWwgJDE9bm9dKQorICAgICAgICAgXSkKKwpk aWZmIC0tZ2l0IGEvc3JjcGtncy9mZm1zMi90ZW1wbGF0ZSBiL3NyY3BrZ3MvZmZtczIvdGVtcGxh dGUKaW5kZXggMzY1ZjY0ZDEwY2JhYmYuLjE2NDFlY2Y0M2JlNWJiIDEwMDY0NAotLS0gYS9zcmNw a2dzL2ZmbXMyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZmZtczIvdGVtcGxhdGUKQEAgLTEsNyAr MSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdmZm1zMicKIHBrZ25hbWU9ZmZtczIKIHZlcnNp b249Mi40MAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3Vy ZQogY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLXNoYXJlZCAtLWRpc2FibGUtc3RhdGljIgogaG9z dG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGF1dG9jb25mIGF1dG9tYWtlIGxpYnRvb2wiCgpGcm9t IDhjMGFjMGNhMWQ0MDM4YmE4YmRlOTY5ZWU1NzRlNGVlNmM2ODVkY2UgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIg TWFyIDIwMjMgMjA6MDE6NDcgLTA0MDAKU3ViamVjdDogW1BBVENIIDAzMC8xMDldIGZyZWVyZHA6 IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9mcmVlcmRwL3RlbXBsYXRlIHwgMiAr LQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy9mcmVlcmRwL3RlbXBsYXRlIGIvc3JjcGtncy9mcmVlcmRwL3RlbXBsYXRl CmluZGV4IDE2ZmRkZmJlOGY1Mjg3Li5iZjNhNGQyZTJiM2FlNyAxMDA2NDQKLS0tIGEvc3JjcGtn cy9mcmVlcmRwL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZnJlZXJkcC90ZW1wbGF0ZQpAQCAtMSw3 ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2ZyZWVyZHAnCiBwa2duYW1lPWZyZWVyZHAK IHZlcnNpb249Mi4xMS40Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFr ZQogY29uZmlndXJlX2FyZ3M9Ii1EV0lUSF9BTFNBPU9OIC1EV0lUSF9DVVBTPU9GRiAtRFdJVEhf RkZNUEVHPU9OCiAgLURXSVRIX0dTVFJFQU1FUl8wXzEwPU9GRiAtRFdJVEhfR1NUUkVBTUVSXzFf MD1PRkYgLURXSVRIX0pQRUc9T04KCkZyb20gMTQyNDIxZDgyNmEwNjU3N2NlMzQwODkyYTQ3MmQ2 MzY2M2FjZTQ0ZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1 QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0NyAtMDQwMApTdWJqZWN0 OiBbUEFUQ0ggMDMxLzEwOV0gZ2VyYmVyYTogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNw a2dzL2dlcmJlcmEvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24o KyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dlcmJlcmEvdGVtcGxhdGUg Yi9zcmNwa2dzL2dlcmJlcmEvdGVtcGxhdGUKaW5kZXggYWUxNGYzNWM3NjdjMDMuLjJkYzBhYzBj ZTAzYjU1IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dlcmJlcmEvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9nZXJiZXJhL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn Z2VyYmVyYScKIHBrZ25hbWU9Z2VyYmVyYQogdmVyc2lvbj0xLjEyLjEKLXJldmlzaW9uPTEKK3Jl dmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURXSVRIX1NZU1RF TUQ9MCAtRFdJVEhfQVZDT0RFQz0xIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIgoKRnJv bSA2Y2M2YjQzMDc1M2JjOGM5NmI3Yjg3ODU4ZmE0NTRlNzMzODc5ZjcxIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIy IE1hciAyMDIzIDIwOjAxOjQ3IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMzIvMTA5XSBnb2xkZW5k aWN0OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvZ29sZGVuZGljdC90ZW1wbGF0 ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dvbGRlbmRpY3QvdGVtcGxhdGUgYi9zcmNwa2dzL2dv bGRlbmRpY3QvdGVtcGxhdGUKaW5kZXggZjRhMDU3NTlmNjkzZDMuLjk3ZjQ0MzQ3YjAzYTZhIDEw MDY0NAotLS0gYS9zcmNwa2dzL2dvbGRlbmRpY3QvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nb2xk ZW5kaWN0L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ29s ZGVuZGljdCcKIHBrZ25hbWU9Z29sZGVuZGljdAogdmVyc2lvbj0xLjUuMAotcmV2aXNpb249MQor cmV2aXNpb249MgogYnVpbGRfc3R5bGU9cW1ha2UKIGNvbmZpZ3VyZV9hcmdzPSJDT05GSUcrPXpp bV9zdXBwb3J0IGdvbGRlbmRpY3QucHJvIgogaG9zdG1ha2VkZXBlbmRzPSJxdDUtcW1ha2UgcGtn LWNvbmZpZyBxdDUtaG9zdC10b29scyIKQEAgLTEwLDcgKzEwLDcgQEAgbWFrZWRlcGVuZHM9InRp ZmYtZGV2ZWwgcXQ1LWRldmVsIGxpYnZvcmJpcy1kZXZlbCB6bGliLWRldmVsCiAgcXQ1LXdlYmtp dC1kZXZlbCBsem8tZGV2ZWwgYnppcDItZGV2ZWwgbGliYW8tZGV2ZWwgcXQ1LXN2Zy1kZXZlbAog IGxpYmViLWRldmVsIHF0NS14MTFleHRyYXMtZGV2ZWwgZmZtcGVnLWRldmVsIGxpYmx6bWEtZGV2 ZWwKICBxdDUtbXVsdGltZWRpYS1kZXZlbCIKLXNob3J0X2Rlc2M9IkEgZmVhdHVyZS1yaWNoIGRp Y3Rpb25hcnkgbG9va3VwIHByb2dyYW0iCitzaG9ydF9kZXNjPSJGZWF0dXJlLXJpY2ggZGljdGlv bmFyeSBsb29rdXAgcHJvZ3JhbSIKIG1haW50YWluZXI9IkpvaG4gPG1lQGpvaG5ueW5hdG9yLmRl dj4iCiBsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHA6Ly9nb2xkZW5k aWN0Lm9yZy8iCgpGcm9tIDMyYTRjYTg3NTU4NzVlYzA3NDk4M2NhMjMyZWQzYzYyMTE0MmQwZmEg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+ CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDcgLTA0MDAKU3ViamVjdDogW1BBVENIIDAz My8xMDldIGdzdC1saWJhdjogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2dzdC1s aWJhdi90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBk ZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ3N0LWxpYmF2L3RlbXBsYXRlIGIvc3Jj cGtncy9nc3QtbGliYXYvdGVtcGxhdGUKaW5kZXggYmIwODQyOTFhNmIwYmEuLmU5OGQ4N2Q3YzA2 ODM4IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dzdC1saWJhdi90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L2dzdC1saWJhdi90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J2dzdC1saWJhdicKIHBrZ25hbWU9Z3N0LWxpYmF2CiB2ZXJzaW9uPTEuMjQuMgotcmV2aXNpb249 MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNv bmZpZyB5YXNtIgogbWFrZWRlcGVuZHM9Im9yYy1kZXZlbCBnc3QtcGx1Z2lucy1iYXNlMS1kZXZl bCBmZm1wZWctZGV2ZWwiCgpGcm9tIDU0MzBhZTE0OTM2ODgwYjdkMTkxNjBjYTUyYzU3MTZlZmEw NTRkNWUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFp bC5jb20+CkRhdGU6IFNhdCwgMyBGZWIgMjAyNCAwMTo1Mjo0NiAtMDUwMApTdWJqZWN0OiBbUEFU Q0ggMDM0LzEwOV0gZ3N0LXBsdWdpbnMtYmFkMTogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBz cmNwa2dzL2dzdC1wbHVnaW5zLWJhZDEvdGVtcGxhdGUgfCA5ICsrKysrLS0tLQogMSBmaWxlIGNo YW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNw a2dzL2dzdC1wbHVnaW5zLWJhZDEvdGVtcGxhdGUgYi9zcmNwa2dzL2dzdC1wbHVnaW5zLWJhZDEv dGVtcGxhdGUKaW5kZXggOWNmODQ1NGQyMzJjZjYuLjhiODAzNzNkMmZmZWNhIDEwMDY0NAotLS0g YS9zcmNwa2dzL2dzdC1wbHVnaW5zLWJhZDEvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nc3QtcGx1 Z2lucy1iYWQxL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn Z3N0LXBsdWdpbnMtYmFkMScKIHBrZ25hbWU9Z3N0LXBsdWdpbnMtYmFkMQogdmVyc2lvbj0xLjI0 LjIKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5 bGU9bWVzb24KIGNvbmZpZ3VyZV9hcmdzPSItRHBhY2thZ2Utb3JpZ2luPWh0dHBzOi8vdm9pZGxp bnV4Lm9yZyAtRGRvYz1kaXNhYmxlZApAQCAtMjYsOCArMjYsOCBAQCBtYWtlZGVwZW5kcz0iYWxz YS1saWItZGV2ZWwgY2VsdC1kZXZlbCBvcGVuc3NsLWRldmVsIGV4ZW1waS1kZXZlbAogIGxpYmd1 ZGV2LWRldmVsIGxpYnVzYi1kZXZlbCBsaWJhb20tZGV2ZWwgbGliYnMyYi1kZXZlbCBjaHJvbWFw cmludC1kZXZlbAogIGZkay1hYWMtZGV2ZWwgZmxpdGUtZGV2ZWwgZmx1aWRzeW50aC1kZXZlbCBs aWJscmRmLWRldmVsIGxhZHNwYS1zZGsKICBsaWx2LWRldmVsIGx2MiBsaWJvcGVuanBlZzItZGV2 ZWwgc2JjLWRldmVsIHNwYW5kc3AtZGV2ZWwgdnVsa2FuLWxvYWRlci1kZXZlbAotIHdlYnJ0Yy1h dWRpby1wcm9jZXNzaW5nLWRldmVsIGxpYnpiYXItZGV2ZWwgZmZtcGVnLWRldmVsIHNydC1kZXZl bCBsaWJ2YS1kZXZlbAotICQodm9wdF9pZiBnbWUgbGliZ21lLWRldmVsKSIKKyB3ZWJydGMtYXVk aW8tcHJvY2Vzc2luZy1kZXZlbCBsaWJ6YmFyLWRldmVsIGZmbXBlZy1kZXZlbAorIHNydC1kZXZl bCBsaWJ2YS1kZXZlbCAkKHZvcHRfaWYgb25ldnBsIG9uZVZQTC1kZXZlbCkgJCh2b3B0X2lmIGdt ZSBsaWJnbWUtZGV2ZWwpIgogZGVwZW5kcz0iZ3N0LXBsdWdpbnMtYmFzZTE+PSR7dmVyc2lvbn0i CiBzaG9ydF9kZXNjPSJHU3RyZWFtZXIgcGx1Z2lucyBmcm9tIHRoZSBiYWQgc2V0ICh2MS54KSIK IG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCkBAIC0zNyw3ICsz Nyw3IEBAIGNoYW5nZWxvZz0iaHR0cHM6Ly9nc3RyZWFtZXIuZnJlZWRlc2t0b3Aub3JnL3JlbGVh c2VzLyR7dmVyc2lvbiUuKn0vIyR7dmVyc2lvbn0iCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ3N0cmVh bWVyLmZyZWVkZXNrdG9wLm9yZy9zcmMvZ3N0LXBsdWdpbnMtYmFkL2dzdC1wbHVnaW5zLWJhZC0k e3ZlcnNpb259LnRhci54eiIKIGNoZWNrc3VtPTQ0OGUzMjc4N2JjODJiNTg2YzZjYjJmODFjOWE4 ZWY0MDRmZWE0Zjc3ZjI1NTY2ZmUwNmU1OTdhM2Y1OTEzNmIKIAotYnVpbGRfb3B0aW9ucz0iZ2ly IGdtZSB3YXlsYW5kIgorYnVpbGRfb3B0aW9ucz0iZ2lyIGdtZSBvbmV2cGwgd2F5bGFuZCIKIGJ1 aWxkX29wdGlvbnNfZGVmYXVsdD0iZ2lyIHdheWxhbmQiCiBkZXNjX29wdGlvbl9nbWU9IkJ1aWxk IHdpdGggR2FtZSBNdXNpYyBFbXVsYXRvciBzdXBwb3J0IgogCkBAIC00NSw2ICs0NSw3IEBAIENG TEFHUz0iLWZjb21tb24iCiAKIGNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgogCW1pcHMq KSA7OyAjIGxpYmdtZSBjYW5ub3QgYmUgYnVpbHQgZm9yIG1pcHMqCisJeDg2XzY0KikgYnVpbGRf b3B0aW9uc19kZWZhdWx0Kz0iIGdtZSBvbmV2cGwiIDs7ICMgb25ldnBsIG9ubHkgc3VwcG9ydHMg NjRiaXQKIAkqKSBidWlsZF9vcHRpb25zX2RlZmF1bHQrPSIgZ21lIiA7OwogZXNhYwogCgpGcm9t IDlkM2Y3MmFhOTViOGIyOTUzMTUwMTc2M2Y4ZTQwNWQ3ZTI2NDA0Y2IgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIg TWFyIDIwMjMgMjA6MDE6NDcgLTA0MDAKU3ViamVjdDogW1BBVENIIDAzNS8xMDldIGdzdC1ydHNw LXNlcnZlcjogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2dzdC1ydHNwLXNlcnZl ci90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxl dGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ3N0LXJ0c3Atc2VydmVyL3RlbXBsYXRlIGIv c3JjcGtncy9nc3QtcnRzcC1zZXJ2ZXIvdGVtcGxhdGUKaW5kZXggYWIwYmFmMWU3ZDM1YWUuLmRk ZTgyNWZjZjdmZTEyIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dzdC1ydHNwLXNlcnZlci90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL2dzdC1ydHNwLXNlcnZlci90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dzdC1ydHNwLXNlcnZlcicKIHBrZ25hbWU9Z3N0LXJ0c3At c2VydmVyCiB2ZXJzaW9uPTEuMjQuMgotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5 bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj1naXIKIGNvbmZpZ3VyZV9hcmdzPSItRGludHJvc3BlY3Rp b249ZW5hYmxlZCIKCkZyb20gZWFkMDBlOTBkODVmMmIwMmRhYzBhY2ZiMjU0NTAxNzQ2NGUyNzA5 MyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNv bT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0NyAtMDQwMApTdWJqZWN0OiBbUEFUQ0gg MDM2LzEwOV0gZ3V2Y3ZpZXc6IHVwZGF0ZSB0byAyLjAuOC4KCi0tLQogc3JjcGtncy9ndXZjdmll dy9wYXRjaGVzL2ZpeC1pbmNsdWRlLnBhdGNoIHwgMTAgKysrKysrKysrKwogc3JjcGtncy9ndXZj dmlldy90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgIHwgIDcgKysrLS0tLQogMiBmaWxlcyBjaGFu Z2VkLCAxMyBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0 IHNyY3BrZ3MvZ3V2Y3ZpZXcvcGF0Y2hlcy9maXgtaW5jbHVkZS5wYXRjaAoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvZ3V2Y3ZpZXcvcGF0Y2hlcy9maXgtaW5jbHVkZS5wYXRjaCBiL3NyY3BrZ3MvZ3V2 Y3ZpZXcvcGF0Y2hlcy9maXgtaW5jbHVkZS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAwMDAwMDAwMDAwMDAwMC4uNTAzYzJhZjNiNzhjMWEKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNw a2dzL2d1dmN2aWV3L3BhdGNoZXMvZml4LWluY2x1ZGUucGF0Y2gKQEAgLTAsMCArMSwxMCBAQAor LS0tIGEvZ3V2Y3ZpZXcvZ3V2Y3ZpZXcuYworKysrIGIvZ3V2Y3ZpZXcvZ3V2Y3ZpZXcuYworQEAg LTI4LDYgKzI4LDcgQEAKKyAjaW5jbHVkZSA8c3lzL3N0YXQuaD4KKyAjaW5jbHVkZSA8c3lzL3Jl c291cmNlLmg+CisgI2luY2x1ZGUgPGVycm5vLmg+CisrI2luY2x1ZGUgPGxvY2FsZS5oPgorIAor ICNpbmNsdWRlICJndmlldy5oIgorICNpbmNsdWRlICJndmlld3Y0bDJjb3JlLmgiCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2d1dmN2aWV3L3RlbXBsYXRlIGIvc3JjcGtncy9ndXZjdmlldy90ZW1wbGF0 ZQppbmRleCBkNDJmZDM4ZmE0YWQxMi4uODZhN2ZkNjE5NjEyYzggMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvZ3V2Y3ZpZXcvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9ndXZjdmlldy90ZW1wbGF0ZQpAQCAt MSw4ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2d1dmN2aWV3JwogcGtnbmFtZT1ndXZj dmlldwotdmVyc2lvbj0yLjAuNwotcmV2aXNpb249MgotY3JlYXRlX3dya3NyYz15ZXMKK3ZlcnNp b249Mi4wLjgKK3JldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3Vy ZV9hcmdzPSItLWRpc2FibGUtc3RhdGljIC0tZGlzYWJsZS1kZWJpYW4tbWVudSIKIGhvc3RtYWtl ZGVwZW5kcz0icGtnLWNvbmZpZyBpbnRsdG9vbCBhdXRvY29uZiBhdXRvbWFrZSBsaWJ0b29sIGds aWItZGV2ZWwiCkBAIC0xNCw3ICsxMyw3IEBAIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5A dm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0 dHA6Ly9ndXZjdmlldy5zb3VyY2Vmb3JnZS5uZXQvIgogZGlzdGZpbGVzPSIke1NPVVJDRUZPUkdF X1NJVEV9LyR7cGtnbmFtZX0vJHtwa2duYW1lfS1zcmMtJHt2ZXJzaW9ufS50YXIuYnoyIgotY2hl Y2tzdW09ZjQ3ZDUxZmJkMDZlNDRlZWFhMWE4MmY0YTE1M2M5Mjc1MjdjOTBkOTQ1MTQxOTdhNzBi Mjk1NjAyOGNjOGFkNAorY2hlY2tzdW09YTIxZjRlNDQ4Mjg2NjY2Y2YyN2JhZmVmNTI5MGNjOTUz YTBhMTc5NmI3NTJlNWJiZTUyMTI2NmRjMTIzMGM4MQogCiBwb3N0X3BhdGNoKCkgewogCXNlZCAn MzFhI2luY2x1ZGUgPGxvY2FsZS5oPicgLWkgIGd1dmN2aWV3L2d1dmN2aWV3LmMKCkZyb20gY2Vh YmM3NWNkNTBmY2VkNjAwNjQzNzU2NjJlY2YwNzdjNzBjNDQxMyBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIg MjAyMyAyMDowMTo0OCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDM3LzEwOV0gaGFuZGJyYWtlOiB1 cGRhdGUgdG8gMS42LjEKCi0tLQogLi4uL3BhdGNoZXMvZml4LW1pc3NpbmcteDI2NS1saW5rLWZs YWcucGF0Y2ggICAgfCAxMSArKysrKystLS0tLQogLi4uL2hhbmRicmFrZS9wYXRjaGVzL2xpYmhi LXZwbC1pbmNsdWRlLnBhdGNoICAgfCAxNSArKysrKysrKysrKysrKysKIHNyY3BrZ3MvaGFuZGJy YWtlL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgIHwgMTcgKysrKysrKysrKy0tLS0tLS0K IDMgZmlsZXMgY2hhbmdlZCwgMzEgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCiBjcmVh dGUgbW9kZSAxMDA2NDQgc3JjcGtncy9oYW5kYnJha2UvcGF0Y2hlcy9saWJoYi12cGwtaW5jbHVk ZS5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvaGFuZGJyYWtlL3BhdGNoZXMvZml4LW1pc3Np bmcteDI2NS1saW5rLWZsYWcucGF0Y2ggYi9zcmNwa2dzL2hhbmRicmFrZS9wYXRjaGVzL2ZpeC1t aXNzaW5nLXgyNjUtbGluay1mbGFnLnBhdGNoCmluZGV4IDI2ZGIwMzg2N2EwYzgzLi5kNmJiMmVk YTYyN2EzNiAxMDA2NDQKLS0tIGEvc3JjcGtncy9oYW5kYnJha2UvcGF0Y2hlcy9maXgtbWlzc2lu Zy14MjY1LWxpbmstZmxhZy5wYXRjaAorKysgYi9zcmNwa2dzL2hhbmRicmFrZS9wYXRjaGVzL2Zp eC1taXNzaW5nLXgyNjUtbGluay1mbGFnLnBhdGNoCkBAIC0xLDE0ICsxLDE1IEBACiAtLS0gYS9n dGsvY29uZmlndXJlLmFjCiArKysgYi9ndGsvY29uZmlndXJlLmFjCiBAQCAtMjAzLDcgKzIwMyw3 IEBACi0gCisKICBBTV9DT05ESVRJT05BTChbTUlOR1ddLCBbdGVzdCAieCRtaW5nd19mbGFnIiA9 ICJ4eWVzIl0pCi0gCi0tSEJfTElCUz0iJEhCX0xJQlMgLWxoYW5kYnJha2UgLWxhdmZvcm1hdCAt bGF2ZmlsdGVyIC1sYXZjb2RlYyAtbGF2dXRpbCAtbGRhdjFkIC1sc3dyZXNhbXBsZSAtbHBvc3Rw cm9jIC1sZHZkbmF2IC1sZHZkcmVhZCAtbG1wM2xhbWUgLWx2b3JiaXMgLWx2b3JiaXNlbmMgLWxv Z2cgLWxzd3NjYWxlIC1sdGhlb3JhZW5jIC1sdGhlb3JhZGVjIC1sdnB4IC1seiAtbGJ6MiAtbGJs dXJheSAtbGFzcyAtbGZvbnRjb25maWcgLWxmcmVldHlwZSAtbHhtbDIgLWxqYW5zc29uIC1sb3B1 cyAtbHNwZWV4IC1sdHVyYm9qcGVnIC1sbHptYSAtbHppbWciCi0rSEJfTElCUz0iJEhCX0xJQlMg LWxoYW5kYnJha2UgLWxhdmZvcm1hdCAtbGF2ZmlsdGVyIC1sYXZjb2RlYyAtbGF2dXRpbCAtbGRh djFkIC1sc3dyZXNhbXBsZSAtbHBvc3Rwcm9jIC1sZHZkbmF2IC1sZHZkcmVhZCAtbG1wM2xhbWUg LWx2b3JiaXMgLWx2b3JiaXNlbmMgLWxvZ2cgLWxzd3NjYWxlIC1sdGhlb3JhZW5jIC1sdGhlb3Jh ZGVjIC1sdnB4IC1seiAtbGJ6MiAtbGJsdXJheSAtbGFzcyAtbGZvbnRjb25maWcgLWxmcmVldHlw ZSAtbHhtbDIgLWxqYW5zc29uIC1sb3B1cyAtbHNwZWV4IC1sdHVyYm9qcGVnIC1sbHptYSAtbHpp bWcgLWxkbCIKKworLUhCX0xJQlM9IiRIQl9MSUJTIC1saGFuZGJyYWtlIC1sYXZmb3JtYXQgLWxh dmZpbHRlciAtbGF2Y29kZWMgLWxhdnV0aWwgLWxkYXYxZCAtbHN3cmVzYW1wbGUgLWxwb3N0cHJv YyAtbGR2ZG5hdiAtbGR2ZHJlYWQgLWxtcDNsYW1lIC1sdm9yYmlzIC1sdm9yYmlzZW5jIC1sb2dn IC1sc3dzY2FsZSAtbHRoZW9yYWVuYyAtbHRoZW9yYWRlYyAtbHZweCAtbHogLWxiejIgLWxibHVy YXkgLWxhc3MgLWxmb250Y29uZmlnIC1sZnJlZXR5cGUgLWx4bWwyIC1samFuc3NvbiAtbG9wdXMg LWxzcGVleCAtbHR1cmJvanBlZyAtbGx6bWEgLWx6aW1nIC1sU3Z0QXYxRW5jIgorK0hCX0xJQlM9 IiRIQl9MSUJTIC1saGFuZGJyYWtlIC1sYXZmb3JtYXQgLWxhdmZpbHRlciAtbGF2Y29kZWMgLWxh dnV0aWwgLWxkYXYxZCAtbHN3cmVzYW1wbGUgLWxwb3N0cHJvYyAtbGR2ZG5hdiAtbGR2ZHJlYWQg LWxtcDNsYW1lIC1sdm9yYmlzIC1sdm9yYmlzZW5jIC1sb2dnIC1sc3dzY2FsZSAtbHRoZW9yYWVu YyAtbHRoZW9yYWRlYyAtbHZweCAtbHogLWxiejIgLWxibHVyYXkgLWxhc3MgLWxmb250Y29uZmln IC1sZnJlZXR5cGUgLWx4bWwyIC1samFuc3NvbiAtbG9wdXMgLWxzcGVleCAtbHR1cmJvanBlZyAt bGx6bWEgLWx6aW1nIC1sU3Z0QXYxRW5jIC1sZGwiCiAgSEJfQ1BQRkxBR1M9IiRIQl9DUFBGTEFH UyAkSEJJTkMiCi0gCisKICBQS0dfQ0hFQ0tfTU9EVUxFUyhbeDI2NF0sIFt4MjY0XSwgc3lzX3gy NjQ9eWVzLCBzeXNfeDI2ND1ubykKKwogLS0tIGEvdGVzdC9tb2R1bGUuZGVmcwogKysrIGIvdGVz dC9tb2R1bGUuZGVmcwogQEAgLTY5LDYgKzY5LDkgQEAKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvaGFu ZGJyYWtlL3BhdGNoZXMvbGliaGItdnBsLWluY2x1ZGUucGF0Y2ggYi9zcmNwa2dzL2hhbmRicmFr ZS9wYXRjaGVzL2xpYmhiLXZwbC1pbmNsdWRlLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwMDAwLi4yOThmOWY0YWIyOGYyYQotLS0gL2Rldi9udWxsCisrKyBiL3Ny Y3BrZ3MvaGFuZGJyYWtlL3BhdGNoZXMvbGliaGItdnBsLWluY2x1ZGUucGF0Y2gKQEAgLTAsMCAr MSwxNSBAQAorLS0tIGEvbGliaGIvbW9kdWxlLmRlZnMJMjAyMy0wMS0yMiAxMTozNjo0OS4wMDAw MDAwMDAgLTA1MDAKKysrKyBiL2xpYmhiL21vZHVsZS5kZWZzCTIwMjMtMDQtMDMgMjI6Mzc6NTIu Mzk1NDY3MDEwIC0wNDAwCitAQCAtNDYsMTEgKzQ2LDcgQEAKKyBMSUJIQi5HQ0MuSSArPSAkKExJ QkhCLmJ1aWxkLykgJChDT05UUklCLmJ1aWxkLylpbmNsdWRlCisgCisgaWZlcSAoMSwkKEZFQVRV UkUucXN2KSkKKy0gICAgaWZlcSAoJChIT1NULnN5c3RlbSksZnJlZWJzZCkpCistICAgICAgICBM SUJIQi5HQ0MuSSArPSAkKExPQ0FMQkFTRSkvaW5jbHVkZS92cGwKKy0gICAgZWxzZQorLSAgICAg ICAgTElCSEIuR0NDLkkgKz0gJChDT05UUklCLmJ1aWxkLylpbmNsdWRlL3ZwbAorLSAgICBlbmRp ZgorKyAgICBMSUJIQi5HQ0MuSSArPSAvdXNyL2luY2x1ZGUvdnBsCisgZW5kaWYKKyAKKyBpZm5l cSAoLCQoZmlsdGVyICQoSE9TVC5zeXN0ZW0pLGZyZWVic2QgbmV0YnNkIG9wZW5ic2QpKQpkaWZm IC0tZ2l0IGEvc3JjcGtncy9oYW5kYnJha2UvdGVtcGxhdGUgYi9zcmNwa2dzL2hhbmRicmFrZS90 ZW1wbGF0ZQppbmRleCBjYTVlNDU3MWU0OWMzNy4uNmFjMjAwZjA5Y2Y1ZDAgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvaGFuZGJyYWtlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvaGFuZGJyYWtlL3RlbXBs YXRlCkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdoYW5kYnJha2UnCiBw a2duYW1lPWhhbmRicmFrZQotdmVyc2lvbj0xLjUuMQordmVyc2lvbj0xLjYuMQogcmV2aXNpb249 MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZm9yY2UgLS1k aXNhYmxlLWd0ay11cGRhdGUtY2hlY2tzIC0tZGlzYWJsZS1kZi1mZXRjaCAtLWhhcmRlbgotICQo dm9wdF9lbmFibGUgZmRrX2FhYyBmZGstYWFjKSAkKHZvcHRfZW5hYmxlIG52ZW5jKSIKKyAkKHZv cHRfZW5hYmxlIGZka19hYWMgZmRrLWFhYykgJCh2b3B0X2VuYWJsZSBudmVuYykgJCh2b3B0X2Vu YWJsZSBxc3YpIgogbWFrZV9idWlsZF9hcmdzPSItQyAke1hCUFNfVFJJUExFVH0iCiBtYWtlX2lu c3RhbGxfYXJncz0iLUMgJHtYQlBTX1RSSVBMRVR9IgogaG9zdG1ha2VkZXBlbmRzPSJhdXRvbWFr ZSBjbWFrZSBnZXR0ZXh0LWRldmVsIGdsaWItZGV2ZWwgaW50bHRvb2wgbGlidG9vbCBtNCBtZXNv biBuYXNtIHBrZy1jb25maWcgcHl0aG9uMyIKQEAgLTEyLDggKzEyLDExIEBAIG1ha2VkZXBlbmRz PSJiemlwMi1kZXZlbCBmZm1wZWctZGV2ZWwgZ3N0LXBsdWdpbnMtYmFzZTEtZGV2ZWwgZ3RrKzMt ZGV2ZWwKICBqYW5zc29uLWRldmVsIGxhbWUtZGV2ZWwgbGliYXNzLWRldmVsIGxpYmJsdXJheS1k ZXZlbCBsaWJkYXYxZC1kZXZlbAogIGxpYmR2ZG5hdi1kZXZlbCBsaWJkdmRyZWFkLWRldmVsIGxp Ymd1ZGV2LWRldmVsIGxpYm51bWEtZGV2ZWwKICBsaWJzYW1wbGVyYXRlLWRldmVsIGxpYnRoZW9y YS1kZXZlbCBsaWJ2b3JiaXMtZGV2ZWwgbGlidnB4LWRldmVsIGxpYnhtbDItZGV2ZWwKLSBvcHVz LWRldmVsIHNwZWV4LWRldmVsIHgyNjQtZGV2ZWwgeDI2NS1kZXZlbCB6aW1nLWRldmVsCisgb3B1 cy1kZXZlbCBzcGVleC1kZXZlbCB4MjY0LWRldmVsIHgyNjUtZGV2ZWwgemltZy1kZXZlbCBsaWJz dnQtYXYxLWRldmVsCiAgJCh2b3B0X2lmIGZka19hYWMgZmRrLWFhYy1kZXZlbCkKKyAkKHZvcHRf aWYgcXN2IGxpYnZhLWRldmVsKQorICQodm9wdF9pZiBxc3YgbGliZHJtLWRldmVsKQorICQodm9w dF9pZiBxc3Ygb25lVlBMLWRldmVsKQogICQodm9wdF9pZiBudmVuYyBudi1jb2RlYy1oZWFkZXJz KSIKIGRlcGVuZHM9ImRlc2t0b3AtZmlsZS11dGlscyBnc3QtcGx1Z2lucy1nb29kMSBoaWNvbG9y LWljb24tdGhlbWUiCiBzaG9ydF9kZXNjPSJNdWx0aXRocmVhZGVkIHZpZGVvIHRyYW5zY29kZXIi CkBAIC0yMSwxNSArMjQsMTUgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lk bGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb25seSIKIGhvbWVwYWdlPSJodHRwczovL2hh bmRicmFrZS5mci8iCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9IYW5kQnJha2UvSGFu ZEJyYWtlL3JlbGVhc2VzL2Rvd25sb2FkLyR7dmVyc2lvbn0vSGFuZEJyYWtlLSR7dmVyc2lvbn0t c291cmNlLnRhci5iejIiCi1jaGVja3N1bT0zOTk5ZmUwNmQ1MzA5YzgxOTc5OWE3M2E5NjhhOGVj Mzg0MGU3ODQwYzJiNjRhZjhmNWNkYjdmZDhjOTQzMGYwCitjaGVja3N1bT05NGNjZmUwM2RiOTE3 YTkxNjUwMDAwYzUxMGY3ZmQ1M2Y4NDRkYTE5ZjE5YWQ0YjRiZTFiOGY2YmMzMWE4ZDRjCiBub2Ny b3NzPXllcwogCi1idWlsZF9vcHRpb25zPSJmZGtfYWFjIG52ZW5jIgorYnVpbGRfb3B0aW9ucz0i ZmRrX2FhYyBudmVuYyBxc3YiCiAKIGNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgogCXg4 Nl82NCp8aTY4NiopCiAJCUNGTEFHUz0iLW1zc2UiCi0JCWJ1aWxkX29wdGlvbnNfZGVmYXVsdD0i bnZlbmMiCisJCWJ1aWxkX29wdGlvbnNfZGVmYXVsdD0ibnZlbmMgcXN2IgogCQk7OwogZXNhYwog CkBAIC0zNyw3ICs0MCw3IEBAIHByZV9jb25maWd1cmUoKSB7CiAJIyB1c2Ugc3lzdGVtIGxpYnJh cmllcywgZG9uJ3QgZG93bmxvYWQgdGhlbQogCXJtIC1yZiBjb250cmliLwogCWZvciBtb2R1bGUg aW4gZmRrLWFhYyBmZm1wZWcgbGliYmx1cmF5IGxpYmRhdjFkIGxpYmR2ZG5hdiBsaWJkdmRyZWFk IG52ZW5jIFwKLQkJeDI2NSB6aW1nOyBkbworCQl4MjY1IHppbWcgc3Z0LWF2MSBsaWJ2cGw7IGRv CiAJICAgIHZzZWQgLWkgIi9NT0RVTEVTICs9IGNvbnRyaWJcLyR7bW9kdWxlfS9kIiBtYWtlL2lu Y2x1ZGUvbWFpbi5kZWZzCiAJZG9uZQogfQoKRnJvbSBjMzI4ODZmNDcxNTIxNjliNTdkZmRjZTg0 MTk4MGNiNjU2ZmJhMjVkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxp Y2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ4IC0wNDAwClN1 YmplY3Q6IFtQQVRDSCAwMzgvMTA5XSBoZWRnZXdhcnM6IHJldmJ1bXAgZm9yIGZmbXBlZzQKCi0t LQogc3JjcGtncy9oZWRnZXdhcnMvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAy IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9oZWRn ZXdhcnMvdGVtcGxhdGUgYi9zcmNwa2dzL2hlZGdld2Fycy90ZW1wbGF0ZQppbmRleCA5NGI2ZGI2 NzNiMGMzYS4uNDAyY2NmYWFlY2JjMmQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvaGVkZ2V3YXJzL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvaGVkZ2V3YXJzL3RlbXBsYXRlCkBAIC0xLDEzICsxLDEzIEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdoZWRnZXdhcnMnCiBwa2duYW1lPWhlZGdld2FycwogdmVy c2lvbj0xLjAuMgotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGNv bmZpZ3VyZV9hcmdzPSItRE5PU0VSVkVSPTEgLUREQVRBX0lOU1RBTExfRElSPS91c3Ivc2hhcmUv JHtwa2duYW1lfQogIC1EUEhZU0ZTX1NZU1RFTT0xIC1ETUlOSU1BTF9GTEFHUz0xIgogbWFrZV9j bWQ9bWFrZQogaG9zdG1ha2VkZXBlbmRzPSJsdWE1MSBwa2ctY29uZmlnIHF0NS1xbWFrZSBxdDUt aG9zdC10b29scyIKLW1ha2VkZXBlbmRzPSJmZm1wZWctZGV2ZWwgbHVhNTEtZGV2ZWwgcGh5c2Zz LWRldmVsIHF0NS10b29scy1kZXZlbCBTREwyX2ltYWdlLWRldmVsCittYWtlZGVwZW5kcz0iZmZt cGVnNC1kZXZlbCBsdWE1MS1kZXZlbCBwaHlzZnMtZGV2ZWwgcXQ1LXRvb2xzLWRldmVsIFNETDJf aW1hZ2UtZGV2ZWwKICBTREwyX21peGVyLWRldmVsIFNETDJfbmV0LWRldmVsIFNETDJfdHRmLWRl dmVsIgogZGVwZW5kcz0ibGliZnJlZWdsdXQiCiBzaG9ydF9kZXNjPSJGdW5ueSB0dXJuLWJhc2Vk IGFydGlsbGVyeSBnYW1lLCBmZWF0dXJpbmcgZmlnaHRpbmcgSGVkZ2Vob2dzISIKCkZyb20gNTQy MDBiODY4NTlkMGMxZDRhZmU2YmE3NmI0ZjYzMDJkZWVmMWUwYSBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIg MjAyMyAyMDowMTo0OCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDM5LzEwOV0gaWRqYzogcmV2YnVt cCBmb3IgZmZtcGVnNAoKLS0tCiBzcmNwa2dzL2lkamMvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmls ZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9pZGpjL3RlbXBsYXRlIGIvc3JjcGtncy9pZGpjL3RlbXBsYXRlCmluZGV4IGE5Y2Rl MDY2NWQ1NWIxLi5mNDFlMWU0ZmFiYmFlNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9pZGpjL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvaWRqYy90ZW1wbGF0ZQpAQCAtMSwxMSArMSwxMSBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnaWRqYycKIHBrZ25hbWU9aWRqYwogdmVyc2lvbj0wLjkuMQotcmV2aXNp b249NQorcmV2aXNpb249NgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogaG9zdG1ha2VkZXBl bmRzPSJwa2ctY29uZmlnIGdpdCBweXRob24zIGF1dG9tYWtlIGdldHRleHQtZGV2ZWwgbGlidG9v bCIKIG1ha2VkZXBlbmRzPSJsaWJ2b3JiaXMtZGV2ZWwgbGlib2dnLWRldmVsIGphY2stZGV2ZWwg bGlic2FtcGxlcmF0ZS1kZXZlbAotIGxpYmZsYWMtZGV2ZWwgbGlic25kZmlsZS1kZXZlbCBtcGcx MjMtZGV2ZWwgZmZtcGVnLWRldmVsIHNwZWV4LWRldmVsCisgbGliZmxhYy1kZXZlbCBsaWJzbmRm aWxlLWRldmVsIG1wZzEyMy1kZXZlbCBmZm1wZWc0LWRldmVsIHNwZWV4LWRldmVsCiAgZ2xpYi1k ZXZlbCBwaXhtYW4tZGV2ZWwgbGFtZS1kZXZlbCBweXRob24zLWdvYmplY3QtZGV2ZWwgbGlic2hv dXQtaWRqYy1kZXZlbAogIG9wdXMtZGV2ZWwgdHdvbGFtZS1kZXZlbCBweXRob24zLW11dGFnZW4g cHl0aG9uMy1kZXZlbCIKIGRlcGVuZHM9InB5dGhvbjMtZ29iamVjdCBweXRob24zLW11dGFnZW4g ZGVza3RvcC1maWxlLXV0aWxzIHNoYXJlZC1taW1lLWluZm8gcHl0aG9uMy1kYnVzIGphY2siCgpG cm9tIDFjOTYyMDgzYjlhZDMwNGUzN2RkMmZiNGIxYzY0NWVlMzZiMzJkZjMgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwg MjIgTWFyIDIwMjMgMjA6MDE6NDggLTA0MDAKU3ViamVjdDogW1BBVENIIDA0MC8xMDldIGtpZDM6 IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9raWQzL3BhdGNoZXMvZmZtcGVnNS5w YXRjaCB8IDE3ICsrKysrKysrKysrKysrKysrCiAxIGZpbGUgY2hhbmdlZCwgMTcgaW5zZXJ0aW9u cygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mva2lkMy9wYXRjaGVzL2ZmbXBlZzUucGF0 Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2tpZDMvcGF0Y2hlcy9mZm1wZWc1LnBhdGNoIGIvc3Jj cGtncy9raWQzL3BhdGNoZXMvZmZtcGVnNS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAwMDAwMDAwMDAwMDAwMC4uMTM1ZmM1MGUwN2M5YmEKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNw a2dzL2tpZDMvcGF0Y2hlcy9mZm1wZWc1LnBhdGNoCkBAIC0wLDAgKzEsMTcgQEAKKyMgaHR0cHM6 Ly9hdXIuYXJjaGxpbnV4Lm9yZy9jZ2l0L2F1ci5naXQvZGlmZi9mZm1wZWc1LnBhdGNoP2g9a2lk My1jbGkmaWQ9MTI0MTBhNzQ5MDY2MTJlN2VmYzBlYzhmYmNlNzM5YjRhMGZlZjdlNworZGlmZiAt LWdpdCBhL3NyYy9wbHVnaW5zL2Fjb3VzdGlkaW1wb3J0L2ZmbXBlZ2ZpbmdlcnByaW50ZGVjb2Rl ci5jcHAgYi9zcmMvcGx1Z2lucy9hY291c3RpZGltcG9ydC9mZm1wZWdmaW5nZXJwcmludGRlY29k ZXIuY3BwCitpbmRleCBlMTU2ZDQyNC4uZTEyYjlhYmQgMTAwNjQ0CistLS0gYS9zcmMvcGx1Z2lu cy9hY291c3RpZGltcG9ydC9mZm1wZWdmaW5nZXJwcmludGRlY29kZXIuY3BwCisrKysgYi9zcmMv cGx1Z2lucy9hY291c3RpZGltcG9ydC9mZm1wZWdmaW5nZXJwcmludGRlY29kZXIuY3BwCitAQCAt MjMyLDcgKzIzMiwxMSBAQCBwcml2YXRlOgorICAgZnJpZW5kIGNsYXNzIEZvcm1hdDsKKyAgIGZy aWVuZCBjbGFzcyBDb252ZXJ0ZXI7CisgICBBVkNvZGVjQ29udGV4dCogbV9wdHI7CisrI2lmIExJ QkFWQ09ERUNfVkVSU0lPTl9JTlQgPCBBVl9WRVJTSU9OX0lOVCg1OSwgMCwgMCkKKyAgIEFWQ29k ZWMqIG1faW1wbDsKKysjZWxzZQorKyAgY29uc3QgQVZDb2RlYyogbV9pbXBsOworKyNlbmRpZgor ICAgQVZGcmFtZSogbV9mcmFtZTsKKyAgIGJvb2wgbV9vcGVuZWQ7CisgfTsKCkZyb20gMDg5ZjNi YmZjYjk4OTA1ZGIzYTg5NzljYzIxMjVkMDMzNzE4MzhlMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAy MyAyMDowMTo0OCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDQxLzEwOV0ga29kaTogcmV2YnVtcCBm b3IgZmZtcGVnNAoKLS0tCiBzcmNwa2dzL2tvZGkvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBj aGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9rb2RpL3RlbXBsYXRlIGIvc3JjcGtncy9rb2RpL3RlbXBsYXRlCmluZGV4IGQzN2E1OTE4 Y2Q2NzU4Li5lYTc4ZTBhY2EwZmUzZSAxMDA2NDQKLS0tIGEvc3JjcGtncy9rb2RpL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3Mva29kaS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ2tvZGknCiBwa2duYW1lPWtvZGkKIHZlcnNpb249MTkuNAotcmV2aXNpb249OQor cmV2aXNpb249MTAKIF9jb2RlbmFtZT0iTWF0cml4IgogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZp Z3VyZV9hcmdzPSItRFdJVEhfRkZNUEVHPS91c3IgLURFTkFCTEVfTERHT0xEPU9GRgpAQCAtNTQs NyArNTQsNyBAQCBtYWtlZGVwZW5kcz0iCiAgbGlibWFkLWRldmVsIGZvbnRjb25maWctZGV2ZWwg bGliWGluZXJhbWEtZGV2ZWwgbGlic2FtcGxlcmF0ZS1kZXZlbCBsaWJtbXMtZGV2ZWwKICBlbmNh LWRldmVsIGJvb3N0LWRldmVsIGxpYmN1cmwtZGV2ZWwgbGlidmEtZGV2ZWwgbGlidmRwYXUtZGV2 ZWwgbGliYXNzLWRldmVsCiAgbGliYmx1ZXRvb3RoLWRldmVsIHlhamwtZGV2ZWwgbGlicGxpc3Qt ZGV2ZWwgbGlicnRtcC1kZXZlbCB0aW55eG1sLWRldmVsCi0gdGFnbGliLWRldmVsIGxpYmNhcC1k ZXZlbCBsYW1lLWRldmVsIGxpYmJsdXJheS1kZXZlbCBsaWJuZnMtZGV2ZWwgZmZtcGVnLWRldmVs CisgdGFnbGliLWRldmVsIGxpYmNhcC1kZXZlbCBsYW1lLWRldmVsIGxpYmJsdXJheS1kZXZlbCBs aWJuZnMtZGV2ZWwgZmZtcGVnNC1kZXZlbAogIGdpZmxpYi1kZXZlbCBsaWJ4c2x0LWRldmVsIGdu dXRscy1kZXZlbCBsaWJzc2gtZGV2ZWwgbGlibWljcm9odHRwZC1kZXZlbAogIGxpYmNlYy1kZXZl bCBkY2FkZWMtZGV2ZWwgZmxhdGJ1ZmZlcnMtZGV2ZWwgZm10LWRldmVsIGxjbXMyLWRldmVsCiAg bGliZnN0cmNtcC1kZXZlbCByYXBpZGpzb24gbGliY2Rpby1wYXJhbm9pYSBzcGRsb2cgbGlid2F5 bGFuZHBwLWRldmVsCgpGcm9tIDg3ZTA3YjczZjhiY2RhZDI0OTZlOTg2MWYzZjRjNWM1NGI1ZmEz NjEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5j b20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDggLTA0MDAKU3ViamVjdDogW1BBVENI IDA0Mi8xMDldIGtwaXBld2lyZTogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2tw aXBld2lyZS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwg MSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mva3BpcGV3aXJlL3RlbXBsYXRlIGIv c3JjcGtncy9rcGlwZXdpcmUvdGVtcGxhdGUKaW5kZXggYTFkNWM4N2IwZTgwNmEuLjk5MWMyYjAx NTQ1MDAxIDEwMDY0NAotLS0gYS9zcmNwa2dzL2twaXBld2lyZS90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL2twaXBld2lyZS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ2twaXBld2lyZScKIHBrZ25hbWU9a3BpcGV3aXJlCiB2ZXJzaW9uPTYuMC40Ci1yZXZpc2lv bj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1jbWFrZQogYnVpbGRfaGVscGVyPXFlbXUKIGNv bmZpZ3VyZV9hcmdzPSItREtERV9JTlNUQUxMX1FNTERJUj1saWIvcXQ2L3FtbCIKCkZyb20gYjg0 ODQ0NDM0Nzc3Zjg4YTQ5NDc0M2VhMTlkMDliNTMxNDVjMDBkZCBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIg MjAyMyAyMDowMTo0OCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDQzLzEwOV0gbGlib3BlbmFsOiBy ZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvbGlib3BlbmFsL3RlbXBsYXRlIHwgMiAr LQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy9saWJvcGVuYWwvdGVtcGxhdGUgYi9zcmNwa2dzL2xpYm9wZW5hbC90ZW1w bGF0ZQppbmRleCA4OGQwZjExMzA3ZDgxYS4uODMwOGZjYTAzOTNlMzMgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvbGlib3BlbmFsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbGlib3BlbmFsL3RlbXBsYXRl CkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbGlib3BlbmFsJwogcGtnbmFt ZT1saWJvcGVuYWwKIHZlcnNpb249MS4yMy4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWls ZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EQUxTT0ZUX0VYQU1QTEVTPU9GRiIKIGhv c3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKCkZyb20gYjgwNzdiNDgwNmMzZmU5ZjNlNTYxMzgz NTZmOWFmMzcxOGI0YjI1NSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHps aWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0OCAtMDQwMApT dWJqZWN0OiBbUEFUQ0ggMDQ0LzEwOV0gbG91ZGdhaW46IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0t LQogc3JjcGtncy9sb3VkZ2Fpbi9wYXRjaGVzL2ZmbXBlZzUucGF0Y2ggfCAxMSArKysrKysrKysr Kwogc3JjcGtncy9sb3VkZ2Fpbi90ZW1wbGF0ZSAgICAgICAgICAgICAgfCAgMiArLQogMiBmaWxl cyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAx MDA2NDQgc3JjcGtncy9sb3VkZ2Fpbi9wYXRjaGVzL2ZmbXBlZzUucGF0Y2gKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2xvdWRnYWluL3BhdGNoZXMvZmZtcGVnNS5wYXRjaCBiL3NyY3BrZ3MvbG91ZGdh aW4vcGF0Y2hlcy9mZm1wZWc1LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw MDAwMDAwMDAwLi4xNmQ0NTEwZWU5OGZhYQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbG91 ZGdhaW4vcGF0Y2hlcy9mZm1wZWc1LnBhdGNoCkBAIC0wLDAgKzEsMTEgQEAKKy0tLSBhL3NyYy9z Y2FuLmMJMjAxOS0wOS0wNiAxMTozMToxOS4wMDAwMDAwMDAgLTA0MDAKKysrKyBiL3NyYy9zY2Fu LmMJMjAyMy0wMy0yMyAxMToxNTo0MC44Njc5Njg1MjEgLTA0MDAKK0BAIC02OSw4ICs2OSw2IEBA CisgCSAqIEl0IGlzIG5vdyB1c2VsZXNzCisgCSAqIGh0dHBzOi8vZ2l0aHViLmNvbS9GRm1wZWcv RkZtcGVnL2Jsb2IvNzBkMjUyNjhjMjFjYmVlNWYwODMwNGRhOTViZTFmNjQ3YzYzMGMxNS9kb2Mv QVBJY2hhbmdlcyNMODYKKyAJICovCistICBpZiAoYXZmb3JtYXRfdmVyc2lvbigpIDwgQVZfVkVS U0lPTl9JTlQoNTgsOSwxMDApKQorLSAgICBhdl9yZWdpc3Rlcl9hbGwoKTsKKyAKKyAJYXZfbG9n X3NldF9jYWxsYmFjayhzY2FuX2F2X2xvZyk7CisgCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xvdWRn YWluL3RlbXBsYXRlIGIvc3JjcGtncy9sb3VkZ2Fpbi90ZW1wbGF0ZQppbmRleCBkYTRmMmQ1NmU5 NGMzZC4uNGQ2YmYyOWVmYjRmZGQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbG91ZGdhaW4vdGVtcGxh dGUKKysrIGIvc3JjcGtncy9sb3VkZ2Fpbi90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ2xvdWRnYWluJwogcGtnbmFtZT1sb3VkZ2FpbgogdmVyc2lvbj0wLjYu OAotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVw ZW5kcz0icGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJsaWJlYnVyMTI4LWRldmVsIHRhZ2xpYi1k ZXZlbCBmZm1wZWctZGV2ZWwiCgpGcm9tIDk3OTljMGExMTEwZTM1MzQ4OWU1NTU3ZDBmNTVlOTMz ZjZlYmNmZGMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBn bWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDggLTA0MDAKU3ViamVjdDog W1BBVENIIDA0NS8xMDldIG1lZGlhc3RyZWFtZXI6IHJldmJ1bXAgZm9yIGZmbXBlZzQKCi0tLQog c3JjcGtncy9tZWRpYXN0cmVhbWVyL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwg MiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbWVk aWFzdHJlYW1lci90ZW1wbGF0ZSBiL3NyY3BrZ3MvbWVkaWFzdHJlYW1lci90ZW1wbGF0ZQppbmRl eCAwZmNmZmE3NjUzZDE4ZS4uZTg4ODYyNmI5NDVlNTUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbWVk aWFzdHJlYW1lci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL21lZGlhc3RyZWFtZXIvdGVtcGxhdGUK QEAgLTEsMTEgKzEsMTEgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ21lZGlhc3RyZWFtZXInCiBw a2duYW1lPW1lZGlhc3RyZWFtZXIKIHZlcnNpb249NS4yLjExMQotcmV2aXNpb249MgorcmV2aXNp b249MwogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREVOQUJMRV9TVFJJQ1Q9 MCAtREVOQUJMRV9VTklUX1RFU1RTPTAiCiBob3N0bWFrZWRlcGVuZHM9InB5dGhvbjMiCi1tYWtl ZGVwZW5kcz0iYnpydHAtZGV2ZWwgZmZtcGVnLWRldmVsIGdsZXctZGV2ZWwgbGliWHYtZGV2ZWwg bGlic3J0cC1kZXZlbAorbWFrZWRlcGVuZHM9ImJ6cnRwLWRldmVsIGZmbXBlZzQtZGV2ZWwgZ2xl dy1kZXZlbCBsaWJYdi1kZXZlbCBsaWJzcnRwLWRldmVsCiAgbGlidXBucC1kZXZlbCBsaWJ2cHgt ZGV2ZWwgbWJlZHRscy1kZXZlbCBvcHVzLWRldmVsIG9ydHAtZGV2ZWwgcHVsc2VhdWRpby1kZXZl bAogIGxpYnRoZW9yYS1kZXZlbCBzcGVleC1kZXZlbCB2NGwtdXRpbHMtZGV2ZWwgYmNnNzI5LWRl dmVsIGJjbWF0cm9za2EyLWRldmVsIGxpYmdzbS1kZXZlbAogIHp4aW5nLWNwcC1kZXZlbCIKCkZy b20gYjNhN2UxYjUzZmQ4ZTE5ZmU1ZGI2MDc2M2YxYzI1OGE1NzgzMTM2NyBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAy MiBNYXIgMjAyMyAyMDowMTo0OCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDQ2LzEwOV0gbWdiYTog cmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL21nYmEvdGVtcGxhdGUgfCAyICstCiAx IGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL21nYmEvdGVtcGxhdGUgYi9zcmNwa2dzL21nYmEvdGVtcGxhdGUKaW5kZXggNmNk NjU2NTAzMTI1NDMuLjkzNDAxYWRiNjE4YmQ4IDEwMDY0NAotLS0gYS9zcmNwa2dzL21nYmEvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9tZ2JhL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnbWdiYScKIHBrZ25hbWU9bWdiYQogdmVyc2lvbj0wLjEwLjMKLXJldmlz aW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBob3N0bWFrZWRlcGVuZHM9InBr Zy1jb25maWcgcXQ1LWhvc3QtdG9vbHMgcXQ1LXFtYWtlIGRlc2t0b3AtZmlsZS11dGlscyIKIG1h a2VkZXBlbmRzPSJTREwyLWRldmVsIGZmbXBlZy1kZXZlbCBsaWJlZGl0LWRldmVsIGxpYmVwb3h5 LWRldmVsIGxpYm1hZ2ljay1kZXZlbAoKRnJvbSAxYjg4MGRkZTYyYTE2YTU0OTc4ZDkzYTZkMjE3 OWY5Y2I0NzMxYWRkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1 NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjQ5IC0wNDAwClN1Ympl Y3Q6IFtQQVRDSCAwNDcvMTA5XSBtbHQ6IHJldmJ1bXAgZm9yIGZmbXBlZzQKCi0tLQogc3JjcGtn cy9tbHQvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyks IDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tbHQvdGVtcGxhdGUgYi9zcmNw a2dzL21sdC90ZW1wbGF0ZQppbmRleCA3M2UzOTE1YWFhYjlhYy4uZDdlZDRjNGIzMGE4NjggMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvbWx0L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbWx0L3RlbXBsYXRl CkBAIC0xLDE0ICsxLDE0IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdtbHQnCiBwa2duYW1lPW1s dAogdmVyc2lvbj02LjI2LjEKLXJldmlzaW9uPTMKK3JldmlzaW9uPTQKIGJ1aWxkX3N0eWxlPWNv bmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tcHJlZml4PS91c3IgLS1saWJkaXI9L3Vzci9saWIk WEJQU19UQVJHRVRfV09SRFNJWkUKICAtLWVuYWJsZS1ncGwgLS1lbmFibGUtZ3BsMyAtLWRpc2Fi bGUtc3dmZGVjIC0td2l0aG91dC1rZGUKICAtLXN3aWctbGFuZ3VhZ2VzPXB5dGhvbiIKIGhvc3Rt YWtlZGVwZW5kcz0iZG94eWdlbiBwa2ctY29uZmlnIGxhZHNwYS1zZGsgc3dpZyBweXRob24zIHdo aWNoIgogIyBYWFg6IG1vdml0IHZpZC5zdGFiCi1tYWtlZGVwZW5kcz0iYWxzYS1saWItZGV2ZWwg ZmZtcGVnLWRldmVsIGd0aystZGV2ZWwgamFjay1kZXZlbCBsYWRzcGEtc2RrCittYWtlZGVwZW5k cz0iYWxzYS1saWItZGV2ZWwgZmZtcGVnNC1kZXZlbCBndGsrLWRldmVsIGphY2stZGV2ZWwgbGFk c3BhLXNkawogIGxpYmV4aWYtZGV2ZWwgbGlic2FtcGxlcmF0ZS1kZXZlbCBsaWJ4bWwyLWRldmVs IHNveC1kZXZlbCBTRExfaW1hZ2UtZGV2ZWwKICBmZnR3LWRldmVsIGZyZWkwci1wbHVnaW5zIHB5 dGhvbjMtZGV2ZWwgcHVsc2VhdWRpby1kZXZlbCBtb3ZpdC1kZXZlbAogIGxpYnZpZHN0YWItZGV2 ZWwiCgpGcm9tIGZlM2VhMDUyNjM1NGFiZDkzZTJjMDRlNmFlYmUyZjU3YmQxZDBhNDcgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6 IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NDkgLTA0MDAKU3ViamVjdDogW1BBVENIIDA0OC8xMDld IG1vYzogcmV2YnVtcCBmb3IgZmZtcGVnNAoKLS0tCiBzcmNwa2dzL21vYy90ZW1wbGF0ZSB8IDQg KystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL21vYy90ZW1wbGF0ZSBiL3NyY3BrZ3MvbW9jL3RlbXBsYXRlCmlu ZGV4IDNhMDQ5MzJjOGYxZTYxLi44Mzg3NTVmODhkYjA5ZSAxMDA2NDQKLS0tIGEvc3JjcGtncy9t b2MvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tb2MvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ21vYycKIHBrZ25hbWU9bW9jCiB2ZXJzaW9uPTIuNS4yCi1y ZXZpc2lvbj03CityZXZpc2lvbj04CiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBob3N0bWFr ZWRlcGVuZHM9InBrZy1jb25maWciCi1tYWtlZGVwZW5kcz0iZGItZGV2ZWwgbmN1cnNlcy1kZXZl bCBsaWJjdXJsLWRldmVsIHBvcHQtZGV2ZWwgZmZtcGVnLWRldmVsCittYWtlZGVwZW5kcz0iZGIt ZGV2ZWwgbmN1cnNlcy1kZXZlbCBsaWJjdXJsLWRldmVsIHBvcHQtZGV2ZWwgZmZtcGVnNC1kZXZl bAogIGphY2stZGV2ZWwgYWxzYS1saWItZGV2ZWwgbGlibHRkbC1kZXZlbCBsaWJmbGFjLWRldmVs IGxpYnZvcmJpcy1kZXZlbAogIGxpYm1hZC1kZXZlbCBsaWJtcGNkZWMtZGV2ZWwgbGlibW9kcGx1 Zy1kZXZlbCBsaWJpZDN0YWctZGV2ZWwgZmFhZDItZGV2ZWwKICB0YWdsaWItZGV2ZWwgbGlic25k ZmlsZS1kZXZlbCB3YXZwYWNrLWRldmVsIHNwZWV4LWRldmVsIGxpYnNhbXBsZXJhdGUtZGV2ZWwK CkZyb20gZTMzZjQyOWQ0M2ZjOGI2NmUyOWIwZDcxNWVhOWVmNzRlMjI4YTllMyBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2Vk LCAyMiBNYXIgMjAyMyAyMDowMTo0OSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDQ5LzEwOV0gbW90 aW9uOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvbW90aW9uL3RlbXBsYXRlIHwg MiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9tb3Rpb24vdGVtcGxhdGUgYi9zcmNwa2dzL21vdGlvbi90ZW1wbGF0 ZQppbmRleCA2MDdlYmViM2M3YjI0Mi4uYmY2M2E5MWQ5NzY0ZjYgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvbW90aW9uL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbW90aW9uL3RlbXBsYXRlCkBAIC0xLDcg KzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbW90aW9uJwogcGtnbmFtZT1tb3Rpb24KIHZl cnNpb249NC42LjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWdudS1jb25m aWd1cmUKIGhvc3RtYWtlZGVwZW5kcz0iYXV0b21ha2UgcGtnLWNvbmZpZyBnZXR0ZXh0LWRldmVs IHRhciIKIG1ha2VkZXBlbmRzPSJmZm1wZWctZGV2ZWwgbGlibWljcm9odHRwZC1kZXZlbCB2NGwt dXRpbHMtZGV2ZWwgZ2V0dGV4dC1kZXZlbCIKCkZyb20gNjJjMDY2MGI3N2Q0MDAwNGM1ZGRjY2Uw ZDczMmE2ZGY3ZGZlNmUwZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHps aWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo0OSAtMDQwMApT dWJqZWN0OiBbUEFUQ0ggMDUwLzEwOV0gb2xpdmU6IHJldmJ1bXAgZm9yIGZmbXBlZzQKCi0tLQog c3JjcGtncy9vbGl2ZS90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0 aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL29saXZlL3RlbXBs YXRlIGIvc3JjcGtncy9vbGl2ZS90ZW1wbGF0ZQppbmRleCAxMmE0NjkzNmM5OTAwMy4uNWMyOTE3 YjljNTEyNDUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvb2xpdmUvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9vbGl2ZS90ZW1wbGF0ZQpAQCAtMSwxMCArMSwxMCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn b2xpdmUnCiBwa2duYW1lPW9saXZlCiB2ZXJzaW9uPTAuMS4yCi1yZXZpc2lvbj0yCityZXZpc2lv bj0zCiBidWlsZF9zdHlsZT1xbWFrZQogaG9zdG1ha2VkZXBlbmRzPSJxdDUtcW1ha2UgcXQ1LWhv c3QtdG9vbHMgcGtnLWNvbmZpZyIKLW1ha2VkZXBlbmRzPSJxdDUtZGV2ZWwgcXQ1LW11bHRpbWVk aWEtZGV2ZWwgcXQ1LXN2Zy1kZXZlbCBmZm1wZWctZGV2ZWwgZnJlaTByLXBsdWdpbnMiCittYWtl ZGVwZW5kcz0icXQ1LWRldmVsIHF0NS1tdWx0aW1lZGlhLWRldmVsIHF0NS1zdmctZGV2ZWwgZmZt cGVnNC1kZXZlbCBmcmVpMHItcGx1Z2lucyIKIHNob3J0X2Rlc2M9Ik5vbi1saW5lYXIgdmlkZW8g ZWRpdG9yIgogbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKIGxp Y2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCgpGcm9tIGRmMDc3OTEwNWRlMGFmNDY0NDI5NmVkODM1 MTViNjFkODcyN2JlODggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGlj ZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NTAgLTA0MDAKU3Vi amVjdDogW1BBVENIIDA1MS8xMDldIG9wZW50b29uejogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0t CiBzcmNwa2dzL29wZW50b29uei90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGlu c2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvb3BlbnRvb256 L3RlbXBsYXRlIGIvc3JjcGtncy9vcGVudG9vbnovdGVtcGxhdGUKaW5kZXggODEyNDhhN2RmZmIx ZDcuLmE2MTY5MDkwNWE1M2M0IDEwMDY0NAotLS0gYS9zcmNwa2dzL29wZW50b29uei90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL29wZW50b29uei90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ29wZW50b29ueicKIHBrZ25hbWU9b3BlbnRvb256CiB2ZXJzaW9uPTEu Ny4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF93cmtzcmM9InRvb256L3NvdXJjZXMi CiBidWlsZF9zdHlsZT1jbWFrZQogbWFrZV9jbWQ9bWFrZQoKRnJvbSAwOTI2MWI4MDFlNmM3MTkz MjBhZDM5MGViY2Y1YjliZTA1OGJiM2VjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6 bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjUw IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNTIvMTA5XSBwaWFub2JhcjogcmV2YnVtcCBmb3IgZmZt cGVnNgoKLS0tCiBzcmNwa2dzL3BpYW5vYmFyL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5n ZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9w aWFub2Jhci90ZW1wbGF0ZSBiL3NyY3BrZ3MvcGlhbm9iYXIvdGVtcGxhdGUKaW5kZXggZTNmZWJi ODIxYTQ1MTAuLjFlM2RjMWJmOTMwOGVlIDEwMDY0NAotLS0gYS9zcmNwa2dzL3BpYW5vYmFyL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvcGlhbm9iYXIvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdwaWFub2JhcicKIHBrZ25hbWU9cGlhbm9iYXIKIHZlcnNpb249 MjAyMi4wNC4wMQotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LW1ha2Vm aWxlCiBtYWtlX2J1aWxkX2FyZ3M9IlY9MSIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIK CkZyb20gZjA0ZDYxNWY3NGYxY2NlOTg1YjJkOWMyMTE1MGZhY2ZmYjIyYTAxOSBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2Vk LCAyMiBNYXIgMjAyMyAyMDowMTo1MCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDUzLzEwOV0gcHBz c3BwOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvcHBzc3BwL3BhdGNoZXMvZmZt cGVnNi5wYXRjaCB8IDE1ICsrKysrKysrKysrKysrKwogc3JjcGtncy9wcHNzcHAvdGVtcGxhdGUg ICAgICAgICAgICAgIHwgIDMgKy0tCiAyIGZpbGVzIGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyks IDIgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9wcHNzcHAvcGF0Y2hl cy9mZm1wZWc2LnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9wcHNzcHAvcGF0Y2hlcy9mZm1w ZWc2LnBhdGNoIGIvc3JjcGtncy9wcHNzcHAvcGF0Y2hlcy9mZm1wZWc2LnBhdGNoCm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi41ODAzYzdiZjIyNzMwOQotLS0gL2Rl di9udWxsCisrKyBiL3NyY3BrZ3MvcHBzc3BwL3BhdGNoZXMvZmZtcGVnNi5wYXRjaApAQCAtMCww ICsxLDE1IEBACistLS0gYS9Db3JlL0hXL1NpbXBsZUF1ZGlvRGVjLmNwcAkyMDI0LTAyLTA0IDA4 OjA4OjAyLjAwMDAwMDAwMCAtMDUwMAorKysrIGIvQ29yZS9IVy9TaW1wbGVBdWRpb0RlYy5jcHAJ MjAyNC0wMi0xNSAxNDo0ODoyNy4xMTQzNjIwNTEgLTA1MDAKK0BAIC04MSw3ICs4MSwxMSBAQAor IAkJcmV0dXJuOworIAl9CisgCS8vIEZpbmQgZGVjb2RlcgorKyNpZiBMSUJBVkZPUk1BVF9WRVJT SU9OX0lOVCA8IEFWX1ZFUlNJT05fSU5UKDU4LCAxOCwgMTAwKQorIAljb2RlY18gPSBhdmNvZGVj X2ZpbmRfZGVjb2RlcigoQVZDb2RlY0lEKWF1ZGlvQ29kZWNJZCk7CisrI2Vsc2UgLy8gdGhpcyBp cyBhIG1hY3JvIHRvIGNvbnN0IGluIHRoZSBoZWFkZXIKKysJY29kZWNfID0gKEFWQ29kZWMqKWF2 Y29kZWNfZmluZF9kZWNvZGVyKChBVkNvZGVjSUQpYXVkaW9Db2RlY0lkKTsKKysjZW5kaWYKKyAJ aWYgKCFjb2RlY18pIHsKKyAJCS8vIEVoLCB3ZSBzaG91bGRuJ3QgZXZlbiBoYXZlIG1hbmFnZWQg dG8gY29tcGlsZS4gQnV0IG1laC4KKyAJCUVSUk9SX0xPRyhNRSwgIlRoaXMgdmVyc2lvbiBvZiBG Rk1QRUcgZG9lcyBub3Qgc3VwcG9ydCBBVl9DT0RFQ19jdHggZm9yIGF1ZGlvICglcykuIFVwZGF0 ZSB5b3VyIHN1Ym1vZHVsZS4iLCBHZXRDb2RlY05hbWUoYXVkaW9UeXBlKSk7CisKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvcHBzc3BwL3RlbXBsYXRlIGIvc3JjcGtncy9wcHNzcHAvdGVtcGxhdGUKaW5k ZXggMjIzOGE3NjAxYzBhZjguLjFmZGE1NTI2OGEyZDM5IDEwMDY0NAotLS0gYS9zcmNwa2dzL3Bw c3NwcC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3Bwc3NwcC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3Bwc3NwcCcKIHBrZ25hbWU9cHBzc3BwCiB2ZXJzaW9u PTEuMTcuMQotcmV2aXNpb249MQorcmV2aXNpb249MgogX2dsc2xhbmdfY29tbWl0PWIzNGY2MTll MWM4NTgxMGRjYjNjNTc4MTA3ZDJlNDhiYTRlZTJiMzcKIF9TUElSVl9Dcm9zc19jb21taXQ9NDIx MmVlZjY3ZWQwY2EwNDhjYjcyNmE2NzY3MTg1NTA0ZTc2OTVlNQogX2FybWlwc19jb21taXQ9YThk NzFmMGYyNzllYjBkMzBlY2Y2YWY1MTQ3M2I2NmFlMGNmOGU4ZApAQCAtOTEsNyArOTEsNiBAQCBw b3N0X2NvbmZpZ3VyZSgpIHsKIH0KIAogZG9faW5zdGFsbCgpIHsKLQl2bGljZW5zZSBMSUNFTlNF LlRYVAogCXZpbnN0YWxsIGljb25zL2ljb24uc3ZnIDY0NCB1c3Ivc2hhcmUvcGl4bWFwcyBwcHNz cHAuc3ZnCiAJdmluc3RhbGwgUXQvUFBTU1BQLmRlc2t0b3AgNjQ0IHVzci9zaGFyZS9hcHBsaWNh dGlvbnMKIAl2YmluIGJ1aWxkL1BQU1NQUEhlYWRsZXNzIHBwc3NwcC1oZWFkbGVzcwoKRnJvbSBj YzczMmEwY2Y3YTcxMGY1YTIxMTdhMTc0MzBiMjJkMGM1ODkxZWMyIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1h ciAyMDIzIDIwOjAxOjUwIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNTQvMTA5XSBwcWl2OiByZXZi dW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvcHFpdi90ZW1wbGF0ZSB8IDIgKy0KIDEgZmls ZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvcHFpdi90ZW1wbGF0ZSBiL3NyY3BrZ3MvcHFpdi90ZW1wbGF0ZQppbmRleCBmOWY3NzUx MTk2ZDRlZS4uMGQ1MDc3N2U1NmEyZDggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcHFpdi90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL3BxaXYvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRl IGZpbGUgZm9yICdwcWl2JwogcGtnbmFtZT1wcWl2CiB2ZXJzaW9uPTIuMTMuMQotcmV2aXNpb249 MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LW1ha2VmaWxlCiBob3N0bWFrZWRlcGVuZHM9 InBrZy1jb25maWciCiBtYWtlZGVwZW5kcz0iZ2xpYi1kZXZlbCBndGsrMy1kZXZlbCAkKHZvcHRf aWYgZmZtcGVnIGZmbXBlZy1kZXZlbCkKCkZyb20gMzU4YmQ2YjlmMTZmYzEzZjg0MjExODFhYWY0 YzMwNGI4ZjRmMDJhOCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNl NTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo1MCAtMDQwMApTdWJq ZWN0OiBbUEFUQ0ggMDU1LzEwOV0gcW1tcDogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNw a2dzL3FtbXAvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3FtbXAvdGVtcGxhdGUgYi9zcmNw a2dzL3FtbXAvdGVtcGxhdGUKaW5kZXggNTM3ODFlYTNiYzI4YWQuLjJkYTA3ZjFlODdlYWMwIDEw MDY0NAotLS0gYS9zcmNwa2dzL3FtbXAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9xbW1wL3RlbXBs YXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncW1tcCcKIHBrZ25hbWU9 cW1tcAogdmVyc2lvbj0xLjYuMQotcmV2aXNpb249MworcmV2aXNpb249NAogYnVpbGRfc3R5bGU9 Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItRFVTRV9IQUw6Qk9PTD1GQUxTRSAtRFFNTVBfREVGQVVM VF9VSTpTVFJJTkc9c2ltcGxlIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIHF0NS1ob3N0 LXRvb2xzIHF0NS1xbWFrZSIKCkZyb20gOWExYzEwMzQ0NjgxMDk3MGExOTUzZjNlNDQxMTNkZjQz NzkwMTE5YiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdt YWlsLmNvbT4KRGF0ZTogVGh1LCAxNCBEZWMgMjAyMyAxMzoyODoxMCAtMDUwMApTdWJqZWN0OiBb UEFUQ0ggMDU2LzEwOV0gcXQ2LXBkZjogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dz L3F0Ni1wZGYvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0Ni1wZGYvdGVtcGxhdGUgYi9z cmNwa2dzL3F0Ni1wZGYvdGVtcGxhdGUKaW5kZXggZWNkYTg0YWZhYzEzMTAuLjUzMWI0ZTFkNGZl ODRkIDEwMDY0NAotLS0gYS9zcmNwa2dzL3F0Ni1wZGYvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9x dDYtcGRmL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncXQ2 LXBkZicKIHBrZ25hbWU9cXQ2LXBkZgogdmVyc2lvbj02LjYuMAotcmV2aXNpb249MworcmV2aXNp b249NAogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItRFFUX0ZFQVRVUkVfcXRw ZGZfYnVpbGQ9T04KICAtRFFUX0ZFQVRVUkVfcXRwZGZfd2lkZ2V0c19idWlsZD1PTgoKRnJvbSA0 ZmUyYzExMDQ2MjMzMzIzYWMyMjJlNWNhNWIyNjVjMjYwNWQ2ZDg0IE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1h ciAyMDIzIDIwOjAxOjUwIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNTcvMTA5XSBxdDUtd2ViZW5n aW5lOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIC4uLi9jaHJvbWl1bS1tZWRpYS1maWx0ZXJz LWNwcDE0LnBhdGNoICAgICAgICB8ICAxMSArKwogc3JjcGtncy9xdDUtd2ViZW5naW5lL3BhdGNo ZXMvZmZtcGVnNS5wYXRjaCAgIHwgMTc5ICsrKysrKysrKysrKysrKysrKwogLi4uL3F0d2ViZW5n aW5lLWZpeC1mZm1wZWc1LWJ1aWxkLnBhdGNoICAgICAgIHwgIDE0ICsrCiBzcmNwa2dzL3F0NS13 ZWJlbmdpbmUvdGVtcGxhdGUgICAgICAgICAgICAgICAgfCAgIDQgKy0KIDQgZmlsZXMgY2hhbmdl ZCwgMjA2IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQg c3JjcGtncy9xdDUtd2ViZW5naW5lL3BhdGNoZXMvY2hyb21pdW0tbWVkaWEtZmlsdGVycy1jcHAx NC5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcXQ1LXdlYmVuZ2luZS9wYXRjaGVz L2ZmbXBlZzUucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3F0NS13ZWJlbmdpbmUv cGF0Y2hlcy9xdHdlYmVuZ2luZS1maXgtZmZtcGVnNS1idWlsZC5wYXRjaAoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvcXQ1LXdlYmVuZ2luZS9wYXRjaGVzL2Nocm9taXVtLW1lZGlhLWZpbHRlcnMtY3Bw MTQucGF0Y2ggYi9zcmNwa2dzL3F0NS13ZWJlbmdpbmUvcGF0Y2hlcy9jaHJvbWl1bS1tZWRpYS1m aWx0ZXJzLWNwcDE0LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw MDAwLi4wNGFkYzU0MGYyY2JjMAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvcXQ1LXdlYmVu Z2luZS9wYXRjaGVzL2Nocm9taXVtLW1lZGlhLWZpbHRlcnMtY3BwMTQucGF0Y2gKQEAgLTAsMCAr MSwxMSBAQAorLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL21lZGlhL2ZpbHRlcnMvQlVJTEQu Z24JMjAyMy0wMi0yNyAxMzozMjo1OS4wMDAwMDAwMDAgLTA1MDAKKysrKyBiL3NyYy8zcmRwYXJ0 eS9jaHJvbWl1bS9tZWRpYS9maWx0ZXJzL0JVSUxELmduCTIwMjMtMDQtMDIgMTc6MjE6MzkuMjA0 MDY2Mzg0IC0wNDAwCitAQCAtOTYsNiArOTYsOCBAQAorICAgICAiLy91aS9nZngvZ2VvbWV0cnk6 Z2VvbWV0cnkiLAorICAgXQorIAorKyAgY2ZsYWdzX2NjID0gWyAiLXN0ZD1jKysxNCIgXQorKwor ICAgbGlicyA9IFtdCisgCisgICBpZiAocHJvcHJpZXRhcnlfY29kZWNzKSB7CmRpZmYgLS1naXQg YS9zcmNwa2dzL3F0NS13ZWJlbmdpbmUvcGF0Y2hlcy9mZm1wZWc1LnBhdGNoIGIvc3JjcGtncy9x dDUtd2ViZW5naW5lL3BhdGNoZXMvZmZtcGVnNS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwMDAwMDAwMC4uYWM1NWUxNjM0NDIzYTkKLS0tIC9kZXYvbnVsbAorKysgYi9z cmNwa2dzL3F0NS13ZWJlbmdpbmUvcGF0Y2hlcy9mZm1wZWc1LnBhdGNoCkBAIC0wLDAgKzEsMTc5 IEBACistLS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vbWVkaWEvZmlsdGVycy9mZm1wZWdfZGVt dXhlci5jYwkyMDIzLTA0LTAyIDE2OjUwOjU3LjczMjU0NzQ0NiAtMDQwMAorKysrIGIvc3JjLzNy ZHBhcnR5L2Nocm9taXVtL21lZGlhL2ZpbHRlcnMvZmZtcGVnX2RlbXV4ZXIuY2MJMjAyMy0wNC0w MiAxNjo1MDowOS40ODY0Nzg5OTUgLTA0MDAKK0BAIC01Nyw2ICs1Nyw4IEBACisgCisgbmFtZXNw YWNlIHsKKyAKKytjb25zdGV4cHIgaW50NjRfdCBrUmVsYXRpdmVUc0Jhc2UgPSBzdGF0aWNfY2Fz dDxpbnQ2NF90PigweDdmZmVmZmZmZmZmZmZmZmYpOworKworIHZvaWQgU2V0QVZTdHJlYW1EaXNj YXJkKEFWU3RyZWFtKiBzdHJlYW0sIEFWRGlzY2FyZCBkaXNjYXJkKSB7CisgICBEQ0hFQ0soc3Ry ZWFtKTsKKyAgIHN0cmVhbS0+ZGlzY2FyZCA9IGRpc2NhcmQ7CitAQCAtOTAsMjQgKzkyLDEyIEBA CisgCisgc3RhdGljIGJhc2U6OlRpbWVEZWx0YSBFeHRyYWN0U3RhcnRUaW1lKEFWU3RyZWFtKiBz dHJlYW0pIHsKKyAgIC8vIFRoZSBkZWZhdWx0IHN0YXJ0IHRpbWUgaXMgemVyby4KKy0gIGJhc2U6 OlRpbWVEZWx0YSBzdGFydF90aW1lOworKyAgYmFzZTo6VGltZURlbHRhIHN0YXJ0X3RpbWUgPSBr Tm9UaW1lc3RhbXA7CisgCisgICAvLyBGaXJzdCB0cnkgdG8gdXNlICB0aGUgfHN0YXJ0X3RpbWV8 IHZhbHVlIGFzIGlzLgorICAgaWYgKHN0cmVhbS0+c3RhcnRfdGltZSAhPSBrTm9GRm1wZWdUaW1l c3RhbXApCisgICAgIHN0YXJ0X3RpbWUgPSBDb252ZXJ0RnJvbVRpbWVCYXNlKHN0cmVhbS0+dGlt ZV9iYXNlLCBzdHJlYW0tPnN0YXJ0X3RpbWUpOworIAorLSAgLy8gTmV4dCB0cnkgdG8gdXNlIHRo ZSBmaXJzdCBEVFMgdmFsdWUsIGZvciBjb2RlY3Mgd2hlcmUgd2Uga25vdyBQVFMgPT0gRFRTCist ICAvLyAoZXhjbHVkZXMgYWxsIEgyNnggY29kZWNzKS4gVGhlIHN0YXJ0IHRpbWUgbXVzdCBiZSBy ZXR1cm5lZCBpbiBQVFMuCistICBpZiAoc3RyZWFtLT5maXJzdF9kdHMgIT0ga05vRkZtcGVnVGlt ZXN0YW1wICYmCistICAgICAgc3RyZWFtLT5jb2RlY3Bhci0+Y29kZWNfaWQgIT0gQVZfQ09ERUNf SURfSEVWQyAmJgorLSAgICAgIHN0cmVhbS0+Y29kZWNwYXItPmNvZGVjX2lkICE9IEFWX0NPREVD X0lEX0gyNjQgJiYKKy0gICAgICBzdHJlYW0tPmNvZGVjcGFyLT5jb2RlY19pZCAhPSBBVl9DT0RF Q19JRF9NUEVHNCkgeworLSAgICBjb25zdCBiYXNlOjpUaW1lRGVsdGEgZmlyc3RfcHRzID0KKy0g ICAgICAgIENvbnZlcnRGcm9tVGltZUJhc2Uoc3RyZWFtLT50aW1lX2Jhc2UsIHN0cmVhbS0+Zmly c3RfZHRzKTsKKy0gICAgaWYgKGZpcnN0X3B0cyA8IHN0YXJ0X3RpbWUpCistICAgICAgc3RhcnRf dGltZSA9IGZpcnN0X3B0czsKKy0gIH0KKy0KKyAgIHJldHVybiBzdGFydF90aW1lOworIH0KKyAK K0BAIC00MDgsMTEgKzM5OCwxMSBAQAorICAgc2NvcGVkX3JlZnB0cjxEZWNvZGVyQnVmZmVyPiBi dWZmZXI7CisgCisgICBpZiAodHlwZSgpID09IERlbXV4ZXJTdHJlYW06OlRFWFQpIHsKKy0gICAg aW50IGlkX3NpemUgPSAwOworKyAgICBzaXplX3QgaWRfc2l6ZSA9IDA7CisgICAgIHVpbnQ4X3Qq IGlkX2RhdGEgPSBhdl9wYWNrZXRfZ2V0X3NpZGVfZGF0YSgKKyAgICAgICAgIHBhY2tldC5nZXQo KSwgQVZfUEtUX0RBVEFfV0VCVlRUX0lERU5USUZJRVIsICZpZF9zaXplKTsKKyAKKy0gICAgaW50 IHNldHRpbmdzX3NpemUgPSAwOworKyAgICBzaXplX3Qgc2V0dGluZ3Nfc2l6ZSA9IDA7CisgICAg IHVpbnQ4X3QqIHNldHRpbmdzX2RhdGEgPSBhdl9wYWNrZXRfZ2V0X3NpZGVfZGF0YSgKKyAgICAg ICAgIHBhY2tldC5nZXQoKSwgQVZfUEtUX0RBVEFfV0VCVlRUX1NFVFRJTkdTLCAmc2V0dGluZ3Nf c2l6ZSk7CisgCitAQCAtNDI0LDcgKzQxNCw3IEBACisgICAgIGJ1ZmZlciA9IERlY29kZXJCdWZm ZXI6OkNvcHlGcm9tKHBhY2tldC0+ZGF0YSwgcGFja2V0LT5zaXplLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBzaWRlX2RhdGEuZGF0YSgpLCBzaWRlX2RhdGEuc2l6ZSgp KTsKKyAgIH0gZWxzZSB7CistICAgIGludCBzaWRlX2RhdGFfc2l6ZSA9IDA7CisrICAgIHNpemVf dCBzaWRlX2RhdGFfc2l6ZSA9IDA7CisgICAgIHVpbnQ4X3QqIHNpZGVfZGF0YSA9IGF2X3BhY2tl dF9nZXRfc2lkZV9kYXRhKAorICAgICAgICAgcGFja2V0LmdldCgpLCBBVl9QS1RfREFUQV9NQVRS T1NLQV9CTE9DS0FERElUSU9OQUwsICZzaWRlX2RhdGFfc2l6ZSk7CisgCitAQCAtNDg1LDcgKzQ3 NSw3IEBACisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2V0LT5z aXplIC0gZGF0YV9vZmZzZXQpOworICAgICB9CisgCistICAgIGludCBza2lwX3NhbXBsZXNfc2l6 ZSA9IDA7CisrICAgIHNpemVfdCBza2lwX3NhbXBsZXNfc2l6ZSA9IDA7CisgICAgIGNvbnN0IHVp bnQzMl90KiBza2lwX3NhbXBsZXNfcHRyID0KKyAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8Y29u c3QgdWludDMyX3QqPihhdl9wYWNrZXRfZ2V0X3NpZGVfZGF0YSgKKyAgICAgICAgICAgICBwYWNr ZXQuZ2V0KCksIEFWX1BLVF9EQVRBX1NLSVBfU0FNUExFUywgJnNraXBfc2FtcGxlc19zaXplKSk7 CitAQCAtMTU4Nyw2ICsxNTc3LDggQEAKKyAgIGZvciAoY29uc3QgYXV0byYgc3RyZWFtIDogc3Ry ZWFtc18pIHsKKyAgICAgaWYgKCFzdHJlYW0gfHwgc3RyZWFtLT5Jc0VuYWJsZWQoKSAhPSBlbmFi bGVkKQorICAgICAgIGNvbnRpbnVlOworKyAgICBpZiAoc3RyZWFtLT5hdl9zdHJlYW0oKS0+c3Rh cnRfdGltZSA9PSBBVl9OT1BUU19WQUxVRSkKKysgICAgICBjb250aW51ZTsKKyAgICAgaWYgKCFs b3dlc3Rfc3RhcnRfdGltZV9zdHJlYW0gfHwKKyAgICAgICAgIHN0cmVhbS0+c3RhcnRfdGltZSgp IDwgbG93ZXN0X3N0YXJ0X3RpbWVfc3RyZWFtLT5zdGFydF90aW1lKCkpIHsKKyAgICAgICBsb3dl c3Rfc3RhcnRfdGltZV9zdHJlYW0gPSBzdHJlYW0uZ2V0KCk7CitAQCAtMTYwNCw2ICsxNTk2LDgg QEAKKyAgICAgaWYgKHN0cmVhbSAmJiBzdHJlYW0tPnR5cGUoKSA9PSBEZW11eGVyU3RyZWFtOjpW SURFTyAmJgorICAgICAgICAgc3RyZWFtLT5Jc0VuYWJsZWQoKSkgeworICAgICAgIHZpZGVvX3N0 cmVhbSA9IHN0cmVhbS5nZXQoKTsKKysgICAgICBpZiAoc3RyZWFtLT5hdl9zdHJlYW0oKS0+c3Rh cnRfdGltZSA9PSBBVl9OT1BUU19WQUxVRSkKKysgICAgICAgIGNvbnRpbnVlOworICAgICAgIGlm ICh2aWRlb19zdHJlYW0tPnN0YXJ0X3RpbWUoKSA8PSBzZWVrX3RpbWUpIHsKKyAgICAgICAgIHJl dHVybiB2aWRlb19zdHJlYW07CisgICAgICAgfQorZGlmZiAtTmF1cnAgcXR3ZWJlbmdpbmUtNS4x NS4xMC5vcmlnL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRpYS9mZm1wZWcvZmZtcGVnX2NvbW1v bi5oIHF0d2ViZW5naW5lLTUuMTUuMTAvc3JjLzNyZHBhcnR5L2Nocm9taXVtL21lZGlhL2ZmbXBl Zy9mZm1wZWdfY29tbW9uLmgKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRpYS9mZm1w ZWcvZmZtcGVnX2NvbW1vbi5oCTIwMjItMDUtMjMgMDY6Mzg6NDAuMDAwMDAwMDAwIC0wNTAwCisr KysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vbWVkaWEvZmZtcGVnL2ZmbXBlZ19jb21tb24uaAky MDIyLTA3LTExIDIyOjEyOjQ3LjkxNzE5Mjc4OCAtMDUwMAorQEAgLTI5LDYgKzI5LDcgQEAgZXh0 ZXJuICJDIiB7CisgI2luY2x1ZGUgPGxpYmF2Zm9ybWF0L2F2Zm9ybWF0Lmg+CisgI2luY2x1ZGUg PGxpYmF2Zm9ybWF0L2F2aW8uaD4KKyAjaW5jbHVkZSA8bGliYXZ1dGlsL2F2dXRpbC5oPgorKyNp bmNsdWRlIDxsaWJhdnV0aWwvY2hhbm5lbF9sYXlvdXQuaD4KKyAjaW5jbHVkZSA8bGliYXZ1dGls L2ltZ3V0aWxzLmg+CisgI2luY2x1ZGUgPGxpYmF2dXRpbC9sb2cuaD4KKyAjaW5jbHVkZSA8bGli YXZ1dGlsL21hc3RlcmluZ19kaXNwbGF5X21ldGFkYXRhLmg+CitkaWZmIC1OYXVycCBxdHdlYmVu Z2luZS01LjE1LjEwLm9yaWcvc3JjLzNyZHBhcnR5L2Nocm9taXVtL21lZGlhL2ZpbHRlcnMvYXVk aW9fZmlsZV9yZWFkZXIuY2MgcXR3ZWJlbmdpbmUtNS4xNS4xMC9zcmMvM3JkcGFydHkvY2hyb21p dW0vbWVkaWEvZmlsdGVycy9hdWRpb19maWxlX3JlYWRlci5jYworLS0tIGEvc3JjLzNyZHBhcnR5 L2Nocm9taXVtL21lZGlhL2ZpbHRlcnMvYXVkaW9fZmlsZV9yZWFkZXIuY2MJMjAyMi0wNS0yMyAw NjozODo0MC4wMDAwMDAwMDAgLTA1MDAKKysrKyBiL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRp YS9maWx0ZXJzL2F1ZGlvX2ZpbGVfcmVhZGVyLmNjCTIwMjItMDctMTEgMjI6MTI6NDcuOTE3MTky Nzg4IC0wNTAwCitAQCAtODUsNyArODUsNyBAQCBib29sIEF1ZGlvRmlsZVJlYWRlcjo6T3BlbkRl bXV4ZXIoKSB7CisgfQorIAorIGJvb2wgQXVkaW9GaWxlUmVhZGVyOjpPcGVuRGVjb2RlcigpIHsK Ky0gIEFWQ29kZWMqIGNvZGVjID0gYXZjb2RlY19maW5kX2RlY29kZXIoY29kZWNfY29udGV4dF8t PmNvZGVjX2lkKTsKKysgIGNvbnN0IEFWQ29kZWMqIGNvZGVjID0gYXZjb2RlY19maW5kX2RlY29k ZXIoY29kZWNfY29udGV4dF8tPmNvZGVjX2lkKTsKKyAgIGlmIChjb2RlYykgeworICAgICAvLyBN UDMgZGVjb2RlcyB0byBTMTZQIHdoaWNoIHdlIGRvbid0IHN1cHBvcnQsIHRlbGwgaXQgdG8gdXNl IFMxNiBpbnN0ZWFkLgorICAgICBpZiAoY29kZWNfY29udGV4dF8tPnNhbXBsZV9mbXQgPT0gQVZf U0FNUExFX0ZNVF9TMTZQKQorZGlmZiAtTmF1cnAgcXR3ZWJlbmdpbmUtNS4xNS4xMC5vcmlnL3Ny Yy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRpYS9maWx0ZXJzL2ZmbXBlZ19hdWRpb19kZWNvZGVyLmNj IHF0d2ViZW5naW5lLTUuMTUuMTAvc3JjLzNyZHBhcnR5L2Nocm9taXVtL21lZGlhL2ZpbHRlcnMv ZmZtcGVnX2F1ZGlvX2RlY29kZXIuY2MKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRp YS9maWx0ZXJzL2ZmbXBlZ19hdWRpb19kZWNvZGVyLmNjCTIwMjItMDUtMjMgMDY6Mzg6NDAuMDAw MDAwMDAwIC0wNTAwCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vbWVkaWEvZmlsdGVycy9m Zm1wZWdfYXVkaW9fZGVjb2Rlci5jYwkyMDIyLTA3LTExIDIyOjEyOjQ3LjkxNzE5Mjc4OCAtMDUw MAorQEAgLTMyOSw3ICszMjksNyBAQCBib29sIEZGbXBlZ0F1ZGlvRGVjb2Rlcjo6Q29uZmlndXJl RGVjb2RlCisgICAgIH0KKyAgIH0KKyAKKy0gIEFWQ29kZWMqIGNvZGVjID0gYXZjb2RlY19maW5k X2RlY29kZXIoY29kZWNfY29udGV4dF8tPmNvZGVjX2lkKTsKKysgIGNvbnN0IEFWQ29kZWMqIGNv ZGVjID0gYXZjb2RlY19maW5kX2RlY29kZXIoY29kZWNfY29udGV4dF8tPmNvZGVjX2lkKTsKKyAg IGlmICghY29kZWMgfHwKKyAgICAgICBhdmNvZGVjX29wZW4yKGNvZGVjX2NvbnRleHRfLmdldCgp LCBjb2RlYywgJmNvZGVjX29wdGlvbnMpIDwgMCkgeworICAgICBETE9HKEVSUk9SKSA8PCAiQ291 bGQgbm90IGluaXRpYWxpemUgYXVkaW8gZGVjb2RlcjogIgorZGlmZiAtTmF1cnAgcXR3ZWJlbmdp bmUtNS4xNS4xMC5vcmlnL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRpYS9maWx0ZXJzL2ZmbXBl Z19nbHVlLmNjIHF0d2ViZW5naW5lLTUuMTUuMTAvc3JjLzNyZHBhcnR5L2Nocm9taXVtL21lZGlh L2ZpbHRlcnMvZmZtcGVnX2dsdWUuY2MKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRp YS9maWx0ZXJzL2ZmbXBlZ19nbHVlLmNjCTIwMjItMDUtMjMgMDY6Mzg6NDAuMDAwMDAwMDAwIC0w NTAwCisrKysgYi9zcmMvM3JkcGFydHkvY2hyb21pdW0vbWVkaWEvZmlsdGVycy9mZm1wZWdfZ2x1 ZS5jYwkyMDIyLTA3LTExIDIyOjEyOjQ3LjkxODE5Mjc3OSAtMDUwMAorQEAgLTU5LDcgKzU5LDYg QEAgc3RhdGljIGludDY0X3QgQVZJT1NlZWtPcGVyYXRpb24odm9pZCogbworIH0KKyAKKyB2b2lk IEZGbXBlZ0dsdWU6OkluaXRpYWxpemVGRm1wZWcoKSB7CistICBhdl9yZWdpc3Rlcl9hbGwoKTsK KyB9CisgCisgc3RhdGljIHZvaWQgTG9nQ29udGFpbmVyKGJvb2wgaXNfbG9jYWxfZmlsZSwKK0BA IC05NSw5ICs5NCw2IEBAIEZGbXBlZ0dsdWU6OkZGbXBlZ0dsdWUoRkZtcGVnVVJMUHJvdG9jb2wK KyAgIC8vIEVuYWJsZSBmYXN0LCBidXQgaW5hY2N1cmF0ZSBzZWVrcyBmb3IgTVAzLgorICAgZm9y bWF0X2NvbnRleHRfLT5mbGFncyB8PSBBVkZNVF9GTEFHX0ZBU1RfU0VFSzsKKyAKKy0gIC8vIEVu c3VyZXMgd2UgY2FuIHJlYWQgb3V0IHZhcmlvdXMgbWV0YWRhdGEgYml0cyBsaWtlIHZwOCBhbHBo YS4KKy0gIGZvcm1hdF9jb250ZXh0Xy0+ZmxhZ3MgfD0gQVZGTVRfRkxBR19LRUVQX1NJREVfREFU QTsKKy0KKyAgIC8vIEVuc3VyZXMgZm9ybWF0IHBhcnNpbmcgZXJyb3JzIHdpbGwgYmFpbCBvdXQu IEZyb20gYW4gYXVkaXQgb24gMTEvMjAxNywgYWxsCisgICAvLyBpbnN0YW5jZXMgd2VyZSByZWFs IGZhaWx1cmVzLiBTb2x2ZXMgYnVncyBsaWtlIGh0dHA6Ly9jcmJ1Zy5jb20vNzEwNzkxLgorICAg Zm9ybWF0X2NvbnRleHRfLT5lcnJvcl9yZWNvZ25pdGlvbiB8PSBBVl9FRl9FWFBMT0RFOworZGlm ZiAtTmF1cnAgcXR3ZWJlbmdpbmUtNS4xNS4xMC5vcmlnL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9t ZWRpYS9maWx0ZXJzL2ZmbXBlZ192aWRlb19kZWNvZGVyLmNjIHF0d2ViZW5naW5lLTUuMTUuMTAv c3JjLzNyZHBhcnR5L2Nocm9taXVtL21lZGlhL2ZpbHRlcnMvZmZtcGVnX3ZpZGVvX2RlY29kZXIu Y2MKKy0tLSBhL3NyYy8zcmRwYXJ0eS9jaHJvbWl1bS9tZWRpYS9maWx0ZXJzL2ZmbXBlZ192aWRl b19kZWNvZGVyLmNjCTIwMjItMDUtMjMgMDY6Mzg6NDAuMDAwMDAwMDAwIC0wNTAwCisrKysgYi9z cmMvM3JkcGFydHkvY2hyb21pdW0vbWVkaWEvZmlsdGVycy9mZm1wZWdfdmlkZW9fZGVjb2Rlci5j YwkyMDIyLTA3LTExIDIyOjEyOjQ3LjkxODE5Mjc3OSAtMDUwMAorQEAgLTM5MSw3ICszOTEsNyBA QCBib29sIEZGbXBlZ1ZpZGVvRGVjb2Rlcjo6Q29uZmlndXJlRGVjb2RlCisgICBpZiAoZGVjb2Rl X25hbHVzXykKKyAgICAgY29kZWNfY29udGV4dF8tPmZsYWdzMiB8PSBBVl9DT0RFQ19GTEFHMl9D SFVOS1M7CisgCistICBBVkNvZGVjKiBjb2RlYyA9IGF2Y29kZWNfZmluZF9kZWNvZGVyKGNvZGVj X2NvbnRleHRfLT5jb2RlY19pZCk7CisrICBjb25zdCBBVkNvZGVjKiBjb2RlYyA9IGF2Y29kZWNf ZmluZF9kZWNvZGVyKGNvZGVjX2NvbnRleHRfLT5jb2RlY19pZCk7CisgICBpZiAoIWNvZGVjIHx8 IGF2Y29kZWNfb3BlbjIoY29kZWNfY29udGV4dF8uZ2V0KCksIGNvZGVjLCBOVUxMKSA8IDApIHsK KyAgICAgUmVsZWFzZUZGbXBlZ1Jlc291cmNlcygpOworICAgICByZXR1cm4gZmFsc2U7CitkaWZm IC1OYXVycCBxdHdlYmVuZ2luZS01LjE1LjEwLm9yaWcvc3JjLzNyZHBhcnR5L2Nocm9taXVtL21l ZGlhL2ZpbHRlcnMvbWVkaWFfZmlsZV9jaGVja2VyLmNjIHF0d2ViZW5naW5lLTUuMTUuMTAvc3Jj LzNyZHBhcnR5L2Nocm9taXVtL21lZGlhL2ZpbHRlcnMvbWVkaWFfZmlsZV9jaGVja2VyLmNjCist LS0gYS9zcmMvM3JkcGFydHkvY2hyb21pdW0vbWVkaWEvZmlsdGVycy9tZWRpYV9maWxlX2NoZWNr ZXIuY2MJMjAyMi0wNS0yMyAwNjozODo0MC4wMDAwMDAwMDAgLTA1MDAKKysrKyBiL3NyYy8zcmRw YXJ0eS9jaHJvbWl1bS9tZWRpYS9maWx0ZXJzL21lZGlhX2ZpbGVfY2hlY2tlci5jYwkyMDIyLTA3 LTExIDIyOjEyOjQ3LjkxODE5Mjc3OSAtMDUwMAorQEAgLTY4LDcgKzY4LDcgQEAgYm9vbCBNZWRp YUZpbGVDaGVja2VyOjpTdGFydChiYXNlOjpUaW1lRAorICAgICAgIGF1dG8gY29udGV4dCA9IEFW U3RyZWFtVG9BVkNvZGVjQ29udGV4dChmb3JtYXRfY29udGV4dC0+c3RyZWFtc1tpXSk7CisgICAg ICAgaWYgKCFjb250ZXh0KQorICAgICAgICAgY29udGludWU7CistICAgICAgQVZDb2RlYyogY29k ZWMgPSBhdmNvZGVjX2ZpbmRfZGVjb2RlcihjcC0+Y29kZWNfaWQpOworKyAgICAgIGNvbnN0IEFW Q29kZWMqIGNvZGVjID0gYXZjb2RlY19maW5kX2RlY29kZXIoY3AtPmNvZGVjX2lkKTsKKyAgICAg ICBpZiAoY29kZWMgJiYgYXZjb2RlY19vcGVuMihjb250ZXh0LmdldCgpLCBjb2RlYywgbnVsbHB0 cikgPj0gMCkgeworICAgICAgICAgYXV0byBsb29wID0gc3RkOjptYWtlX3VuaXF1ZTxGRm1wZWdE ZWNvZGluZ0xvb3A+KGNvbnRleHQuZ2V0KCkpOworICAgICAgICAgc3RyZWFtX2NvbnRleHRzW2ld ID0ge3N0ZDo6bW92ZShjb250ZXh0KSwgc3RkOjptb3ZlKGxvb3ApfTsKK2RpZmYgLU5hdXJwIHF0 d2ViZW5naW5lLTUuMTUuMTAub3JpZy9zcmMvM3JkcGFydHkvY2hyb21pdW0vdGhpcmRfcGFydHkv d2VicnRjL21vZHVsZXMvdmlkZW9fY29kaW5nL2NvZGVjcy9oMjY0L2gyNjRfZGVjb2Rlcl9pbXBs LmNjIHF0d2ViZW5naW5lLTUuMTUuMTAvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5 L3dlYnJ0Yy9tb2R1bGVzL3ZpZGVvX2NvZGluZy9jb2RlY3MvaDI2NC9oMjY0X2RlY29kZXJfaW1w bC5jYworLS0tIGEvc3JjLzNyZHBhcnR5L2Nocm9taXVtL3RoaXJkX3BhcnR5L3dlYnJ0Yy9tb2R1 bGVzL3ZpZGVvX2NvZGluZy9jb2RlY3MvaDI2NC9oMjY0X2RlY29kZXJfaW1wbC5jYwkyMDIyLTA1 LTIzIDA2OjM4OjQwLjAwMDAwMDAwMCAtMDUwMAorKysrIGIvc3JjLzNyZHBhcnR5L2Nocm9taXVt L3RoaXJkX3BhcnR5L3dlYnJ0Yy9tb2R1bGVzL3ZpZGVvX2NvZGluZy9jb2RlY3MvaDI2NC9oMjY0 X2RlY29kZXJfaW1wbC5jYwkyMDIyLTA3LTExIDIyOjEyOjQ3LjkxODE5Mjc3OSAtMDUwMAorQEAg LTIwMyw3ICsyMDMsNyBAQCBpbnQzMl90IEgyNjREZWNvZGVySW1wbDo6SW5pdERlY29kZShjb25z CisgICAvLyBhIHBvaW50ZXIgfHRoaXN8LgorICAgYXZfY29udGV4dF8tPm9wYXF1ZSA9IHRoaXM7 CisgCistICBBVkNvZGVjKiBjb2RlYyA9IGF2Y29kZWNfZmluZF9kZWNvZGVyKGF2X2NvbnRleHRf LT5jb2RlY19pZCk7CisrICBjb25zdCBBVkNvZGVjKiBjb2RlYyA9IGF2Y29kZWNfZmluZF9kZWNv ZGVyKGF2X2NvbnRleHRfLT5jb2RlY19pZCk7CisgICBpZiAoIWNvZGVjKSB7CisgICAgIC8vIFRo aXMgaXMgYW4gaW5kaWNhdGlvbiB0aGF0IEZGbXBlZyBoYXMgbm90IGJlZW4gaW5pdGlhbGl6ZWQg b3IgaXQgaGFzIG5vdAorICAgICAvLyBiZWVuIGNvbXBpbGVkL2luaXRpYWxpemVkIHdpdGggdGhl IGNvcnJlY3Qgc2V0IG9mIGNvZGVjcy4KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ1LXdlYmVuZ2lu ZS9wYXRjaGVzL3F0d2ViZW5naW5lLWZpeC1mZm1wZWc1LWJ1aWxkLnBhdGNoIGIvc3JjcGtncy9x dDUtd2ViZW5naW5lL3BhdGNoZXMvcXR3ZWJlbmdpbmUtZml4LWZmbXBlZzUtYnVpbGQucGF0Y2gK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAuLmJjMjRkNWI5YTI5Y2I1 Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9xdDUtd2ViZW5naW5lL3BhdGNoZXMvcXR3ZWJl bmdpbmUtZml4LWZmbXBlZzUtYnVpbGQucGF0Y2gKQEAgLTAsMCArMSwxNCBAQAorLS0tIGEvc3Jj L2J1aWxkdG9vbHMvY29uZmlndXJlLmpzb24JMjAyMy0xMi0wOSAxMTowNjowMS41MDMwNTg1Njkg LTA1MDAKKysrKyBiL3NyYy9idWlsZHRvb2xzL2NvbmZpZ3VyZS5qc29uCTIwMjMtMTItMDkgMTE6 MDY6MTQuOTgyMzYxMzQ1IC0wNTAwCitAQCAtNzc5LDExICs3NzksNiBAQAorICAgICAgICAgICAg ICJ0eXBlIjogIndhcm5pbmciLAorICAgICAgICAgICAgICJjb25kaXRpb24iOiAiY29uZmlnLmlv cyAmJiBjb25maWcuc2ltdWxhdG9yICYmIGNvbmZpZy5kZXZpY2UgJiYgZmVhdHVyZXMuYnVpbGQt cXRwZGYiLAorICAgICAgICAgICAgICJtZXNzYWdlIjogIkJ1aWxkaW5nIGZhdCBsaWJyYXkgd2l0 aCBkZXZpY2UgYW5kIHNpbXVsYXRvciBhcmNoaXRlY3R1cmVzIHdpbGwgZGlzYWJsZSBORU9OLiIK Ky0gICAgICAgIH0sCistICAgICAgICB7CistICAgICAgICAgICAgInR5cGUiOiAiZmF0YWwiLAor LSAgICAgICAgICAgICJjb25kaXRpb24iOiAiZmVhdHVyZXMud2ViZW5naW5lLXN5c3RlbS1mZm1w ZWcgJiYgIWxpYnMud2ViZW5naW5lLWZmbXBlZy1zdXBwb3J0IiwKKy0gICAgICAgICAgICAibWVz c2FnZSI6ICJVbm1vZGlmaWVkIGZmbXBlZyA+PSA1LjAgaXMgbm90IHN1cHBvcnRlZC4gUGxlYXNl IGNvbmZpZ3VyZSB3aXRoIC1xdC13ZWJlbmdpbmUtZmZtcGVnLiIKKyAgICAgICAgIH0KKyAgICAg XSwKKyAgICAgInN1bW1hcnkiOiBbCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0NS13ZWJlbmdpbmUv dGVtcGxhdGUgYi9zcmNwa2dzL3F0NS13ZWJlbmdpbmUvdGVtcGxhdGUKaW5kZXggM2MwZjViZGE2 OWM3ZWUuLmRmNmU0NDE3NDdjYzQzIDEwMDY0NAotLS0gYS9zcmNwa2dzL3F0NS13ZWJlbmdpbmUv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9xdDUtd2ViZW5naW5lL3RlbXBsYXRlCkBAIC0xLDE0ICsx LDE0IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdxdDUtd2ViZW5naW5lJwogcGtnbmFtZT1xdDUt d2ViZW5naW5lCiB2ZXJzaW9uPTUuMTUuMTYKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIF92ZXJz aW9uPSIke3ZlcnNpb259LWx0cyIKIF9jaHJvbWl1bV9jb21taXQ9MjA3YzJhYzQ1Y2EzMzg2ZDE1 Mzc3MGM2YjBkMmVhMmVjMjFjYTg4MAogYXJjaHM9Ing4Nl82NCogaTY4NiogYXJtdls2N10qIHBw YzY0KiBhYXJjaDY0KiIKIGNyZWF0ZV93cmtzcmM9eWVzCiBidWlsZF9zdHlsZT1xbWFrZQogY29u ZmlndXJlX2FyZ3M9Ii0tCi0gLXdlYmVuZ2luZS1pY3UgLXdlYmVuZ2luZS1mZm1wZWcgLXdlYmVu Z2luZS1vcHVzIC13ZWJlbmdpbmUtd2VicAorIC13ZWJlbmdpbmUtaWN1IC1zeXN0ZW0tZmZtcGVn IC13ZWJlbmdpbmUtb3B1cyAtd2ViZW5naW5lLXdlYnAKICAtd2ViZW5naW5lLXBlcHBlci1wbHVn aW5zIC13ZWJlbmdpbmUtcHJpbnRpbmctYW5kLXBkZiAtd2ViZW5naW5lLXByb3ByaWV0YXJ5LWNv ZGVjcwogIC13ZWJlbmdpbmUtcHVsc2VhdWRpbyAtd2ViZW5naW5lLXNwZWxsY2hlY2tlciAtd2Vi ZW5naW5lLXdlYnJ0YyAtd2ViZW5naW5lLWdlb2xvY2F0aW9uCiAgLXdlYmVuZ2luZS1rZXJiZXJv cyAtbm8td2ViZW5naW5lLWVtYmVkZGVkLWJ1aWxkICQodm9wdF9pZiBzbmRpbyAnJyAnLW5vJykt d2ViZW5naW5lLXNuZGlvCgpGcm9tIGI4MWEwM2UzMTYzOThhNjhlYWU3N2M3YWNjOGU5YzhmYTM0 OTI5ODAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFp bC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NTEgLTA0MDAKU3ViamVjdDogW1BB VENIIDA1OC8xMDldIHF0NTogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL3F0NS90 ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlv bigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcXQ1L3RlbXBsYXRlIGIvc3JjcGtncy9xdDUvdGVt cGxhdGUKaW5kZXggMGY4MjAzZTg5OWM2M2YuLmU1N2UxNTkzNDQ1MjA0IDEwMDY0NAotLS0gYS9z cmNwa2dzL3F0NS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3F0NS90ZW1wbGF0ZQpAQCAtMyw3ICsz LDcgQEAKICMgcmV2YnVtcCBsaWJxdHhkZyBhZnRlciBidW1waW5nIHBhdGNoIHZlcnNpb24KIHBr Z25hbWU9cXQ1CiB2ZXJzaW9uPTUuMTUuMTErMjAyMzExMjQKLXJldmlzaW9uPTMKK3JldmlzaW9u PTQKICMgY29tbWl0IDQ3NjVmYTFkZjdhODM3ZGI5YzFmODljNGRhMGRkNzZiNzRiYjVmYWIKICMg YmFzZSByZXBvOiBodHRwczovL2ludmVudC5rZGUub3JnL3F0L3F0L3F0NQogYnVpbGRfc3R5bGU9 bWV0YQoKRnJvbSAwMDdhMDg2MjY4N2YwMTMyZTNhZGQ1MjI4NDI1YzM0OWJiYmRmNjBhIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRl OiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjUxIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNTkvMTA5 XSBxdGF2OiByZXZidW1wIGZvciBmZm1wZWc0CgotLS0KIHNyY3BrZ3MvcXRhdi90ZW1wbGF0ZSB8 IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0YXYvdGVtcGxhdGUgYi9zcmNwa2dzL3F0YXYvdGVtcGxh dGUKaW5kZXggNzc1ZDVhMTM5YTllZmEuLmFhNjllMjEzYzk4NGIwIDEwMDY0NAotLS0gYS9zcmNw a2dzL3F0YXYvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9xdGF2L3RlbXBsYXRlCkBAIC0xLDEwICsx LDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdxdGF2JwogcGtnbmFtZT1xdGF2CiB2ZXJzaW9u PTEuMTMuMAotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9cW1ha2UKIGhvc3Rt YWtlZGVwZW5kcz0icXQ1LXFtYWtlIHF0NS1ob3N0LXRvb2xzIgotbWFrZWRlcGVuZHM9ImZmbXBl Zy1kZXZlbCBsaWJhc3MtZGV2ZWwgbGlib3BlbmFsLWRldmVsCittYWtlZGVwZW5kcz0iZmZtcGVn NC1kZXZlbCBsaWJhc3MtZGV2ZWwgbGlib3BlbmFsLWRldmVsCiAgbGlidmEtZ2x4LWRldmVsIGxp Ylh2LWRldmVsIHB1bHNlYXVkaW8tZGV2ZWwKICBxdDUtZGVjbGFyYXRpdmUtZGV2ZWwgcXQ1LXN2 Zy1kZXZlbAogIHF0NS1xdWlja2NvbnRyb2xzIgoKRnJvbSA4ZTE4MjkwYWQyMTQxYjhmODBiM2U4 NTkzNDNiZDRiMTQ4MjJhMGNlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8 emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjUxIC0wNDAw ClN1YmplY3Q6IFtQQVRDSCAwNjAvMTA5XSByZXRyb2FyY2g6IHJldmJ1bXAgZm9yIGZmbXBlZzYK Ci0tLQogc3JjcGtncy9yZXRyb2FyY2gvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwg MSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3JldHJv YXJjaC90ZW1wbGF0ZSBiL3NyY3BrZ3MvcmV0cm9hcmNoL3RlbXBsYXRlCmluZGV4IDU0MjlkMTNl ZjNlZWE0Li4yZTBkNWNkOTY4MGI2NyAxMDA2NDQKLS0tIGEvc3JjcGtncy9yZXRyb2FyY2gvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9yZXRyb2FyY2gvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdyZXRyb2FyY2gnCiBwa2duYW1lPXJldHJvYXJjaAogdmVyc2lv bj0xLjE2LjAuMwotcmV2aXNpb249MworcmV2aXNpb249NAogYnVpbGRfc3R5bGU9Y29uZmlndXJl CiBjb25maWd1cmVfYXJncz0iLS1wcmVmaXg9L3VzciAtLXN5c2NvbmZkaXI9L2V0YyAtLWVuYWJs ZS1uZXR3b3JraW5nCiAgLS1lbmFibGUtdWRldiAtLWRpc2FibGUtYnVpbHRpbmZsYWMgLS1kaXNh YmxlLWJ1aWx0aW5nbHNsYW5nCgpGcm9tIDQzODFkMGUzOGFiZWE1MDhkN2YwNjlhZjJmMTkxYjhk YWEwNzdjMDIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBn bWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NTEgLTA0MDAKU3ViamVjdDog W1BBVENIIDA2MS8xMDldIHNjcmNweTogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dz L3NjcmNweS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwg MSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2NyY3B5L3RlbXBsYXRlIGIvc3Jj cGtncy9zY3JjcHkvdGVtcGxhdGUKaW5kZXggZDQwNjUxYWQ4ZGM4MzUuLjNlYzcxMzliZTVjMGM1 IDEwMDY0NAotLS0gYS9zcmNwa2dzL3NjcmNweS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3NjcmNw eS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3NjcmNweScK IHBrZ25hbWU9c2NyY3B5CiB2ZXJzaW9uPTIuNAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVp bGRfc3R5bGU9bWVzb24KIGNvbmZpZ3VyZV9hcmdzPSItRGNvbXBpbGVfc2VydmVyPWZhbHNlCiAg LURwcmVidWlsdF9zZXJ2ZXI9L3Vzci9zaGFyZS9zY3JjcHkvc2NyY3B5LXNlcnZlci12JHt2ZXJz aW9ufSIKCkZyb20gODI0ZjE1Y2M2MDE5YzdmMzU1ZTliZTVlNzQ0MTA0ODkzN2UyMmY0NCBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0 ZTogVHVlLCAxNyBPY3QgMjAyMyAwODo1NDoxMSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDYyLzEw OV0gTmV3IHBhY2thZ2U6IHNwZXgteCByZXBsYWNlcyBzcGVrLWFsdGVybmF0aXZlIGZvcgogZmZt cGVnNgoKLS0tCiBzcmNwa2dzL3NwZWstYWx0ZXJuYXRpdmUgICAgICAgICAgICAgICAgICAgICAg fCAgMSArCiBzcmNwa2dzL3NwZWsteC9wYXRjaGVzL211c2wucGF0Y2ggICAgICAgICAgICAgfCAg NyArKysrKysKIHNyY3BrZ3Mve3NwZWstYWx0ZXJuYXRpdmUgPT4gc3Blay14fS90ZW1wbGF0ZSB8 IDIyICsrKysrKysrKysrKy0tLS0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygr KSwgOCBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL3NwZWstYWx0ZXJu YXRpdmUKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3NwZWsteC9wYXRjaGVzL211c2wucGF0 Y2gKIHJlbmFtZSBzcmNwa2dzL3tzcGVrLWFsdGVybmF0aXZlID0+IHNwZWsteH0vdGVtcGxhdGUg KDUyJSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3NwZWstYWx0ZXJuYXRpdmUgYi9zcmNwa2dzL3Nw ZWstYWx0ZXJuYXRpdmUKbmV3IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAwMDAu Ljc2NjQ4MjM2ZGE3MDE3Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9zcGVrLWFsdGVybmF0 aXZlCkBAIC0wLDAgKzEgQEAKK3NwZWsteApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlm ZiAtLWdpdCBhL3NyY3BrZ3Mvc3Blay14L3BhdGNoZXMvbXVzbC5wYXRjaCBiL3NyY3BrZ3Mvc3Bl ay14L3BhdGNoZXMvbXVzbC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw MDAwMDAwMC4uNjYyZjQ1OTM2ZmViYzYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3NwZWst eC9wYXRjaGVzL211c2wucGF0Y2gKQEAgLTAsMCArMSw3IEBACistLS0gYS90ZXN0cy9wZXJmLmNj CTIwMjQtMDMtMDkgMTc6MTM6NDkuMDg2NjAzNDE4IC0wNTAwCisrKysgYi90ZXN0cy9wZXJmLmNj CTIwMjQtMDMtMDkgMTc6MTM6NTkuNDUzNjAzNzUzIC0wNTAwCitAQCAtMSwzICsxLDQgQEAKKysj aW5jbHVkZSA8Y3N0ZGludD4KKyAjaW5jbHVkZSA8Y3N0ZGxpYj4KKyAjaW5jbHVkZSA8aW9zdHJl YW0+CisgI2luY2x1ZGUgPGZzdHJlYW0+CmRpZmYgLS1naXQgYS9zcmNwa2dzL3NwZWstYWx0ZXJu YXRpdmUvdGVtcGxhdGUgYi9zcmNwa2dzL3NwZWsteC90ZW1wbGF0ZQpzaW1pbGFyaXR5IGluZGV4 IDUyJQpyZW5hbWUgZnJvbSBzcmNwa2dzL3NwZWstYWx0ZXJuYXRpdmUvdGVtcGxhdGUKcmVuYW1l IHRvIHNyY3BrZ3Mvc3Blay14L3RlbXBsYXRlCmluZGV4IGQ3YjU1Yzc3NmIxZDQzLi4zZGVkNmMy YzMyM2U0ZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9zcGVrLWFsdGVybmF0aXZlL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3Mvc3Blay14L3RlbXBsYXRlCkBAIC0xLDE4ICsxLDE4IEBACi0jIFRlbXBsYXRl IGZpbGUgZm9yICdzcGVrLWFsdGVybmF0aXZlJwotcGtnbmFtZT1zcGVrLWFsdGVybmF0aXZlCi12 ZXJzaW9uPTAuOC4yLjMKLXJldmlzaW9uPTIKKyMgVGVtcGxhdGUgZmlsZSBmb3IgJ3NwZWsteCcK K3BrZ25hbWU9c3Blay14Cit2ZXJzaW9uPTAuOS4zCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1n bnUtY29uZmlndXJlCiBob3N0bWFrZWRlcGVuZHM9ImF1dG9tYWtlIGdldHRleHQtZGV2ZWwgaW50 bHRvb2wgbGlidG9vbCBwa2ctY29uZmlnCiAgd3hXaWRnZXRzLWNvbW1vbiB3eFdpZGdldHMtZ3Rr My1kZXZlbCIKIG1ha2VkZXBlbmRzPSJmZm1wZWctZGV2ZWwgd3hXaWRnZXRzLWd0azMtZGV2ZWwi CiBkZXBlbmRzPSJmZm1wZWciCiBzaG9ydF9kZXNjPSJBY291c3RpYyBzcGVjdHJ1bSBhbmFseXNl ciIKLW1haW50YWluZXI9IkthcnRpayBTaW5naCA8a2FydGlrLnlud2FAZ21haWwuY29tPiIKK21h aW50YWluZXI9InpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+IgogbGljZW5zZT0iR1BMLTMuMC1v ci1sYXRlciIKLWhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vd2l0aG1vcnRlbi9zcGVrLWFs dGVybmF0aXZlIgotZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vd2l0aG1vcnRlbi9zcGVr LWFsdGVybmF0aXZlL2FyY2hpdmUvJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT0iMDA3YmE0 Yjg0YTMxMGIwNzhlMzc4YWE4NGM4ZTgwNzgzZGI1ODIxNDM3YTc1N2E0ODhjM2VjZWMzNzdlNmIy YSIKK2hvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vTWlrZVdhbmcwMDAwMDAvc3Blay14Igor ZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vTWlrZVdhbmcwMDAwMDAvc3Blay14L2FyY2hp dmUvdiR7dmVyc2lvbn0udGFyLmd6IgorY2hlY2tzdW09IjdmNGIxMDk5MDMzMzNjZGQzMTBhYjJi OTE3NmYwZGM0OWE1NjU4OTEzNzZlMjgxYTIzM2QzNDJjZWRmOTBlZjciCiAKIENYWEZMQUdTPSIt RF9MQVJHRUZJTEVfU09VUkNFIC1EX0ZJTEVfT0ZGU0VUX0JJVFM9NjQiCiAKQEAgLTIyLDMgKzIy LDkgQEAgZXhwb3J0IFdYX0NPTkZJR19OQU1FPSJ3eC1jb25maWctZ3RrMyIKIHByZV9jb25maWd1 cmUoKSB7CiAJTk9DT05GSUdVUkU9MSAuL2F1dG9nZW4uc2gKIH0KKworc3Blay1hbHRlcm5hdGl2 ZV9wYWNrYWdlKCkgeworCWRlcGVuZHM9InNwZWsteCIKKwlzaG9ydF9kZXNjKz0iIC0gdHJhbnNp dGlvbmFsIGR1bW15IHBhY2thZ2UiCisJYnVpbGRfc3R5bGU9bWV0YQorfQoKRnJvbSA1ZWZiZDAy MWUxMTI5OTI2ODNkOTI0Y2FiZTk4YzMwNGE5Zjg5YTAzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIz IDIwOjAxOjUxIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNjMvMTA5XSBzc3I6IHJldmJ1bXAgZm9y IGZmbXBlZzYKCi0tLQogLi4uLzAwMDEtRml4LWJ1aWxkLXdpdGgtZmZtcGVnLTUuMC5wYXRjaCAg ICAgIHwgMjQxICsrKysrKysrKysrKysrKysrKwogc3JjcGtncy9zc3IvdGVtcGxhdGUgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgICAyICstCiAyIGZpbGVzIGNoYW5nZWQsIDI0MiBpbnNlcnRp b25zKCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9zc3IvcGF0 Y2hlcy8wMDAxLUZpeC1idWlsZC13aXRoLWZmbXBlZy01LjAucGF0Y2gKCmRpZmYgLS1naXQgYS9z cmNwa2dzL3Nzci9wYXRjaGVzLzAwMDEtRml4LWJ1aWxkLXdpdGgtZmZtcGVnLTUuMC5wYXRjaCBi L3NyY3BrZ3Mvc3NyL3BhdGNoZXMvMDAwMS1GaXgtYnVpbGQtd2l0aC1mZm1wZWctNS4wLnBhdGNo Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi40YzA2OWI1YTlmYzQ2 NAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mvc3NyL3BhdGNoZXMvMDAwMS1GaXgtYnVpbGQt d2l0aC1mZm1wZWctNS4wLnBhdGNoCkBAIC0wLDAgKzEsMjQxIEBACitGcm9tIGY0Y2JkZTM4MDIx ZDkzMzBkYzczZDJlM2RmYThhNzBkYTNmZjU3MjEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitG cm9tOiA9P1VURi04P3E/QmVybmhhcmQ9MjBSb3NlbmtyPUMzPUE0bnplcj89IDxiZXJvQGxpbmRl di5jaD4KK0RhdGU6IFN1biwgMTYgSmFuIDIwMjIgMDI6NDA6MDQgKzAxMDAKK1N1YmplY3Q6IFtQ QVRDSF0gRml4IGJ1aWxkIHdpdGggZmZtcGVnIDUuMAorTUlNRS1WZXJzaW9uOiAxLjAKK0NvbnRl bnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOAorQ29udGVudC1UcmFuc2Zlci1FbmNv ZGluZzogOGJpdAorCitBZGFwdCB0byBmZm1wZWcgNS4wIHJlcXVpcmluZyBtb3JlIGNvbnN0LW5l c3MgZm9yIEFWQ29kZWMuCisKK1NpZ25lZC1vZmYtYnk6IEJlcm5oYXJkIFJvc2Vua3LDpG56ZXIg PGJlcm9AbGluZGV2LmNoPgorLS0tCisgc3JjL0FWL091dHB1dC9BdWRpb0VuY29kZXIuY3BwIHwg IDYgKysrLS0tCisgc3JjL0FWL091dHB1dC9BdWRpb0VuY29kZXIuaCAgIHwgIDQgKystLQorIHNy Yy9BVi9PdXRwdXQvQmFzZUVuY29kZXIuY3BwICB8ICA0ICsrLS0KKyBzcmMvQVYvT3V0cHV0L0Jh c2VFbmNvZGVyLmggICAgfCAgNCArKy0tCisgc3JjL0FWL091dHB1dC9NdXhlci5jcHAgICAgICAg IHwgMTIgKysrKysrLS0tLS0tCisgc3JjL0FWL091dHB1dC9NdXhlci5oICAgICAgICAgIHwgIDQg KystLQorIHNyYy9BVi9PdXRwdXQvVmlkZW9FbmNvZGVyLmNwcCB8ICA2ICsrKy0tLQorIHNyYy9B Vi9PdXRwdXQvVmlkZW9FbmNvZGVyLmggICB8ICA0ICsrLS0KKyA4IGZpbGVzIGNoYW5nZWQsIDIy IGluc2VydGlvbnMoKyksIDIyIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvc3JjL0FWL091 dHB1dC9BdWRpb0VuY29kZXIuY3BwIGIvc3JjL0FWL091dHB1dC9BdWRpb0VuY29kZXIuY3BwCitp bmRleCAzNGQwMTVjLi5jZWZjMmUwIDEwMDY0NAorLS0tIGEvc3JjL0FWL091dHB1dC9BdWRpb0Vu Y29kZXIuY3BwCisrKysgYi9zcmMvQVYvT3V0cHV0L0F1ZGlvRW5jb2Rlci5jcHAKK0BAIC0zNCw3 ICszNCw3IEBAIGNvbnN0IHN0ZDo6dmVjdG9yPEF1ZGlvRW5jb2Rlcjo6U2FtcGxlRm9ybWF0RGF0 YT4gQXVkaW9FbmNvZGVyOjpTVVBQT1JURURfU0FNUExFCisgCisgY29uc3QgdW5zaWduZWQgaW50 IEF1ZGlvRW5jb2Rlcjo6REVGQVVMVF9GUkFNRV9TQU1QTEVTID0gMTAyNDsKKyAKKy1BdWRpb0Vu Y29kZXI6OkF1ZGlvRW5jb2RlcihNdXhlciogbXV4ZXIsIEFWU3RyZWFtKiBzdHJlYW0sIEFWQ29k ZWNDb250ZXh0ICpjb2RlY19jb250ZXh0LCBBVkNvZGVjKiBjb2RlYywgQVZEaWN0aW9uYXJ5Kiog b3B0aW9ucykKKytBdWRpb0VuY29kZXI6OkF1ZGlvRW5jb2RlcihNdXhlciogbXV4ZXIsIEFWU3Ry ZWFtKiBzdHJlYW0sIEFWQ29kZWNDb250ZXh0ICpjb2RlY19jb250ZXh0LCBjb25zdCBBVkNvZGVj KiBjb2RlYywgQVZEaWN0aW9uYXJ5Kiogb3B0aW9ucykKKyAJOiBCYXNlRW5jb2RlcihtdXhlciwg c3RyZWFtLCBjb2RlY19jb250ZXh0LCBjb2RlYywgb3B0aW9ucykgeworIAorICNpZiAhU1NSX1VT RV9BVkNPREVDX0VOQ09ERV9BVURJTzIKK0BAIC03Nyw3ICs3Nyw3IEBAIHVuc2lnbmVkIGludCBB dWRpb0VuY29kZXI6OkdldFNhbXBsZVJhdGUoKSB7CisgfQorIAorIGJvb2wgQXVkaW9FbmNvZGVy OjpBVkNvZGVjSXNTdXBwb3J0ZWQoY29uc3QgUVN0cmluZyYgY29kZWNfbmFtZSkgeworLQlBVkNv ZGVjICpjb2RlYyA9IGF2Y29kZWNfZmluZF9lbmNvZGVyX2J5X25hbWUoY29kZWNfbmFtZS50b1V0 ZjgoKS5jb25zdERhdGEoKSk7CisrCWNvbnN0IEFWQ29kZWMgKmNvZGVjID0gYXZjb2RlY19maW5k X2VuY29kZXJfYnlfbmFtZShjb2RlY19uYW1lLnRvVXRmOCgpLmNvbnN0RGF0YSgpKTsKKyAJaWYo Y29kZWMgPT0gTlVMTCkKKyAJCXJldHVybiBmYWxzZTsKKyAJaWYoIWF2X2NvZGVjX2lzX2VuY29k ZXIoY29kZWMpKQorQEAgLTkzLDcgKzkzLDcgQEAgYm9vbCBBdWRpb0VuY29kZXI6OkFWQ29kZWNJ c1N1cHBvcnRlZChjb25zdCBRU3RyaW5nJiBjb2RlY19uYW1lKSB7CisgCXJldHVybiBmYWxzZTsK KyB9CisgCistdm9pZCBBdWRpb0VuY29kZXI6OlByZXBhcmVTdHJlYW0oQVZTdHJlYW0qIHN0cmVh bSwgQVZDb2RlY0NvbnRleHQqIGNvZGVjX2NvbnRleHQsIEFWQ29kZWMqIGNvZGVjLCBBVkRpY3Rp b25hcnkqKiBvcHRpb25zLCBjb25zdCBzdGQ6OnZlY3RvcjxzdGQ6OnBhaXI8UVN0cmluZywgUVN0 cmluZz4gPiYgY29kZWNfb3B0aW9ucywKKyt2b2lkIEF1ZGlvRW5jb2Rlcjo6UHJlcGFyZVN0cmVh bShBVlN0cmVhbSogc3RyZWFtLCBBVkNvZGVjQ29udGV4dCogY29kZWNfY29udGV4dCwgY29uc3Qg QVZDb2RlYyogY29kZWMsIEFWRGljdGlvbmFyeSoqIG9wdGlvbnMsIGNvbnN0IHN0ZDo6dmVjdG9y PHN0ZDo6cGFpcjxRU3RyaW5nLCBRU3RyaW5nPiA+JiBjb2RlY19vcHRpb25zLAorIAkJCQkJCQkJ IHVuc2lnbmVkIGludCBiaXRfcmF0ZSwgdW5zaWduZWQgaW50IGNoYW5uZWxzLCB1bnNpZ25lZCBp bnQgc2FtcGxlX3JhdGUpIHsKKyAKKyAJaWYoY2hhbm5lbHMgPT0gMCkgeworZGlmZiAtLWdpdCBh L3NyYy9BVi9PdXRwdXQvQXVkaW9FbmNvZGVyLmggYi9zcmMvQVYvT3V0cHV0L0F1ZGlvRW5jb2Rl ci5oCitpbmRleCBjOTMyNzhjLi5hZTljODJlIDEwMDY0NAorLS0tIGEvc3JjL0FWL091dHB1dC9B dWRpb0VuY29kZXIuaAorKysrIGIvc3JjL0FWL091dHB1dC9BdWRpb0VuY29kZXIuaAorQEAgLTQw LDcgKzQwLDcgQEAgcHJpdmF0ZToKKyAjZW5kaWYKKyAKKyBwdWJsaWM6CistCUF1ZGlvRW5jb2Rl cihNdXhlciogbXV4ZXIsIEFWU3RyZWFtKiBzdHJlYW0sIEFWQ29kZWNDb250ZXh0KiBjb2RlY19j b250ZXh0LCBBVkNvZGVjKiBjb2RlYywgQVZEaWN0aW9uYXJ5Kiogb3B0aW9ucyk7CisrCUF1ZGlv RW5jb2RlcihNdXhlciogbXV4ZXIsIEFWU3RyZWFtKiBzdHJlYW0sIEFWQ29kZWNDb250ZXh0KiBj b2RlY19jb250ZXh0LCBjb25zdCBBVkNvZGVjKiBjb2RlYywgQVZEaWN0aW9uYXJ5Kiogb3B0aW9u cyk7CisgCX5BdWRpb0VuY29kZXIoKTsKKyAKKyAJLy8gUmV0dXJucyB0aGUgcmVxdWlyZWQgZnJh bWUgc2l6ZSwgaS5lLiB0aGUgbnVtYmVyIG9mIHNhbXBsZXMgKGZvciBlYWNoIGNoYW5uZWwpLgor QEAgLTU3LDcgKzU3LDcgQEAgcHVibGljOgorIAorIHB1YmxpYzoKKyAJc3RhdGljIGJvb2wgQVZD b2RlY0lzU3VwcG9ydGVkKGNvbnN0IFFTdHJpbmcmIGNvZGVjX25hbWUpOworLQlzdGF0aWMgdm9p ZCBQcmVwYXJlU3RyZWFtKEFWU3RyZWFtKiBzdHJlYW0sIEFWQ29kZWNDb250ZXh0KiBjb2RlY19j b250ZXh0LCBBVkNvZGVjKiBjb2RlYywgQVZEaWN0aW9uYXJ5Kiogb3B0aW9ucywgY29uc3Qgc3Rk Ojp2ZWN0b3I8c3RkOjpwYWlyPFFTdHJpbmcsIFFTdHJpbmc+ID4mIGNvZGVjX29wdGlvbnMsCisr CXN0YXRpYyB2b2lkIFByZXBhcmVTdHJlYW0oQVZTdHJlYW0qIHN0cmVhbSwgQVZDb2RlY0NvbnRl eHQqIGNvZGVjX2NvbnRleHQsIGNvbnN0IEFWQ29kZWMqIGNvZGVjLCBBVkRpY3Rpb25hcnkqKiBv cHRpb25zLCBjb25zdCBzdGQ6OnZlY3RvcjxzdGQ6OnBhaXI8UVN0cmluZywgUVN0cmluZz4gPiYg Y29kZWNfb3B0aW9ucywKKyAJCQkJCQkJICB1bnNpZ25lZCBpbnQgYml0X3JhdGUsIHVuc2lnbmVk IGludCBjaGFubmVscywgdW5zaWduZWQgaW50IHNhbXBsZV9yYXRlKTsKKyAKKyBwcml2YXRlOgor ZGlmZiAtLWdpdCBhL3NyYy9BVi9PdXRwdXQvQmFzZUVuY29kZXIuY3BwIGIvc3JjL0FWL091dHB1 dC9CYXNlRW5jb2Rlci5jcHAKK2luZGV4IDdjMDFlZjMuLjQ3ODBhYWYgMTAwNjQ0CistLS0gYS9z cmMvQVYvT3V0cHV0L0Jhc2VFbmNvZGVyLmNwcAorKysrIGIvc3JjL0FWL091dHB1dC9CYXNlRW5j b2Rlci5jcHAKK0BAIC00Miw3ICs0Miw3IEBAIGRvdWJsZSBQYXJzZUNvZGVjT3B0aW9uRG91Ymxl KGNvbnN0IFFTdHJpbmcmIGtleSwgY29uc3QgUVN0cmluZyYgdmFsdWUsIGRvdWJsZSBtCisgCXJl dHVybiBjbGFtcCh2YWx1ZV9kb3VibGUsIG1pbiwgbWF4KSAqIG11bHRpcGx5OworIH0KKyAKKy1C YXNlRW5jb2Rlcjo6QmFzZUVuY29kZXIoTXV4ZXIqIG11eGVyLCBBVlN0cmVhbSogc3RyZWFtLCBB VkNvZGVjQ29udGV4dCogY29kZWNfY29udGV4dCwgQVZDb2RlYyogY29kZWMsIEFWRGljdGlvbmFy eSoqIG9wdGlvbnMpIHsKKytCYXNlRW5jb2Rlcjo6QmFzZUVuY29kZXIoTXV4ZXIqIG11eGVyLCBB VlN0cmVhbSogc3RyZWFtLCBBVkNvZGVjQ29udGV4dCogY29kZWNfY29udGV4dCwgY29uc3QgQVZD b2RlYyogY29kZWMsIEFWRGljdGlvbmFyeSoqIG9wdGlvbnMpIHsKKyAKKyAJbV9tdXhlciA9IG11 eGVyOworIAltX3N0cmVhbSA9IHN0cmVhbTsKK0BAIC0xNTcsNyArMTU3LDcgQEAgdm9pZCBCYXNl RW5jb2Rlcjo6SW5jcmVtZW50UGFja2V0Q291bnRlcigpIHsKKyAJKytsb2NrLT5tX3RvdGFsX3Bh Y2tldHM7CisgfQorIAorLXZvaWQgQmFzZUVuY29kZXI6OkluaXQoQVZDb2RlYyogY29kZWMsIEFW RGljdGlvbmFyeSoqIG9wdGlvbnMpIHsKKyt2b2lkIEJhc2VFbmNvZGVyOjpJbml0KGNvbnN0IEFW Q29kZWMqIGNvZGVjLCBBVkRpY3Rpb25hcnkqKiBvcHRpb25zKSB7CisgCisgCS8vIG9wZW4gY29k ZWMKKyAJaWYoYXZjb2RlY19vcGVuMihtX2NvZGVjX2NvbnRleHQsIGNvZGVjLCBvcHRpb25zKSA8 IDApIHsKK2RpZmYgLS1naXQgYS9zcmMvQVYvT3V0cHV0L0Jhc2VFbmNvZGVyLmggYi9zcmMvQVYv T3V0cHV0L0Jhc2VFbmNvZGVyLmgKK2luZGV4IDNkOTJmMjkuLjdmMDJiYmQgMTAwNjQ0CistLS0g YS9zcmMvQVYvT3V0cHV0L0Jhc2VFbmNvZGVyLmgKKysrKyBiL3NyYy9BVi9PdXRwdXQvQmFzZUVu Y29kZXIuaAorQEAgLTUxLDcgKzUxLDcgQEAgcHJpdmF0ZToKKyAJc3RkOjphdG9taWM8Ym9vbD4g bV9zaG91bGRfc3RvcCwgbV9zaG91bGRfZmluaXNoLCBtX2lzX2RvbmUsIG1fZXJyb3Jfb2NjdXJy ZWQ7CisgCisgcHJvdGVjdGVkOgorLQlCYXNlRW5jb2RlcihNdXhlciogbXV4ZXIsIEFWU3RyZWFt KiBzdHJlYW0sIEFWQ29kZWNDb250ZXh0KiBjb2RlY19jb250ZXh0LCBBVkNvZGVjKiBjb2RlYywg QVZEaWN0aW9uYXJ5Kiogb3B0aW9ucyk7CisrCUJhc2VFbmNvZGVyKE11eGVyKiBtdXhlciwgQVZT dHJlYW0qIHN0cmVhbSwgQVZDb2RlY0NvbnRleHQqIGNvZGVjX2NvbnRleHQsIGNvbnN0IEFWQ29k ZWMqIGNvZGVjLCBBVkRpY3Rpb25hcnkqKiBvcHRpb25zKTsKKyAKKyBwdWJsaWM6CisgCXZpcnR1 YWwgfkJhc2VFbmNvZGVyKCk7IC8vIGVuY29kZXJzIHdpbGwgYmUgZGVsZXRlZCBieSBNdXhlciwg ZG9uJ3QgZGVsZXRlIHRoZW0geW91cnNlbGYhCitAQCAtMTE3LDcgKzExNyw3IEBAIHByb3RlY3Rl ZDoKKyAJdm9pZCBJbmNyZW1lbnRQYWNrZXRDb3VudGVyKCk7CisgCisgcHJpdmF0ZToKKy0Jdm9p ZCBJbml0KEFWQ29kZWMqIGNvZGVjLCBBVkRpY3Rpb25hcnkqKiBvcHRpb25zKTsKKysJdm9pZCBJ bml0KGNvbnN0IEFWQ29kZWMqIGNvZGVjLCBBVkRpY3Rpb25hcnkqKiBvcHRpb25zKTsKKyAJdm9p ZCBGcmVlKCk7CisgCisgCXZvaWQgRW5jb2RlclRocmVhZCgpOworZGlmZiAtLWdpdCBhL3NyYy9B Vi9PdXRwdXQvTXV4ZXIuY3BwIGIvc3JjL0FWL091dHB1dC9NdXhlci5jcHAKK2luZGV4IGFkNTgz ODAuLjE0NjUwYjAgMTAwNjQ0CistLS0gYS9zcmMvQVYvT3V0cHV0L011eGVyLmNwcAorKysrIGIv c3JjL0FWL091dHB1dC9NdXhlci5jcHAKK0BAIC04Nyw3ICs4Nyw3IEBAIE11eGVyOjp+TXV4ZXIo KSB7CisgCisgVmlkZW9FbmNvZGVyKiBNdXhlcjo6QWRkVmlkZW9FbmNvZGVyKGNvbnN0IFFTdHJp bmcmIGNvZGVjX25hbWUsIGNvbnN0IHN0ZDo6dmVjdG9yPHN0ZDo6cGFpcjxRU3RyaW5nLCBRU3Ry aW5nPiA+JiBjb2RlY19vcHRpb25zLAorIAkJCQkJCQkJCSB1bnNpZ25lZCBpbnQgYml0X3JhdGUs IHVuc2lnbmVkIGludCB3aWR0aCwgdW5zaWduZWQgaW50IGhlaWdodCwgdW5zaWduZWQgaW50IGZy YW1lX3JhdGUpIHsKKy0JQVZDb2RlYyAqY29kZWMgPSBGaW5kQ29kZWMoY29kZWNfbmFtZSk7Cisr CWNvbnN0IEFWQ29kZWMgKmNvZGVjID0gRmluZENvZGVjKGNvZGVjX25hbWUpOworIAlBVkNvZGVj Q29udGV4dCAqY29kZWNfY29udGV4dCA9IE5VTEw7CisgCUFWU3RyZWFtICpzdHJlYW0gPSBBZGRT dHJlYW0oY29kZWMsICZjb2RlY19jb250ZXh0KTsKKyAJVmlkZW9FbmNvZGVyICplbmNvZGVyOwor QEAgLTExMSw3ICsxMTEsNyBAQCBWaWRlb0VuY29kZXIqIE11eGVyOjpBZGRWaWRlb0VuY29kZXIo Y29uc3QgUVN0cmluZyYgY29kZWNfbmFtZSwgY29uc3Qgc3RkOjp2ZWN0bworIAorIEF1ZGlvRW5j b2RlciogTXV4ZXI6OkFkZEF1ZGlvRW5jb2Rlcihjb25zdCBRU3RyaW5nJiBjb2RlY19uYW1lLCBj b25zdCBzdGQ6OnZlY3RvcjxzdGQ6OnBhaXI8UVN0cmluZywgUVN0cmluZz4gPiYgY29kZWNfb3B0 aW9ucywKKyAJCQkJCQkJCQkgdW5zaWduZWQgaW50IGJpdF9yYXRlLCB1bnNpZ25lZCBpbnQgY2hh bm5lbHMsIHVuc2lnbmVkIGludCBzYW1wbGVfcmF0ZSkgeworLQlBVkNvZGVjICpjb2RlYyA9IEZp bmRDb2RlYyhjb2RlY19uYW1lKTsKKysJY29uc3QgQVZDb2RlYyAqY29kZWMgPSBGaW5kQ29kZWMo Y29kZWNfbmFtZSk7CisgCUFWQ29kZWNDb250ZXh0ICpjb2RlY19jb250ZXh0ID0gTlVMTDsKKyAJ QVZTdHJlYW0gKnN0cmVhbSA9IEFkZFN0cmVhbShjb2RlYywgJmNvZGVjX2NvbnRleHQpOworIAlB dWRpb0VuY29kZXIgKmVuY29kZXI7CitAQCAtMTk0LDcgKzE5NCw3IEBAIHVuc2lnbmVkIGludCBN dXhlcjo6R2V0UXVldWVkUGFja2V0Q291bnQodW5zaWduZWQgaW50IHN0cmVhbV9pbmRleCkgewor IHZvaWQgTXV4ZXI6OkluaXQoKSB7CisgCisgCS8vIGdldCB0aGUgZm9ybWF0IHdlIHdhbnQgKHRo aXMgaXMganVzdCBhIHBvaW50ZXIsIHdlIGRvbid0IGhhdmUgdG8gZnJlZSB0aGlzKQorLQlBVk91 dHB1dEZvcm1hdCAqZm9ybWF0ID0gYXZfZ3Vlc3NfZm9ybWF0KG1fY29udGFpbmVyX25hbWUudG9V dGY4KCkuY29uc3REYXRhKCksIE5VTEwsIE5VTEwpOworKwljb25zdCBBVk91dHB1dEZvcm1hdCAq Zm9ybWF0ID0gYXZfZ3Vlc3NfZm9ybWF0KG1fY29udGFpbmVyX25hbWUudG9VdGY4KCkuY29uc3RE YXRhKCksIE5VTEwsIE5VTEwpOworIAlpZihmb3JtYXQgPT0gTlVMTCkgeworIAkJTG9nZ2VyOjpM b2dFcnJvcigiW011eGVyOjpJbml0XSAiICsgTG9nZ2VyOjp0cigiRXJyb3I6IENhbid0IGZpbmQg Y2hvc2VuIG91dHB1dCBmb3JtYXQhIikpOworIAkJdGhyb3cgTGliYXZFeGNlcHRpb24oKTsKK0BA IC0yNjEsOCArMjYxLDggQEAgdm9pZCBNdXhlcjo6RnJlZSgpIHsKKyAJfQorIH0KKyAKKy1BVkNv ZGVjKiBNdXhlcjo6RmluZENvZGVjKGNvbnN0IFFTdHJpbmcmIGNvZGVjX25hbWUpIHsKKy0JQVZD b2RlYyAqY29kZWMgPSBhdmNvZGVjX2ZpbmRfZW5jb2Rlcl9ieV9uYW1lKGNvZGVjX25hbWUudG9V dGY4KCkuY29uc3REYXRhKCkpOworK2NvbnN0IEFWQ29kZWMqIE11eGVyOjpGaW5kQ29kZWMoY29u c3QgUVN0cmluZyYgY29kZWNfbmFtZSkgeworKwljb25zdCBBVkNvZGVjICpjb2RlYyA9IGF2Y29k ZWNfZmluZF9lbmNvZGVyX2J5X25hbWUoY29kZWNfbmFtZS50b1V0ZjgoKS5jb25zdERhdGEoKSk7 CisgCWlmKGNvZGVjID09IE5VTEwpIHsKKyAJCUxvZ2dlcjo6TG9nRXJyb3IoIltNdXhlcjo6Rmlu ZENvZGVjXSAiICsgTG9nZ2VyOjp0cigiRXJyb3I6IENhbid0IGZpbmQgY29kZWMhIikpOworIAkJ dGhyb3cgTGliYXZFeGNlcHRpb24oKTsKK0BAIC0yNzAsNyArMjcwLDcgQEAgQVZDb2RlYyogTXV4 ZXI6OkZpbmRDb2RlYyhjb25zdCBRU3RyaW5nJiBjb2RlY19uYW1lKSB7CisgCXJldHVybiBjb2Rl YzsKKyB9CisgCistQVZTdHJlYW0qIE11eGVyOjpBZGRTdHJlYW0oQVZDb2RlYyogY29kZWMsIEFW Q29kZWNDb250ZXh0KiogY29kZWNfY29udGV4dCkgeworK0FWU3RyZWFtKiBNdXhlcjo6QWRkU3Ry ZWFtKGNvbnN0IEFWQ29kZWMqIGNvZGVjLCBBVkNvZGVjQ29udGV4dCoqIGNvZGVjX2NvbnRleHQp IHsKKyAJYXNzZXJ0KCFtX3N0YXJ0ZWQpOworIAlhc3NlcnQobV9mb3JtYXRfY29udGV4dC0+bmJf c3RyZWFtcyA8IE1VWEVSX01BWF9TVFJFQU1TKTsKKyAKK2RpZmYgLS1naXQgYS9zcmMvQVYvT3V0 cHV0L011eGVyLmggYi9zcmMvQVYvT3V0cHV0L011eGVyLmgKK2luZGV4IGQ3MjM0N2QuLmIxMDRi Y2IgMTAwNjQ0CistLS0gYS9zcmMvQVYvT3V0cHV0L011eGVyLmgKKysrKyBiL3NyYy9BVi9PdXRw dXQvTXV4ZXIuaAorQEAgLTExNCw4ICsxMTQsOCBAQCBwcml2YXRlOgorIAl2b2lkIEluaXQoKTsK KyAJdm9pZCBGcmVlKCk7CisgCistCUFWQ29kZWMqIEZpbmRDb2RlYyhjb25zdCBRU3RyaW5nJiBj b2RlY19uYW1lKTsKKy0JQVZTdHJlYW0qIEFkZFN0cmVhbShBVkNvZGVjKiBjb2RlYywgQVZDb2Rl Y0NvbnRleHQqKiBjb2RlY19jb250ZXh0KTsKKysJY29uc3QgQVZDb2RlYyogRmluZENvZGVjKGNv bnN0IFFTdHJpbmcmIGNvZGVjX25hbWUpOworKwlBVlN0cmVhbSogQWRkU3RyZWFtKGNvbnN0IEFW Q29kZWMqIGNvZGVjLCBBVkNvZGVjQ29udGV4dCoqIGNvZGVjX2NvbnRleHQpOworIAorIAl2b2lk IE11eGVyVGhyZWFkKCk7CisgCitkaWZmIC0tZ2l0IGEvc3JjL0FWL091dHB1dC9WaWRlb0VuY29k ZXIuY3BwIGIvc3JjL0FWL091dHB1dC9WaWRlb0VuY29kZXIuY3BwCitpbmRleCA4MDg3ZThlLi5m YzhiNWQxIDEwMDY0NAorLS0tIGEvc3JjL0FWL091dHB1dC9WaWRlb0VuY29kZXIuY3BwCisrKysg Yi9zcmMvQVYvT3V0cHV0L1ZpZGVvRW5jb2Rlci5jcHAKK0BAIC0zNCw3ICszNCw3IEBAIGNvbnN0 IHN0ZDo6dmVjdG9yPFZpZGVvRW5jb2Rlcjo6UGl4ZWxGb3JtYXREYXRhPiBWaWRlb0VuY29kZXI6 OlNVUFBPUlRFRF9QSVhFTF9GCisgCXsicmdiIiwgQVZfUElYX0ZNVF9SR0IyNCwgZmFsc2V9LAor IH07CisgCistVmlkZW9FbmNvZGVyOjpWaWRlb0VuY29kZXIoTXV4ZXIqIG11eGVyLCBBVlN0cmVh bSogc3RyZWFtLCBBVkNvZGVjQ29udGV4dCogY29kZWNfY29udGV4dCwgQVZDb2RlYyogY29kZWMs IEFWRGljdGlvbmFyeSoqIG9wdGlvbnMpCisrVmlkZW9FbmNvZGVyOjpWaWRlb0VuY29kZXIoTXV4 ZXIqIG11eGVyLCBBVlN0cmVhbSogc3RyZWFtLCBBVkNvZGVjQ29udGV4dCogY29kZWNfY29udGV4 dCwgY29uc3QgQVZDb2RlYyogY29kZWMsIEFWRGljdGlvbmFyeSoqIG9wdGlvbnMpCisgCTogQmFz ZUVuY29kZXIobXV4ZXIsIHN0cmVhbSwgY29kZWNfY29udGV4dCwgY29kZWMsIG9wdGlvbnMpIHsK KyAKKyAjaWYgIVNTUl9VU0VfQVZDT0RFQ19FTkNPREVfVklERU8yCitAQCAtOTUsNyArOTUsNyBA QCB1bnNpZ25lZCBpbnQgVmlkZW9FbmNvZGVyOjpHZXRGcmFtZVJhdGUoKSB7CisgfQorIAorIGJv b2wgVmlkZW9FbmNvZGVyOjpBVkNvZGVjSXNTdXBwb3J0ZWQoY29uc3QgUVN0cmluZyYgY29kZWNf bmFtZSkgeworLQlBVkNvZGVjICpjb2RlYyA9IGF2Y29kZWNfZmluZF9lbmNvZGVyX2J5X25hbWUo Y29kZWNfbmFtZS50b1V0ZjgoKS5jb25zdERhdGEoKSk7CisrCWNvbnN0IEFWQ29kZWMgKmNvZGVj ID0gYXZjb2RlY19maW5kX2VuY29kZXJfYnlfbmFtZShjb2RlY19uYW1lLnRvVXRmOCgpLmNvbnN0 RGF0YSgpKTsKKyAJaWYoY29kZWMgPT0gTlVMTCkKKyAJCXJldHVybiBmYWxzZTsKKyAJaWYoIWF2 X2NvZGVjX2lzX2VuY29kZXIoY29kZWMpKQorQEAgLTExMSw3ICsxMTEsNyBAQCBib29sIFZpZGVv RW5jb2Rlcjo6QVZDb2RlY0lzU3VwcG9ydGVkKGNvbnN0IFFTdHJpbmcmIGNvZGVjX25hbWUpIHsK KyAJcmV0dXJuIGZhbHNlOworIH0KKyAKKy12b2lkIFZpZGVvRW5jb2Rlcjo6UHJlcGFyZVN0cmVh bShBVlN0cmVhbSogc3RyZWFtLCBBVkNvZGVjQ29udGV4dCogY29kZWNfY29udGV4dCwgQVZDb2Rl YyogY29kZWMsIEFWRGljdGlvbmFyeSoqIG9wdGlvbnMsIGNvbnN0IHN0ZDo6dmVjdG9yPHN0ZDo6 cGFpcjxRU3RyaW5nLCBRU3RyaW5nPiA+JiBjb2RlY19vcHRpb25zLAorK3ZvaWQgVmlkZW9FbmNv ZGVyOjpQcmVwYXJlU3RyZWFtKEFWU3RyZWFtKiBzdHJlYW0sIEFWQ29kZWNDb250ZXh0KiBjb2Rl Y19jb250ZXh0LCBjb25zdCBBVkNvZGVjKiBjb2RlYywgQVZEaWN0aW9uYXJ5Kiogb3B0aW9ucywg Y29uc3Qgc3RkOjp2ZWN0b3I8c3RkOjpwYWlyPFFTdHJpbmcsIFFTdHJpbmc+ID4mIGNvZGVjX29w dGlvbnMsCisgCQkJCQkJCQkgdW5zaWduZWQgaW50IGJpdF9yYXRlLCB1bnNpZ25lZCBpbnQgd2lk dGgsIHVuc2lnbmVkIGludCBoZWlnaHQsIHVuc2lnbmVkIGludCBmcmFtZV9yYXRlKSB7CisgCisg CWlmKHdpZHRoID09IDAgfHwgaGVpZ2h0ID09IDApIHsKK2RpZmYgLS1naXQgYS9zcmMvQVYvT3V0 cHV0L1ZpZGVvRW5jb2Rlci5oIGIvc3JjL0FWL091dHB1dC9WaWRlb0VuY29kZXIuaAoraW5kZXgg Y2I3Y2EyNy4uNjhkODcyZSAxMDA2NDQKKy0tLSBhL3NyYy9BVi9PdXRwdXQvVmlkZW9FbmNvZGVy LmgKKysrKyBiL3NyYy9BVi9PdXRwdXQvVmlkZW9FbmNvZGVyLmgKK0BAIC00MCw3ICs0MCw3IEBA IHByaXZhdGU6CisgI2VuZGlmCisgCisgcHVibGljOgorLQlWaWRlb0VuY29kZXIoTXV4ZXIqIG11 eGVyLCBBVlN0cmVhbSogc3RyZWFtLCBBVkNvZGVjQ29udGV4dCogY29kZWNfY29udGV4dCwgQVZD b2RlYyogY29kZWMsIEFWRGljdGlvbmFyeSoqIG9wdGlvbnMpOworKwlWaWRlb0VuY29kZXIoTXV4 ZXIqIG11eGVyLCBBVlN0cmVhbSogc3RyZWFtLCBBVkNvZGVjQ29udGV4dCogY29kZWNfY29udGV4 dCwgY29uc3QgQVZDb2RlYyogY29kZWMsIEFWRGljdGlvbmFyeSoqIG9wdGlvbnMpOworIAl+Vmlk ZW9FbmNvZGVyKCk7CisgCisgCS8vIFJldHVybnMgdGhlIHJlcXVpcmVkIHBpeGVsIGZvcm1hdC4K K0BAIC01NSw3ICs1NSw3IEBAIHB1YmxpYzoKKyAKKyBwdWJsaWM6CisgCXN0YXRpYyBib29sIEFW Q29kZWNJc1N1cHBvcnRlZChjb25zdCBRU3RyaW5nJiBjb2RlY19uYW1lKTsKKy0Jc3RhdGljIHZv aWQgUHJlcGFyZVN0cmVhbShBVlN0cmVhbSogc3RyZWFtLCBBVkNvZGVjQ29udGV4dCogY29kZWNf Y29udGV4dCwgQVZDb2RlYyogY29kZWMsIEFWRGljdGlvbmFyeSoqIG9wdGlvbnMsIGNvbnN0IHN0 ZDo6dmVjdG9yPHN0ZDo6cGFpcjxRU3RyaW5nLCBRU3RyaW5nPiA+JiBjb2RlY19vcHRpb25zLAor KwlzdGF0aWMgdm9pZCBQcmVwYXJlU3RyZWFtKEFWU3RyZWFtKiBzdHJlYW0sIEFWQ29kZWNDb250 ZXh0KiBjb2RlY19jb250ZXh0LCBjb25zdCBBVkNvZGVjKiBjb2RlYywgQVZEaWN0aW9uYXJ5Kiog b3B0aW9ucywgY29uc3Qgc3RkOjp2ZWN0b3I8c3RkOjpwYWlyPFFTdHJpbmcsIFFTdHJpbmc+ID4m IGNvZGVjX29wdGlvbnMsCisgCQkJCQkJCSAgdW5zaWduZWQgaW50IGJpdF9yYXRlLCB1bnNpZ25l ZCBpbnQgd2lkdGgsIHVuc2lnbmVkIGludCBoZWlnaHQsIHVuc2lnbmVkIGludCBmcmFtZV9yYXRl KTsKKyAKKyBwcml2YXRlOgorLS0gCisyLjQzLjAKKwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zc3Iv dGVtcGxhdGUgYi9zcmNwa2dzL3Nzci90ZW1wbGF0ZQppbmRleCAzMDk3NzU0ZTNjYmU1NC4uZTNj NDI2MWYxZjVhNjQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc3NyL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3Mvc3NyL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnc3Ny JwogcGtnbmFtZT1zc3IKIHZlcnNpb249MC40LjQKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1 aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURXSVRIX1FUNT1PTiIKIGhvc3RtYWtl ZGVwZW5kcz0icGtnLWNvbmZpZyIKCkZyb20gN2IzODFkMjY0YzgwNDFiYTdmYTIxNzA2NmU1ZmJj MTBiOGNkZTRmNyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1 QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo1MiAtMDQwMApTdWJqZWN0 OiBbUEFUQ0ggMDY0LzEwOV0gc3luZmlnOiByZXZidW1wIGZvciBmZm1wZWc2IGFuZCBtbHQ3Cgot LS0KIHNyY3BrZ3Mvc3luZmlnL3BhdGNoZXMvZmZtcGVnNi5wYXRjaCB8IDcxICsrKysrKysrKysr KysrKysrKysrKysrKysrKysKIHNyY3BrZ3Mvc3luZmlnL3RlbXBsYXRlICAgICAgICAgICAgICB8 ICA2ICstLQogMiBmaWxlcyBjaGFuZ2VkLCA3NCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygt KQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvc3luZmlnL3BhdGNoZXMvZmZtcGVnNi5wYXRj aAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc3luZmlnL3BhdGNoZXMvZmZtcGVnNi5wYXRjaCBiL3Ny Y3BrZ3Mvc3luZmlnL3BhdGNoZXMvZmZtcGVnNi5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwMDAwMDAwMC4uMTA3ODBiNDI3ODJmNGIKLS0tIC9kZXYvbnVsbAorKysgYi9z cmNwa2dzL3N5bmZpZy9wYXRjaGVzL2ZmbXBlZzYucGF0Y2gKQEAgLTAsMCArMSw3MSBAQAorLS0t IGEvc3JjL21vZHVsZXMvbW9kX2xpYmF2Y29kZWMvdHJndF9hdi5jcHAJMjAyMi0xMC0yNSAwOTox NDoxMi4wMDAwMDAwMDAgLTA0MDAKKysrKyBiL3NyYy9tb2R1bGVzL21vZF9saWJhdmNvZGVjL3Ry Z3RfYXYuY3BwCTIwMjMtMDUtMDUgMjE6MzQ6MTcuODk5MTk0NTU5IC0wNDAwCitAQCAtMzgsNiAr NDEsNyBAQAorIGV4dGVybiAiQyIKKyB7CisgI2lmZGVmIEhBVkVfTElCQVZGT1JNQVRfQVZGT1JN QVRfSAorKyMJaW5jbHVkZSA8bGliYXZjb2RlYy9hdmNvZGVjLmg+CisgIwlpbmNsdWRlIDxsaWJh dmZvcm1hdC9hdmZvcm1hdC5oPgorICNlbGlmIGRlZmluZWQoSEFWRV9BVkZPUk1BVF9IKQorICMJ aW5jbHVkZSA8YXZmb3JtYXQuaD4KK0BAIC0xNTUsMTEgKzE1NiwxMSBAQAorICAgICB9CisgCisg CWJvb2wgb3Blbl92aWRlb19zdHJlYW0oKSB7CistCQlpZiAoYXZjb2RlY19vcGVuMih2aWRlb19j b250ZXh0LCBOVUxMLCBOVUxMKSA8IDApIHsKKysJCWlmIChhdmNvZGVjX29wZW4yKHZpZGVvX2Nv bnRleHQsIG51bGxwdHIsIG51bGxwdHIpIDwgMCkgeworIAkJCXN5bmZpZzo6ZXJyb3IoIlRhcmdl dF9MaWJBVkNvZGVjOiBjb3VsZCBub3Qgb3BlbiB2aWRlbyBjb2RlYyIpOworIAkJCS8vIHNlZW1z IHRoZSBjYWxsaW5nIG9mIGF2Y29kZWNfZnJlZV9jb250ZXh0IGFmdGVyIGVycm9yIHdpbGwgY2F1 c2UgY3Jhc2gKKyAJCQkvLyBzbyBqdXN0IGZvcmdldCBhYm91dCB0aGlzIGNvbnRleHQKKy0JCQl2 aWRlb19jb250ZXh0ID0gTlVMTDsKKysJCQl2aWRlb19jb250ZXh0ID0gbnVsbHB0cjsKKyAJCQlj bG9zZSgpOworIAkJCXJldHVybiBmYWxzZTsKKyAgICAgICAgIH0KK0BAIC0yMzQsMTUgKzIzNSwy MSBAQAorIAkJY2xvc2UoKTsKKyAKKyAJCWlmICghYXZfcmVnaXN0ZXJlZCkgeworKyNpZiBMSUJB VkNPREVDX1ZFUlNJT05fTUFKT1IgPCA1OCAvLyBGRk1QRUcgPCA0LjAKKyAJCQlhdl9yZWdpc3Rl cl9hbGwoKTsKKysjZW5kaWYKKyAJCQlhdl9yZWdpc3RlcmVkID0gdHJ1ZTsKKyAJCX0KKyAKKyAJ CS8vIGd1ZXNzIGZvcm1hdAorLQkJQVZPdXRwdXRGb3JtYXQgKmZvcm1hdCA9IGF2X2d1ZXNzX2Zv cm1hdChOVUxMLCBmaWxlbmFtZS5jX3N0cigpLCBOVUxMKTsKKysjaWYgTElCQVZDT0RFQ19WRVJT SU9OX01BSk9SIDwgNTkgLy8gRkZNUEVHIDwgNS4wCisrCQlBVk91dHB1dEZvcm1hdCogZm9ybWF0 ID0gYXZfZ3Vlc3NfZm9ybWF0KG51bGxwdHIsIGZpbGVuYW1lLmNfc3RyKCksIG51bGxwdHIpOwor KyNlbHNlCisrCQljb25zdCBBVk91dHB1dEZvcm1hdCogZm9ybWF0ID0gYXZfZ3Vlc3NfZm9ybWF0 KG51bGxwdHIsIGZpbGVuYW1lLmNfc3RyKCksIG51bGxwdHIpOworKyNlbmRpZgorIAkJaWYgKCFm b3JtYXQpIHsKKyAJCQlzeW5maWc6Ondhcm5pbmcoIlRhcmdldF9MaWJBVkNvZGVjOiB1bmFibGUg dG8gZ3Vlc3MgdGhlIG91dHB1dCBmb3JtYXQsIGRlZmF1bHRpbmcgdG8gTVBFRyIpOworLQkJCWZv cm1hdCA9IGF2X2d1ZXNzX2Zvcm1hdCgibXBlZyIsIE5VTEwsIE5VTEwpOworKwkJCWZvcm1hdCA9 IGF2X2d1ZXNzX2Zvcm1hdCgibXBlZyIsIG51bGxwdHIsIG51bGxwdHIpOworIAkJfQorIAkJaWYg KCFmb3JtYXQpIHsKKyAJCQlzeW5maWc6OmVycm9yKCJUYXJnZXRfTGliQVZDb2RlYzogdW5hYmxl IHRvIGZpbmQgJ21wZWcnIG91dHB1dCBmb3JtYXQiKTsKK0BAIC0yNTQsNiArMjYxLDcgQEAKKyAJ CWNvbnRleHQgPSBhdmZvcm1hdF9hbGxvY19jb250ZXh0KCk7CisgCQlhc3NlcnQoY29udGV4dCk7 CisgCQljb250ZXh0LT5vZm9ybWF0ID0gZm9ybWF0OworKyNpZiBMSUJBVkNPREVDX1ZFUlNJT05f TUFKT1IgPCA1OCAvLyBGRk1QRUcgPCA0LjAKKyAJCWlmIChmaWxlbmFtZS5zaXplKCkgKyAxID4g c2l6ZW9mKGNvbnRleHQtPmZpbGVuYW1lKSkgeworIAkJCXN5bmZpZzo6ZXJyb3IoCisgCQkJCSJU YXJnZXRfTGliQVZDb2RlYzogZmlsZW5hbWUgdG9vIGxvbmcsIG1heCBsZW5ndGggaXMgJWQsIGZp bGVuYW1lIGlzICclcyciLAorQEAgLTI2Myw2ICsyNzEsMTQgQEAKKyAJCQlyZXR1cm4gZmFsc2U7 CisgCQl9CisgCQltZW1jcHkoY29udGV4dC0+ZmlsZW5hbWUsIGZpbGVuYW1lLmNfc3RyKCksIGZp bGVuYW1lLnNpemUoKSArIDEpOworKyNlbHNlCisrCQljb250ZXh0LT51cmwgPSBhdl9zdHJuZHVw KGZpbGVuYW1lLmNfc3RyKCksIGZpbGVuYW1lLnNpemUoKSk7CisrCQlpZiAoIWNvbnRleHQtPnVy bCkgeworKwkJCXN5bmZpZzo6ZXJyb3IoIlRhcmdldF9MaWJBVkNvZGVjOiBjYW5ub3QgYWxsb2Nh dGUgc3BhY2UgZm9yIGZpbGVuYW1lIik7CisrCQkJY2xvc2UoKTsKKysJCQlyZXR1cm4gZmFsc2U7 CisrCQl9CisrI2VuZGlmCisgCisgCQlwYWNrZXQgPSBhdl9wYWNrZXRfYWxsb2MoKTsKKyAJCWFz c2VydChwYWNrZXQpOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zeW5maWcvdGVtcGxhdGUgYi9zcmNw a2dzL3N5bmZpZy90ZW1wbGF0ZQppbmRleCBkNGQzZTM0MWEyMGJmOC4uODI4YjVjYjMyOTU2ZWUg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc3luZmlnL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvc3luZmln L3RlbXBsYXRlCkBAIC0yLDExICsyLDExIEBACiAjIFNob3VsZCBiZSBrZXB0IGluIHN5bmMgd2l0 aCAnc3luZmlnc3R1ZGlvJyBhbmQgJ0VUTCcKIHBrZ25hbWU9c3luZmlnCiB2ZXJzaW9uPTEuNC40 Ci1yZXZpc2lvbj00CityZXZpc2lvbj01CiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25m aWd1cmVfYXJncz0iLS13aXRoLWJvb3N0LWxpYmRpcj0ke1hCUFNfQ1JPU1NfQkFTRX0vdXNyL2xp YiIKIGhvc3RtYWtlZGVwZW5kcz0iYm9vc3QtYnVpbGQgSW1hZ2VNYWdpY2sgcGtnLWNvbmZpZyBp bnRsdG9vbCIKLW1ha2VkZXBlbmRzPSJFVEwgZ2V0dGV4dC1kZXZlbCBsaWJ4bWwrKy1kZXZlbCBt bHQtZGV2ZWwgbGlibWFnaWNrLWRldmVsCittYWtlZGVwZW5kcz0iRVRMIGdldHRleHQtZGV2ZWwg bGlieG1sKystZGV2ZWwgbWx0Ny1kZXZlbCBsaWJtYWdpY2stZGV2ZWwKICBsaWJtbmctZGV2ZWwg Ym9vc3QtYnVpbGQgYm9vc3QtZGV2ZWwgbGlib3BlbmV4ci1kZXZlbCBmZm1wZWctZGV2ZWwiCiBk ZXBlbmRzPSJJbWFnZU1hZ2ljayIKIHNob3J0X2Rlc2M9IkNMSSAyRCB2ZWN0b3IgYW5kIHRpbWVs aW5lLWJhc2VkIGFuaW1hdGlvbiBzb2Z0d2FyZSIKQEAgLTIwLDcgKzIwLDcgQEAgQ1hYRkxBR1M9 Ii1zdGQ9YysrMTEgLURIQVZFX0xPQ0FMRV9IPTEiCiAKIHN5bmZpZy1kZXZlbF9wYWNrYWdlKCkg ewogCWRlcGVuZHM9IiR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufQotCSBsaWJv cGVuZXhyLWRldmVsIGxpYnhtbCsrLWRldmVsIG1sdC1kZXZlbCIKKwkgbGlib3BlbmV4ci1kZXZl bCBsaWJ4bWwrKy1kZXZlbCBtbHQ3LWRldmVsIgogCXNob3J0X2Rlc2MrPSIgLSBkZXZlbG9wbWVu dCBmaWxlcyIKIAlwa2dfaW5zdGFsbCgpIHsKIAkJdm1vdmUgdXNyL2Jpbi9zeW5maWctY29uZmln CgpGcm9tIDRmZmI3ZWVlMGYzMjU5YTI0MmQwNmI2MDg4ZGYwZjk5MTA2ODYxNmIgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdl ZCwgMjIgTWFyIDIwMjMgMjA6MDE6NTIgLTA0MDAKU3ViamVjdDogW1BBVENIIDA2NS8xMDldIHRp bWc6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy90aW1nL3RlbXBsYXRlIHwgMiAr LQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy90aW1nL3RlbXBsYXRlIGIvc3JjcGtncy90aW1nL3RlbXBsYXRlCmluZGV4 IDJhMmFiNzYzZDJmZGRmLi44ZmI0MzI3NTM1ZWY5MyAxMDA2NDQKLS0tIGEvc3JjcGtncy90aW1n L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvdGltZy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ3RpbWcnCiBwa2duYW1lPXRpbWcKIHZlcnNpb249MS40LjUKLXJl dmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0i LURXSVRIX09QRU5TTElERV9TVVBQT1JUPW9mZiAtV25vLWRldiIKIGhvc3RtYWtlZGVwZW5kcz0i cGtnLWNvbmZpZyBnaXQiCgpGcm9tIDQ1YjBlMTMzMTc4Mjg3ZGNmNTFiMWI4MWM1M2I1ZjkzNDdi NGU1YjggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFp bC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NTIgLTA0MDAKU3ViamVjdDogW1BB VENIIDA2Ni8xMDldIHR2aGVhZGVuZDogcmV2YnVtcCBmb3IgZmZtcGVnNAoKLS0tCiBzcmNwa2dz L3R2aGVhZGVuZC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigr KSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdHZoZWFkZW5kL3RlbXBsYXRl IGIvc3JjcGtncy90dmhlYWRlbmQvdGVtcGxhdGUKaW5kZXggOWFlYTdkZTRlYzcwNTcuLjAxMmQz MWM0ODc5ZmYxIDEwMDY0NAotLS0gYS9zcmNwa2dzL3R2aGVhZGVuZC90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL3R2aGVhZGVuZC90ZW1wbGF0ZQpAQCAtOCw3ICs4LDcgQEAgY29uZmlndXJlX2FyZ3M9 Ii0tZW5hYmxlLWR2YnNjYW4gLS1kaXNhYmxlLWZmbXBlZ19zdGF0aWMKIC0tZGlzYWJsZS1saWJ4 MjY1X3N0YXRpYyAtLWRpc2FibGUtbGlidnB4X3N0YXRpYyAtLWRpc2FibGUtbGlidGhlb3JhX3N0 YXRpYwogLS1kaXNhYmxlLWxpYnZvcmJpc19zdGF0aWMgLS1kaXNhYmxlLWxpYmZka2FhY19zdGF0 aWMiCiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgcGtnLWNvbmZpZyBweXRob24zIGdpdCB3aGlj aCIKLW1ha2VkZXBlbmRzPSJhdmFoaS1saWJzLWRldmVsIG9wZW5zc2wtZGV2ZWwgemxpYi1kZXZl bCBsaWJjdXJsLWRldmVsIGZmbXBlZy1kZXZlbCIKK21ha2VkZXBlbmRzPSJhdmFoaS1saWJzLWRl dmVsIG9wZW5zc2wtZGV2ZWwgemxpYi1kZXZlbCBsaWJjdXJsLWRldmVsIGZmbXBlZzQtZGV2ZWwi CiBzaG9ydF9kZXNjPSJUViBzdHJlYW1pbmcgc2VydmVyIgogbWFpbnRhaW5lcj0ibGVtbWkgPGxl bW1pQG5lcmQybmVyZC5vcmc+IgogbGljZW5zZT0iR1BMLTMuMC1vbmx5IgoKRnJvbSA5NzViMDVi YWRjZmQxMTgyMGI1MDcwYTA5OTEwODk2ZDFlNzA3ODc0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIz IDIwOjAxOjUyIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNjcvMTA5XSB1bnBhcGVyOiB1cGRhdGUg dG8gNy4wLjAuCgotLS0KIHNyY3BrZ3MvdW5wYXBlci90ZW1wbGF0ZSB8IDE2ICsrKysrKysrLS0t LS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy91bnBhcGVyL3RlbXBsYXRlIGIvc3JjcGtncy91bnBhcGVyL3Rl bXBsYXRlCmluZGV4IDM4ZWQ0N2E1ODQwMTY1Li4xZmY5MTBlNzIyYWZjOCAxMDA2NDQKLS0tIGEv c3JjcGtncy91bnBhcGVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvdW5wYXBlci90ZW1wbGF0ZQpA QCAtMSwxMyArMSwxMyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAndW5wYXBlcicKIHBrZ25hbWU9 dW5wYXBlcgotdmVyc2lvbj02LjEKLXJldmlzaW9uPTMKLWJ1aWxkX3N0eWxlPWdudS1jb25maWd1 cmUKK3ZlcnNpb249Ny4wLjAKK3JldmlzaW9uPTEKK2J1aWxkX3N0eWxlPW1lc29uCitob3N0bWFr ZWRlcGVuZHM9InBrZy1jb25maWcgbWVzb24gbGlieHNsdCIKK21ha2VkZXBlbmRzPSJmZm1wZWct ZGV2ZWwgcHl0aG9uMy1TcGhpbngiCitzaG9ydF9kZXNjPSJQb3N0LXByb2Nlc3NpbmcgdG9vbCBm b3Igc2Nhbm5lZCBzaGVldHMgb2YgcGFwZXIiCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFu QHZvaWRsaW51eC5vcmc+IgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGxpYnhzbHQiCi1t YWtlZGVwZW5kcz0iZmZtcGVnLWRldmVsIgotbGljZW5zZT0iR1BMLTIiCitsaWNlbnNlPSJHUEwt Mi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd3d3LmZsYW1lZXllcy5ldS9wcm9qZWN0 cy91bnBhcGVyIgotc2hvcnRfZGVzYz0iQSBwb3N0LXByb2Nlc3NpbmcgdG9vbCBmb3Igc2Nhbm5l ZCBzaGVldHMgb2YgcGFwZXIiCiBkaXN0ZmlsZXM9Imh0dHBzOi8vd3d3LmZsYW1lZXllcy5ldS9m aWxlcy8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09MjM3Yzg0ZjVkYTU0 NGIzZjc3MDk4MjdmOWYxMmMzN2MzNDZjZGYwMjliMTEyOGZiNDYzM2Y5YmFmYTVjYjkzMAorY2hl Y2tzdW09MjU3NWZiYmYyNmMyMjcxOWQxY2I4ODJiNTk2MDJjOTkwMGM3Zjc0NzExOGFjMTMwODgz ZjYzNDE5YmU0NmE4MAoKRnJvbSAyYzZlM2I1N2Y0ZTVkMDVkMmExYzI2M2Q3YzI3YmY5MTBhNmY1 YzA4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwu Y29tPgpEYXRlOiBXZWQsIDIyIE1hciAyMDIzIDIwOjAxOjUyIC0wNDAwClN1YmplY3Q6IFtQQVRD SCAwNjgvMTA5XSB2aWNlOiByZXZidW1wIGZvciBmZm1wZWc0CgotLS0KIHNyY3BrZ3MvdmljZS90 ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlv bigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdmljZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvdmljZS90 ZW1wbGF0ZQppbmRleCAxYzY0MWQ5YWU5YmUyMi4uNGY0M2U4NWI1Yjg5NzIgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvdmljZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3ZpY2UvdGVtcGxhdGUKQEAgLTEs NyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd2aWNlJwogcGtnbmFtZT12aWNlCiB2ZXJz aW9uPTMuOAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3Vy ZQogY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLWNwdWhpc3RvcnkgLS1lbmFibGUteDY0IC0tZGlz YWJsZS1wZGYtZG9jcwogIC0tbGliZGlyPS91c3IvbGliJFhCUFNfVEFSR0VUX1dPUkRTSVpFICQo dm9wdF9lbmFibGUgc2RsMiBzZGx1aTIpCgpGcm9tIDhmYTA5MjQ0M2ZhMTUzMTc5MDY5ZmE2NTNk ZThjYTc4NDgwYTIyNzIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGlj ZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdlZCwgMjIgTWFyIDIwMjMgMjA6MDE6NTIgLTA0MDAKU3Vi amVjdDogW1BBVENIIDA2OS8xMDldIHdheXBpcGU6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQog c3JjcGtncy93YXlwaXBlL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0 aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy93YXlwaXBlL3RlbXBs YXRlIGIvc3JjcGtncy93YXlwaXBlL3RlbXBsYXRlCmluZGV4IDZkYTg4YjIxYmYyYTE5Li40ZGE4 MDU4NDAwYjU4OCAxMDA2NDQKLS0tIGEvc3JjcGtncy93YXlwaXBlL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3Mvd2F5cGlwZS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ3dheXBpcGUnCiBwa2duYW1lPXdheXBpcGUKIHZlcnNpb249MC44LjYKLXJldmlzaW9uPTEK K3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPW1lc29uCiAjIGx0byBpcyBvZmYgYmVjYXVzZSBpdCBj YXVzZXMgbGlua2luZyBlcnJvcnMgaW4gYXJtdjZsIGFuZCBhcm12N2wgKGR1ZSB0byBORU9OKQog Y29uZmlndXJlX2FyZ3M9Ii1Ed2Vycm9yPWZhbHNlIC1Ed2l0aF9kbWFidWY9ZW5hYmxlZCAtRHdp dGhfbHo0PWVuYWJsZWQKCkZyb20gZDc5ZGRkODgxZDhjYWQ2ZTlmNmY0MDY2YzRiZmUyZTE3ZTBm NDA5NyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWls LmNvbT4KRGF0ZTogV2VkLCAyMiBNYXIgMjAyMyAyMDowMTo1MiAtMDQwMApTdWJqZWN0OiBbUEFU Q0ggMDcwLzEwOV0geHByYTogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL3hwcmEv dGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRp b24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3hwcmEvdGVtcGxhdGUgYi9zcmNwa2dzL3hwcmEv dGVtcGxhdGUKaW5kZXggYTViZDg3MDQwZDAxZDMuLjFlZWRhMTQ2ZGQyZTc0IDEwMDY0NAotLS0g YS9zcmNwa2dzL3hwcmEvdGVtcGxhdGUKKysrIGIvc3JjcGtncy94cHJhL3RlbXBsYXRlCkBAIC0x LDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAneHByYScKIHBrZ25hbWU9eHByYQogdmVy c2lvbj02LjAuMQotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9cHl0aG9uMy1t b2R1bGUKIG1ha2VfYnVpbGRfYXJncz0iLS13aXRob3V0LWN1ZGFfa2VybmVscyAtLXdpdGhvdXQt Y3VkYV9yZWJ1aWxkIgogbWFrZV9pbnN0YWxsX2FyZ3M9IiQodm9wdF93aXRoIGRvY3MpICR7bWFr ZV9idWlsZF9hcmdzfSIKCkZyb20gMTQwY2NlZDhhMmUxNDE4YzI2YzZhNWZlOTAwODI4OWMwM2Yw MmVhNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWls LmNvbT4KRGF0ZTogRnJpLCAzMSBNYXIgMjAyMyAwOTowNzo0MCAtMDQwMApTdWJqZWN0OiBbUEFU Q0ggMDcxLzEwOV0gbnYtY29kZWMtaGVhZGVyczogdXBkYXRlIHRvIDEyLjAuMTYuMAoKLS0tCiBz cmNwa2dzL252LWNvZGVjLWhlYWRlcnMvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2Vk LCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9u di1jb2RlYy1oZWFkZXJzL3RlbXBsYXRlIGIvc3JjcGtncy9udi1jb2RlYy1oZWFkZXJzL3RlbXBs YXRlCmluZGV4IDNkNDIyYTYxZTQ4OTE3Li4yNTFlMDU3ZjgyNmZiOCAxMDA2NDQKLS0tIGEvc3Jj cGtncy9udi1jb2RlYy1oZWFkZXJzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbnYtY29kZWMtaGVh ZGVycy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ252LWNv ZGVjLWhlYWRlcnMnCiBwa2duYW1lPW52LWNvZGVjLWhlYWRlcnMKLXZlcnNpb249MTEuMS41LjEK K3ZlcnNpb249MTIuMC4xNi4wCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtbWFrZWZpbGUK IHNob3J0X2Rlc2M9IkZGbXBlZyB2ZXJzaW9uIG9mIGhlYWRlcnMgcmVxdWlyZWQgdG8gaW50ZXJm YWNlIHdpdGggTnZpZGlhcyBjb2RlYyBBUElzIgpAQCAtOCw3ICs4LDcgQEAgbWFpbnRhaW5lcj0i T3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9Ik1JVCIKIGhvbWVwYWdl PSJodHRwOi8vZ2l0LnZpZGVvbGFuLm9yZy8/cD1mZm1wZWcvbnYtY29kZWMtaGVhZGVycy5naXQi CiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9GRm1wZWcvbnYtY29kZWMtaGVhZGVycy9h cmNoaXZlL24ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPWQwOTVmYmQ1NmFhOTM3NzI0NzFh MzIzYmUwZWJlNjU1MDRhMGY0M2YwNmM3NmEzMGI2ZDI1ZGE3N2IwNmFlOWMKK2NoZWNrc3VtPTJh MTUzM2I2NWY1NWY5ZGE1Mjk1NmZhZjA2MjdlZDNiNzQ4NjhhYzBjN2YyNjk5OTBlZGQyMTM2OTEx M2I0OGYKIAogcG9zdF9pbnN0YWxsKCkgewogCXNlZCAtbiAnNCwyNXAnIGluY2x1ZGUvZmZudmNv ZGVjL252RW5jb2RlQVBJLmggPiBMSUNFTlNFCgpGcm9tIDE5MzNiZTJkN2IzOGRlZGM2MjUxYmNl NTBlZDgxZjFhZmE0MTk3MTkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6 bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IEZyaSwgMzEgTWFyIDIwMjMgMDk6MDg6NDAgLTA0MDAK U3ViamVjdDogW1BBVENIIDA3Mi8xMDldIG9wZW5pbWFnZWRlbm9pc2U6IHJldmJ1bXAgZm9yIGZm bXBlZzYKCi0tLQogc3JjcGtncy9vcGVuaW1hZ2VkZW5vaXNlL3RlbXBsYXRlIHwgMiArLQogMSBm aWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9vcGVuaW1hZ2VkZW5vaXNlL3RlbXBsYXRlIGIvc3JjcGtncy9vcGVuaW1hZ2VkZW5v aXNlL3RlbXBsYXRlCmluZGV4IDEwOWRlYjE3MWMzZjc1Li40NGVkZjM4ZmIyODlkOCAxMDA2NDQK LS0tIGEvc3JjcGtncy9vcGVuaW1hZ2VkZW5vaXNlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvb3Bl bmltYWdlZGVub2lzZS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ29wZW5pbWFnZWRlbm9pc2UnCiBwa2duYW1lPW9wZW5pbWFnZWRlbm9pc2UKIHZlcnNpb249 MS40LjMKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGFyY2hzPSJ4ODZfNjQqIgogYnVpbGRfc3R5 bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0iaXNwYyBweXRob24zIgoKRnJvbSA2YzYyY2E4MDM2 NDE0ODIwNmUxYmQzZDUwN2VjNDY5MzBkMGFmYWIwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBNb24sIDMgQXByIDIwMjMgMjM6 MzE6NDUgLTA0MDAKU3ViamVjdDogW1BBVENIIDA3My8xMDldIHNob3RjdXQ6IHJldmJ1bXAgZm9y IGZmbXBlZzYKCi0tLQogc3JjcGtncy9zaG90Y3V0L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNo YW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9zaG90Y3V0L3RlbXBsYXRlIGIvc3JjcGtncy9zaG90Y3V0L3RlbXBsYXRlCmluZGV4IGIwZGM5 Mzc3NTU4OTQxLi4xM2U4YTA4NTIyYjY4ZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9zaG90Y3V0L3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3Mvc2hvdGN1dC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ3Nob3RjdXQnCiBwa2duYW1lPXNob3RjdXQKIHZlcnNpb249MjMu MDkuMjkKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1 cmVfYXJncz0iLURTSE9UQ1VUX1ZFUlNJT049JHt2ZXJzaW9ufSIKIGhvc3RtYWtlZGVwZW5kcz0i cGtnLWNvbmZpZyBxdDYtYmFzZSBxdDYtdG9vbHMiCgpGcm9tIDAwZDBkYjQzZTgwN2I5NTEwOTA5 ODBhOGJjNWY4YTkzZWY3ODE3NWQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNl IDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IE1vbiwgMyBBcHIgMjAyMyAyMzozMzozMCAtMDQw MApTdWJqZWN0OiBbUEFUQ0ggMDc0LzEwOV0gc2hpYm9rZW4yOiByZXZidW1wIGZvciBxdDUtNS4x NS4xMQoKLS0tCiBzcmNwa2dzL3NoaWJva2VuMi9wYXRjaGVzL2ltcG9ydGxpYi1tYWNoaW5lcnkt YnlwYXNzLnBhdGNoIHwgMSArCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKykKIGNyZWF0 ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL3NoaWJva2VuMi9wYXRjaGVzL2ltcG9ydGxpYi1tYWNoaW5l cnktYnlwYXNzLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zaGlib2tlbjIvcGF0Y2hlcy9p bXBvcnRsaWItbWFjaGluZXJ5LWJ5cGFzcy5wYXRjaCBiL3NyY3BrZ3Mvc2hpYm9rZW4yL3BhdGNo ZXMvaW1wb3J0bGliLW1hY2hpbmVyeS1ieXBhc3MucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMjAwMDAK aW5kZXggMDAwMDAwMDAwMDAwMDAuLmVmY2YzMjQ5YmQ4ODU0Ci0tLSAvZGV2L251bGwKKysrIGIv c3JjcGtncy9zaGlib2tlbjIvcGF0Y2hlcy9pbXBvcnRsaWItbWFjaGluZXJ5LWJ5cGFzcy5wYXRj aApAQCAtMCwwICsxIEBACisuLi8uLi9weXRob24zLXB5c2lkZTIvcGF0Y2hlcy9pbXBvcnRsaWIt bWFjaGluZXJ5LWJ5cGFzcy5wYXRjaApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKCkZyb20g MGEyZTU5ZTdiMTM3MjVlMmYyYjQ0MjNiZDUzNDAxOGQxODY5NmY3YSBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogTW9uLCAzIEFw ciAyMDIzIDIzOjMzOjUzIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNzUvMTA5XSBweXRob24zLXB5 c2lkZTI6IHJldmJ1bXAgZm9yIHF0NS01LjE1LjExCgotLS0KIC4uLi9wYXRjaGVzL2ltcG9ydGxp Yi1tYWNoaW5lcnktYnlwYXNzLnBhdGNoICAgICAgfCAxNSArKysrKysrKysrKysrKysKIHNyY3Br Z3MvcHl0aG9uMy1weXNpZGUyL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgfCAgMiArLQogMiBm aWxlcyBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUgbW9k ZSAxMDA2NDQgc3JjcGtncy9weXRob24zLXB5c2lkZTIvcGF0Y2hlcy9pbXBvcnRsaWItbWFjaGlu ZXJ5LWJ5cGFzcy5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0aG9uMy1weXNpZGUyL3Bh dGNoZXMvaW1wb3J0bGliLW1hY2hpbmVyeS1ieXBhc3MucGF0Y2ggYi9zcmNwa2dzL3B5dGhvbjMt cHlzaWRlMi9wYXRjaGVzL2ltcG9ydGxpYi1tYWNoaW5lcnktYnlwYXNzLnBhdGNoCm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwLi42NGM0Mjk1ODQ3NzZiNQotLS0gL2Rl di9udWxsCisrKyBiL3NyY3BrZ3MvcHl0aG9uMy1weXNpZGUyL3BhdGNoZXMvaW1wb3J0bGliLW1h Y2hpbmVyeS1ieXBhc3MucGF0Y2gKQEAgLTAsMCArMSwxNSBAQAorVXNpbmcgdGhpcyBwcmV2ZW50 cyBhbiBlcnJvciBhcm91bmQgbGluZSAyMjAgYmVsb3cgaXQuCisiQXR0cmlidXRlRXJyb3I6IG1v ZHVsZSAnaW1wb3J0bGliJyBoYXMgbm8gYXR0cmlidXRlICdtYWNoaW5lcnknIgorVGhlIG9sZCBi YWNrdXAgbG9naWMgaXMgaW4gcGxhY2UgYW5kIGNvbXBpbGVzIHdpdGhvdXQgaXNzdWVzLgorLS0t IGEvc291cmNlcy9zaGlib2tlbjIvbGlic2hpYm9rZW4vZW1iZWQvc2lnbmF0dXJlX2Jvb3RzdHJh cC5weQkyMDIzLTA0LTAyIDIzOjA5OjM0LjY4ODkxMjQwMiAtMDQwMAorKysrIGIvc291cmNlcy9z aGlib2tlbjIvbGlic2hpYm9rZW4vZW1iZWQvc2lnbmF0dXJlX2Jvb3RzdHJhcC5weQkyMDIzLTA0 LTAyIDIzOjEwOjAzLjM5NTUyOTU4MiAtMDQwMAorQEAgLTE3MCw5ICsxNzAsNiBAQAorCisgICAg ICMgJ3ppcHN0cmluZ19zZXF1ZW5jZScgY29tZXMgZnJvbSBzaWduYXR1cmUuY3BwCisgICAgIHpp cGJ5dGVzID0gYmFzZTY0LmI2NGRlY29kZSgnJy5qb2luKHppcHN0cmluZ19zZXF1ZW5jZSkpCist ICAgIGlmIHN5cy52ZXJzaW9uX2luZm9bMF0gPj0gMzoKKy0gICAgICAgIHZ6aXAgPSB6aXBmaWxl LlppcEZpbGUoaW8uQnl0ZXNJTyh6aXBieXRlcykpCistICAgICAgICByZXR1cm4gc3lzLm1ldGFf cGF0aCwgRW1iZWRkYWJsZVppcEltcG9ydGVyKHZ6aXApCisKKyAgICAgIyBPbGQgdmVyc2lvbiBm b3IgUHl0aG9uIDIuNywgb25seS4KKyAgICAgaW1wb3J0IG9zCmRpZmYgLS1naXQgYS9zcmNwa2dz L3B5dGhvbjMtcHlzaWRlMi90ZW1wbGF0ZSBiL3NyY3BrZ3MvcHl0aG9uMy1weXNpZGUyL3RlbXBs YXRlCmluZGV4IDI0OWVmYTkwOTg4NDI1Li41MjYyNjQzNmNlNzVmMiAxMDA2NDQKLS0tIGEvc3Jj cGtncy9weXRob24zLXB5c2lkZTIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9weXRob24zLXB5c2lk ZTIvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdweXRob24z LXB5c2lkZTInCiBwa2duYW1lPXB5dGhvbjMtcHlzaWRlMgogdmVyc2lvbj01LjE1LjEwCi1yZXZp c2lvbj0xCityZXZpc2lvbj0yCiBfcGtnbmFtZT0icHlzaWRlLXNldHVwLW9wZW5zb3VyY2Utc3Jj LSR7dmVyc2lvbn0iCiBidWlsZF93cmtzcmM9InNvdXJjZXMvcHlzaWRlMiIKIGJ1aWxkX3N0eWxl PWNtYWtlCgpGcm9tIDQwNTY5NTc3YTAxYjk2NjcwNDFhZTljYjVjMDIyOTE5ZGJjODE1YjIgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRh dGU6IFR1ZSwgNCBBcHIgMjAyMyAxMToxNDozNSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDc2LzEw OV0ga29ucXVlcm9yOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3Mva29ucXVlcm9y L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0 aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9rb25xdWVyb3IvdGVtcGxhdGUgYi9zcmNwa2dz L2tvbnF1ZXJvci90ZW1wbGF0ZQppbmRleCA4NjU2M2E4MTEyNjY4ZC4uY2MzM2RkMTFkMmFmMjAg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mva29ucXVlcm9yL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mva29u cXVlcm9yL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAna29u cXVlcm9yJwogcGtnbmFtZT1rb25xdWVyb3IKIHZlcnNpb249MjQuMDIuMgotcmV2aXNpb249MQor cmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREJVSUxEX1dJ VEhfUVQ2PU9OIC1EQlVJTERfVEVTVElORz1PRkYKICAtREtGNl9IT1NUX1RPT0xJTkc9L3Vzci9s aWIvY21ha2UKCkZyb20gNjk5ZDE0ZTlmNWZhMzliOTZiY2QxOTNhZjlkOTc5MjRhZTc3MDIwNSBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4K RGF0ZTogVHVlLCA0IEFwciAyMDIzIDExOjE0OjU4IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNzcv MTA5XSBxdDUtc3BlZWNoOiByZXZidW1wIGZvciBxdDUtNS4xNS4xMQoKLS0tCiBzcmNwa2dzL3F0 NS1zcGVlY2gvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3F0NS1zcGVlY2gvdGVtcGxhdGUg Yi9zcmNwa2dzL3F0NS1zcGVlY2gvdGVtcGxhdGUKaW5kZXggMTIyOGJiNjBjNDFkYjQuLjI3YTdk YTFkYmRiOTFiIDEwMDY0NAotLS0gYS9zcmNwa2dzL3F0NS1zcGVlY2gvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9xdDUtc3BlZWNoL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAncXQ1LXNwZWVjaCcKIHBrZ25hbWU9cXQ1LXNwZWVjaAogdmVyc2lvbj01LjE1LjEx Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBfY29tbWl0PWQzMmY0YTQ3OWQzOGExMWY1NDc1OTgw MDRiOTc1ZjQzNTY0MjRhMTYKIGJ1aWxkX3N0eWxlPXFtYWtlCiBjb25maWd1cmVfYXJncz0iLS0g LWZsaXRlIC1mbGl0ZS1hbHNhIC1zcGVlY2hkIgoKRnJvbSA1MDgyMjU2MTJhN2ExM2Q3NjJiY2Nh YWI1NWZjYzgwMTAwZDIwOGVlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8 emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBTYXQsIDMgSnVuIDIwMjMgMDg6MjA6MjIgLTA0MDAK U3ViamVjdDogW1BBVENIIDA3OC8xMDldIGd0azQ6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQog c3JjcGtncy9ndGs0L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9u KCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ndGs0L3RlbXBsYXRlIGIv c3JjcGtncy9ndGs0L3RlbXBsYXRlCmluZGV4IDE1ZDc4YTg0ODQ2MmEyLi4yZTJmYjY0MzVkYjYw NyAxMDA2NDQKLS0tIGEvc3JjcGtncy9ndGs0L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ3RrNC90 ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2d0azQnCiBwa2du YW1lPWd0azQKIHZlcnNpb249NC4xNC40Ci1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9z dHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCiBjb25maWd1cmVfYXJncz0iLURtYW4tcGFn ZXM9dHJ1ZSAtRGRvY3VtZW50YXRpb249dHJ1ZSAtRGJ1aWxkLXRlc3RzPWZhbHNlCgpGcm9tIDQ2 ODM0MzEyM2QwNzBkNTFhMDhmYTNjZmI1ZDk4MzhkZjFiODQ1NDMgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFN1biwgNCBKdW4g MjAyMyAxMToyODoyNiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDc5LzEwOV0gc2lyaWw6IHJldmJ1 bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9zaXJpbC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmls ZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3Mvc2lyaWwvdGVtcGxhdGUgYi9zcmNwa2dzL3NpcmlsL3RlbXBsYXRlCmluZGV4IDg0MzMy Zjc5ZDA2MGQyLi42Mjc1MGRkMjQ3NTQ4ZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9zaXJpbC90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL3NpcmlsL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnc2lyaWwnCiBwa2duYW1lPXNpcmlsCiB2ZXJzaW9uPTAuOS4xMgotcmV2 aXNpb249MTAKK3JldmlzaW9uPTExCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBob3N0bWFr ZWRlcGVuZHM9InBrZy1jb25maWcgaW50bHRvb2wgYXV0b2NvbmYgYXV0b21ha2UgZ2V0dGV4dC1k ZXZlbCIKIG1ha2VkZXBlbmRzPSJmZnR3LWRldmVsIGxpYmNvbmZpZy1kZXZlbCBsaWJvcGVuY3Yt ZGV2ZWwgbGliZmZtczItZGV2ZWwKCkZyb20gYjUzYWQzNDdjY2E4MzNjOTcwM2JkNjE3OWNkODI3 OGVlZTRhYWJiNSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1 QGdtYWlsLmNvbT4KRGF0ZTogU2F0LCA4IEp1bCAyMDIzIDIwOjIwOjU5IC0wNDAwClN1YmplY3Q6 IFtQQVRDSCAwODAvMTA5XSB0cmFja2VyLW1pbmVyczogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0t CiBzcmNwa2dzL3RyYWNrZXItbWluZXJzL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQs IDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy90cmFj a2VyLW1pbmVycy90ZW1wbGF0ZSBiL3NyY3BrZ3MvdHJhY2tlci1taW5lcnMvdGVtcGxhdGUKaW5k ZXggOTJiMzg2M2VmZDM0MmMuLmY5MWM1MDU5OGU5MGJhIDEwMDY0NAotLS0gYS9zcmNwa2dzL3Ry YWNrZXItbWluZXJzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvdHJhY2tlci1taW5lcnMvdGVtcGxh dGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd0cmFja2VyLW1pbmVycycK IHBrZ25hbWU9dHJhY2tlci1taW5lcnMKIHZlcnNpb249My43LjEKLXJldmlzaW9uPTIKK3Jldmlz aW9uPTMKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9cWVtdQogIyBtaXNzaW5nIGxp Ymdyc3MgZm9yIG1pbmVyX3JzcwoKRnJvbSBhMzIyNzEyZGFlMjU2NDczMWIxMmUxMWUxZTdmNDdj OGU0YTdhZDRkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVA Z21haWwuY29tPgpEYXRlOiBXZWQsIDMwIEF1ZyAyMDIzIDA5OjEwOjAyIC0wNDAwClN1YmplY3Q6 IFtQQVRDSCAwODEvMTA5XSB0Z19vd3Q6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtn cy90Z19vd3QvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3RnX293dC90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvdGdfb3d0L3RlbXBsYXRlCmluZGV4IDM0ZThmZWYwNTQwNTY5Li4xYTQ2YThiZWRmMzQ3 MyAxMDA2NDQKLS0tIGEvc3JjcGtncy90Z19vd3QvdGVtcGxhdGUKKysrIGIvc3JjcGtncy90Z19v d3QvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd0Z19vd3Qn CiBwa2duYW1lPXRnX293dAogdmVyc2lvbj0wLjAuMC4yMDIzMTIyMQotcmV2aXNpb249MgorcmV2 aXNpb249MwogX2NvbW1pdD1hZmQ5ZDVkMzE3OThkM2VhY2Y5ZWQ2YzMwNjAxZTkxZDBmMWU0ZDYw CiBfbGlieXV2X2NvbW1pdD0wNDgyMWQxZTdkNjA4NDU1MjVlOGRiNTVjN2JjZDQxZWY1YmU5NDA2 CiBfYWJzZWlsX2NvbW1pdD04YzBiOTRlNzkzYTY2NDk1ZTBiMWYzNGE1ZWIyNmJkN2RjNjcyZGIw CgpGcm9tIDFiZWFjZjFjYjI0NzczNTJjNjlmZWE0YjZmMGQ3ZWUwZWEwZGYzZjIgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFdl ZCwgMzAgQXVnIDIwMjMgMDk6MTA6NDQgLTA0MDAKU3ViamVjdDogW1BBVENIIDA4Mi8xMDldIHRl bGVncmFtLWRlc2t0b3A6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy90ZWxlZ3Jh bS1kZXNrdG9wL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCsp LCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy90ZWxlZ3JhbS1kZXNrdG9wL3Rl bXBsYXRlIGIvc3JjcGtncy90ZWxlZ3JhbS1kZXNrdG9wL3RlbXBsYXRlCmluZGV4IGQ5ZmM4ZTU2 MWE3M2EyLi41YTEzNjU4MDI5MjJiMiAxMDA2NDQKLS0tIGEvc3JjcGtncy90ZWxlZ3JhbS1kZXNr dG9wL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvdGVsZWdyYW0tZGVza3RvcC90ZW1wbGF0ZQpAQCAt MSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3RlbGVncmFtLWRlc2t0b3AnCiBwa2du YW1lPXRlbGVncmFtLWRlc2t0b3AKIHZlcnNpb249NC4xNi44Ci1yZXZpc2lvbj0xCityZXZpc2lv bj0yCiBidWlsZF9zdHlsZT1jbWFrZQogYnVpbGRfaGVscGVyPSJxZW11IGdpciIKIGNvbmZpZ3Vy ZV9hcmdzPSItRFRERVNLVE9QX0FQSV9JRD0yMDkyMzUKCkZyb20gYzJhZTM1YTRhZTYxYzk1ZmQ2 ZjE1ZWFmZWI5NGYzZTU4ZTYyMjBiNSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxp Y2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAzMCBBdWcgMjAyMyAwOToxMjowOSAt MDQwMApTdWJqZWN0OiBbUEFUQ0ggMDgzLzEwOV0gb3Blbm13OiByZXZidW1wIGZvciBmZm1wZWc2 CgotLS0KIHNyY3BrZ3Mvb3Blbm13L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEg aW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9vcGVubXcv dGVtcGxhdGUgYi9zcmNwa2dzL29wZW5tdy90ZW1wbGF0ZQppbmRleCAwYWJmNWZmN2NkYmVjYy4u YjU3MTgwZjFhNDQ0NmYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvb3Blbm13L3RlbXBsYXRlCisrKyBi L3NyY3BrZ3Mvb3Blbm13L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnb3Blbm13JwogcGtnbmFtZT1vcGVubXcKIHZlcnNpb249MC40OC4wCi1yZXZpc2lvbj0y CityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1jbWFrZQogX3JlY2FzdF9jb21taXQ9ZTc1YWRmODZm OTFlYjMwODIyMjAwODVlNDJkZGE2MjY3OWY5YTNlYQogX2J1bGxldF90YWc9My4xNwoKRnJvbSA5 YTRiM2Y3YjE0NmFkNmU3NzkzNmZhM2E4ZjM3MGM0YTg1OThhZjYwIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBXZWQsIDMwIEF1 ZyAyMDIzIDA5OjE4OjE4IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwODQvMTA5XSBmcmVlY2FkOiBE RUxFVEUKCi0tLQogc3JjcGtncy9mcmVlY2FkL3BhdGNoZXMvMDAxLWluY2x1ZGUucGF0Y2ggICAg IHwgMTEyIC0tLS0tLS0tLS0tLS0tLS0tLQogLi4uLzE1NC1yZXZlcnQtZ3VpLXRtcC1yZWRpcmVj dC1zdGRlcnIucGF0Y2ggIHwgIDY4IC0tLS0tLS0tLS0tCiAuLi5kNjNjOGM5YjEyODA5NzhiZTg0 MWQwNGU2OGEwYTU1Y2NlYjkucGF0Y2ggfCAgMzAgLS0tLS0KIHNyY3BrZ3MvZnJlZWNhZC90ZW1w bGF0ZSAgICAgICAgICAgICAgICAgICAgICB8ICAxMiArLQogNCBmaWxlcyBjaGFuZ2VkLCA3IGlu c2VydGlvbnMoKyksIDIxNSBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dz L2ZyZWVjYWQvcGF0Y2hlcy8wMDEtaW5jbHVkZS5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3MvZnJlZWNhZC9wYXRjaGVzLzE1NC1yZXZlcnQtZ3VpLXRtcC1yZWRpcmVjdC1zdGRlcnIu cGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2ZyZWVjYWQvcGF0Y2hlcy9mZTAyZDYz YzhjOWIxMjgwOTc4YmU4NDFkMDRlNjhhMGE1NWNjZWI5LnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9mcmVlY2FkL3BhdGNoZXMvMDAxLWluY2x1ZGUucGF0Y2ggYi9zcmNwa2dzL2ZyZWVjYWQv cGF0Y2hlcy8wMDEtaW5jbHVkZS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MjhiNWFmNTQ5OTliOTYuLjAwMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvZnJlZWNhZC9wYXRj aGVzLzAwMS1pbmNsdWRlLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTEyICswLDAgQEAKLUZy b20gOWE0MTg0NWE0MTcxODk3NzY3NDEyOTdjNTBhMzgyN2NlMjkyYmM0ZiBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKLUZyb206IFV3ZSA8ZG9ub3ZhbHlAdXNlcnMubm9yZXBseS5naXRodWIuY29t PgotRGF0ZTogU3VuLCAzIEp1bCAyMDIyIDIyOjUxOjE2ICswMjAwCi1TdWJqZWN0OiBbUEFUQ0hd IFtQYXJ0XSBPQ0NFcnJvci5oOiByZW1vdmUgdW5uZWVkZWQgaW5jbHVkZXMKLQotLSBhbHNvIHNv cnQgaW5jbHVkZXMKLS0tLQotIHNyYy9Nb2QvUGFydC9BcHAvT0NDRXJyb3IuaCAgICAgICAgICAg ICB8IDM2ICsrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBzcmMvTW9kL1BhcnQvQXBwL09mZnNl dEN1cnZlUHlJbXAuY3BwICAgfCAxMiArKysrLS0tLS0KLSBzcmMvTW9kL1BhcnQvQXBwL09mZnNl dFN1cmZhY2VQeUltcC5jcHAgfCAxMCArKystLS0tCi0gMyBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNl cnRpb25zKCspLCA0NiBkZWxldGlvbnMoLSkKLQotLS0tIGEvc3JjL01vZC9QYXJ0L0FwcC9PQ0NF cnJvci5oCi0rKysgYi9zcmMvTW9kL1BhcnQvQXBwL09DQ0Vycm9yLmgKLUBAIC0yMywzNiArMjMs OCBAQAotICNpZm5kZWYgX09DQ0Vycm9yX2hfDQotICNkZWZpbmUgX09DQ0Vycm9yX2hfDQotIA0K LS0jIGluY2x1ZGUgPFN0YW5kYXJkX1ZlcnNpb24uaHh4Pg0KLSAjIGluY2x1ZGUgPFN0YW5kYXJk X0ZhaWx1cmUuaHh4Pg0KLS0jIGluY2x1ZGUgPFN0YW5kYXJkX0Fib3J0aXZlVHJhbnNhY3Rpb24u aHh4Pg0KLS0jIGluY2x1ZGUgPFN0YW5kYXJkX0NvbnN0cnVjdGlvbkVycm9yLmh4eD4NCi0tIyBp ZiBPQ0NfVkVSU0lPTl9IRVggPj0gMHgwNjA1MDANCi0tIyBpbmNsdWRlIDxTdGFuZGFyZF9EZWZp bmVFeGNlcHRpb24uaHh4Pg0KLS0jIGVuZGlmDQotLSMgaW5jbHVkZSA8U3RhbmRhcmRfRGltZW5z aW9uRXJyb3IuaHh4Pg0KLS0jIGluY2x1ZGUgPFN0YW5kYXJkX0RpbWVuc2lvbk1pc21hdGNoLmh4 eD4NCi0tIyBpbmNsdWRlIDxTdGFuZGFyZF9EaXZpZGVCeVplcm8uaHh4Pg0KLS0jIGluY2x1ZGUg PFN0YW5kYXJkX0RvbWFpbkVycm9yLmh4eD4NCi0tIyBpbmNsdWRlIDxTdGFuZGFyZF9JbW11dGFi bGVPYmplY3QuaHh4Pg0KLS0jIGluY2x1ZGUgPFN0YW5kYXJkX0xpY2Vuc2VFcnJvci5oeHg+DQot LSMgaW5jbHVkZSA8U3RhbmRhcmRfTGljZW5zZU5vdEZvdW5kLmh4eD4NCi0tIyBpbmNsdWRlIDxT dGFuZGFyZF9NdWx0aXBseURlZmluZWQuaHh4Pg0KLS0jIGluY2x1ZGUgPFN0YW5kYXJkX05lZ2F0 aXZlVmFsdWUuaHh4Pg0KLS0jIGluY2x1ZGUgPFN0YW5kYXJkX05vTW9yZU9iamVjdC5oeHg+DQot LSMgaW5jbHVkZSA8U3RhbmRhcmRfTm9TdWNoT2JqZWN0Lmh4eD4NCi0tIyBpbmNsdWRlIDxTdGFu ZGFyZF9Ob3RJbXBsZW1lbnRlZC5oeHg+DQotLSMgaW5jbHVkZSA8U3RhbmRhcmRfTnVsbE9iamVj dC5oeHg+DQotLSMgaW5jbHVkZSA8U3RhbmRhcmRfTnVsbFZhbHVlLmh4eD4NCi0tIyBpbmNsdWRl IDxTdGFuZGFyZF9OdW1lcmljRXJyb3IuaHh4Pg0KLS0jIGluY2x1ZGUgPFN0YW5kYXJkX091dE9m TWVtb3J5Lmh4eD4NCi0tIyBpbmNsdWRlIDxTdGFuZGFyZF9PdXRPZlJhbmdlLmh4eD4NCi0tIyBp bmNsdWRlIDxTdGFuZGFyZF9PdmVyZmxvdy5oeHg+DQotLSMgaW5jbHVkZSA8U3RhbmRhcmRfUHJv Z3JhbUVycm9yLmh4eD4NCi0tIyBpbmNsdWRlIDxTdGFuZGFyZF9SYW5nZUVycm9yLmh4eD4NCi0t IyBpbmNsdWRlIDxTdGFuZGFyZF9Ub29NYW55VXNlcnMuaHh4Pg0KLS0jIGluY2x1ZGUgPFN0YW5k YXJkX1R5cGVNaXNtYXRjaC5oeHg+DQotLSMgaW5jbHVkZSA8U3RhbmRhcmRfVW5kZXJmbG93Lmh4 eD4NCi0rIyBpbmNsdWRlIDxTdGFuZGFyZF9WZXJzaW9uLmh4eD4NCi0gDQotICNpbmNsdWRlIDxN b2QvUGFydC9QYXJ0R2xvYmFsLmg+DQotICNpbmNsdWRlIDxCYXNlL0NvbnNvbGUuaD4NCi1AQCAt ODgsNCArNjAsMyBAQCBQYXJ0RXhwb3J0IGV4dGVybiBQeU9iamVjdCogUGFydEV4Y2VwdGlvCi0g DQotICNkZWZpbmUgUFlfQ0FUQ0hfT0NDIF9QWV9DQVRDSF9PQ0MocmV0dXJuKE5VTEwpKQ0KLSAj ZW5kaWYgIC8vIF9PQ0NFcnJvcl9oXw0KLS0NCi0tLS0gYS9zcmMvTW9kL1BhcnQvQXBwL09mZnNl dEN1cnZlUHlJbXAuY3BwCi0rKysgYi9zcmMvTW9kL1BhcnQvQXBwL09mZnNldEN1cnZlUHlJbXAu Y3BwCi1AQCAtMjAsMjAgKzIwLDIwIEBACi0gICogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKg0KLSAgKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqLw0KLSANCi0tDQotICNpbmNsdWRlICJQcmVDb21waWxlZC5oIg0KLSAjaWZu ZGVmIF9QcmVDb21wXw0KLSAjIGluY2x1ZGUgPEdlb21fT2Zmc2V0Q3VydmUuaHh4Pg0KLSAjZW5k aWYNCi0gDQotLSNpbmNsdWRlICJPQ0NFcnJvci5oIg0KLS0jaW5jbHVkZSAiR2VvbWV0cnkuaCIN Ci0rI2luY2x1ZGUgPEJhc2UvR2VvbWV0cnlQeUNYWC5oPg0KLSsjaW5jbHVkZSA8QmFzZS9WZWN0 b3IzRC5oPg0KLSsjaW5jbHVkZSA8QmFzZS9WZWN0b3JQeS5oPg0KLSsNCi0gI2luY2x1ZGUgIk9m ZnNldEN1cnZlUHkuaCINCi0gI2luY2x1ZGUgIk9mZnNldEN1cnZlUHkuY3BwIg0KLSsjaW5jbHVk ZSAiR2VvbWV0cnkuaCINCi0rI2luY2x1ZGUgIk9DQ0Vycm9yLmgiDQotIA0KLS0jaW5jbHVkZSA8 QmFzZS9HZW9tZXRyeVB5Q1hYLmg+DQotLSNpbmNsdWRlIDxCYXNlL1ZlY3RvclB5Lmg+DQotLSNp bmNsdWRlIDxCYXNlL1ZlY3RvcjNELmg+DQotIA0KLSB1c2luZyBuYW1lc3BhY2UgUGFydDsNCi0g DQotLS0tIGEvc3JjL01vZC9QYXJ0L0FwcC9PZmZzZXRTdXJmYWNlUHlJbXAuY3BwCi0rKysgYi9z cmMvTW9kL1BhcnQvQXBwL09mZnNldFN1cmZhY2VQeUltcC5jcHAKLUBAIC0yMCwyMCArMjAsMTYg QEAKLSAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAqDQotICAqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQotIA0KLS0N Ci0gI2luY2x1ZGUgIlByZUNvbXBpbGVkLmgiDQotICNpZm5kZWYgX1ByZUNvbXBfDQotICMgaW5j bHVkZSA8R2VvbV9PZmZzZXRTdXJmYWNlLmh4eD4NCi0gIyBpbmNsdWRlIDxtZW1vcnk+DQotICNl bmRpZg0KLSANCi0tI2luY2x1ZGUgPEJhc2UvVmVjdG9yUHkuaD4NCi0tI2luY2x1ZGUgPEJhc2Uv VmVjdG9yM0QuaD4NCi0tDQotICNpbmNsdWRlICJPQ0NFcnJvci5oIg0KLS0jaW5jbHVkZSAiR2Vv bWV0cnkuaCINCi0tI2luY2x1ZGUgPE1vZC9QYXJ0L0FwcC9PZmZzZXRTdXJmYWNlUHkuaD4NCi0t I2luY2x1ZGUgPE1vZC9QYXJ0L0FwcC9PZmZzZXRTdXJmYWNlUHkuY3BwPg0KLSsjaW5jbHVkZSAi T2Zmc2V0U3VyZmFjZVB5LmgiDQotKyNpbmNsdWRlICJPZmZzZXRTdXJmYWNlUHkuY3BwIg0KLSsN Ci0gDQotIHVzaW5nIG5hbWVzcGFjZSBQYXJ0Ow0KLSANCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Zy ZWVjYWQvcGF0Y2hlcy8xNTQtcmV2ZXJ0LWd1aS10bXAtcmVkaXJlY3Qtc3RkZXJyLnBhdGNoIGIv c3JjcGtncy9mcmVlY2FkL3BhdGNoZXMvMTU0LXJldmVydC1ndWktdG1wLXJlZGlyZWN0LXN0ZGVy ci5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDZhOWFkYWJkZWM4MzAuLjAw MDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvZnJlZWNhZC9wYXRjaGVzLzE1NC1yZXZlcnQtZ3Vp LXRtcC1yZWRpcmVjdC1zdGRlcnIucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw2OCArMCwwIEBA Ci1zZWUgaHR0cHM6Ly9naXRodWIuY29tL0ZyZWVDQUQvRnJlZUNBRC9jb21taXQvY2ZlOTRiMDBk MzQzNGYzZTJjOGI1MTE0ZDI5MDlmNjI4YzMzMGZhOCNjb21taXRjb21tZW50LTcxNDEzNDA3Ci0K LXVwc3RyZWFtOiB5ZXMKLQotRnJvbSA3YjM3N2EyMTZiOTE4NTk2MGU0Y2VlOTgwYTY1MDRkYzFh NzU1ZjUwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogd21heWVyIDx3bWF5ZXJAdXNl cnMuc291cmNlZm9yZ2UubmV0PgotRGF0ZTogV2VkLCAyOSBKdW4gMjAyMiAxNToxOToxOCArMDIw MAotU3ViamVjdDogW1BBVENIXSBHdWk6IHJlbW92ZSB3b3JrYXJvdW5kIGZvciBzcG5hdiAwLjIz IGR1ZSB0byBidWlsZCBmYWlsdXJlCi0gd2l0aCBtdXNsIGxpYmMKLQotLS0tCi0gc3JjL0d1aS8z RGNvbm5leGlvbi9HdWlOYXRpdmVFdmVudExpbnV4LmNwcCB8IDI3IC0tLS0tLS0tLS0tLS0tLS0t LS0tLQotIDEgZmlsZSBjaGFuZ2VkLCAyNyBkZWxldGlvbnMoLSkKLQotLS0tIGEvc3JjL0d1aS8z RGNvbm5leGlvbi9HdWlOYXRpdmVFdmVudExpbnV4LmNwcAotKysrIGIvc3JjL0d1aS8zRGNvbm5l eGlvbi9HdWlOYXRpdmVFdmVudExpbnV4LmNwcAotQEAgLTIxLDQyICsyMSwxNyBAQAotICAqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKiovCi0gCi0gI2luY2x1ZGUgPEZDQ29uZmlnLmg+Ci0tI2luY2x1ZGUgPGNz dGRpbz4KLSAKLSAjaW5jbHVkZSAiR3VpTmF0aXZlRXZlbnRMaW51eC5oIgotIAotICNpbmNsdWRl ICJHdWlBcHBsaWNhdGlvbk5hdGl2ZUV2ZW50QXdhcmUuaCIKLSAjaW5jbHVkZSA8QmFzZS9Db25z b2xlLmg+Ci0tI2luY2x1ZGUgPEJhc2UvRmlsZUluZm8uaD4KLSAjaW5jbHVkZSA8UU1haW5XaW5k b3c+Ci0gCi0gI2luY2x1ZGUgPFFTb2NrZXROb3RpZmllcj4KLSAKLSAjaW5jbHVkZSA8c3BuYXYu aD4KLSAKLS1uYW1lc3BhY2UgewotLWNsYXNzIFJlZGlyZWN0U3RkRXJyCi0tewotLXB1YmxpYzoK LS0gICAgUmVkaXJlY3RTdGRFcnIoKQotLSAgICAgICAgOiBmaShCYXNlOjpGaWxlSW5mbzo6Z2V0 VGVtcEZpbGVOYW1lKCkpCi0tICAgICAgICAsIGZpbGUoc3RkZXJyKQotLSAgICB7Ci0tICAgICAg ICBzdGRlcnIgPSBmb3BlbihmaS5maWxlUGF0aCgpLmNfc3RyKCksICJ3Iik7Ci0tICAgIH0KLS0g ICAgflJlZGlyZWN0U3RkRXJyKCkKLS0gICAgewotLSAgICAgICAgZmNsb3NlKHN0ZGVycik7Ci0t ICAgICAgICBmaS5kZWxldGVGaWxlKCk7Ci0tICAgICAgICBzdGRlcnIgPSBmaWxlOwotLSAgICB9 Ci0tCi0tcHJpdmF0ZToKLS0gICAgQmFzZTo6RmlsZUluZm8gZmk7Ci0tICAgIEZJTEUqIGZpbGU7 Ci0tfTsKLS19Ci0tCi0gR3VpOjpHdWlOYXRpdmVFdmVudDo6R3VpTmF0aXZlRXZlbnQoR3VpOjpH VUlBcHBsaWNhdGlvbk5hdGl2ZUV2ZW50QXdhcmUgKmFwcCkKLSA6IEd1aUFic3RyYWN0TmF0aXZl RXZlbnQoYXBwKQotIHsKLUBAIC03Miw4ICs0Nyw2IEBAIEd1aTo6R3VpTmF0aXZlRXZlbnQ6On5H dWlOYXRpdmVFdmVudCgpCi0gCi0gdm9pZCBHdWk6Okd1aU5hdGl2ZUV2ZW50Ojppbml0U3BhY2Vi YWxsKFFNYWluV2luZG93ICp3aW5kb3cpCi0gewotLSAgICAvLyB0bXAuIHJlZGlyZWN0IHN0ZGVy ciB0byBhIGZpbGUgdG8gc3VwcHJlc3MgYW4gZXJyb3IgbWVzc2FnZSBmcm9tIHNwbmF2X29wZW4o KQotLSAgICBSZWRpcmVjdFN0ZEVyciBlcnI7Ci0gICAgIFFfVU5VU0VEKHdpbmRvdykKLSAgICAg aWYgKHNwbmF2X29wZW4oKSA9PSAtMSkgewotICAgICAgICAgQmFzZTo6Q29uc29sZSgpLkxvZygi Q291bGRuJ3QgY29ubmVjdCB0byBzcGFjZW5hdiBkYWVtb24uIFBsZWFzZSBpZ25vcmUgaWYgeW91 IGRvbid0IGhhdmUgYSBzcGFjZW1vdXNlLlxuIik7CmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZyZWVj YWQvcGF0Y2hlcy9mZTAyZDYzYzhjOWIxMjgwOTc4YmU4NDFkMDRlNjhhMGE1NWNjZWI5LnBhdGNo IGIvc3JjcGtncy9mcmVlY2FkL3BhdGNoZXMvZmUwMmQ2M2M4YzliMTI4MDk3OGJlODQxZDA0ZTY4 YTBhNTVjY2ViOS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDRhY2YzNzBj YTBhNDIuLjAwMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvZnJlZWNhZC9wYXRjaGVzL2ZlMDJk NjNjOGM5YjEyODA5NzhiZTg0MWQwNGU2OGEwYTU1Y2NlYjkucGF0Y2gKKysrIC9kZXYvbnVsbApA QCAtMSwzMCArMCwwIEBACi1Gcm9tIGZlMDJkNjNjOGM5YjEyODA5NzhiZTg0MWQwNGU2OGEwYTU1 Y2NlYjkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBSb3ktMDQzIDw3MDUyMDYzMytS b3ktMDQzQHVzZXJzLm5vcmVwbHkuZ2l0aHViLmNvbT4KLURhdGU6IFRodSwgMjkgRGVjIDIwMjIg MjM6MjA6MzggKzAxMDAKLVN1YmplY3Q6IFtQQVRDSF0gRHJhZnQ6IHVwZGF0ZSBpbnNwZWN0Lmdl dGFyZ3NwZWMgdG8gaW5zcGVjdC5nZXRmdWxsYXJnc3BlYwotICgjODEwMSkKLQotLS0tCi0gc3Jj L01vZC9EcmFmdC9kcmFmdGd1aXRvb2xzL2d1aV9zbmFwcGVyLnB5IHwgNCArKy0tCi0gMSBmaWxl IGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKLQotLS0tIGEvc3JjL01v ZC9EcmFmdC9kcmFmdGd1aXRvb2xzL2d1aV9zbmFwcGVyLnB5Ci0rKysgYi9zcmMvTW9kL0RyYWZ0 L2RyYWZ0Z3VpdG9vbHMvZ3VpX3NuYXBwZXIucHkKLUBAIC0xNDI2LDcgKzE0MjYsNyBAQCBjbGFz cyBTbmFwcGVyOgotICAgICAgICAgICAgIEd1aS5TbmFwcGVyLm9mZigpCi0gICAgICAgICAgICAg c2VsZi51aS5vZmZVaSgpCi0gICAgICAgICAgICAgaWYgY2FsbGJhY2s6Ci0tICAgICAgICAgICAg ICAgIGlmIGxlbihpbnNwZWN0LmdldGFyZ3NwZWMoY2FsbGJhY2spLmFyZ3MpID4gMToKLSsgICAg ICAgICAgICAgICAgaWYgbGVuKGluc3BlY3QuZ2V0ZnVsbGFyZ3NwZWMoY2FsbGJhY2spLmFyZ3Mp ID4gMToKLSAgICAgICAgICAgICAgICAgICAgIG9iaiA9IE5vbmUKLSAgICAgICAgICAgICAgICAg ICAgIGlmIHNlbGYuc25hcEluZm8gYW5kICgiT2JqZWN0IiBpbiBzZWxmLnNuYXBJbmZvKSBhbmQg c2VsZi5zbmFwSW5mb1siT2JqZWN0Il06Ci0gICAgICAgICAgICAgICAgICAgICAgICAgb2JqID0g QXBwLkFjdGl2ZURvY3VtZW50LmdldE9iamVjdChzZWxmLnNuYXBJbmZvWyJPYmplY3QiXSkKLUBA IC0xNDQ1LDcgKzE0NDUsNyBAQCBjbGFzcyBTbmFwcGVyOgotICAgICAgICAgICAgIEd1aS5TbmFw cGVyLm9mZigpCi0gICAgICAgICAgICAgc2VsZi51aS5vZmZVaSgpCi0gICAgICAgICAgICAgaWYg Y2FsbGJhY2s6Ci0tICAgICAgICAgICAgICAgIGlmIGxlbihpbnNwZWN0LmdldGFyZ3NwZWMoY2Fs bGJhY2spLmFyZ3MpID4gMToKLSsgICAgICAgICAgICAgICAgaWYgbGVuKGluc3BlY3QuZ2V0ZnVs bGFyZ3NwZWMoY2FsbGJhY2spLmFyZ3MpID4gMToKLSAgICAgICAgICAgICAgICAgICAgIGNhbGxi YWNrKE5vbmUsIE5vbmUpCi0gICAgICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAg ICAgICBjYWxsYmFjayhOb25lKQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9mcmVlY2FkL3RlbXBsYXRl IGIvc3JjcGtncy9mcmVlY2FkL3RlbXBsYXRlCmluZGV4IGMxMzU3MDFlMzhiOWFkLi43ZDUxNjVm NzYwYmFiOSAxMDA2NDQKLS0tIGEvc3JjcGtncy9mcmVlY2FkL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvZnJlZWNhZC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J2ZyZWVjYWQnCiBwa2duYW1lPWZyZWVjYWQKLXZlcnNpb249MC4yMC4yCi1yZXZpc2lvbj03Cit2 ZXJzaW9uPTAuMjEuMQorcmV2aXNpb249MgogYnVpbGRfd3Jrc3JjPSJGcmVlQ0FELSR7dmVyc2lv bn0iCiBidWlsZF9zdHlsZT1jbWFrZQogcHljb21waWxlX2RpcnM9InVzci9saWIvJHtwa2duYW1l fS9Nb2QiCkBAIC0yNCw4ICsyNCwxMCBAQCBtYWtlZGVwZW5kcz0icHl0aG9uMy1kZXZlbCBib29z dC1kZXZlbCBsaWJ4ZXJjZXMtYy1kZXZlbCB6bGliLWRldmVsIG9jY3QtZGV2ZWwKICBjb2luMy1k ZXZlbCBsaWJzaGlib2tlbjItZGV2ZWwgbGlic3BuYXYtZGV2ZWwgcHlzaWRlMi10b29scwogIGxp Ymx6NC1kZXZlbCBsaWJweXNpZGUyLXB5dGhvbjMtZGV2ZWwgcHl0aG9uMy1tYXRwbG90bGliIG5l dGNkZi1kZXZlbAogIGpzb25jcHAtZGV2ZWwgcXQ1LWRldmVsIHF0NS1zdmctZGV2ZWwgcXQ1LXRv b2xzLWRldmVsIHF0NS13ZWJraXQtZGV2ZWwKLSBxdDUteG1scGF0dGVybnMtZGV2ZWwgY29pbjMt ZG9jIGdsZXctZGV2ZWwgcHl0aG9uMy1waXZ5IgotZGVwZW5kcz0icHl0aG9uMy1tYXRwbG90bGli IHB5dGhvbjMtcHlzaWRlMi13ZWJlbmdpbmUgcHl0aG9uMy1waXZ5IgorIHF0NS14bWxwYXR0ZXJu cy1kZXZlbCBjb2luMy1kb2MgZ2xldy1kZXZlbCBweXRob24zLXBpdnkgcXQ1LXdlYmVuZ2luZS1k ZXZlbAorIHF0NS1kZWNsYXJhdGl2ZS1kZXZlbCBxdDUtd2ViY2hhbm5lbC1kZXZlbCBxdDUtbG9j YXRpb24tZGV2ZWwiCitkZXBlbmRzPSJweXRob24zLW1hdHBsb3RsaWIgcHl0aG9uMy1weXNpZGUy LXdlYmVuZ2luZSBweXRob24zLXBpdnkKKyBweXRob24zLUdpdFB5dGhvbiBweXRob24zLU1hcmtk b3duIgogc2hvcnRfZGVzYz0iR2VuZXJhbCBwdXJwb3NlIDNEIENBRCBtb2RlbGVyIgogbWFpbnRh aW5lcj0ieW9waXRvIDxwaWVycmUuYm91cmdpbkBmcmVlLmZyPiIKIGxpY2Vuc2U9IkxHUEwtMi4w LW9yLWxhdGVyIgpAQCAtMzUsNyArMzcsNyBAQCBkaXN0ZmlsZXM9IgogIGh0dHBzOi8vZ2l0aHVi LmNvbS9GcmVlQ0FEL0ZyZWVDQUQvYXJjaGl2ZS8ke3ZlcnNpb259LnRhci5negogICR7U09VUkNF Rk9SR0VfU0lURX0vY3h4L3B5Y3h4LSR7X3B5Y3h4dmVyfS50YXIuZ3oKICIKLWNoZWNrc3VtPSI0 NjkyMmYzYTQ3N2U3NDJlMWE4OWNkNTM0NjY5MmQ2M2FlYmIyYjY3YWY4ODdiM2U0NjNlMDk0YTRh ZTA1NWRhCitjaGVja3N1bT0iZTliMWZkMDMyM2YxMDEyNjhjN2YzYmU1MmRiNDJlNGEyOTIyMmYy ZTMwNmFlNmM0YTZmYzMwOWNiNDE4ZDM1YQogIDRiOTFlMWUxMTQxYzIzZmJkNTAzOWRmNjM1YzRi YjZlNzU2MzIxNjg1NDhmNTZiODNjZTE3NzE5M2MwYzk4YzYiCiBweXRob25fdmVyc2lvbj0zCiBw YXRjaF9hcmdzPSItTnAxIC1kICR7YnVpbGRfd3Jrc3JjfSIKCkZyb20gNjE3M2Y3YjQ1Y2U3MTZl MDE5MDVkMDUwZWI1ZjRkMWQ0NGFiY2ZhOCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog emxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogU3VuLCAxNSBPY3QgMjAyMyAyMTo0Nzox OCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDg1LzEwOV0gbGlib3BlbnNob3Q6IHJldmJ1bXAgZm9y IGZmbXBlZzYKCi0tLQogc3JjcGtncy9saWJvcGVuc2hvdC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmls ZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvbGlib3BlbnNob3QvdGVtcGxhdGUgYi9zcmNwa2dzL2xpYm9wZW5zaG90L3RlbXBsYXRl CmluZGV4IGZjNDVhMjU4MDU3MDc5Li43YzFkZTY5NGQwNmMwMCAxMDA2NDQKLS0tIGEvc3JjcGtn cy9saWJvcGVuc2hvdC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2xpYm9wZW5zaG90L3RlbXBsYXRl CkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbGlib3BlbnNob3QnCiBwa2du YW1lPWxpYm9wZW5zaG90CiB2ZXJzaW9uPTAuMy4yCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBi dWlsZF9zdHlsZT1jbWFrZQogIyBCdWlsZHMgZmFpbCB3aXRoIFJ1YnktMi40LjEKIGNvbmZpZ3Vy ZV9hcmdzPSItREVOQUJMRV9SVUJZPU9GRiAtRFVTRV9TWVNURU1fSlNPTkNQUD1PTiIKCkZyb20g ZWM4MTlmZjUwZGQzOTQ1YTUyYzZlNTU0ODIyMzk2Yjg0YmE1YzcyMiBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCA4IE5v diAyMDIzIDEwOjEwOjMwIC0wNTAwClN1YmplY3Q6IFtQQVRDSCAwODYvMTA5XSBvcGVuaW1hZ2Vp bzogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL29wZW5pbWFnZWlvL3RlbXBsYXRl IHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9vcGVuaW1hZ2Vpby90ZW1wbGF0ZSBiL3NyY3BrZ3Mvb3Blbmlt YWdlaW8vdGVtcGxhdGUKaW5kZXggMjdkMjEzMWJjMGE2MWEuLjYxZjQ0YjQzZjkwODNlIDEwMDY0 NAotLS0gYS9zcmNwa2dzL29wZW5pbWFnZWlvL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvb3Blbmlt YWdlaW8vdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdvcGVu aW1hZ2VpbycKIHBrZ25hbWU9b3BlbmltYWdlaW8KIHZlcnNpb249Mi40LjkuMAotcmV2aXNpb249 OAorcmV2aXNpb249OQogYnVpbGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hlbHBlcj1xZW11CiBjb25m aWd1cmVfYXJncz0iLURVU0VfUVQ9MCAtRFVTRV9QWVRIT049MCAtRE9JSU9fQlVJTERfVEVTVFM9 MAoKRnJvbSBmM2FhNjY2ZTA2ZjEyYjU1ODVlZGM0YzA3YjQyMDg3YTA2MDBhODQ0IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBX ZWQsIDggTm92IDIwMjMgMTA6MTE6NTcgLTA1MDAKU3ViamVjdDogW1BBVENIIDA4Ny8xMDldIHN5 bmZpZ3N0dWRpbzogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL3N5bmZpZ3N0dWRp by90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxl dGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc3luZmlnc3R1ZGlvL3RlbXBsYXRlIGIvc3Jj cGtncy9zeW5maWdzdHVkaW8vdGVtcGxhdGUKaW5kZXggMDllNDQyZGE5YTY4MDUuLjJiYzAxN2Nl ZGNhNmI4IDEwMDY0NAotLS0gYS9zcmNwa2dzL3N5bmZpZ3N0dWRpby90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL3N5bmZpZ3N0dWRpby90ZW1wbGF0ZQpAQCAtMiw3ICsyLDcgQEAKICMgU2hvdWxkIGJl IGtlcHQgaW4gc3luYyB3aXRoICdzeW5maWcnIGFuZCAnRVRMJwogcGtnbmFtZT1zeW5maWdzdHVk aW8KIHZlcnNpb249MS40LjQKLXJldmlzaW9uPTQKK3JldmlzaW9uPTUKIGJ1aWxkX3N0eWxlPWdu dS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWRpc2FibGUtdXBkYXRlLW1pbWVkYiIKIGhv c3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBpbnRsdG9vbCBnZXR0ZXh0IHN5bmZpZyIKCkZyb20g OWI4OWE2ZWJhMjU1YjAzYTI0MmI1M2ExZjE0OTBlMjVmMTVhNWVlOSBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogRnJpLCAxMCBO b3YgMjAyMyAxNDo1MzoxMCAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggMDg4LzEwOV0gbWl4eHg6IHJl dmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9taXh4eC90ZW1wbGF0ZSB8IDIgKy0KIDEg ZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvbWl4eHgvdGVtcGxhdGUgYi9zcmNwa2dzL21peHh4L3RlbXBsYXRlCmluZGV4IDZh NzliMzI4YzFhYmYwLi45YTUxNDE4NTY4NjBiOSAxMDA2NDQKLS0tIGEvc3JjcGtncy9taXh4eC90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL21peHh4L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAnbWl4eHgnCiBwa2duYW1lPW1peHh4CiB2ZXJzaW9uPTIuMy4zCi1y ZXZpc2lvbj03CityZXZpc2lvbj04CiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9 Ii1EQ01BS0VfQlVJTERfVFlQRT1SZWxlYXNlIgogaG9zdG1ha2VkZXBlbmRzPSJleHRyYS1jbWFr ZS1tb2R1bGVzIHBrZy1jb25maWcgcHJvdG9idWYgcXQ1LWhvc3QtdG9vbHMgcXQ1LXFtYWtlIgoK RnJvbSA0ZWIxNzBhMTY3MjVjNDJjNGRmMDFlYmIxNDZhNTA3MzBkNDczZmEwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBGcmks IDEwIE5vdiAyMDIzIDE0OjUzOjI4IC0wNTAwClN1YmplY3Q6IFtQQVRDSCAwODkvMTA5XSBtdXNp a2N1YmU6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9tdXNpa2N1YmUvdGVtcGxh dGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL211c2lrY3ViZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvbXVzaWtj dWJlL3RlbXBsYXRlCmluZGV4IGFjZGY1MTQ1M2I4Yzk0Li45YzRjMWFhYTdmOWZmNCAxMDA2NDQK LS0tIGEvc3JjcGtncy9tdXNpa2N1YmUvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tdXNpa2N1YmUv dGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdtdXNpa2N1YmUn CiBwa2duYW1lPW11c2lrY3ViZQogdmVyc2lvbj0zLjAuMgotcmV2aXNpb249MQorcmV2aXNpb249 MgogYnVpbGRfc3R5bGU9Y21ha2UKIG1ha2VfY21kPW1ha2UKIGNvbmZpZ3VyZV9hcmdzPSItRE5P X05DVVJTRVNXPTEiCgpGcm9tIGE1YWU0MmIyMTgxYjM3Nzc1YzE0ZWRhYjllODA2YmY3MjlhMzVj YmQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5j b20+CkRhdGU6IEZyaSwgMTAgTm92IDIwMjMgMTQ6NTM6NDUgLTA1MDAKU3ViamVjdDogW1BBVENI IDA5MC8xMDldIGVsZWN0cm9uMjQ6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9l bGVjdHJvbjI0L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCsp LCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9lbGVjdHJvbjI0L3RlbXBsYXRl IGIvc3JjcGtncy9lbGVjdHJvbjI0L3RlbXBsYXRlCmluZGV4IGVhZmI5YTBjNjk2MTMxLi40MmI1 N2RjNTEyZDgyMiAxMDA2NDQKLS0tIGEvc3JjcGtncy9lbGVjdHJvbjI0L3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvZWxlY3Ryb24yNC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ2VsZWN0cm9uMjQnCiBwa2duYW1lPWVsZWN0cm9uMjQKIHZlcnNpb249MjQuMy4w Ci1yZXZpc2lvbj0zCityZXZpc2lvbj00CiBfbm9kZXZlcj0xOC4xNC4wCiBfY2hyb21pdW12ZXI9 MTEyLjAuNTYxNS4xNjUKIGFyY2hzPSJ4ODZfNjQqIGFhcmNoNjQqIgoKRnJvbSBiNDI5MTY2ZWRi Njk5NTZhZTBlNmVkMWQ2NWI3NWQzNmI0NjAxMWU2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBGcmksIDEwIE5vdiAyMDIzIDE0 OjU0OjAwIC0wNTAwClN1YmplY3Q6IFtQQVRDSCAwOTEvMTA5XSBlbGVjdHJvbjE5OiByZXZidW1w IGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3MvZWxlY3Ryb24xOS90ZW1wbGF0ZSB8IDIgKy0KIDEg ZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvZWxlY3Ryb24xOS90ZW1wbGF0ZSBiL3NyY3BrZ3MvZWxlY3Ryb24xOS90ZW1wbGF0 ZQppbmRleCBiMWZkYjYzY2I2N2Q0Ni4uODgxZjA0ZDdkODI1YjcgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvZWxlY3Ryb24xOS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2VsZWN0cm9uMTkvdGVtcGxhdGUK QEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdlbGVjdHJvbjE5JwogcGtnbmFt ZT1lbGVjdHJvbjE5CiB2ZXJzaW9uPTE5LjAuOAotcmV2aXNpb249NAorcmV2aXNpb249NQogX25v ZGV2ZXI9MTYuMTQuMgogX2Nocm9taXVtdmVyPTEwMi4wLjUwMDUuMTI1CiBhcmNocz0ieDg2XzY0 KiBhYXJjaDY0KiBwcGM2NGxlKiIKCkZyb20gOGYxOTE1NTU2MDQzY2MxZmNmZjIzZDM4MTBjMGNi NWU0YjU5NzBiZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1 QGdtYWlsLmNvbT4KRGF0ZTogRnJpLCAxMCBOb3YgMjAyMyAxNDo1NDoxMyAtMDUwMApTdWJqZWN0 OiBbUEFUQ0ggMDkyLzEwOV0gd2YtcmVjb3JkZXI6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQog c3JjcGtncy93Zi1yZWNvcmRlci90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGlu c2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvd2YtcmVjb3Jk ZXIvdGVtcGxhdGUgYi9zcmNwa2dzL3dmLXJlY29yZGVyL3RlbXBsYXRlCmluZGV4IDA4Zjk4NmIw MzEwMDY3Li42M2M0NWNmNGI4MTRkNyAxMDA2NDQKLS0tIGEvc3JjcGtncy93Zi1yZWNvcmRlci90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3dmLXJlY29yZGVyL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnd2YtcmVjb3JkZXInCiBwa2duYW1lPXdmLXJlY29yZGVy CiB2ZXJzaW9uPTAuNC4xCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1tZXNv bgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIHNjZG9jIHdheWxhbmQtZGV2ZWwiCiBtYWtl ZGVwZW5kcz0id2F5bGFuZC1wcm90b2NvbHMgd2F5bGFuZC1kZXZlbCBmZm1wZWctZGV2ZWwgbGli Z2JtLWRldmVsIHgyNjQtZGV2ZWwKCkZyb20gMDczOGYyY2YxNjVhY2NmZDgwNWFiZWU4MDZjNGFj Yjg2OGQ1ODZmNCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1 QGdtYWlsLmNvbT4KRGF0ZTogRnJpLCAxMCBOb3YgMjAyMyAxNDo1NDoyNiAtMDUwMApTdWJqZWN0 OiBbUEFUQ0ggMDkzLzEwOV0gb2JzOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3Mv b2JzL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRl bGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9vYnMvdGVtcGxhdGUgYi9zcmNwa2dzL29i cy90ZW1wbGF0ZQppbmRleCBmZWI5NjQ5OTc3YThkNC4uMDg4OGZiM2FhYWNjZmUgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3Mvb2JzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvb2JzL3RlbXBsYXRlCkBAIC0x LDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnb2JzJwogcGtnbmFtZT1vYnMKIHZlcnNp b249MzAuMS4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBhcmNocz0iaTY4NiogeDg2XzY0KiBw cGM2NGxlKiBhYXJjaDY0KiByaXNjdjY0KiIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVf YXJncz0iLURPQlNfVkVSU0lPTl9PVkVSUklERT0ke3ZlcnNpb259IC1ERU5BQkxFX0pBQ0s9T04K CkZyb20gNTkwNjBkYmFkMDQ5ZGMwMDkwZGE4ZTFhYjU3MDUzZGRlNTg1MjBlNyBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogRnJp LCAxMCBOb3YgMjAyMyAxNDo1NDozNiAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggMDk0LzEwOV0gbWx0 NzogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL21sdDcvdGVtcGxhdGUgfCA0ICsr LS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9tbHQ3L3RlbXBsYXRlIGIvc3JjcGtncy9tbHQ3L3RlbXBsYXRlCmlu ZGV4IDY1ZWVkOTk4ZDM5ODMyLi4xOWZlMzVkNDdhZjNkNCAxMDA2NDQKLS0tIGEvc3JjcGtncy9t bHQ3L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbWx0Ny90ZW1wbGF0ZQpAQCAtMSwxMyArMSwxMyBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbWx0NycKIHBrZ25hbWU9bWx0NwogdmVyc2lvbj03LjIw LjAKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVf YXJncz0iLURTV0lHX1BZVEhPTj1PTiAtRE1PRF9RVDY9T04iCiBob3N0bWFrZWRlcGVuZHM9ImRv eHlnZW4gcGtnLWNvbmZpZyBsYWRzcGEtc2RrIHN3aWcgcHl0aG9uMyB3aGljaAogIHF0NS1ob3N0 LXRvb2xzIHF0NS1xbWFrZSBxdDYtYmFzZSBxdDYtdG9vbHMiCiBtYWtlZGVwZW5kcz0iYWxzYS1s aWItZGV2ZWwgZmZtcGVnLWRldmVsIGd0aystZGV2ZWwgamFjay1kZXZlbCBsYWRzcGEtc2RrCi0g bGliZXhpZi1kZXZlbCBsaWJzYW1wbGVyYXRlLWRldmVsIGxpYnhtbDItZGV2ZWwgc294LWRldmVs IFNETF9pbWFnZS1kZXZlbAorIGxpYmV4aWYtZGV2ZWwgbGlic2FtcGxlcmF0ZS1kZXZlbCBsaWJ4 bWwyLWRldmVsIHNveC1kZXZlbCBTREwyX2ltYWdlLWRldmVsCiAgZmZ0dy1kZXZlbCBmcmVpMHIt cGx1Z2lucyBweXRob24zLWRldmVsIHB1bHNlYXVkaW8tZGV2ZWwgbW92aXQtZGV2ZWwKICBsaWJ2 aWRzdGFiLWRldmVsIHF0NS1zdmctZGV2ZWwgcXQ2LXN2Zy1kZXZlbCBxdDYtcXQ1Y29tcGF0LWRl dmVsIgogZGVwZW5kcz0ibWx0Ny1kYXRhPj0ke3ZlcnNpb259XyR7cmV2aXNpb259IGxhZHNwYS1z ZGstZXhhbXBsZS1wbHVnaW5zIgoKRnJvbSA0NTM0YTdiZTEwZTEwOTAyZmYzOWQzZWYxMzQ1ODlh OGM5ZDhlN2EyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVA Z21haWwuY29tPgpEYXRlOiBGcmksIDEwIE5vdiAyMDIzIDE0OjU0OjQ4IC0wNTAwClN1YmplY3Q6 IFtQQVRDSCAwOTUvMTA5XSBxdDYtbXVsdGltZWRpYTogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0t CiBzcmNwa2dzL3F0Ni1tdWx0aW1lZGlhL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQs IDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9xdDYt bXVsdGltZWRpYS90ZW1wbGF0ZSBiL3NyY3BrZ3MvcXQ2LW11bHRpbWVkaWEvdGVtcGxhdGUKaW5k ZXggNjdhNTc3ZTEzMDBmZWEuLjFkYTYyNmVjZjUxNWE4IDEwMDY0NAotLS0gYS9zcmNwa2dzL3F0 Ni1tdWx0aW1lZGlhL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcXQ2LW11bHRpbWVkaWEvdGVtcGxh dGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdxdDYtbXVsdGltZWRpYScK IHBrZ25hbWU9cXQ2LW11bHRpbWVkaWEKIHZlcnNpb249Ni42LjAKLXJldmlzaW9uPTIKK3Jldmlz aW9uPTMKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURRVF9GRUFUVVJFX2dz dHJlYW1lcj1PTiIKIGhvc3RtYWtlZGVwZW5kcz0icGVybCBxdDYtZGVjbGFyYXRpdmUtaG9zdC10 b29scyBwa2ctY29uZmlnIHF0Ni1zaGFkZXJ0b29scyIKCkZyb20gMDk1ZDcyYzBkM2M1ZmI2MmFk MDNmZWNiZjAzOTJkZDcyMzNlNjIxMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxp Y2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogRnJpLCAxMCBOb3YgMjAyMyAxNTowMDoxNSAt MDUwMApTdWJqZWN0OiBbUEFUQ0ggMDk2LzEwOV0gYmFyZXNpcDogcmV2YnVtcCBmb3IgZmZtcGVn NgoKLS0tCiBzcmNwa2dzL2JhcmVzaXAvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwg MSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2JhcmVz aXAvdGVtcGxhdGUgYi9zcmNwa2dzL2JhcmVzaXAvdGVtcGxhdGUKaW5kZXggYjE2YjY3YmVhYjhk MmIuLmZlMjFlYmY0MGMwM2MxIDEwMDY0NAotLS0gYS9zcmNwa2dzL2JhcmVzaXAvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9iYXJlc2lwL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAnYmFyZXNpcCcKIHBrZ25hbWU9YmFyZXNpcAogdmVyc2lvbj0zLjYuMAotcmV2 aXNpb249MworcmV2aXNpb249NAogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0i cGtnLWNvbmZpZyBnbGliLWRldmVsIgogbWFrZWRlcGVuZHM9ImxpYmdzbS1kZXZlbCBsaWJwbmct ZGV2ZWwgb3BlbnNzbC1kZXZlbCBsaWJzbmRmaWxlLWRldmVsCgpGcm9tIDkzOTg0M2UzZjNjZTdh MTdlOTBiYTg0YmRlZTM5NTc4MDBkNjRmMzcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IEZyaSwgMTAgTm92IDIwMjMgMTU6MDI6 MzAgLTA1MDAKU3ViamVjdDogW1BBVENIIDA5Ny8xMDldIFFNUGxheTI6IHJldmJ1bXAgZm9yIGZm bXBlZzYKCi0tLQogc3JjcGtncy9RTVBsYXkyL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5n ZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9R TVBsYXkyL3RlbXBsYXRlIGIvc3JjcGtncy9RTVBsYXkyL3RlbXBsYXRlCmluZGV4IGFmNGNmNTA3 NzIxNGVhLi5hNWUxOWUxODQ0Yzc2MSAxMDA2NDQKLS0tIGEvc3JjcGtncy9RTVBsYXkyL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvUU1QbGF5Mi90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ1FNUGxheTInCiBwa2duYW1lPVFNUGxheTIKIHZlcnNpb249MjQuMDUu MjMKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBob3N0bWFrZWRl cGVuZHM9InBrZy1jb25maWcgcXQ1LXFtYWtlIHF0NS1ob3N0LXRvb2xzIgogbWFrZWRlcGVuZHM9 ImFsc2EtbGliLWRldmVsIGZmbXBlZy1kZXZlbCBsaWJhc3MtZGV2ZWwgbGliY2Rpby1kZXZlbCBs aWJnbWUtZGV2ZWwKCkZyb20gZmQ1MWYyNjAyNTYwMmRlOTVmYTVhNDhhMmRkNzNhYzdhZGFhMDFl YSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNv bT4KRGF0ZTogRnJpLCAxMCBOb3YgMjAyMyAxNTowMjozNCAtMDUwMApTdWJqZWN0OiBbUEFUQ0gg MDk4LzEwOV0gYWxzYS1wbHVnaW5zOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3Mv YWxzYS1wbHVnaW5zL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9u KCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hbHNhLXBsdWdpbnMvdGVt cGxhdGUgYi9zcmNwa2dzL2Fsc2EtcGx1Z2lucy90ZW1wbGF0ZQppbmRleCBhNTcwOGE3ZDgyYThm MC4uN2JmZGFkMDQ2YzQ4MzAgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYWxzYS1wbHVnaW5zL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvYWxzYS1wbHVnaW5zL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnYWxzYS1wbHVnaW5zJwogcGtnbmFtZT1hbHNhLXBsdWdpbnMK IHZlcnNpb249MS4yLjcuMQotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9Z251 LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS1tYWVtby1wbHVnaW4iCiBob3N0 bWFrZWRlcGVuZHM9InBrZy1jb25maWciCgpGcm9tIDVlNDc2NjNmODY5NmQ0YmI0MjhiMTI3MDBk ZDRjNWM2OGMwOTM3MDMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGlj ZTU1NUBnbWFpbC5jb20+CkRhdGU6IEZyaSwgMTAgTm92IDIwMjMgMTU6MDI6NDMgLTA1MDAKU3Vi amVjdDogW1BBVENIIDA5OS8xMDldIG1pbmlkbG5hOiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0K IHNyY3BrZ3MvbWluaWRsbmEvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNl cnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL21pbmlkbG5hL3Rl bXBsYXRlIGIvc3JjcGtncy9taW5pZGxuYS90ZW1wbGF0ZQppbmRleCA1ZmE5MjlmM2EwYzEyNC4u NzQyOTkxZWNkMDRhZmMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbWluaWRsbmEvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9taW5pZGxuYS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ21pbmlkbG5hJwogcGtnbmFtZT1taW5pZGxuYQogdmVyc2lvbj0xLjMuMwotcmV2 aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJl X2FyZ3M9IgogIC0tc2JpbmRpcj0vdXNyL2JpbgoKRnJvbSA2N2RjMTQ4YTQwZjk0ZDY3ODIwMTVl Zjg2NDk5YzRjZTA2ZTQ0NzQ0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8 emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBNb24sIDIwIE5vdiAyMDIzIDE3OjU3OjQ3IC0wNTAw ClN1YmplY3Q6IFtQQVRDSCAxMDAvMTA5XSBtcHY6IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQog c3JjcGtncy9tcHYvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24o KyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL21wdi90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvbXB2L3RlbXBsYXRlCmluZGV4IDMyZGQ5NTZjNmJmNmI2Li5mOGU5M2RiNTIzZDkyZCAx MDA2NDQKLS0tIGEvc3JjcGtncy9tcHYvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tcHYvdGVtcGxh dGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdtcHYnCiBwa2duYW1lPW1w dgogdmVyc2lvbj0wLjM4LjAKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0eWxlPW1l c29uCiBjb25maWd1cmVfYXJncz0iLURjZGRhPWVuYWJsZWQgLURkdmJpbj1lbmFibGVkIC1EZHZk bmF2PWVuYWJsZWQKICAtRGxpYm1wdj10cnVlIC1EY3BsdWdpbnM9ZW5hYmxlZAoKRnJvbSA5NDRi YjFiZTAzYWRjYzVmZWYzNTBkZjAyYzBmYjU5NWIxMzVkNjVhIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBNb24sIDIwIE5vdiAy MDIzIDE3OjU5OjI5IC0wNTAwClN1YmplY3Q6IFtQQVRDSCAxMDEvMTA5XSBxaW1ndjogcmV2YnVt cCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL3FpbWd2L3RlbXBsYXRlIHwgMiArLQogMSBmaWxl IGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9xaW1ndi90ZW1wbGF0ZSBiL3NyY3BrZ3MvcWltZ3YvdGVtcGxhdGUKaW5kZXggZGQzNDFk ZmUxYmZjZTguLjhhN2UxYzA4MWVmMTJmIDEwMDY0NAotLS0gYS9zcmNwa2dzL3FpbWd2L3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvcWltZ3YvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdxaW1ndicKIHBrZ25hbWU9cWltZ3YKIHZlcnNpb249MS4wLjIKLXJldmlz aW9uPTMKK3JldmlzaW9uPTQKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iJCh2 b3B0X2lmIHZpZGVvIC1EVklERU9fU1VQUE9SVD1PTiAtRFZJREVPX1NVUFBPUlQ9T0ZGKQogICQo dm9wdF9pZiBzY2FsZSAtRE9QRU5DVl9TVVBQT1JUPU9OIC1ET1BFTkNWX1NVUFBPUlQ9T0ZGKQoK RnJvbSAxNmM4YjNlNWFlZmM4ZmNkOTExZjFiOWRjZDI2NTc1OTBkOTg4NTM4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiB6bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBNb24s IDIwIE5vdiAyMDIzIDE4OjAwOjM2IC0wNTAwClN1YmplY3Q6IFtQQVRDSCAxMDIvMTA5XSBrZmls ZW1ldGFkYXRhNTogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2tmaWxlbWV0YWRh dGE1L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRl bGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9rZmlsZW1ldGFkYXRhNS90ZW1wbGF0ZSBi L3NyY3BrZ3Mva2ZpbGVtZXRhZGF0YTUvdGVtcGxhdGUKaW5kZXggYTBjNGQ4MDkzOTUzMjMuLmI1 ODRmODVmZjIwNThiIDEwMDY0NAotLS0gYS9zcmNwa2dzL2tmaWxlbWV0YWRhdGE1L3RlbXBsYXRl CisrKyBiL3NyY3BrZ3Mva2ZpbGVtZXRhZGF0YTUvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdrZmlsZW1ldGFkYXRhNScKIHBrZ25hbWU9a2ZpbGVtZXRhZGF0 YTUKIHZlcnNpb249NS4xMTUuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9 Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0ia2NvcmVhZGRvbnMgZXh0cmEtY21ha2UtbW9kdWxlcyBw a2ctY29uZmlnIHF0NS1ob3N0LXRvb2xzIHF0NS1xbWFrZQogIGdldHRleHQga2NvcmVhZGRvbnMg cHl0aG9uMyIKCkZyb20gNDRjZGI1MDEzNDI4NTIxMTIwYzE3OTVjMjBjZjY0MTI3OTQwMDZlMCBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4K RGF0ZTogRnJpLCA4IERlYyAyMDIzIDExOjQ2OjAxIC0wNTAwClN1YmplY3Q6IFtQQVRDSCAxMDMv MTA5XSB2YmEtbTogcmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL3ZiYS1tL3RlbXBs YXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0p CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy92YmEtbS90ZW1wbGF0ZSBiL3NyY3BrZ3MvdmJhLW0vdGVt cGxhdGUKaW5kZXggM2QxMzVlZmExZDBiNjkuLjNjNWEyMGRiMGZhOTg0IDEwMDY0NAotLS0gYS9z cmNwa2dzL3ZiYS1tL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvdmJhLW0vdGVtcGxhdGUKQEAgLTIs NyArMiw3IEBACiBwa2duYW1lPXZiYS1tCiByZXZlcnRzPTEyOTJfMgogdmVyc2lvbj0yLjEuOQot cmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdz PSItREVOQUJMRV9HVEs9VFJVRSAtREVOQUJMRV9GRk1QRUc9VFJVRSAtREVOQUJMRV9MSU5LPVRS VUUgLURDTUFLRV9CVUlMRF9UWVBFPVJlbGVhc2UiCiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQg cGtnLWNvbmZpZyB1bnppcCB6aXAgeWFzbSB3eFdpZGdldHMtZ3RrMy1kZXZlbCIKCkZyb20gNjZm ZTgyOGZhM2ZkZjdhZTc5NGY3OWFiZWFkMDEwN2FiMmQwNjk5NSBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogRnJpLCA4IERlYyAy MDIzIDExOjQ2OjE5IC0wNTAwClN1YmplY3Q6IFtQQVRDSCAxMDQvMTA5XSBkb2xwaGluLWVtdTog cmV2YnVtcCBmb3IgZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2F1ZGFjaXR5L3BhdGNoZXMvaHNjcm9s bC5wYXRjaCAgICB8IDI2ICsrKysrKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2RvbHBoaW4t ZW11L3BhdGNoZXMvaXBwcm90by5wYXRjaCB8IDEzICsrKysrKysrKysrKwogc3JjcGtncy9kb2xw aGluLWVtdS90ZW1wbGF0ZSAgICAgICAgICAgICAgfCAgMiArLQogMyBmaWxlcyBjaGFuZ2VkLCA0 MCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtn cy9hdWRhY2l0eS9wYXRjaGVzL2hzY3JvbGwucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNw a2dzL2RvbHBoaW4tZW11L3BhdGNoZXMvaXBwcm90by5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvYXVkYWNpdHkvcGF0Y2hlcy9oc2Nyb2xsLnBhdGNoIGIvc3JjcGtncy9hdWRhY2l0eS9wYXRj aGVzL2hzY3JvbGwucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw MDAuLjJlMDgzNzkyZDhlMTE0Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9hdWRhY2l0eS9w YXRjaGVzL2hzY3JvbGwucGF0Y2gKQEAgLTAsMCArMSwyNiBAQAorLS0tIGEvbGlicmFyaWVzL2xp Yi12aWV3cG9ydC9WaWV3cG9ydC5jcHAJMjAyNC0wNi0wMSAwOToyNTo1OC45MTU4NTUwNTcgLTA0 MDAKKysrKyBiL2xpYnJhcmllcy9saWItdmlld3BvcnQvVmlld3BvcnQuY3BwCTIwMjQtMDYtMDEg MTE6MDY6MDguNzc5Nzk5NTg5IC0wNDAwCitAQCAtMzI2LDEwICszMjYsMTAgQEAKKyAgICBib29s IG5ld3ZzdGF0ZSA9IHBhbmVsSGVpZ2h0IDwgdG90YWxIZWlnaHQ7CisKKyAgICAvLyBIaWRlIHNj cm9sbGJhciB0aHVtYnMgYW5kIGJ1dHRvbnMgaWYgbm90IHNjcm9sbGFibGUKKy0gICBpZiAobXBD YWxsYmFja3MpIHsKKy0gICAgICBtcENhbGxiYWNrcy0+U2hvd0hvcml6b250YWxTY3JvbGxiYXIo bmV3aHN0YXRlKTsKKy0gICAgICBtcENhbGxiYWNrcy0+U2hvd1ZlcnRpY2FsU2Nyb2xsYmFyKG5l d3ZzdGF0ZSk7CistICAgfQorKyAgIC8vaWYgKG1wQ2FsbGJhY2tzKSB7CisrICAgLy8gICBtcENh bGxiYWNrcy0+U2hvd0hvcml6b250YWxTY3JvbGxiYXIobmV3aHN0YXRlKTsKKysgICAvLyAgIG1w Q2FsbGJhY2tzLT5TaG93VmVydGljYWxTY3JvbGxiYXIobmV3dnN0YXRlKTsKKysgICAvL30KKwor ICAgIC8vIFdoZW4gbm90IHNjcm9sbGFibGUgaW4gZWl0aGVyIGF4aXMsIGFsaWduIHZpZXdwb3J0 IHRvIHRvcCBvciBsZWZ0IGFuZAorICAgIC8vIHJlcGFpbnQgaXQgbGF0ZXIKK0BAIC0zNzgsNyAr Mzc4LDcgQEAKKyAgICAgICAgICB0b3RhbEhlaWdodCAvIHNjcm9sbFN0ZXAsCisgICAgICAgICAg cGFuZWxIZWlnaHQgLyBzY3JvbGxTdGVwLCB0cnVlKTsKKworLSAgIHJlc2Nyb2xsID0gKHJlc2Ny b2xsICYmCisrICAgcmVzY3JvbGwgPSAocmVzY3JvbGwgfHwKKyAgICAgICAgKHZpZXdJbmZvLkdl dFNjcmVlbkVuZFRpbWUoKSAtIHZpZXdJbmZvLmhwb3MpIDwgdG90YWwpOworICAgIFB1Ymxpc2go eyAocmVmcmVzaCB8fCByZXNjcm9sbCksCisgICAgICAgKG9sZGhzdGF0ZSAhPSBuZXdoc3RhdGUg fHwgb2xkdnN0YXRlICE9IG5ld3ZzdGF0ZSksIGZhbHNlIH0pOwpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9kb2xwaGluLWVtdS9wYXRjaGVzL2lwcHJvdG8ucGF0Y2ggYi9zcmNwa2dzL2RvbHBoaW4tZW11 L3BhdGNoZXMvaXBwcm90by5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw MDAwMDAwMC4uNjdjMzcxZjBiNmE5MDAKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2RvbHBo aW4tZW11L3BhdGNoZXMvaXBwcm90by5wYXRjaApAQCAtMCwwICsxLDEzIEBACistLS0gYS9Tb3Vy Y2UvQ29yZS9Db3JlL0hXL0VYSS9CQkEvQnVpbHRJbi5oCTIwMjMtMDUtMTEgMTc6MDI6MzAuMDAw MDAwMDAwIC0wNDAwCisrKysgYi9Tb3VyY2UvQ29yZS9Db3JlL0hXL0VYSS9CQkEvQnVpbHRJbi5o CTIwMjQtMDYtMDQgMDk6MjQ6MTkuNDc2MjYyMzQ1IC0wNDAwCitAQCAtMjAsOSArMjAsNiBAQAor IGNvbnN0ZXhwciB1MTYgVENQX0ZMQUdfRklOID0gMHgxOworIGNvbnN0ZXhwciB1MTYgVENQX0ZM QUdfUlNUID0gMHg0OworIAorLWNvbnN0ZXhwciB1MTYgSVBfUFJPVE9DT0wgPSAweDgwMDsKKy1j b25zdGV4cHIgdTE2IEFSUF9QUk9UT0NPTCA9IDB4ODA2OworLQorIGNvbnN0ZXhwciB1OCBNQVhf VENQX0JVRkZFUiA9IDQ7CisgY29uc3RleHByIHUxNiBNQVhfVURQX0xFTkdUSCA9IDE1MDA7Cisg Y29uc3RleHByIHUxNiBNQVhfVENQX0xFTkdUSCA9IDQ0MDsKKwpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9kb2xwaGluLWVtdS90ZW1wbGF0ZSBiL3NyY3BrZ3MvZG9scGhpbi1lbXUvdGVtcGxhdGUKaW5k ZXggODYyZDNhZTk2NGVlYzQuLmE3YWUwZWZiNThmYjc1IDEwMDY0NAotLS0gYS9zcmNwa2dzL2Rv bHBoaW4tZW11L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZG9scGhpbi1lbXUvdGVtcGxhdGUKQEAg LTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdkb2xwaGluLWVtdScKIHBrZ25hbWU9 ZG9scGhpbi1lbXUKIHZlcnNpb249NS4wLjE5MzY4Ci1yZXZpc2lvbj0zCityZXZpc2lvbj00CiBf ZG9scGhpbl9jb21taXQ9ZGFkYmViNGJhZTdlN2ZhMjNhZjJiNDZlMGFkZDQxNDMwOTRkYzEwNwog X21nYmFfY29tbWl0PTQ0ZTA3NGExNWU5NjUxNDgxZjdmNjUyYWMwMDZhN2M5ZDU4Y2JlYjkKIF9n b29nbGV0ZXN0X2NvbW1pdD1iZTAzZDAwZjVmMGNjM2E5OTdkMWEzNjhiZWU4YTFmZTkzNjUxZjQ4 CgpGcm9tIDRiNDdmNjJkYzQyZGEwODY5ZmIzYWYyZjhiYzk0YjlkMzA1ZDNiNDggTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IHpsaWNlIDx6bGljZTU1NUBnbWFpbC5jb20+CkRhdGU6IFR1 ZSwgMTkgRGVjIDIwMjMgMTU6Mzg6NTEgLTA1MDAKU3ViamVjdDogW1BBVENIIDEwNS8xMDldIHF0 b3g6IHJldmJ1bXAgZm9yIGZmbXBlZzQKCi0tLQogc3JjcGtncy9xdG94L3RlbXBsYXRlIHwgNCAr Ky0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvcXRveC90ZW1wbGF0ZSBiL3NyY3BrZ3MvcXRveC90ZW1wbGF0ZQpp bmRleCBiYjcwZTdmNTEyNDBhNC4uNzU1ZTQ0NjJiYzAxMzcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv cXRveC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3F0b3gvdGVtcGxhdGUKQEAgLTEsMTMgKzEsMTMg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3F0b3gnCiBwa2duYW1lPXF0b3gKIHZlcnNpb249MS4x Ny42Ci1yZXZpc2lvbj0zCityZXZpc2lvbj00CiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJl X2FyZ3M9Ii1EVVBEQVRFX0NIRUNLPU9GRgogIC1ER0lUX0RFU0NSSUJFPSR7dmVyc2lvbn0KICAk KHZvcHRfaWYgc25vcmVub3RpZnkgLURERVNLVE9QX05PVElGSUNBVElPTlM9T04pIgogaG9zdG1h a2VkZXBlbmRzPSJwa2ctY29uZmlnIHF0NS1ob3N0LXRvb2xzIHF0NS1kZXZlbCIKLW1ha2VkZXBl bmRzPSJmZm1wZWctZGV2ZWwgbGliZXhpZi1kZXZlbCBsaWJvcGVuYWwtZGV2ZWwgbGlic29kaXVt LWRldmVsCittYWtlZGVwZW5kcz0iZmZtcGVnNC1kZXZlbCBsaWJleGlmLWRldmVsIGxpYm9wZW5h bC1kZXZlbCBsaWJzb2RpdW0tZGV2ZWwKICBsaWJ2cHgtZGV2ZWwgb3B1cy1kZXZlbCBxcmVuY29k ZS1kZXZlbCBxdDUtc3ZnLWRldmVsIHNvbm5ldC1kZXZlbAogIHNxbGNpcGhlci1kZXZlbCB0b3hj b3JlLWRldmVsCiAgJCh2b3B0X2lmIHNub3Jlbm90aWZ5IHNub3Jlbm90aWZ5LWRldmVsKSIKCkZy b20gMzAwN2Y1ZjliOWEwOGU0YjFmNmNiMjlhY2ZhZTgwNmJkMzBjZGFmMiBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogVGh1LCAx MSBKYW4gMjAyNCAxMTo1MjowMCAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggMTA2LzEwOV0gYXJjYW46 IHJldmJ1bXAgZm9yIGZmbXBlZzYKCi0tLQogc3JjcGtncy9hcmNhbi90ZW1wbGF0ZSB8IDIgKy0K IDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvYXJjYW4vdGVtcGxhdGUgYi9zcmNwa2dzL2FyY2FuL3RlbXBsYXRlCmluZGV4 IGZmOTA5MWY5MGViYjEwLi4wMzAwOTFhNmNjOWQwYyAxMDA2NDQKLS0tIGEvc3JjcGtncy9hcmNh bi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2FyY2FuL3RlbXBsYXRlCkBAIC0yLDcgKzIsNyBAQAog IyAhISBrZWVwIHN5bmNlZCB3aXRoOiBhY2ZnZnMgYWNsaXAgYWxvYWRpbWFnZQogcGtnbmFtZT1h cmNhbgogdmVyc2lvbj0wLjYuMi4xCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBjcmVhdGVfd3Jr c3JjPXllcwogYnVpbGRfd3Jrc3JjPWFyY2FuL3NyYwogYnVpbGRfc3R5bGU9Y21ha2UKCkZyb20g NTI2MDNiOTkzMzhmM2Y5MDFlMGIwZDY4ZjlkY2I4ODEyNzZlNzE4YyBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogemxpY2UgPHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogVGh1LCAxMSBK YW4gMjAyNCAxMTo1MjoxMCAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggMTA3LzEwOV0gbm90Y3Vyc2Vz OiByZXZidW1wIGZvciBmZm1wZWc2CgotLS0KIHNyY3BrZ3Mvbm90Y3Vyc2VzL3RlbXBsYXRlIHwg MiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9ub3RjdXJzZXMvdGVtcGxhdGUgYi9zcmNwa2dzL25vdGN1cnNlcy90 ZW1wbGF0ZQppbmRleCA0OGE3NDYzY2I2OGViOS4uNTE1ZjMxNmFiNDU3NmMgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3Mvbm90Y3Vyc2VzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvbm90Y3Vyc2VzL3RlbXBs YXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbm90Y3Vyc2VzJwogcGtn bmFtZT1ub3RjdXJzZXMKIHZlcnNpb249My4wLjkKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1 aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURVU0VfU1RBVElDPU9OIC1EVVNFX1FS Q09ERUdFTj1PbiAkKHZvcHRfYm9vbCBtYW4gVVNFX1BBTkRPQykiCiBob3N0bWFrZWRlcGVuZHM9 InBrZy1jb25maWcgJCh2b3B0X2lmIG1hbiBwYW5kb2MpIgoKRnJvbSA2NDE4OGI2ZmUxYTY2ZmI3 MjVjYmUxY2ZjN2JiYTEwNjZjZDcxN2ZlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB6 bGljZSA8emxpY2U1NTVAZ21haWwuY29tPgpEYXRlOiBNb24sIDMgSnVuIDIwMjQgMTk6NDU6Mjkg LTA0MDAKU3ViamVjdDogW1BBVENIIDEwOC8xMDldIG1wZDogcmV2YnVtcCBmb3IgZmZtcGVnNgoK LS0tCiBzcmNwa2dzL21wZC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2Vy dGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXBkL3RlbXBsYXRl IGIvc3JjcGtncy9tcGQvdGVtcGxhdGUKaW5kZXggYjhlMmJkNGMxYjU5YzguLmRjMzQ2OTk3YTkw OTdlIDEwMDY0NAotLS0gYS9zcmNwa2dzL21wZC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL21wZC90 ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ21wZCcKIHBrZ25h bWU9bXBkCiB2ZXJzaW9uPTAuMjMuMTUKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0 eWxlPW1lc29uCiBjb25maWd1cmVfYXJncz0iLURvcHVzPWVuYWJsZWQgLURtaWttb2Q9ZW5hYmxl ZCAtRG5laWdoYm9yPXRydWUKICAtRHNvdW5kY2xvdWQ9ZW5hYmxlZCAtRHBpcGU9dHJ1ZSAtRHR3 b2xhbWU9ZW5hYmxlZCAtRGJ6aXAyPWVuYWJsZWQKCkZyb20gOTRmY2Y2YzNkMzgzMDliZGUyZDAx OTAyMTY4ZGE3ODgwZjQ0NDM2OCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogemxpY2Ug PHpsaWNlNTU1QGdtYWlsLmNvbT4KRGF0ZTogVHVlLCA0IEp1biAyMDI0IDA5OjA1OjE4IC0wNDAw ClN1YmplY3Q6IFtQQVRDSCAxMDkvMTA5XSBrZjYta2ZpbGVtZXRhZGF0YTogcmV2YnVtcCBmb3Ig ZmZtcGVnNgoKLS0tCiBzcmNwa2dzL2tmNi1rZmlsZW1ldGFkYXRhL3RlbXBsYXRlIHwgMiArLQog MSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9rZjYta2ZpbGVtZXRhZGF0YS90ZW1wbGF0ZSBiL3NyY3BrZ3Mva2Y2LWtmaWxl bWV0YWRhdGEvdGVtcGxhdGUKaW5kZXggOWViYzJjMmYyODMwNWIuLjc3ZGUxOTQwYWUyNTk1IDEw MDY0NAotLS0gYS9zcmNwa2dzL2tmNi1rZmlsZW1ldGFkYXRhL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3Mva2Y2LWtmaWxlbWV0YWRhdGEvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRl IGZpbGUgZm9yICdrZjYta2ZpbGVtZXRhZGF0YScKIHBrZ25hbWU9a2Y2LWtmaWxlbWV0YWRhdGEK IHZlcnNpb249Ni4yLjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtl CiBjb25maWd1cmVfYXJncz0iLURLREVfSU5TVEFMTF9RVFBMVUdJTkRJUj1saWIvcXQ2L3BsdWdp bnMiCiBob3N0bWFrZWRlcGVuZHM9ImV4dHJhLWNtYWtlLW1vZHVsZXMgcXQ2LXRvb2xzIHF0Ni1i YXNlCg== --===============5687929094384629480==--