From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id qFy1HVz8RF+ROQAA0tVLHw (envelope-from ) for ; Tue, 25 Aug 2020 11:56:12 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id kJ2uGVz8RF+qBQAAB5/wlQ (envelope-from ) for ; Tue, 25 Aug 2020 11:56:12 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 8D1AC94062D for ; Tue, 25 Aug 2020 11:56:11 +0000 (UTC) Received: from localhost ([::1]:48304 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kAXYf-0005e7-5Y for larch@yhetil.org; Tue, 25 Aug 2020 07:56:09 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54768) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kAXYY-0005dz-Pj for guix-patches@gnu.org; Tue, 25 Aug 2020 07:56:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:49030) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kAXYY-0002A9-H8 for guix-patches@gnu.org; Tue, 25 Aug 2020 07:56:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kAXYY-0006oW-ES for guix-patches@gnu.org; Tue, 25 Aug 2020 07:56:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#40818] [bug #40818] "Add bsd-games" Resent-From: Vitaliy Shatrov Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 25 Aug 2020 11:56:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 40818 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Nicolas Goaziou Cc: "40818@debbugs.gnu.org" <40818@debbugs.gnu.org> Received: via spool by 40818-submit@debbugs.gnu.org id=B40818.159835655126174 (code B ref 40818); Tue, 25 Aug 2020 11:56:02 +0000 Received: (at 40818) by debbugs.gnu.org; 25 Aug 2020 11:55:51 +0000 Received: from localhost ([127.0.0.1]:60576 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kAXYL-0006o1-6G for submit@debbugs.gnu.org; Tue, 25 Aug 2020 07:55:51 -0400 Received: from mail-40137.protonmail.ch ([185.70.40.137]:55763) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kAXYF-0006nf-Nb for 40818@debbugs.gnu.org; Tue, 25 Aug 2020 07:55:47 -0400 Date: Tue, 25 Aug 2020 11:55:29 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail; t=1598356535; bh=rMD69meFznMsiUDccbCq484RIPqF/57thM6pGpRFcls=; h=Date:To:From:Cc:Reply-To:Subject:In-Reply-To:References:From; b=pIneJwdBrJIJ/szMKTARX57KeEDSufaPfDvTjgG/myzILRqIDukCoLVpn6Ce7B0Tg bYDLYDElwfNr7b2Ierg552ctoQ85apnRer4x0B9cPiu3QUeKpnAIGggDD0ywzQJozb 43IZ9Diror4qPaQjxEe3hpqlaf1oc79oUPCwD3S8= Message-ID: In-Reply-To: <871rkb9cdz.fsf@nicolasgoaziou.fr> References: <871rkb9cdz.fsf@nicolasgoaziou.fr> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="b1_OO0IPwqkohqMyXTdCyL8kmkt4pE8mbExaV2lab2CU" X-Spam-Score: 0.5 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Spam-Score: -0.5 (/) X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" Reply-to: Vitaliy Shatrov , Vitaliy Shatrov via Guix-patches From: Vitaliy Shatrov via Guix-patches via X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=fail (rsa verify failed) header.d=protonmail.com header.s=protonmail header.b=pIneJwdB; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Spam-Score: 1.09 X-TUID: 2HIO+q8PcDV1 This is a multi-part message in MIME format. --b1_OO0IPwqkohqMyXTdCyL8kmkt4pE8mbExaV2lab2CU Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hello Nicolas. > This should be gnu/packages/games.scm (bsd-games): New variable. > reference all those patches in "gnu/local.mk" file. Done > some games still fail to run, e.g., phantasia and hack. Pity. What errors are output? How i do start the games: cd git/guix guix environment --pure guix ./bootstrap && ./configure --localstatedir=3D/var && make -j2 ./pre-inst-env guix environment --ad-hoc bsd-games phantasia ---> Guix: Please set up the BSD_GAMES_DIR variable. Examples: export BSD_GAMES_DIR=3D/var/multiplayer export BSD_GAMES_DIR=3D~/.local/share/bsd-games You can place this in ~/.bashrc or a similar file for Your shell. For multiplayer this directory should be writable for all players. BSD_GAMES_DIR=3D~/bsd-dir phantasia ---> "You've been caught raping and pillaging" "You are attacked by Kobold" ... --- Regards, Vitaliy. Sent with ProtonMail Secure Email. --b1_OO0IPwqkohqMyXTdCyL8kmkt4pE8mbExaV2lab2CU Content-Type: text/x-patch; name=0001-gnu-Add-bsd-games.patch Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=0001-gnu-Add-bsd-games.patch RnJvbSA2YmU2YThkMzFlOWE3ZTU0ZDQ1OTk2MjgxYWEwZGU1YmM0ZWY3ZTc2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBWaXRhbGl5IFNoYXRyb3YgPEQwZHlCbzBEMGR5Qm8wQHByb3Rv bm1haWwuY29tPgpEYXRlOiBUdWUsIDI1IEF1ZyAyMDIwIDE4OjI2OjM4ICswNzAwClN1YmplY3Q6 IFtQQVRDSF0gZ251OiBBZGQgYnNkLWdhbWVzLgoKKiBnbnUvcGFja2FnZXMvZ2FtZXMuc2NtIChi c2QtZ2FtZXMpOiBOZXcgdmFyaWFibGUuCgpOZXcgcGF0Y2hlcywgdGFrZW4gZnJvbSBBcmNoIGFu ZCBEZWJpYW46CiogZ251L3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLTIuMTctNjRiaXQucGF0 Y2gKKiBnbnUvcGFja2FnZXMvcGF0Y2hlcy9ic2QtZ2FtZXMtYmFkLW50b2hsLWNhc3QucGF0Y2gK KiBnbnUvcGFja2FnZXMvcGF0Y2hlcy9ic2QtZ2FtZXMtZ2FtZXNjcmVlbi5oLnBhdGNoCiogZ251 L3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLWdldGxpbmUucGF0Y2gKKiBnbnUvcGFja2FnZXMv cGF0Y2hlcy9ic2QtZ2FtZXMtbnVsbC1jaGVjay5wYXRjaAoqIGdudS9wYWNrYWdlcy9wYXRjaGVz L2JzZC1nYW1lcy1udW1iZXIuYy1hbmQtdGVzdC5wYXRjaAoqIGdudS9wYWNrYWdlcy9wYXRjaGVz L2JzZC1nYW1lcy1wcmV2ZW50LW5hbWUtY29sbGlzaW9ucy5wYXRjaAoqIGdudS9wYWNrYWdlcy9w YXRjaGVzL2JzZC1nYW1lcy1zdGRpby5oLnBhdGNoCgpOZXcgcGF0Y2hlcyB3aXRoIG91ciBjdXN0 b21pemF0aW9ucyAoY29uZmlndXJlLWNvbmZpZyBidWlsdCBhZnRlciBBcmNoJ3MpOgoqIGdudS9w YWNrYWdlcy9wYXRjaGVzL2JzZC1nYW1lcy1hZGQtY29uZmlndXJlLWNvbmZpZy5wYXRjaAoqIGdu dS9wYWNrYWdlcy9wYXRjaGVzL2JzZC1nYW1lcy1hZGQtd3JhcHBlci5wYXRjaAoqIGdudS9wYWNr YWdlcy9wYXRjaGVzL2JzZC1nYW1lcy1kb250LWluc3RhbGwtZW1wdHktZmlsZXMucGF0Y2gKLS0t CiBnbnUvbG9jYWwubWsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTEgKwog Z251L3BhY2thZ2VzL2dhbWVzLnNjbSAgICAgICAgICAgICAgICAgICAgICAgIHwgMTM1ICsrKysr KysrKysKIC4uLi9wYXRjaGVzL2JzZC1nYW1lcy0yLjE3LTY0Yml0LnBhdGNoICAgICAgICB8ICA0 MyArKysKIC4uLi9ic2QtZ2FtZXMtYWRkLWNvbmZpZ3VyZS1jb25maWcucGF0Y2ggICAgICB8ICAy MiArKwogLi4uL3BhdGNoZXMvYnNkLWdhbWVzLWFkZC13cmFwcGVyLnBhdGNoICAgICAgIHwgMjUx ICsrKysrKysrKysrKysrKysrKwogLi4uL3BhdGNoZXMvYnNkLWdhbWVzLWJhZC1udG9obC1jYXN0 LnBhdGNoICAgIHwgIDIyICsrCiAuLi4vYnNkLWdhbWVzLWRvbnQtaW5zdGFsbC1lbXB0eS1maWxl cy5wYXRjaCAgfCAgODcgKysrKysrCiAuLi4vcGF0Y2hlcy9ic2QtZ2FtZXMtZ2FtZXNjcmVlbi5o LnBhdGNoICAgICAgfCAgMTQgKwogZ251L3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLWdldGxp bmUucGF0Y2ggIHwgMTk0ICsrKysrKysrKysrKysrCiAuLi4vcGF0Y2hlcy9ic2QtZ2FtZXMtbnVs bC1jaGVjay5wYXRjaCAgICAgICAgfCAgMjQgKysKIC4uLi9wYXRjaGVzL2JzZC1nYW1lcy1udW1i ZXIuYy1hbmQtdGVzdC5wYXRjaCB8IDE4MyArKysrKysrKysrKysrCiAuLi4vYnNkLWdhbWVzLXBy ZXZlbnQtbmFtZS1jb2xsaXNpb25zLnBhdGNoICAgfCAgMTMgKwogZ251L3BhY2thZ2VzL3BhdGNo ZXMvYnNkLWdhbWVzLXN0ZGlvLmgucGF0Y2ggIHwgIDE0ICsKIDEzIGZpbGVzIGNoYW5nZWQsIDEw MTMgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGdudS9wYWNrYWdlcy9wYXRjaGVz L2JzZC1nYW1lcy0yLjE3LTY0Yml0LnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ251L3BhY2th Z2VzL3BhdGNoZXMvYnNkLWdhbWVzLWFkZC1jb25maWd1cmUtY29uZmlnLnBhdGNoCiBjcmVhdGUg bW9kZSAxMDA2NDQgZ251L3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLWFkZC13cmFwcGVyLnBh dGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ251L3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLWJh ZC1udG9obC1jYXN0LnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ251L3BhY2thZ2VzL3BhdGNo ZXMvYnNkLWdhbWVzLWRvbnQtaW5zdGFsbC1lbXB0eS1maWxlcy5wYXRjaAogY3JlYXRlIG1vZGUg MTAwNjQ0IGdudS9wYWNrYWdlcy9wYXRjaGVzL2JzZC1nYW1lcy1nYW1lc2NyZWVuLmgucGF0Y2gK IGNyZWF0ZSBtb2RlIDEwMDY0NCBnbnUvcGFja2FnZXMvcGF0Y2hlcy9ic2QtZ2FtZXMtZ2V0bGlu ZS5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IGdudS9wYWNrYWdlcy9wYXRjaGVzL2JzZC1nYW1l cy1udWxsLWNoZWNrLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ251L3BhY2thZ2VzL3BhdGNo ZXMvYnNkLWdhbWVzLW51bWJlci5jLWFuZC10ZXN0LnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQg Z251L3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLXByZXZlbnQtbmFtZS1jb2xsaXNpb25zLnBh dGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ251L3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLXN0 ZGlvLmgucGF0Y2gKCmRpZmYgLS1naXQgYS9nbnUvbG9jYWwubWsgYi9nbnUvbG9jYWwubWsKaW5k ZXggMmY4NTFhZmU0ZS4uNWYwZGQxMWE2MCAxMDA2NDQKLS0tIGEvZ251L2xvY2FsLm1rCisrKyBi L2dudS9sb2NhbC5tawpAQCAtODEyLDYgKzgxMiwxNyBAQCBkaXN0X3BhdGNoX0RBVEEgPQkJCQkJ CVwKICAgJUQlL3BhY2thZ2VzL3BhdGNoZXMvYmFzdGV0LWNoYW5nZS1zb3VyY2Utb2YtdW5vcmRl cmVkX3NldC5wYXRjaAlcCiAgICVEJS9wYWNrYWdlcy9wYXRjaGVzL2JhemFhci1DVkUtMjAxNy0x NDE3Ni5wYXRjaAkJXAogICAlRCUvcGFja2FnZXMvcGF0Y2hlcy9iYy1maXgtY3Jvc3MtY29tcGls YXRpb24ucGF0Y2gJCVwKKyAgJUQlL3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLTIuMTctNjRi aXQucGF0Y2gJCVwKKyAgJUQlL3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLWFkZC1jb25maWd1 cmUtY29uZmlnLnBhdGNoCVwKKyAgJUQlL3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLWFkZC13 cmFwcGVyLnBhdGNoCQlcCisgICVEJS9wYWNrYWdlcy9wYXRjaGVzL2JzZC1nYW1lcy1iYWQtbnRv aGwtY2FzdC5wYXRjaAkJXAorICAlRCUvcGFja2FnZXMvcGF0Y2hlcy9ic2QtZ2FtZXMtZG9udC1p bnN0YWxsLWVtcHR5LWZpbGVzLnBhdGNoCVwKKyAgJUQlL3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdh bWVzLWdhbWVzY3JlZW4uaC5wYXRjaAkJXAorICAlRCUvcGFja2FnZXMvcGF0Y2hlcy9ic2QtZ2Ft ZXMtZ2V0bGluZS5wYXRjaAkJCVwKKyAgJUQlL3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLW51 bGwtY2hlY2sucGF0Y2gJCVwKKyAgJUQlL3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLW51bWJl ci5jLWFuZC10ZXN0LnBhdGNoCVwKKyAgJUQlL3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLXBy ZXZlbnQtbmFtZS1jb2xsaXNpb25zLnBhdGNoCVwKKyAgJUQlL3BhY2thZ2VzL3BhdGNoZXMvYnNk LWdhbWVzLXN0ZGlvLmgucGF0Y2gJCQlcCiAgICVEJS9wYWNrYWdlcy9wYXRjaGVzL2JlYW5jb3Vu dC1kaXNhYmxlLWdvb2dsZWFwaXMtZm9udHMucGF0Y2gJXAogICAlRCUvcGFja2FnZXMvcGF0Y2hl cy9iZWV0cy13ZXJremV1Zy1jb21wYXQucGF0Y2gJCVwKICAgJUQlL3BhY2thZ2VzL3BhdGNoZXMv YmVoYXZlLXNraXAtYS1jb3VwbGUtb2YtdGVzdHMucGF0Y2gJXApkaWZmIC0tZ2l0IGEvZ251L3Bh Y2thZ2VzL2dhbWVzLnNjbSBiL2dudS9wYWNrYWdlcy9nYW1lcy5zY20KaW5kZXggMGYwMTI2Nzgy Ny4uYTE2NjE4MzQwMyAxMDA2NDQKLS0tIGEvZ251L3BhY2thZ2VzL2dhbWVzLnNjbQorKysgYi9n bnUvcGFja2FnZXMvZ2FtZXMuc2NtCkBAIC0xMTYsNiArMTE2LDcgQEAKICAgIzp1c2UtbW9kdWxl IChnbnUgcGFja2FnZXMgZ2wpCiAgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGdsaWIpCiAg ICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGdub21lKQorICAjOnVzZS1tb2R1bGUgKGdudSBw YWNrYWdlcyBnbnUtZG9jKQogICAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBnbnVwZykKICAg Izp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZ251emlsbGEpCiAgICM6dXNlLW1vZHVsZSAoZ251 IHBhY2thZ2VzIGdwZXJmKQpAQCAtNTg1LDYgKzU4NiwxNDAgQEAgcG9zc2libGUsIHdoaWxlIGJh dHRsaW5nIG1hbnkgdmljaW91cyBhbGllbnMuIikKICAgICAgICAgICAgICAgICAgICBsaWNlbnNl OmxncGwyLjErCiAgICAgICAgICAgICAgICAgICAgbGljZW5zZTpic2QtMikpKSkKIAorKGRlZmlu ZS1wdWJsaWMgYnNkLWdhbWVzCisgIChwYWNrYWdlCisgICAgKG5hbWUgImJzZC1nYW1lcyIpCisg ICAgKHZlcnNpb24gIjIuMTcuMCIpCisgICAgKHNvdXJjZQorICAgICAob3JpZ2luCisgICAgICAg KG1ldGhvZCB1cmwtZmV0Y2gpCisgICAgICAgKHVyaSAiaHR0cHM6Ly9pYmlibGlvLm9yZy9wdWIv bGludXgvZ2FtZXMvYnNkLWdhbWVzLTIuMTcudGFyLmd6IikKKyAgICAgICAoc2hhMjU2CisgICAg ICAgIChiYXNlMzIKKyAgICAgICAgICIwcTd6ZHl5ZnZuMTV5MHc0ZzU0a3EzZ3phODloNjFweTcy N204c2xtdzczY3h4NTk0dnE2IikpCisgICAgICAgKHBhdGNoZXMKKyAgICAgICAgKHNlYXJjaC1w YXRjaGVzCisgICAgICAgICA7OyB0aGFua3MgQXJjaCwgYW5kIERlYmlhbgorICAgICAgICAgImJz ZC1nYW1lcy0yLjE3LTY0Yml0LnBhdGNoIgorICAgICAgICAgImJzZC1nYW1lcy1iYWQtbnRvaGwt Y2FzdC5wYXRjaCIKKyAgICAgICAgICJic2QtZ2FtZXMtZ2FtZXNjcmVlbi5oLnBhdGNoIgorICAg ICAgICAgImJzZC1nYW1lcy1nZXRsaW5lLnBhdGNoIgorICAgICAgICAgImJzZC1nYW1lcy1udWxs LWNoZWNrLnBhdGNoIgorICAgICAgICAgImJzZC1nYW1lcy1udW1iZXIuYy1hbmQtdGVzdC5wYXRj aCIKKyAgICAgICAgICJic2QtZ2FtZXMtc3RkaW8uaC5wYXRjaCIKKyAgICAgICAgICJic2QtZ2Ft ZXMtcHJldmVudC1uYW1lLWNvbGxpc2lvbnMucGF0Y2giCisgICAgICAgICA7OyBHdWl4IGN1c3Rv bWl6YXRpb25zCisgICAgICAgICAiYnNkLWdhbWVzLWFkZC1jb25maWd1cmUtY29uZmlnLnBhdGNo IgorICAgICAgICAgImJzZC1nYW1lcy1kb250LWluc3RhbGwtZW1wdHktZmlsZXMucGF0Y2giCisg ICAgICAgICAiYnNkLWdhbWVzLWFkZC13cmFwcGVyLnBhdGNoIikpKSkKKyAgICAoYnVpbGQtc3lz dGVtIGdudS1idWlsZC1zeXN0ZW0pCisgICAgKG5hdGl2ZS1pbnB1dHMKKyAgICAgYCgoImZsZXgi ICxmbGV4KQorICAgICAgICgiYmlzb24iICxiaXNvbikpKQorICAgIChpbnB1dHMKKyAgICAgYCgo ImN1cnNlcyIgLG5jdXJzZXMpCisgICAgICAgKCJwYWdlciIgLGxlc3MpCisgICAgICAgKCJtaXNj ZmlsZXMiICxtaXNjZmlsZXMpCisgICAgICAgKCJvcGVuc3NsIiAsb3BlbnNzbCkpKSAgICAgICAg ICAgO3VzZWQgb25seSBieSAnZmFjdG9yJworICAgIChhcmd1bWVudHMKKyAgICAgYCgjOnBoYXNl cworICAgICAgIChtb2RpZnktcGhhc2VzICVzdGFuZGFyZC1waGFzZXMKKyAgICAgICAgIChyZXBs YWNlICdjb25maWd1cmUKKyAgICAgICAgICAgKGxhbWJkYSogKCM6a2V5IG91dHB1dHMgaW5wdXRz ICM6YWxsb3ctb3RoZXIta2V5cykKKyAgICAgICAgICAgICAobGV0KiAoKG91dCAoYXNzb2MtcmVm IG91dHB1dHMgIm91dCIpKQorICAgICAgICAgICAgICAgICAgICAoYmluIChzdHJpbmctYXBwZW5k IG91dCAiL2JpbiIpKQorICAgICAgICAgICAgICAgICAgICAoZG9jIChzdHJpbmctYXBwZW5kIG91 dCAiL3NoYXJlL2RvYy9ic2QtZ2FtZXMtIiAsdmVyc2lvbikpCisgICAgICAgICAgICAgICAgICAg IChtYW4gKHN0cmluZy1hcHBlbmQgb3V0ICIvc2hhcmUvbWFuIikpCisgICAgICAgICAgICAgICAg ICAgICh3b3JkLWxpc3QgKHN0cmluZy1hcHBlbmQgKGFzc29jLXJlZiBpbnB1dHMgIm1pc2NmaWxl cyIpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIi9zaGFy ZS93ZWIyIikpCisgICAgICAgICAgICAgICAgICAgIChzdGF0aWMtZGF0YSAoc3RyaW5nLWFwcGVu ZCBvdXQgIi9zaGFyZS9nYW1lcy9ic2QtZ2FtZXMiKSkKKyAgICAgICAgICAgICAgICAgICAgOzsg Tm90IGEgIi4vIiBiZWNhdXNlIG9mIHN1YnN0aXR1dGUqIGluICdwYXRjaC1pbnN0YWxsCisgICAg ICAgICAgICAgICAgICAgIDs7IGJlbG93LiAgVGhlIC4vLyBhbGxvdyB1cyBub3QgdG8gbWVzcyB3 aXRoIHRoZSBnYW1lcycKKyAgICAgICAgICAgICAgICAgICAgOzsgY29kZSBhbnkgZnVydGhlcjog V2UganVzdCB1c2UgYSB3cmFwcGVyIHNjcmlwdCB0aGF0CisgICAgICAgICAgICAgICAgICAgIDs7 IGNkJ3MgdG8gYSBCU0RfR0FNRVNfRElSLiAgOl0KKyAgICAgICAgICAgICAgICAgICAgKHNhdmUt ZmlsZXMgIi4vLyIpKQorICAgICAgICAgICAgICAgKHN1YnN0aXR1dGUqICJjb25maWd1cmUiCisg ICAgICAgICAgICAgICAgICgoIi91c3Ivc2hhcmUvbWFuIikgbWFuKQorICAgICAgICAgICAgICAg ICAoKCIvdXNyL3NoYXJlL2RvYy9ic2QtZ2FtZXMiKSBkb2MpCisgICAgICAgICAgICAgICAgICgo Ii91c3Ivc2hhcmUvW15cbi9dKiIpIHN0YXRpYy1kYXRhKQorICAgICAgICAgICAgICAgICAoKCIv dmFyL2dhbWVzIikgc2F2ZS1maWxlcykKKyAgICAgICAgICAgICAgICAgKCgiL3Vzci9iaW4vbGVz cyIpICh3aGljaCAibGVzcyIpKQorICAgICAgICAgICAgICAgICAoKCIoL3Vzci9iaW58L3Vzci9n YW1lcykiKSBiaW4pKQorICAgICAgICAgICAgICAgKHN1YnN0aXR1dGUqICJjb25maWcucGFyYW1z IiAoKCJXT1JEX0xJU1QiKSB3b3JkLWxpc3QpKQorICAgICAgICAgICAgICAgKHN1YnN0aXR1dGUq ICJ3cmFwcGVyIiAoKCJTVEFUSUNfREFUQSIpIHN0YXRpYy1kYXRhKSkKKyAgICAgICAgICAgICAg IChpbnZva2UgIi4vY29uZmlndXJlIikpCisgICAgICAgICAgICAgI3QpKQorICAgICAgICAgKGFk ZC1iZWZvcmUgJ2luc3RhbGwgJ3BhdGNoLWluc3RhbGwKKyAgICAgICAgICAgOzsgU29tZSBnYW1l cyBuZWVkIGEgd3JpdGFibGUgZGlyZWN0b3J5IGNvbnRhaW5pbmcgcHJlLW1hZGVkIGZpbGVzLgor ICAgICAgICAgICA7OyBUaGUgZmlsZXMgZ2V0IGluc3RhbGxlZCB0byB0aGUgU3RvcmUuICBUaGVu IHRoZSB3cmFwcGVyIGtpY2tzIGluLgorICAgICAgICAgICAobGFtYmRhKiAoIzprZXkgb3V0cHV0 cyAjOmFsbG93LW90aGVyLWtleXMpCisgICAgICAgICAgICAgKGxldCogKChvdXQgKGFzc29jLXJl ZiBvdXRwdXRzICJvdXQiKSkKKyAgICAgICAgICAgICAgICAgICAgKHN0YXRpYy1kYXRhIChzdHJp bmctYXBwZW5kIG91dCAiL3NoYXJlL2dhbWVzL2JzZC1nYW1lcyIpKQorICAgICAgICAgICAgICAg ICAgICAoc2F2ZS1maWxlcyAiLi8vIikpCisgICAgICAgICAgICAgICAoc3Vic3RpdHV0ZSogIk1h a2Vjb25maWciICgoc2F2ZS1maWxlcykgc3RhdGljLWRhdGEpKSkKKyAgICAgICAgICAgICAjdCkp CisgICAgICAgICAoYWRkLWFmdGVyICdpbnN0YWxsICdpbnN0YWxsLWRvY3VtZW50cworICAgICAg ICAgICAobGFtYmRhKiAoIzprZXkgb3V0cHV0cyAjOmFsbG93LW90aGVyLWtleXMpCisgICAgICAg ICAgICAgKGxldCogKChvdXQgKGFzc29jLXJlZiBvdXRwdXRzICJvdXQiKSkKKyAgICAgICAgICAg ICAgICAgICAgKGRvYyAoc3RyaW5nLWFwcGVuZCBvdXQgIi9zaGFyZS9kb2MvYnNkLWdhbWVzLSIg LHZlcnNpb24pKSkKKyAgICAgICAgICAgICAgIChyZW5hbWUtZmlsZSAicGhhbnRhc2lhL0NPUFlS SUdIVCIgInBoYW50YXNpYS1DT1BZUklHSFQiKQorICAgICAgICAgICAgICAgKGZvci1lYWNoCisg ICAgICAgICAgICAgICAgKGxhbWJkYShmaWxlKSAoaW5zdGFsbC1maWxlIGZpbGUgZG9jKSkKKyAg ICAgICAgICAgICAgICAnKCJBVVRIT1JTIiAiQlVHUyIgIlJFQURNRSIgIlNFQ1VSSVRZIiAiVEhB TktTIgorICAgICAgICAgICAgICAgICAgInBoYW50YXNpYS1DT1BZUklHSFQiKSkpCisgICAgICAg ICAgICAgI3QpKSkpKQorICAgIChob21lLXBhZ2UgImh0dHBzOi8vZ2l0aHViLmNvbS92YXR0YW0v QlNER2FtZXMiKQorICAgIChzeW5vcHNpcyAiQ29sbGVjdGlvbiBvZiB0aGUgb2xkIHRleHQtYmFz ZWQgZ2FtZXMgYW5kIGFtdXNlbWVudHMiKQorICAgIChkZXNjcmlwdGlvbgorICAgICAiVGhlIEJT RC1nYW1lcy4gIFNlZSB0aGUgZm9ydHVuZS1tb2QgcGFja2FnZSBmb3IgZm9ydHVuZXMuCisKK0Fj dGlvbjogYXRjIChrZWVwIHRoZSBhaXJwbGFuZXMgc2FmZSksIGhhY2sgKGV4cGxvcmUgdGhlIGRh bmdlcm91cyBEdW5nZW9uKSwKK2h1bnQgKGtpbGwgdGhlIG90aGVycyBmb3IgdGhlIFBhaXIgb2Yg Qm9vdHMsIG11bHRpLXBsYXllciBvbmx5KSwgcm9ib3RzIChhdm9pZAordGhlIGV2aWwgcm9ib3Rz KSwgc2FpbCAoZ2FtZSBvZiBuYXZhbCB3YXJmYXJlIHdpdGggd29vZGVuIHNoaXBzKSwgc25ha2Ug KHN0ZWFsCit0aGUgJCQgZnJvbSB0aGUgY2F2ZSwgYW5nZXIgdGhlIHNuYWtlLCBhbmQgZ2V0IG91 dCBhbGl2ZSksIHRldHJpcyAoZ2FtZSBvZgorbGluaW5nIHVwIHRoZSBmYWxsaW5nIGJyaWNrcyBv ZiBkaWZmZXJlbnQgc2hhcGVzKSwgYW5kIHdvcm0gKGVhdCwgZ3JvdyBiaWcsCithbmQgbmVpdGhl ciBiaXRlIHlvdXIgdGFpbCwgbm9yIHJhbSB0aGUgd2FsbCkuCisKK0FtdXNlbWVudHM6IGJhbm5l ciAocHJpbnRzIGEgbGFyZ2UgYmFubmVyKSwgYmNkICYgbW9yc2UgJiBwcHQgKHByaW50IGEgcHVu Y2gKK2NhcmQsIG9yIHBhcGVyIHRhcGUsIG9yIE1vcnNlIGNvZGVzKSwgY2Flc2FyICYgcm90MTMg KGNpcGhlcnMgYW5kIGRlY2lwaGVycwordGhlIGlucHV0KSwgZmFjdG9yIChmYWN0b3JpemVzIGEg bnVtYmVyKSwgbnVtYmVyICh0cmFuc2xhdGVzIG51bWJlcnMgaW50bwordGV4dCksIHBpZyAodHJh bnNsYXRlcyBmcm9tIEVuZ2xpc2ggdG8gUGlnIExhdGluKSwgcG9tIChzaG91bGQgcHJpbnQgdGhl CitNb29uJ3MgcGhhc2UpLCBwcmltZXMgKGdlbmVyYXRlcyBwcmltZXMpLCByYWluICYgd29ybXMg KHBsYXlzIGFuIHNjcmVlbi1zYXZlcgoraW4gdGVybWluYWwpLCByYW5kb20gKHByaW50cyByYW5k b21seSBjaG9vc2VuIGxpbmVzIGZyb20gZmlsZXMsIG9yIHJldHVybnMgYQorcmFuZG9tIGV4aXQt Y29kZSksIGFuZCB3dGYgKGV4cGxhaW5zIHdoYXQgZG8gc29tZSBhY3JvbnltcyBtZWFuKS4KKwor Qm9hcmQ6IGJhY2tnYW1tb24gKGxlYWQgdGhlIG1lbiBvdXQgb2YgYm9hcmQgZmFzdGVyIHRoYW4g dGhlIGZyaWVuZCBkbyksCitib2dnbGUgKGZpbmQgdGhlIHdvcmRzIGluIHRoZSBzcXVhcmUgb2Yg bGV0dGVycyksIGRhYiAoZ2FtZSBvZiBkb3RzIGFuZAorYm94ZXMpLCBnb21va3UgKGdhbWUgb2Yg Zml2ZSBpbiBhIHJvdyksIGhhbmdtYW4gKGd1ZXNzIGEgd29yZCBiZWZvcmUgbWFuIGlzCitoYW5n ZWQpLCBhbmQgbW9ub3AgKGdhbWUgb2YgbW9ub3BvbHksIGhvdC1zZWF0IG9ubHkpLiAgQWxzbyB0 aGUgY2FyZC1nYW1lczoKK2NhbmZpZWxkLCBjcmliYmFnZSwgZmlzaCAoanVuaW9ycyBnYW1lKSwg YW5kIG1pbGxlLgorCitRdWVzdHM6IGFkdmVudHVyZSAoc2VhcmNoIGZvciB0cmVhc3VyZXMgd2l0 aCB0aGUgaGVscCBvZiB3aXphcmQpLAorYmF0dGxlc3RhciAoZXhwbG9yZSB0aGUgd29ybGQgYXJv dW5kLCBzdGFydGluZyBmcm9tIGR5aW5nIHNwYWNlc2hpcCksCitwaGFudGFzaWEgKHJvbGUtcGxh eSBhcyBhbiByb2d1ZSksIHRyZWsgKGh1bnQgdGhlIEtsaW5nb25zLCBhbmQgc2F2ZSB0aGUKK0Zl ZGVyYXRpb24pLCBhbmQgd3VtcCAoaHVudCB0aGUgYmlnIHNtZWxseSBXdW1wdXMgaW4gYSBkYXJr IGNhdmUpLgorCitRdWl6ZXM6IGFyaXRobWV0aWMsIGFuZCBxdWl6LiIpCisgICAgOzsgIkF1eGls aWFyeSBhbmQgZGF0YSBmaWxlcywgZGlzdHJpYnV0ZWQgd2l0aCB0aGUgZ2FtZXMgaW4gTmV0QlNE LCBidXQKKyAgICA7OyBub3QgYmVhcmluZyBjb3B5cmlnaHQgbm90aWNlcywgcHJvYmFibHkgZmFs bCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIFVDQgorICAgIDs7IG9yIE5ldEJTRCBjb3B5cmlnaHRz IGFuZCBsaWNlbmNlcy4gIFRoZSBmaWxlICJmb3J0dW5lL05vdGVzIiBjb250YWlucyBhCisgICAg Ozsgd2FybmluZyBpbiByZWdhcmQgdG8gdGhlIGZvcnR1bmUgZGF0YWJhc2VzLiIKKyAgICAobGlj ZW5zZSAobGlzdAorICAgICAgICAgICAgICA7OyBNb3N0IGdhbWVzLiAgRmlsZXM6IGNvdW50bWFp bC9jb3VudG1haWwuNiwgZGFiL2RhYi42LAorICAgICAgICAgICAgICA7OyBsaWIvc3RybGNweS5j LCB3YXJnYW1lcy93YXJnYW1lcy42CisgICAgICAgICAgICAgIGxpY2Vuc2U6YnNkLTMKKyAgICAg ICAgICAgICAgOzsgZGFiIGFuZCBodW50LiAgRmlsZXM6IGFkdmVudHVyZS9leHRlcm4uaCwKKyAg ICAgICAgICAgICAgOzsgYmFja2dhbW1vbi9iYWNrZ2FtbW9uL2JhY2tsb2NhbC5oLCBjYWVzYXIv cm90MTMuaW4sCisgICAgICAgICAgICAgIDs7IGNvdW50bWFpbC9jb3VudG1haWwsIGRtL3V0bXBl bnRyeS5jLCBkbS91dG1wZW50cnkuaCwKKyAgICAgICAgICAgICAgOzsgaGFjay9leHRlcm4uaCwg cm9ib3RzL2F1dG8uYywgc2FpbC9kaXNwbGF5LmgsCisgICAgICAgICAgICAgIDs7IHNhaWwvcmVz dGFydC5oLCB3YXJnYW1lcy93YXJnYW1lcworICAgICAgICAgICAgICBsaWNlbnNlOmJzZC00Cisg ICAgICAgICAgICAgIDs7IHd0ZiAodGhlIGdhbWUpCisgICAgICAgICAgICAgIGxpY2Vuc2U6cHVi bGljLWRvbWFpbgorICAgICAgICAgICAgICA7OyBwaGFudGFzaWEgKGFsbCBidXQgcGhhbnRhc2lh L3BhdGhuYW1lcy5oLmluLCB3aGljaCBpcyBic2QtMykKKyAgICAgICAgICAgICAgKGxpY2Vuc2U6 ZnNmLWZyZWUgImZpbGU6Ly8vcGhhbnRhc2lhL0NPUFlSSUdIVCIpKSkpKQorCisKIChkZWZpbmUt cHVibGljIGJ6ZmxhZwogICAocGFja2FnZQogICAgIChuYW1lICJiemZsYWciKQpkaWZmIC0tZ2l0 IGEvZ251L3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLTIuMTctNjRiaXQucGF0Y2ggYi9nbnUv cGFja2FnZXMvcGF0Y2hlcy9ic2QtZ2FtZXMtMi4xNy02NGJpdC5wYXRjaApuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwLi5lMjg2YzFjNTMxCi0tLSAvZGV2L251bGwKKysrIGIv Z251L3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLTIuMTctNjRiaXQucGF0Y2gKQEAgLTAsMCAr MSw0MyBAQAorRGF2aWQgTGV2ZXJ0b24gd3JpdGVzIGFib3V0IGFkdmVudHVyZS9jcmMuYzoKKwor VGhlICdhZHZlbnR1cmUnIGdhbWUgZnJvbSB0aGUgZ2FtZXMtbWlzYy9ic2QtZ2FtZXMtMi4xMyBw YWNrYWdlIGNyYXNoZXMKK3doZW4gc2F2aW5nIHRoZSBnYW1lIG9uIEFNRDY0IChhbmQgcHJvYmFi bHkgb3RoZXIgNjQtYml0IHN5c3RlbXMsIGJ1dCBJCitoYXZlbid0IGNoZWNrZWQpLiAgRmluZCBh dHRhY2hlZCB0byBmaXggdGhpcy4KKworaHR0cDovL2J1Z3MuZ2VudG9vLm9yZy9zaG93X2J1Zy5j Z2k/aWQ9NzcwMzIKKworCitBYm91dCB1dG1wZW50cnkuYzoKKwordGhlIHV0bXB4IHN0cnVjdHVy ZSBkZWZpbmVzIHRoZSB1dF90diBtZW1iZXIgYSBsaXR0bGUgZGlmZmVyZW50bHkgb24KKzY0Yml0 IGhvc3RzIHNvIHRoYXQgYSAzMmJpdCBhbmQgNjRiaXQgc3RydWN0dXJlIGNhbiBiZSBzaGFyZWQu ICBTbyB0aGUKK3V0X3R2IGlzIGEgY3VzdG9tIDMyYml0IHN0cnVjdHVyZSByYXRoZXIgdGhhbiB0 aGUgbmF0aXZlIDY0Yml0IHRpbWV2YWwKK3N0cnVjdHVyZS4gIFdvcmsgYXJvdW5kIGlzIHRvIGFz c2lnbiB0aGUgc3VibWVtYmVycyBpbnN0ZWFkLgorCitodHRwOi8vYnVncy5nZW50b28ub3JnL3No b3dfYnVnLmNnaT9pZD0xMDI2NjcKKworLS0tIGJzZC1nYW1lcy9hZHZlbnR1cmUvY3JjLmMKKysr KyBic2QtZ2FtZXMvYWR2ZW50dXJlL2NyYy5jCitAQCAtMTM0LDcgKzEzNCw4IEBACisJCQkJaWYg KHN0ZXAgPj0gc2l6ZW9mKGNyY3RhYikgLyBzaXplb2YoY3JjdGFiWzBdKSkKKwkJCQkJc3RlcCA9 IDA7CisJCQl9CistCQkJY3JjdmFsID0gKGNyY3ZhbCA8PCA4KSBeIGNyY3RhYltpXTsKKysJCQkv KiBNYXNrIHRvIDMyIGJpdHMuICovCisrCQkJY3JjdmFsID0gKChjcmN2YWwgPDwgOCkgXiBjcmN0 YWJbaV0pICYgMHhmZmZmZmZmZjsKKwkJfQorLQlyZXR1cm4gY3JjdmFsICYgMHhmZmZmZmZmZjsJ LyogTWFzayB0byAzMiBiaXRzLiAqLworKwlyZXR1cm4gY3JjdmFsOworIH0KKy0tLSBic2QtZ2Ft ZXMvZG0vdXRtcGVudHJ5LmMKKysrKyBic2QtZ2FtZXMvZG0vdXRtcGVudHJ5LmMKK0BAIC0yOTEs NyArMjkxLDggQEAKKwllLT5saW5lW3NpemVvZihlLT5saW5lKSAtIDFdID0gJ1wwJzsKKwkodm9p ZClzdHJuY3B5KGUtPmhvc3QsIHVwLT51dF9ob3N0LCBzaXplb2YodXAtPnV0X2hvc3QpKTsKKwll LT5uYW1lW3NpemVvZihlLT5ob3N0KSAtIDFdID0gJ1wwJzsKKy0JZS0+dHYgPSB1cC0+dXRfdHY7 CisrCWUtPnR2LnR2X3NlYyA9IHVwLT51dF90di50dl9zZWM7CisrCWUtPnR2LnR2X3VzZWMgPSB1 cC0+dXRfdHYudHZfdXNlYzsKKwlhZGp1c3Rfc2l6ZShlKTsKKyB9CisgI2VuZGlmCmRpZmYgLS1n aXQgYS9nbnUvcGFja2FnZXMvcGF0Y2hlcy9ic2QtZ2FtZXMtYWRkLWNvbmZpZ3VyZS1jb25maWcu cGF0Y2ggYi9nbnUvcGFja2FnZXMvcGF0Y2hlcy9ic2QtZ2FtZXMtYWRkLWNvbmZpZ3VyZS1jb25m aWcucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMC4uZDg2MzZhZGRi NgotLS0gL2Rldi9udWxsCisrKyBiL2dudS9wYWNrYWdlcy9wYXRjaGVzL2JzZC1nYW1lcy1hZGQt Y29uZmlndXJlLWNvbmZpZy5wYXRjaApAQCAtMCwwICsxLDIyIEBACitSZW1vdmUgYSBmZXcgJ3Nl dGVudidzIGZyb20gdGhlIGRlZmluaXRpb24uCisKK2RpZmYgLU5hdXIgYnNkLWdhbWVzLTIuMTcv Y29uZmlnLnBhcmFtcyBic2QtZ2FtZXMtcGF0Y2gvY29uZmlnLnBhcmFtcworLS0tIGJzZC1nYW1l cy0yLjE3L2NvbmZpZy5wYXJhbXMJMTk3MC0wMS0wMSAwNzowMDowMC4wMDAwMDAwMDAgKzA3MDAK KysrKyBic2QtZ2FtZXMtcGF0Y2gvY29uZmlnLnBhcmFtcwkyMDIwLTA0LTIyIDIwOjQ5OjQwLjgw OTY5NTI0OCArMDcwMAorQEAgLTAsMCArMSwxNiBAQAorK2JzZF9nYW1lc19jZmdfZG9fY2hvd249 bgorK2JzZF9nYW1lc19jZmdfbm9uX2ludGVyYWN0aXZlPXkKKysKKysjIEZpeCBzb21lIG1hbi1w YWdlczogY2ZzY29yZXMsIG1vcnNlLCBwcHQsIHJvdDEzLCBzbnNjb3JlLCB0ZWFjaGdhbW1vbi4K Kytic2RfZ2FtZXNfY2ZnX3VzZV9kb3Rfc289c3ltbAorKworKyMgRG9uJ3QgYnVpbGQgc29tZSBn YW1lczoKKysjIENvdW50bWFpbCByZXF1aXJlIHNvbWUgQlNELXBhY2thZ2UgY2FsbGVkIGBmcm9t YC4KKysjIERNIGlzIGEgdG95IHRvIHJlc3RyaWN0IGFjY2VzcyB0byBic2QtZ2FtZXMuCisrIyBG b3J0dW5lIHNlZW1zIHRvIGJlIGFscmVhZHkgcGFja2FnZWQgKGZvcnR1bmUtbW9kKS4KKysjIFdh cmdhbWVzIGlzbid0IGNvbnZlbmllbnQgYXMgYSBnYW1lIGxhdW5jaGVyLgorK2JzZF9nYW1lc19j Zmdfbm9fYnVpbGRfZGlycz0iY291bnRtYWlsIGRtIGZvcnR1bmUgd2FyZ2FtZXMiCisrCisrIyBU aG9zZSBhcmUgc3Vic3RpdHV0ZSonZCB3aXRoIEdOVSBtaXNjZmlsZXMuCisrYnNkX2dhbWVzX2Nm Z19oYW5nbWFuX3dvcmRzZmlsZT1XT1JEX0xJU1QKKytic2RfZ2FtZXNfY2ZnX2RpY3Rpb25hcnlf c3JjPVdPUkRfTElTVApkaWZmIC0tZ2l0IGEvZ251L3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVz LWFkZC13cmFwcGVyLnBhdGNoIGIvZ251L3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLWFkZC13 cmFwcGVyLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAuLmFkM2Ix YTk4NjAKLS0tIC9kZXYvbnVsbAorKysgYi9nbnUvcGFja2FnZXMvcGF0Y2hlcy9ic2QtZ2FtZXMt YWRkLXdyYXBwZXIucGF0Y2gKQEAgLTAsMCArMSwyNTEgQEAKK0FzIHdlIGNhbm5vdCBpbnN0YWxs IG91dHNpZGUgdGhlIFN0b3JlLCBhbmQgdGhvc2UgZ2FtZXMgZG8gbm90IGNyZWF0ZSB0aGUKK25l ZWRlZCB3cml0YWJsZSBmaWxlcyBvbiB0aGVpciBvd24sIHdlIG5lZWQgYSB3cmFwcGVyIHNjcmlw dC4KKworZGlmZiAtTmF1ciBic2QtZ2FtZXMtMi4xNy9hdGMvTWFrZWZyYWcgYnNkLWdhbWVzLXBh dGNoL2F0Yy9NYWtlZnJhZworLS0tIGJzZC1nYW1lcy0yLjE3L2F0Yy9NYWtlZnJhZwkxOTcwLTAx LTAxIDA3OjAwOjAwLjAwMDAwMDAwMCArMDcwMAorKysrIGJzZC1nYW1lcy1wYXRjaC9hdGMvTWFr ZWZyYWcJMjAyMC0wNC0yMyAyMDoyNDowNC40NDYxNzYyMjIgKzA3MDAKK0BAIC00Nyw3ICs0Nyw4 IEBACisJbXYgYXRjL2xleC55eS5jICRACisKKyBhdGNfaW5zdGFsbDoJYXRjX2FsbAorLQkkKElO U1RBTExfU0NPUkVfR0FNRSkgYXRjL2F0YyAkKElOU1RBTExfUFJFRklYKSQoR0FNRVNESVIpL2F0 YworKwkkKElOU1RBTExfU0NPUkVfR0FNRSkgd3JhcHBlciAkKElOU1RBTExfUFJFRklYKSQoR0FN RVNESVIpL2F0YworKwkkKElOU1RBTExfU0NPUkVfR0FNRSkgYXRjL2F0YyAkKElOU1RBTExfUFJF RklYKSQoR0FNRVNESVIpLy5hdGMtcmVhbAorCSQoSElERV9HQU1FKSBhdGMKKwkkKElOU1RBTExf U0NPUkVfRklMRSkgJChBVENfU0NPUkVGSUxFKQorCSQoSU5TVEFMTF9NQU5VQUwpIGF0Yy9hdGMu NgorZGlmZiAtTmF1ciBic2QtZ2FtZXMtMi4xNy9iYXR0bGVzdGFyL01ha2VmcmFnIGJzZC1nYW1l cy1wYXRjaC9iYXR0bGVzdGFyL01ha2VmcmFnCistLS0gYnNkLWdhbWVzLTIuMTcvYmF0dGxlc3Rh ci9NYWtlZnJhZwkxOTcwLTAxLTAxIDA3OjAwOjAwLjAwMDAwMDAwMCArMDcwMAorKysrIGJzZC1n YW1lcy1wYXRjaC9iYXR0bGVzdGFyL01ha2VmcmFnCTIwMjAtMDQtMjMgMjA6MjQ6MDQuNDgyMTc1 NzcxICswNzAwCitAQCAtMzIsNyArMzIsOCBAQAorIGJhdHRsZXN0YXJfYWxsOgliYXR0bGVzdGFy L2JhdHRsZXN0YXIgYmF0dGxlc3Rhci9iYXR0bGVzdGFyLjYKKworIGJhdHRsZXN0YXJfaW5zdGFs bDoJYmF0dGxlc3Rhcl9hbGwKKy0JJChJTlNUQUxMX1NDT1JFX0dBTUUpIGJhdHRsZXN0YXIvYmF0 dGxlc3RhciAkKElOU1RBTExfUFJFRklYKSQoR0FNRVNESVIpL2JhdHRsZXN0YXIKKysJJChJTlNU QUxMX1NDT1JFX0dBTUUpIHdyYXBwZXIgJChJTlNUQUxMX1BSRUZJWCkkKEdBTUVTRElSKS9iYXR0 bGVzdGFyCisrCSQoSU5TVEFMTF9TQ09SRV9HQU1FKSBiYXR0bGVzdGFyL2JhdHRsZXN0YXIgJChJ TlNUQUxMX1BSRUZJWCkkKEdBTUVTRElSKS8uYmF0dGxlc3Rhci1yZWFsCisJJChISURFX0dBTUUp IGJhdHRsZXN0YXIKKwkkKElOU1RBTExfTUFOVUFMKSBiYXR0bGVzdGFyL2JhdHRsZXN0YXIuNgor CSQoSU5TVEFMTF9TQ09SRV9GSUxFKSAkKEJBVFRMRVNUQVJfU0NPUkVGSUxFKQorZGlmZiAtTmF1 ciBic2QtZ2FtZXMtMi4xNy9jYW5maWVsZC9jYW5maWVsZC9NYWtlZnJhZyBic2QtZ2FtZXMtcGF0 Y2gvY2FuZmllbGQvY2FuZmllbGQvTWFrZWZyYWcKKy0tLSBic2QtZ2FtZXMtMi4xNy9jYW5maWVs ZC9jYW5maWVsZC9NYWtlZnJhZwkxOTcwLTAxLTAxIDA3OjAwOjAwLjAwMDAwMDAwMCArMDcwMAor KysrIGJzZC1nYW1lcy1wYXRjaC9jYW5maWVsZC9jYW5maWVsZC9NYWtlZnJhZwkyMDIwLTA0LTIz IDIwOjI0OjA0LjUyMjE3NTI3MCArMDcwMAorQEAgLTMxLDcgKzMxLDggQEAKKyBjYW5maWVsZF9j YW5maWVsZF9hbGw6CWNhbmZpZWxkL2NhbmZpZWxkL2NhbmZpZWxkIGNhbmZpZWxkL2NhbmZpZWxk L2NhbmZpZWxkLjYKKworIGNhbmZpZWxkX2NhbmZpZWxkX2luc3RhbGw6IGNhbmZpZWxkX2NhbmZp ZWxkX2FsbAorLQkkKElOU1RBTExfU0NPUkVfR0FNRSkgY2FuZmllbGQvY2FuZmllbGQvY2FuZmll bGQgJChJTlNUQUxMX1BSRUZJWCkkKEdBTUVTRElSKS9jYW5maWVsZAorKwkkKElOU1RBTExfU0NP UkVfR0FNRSkgd3JhcHBlciAkKElOU1RBTExfUFJFRklYKSQoR0FNRVNESVIpL2NhbmZpZWxkCisr CSQoSU5TVEFMTF9TQ09SRV9HQU1FKSBjYW5maWVsZC9jYW5maWVsZC9jYW5maWVsZCAkKElOU1RB TExfUFJFRklYKSQoR0FNRVNESVIpLy5jYW5maWVsZC1yZWFsCisJJChISURFX0dBTUUpIGNhbmZp ZWxkCisJJChJTlNUQUxMX01BTlVBTCkgY2FuZmllbGQvY2FuZmllbGQvY2FuZmllbGQuNgorCSQo SU5TVEFMTF9TQ09SRV9GSUxFKSAkKENBTkZJRUxEX1NDT1JFRklMRSkKK2RpZmYgLXVyIGJzZC1n YW1lcy0yLjE3Lm9yaWcvY2FuZmllbGQvY2ZzY29yZXMvTWFrZWZyYWcgYnNkLWdhbWVzLTIuMTcv Y2FuZmllbGQvY2ZzY29yZXMvTWFrZWZyYWcKKy0tLSBic2QtZ2FtZXMtMi4xNy5vcmlnL2NhbmZp ZWxkL2Nmc2NvcmVzL01ha2VmcmFnCTE5NzAtMDEtMDEgMDc6MDA6MDEuMDAwMDAwMDAwICswNzAw CisrKysgYnNkLWdhbWVzLTIuMTcvY2FuZmllbGQvY2ZzY29yZXMvTWFrZWZyYWcJMjAyMC0wOC0w NiAxMjoyMDoxMC41OTIwNzY0NzcgKzA3MDAKK0BAIC0zMiw2ICszMiw3IEBACisgY2FuZmllbGRf Y2ZzY29yZXNfYWxsOgljYW5maWVsZC9jZnNjb3Jlcy9jZnNjb3JlcworCisgY2FuZmllbGRfY2Zz Y29yZXNfaW5zdGFsbDoJY2FuZmllbGRfY2ZzY29yZXNfYWxsCistCSQoSU5TVEFMTF9CSU5BUlkp IGNhbmZpZWxkL2Nmc2NvcmVzL2Nmc2NvcmVzICQoSU5TVEFMTF9QUkVGSVgpJChHQU1FU0RJUikv Y2ZzY29yZXMKKysJJChJTlNUQUxMX0JJTkFSWSkgd3JhcHBlciAkKElOU1RBTExfUFJFRklYKSQo R0FNRVNESVIpL2Nmc2NvcmVzCisrCSQoSU5TVEFMTF9CSU5BUlkpIGNhbmZpZWxkL2Nmc2NvcmVz L2Nmc2NvcmVzICQoSU5TVEFMTF9QUkVGSVgpJChHQU1FU0RJUikvLmNmc2NvcmVzLXJlYWwKKwkk KEhJREVfR0FNRSkgY2ZzY29yZXMKKwkkKElOU1RBTExfTUFOVUFMKSBjYW5maWVsZC42IGNmc2Nv cmVzLjYKK2RpZmYgLU5hdXIgYnNkLWdhbWVzLTIuMTcvY3JpYmJhZ2UvTWFrZWZyYWcgYnNkLWdh bWVzLXBhdGNoL2NyaWJiYWdlL01ha2VmcmFnCistLS0gYnNkLWdhbWVzLTIuMTcvY3JpYmJhZ2Uv TWFrZWZyYWcJMTk3MC0wMS0wMSAwNzowMDowMC4wMDAwMDAwMDAgKzA3MDAKKysrKyBic2QtZ2Ft ZXMtcGF0Y2gvY3JpYmJhZ2UvTWFrZWZyYWcJMjAyMC0wNC0yMyAyMDoyNDowNC41MzQxNzUxMjAg KzA3MDAKK0BAIC0zMSw3ICszMSw4IEBACisgY3JpYmJhZ2VfYWxsOgljcmliYmFnZS9jcmliYmFn ZSBjcmliYmFnZS9jcmliYmFnZS5uIGNyaWJiYWdlL2NyaWJiYWdlLjYKKworIGNyaWJiYWdlX2lu c3RhbGw6CWNyaWJiYWdlX2FsbAorLQkkKElOU1RBTExfU0NPUkVfR0FNRSkgY3JpYmJhZ2UvY3Jp YmJhZ2UgJChJTlNUQUxMX1BSRUZJWCkkKEdBTUVTRElSKS9jcmliYmFnZQorKwkkKElOU1RBTExf U0NPUkVfR0FNRSkgd3JhcHBlciAkKElOU1RBTExfUFJFRklYKSQoR0FNRVNESVIpL2NyaWJiYWdl CisrCSQoSU5TVEFMTF9TQ09SRV9HQU1FKSBjcmliYmFnZS9jcmliYmFnZSAkKElOU1RBTExfUFJF RklYKSQoR0FNRVNESVIpLy5jcmliYmFnZS1yZWFsCisJJChISURFX0dBTUUpIGNyaWJiYWdlCisJ JChJTlNUQUxMX0RBVEEpIGNyaWJiYWdlL2NyaWJiYWdlLm4gJChJTlNUQUxMX1BSRUZJWCkkKENS SUJCQUdFX0lOU1RSRklMRSkKKwkkKElOU1RBTExfU0NPUkVfRklMRSkgJChDUklCQkFHRV9TQ09S RUZJTEUpCitkaWZmIC1OYXVyIGJzZC1nYW1lcy0yLjE3L2hhY2svTWFrZWZyYWcgYnNkLWdhbWVz LXBhdGNoL2hhY2svTWFrZWZyYWcKKy0tLSBic2QtZ2FtZXMtMi4xNy9oYWNrL01ha2VmcmFnCTE5 NzAtMDEtMDEgMDc6MDA6MDAuMDAwMDAwMDAwICswNzAwCisrKysgYnNkLWdhbWVzLXBhdGNoL2hh Y2svTWFrZWZyYWcJMjAyMC0wNC0yMyAyMDoyNDowNC41OTAxNzQ0MTkgKzA3MDAKK0BAIC01Myw3 ICs1Myw4IEBACisgaGFjay9oYWNrLnphcC5kIGhhY2svcm5kLmQ6CWhhY2svaGFjay5vbmFtZXMu aAorCisgaGFja19pbnN0YWxsOgloYWNrX2FsbAorLQkkKElOU1RBTExfU0NPUkVfR0FNRSkgaGFj ay9oYWNrICQoSU5TVEFMTF9QUkVGSVgpJChHQU1FU0RJUikvaGFjaworKwkkKElOU1RBTExfU0NP UkVfR0FNRSkgd3JhcHBlciAkKElOU1RBTExfUFJFRklYKSQoR0FNRVNESVIpL2hhY2sKKysJJChJ TlNUQUxMX1NDT1JFX0dBTUUpIGhhY2svaGFjayAkKElOU1RBTExfUFJFRklYKSQoR0FNRVNESVIp Ly5oYWNrLXJlYWwKKwkkKEhJREVfR0FNRSkgaGFjaworCSQoSU5TVEFMTF9IQUNLX0RJUikgJChJ TlNUQUxMX1BSRUZJWCkkKEhBQ0tfRElSKQorCXNldCAtZTsgZm9yIGYgaW4gZGF0YSBoZWxwIGho IHJ1bW9yczsgZG8gJChJTlNUQUxMX0RBVEEpIGhhY2svJCRmICQoSU5TVEFMTF9QUkVGSVgpJChI QUNLX0RJUikvJCRmOyBkb25lCitkaWZmIC1OYXVyIGJzZC1nYW1lcy0yLjE3L3BoYW50YXNpYS9N YWtlZnJhZyBic2QtZ2FtZXMtcGF0Y2gvcGhhbnRhc2lhL01ha2VmcmFnCistLS0gYnNkLWdhbWVz LTIuMTcvcGhhbnRhc2lhL01ha2VmcmFnCTE5NzAtMDEtMDEgMDc6MDA6MDAuMDAwMDAwMDAwICsw NzAwCisrKysgYnNkLWdhbWVzLXBhdGNoL3BoYW50YXNpYS9NYWtlZnJhZwkyMDIwLTA0LTIzIDIw OjI0OjA0LjY1MDE3MzY2NyArMDcwMAorQEAgLTM4LDcgKzM4LDggQEAKKwl0b3VjaCBwaGFudGFz aWEvc2NvcmVmaWxlcy5zdGFtcAorCisgcGhhbnRhc2lhX2luc3RhbGw6CXBoYW50YXNpYV9hbGwK Ky0JJChJTlNUQUxMX1NDT1JFX0dBTUUpIHBoYW50YXNpYS9waGFudGFzaWEgJChJTlNUQUxMX1BS RUZJWCkkKEdBTUVTRElSKS9waGFudGFzaWEKKysJJChJTlNUQUxMX1NDT1JFX0dBTUUpIHdyYXBw ZXIgJChJTlNUQUxMX1BSRUZJWCkkKEdBTUVTRElSKS9waGFudGFzaWEKKysJJChJTlNUQUxMX1ND T1JFX0dBTUUpIHBoYW50YXNpYS9waGFudGFzaWEgJChJTlNUQUxMX1BSRUZJWCkkKEdBTUVTRElS KS8ucGhhbnRhc2lhLXJlYWwKKwkkKEhJREVfR0FNRSkgcGhhbnRhc2lhCisJKHNldCAtZTsgZm9y IGYgaW4gJChwaGFudGFzaWFfVkZJTEVTMSk7IGRvIFwKKwkgICAgY3AgcGhhbnRhc2lhLyQkZiAk KElOU1RBTExfUFJFRklYKSQoUEhBTlRBU0lBX0RJUikvJCRmOyBcCitkaWZmIC1OYXVyIGJzZC1n YW1lcy0yLjE3L3JvYm90cy9NYWtlZnJhZyBic2QtZ2FtZXMtcGF0Y2gvcm9ib3RzL01ha2VmcmFn CistLS0gYnNkLWdhbWVzLTIuMTcvcm9ib3RzL01ha2VmcmFnCTE5NzAtMDEtMDEgMDc6MDA6MDAu MDAwMDAwMDAwICswNzAwCisrKysgYnNkLWdhbWVzLXBhdGNoL3JvYm90cy9NYWtlZnJhZwkyMDIw LTA0LTIzIDIwOjI0OjA0LjcwMjE3MzAxNiArMDcwMAorQEAgLTMyLDcgKzMyLDggQEAKKyByb2Jv dHNfYWxsOglyb2JvdHMvcm9ib3RzIHJvYm90cy9yb2JvdHMuNgorCisgcm9ib3RzX2luc3RhbGw6 CXJvYm90c19hbGwKKy0JJChJTlNUQUxMX1NDT1JFX0dBTUUpIHJvYm90cy9yb2JvdHMgJChJTlNU QUxMX1BSRUZJWCkkKEdBTUVTRElSKS9yb2JvdHMKKysJJChJTlNUQUxMX1NDT1JFX0dBTUUpIHdy YXBwZXIgJChJTlNUQUxMX1BSRUZJWCkkKEdBTUVTRElSKS9yb2JvdHMKKysJJChJTlNUQUxMX1ND T1JFX0dBTUUpIHJvYm90cy9yb2JvdHMgJChJTlNUQUxMX1BSRUZJWCkkKEdBTUVTRElSKS8ucm9i b3RzLXJlYWwKKwkkKEhJREVfR0FNRSkgcm9ib3RzCisJJChJTlNUQUxMX1NDT1JFX0ZJTEUpICQo Uk9CT1RTX1NDT1JFRklMRSkKKwkkKElOU1RBTExfTUFOVUFMKSByb2JvdHMvcm9ib3RzLjYKK2Rp ZmYgLU5hdXIgYnNkLWdhbWVzLTIuMTcvc2FpbC9NYWtlZnJhZyBic2QtZ2FtZXMtcGF0Y2gvc2Fp bC9NYWtlZnJhZworLS0tIGJzZC1nYW1lcy0yLjE3L3NhaWwvTWFrZWZyYWcJMTk3MC0wMS0wMSAw NzowMDowMC4wMDAwMDAwMDAgKzA3MDAKKysrKyBic2QtZ2FtZXMtcGF0Y2gvc2FpbC9NYWtlZnJh ZwkyMDIwLTA0LTIzIDIwOjI0OjA0LjcxMDE3MjkxNyArMDcwMAorQEAgLTMxLDcgKzMxLDggQEAK KyBzYWlsX2FsbDoJc2FpbC9zYWlsIHNhaWwvc2FpbC42CisKKyBzYWlsX2luc3RhbGw6CXNhaWxf YWxsCistCSQoSU5TVEFMTF9TQ09SRV9HQU1FKSBzYWlsL3NhaWwgJChJTlNUQUxMX1BSRUZJWCkk KEdBTUVTRElSKS9zYWlsCisrCSQoSU5TVEFMTF9TQ09SRV9HQU1FKSB3cmFwcGVyICQoSU5TVEFM TF9QUkVGSVgpJChHQU1FU0RJUikvc2FpbAorKwkkKElOU1RBTExfU0NPUkVfR0FNRSkgc2FpbC9z YWlsICQoSU5TVEFMTF9QUkVGSVgpJChHQU1FU0RJUikvLnNhaWwtcmVhbAorCSQoSElERV9HQU1F KSBzYWlsCisJJChJTlNUQUxMX1NDT1JFX0ZJTEUpICQoU0FJTF9TQ09SRUZJTEUpCisJJChJTlNU QUxMX1NBSUxfRElSKSAkKElOU1RBTExfUFJFRklYKSQoU0FJTF9ESVIpCitkaWZmIC1OYXVyIGJz ZC1nYW1lcy0yLjE3L3NuYWtlL3NuYWtlL01ha2VmcmFnIGJzZC1nYW1lcy1wYXRjaC9zbmFrZS9z bmFrZS9NYWtlZnJhZworLS0tIGJzZC1nYW1lcy0yLjE3L3NuYWtlL3NuYWtlL01ha2VmcmFnCTE5 NzAtMDEtMDEgMDc6MDA6MDAuMDAwMDAwMDAwICswNzAwCisrKysgYnNkLWdhbWVzLXBhdGNoL3Nu YWtlL3NuYWtlL01ha2VmcmFnCTIwMjAtMDQtMjMgMjA6MjQ6MDQuNzIyMTcyNzY2ICswNzAwCitA QCAtMzEsNyArMzEsOCBAQAorIHNuYWtlX3NuYWtlX2FsbDoJc25ha2Uvc25ha2Uvc25ha2Ugc25h a2Uvc25ha2Uvc25ha2UuNgorCisgc25ha2Vfc25ha2VfaW5zdGFsbDoJc25ha2Vfc25ha2VfYWxs CistCSQoSU5TVEFMTF9TQ09SRV9HQU1FKSBzbmFrZS9zbmFrZS9zbmFrZSAkKElOU1RBTExfUFJF RklYKSQoR0FNRVNESVIpL3NuYWtlCisrCSQoSU5TVEFMTF9TQ09SRV9HQU1FKSB3cmFwcGVyICQo SU5TVEFMTF9QUkVGSVgpJChHQU1FU0RJUikvc25ha2UKKysJJChJTlNUQUxMX1NDT1JFX0dBTUUp IHNuYWtlL3NuYWtlL3NuYWtlICQoSU5TVEFMTF9QUkVGSVgpJChHQU1FU0RJUikvLnNuYWtlLXJl YWwKKwkkKEhJREVfR0FNRSkgc25ha2UKKwkkKElOU1RBTExfU0NPUkVfRklMRSkgJChTTkFLRV9T Q09SRUZJTEUpCisJJChJTlNUQUxMX1NDT1JFX0ZJTEUpICQoU05BS0VfUkFXU0NPUkVGSUxFKQor LS0tIGJzZC1nYW1lcy0yLjE3Lm9yaWcvc25ha2Uvc25zY29yZS9NYWtlZnJhZwkxOTcwLTAxLTAx IDA3OjAwOjAxLjAwMDAwMDAwMCArMDcwMAorKysrIGJzZC1nYW1lcy0yLjE3L3NuYWtlL3Nuc2Nv cmUvTWFrZWZyYWcJMjAyMC0wOC0wNiAxMjozMzowOS42MzYwODkzOTQgKzA3MDAKK0BAIC0zMiw2 ICszMiw3IEBACisgc25ha2Vfc25zY29yZV9hbGw6CXNuYWtlL3Nuc2NvcmUvc25zY29yZQorCisg c25ha2Vfc25zY29yZV9pbnN0YWxsOglzbmFrZV9zbnNjb3JlX2FsbAorLQkkKElOU1RBTExfQklO QVJZKSBzbmFrZS9zbnNjb3JlL3Nuc2NvcmUgJChJTlNUQUxMX1BSRUZJWCkkKEdBTUVTRElSKS9z bnNjb3JlCisrCSQoSU5TVEFMTF9CSU5BUlkpIHdyYXBwZXIgJChJTlNUQUxMX1BSRUZJWCkkKEdB TUVTRElSKS9zbnNjb3JlCisrCSQoSU5TVEFMTF9CSU5BUlkpIHNuYWtlL3Nuc2NvcmUvc25zY29y ZSAkKElOU1RBTExfUFJFRklYKSQoR0FNRVNESVIpLy5zbnNjb3JlLXJlYWwKKwkkKEhJREVfR0FN RSkgc25zY29yZQorCSQoSU5TVEFMTF9NQU5VQUwpIHNuYWtlLjYgc25zY29yZS42CitkaWZmIC1O YXVyIGJzZC1nYW1lcy0yLjE3L3RldHJpcy9NYWtlZnJhZyBic2QtZ2FtZXMtcGF0Y2gvdGV0cmlz L01ha2VmcmFnCistLS0gYnNkLWdhbWVzLTIuMTcvdGV0cmlzL01ha2VmcmFnCTE5NzAtMDEtMDEg MDc6MDA6MDAuMDAwMDAwMDAwICswNzAwCisrKysgYnNkLWdhbWVzLXBhdGNoL3RldHJpcy9NYWtl ZnJhZwkyMDIwLTA0LTIzIDIwOjI0OjA0LjczNDE3MjYxNiArMDcwMAorQEAgLTMyLDcgKzMyLDgg QEAKKyB0ZXRyaXNfYWxsOgl0ZXRyaXMvdGV0cmlzIHRldHJpcy90ZXRyaXMuNgorCisgdGV0cmlz X2luc3RhbGw6CXRldHJpc19hbGwKKy0JJChJTlNUQUxMX1NDT1JFX0dBTUUpIHRldHJpcy90ZXRy aXMgJChJTlNUQUxMX1BSRUZJWCkkKEdBTUVTRElSKS90ZXRyaXMtYnNkCisrCSQoSU5TVEFMTF9T Q09SRV9HQU1FKSB3cmFwcGVyICQoSU5TVEFMTF9QUkVGSVgpJChHQU1FU0RJUikvdGV0cmlzLWJz ZAorKwkkKElOU1RBTExfU0NPUkVfR0FNRSkgdGV0cmlzL3RldHJpcyAkKElOU1RBTExfUFJFRklY KSQoR0FNRVNESVIpLy50ZXRyaXMtYnNkLXJlYWwKKwkkKEhJREVfR0FNRSkgdGV0cmlzLWJzZAor CSQoSU5TVEFMTF9TQ09SRV9GSUxFKSAkKFRFVFJJU19TQ09SRUZJTEUpCisJbG4gLWYgdGV0cmlz L3RldHJpcy42IHRldHJpcy90ZXRyaXMtYnNkLjYKK2RpZmYgLU5hdXIgYnNkLWdhbWVzLTIuMTcv d3JhcHBlciBic2QtZ2FtZXMtcGF0Y2gvd3JhcHBlcgorLS0tIGJzZC1nYW1lcy0yLjE3L3dyYXBw ZXIJMTk3MC0wMS0wMSAwNzowMDowMC4wMDAwMDAwMDAgKzA3MDAKKysrKyBic2QtZ2FtZXMtcGF0 Y2gvd3JhcHBlcgkyMDIwLTA0LTIzIDIwOjI0OjM3LjE1Mzc2NjcxOSArMDcwMAorQEAgLTAsMCAr MSw5MSBAQAorKyMhL2Jpbi9zaAorKyMgVGhpcyBmaWxlIHdvcmtzIGFyb3VuZCBsaW1pdGF0aW9u cyBvZiBvdXIgcmVhZC1vbmx5IFN0b3JlLgorKworK3NldCAtZQorKworK2NoZWNrX2VtcHR5X2Zp bGVzICgpIHsKKysgICAgIyB0aG9zZSBzdGFydCBlbXB0eQorKyAgICBmb3IgZiBpbiAke0B9Cisr ICAgIGRvCisrICAgICAgICBpZiBbWyAhIC1mICR7Zn0gXV0KKysgICAgICAgIHRoZW4KKysgICAg ICAgICAgICB0b3VjaCAgICAgICR7Zn0KKysgICAgICAgICAgICBlY2hvICIkKHB3ZCkvJHtmfSBS RVNUT1JFRCIKKysgICAgICAgIGZpCisrICAgIGRvbmUKKyt9CisrY2hlY2tfZGF0YV9maWxlcyAo KSB7CisrICAgICMgdGhvc2Ugc3RhcnQgd2l0aCBzb21lIGluaXRpYWwgZGF0YQorKyAgICBmb3Ig ZiBpbiAke0B9CisrICAgIGRvCisrICAgICAgICBpZiBbWyAhIC1mICR7Zn0gXV0KKysgICAgICAg IHRoZW4KKysgICAgICAgICAgICBjcCBTVEFUSUNfREFUQS8ke2dhbWV9LyR7Zn0gJHtmfQorKyAg ICAgICAgICAgIGNobW9kIHUrdyAke2Z9CisrICAgICAgICAgICAgZWNobyAiJChwd2QpLyR7Zn0g UkVTVE9SRUQiCisrICAgICAgICBmaQorKyAgICBkb25lCisrfQorK3Zpc2l0X2RpciAoKSB7Cisr ICAgIG1rZGlyIC1wICR7MX0KKysgICAgY2QgJHsxfQorK30KKytleGl0X3dpdGhfdmFyaWFibGVf ZXJyb3IgKCkgeworKyAgICB2YXJpYWJsZXM9IiR7MX0kezI6KyBvciAkezJ9fSIKKysgICAgZWNo byAiR3VpeDogUGxlYXNlIHNldCB1cCB0aGUgJHt2YXJpYWJsZXN9IHZhcmlhYmxlLiIKKysgICAg ZWNobyAiRXhhbXBsZXM6IgorKyAgICBlY2hvICIgICBleHBvcnQgJHsxfT0vdmFyL211bHRpcGxh eWVyIgorKyAgICBlY2hvICIgICBleHBvcnQgJHsyOi0kezF9fT1+Ly5sb2NhbC9zaGFyZS9ic2Qt Z2FtZXMiCisrICAgIGVjaG8gIllvdSBjYW4gcGxhY2UgdGhpcyBpbiB+Ly5iYXNocmMgb3IgYSBz aW1pbGFyIGZpbGUgZm9yIFlvdXIgc2hlbGwuIgorKyAgICBlY2hvICJGb3IgbXVsdGlwbGF5ZXIg dGhpcyBkaXJlY3Rvcnkgc2hvdWxkIGJlIHdyaXRhYmxlIGZvciBhbGwgcGxheWVycy4iCisrICAg IGV4aXQgMQorK30KKysKKytnYW1lPSQoYmFzZW5hbWUgJDApCisraWYgW1sgJHtnYW1lfSA9PSAi aGFjayIgXV0KKyt0aGVuCisrICAgIGlmICAgW1sgLW4gJHtIQUNLRElSfSBdXTsgICAgICAgdGhl biB2aXNpdF9kaXIgIiR7SEFDS0RJUn0iCisrICAgIGVsaWYgW1sgLW4gJHtCU0RfR0FNRVNfRElS fSBdXTsgdGhlbiB2aXNpdF9kaXIgIiR7QlNEX0dBTUVTX0RJUn0vaGFjayIKKysgICAgZWxzZSBl eGl0X3dpdGhfdmFyaWFibGVfZXJyb3IgIkhBQ0tESVIiICJCU0RfR0FNRVNfRElSIgorKyAgICBm aQorK2Vsc2UKKysgICAgaWYgW1sgLW4gJHtCU0RfR0FNRVNfRElSfSBdXTsgdGhlbiB2aXNpdF9k aXIgIiR7QlNEX0dBTUVTX0RJUn0iCisrICAgIGVsc2UgZXhpdF93aXRoX3ZhcmlhYmxlX2Vycm9y ICJCU0RfR0FNRVNfRElSIgorKyAgICBmaQorK2ZpCisrCisrY2FzZSAke2dhbWV9IGluCisrICAg ICMjIyBHYW1lcyB3aXRoIHNjb3JlLWZpbGVzCisrICAgIGF0YykKKysgICAgICAgIGNoZWNrX2Vt cHR5X2ZpbGVzICJhdGNfc2NvcmUiOzsKKysgICAgYmF0dGxlc3RhcikKKysgICAgICAgIGNoZWNr X2VtcHR5X2ZpbGVzICJiYXR0bGVzdGFyLmxvZyI7OworKyAgICBjYW5maWVsZCkKKysgICAgICAg IGNoZWNrX2VtcHR5X2ZpbGVzICJjZnNjb3JlcyI7OworKyAgICBjcmliYmFnZSkKKysgICAgICAg IGNoZWNrX2VtcHR5X2ZpbGVzICJjcmlibG9nIjs7CisrICAgIHJvYm90cykKKysgICAgICAgIGNo ZWNrX2VtcHR5X2ZpbGVzICJyb2JvdHNfcm9sbCI7OworKyAgICBzbmFrZSkKKysgICAgICAgIGNo ZWNrX2VtcHR5X2ZpbGVzICJzbmFrZXJhd3Njb3JlcyIgInNuYWtlLmxvZyI7OworKyAgICB0ZXRy aXMpCisrICAgICAgICBjaGVja19lbXB0eV9maWxlcyAidGV0cmlzLWJzZC5zY29yZXMiOzsKKysg ICAgIyMjIEdhbWVzIHdpdGggc2F2ZWQgc3RhdGUKKysgICAgaGFjaykKKysgICAgICAgIGNoZWNr X2VtcHR5X2ZpbGVzICJyZWNvcmQiICJwZXJtIgorKyAgICAgICAgY2hlY2tfZGF0YV9maWxlcyAi ZGF0YSIgImhlbHAiICJoaCIgInJ1bW9ycyIKKysgICAgICAgIHZpc2l0X2RpciAic2F2ZSIKKysg ICAgICAgIGNkIC4uLy4uLzs7CisrICAgIHBoYW50YXNpYSkKKysgICAgICAgIHZpc2l0X2RpciAi cGhhbnRhc2lhIgorKyAgICAgICAgY2hlY2tfZW1wdHlfZmlsZXMgImNoYXJhY3MiICJnb2xkIiAi bGFzdGRlYWQiXAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgIm1lc3MiICJtb3RkIiAic2Nv cmVib2FyZCIgInZvaWQiCisrICAgICAgICBjaGVja19kYXRhX2ZpbGVzICJtb25zdGVycyIKKysg ICAgICAgIGNkIC4uLzs7CisrICAgIHNhaWwpCisrICAgICAgICB2aXNpdF9kaXIgInNhaWwiCisr ICAgICAgICBjaGVja19lbXB0eV9maWxlcyAibG9nIiAic3luY2ZpbGUiCisrICAgICAgICBjZCAu Li87OworK2VzYWMKKysKKytleGVjIC4ke2dhbWV9LXJlYWwgJHtAfQpkaWZmIC0tZ2l0IGEvZ251 L3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLWJhZC1udG9obC1jYXN0LnBhdGNoIGIvZ251L3Bh Y2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLWJhZC1udG9obC1jYXN0LnBhdGNoCm5ldyBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAuLmNhYWRmYTUwNTQKLS0tIC9kZXYvbnVsbAorKysg Yi9nbnUvcGFja2FnZXMvcGF0Y2hlcy9ic2QtZ2FtZXMtYmFkLW50b2hsLWNhc3QucGF0Y2gKQEAg LTAsMCArMSwyMiBAQAorZGlmZiAtLWdpdCBhL2h1bnQvaHVudC9wbGF5aXQuYyBiL2h1bnQvaHVu dC9wbGF5aXQuYworaW5kZXggOWFjZjg2ZS4uODgxYTRlNyAxMDA2NDQKKy0tLSBhL2h1bnQvaHVu dC9wbGF5aXQuYworKysrIGIvaHVudC9odW50L3BsYXlpdC5jCitAQCAtMTE0LDcgKzExNCw3IEBA IHBsYXlpdCgpCisJCWJhZF9jb24oKTsKKwkJLyogTk9UUkVBQ0hFRCAqLworCX0KKy0JaWYgKG50 b2hsKHZlcnNpb24pICE9ICh1bnNpZ25lZCBsb25nKUhVTlRfVkVSU0lPTikgeworKwlpZiAobnRv aGwodmVyc2lvbikgIT0gKHVpbnQzMl90KUhVTlRfVkVSU0lPTikgeworCQliYWRfdmVyKCk7CisJ CS8qIE5PVFJFQUNIRUQgKi8KKwl9CitAQCAtNjQ5LDcgKzY0OSw3IEBAIGRvX21lc3NhZ2UoKQor CQliYWRfY29uKCk7CisJCS8qIE5PVFJFQUNIRUQgKi8KKwl9CistCWlmIChudG9obCh2ZXJzaW9u KSAhPSAodW5zaWduZWQgbG9uZylIVU5UX1ZFUlNJT04pIHsKKysJaWYgKG50b2hsKHZlcnNpb24p ICE9ICh1aW50MzJfdClIVU5UX1ZFUlNJT04pIHsKKwkJYmFkX3ZlcigpOworCQkvKiBOT1RSRUFD SEVEICovCisJfQpkaWZmIC0tZ2l0IGEvZ251L3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLWRv bnQtaW5zdGFsbC1lbXB0eS1maWxlcy5wYXRjaCBiL2dudS9wYWNrYWdlcy9wYXRjaGVzL2JzZC1n YW1lcy1kb250LWluc3RhbGwtZW1wdHktZmlsZXMucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMDAwMDAwMDAwMC4uNGVlMDU3ODE3NwotLS0gL2Rldi9udWxsCisrKyBiL2dudS9wYWNr YWdlcy9wYXRjaGVzL2JzZC1nYW1lcy1kb250LWluc3RhbGwtZW1wdHktZmlsZXMucGF0Y2gKQEAg LTAsMCArMSw4NyBAQAorVGhvc2UgZ2FtZXMgcmVseSBvbiB1c2VyIHRvIHByb3ZpZGUgdGhlIGZp bGVzIHRvIHdyaXRlIHNjb3JlcyBpbi4KK1Rob3NlIHNjb3JlLWZpbGVzIGFyZSBpbml0aWFsbHkg ZW1wdHkuICBBbnl3YXksIHRoZSBTdG9yZSBpcyByZWFkLW9ubHkuCitTbyB3ZSBkbyBub3QgaW5z dGFsbCB0aG9zZSBlbXB0eSBmaWxlcy4KKworZGlmZiAtTmF1ciBic2QtZ2FtZXMtMi4xNy9pbnN0 YWxsLXNjb3JlLmluIGJzZC1nYW1lcy1wYXRjaC9pbnN0YWxsLXNjb3JlLmluCistLS0gYnNkLWdh bWVzLTIuMTcvaW5zdGFsbC1zY29yZS5pbgkxOTcwLTAxLTAxIDA3OjAwOjAwLjAwMDAwMDAwMCAr MDcwMAorKysrIGJzZC1nYW1lcy1wYXRjaC9pbnN0YWxsLXNjb3JlLmluCTIwMjAtMDQtMjIgMjE6 NDE6NDcuODEwNTQ0ODA0ICswNzAwCitAQCAtMSw0NSArMCwwIEBACistIyBpbnN0YWxsLXNjb3Jl LmluIC0gaW5zdGFsbCBhIHNjb3JlIGZpbGUKKy0jCistIyBDb3B5cmlnaHQgKGMpIDE5OTcsIDE5 OTgsIDE5OTkgSm9zZXBoIFNhbXVlbCBNeWVycy4KKy0jIEFsbCByaWdodHMgcmVzZXJ2ZWQuCist IworLSMgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg d2l0aCBvciB3aXRob3V0CistIyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKy0jIGFyZSBtZXQ6CistIyAxLiBSZWRpc3Ry aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor LSMgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk aXNjbGFpbWVyLgorLSMgMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKy0jICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKy0jICAgIGRvY3Vt ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli dXRpb24uCistIyAzLiBUaGUgbmFtZSBvZiB0aGUgYXV0aG9yIG1heSBub3QgYmUgdXNlZCB0byBl bmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMKKy0jICAgIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3 YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorLSMKKy0jIFRI SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgYEFTIElTJycgQU5EIEFOWSBF WFBSRVNTIE9SCistIyBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTCistIyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELgorLSMgSU4g Tk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS RUNULAorLSMgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM IERBTUFHRVMgKElOQ0xVRElORywKKy0jIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKy0jIExPU1MgT0YgVVNFLCBEQVRBLCBP UiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECistIyBB TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD VCBMSUFCSUxJVFksCistIyBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorLSMgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorLSMgU1VDSCBEQU1BR0Uu CistCistc2V0IC1lCistCistaWYgWyAiJDEiID0gIi1wIiBdOyB0aGVuCistICAgIHNjb3JlZmls ZT0iQGluc3RhbGxfcHJlZml4QCQyIgorLSAgICBwZXJtcz1AdmFyZGF0YV9wZXJtc19wcml2QAor LWVsc2UKKy0gICAgc2NvcmVmaWxlPSJAaW5zdGFsbF9wcmVmaXhAJDEiCistICAgIHBlcm1zPUB2 YXJkYXRhX3Blcm1zQAorLWZpCistCistbWtkaXIgLXAgIiQoZGlybmFtZSAiJHNjb3JlZmlsZSIp IgorLQorLXRlc3QgLWUgIiRzY29yZWZpbGUiIHx8IHRvdWNoICIkc2NvcmVmaWxlIgorLWlmIFsg QGRvX2Nob3duQCA9IHkgXTsgdGhlbgorLSAgICBjaG93biBAdmFyZGF0YV9vd25lckA6QHZhcmRh dGFfZ3JvdXBAICIkc2NvcmVmaWxlIgorLWZpCistY2htb2QgIiRwZXJtcyIgIiRzY29yZWZpbGUi CitkaWZmIC1OYXVyIGJzZC1nYW1lcy0yLjE3L3BoYW50YXNpYS9NYWtlZnJhZyBic2QtZ2FtZXMt cGF0Y2gvcGhhbnRhc2lhL01ha2VmcmFnCistLS0gYnNkLWdhbWVzLTIuMTcvcGhhbnRhc2lhL01h a2VmcmFnCTE5NzAtMDEtMDEgMDc6MDA6MDAuMDAwMDAwMDAwICswNzAwCisrKysgYnNkLWdhbWVz LXBhdGNoL3BoYW50YXNpYS9NYWtlZnJhZwkyMDIwLTA0LTIyIDIxOjI2OjAwLjE2MjQwOTQ2NCAr MDcwMAorQEAgLTI3LDkgKzI3LDggQEAKKyAjIFNVQ0ggREFNQUdFLgorCisgcGhhbnRhc2lhX0RJ UlMgOj0gJChHQU1FU0RJUikgJChNQU42RElSKSAkKFBIQU5UQVNJQV9ESVIpCistcGhhbnRhc2lh X1ZGSUxFUzEgOj0gZ29sZCBsYXN0ZGVhZCBtZXNzIG1vbnN0ZXJzIG1vdGQgdm9pZAorLXBoYW50 YXNpYV9WRklMRVMyIDo9IHNjb3JlYm9hcmQgY2hhcmFjcworLXBoYW50YXNpYV9DTEVBTkZJTEVT IDo9ICQocGhhbnRhc2lhX1ZGSUxFUzEpICQocGhhbnRhc2lhX1ZGSUxFUzIpIHNjb3JlZmlsZXMu c3RhbXAKKytwaGFudGFzaWFfVkZJTEVTMSA6PSBtb25zdGVycworK3BoYW50YXNpYV9DTEVBTkZJ TEVTIDo9ICQocGhhbnRhc2lhX1ZGSUxFUzEpIHNjb3JlZmlsZXMuc3RhbXAKKworIHBoYW50YXNp YV9hbGw6CXBoYW50YXNpYS9waGFudGFzaWEgcGhhbnRhc2lhL3BoYW50YXNpYS42IHBoYW50YXNp YS9zY29yZWZpbGVzLnN0YW1wCisKK0BAIC00Myw5ICs0Miw0IEBACisJKHNldCAtZTsgZm9yIGYg aW4gJChwaGFudGFzaWFfVkZJTEVTMSk7IGRvIFwKKwkgICAgY3AgcGhhbnRhc2lhLyQkZiAkKElO U1RBTExfUFJFRklYKSQoUEhBTlRBU0lBX0RJUikvJCRmOyBcCisJICAgICQoSU5TVEFMTF9TQ09S RV9GSUxFKSAkKFBIQU5UQVNJQV9ESVIpLyQkZjsgZG9uZSkKKy0JKHNldCAtZTsgZm9yIGYgaW4g JChwaGFudGFzaWFfVkZJTEVTMik7IGRvIFwKKy0JICAgIGlmIFsgISAtZSAkKFBIQU5UQVNJQV9E SVIpLyQkZiBdOyB0aGVuIFwKKy0JCWNwIHBoYW50YXNpYS8kJGYgJChJTlNUQUxMX1BSRUZJWCkk KFBIQU5UQVNJQV9ESVIpLyQkZjsgZmk7IGRvbmU7IFwKKy0JICAgICQoSU5TVEFMTF9TQ09SRV9G SUxFKSAkKFBIQU5UQVNJQV9ESVIpL3Njb3JlYm9hcmQ7IFwKKy0JICAgICQoSU5TVEFMTF9TQ09S RV9GSUxFKSAtcCAkKFBIQU5UQVNJQV9ESVIpL2NoYXJhY3MpCisJJChJTlNUQUxMX01BTlVBTCkg cGhhbnRhc2lhL3BoYW50YXNpYS42CitkaWZmIC1OYXVyIGJzZC1nYW1lcy0yLjE3L3NhaWwvTWFr ZWZyYWcgYnNkLWdhbWVzLXBhdGNoL3NhaWwvTWFrZWZyYWcKKy0tLSBic2QtZ2FtZXMtMi4xNy9z YWlsL01ha2VmcmFnCTE5NzAtMDEtMDEgMDc6MDA6MDAuMDAwMDAwMDAwICswNzAwCisrKysgYnNk LWdhbWVzLXBhdGNoL3NhaWwvTWFrZWZyYWcJMjAyMC0wNC0yMiAyMToyNjo0OC43MDE4MDE2NzYg KzA3MDAKK0BAIC0zNCw1ICszNCw0IEBACisJJChJTlNUQUxMX1NDT1JFX0dBTUUpIHNhaWwvc2Fp bCAkKElOU1RBTExfUFJFRklYKSQoR0FNRVNESVIpL3NhaWwKKwkkKEhJREVfR0FNRSkgc2FpbAor CSQoSU5TVEFMTF9TQ09SRV9GSUxFKSAkKFNBSUxfU0NPUkVGSUxFKQorLQkkKElOU1RBTExfU0FJ TF9ESVIpICQoSU5TVEFMTF9QUkVGSVgpJChTQUlMX0RJUikKKwkkKElOU1RBTExfTUFOVUFMKSBz YWlsL3NhaWwuNgpkaWZmIC0tZ2l0IGEvZ251L3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLWdh bWVzY3JlZW4uaC5wYXRjaCBiL2dudS9wYWNrYWdlcy9wYXRjaGVzL2JzZC1nYW1lcy1nYW1lc2Ny ZWVuLmgucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMC4uZDNjNmI0 YWU1MAotLS0gL2Rldi9udWxsCisrKyBiL2dudS9wYWNrYWdlcy9wYXRjaGVzL2JzZC1nYW1lcy1n YW1lc2NyZWVuLmgucGF0Y2gKQEAgLTAsMCArMSwxNCBAQAorLS0tIGEvZGFiL2dhbWVzY3JlZW4u aAkyMDA0LTAxLTAyIDIzOjM0OjUxLjAwMDAwMDAwMCArMDUzMAorKysrIGIvZGFiL2dhbWVzY3Jl ZW4uaAkyMDA4LTA3LTMxIDIzOjQ1OjE5LjAwMDAwMDAwMCArMDUzMAorQEAgLTcwLDkgKzcwLDkg QEAKKyAgICAgdmlydHVhbCB2b2lkIHJlZHJhdyh2b2lkKSA9IDA7CQkJLy8gUmVmcmVzaAorICAg ICB2aXJ0dWFsIGludCBnZXRpbnB1dCh2b2lkKSA9IDA7CQkJLy8gR2V0IHVzZXIgaW5wdXQKKyAg ICAgdmlydHVhbCB2b2lkIGJlbGwodm9pZCkgPSAwOwkJCS8vIEJlZXAKKy0gICAgdmlydHVhbCB2 b2lkIHNjb3JlKHNpemVfdCBwLCBjb25zdCBQTEFZRVImIHApID0gMDsJLy8gUG9zdCBjdXJyZW50 IHNjb3JlCistICAgIHZpcnR1YWwgdm9pZCBnYW1lcyhzaXplX3QgcCwgY29uc3QgUExBWUVSJiBw KSA9IDA7CS8vIFBvc3QgZ2FtZXMgd29uCistICAgIHZpcnR1YWwgdm9pZCB0b3RhbChzaXplX3Qg cCwgY29uc3QgUExBWUVSJiBwKSA9IDA7CS8vIFBvc3QgdG90YWwgc2NvcmUKKysgICAgdmlydHVh bCB2b2lkIHNjb3JlKHNpemVfdCwgY29uc3QgUExBWUVSJikgPSAwOwkvLyBQb3N0IGN1cnJlbnQg c2NvcmUKKysgICAgdmlydHVhbCB2b2lkIGdhbWVzKHNpemVfdCwgY29uc3QgUExBWUVSJikgPSAw OwkvLyBQb3N0IGdhbWVzIHdvbgorKyAgICB2aXJ0dWFsIHZvaWQgdG90YWwoc2l6ZV90LCBjb25z dCBQTEFZRVImKSA9IDA7CS8vIFBvc3QgdG90YWwgc2NvcmUKKyAgICAgdmlydHVhbCB2b2lkIHRp ZXMoY29uc3QgUExBWUVSJiBwKSA9IDA7CQkvLyBQb3N0IHRpZSBnYW1lcworIH07CmRpZmYgLS1n aXQgYS9nbnUvcGFja2FnZXMvcGF0Y2hlcy9ic2QtZ2FtZXMtZ2V0bGluZS5wYXRjaCBiL2dudS9w YWNrYWdlcy9wYXRjaGVzL2JzZC1nYW1lcy1nZXRsaW5lLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAwMDAuLmQ3YzBiNDAzNGQKLS0tIC9kZXYvbnVsbAorKysgYi9nbnUv cGFja2FnZXMvcGF0Y2hlcy9ic2QtZ2FtZXMtZ2V0bGluZS5wYXRjaApAQCAtMCwwICsxLDE5NCBA QAorZGlmZiAtTmF1ciBic2QtZ2FtZXMtMi4xNy9ib2dnbGUvYm9nZ2xlL2JvZy5jIGJzZC1nYW1l cy0yLjE3LjEvYm9nZ2xlL2JvZ2dsZS9ib2cuYworLS0tIGJzZC1nYW1lcy0yLjE3L2JvZ2dsZS9i b2dnbGUvYm9nLmMJMjAwNC0xMi0wNyAwNzozNDoyMS4wMDAwMDAwMDAgLTA2MDAKKysrKyBic2Qt Z2FtZXMtMi4xNy4xL2JvZ2dsZS9ib2dnbGUvYm9nLmMJMjAxMC0wNS0yMiAxMDo1MToyMy4wMDAw MDAwMDAgLTA1MDAKK0BAIC0zMzYsNyArMzM2LDcgQEAKKwl9CisKKwl3aGlsZSAoMSkgeworLQkJ aWYgKGdldGxpbmUoYnVmKSA9PSBOVUxMKSB7CisrCQlpZiAoYm9nZ2xlX2dldGxpbmUoYnVmKSA9 PSBOVUxMKSB7CisJCQlpZiAoZmVvZihzdGRpbikpCisJCQkJY2xlYXJlcnIoc3RkaW4pOworCQkJ YnJlYWs7CitkaWZmIC1OYXVyIGJzZC1nYW1lcy0yLjE3L2JvZ2dsZS9ib2dnbGUvZXh0ZXJuLmgg YnNkLWdhbWVzLTIuMTcuMS9ib2dnbGUvYm9nZ2xlL2V4dGVybi5oCistLS0gYnNkLWdhbWVzLTIu MTcvYm9nZ2xlL2JvZ2dsZS9leHRlcm4uaAkyMDA0LTAxLTI3IDE0OjUyOjA3LjAwMDAwMDAwMCAt MDYwMAorKysrIGJzZC1nYW1lcy0yLjE3LjEvYm9nZ2xlL2JvZ2dsZS9leHRlcm4uaAkyMDEwLTA1 LTIyIDEwOjUxOjIzLjAwMDAwMDAwMCAtMDUwMAorQEAgLTQzLDcgKzQzLDcgQEAKKyBsb25nCSBk aWN0c2VlayhGSUxFICosIGxvbmcsIGludCk7Cisgdm9pZAkgZmluZHdvcmQodm9pZCk7Cisgdm9p ZAkgZmx1c2hpbihGSUxFICopOworLWNoYXIJKmdldGxpbmUoY2hhciAqKTsKKytjaGFyCSpib2dn bGVfZ2V0bGluZShjaGFyICopOworIHZvaWQJIGdldHdvcmQoY2hhciAqKTsKKyBpbnQJIGhlbHAo dm9pZCk7CisgaW50CSBpbnB1dGNoKHZvaWQpOworZGlmZiAtTmF1ciBic2QtZ2FtZXMtMi4xNy9i b2dnbGUvYm9nZ2xlL21hY2guYyBic2QtZ2FtZXMtMi4xNy4xL2JvZ2dsZS9ib2dnbGUvbWFjaC5j CistLS0gYnNkLWdhbWVzLTIuMTcvYm9nZ2xlL2JvZ2dsZS9tYWNoLmMJMjAwNC0xMi0wNyAwNzoz NDoyMS4wMDAwMDAwMDAgLTA2MDAKKysrKyBic2QtZ2FtZXMtMi4xNy4xL2JvZ2dsZS9ib2dnbGUv bWFjaC5jCTIwMTAtMDUtMjIgMTA6NTE6MjMuMDAwMDAwMDAwIC0wNTAwCitAQCAtMTY4LDcgKzE2 OCw3IEBACisgICogLSBkb2Vzbid0IGFjY2VwdCB3b3JkcyBsb25nZXIgdGhhbiBNQVhXT1JETEVO IG9yIGNvbnRhaW5pbmcgY2FwcworICAqLworIGNoYXIgKgorLWdldGxpbmUocSkKKytib2dnbGVf Z2V0bGluZShxKQorCWNoYXIgKnE7CisgeworCWludCBjaCwgZG9uZTsKK2RpZmYgLU5hdXIgYnNk LWdhbWVzLTIuMTcvY3JpYmJhZ2UvY3JpYmJhZ2UuaCBic2QtZ2FtZXMtMi4xNy4xL2NyaWJiYWdl L2NyaWJiYWdlLmgKKy0tLSBic2QtZ2FtZXMtMi4xNy9jcmliYmFnZS9jcmliYmFnZS5oCTIwMDQt MDItMDggMTY6Mjk6MTQuMDAwMDAwMDAwIC0wNjAwCisrKysgYnNkLWdhbWVzLTIuMTcuMS9jcmli YmFnZS9jcmliYmFnZS5oCTIwMTAtMDUtMjIgMTA6NTE6MjMuMDAwMDAwMDAwIC0wNTAwCitAQCAt NzcsNyArNzcsNyBAQAorIGludAkgZmlmdGVlbnMoY29uc3QgQ0FSRCBbXSwgaW50KTsKKyB2b2lk CSBnYW1lKHZvaWQpOworIHZvaWQJIGdhbWVzY29yZSh2b2lkKTsKKy1jaGFyCSpnZXRsaW5lKHZv aWQpOworK2NoYXIJKmNyaWJiYWdlX2dldGxpbmUodm9pZCk7CisgaW50CSBnZXR1Y2hhcih2b2lk KTsKKyBpbnQJIGluY2FyZChDQVJEICopOworIGludAkgaW5mcm9tKGNvbnN0IENBUkQgW10sIGlu dCwgY29uc3QgY2hhciAqKTsKK2RpZmYgLU5hdXIgYnNkLWdhbWVzLTIuMTcvY3JpYmJhZ2UvY3Jp Yi5jIGJzZC1nYW1lcy0yLjE3LjEvY3JpYmJhZ2UvY3JpYi5jCistLS0gYnNkLWdhbWVzLTIuMTcv Y3JpYmJhZ2UvY3JpYi5jCTIwMDQtMDEtMjcgMTQ6NTI6MDcuMDAwMDAwMDAwIC0wNjAwCisrKysg YnNkLWdhbWVzLTIuMTcuMS9jcmliYmFnZS9jcmliLmMJMjAxMC0wNS0yMiAxMDo1MToyMy4wMDAw MDAwMDAgLTA1MDAKK0BAIC0yMjEsNyArMjIxLDcgQEAKKwkJCWlmICghcmZsYWcpIHsJCQkvKiBw bGF5ZXIgY3V0cyBkZWNrICovCisJCQkJbXNnKHF1aWV0ID8gIkN1dCBmb3IgY3JpYj8gIiA6CisJ CQkgICAgIkN1dCB0byBzZWUgd2hvc2UgY3JpYiBpdCBpcyAtLSBsb3cgY2FyZCB3aW5zPyAiKTsK Ky0JCQkJZ2V0bGluZSgpOworKwkJCQljcmliYmFnZV9nZXRsaW5lKCk7CisJCQl9CisJCQlpID0g KHJhbmQoKSA+PiA0KSAlIENBUkRTOwkvKiByYW5kb20gY3V0ICovCisJCQlkbyB7CS8qIGNvbXAg Y3V0cyBkZWNrICovCitAQCAtMzk3LDcgKzM5Nyw3IEBACisJCWlmICghcmZsYWcpIHsJLyogcmFu ZG9tIGN1dCAqLworCQkJbXNnKHF1aWV0ID8gIkN1dCB0aGUgZGVjaz8gIiA6CisJCSAgICAiSG93 IG1hbnkgY2FyZHMgZG93biBkbyB5b3Ugd2lzaCB0byBjdXQgdGhlIGRlY2s/ICIpOworLQkJCWdl dGxpbmUoKTsKKysJCQljcmliYmFnZV9nZXRsaW5lKCk7CisJCX0KKwkJaSA9IChyYW5kKCkgPj4g NCkgJSAoQ0FSRFMgLSBwb3MpOworCQl0dXJub3ZlciA9IGRlY2tbaSArIHBvc107CitkaWZmIC1O YXVyIGJzZC1nYW1lcy0yLjE3L2NyaWJiYWdlL2lvLmMgYnNkLWdhbWVzLTIuMTcuMS9jcmliYmFn ZS9pby5jCistLS0gYnNkLWdhbWVzLTIuMTcvY3JpYmJhZ2UvaW8uYwkyMDA0LTEyLTA3IDA3OjM0 OjIxLjAwMDAwMDAwMCAtMDYwMAorKysrIGJzZC1nYW1lcy0yLjE3LjEvY3JpYmJhZ2UvaW8uYwky MDEwLTA1LTIyIDEwOjUxOjIzLjAwMDAwMDAwMCAtMDUwMAorQEAgLTI0NSw3ICsyNDUsNyBAQAor CisJcmV0dmFsID0gRkFMU0U7CisJcm5rID0gc3V0ID0gRU1QVFk7CistCWlmICghKGxpbmUgPSBn ZXRsaW5lKCkpKQorKwlpZiAoIShsaW5lID0gY3JpYmJhZ2VfZ2V0bGluZSgpKSkKKwkJZ290byBn b3RpdDsKKwlwID0gcDEgPSBsaW5lOworCXdoaWxlICgqcDEgIT0gJyAnICYmICpwMSAhPSAnXDAn KQorQEAgLTM0Niw3ICszNDYsNyBAQAorCisJZm9yIChzdW0gPSAwOzspIHsKKwkJbXNnKHByb21w dCk7CistCQlpZiAoIShwID0gZ2V0bGluZSgpKSB8fCAqcCA9PSAnXDAnKSB7CisrCQlpZiAoIShw ID0gY3JpYmJhZ2VfZ2V0bGluZSgpKSB8fCAqcCA9PSAnXDAnKSB7CisJCQltc2cocXVpZXQgPyAi Tm90IGEgbnVtYmVyIiA6CisJCQkgICAgIlRoYXQgZG9lc24ndCBsb29rIGxpa2UgYSBudW1iZXIi KTsKKwkJCWNvbnRpbnVlOworQEAgLTUyOCwxMiArNTI4LDEyIEBACisgfQorCisgLyoKKy0gKiBn ZXRsaW5lOgorKyAqIGNyaWJiYWdlX2dldGxpbmU6CisgICogICAgICBSZWFkcyB0aGUgbmV4dCBs aW5lIHVwIHRvICdcbicgb3IgRU9GLiAgTXVsdGlwbGUgc3BhY2VzIGFyZQorICAqCWNvbXByZXNz ZWQgdG8gb25lIHNwYWNlOyBhIHNwYWNlIGlzIGluc2VydGVkIGJlZm9yZSBhICcsJworICAqLwor IGNoYXIgKgorLWdldGxpbmUoKQorK2NyaWJiYWdlX2dldGxpbmUoKQorIHsKKwljaGFyICpzcDsK KwlpbnQgYywgb3ksIG94OworZGlmZiAtTmF1ciBic2QtZ2FtZXMtMi4xNy9nb21va3UvYmRpc3Au YyBic2QtZ2FtZXMtMi4xNy4xL2dvbW9rdS9iZGlzcC5jCistLS0gYnNkLWdhbWVzLTIuMTcvZ29t b2t1L2JkaXNwLmMJMjAwMy0xMi0xNiAyMDo0NzozNy4wMDAwMDAwMDAgLTA2MDAKKysrKyBic2Qt Z2FtZXMtMi4xNy4xL2dvbW9rdS9iZGlzcC5jCTIwMTAtMDUtMjIgMTA6NTE6MjMuMDAwMDAwMDAw IC0wNTAwCitAQCAtMjQxLDcgKzI0MSw3IEBACisgfQorCisgaW50CistZ2V0bGluZShidWYsIHNp emUpCisrZ29tb2t1X2dldGxpbmUoYnVmLCBzaXplKQorCWNoYXIgKmJ1ZjsKKwlpbnQgc2l6ZTsK KyB7CitkaWZmIC1OYXVyIGJzZC1nYW1lcy0yLjE3L2dvbW9rdS9nb21va3UuaCBic2QtZ2FtZXMt Mi4xNy4xL2dvbW9rdS9nb21va3UuaAorLS0tIGJzZC1nYW1lcy0yLjE3L2dvbW9rdS9nb21va3Uu aAkyMDA0LTAxLTI3IDE0OjUyOjA3LjAwMDAwMDAwMCAtMDYwMAorKysrIGJzZC1nYW1lcy0yLjE3 LjEvZ29tb2t1L2dvbW9rdS5oCTIwMTAtMDUtMjIgMTA6NTE6MjMuMDAwMDAwMDAwIC0wNTAwCitA QCAtMjYzLDcgKzI2Myw3IEBACisKKyB2b2lkCWJkaW5pdChzdHJ1Y3Qgc3BvdHN0ciAqKTsKKyB2 b2lkCWluaXRfb3ZlcmxhcCh2b2lkKTsKKy1pbnQJZ2V0bGluZShjaGFyICosIGludCk7CisraW50 CWdvbW9rdV9nZXRsaW5lKGNoYXIgKiwgaW50KTsKKyB2b2lkCWFzayhjb25zdCBjaGFyICopOwor IHZvaWQJZGlzbG9nKGNvbnN0IGNoYXIgKik7Cisgdm9pZAliZHVtcChGSUxFICopOworZGlmZiAt TmF1ciBic2QtZ2FtZXMtMi4xNy9nb21va3UvbWFpbi5jIGJzZC1nYW1lcy0yLjE3LjEvZ29tb2t1 L21haW4uYworLS0tIGJzZC1nYW1lcy0yLjE3L2dvbW9rdS9tYWluLmMJMjAwNC0wMS0yNyAxNDo1 MjowNy4wMDAwMDAwMDAgLTA2MDAKKysrKyBic2QtZ2FtZXMtMi4xNy4xL2dvbW9rdS9tYWluLmMJ MjAxMC0wNS0yMiAxMDo1MToyMy4wMDAwMDAwMDAgLTA1MDAKK0BAIC0xNTUsNyArMTU1LDcgQEAK KwkJaWYgKGlucHV0ZnAgPT0gTlVMTCAmJiB0ZXN0ID09IDApIHsKKwkJCWZvciAoOzspIHsKKwkJ CQlhc2soImJsYWNrIG9yIHdoaXRlPyAiKTsKKy0JCQkJZ2V0bGluZShidWYsIHNpemVvZihidWYp KTsKKysJCQkJZ29tb2t1X2dldGxpbmUoYnVmLCBzaXplb2YoYnVmKSk7CisJCQkJaWYgKGJ1Zlsw XSA9PSAnYicgfHwgYnVmWzBdID09ICdCJykgeworCQkJCQljb2xvciA9IEJMQUNLOworCQkJCQli cmVhazsKK0BAIC0xNzIsNyArMTcyLDcgQEAKKwkJfQorCX0gZWxzZSB7CisJCXNldGJ1ZihzdGRv dXQsIDApOworLQkJZ2V0bGluZShidWYsIHNpemVvZihidWYpKTsKKysJCWdvbW9rdV9nZXRsaW5l KGJ1Ziwgc2l6ZW9mKGJ1ZikpOworCQlpZiAoc3RyY21wKGJ1ZiwgImJsYWNrIikgPT0gMCkKKwkJ CWNvbG9yID0gQkxBQ0s7CisJCWVsc2UgaWYgKHN0cmNtcChidWYsICJ3aGl0ZSIpID09IDApCitA QCAtMjQ0LDcgKzI0NCw3IEBACisJCWdldGlucHV0OgorCQkJaWYgKGludGVyYWN0aXZlKQorCQkJ CWFzaygibW92ZT8gIik7CistCQkJaWYgKCFnZXRsaW5lKGJ1Ziwgc2l6ZW9mKGJ1ZikpKSB7Cisr CQkJaWYgKCFnb21va3VfZ2V0bGluZShidWYsIHNpemVvZihidWYpKSkgeworCQkJCWN1cm1vdmUg PSBSRVNJR047CisJCQkJYnJlYWs7CisJCQl9CitAQCAtMjU2LDcgKzI1Niw3IEBACisJCQkJCUZJ TEUgKmZwOworCisJCQkJCWFzaygic2F2ZSBmaWxlIG5hbWU/ICIpOworLQkJCQkJKHZvaWQpZ2V0 bGluZShidWYsIHNpemVvZihidWYpKTsKKysJCQkJCSh2b2lkKWdvbW9rdV9nZXRsaW5lKGJ1Ziwg c2l6ZW9mKGJ1ZikpOworCQkJCQlpZiAoKGZwID0gZm9wZW4oYnVmLCAidyIpKSA9PSBOVUxMKSB7 CisJCQkJCQlnbG9nKCJjYW5ub3QgY3JlYXRlIHNhdmUgZmlsZSIpOworCQkJCQkJZ290byBnZXRp bnB1dDsKK0BAIC0zMDksMTQgKzMwOSwxNCBAQAorCQlpZiAoaSAhPSBSRVNJR04pIHsKKwkJcmVw bGF5OgorCQkJYXNrKCJyZXBsYXk/ICIpOworLQkJCWlmIChnZXRsaW5lKGJ1Ziwgc2l6ZW9mKGJ1 ZikpICYmCisrCQkJaWYgKGdvbW9rdV9nZXRsaW5lKGJ1Ziwgc2l6ZW9mKGJ1ZikpICYmCisJCQkg ICAgKGJ1ZlswXSA9PSAneScgfHwgYnVmWzBdID09ICdZJykpCisJCQkJZ290byBhZ2FpbjsKKwkJ CWlmIChzdHJjbXAoYnVmLCAic2F2ZSIpID09IDApIHsKKwkJCQlGSUxFICpmcDsKKworCQkJCWFz aygic2F2ZSBmaWxlIG5hbWU/ICIpOworLQkJCQkodm9pZClnZXRsaW5lKGJ1Ziwgc2l6ZW9mKGJ1 ZikpOworKwkJCQkodm9pZClnb21va3VfZ2V0bGluZShidWYsIHNpemVvZihidWYpKTsKKwkJCQlp ZiAoKGZwID0gZm9wZW4oYnVmLCAidyIpKSA9PSBOVUxMKSB7CisJCQkJCWdsb2coImNhbm5vdCBj cmVhdGUgc2F2ZSBmaWxlIik7CisJCQkJCWdvdG8gcmVwbGF5OworQEAgLTM2Nyw3ICszNjcsNyBA QAorCQlxdWl0KCk7CisgdG9wOgorCWFzaygiY21kPyAiKTsKKy0JaWYgKCFnZXRsaW5lKGZtdGJ1 Ziwgc2l6ZW9mKGZtdGJ1ZikpKQorKwlpZiAoIWdvbW9rdV9nZXRsaW5lKGZtdGJ1Ziwgc2l6ZW9m KGZtdGJ1ZikpKQorCQlxdWl0KCk7CisJc3dpdGNoICgqZm10YnVmKSB7CisJY2FzZSAnXDAnOgpk aWZmIC0tZ2l0IGEvZ251L3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLW51bGwtY2hlY2sucGF0 Y2ggYi9nbnUvcGFja2FnZXMvcGF0Y2hlcy9ic2QtZ2FtZXMtbnVsbC1jaGVjay5wYXRjaApuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwLi5iYTk3N2M5NWJmCi0tLSAvZGV2L251 bGwKKysrIGIvZ251L3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLW51bGwtY2hlY2sucGF0Y2gK QEAgLTAsMCArMSwyNCBAQAorZGlmZiAtLWdpdCBhL2h1bnQvaHVudC9odW50LmMgYi9odW50L2h1 bnQvaHVudC5jCitpbmRleCAxMWY0YzQ0Li4yODMyMWJjIDEwMDY0NAorLS0tIGEvaHVudC9odW50 L2h1bnQuYworKysrIGIvaHVudC9odW50L2h1bnQuYworQEAgLTM5NCw3ICszOTQsOCBAQCBicm9h ZGNhc3RfdmVjKHMsIHZlY3RvcikKKworCXZlY19jbnQgPSAwOworCWZvciAoaXAgPSBpZnA7IGlw OyBpcCA9IGlwLT5pZmFfbmV4dCkKKy0JCWlmICgoaXAtPmlmYV9hZGRyLT5zYV9mYW1pbHkgPT0g QUZfSU5FVCkgJiYKKysJCWlmIChpcC0+aWZhX2FkZHIgJiYKKysJCSAgICAoaXAtPmlmYV9hZGRy LT5zYV9mYW1pbHkgPT0gQUZfSU5FVCkgJiYKKwkJICAgIChpcC0+aWZhX2ZsYWdzICYgSUZGX0JS T0FEQ0FTVCkpCisJCQl2ZWNfY250Kys7CisKK0BAIC00MDUsNyArNDA2LDggQEAgYnJvYWRjYXN0 X3ZlYyhzLCB2ZWN0b3IpCisKKwl2ZWNfY250ID0gMDsKKwlmb3IgKGlwID0gaWZwOyBpcDsgaXAg PSBpcC0+aWZhX25leHQpCistCQlpZiAoKGlwLT5pZmFfYWRkci0+c2FfZmFtaWx5ID09IEFGX0lO RVQpICYmCisrCQlpZiAoaXAtPmlmYV9hZGRyICYmCisrCQkgICAgKGlwLT5pZmFfYWRkci0+c2Ff ZmFtaWx5ID09IEFGX0lORVQpICYmCisJCSAgICAoaXAtPmlmYV9mbGFncyAmIElGRl9CUk9BRENB U1QpKQorCQkJbWVtY3B5KCYoKnZlY3RvcilbdmVjX2NudCsrXSwgaXAtPmlmYV9icm9hZGFkZHIs CisJCQkgICAgICAgc2l6ZW9mKHN0cnVjdCBzb2NrYWRkcl9pbikpOwpkaWZmIC0tZ2l0IGEvZ251 L3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLW51bWJlci5jLWFuZC10ZXN0LnBhdGNoIGIvZ251 L3BhY2thZ2VzL3BhdGNoZXMvYnNkLWdhbWVzLW51bWJlci5jLWFuZC10ZXN0LnBhdGNoCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAuLjFjZjViYTI4MjIKLS0tIC9kZXYvbnVs bAorKysgYi9nbnUvcGFja2FnZXMvcGF0Y2hlcy9ic2QtZ2FtZXMtbnVtYmVyLmMtYW5kLXRlc3Qu cGF0Y2gKQEAgLTAsMCArMSwxODMgQEAKK0FyY2gncyBwYXRjaCwgYW5kIGEgZml4IGZvciB0aGUg Im51bWJlciIgZ2FtZSdzIHRlc3QuCistLS0gYnNkZ2FtZXMtMi4xNy5vcmlnL251bWJlci9udW1i ZXIuYworKysrIGJzZGdhbWVzLTIuMTcvbnVtYmVyL251bWJlci5jCitAQCAtNzgsOSArNzgsOSBA QAorCisgdm9pZAljb252ZXJ0KGNoYXIgKik7CisgaW50CW1haW4oaW50LCBjaGFyICpbXSk7Cist aW50CW51bWJlcihjb25zdCBjaGFyICosIGludCk7Cistdm9pZAlwZnJhY3QoaW50KTsKKy1pbnQJ dW5pdChpbnQsIGNvbnN0IGNoYXIgKik7CisraW50CW51bWJlcihjb25zdCBjaGFyICosIGludCwg aW50ICopOworK3ZvaWQJcGZyYWN0KGludCwgaW50KTsKKytpbnQJdW5pdChpbnQsIGNvbnN0IGNo YXIgKiwgaW50ICopOworIHZvaWQJdXNhZ2Uodm9pZCkgX19hdHRyaWJ1dGVfXygoX19ub3JldHVy bl9fKSk7CisKKyBpbnQgbGZsYWc7CitAQCAtMTMxLDcgKzEzMSw3IEBACisgY29udmVydChsaW5l KQorCWNoYXIgKmxpbmU7CisgeworLQlpbnQgZmxlbiwgbGVuLCBydmFsOworKwlpbnQgZmxlbiwg bGVuLCBydmFsLCBzaW5ndWxhcjsKKwljaGFyICpwLCAqZnJhY3Rpb247CisKKwlmbGVuID0gMDsK K0BAIC0xNzQsNyArMTc0LDcgQEAKKwkJLS1sZW47CisJfQorCistCXJ2YWwgPSBsZW4gPiAwID8g dW5pdChsZW4sIGxpbmUpIDogMDsKKysJcnZhbCA9IGxlbiA+IDAgPyB1bml0KGxlbiwgbGluZSwg JnNpbmd1bGFyKSA6IDA7CisJaWYgKGZyYWN0aW9uICE9IE5VTEwgJiYgZmxlbiAhPSAwKQorCQlm b3IgKHAgPSBmcmFjdGlvbjsgKnAgIT0gJ1wwJzsgKytwKQorCQkJaWYgKCpwICE9ICcwJykgewor QEAgLTE4MiwxMCArMTgyLDEwIEBACisJCQkJCSh2b2lkKXByaW50ZigiJXNhbmQlcyIsCisJCQkJ CSAgICBsZmxhZyA/ICIgIiA6ICIiLAorCQkJCQkgICAgbGZsYWcgPyAiICIgOiAiXG4iKTsKKy0J CQkJaWYgKHVuaXQoZmxlbiwgZnJhY3Rpb24pKSB7CisrCQkJCWlmICh1bml0KGZsZW4sIGZyYWN0 aW9uLCAmc2luZ3VsYXIpKSB7CisJCQkJCWlmIChsZmxhZykKKwkJCQkJCSh2b2lkKXByaW50Zigi ICIpOworLQkJCQkJcGZyYWN0KGZsZW4pOworKwkJCQkJcGZyYWN0KGZsZW4sIHNpbmd1bGFyKTsK KwkJCQkJcnZhbCA9IDE7CisJCQkJfQorCQkJCWJyZWFrOworQEAgLTE5Nyw5ICsxOTcsMTAgQEAK KyB9CisKKyBpbnQKKy11bml0KGxlbiwgcCkKKyt1bml0KGxlbiwgcCwgc2luZ3VsYXIpCisJaW50 IGxlbjsKKwljb25zdCBjaGFyICpwOworKwlpbnQgKnNpbmd1bGFyOworIHsKKwlpbnQgb2ZmLCBy dmFsOworCitAQCAtMjA4LDcgKzIwOSw3IEBACisJCWlmIChsZW4gJSAzKSB7CisJCQlvZmYgPSBs ZW4gJSAzOworCQkJbGVuIC09IG9mZjsKKy0JCQlpZiAobnVtYmVyKHAsIG9mZikpIHsKKysJCQlp ZiAobnVtYmVyKHAsIG9mZiwgc2luZ3VsYXIpKSB7CisJCQkJcnZhbCA9IDE7CisJCQkJKHZvaWQp cHJpbnRmKCIgJXMlcyIsCisJCQkJICAgIG5hbWUzW2xlbiAvIDNdLCBsZmxhZyA/ICIgIiA6ICIu XG4iKTsKK0BAIC0yMTcsMTQgKzIxOCwxNiBAQAorCQl9CisJCWZvciAoOyBsZW4gPiAzOyBwICs9 IDMpIHsKKwkJCWxlbiAtPSAzOworLQkJCWlmIChudW1iZXIocCwgMykpIHsKKysJCQlpZiAobnVt YmVyKHAsIDMsIHNpbmd1bGFyKSkgeworCQkJCXJ2YWwgPSAxOworCQkJCSh2b2lkKXByaW50Zigi ICVzJXMiLAorCQkJCSAgICBuYW1lM1tsZW4gLyAzXSwgbGZsYWcgPyAiICIgOiAiLlxuIik7CisJ CQl9CisJCX0KKwl9CistCWlmIChudW1iZXIocCwgbGVuKSkgeworKwlpZiAobnVtYmVyKHAsIGxl biwgc2luZ3VsYXIpKSB7CisrCQlpZiAocnZhbCkKKysJCQkqc2luZ3VsYXIgPSAwOworCQlpZiAo IWxmbGFnKQorCQkJKHZvaWQpcHJpbnRmKCIuXG4iKTsKKwkJcnZhbCA9IDE7CitAQCAtMjMzLDE3 ICsyMzYsMjAgQEAKKyB9CisKKyBpbnQKKy1udW1iZXIocCwgbGVuKQorK251bWJlcihwLCBsZW4s IHNpbmd1bGFyKQorCWNvbnN0IGNoYXIgKnA7CisJaW50IGxlbjsKKysJaW50ICpzaW5ndWxhcjsK KyB7CisJaW50IHZhbCwgcnZhbDsKKworCXJ2YWwgPSAwOworKwkqc2luZ3VsYXIgPSAxOworCXN3 aXRjaCAobGVuKSB7CisJY2FzZSAzOgorCQlpZiAoKnAgIT0gJzAnKSB7CisJCQlydmFsID0gMTsK KysJCQkqc2luZ3VsYXIgPSAwOworCQkJKHZvaWQpcHJpbnRmKCIlcyBodW5kcmVkIiwgbmFtZTFb KnAgLSAnMCddKTsKKwkJfQorCQkrK3A7CitAQCAtMjYyLDMzICsyNjgsNDIgQEAKKwkJCX0KKwkJ CXJ2YWwgPSAxOworCQl9CisrCQlpZiAodmFsICE9IDEpCisrCQkJKnNpbmd1bGFyID0gMDsKKwkJ YnJlYWs7CisJY2FzZSAxOgorCQlpZiAoKnAgIT0gJzAnKSB7CisJCQlydmFsID0gMTsKKwkJCSh2 b2lkKXByaW50ZigiJXMiLCBuYW1lMVsqcCAtICcwJ10pOworCQl9CisrCQlpZiAoKnAgIT0gJzEn KQorKwkJCSpzaW5ndWxhciA9IDA7CisJfQorCXJldHVybiAocnZhbCk7CisgfQorCisgdm9pZAor LXBmcmFjdChsZW4pCisrcGZyYWN0KGxlbiwgc2luZ3VsYXIpCisJaW50IGxlbjsKKysJaW50IHNp bmd1bGFyOworIHsKKwlzdGF0aWMgY29uc3QgY2hhciAqY29uc3QgcHJlZltdID0geyAiIiwgInRl bi0iLCAiaHVuZHJlZC0iIH07CisKKwlzd2l0Y2gobGVuKSB7CisJY2FzZSAxOgorLQkJKHZvaWQp cHJpbnRmKCJ0ZW50aHMuXG4iKTsKKysJCSh2b2lkKXByaW50ZigidGVudGgiKTsKKwkJYnJlYWs7 CisJY2FzZSAyOgorLQkJKHZvaWQpcHJpbnRmKCJodW5kcmVkdGhzLlxuIik7CisrCQkodm9pZClw cmludGYoImh1bmRyZWR0aCIpOworCQlicmVhazsKKwlkZWZhdWx0OgorLQkJKHZvaWQpcHJpbnRm KCIlcyVzdGhzLlxuIiwgcHJlZltsZW4gJSAzXSwgbmFtZTNbbGVuIC8gM10pOworKwkJKHZvaWQp cHJpbnRmKCIlcyVzdGgiLCBwcmVmW2xlbiAlIDNdLCBuYW1lM1tsZW4gLyAzXSk7CisJCWJyZWFr OworCX0KKysJaWYgKCFzaW5ndWxhcikgeworKwkJcHJpbnRmKCJzIik7CisrCX0KKysJcHJpbnRm KCIuXG4iKTsKKyB9CisKKyB2b2lkCitkaWZmIC1OYXVyIGJzZC1nYW1lcy0yLjE3L3Rlc3RzL251 bWJlci4tMC4xIGJzZC1nYW1lcy1wYXRjaC90ZXN0cy9udW1iZXIuLTAuMQorLS0tIGJzZC1nYW1l cy0yLjE3L3Rlc3RzL251bWJlci4tMC4xCTE5NzAtMDEtMDEgMDc6MDA6MDAuMDAwMDAwMDAwICsw NzAwCisrKysgYnNkLWdhbWVzLXBhdGNoL3Rlc3RzL251bWJlci4tMC4xCTIwMjAtMDQtMTcgMTU6 MTQ6MjcuODMxMDk4MDg0ICswNzAwCitAQCAtMSwzICsxLDMgQEAKKyBtaW51cworIG9uZS4KKy10 ZW50aHMuCisrdGVudGguCitkaWZmIC1OYXVyIGJzZC1nYW1lcy0yLjE3L3Rlc3RzL251bWJlci4t MC4yIGJzZC1nYW1lcy1wYXRjaC90ZXN0cy9udW1iZXIuLTAuMgorLS0tIGJzZC1nYW1lcy0yLjE3 L3Rlc3RzL251bWJlci4tMC4yCTE5NzAtMDEtMDEgMDc6MDA6MDAuMDAwMDAwMDAwICswNzAwCisr KysgYnNkLWdhbWVzLXBhdGNoL3Rlc3RzL251bWJlci4tMC4yCTIwMjAtMDQtMTcgMTU6MjA6NDgu MTYyMzM2Mjc5ICswNzAwCitAQCAtMCwwICsxLDMgQEAKKyttaW51cworK3R3by4KKyt0ZW50aHMu CitkaWZmIC1OYXVyIGJzZC1nYW1lcy0yLjE3L3Rlc3RzL251bWJlci50ZXN0IGJzZC1nYW1lcy1w YXRjaC90ZXN0cy9udW1iZXIudGVzdAorLS0tIGJzZC1nYW1lcy0yLjE3L3Rlc3RzL251bWJlci50 ZXN0CTE5NzAtMDEtMDEgMDc6MDA6MDAuMDAwMDAwMDAwICswNzAwCisrKysgYnNkLWdhbWVzLXBh dGNoL3Rlc3RzL251bWJlci50ZXN0CTIwMjAtMDQtMTcgMTU6MjA6MjIuNzc0NjU0MTU1ICswNzAw CitAQCAtMzYsNiArMzYsOCBAQAorIHRlc3RubyAxCisgbnVtYmVyL251bWJlciAtLSAtMC4xID50 ZXN0Lm91dCAyPiYxIHx8IGZhaWx0ZXN0CisgY29tcGFyZSB0ZXN0Lm91dCB0ZXN0cy9udW1iZXIu LTAuMQorK251bWJlci9udW1iZXIgLS0gLTAuMiA+dGVzdC5vdXQgMj4mMSB8fCBmYWlsdGVzdAor K2NvbXBhcmUgdGVzdC5vdXQgdGVzdHMvbnVtYmVyLi0wLjIKKyBybSAtZiB0ZXN0Lm91dAorCisg dGVzdG5vIDIKZGlmZiAtLWdpdCBhL2dudS9wYWNrYWdlcy9wYXRjaGVzL2JzZC1nYW1lcy1wcmV2 ZW50LW5hbWUtY29sbGlzaW9ucy5wYXRjaCBiL2dudS9wYWNrYWdlcy9wYXRjaGVzL2JzZC1nYW1l cy1wcmV2ZW50LW5hbWUtY29sbGlzaW9ucy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAwMDAwMDAwMDAwLi44NTVjZTU5MTMxCi0tLSAvZGV2L251bGwKKysrIGIvZ251L3BhY2thZ2Vz L3BhdGNoZXMvYnNkLWdhbWVzLXByZXZlbnQtbmFtZS1jb2xsaXNpb25zLnBhdGNoCkBAIC0wLDAg KzEsMTMgQEAKK1RoZXJlIGlzIGFscmVhZHkgYSAiZmlzaCIgc2hlbGwuCitkaWZmIC11ciBic2Qt Z2FtZXMtMi4xNy5vcmlnL2Zpc2gvTWFrZWZyYWcgYnNkLWdhbWVzLTIuMTcvZmlzaC9NYWtlZnJh ZworLS0tIGJzZC1nYW1lcy0yLjE3Lm9yaWcvZmlzaC9NYWtlZnJhZwkxOTcwLTAxLTAxIDA3OjAw OjAxLjAwMDAwMDAwMCArMDcwMAorKysrIGJzZC1nYW1lcy0yLjE3L2Zpc2gvTWFrZWZyYWcJMjAy MC0wOC0wNiAxOToxODo0My4yMDQ0OTI4NDcgKzA3MDAKK0BAIC0zMSw3ICszMSw3IEBACisgZmlz aF9hbGw6CWZpc2gvZmlzaCBmaXNoL2Zpc2guaW5zdHIgZmlzaC9maXNoLjYKKworIGZpc2hfaW5z dGFsbDoJZmlzaF9hbGwKKy0JJChJTlNUQUxMX0JJTkFSWSkgZmlzaC9maXNoICQoSU5TVEFMTF9Q UkVGSVgpJChHQU1FU0RJUikvZmlzaAorKwkkKElOU1RBTExfQklOQVJZKSBmaXNoL2Zpc2ggJChJ TlNUQUxMX1BSRUZJWCkkKEdBTUVTRElSKS9maXNoLWdhbWUKKwkkKEhJREVfR0FNRSkgZmlzaAor CSQoSU5TVEFMTF9EQVRBKSBmaXNoL2Zpc2guaW5zdHIgJChJTlNUQUxMX1BSRUZJWCkkKEZJU0hf SU5TVFJGSUxFKQorCSQoSU5TVEFMTF9NQU5VQUwpIGZpc2gvZmlzaC42CmRpZmYgLS1naXQgYS9n bnUvcGFja2FnZXMvcGF0Y2hlcy9ic2QtZ2FtZXMtc3RkaW8uaC5wYXRjaCBiL2dudS9wYWNrYWdl cy9wYXRjaGVzL2JzZC1nYW1lcy1zdGRpby5oLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAuLjFjM2E0MDIwNDIKLS0tIC9kZXYvbnVsbAorKysgYi9nbnUvcGFja2Fn ZXMvcGF0Y2hlcy9ic2QtZ2FtZXMtc3RkaW8uaC5wYXRjaApAQCAtMCwwICsxLDE0IEBACitkaWZm IC1ydSBhL2luY2x1ZGUvc3RkaW8uaCBiL2luY2x1ZGUvc3RkaW8uaAorLS0tIGEvaW5jbHVkZS9z dGRpby5oCTIwMDAtMDgtMDQgMTA6MjQ6MzkuMDAwMDAwMDAwICsxMDAwCisrKysgYi9pbmNsdWRl L3N0ZGlvLmgJMjAwNS0wNi0xOCAxNDoyNjozNS4wMDAwMDAwMDAgKzEwMDAKK0BAIC0zNCw2ICsz NCwxMCBAQAorICNpbmNsdWRlIDxic2QtZ2FtZXMuaD4KKyAjaW5jbHVkZV9uZXh0IDxzdGRpby5o PgorCisrX19CRUdJTl9ERUNMUworKworICNpZm5kZWYgSEFWRV9mZ2V0bG4KKyBleHRlcm4gY2hh ciAqZmdldGxuKEZJTEUgKnN0cmVhbSwgc2l6ZV90ICpsZW4pOworICNlbmRpZgorKworK19fRU5E X0RFQ0xTCi0tIAoyLjI4LjAKCg== --b1_OO0IPwqkohqMyXTdCyL8kmkt4pE8mbExaV2lab2CU--