From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from esa1.mentor.iphmx.com (esa1.mentor.iphmx.com [68.232.129.153]) by sourceware.org (Postfix) with ESMTPS id DAA133858D28 for ; Thu, 21 Jul 2022 12:33:41 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org DAA133858D28 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=codesourcery.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=mentor.com X-IronPort-AV: E=Sophos;i="5.92,289,1650960000"; d="diff'?scan'208";a="82793852" Received: from orw-gwy-02-in.mentorg.com ([192.94.38.167]) by esa1.mentor.iphmx.com with ESMTP; 21 Jul 2022 04:33:39 -0800 IronPort-SDR: ORmP3ZhJjW8+gdCleTRBygyH2NUzTiXmqVGYFPcRq0pK+CBldddd5N0BbZhijM75QX9F57bYWs 0aX1DpDlJqxLhbiG9xRAwSJ1VsqfQR+Z7sv3AFAgPVz0f1mr22jbiC7h+S4QB1C0kQReB6WrZ/ dwYg02se84VA0Pe1cDNx4aVnS/ClKU6HiE3rLODHJvrsYq4OOiWR4CBYLLjuKefdJQ0yct6PKi ahTgKfmu4LFEPDY/eixFx9Aapv6W21f7PA/73oKQtP10iJl7S/2p3uZH1dvwWuLTTGLFcCt76j Dlk= Content-Type: multipart/mixed; boundary="------------xf1YPAjCRi5R56nD9OasZemu" Message-ID: <1654f119-fe0e-71c5-c28d-9b8fd40b6b87@codesourcery.com> Date: Thu, 21 Jul 2022 14:33:32 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0 Subject: Re: [Patch] OpenMP: Support reverse offload (middle end part) Content-Language: en-US From: Tobias Burnus To: gcc-patches , Jakub Jelinek References: In-Reply-To: X-Originating-IP: [137.202.0.90] X-ClientProxiedBy: svr-ies-mbx-15.mgc.mentorg.com (139.181.222.15) To svr-ies-mbx-12.mgc.mentorg.com (139.181.222.12) X-Spam-Status: No, score=-11.4 required=5.0 tests=BAYES_00, GIT_PATCH_0, HEADER_FROM_DIFFERENT_DOMAINS, KAM_DMARC_STATUS, NICE_REPLY_A, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 21 Jul 2022 12:33:48 -0000 --------------xf1YPAjCRi5R56nD9OasZemu Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: quoted-printable Ups to quick/wrong patch file. I had found an issue related to 'noclone' (duplicated entries, dg-scan-dump issues with OpenACC) =E2=80=93 but ended = up to attach the wrong file... Changes: omp-low.cc and gcc/testsuite/*/goacc/. The rest is the same. Tobias On 21.07.22 12:55, Tobias Burnus wrote: > This patch does three things: > > (a) It removes a 'sorry' for 'device(ancestor:1)' and passes > GOMP_DEVICE_HOST_FALLBACK as device number. > > This is sufficient for full "reverse" offload support with > ENABLE_OFFLOADING > being false - and -foffload=3Ddisable. And for simple hello-world cases. > > > On the libgomp side, the 'requires reverse_offload' currently implies > that > the initial device is the only device. While that's all fine, this change > is insufficient if offloading devices are enabled during compilation as: > > > (b.1) The offload-device lto1 should not see the content of the > ancestor:1 target > region and all the calls it does. If it does, there will be link > errors for > functions not available and it also would pointlessly increase the > code size. > > Thus, the second part is to create an empty function for devices and a > full > version for the host. > > The general idea is: The device version can be used as lookup pointer > in the > offload_funcs table; thus, we both need a function on the device and a > call to > GOMP_target_ext. > > It turned out to be quite difficult as late in the processing changing a > FUNCTION_DECL is not that easy =E2=80=93 nor removing it after all analys= is > has been > done. I hope the current version is not too hackish =E2=80=93 and maybe > someone has > an idea how to best not to assembly the 'nonhost' version on the host. > (Not critical as it is small (having an empty body) - but still it > would be > nicer not to write it to .s file.) > > > (b.2) The omp-offload.cc assert showed that cloning and inlining happened > for the included libgomp example. While inlining should be okay (of > 'subroutine m2_tg_fn' (and for C/C++ 'tg_fn')) - cloning will break > the offload_func table lookup - and, hence, had to be excluded =E2=86=92 > "noclone". > I think it could also affect non-anchestor:1 code - but did not try to > create an example. > > > (c) Prepare for actual reverse offloading > While (b) already does some prep work for real offloading, at least > one more > step is needed: In order to allow that the function pointer can be > used for > offload_func table lookup, it has to be passed to libgomp. > > Currently, the 'fn' argument is nullified in on-device calls to > GOMP_target_ext. > The third part of this patch nullifies it now only for non-reverse > offloads. > > OK for mainline? > > * * * > > Next steps: Implement reverse offloading for devices. In theory, this > only > requires libgomp work, but let's see what else will be required. > > Tobias ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstra=C3=9Fe 201= , 80634 M=C3=BCnchen; Gesellschaft mit beschr=C3=A4nkter Haftung; Gesch=C3= =A4ftsf=C3=BChrer: Thomas Heurung, Frank Th=C3=BCrauf; Sitz der Gesellschaf= t: M=C3=BCnchen; Registergericht M=C3=BCnchen, HRB 106955 --------------xf1YPAjCRi5R56nD9OasZemu Content-Type: text/x-patch; charset="UTF-8"; name="omp-ancestor-ME-v2.diff" Content-Disposition: attachment; filename="omp-ancestor-ME-v2.diff" Content-Transfer-Encoding: base64 T3Blbk1QOiBTdXBwb3J0IHJldmVyc2Ugb2ZmbG9hZCAobWlkZGxlIGVuZCBwYXJ0KQoKZ2Nj L0NoYW5nZUxvZzoKCgkqIGludGVybmFsLWZuLmNjIChleHBhbmRfR09NUF9UQVJHRVRfUkVW KTogTmV3LgoJKiBpbnRlcm5hbC1mbi5kZWYgKEdPTVBfVEFSR0VUX1JFVik6IE5ldy4KCSog bHRvLWNncmFwaC5jYyAobHRvX291dHB1dF9ub2RlLCB2ZXJpZnlfbm9kZV9wYXJ0aXRpb24p OiBNYXJrCgknb21wIHRhcmdldCBkZXZpY2VfYW5jZXN0b3JfaG9zdCcgYXMgaW5fb3RoZXJf cGFydGl0aW9uIGFuZCBkb24ndAoJZXJyb3IgaWYgYWJzZW50LgoJKiBvbXAtbG93LmNjIChj cmVhdGVfb21wX2NoaWxkX2Z1bmN0aW9uKTogTWFyayBhcyAnbm9jbG9uZScuCgkqIG9tcC1l eHBhbmQuY2MgKGV4cGFuZF9vbXBfdGFyZ2V0KTogRm9yIHJldmVyc2Ugb2ZmbG9hZCwgcmVt b3ZlCglzb3JyeSwgdXNlIGRldmljZSA9IEdPTVBfREVWSUNFX0hPU1RfRkFMTEJBQ0sgYW5k IGNyZWF0ZQoJZW1wdHktYm9keSBub2hvc3QgZnVuY3Rpb24uCgkqIG9tcC1vZmZsb2FkLmNj IChleGVjdXRlX29tcF9kZXZpY2VfbG93ZXIpOiBIYW5kbGUKCUlGTl9HT01QX1RBUkdFVF9S RVYuCgkocGFzc19vbXBfdGFyZ2V0X2xpbms6OmV4ZWN1dGUpOiBGb3IgQUNDRUxfQ09NUElM RVIsIGRvbid0CgludWxsaWZ5IGZuIGFyZ3VtZW50IGZvciByZXZlcnNlIG9mZmxvYWQKCmxp YmdvbXAvQ2hhbmdlTG9nOgoKCSogbGliZ29tcC50ZXhpIChPcGVuTVAgNS4wKTogTWFyayAn YW5jZXN0b3InIGFzIGltcGxlbWVudGVkIGJ1dAoJcmVmZXIgdG8gJ3JlcXVpcmVzJy4KCSog dGVzdHN1aXRlL2xpYmdvbXAuYy1jKystY29tbW9uL3JldmVyc2Utb2ZmbG9hZC0xLWF1eC5j OiBOZXcgdGVzdC4KCSogdGVzdHN1aXRlL2xpYmdvbXAuYy1jKystY29tbW9uL3JldmVyc2Ut b2ZmbG9hZC0xLmM6IE5ldyB0ZXN0LgoJKiB0ZXN0c3VpdGUvbGliZ29tcC5mb3J0cmFuL3Jl dmVyc2Utb2ZmbG9hZC0xLWF1eC5mOTA6IE5ldyB0ZXN0LgoJKiB0ZXN0c3VpdGUvbGliZ29t cC5mb3J0cmFuL3JldmVyc2Utb2ZmbG9hZC0xLmY5MDogTmV3IHRlc3QuCgpnY2MvdGVzdHN1 aXRlL0NoYW5nZUxvZzoKCgkqIGMtYysrLWNvbW1vbi9nb21wL3JldmVyc2Utb2ZmbG9hZC0x LmM6IFJlbW92ZSBkZy1zb3JyeS4KCSogYy1jKystY29tbW9uL2dvbXAvdGFyZ2V0LWRldmlj ZS1hbmNlc3Rvci00LmM6IExpa2V3aXNlLgoJKiBnZm9ydHJhbi5kZy9nb21wL3RhcmdldC1k ZXZpY2UtYW5jZXN0b3ItNC5mOTA6IExpa2V3aXNlLgoJKiBnZm9ydHJhbi5kZy9nb21wL3Rh cmdldC1kZXZpY2UtYW5jZXN0b3ItNS5mOTA6IExpa2V3aXNlLgoJKiBjLWMrKy1jb21tb24v Z29hY2MvY2xhc3NpZnkta2VybmVscy1wYXJsb29wcy5jOiBBZGQgJ25vY2xvbmUnIHRvCglz Y2FuLXRyZWUtZHVtcC10aW1lcy4KCSogYy1jKystY29tbW9uL2dvYWNjL2NsYXNzaWZ5LWtl cm5lbHMtdW5wYXJhbGxlbGl6ZWQtcGFybG9vcHMuYzoKCUxpa2V3aXNlLgoJKiBjLWMrKy1j b21tb24vZ29hY2MvY2xhc3NpZnkta2VybmVscy11bnBhcmFsbGVsaXplZC5jOiBMaWtld2lz ZS4KCSogYy1jKystY29tbW9uL2dvYWNjL2NsYXNzaWZ5LWtlcm5lbHMuYzogTGlrZXdpc2Uu CgkqIGMtYysrLWNvbW1vbi9nb2FjYy9jbGFzc2lmeS1wYXJhbGxlbC5jOiBMaWtld2lzZS4K CSogYy1jKystY29tbW9uL2dvYWNjL2NsYXNzaWZ5LXNlcmlhbC5jOiBMaWtld2lzZS4KCSog Yy1jKystY29tbW9uL2dvYWNjL2tlcm5lbHMtY291bnRlci12YXJzLWZ1bmN0aW9uLXNjb3Bl LmM6IExpa2V3aXNlLgoJKiBjLWMrKy1jb21tb24vZ29hY2Mva2VybmVscy1sb29wLTIuYzog TGlrZXdpc2UuCgkqIGMtYysrLWNvbW1vbi9nb2FjYy9rZXJuZWxzLWxvb3AtMy5jOiBMaWtl d2lzZS4KCSogYy1jKystY29tbW9uL2dvYWNjL2tlcm5lbHMtbG9vcC1kYXRhLTIuYzogTGlr ZXdpc2UuCgkqIGMtYysrLWNvbW1vbi9nb2FjYy9rZXJuZWxzLWxvb3AtZGF0YS1lbnRlci1l eGl0LTIuYzogTGlrZXdpc2UuCgkqIGMtYysrLWNvbW1vbi9nb2FjYy9rZXJuZWxzLWxvb3At ZGF0YS1lbnRlci1leGl0LmM6IExpa2V3aXNlLgoJKiBjLWMrKy1jb21tb24vZ29hY2Mva2Vy bmVscy1sb29wLWRhdGEtdXBkYXRlLmM6IExpa2V3aXNlLgoJKiBjLWMrKy1jb21tb24vZ29h Y2Mva2VybmVscy1sb29wLWRhdGEuYzogTGlrZXdpc2UuCgkqIGMtYysrLWNvbW1vbi9nb2Fj Yy9rZXJuZWxzLWxvb3AtZy5jOiBMaWtld2lzZS4KCSogYy1jKystY29tbW9uL2dvYWNjL2tl cm5lbHMtbG9vcC1tb2Qtbm90LXplcm8uYzogTGlrZXdpc2UuCgkqIGMtYysrLWNvbW1vbi9n b2FjYy9rZXJuZWxzLWxvb3Atbi5jOiBMaWtld2lzZS4KCSogYy1jKystY29tbW9uL2dvYWNj L2tlcm5lbHMtbG9vcC1uZXN0LmM6IExpa2V3aXNlLgoJKiBjLWMrKy1jb21tb24vZ29hY2Mv a2VybmVscy1sb29wLmM6IExpa2V3aXNlLgoJKiBjLWMrKy1jb21tb24vZ29hY2Mva2VybmVs cy1vbmUtY291bnRlci12YXIuYzogTGlrZXdpc2UuCgkqIGMtYysrLWNvbW1vbi9nb2FjYy9r ZXJuZWxzLXBhcmFsbGVsLWxvb3AtZGF0YS1lbnRlci1leGl0LmM6IExpa2V3aXNlLgoJKiBn Zm9ydHJhbi5kZy9nb2FjYy9jbGFzc2lmeS1rZXJuZWxzLXBhcmxvb3BzLmY5NTogTGlrZXdp c2UuCgkqIGdmb3J0cmFuLmRnL2dvYWNjL2NsYXNzaWZ5LWtlcm5lbHMtdW5wYXJhbGxlbGl6 ZWQtcGFybG9vcHMuZjk1OgoJTGlrZXdpc2UuCgkqIGdmb3J0cmFuLmRnL2dvYWNjL2NsYXNz aWZ5LWtlcm5lbHMtdW5wYXJhbGxlbGl6ZWQuZjk1OiBMaWtld2lzZS4KCSogZ2ZvcnRyYW4u ZGcvZ29hY2MvY2xhc3NpZnkta2VybmVscy5mOTU6IExpa2V3aXNlLgoJKiBnZm9ydHJhbi5k Zy9nb2FjYy9jbGFzc2lmeS1wYXJhbGxlbC5mOTU6IExpa2V3aXNlLgoJKiBnZm9ydHJhbi5k Zy9nb2FjYy9jbGFzc2lmeS1zZXJpYWwuZjk1OiBMaWtld2lzZS4KCSogZ2ZvcnRyYW4uZGcv Z29hY2Mva2VybmVscy1sb29wLTIuZjk1OiBMaWtld2lzZS4KCSogZ2ZvcnRyYW4uZGcvZ29h Y2Mva2VybmVscy1sb29wLWRhdGEtMi5mOTU6IExpa2V3aXNlLgoJKiBnZm9ydHJhbi5kZy9n b2FjYy9rZXJuZWxzLWxvb3AtZGF0YS1lbnRlci1leGl0LTIuZjk1OiBMaWtld2lzZS4KCSog Z2ZvcnRyYW4uZGcvZ29hY2Mva2VybmVscy1sb29wLWRhdGEtZW50ZXItZXhpdC5mOTU6IExp a2V3aXNlLgoJKiBnZm9ydHJhbi5kZy9nb2FjYy9rZXJuZWxzLWxvb3AtZGF0YS11cGRhdGUu Zjk1OiBMaWtld2lzZS4KCSogZ2ZvcnRyYW4uZGcvZ29hY2Mva2VybmVscy1sb29wLWRhdGEu Zjk1OiBMaWtld2lzZS4KCSogZ2ZvcnRyYW4uZGcvZ29hY2Mva2VybmVscy1sb29wLW4uZjk1 OiBMaWtld2lzZS4KCSogZ2ZvcnRyYW4uZGcvZ29hY2Mva2VybmVscy1sb29wLmY5NTogTGlr ZXdpc2UuCgkqIGdmb3J0cmFuLmRnL2dvYWNjL2tlcm5lbHMtcGFyYWxsZWwtbG9vcC1kYXRh LWVudGVyLWV4aXQuZjk1OiBMaWtld2lzZS4KCiBnY2MvaW50ZXJuYWwtZm4uY2MgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgOCArKwogZ2NjL2ludGVybmFsLWZuLmRl ZiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEgKwogZ2NjL2x0by1jZ3Jh cGguY2MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjAgKysrLQogZ2Nj L29tcC1leHBhbmQuY2MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxMDcg KysrKysrKysrKysrKysrKysrKy0tCiBnY2Mvb21wLWxvdy5jYyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8ICAgNSArCiBnY2Mvb21wLW9mZmxvYWQuY2MgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA1MCArKysrKysrKysrCiAuLi4vYy1jKyst Y29tbW9uL2dvYWNjL2NsYXNzaWZ5LWtlcm5lbHMtcGFybG9vcHMuYyB8ICAgNiArLQogLi4u L2NsYXNzaWZ5LWtlcm5lbHMtdW5wYXJhbGxlbGl6ZWQtcGFybG9vcHMuYyAgICAgfCAgIDYg Ky0KIC4uLi9nb2FjYy9jbGFzc2lmeS1rZXJuZWxzLXVucGFyYWxsZWxpemVkLmMgICAgICAg IHwgICA2ICstCiAuLi4vYy1jKystY29tbW9uL2dvYWNjL2NsYXNzaWZ5LWtlcm5lbHMuYyAg ICAgICAgICB8ICAgNiArLQogLi4uL2MtYysrLWNvbW1vbi9nb2FjYy9jbGFzc2lmeS1wYXJh bGxlbC5jICAgICAgICAgfCAgIDQgKy0KIGdjYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dv YWNjL2NsYXNzaWZ5LXNlcmlhbC5jIHwgICA0ICstCiAuLi4vZ29hY2Mva2VybmVscy1jb3Vu dGVyLXZhcnMtZnVuY3Rpb24tc2NvcGUuYyAgICB8ICAgMiArLQogZ2NjL3Rlc3RzdWl0ZS9j LWMrKy1jb21tb24vZ29hY2Mva2VybmVscy1sb29wLTIuYyAgfCAgIDIgKy0KIGdjYy90ZXN0 c3VpdGUvYy1jKystY29tbW9uL2dvYWNjL2tlcm5lbHMtbG9vcC0zLmMgIHwgICAyICstCiAu Li4vYy1jKystY29tbW9uL2dvYWNjL2tlcm5lbHMtbG9vcC1kYXRhLTIuYyAgICAgICB8ICAg MiArLQogLi4uL2dvYWNjL2tlcm5lbHMtbG9vcC1kYXRhLWVudGVyLWV4aXQtMi5jICAgICAg ICAgfCAgIDIgKy0KIC4uLi9nb2FjYy9rZXJuZWxzLWxvb3AtZGF0YS1lbnRlci1leGl0LmMg ICAgICAgICAgIHwgICAyICstCiAuLi4vYy1jKystY29tbW9uL2dvYWNjL2tlcm5lbHMtbG9v cC1kYXRhLXVwZGF0ZS5jICB8ICAgMiArLQogLi4uL2MtYysrLWNvbW1vbi9nb2FjYy9rZXJu ZWxzLWxvb3AtZGF0YS5jICAgICAgICAgfCAgIDIgKy0KIGdjYy90ZXN0c3VpdGUvYy1jKyst Y29tbW9uL2dvYWNjL2tlcm5lbHMtbG9vcC1nLmMgIHwgICAyICstCiAuLi4vYy1jKystY29t bW9uL2dvYWNjL2tlcm5lbHMtbG9vcC1tb2Qtbm90LXplcm8uYyB8ICAgMiArLQogZ2NjL3Rl c3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2Mva2VybmVscy1sb29wLW4uYyAgfCAgIDIgKy0K IC4uLi9jLWMrKy1jb21tb24vZ29hY2Mva2VybmVscy1sb29wLW5lc3QuYyAgICAgICAgIHwg ICAyICstCiBnY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9rZXJuZWxzLWxvb3Au YyAgICB8ICAgMiArLQogLi4uL2MtYysrLWNvbW1vbi9nb2FjYy9rZXJuZWxzLW9uZS1jb3Vu dGVyLXZhci5jICAgfCAgIDIgKy0KIC4uLi9nb2FjYy9rZXJuZWxzLXBhcmFsbGVsLWxvb3At ZGF0YS1lbnRlci1leGl0LmMgIHwgICAyICstCiAuLi4vYy1jKystY29tbW9uL2dvbXAvcmV2 ZXJzZS1vZmZsb2FkLTEuYyAgICAgICAgICB8ICAgMiArLQogLi4uL2MtYysrLWNvbW1vbi9n b21wL3RhcmdldC1kZXZpY2UtYW5jZXN0b3ItNC5jICAgfCAgIDIgKy0KIC4uLi9nb2FjYy9j bGFzc2lmeS1rZXJuZWxzLXBhcmxvb3BzLmY5NSAgICAgICAgICAgIHwgICA2ICstCiAuLi4v Y2xhc3NpZnkta2VybmVscy11bnBhcmFsbGVsaXplZC1wYXJsb29wcy5mOTUgICB8ICAgNiAr LQogLi4uL2dvYWNjL2NsYXNzaWZ5LWtlcm5lbHMtdW5wYXJhbGxlbGl6ZWQuZjk1ICAgICAg fCAgIDYgKy0KIC4uLi9nZm9ydHJhbi5kZy9nb2FjYy9jbGFzc2lmeS1rZXJuZWxzLmY5NSAg ICAgICAgIHwgICA2ICstCiAuLi4vZ2ZvcnRyYW4uZGcvZ29hY2MvY2xhc3NpZnktcGFyYWxs ZWwuZjk1ICAgICAgICB8ICAgNCArLQogLi4uL2dmb3J0cmFuLmRnL2dvYWNjL2NsYXNzaWZ5 LXNlcmlhbC5mOTUgICAgICAgICAgfCAgIDQgKy0KIGdjYy90ZXN0c3VpdGUvZ2ZvcnRyYW4u ZGcvZ29hY2Mva2VybmVscy1sb29wLTIuZjk1IHwgICAyICstCiAuLi4vZ2ZvcnRyYW4uZGcv Z29hY2Mva2VybmVscy1sb29wLWRhdGEtMi5mOTUgICAgICB8ICAgMiArLQogLi4uL2dvYWNj L2tlcm5lbHMtbG9vcC1kYXRhLWVudGVyLWV4aXQtMi5mOTUgICAgICAgfCAgIDIgKy0KIC4u Li9nb2FjYy9rZXJuZWxzLWxvb3AtZGF0YS1lbnRlci1leGl0LmY5NSAgICAgICAgIHwgICAy ICstCiAuLi4vZ2ZvcnRyYW4uZGcvZ29hY2Mva2VybmVscy1sb29wLWRhdGEtdXBkYXRlLmY5 NSB8ICAgMiArLQogLi4uL2dmb3J0cmFuLmRnL2dvYWNjL2tlcm5lbHMtbG9vcC1kYXRhLmY5 NSAgICAgICAgfCAgIDIgKy0KIGdjYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29hY2Mva2Vy bmVscy1sb29wLW4uZjk1IHwgICAyICstCiBnY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dv YWNjL2tlcm5lbHMtbG9vcC5mOTUgICB8ICAgMiArLQogLi4uL2tlcm5lbHMtcGFyYWxsZWwt bG9vcC1kYXRhLWVudGVyLWV4aXQuZjk1ICAgICAgfCAgIDIgKy0KIC4uLi9nZm9ydHJhbi5k Zy9nb21wL3RhcmdldC1kZXZpY2UtYW5jZXN0b3ItNC5mOTAgIHwgICAyICstCiAuLi4vZ2Zv cnRyYW4uZGcvZ29tcC90YXJnZXQtZGV2aWNlLWFuY2VzdG9yLTUuZjkwICB8ICAgMiArLQog bGliZ29tcC9saWJnb21wLnRleGkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg IDIgKy0KIC4uLi9saWJnb21wLmMtYysrLWNvbW1vbi9yZXZlcnNlLW9mZmxvYWQtMS1hdXgu YyAgIHwgIDEwICsrCiAuLi4vbGliZ29tcC5jLWMrKy1jb21tb24vcmV2ZXJzZS1vZmZsb2Fk LTEuYyAgICAgICB8ICA4MyArKysrKysrKysrKysrKysrCiAuLi4vbGliZ29tcC5mb3J0cmFu L3JldmVyc2Utb2ZmbG9hZC0xLWF1eC5mOTAgICAgICB8ICAxMiArKysKIC4uLi9saWJnb21w LmZvcnRyYW4vcmV2ZXJzZS1vZmZsb2FkLTEuZjkwICAgICAgICAgIHwgIDg4ICsrKysrKysr KysrKysrKysrCiA1MSBmaWxlcyBjaGFuZ2VkLCA0MzMgaW5zZXJ0aW9ucygrKSwgNzMgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZ2NjL2ludGVybmFsLWZuLmNjIGIvZ2NjL2ludGVy bmFsLWZuLmNjCmluZGV4IDI4OTczZDk1N2ZiLi40NDUzMDE0MjM0MCAxMDA2NDQKLS0tIGEv Z2NjL2ludGVybmFsLWZuLmNjCisrKyBiL2djYy9pbnRlcm5hbC1mbi5jYwpAQCAtMzY4LDYg KzM2OCwxNCBAQCBleHBhbmRfR09NUF9TSU1UX1ZGIChpbnRlcm5hbF9mbiwgZ2NhbGwgKikK ICAgZ2NjX3VucmVhY2hhYmxlICgpOwogfQogCisvKiBUaGlzIHNob3VsZCBnZXQgZXhwYW5k ZWQgaW4gb21wX2RldmljZV9sb3dlciBwYXNzLiAgKi8KKworc3RhdGljIHZvaWQKK2V4cGFu ZF9HT01QX1RBUkdFVF9SRVYgKGludGVybmFsX2ZuLCBnY2FsbCAqKQoreworICBnY2NfdW5y ZWFjaGFibGUgKCk7Cit9CisKIC8qIExhbmUgaW5kZXggb2YgdGhlIGZpcnN0IFNJTVQgbGFu ZSB0aGF0IHN1cHBsaWVzIGEgbm9uLXplcm8gYXJndW1lbnQuCiAgICBUaGlzIGlzIGEgU0lN VCBjb3VudGVycGFydCB0byBHT01QX1NJTURfTEFTVF9MQU5FLCB1c2VkIHRvIHJlcHJlc2Vu dCB0aGUKICAgIGxhbmUgdGhhdCBleGVjdXRlZCB0aGUgbGFzdCBpdGVyYXRpb24gZm9yIGhh bmRsaW5nIE9wZW5NUCBsYXN0cHJpdmF0ZS4gICovCmRpZmYgLS1naXQgYS9nY2MvaW50ZXJu YWwtZm4uZGVmIGIvZ2NjL2ludGVybmFsLWZuLmRlZgppbmRleCA3YzM5OGJhYWRjOC4uODkx YmI4YzM2M2IgMTAwNjQ0Ci0tLSBhL2djYy9pbnRlcm5hbC1mbi5kZWYKKysrIGIvZ2NjL2lu dGVybmFsLWZuLmRlZgpAQCAtMzM2LDYgKzMzNiw3IEBAIERFRl9JTlRFUk5BTF9JTlRfRk4g KEZGUywgRUNGX0NPTlNUIHwgRUNGX05PVEhST1csIGZmcywgdW5hcnkpCiBERUZfSU5URVJO QUxfSU5UX0ZOIChQQVJJVFksIEVDRl9DT05TVCB8IEVDRl9OT1RIUk9XLCBwYXJpdHksIHVu YXJ5KQogREVGX0lOVEVSTkFMX0lOVF9GTiAoUE9QQ09VTlQsIEVDRl9DT05TVCB8IEVDRl9O T1RIUk9XLCBwb3Bjb3VudCwgdW5hcnkpCiAKK0RFRl9JTlRFUk5BTF9GTiAoR09NUF9UQVJH RVRfUkVWLCBFQ0ZfTk9WT1BTIHwgRUNGX0xFQUYgfCBFQ0ZfTk9USFJPVywgTlVMTCkKIERF Rl9JTlRFUk5BTF9GTiAoR09NUF9VU0VfU0lNVCwgRUNGX05PVk9QUyB8IEVDRl9MRUFGIHwg RUNGX05PVEhST1csIE5VTEwpCiBERUZfSU5URVJOQUxfRk4gKEdPTVBfU0lNVF9FTlRFUiwg RUNGX0xFQUYgfCBFQ0ZfTk9USFJPVywgTlVMTCkKIERFRl9JTlRFUk5BTF9GTiAoR09NUF9T SU1UX0VOVEVSX0FMTE9DLCBFQ0ZfTEVBRiB8IEVDRl9OT1RIUk9XLCBOVUxMKQpkaWZmIC0t Z2l0IGEvZ2NjL2x0by1jZ3JhcGguY2MgYi9nY2MvbHRvLWNncmFwaC5jYwppbmRleCA2ZDlj MzZlYThiNi4uMDYyNjc3YTMyZWIgMTAwNjQ0Ci0tLSBhL2djYy9sdG8tY2dyYXBoLmNjCisr KyBiL2djYy9sdG8tY2dyYXBoLmNjCkBAIC00MzAsNiArNDMwLDEzIEBAIGx0b19vdXRwdXRf bm9kZSAoc3RydWN0IGx0b19zaW1wbGVfb3V0cHV0X2Jsb2NrICpvYiwgc3RydWN0IGNncmFw aF9ub2RlICpub2RlLAogCSBhZnRlciByZWFkaW5nIGJhY2suICAqLwogICAgICAgaW5fb3Ro ZXJfcGFydGl0aW9uID0gMTsKICAgICB9CisgIGVsc2UgaWYgKFVOTElLRUxZIChsdG9fc3Ry ZWFtX29mZmxvYWRfcAorCQkgICAgICYmIGxvb2t1cF9hdHRyaWJ1dGUgKCJvbXAgdGFyZ2V0 IGRldmljZV9hbmNlc3Rvcl9ob3N0IiwKKwkJCQkJICBERUNMX0FUVFJJQlVURVMgKG5vZGUt PmRlY2wpKSkpCisgICAgLyogVGhpcyBzeW1ib2wgaXMgb25seSB1c2VkIGFzIGFyZ3VtZW50 IHRvIElGTl9HT01QX1RBUkdFVF9SRVY7IHRoaXMgSUZOCisgICAgICAgaXMgaWdub3JlZCBv biBBQ0NFTF9DT01QSUxFUi4gIFRodXMsIG1hcmsgaXQgYXMgaW5fb3RoZXJfcGFydGl0aW9u IHRvIHNpbGVuY2UKKyAgICAgICB2ZXJpZnlfbm9kZV9wYXJ0aXRpb24gZGlhZ25vc3RpYy4g ICovCisgICAgaW5fb3RoZXJfcGFydGl0aW9uID0gMTsKIAogICBjbG9uZV9vZiA9IG5vZGUt PmNsb25lX29mOwogICB3aGlsZSAoY2xvbmVfb2YKQEAgLTExNDAsMTAgKzExNDcsMTUgQEAg dmVyaWZ5X25vZGVfcGFydGl0aW9uIChzeW10YWJfbm9kZSAqbm9kZSkKICAgaWYgKG5vZGUt PmluX290aGVyX3BhcnRpdGlvbikKICAgICB7CiAgICAgICBpZiAoVFJFRV9DT0RFIChub2Rl LT5kZWNsKSA9PSBGVU5DVElPTl9ERUNMKQotCWVycm9yX2F0IChERUNMX1NPVVJDRV9MT0NB VElPTiAobm9kZS0+ZGVjbCksCi0JCSAgImZ1bmN0aW9uICVxcyBoYXMgYmVlbiByZWZlcmVu Y2VkIGluIG9mZmxvYWRlZCBjb2RlIGJ1dCIKLQkJICAiIGhhc24lJ3QgYmVlbiBtYXJrZWQg dG8gYmUgaW5jbHVkZWQgaW4gdGhlIG9mZmxvYWRlZCBjb2RlIiwKLQkJICBub2RlLT5uYW1l ICgpKTsKKwl7CisJICBpZiAobG9va3VwX2F0dHJpYnV0ZSAoIm9tcCB0YXJnZXQgZGV2aWNl X2FuY2VzdG9yX2hvc3QiLAorCQkJCURFQ0xfQVRUUklCVVRFUyAobm9kZS0+ZGVjbCkpICE9 IE5VTEwpCisJICAgIHJldHVybjsKKwkgIGVycm9yX2F0IChERUNMX1NPVVJDRV9MT0NBVElP TiAobm9kZS0+ZGVjbCksCisJCSAgICAiZnVuY3Rpb24gJXFzIGhhcyBiZWVuIHJlZmVyZW5j ZWQgaW4gb2ZmbG9hZGVkIGNvZGUgYnV0IgorCQkgICAgIiBoYXNuJSd0IGJlZW4gbWFya2Vk IHRvIGJlIGluY2x1ZGVkIGluIHRoZSBvZmZsb2FkZWQgY29kZSIsCisJCSAgICBub2RlLT5u YW1lICgpKTsKKwl9CiAgICAgICBlbHNlIGlmIChWQVJfUCAobm9kZS0+ZGVjbCkpCiAJZXJy b3JfYXQgKERFQ0xfU09VUkNFX0xPQ0FUSU9OIChub2RlLT5kZWNsKSwKIAkJICAidmFyaWFi bGUgJXFzIGhhcyBiZWVuIHJlZmVyZW5jZWQgaW4gb2ZmbG9hZGVkIGNvZGUgYnV0IgpkaWZm IC0tZ2l0IGEvZ2NjL29tcC1leHBhbmQuY2MgYi9nY2Mvb21wLWV4cGFuZC5jYwppbmRleCAx MDIzYzU2ZmMzZC4uNzRiMTU4OGUzNWUgMTAwNjQ0Ci0tLSBhL2djYy9vbXAtZXhwYW5kLmNj CisrKyBiL2djYy9vbXAtZXhwYW5kLmNjCkBAIC05NjUxLDcgKzk2NTEsNyBAQCBleHBhbmRf b21wX3RhcmdldCAoc3RydWN0IG9tcF9yZWdpb24gKnJlZ2lvbikKIHsKICAgYmFzaWNfYmxv Y2sgZW50cnlfYmIsIGV4aXRfYmIsIG5ld19iYjsKICAgc3RydWN0IGZ1bmN0aW9uICpjaGls ZF9jZnVuOwotICB0cmVlIGNoaWxkX2ZuLCBibG9jaywgdDsKKyAgdHJlZSBjaGlsZF9mbiwg Y2hpbGRfZm4yLCBibG9jaywgdCwgYzsKICAgZ2ltcGxlX3N0bXRfaXRlcmF0b3IgZ3NpOwog ICBnb21wX3RhcmdldCAqZW50cnlfc3RtdDsKICAgZ2ltcGxlICpzdG10OwpAQCAtOTY4OCwx MCArOTY4OCwxNiBAQCBleHBhbmRfb21wX3RhcmdldCAoc3RydWN0IG9tcF9yZWdpb24gKnJl Z2lvbikKICAgICAgIGdjY191bnJlYWNoYWJsZSAoKTsKICAgICB9CiAKLSAgY2hpbGRfZm4g PSBOVUxMX1RSRUU7CisgIHRyZWUgY2xhdXNlcyA9IGdpbXBsZV9vbXBfdGFyZ2V0X2NsYXVz ZXMgKGVudHJ5X3N0bXQpOworCisgIGJvb2wgaXNfYW5jZXN0b3IgPSBmYWxzZTsKKyAgY2hp bGRfZm4gPSBjaGlsZF9mbjIgPSBOVUxMX1RSRUU7CiAgIGNoaWxkX2NmdW4gPSBOVUxMOwog ICBpZiAob2ZmbG9hZGVkKQogICAgIHsKKyAgICAgIGMgPSBvbXBfZmluZF9jbGF1c2UgKGNs YXVzZXMsIE9NUF9DTEFVU0VfREVWSUNFKTsKKyAgICAgIGlmIChFTkFCTEVfT0ZGTE9BRElO RyAmJiBjKQorCWlzX2FuY2VzdG9yID0gT01QX0NMQVVTRV9ERVZJQ0VfQU5DRVNUT1IgKGMp OwogICAgICAgY2hpbGRfZm4gPSBnaW1wbGVfb21wX3RhcmdldF9jaGlsZF9mbiAoZW50cnlf c3RtdCk7CiAgICAgICBjaGlsZF9jZnVuID0gREVDTF9TVFJVQ1RfRlVOQ1RJT04gKGNoaWxk X2ZuKTsKICAgICB9CkBAIC05ODc5LDcgKzk4ODUsOCBAQCBleHBhbmRfb21wX3RhcmdldCAo c3RydWN0IG9tcF9yZWdpb24gKnJlZ2lvbikKIAl7CiAJICBpZiAoaW5fbHRvX3ApCiAJICAg IERFQ0xfUFJFU0VSVkVfUCAoY2hpbGRfZm4pID0gMTsKLQkgIHZlY19zYWZlX3B1c2ggKG9m ZmxvYWRfZnVuY3MsIGNoaWxkX2ZuKTsKKwkgIGlmICghaXNfYW5jZXN0b3IpCisJICAgIHZl Y19zYWZlX3B1c2ggKG9mZmxvYWRfZnVuY3MsIGNoaWxkX2ZuKTsKIAl9CiAKICAgICAgIGJv b2wgbmVlZF9hc20gPSBERUNMX0FTU0VNQkxFUl9OQU1FX1NFVF9QIChjdXJyZW50X2Z1bmN0 aW9uX2RlY2wpCkBAIC05OTE4LDExICs5OTI1LDg4IEBAIGV4cGFuZF9vbXBfdGFyZ2V0IChz dHJ1Y3Qgb21wX3JlZ2lvbiAqcmVnaW9uKQogCX0KIAogICAgICAgYWRqdXN0X2NvbnRleHRf YW5kX3Njb3BlIChyZWdpb24sIGdpbXBsZV9ibG9jayAoZW50cnlfc3RtdCksIGNoaWxkX2Zu KTsKKworICAgICAgLyogSGFuZGxlIHRoZSBjYXNlIHRoYXQgYW4gaW5uZXIgYW5jZXN0b3I6 MSB0YXJnZXQgaXMgY2FsbGVkIGJ5IGFuIG91dGVyCisJIHRhcmdldCByZWdpb24uICovCisg ICAgICBpZiAoIWlzX2FuY2VzdG9yKQorCWNncmFwaF9ub2RlOjpnZXQgKGNoaWxkX2ZuKS0+ Y2FsbHNfZGVjbGFyZV92YXJpYW50X2FsdAorCSAgfD0gY2dyYXBoX25vZGU6OmdldCAoY2Z1 bi0+ZGVjbCktPmNhbGxzX2RlY2xhcmVfdmFyaWFudF9hbHQ7CisgICAgICBlbHNlICAvKiBE dXBsaWNhdGUgZnVuY3Rpb24gdG8gY3JlYXRlIGVtcHR5IG5vbmhvc3QgdmFyaWFudC4gKi8K Kwl7CisJICAvKiBFbmFibGUgcGFzc19vbXBfZGV2aWNlX2xvd2VyIHBhc3MuICAqLworCSAg Y2dyYXBoX25vZGU6OmdldCAoY2Z1bi0+ZGVjbCktPmNhbGxzX2RlY2xhcmVfdmFyaWFudF9h bHQgPSAxOworCSAgY2dyYXBoX25vZGUgKmZuMl9ub2RlOworCSAgY2hpbGRfZm4yID0gYnVp bGRfZGVjbCAoREVDTF9TT1VSQ0VfTE9DQVRJT04gKGNoaWxkX2ZuKSwKKwkJCQkgIEZVTkNU SU9OX0RFQ0wsCisJCQkJICBjbG9uZV9mdW5jdGlvbl9uYW1lIChjaGlsZF9mbiwgIm5vaG9z dCIpLAorCQkJCSAgVFJFRV9UWVBFIChjaGlsZF9mbikpOworCSAgaWYgKGluX2x0b19wKQor CSAgICBERUNMX1BSRVNFUlZFX1AgKGNoaWxkX2ZuMikgPSAxOworCSAgVFJFRV9TVEFUSUMg KGNoaWxkX2ZuMikgPSAxOworCSAgREVDTF9BUlRJRklDSUFMIChjaGlsZF9mbjIpID0gMTsK KwkgIERFQ0xfSUdOT1JFRF9QIChjaGlsZF9mbjIpID0gMDsKKwkgIFRSRUVfUFVCTElDIChj aGlsZF9mbjIpID0gMDsKKwkgIERFQ0xfVU5JTkxJTkFCTEUgKGNoaWxkX2ZuMikgPSAxOwor CSAgREVDTF9FWFRFUk5BTCAoY2hpbGRfZm4yKSA9IDA7CisJICBERUNMX0NPTlRFWFQgKGNo aWxkX2ZuMikgPSBOVUxMX1RSRUU7CisJICBERUNMX0lOSVRJQUwgKGNoaWxkX2ZuMikgPSBt YWtlX25vZGUgKEJMT0NLKTsKKwkgIEJMT0NLX1NVUEVSQ09OVEVYVCAoREVDTF9JTklUSUFM IChjaGlsZF9mbjIpKSA9IGNoaWxkX2ZuMjsKKwkgIERFQ0xfQVRUUklCVVRFUyAoY2hpbGRf Zm4pCisJICAgID0gcmVtb3ZlX2F0dHJpYnV0ZSAoIm9tcCB0YXJnZXQgZW50cnlwb2ludCIs CisJCQkJREVDTF9BVFRSSUJVVEVTIChjaGlsZF9mbikpOworCSAgREVDTF9BVFRSSUJVVEVT IChjaGlsZF9mbjIpCisJICAgID0gdHJlZV9jb25zIChnZXRfaWRlbnRpZmllciAoIm9tcCB0 YXJnZXQgZGV2aWNlX2FuY2VzdG9yX25vaG9zdCIpLAorCQkJIE5VTExfVFJFRSwgY29weV9s aXN0IChERUNMX0FUVFJJQlVURVMgKGNoaWxkX2ZuKSkpOworCSAgREVDTF9BVFRSSUJVVEVT IChjaGlsZF9mbikKKwkgICAgPSB0cmVlX2NvbnMgKGdldF9pZGVudGlmaWVyICgib21wIHRh cmdldCBkZXZpY2VfYW5jZXN0b3JfaG9zdCIpLAorCQkJIE5VTExfVFJFRSwgREVDTF9BVFRS SUJVVEVTIChjaGlsZF9mbikpOworCSAgREVDTF9GVU5DVElPTl9TUEVDSUZJQ19PUFRJTUla QVRJT04gKGNoaWxkX2ZuMikKKwkgICAgPSBERUNMX0ZVTkNUSU9OX1NQRUNJRklDX09QVElN SVpBVElPTiAoY3VycmVudF9mdW5jdGlvbl9kZWNsKTsKKwkgIERFQ0xfRlVOQ1RJT05fU1BF Q0lGSUNfVEFSR0VUIChjaGlsZF9mbjIpCisJICAgID0gREVDTF9GVU5DVElPTl9TUEVDSUZJ Q19UQVJHRVQgKGN1cnJlbnRfZnVuY3Rpb25fZGVjbCk7CisJICBERUNMX0ZVTkNUSU9OX1ZF UlNJT05FRCAoY2hpbGRfZm4yKQorCSAgICA9IERFQ0xfRlVOQ1RJT05fVkVSU0lPTkVEIChj dXJyZW50X2Z1bmN0aW9uX2RlY2wpOworCisJICBmbjJfbm9kZSA9IGNncmFwaF9ub2RlOjpn ZXRfY3JlYXRlIChjaGlsZF9mbjIpOworCSAgZm4yX25vZGUtPm9mZmxvYWRhYmxlID0gMTsK KwkgIGZuMl9ub2RlLT5mb3JjZV9vdXRwdXQgPSAxOworCSAgbm9kZS0+b2ZmbG9hZGFibGUg PSAwOworCisJICB0ID0gYnVpbGRfZGVjbCAoREVDTF9TT1VSQ0VfTE9DQVRJT04gKGNoaWxk X2ZuKSwKKwkJCSAgUkVTVUxUX0RFQ0wsIE5VTExfVFJFRSwgdm9pZF90eXBlX25vZGUpOwor CSAgREVDTF9BUlRJRklDSUFMICh0KSA9IDE7CisJICBERUNMX0lHTk9SRURfUCAodCkgPSAx OworCSAgREVDTF9DT05URVhUICh0KSA9IGNoaWxkX2ZuMjsKKwkgIERFQ0xfUkVTVUxUIChj aGlsZF9mbjIpID0gdDsKKwkgIERFQ0xfU0FWRURfVFJFRSAoY2hpbGRfZm4yKSA9IGJ1aWxk MSAoUkVUVVJOX0VYUFIsCisJCQkJCQl2b2lkX3R5cGVfbm9kZSwgTlVMTCk7CisJICB0cmVl IHRtcCA9IERFQ0xfQVJHVU1FTlRTIChjaGlsZF9mbik7CisJICB0ID0gYnVpbGRfZGVjbCAo REVDTF9TT1VSQ0VfTE9DQVRJT04gKGNoaWxkX2ZuKSwgUEFSTV9ERUNMLAorCQkJICBERUNM X05BTUUgKHRtcCksIFRSRUVfVFlQRSAodG1wKSk7CisJICBERUNMX0FSVElGSUNJQUwgKHQp ID0gMTsKKwkgIERFQ0xfTkFNRUxFU1MgKHQpID0gMTsKKwkgIERFQ0xfQVJHX1RZUEUgKHQp ID0gcHRyX3R5cGVfbm9kZTsKKwkgIERFQ0xfQ09OVEVYVCAodCkgPSBjdXJyZW50X2Z1bmN0 aW9uX2RlY2w7CisJICBUUkVFX1VTRUQgKHQpID0gMTsKKwkgIFRSRUVfUkVBRE9OTFkgKHQp ID0gMTsKKwkgIERFQ0xfQVJHVU1FTlRTIChjaGlsZF9mbjIpID0gdDsKKwkgIGdjY19hc3Nl cnQgKFRSRUVfQ0hBSU4gKHRtcCkgPT0gTlVMTF9UUkVFKTsKKworCSAgZ2ltcGxpZnlfZnVu Y3Rpb25fdHJlZSAoY2hpbGRfZm4yKTsKKwkgIGNncmFwaF9ub2RlOjphZGRfbmV3X2Z1bmN0 aW9uIChjaGlsZF9mbjIsIHRydWUpOworCisJICB2ZWNfc2FmZV9wdXNoIChvZmZsb2FkX2Z1 bmNzLCBjaGlsZF9mbjIpOworCSAgaWYgKGR1bXBfZmlsZSAmJiAhZ2ltcGxlX2luX3NzYV9w IChjZnVuKSkKKwkgICAgeworCSAgICAgIGR1bXBfZnVuY3Rpb25faGVhZGVyIChkdW1wX2Zp bGUsIGNoaWxkX2ZuMiwgZHVtcF9mbGFncyk7CisJICAgICAgZHVtcF9mdW5jdGlvbl90b19m aWxlIChjaGlsZF9mbjIsIGR1bXBfZmlsZSwgZHVtcF9mbGFncyk7CisJICAgIH0KKwl9CiAg ICAgfQogCiAgIC8qIEVtaXQgYSBsaWJyYXJ5IGNhbGwgdG8gbGF1bmNoIHRoZSBvZmZsb2Fk aW5nIHJlZ2lvbiwgb3IgZG8gZGF0YQogICAgICB0cmFuc2ZlcnMuICAqLwotICB0cmVlIHQx LCB0MiwgdDMsIHQ0LCBkZXBlbmQsIGMsIGNsYXVzZXM7CisgIHRyZWUgdDEsIHQyLCB0Mywg dDQsIGRlcGVuZDsKICAgZW51bSBidWlsdF9pbl9mdW5jdGlvbiBzdGFydF9peDsKICAgdW5z aWduZWQgaW50IGZsYWdzX2kgPSAwOwogCkBAIC05OTcyLDggKzEwMDU2LDYgQEAgZXhwYW5k X29tcF90YXJnZXQgKHN0cnVjdCBvbXBfcmVnaW9uICpyZWdpb24pCiAgICAgICBnY2NfdW5y ZWFjaGFibGUgKCk7CiAgICAgfQogCi0gIGNsYXVzZXMgPSBnaW1wbGVfb21wX3RhcmdldF9j bGF1c2VzIChlbnRyeV9zdG10KTsKLQogICB0cmVlIGRldmljZSA9IE5VTExfVFJFRTsKICAg bG9jYXRpb25fdCBkZXZpY2VfbG9jID0gVU5LTk9XTl9MT0NBVElPTjsKICAgdHJlZSBnb2Fj Y19mbGFncyA9IE5VTExfVFJFRTsKQEAgLTEwMDA1LDcgKzEwMDg3LDggQEAgZXhwYW5kX29t cF90YXJnZXQgKHN0cnVjdCBvbXBfcmVnaW9uICpyZWdpb24pCiAJICAgIG5lZWRfZGV2aWNl X2FkanVzdG1lbnQgPSB0cnVlOwogCSAgZGV2aWNlX2xvYyA9IE9NUF9DTEFVU0VfTE9DQVRJ T04gKGMpOwogCSAgaWYgKE9NUF9DTEFVU0VfREVWSUNFX0FOQ0VTVE9SIChjKSkKLQkgICAg c29ycnlfYXQgKGRldmljZV9sb2MsICIlPGFuY2VzdG9yJT4gbm90IHlldCBzdXBwb3J0ZWQi KTsKKwkgICAgZGV2aWNlID0gYnVpbGRfaW50X2NzdCAoaW50ZWdlcl90eXBlX25vZGUsCisJ CQkJICAgIEdPTVBfREVWSUNFX0hPU1RfRkFMTEJBQ0spOwogCX0KICAgICAgIGVsc2UKIAl7 CkBAIC0xMDE4Miw3ICsxMDI2NSw3IEBAIGV4cGFuZF9vbXBfdGFyZ2V0IChzdHJ1Y3Qgb21w X3JlZ2lvbiAqcmVnaW9uKQogICBlbHNlCiAgICAgYXJncy5xdWlja19wdXNoIChkZXZpY2Up OwogICBpZiAob2ZmbG9hZGVkKQotICAgIGFyZ3MucXVpY2tfcHVzaCAoYnVpbGRfZm9sZF9h ZGRyX2V4cHIgKGNoaWxkX2ZuKSk7CisgICAgYXJncy5xdWlja19wdXNoIChidWlsZF9mb2xk X2FkZHJfZXhwciAoY2hpbGRfZm4yID8gY2hpbGRfZm4yIDogY2hpbGRfZm4pKTsKICAgYXJn cy5xdWlja19wdXNoICh0MSk7CiAgIGFyZ3MucXVpY2tfcHVzaCAodDIpOwogICBhcmdzLnF1 aWNrX3B1c2ggKHQzKTsKQEAgLTEwMzA0LDYgKzEwMzg3LDE0IEBAIGV4cGFuZF9vbXBfdGFy Z2V0IChzdHJ1Y3Qgb21wX3JlZ2lvbiAqcmVnaW9uKQogICAgIC8qICBQdXNoIHRlcm1pbmFs IG1hcmtlciAtIHplcm8uICAqLwogICAgIGFyZ3Muc2FmZV9wdXNoIChvYWNjX2xhdW5jaF9w YWNrICgwLCBOVUxMX1RSRUUsIDApKTsKIAorICBpZiAoY2hpbGRfZm4yKQorICAgIHsKKyAg ICAgIGcgPSBnaW1wbGVfYnVpbGRfY2FsbF9pbnRlcm5hbCAoSUZOX0dPTVBfVEFSR0VUX1JF ViwgMSwKKwkJCQkgICAgICBidWlsZF9mb2xkX2FkZHJfZXhwciAoY2hpbGRfZm4pKTsKKyAg ICAgIGdpbXBsZV9zZXRfbG9jYXRpb24gKGcsIGdpbXBsZV9sb2NhdGlvbiAoZW50cnlfc3Rt dCkpOworICAgICAgZ3NpX2luc2VydF9iZWZvcmUgKCZnc2ksIGcsIEdTSV9TQU1FX1NUTVQp OworICAgIH0KKwogICBnID0gZ2ltcGxlX2J1aWxkX2NhbGxfdmVjIChidWlsdGluX2RlY2xf ZXhwbGljaXQgKHN0YXJ0X2l4KSwgYXJncyk7CiAgIGdpbXBsZV9zZXRfbG9jYXRpb24gKGcs IGdpbXBsZV9sb2NhdGlvbiAoZW50cnlfc3RtdCkpOwogICBnc2lfaW5zZXJ0X2JlZm9yZSAo JmdzaSwgZywgR1NJX1NBTUVfU1RNVCk7CmRpZmYgLS1naXQgYS9nY2Mvb21wLWxvdy5jYyBi L2djYy9vbXAtbG93LmNjCmluZGV4IGQ3M2MxNjVmMDI5Li5hMjZhYWI2NzdiOSAxMDA2NDQK LS0tIGEvZ2NjL29tcC1sb3cuY2MKKysrIGIvZ2NjL29tcC1sb3cuY2MKQEAgLTIxMDEsNiAr MjEwMSwxMSBAQCBjcmVhdGVfb21wX2NoaWxkX2Z1bmN0aW9uIChvbXBfY29udGV4dCAqY3R4 LCBib29sIHRhc2tfY29weSkKIAkgIGVsc2UKIAkgICAgdGFyZ2V0X2F0dHIgPSBOVUxMOwog CX0KKyAgICAgIGlmICh0YXJnZXRfYXR0cgorCSAgJiYgaXNfZ2ltcGxlX29tcF9vZmZsb2Fk ZWQgKGN0eC0+c3RtdCkKKwkgICYmIGxvb2t1cF9hdHRyaWJ1dGUgKCJub2Nsb25lIiwgREVD TF9BVFRSSUJVVEVTIChkZWNsKSkgPT0gTlVMTF9UUkVFKQorCURFQ0xfQVRUUklCVVRFUyAo ZGVjbCkgPSB0cmVlX2NvbnMgKGdldF9pZGVudGlmaWVyICgibm9jbG9uZSIpLAorCQkJCQkg ICBOVUxMX1RSRUUsIERFQ0xfQVRUUklCVVRFUyAoZGVjbCkpOwogICAgICAgaWYgKHRhcmdl dF9hdHRyKQogCURFQ0xfQVRUUklCVVRFUyAoZGVjbCkKIAkgID0gdHJlZV9jb25zIChnZXRf aWRlbnRpZmllciAodGFyZ2V0X2F0dHIpLApkaWZmIC0tZ2l0IGEvZ2NjL29tcC1vZmZsb2Fk LmNjIGIvZ2NjL29tcC1vZmZsb2FkLmNjCmluZGV4IDNhODkxMTkzNzFjLi43N2JlMDY2NTI2 NyAxMDA2NDQKLS0tIGEvZ2NjL29tcC1vZmZsb2FkLmNjCisrKyBiL2djYy9vbXAtb2ZmbG9h ZC5jYwpAQCAtMjYyNyw2ICsyNjI3LDQ3IEBAIGV4ZWN1dGVfb21wX2RldmljZV9sb3dlciAo KQogCXRyZWUgdHlwZSA9IGxocyA/IFRSRUVfVFlQRSAobGhzKSA6IGludGVnZXJfdHlwZV9u b2RlOwogCXN3aXRjaCAoZ2ltcGxlX2NhbGxfaW50ZXJuYWxfZm4gKHN0bXQpKQogCSAgewor CSAgY2FzZSBJRk5fR09NUF9UQVJHRVRfUkVWOgorCSAgICB7CisjaWZuZGVmIEFDQ0VMX0NP TVBJTEVSCisJICAgICAgZ2ltcGxlX3N0bXRfaXRlcmF0b3IgZ3NpMiA9IGdzaTsKKwkgICAg ICBnc2lfbmV4dCAoJmdzaTIpOworCSAgICAgIGdjY19hc3NlcnQgKCFnc2lfZW5kX3AgKGdz aTIpKTsKKwkgICAgICBnY2NfYXNzZXJ0IChnaW1wbGVfY2FsbF9idWlsdGluX3AgKGdzaV9z dG10IChnc2kyKSwKKwkJCQkJCSBCVUlMVF9JTl9HT01QX1RBUkdFVCkpOworCSAgICAgIHRy ZWUgb2xkX2RlY2wKKwkJPSBUUkVFX09QRVJBTkQgKGdpbXBsZV9jYWxsX2FyZyAoZ3NpX3N0 bXQgKGdzaTIpLCAxKSwgMCk7CisJICAgICAgdHJlZSBuZXdfZGVjbCA9IGdpbXBsZV9jYWxs X2FyZyAoZ3NpX3N0bXQgKGdzaSksIDApOworCSAgICAgIGdpbXBsZV9jYWxsX3NldF9hcmcg KGdzaV9zdG10IChnc2kyKSwgMSwgbmV3X2RlY2wpOworCSAgICAgIHVwZGF0ZV9zdG10IChn c2lfc3RtdCAoZ3NpMikpOworCSAgICAgIG5ld19kZWNsID0gVFJFRV9PUEVSQU5EIChuZXdf ZGVjbCwgMCk7CisJICAgICAgdW5zaWduZWQgaTsKKwkgICAgICB1bnNpZ25lZCBudW1fZnVu Y3MgPSB2ZWNfc2FmZV9sZW5ndGggKG9mZmxvYWRfZnVuY3MpOworCSAgICAgIGZvciAoaSA9 IDA7IGkgPCBudW1fZnVuY3M7IGkrKykKKwkJeworCQkgIGlmICgoKm9mZmxvYWRfZnVuY3Mp W2ldID09IG9sZF9kZWNsKQorCQkgICAgeworCQkgICAgICAoKm9mZmxvYWRfZnVuY3MpW2ld ID0gbmV3X2RlY2w7CisJCSAgICAgIGJyZWFrOworCQkgICAgfQorCQkgIGVsc2UgaWYgKCgq b2ZmbG9hZF9mdW5jcylbaV0gPT0gbmV3X2RlY2wpCisJCSAgICBicmVhazsgIC8qIFRoaXMg Y2FuIGhhcHBlbiBkdWUgdG8gaW5saW5pbmcuICAqLworCQl9CisJICAgICAgZ2NjX2Fzc2Vy dCAoaSA8IG51bV9mdW5jcyk7CisjZWxzZQorCSAgICAgIHRyZWUgb2xkX2RlY2wgPSBUUkVF X09QRVJBTkQgKGdpbXBsZV9jYWxsX2FyZyAoZ3NpX3N0bXQgKGdzaSksIDApLAorCQkJCQkg ICAgMCk7CisjZW5kaWYKKwkgICAgICAvKiBGSVhNRTogRmluZCBhIHdheSB0byBhY3R1YWxs eSBwcmV2ZW50IG91dHB1dHRpbmcgdGhlIGVtcHR5LWJvZHkKKwkJIG9sZF9kZWNsIGFzIGRl YnVnIHN5bWJvbCArIGZ1bmN0aW9uIGluIHRoZSBhc3NlbWJseSBmaWxlLiAgKi8KKwkgICAg ICBjZ3JhcGhfbm9kZSAqbm9kZSA9IGNncmFwaF9ub2RlOjpnZXQgKG9sZF9kZWNsKTsKKwkg ICAgICBub2RlLT5hZGRyZXNzX3Rha2VuID0gZmFsc2U7CisJICAgICAgbm9kZS0+bmVlZF9s dG9fc3RyZWFtaW5nID0gZmFsc2U7CisJICAgICAgbm9kZS0+b2ZmbG9hZGFibGUgPSBmYWxz ZTsKKworCSAgICAgIHVubGlua19zdG10X3ZkZWYgKHN0bXQpOworCSAgICB9CisJICAgIGJy ZWFrOwogCSAgY2FzZSBJRk5fR09NUF9VU0VfU0lNVDoKIAkgICAgcmhzID0gdmYgPT0gMSA/ IGludGVnZXJfemVyb19ub2RlIDogaW50ZWdlcl9vbmVfbm9kZTsKIAkgICAgYnJlYWs7CkBA IC0yODAzLDYgKzI4NDQsMTUgQEAgcGFzc19vbXBfdGFyZ2V0X2xpbms6OmV4ZWN1dGUgKGZ1 bmN0aW9uICpmdW4pCiAJewogCSAgaWYgKGdpbXBsZV9jYWxsX2J1aWx0aW5fcCAoZ3NpX3N0 bXQgKGdzaSksIEJVSUxUX0lOX0dPTVBfVEFSR0VUKSkKIAkgICAgeworCSAgICAgIHRyZWUg ZGV2ID0gZ2ltcGxlX2NhbGxfYXJnIChnc2lfc3RtdCAoZ3NpKSwgMCk7CisJICAgICAgdHJl ZSBmbiA9IGdpbXBsZV9jYWxsX2FyZyAoZ3NpX3N0bXQgKGdzaSksIDEpOworCSAgICAgIGlm IChQT0lOVEVSX1RZUEVfUCAoVFJFRV9UWVBFIChmbikpKQorCQlmbiA9IFRSRUVfT1BFUkFO RCAoZm4sIDApOworCSAgICAgIGlmIChUUkVFX0NPREUgKGRldikgPT0gSU5URUdFUl9DU1QK KwkJICAmJiB3aTo6dG9fd2lkZSAoZGV2KSA9PSBHT01QX0RFVklDRV9IT1NUX0ZBTExCQUNL CisJCSAgJiYgbG9va3VwX2F0dHJpYnV0ZSAoIm9tcCB0YXJnZXQgZGV2aWNlX2FuY2VzdG9y X25vaG9zdCIsCisJCQkJICAgICAgIERFQ0xfQVRUUklCVVRFUyAoZm4pKSAhPSBOVUxMX1RS RUUpCisJCWNvbnRpbnVlOyAgLyogYW5jZXN0b3I6MSAgKi8KIAkgICAgICAvKiBOdWxsaWZ5 IHRoZSBzZWNvbmQgYXJndW1lbnQgb2YgX19idWlsdGluX0dPTVBfdGFyZ2V0X2V4dC4gICov CiAJICAgICAgZ2ltcGxlX2NhbGxfc2V0X2FyZyAoZ3NpX3N0bXQgKGdzaSksIDEsIG51bGxf cG9pbnRlcl9ub2RlKTsKIAkgICAgICB1cGRhdGVfc3RtdCAoZ3NpX3N0bXQgKGdzaSkpOwpk aWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2MvY2xhc3NpZnkt a2VybmVscy1wYXJsb29wcy5jIGIvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2Mv Y2xhc3NpZnkta2VybmVscy1wYXJsb29wcy5jCmluZGV4IDVmNDcwZWI4NmJjLi5mYzJiNjM3 NTAwMiAxMDA2NDQKLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2MvY2xh c3NpZnkta2VybmVscy1wYXJsb29wcy5jCisrKyBiL2djYy90ZXN0c3VpdGUvYy1jKystY29t bW9uL2dvYWNjL2NsYXNzaWZ5LWtlcm5lbHMtcGFybG9vcHMuYwpAQCAtMjcsMTYgKzI3LDE2 IEBAIHZvaWQgS0VSTkVMUyAoKQogfQogCiAvKiBDaGVjayB0aGUgb2ZmbG9hZGVkIGZ1bmN0 aW9uJ3MgYXR0cmlidXRlcy4KLSAgIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1l cyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50 cnlwb2ludFxcKVxcKSIgMSAib21wZXhwIiB9IH0gKi8KKyAgIHsgZGctZmluYWwgeyBzY2Fu LXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIGtlcm5lbHMs IG9tcCB0YXJnZXQgZW50cnlwb2ludCwgbm9jbG9uZVxcKVxcKSIgMSAib21wZXhwIiB9IH0g Ki8KIAogLyogQ2hlY2sgdGhhdCBleGFjdGx5IG9uZSBPcGVuQUNDIGtlcm5lbHMgY29uc3Ry dWN0IGlzIGFuYWx5emVkLCBhbmQgdGhhdCBpdAogICAgY2FuIGJlIHBhcmFsbGVsaXplZC4K ICAgIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiU1VDQ0VTUzogbWF5IGJl IHBhcmFsbGVsaXplZCIgMSAicGFybG9vcHMxIiB9IH0KLSAgIHsgZGctZmluYWwgeyBzY2Fu LXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIGtlcm5lbHMg cGFyYWxsZWxpemVkLCBvYWNjIGZ1bmN0aW9uIFxcKCwgLCBcXCksIG9hY2Mga2VybmVscywg b21wIHRhcmdldCBlbnRyeXBvaW50XFwpXFwpIiAxICJwYXJsb29wczEiIH0gfQorICAgeyBk Zy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxc KG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9hY2MgZnVuY3Rpb24gXFwoLCAsIFxcKSwg b2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnQsIG5vY2xvbmVcXClcXCkiIDEg InBhcmxvb3BzMSIgfSB9CiAgICB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtbm90ICJG QUlMRUQ6IiAicGFybG9vcHMxIiB9IH0gKi8KIAogLyogQ2hlY2sgdGhlIG9mZmxvYWRlZCBm dW5jdGlvbidzIGNsYXNzaWZpY2F0aW9uIGFuZCBjb21wdXRlIGRpbWVuc2lvbnMgKHdpbGwK ICAgIGFsd2F5cyBiZSAxIHggMSB4IDEgZm9yIG5vbi1vZmZsb2FkaW5nIGNvbXBpbGF0aW9u KS4KICAgIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKUZ1bmN0aW9u IGlzIHBhcmFsbGVsaXplZCBPcGVuQUNDIGtlcm5lbHMgb2ZmbG9hZCIgMSAib2FjY2xvb3Bz IiB9IH0KICAgIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKUNvbXB1 dGUgZGltZW5zaW9ucyBcXFxbMSwgMSwgMVxcXF0iIDEgIm9hY2Nsb29wcyIgfSB9Ci0gICB7 IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/bilfX2F0dHJpYnV0ZV9fXFwo XFwob2FjYyBmdW5jdGlvbiBcXCgxLCAxLCAxXFwpLCBvYWNjIGtlcm5lbHMgcGFyYWxsZWxp emVkLCBvYWNjIGZ1bmN0aW9uIFxcKCwgLCBcXCksIG9hY2Mga2VybmVscywgb21wIHRhcmdl dCBlbnRyeXBvaW50XFwpXFwpIiAxICJvYWNjbG9vcHMiIH0gfSAqLworICAgeyBkZy1maW5h bCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mg ZnVuY3Rpb24gXFwoMSwgMSwgMVxcKSwgb2FjYyBrZXJuZWxzIHBhcmFsbGVsaXplZCwgb2Fj YyBmdW5jdGlvbiBcXCgsICwgXFwpLCBvYWNjIGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50cnlw b2ludCwgbm9jbG9uZVxcKVxcKSIgMSAib2FjY2xvb3BzIiB9IH0gKi8KZGlmZiAtLWdpdCBh L2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvYWNjL2NsYXNzaWZ5LWtlcm5lbHMtdW5w YXJhbGxlbGl6ZWQtcGFybG9vcHMuYyBiL2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dv YWNjL2NsYXNzaWZ5LWtlcm5lbHMtdW5wYXJhbGxlbGl6ZWQtcGFybG9vcHMuYwppbmRleCAw NmM3MGZiOWQ5Zi4uMDhlNjljNDA2MmMgMTAwNjQ0Ci0tLSBhL2djYy90ZXN0c3VpdGUvYy1j KystY29tbW9uL2dvYWNjL2NsYXNzaWZ5LWtlcm5lbHMtdW5wYXJhbGxlbGl6ZWQtcGFybG9v cHMuYworKysgYi9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9jbGFzc2lmeS1r ZXJuZWxzLXVucGFyYWxsZWxpemVkLXBhcmxvb3BzLmMKQEAgLTMxLDE2ICszMSwxNiBAQCB2 b2lkIEtFUk5FTFMgKCkKIH0KIAogLyogQ2hlY2sgdGhlIG9mZmxvYWRlZCBmdW5jdGlvbidz IGF0dHJpYnV0ZXMuCi0gICB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/ bilfX2F0dHJpYnV0ZV9fXFwoXFwob2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9p bnRcXClcXCkiIDEgIm9tcGV4cCIgfSB9ICovCisgICB7IGRnLWZpbmFsIHsgc2Nhbi10cmVl LWR1bXAtdGltZXMgIig/bilfX2F0dHJpYnV0ZV9fXFwoXFwob2FjYyBrZXJuZWxzLCBvbXAg dGFyZ2V0IGVudHJ5cG9pbnQsIG5vY2xvbmVcXClcXCkiIDEgIm9tcGV4cCIgfSB9ICovCiAK IC8qIENoZWNrIHRoYXQgZXhhY3RseSBvbmUgT3BlbkFDQyBrZXJuZWxzIGNvbnN0cnVjdCBp cyBhbmFseXplZCwgYW5kIHRoYXQgaXQKICAgIGNhbid0IGJlIHBhcmFsbGVsaXplZC4KICAg IHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiRkFJTEVEOiIgMSAicGFybG9v cHMxIiB9IH0KLSAgIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9f YXR0cmlidXRlX19cXChcXChvYWNjIGZ1bmN0aW9uIFxcKCwgLCBcXCksIG9hY2Mga2VybmVs cywgb21wIHRhcmdldCBlbnRyeXBvaW50XFwpXFwpIiAxICJwYXJsb29wczEiIH0gfQorICAg eyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xc KFxcKG9hY2MgZnVuY3Rpb24gXFwoLCAsIFxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0 IGVudHJ5cG9pbnQsIG5vY2xvbmVcXClcXCkiIDEgInBhcmxvb3BzMSIgfSB9CiAgICB7IGRn LWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtbm90ICJTVUNDRVNTOiBtYXkgYmUgcGFyYWxsZWxp emVkIiAicGFybG9vcHMxIiB9IH0gKi8KIAogLyogQ2hlY2sgdGhlIG9mZmxvYWRlZCBmdW5j dGlvbidzIGNsYXNzaWZpY2F0aW9uIGFuZCBjb21wdXRlIGRpbWVuc2lvbnMgKHdpbGwKICAg IGFsd2F5cyBiZSAxIHggMSB4IDEgZm9yIG5vbi1vZmZsb2FkaW5nIGNvbXBpbGF0aW9uKS4K ICAgIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKUZ1bmN0aW9uIGlz IHVucGFyYWxsZWxpemVkIE9wZW5BQ0Mga2VybmVscyBvZmZsb2FkIiAxICJvYWNjbG9vcHMi IH0gfQogICAgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pQ29tcHV0 ZSBkaW1lbnNpb25zIFxcXFsxLCAxLCAxXFxcXSIgMSAib2FjY2xvb3BzIiB9IH0KLSAgIHsg ZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChc XChvYWNjIGZ1bmN0aW9uIFxcKDEsIDEsIDFcXCksIG9hY2Mga2VybmVscywgb21wIHRhcmdl dCBlbnRyeXBvaW50XFwpXFwpIiAxICJvYWNjbG9vcHMiIH0gfSAqLworICAgeyBkZy1maW5h bCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mg ZnVuY3Rpb24gXFwoMSwgMSwgMVxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5 cG9pbnQsIG5vY2xvbmVcXClcXCkiIDEgIm9hY2Nsb29wcyIgfSB9ICovCmRpZmYgLS1naXQg YS9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9jbGFzc2lmeS1rZXJuZWxzLXVu cGFyYWxsZWxpemVkLmMgYi9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9jbGFz c2lmeS1rZXJuZWxzLXVucGFyYWxsZWxpemVkLmMKaW5kZXggNjE4NzFkMTE4YTkuLmNlMzgw NzlmMmRlIDEwMDY0NAotLS0gYS9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9j bGFzc2lmeS1rZXJuZWxzLXVucGFyYWxsZWxpemVkLmMKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9j LWMrKy1jb21tb24vZ29hY2MvY2xhc3NpZnkta2VybmVscy11bnBhcmFsbGVsaXplZC5jCkBA IC00MCwxNiArNDAsMTYgQEAgdm9pZCBLRVJORUxTICgpCiB9CiAKIC8qIENoZWNrIHRoZSBv ZmZsb2FkZWQgZnVuY3Rpb24ncyBhdHRyaWJ1dGVzLgotICAgeyBkZy1maW5hbCB7IHNjYW4t dHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mga2VybmVscywg b21wIHRhcmdldCBlbnRyeXBvaW50XFwpXFwpIiAxICJvbXBleHAiIH0gfSAqLworICAgeyBk Zy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxc KG9hY2Mga2VybmVscywgb21wIHRhcmdldCBlbnRyeXBvaW50LCBub2Nsb25lXFwpXFwpIiAx ICJvbXBleHAiIH0gfSAqLwogCiAvKiBDaGVjayB0aGF0IGV4YWN0bHkgb25lIE9wZW5BQ0Mg a2VybmVscyBjb25zdHJ1Y3QgaXMgYW5hbHl6ZWQsIGFuZCB0aGF0IGl0CiAgICBjYW4ndCBi ZSBwYXJhbGxlbGl6ZWQuCiAgICB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMg IkZBSUxFRDoiIDEgInBhcmxvb3BzMSIgfSB9Ci0gICB7IGRnLWZpbmFsIHsgc2Nhbi10cmVl LWR1bXAtdGltZXMgIig/bilfX2F0dHJpYnV0ZV9fXFwoXFwob2FjYyBmdW5jdGlvbiBcXCgs ICwgXFwpLCBvYWNjIGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50cnlwb2ludFxcKVxcKSIgMSAi cGFybG9vcHMxIiB9IH0KKyAgIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAi KD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIGZ1bmN0aW9uIFxcKCwgLCBcXCksIG9hY2Mg a2VybmVscywgb21wIHRhcmdldCBlbnRyeXBvaW50LCBub2Nsb25lXFwpXFwpIiAxICJwYXJs b29wczEiIH0gfQogICAgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLW5vdCAiU1VDQ0VT UzogbWF5IGJlIHBhcmFsbGVsaXplZCIgInBhcmxvb3BzMSIgfSB9ICovCiAKIC8qIENoZWNr IHRoZSBvZmZsb2FkZWQgZnVuY3Rpb24ncyBjbGFzc2lmaWNhdGlvbiBhbmQgY29tcHV0ZSBk aW1lbnNpb25zICh3aWxsCiAgICBhbHdheXMgYmUgMSB4IDEgeCAxIGZvciBub24tb2ZmbG9h ZGluZyBjb21waWxhdGlvbikuCiAgICB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGlt ZXMgIig/bilGdW5jdGlvbiBpcyB1bnBhcmFsbGVsaXplZCBPcGVuQUNDIGtlcm5lbHMgb2Zm bG9hZCIgMSAib2FjY2xvb3BzIiB9IH0KICAgIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVt cC10aW1lcyAiKD9uKUNvbXB1dGUgZGltZW5zaW9ucyBcXFxbMSwgMSwgMVxcXF0iIDEgIm9h Y2Nsb29wcyIgfSB9Ci0gICB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/ bilfX2F0dHJpYnV0ZV9fXFwoXFwob2FjYyBmdW5jdGlvbiBcXCgxLCAxLCAxXFwpLCBvYWNj IGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50cnlwb2ludFxcKVxcKSIgMSAib2FjY2xvb3BzIiB9 IH0gKi8KKyAgIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0 cmlidXRlX19cXChcXChvYWNjIGZ1bmN0aW9uIFxcKDEsIDEsIDFcXCksIG9hY2Mga2VybmVs cywgb21wIHRhcmdldCBlbnRyeXBvaW50LCBub2Nsb25lXFwpXFwpIiAxICJvYWNjbG9vcHMi IH0gfSAqLwpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2Mv Y2xhc3NpZnkta2VybmVscy5jIGIvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2Mv Y2xhc3NpZnkta2VybmVscy5jCmluZGV4IDE0NzMzMzc5ODZmLi4zMWMxMjAwNTc0OSAxMDA2 NDQKLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2MvY2xhc3NpZnkta2Vy bmVscy5jCisrKyBiL2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvYWNjL2NsYXNzaWZ5 LWtlcm5lbHMuYwpAQCAtMzYsMTYgKzM2LDE2IEBAIHZvaWQgS0VSTkVMUyAoKQogfQogCiAv KiBDaGVjayB0aGUgb2ZmbG9hZGVkIGZ1bmN0aW9uJ3MgYXR0cmlidXRlcy4KLSAgIHsgZGct ZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChv YWNjIGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50cnlwb2ludFxcKVxcKSIgMSAib21wZXhwIiB9 IH0gKi8KKyAgIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0 cmlidXRlX19cXChcXChvYWNjIGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50cnlwb2ludCwgbm9j bG9uZVxcKVxcKSIgMSAib21wZXhwIiB9IH0gKi8KIAogLyogQ2hlY2sgdGhhdCBleGFjdGx5 IG9uZSBPcGVuQUNDIGtlcm5lbHMgY29uc3RydWN0IGlzIGFuYWx5emVkLCBhbmQgdGhhdCBp dAogICAgY2FuIGJlIHBhcmFsbGVsaXplZC4KICAgIHsgZGctZmluYWwgeyBzY2FuLXRyZWUt ZHVtcC10aW1lcyAiU1VDQ0VTUzogbWF5IGJlIHBhcmFsbGVsaXplZCIgMSAicGFybG9vcHMx IiB9IH0KLSAgIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0 cmlidXRlX19cXChcXChvYWNjIGtlcm5lbHMgcGFyYWxsZWxpemVkLCBvYWNjIGZ1bmN0aW9u IFxcKCwgLCBcXCksIG9hY2Mga2VybmVscywgb21wIHRhcmdldCBlbnRyeXBvaW50XFwpXFwp IiAxICJwYXJsb29wczEiIH0gfQorICAgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRp bWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQs IG9hY2MgZnVuY3Rpb24gXFwoLCAsIFxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVu dHJ5cG9pbnQsIG5vY2xvbmVcXClcXCkiIDEgInBhcmxvb3BzMSIgfSB9CiAgICB7IGRnLWZp bmFsIHsgc2Nhbi10cmVlLWR1bXAtbm90ICJGQUlMRUQ6IiAicGFybG9vcHMxIiB9IH0gKi8K IAogLyogQ2hlY2sgdGhlIG9mZmxvYWRlZCBmdW5jdGlvbidzIGNsYXNzaWZpY2F0aW9uIGFu ZCBjb21wdXRlIGRpbWVuc2lvbnMgKHdpbGwKICAgIGFsd2F5cyBiZSAxIHggMSB4IDEgZm9y IG5vbi1vZmZsb2FkaW5nIGNvbXBpbGF0aW9uKS4KICAgIHsgZGctZmluYWwgeyBzY2FuLXRy ZWUtZHVtcC10aW1lcyAiKD9uKUZ1bmN0aW9uIGlzIHBhcmFsbGVsaXplZCBPcGVuQUNDIGtl cm5lbHMgb2ZmbG9hZCIgMSAib2FjY2xvb3BzIiB9IH0KICAgIHsgZGctZmluYWwgeyBzY2Fu LXRyZWUtZHVtcC10aW1lcyAiKD9uKUNvbXB1dGUgZGltZW5zaW9ucyBcXFxbMSwgMSwgMVxc XF0iIDEgIm9hY2Nsb29wcyIgfSB9Ci0gICB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAt dGltZXMgIig/bilfX2F0dHJpYnV0ZV9fXFwoXFwob2FjYyBmdW5jdGlvbiBcXCgxLCAxLCAx XFwpLCBvYWNjIGtlcm5lbHMgcGFyYWxsZWxpemVkLCBvYWNjIGZ1bmN0aW9uIFxcKCwgLCBc XCksIG9hY2Mga2VybmVscywgb21wIHRhcmdldCBlbnRyeXBvaW50XFwpXFwpIiAxICJvYWNj bG9vcHMiIH0gfSAqLworICAgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIo P24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2MgZnVuY3Rpb24gXFwoMSwgMSwgMVxcKSwgb2Fj YyBrZXJuZWxzIHBhcmFsbGVsaXplZCwgb2FjYyBmdW5jdGlvbiBcXCgsICwgXFwpLCBvYWNj IGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50cnlwb2ludCwgbm9jbG9uZVxcKVxcKSIgMSAib2Fj Y2xvb3BzIiB9IH0gKi8KZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9u L2dvYWNjL2NsYXNzaWZ5LXBhcmFsbGVsLmMgYi9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1v bi9nb2FjYy9jbGFzc2lmeS1wYXJhbGxlbC5jCmluZGV4IDYxZDAzYzBhNWM0Li4xOTEwMWZh OTUwNSAxMDA2NDQKLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2MvY2xh c3NpZnktcGFyYWxsZWwuYworKysgYi9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2Fj Yy9jbGFzc2lmeS1wYXJhbGxlbC5jCkBAIC0yNCwxMCArMjQsMTAgQEAgdm9pZCBQQVJBTExF TCAoKQogfQogCiAvKiBDaGVjayB0aGUgb2ZmbG9hZGVkIGZ1bmN0aW9uJ3MgYXR0cmlidXRl cy4KLSAgIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmli dXRlX19cXChcXChvYWNjIHBhcmFsbGVsLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnRcXClcXCki IDEgIm9tcGV4cCIgfSB9ICovCisgICB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGlt ZXMgIig/bilfX2F0dHJpYnV0ZV9fXFwoXFwob2FjYyBwYXJhbGxlbCwgb21wIHRhcmdldCBl bnRyeXBvaW50LCBub2Nsb25lXFwpXFwpIiAxICJvbXBleHAiIH0gfSAqLwogCiAvKiBDaGVj ayB0aGUgb2ZmbG9hZGVkIGZ1bmN0aW9uJ3MgY2xhc3NpZmljYXRpb24gYW5kIGNvbXB1dGUg ZGltZW5zaW9ucyAod2lsbAogICAgYWx3YXlzIGJlIDEgeCAxIHggMSBmb3Igbm9uLW9mZmxv YWRpbmcgY29tcGlsYXRpb24pLgogICAgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRp bWVzICIoP24pRnVuY3Rpb24gaXMgT3BlbkFDQyBwYXJhbGxlbCBvZmZsb2FkIiAxICJvYWNj bG9vcHMiIH0gfQogICAgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24p Q29tcHV0ZSBkaW1lbnNpb25zIFxcXFsxLCAxLCAxXFxcXSIgMSAib2FjY2xvb3BzIiB9IH0K LSAgIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRl X19cXChcXChvYWNjIGZ1bmN0aW9uIFxcKDEsIDEsIDFcXCksIG9hY2MgcGFyYWxsZWwsIG9t cCB0YXJnZXQgZW50cnlwb2ludFxcKVxcKSIgMSAib2FjY2xvb3BzIiB9IH0gKi8KKyAgIHsg ZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChc XChvYWNjIGZ1bmN0aW9uIFxcKDEsIDEsIDFcXCksIG9hY2MgcGFyYWxsZWwsIG9tcCB0YXJn ZXQgZW50cnlwb2ludCwgbm9jbG9uZVxcKVxcKSIgMSAib2FjY2xvb3BzIiB9IH0gKi8KZGlm ZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvYWNjL2NsYXNzaWZ5LXNl cmlhbC5jIGIvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2MvY2xhc3NpZnktc2Vy aWFsLmMKaW5kZXggNzFiOGM3MjdjZGYuLjY0ODBmZTMwMDQ2IDEwMDY0NAotLS0gYS9nY2Mv dGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9jbGFzc2lmeS1zZXJpYWwuYworKysgYi9n Y2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9jbGFzc2lmeS1zZXJpYWwuYwpAQCAt MjksMTAgKzI5LDEwIEBAIHZvaWQgU0VSSUFMICgpCiB9CiAKIC8qIENoZWNrIHRoZSBvZmZs b2FkZWQgZnVuY3Rpb24ncyBhdHRyaWJ1dGVzLgotICAgeyBkZy1maW5hbCB7IHNjYW4tdHJl ZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mgc2VyaWFsLCBvbXAg dGFyZ2V0IGVudHJ5cG9pbnRcXClcXCkiIDEgIm9tcGV4cCIgfSB9ICovCisgICB7IGRnLWZp bmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/bilfX2F0dHJpYnV0ZV9fXFwoXFwob2Fj YyBzZXJpYWwsIG9tcCB0YXJnZXQgZW50cnlwb2ludCwgbm9jbG9uZVxcKVxcKSIgMSAib21w ZXhwIiB9IH0gKi8KIAogLyogQ2hlY2sgdGhlIG9mZmxvYWRlZCBmdW5jdGlvbidzIGNsYXNz aWZpY2F0aW9uIGFuZCBjb21wdXRlIGRpbWVuc2lvbnMgKHdpbGwKICAgIGFsd2F5cyBiZSAx IHggMSB4IDEgZm9yIG5vbi1vZmZsb2FkaW5nIGNvbXBpbGF0aW9uKS4KICAgIHsgZGctZmlu YWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKUZ1bmN0aW9uIGlzIE9wZW5BQ0Mgc2Vy aWFsIG9mZmxvYWQiIDEgIm9hY2Nsb29wcyIgfSB9CiAgICB7IGRnLWZpbmFsIHsgc2Nhbi10 cmVlLWR1bXAtdGltZXMgIig/bilDb21wdXRlIGRpbWVuc2lvbnMgXFxcWzEsIDEsIDFcXFxd IiAxICJvYWNjbG9vcHMiIH0gfQotICAgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRp bWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2MgZnVuY3Rpb24gXFwoMSwgMSwgMVxc KSwgb2FjYyBzZXJpYWwsIG9tcCB0YXJnZXQgZW50cnlwb2ludFxcKVxcKSIgMSAib2FjY2xv b3BzIiB9IH0gKi8KKyAgIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9u KV9fYXR0cmlidXRlX19cXChcXChvYWNjIGZ1bmN0aW9uIFxcKDEsIDEsIDFcXCksIG9hY2Mg c2VyaWFsLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnQsIG5vY2xvbmVcXClcXCkiIDEgIm9hY2Ns b29wcyIgfSB9ICovCmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9n b2FjYy9rZXJuZWxzLWNvdW50ZXItdmFycy1mdW5jdGlvbi1zY29wZS5jIGIvZ2NjL3Rlc3Rz dWl0ZS9jLWMrKy1jb21tb24vZ29hY2Mva2VybmVscy1jb3VudGVyLXZhcnMtZnVuY3Rpb24t c2NvcGUuYwppbmRleCBjNDc1MzMzZjFhZS4uYmNlMTdhMTAxMWMgMTAwNjQ0Ci0tLSBhL2dj Yy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvYWNjL2tlcm5lbHMtY291bnRlci12YXJzLWZ1 bmN0aW9uLXNjb3BlLmMKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2Mv a2VybmVscy1jb3VudGVyLXZhcnMtZnVuY3Rpb24tc2NvcGUuYwpAQCAtNDUsNyArNDUsNyBA QCBtYWluICh2b2lkKQogCiAvKiBDaGVjayB0aGF0IG9ubHkgb25lIGxvb3AgaXMgYW5hbHl6 ZWQsIGFuZCB0aGF0IGl0IGNhbiBiZSBwYXJhbGxlbGl6ZWQuICAqLwogLyogeyBkZy1maW5h bCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICJTVUNDRVNTOiBtYXkgYmUgcGFyYWxsZWxpemVk IiAxICJwYXJsb29wczEiIH0gfSAqLwotLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1w LXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mga2VybmVscyBwYXJhbGxlbGl6 ZWQsIG9hY2MgZnVuY3Rpb24gXFwoLCAsIFxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0 IGVudHJ5cG9pbnRcXClcXCkiIDEgInBhcmxvb3BzMSIgfSB9ICovCisvKiB7IGRnLWZpbmFs IHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/bilfX2F0dHJpYnV0ZV9fXFwoXFwob2FjYyBr ZXJuZWxzIHBhcmFsbGVsaXplZCwgb2FjYyBmdW5jdGlvbiBcXCgsICwgXFwpLCBvYWNjIGtl cm5lbHMsIG9tcCB0YXJnZXQgZW50cnlwb2ludCwgbm9jbG9uZVxcKVxcKSIgMSAicGFybG9v cHMxIiB9IH0gKi8KIC8qIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC1ub3QgIkZBSUxF RDoiICJwYXJsb29wczEiIH0gfSAqLwogCiAvKiBDaGVjayB0aGF0IHRoZSBsb29wIGhhcyBi ZWVuIHNwbGl0IG9mZiBpbnRvIGEgZnVuY3Rpb24uICAqLwpkaWZmIC0tZ2l0IGEvZ2NjL3Rl c3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2Mva2VybmVscy1sb29wLTIuYyBiL2djYy90ZXN0 c3VpdGUvYy1jKystY29tbW9uL2dvYWNjL2tlcm5lbHMtbG9vcC0yLmMKaW5kZXggYWNlZjZh MWExNzkuLjQ1NmE5NTQ1MWZhIDEwMDY0NAotLS0gYS9nY2MvdGVzdHN1aXRlL2MtYysrLWNv bW1vbi9nb2FjYy9rZXJuZWxzLWxvb3AtMi5jCisrKyBiL2djYy90ZXN0c3VpdGUvYy1jKyst Y29tbW9uL2dvYWNjL2tlcm5lbHMtbG9vcC0yLmMKQEAgLTU5LDcgKzU5LDcgQEAgbWFpbiAo dm9pZCkKIC8qIENoZWNrIHRoYXQgb25seSB0aHJlZSBsb29wcyBhcmUgYW5hbHl6ZWQsIGFu ZCB0aGF0IGFsbCBjYW4gYmUKICAgIHBhcmFsbGVsaXplZC4gICovCiAvKiB7IGRnLWZpbmFs IHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIlNVQ0NFU1M6IG1heSBiZSBwYXJhbGxlbGl6ZWQi IDMgInBhcmxvb3BzMSIgfSB9ICovCi0vKiB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAt dGltZXMgIig/bilfX2F0dHJpYnV0ZV9fXFwoXFwob2FjYyBrZXJuZWxzIHBhcmFsbGVsaXpl ZCwgb2FjYyBmdW5jdGlvbiBcXCgsICwgXFwpLCBvYWNjIGtlcm5lbHMsIG9tcCB0YXJnZXQg ZW50cnlwb2ludFxcKVxcKSIgMyAicGFybG9vcHMxIiB9IH0gKi8KKy8qIHsgZGctZmluYWwg eyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIGtl cm5lbHMgcGFyYWxsZWxpemVkLCBvYWNjIGZ1bmN0aW9uIFxcKCwgLCBcXCksIG9hY2Mga2Vy bmVscywgb21wIHRhcmdldCBlbnRyeXBvaW50LCBub2Nsb25lXFwpXFwpIiAzICJwYXJsb29w czEiIH0gfSAqLwogLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLW5vdCAiRkFJTEVE OiIgInBhcmxvb3BzMSIgfSB9ICovCiAKIC8qIENoZWNrIHRoYXQgdGhlIGxvb3AgaGFzIGJl ZW4gc3BsaXQgb2ZmIGludG8gYSBmdW5jdGlvbi4gICovCmRpZmYgLS1naXQgYS9nY2MvdGVz dHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9rZXJuZWxzLWxvb3AtMy5jIGIvZ2NjL3Rlc3Rz dWl0ZS9jLWMrKy1jb21tb24vZ29hY2Mva2VybmVscy1sb29wLTMuYwppbmRleCA3NWUyYmI3 OGNlYS4uZWYwYzQ4MWRlYTAgMTAwNjQ0Ci0tLSBhL2djYy90ZXN0c3VpdGUvYy1jKystY29t bW9uL2dvYWNjL2tlcm5lbHMtbG9vcC0zLmMKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1j b21tb24vZ29hY2Mva2VybmVscy1sb29wLTMuYwpAQCAtMzksNyArMzksNyBAQCBtYWluICh2 b2lkKQogCiAvKiBDaGVjayB0aGF0IG9ubHkgb25lIGxvb3AgaXMgYW5hbHl6ZWQsIGFuZCB0 aGF0IGl0IGNhbiBiZSBwYXJhbGxlbGl6ZWQuICAqLwogLyogeyBkZy1maW5hbCB7IHNjYW4t dHJlZS1kdW1wLXRpbWVzICJTVUNDRVNTOiBtYXkgYmUgcGFyYWxsZWxpemVkIiAxICJwYXJs b29wczEiIH0gfSAqLwotLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIo P24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9hY2Mg ZnVuY3Rpb24gXFwoLCAsIFxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9p bnRcXClcXCkiIDEgInBhcmxvb3BzMSIgfSB9ICovCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi10 cmVlLWR1bXAtdGltZXMgIig/bilfX2F0dHJpYnV0ZV9fXFwoXFwob2FjYyBrZXJuZWxzIHBh cmFsbGVsaXplZCwgb2FjYyBmdW5jdGlvbiBcXCgsICwgXFwpLCBvYWNjIGtlcm5lbHMsIG9t cCB0YXJnZXQgZW50cnlwb2ludCwgbm9jbG9uZVxcKVxcKSIgMSAicGFybG9vcHMxIiB9IH0g Ki8KIC8qIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC1ub3QgIkZBSUxFRDoiICJwYXJs b29wczEiIH0gfSAqLwogCiAvKiBDaGVjayB0aGF0IHRoZSBsb29wIGhhcyBiZWVuIHNwbGl0 IG9mZiBpbnRvIGEgZnVuY3Rpb24uICAqLwpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9j LWMrKy1jb21tb24vZ29hY2Mva2VybmVscy1sb29wLWRhdGEtMi5jIGIvZ2NjL3Rlc3RzdWl0 ZS9jLWMrKy1jb21tb24vZ29hY2Mva2VybmVscy1sb29wLWRhdGEtMi5jCmluZGV4IDcxODAw MjE3OTkxLi5hNjQwMDc4MTVjMSAxMDA2NDQKLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1j b21tb24vZ29hY2Mva2VybmVscy1sb29wLWRhdGEtMi5jCisrKyBiL2djYy90ZXN0c3VpdGUv Yy1jKystY29tbW9uL2dvYWNjL2tlcm5lbHMtbG9vcC1kYXRhLTIuYwpAQCAtNTksNyArNTks NyBAQCBtYWluICh2b2lkKQogLyogQ2hlY2sgdGhhdCBvbmx5IHRocmVlIGxvb3BzIGFyZSBh bmFseXplZCwgYW5kIHRoYXQgYWxsIGNhbiBiZQogICAgcGFyYWxsZWxpemVkLiAgKi8KIC8q IHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiU1VDQ0VTUzogbWF5IGJlIHBh cmFsbGVsaXplZCIgMyAicGFybG9vcHMxIiB9IH0gKi8KLS8qIHsgZGctZmluYWwgeyBzY2Fu LXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIGtlcm5lbHMg cGFyYWxsZWxpemVkLCBvYWNjIGZ1bmN0aW9uIFxcKCwgLCBcXCksIG9hY2Mga2VybmVscywg b21wIHRhcmdldCBlbnRyeXBvaW50XFwpXFwpIiAzICJwYXJsb29wczEiIH0gfSAqLworLyog eyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xc KFxcKG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9hY2MgZnVuY3Rpb24gXFwoLCAsIFxc KSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnQsIG5vY2xvbmVcXClcXCki IDMgInBhcmxvb3BzMSIgfSB9ICovCiAvKiB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAt bm90ICJGQUlMRUQ6IiAicGFybG9vcHMxIiB9IH0gKi8KIAogLyogQ2hlY2sgdGhhdCB0aGUg bG9vcCBoYXMgYmVlbiBzcGxpdCBvZmYgaW50byBhIGZ1bmN0aW9uLiAgKi8KZGlmZiAtLWdp dCBhL2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvYWNjL2tlcm5lbHMtbG9vcC1kYXRh LWVudGVyLWV4aXQtMi5jIGIvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2Mva2Vy bmVscy1sb29wLWRhdGEtZW50ZXItZXhpdC0yLmMKaW5kZXggMGM5ZjgzMzEyNDAuLmQ0NmJi YThlYzNhIDEwMDY0NAotLS0gYS9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9r ZXJuZWxzLWxvb3AtZGF0YS1lbnRlci1leGl0LTIuYworKysgYi9nY2MvdGVzdHN1aXRlL2Mt YysrLWNvbW1vbi9nb2FjYy9rZXJuZWxzLWxvb3AtZGF0YS1lbnRlci1leGl0LTIuYwpAQCAt NTcsNyArNTcsNyBAQCBtYWluICh2b2lkKQogLyogQ2hlY2sgdGhhdCBvbmx5IHRocmVlIGxv b3BzIGFyZSBhbmFseXplZCwgYW5kIHRoYXQgYWxsIGNhbiBiZQogICAgcGFyYWxsZWxpemVk LiAgKi8KIC8qIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiU1VDQ0VTUzog bWF5IGJlIHBhcmFsbGVsaXplZCIgMyAicGFybG9vcHMxIiB9IH0gKi8KLS8qIHsgZGctZmlu YWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNj IGtlcm5lbHMgcGFyYWxsZWxpemVkLCBvYWNjIGZ1bmN0aW9uIFxcKCwgLCBcXCksIG9hY2Mg a2VybmVscywgb21wIHRhcmdldCBlbnRyeXBvaW50XFwpXFwpIiAzICJwYXJsb29wczEiIH0g fSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRy aWJ1dGVfX1xcKFxcKG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9hY2MgZnVuY3Rpb24g XFwoLCAsIFxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnQsIG5vY2xv bmVcXClcXCkiIDMgInBhcmxvb3BzMSIgfSB9ICovCiAvKiB7IGRnLWZpbmFsIHsgc2Nhbi10 cmVlLWR1bXAtbm90ICJGQUlMRUQ6IiAicGFybG9vcHMxIiB9IH0gKi8KIAogLyogQ2hlY2sg dGhhdCB0aGUgbG9vcCBoYXMgYmVlbiBzcGxpdCBvZmYgaW50byBhIGZ1bmN0aW9uLiAgKi8K ZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvYWNjL2tlcm5lbHMt bG9vcC1kYXRhLWVudGVyLWV4aXQuYyBiL2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dv YWNjL2tlcm5lbHMtbG9vcC1kYXRhLWVudGVyLWV4aXQuYwppbmRleCAwYmQyMWI2OGQzMS4u NjY5ODk4MGE4NmYgMTAwNjQ0Ci0tLSBhL2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dv YWNjL2tlcm5lbHMtbG9vcC1kYXRhLWVudGVyLWV4aXQuYworKysgYi9nY2MvdGVzdHN1aXRl L2MtYysrLWNvbW1vbi9nb2FjYy9rZXJuZWxzLWxvb3AtZGF0YS1lbnRlci1leGl0LmMKQEAg LTU0LDcgKzU0LDcgQEAgbWFpbiAodm9pZCkKIC8qIENoZWNrIHRoYXQgb25seSB0aHJlZSBs b29wcyBhcmUgYW5hbHl6ZWQsIGFuZCB0aGF0IGFsbCBjYW4gYmUKICAgIHBhcmFsbGVsaXpl ZC4gICovCiAvKiB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIlNVQ0NFU1M6 IG1heSBiZSBwYXJhbGxlbGl6ZWQiIDMgInBhcmxvb3BzMSIgfSB9ICovCi0vKiB7IGRnLWZp bmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/bilfX2F0dHJpYnV0ZV9fXFwoXFwob2Fj YyBrZXJuZWxzIHBhcmFsbGVsaXplZCwgb2FjYyBmdW5jdGlvbiBcXCgsICwgXFwpLCBvYWNj IGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50cnlwb2ludFxcKVxcKSIgMyAicGFybG9vcHMxIiB9 IH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0 cmlidXRlX19cXChcXChvYWNjIGtlcm5lbHMgcGFyYWxsZWxpemVkLCBvYWNjIGZ1bmN0aW9u IFxcKCwgLCBcXCksIG9hY2Mga2VybmVscywgb21wIHRhcmdldCBlbnRyeXBvaW50LCBub2Ns b25lXFwpXFwpIiAzICJwYXJsb29wczEiIH0gfSAqLwogLyogeyBkZy1maW5hbCB7IHNjYW4t dHJlZS1kdW1wLW5vdCAiRkFJTEVEOiIgInBhcmxvb3BzMSIgfSB9ICovCiAKIC8qIENoZWNr IHRoYXQgdGhlIGxvb3AgaGFzIGJlZW4gc3BsaXQgb2ZmIGludG8gYSBmdW5jdGlvbi4gICov CmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9rZXJuZWxz LWxvb3AtZGF0YS11cGRhdGUuYyBiL2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvYWNj L2tlcm5lbHMtbG9vcC1kYXRhLXVwZGF0ZS5jCmluZGV4IGRkNWE4NDE0NmE4Li45YzY5OTdm ODZiMCAxMDA2NDQKLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2Mva2Vy bmVscy1sb29wLWRhdGEtdXBkYXRlLmMKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21t b24vZ29hY2Mva2VybmVscy1sb29wLWRhdGEtdXBkYXRlLmMKQEAgLTU1LDcgKzU1LDcgQEAg bWFpbiAodm9pZCkKIC8qIENoZWNrIHRoYXQgb25seSB0d28gbG9vcHMgYXJlIGFuYWx5emVk LCBhbmQgdGhhdCBib3RoIGNhbiBiZQogICAgcGFyYWxsZWxpemVkLiAgKi8KIC8qIHsgZGct ZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiU1VDQ0VTUzogbWF5IGJlIHBhcmFsbGVs aXplZCIgMiAicGFybG9vcHMxIiB9IH0gKi8KLS8qIHsgZGctZmluYWwgeyBzY2FuLXRyZWUt ZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIGtlcm5lbHMgcGFyYWxs ZWxpemVkLCBvYWNjIGZ1bmN0aW9uIFxcKCwgLCBcXCksIG9hY2Mga2VybmVscywgb21wIHRh cmdldCBlbnRyeXBvaW50XFwpXFwpIiAyICJwYXJsb29wczEiIH0gfSAqLworLyogeyBkZy1m aW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9h Y2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9hY2MgZnVuY3Rpb24gXFwoLCAsIFxcKSwgb2Fj YyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnQsIG5vY2xvbmVcXClcXCkiIDIgInBh cmxvb3BzMSIgfSB9ICovCiAvKiB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtbm90ICJG QUlMRUQ6IiAicGFybG9vcHMxIiB9IH0gKi8KIAogLyogQ2hlY2sgdGhhdCB0aGUgbG9vcCBo YXMgYmVlbiBzcGxpdCBvZmYgaW50byBhIGZ1bmN0aW9uLiAgKi8KZGlmZiAtLWdpdCBhL2dj Yy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvYWNjL2tlcm5lbHMtbG9vcC1kYXRhLmMgYi9n Y2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9rZXJuZWxzLWxvb3AtZGF0YS5jCmlu ZGV4IGE2NTgxODJkZTkwLi4wZWY1NzY1MjFiMCAxMDA2NDQKLS0tIGEvZ2NjL3Rlc3RzdWl0 ZS9jLWMrKy1jb21tb24vZ29hY2Mva2VybmVscy1sb29wLWRhdGEuYworKysgYi9nY2MvdGVz dHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9rZXJuZWxzLWxvb3AtZGF0YS5jCkBAIC01Myw3 ICs1Myw3IEBAIG1haW4gKHZvaWQpCiAvKiBDaGVjayB0aGF0IG9ubHkgdGhyZWUgbG9vcHMg YXJlIGFuYWx5emVkLCBhbmQgdGhhdCBhbGwgY2FuIGJlCiAgICBwYXJhbGxlbGl6ZWQuICAq LwogLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICJTVUNDRVNTOiBtYXkg YmUgcGFyYWxsZWxpemVkIiAzICJwYXJsb29wczEiIH0gfSAqLwotLyogeyBkZy1maW5hbCB7 IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mga2Vy bmVscyBwYXJhbGxlbGl6ZWQsIG9hY2MgZnVuY3Rpb24gXFwoLCAsIFxcKSwgb2FjYyBrZXJu ZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnRcXClcXCkiIDMgInBhcmxvb3BzMSIgfSB9ICov CisvKiB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/bilfX2F0dHJpYnV0 ZV9fXFwoXFwob2FjYyBrZXJuZWxzIHBhcmFsbGVsaXplZCwgb2FjYyBmdW5jdGlvbiBcXCgs ICwgXFwpLCBvYWNjIGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50cnlwb2ludCwgbm9jbG9uZVxc KVxcKSIgMyAicGFybG9vcHMxIiB9IH0gKi8KIC8qIHsgZGctZmluYWwgeyBzY2FuLXRyZWUt ZHVtcC1ub3QgIkZBSUxFRDoiICJwYXJsb29wczEiIH0gfSAqLwogCiAvKiBDaGVjayB0aGF0 IHRoZSBsb29wIGhhcyBiZWVuIHNwbGl0IG9mZiBpbnRvIGEgZnVuY3Rpb24uICAqLwpkaWZm IC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2Mva2VybmVscy1sb29w LWcuYyBiL2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvYWNjL2tlcm5lbHMtbG9vcC1n LmMKaW5kZXggNWJkYWE0MGIwMmMuLmNmOWYxZWU2YjI4IDEwMDY0NAotLS0gYS9nY2MvdGVz dHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9rZXJuZWxzLWxvb3AtZy5jCisrKyBiL2djYy90 ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvYWNjL2tlcm5lbHMtbG9vcC1nLmMKQEAgLTEwLDcg KzEwLDcgQEAKIAogLyogQ2hlY2sgdGhhdCBvbmx5IG9uZSBsb29wIGlzIGFuYWx5emVkLCBh bmQgdGhhdCBpdCBjYW4gYmUgcGFyYWxsZWxpemVkLiAgKi8KIC8qIHsgZGctZmluYWwgeyBz Y2FuLXRyZWUtZHVtcC10aW1lcyAiU1VDQ0VTUzogbWF5IGJlIHBhcmFsbGVsaXplZCIgMSAi cGFybG9vcHMxIiB9IH0gKi8KLS8qIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1l cyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIGtlcm5lbHMgcGFyYWxsZWxpemVkLCBv YWNjIGZ1bmN0aW9uIFxcKCwgLCBcXCksIG9hY2Mga2VybmVscywgb21wIHRhcmdldCBlbnRy eXBvaW50XFwpXFwpIiAxICJwYXJsb29wczEiIH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNj YW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mga2VybmVs cyBwYXJhbGxlbGl6ZWQsIG9hY2MgZnVuY3Rpb24gXFwoLCAsIFxcKSwgb2FjYyBrZXJuZWxz LCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnQsIG5vY2xvbmVcXClcXCkiIDEgInBhcmxvb3BzMSIg fSB9ICovCiAvKiB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtbm90ICJGQUlMRUQ6IiAi cGFybG9vcHMxIiB9IH0gKi8KIAogLyogQ2hlY2sgdGhhdCB0aGUgbG9vcCBoYXMgYmVlbiBz cGxpdCBvZmYgaW50byBhIGZ1bmN0aW9uLiAgKi8KZGlmZiAtLWdpdCBhL2djYy90ZXN0c3Vp dGUvYy1jKystY29tbW9uL2dvYWNjL2tlcm5lbHMtbG9vcC1tb2Qtbm90LXplcm8uYyBiL2dj Yy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvYWNjL2tlcm5lbHMtbG9vcC1tb2Qtbm90LXpl cm8uYwppbmRleCA1NTkyNjIzMGQ1Ny4uZWVhOWE3MzVlOGIgMTAwNjQ0Ci0tLSBhL2djYy90 ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvYWNjL2tlcm5lbHMtbG9vcC1tb2Qtbm90LXplcm8u YworKysgYi9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9rZXJuZWxzLWxvb3At bW9kLW5vdC16ZXJvLmMKQEAgLTQzLDcgKzQzLDcgQEAgbWFpbiAodm9pZCkKIAogLyogQ2hl Y2sgdGhhdCBvbmx5IG9uZSBsb29wIGlzIGFuYWx5emVkLCBhbmQgdGhhdCBpdCBjYW4gYmUg cGFyYWxsZWxpemVkLiAgKi8KIC8qIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1l cyAiU1VDQ0VTUzogbWF5IGJlIHBhcmFsbGVsaXplZCIgMSAicGFybG9vcHMxIiB9IH0gKi8K LS8qIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRl X19cXChcXChvYWNjIGtlcm5lbHMgcGFyYWxsZWxpemVkLCBvYWNjIGZ1bmN0aW9uIFxcKCwg LCBcXCksIG9hY2Mga2VybmVscywgb21wIHRhcmdldCBlbnRyeXBvaW50XFwpXFwpIiAxICJw YXJsb29wczEiIH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVz ICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9h Y2MgZnVuY3Rpb24gXFwoLCAsIFxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5 cG9pbnQsIG5vY2xvbmVcXClcXCkiIDEgInBhcmxvb3BzMSIgfSB9ICovCiAvKiB7IGRnLWZp bmFsIHsgc2Nhbi10cmVlLWR1bXAtbm90ICJGQUlMRUQ6IiAicGFybG9vcHMxIiB9IH0gKi8K IAogLyogQ2hlY2sgdGhhdCB0aGUgbG9vcCBoYXMgYmVlbiBzcGxpdCBvZmYgaW50byBhIGZ1 bmN0aW9uLiAgKi8KZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dv YWNjL2tlcm5lbHMtbG9vcC1uLmMgYi9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2Fj Yy9rZXJuZWxzLWxvb3Atbi5jCmluZGV4IGU4NmJlMWIxY2RjLi5hNjNlZDhhYjFmZCAxMDA2 NDQKLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2Mva2VybmVscy1sb29w LW4uYworKysgYi9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9rZXJuZWxzLWxv b3Atbi5jCkBAIC00Niw3ICs0Niw3IEBAIGZvbyAoQ09VTlRFUlRZUEUgbikKIAogLyogQ2hl Y2sgdGhhdCBvbmx5IG9uZSBsb29wIGlzIGFuYWx5emVkLCBhbmQgdGhhdCBpdCBjYW4gYmUg cGFyYWxsZWxpemVkLiAgKi8KIC8qIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1l cyAiU1VDQ0VTUzogbWF5IGJlIHBhcmFsbGVsaXplZCIgMSAicGFybG9vcHMxIiB9IH0gKi8K LS8qIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRl X19cXChcXChvYWNjIGtlcm5lbHMgcGFyYWxsZWxpemVkLCBvYWNjIGZ1bmN0aW9uIFxcKCwg LCBcXCksIG9hY2Mga2VybmVscywgb21wIHRhcmdldCBlbnRyeXBvaW50XFwpXFwpIiAxICJw YXJsb29wczEiIH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVz ICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9h Y2MgZnVuY3Rpb24gXFwoLCAsIFxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5 cG9pbnQsIG5vY2xvbmVcXClcXCkiIDEgInBhcmxvb3BzMSIgfSB9ICovCiAvKiB7IGRnLWZp bmFsIHsgc2Nhbi10cmVlLWR1bXAtbm90ICJGQUlMRUQ6IiAicGFybG9vcHMxIiB9IH0gKi8K IAogLyogQ2hlY2sgdGhhdCB0aGUgbG9vcCBoYXMgYmVlbiBzcGxpdCBvZmYgaW50byBhIGZ1 bmN0aW9uLiAgKi8KZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dv YWNjL2tlcm5lbHMtbG9vcC1uZXN0LmMgYi9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9n b2FjYy9rZXJuZWxzLWxvb3AtbmVzdC5jCmluZGV4IDJiMGUxODZhZTI5Li5iM2JiNWNhYWE1 ZiAxMDA2NDQKLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2Mva2VybmVs cy1sb29wLW5lc3QuYworKysgYi9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9r ZXJuZWxzLWxvb3AtbmVzdC5jCkBAIC0zMCw3ICszMCw3IEBAIG1haW4gKHZvaWQpCiAKIC8q IENoZWNrIHRoYXQgb25seSBvbmUgbG9vcCBpcyBhbmFseXplZCwgYW5kIHRoYXQgaXQgY2Fu IGJlIHBhcmFsbGVsaXplZC4gICovCiAvKiB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAt dGltZXMgIlNVQ0NFU1M6IG1heSBiZSBwYXJhbGxlbGl6ZWQiIDEgInBhcmxvb3BzMSIgfSB9 ICovCi0vKiB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/bilfX2F0dHJp YnV0ZV9fXFwoXFwob2FjYyBrZXJuZWxzIHBhcmFsbGVsaXplZCwgb2FjYyBmdW5jdGlvbiBc XCgsICwgXFwpLCBvYWNjIGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50cnlwb2ludFxcKVxcKSIg MSAicGFybG9vcHMxIiB9IH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10 aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIGtlcm5lbHMgcGFyYWxsZWxpemVk LCBvYWNjIGZ1bmN0aW9uIFxcKCwgLCBcXCksIG9hY2Mga2VybmVscywgb21wIHRhcmdldCBl bnRyeXBvaW50LCBub2Nsb25lXFwpXFwpIiAxICJwYXJsb29wczEiIH0gfSAqLwogLyogeyBk Zy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLW5vdCAiRkFJTEVEOiIgInBhcmxvb3BzMSIgfSB9 ICovCiAKIC8qIENoZWNrIHRoYXQgdGhlIGxvb3AgaGFzIGJlZW4gc3BsaXQgb2ZmIGludG8g YSBmdW5jdGlvbi4gICovCmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1v bi9nb2FjYy9rZXJuZWxzLWxvb3AuYyBiL2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dv YWNjL2tlcm5lbHMtbG9vcC5jCmluZGV4IDk2MTlkNTNiNDNkLi4yNjAyMDgxZjJjNiAxMDA2 NDQKLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2Mva2VybmVscy1sb29w LmMKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2Mva2VybmVscy1sb29w LmMKQEAgLTQ2LDcgKzQ2LDcgQEAgbWFpbiAodm9pZCkKIAogLyogQ2hlY2sgdGhhdCBvbmx5 IG9uZSBsb29wIGlzIGFuYWx5emVkLCBhbmQgdGhhdCBpdCBjYW4gYmUgcGFyYWxsZWxpemVk LiAgKi8KIC8qIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiU1VDQ0VTUzog bWF5IGJlIHBhcmFsbGVsaXplZCIgMSAicGFybG9vcHMxIiB9IH0gKi8KLS8qIHsgZGctZmlu YWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNj IGtlcm5lbHMgcGFyYWxsZWxpemVkLCBvYWNjIGZ1bmN0aW9uIFxcKCwgLCBcXCksIG9hY2Mg a2VybmVscywgb21wIHRhcmdldCBlbnRyeXBvaW50XFwpXFwpIiAxICJwYXJsb29wczEiIH0g fSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRy aWJ1dGVfX1xcKFxcKG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9hY2MgZnVuY3Rpb24g XFwoLCAsIFxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnQsIG5vY2xv bmVcXClcXCkiIDEgInBhcmxvb3BzMSIgfSB9ICovCiAvKiB7IGRnLWZpbmFsIHsgc2Nhbi10 cmVlLWR1bXAtbm90ICJGQUlMRUQ6IiAicGFybG9vcHMxIiB9IH0gKi8KIAogLyogQ2hlY2sg dGhhdCB0aGUgbG9vcCBoYXMgYmVlbiBzcGxpdCBvZmYgaW50byBhIGZ1bmN0aW9uLiAgKi8K ZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvYWNjL2tlcm5lbHMt b25lLWNvdW50ZXItdmFyLmMgYi9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9r ZXJuZWxzLW9uZS1jb3VudGVyLXZhci5jCmluZGV4IDY5NTM5YjI0YTc4Li4wZDljODc1ZjNk OSAxMDA2NDQKLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29hY2Mva2VybmVs cy1vbmUtY291bnRlci12YXIuYworKysgYi9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9n b2FjYy9rZXJuZWxzLW9uZS1jb3VudGVyLXZhci5jCkBAIC00NCw3ICs0NCw3IEBAIG1haW4g KHZvaWQpCiAKIC8qIENoZWNrIHRoYXQgb25seSBvbmUgbG9vcCBpcyBhbmFseXplZCwgYW5k IHRoYXQgaXQgY2FuIGJlIHBhcmFsbGVsaXplZC4gICovCiAvKiB7IGRnLWZpbmFsIHsgc2Nh bi10cmVlLWR1bXAtdGltZXMgIlNVQ0NFU1M6IG1heSBiZSBwYXJhbGxlbGl6ZWQiIDEgInBh cmxvb3BzMSIgfSB9ICovCi0vKiB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMg Iig/bilfX2F0dHJpYnV0ZV9fXFwoXFwob2FjYyBrZXJuZWxzIHBhcmFsbGVsaXplZCwgb2Fj YyBmdW5jdGlvbiBcXCgsICwgXFwpLCBvYWNjIGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50cnlw b2ludFxcKVxcKSIgMSAicGFybG9vcHMxIiB9IH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2Fu LXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIGtlcm5lbHMg cGFyYWxsZWxpemVkLCBvYWNjIGZ1bmN0aW9uIFxcKCwgLCBcXCksIG9hY2Mga2VybmVscywg b21wIHRhcmdldCBlbnRyeXBvaW50LCBub2Nsb25lXFwpXFwpIiAxICJwYXJsb29wczEiIH0g fSAqLwogLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLW5vdCAiRkFJTEVEOiIgInBh cmxvb3BzMSIgfSB9ICovCiAKIC8qIENoZWNrIHRoYXQgdGhlIGxvb3AgaGFzIGJlZW4gc3Bs aXQgb2ZmIGludG8gYSBmdW5jdGlvbi4gICovCmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRl L2MtYysrLWNvbW1vbi9nb2FjYy9rZXJuZWxzLXBhcmFsbGVsLWxvb3AtZGF0YS1lbnRlci1l eGl0LmMgYi9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9rZXJuZWxzLXBhcmFs bGVsLWxvb3AtZGF0YS1lbnRlci1leGl0LmMKaW5kZXggODFiMGZlZTVhNDQuLjFkY2QzMmZi OGRjIDEwMDY0NAotLS0gYS9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9nb2FjYy9rZXJu ZWxzLXBhcmFsbGVsLWxvb3AtZGF0YS1lbnRlci1leGl0LmMKKysrIGIvZ2NjL3Rlc3RzdWl0 ZS9jLWMrKy1jb21tb24vZ29hY2Mva2VybmVscy1wYXJhbGxlbC1sb29wLWRhdGEtZW50ZXIt ZXhpdC5jCkBAIC01Nyw3ICs1Nyw3IEBAIG1haW4gKHZvaWQpCiAvLyBGSVhNRTogT3BlbkFD QyBrZXJuZWxzIHN0b3BwZWQgd29ya2luZyB3aXRoIHRoZSBmaXJzdHByaXZhdGUgc3ViYXJy YXkKIC8vIGNoYW5nZXMuCiAvKiB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMg IlNVQ0NFU1M6IG1heSBiZSBwYXJhbGxlbGl6ZWQiIDIgInBhcmxvb3BzMSIgeyB4ZmFpbCAq LSotKiB9IH0gfSAqLwotLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIo P24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9hY2Mg ZnVuY3Rpb24gXFwoLCAsIFxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9p bnRcXClcXCkiIDIgInBhcmxvb3BzMSIgeyB4ZmFpbCAqLSotKiB9IH0gfSAqLworLyogeyBk Zy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxc KG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9hY2MgZnVuY3Rpb24gXFwoLCAsIFxcKSwg b2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnQsIG5vY2xvbmVcXClcXCkiIDIg InBhcmxvb3BzMSIgeyB4ZmFpbCAqLSotKiB9IH0gfSAqLwogLyogeyBkZy1maW5hbCB7IHNj YW4tdHJlZS1kdW1wLW5vdCAiRkFJTEVEOiIgInBhcmxvb3BzMSIgeyB4ZmFpbCAqLSotKiB9 IH0gfSAqLwogCiAvKiBDaGVjayB0aGF0IHRoZSBsb29wIGhhcyBiZWVuIHNwbGl0IG9mZiBp bnRvIGEgZnVuY3Rpb24uICAqLwpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1j b21tb24vZ29tcC9yZXZlcnNlLW9mZmxvYWQtMS5jIGIvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1j b21tb24vZ29tcC9yZXZlcnNlLW9mZmxvYWQtMS5jCmluZGV4IDM0NTIxNTZmOTQ4Li45YTNm YTUyMzBmOCAxMDA2NDQKLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29tcC9y ZXZlcnNlLW9mZmxvYWQtMS5jCisrKyBiL2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dv bXAvcmV2ZXJzZS1vZmZsb2FkLTEuYwpAQCAtNDMsNyArNDMsNyBAQCB0Z19mbiAoaW50ICp4 LCBpbnQgKnkpCiAgIHgyID0geDIgKyAyICsgY2FsbGVkX2luX3RhcmdldDEgKCk7CiAgIHky ID0geTIgKyA3OwogCi0gICNwcmFnbWEgb21wIHRhcmdldCBkZXZpY2UoYW5jZXN0b3IgOiAx KSBtYXAodG9mcm9tOiB4MikgIC8qIHsgZGctbWVzc2FnZSAic29ycnksIHVuaW1wbGVtZW50 ZWQ6ICdhbmNlc3Rvcicgbm90IHlldCBzdXBwb3J0ZWQiIH0gKi8KKyAgI3ByYWdtYSBvbXAg dGFyZ2V0IGRldmljZShhbmNlc3RvciA6IDEpIG1hcCh0b2Zyb206IHgyKQogICAgIGNoZWNr X29mZmxvYWQoJngyLCAmeTIpOwogCiAgIGlmICh4MiAhPSAyKzIrMys0MiB8fCB5MiAhPSAz ICsgNykKZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvbXAvdGFy Z2V0LWRldmljZS1hbmNlc3Rvci00LmMgYi9nY2MvdGVzdHN1aXRlL2MtYysrLWNvbW1vbi9n b21wL3RhcmdldC1kZXZpY2UtYW5jZXN0b3ItNC5jCmluZGV4IDI0MTIzNGY4ZGFmLi44N2Fj NzU0OGMyMyAxMDA2NDQKLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29tcC90 YXJnZXQtZGV2aWNlLWFuY2VzdG9yLTQuYworKysgYi9nY2MvdGVzdHN1aXRlL2MtYysrLWNv bW1vbi9nb21wL3RhcmdldC1kZXZpY2UtYW5jZXN0b3ItNC5jCkBAIC05LDcgKzksNyBAQAog dm9pZAogZm9vICh2b2lkKQogewotICAjcHJhZ21hIG9tcCB0YXJnZXQgZGV2aWNlIChhbmNl c3RvcjogMSkgLyogeyBkZy1tZXNzYWdlICJzb3JyeSwgdW5pbXBsZW1lbnRlZDogJ2FuY2Vz dG9yJyBub3QgeWV0IHN1cHBvcnRlZCIgfSAqLworICAjcHJhZ21hIG9tcCB0YXJnZXQgZGV2 aWNlIChhbmNlc3RvcjogMSkKICAgOwogCiB9CmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRl L2dmb3J0cmFuLmRnL2dvYWNjL2NsYXNzaWZ5LWtlcm5lbHMtcGFybG9vcHMuZjk1IGIvZ2Nj L3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9nb2FjYy9jbGFzc2lmeS1rZXJuZWxzLXBhcmxvb3Bz LmY5NQppbmRleCA5NjgxNGExNjk3ZC4uNWRkNzYzZmFmZmUgMTAwNjQ0Ci0tLSBhL2djYy90 ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29hY2MvY2xhc3NpZnkta2VybmVscy1wYXJsb29wcy5m OTUKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9nb2FjYy9jbGFzc2lmeS1rZXJu ZWxzLXBhcmxvb3BzLmY5NQpAQCAtMjksMTYgKzI5LDE2IEBAIHByb2dyYW0gbWFpbgogZW5k IHByb2dyYW0gbWFpbgogCiAhIENoZWNrIHRoZSBvZmZsb2FkZWQgZnVuY3Rpb24ncyBhdHRy aWJ1dGVzLgotISB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/bilfX2F0 dHJpYnV0ZV9fXFwoXFwob2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnRcXClc XCkiIDEgIm9tcGV4cCIgfSB9CishIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1l cyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50 cnlwb2ludCwgbm9jbG9uZVxcKVxcKSIgMSAib21wZXhwIiB9IH0KIAogISBDaGVjayB0aGF0 IGV4YWN0bHkgb25lIE9wZW5BQ0Mga2VybmVscyBjb25zdHJ1Y3QgaXMgYW5hbHl6ZWQsIGFu ZCB0aGF0IGl0CiAhIGNhbiBiZSBwYXJhbGxlbGl6ZWQuCiAhIHsgZGctZmluYWwgeyBzY2Fu LXRyZWUtZHVtcC10aW1lcyAiU1VDQ0VTUzogbWF5IGJlIHBhcmFsbGVsaXplZCIgMSAicGFy bG9vcHMxIiB9IH0KLSEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24p X19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9hY2MgZnVu Y3Rpb24gXFwoLCAsIFxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnRc XClcXCkiIDEgInBhcmxvb3BzMSIgfSB9CishIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVt cC10aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIGtlcm5lbHMgcGFyYWxsZWxp emVkLCBvYWNjIGZ1bmN0aW9uIFxcKCwgLCBcXCksIG9hY2Mga2VybmVscywgb21wIHRhcmdl dCBlbnRyeXBvaW50LCBub2Nsb25lXFwpXFwpIiAxICJwYXJsb29wczEiIH0gfQogISB7IGRn LWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtbm90ICJGQUlMRUQ6IiAicGFybG9vcHMxIiB9IH0K IAogISBDaGVjayB0aGUgb2ZmbG9hZGVkIGZ1bmN0aW9uJ3MgY2xhc3NpZmljYXRpb24gYW5k IGNvbXB1dGUgZGltZW5zaW9ucyAod2lsbAogISBhbHdheXMgYmUgMSB4IDEgeCAxIGZvciBu b24tb2ZmbG9hZGluZyBjb21waWxhdGlvbikuCiAhIHsgZGctZmluYWwgeyBzY2FuLXRyZWUt ZHVtcC10aW1lcyAiKD9uKUZ1bmN0aW9uIGlzIHBhcmFsbGVsaXplZCBPcGVuQUNDIGtlcm5l bHMgb2ZmbG9hZCIgMSAib2FjY2xvb3BzIiB9IH0KICEgeyBkZy1maW5hbCB7IHNjYW4tdHJl ZS1kdW1wLXRpbWVzICIoP24pQ29tcHV0ZSBkaW1lbnNpb25zIFxcXFsxLCAxLCAxXFxcXSIg MSAib2FjY2xvb3BzIiB9IH0KLSEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVz ICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2MgZnVuY3Rpb24gXFwoMSwgMSwgMVxcKSwg b2FjYyBrZXJuZWxzIHBhcmFsbGVsaXplZCwgb2FjYyBmdW5jdGlvbiBcXCgsICwgXFwpLCBv YWNjIGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50cnlwb2ludFxcKVxcKSIgMSAib2FjY2xvb3Bz IiB9IH0KKyEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRy aWJ1dGVfX1xcKFxcKG9hY2MgZnVuY3Rpb24gXFwoMSwgMSwgMVxcKSwgb2FjYyBrZXJuZWxz IHBhcmFsbGVsaXplZCwgb2FjYyBmdW5jdGlvbiBcXCgsICwgXFwpLCBvYWNjIGtlcm5lbHMs IG9tcCB0YXJnZXQgZW50cnlwb2ludCwgbm9jbG9uZVxcKVxcKSIgMSAib2FjY2xvb3BzIiB9 IH0KZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29hY2MvY2xhc3Np Znkta2VybmVscy11bnBhcmFsbGVsaXplZC1wYXJsb29wcy5mOTUgYi9nY2MvdGVzdHN1aXRl L2dmb3J0cmFuLmRnL2dvYWNjL2NsYXNzaWZ5LWtlcm5lbHMtdW5wYXJhbGxlbGl6ZWQtcGFy bG9vcHMuZjk1CmluZGV4IGU4NTg2MTdiYmM2Li5lYjE2NWU1NTJjNiAxMDA2NDQKLS0tIGEv Z2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9nb2FjYy9jbGFzc2lmeS1rZXJuZWxzLXVucGFy YWxsZWxpemVkLXBhcmxvb3BzLmY5NQorKysgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRn L2dvYWNjL2NsYXNzaWZ5LWtlcm5lbHMtdW5wYXJhbGxlbGl6ZWQtcGFybG9vcHMuZjk1CkBA IC0zMywxNiArMzMsMTYgQEAgcHJvZ3JhbSBtYWluCiBlbmQgcHJvZ3JhbSBtYWluCiAKICEg Q2hlY2sgdGhlIG9mZmxvYWRlZCBmdW5jdGlvbidzIGF0dHJpYnV0ZXMuCi0hIHsgZGctZmlu YWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNj IGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50cnlwb2ludFxcKVxcKSIgMSAib21wZXhwIiB9IH0K KyEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVf X1xcKFxcKG9hY2Mga2VybmVscywgb21wIHRhcmdldCBlbnRyeXBvaW50LCBub2Nsb25lXFwp XFwpIiAxICJvbXBleHAiIH0gfQogCiAhIENoZWNrIHRoYXQgZXhhY3RseSBvbmUgT3BlbkFD QyBrZXJuZWxzIGNvbnN0cnVjdCBpcyBhbmFseXplZCwgYW5kIHRoYXQgaXQKICEgY2FuJ3Qg YmUgcGFyYWxsZWxpemVkLgogISB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMg IkZBSUxFRDoiIDEgInBhcmxvb3BzMSIgfSB9Ci0hIHsgZGctZmluYWwgeyBzY2FuLXRyZWUt ZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIGZ1bmN0aW9uIFxcKCwg LCBcXCksIG9hY2Mga2VybmVscywgb21wIHRhcmdldCBlbnRyeXBvaW50XFwpXFwpIiAxICJw YXJsb29wczEiIH0gfQorISB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/ bilfX2F0dHJpYnV0ZV9fXFwoXFwob2FjYyBmdW5jdGlvbiBcXCgsICwgXFwpLCBvYWNjIGtl cm5lbHMsIG9tcCB0YXJnZXQgZW50cnlwb2ludCwgbm9jbG9uZVxcKVxcKSIgMSAicGFybG9v cHMxIiB9IH0KICEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLW5vdCAiU1VDQ0VTUzog bWF5IGJlIHBhcmFsbGVsaXplZCIgInBhcmxvb3BzMSIgfSB9CiAKICEgQ2hlY2sgdGhlIG9m ZmxvYWRlZCBmdW5jdGlvbidzIGNsYXNzaWZpY2F0aW9uIGFuZCBjb21wdXRlIGRpbWVuc2lv bnMgKHdpbGwKICEgYWx3YXlzIGJlIDEgeCAxIHggMSBmb3Igbm9uLW9mZmxvYWRpbmcgY29t cGlsYXRpb24pLgogISB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/bilG dW5jdGlvbiBpcyB1bnBhcmFsbGVsaXplZCBPcGVuQUNDIGtlcm5lbHMgb2ZmbG9hZCIgMSAi b2FjY2xvb3BzIiB9IH0KICEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIo P24pQ29tcHV0ZSBkaW1lbnNpb25zIFxcXFsxLCAxLCAxXFxcXSIgMSAib2FjY2xvb3BzIiB9 IH0KLSEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1 dGVfX1xcKFxcKG9hY2MgZnVuY3Rpb24gXFwoMSwgMSwgMVxcKSwgb2FjYyBrZXJuZWxzLCBv bXAgdGFyZ2V0IGVudHJ5cG9pbnRcXClcXCkiIDEgIm9hY2Nsb29wcyIgfSB9CishIHsgZGct ZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChv YWNjIGZ1bmN0aW9uIFxcKDEsIDEsIDFcXCksIG9hY2Mga2VybmVscywgb21wIHRhcmdldCBl bnRyeXBvaW50LCBub2Nsb25lXFwpXFwpIiAxICJvYWNjbG9vcHMiIH0gfQpkaWZmIC0tZ2l0 IGEvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9nb2FjYy9jbGFzc2lmeS1rZXJuZWxzLXVu cGFyYWxsZWxpemVkLmY5NSBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29hY2MvY2xh c3NpZnkta2VybmVscy11bnBhcmFsbGVsaXplZC5mOTUKaW5kZXggZjg4OTdmYzViMzQuLmU4 Y2VkYTliODc3IDEwMDY0NAotLS0gYS9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dvYWNj L2NsYXNzaWZ5LWtlcm5lbHMtdW5wYXJhbGxlbGl6ZWQuZjk1CisrKyBiL2djYy90ZXN0c3Vp dGUvZ2ZvcnRyYW4uZGcvZ29hY2MvY2xhc3NpZnkta2VybmVscy11bnBhcmFsbGVsaXplZC5m OTUKQEAgLTM0LDE2ICszNCwxNiBAQCBwcm9ncmFtIG1haW4KIGVuZCBwcm9ncmFtIG1haW4K IAogISBDaGVjayB0aGUgb2ZmbG9hZGVkIGZ1bmN0aW9uJ3MgYXR0cmlidXRlcy4KLSEgeyBk Zy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxc KG9hY2Mga2VybmVscywgb21wIHRhcmdldCBlbnRyeXBvaW50XFwpXFwpIiAxICJvbXBleHAi IH0gfQorISB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/bilfX2F0dHJp YnV0ZV9fXFwoXFwob2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnQsIG5vY2xv bmVcXClcXCkiIDEgIm9tcGV4cCIgfSB9CiAKICEgQ2hlY2sgdGhhdCBleGFjdGx5IG9uZSBP cGVuQUNDIGtlcm5lbHMgY29uc3RydWN0IGlzIGFuYWx5emVkLCBhbmQgdGhhdCBpdAogISBj YW4ndCBiZSBwYXJhbGxlbGl6ZWQuCiAhIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10 aW1lcyAiRkFJTEVEOiIgMSAicGFybG9vcHMxIiB9IH0KLSEgeyBkZy1maW5hbCB7IHNjYW4t dHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2MgZnVuY3Rpb24g XFwoLCAsIFxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnRcXClcXCki IDEgInBhcmxvb3BzMSIgfSB9CishIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1l cyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIGZ1bmN0aW9uIFxcKCwgLCBcXCksIG9h Y2Mga2VybmVscywgb21wIHRhcmdldCBlbnRyeXBvaW50LCBub2Nsb25lXFwpXFwpIiAxICJw YXJsb29wczEiIH0gfQogISB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtbm90ICJTVUND RVNTOiBtYXkgYmUgcGFyYWxsZWxpemVkIiAicGFybG9vcHMxIiB9IH0KIAogISBDaGVjayB0 aGUgb2ZmbG9hZGVkIGZ1bmN0aW9uJ3MgY2xhc3NpZmljYXRpb24gYW5kIGNvbXB1dGUgZGlt ZW5zaW9ucyAod2lsbAogISBhbHdheXMgYmUgMSB4IDEgeCAxIGZvciBub24tb2ZmbG9hZGlu ZyBjb21waWxhdGlvbikuCiAhIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAi KD9uKUZ1bmN0aW9uIGlzIHVucGFyYWxsZWxpemVkIE9wZW5BQ0Mga2VybmVscyBvZmZsb2Fk IiAxICJvYWNjbG9vcHMiIH0gfQogISB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGlt ZXMgIig/bilDb21wdXRlIGRpbWVuc2lvbnMgXFxcWzEsIDEsIDFcXFxdIiAxICJvYWNjbG9v cHMiIH0gfQotISB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/bilfX2F0 dHJpYnV0ZV9fXFwoXFwob2FjYyBmdW5jdGlvbiBcXCgxLCAxLCAxXFwpLCBvYWNjIGtlcm5l bHMsIG9tcCB0YXJnZXQgZW50cnlwb2ludFxcKVxcKSIgMSAib2FjY2xvb3BzIiB9IH0KKyEg eyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xc KFxcKG9hY2MgZnVuY3Rpb24gXFwoMSwgMSwgMVxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFy Z2V0IGVudHJ5cG9pbnQsIG5vY2xvbmVcXClcXCkiIDEgIm9hY2Nsb29wcyIgfSB9CmRpZmYg LS1naXQgYS9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dvYWNjL2NsYXNzaWZ5LWtlcm5l bHMuZjk1IGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9nb2FjYy9jbGFzc2lmeS1rZXJu ZWxzLmY5NQppbmRleCAyZWQ2Y2RiNjExNS4uN2ViNzkxODhiODIgMTAwNjQ0Ci0tLSBhL2dj Yy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29hY2MvY2xhc3NpZnkta2VybmVscy5mOTUKKysr IGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9nb2FjYy9jbGFzc2lmeS1rZXJuZWxzLmY5 NQpAQCAtMzIsMTYgKzMyLDE2IEBAIHByb2dyYW0gbWFpbgogZW5kIHByb2dyYW0gbWFpbgog CiAhIENoZWNrIHRoZSBvZmZsb2FkZWQgZnVuY3Rpb24ncyBhdHRyaWJ1dGVzLgotISB7IGRn LWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/bilfX2F0dHJpYnV0ZV9fXFwoXFwo b2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnRcXClcXCkiIDEgIm9tcGV4cCIg fSB9CishIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmli dXRlX19cXChcXChvYWNjIGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50cnlwb2ludCwgbm9jbG9u ZVxcKVxcKSIgMSAib21wZXhwIiB9IH0KIAogISBDaGVjayB0aGF0IGV4YWN0bHkgb25lIE9w ZW5BQ0Mga2VybmVscyBjb25zdHJ1Y3QgaXMgYW5hbHl6ZWQsIGFuZCB0aGF0IGl0CiAhIGNh biBiZSBwYXJhbGxlbGl6ZWQuCiAhIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1l cyAiU1VDQ0VTUzogbWF5IGJlIHBhcmFsbGVsaXplZCIgMSAicGFybG9vcHMxIiB9IH0KLSEg eyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xc KFxcKG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9hY2MgZnVuY3Rpb24gXFwoLCAsIFxc KSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnRcXClcXCkiIDEgInBhcmxv b3BzMSIgfSB9CishIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9f YXR0cmlidXRlX19cXChcXChvYWNjIGtlcm5lbHMgcGFyYWxsZWxpemVkLCBvYWNjIGZ1bmN0 aW9uIFxcKCwgLCBcXCksIG9hY2Mga2VybmVscywgb21wIHRhcmdldCBlbnRyeXBvaW50LCBu b2Nsb25lXFwpXFwpIiAxICJwYXJsb29wczEiIH0gfQogISB7IGRnLWZpbmFsIHsgc2Nhbi10 cmVlLWR1bXAtbm90ICJGQUlMRUQ6IiAicGFybG9vcHMxIiB9IH0KIAogISBDaGVjayB0aGUg b2ZmbG9hZGVkIGZ1bmN0aW9uJ3MgY2xhc3NpZmljYXRpb24gYW5kIGNvbXB1dGUgZGltZW5z aW9ucyAod2lsbAogISBhbHdheXMgYmUgMSB4IDEgeCAxIGZvciBub24tb2ZmbG9hZGluZyBj b21waWxhdGlvbikuCiAhIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9u KUZ1bmN0aW9uIGlzIHBhcmFsbGVsaXplZCBPcGVuQUNDIGtlcm5lbHMgb2ZmbG9hZCIgMSAi b2FjY2xvb3BzIiB9IH0KICEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIo P24pQ29tcHV0ZSBkaW1lbnNpb25zIFxcXFsxLCAxLCAxXFxcXSIgMSAib2FjY2xvb3BzIiB9 IH0KLSEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1 dGVfX1xcKFxcKG9hY2MgZnVuY3Rpb24gXFwoMSwgMSwgMVxcKSwgb2FjYyBrZXJuZWxzIHBh cmFsbGVsaXplZCwgb2FjYyBmdW5jdGlvbiBcXCgsICwgXFwpLCBvYWNjIGtlcm5lbHMsIG9t cCB0YXJnZXQgZW50cnlwb2ludFxcKVxcKSIgMSAib2FjY2xvb3BzIiB9IH0KKyEgeyBkZy1m aW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9h Y2MgZnVuY3Rpb24gXFwoMSwgMSwgMVxcKSwgb2FjYyBrZXJuZWxzIHBhcmFsbGVsaXplZCwg b2FjYyBmdW5jdGlvbiBcXCgsICwgXFwpLCBvYWNjIGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50 cnlwb2ludCwgbm9jbG9uZVxcKVxcKSIgMSAib2FjY2xvb3BzIiB9IH0KZGlmZiAtLWdpdCBh L2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29hY2MvY2xhc3NpZnktcGFyYWxsZWwuZjk1 IGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9nb2FjYy9jbGFzc2lmeS1wYXJhbGxlbC5m OTUKaW5kZXggYWRjMzg0NjVkNTIuLjhmYTFlOTQ2ZThjIDEwMDY0NAotLS0gYS9nY2MvdGVz dHN1aXRlL2dmb3J0cmFuLmRnL2dvYWNjL2NsYXNzaWZ5LXBhcmFsbGVsLmY5NQorKysgYi9n Y2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dvYWNjL2NsYXNzaWZ5LXBhcmFsbGVsLmY5NQpA QCAtMjYsMTAgKzI2LDEwIEBAIHByb2dyYW0gbWFpbgogZW5kIHByb2dyYW0gbWFpbgogCiAh IENoZWNrIHRoZSBvZmZsb2FkZWQgZnVuY3Rpb24ncyBhdHRyaWJ1dGVzLgotISB7IGRnLWZp bmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/bilfX2F0dHJpYnV0ZV9fXFwoXFwob2Fj YyBwYXJhbGxlbCwgb21wIHRhcmdldCBlbnRyeXBvaW50XFwpXFwpIiAxICJvbXBleHAiIH0g fQorISB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/bilfX2F0dHJpYnV0 ZV9fXFwoXFwob2FjYyBwYXJhbGxlbCwgb21wIHRhcmdldCBlbnRyeXBvaW50LCBub2Nsb25l XFwpXFwpIiAxICJvbXBleHAiIH0gfQogCiAhIENoZWNrIHRoZSBvZmZsb2FkZWQgZnVuY3Rp b24ncyBjbGFzc2lmaWNhdGlvbiBhbmQgY29tcHV0ZSBkaW1lbnNpb25zICh3aWxsCiAhIGFs d2F5cyBiZSAxIHggMSB4IDEgZm9yIG5vbi1vZmZsb2FkaW5nIGNvbXBpbGF0aW9uKS4KICEg eyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pRnVuY3Rpb24gaXMgT3Bl bkFDQyBwYXJhbGxlbCBvZmZsb2FkIiAxICJvYWNjbG9vcHMiIH0gfQogISB7IGRnLWZpbmFs IHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/bilDb21wdXRlIGRpbWVuc2lvbnMgXFxcWzEs IDEsIDFcXFxdIiAxICJvYWNjbG9vcHMiIH0gfQotISB7IGRnLWZpbmFsIHsgc2Nhbi10cmVl LWR1bXAtdGltZXMgIig/bilfX2F0dHJpYnV0ZV9fXFwoXFwob2FjYyBmdW5jdGlvbiBcXCgx LCAxLCAxXFwpLCBvYWNjIHBhcmFsbGVsLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnRcXClcXCki IDEgIm9hY2Nsb29wcyIgfSB9CishIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1l cyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIGZ1bmN0aW9uIFxcKDEsIDEsIDFcXCks IG9hY2MgcGFyYWxsZWwsIG9tcCB0YXJnZXQgZW50cnlwb2ludCwgbm9jbG9uZVxcKVxcKSIg MSAib2FjY2xvb3BzIiB9IH0KZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4u ZGcvZ29hY2MvY2xhc3NpZnktc2VyaWFsLmY5NSBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4u ZGcvZ29hY2MvY2xhc3NpZnktc2VyaWFsLmY5NQppbmRleCAyMTAxNTg3OTcwMy4uOTk2YjJh ZTIyNzAgMTAwNjQ0Ci0tLSBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29hY2MvY2xh c3NpZnktc2VyaWFsLmY5NQorKysgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dvYWNj L2NsYXNzaWZ5LXNlcmlhbC5mOTUKQEAgLTI5LDEwICsyOSwxMCBAQCBwcm9ncmFtIG1haW4K IGVuZCBwcm9ncmFtIG1haW4KIAogISBDaGVjayB0aGUgb2ZmbG9hZGVkIGZ1bmN0aW9uJ3Mg YXR0cmlidXRlcy4KLSEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24p X19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mgc2VyaWFsLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnRc XClcXCkiIDEgIm9tcGV4cCIgfSB9CishIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10 aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIHNlcmlhbCwgb21wIHRhcmdldCBl bnRyeXBvaW50LCBub2Nsb25lXFwpXFwpIiAxICJvbXBleHAiIH0gfQogCiAhIENoZWNrIHRo ZSBvZmZsb2FkZWQgZnVuY3Rpb24ncyBjbGFzc2lmaWNhdGlvbiBhbmQgY29tcHV0ZSBkaW1l bnNpb25zICh3aWxsCiAhIGFsd2F5cyBiZSAxIHggMSB4IDEgZm9yIG5vbi1vZmZsb2FkaW5n IGNvbXBpbGF0aW9uKS4KICEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIo P24pRnVuY3Rpb24gaXMgT3BlbkFDQyBzZXJpYWwgb2ZmbG9hZCIgMSAib2FjY2xvb3BzIiB9 IH0KICEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pQ29tcHV0ZSBk aW1lbnNpb25zIFxcXFsxLCAxLCAxXFxcXSIgMSAib2FjY2xvb3BzIiB9IH0KLSEgeyBkZy1m aW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9h Y2MgZnVuY3Rpb24gXFwoMSwgMSwgMVxcKSwgb2FjYyBzZXJpYWwsIG9tcCB0YXJnZXQgZW50 cnlwb2ludFxcKVxcKSIgMSAib2FjY2xvb3BzIiB9IH0KKyEgeyBkZy1maW5hbCB7IHNjYW4t dHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2MgZnVuY3Rpb24g XFwoMSwgMSwgMVxcKSwgb2FjYyBzZXJpYWwsIG9tcCB0YXJnZXQgZW50cnlwb2ludCwgbm9j bG9uZVxcKVxcKSIgMSAib2FjY2xvb3BzIiB9IH0KZGlmZiAtLWdpdCBhL2djYy90ZXN0c3Vp dGUvZ2ZvcnRyYW4uZGcvZ29hY2Mva2VybmVscy1sb29wLTIuZjk1IGIvZ2NjL3Rlc3RzdWl0 ZS9nZm9ydHJhbi5kZy9nb2FjYy9rZXJuZWxzLWxvb3AtMi5mOTUKaW5kZXggZWY1MzMyNGRk MmEuLjhmNTRkYjdkNjU0IDEwMDY0NAotLS0gYS9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRn L2dvYWNjL2tlcm5lbHMtbG9vcC0yLmY5NQorKysgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFu LmRnL2dvYWNjL2tlcm5lbHMtbG9vcC0yLmY5NQpAQCAtMzQsNyArMzQsNyBAQCBlbmQgcHJv Z3JhbSBtYWluCiAKICEgQ2hlY2sgdGhhdCBvbmx5IHRocmVlIGxvb3BzIGFyZSBhbmFseXpl ZCwgYW5kIHRoYXQgYWxsIGNhbiBiZSBwYXJhbGxlbGl6ZWQuCiAhIHsgZGctZmluYWwgeyBz Y2FuLXRyZWUtZHVtcC10aW1lcyAiU1VDQ0VTUzogbWF5IGJlIHBhcmFsbGVsaXplZCIgMyAi cGFybG9vcHMxIiB9IH0KLSEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIo P24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9hY2Mg ZnVuY3Rpb24gXFwoLCAsIFxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9p bnRcXClcXCkiIDMgInBhcmxvb3BzMSIgfSB9CishIHsgZGctZmluYWwgeyBzY2FuLXRyZWUt ZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIGtlcm5lbHMgcGFyYWxs ZWxpemVkLCBvYWNjIGZ1bmN0aW9uIFxcKCwgLCBcXCksIG9hY2Mga2VybmVscywgb21wIHRh cmdldCBlbnRyeXBvaW50LCBub2Nsb25lXFwpXFwpIiAzICJwYXJsb29wczEiIH0gfQogISB7 IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtbm90ICJGQUlMRUQ6IiAicGFybG9vcHMxIiB9 IH0KIAogISBDaGVjayB0aGF0IHRoZSBsb29wIGhhcyBiZWVuIHNwbGl0IG9mZiBpbnRvIGEg ZnVuY3Rpb24uCmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dvYWNj L2tlcm5lbHMtbG9vcC1kYXRhLTIuZjk1IGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9n b2FjYy9rZXJuZWxzLWxvb3AtZGF0YS0yLmY5NQppbmRleCAyZjFkY2Q2MDNhMS4uMjIyODJl YzQ2NDAgMTAwNjQ0Ci0tLSBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29hY2Mva2Vy bmVscy1sb29wLWRhdGEtMi5mOTUKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9n b2FjYy9rZXJuZWxzLWxvb3AtZGF0YS0yLmY5NQpAQCAtNDAsNyArNDAsNyBAQCBlbmQgcHJv Z3JhbSBtYWluCiAKICEgQ2hlY2sgdGhhdCBvbmx5IHRocmVlIGxvb3BzIGFyZSBhbmFseXpl ZCwgYW5kIHRoYXQgYWxsIGNhbiBiZSBwYXJhbGxlbGl6ZWQuCiAhIHsgZGctZmluYWwgeyBz Y2FuLXRyZWUtZHVtcC10aW1lcyAiU1VDQ0VTUzogbWF5IGJlIHBhcmFsbGVsaXplZCIgMyAi cGFybG9vcHMxIiB9IH0KLSEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIo P24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9hY2Mg ZnVuY3Rpb24gXFwoLCAsIFxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9p bnRcXClcXCkiIDMgInBhcmxvb3BzMSIgfSB9CishIHsgZGctZmluYWwgeyBzY2FuLXRyZWUt ZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIGtlcm5lbHMgcGFyYWxs ZWxpemVkLCBvYWNjIGZ1bmN0aW9uIFxcKCwgLCBcXCksIG9hY2Mga2VybmVscywgb21wIHRh cmdldCBlbnRyeXBvaW50LCBub2Nsb25lXFwpXFwpIiAzICJwYXJsb29wczEiIH0gfQogISB7 IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtbm90ICJGQUlMRUQ6IiAicGFybG9vcHMxIiB9 IH0KIAogISBDaGVjayB0aGF0IHRoZSBsb29wIGhhcyBiZWVuIHNwbGl0IG9mZiBpbnRvIGEg ZnVuY3Rpb24uCmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dvYWNj L2tlcm5lbHMtbG9vcC1kYXRhLWVudGVyLWV4aXQtMi5mOTUgYi9nY2MvdGVzdHN1aXRlL2dm b3J0cmFuLmRnL2dvYWNjL2tlcm5lbHMtbG9vcC1kYXRhLWVudGVyLWV4aXQtMi5mOTUKaW5k ZXggNDQ3ZTg1ZDY0NDguLjlkMDU3ZjNkYjE3IDEwMDY0NAotLS0gYS9nY2MvdGVzdHN1aXRl L2dmb3J0cmFuLmRnL2dvYWNjL2tlcm5lbHMtbG9vcC1kYXRhLWVudGVyLWV4aXQtMi5mOTUK KysrIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9nb2FjYy9rZXJuZWxzLWxvb3AtZGF0 YS1lbnRlci1leGl0LTIuZjk1CkBAIC00MCw3ICs0MCw3IEBAIGVuZCBwcm9ncmFtIG1haW4K IAogISBDaGVjayB0aGF0IG9ubHkgdGhyZWUgbG9vcHMgYXJlIGFuYWx5emVkLCBhbmQgdGhh dCBhbGwgY2FuIGJlIHBhcmFsbGVsaXplZC4KICEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1k dW1wLXRpbWVzICJTVUNDRVNTOiBtYXkgYmUgcGFyYWxsZWxpemVkIiAzICJwYXJsb29wczEi IH0gfQotISB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/bilfX2F0dHJp YnV0ZV9fXFwoXFwob2FjYyBrZXJuZWxzIHBhcmFsbGVsaXplZCwgb2FjYyBmdW5jdGlvbiBc XCgsICwgXFwpLCBvYWNjIGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50cnlwb2ludFxcKVxcKSIg MyAicGFybG9vcHMxIiB9IH0KKyEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVz ICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9h Y2MgZnVuY3Rpb24gXFwoLCAsIFxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5 cG9pbnQsIG5vY2xvbmVcXClcXCkiIDMgInBhcmxvb3BzMSIgfSB9CiAhIHsgZGctZmluYWwg eyBzY2FuLXRyZWUtZHVtcC1ub3QgIkZBSUxFRDoiICJwYXJsb29wczEiIH0gfQogCiAhIENo ZWNrIHRoYXQgdGhlIGxvb3AgaGFzIGJlZW4gc3BsaXQgb2ZmIGludG8gYSBmdW5jdGlvbi4K ZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29hY2Mva2VybmVscy1s b29wLWRhdGEtZW50ZXItZXhpdC5mOTUgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dv YWNjL2tlcm5lbHMtbG9vcC1kYXRhLWVudGVyLWV4aXQuZjk1CmluZGV4IDRlZGIyODg5Yjdi Li5lMGU4NTY0NTFmNyAxMDA2NDQKLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9n b2FjYy9rZXJuZWxzLWxvb3AtZGF0YS1lbnRlci1leGl0LmY5NQorKysgYi9nY2MvdGVzdHN1 aXRlL2dmb3J0cmFuLmRnL2dvYWNjL2tlcm5lbHMtbG9vcC1kYXRhLWVudGVyLWV4aXQuZjk1 CkBAIC0zOCw3ICszOCw3IEBAIGVuZCBwcm9ncmFtIG1haW4KIAogISBDaGVjayB0aGF0IG9u bHkgdGhyZWUgbG9vcHMgYXJlIGFuYWx5emVkLCBhbmQgdGhhdCBhbGwgY2FuIGJlIHBhcmFs bGVsaXplZC4KICEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICJTVUNDRVNT OiBtYXkgYmUgcGFyYWxsZWxpemVkIiAzICJwYXJsb29wczEiIH0gfQotISB7IGRnLWZpbmFs IHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/bilfX2F0dHJpYnV0ZV9fXFwoXFwob2FjYyBr ZXJuZWxzIHBhcmFsbGVsaXplZCwgb2FjYyBmdW5jdGlvbiBcXCgsICwgXFwpLCBvYWNjIGtl cm5lbHMsIG9tcCB0YXJnZXQgZW50cnlwb2ludFxcKVxcKSIgMyAicGFybG9vcHMxIiB9IH0K KyEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVf X1xcKFxcKG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9hY2MgZnVuY3Rpb24gXFwoLCAs IFxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnQsIG5vY2xvbmVcXClc XCkiIDMgInBhcmxvb3BzMSIgfSB9CiAhIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC1u b3QgIkZBSUxFRDoiICJwYXJsb29wczEiIH0gfQogCiAhIENoZWNrIHRoYXQgdGhlIGxvb3Ag aGFzIGJlZW4gc3BsaXQgb2ZmIGludG8gYSBmdW5jdGlvbi4KZGlmZiAtLWdpdCBhL2djYy90 ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29hY2Mva2VybmVscy1sb29wLWRhdGEtdXBkYXRlLmY5 NSBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29hY2Mva2VybmVscy1sb29wLWRhdGEt dXBkYXRlLmY5NQppbmRleCBmYzExM2UxZjY2MC4uNTMyODM3MTVlOGYgMTAwNjQ0Ci0tLSBh L2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29hY2Mva2VybmVscy1sb29wLWRhdGEtdXBk YXRlLmY5NQorKysgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dvYWNjL2tlcm5lbHMt bG9vcC1kYXRhLXVwZGF0ZS5mOTUKQEAgLTM4LDcgKzM4LDcgQEAgZW5kIHByb2dyYW0gbWFp bgogCiAhIENoZWNrIHRoYXQgb25seSB0aHJlZSBsb29wcyBhcmUgYW5hbHl6ZWQsIGFuZCB0 aGF0IGFsbCBjYW4gYmUgcGFyYWxsZWxpemVkLgogISB7IGRnLWZpbmFsIHsgc2Nhbi10cmVl LWR1bXAtdGltZXMgIlNVQ0NFU1M6IG1heSBiZSBwYXJhbGxlbGl6ZWQiIDIgInBhcmxvb3Bz MSIgfSB9Ci0hIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0 cmlidXRlX19cXChcXChvYWNjIGtlcm5lbHMgcGFyYWxsZWxpemVkLCBvYWNjIGZ1bmN0aW9u IFxcKCwgLCBcXCksIG9hY2Mga2VybmVscywgb21wIHRhcmdldCBlbnRyeXBvaW50XFwpXFwp IiAyICJwYXJsb29wczEiIH0gfQorISB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGlt ZXMgIig/bilfX2F0dHJpYnV0ZV9fXFwoXFwob2FjYyBrZXJuZWxzIHBhcmFsbGVsaXplZCwg b2FjYyBmdW5jdGlvbiBcXCgsICwgXFwpLCBvYWNjIGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50 cnlwb2ludCwgbm9jbG9uZVxcKVxcKSIgMiAicGFybG9vcHMxIiB9IH0KICEgeyBkZy1maW5h bCB7IHNjYW4tdHJlZS1kdW1wLW5vdCAiRkFJTEVEOiIgInBhcmxvb3BzMSIgfSB9CiAKICEg Q2hlY2sgdGhhdCB0aGUgbG9vcCBoYXMgYmVlbiBzcGxpdCBvZmYgaW50byBhIGZ1bmN0aW9u LgpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9nb2FjYy9rZXJuZWxz LWxvb3AtZGF0YS5mOTUgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dvYWNjL2tlcm5l bHMtbG9vcC1kYXRhLmY5NQppbmRleCA5NDUyMmY1ODYzNi4uZGE5ZmUyZTM1YjMgMTAwNjQ0 Ci0tLSBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29hY2Mva2VybmVscy1sb29wLWRh dGEuZjk1CisrKyBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29hY2Mva2VybmVscy1s b29wLWRhdGEuZjk1CkBAIC0zOCw3ICszOCw3IEBAIGVuZCBwcm9ncmFtIG1haW4KIAogISBD aGVjayB0aGF0IG9ubHkgdGhyZWUgbG9vcHMgYXJlIGFuYWx5emVkLCBhbmQgdGhhdCBhbGwg Y2FuIGJlIHBhcmFsbGVsaXplZC4KICEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRp bWVzICJTVUNDRVNTOiBtYXkgYmUgcGFyYWxsZWxpemVkIiAzICJwYXJsb29wczEiIH0gfQot ISB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIig/bilfX2F0dHJpYnV0ZV9f XFwoXFwob2FjYyBrZXJuZWxzIHBhcmFsbGVsaXplZCwgb2FjYyBmdW5jdGlvbiBcXCgsICwg XFwpLCBvYWNjIGtlcm5lbHMsIG9tcCB0YXJnZXQgZW50cnlwb2ludFxcKVxcKSIgMyAicGFy bG9vcHMxIiB9IH0KKyEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24p X19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9hY2MgZnVu Y3Rpb24gXFwoLCAsIFxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnQs IG5vY2xvbmVcXClcXCkiIDMgInBhcmxvb3BzMSIgfSB9CiAhIHsgZGctZmluYWwgeyBzY2Fu LXRyZWUtZHVtcC1ub3QgIkZBSUxFRDoiICJwYXJsb29wczEiIH0gfQogCiAhIENoZWNrIHRo YXQgdGhlIGxvb3AgaGFzIGJlZW4gc3BsaXQgb2ZmIGludG8gYSBmdW5jdGlvbi4KZGlmZiAt LWdpdCBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29hY2Mva2VybmVscy1sb29wLW4u Zjk1IGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9nb2FjYy9rZXJuZWxzLWxvb3Atbi5m OTUKaW5kZXggYjljNGFlYTA3NGQuLjAxMDRjMDg2MDMyIDEwMDY0NAotLS0gYS9nY2MvdGVz dHN1aXRlL2dmb3J0cmFuLmRnL2dvYWNjL2tlcm5lbHMtbG9vcC1uLmY5NQorKysgYi9nY2Mv dGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dvYWNjL2tlcm5lbHMtbG9vcC1uLmY5NQpAQCAtMzMs NyArMzMsNyBAQCBlbmQgbW9kdWxlIHRlc3QKICEgQ2hlY2sgdGhhdCBvbmx5IG9uZSBsb29w IGlzIGFuYWx5emVkLCBhbmQgdGhhdCBpdCBjYW4gYmUgcGFyYWxsZWxpemVkLgogISB7IGRn LWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIlNVQ0NFU1M6IG1heSBiZSBwYXJhbGxl bGl6ZWQiIDEgInBhcmxvb3BzMSIgfSB9CiAhIFRPRE8sIFBSNzA1NDUuCi0hIHsgZGctZmlu YWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNj IGtlcm5lbHMgcGFyYWxsZWxpemVkLCBvYWNjIGZ1bmN0aW9uIFxcKCwgLCBcXCksIG9hY2Mg a2VybmVscywgb21wIHRhcmdldCBlbnRyeXBvaW50XFwpXFwpIiAxICJwYXJsb29wczEiIHsg eGZhaWwgKi0qLSogfSB9IH0KKyEgeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVz ICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9h Y2MgZnVuY3Rpb24gXFwoLCAsIFxcKSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5 cG9pbnQsIG5vY2xvbmVcXClcXCkiIDEgInBhcmxvb3BzMSIgeyB4ZmFpbCAqLSotKiB9IH0g fQogISB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtbm90ICJGQUlMRUQ6IiAicGFybG9v cHMxIiB9IH0KIAogISBDaGVjayB0aGF0IHRoZSBsb29wIGhhcyBiZWVuIHNwbGl0IG9mZiBp bnRvIGEgZnVuY3Rpb24uCmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRn L2dvYWNjL2tlcm5lbHMtbG9vcC5mOTUgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dv YWNjL2tlcm5lbHMtbG9vcC5mOTUKaW5kZXggNmRjN2IyZTBmMjguLmUzZTc0ZThkNzg5IDEw MDY0NAotLS0gYS9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dvYWNjL2tlcm5lbHMtbG9v cC5mOTUKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9nb2FjYy9rZXJuZWxzLWxv b3AuZjk1CkBAIC0zMCw3ICszMCw3IEBAIGVuZCBwcm9ncmFtIG1haW4KIAogISBDaGVjayB0 aGF0IG9ubHkgb25lIGxvb3AgaXMgYW5hbHl6ZWQsIGFuZCB0aGF0IGl0IGNhbiBiZSBwYXJh bGxlbGl6ZWQuCiAhIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiU1VDQ0VT UzogbWF5IGJlIHBhcmFsbGVsaXplZCIgMSAicGFybG9vcHMxIiB9IH0KLSEgeyBkZy1maW5h bCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xcKFxcKG9hY2Mg a2VybmVscyBwYXJhbGxlbGl6ZWQsIG9hY2MgZnVuY3Rpb24gXFwoLCAsIFxcKSwgb2FjYyBr ZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnRcXClcXCkiIDEgInBhcmxvb3BzMSIgfSB9 CishIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiKD9uKV9fYXR0cmlidXRl X19cXChcXChvYWNjIGtlcm5lbHMgcGFyYWxsZWxpemVkLCBvYWNjIGZ1bmN0aW9uIFxcKCwg LCBcXCksIG9hY2Mga2VybmVscywgb21wIHRhcmdldCBlbnRyeXBvaW50LCBub2Nsb25lXFwp XFwpIiAxICJwYXJsb29wczEiIH0gfQogISB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAt bm90ICJGQUlMRUQ6IiAicGFybG9vcHMxIiB9IH0KIAogISBDaGVjayB0aGF0IHRoZSBsb29w IGhhcyBiZWVuIHNwbGl0IG9mZiBpbnRvIGEgZnVuY3Rpb24uCmRpZmYgLS1naXQgYS9nY2Mv dGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dvYWNjL2tlcm5lbHMtcGFyYWxsZWwtbG9vcC1kYXRh LWVudGVyLWV4aXQuZjk1IGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9nb2FjYy9rZXJu ZWxzLXBhcmFsbGVsLWxvb3AtZGF0YS1lbnRlci1leGl0LmY5NQppbmRleCA0OGMyMGI5OTk0 Mi4uNWI2YWUwNTczZjUgMTAwNjQ0Ci0tLSBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcv Z29hY2Mva2VybmVscy1wYXJhbGxlbC1sb29wLWRhdGEtZW50ZXItZXhpdC5mOTUKKysrIGIv Z2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9nb2FjYy9rZXJuZWxzLXBhcmFsbGVsLWxvb3At ZGF0YS1lbnRlci1leGl0LmY5NQpAQCAtMzksNyArMzksNyBAQCBlbmQgcHJvZ3JhbSBtYWlu CiAKICEgQ2hlY2sgdGhhdCBvbmx5IHRocmVlIGxvb3BzIGFyZSBhbmFseXplZCwgYW5kIHRo YXQgYWxsIGNhbiBiZSBwYXJhbGxlbGl6ZWQuCiAhIHsgZGctZmluYWwgeyBzY2FuLXRyZWUt ZHVtcC10aW1lcyAiU1VDQ0VTUzogbWF5IGJlIHBhcmFsbGVsaXplZCIgMiAicGFybG9vcHMx IiB7IHhmYWlsICotKi0qIH0gfSB9Ci0hIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10 aW1lcyAiKD9uKV9fYXR0cmlidXRlX19cXChcXChvYWNjIGtlcm5lbHMgcGFyYWxsZWxpemVk LCBvYWNjIGZ1bmN0aW9uIFxcKCwgLCBcXCksIG9hY2Mga2VybmVscywgb21wIHRhcmdldCBl bnRyeXBvaW50XFwpXFwpIiAyICJwYXJsb29wczEiIHsgeGZhaWwgKi0qLSogfSB9IH0KKyEg eyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICIoP24pX19hdHRyaWJ1dGVfX1xc KFxcKG9hY2Mga2VybmVscyBwYXJhbGxlbGl6ZWQsIG9hY2MgZnVuY3Rpb24gXFwoLCAsIFxc KSwgb2FjYyBrZXJuZWxzLCBvbXAgdGFyZ2V0IGVudHJ5cG9pbnQsIG5vY2xvbmVcXClcXCki IDIgInBhcmxvb3BzMSIgeyB4ZmFpbCAqLSotKiB9IH0gfQogISB7IGRnLWZpbmFsIHsgc2Nh bi10cmVlLWR1bXAtbm90ICJGQUlMRUQ6IiAicGFybG9vcHMxIiB7IHhmYWlsICotKi0qIH0g fSB9CiAKICEgQ2hlY2sgdGhhdCB0aGUgbG9vcCBoYXMgYmVlbiBzcGxpdCBvZmYgaW50byBh IGZ1bmN0aW9uLgpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9nb21w L3RhcmdldC1kZXZpY2UtYW5jZXN0b3ItNC5mOTAgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFu LmRnL2dvbXAvdGFyZ2V0LWRldmljZS1hbmNlc3Rvci00LmY5MAppbmRleCBhYjU2ZTJkMWQ1 Mi4uZDczYWRmMmM1YTcgMTAwNjQ0Ci0tLSBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcv Z29tcC90YXJnZXQtZGV2aWNlLWFuY2VzdG9yLTQuZjkwCisrKyBiL2djYy90ZXN0c3VpdGUv Z2ZvcnRyYW4uZGcvZ29tcC90YXJnZXQtZGV2aWNlLWFuY2VzdG9yLTQuZjkwCkBAIC02LDcg KzYsNyBAQAogCiAhJG9tcCByZXF1aXJlcyByZXZlcnNlX29mZmxvYWQKIAotISRvbXAgdGFy Z2V0IGRldmljZSAoYW5jZXN0b3IgOiAxKSAgISB7IGRnLW1lc3NhZ2UgInNvcnJ5LCB1bmlt cGxlbWVudGVkOiAnYW5jZXN0b3InIG5vdCB5ZXQgc3VwcG9ydGVkIiB9CishJG9tcCB0YXJn ZXQgZGV2aWNlIChhbmNlc3RvciA6IDEpCiAhJG9tcCBlbmQgdGFyZ2V0CiAKIGVuZApkaWZm IC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9nb21wL3RhcmdldC1kZXZpY2Ut YW5jZXN0b3ItNS5mOTAgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2dvbXAvdGFyZ2V0 LWRldmljZS1hbmNlc3Rvci01LmY5MAppbmRleCBjYThkNGIyODJhMC4uOTU5NmQ2MWY2ZmEg MTAwNjQ0Ci0tLSBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29tcC90YXJnZXQtZGV2 aWNlLWFuY2VzdG9yLTUuZjkwCisrKyBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZ29t cC90YXJnZXQtZGV2aWNlLWFuY2VzdG9yLTUuZjkwCkBAIC0xNyw3ICsxNyw3IEBAIGNvbnRh aW5zCiAgICAgYmxvY2sKICAgICAgIGJsb2NrCiAgICAgICAgIGJsb2NrCi0gICAgICAgICAg ISRvbXAgdGFyZ2V0IGRldmljZShhbmNlc3RvcjoxKSAgISB7IGRnLW1lc3NhZ2UgInNvcnJ5 LCB1bmltcGxlbWVudGVkOiAnYW5jZXN0b3InIG5vdCB5ZXQgc3VwcG9ydGVkIiB9CisgICAg ICAgICAgISRvbXAgdGFyZ2V0IGRldmljZShhbmNlc3RvcjoxKQogICAgICAgICAgICEkb21w IGVuZCB0YXJnZXQKICAgICAgICAgZW5kIGJsb2NrCiAgICAgICBlbmQgYmxvY2sKZGlmZiAt LWdpdCBhL2xpYmdvbXAvbGliZ29tcC50ZXhpIGIvbGliZ29tcC9saWJnb21wLnRleGkKaW5k ZXggZTg4ZmU4OWE1YjEuLjBmMjk5OGNmOGYxIDEwMDY0NAotLS0gYS9saWJnb21wL2xpYmdv bXAudGV4aQorKysgYi9saWJnb21wL2xpYmdvbXAudGV4aQpAQCAtMjI1LDcgKzIyNSw3IEBA IFRoZSBPcGVuTVAgNC41IHNwZWNpZmljYXRpb24gaXMgZnVsbHkgc3VwcG9ydGVkLgogQGl0 ZW0gQGNvZGV7YWxsb2NhdGV9IGNsYXVzZSBAdGFiIFAgQHRhYiBJbml0aWFsIHN1cHBvcnQK IEBpdGVtIEBjb2Rle3VzZV9kZXZpY2VfYWRkcn0gY2xhdXNlIG9uIEBjb2Rle3RhcmdldCBk YXRhfSBAdGFiIFkgQHRhYgogQGl0ZW0gQGNvZGV7YW5jZXN0b3J9IG1vZGlmaWVyIG9uIEBj b2Rle2RldmljZX0gY2xhdXNlCi0gICAgICBAdGFiIFAgQHRhYiBSZXZlcnNlIG9mZmxvYWQg dW5zdXBwb3J0ZWQKKyAgICAgIEB0YWIgWSBAdGFiIFNlZSBjb21tZW50IGZvciBAY29kZXty ZXF1aXJlc30KIEBpdGVtIEltcGxpY2l0IGRlY2xhcmUgdGFyZ2V0IGRpcmVjdGl2ZSBAdGFi IFkgQHRhYgogQGl0ZW0gRGlzY29udGlndW91cyBhcnJheSBzZWN0aW9uIHdpdGggQGNvZGV7 dGFyZ2V0IHVwZGF0ZX0gY29uc3RydWN0CiAgICAgICBAdGFiIE4gQHRhYgpkaWZmIC0tZ2l0 IGEvbGliZ29tcC90ZXN0c3VpdGUvbGliZ29tcC5jLWMrKy1jb21tb24vcmV2ZXJzZS1vZmZs b2FkLTEtYXV4LmMgYi9saWJnb21wL3Rlc3RzdWl0ZS9saWJnb21wLmMtYysrLWNvbW1vbi9y ZXZlcnNlLW9mZmxvYWQtMS1hdXguYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwMDAwMC4uYjNhMzMxZDEyZGEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJnb21wL3Rlc3Rz dWl0ZS9saWJnb21wLmMtYysrLWNvbW1vbi9yZXZlcnNlLW9mZmxvYWQtMS1hdXguYwpAQCAt MCwwICsxLDEwIEBACisvKiB7IGRnLWRvIGNvbXBpbGUgeyB0YXJnZXQgc2tpcC1hbGwtdGFy Z2V0cyB9IH0gICovCisKKy8qIERlY2xhcmUgdGhlIGZvbGxvd2luZyBmdW5jdGlvbiBpbiBh IHNlcGFyYXJlIHRyYW5zbGF0aW9uIHVuaXQKKyAgIHRvIGVuc3VyZSBpdCB3b24ndCBoYXZl IGEgZGV2aWNlIHZlcnNpb24uICAqLworCitpbnQKK2FkZF8zIChpbnQgeCkKK3sKKyAgcmV0 dXJuIHggKyAzOworfQpkaWZmIC0tZ2l0IGEvbGliZ29tcC90ZXN0c3VpdGUvbGliZ29tcC5j LWMrKy1jb21tb24vcmV2ZXJzZS1vZmZsb2FkLTEuYyBiL2xpYmdvbXAvdGVzdHN1aXRlL2xp YmdvbXAuYy1jKystY29tbW9uL3JldmVyc2Utb2ZmbG9hZC0xLmMKbmV3IGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjk3NmUxMjlmNTYwCi0tLSAvZGV2L251bGwKKysr IGIvbGliZ29tcC90ZXN0c3VpdGUvbGliZ29tcC5jLWMrKy1jb21tb24vcmV2ZXJzZS1vZmZs b2FkLTEuYwpAQCAtMCwwICsxLDgzIEBACisvKiB7IGRnLWRvIHJ1biB9ICAqLworLyogeyBk Zy1hZGRpdGlvbmFsLXNvdXJjZXMgcmV2ZXJzZS1vZmZsb2FkLTEtYXV4LmMgfSAqLworCisv KiBDaGVjayB0aGF0IHJldmVyc2Ugb2ZmbG9hZCB3b3JrcyBpbiBwYXJ0aWN1bGFyOgorICAg LSBubyBjb2RlIGlzIGdlbmVyYXRlZCBvbiB0aGUgZGV2aWNlIHNpZGUgKGkuZS4gbm8KKyAg ICAgaW1wbGljaXQgZGVjbGFyZSB0YXJnZXQgb2YgY2FsbGVkIGZ1bmN0aW9ucyBhbmQgbm8K KyAgICAgY29kZSBnZW4gZm9yIHRoZSB0YXJnZXQtcmVnaW9uIGJvZHkpCisgICAgIC0+IHdv dWxkIG90aGVyd2lzZSBmYWlsIGR1ZSB0byAnYWRkXzMnIHN5bWJvbAorICAgLSBQbHVzIHRo ZSB1c3VhbCAoY29tcGlsZXMsIHJ1bnMsIHByb2R1Y2VzIGNvcnJlY3QgcmVzdWx0KQorCisg ICBOb3RlOiBSdW5uaW5nIGFsc28gdGhlIG5vbi1yZXZlcnNlLW9mZmxvYWQgdGFyZ2V0IHJl Z2lvbnMKKyAgIG9uIHRoZSBob3N0IChob3N0IGZhbGxiYWNrKSBpcyB2YWxpZCBhbmQgd2ls bCBwYXNzLiAgKi8KKworI3ByYWdtYSBvbXAgcmVxdWlyZXMgcmV2ZXJzZV9vZmZsb2FkCisK K2V4dGVybiBpbnQgYWRkXzMgKGludCk7CisKK3N0YXRpYyBpbnQgZ2xvYmFsX3ZhciA9IDU7 CisKK3ZvaWQKK2NoZWNrX29mZmxvYWQgKGludCAqeCwgaW50ICp5KQoreworICAqeCA9IGFk ZF8zICgqeCk7CisgICp5ID0gYWRkXzMgKCp5KTsKK30KKworI3ByYWdtYSBvbXAgZGVjbGFy ZSB0YXJnZXQKK3ZvaWQKK3RnX2ZuIChpbnQgKngsIGludCAqeSkKK3sKKyAgaW50IHgyID0g KngsIHkyID0gKnk7CisgIGlmICh4MiAhPSAyIHx8IHkyICE9IDMpCisgICAgX19idWlsdGlu X2Fib3J0ICgpOworICB4MiA9IHgyICsgMjsKKyAgeTIgPSB5MiArIDc7CisKKyAgI3ByYWdt YSBvbXAgdGFyZ2V0IGRldmljZShhbmNlc3RvciA6IDEpIG1hcCh0b2Zyb206IHgyKQorICAg IGNoZWNrX29mZmxvYWQoJngyLCAmeTIpOworCisgIGlmICh4MiAhPSAyKzIrMyB8fCB5MiAh PSAzICsgNykKKyAgICBfX2J1aWx0aW5fYWJvcnQgKCk7CisgICp4ID0geDIsICp5ID0geTI7 Cit9CisjcHJhZ21hIG9tcCBlbmQgZGVjbGFyZSB0YXJnZXQKKwordm9pZAorbXlfZnVuYyAo aW50ICp4LCBpbnQgKnkpCit7CisgIGlmIChnbG9iYWxfdmFyICE9IDUpCisgICAgX19idWls dGluX2Fib3J0ICgpOworICBnbG9iYWxfdmFyID0gMjQyOworICAqeCA9IDIqYWRkXzMoKngp OworICAqeSA9IDMqYWRkXzMoKnkpOworfQorCitpbnQKK21haW4gKCkKK3sKKyAgI3ByYWdt YSBvbXAgdGFyZ2V0CisgIHsKKyAgICAgaW50IHggPSAyLCB5ID0gMzsKKyAgICAgdGdfZm4g KCZ4LCAmeSk7CisgIH0KKworICAjcHJhZ21hIG9tcCB0YXJnZXQKKyAgeworICAgICBpbnQg eCA9IC0yLCB5ID0gLTE7CisgICAgICNwcmFnbWEgb21wIHRhcmdldCBkZXZpY2UgKCBhbmNl c3RvcjoxICkgZmlyc3Rwcml2YXRlKHkpIG1hcCh0b2Zyb206eCkKKyAgICAgeworICAgICAg IGlmICh4ICE9IC0yIHx8IHkgIT0gLTEpCisgICAgICAgICBfX2J1aWx0aW5fYWJvcnQgKCk7 CisgICAgICAgbXlfZnVuYyAoJngsICZ5KTsKKyAgICAgICBpZiAoeCAhPSAyKigzLTIpIHx8 IHkgIT0gMyooMy0xKSkKKyAgICAgICAgIF9fYnVpbHRpbl9hYm9ydCAoKTsKKyAgICAgfQor ICAgICBpZiAoeCAhPSAyKigzLTIpIHx8IHkgIT0gLTEpCisgICAgICAgX19idWlsdGluX2Fi b3J0ICgpOworICB9CisKKyAgaWYgKGdsb2JhbF92YXIgIT0gMjQyKQorICAgIF9fYnVpbHRp bl9hYm9ydCAoKTsKKyAgcmV0dXJuIDA7Cit9CmRpZmYgLS1naXQgYS9saWJnb21wL3Rlc3Rz dWl0ZS9saWJnb21wLmZvcnRyYW4vcmV2ZXJzZS1vZmZsb2FkLTEtYXV4LmY5MCBiL2xpYmdv bXAvdGVzdHN1aXRlL2xpYmdvbXAuZm9ydHJhbi9yZXZlcnNlLW9mZmxvYWQtMS1hdXguZjkw Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4xODA3ZjA2M2Q1YQot LS0gL2Rldi9udWxsCisrKyBiL2xpYmdvbXAvdGVzdHN1aXRlL2xpYmdvbXAuZm9ydHJhbi9y ZXZlcnNlLW9mZmxvYWQtMS1hdXguZjkwCkBAIC0wLDAgKzEsMTIgQEAKKyEgeyBkZy1kbyBj b21waWxlIHsgdGFyZ2V0IHNraXAtYWxsLXRhcmdldHMgfSB9CisKKyEgRGVjbGFyZSB0aGUg Zm9sbG93aW5nIGZ1bmN0aW9uIGluIGEgc2VwYXJhcmUgdHJhbnNsYXRpb24gdW5pdAorISB0 byBlbnN1cmUgaXQgd29uJ3QgaGF2ZSBhIGRldmljZSB2ZXJzaW9uLgorCisKK2ludGVnZXIg ZnVuY3Rpb24gYWRkXzMgKHgpCisgIGltcGxpY2l0IG5vbmUKKyAgaW50ZWdlciwgdmFsdWUg OjogeAorCisgIGFkZF8zID0geCArIDMKK2VuZCBmdW5jdGlvbgpkaWZmIC0tZ2l0IGEvbGli Z29tcC90ZXN0c3VpdGUvbGliZ29tcC5mb3J0cmFuL3JldmVyc2Utb2ZmbG9hZC0xLmY5MCBi L2xpYmdvbXAvdGVzdHN1aXRlL2xpYmdvbXAuZm9ydHJhbi9yZXZlcnNlLW9mZmxvYWQtMS5m OTAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjdjZmI4YjY1NTJl Ci0tLSAvZGV2L251bGwKKysrIGIvbGliZ29tcC90ZXN0c3VpdGUvbGliZ29tcC5mb3J0cmFu L3JldmVyc2Utb2ZmbG9hZC0xLmY5MApAQCAtMCwwICsxLDg4IEBACishIHsgZGctZG8gcnVu IH0KKyEgeyBkZy1hZGRpdGlvbmFsLXNvdXJjZXMgcmV2ZXJzZS1vZmZsb2FkLTEtYXV4LmY5 MCB9CisKKyEgQ2hlY2sgdGhhdCByZXZlcnNlIG9mZmxvYWQgd29ya3MgaW4gcGFydGljdWxh cjoKKyEgLSBubyBjb2RlIGlzIGdlbmVyYXRlZCBvbiB0aGUgZGV2aWNlIHNpZGUgKGkuZS4g bm8KKyEgICBpbXBsaWNpdCBkZWNsYXJlIHRhcmdldCBvZiBjYWxsZWQgZnVuY3Rpb25zIGFu ZCBubworISAgIGNvZGUgZ2VuIGZvciB0aGUgdGFyZ2V0LXJlZ2lvbiBib2R5KQorISAgIC0+ IHdvdWxkIG90aGVyd2lzZSBmYWlsIGR1ZSB0byAnYWRkXzMnIHN5bWJvbAorISAtIFBsdXMg dGhlIHVzdWFsIChjb21waWxlcywgcnVucywgcHJvZHVjZXMgY29ycmVjdCByZXN1bHQpCisK KyEgTm90ZTogUnVubmluZyBhbHNvIHRoZSBub24tcmV2ZXJzZS1vZmZsb2FkIHRhcmdldCBy ZWdpb25zCishIG9uIHRoZSBob3N0IChob3N0IGZhbGxiYWNrKSBpcyB2YWxpZCBhbmQgd2ls bCBwYXNzLgorCittb2R1bGUgbQorICBpbnRlcmZhY2UKKyAgICBpbnRlZ2VyIGZ1bmN0aW9u IGFkZF8zICh4KQorICAgICAgaW1wbGljaXQgbm9uZQorICAgICAgaW50ZWdlciwgdmFsdWUg OjogeAorICAgIGVuZCBmdW5jdGlvbgorICBlbmQgaW50ZXJmYWNlCisgIGludGVnZXIgOjog Z2xvYmFsX3ZhciA9IDUKK2VuZCBtb2R1bGUgbQorCittb2R1bGUgbTIKKyAgdXNlIG0KKyAg ISRvbXAgcmVxdWlyZXMgcmV2ZXJzZV9vZmZsb2FkCisgIGltcGxpY2l0IG5vbmUgKHR5cGUs IGV4dGVybmFsKQorY29udGFpbnMKKyAgc3Vicm91dGluZSBjaGVja19vZmZsb2FkICh4LCB5 KQorICAgIGludGVnZXIgOjogeCwgeQorICAgIHggPSBhZGRfMyh4KQorICAgIHkgPSBhZGRf Myh5KQorICBlbmQgc3Vicm91dGluZSBjaGVja19vZmZsb2FkCisgIHN1YnJvdXRpbmUgbTJf dGdfZm4oeCwgeSkKKyAgICBpbnRlZ2VyIDo6IHgsIHkKKyAgICAhJG9tcCBkZWNsYXJlIHRh cmdldAorICAgIGlmICh4IC89IDIgLm9yLiB5IC89IDMpIHN0b3AgMQorICAgIHggPSB4ICsg MgorICAgIHkgPSB5ICsgNworICAgICEkb21wIHRhcmdldCBkZXZpY2UoYW5jZXN0b3IgOiAx KSBtYXAodG9mcm9tOiB4KQorICAgICAgY2FsbCBjaGVja19vZmZsb2FkKHgsIHkpCisgICAg ISRvbXAgZW5kIHRhcmdldAorICAgIGlmICh4IC89IDIrMiszIC5vci4geSAvPSAzICsgNykg c3RvcCAyCisgIGVuZCBzdWJyb3V0aW5lCitlbmQgbW9kdWxlIG0yCisKK3Byb2dyYW0gbWFp bgorICB1c2UgbQorICAhJG9tcCByZXF1aXJlcyByZXZlcnNlX29mZmxvYWQKKyAgaW1wbGlj aXQgbm9uZSAodHlwZSwgZXh0ZXJuYWwpCisKKyAgaW50ZWdlciA6OiBwcm9nX3ZhciA9IDk5 CisKKyAgISRvbXAgdGFyZ2V0CisgIGJsb2NrCisgICAgdXNlIG0yCisgICAgaW50ZWdlciA6 OiB4LCB5CisgICAgeCA9IDI7IHkgPSAzCisgICAgY2FsbCBtMl90Z19mbiAoeCwgeSkKKyAg ZW5kIGJsb2NrCisKKyAgISRvbXAgdGFyZ2V0CisgIGJsb2NrCisgICAgdXNlIG0yCisgICAg aW50ZWdlciA6OiB4LCB5CisgICAgeCA9IC0yOyB5ID0gLTEKKyAgICAhJG9tcCB0YXJnZXQg ZGV2aWNlICggYW5jZXN0b3I6MSApIGZpcnN0cHJpdmF0ZSh5KSBtYXAodG9mcm9tOngpCisg ICAgICBpZiAoeCAvPSAtMiAub3IuIHkgLz0gLTEpIHN0b3AgMworICAgICAgY2FsbCBteV9m dW5jICh4LCB5KQorICAgICAgaWYgKHggLz0gMiooMy0yKSAub3IuIHkgLz0gMyooMy0xKSkg c3RvcCA1CisgICAgISRvbXAgZW5kIHRhcmdldAorICAgIGlmICh4IC89IDIqKDMtMikgLm9y LiB5IC89IC0xKSBzdG9wIDYKKyAgZW5kIGJsb2NrCisKKyAgaWYgKHByb2dfdmFyIC89IDQx IC5vci4gZ2xvYmFsX3ZhciAvPSAyNDIpIHN0b3AgNworCitjb250YWlucworCisgIHN1YnJv dXRpbmUgbXlfZnVuYyh4LCB5KQorICAgIGludGVnZXIgOjogeCwgeQorICAgIGlmIChwcm9n X3ZhciAvPSA5OSkgc3RvcCA4CisgICAgaWYgKGdsb2JhbF92YXIgLz0gNSkgc3RvcCA5Cisg ICAgcHJvZ192YXIgPSA0MQorICAgIGdsb2JhbF92YXIgPSAyNDIKKyAgICB4ID0gMiphZGRf Myh4KQorICAgIHkgPSAzKmFkZF8zKHkpCisgIGVuZCBzdWJyb3V0aW5lIG15X2Z1bmMKK2Vu ZAo= --------------xf1YPAjCRi5R56nD9OasZemu--