From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 03 Feb 2022 15:10:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: 53749@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.164390099218000 (code B ref -1); Thu, 03 Feb 2022 15:10:02 +0000 Received: (at submit) by debbugs.gnu.org; 3 Feb 2022 15:09:52 +0000 Received: from localhost ([127.0.0.1]:57397 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nFdk7-0004gF-99 for submit@debbugs.gnu.org; Thu, 03 Feb 2022 10:09:52 -0500 Received: from lists.gnu.org ([209.51.188.17]:35482) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nFdk5-0004g6-4w for submit@debbugs.gnu.org; Thu, 03 Feb 2022 10:09:50 -0500 Received: from eggs.gnu.org ([209.51.188.92]:45818) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nFdk2-0000BS-QL for bug-gnu-emacs@gnu.org; Thu, 03 Feb 2022 10:09:47 -0500 Received: from [2607:f8b0:4864:20::830] (port=43865 helo=mail-qt1-x830.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nFdjz-0004YM-Po for bug-gnu-emacs@gnu.org; Thu, 03 Feb 2022 10:09:46 -0500 Received: by mail-qt1-x830.google.com with SMTP id x5so2489138qtw.10 for ; Thu, 03 Feb 2022 07:09:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=FG58FpWqX5dqOaMqBqtIR1QCq9fb4hO9MKBH3GP0bR4=; b=NRzGguuk/ZyJH4rJ2/nfMQzmQ6YLYgukEOKO3yB1KxG90hF10tz19FsHIopKvDNzJY HnQriD4xkKk0HcEi76vX5Ao47bs/tywfMHAXP6poZgTpOeJ/39GlI1GRLG5U0TNClSuq ozw0RG03wLXtS227ruuSE3rBVigU2ffh2946+v+299WJQjGRaMoCmVFlK8mJbZcqO1bP HsLbAXw65hcKxcJXvjrIXyMQ/IxjIVXx6y1uaQJ9GI7uw+S10FViEt+BbwImvTURGZSg XaR1V4UgPJ0bP0BIIlhCQTOXvoL3g68aip5XAX3sC3suXOfCusDcCEmEg9m3gdX+/8Tv GhBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=FG58FpWqX5dqOaMqBqtIR1QCq9fb4hO9MKBH3GP0bR4=; b=8AD2lFppATIHuBTEdX0fojg0mxRRG1yr4Il+yQTx9D9BookCy+U7+Ak9yGbCrcYK06 G4iZdOB5skfVe8BV8USPv8E9urLv6HFpwgWcaHEcuEjk0GeEKH+nNS5CdGVEbZw3KMmz 0Mbs71vEi0E6nRE27mLfSWLfZYhjtW15+z71l4SlUlgv8fwQazm0VlNRZWtxV8RYHITT Ejp6F41eYeE0EQMco0KkdaT1xKh+Ufe6sVeUbtTHjKI8wUjQaqibg9LXZ01JfaKWs5G4 HGqBzNUWTJAldAqd/zXEtG2iBeoxppbKIU8KrR5oA4avyRuEVJzoxe3jIRtRZrNmg17m GqdQ== X-Gm-Message-State: AOAM532VugSzcTg6SA4IrTvrrq697Da1jvoim1aU9BISnwO8nkEQHzIq C640Q17/1nNkxoWxaUxRbKd2itCNlhgkbiLDcZU5RoUhVm+Z0g== X-Google-Smtp-Source: ABdhPJx2bRjGnxK/hgJ5j4BExtY9yptBRG/9Aku6LaZ3SPWtg204KzR39l48STM5GpgQTFQ9pUOJs8WLin35Qxsuo2E= X-Received: by 2002:a05:620a:2a07:: with SMTP id o7mr23177669qkp.274.1643900977699; Thu, 03 Feb 2022 07:09:37 -0800 (PST) MIME-Version: 1.0 From: David Fussner Date: Thu, 3 Feb 2022 15:09:22 +0000 Message-ID: Content-Type: multipart/mixed; boundary="000000000000d28fd905d71e8534" X-Host-Lookup-Failed: Reverse DNS lookup failed for 2607:f8b0:4864:20::830 (failed) Received-SPF: pass client-ip=2607:f8b0:4864:20::830; envelope-from=dfussner@googlemail.com; helo=mail-qt1-x830.google.com X-Spam_score_int: -12 X-Spam_score: -1.3 X-Spam_bar: - X-Spam_report: (-1.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, PDS_HP_HELO_NORDNS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: 0.2 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) --000000000000d28fd905d71e8534 Content-Type: multipart/alternative; boundary="000000000000d28fd805d71e8532" --000000000000d28fd805d71e8532 Content-Type: text/plain; charset="UTF-8" I've recently been trying to use xref commands with a tags table in a TeX repository, and many of the results are sub-optimal. This is a known issue -- within living memory there have been at least two discussions related to it on help-gnu-emacs: https://lists.gnu.org/archive/html/help-gnu-emacs/2018-06/msg00126.html https://lists.gnu.org/archive/html/help-gnu-emacs/2021-07/msg00436.html Neither discussion resulted in any code, at least not that I can find, and the issues mentioned there remain. For example, xref-find-definitions on, say, '\mycommand' returns No definitions found for: mycommand. (The absence of the escape char in the search string makes the search fail, as the tag name in the table will be '\mycommand'.) Similarly, any xref command on 'my:citekey' will only search by default for the half of the symbol under point, stopping at the colon. There are many other behaviors that are suboptimal, as well, so in the end I wrote a new xref backend for TeX buffers (cloning large portions of the default etags backend), and wondered whether it might be welcome in GNU Emacs. A few remarks: 1. The code should work as it stands both in the AUCTeX and the in-tree modes. The AUCTeX hooks I've included in the patch are provisional, as I would want to discuss with them how they would want to handle it, should the patch be accepted in some form. 2. Along the way I found some issues with how etags parses TeX files, issues which affect the usefulness of the xref commands, so I've made changes in etags.c as well. When running the test suite for etags the only diffs occurred in the TeX-related sections of the resulting tags file, and location information in those sections was good. 3. The patch as it stands enables all the changes by default to give what I judge to be the best out-of-the-box experience, but wiser heads may well have other ideas. 4. If it looks like the patch will make it into Emacs in some form, I'm going to need to assign copyright, so I'd appreciate help with getting that started. Thanks, David. --000000000000d28fd805d71e8532 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I've recently been trying to use xref commands with a = tags table in a
TeX repository, and many of the results are sub-optimal.= =C2=A0 This is a
known issue -- within living memory there have been at = least two
discussions related to it on help-gnu-emacs:

h= ttps://lists.gnu.org/archive/html/help-gnu-emacs/2018-06/msg00126.html<= br>https://lists.gnu.org/archive/html/help-gnu-emacs/2021-07/msg00= 436.html

Neither discussion resulted in any code, at least not t= hat I can find,
and the issues mentioned there remain.=C2=A0 For example= ,
xref-find-definitions on, say, '\mycommand' returns

No = definitions found for: mycommand.

(The absence of the escape char in= the search string makes the search
fail, as the tag name in the table w= ill be '\mycommand'.)

Similarly, any xref command on 'my= :citekey' will only search by default
for the half of the symbol und= er point, stopping at the colon.

There are many other behaviors that= are suboptimal, as well, so in the
end I wrote a new xref backend for T= eX buffers (cloning large portions
of the default etags backend), and wo= ndered whether it might be welcome
in GNU Emacs.

A few remarks:
1. The code should work as it stands both in the AUCTeX and the in-tr= ee
modes.=C2=A0 The AUCTeX hooks I've included in the patch are prov= isional, as
I would want to discuss with them how they would want to han= dle it,
should the patch be accepted in some form.

2. Along the w= ay I found some issues with how etags parses TeX files,
issues which aff= ect the usefulness of the xref commands, so I've made
changes in eta= gs.c as well.=C2=A0 When running the test suite for etags the
only diffs= occurred in the TeX-related sections of the resulting tags
file, and lo= cation information in those sections was good.

3. The patch as it st= ands enables all the changes by default to give
what I judge to be the b= est out-of-the-box experience, but wiser heads
may well have other ideas= .

4. If it looks like the patch will make it into Emacs in some form= , I'm
going to need to assign copyright, so I'd appreciate help = with getting
that started.

Thanks,

David.
--000000000000d28fd805d71e8532-- --000000000000d28fd905d71e8534 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Provide-an-xref-backend-for-TeX-buffers.patch" Content-Disposition: attachment; filename="0001-Provide-an-xref-backend-for-TeX-buffers.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kz7439kw0 RnJvbSA5ZjViMjU0N2ZlZjU1OTdmOWM0MWUxYzQ2Zjk5NzQ2MDk1YTA4MzRjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBGdXNzbmVyIDxkZnVzc25lckBnb29nbGVtYWlsLmNv bT4KRGF0ZTogV2VkLCAyIEZlYiAyMDIyIDEzOjMxOjUxICswMDAwClN1YmplY3Q6IFtQQVRDSF0g UHJvdmlkZSBhbiB4cmVmIGJhY2tlbmQgZm9yIFRlWCBidWZmZXJzCgoqIGxpYi1zcmMvZXRhZ3Mu YyAoVGVYX2NvbW1hbmRzKTogSW1wcm92ZSBwYXJzaW5nIG9mIGNvbW1hbmRzIGluIFRlWApidWZm ZXJzLgooVEVYX2RlZmVudik6IEV4cGFuZCBsaXN0IG9mIGNvbW1hbmRzIHRvIHRhZyBieSBkZWZh dWx0IGluIFRlWApidWZmZXJzLgooVGVYX2hlbHApOgoqIGRvYy9lbWFjcy9tYWludGFpbmluZy50 ZXhpIChUYWcgU3ludGF4KTogRG9jdW1lbnQgbmV3IHRhZ2dlZApjb21tYW5kcy4KCiogbGlzcC90 ZXh0bW9kZXMvdGV4LW1vZGUuZWwgKHRleC0teHJlZi1iYWNrZW5kKTogTmV3IGZ1bmN0aW9uIHRv IG5hbWUKeHJlZiBiYWNrZW5kLgoodGV4LWNvbW1vbi1pbml0aWFsaXphdGlvbik6IFNldCB1cCB4 cmVmIGJhY2tlbmQgZm9yIGluLXRyZWUgVGVYCm1vZGVzLgoodGV4LXNldC1hdWN0ZXgteHJlZi1i YWNrZW5kKTogTmV3IGZ1bmN0aW9uIHRvIGRvIHRoZSBzYW1lIGZvciBBVUNUZVgKbW9kZXMuCih4 cmVmLWJhY2tlbmQtaWRlbnRpZmllci1hdC1wb2ludCkKKHhyZWYtYmFja2VuZC1pZGVudGlmaWVy LWNvbXBsZXRpb24tdGFibGUpCih4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21wbGV0aW9uLWln bm9yZS1jYXNlKQooeHJlZi1iYWNrZW5kLWRlZmluaXRpb25zLCB4cmVmLWJhY2tlbmQtYXByb3Bv cykKKHhyZWYtYmFja2VuZC1yZWZlcmVuY2VzKTogTmV3IFRlWCBpbXBsZW1lbnRhdGlvbnMgb2Yg dGhlIGdlbmVyaWMgeHJlZgpiYWNrZW5kIGZ1bmN0aW9ucy4KKHRleC14cmVmLWFwcm9wb3MtcmVn ZXhwLCB0ZXgteHJlZi1yZWZlcmVuY2VzLWluLWRpcmVjdG9yeSk6IE5ldwpoZWxwZXIgZnVuY3Rp b25zIGZvciBiYWNrZW5kLgoodGV4LXRoaW5nYXRwdC1tb2Rlcy1saXN0KTogTmV3IHZhci4KKHRl eC10aGluZ2F0cHQtaXMtdGV4c3ltYm9sKTogTmV3IGRlZmN1c3RvbS4KKHRleC1zZXQtdGhpbmdh dHB0LXN5bWJvbCk6IE5ldyBjb21tYW5kIHRvIGFwcGx5IHZhbHVlIG9mIHByZXZpb3VzCmJ1ZmZl ci1sb2NhbGx5LgoodGV4LS1zeW1ib2wtb3ItdGV4c3ltYm9sKTogTmV3IGhlbHBlciBmdW5jdGlv biBmb3IgcHJldmlvdXMuCih0ZXgtdGhpbmdhdHB0LS1iZWdpbm5pbmctb2YtdGV4c3ltYm9sKQoo dGV4LXRoaW5nYXRwdC0tZW5kLW9mLXRleHN5bWJvbCk6IE5ldyBmdW5jdGlvbnMgdG8gZGVmaW5l IHRleHN5bWJvbAoidGhpbmciIGZvciAndGhpbmctYXQtcG9pbnQnLgoodGV4LXRoaW5nYXRwdC1z eW50YXgtdGFibGUsIHRleC1lc2NhcGUtY2hhcik6IE5ldyB2YXJzIHRvIGRvIHRoZQpzYW1lLgoo dGV4LS10aGluZy1hdC1wb2ludCk6IE5ldyBmdW5jdGlvbiB0byByZXR1cm4gdGV4c3ltYm9sCid0 aGluZy1hdC1wb2ludCcuCih0ZXgtdGhpbmdhdHB0LWluY2x1ZGUtZXNjYXBlLCB0ZXgteHJlZi10 cnktYWx0ZXJuYXRlLWZvcm1zKTogTmV3CmRlZmN1c3RvbXMgdG8gcmVmaW5lIGJlaGF2aW9yIG9m IHRoZSB4cmVmIGJhY2tlbmQuCih0ZXgtLWluY2x1ZGUtZXNjYXBlLXApOiBOZXcgZnVuY3Rpb24g dG8gZG8gdGhlIHNhbWUuCi0tLQogZG9jL2VtYWNzL21haW50YWluaW5nLnRleGkgfCAgIDkgKy0K IGxpYi1zcmMvZXRhZ3MuYyAgICAgICAgICAgIHwgIDgzICsrKysrKysrLS0KIGxpc3AvdGV4dG1v ZGVzL3RleC1tb2RlLmVsIHwgMzMxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysKIDMgZmlsZXMgY2hhbmdlZCwgNDExIGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL2RvYy9lbWFjcy9tYWludGFpbmluZy50ZXhpIGIvZG9jL2VtYWNzL21haW50 YWluaW5nLnRleGkKaW5kZXggZWRjYzYwNzVmNy4uMWRlNDM1MjQ2ZSAxMDA2NDQKLS0tIGEvZG9j L2VtYWNzL21haW50YWluaW5nLnRleGkKKysrIGIvZG9jL2VtYWNzL21haW50YWluaW5nLnRleGkK QEAgLTI1NjUsOCArMjU2NSwxMyBAQCBUYWcgU3ludGF4CiBAY29kZXtcc2VjdGlvbn0sIEBjb2Rl e1xzdWJzZWN0aW9ufSwgQGNvZGV7XHN1YnN1YnNlY3Rpb259LAogQGNvZGV7XGVxbm99LCBAY29k ZXtcbGFiZWx9LCBAY29kZXtccmVmfSwgQGNvZGV7XGNpdGV9LAogQGNvZGV7XGJpYml0ZW19LCBA Y29kZXtccGFydH0sIEBjb2Rle1xhcHBlbmRpeH0sIEBjb2Rle1xlbnRyeX0sCi1AY29kZXtcaW5k ZXh9LCBAY29kZXtcZGVmfSwgQGNvZGV7XG5ld2NvbW1hbmR9LCBAY29kZXtccmVuZXdjb21tYW5k fSwKLUBjb2Rle1xuZXdlbnZpcm9ubWVudH0gYW5kIEBjb2Rle1xyZW5ld2Vudmlyb25tZW50fSBh cmUgdGFncy4KK0Bjb2Rle1xpbmRleH0sIEBjb2Rle1xkZWZ9LCBAY29kZXtcZWRlZn0sIEBjb2Rl e1xnZGVmfSwgQGNvZGV7XHhkZWZ9LAorQGNvZGV7XG5ld2NvbW1hbmR9LCBAY29kZXtccmVuZXdj b21tYW5kfSwgQGNvZGV7XG5ld2Vudmlyb25tZW50fSwKK0Bjb2Rle1xyZW5ld2Vudmlyb25tZW50 fSwgQGNvZGV7XERlY2xhcmVSb2J1c3RDb21tYW5kfSwKK0Bjb2Rle1xuZXdyb2J1c3RjbWR9LCBA Y29kZXtccmVuZXdyb2J1c3RjbWR9LCBAY29kZXtcbGV0fSwKK0Bjb2Rle1xjc2RlZn0sIEBjb2Rl e1xjc2VkZWZ9LCBAY29kZXtcY3NnZGVmfSwgQGNvZGV7XGNzeGRlZn0sCitAY29kZXtcY3NsZXRj c30sIGFuZCBAY29kZXtcY3NsZXR9IGFyZSB0YWdzLiAgU28gdG9vIGFyZSB0aGUgYXJndW1lbnRz CitvZiBhbnkgc3RhcnJlZCB2YXJpYW50cyBvZiB0aGVzZSBjb21tYW5kcywgd2hlbiBzdWNoIHZh cmlhbnRzIGV4aXN0LgogCiBPdGhlciBjb21tYW5kcyBjYW4gbWFrZSB0YWdzIGFzIHdlbGwsIGlm IHlvdSBzcGVjaWZ5IHRoZW0gaW4gdGhlCiBlbnZpcm9ubWVudCB2YXJpYWJsZSBAZW52e1RFWFRB R1N9IGJlZm9yZSBpbnZva2luZyBAY29tbWFuZHtldGFnc30uICBUaGUKZGlmZiAtLWdpdCBhL2xp Yi1zcmMvZXRhZ3MuYyBiL2xpYi1zcmMvZXRhZ3MuYwppbmRleCBhYTViYzg4MzlkLi5lNTI2OWFh NDU2IDEwMDY0NAotLS0gYS9saWItc3JjL2V0YWdzLmMKKysrIGIvbGliLXNyYy9ldGFncy5jCkBA IC03OTMsOCArNzkzLDEyIEBAICNkZWZpbmUgU1RESU4gMHgxMDAxCQkvKiByZXR1cm5lZCBieSBn ZXRvcHRfbG9uZyBvbiAtLXBhcnNlLXN0ZGluICovCiAiSW4gTGFUZVggdGV4dCwgdGhlIGFyZ3Vt ZW50IG9mIGFueSBvZiB0aGUgY29tbWFuZHMgJ1xcY2hhcHRlcicsXG5cCiAnXFxzZWN0aW9uJywg J1xcc3Vic2VjdGlvbicsICdcXHN1YnN1YnNlY3Rpb24nLCAnXFxlcW5vJywgJ1xcbGFiZWwnLFxu XAogJ1xccmVmJywgJ1xcY2l0ZScsICdcXGJpYml0ZW0nLCAnXFxwYXJ0JywgJ1xcYXBwZW5kaXgn LCAnXFxlbnRyeScsXG5cCi0nXFxpbmRleCcsICdcXGRlZicsICdcXG5ld2NvbW1hbmQnLCAnXFxy ZW5ld2NvbW1hbmQnLFxuXAotJ1xcbmV3ZW52aXJvbm1lbnQnIG9yICdcXHJlbmV3ZW52aXJvbm1l bnQnIGlzIGEgdGFnLlxuXAorJ1xcaW5kZXgnLCAnXFxkZWYnLCAnXFxlZGVmJywgJ1xcZ2RlZics ICdcXHhkZWYnLCAnXFxuZXdjb21tYW5kJyxcblwKKydcXHJlbmV3Y29tbWFuZCcsICdcXG5ld2Vu dmlyb25tZW50JywgJ1xccmVuZXdlbnZpcm9ubWVudCcsXG5cCisnXFxEZWNsYXJlUm9idXN0Q29t bWFuZCwgJ1xcbmV3cm9idXN0Y21kJywgJ1xccmVuZXdyb2J1c3RjbWQnLFxuXAorJ1xcbGV0Jywg J1xcY3NkZWYnLCAnXFxjc2VkZWYnLCAnXFxjc2dkZWYnLCAnXFxjc3hkZWYnLCAnXFxjc2xldGNz JyxcblwKK29yICdcXGNzbGV0JyBpcyBhIHRhZy4gIFNvIGlzIHRoZSBhcmd1bWVudCBvZiBhbnkg b2YgdGhlIHN0YXJyZWRcblwKK3ZhcmlhbnRzIG9mIHRoZXNlIGNvbW1hbmRzLCB3aGVuIGEgc3Rh cnJlZCB2YXJpYW50IGV4aXN0cy5cblwKIFxuXAogT3RoZXIgY29tbWFuZHMgY2FuIGJlIHNwZWNp ZmllZCBieSBzZXR0aW5nIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZVxuXAogJ1RFWFRBR1MnIHRv IGEgY29sb24tc2VwYXJhdGVkIGxpc3QgbGlrZSwgZm9yIGV4YW1wbGUsXG5cCkBAIC01NjczLDEx ICs1Njc3LDE5IEBAIFNjaGVtZV9mdW5jdGlvbnMgKEZJTEUgKmluZikKIHN0YXRpYyBsaW5lYnVm ZmVyICpURVhfdG9rdGFiID0gTlVMTDsgLyogVGFibGUgd2l0aCB0YWcgdG9rZW5zICovCiAKIC8q IERlZmF1bHQgc2V0IG9mIGNvbnRyb2wgc2VxdWVuY2VzIHRvIHB1dCBpbnRvIFRFWF90b2t0YWIu Ci0gICBUaGUgdmFsdWUgb2YgZW52aXJvbm1lbnQgdmFyIFRFWFRBR1MgaXMgcHJlcGVuZGVkIHRv IHRoaXMuICAqLworICAgVGhlIHZhbHVlIG9mIGVudmlyb25tZW50IHZhciBURVhUQUdTIGlzIHBy ZXBlbmRlZCB0byB0aGlzLgorICAgKDIwMjEpIEFkZCB2YXJpYW50cyBvZiAnXGRlZicsIHNvbWUg YWRkaXRpb25hbCBMYVRlWCBjb21tYW5kcywKKyAgIGFuZCBjb21tb24gdmFyaWFudHMgZnJvbSB0 aGUgJ2V0b29sYm94JyBwYWNrYWdlLiAgQWxzbywgYWRkCisgICBzdGFycmVkIHZhcmlhbnRzIG9m IHRoZSBjb21tYW5kcyBpZiB0aGV5IGV4aXN0LiAgU3RhcnJlZAorICAgdmFyaWFudHMgbmVlZCB0 byBhcHBlYXIgYmVmb3JlIHRoZWlyIHVuc3RhcnJlZCB2ZXJzaW9ucy4gKi8KIHN0YXRpYyBjb25z dCBjaGFyICpURVhfZGVmZW52ID0gIlwKLTpjaGFwdGVyOnNlY3Rpb246c3Vic2VjdGlvbjpzdWJz dWJzZWN0aW9uOmVxbm86bGFiZWw6cmVmOmNpdGU6YmliaXRlbVwKLTpwYXJ0OmFwcGVuZGl4OmVu dHJ5OmluZGV4OmRlZlwKLTpuZXdjb21tYW5kOnJlbmV3Y29tbWFuZDpuZXdlbnZpcm9ubWVudDpy ZW5ld2Vudmlyb25tZW50IjsKKzpjaGFwdGVyKjpzZWN0aW9uKjpzdWJzZWN0aW9uKjpzdWJzdWJz ZWN0aW9uKjpwYXJ0KjpsYWJlbDpyZWZcCis6Y2hhcHRlcjpzZWN0aW9uOnN1YnNlY3Rpb246c3Vi c3Vic2VjdGlvbjplcW5vOmNpdGU6YmliaXRlbVwKKzpwYXJ0OmFwcGVuZGl4OmVudHJ5OmluZGV4 OmRlZjplZGVmOmdkZWY6eGRlZjpuZXdjb21tYW5kKjpuZXdjb21tYW5kXAorOnJlbmV3Y29tbWFu ZCo6cmVuZXdjb21tYW5kOm5ld2Vudmlyb25tZW50KjpuZXdlbnZpcm9ubWVudFwKKzpyZW5ld2Vu dmlyb25tZW50KjpyZW5ld2Vudmlyb25tZW50OkRlY2xhcmVSb2J1c3RDb21tYW5kKlwKKzpEZWNs YXJlUm9idXN0Q29tbWFuZDpyZW5ld3JvYnVzdGNtZCo6cmVuZXdyb2J1c3RjbWQ6bmV3cm9idXN0 Y21kKlwKKzpuZXdyb2J1c3RjbWQ6bGV0OmNzZGVmOmNzZWRlZjpjc2dkZWY6Y3N4ZGVmOmNzbGV0 Y3M6Y3NsZXQiOwogCiBzdGF0aWMgdm9pZCBURVhfZGVjb2RlX2VudiAoY29uc3QgY2hhciAqLCBj b25zdCBjaGFyICopOwogCkBAIC01NzM2LDE5ICs1NzQ4LDcwIEBAIFRlWF9jb21tYW5kcyAoRklM RSAqaW5mKQogCSAgICAgIHsKIAkJY2hhciAqcDsKIAkJcHRyZGlmZl90IG5hbWVsZW4sIGxpbmVs ZW47Ci0JCWJvb2wgb3BncnAgPSBmYWxzZTsKKwkJYm9vbCBvcGdycCA9IGZhbHNlLCBvbmVfZXNj ID0gZmFsc2U7CiAKIAkJY3AgPSBza2lwX3NwYWNlcyAoY3AgKyBrZXktPmxlbik7CisJCS8qIFNr aXAgdGhlIG9wdGlvbmFsIGFyZ3VtZW50cyB0byBjb21tYW5kcyBpbiB0aGUgdGFncyBsaXN0IHNv CisJCSAgIHRoYXQgdGhlc2UgYXJndW1lbnRzIGRvbid0IGVuZCB1cCBhcyB0aGUgbmFtZSBvZiB0 aGUgdGFnLgorCQkgICBUaGUgbmFtZSB3aWxsIGluc3RlYWQgY29tZSBmcm9tIHRoZSBhcmd1bWVu dCBpbiBjdXJseSBicmFjZXMKKwkJICAgdGhhdCBmb2xsb3dzIHRoZSBvcHRpb25hbCBvbmVzLiAg Ki8KKwkJaWYgKCpjcCA9PSAnWycgfHwgKmNwID09ICcoJykKKwkJICB7CisJCSAgICB3aGlsZSAo KmNwICE9IFRFWF9vcGdycCAmJiAqY3AgIT0gJ1wwJykKKwkJICAgICAgY3ArKzsKKwkJICB9CiAJ CWlmICgqY3AgPT0gVEVYX29wZ3JwKQogCQkgIHsKIAkJICAgIG9wZ3JwID0gdHJ1ZTsKIAkJICAg IGNwKys7CiAJCSAgfQorCQkvKiBKdW1waW5nIHRvIGEgVGVYIGNvbW1hbmQgZGVmaW5pdGlvbiBk b2Vzbid0IHdvcmsgaW4gYXQKKwkJICAgbGVhc3Qgc29tZSBvZiB0aGUgZWRpdG9ycyB0aGF0IHVz ZSBjdGFncy4gIENoYW5nZXMgaW4KKwkJICAgdGV4LW1vZGUuZWwgaW4gR05VIEVtYWNzIGFkZHJl c3MgdGhlc2UgaXNzdWVzIGZvciBldGFnczsKKwkJICAgdW5jb21tZW50IHRoZSBmb2xsb3dpbmcg Zml2ZSBsaW5lcyB0byBnZXQgYSBxdWljayAmIGRpcnR5CisJCSAgIGltcHJvdmVtZW50IGluIHBy b2dyYW1zIHVzaW5nIGN0YWdzIGFzIHdlbGwsIHRob3VnaCBzb21lCisJCSAgIHBhcnRzIG9mIHRo ZSBiZWhhdmlvciB3aWxsIHJlbWFpbiBzdWJvcHRpbWFsLiAgVGhlCisJCSAgIHVuZG9jdW1lbnRl ZCBjdGFncyBvcHRpb24gJy0tbm8tZHVwbGljYXRlcycgbWF5IGhlbHAuICAqLworCisJCS8qIGlm IChDVEFHUyAmJiAqY3AgPT0gVEVYX2VzYykgKi8KKwkJLyogICB7ICovCisJCS8qICAgICBjcCsr OyAqLworCQkvKiAgICAgb25lX2VzYyA9IHRydWU7ICovCisJCS8qICAgfSAqLworCisJCS8qIEFk ZCBvcHRpb25hbCBhcmd1bWVudCBicmFja2V0cyAnKCcgYW5kICdbJyBzbyB0aGF0IHRoZXNlCisJ CSAgIGFyZ3VtZW50cyBkb24ndCBhcHBlYXIgaW4gdGFnIG5hbWVzLiAgQWxzbyBhZGQgJz0nIGFz IGl0J3MKKwkJICAgcmVsYXRpb25hbCBpbiB0aGUgdmFzdCBtYWpvcml0eSBvZiBjYXNlcy4gICov CiAJCWZvciAocCA9IGNwOwotCQkgICAgICghY19pc3NwYWNlICgqcCkgJiYgKnAgIT0gJyMnICYm Ci0JCSAgICAgICpwICE9IFRFWF9vcGdycCAmJiAqcCAhPSBURVhfY2xncnApOworCQkgICAgICgh Y19pc3NwYWNlICgqcCkgJiYgKnAgIT0gJyMnICYmICpwICE9ICc9JyAmJgorCQkgICAgICAqcCAh PSAnWycgJiYgKnAgIT0gJygnICYmICpwICE9IFRFWF9vcGdycCAmJgorCQkgICAgICAqcCAhPSBU RVhfY2xncnApOwogCQkgICAgIHArKykKLQkJICBjb250aW51ZTsKKwkJICAvKiBBbGxvdyBvbmx5 IG9uZSBlc2NhcGUgY2hhciBpbiBhIHRhZyBuYW1lLCB3aGljaAorCQkgICAgIChwcmltYXJpbHkp IGVuYWJsZXMgdGFnZ2luZyBhIFRlWCBjb21tYW5kJ3MgZGlmZmVyZW50LAorCQkgICAgIHBvc3Np Ymx5IHRlbXBvcmFyeSwgJ1xsZXQnIGJpbmRpbmdzLiAgKi8KKwkJICBpZiAoKnAgPT0gVEVYX2Vz YykKKwkJICAgIHsKKwkJICAgICAgaWYgKCFvbmVfZXNjKQorCQkJeworCQkJICBvbmVfZXNjID0g dHJ1ZTsKKwkJCSAgY29udGludWU7CisJCQl9CisJCSAgICAgIGVsc2UKKwkJCWJyZWFrOworCQkg ICAgfQorCQkgIGVsc2UKKwkJICAgIGNvbnRpbnVlOworCQkvKiBSZS1zY2FuIHRvIGNhdGNoICho aWdobHkgdW51c3VhbCkgY2FzZXMgd2hlcmUgYQorCQkgICBjb21tYW5kIG5hbWUgaXMgb2YgdGhl IGZvcm0gJ1woJy4gICovCisJCWlmICgoKnAgPT0gJygnIHx8ICpwID09ICdbJykgJiYgKHAgLSBj cCkgPCAyKQorCQkgIHsKKwkJICAgIGZvciAocCA9IGNwOworCQkJICghY19pc3NwYWNlICgqcCkg JiYgKnAgIT0gJyMnICYmCisJCQkgICpwICE9IFRFWF9vcGdycCAmJiAqcCAhPSBURVhfY2xncnAp OworCQkJIHArKykKKwkJICAgICAgY29udGludWU7CisJCSAgfQogCQluYW1lbGVuID0gcCAtIGNw OwogCQlsaW5lbGVuID0gbGIubGVuOwogCQlpZiAoIW9wZ3JwIHx8ICpwID09IFRFWF9jbGdycCkK ZGlmZiAtLWdpdCBhL2xpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsIGIvbGlzcC90ZXh0bW9kZXMv dGV4LW1vZGUuZWwKaW5kZXggYWI5NDAzNmQwMS4uM2E3MTc4YzA1NSAxMDA2NDQKLS0tIGEvbGlz cC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwKKysrIGIvbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwK QEAgLTEyOTEsNiArMTI5MSw5IEBAIHRleC1jb21tb24taW5pdGlhbGl6YXRpb24KIAkgICAgICAo c3ludGF4LXByb3BlcnRpemUtcnVsZXMgbGF0ZXgtc3ludGF4LXByb3BlcnRpemUtcnVsZXMpKQog ICA7OyBUQUJzIGluIHZlcmJhdGltIGVudmlyb25tZW50cyBkb24ndCBkbyB3aGF0IHlvdSB0aGlu ay4KICAgKHNldHEtbG9jYWwgaW5kZW50LXRhYnMtbW9kZSBuaWwpCisgIDs7IFNldCB1cCB4cmVm IGJhY2tlbmQgaW4gVGVYIGJ1ZmZlcnMuCisgIChhZGQtaG9vayAneHJlZi1iYWNrZW5kLWZ1bmN0 aW9ucyAjJ3RleC0teHJlZi1iYWNrZW5kIG5pbCB0KQorICAodGV4LXNldC10aGluZ2F0cHQtc3lt Ym9sKQogICA7OyBPdGhlciB2YXJzIHRoYXQgc2hvdWxkIGJlIGJ1ZmZlci1sb2NhbC4KICAgKG1h a2UtbG9jYWwtdmFyaWFibGUgJ3RleC1jb21tYW5kKQogICAobWFrZS1sb2NhbC12YXJpYWJsZSAn dGV4LXN0YXJ0LW9mLWhlYWRlcikKQEAgLTM2NTksNiArMzY2MiwzMzQgQEAgdGV4LWNoa3RleAog ICAgICAgKHByb2Nlc3Mtc2VuZC1yZWdpb24gdGV4LWNoa3RleC0tcHJvY2VzcyAocG9pbnQtbWlu KSAocG9pbnQtbWF4KSkKICAgICAgIChwcm9jZXNzLXNlbmQtZW9mIHRleC1jaGt0ZXgtLXByb2Nl c3MpKSkpCiAKKwwKKzs7OyBYcmVmIGJhY2tlbmQKKworOzsgSGVyZSB3ZSBkZWZpbmUgYW4geHJl ZiBiYWNrZW5kIGZvciBUZVgsIGFkYXB0aW5nIHRoZSBkZWZhdWx0IGV0YWdzCis7OyBiYWNrZW5k IHNvIHRoYXQgdGhlIG1haW4geHJlZiB1c2VyIGNvbW1hbmRzIChpbmNsdWRpbmcKKzs7IGB4cmVm LWZpbmQtZGVmaW5pdGlvbnMnLCBgeHJlZi1maW5kLWFwcm9wb3MnLCBhbmQKKzs7IGB4cmVmLWZp bmQtcmVmZXJlbmNlcycgW29uIE0tLiwgQy1NLS4sIGFuZCBNLT8sIHJlc3BlY3RpdmVseV0pIHdv cmsKKzs7IGluIFRlWCBidWZmZXJzLiAgVGhpcyBtb3N0bHkgaW52b2x2ZXMgZGVmaW5pbmcgYSBu ZXcgVEhJTkcgZm9yCis7OyBgdGhpbmctYXQtcG9pbnQnICh0ZXhzeW1ib2wpLCB0aGVuIHN1YnN0 aXR1dGluZyB0aGF0IFRISU5HIGZvcgorOzsgYHN5bWJvbCcgaW4gVGVYIGJ1ZmZlcnMsIGF0IGxl YXN0IGJ5IChjb25maWd1cmFibGUpIGRlZmF1bHQuICBUaGUKKzs7IFRlWCBlc2NhcGUgY2hhcmFj dGVyIHdpbGwgYnkgZGVmYXVsdCBhcHBlYXIgaW4gdGhlIHJlc3VsdGluZyBzdHJpbmcKKzs7IG9u bHkgd2hlbiB0aGUgeHJlZiBjb21tYW5kIHVzZXMgc3RyaW5nIHNlYXJjaCBhbmQgbm90IHJlZ2V4 cAorOzsgc2VhcmNoLCB0aG91Z2ggdGhpcyB0b28gaXMgY29uZmlndXJhYmxlLiAgVGhlIG5ldyBU SElORyB0eXBlIGFsc28KKzs7IGltcHJvdmVzIHRoZSBhY2N1cmFjeSBvZiBvdGhlciBjb21tYW5k cyB0aGF0IHVzZSBgdGhpbmctYXQtcG9pbnQnCis7OyBpbiBUZVggYnVmZmVycywgbGlrZSBgcHJv amVjdC1maW5kLXJlZ2V4cCcuICBUT0RPOiBJbmNsdWRlIGNvbW1hbmRzCis7OyB0aGF0IGNhbGwg YGJvdW5kcy1vZi10aGluZy1hdC1wb2ludCcgKGZvciBleGFtcGxlCis7OyBgaXNlYXJjaC1mb3J3 YXJkLXRoaW5nLWF0LXBvaW50JykgaW4gdGhlIG1lY2hhbmlzbS4KKworKGRlZnZhciB0ZXgtdGhp bmdhdHB0LW1vZGVzLWxpc3QKKyAgJyh0ZXgtbW9kZSBkb2N0ZXgtbW9kZSBsYXRleC1tb2RlIHBs YWluLXRleC1tb2RlIHNsaXRleC1tb2RlKQorICAiTWFqb3IgbW9kZXMgd2hlcmUgYHRoaW5nLWF0 LXBvaW50JyBtYXkgdXNlIHRoZSBgdGV4c3ltYm9sJyB0eXBlLgorCitXaGVuIGEgYnVmZmVyJ3Mg YG1ham9yLW1vZGUnIGlzIGluIHRoaXMgbGlzdCwgYW5kIHdoZW4KK2B0ZXgtdGhpbmdhdHB0LWlz LXRleHN5bWJvbCcgaXMgdCAodGhlIGRlZmF1bHQpLCBhbnkgY29tbWFuZCBpbgordGhhdCBidWZm ZXIgdGhhdCBjYWxscyBgdGhpbmctYXQtcG9pbnQnIHdpdGggYSBgc3ltYm9sJyBhcmd1bWVudAor YWN0dWFsbHkgdXNlcyB0aGUgYHRleHN5bWJvbCcgYXJndW1lbnQsIGluc3RlYWQuIikKKworKGRl ZmN1c3RvbSB0ZXgtdGhpbmdhdHB0LWlzLXRleHN5bWJvbCB0CisgICJXaGVuIG5vbi1uaWwgcmVw bGFjZSBgc3ltYm9sJyBieSBgdGV4c3ltYm9sJyBmb3IgYHRoaW5nLWF0LXBvaW50Jy4KKworVGhp cyBhcHBsaWVzIG9ubHkgdG8gVGVYIGJ1ZmZlcnMuICBUaGUgYHRleHN5bWJvbCcgXCJ0aGluZ1wi Cittb2RpZmllcyB0aGUgc3RhbmRhcmQgYHN5bWJvbCcgZm9yIHVzZSBpbiBzdWNoIGJ1ZmZlcnMu CisKK1doZW4gbmlsLCByZXN0b3JlIHRoZSBkZWZhdWx0IGJlaGF2aW9yIG9mIGB0aGluZy1hdC1w b2ludCcgaW4gVGVYCitidWZmZXJzLgorCitDdXN0b20gd2lsbCBhdXRvbWF0aWNhbGx5IGFwcGx5 IGNoYW5nZXMgaW4gYWxsIFRlWCBidWZmZXJzLCBidXQKK2lmIHlvdSBzZXQgdGhlIHZhcmlhYmxl IG91dHNpZGUgb2YgQ3VzdG9tIGl0IHdvbid0IHRha2UgZWZmZWN0Cit1bnRpbCB5b3UgYXBwbHkg aXQgd2l0aCBcXFt0ZXgtc2V0LXRoaW5nYXRwdC1zeW1ib2xdLiAgV2l0aG91dCBhCitwcmVmaXgg YXJndW1lbnQgKFxcW3VuaXZlcnNhbC1hcmd1bWVudF0pIHRoaXMgYXBwbGllcyBvbmx5IHRvIHRo ZQorY3VycmVudCBidWZmZXIsIGJ1dCB3aXRoIG9uZSBpdCBhcHBsaWVzIHRvIGFsbCBUZVggYnVm ZmVycyBpbgorYGJ1ZmZlci1saXN0Jy4gIChUZVggYnVmZmVycyBhcmUgdGhvc2Ugd2hvc2UgYG1h am9yLW1vZGUnIGlzIGEKK21lbWJlciBvZiBgdGV4LXRoaW5nYXRwdC1tb2Rlcy1saXN0Jy4pIgor ICA6dHlwZSAnYm9vbGVhbgorICA6Z3JvdXAgJ3RleC1maWxlCisgIDppbml0aWFsaXplICMnY3Vz dG9tLWluaXRpYWxpemUtZGVmYXVsdAorICA6c2V0IChsYW1iZGEgKHZhciB2YWwpCisgICAgICAg ICAoc2V0LWRlZmF1bHQgdmFyIHZhbCkKKyAgICAgICAgICh0ZXgtc2V0LXRoaW5nYXRwdC1zeW1i b2wgdCkpCisgIDp2ZXJzaW9uICIyOS4xIikKKworKGRlZmN1c3RvbSB0ZXgtdGhpbmdhdHB0LWlu Y2x1ZGUtZXNjYXBlICcoeHJlZi1maW5kLWRlZmluaXRpb25zCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB4cmVmLWZpbmQtZGVmaW5pdGlvbnMtb3RoZXItd2luZG93 CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4cmVmLWZpbmQtZGVm aW5pdGlvbnMtb3RoZXItZnJhbWUpCisgICJJZiBub24tbmlsLCBpbmNsdWRlIGB0ZXgtZXNjYXBl LWNoYXInIGluIGB0aGluZy1hdC1wb2ludCcuCisKK1RoaXMgdmFyaWFibGUgb25seSB0YWtlcyBl ZmZlY3Qgd2hlbiBgdGV4LXRoaW5nYXRwdC1pcy10ZXhzeW1ib2wnCitpcyB0ICh0aGUgZGVmYXVs dCksIGNoYW5naW5nIHRoZSBhcmd1bWVudCBwYXNzZWQgdG8KK2B0aGluZy1hdC1wb2ludCcgZnJv bSBgc3ltYm9sJyB0byBgdGV4c3ltYm9sJy4gIFdoZW4gdGhhdCBpcyB0aGUKK2Nhc2UsIHRoZSB2 YWx1ZXMgb2YgdGhpcyB2YXJpYWJsZSBhY3QgYXMgZm9sbG93czoKKworV2hlbiB0LCBgdGhpbmct YXQtcG9pbnQnIHdpbGwgYWx3YXlzIGluY2x1ZGUgYQorYHRleC1lc2NhcGUtY2hhcicgKHVzdWFs bHkgYFxcJyksIHNob3VsZCBvbmUgYmUgcHJlc2VudCwgaW4gdGhlCitzdHJpbmcgaXQgcmV0dXJu cyBpbiBUZVggYnVmZmVycy4KKworV2hlbiBuaWwsIGB0aGluZy1hdC1wb2ludCcgd2lsbCBuZXZl ciBpbmNsdWRlIHRoZQorYHRleC1lc2NhcGUtY2hhcicgaW4gdGhlIHN0cmluZyBpdCByZXR1cm5z IGluIFRlWCBidWZmZXJzLgorCitPdGhlcndpc2UsIGl0J3MgYSBsaXN0IG9mIGNvbW1hbmRzIGZv ciB3aGljaCBgdGhpbmctYXQtcG9pbnQnCit3aWxsIGFsd2F5cyBpbmNsdWRlIHRoZSBgdGV4LWVz Y2FwZS1jaGFyJyBpbiB0aGUgc3RyaW5nIGl0CityZXR1cm5zLiAgVGhlIHRocmVlIHhyZWYgY29t bWFuZHMgbGlzdGVkIGJ5IGRlZmF1bHQgbWF5IGNlYXNlIHRvCitmdW5jdGlvbiBwcm9wZXJseSBp biBUZVggYnVmZmVycyBpZiBzZXQgdG8gbmlsLCBidXQgc2V0dGluZworYHRleC14cmVmLXRyeS1h bHRlcm5hdGUtZm9ybXMnIHRvIHQgd2lsbCByZWN0aWZ5IHRoYXQuIgorICA6dHlwZSAnKGNob2lj ZSAoY29uc3QgOnRhZyAiQWx3YXlzIGluY2x1ZGUgdGV4LWVzY2FwZS1jaGFyIiB0KQorICAgICAg ICAgICAgICAgICAoY29uc3QgOnRhZyAiTmV2ZXIgaW5jbHVkZSB0ZXgtZXNjYXBlLWNoYXIiIG5p bCkKKyAgICAgICAgICAgICAgICAgKHNldCA6dGFnICJJbmNsdWRlIHRleC1lc2NhcGUtY2hhciBm b3IgdGhlc2UgY29tbWFuZHMiCisJCSAgICAgIChyZXBlYXQgOmlubGluZSB0IChzeW1ib2wgOnRh ZyAiY29tbWFuZCIpKSkpCisgIDpncm91cCAndGV4LWZpbGUKKyAgOnZlcnNpb24gIjI5LjEiKQor CisoZGVmY3VzdG9tIHRleC14cmVmLXRyeS1hbHRlcm5hdGUtZm9ybXMgbmlsCisgICJOb24tbmls IG1lYW5zIGZpbmQgZGVmaW5pdGlvbnMgb2YgYWx0ZXJuYXRlIGZvcm1zIG9mIGNvbW1hbmRzLgor CitJZiBgeHJlZi1maW5kLWRlZmluaXRpb25zJyByZXR1cm5zIG5pbCBmb3IgdGhlIGN1cnJlbnQg Zm9ybSBvZgordGhlIFRlWCBjb21tYW5kIG5hbWUsIHRyeSB0aGUgYWx0ZXJuYXRpdmUgZm9ybSwg d2hpY2ggd2lsbCBoYXZlCit0aGUgYHRleC1lc2NhcGUtY2hhcicgKHVzdWFsbHkgYFxcJykgZWl0 aGVyIHN0cmlwcGVkIGZyb20gb3IKK3ByZXBlbmRlZCB0byB0aGUgY3VycmVudCBmb3JtLCBkZXBl bmRpbmcgb24gd2hldGhlciBvciBub3QgdGhlCitjdXJyZW50IGZvcm0gc3RhcnRzIHdpdGggdGhh dCBjaGFyYWN0ZXIuCisKK1RoaXMgbWF5IGJlIHBhcnRpY3VsYXJseSB1c2VmdWwgaW4gZG9jdW1l bnRzIHRoYXQgbWl4IGBcXGRlZicgYW5kCitgXFxjc2RlZicgd2hlbiBkZWZpbmluZyBjb21tYW5k cy4iCisgIDp0eXBlICdib29sZWFuCisgIDpncm91cCAndGV4LWZpbGUKKyAgOnZlcnNpb24gIjI5 LjEiKQorCisoZGVmdmFyIHRleC1lc2NhcGUtY2hhciA/XFwKKyAgIlRoZSBjdXJyZW50IFRlWCBl c2NhcGUgY2hhcmFjdGVyLgorCitUaGUgYGV0YWdzJyBwcm9ncmFtIG9ubHkgcmVjb2duaXplcyBg XFwnICg5MikgYW5kIGAhJyAoMzMpIGFzCitlc2NhcGUgY2hhcmFjdGVycyBpbiBUZVggZG9jdW1l bnRzLCBhbmQgaWYgaXQgZGV0ZWN0cyB0aGUgbGF0dGVyCitpdCBhbHNvIHVzZXMgYDw+JyBhcyB0 aGUgVGVYIGdyb3VwaW5nIGNvbnN0cnVjdCByYXRoZXIgdGhhbiBge30nLgorU2V0dGluZyB0aGlz IHZhcmlhYmxlIHRvIGFueXRoaW5nIG90aGVyIHRoYW4gYFxcJyBvciBgIScgd2lsbCBub3QKK2Jl IHVzZWZ1bCB3aXRob3V0IGNoYW5nZXMgdG8gYGV0YWdzJywgYXQgbGVhc3QgZm9yIGNvbW1hbmRz IHRoYXQKK3NlYXJjaCB0YWdzIHRhYmxlcywgc3VjaCBhcyBcXFt4cmVmLWZpbmQtZGVmaW5pdGlv bnNdIGFuZCBcCitcXFt4cmVmLWZpbmQtYXByb3Bvc10uIikKKworKGRlZnZhciB0ZXgtdGhpbmdh dHB0LXN5bnRheC10YWJsZQorICAobGV0KiAoKG9zdCAoaWYgKGJvdW5kcCAnVGVYLW1vZGUtc3lu dGF4LXRhYmxlKQorICAgICAgICAgICAgICAgICAgVGVYLW1vZGUtc3ludGF4LXRhYmxlCisgICAg ICAgICAgICAgICAgdGV4LW1vZGUtc3ludGF4LXRhYmxlKSkKKyAgICAgICAgIChzdCAobWFrZS1z eW50YXgtdGFibGUgb3N0KSkpCisgICAgKG1vZGlmeS1zeW50YXgtZW50cnkgPyMgIiciIHN0KQor ICAgIChtb2RpZnktc3ludGF4LWVudHJ5ID89ICInIiBzdCkKKyAgICAobW9kaWZ5LXN5bnRheC1l bnRyeSA/YCAiJyIgc3QpCisgICAgKG1vZGlmeS1zeW50YXgtZW50cnkgP1wiICInIiBzdCkKKyAg ICAobW9kaWZ5LXN5bnRheC1lbnRyeSA/JyAiJyIgc3QpCisgICAgc3QpCisgICJTeW50YXggdGFi bGUgZm9yIGRlbGltaXRpbmcgYHRoaW5nLWF0LXBvaW50JyBpbiBUZVggYnVmZmVycy4KKworV2hl biBgdGV4LXRoaW5nYXRwdC1pcy10ZXhzeW1ib2wnIGlzIHQsIHRoaXMgc3ludGF4IHRhYmxlIGhl bHBzCit0byBkZWZpbmUgd2hhdCBhIGB0ZXhzeW1ib2wnIGlzLiIpCisKKyhkZWZ1biB0ZXgtLXhy ZWYtYmFja2VuZCAoKSAndGV4KQorCis7OyBTZXR1cCBBVUNUZVggbW9kZXMuICAoU2hvdWxkIHRo aXMgYmUgaW4gQVVDVGVYIGl0c2VsZj8pCisKKyhhZGQtaG9vayAnVGVYLW1vZGUtaG9vayAjJ3Rl eC1zZXQtYXVjdGV4LXhyZWYtYmFja2VuZCkKKyhhZGQtaG9vayAnVGVYLW1vZGUtaG9vayAjJ3Rl eC1zZXQtdGhpbmdhdHB0LXN5bWJvbCkKKworKGRlZnVuIHRleC1zZXQtYXVjdGV4LXhyZWYtYmFj a2VuZCAoKQorICAoYWRkLWhvb2sgJ3hyZWYtYmFja2VuZC1mdW5jdGlvbnMgIyd0ZXgtLXhyZWYt YmFja2VuZCBuaWwgdCkpCisKKyhkZWNsYXJlLWZ1bmN0aW9uIHhyZWYtaXRlbS1sb2NhdGlvbiAi eHJlZiIpCisoZGVjbGFyZS1mdW5jdGlvbiB4cmVmLS1wcm9qZWN0LXJvb3QgInhyZWYiIChwcm9q ZWN0KSkKKyhkZWNsYXJlLWZ1bmN0aW9uIHhyZWYtLWNvbnZlcnQtaGl0cyAieHJlZiIgKGhpdHMg cmVnZXhwKSkKKyhkZWNsYXJlLWZ1bmN0aW9uIGFwcm9wb3MtcGFyc2UtcGF0dGVybiAiYXByb3Bv cyIgKHBhdHRlcm4pKQorKGRlY2xhcmUtZnVuY3Rpb24gc2VtYW50aWMtc3ltcmVmLXBlcmZvcm0t c2VhcmNoICJzZW1hbnRpYy9zeW1yZWYiKQorKGRlY2xhcmUtZnVuY3Rpb24gc2VtYW50aWMtc3lt cmVmLWluc3RhbnRpYXRlICJzZW1hbnRpYy9zeW1yZWYiKQorKGRlY2xhcmUtZnVuY3Rpb24gcHJv amVjdC1leHRlcm5hbC1yb290cyAicHJvamVjdCIpCisoZGVjbGFyZS1mdW5jdGlvbiBmaW5kLXRh Zy0tY29tcGxldGlvbi1pZ25vcmUtY2FzZSAiZXRhZ3MiKQorKGRlY2xhcmUtZnVuY3Rpb24gZXRh Z3MtLXhyZWYtZmluZC1kZWZpbml0aW9ucyAiZXRhZ3MiKQorKGRlY2xhcmUtZnVuY3Rpb24gZXRh Z3MtLXhyZWYtYXByb3Bvcy1hZGRpdGlvbmFsICJldGFncyIgKHJlZ2V4cCkpCisoZGVjbGFyZS1m dW5jdGlvbiBjbC1kZWxldGUtaWYgImNsLXNlcSIpCisoZGVmdmFyIGV0YWdzLXhyZWYtcHJlZmVy LWN1cnJlbnQtZmlsZSkKKworKGNsLWRlZm1ldGhvZCB4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1h dC1wb2ludCAoKF9iYWNrZW5kIChlcWwgJ3RleCkpKQorICAocmVxdWlyZSAnZXRhZ3MpCisgICh0 aGluZy1hdC1wb2ludCAnc3ltYm9sIHQpKQorCisoY2wtZGVmbWV0aG9kIHhyZWYtYmFja2VuZC1p ZGVudGlmaWVyLWNvbXBsZXRpb24tdGFibGUgKChfYmFja2VuZAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGVxbCAndGV4KSkpCisgICh0 YWdzLWxhenktY29tcGxldGlvbi10YWJsZSkpCisKKyhjbC1kZWZtZXRob2QgeHJlZi1iYWNrZW5k LWlkZW50aWZpZXItY29tcGxldGlvbi1pZ25vcmUtY2FzZSAoKF9iYWNrZW5kCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZXFs ICd0ZXgpKSkKKyAgKGZpbmQtdGFnLS1jb21wbGV0aW9uLWlnbm9yZS1jYXNlKSkKKworKGNsLWRl Zm1ldGhvZCB4cmVmLWJhY2tlbmQtZGVmaW5pdGlvbnMgKChfYmFja2VuZCAoZXFsICd0ZXgpKSBz eW1ib2wpCisgIChsZXQqICgoZmlsZSAoYW5kIGJ1ZmZlci1maWxlLW5hbWUgKGV4cGFuZC1maWxl LW5hbWUgYnVmZmVyLWZpbGUtbmFtZSkpKQorICAgICAgICAgKGFsdC1zeW0gKGlmIChjaGFyLWVx dWFsIHRleC1lc2NhcGUtY2hhciAoYXJlZiBzeW1ib2wgMCkpCisgICAgICAgICAgICAgICAgICAg ICAgKHN1YnN0cmluZyBzeW1ib2wgMSkKKyAgICAgICAgICAgICAgICAgICAgKGNvbmNhdCAoc3Ry aW5nIHRleC1lc2NhcGUtY2hhcikgc3ltYm9sKSkpCisgICAgICAgICAocHJlbGltLWRlZmluaXRp b25zIChldGFncy0teHJlZi1maW5kLWRlZmluaXRpb25zIHN5bWJvbCkpCisgICAgICAgICAoZGVm aW5pdGlvbnMgKGlmIChvciBwcmVsaW0tZGVmaW5pdGlvbnMKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIChub3QgdGV4LXhyZWYtdHJ5LWFsdGVybmF0ZS1mb3JtcykpCisgICAgICAgICAg ICAgICAgICAgICAgICAgIHByZWxpbS1kZWZpbml0aW9ucworICAgICAgICAgICAgICAgICAgICAg ICAgKGV0YWdzLS14cmVmLWZpbmQtZGVmaW5pdGlvbnMgYWx0LXN5bSkpKQorICAgICAgICAgc2Ft ZS1maWxlLWRlZmluaXRpb25zKQorICAgICh3aGVuIChhbmQgZXRhZ3MteHJlZi1wcmVmZXItY3Vy cmVudC1maWxlIGZpbGUpCisgICAgICAoc2V0cSBkZWZpbml0aW9ucworICAgICAgICAgICAgKGNs LWRlbGV0ZS1pZgorICAgICAgICAgICAgIChsYW1iZGEgKGRlZmluaXRpb24pCisgICAgICAgICAg ICAgICAod2hlbiAoZXF1YWwgZmlsZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICh4cmVm LWxvY2F0aW9uLWdyb3VwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh4cmVmLWl0ZW0t bG9jYXRpb24gZGVmaW5pdGlvbikpKQorICAgICAgICAgICAgICAgICAocHVzaCBkZWZpbml0aW9u IHNhbWUtZmlsZS1kZWZpbml0aW9ucykKKyAgICAgICAgICAgICAgICAgdCkpCisgICAgICAgICAg ICAgZGVmaW5pdGlvbnMpKQorICAgICAgKHNldHEgZGVmaW5pdGlvbnMgKG5jb25jIChucmV2ZXJz ZSBzYW1lLWZpbGUtZGVmaW5pdGlvbnMpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ZGVmaW5pdGlvbnMpKSkKKyAgICBkZWZpbml0aW9ucykpCisKKyhjbC1kZWZtZXRob2QgeHJlZi1i YWNrZW5kLWFwcm9wb3MgKChfYmFja2VuZCAoZXFsICd0ZXgpKSBwYXR0ZXJuKQorICAobGV0ICgo cmVnZXhwICh0ZXgteHJlZi1hcHJvcG9zLXJlZ2V4cCBwYXR0ZXJuKSkpCisgICAgKG5jb25jCisg ICAgIChvcgorICAgICAgKGV0YWdzLS14cmVmLWZpbmQtZGVmaW5pdGlvbnMgcmVnZXhwIHQpCisg ICAgICAoZXRhZ3MtLXhyZWYtZmluZC1kZWZpbml0aW9ucyBwYXR0ZXJuIHQpKQorICAgICAoZXRh Z3MtLXhyZWYtYXByb3Bvcy1hZGRpdGlvbmFsIHJlZ2V4cCkpKSkKKworKGNsLWRlZm1ldGhvZCB4 cmVmLWJhY2tlbmQtcmVmZXJlbmNlcyAoKF9iYWNrZW5kIChlcWwgJ3RleCkpIGlkZW50aWZpZXIp CisgIChtYXBjYW4KKyAgIChsYW1iZGEgKGRpcikKKyAgICAgKG1lc3NhZ2UgIlNlYXJjaGluZyAl cy4uLiIgZGlyKQorICAgICAocmVkaXNwbGF5KQorICAgICAocHJvZzEKKyAgICAgICAgICh0ZXgt eHJlZi1yZWZlcmVuY2VzLWluLWRpcmVjdG9yeSBpZGVudGlmaWVyIGRpcikKKyAgICAgICAobWVz c2FnZSAiU2VhcmNoaW5nICVzLi4uIGRvbmUiIGRpcikpKQorICAgKGxldCAoKHByIChwcm9qZWN0 LWN1cnJlbnQgdCkpKQorICAgICAoY29ucworICAgICAgKHhyZWYtLXByb2plY3Qtcm9vdCBwcikK KyAgICAgIChwcm9qZWN0LWV4dGVybmFsLXJvb3RzIHByKSkpKSkKKworKGRlZnVuIHRleC14cmVm LWFwcm9wb3MtcmVnZXhwIChwYXR0ZXJuKQorICAiUmV0dXJuIGEgcmVnZXhwIGZyb20gUEFUVEVS TiBzaW1pbGFyIHRvIGBhcHJvcG9zJy4KKworVW5saWtlIHRoZSBzdGFuZGFyZCB4cmVmIGZ1bmN0 aW9uLCBpZiBgcmVnZXhwLXF1b3RlJyByZXR1cm5zIGEKK3N0cmluZyBkaWZmZXJlbnQgZnJvbSB0 aGUgb3JpZ2luYWwgUEFUVEVSTiwgdGhlIFRlWCBmdW5jdGlvbgorcGFzc2VzIHRoYXQgbW9kaWZp ZWQgc3RyaW5nLCByYXRoZXIgdGhhbiBQQVRURVJOIGl0c2VsZiwgdG8KK2BhcHJvcG9zLXBhcnNl LXBhdHRlcm4nLiIKKyAgKGxldCAoKHJlIChyZWdleHAtcXVvdGUgcGF0dGVybikpKQorICAgIChh cHJvcG9zLXBhcnNlLXBhdHRlcm4KKyAgICAgKGlmIChzdHJpbmctZXF1YWwgcmUgcGF0dGVybikK KyAgICAgICAgIDs7IFNwbGl0IGludG8gd29yZHMKKyAgICAgICAgIChvciAoc3BsaXQtc3RyaW5n IHBhdHRlcm4gIlsgXHRdKyIgdCkKKyAgICAgICAgICAgICAodXNlci1lcnJvciAiTm8gd29yZCBs aXN0IGdpdmVuIikpCisgICAgICAgcmUpKSkpCisKKyhkZWZ1biB0ZXgteHJlZi1yZWZlcmVuY2Vz LWluLWRpcmVjdG9yeSAoc3ltYm9sIGRpcikKKyAgIkZpbmQgYWxsIHJlZmVyZW5jZXMgdG8gU1lN Qk9MIGluIGRpcmVjdG9yeSBESVIuCitSZXR1cm4gYSBsaXN0IG9mIHhyZWYgdmFsdWVzLgorCitU aGlzIGZ1bmN0aW9uIHVzZXMgdGhlIFNlbWFudGljIFN5bWJvbCBSZWZlcmVuY2UgQVBJLiAgSW4g VGVYCitidWZmZXJzIHRoZSB2YWx1ZSByZXR1cm5lZCB3aGVuIHBhc3NpbmcgU1lNQk9MIHRvIGBy ZWdleHAtcXVvdGUnCitiZWNvbWVzIHRoZSBkZWZhdWx0IHNlYXJjaCB0ZXJtLiAgSWYgdGhpcyBz eW1yZWYgaW5zdGFudGlhdGlvbgorZmluZHMgbm8gbWF0Y2hlcywgYSBzZWNvbmQgdHJpZXMgYWdh aW4gd2l0aCB0aGUgb3JpZ2luYWwgU1lNQk9MCithcyBzZWFyY2ggdGVybSwgaW5zdGVhZC4gIEJv dGggc2VhcmNoZXMgc2V0IGtleXdvcmQgYHNlYXJjaHR5cGU6JwordG8gXFw9J3JlZ2V4cCBpbnN0 ZWFkIG9mIHhyZWYncyBcXD0nc3ltYm9sLgorCitTZWUgYHNlbWFudGljLXN5bXJlZi10b29sLWFs aXN0JyBmb3IgZGV0YWlscyBvbiB3aGljaCB0b29scyBhcmUKK3VzZWQsIGFuZCB3aGVuLiAgU2Vl IGFsc28gYHhyZWYtcmVmZXJlbmNlcy1pbi1kaXJlY3RvcnknIGFuZAorY29tbWVudHMgaW4gaXRz IGNvZGUsIHRoZSBsYXR0ZXIgY29waWVkIGludG8gdGhlIFRlWAoraW1wbGVtZW50YXRpb24gZm9y IGNvbnZlbmllbmNlLiIKKyAgKGNsLWFzc2VydCAoZGlyZWN0b3J5LW5hbWUtcCBkaXIpKQorICAo cmVxdWlyZSAnc2VtYW50aWMvc3ltcmVmKQorICAoZGVmdmFyIHNlbWFudGljLXN5bXJlZi10b29s KQorICAoZGVmdmFyIGVkZS1taW5vci1tb2RlKQorCisgIDs7IFNvbWUgc3ltcmVmIGJhY2tlbmRz IHVzZSBgZWRlLXByb2plY3Qtcm9vdC1kaXJlY3RvcnknIGFzIHRoZSByb290CisgIDs7IGRpcmVj dG9yeSBmb3IgdGhlIHNlYXJjaCwgcmF0aGVyIHRoYW4gYGRlZmF1bHQtZGlyZWN0b3J5Jy4gU2lu Y2UKKyAgOzsgdGhlIGNhbGxlciBoYXMgc3BlY2lmaWVkIGBkaXInLCB3ZSBiaW5kIGBlZGUtbWlu b3ItbW9kZScgdG8gbmlsCisgIDs7IHRvIGZvcmNlIHRoZSBiYWNrZW5kIHRvIHVzZSBgZGVmYXVs dC1kaXJlY3RvcnknLgorICAobGV0KiAoKGVkZS1taW5vci1tb2RlIG5pbCkKKyAgICAgICAgIChk ZWZhdWx0LWRpcmVjdG9yeSBkaXIpCisgICAgICAgICA7OyBGSVhNRTogUmVtb3ZlIENTY29wZSBh bmQgR2xvYmFsIGZyb20gdGhlIHJlY29nbml6ZWQgdG9vbHM/CisgICAgICAgICA7OyBUaGUgY3Vy cmVudCBpbXBsZW1lbnRhdGlvbnMgaW50ZXJwcmV0IHRoZSBzeW1ib2wgc2VhcmNoIGFzCisgICAg ICAgICA7OyAiZmluZCBhbGwgY2FsbHMgdG8gdGhlIGdpdmVuIGZ1bmN0aW9uIiwgYnV0IG5vdCBm dW5jdGlvbgorICAgICAgICAgOzsgZGVmaW5pdGlvbi4gQW5kIHRoZXkgcmV0dXJuIG5vdGhpbmcg d2hlbiBwYXNzZWQgYSB2YXJpYWJsZQorICAgICAgICAgOzsgbmFtZSwgZXZlbiBhIGdsb2JhbCBv bmUuCisgICAgICAgICAoc2VtYW50aWMtc3ltcmVmLXRvb2wgJ2RldGVjdCkKKyAgICAgICAgIChj YXNlLWZvbGQtc2VhcmNoIG5pbCkKKyAgICAgICAgICh0ZXhzeW1ib2wgKHJlZ2V4cC1xdW90ZSBz eW1ib2wpKQorICAgICAgICAgKGluc3QgKHNlbWFudGljLXN5bXJlZi1pbnN0YW50aWF0ZSA6c2Vh cmNoZm9yIHRleHN5bWJvbAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICA6c2VhcmNodHlwZSAncmVnZXhwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIDpzZWFyY2hzY29wZSAnc3ViZGlycworICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICA6cmVzdWx0dHlwZSAnbGluZS1hbmQtdGV4dCkpCisgICAg ICAgICAoYWx0LWluc3QgKHNlbWFudGljLXN5bXJlZi1pbnN0YW50aWF0ZSA6c2VhcmNoZm9yIHN5 bWJvbAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOnNl YXJjaHR5cGUgJ3JlZ2V4cAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgOnNlYXJjaHNjb3BlICdzdWJkaXJzCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICA6cmVzdWx0dHlwZSAnbGluZS1hbmQtdGV4dCkpKQorICAg IChvcgorICAgICAoeHJlZi0tY29udmVydC1oaXRzIChzZW1hbnRpYy1zeW1yZWYtcGVyZm9ybS1z ZWFyY2ggaW5zdCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAoZm9ybWF0ICIlcyIgdGV4c3lt Ym9sKSkKKyAgICAgKHhyZWYtLWNvbnZlcnQtaGl0cyAoc2VtYW50aWMtc3ltcmVmLXBlcmZvcm0t c2VhcmNoIGFsdC1pbnN0KQorICAgICAgICAgICAgICAgICAgICAgICAgIChmb3JtYXQgIiVzIiBz eW1ib2wpKSkpKQorCisocHV0ICd0ZXhzeW1ib2wgJ2JlZ2lubmluZy1vcCAndGV4LXRoaW5nYXRw dC0tYmVnaW5uaW5nLW9mLXRleHN5bWJvbCkKKworKHB1dCAndGV4c3ltYm9sICdlbmQtb3AgJ3Rl eC10aGluZ2F0cHQtLWVuZC1vZi10ZXhzeW1ib2wpCisKKyhkZWZ1biB0ZXgtc2V0LXRoaW5nYXRw dC1zeW1ib2wgKCZvcHRpb25hbCBhbGwpCisgICJTZXQgbWVhbmluZyBvZiBgdGhpbmctYXQtcG9p bnQnIGBzeW1ib2wnIGluIChBTEw/KSBUZVggYnVmZmVycy4KKworV2hlbiBgdGV4LXRoaW5nYXRw dC1pcy10ZXhzeW1ib2wnIGlzIHQsIHNldCBgdGhpbmctYXQtcG9pbnQnIHRvCit1c2UgdGhlIGB0 ZXhzeW1ib2wnIFwidGhpbmdcIiBpbnN0ZWFkIG9mIGBzeW1ib2wnLCBvdGhlcndpc2UKK21haW50 YWluIG9yIHJlc3RvcmUgdGhlIGRlZmF1bHQuICBXaXRob3V0IGFuIG9wdGlvbmFsIEFMTCBtYWtl CitjaGFuZ2VzIG9ubHkgaW4gY3VycmVudCBidWZmZXIsIHdpdGggQUxMIG1ha2UgY2hhbmdlcyBp biBhbGwgVGVYCitidWZmZXJzIGluIGBidWZmZXItbGlzdCcuIgorICAoaW50ZXJhY3RpdmUgIlAi KQorICAocmVxdWlyZSAndGhpbmdhdHB0KQorICAoaWYgYWxsCisgICAgICAoZG9saXN0IChidWYg KGJ1ZmZlci1saXN0KSkKKyAgICAgICAgKHdpdGgtY3VycmVudC1idWZmZXIgYnVmCisgICAgICAg ICAgKHRleC0tc3ltYm9sLW9yLXRleHN5bWJvbCkpKQorICAgICh0ZXgtLXN5bWJvbC1vci10ZXhz eW1ib2wpKSkKKworKGRlZnVuIHRleC0tc3ltYm9sLW9yLXRleHN5bWJvbCAoKQorICAod2hlbiAo bWVtcSBtYWpvci1tb2RlIHRleC10aGluZ2F0cHQtbW9kZXMtbGlzdCkKKyAgICAoaWYgdGV4LXRo aW5nYXRwdC1pcy10ZXhzeW1ib2wKKyAgICAgICAgKHNldHEtbG9jYWwgdGhpbmctYXQtcG9pbnQt cHJvdmlkZXItYWxpc3QKKyAgICAgICAgICAgICAgICAgICAgKGFkZC10by1saXN0ICd0aGluZy1h dC1wb2ludC1wcm92aWRlci1hbGlzdAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICcoc3lt Ym9sIC4gdGV4LS10aGluZy1hdC1wb2ludCkpKQorICAgICAgKHNldHEtbG9jYWwgdGhpbmctYXQt cG9pbnQtcHJvdmlkZXItYWxpc3QKKyAgICAgICAgICAgICAgICAgIChkZWxldGUgJyhzeW1ib2wg LiB0ZXgtLXRoaW5nLWF0LXBvaW50KQorICAgICAgICAgICAgICAgICAgICAgICAgICB0aGluZy1h dC1wb2ludC1wcm92aWRlci1hbGlzdCkpKSkpCisKKyhkZWZ1biB0ZXgtLXRoaW5nLWF0LXBvaW50 ICgpCisgICJQYXNzIGB0aGluZycgdHlwZSBgdGV4c3ltYm9sJyB0byBgYm91bmRzLW9mLXRoaW5n LWF0LXBvaW50Jy4KKworV2hlbiBgdGV4LXRoaW5nYXRwdC1pcy10ZXhzeW1ib2wnIGlzIHQsIGNh bGxzIGluIFRlWCBidWZmZXJzIHRvCitgdGhpbmctYXQtcG9pbnQnIHdpdGggYXJndW1lbnQgYHN5 bWJvbCcgd2lsbCB1c2UgdGhpcyBmdW5jdGlvbi4iCisgIChsZXQqICgoc3l0YWIgKG1ha2Utc3lu dGF4LXRhYmxlIHRleC10aGluZ2F0cHQtc3ludGF4LXRhYmxlKSkKKyAgICAgICAgIChib3VuZHMg KHdpdGgtc3ludGF4LXRhYmxlIHN5dGFiCisgICAgICAgICAgICAgICAgICAgKHVubGVzcyAoY2hh ci1lcXVhbCB0ZXgtZXNjYXBlLWNoYXIgP1xcKQorICAgICAgICAgICAgICAgICAgICAgKG1vZGlm eS1zeW50YXgtZW50cnkgP1xcICJfIikKKyAgICAgICAgICAgICAgICAgICAgIChtb2RpZnktc3lu dGF4LWVudHJ5IHRleC1lc2NhcGUtY2hhciAiXFwiKQorICAgICAgICAgICAgICAgICAgICAgKG1v ZGlmeS1zeW50YXgtZW50cnkgPzwgIig+IikKKyAgICAgICAgICAgICAgICAgICAgIChtb2RpZnkt c3ludGF4LWVudHJ5ID8+ICIpPCIpKQorICAgICAgICAgICAgICAgICAgIChib3VuZHMtb2YtdGhp bmctYXQtcG9pbnQgJ3RleHN5bWJvbCkpKSkKKyAgICAod2hlbiBib3VuZHMKKyAgICAgIChidWZm ZXItc3Vic3RyaW5nLW5vLXByb3BlcnRpZXMgKGNhciBib3VuZHMpIChjZHIgYm91bmRzKSkpKSkK KworKGRlZnVuIHRleC0taW5jbHVkZS1lc2NhcGUtcCAoY29tbWFuZCkKKyAgKG9yIChlcSB0ZXgt dGhpbmdhdHB0LWluY2x1ZGUtZXNjYXBlIHQpCisgICAgICAobWVtcSBjb21tYW5kIHRleC10aGlu Z2F0cHQtaW5jbHVkZS1lc2NhcGUpKSkKKworKGRlZnVuIHRleC10aGluZ2F0cHQtLWJlZ2lubmlu Zy1vZi10ZXhzeW1ib2wgKCkKKyAgIk1vdmUgcG9pbnQgdG8gdGhlIGJlZ2lubmluZyBvZiB0aGUg Y3VycmVudCBUZVggc3ltYm9sLiIKKyAgKGFuZCAocmUtc2VhcmNoLWJhY2t3YXJkICJcXChbXVso KV1cXHxcXChcXHN3XFx8XFxzX1xcfFxccy5cXCkrXFwpIikKKyAgICAgICAoc2tpcC1zeW50YXgt YmFja3dhcmQgIndfLiIpCisgICAgICAgKHdoZW4gKHRleC0taW5jbHVkZS1lc2NhcGUtcCB0aGlz LWNvbW1hbmQpCisgICAgICAgICAoc2tpcC1zeW50YXgtYmFja3dhcmQgIlxcLyIpKSkpCisKKyhk ZWZ1biB0ZXgtdGhpbmdhdHB0LS1lbmQtb2YtdGV4c3ltYm9sICgpCisgICJNb3ZlIHBvaW50IHRv IHRoZSBlbmQgb2YgdGhlIGN1cnJlbnQgVGVYIHN5bWJvbC4iCisgIChhbmQgKHJlLXNlYXJjaC1m b3J3YXJkICJcXChbXVsoKV1cXHxcXChcXHN3XFx8XFxzX1xcfFxccy5cXCkrXFwpIikKKyAgICAg ICAoc2tpcC1zeW50YXgtZm9yd2FyZCAid18uIikpKQorCiAobWFrZS1vYnNvbGV0ZS12YXJpYWJs ZSAndGV4LW1vZGUtbG9hZC1ob29rCiAgICAgICAgICAgICAgICAgICAgICAgICAidXNlIGB3aXRo LWV2YWwtYWZ0ZXItbG9hZCcgaW5zdGVhZC4iICIyOC4xIikKIChydW4taG9va3MgJ3RleC1tb2Rl LWxvYWQtaG9vaykKLS0gCjIuMTcuNgoK --000000000000d28fd905d71e8534-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 21 Feb 2022 02:12:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: David Fussner , 53749@debbugs.gnu.org Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.16454095037610 (code B ref 53749); Mon, 21 Feb 2022 02:12:01 +0000 Received: (at 53749) by debbugs.gnu.org; 21 Feb 2022 02:11:43 +0000 Received: from localhost ([127.0.0.1]:34310 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nLyAw-0001yg-P5 for submit@debbugs.gnu.org; Sun, 20 Feb 2022 21:11:42 -0500 Received: from mail-wm1-f48.google.com ([209.85.128.48]:43888) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nLyAv-0001yU-CS for 53749@debbugs.gnu.org; Sun, 20 Feb 2022 21:11:41 -0500 Received: by mail-wm1-f48.google.com with SMTP id x3-20020a05600c21c300b0037c01ad715bso10261130wmj.2 for <53749@debbugs.gnu.org>; Sun, 20 Feb 2022 18:11:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:message-id:date:mime-version:user-agent:subject :content-language:to:references:from:in-reply-to :content-transfer-encoding; bh=DgZf9jHyWjNoewxfGO8CZz72EJPzszfr9FsbqI51VII=; b=p0lljqaf8qHHTc8ZZ/cdlZnFAfcQyO30O4whgzKjVUxZddYuxIpd6kOgXPLVLYAH0m MojvrQ6eY8vTp+NgCqbZNTRGaY5w1t+Wvox9/XC8YINCdx3QNfDxYx4BNwPpArMohNXr guAQ+QWOE6pp4fVasRWB9TRaBw2E+SVZbUL7WVZOgaCI0WgJXeqRlgFGHEWEKtNGeaNj oJ2T3Anj7BFz/eE4RmuPjbai6aGl2ld6stF9gGkiXCcoNeXkF7dBZYkkXutnzrdxw6M2 K/90uH/0fVAFogRN1fzTfJyhzQj8/fO4+AIM66XGHFzWwgJJl5NW6chZEQ910dEBT9dy 5nDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:message-id:date:mime-version:user-agent :subject:content-language:to:references:from:in-reply-to :content-transfer-encoding; bh=DgZf9jHyWjNoewxfGO8CZz72EJPzszfr9FsbqI51VII=; b=CgWWTnveP6tzzTkHSNK9gsRbuccn/NY37Fh3zKvy6XnxVCHYBVIdysMOVA7SWIqF8l 9fN4QRPYmYoRpVqfN/vHuC6FKDEwFDoRu56gbcn2uLcctr2LCMKjHUIEF/ZriK8mgbXV jh/eP4pxtifxzQkE5ZuDdE6iJv9785juPDlHwnWyihzymVU3UANN3cVNqo2rlVRy9lEk wCG88KzzgJoFpVqo0VQrAimByS/kngXju4KVUBJQG40vBdQQjrX3uj5XnzxAfhZONhLA CWC/Xaa3Tash2KhxScCFg0FwI4agjevgPgYhMoBJGftJjZhnl78VdiLQ1XqRxDcgZkOP cvTA== X-Gm-Message-State: AOAM533U+zaX4OBGgcARIZFysbmLD9lV+PGYXprsyoWnlbEc/D0HU523 zvLZ1LWB2Gce7LJL0hSECIA= X-Google-Smtp-Source: ABdhPJySwqqMKFcr7Ef26Hsvk2kt6+/ilR/5UYkTs+o2U/d6HKl9mIqDY8j/r+oWHolYIMVJnzK3sQ== X-Received: by 2002:a05:600c:1d28:b0:37c:a9d:d39f with SMTP id l40-20020a05600c1d2800b0037c0a9dd39fmr15930073wms.172.1645409495378; Sun, 20 Feb 2022 18:11:35 -0800 (PST) Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id e4sm28225666wrp.25.2022.02.20.18.11.34 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 20 Feb 2022 18:11:35 -0800 (PST) Message-ID: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> Date: Mon, 21 Feb 2022 04:11:33 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Content-Language: en-US References: From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.5 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.5 (/) Hi! Let us first discuss whether we could make do without an additional Xref backend. Just to make sure. On 03.02.2022 17:09, David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: > Similarly, any xref command on 'my:citekey' will only search by default > for the half of the symbol under point, stopping at the colon. etags's implementation of 'xref-backend-identifier-at-point' calls 'find-tag--default', which consults 'find-tag-default-function' and (get major-mode 'find-tag-default-function). So if your main goal was to alter which string gets searched for (based on text around point), you can define a function which returns the necessary string (as you did in the patch) and then either set 'find-tag-default-function' to that function, or put it on the 'find-tag-default-function' property for the respective major mode functions. > There are many other behaviors that are suboptimal, as well, so in the > end I wrote a new xref backend for TeX buffers (cloning large portions > of the default etags backend), and wondered whether it might be welcome > in GNU Emacs. Could you point out the other changes which were required? From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 21 Feb 2022 09:49:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.164543693016501 (code B ref 53749); Mon, 21 Feb 2022 09:49:02 +0000 Received: (at 53749) by debbugs.gnu.org; 21 Feb 2022 09:48:50 +0000 Received: from localhost ([127.0.0.1]:35082 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nM5JK-0004I5-5o for submit@debbugs.gnu.org; Mon, 21 Feb 2022 04:48:50 -0500 Received: from mail-qv1-f53.google.com ([209.85.219.53]:46035) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nM5JI-0004Hl-Be for 53749@debbugs.gnu.org; Mon, 21 Feb 2022 04:48:48 -0500 Received: by mail-qv1-f53.google.com with SMTP id c14so30666733qvl.12 for <53749@debbugs.gnu.org>; Mon, 21 Feb 2022 01:48:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=I2hDIlzhuQa9wnxxeda3KakJlY/Clx5R1MusA5yU4R4=; b=MWBIoAm3edGHHgO/IgOxHeU1eQyGX4M7BGzcjwD4YYhxb/LjNt5LWSFmDUk69Y8sQJ EeFTZ+auiSzU7X1SHF70OVSpah9f+TKwfjUKd/ASgse3sVxMJDWTW6FIHZpZhFyGYxCD 0nijgeL8gkLWiCRd36mMUKEEWN4LeGUElInEn/4At0/ulugXl8hU46Yxjt+nhtrhW5A+ xufMDazRVgboYbtyRYzgnfbCLgpyk60C2IhRE2ed+x5Vr+oxwMo6/RP5nkgeLpPQtg79 9cXKMzLubcG9Wyu66lVPKOH36Me9QEdQnPt4PMOxPkWDbc2Ak52KCy+1Qu+8YMizHt+6 CSXw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=I2hDIlzhuQa9wnxxeda3KakJlY/Clx5R1MusA5yU4R4=; b=WJXaVtdE8syCv6zjdu2TmFxo43fbcJlVlBsGPBWLIBndhHlhRxd7GKihSDsgDJd/N/ WNpsdnqR9WDAtnE6AXcfG82q/APkx4O5QFtpFdsTdtKChaui6sjgqhFZ/valFCrj5TB1 IGn4FWjRkTic40tI9vFaUYmepa4+lROAnAsCE2XRwVZYzLtYrg4bC5e6xgOCT+XJ7Bzl KZZqw7OOZ5VchG1gMSBUQq0k6pJ8Bji9Mg8vxEGFw1VCr9FjjzCwSaaS4oHPrWMRklmV TnJMIXggUA6qe6c2zmL+phXYwya87KZdTHSYUseY6Mkv+/CPnyd2cNvQLy0DJizqa2co hgvw== X-Gm-Message-State: AOAM532PSM/HSM1NIfmLGmUWNnKAZKWA1n3r6mn0jrl7buJWmM3qWlEh vn2csasdGxJfqUPRIEvuv81gtiZiHyx6XDOPOx0YtyRRL5m+Zg== X-Google-Smtp-Source: ABdhPJy05b+mq+hgv21tkaFsmTC7wxpcWy3TGrDZtbJ3TXr2hgPaWgCIg6dV/via3YEQ3VM0aW4mqLMJ7iHW6SE5RuE= X-Received: by 2002:a05:622a:1a16:b0:2de:37ad:25ef with SMTP id f22-20020a05622a1a1600b002de37ad25efmr1047861qtb.131.1645436922612; Mon, 21 Feb 2022 01:48:42 -0800 (PST) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> In-Reply-To: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> From: David Fussner Date: Mon, 21 Feb 2022 09:48:30 +0000 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) (Resending to include the mailing list -- sorry!) Hi Dmitry, Many thanks for looking into this. > > So if your main goal was to alter which string gets searched for (based > on text around point), you can define a function which returns the > necessary string (as you did in the patch) and then either set > 'find-tag-default-function' to that function, or put it on the > 'find-tag-default-function' property for the respective major mode > functions. > > > There are many other behaviors that are suboptimal, as well, so in the > > end I wrote a new xref backend for TeX buffers (cloning large portions > > of the default etags backend), and wondered whether it might be welcome > > in GNU Emacs. > > Could you point out the other changes which were required? As you've noticed, I tried at first to get by without a new backend, but I ran into a few issues that I couldn't solve that way, hence the current patch. A couple of examples: 1. TeX is very generous with the characters it includes in its symbols, so what looks like a standard symbol to it can look like a regexp either to grep or to emacs, so I needed to changes things in xref-find-apropos and in xref-find-references to take this into account. (See tex-xref-apropos-regexp and tex-xref-references-in-directory.) Sometimes using a search string that had been put through regexp-quote was wrong, as when a user provided their own regexp in the minibuffer, so in both those cases I provided fallbacks to a different search in case the default search came up empty. I couldn't see how to do this without a new backend. 2. A package like biblatex creates what amounts to a separate namespace using the \newbibmacro mechanism, so pretty much every biblatex style has both a \cite command and a cite bibmacro, and I wanted to allow emacs to differentiate between them when using xref-find-definitions. Because users of the etoolbox package (like biblatex) may well mix commands with and without the escape char "\", I also provided a variable to allow users to find when a \command is called using \csuse{command} instead. Again, this required a fallback search (see xref-backend-definitions) which I couldn't see how to provide without a new backend. Does this make any sense? I can give more specific examples if you like -- try running xref-find-references on a TeX command with "@" in it. (If memory serves, that behaved badly here on an unpatched emacs, but maybe I'm misremembering.) David. On Mon, 21 Feb 2022 at 02:11, Dmitry Gutov wrote: > > Hi! > > Let us first discuss whether we could make do without an additional Xref > backend. Just to make sure. > > On 03.02.2022 17:09, David Fussner via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: > > Similarly, any xref command on 'my:citekey' will only search by default > > for the half of the symbol under point, stopping at the colon. > > etags's implementation of 'xref-backend-identifier-at-point' calls > 'find-tag--default', which consults 'find-tag-default-function' and > (get major-mode 'find-tag-default-function). > > So if your main goal was to alter which string gets searched for (based > on text around point), you can define a function which returns the > necessary string (as you did in the patch) and then either set > 'find-tag-default-function' to that function, or put it on the > 'find-tag-default-function' property for the respective major mode > functions. > > > There are many other behaviors that are suboptimal, as well, so in the > > end I wrote a new xref backend for TeX buffers (cloning large portions > > of the default etags backend), and wondered whether it might be welcome > > in GNU Emacs. > > Could you point out the other changes which were required? From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Arash Esbati Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 21 Feb 2022 12:38:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: 53749@debbugs.gnu.org Cc: dfussner@googlemail.com X-Debbugs-Original-To: David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of text editors" X-Debbugs-Original-Cc: 53749@debbugs.gnu.org, David Fussner Received: via spool by submit@debbugs.gnu.org id=B.164544703426684 (code B ref -1); Mon, 21 Feb 2022 12:38:02 +0000 Received: (at submit) by debbugs.gnu.org; 21 Feb 2022 12:37:14 +0000 Received: from localhost ([127.0.0.1]:35298 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nM7wI-0006wK-Hp for submit@debbugs.gnu.org; Mon, 21 Feb 2022 07:37:14 -0500 Received: from lists.gnu.org ([209.51.188.17]:44054) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nM7w9-0006w6-Lx for submit@debbugs.gnu.org; Mon, 21 Feb 2022 07:37:05 -0500 Received: from eggs.gnu.org ([209.51.188.92]:58042) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nM7w2-0002fv-4K for bug-gnu-emacs@gnu.org; Mon, 21 Feb 2022 07:37:03 -0500 Received: from [2001:470:142:3::e] (port=50428 helo=fencepost.gnu.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nM7vn-0007PT-1W; Mon, 21 Feb 2022 07:36:56 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To: From; bh=mhuH+1DmCdoPLs2LlDHYFblYBIPzmkoyWqL8A2mLlYo=; b=OnbUAqKybC4ZIqAes/xG fdwQpXCC9T7doK5tukrgO6JOB0YWWafaIfVu2Wqn28DZhmfZhfKV3BTkd5HA8a3AuhnnYV8Yqw4w3 PVAZUoDSvggUAQFt0xZ7+0berunKQdmrH3zv0CGySKABsAUiFczwPew4LxQHNnxhxhxKG8kfQEw/Y er/7BLV+th65kAQ0utjuEfRZQgmrw/mvKxtJO8UEyKTe+M82wwowmtDcJKfw4Eor6f7/ZVCCjIBtv RkMbc9Dn3AgYvbmVfHydqiN9rBQanLwa5YmzqKclbYKsRTjUzCoN7zNGEesZQGqzQNkH2wZrUtkFH jXgeJemn/3bYEA==; Received: from p5b326363.dip0.t-ipconnect.de ([91.50.99.99]:59830 helo=MUTANT) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nM7vl-0004Zi-32; Mon, 21 Feb 2022 07:36:42 -0500 From: Arash Esbati References: Date: Mon, 21 Feb 2022 13:35:52 +0100 In-Reply-To: (David Fussner via's message of "Thu, 3 Feb 2022 15:09:22 +0000") Message-ID: <86ilt84ct3.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of text editors" writes: > diff --git a/lib-src/etags.c b/lib-src/etags.c > index aa5bc8839d..e5269aa456 100644 > --- a/lib-src/etags.c > +++ b/lib-src/etags.c > [...] > /* Default set of control sequences to put into TEX_toktab. > - The value of environment var TEXTAGS is prepended to this. */ > + The value of environment var TEXTAGS is prepended to this. > + (2021) Add variants of '\def', some additional LaTeX commands, > + and common variants from the 'etoolbox' package. Also, add > + starred variants of the commands if they exist. Starred > + variants need to appear before their unstarred versions. */ > static const char *TEX_defenv = "\ > -:chapter:section:subsection:subsubsection:eqno:label:ref:cite:bibitem\ > -:part:appendix:entry:index:def\ > -:newcommand:renewcommand:newenvironment:renewenvironment"; > +:chapter*:section*:subsection*:subsubsection*:part*:label:ref\ > +:chapter:section:subsection:subsubsection:eqno:cite:bibitem\ > +:part:appendix:entry:index:def:edef:gdef:xdef:newcommand*:newcommand\ > +:renewcommand*:renewcommand:newenvironment*:newenvironment\ > +:renewenvironment*:renewenvironment:DeclareRobustCommand*\ > +:DeclareRobustCommand:renewrobustcmd*:renewrobustcmd:newrobustcmd*\ > +:newrobustcmd:let:csdef:csedef:csgdef:csxdef:csletcs:cslet"; Hi David, thanks for looking into this. While you're at it, can you also please add support for the former xparse \newcommand variants which are now (now is October 2020) part of LaTeX kernel, namely: \NewDocumentCommand \RenewDocumentCommand \ProvideDocumentCommand \DeclareDocumentCommand \NewDocumentEnvironment \RenewDocumentEnvironment \ProvideDocumentEnvironment \DeclareDocumentEnvironment \NewExpandableDocumentCommand \RenewExpandableDocumentCommand \ProvideExpandableDocumentCommand \DeclareExpandableDocumentCommand TIA. Best, Arash From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 21 Feb 2022 14:05:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Arash Esbati Cc: 53749@debbugs.gnu.org X-Debbugs-Original-Cc: 53749@debbugs.gnu.org, "David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors" Received: via spool by submit@debbugs.gnu.org id=B.164545225911741 (code B ref -1); Mon, 21 Feb 2022 14:05:02 +0000 Received: (at submit) by debbugs.gnu.org; 21 Feb 2022 14:04:19 +0000 Received: from localhost ([127.0.0.1]:35499 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nM9IZ-00033I-Ft for submit@debbugs.gnu.org; Mon, 21 Feb 2022 09:04:19 -0500 Received: from lists.gnu.org ([209.51.188.17]:44104) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nM9IX-000333-B9 for submit@debbugs.gnu.org; Mon, 21 Feb 2022 09:04:17 -0500 Received: from eggs.gnu.org ([209.51.188.92]:49238) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nM9IX-00064B-06 for bug-gnu-emacs@gnu.org; Mon, 21 Feb 2022 09:04:17 -0500 Received: from [2607:f8b0:4864:20::f31] (port=46746 helo=mail-qv1-xf31.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nM9IU-00069q-U7; Mon, 21 Feb 2022 09:04:16 -0500 Received: by mail-qv1-xf31.google.com with SMTP id n6so32215638qvk.13; Mon, 21 Feb 2022 06:04:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=tbA+9gMpO2xrFfW5c0c6cehf9bQbx7IHqA53ka/w0MQ=; b=p7Blm+hLznAjpaQuxIgRD/WNwzk5CLgLebBhVB7FjPXxqKxRIqJw1rmKjk8QFPU8FZ LjgKIgduXEOVHDcPcf/qh3NY6VGqNI07/TZDfJaVI4PpsgJktZXc5XiTAyCoGc9rHzHh zYJ2Pc7apUhYCeDGCLbslQo94xgTRkM5LJ8TlYSiomwV4H6lVCPhW7+cijvIMyncJjzr btYzK00jehPTuNkwN3Mo0QkfqMNSPoJTeDDQut9OwLwIXUoVCdPszwcxubK4EHZz7P5g ttyursOkQR2SVddtEWI+S9Gi0R0cSRbjyXEfrQDnrc+UNs/VwGLs0Wg0RXddjMFGPJVp lhTg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=tbA+9gMpO2xrFfW5c0c6cehf9bQbx7IHqA53ka/w0MQ=; b=cUzU+h/SCdTX7j6918X/bR90H4pF4N8Ss7bFo2AWlvVZy7vxd3Kj40aSKB17SCQb81 q3gX6DrPFwCWrKpBHP0xYcv0YWX+uXLICHcFGaVPF/3J3+fUdNOxlJAoeKemPgXCmUZ2 74gRnWV2wMmXJjGzsE0EjVRLOKiJo7YRgWMq08BsRgmh9iDlACl99uZfVDpM6TYYCudF +edDblR5POnlVV8YD0An/6NZ49l4sEFJlzHJEWtGbLW+5mSLnxsJXuSJp3pQ7jFNxrjt ga/2Y+MtG/yVep+CffLmV5GOB6CQuB3iw4eXwa7p3HhrXQ7caaNs9gb/p4U/sIZq+9V4 jP+g== X-Gm-Message-State: AOAM533YqJz/vGxTwrEeAOGiGXwwwVdBk3q4vfesq0XjO64tqsOhpGzv KxQsojAiS137UmoNdvN2PFtGata5zNzE2iTv49WU0hIAbaLv8w== X-Google-Smtp-Source: ABdhPJwvEznhZTsE6flTKk4Qk/5+X7NU+Srv3exT6qGoXZsdE3Ge1fDd4rm5Y2Vh3ccncvZ8Z40uAq03JOpSg+KjBvc= X-Received: by 2002:a05:622a:64b:b0:2cf:1716:2344 with SMTP id a11-20020a05622a064b00b002cf17162344mr18167334qtb.635.1645452251686; Mon, 21 Feb 2022 06:04:11 -0800 (PST) MIME-Version: 1.0 References: <86ilt84ct3.fsf@gnu.org> In-Reply-To: <86ilt84ct3.fsf@gnu.org> From: David Fussner Date: Mon, 21 Feb 2022 14:03:59 +0000 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Host-Lookup-Failed: Reverse DNS lookup failed for 2607:f8b0:4864:20::f31 (failed) Received-SPF: pass client-ip=2607:f8b0:4864:20::f31; envelope-from=dfussner@googlemail.com; helo=mail-qv1-xf31.google.com X-Spam_score_int: -6 X-Spam_score: -0.7 X-Spam_bar: / X-Spam_report: (-0.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, PDS_HP_HELO_NORDNS=0.659, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) Hi Arash, Thank you for the list! I had fully intended to add the new LaTeX 3 commands but managed somehow to forget. If you see anything else I've omitted please let me know. David. On Mon, 21 Feb 2022 at 12:36, Arash Esbati wrote: > > David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of > text editors" writes: > > > diff --git a/lib-src/etags.c b/lib-src/etags.c > > index aa5bc8839d..e5269aa456 100644 > > --- a/lib-src/etags.c > > +++ b/lib-src/etags.c > > [...] > > /* Default set of control sequences to put into TEX_toktab. > > - The value of environment var TEXTAGS is prepended to this. */ > > + The value of environment var TEXTAGS is prepended to this. > > + (2021) Add variants of '\def', some additional LaTeX commands, > > + and common variants from the 'etoolbox' package. Also, add > > + starred variants of the commands if they exist. Starred > > + variants need to appear before their unstarred versions. */ > > static const char *TEX_defenv = "\ > > -:chapter:section:subsection:subsubsection:eqno:label:ref:cite:bibitem\ > > -:part:appendix:entry:index:def\ > > -:newcommand:renewcommand:newenvironment:renewenvironment"; > > +:chapter*:section*:subsection*:subsubsection*:part*:label:ref\ > > +:chapter:section:subsection:subsubsection:eqno:cite:bibitem\ > > +:part:appendix:entry:index:def:edef:gdef:xdef:newcommand*:newcommand\ > > +:renewcommand*:renewcommand:newenvironment*:newenvironment\ > > +:renewenvironment*:renewenvironment:DeclareRobustCommand*\ > > +:DeclareRobustCommand:renewrobustcmd*:renewrobustcmd:newrobustcmd*\ > > +:newrobustcmd:let:csdef:csedef:csgdef:csxdef:csletcs:cslet"; > > Hi David, > > thanks for looking into this. While you're at it, can you also please > add support for the former xparse \newcommand variants which are now > (now is October 2020) part of LaTeX kernel, namely: > > \NewDocumentCommand > \RenewDocumentCommand > \ProvideDocumentCommand > \DeclareDocumentCommand > \NewDocumentEnvironment > \RenewDocumentEnvironment > \ProvideDocumentEnvironment > \DeclareDocumentEnvironment > \NewExpandableDocumentCommand > \RenewExpandableDocumentCommand > \ProvideExpandableDocumentCommand > \DeclareExpandableDocumentCommand > > TIA. Best, Arash From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 21 Feb 2022 17:29:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.164546453315686 (code B ref 53749); Mon, 21 Feb 2022 17:29:02 +0000 Received: (at 53749) by debbugs.gnu.org; 21 Feb 2022 17:28:53 +0000 Received: from localhost ([127.0.0.1]:38889 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nMCUW-00044u-MC for submit@debbugs.gnu.org; Mon, 21 Feb 2022 12:28:53 -0500 Received: from mail-qk1-f182.google.com ([209.85.222.182]:36834) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nMCUV-00044j-8h for 53749@debbugs.gnu.org; Mon, 21 Feb 2022 12:28:51 -0500 Received: by mail-qk1-f182.google.com with SMTP id g24so17621680qkl.3 for <53749@debbugs.gnu.org>; Mon, 21 Feb 2022 09:28:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=BCBkOuF/XYtWwt5r1aCpOf2Q0hFDUAio+xUcfMIxueM=; b=pqZ8Ks7PTPJXJcnVCbGzUaTf8T+NYXYca530XnLhMQPo3wtic9XfeXjvF7MMzmCBEZ QaZTcZnQlJfr6g4UF3FFfhmVjkBBS0XeP3To0LmEcoyCZHfQoANw6EVOs6FGiKLFg4oV /hBH9JQVu5N7a4qTQtWIGEjqsMA/aMv2cP9h0Ya5YDhs+0NwnH1Q6qdhInpfvZkEu35C FQnheptHqjMtTFzIR3PoVFvTjYlxLtZ5ucSjnd/JjtOOZo4HfhUW6LV8pLdRLOzhzQ04 7VApmmWXQr66c/OqPZLUpiLffpyAEdcZPV3HhMlkGDKnxEiz7NIUJfApeCkLlLtxh7RV MaAA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=BCBkOuF/XYtWwt5r1aCpOf2Q0hFDUAio+xUcfMIxueM=; b=KLxGn2g2KZHuT+uix7aRh4DpFRefAze0AXBsu8vMF2rSjd2frxOTjWpN5OrK0XxGMt 0B4iu1hjgac/iHTmZHNt/OdQe+66Tn8DyET/IIE9tMjLtoee+TrUW8KhFKGkgJZtwZ+4 qp+h887njnFwC3OmljgU9pdTFCp4daVK0quNYqj7ZGfkaBAcU7M9YUfcH24zs29YvTvd 8mRpEusG/mPiCGgkfJDKeTrD/lFQBBzJl0WSwycxH3owvq2X21ldy2tCNc8SezuIy69W Xm76mwr7PBLa9+wj81c0KIaho98qqXRwuJdcgjiPT5uOsb4UhZdwgHgDxewBWMU9o6gA qNxw== X-Gm-Message-State: AOAM532hYy3TgkCp7am54D3Arl0HHFGU8aOEN6ct46SIGKyE1/XyVpLt paBB9X5fIPFj5UmdTCRonpIULsu08ueiV4xjtVA= X-Google-Smtp-Source: ABdhPJwVP7clZeBYCb50fHFvHEzIjmyckuv0OYccVW97cztK1zc/P22+/bG1p77yhGjTV2xSfrL7eiBsDtUgIN5O+Uk= X-Received: by 2002:a37:4147:0:b0:47c:4595:b8c with SMTP id o68-20020a374147000000b0047c45950b8cmr12878581qka.267.1645464525701; Mon, 21 Feb 2022 09:28:45 -0800 (PST) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> In-Reply-To: From: David Fussner Date: Mon, 21 Feb 2022 17:28:32 +0000 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Dmitry, I found a bit of time to test, and the problem with "@" in command names appears when a search string for xref-find-references ends with "@". The results returned will miss out valid hits, depending on what follows the "@" in the actual command name in the TeX file. Hope this might help, David. On Mon, 21 Feb 2022 at 09:48, David Fussner wrote: > > (Resending to include the mailing list -- sorry!) > > Hi Dmitry, > > Many thanks for looking into this. > > > > > So if your main goal was to alter which string gets searched for (based > > on text around point), you can define a function which returns the > > necessary string (as you did in the patch) and then either set > > 'find-tag-default-function' to that function, or put it on the > > 'find-tag-default-function' property for the respective major mode > > functions. > > > > > There are many other behaviors that are suboptimal, as well, so in the > > > end I wrote a new xref backend for TeX buffers (cloning large portions > > > of the default etags backend), and wondered whether it might be welcome > > > in GNU Emacs. > > > > Could you point out the other changes which were required? > > As you've noticed, I tried at first to get by without a new backend, > but I ran into a few issues that I couldn't solve that way, hence the > current patch. A couple of examples: > > 1. TeX is very generous with the characters it includes in its > symbols, so what looks like a standard symbol to it can look like a > regexp either to grep or to emacs, so I needed to changes things in > xref-find-apropos and in xref-find-references to take this into > account. (See tex-xref-apropos-regexp and > tex-xref-references-in-directory.) Sometimes using a search string > that had been put through regexp-quote was wrong, as when a user > provided their own regexp in the minibuffer, so in both those cases I > provided fallbacks to a different search in case the default search > came up empty. I couldn't see how to do this without a new backend. > > 2. A package like biblatex creates what amounts to a separate > namespace using the \newbibmacro mechanism, so pretty much every > biblatex style has both a \cite command and a cite bibmacro, and I > wanted to allow emacs to differentiate between them when using > xref-find-definitions. Because users of the etoolbox package (like > biblatex) may well mix commands with and without the escape char "\", > I also provided a variable to allow users to find when a \command is > called using \csuse{command} instead. Again, this required a fallback > search (see xref-backend-definitions) which I couldn't see how to > provide without a new backend. > > Does this make any sense? I can give more specific examples if you > like -- try running xref-find-references on a TeX command with "@" in > it. (If memory serves, that behaved badly here on an unpatched emacs, > but maybe I'm misremembering.) > > David. > > On Mon, 21 Feb 2022 at 02:11, Dmitry Gutov wrote: > > > > Hi! > > > > Let us first discuss whether we could make do without an additional Xref > > backend. Just to make sure. > > > > On 03.02.2022 17:09, David Fussner via Bug reports for GNU Emacs, the > > Swiss army knife of text editors wrote: > > > Similarly, any xref command on 'my:citekey' will only search by default > > > for the half of the symbol under point, stopping at the colon. > > > > etags's implementation of 'xref-backend-identifier-at-point' calls > > 'find-tag--default', which consults 'find-tag-default-function' and > > (get major-mode 'find-tag-default-function). > > > > So if your main goal was to alter which string gets searched for (based > > on text around point), you can define a function which returns the > > necessary string (as you did in the patch) and then either set > > 'find-tag-default-function' to that function, or put it on the > > 'find-tag-default-function' property for the respective major mode > > functions. > > > > > There are many other behaviors that are suboptimal, as well, so in the > > > end I wrote a new xref backend for TeX buffers (cloning large portions > > > of the default etags backend), and wondered whether it might be welcome > > > in GNU Emacs. > > > > Could you point out the other changes which were required? From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 21 Feb 2022 23:56:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: David Fussner Cc: 53749@debbugs.gnu.org Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.164548772724675 (code B ref 53749); Mon, 21 Feb 2022 23:56:02 +0000 Received: (at 53749) by debbugs.gnu.org; 21 Feb 2022 23:55:27 +0000 Received: from localhost ([127.0.0.1]:39446 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nMIWd-0006Pv-0c for submit@debbugs.gnu.org; Mon, 21 Feb 2022 18:55:27 -0500 Received: from mail-wr1-f41.google.com ([209.85.221.41]:35429) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nMIWb-0006Pi-Nh for 53749@debbugs.gnu.org; Mon, 21 Feb 2022 18:55:26 -0500 Received: by mail-wr1-f41.google.com with SMTP id v12so29726944wrv.2 for <53749@debbugs.gnu.org>; Mon, 21 Feb 2022 15:55:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:message-id:date:mime-version:user-agent:subject :content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=B7te4GuvmMyfYys9xDt9q3fBa9U0/nQRVKJFMFpgaJA=; b=ThdX5Vs1+f96p+jUhnaLMHURcGC6BDnHapbsk7OrvZCuwjD1LnzX1G0JJ/xxtgTDaT 4obiYYgKBFuX3+UvASPy/vrqiWQIbkzq71cE8EXI27lp+Bx+3CywJgg/HYzTIAwsWpFF xFtARrjaF5xkoYXgRIJWA6Uj4kFjUwcmYTzFYG/VUdloYb1X+ufBokstMZdoP6OI3RQO kxD+72gxculgR2NCrJBcP3gCHnLn6TZcwKuWQk+KNESRPwrfoTYMvy8X9LVOuBCG5qf+ ySjHGcxhTO68EFoa6PAaQK9qkAgHvz6Jh6dktjRhRC0Cjad9St1gOHNU8rBEDR+k2Iye K3sA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:message-id:date:mime-version:user-agent :subject:content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=B7te4GuvmMyfYys9xDt9q3fBa9U0/nQRVKJFMFpgaJA=; b=Q0X2S1D5ipC+DRTD8eX8p0lyVhNcgugQUJ/f76YWROVdsvdTtbw4/WnJLwAygEcI/E h9L2gbamV3VlAJ6x3Kj1yC4OWzlJu2XM22Tjq8nfXCCUFtzR03YsewC3X7C/Dotu6xcj XtjrIiskQI4Sf4PSgWhK0j0V49rzhJ9wA9p+FOSfLvamIb45fm4WqTdz3QZSpE/Nmni9 o2/oWQluZ293YE8jRI7FYNddX/KEMZgFbtYlkAY6HrvofDNVnlGU+5ciubCYx4L9tpz5 fkE5K4kEJOa7HhfLiGo25hwfR2iSVpxzpTgOmvPnoZZoizzI6Z79RXa1mtN4RptRA0Yk F/vw== X-Gm-Message-State: AOAM533FxLWMPKJ177iyF36D7WrcSQl1rym6W5aIKDdLw661Y8d0WqpU nUtH6q9QacdCZ3eNwF+DZ0U= X-Google-Smtp-Source: ABdhPJyK7DNMvOKKQoHFFmTdMfiWUCrT8w6+8oZaIYVjqvdl42rpcPPQb7DVd95Pg373zlUXo+o0xA== X-Received: by 2002:adf:ea4f:0:b0:1e7:447d:2111 with SMTP id j15-20020adfea4f000000b001e7447d2111mr17588933wrn.66.1645487719607; Mon, 21 Feb 2022 15:55:19 -0800 (PST) Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id w18sm34127613wrl.62.2022.02.21.15.55.18 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 21 Feb 2022 15:55:18 -0800 (PST) Message-ID: Date: Tue, 22 Feb 2022 01:55:17 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Content-Language: en-US References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.5 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.5 (/) On 21.02.2022 11:48, David Fussner wrote: > Sometimes using a search string > that had been put through regexp-quote was wrong, as when a user > provided their own regexp in the minibuffer, so in both those cases I > provided fallbacks to a different search in case the default search > came up empty. I couldn't see how to do this without a new backend. One way to deal with that is to treat all user inputs as regexps there. Perhaps some will have to be more verbose that ideal, but as long as the user is familiar with the regexp syntax, the behavior will be both powerful and predictable. > 2. A package like biblatex creates what amounts to a separate > namespace using the \newbibmacro mechanism, so pretty much every > biblatex style has both a \cite command and a cite bibmacro, and I > wanted to allow emacs to differentiate between them when using > xref-find-definitions. Because users of the etoolbox package (like > biblatex) may well mix commands with and without the escape char "\", > I also provided a variable to allow users to find when a \command is > called using \csuse{command} instead. Again, this required a fallback > search (see xref-backend-definitions) which I couldn't see how to > provide without a new backend. Could those be be disambiguated when the tags are scanned, instead? Then the user will tailor their input to find the one or the other. Or if we want more fuzzier matching, perhaps creating mode-specific values of etags-xref-find-definitions-tag-order could help. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 21 Feb 2022 23:57:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: David Fussner Cc: 53749@debbugs.gnu.org Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.164548777624776 (code B ref 53749); Mon, 21 Feb 2022 23:57:02 +0000 Received: (at 53749) by debbugs.gnu.org; 21 Feb 2022 23:56:16 +0000 Received: from localhost ([127.0.0.1]:39451 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nMIXQ-0006RY-Ak for submit@debbugs.gnu.org; Mon, 21 Feb 2022 18:56:16 -0500 Received: from mail-wr1-f50.google.com ([209.85.221.50]:37488) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nMIXO-0006RH-Q6 for 53749@debbugs.gnu.org; Mon, 21 Feb 2022 18:56:15 -0500 Received: by mail-wr1-f50.google.com with SMTP id d28so1922916wra.4 for <53749@debbugs.gnu.org>; Mon, 21 Feb 2022 15:56:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:message-id:date:mime-version:user-agent:subject :content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=voa8vLbt/1s1nbhtugRyLqihym+kFeb4bt3qDFoXWKg=; b=HSAfbWP8DISp96/EhXq77Fk3svQtxBGkxW0vaWOdpPKxYQMyc2Rx0Rs5ILtLn9TeWQ EPTs5VDfkRPQxYurNtFxnOzmOh5r2g2PcFczmL2/yrqJ7thUipD9BldKZdMaXyAD5mtd 4AtHV+ub4gXUJTcmycUhiRXE616KDe4V2g8x2ZaAB+byD/YFcOK4P2AQAULuJxtYAM4s guLnaS0hTrBQrE8Sdc/buY2Y5XelOghg+ybJ6GQegwTdAuqiIm0C7c9IZGZbPKxPfIqq qGyELnqSUSrSe7hyAYyTUKBKyoEFWhj9+3+Ui2FPKDaYzUDbACI0NZfAR8OKtpXC9BGl nonw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:message-id:date:mime-version:user-agent :subject:content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=voa8vLbt/1s1nbhtugRyLqihym+kFeb4bt3qDFoXWKg=; b=iUTGJk8spuV0BS6RAJujD6xeIUWRm2SnOGMLERzzo+i2gvfpHSnpd0rk4QMnKdq7lW Jv/fuU0RzaBi3eWbGhbbtiGEqKydc7Jp+OknJhTKk22iuFPHmBEFx7R0U45lRGPtlXwL vgmLQGbaTpvRaVHiN/r+oERgORFRvJ6FGCdEsxfTfTgZOSgJMe1+WxrxNdXEsf/7n7Q+ LazJFgQC/INvfagsBgoaGaqsDqo3h+AY/JSXxF820s25MsC1KOmIQWvEo3jzNF6IlZKN ODkXhZN/xN0Gpyt+92ZMFOjEwuWX3O4OnnIZ8rTcfes0r9NQf03aaBDzYybwpxT1c59m aPhw== X-Gm-Message-State: AOAM530MTcVeSLqHUu+5DAwmT9MODrglWk/u7umBV3Dmncy4rcgvg0Hf rg1spvEB8m9VDgUxZ2WhOkU= X-Google-Smtp-Source: ABdhPJzXnFuZYKVsk7ubjkb3rCjvQvTbQ2+/v+1egOCqnZsAPkjZWjYE00McuMqYmm3BxzHJLRthCA== X-Received: by 2002:a5d:5986:0:b0:1ea:75c6:3d0a with SMTP id n6-20020a5d5986000000b001ea75c63d0amr2771442wri.166.1645487769184; Mon, 21 Feb 2022 15:56:09 -0800 (PST) Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id q76sm795098wme.1.2022.02.21.15.56.07 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 21 Feb 2022 15:56:08 -0800 (PST) Message-ID: <2f41ba40-9c3f-ac65-ef0d-300bd11c4867@yandex.ru> Date: Tue, 22 Feb 2022 01:56:07 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Content-Language: en-US References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.5 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.5 (/) On 21.02.2022 19:28, David Fussner wrote: > Hi Dmitry, > > I found a bit of time to test, and the problem with "@" in command > names appears when a search string for xref-find-references ends with > "@". The results returned will miss out valid hits, depending on what > follows the "@" in the actual command name in the TeX file. Sorry, I have very little familiarity with TeX. Do you have a step-by-step scenario? Perhaps using one of the .texi manuals already existing in the repo? From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 22 Feb 2022 15:20:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.16455431891236 (code B ref 53749); Tue, 22 Feb 2022 15:20:01 +0000 Received: (at 53749) by debbugs.gnu.org; 22 Feb 2022 15:19:49 +0000 Received: from localhost ([127.0.0.1]:42372 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nMWxA-0000Js-Of for submit@debbugs.gnu.org; Tue, 22 Feb 2022 10:19:49 -0500 Received: from mail-qv1-f53.google.com ([209.85.219.53]:39476) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nMWx9-0000Jg-HJ for 53749@debbugs.gnu.org; Tue, 22 Feb 2022 10:19:48 -0500 Received: by mail-qv1-f53.google.com with SMTP id a1so1812144qvl.6 for <53749@debbugs.gnu.org>; Tue, 22 Feb 2022 07:19:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=SfYAfmYsi50+ee/1Moo5O7y7aqGh9KvJHZHat2yssAA=; b=cZpOI8QbKBkrlVQJ+j6OcRRUnfIWSTDZfTRlxRO9AffWeKUsoJpZy/HFM097HB55Ut PaHwc1J6Yjrki6/FtuRng9R6DTTHqo9azWQo3Q3B72E1vEVZ/SnbuG3OyBMobxdmnZQO CuepEmwWeDBFXTch9yfdAAx37tMgBxRBLCToIi6Czah+Ad7sGJ0bxeh5FuUwIfCfB7Q4 pvQbx/hxUveiBDmyCE77TUTQoT2jE4gZPhsqzvsuSNgm+1KTgu2Mgv6caU6OC1XN8bSu FmQ7isFmB7CLI/QwJfGOjte2iOZvarOkmm8pMg/PrEoNtTatgFl3lFdKkYrZXt2ScqjR NiRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=SfYAfmYsi50+ee/1Moo5O7y7aqGh9KvJHZHat2yssAA=; b=M/tajhNWGSfqv4aJuGqz5XIjiRjYYHLkFMBjwf736j22qJM5JEiI+ATn6xMh8qyj9e 55t7uAw2LRwEgn4KAeEFNlOWfW/k6Du/vNAtqT95A7sRBlLiWSHa9pwHM1Jc/eJeHWRX Y48+DWo8S/pGuaIan6LvSWUBJaX3giv+NXKZlpE2vrH9pk3/paR0N4BLK1/1h0UkdTF1 /D+zwMk2f3wN/il/sEU4qFGX9n6MUrmvaMM1oOWA69EC83RiU/+7E22qOU+x9m6lQp5F H8Qko0iTEgLtU3l7zNPSx2JuFiHRa5vMymijEuhyvv9PgesGXlAxMqQmLVCc7bjGJuOg gSPw== X-Gm-Message-State: AOAM531NLcUW8VxSU0LywXekcLQaW+BkPRgRKT7UUD+3rExSQ9V6F7uz g3AiNH4WNgiLBXvTCqO3CFYNmeYZopjP6gcWWrNyPt1rREtXug== X-Google-Smtp-Source: ABdhPJwZI/PUxBY23lzDesrkBP+eeXe4XMqdNQvarZSp18mx0JCI4D28f6SuiHdwnDz6zdgYJff+Ss/8DiRKs0XhWRw= X-Received: by 2002:ac8:5c4f:0:b0:2dc:8e84:b0ac with SMTP id j15-20020ac85c4f000000b002dc8e84b0acmr22774982qtj.536.1645543181717; Tue, 22 Feb 2022 07:19:41 -0800 (PST) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <2f41ba40-9c3f-ac65-ef0d-300bd11c4867@yandex.ru> In-Reply-To: <2f41ba40-9c3f-ac65-ef0d-300bd11c4867@yandex.ru> From: David Fussner Date: Tue, 22 Feb 2022 15:19:29 +0000 Message-ID: Content-Type: multipart/alternative; boundary="000000000000cf132205d89ce09f" X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000cf132205d89ce09f Content-Type: text/plain; charset="UTF-8" Hi Dmitry, > Do you have a step-by-step scenario? Perhaps using one of the .texi > manuals already existing in the repo? I can't find a good example in the emacs repo, but I'll try to talk through what happens with a code snippet from biblatex.sty, which I hope will explain some of the issues we're discussing, even if it is a little artificial. \DeclareBiblatexOption{global,type}[string]{uniquename}[true]{% \ifcsdef{blx@opt@uniquename@#1} {\letcs\blx@uniquename{blx@opt@uniquename@#1}} {\blx@err@invopt{uniquename=#1}{}}} \def\blx@opt@uniquename@false{false} \def\blx@opt@uniquename@init{init} \def\blx@opt@uniquename@true{full} \def\blx@opt@uniquename@full{full} \def\blx@opt@uniquename@allinit{allinit} \def\blx@opt@uniquename@allfull{allfull} \def\blx@opt@uniquename@mininit{mininit} \def\blx@opt@uniquename@minfull{minfull} If you do M-? on \ifcsdef{blx@opt@uniquename@#1} using the default backend, the default search string is blx@opt@uniquename@, and you'll get two hits, that line and the following one. Stepping through xref-references-in-directory shows that the semantic-symref search (using grep) only finds those two using the :searchtype 'symbol, and they're returned. If you change 'symbol to 'regexp, grep finds all the matches in that code snippet, but then xref--convert-hits uses (format "\\_<%s\\_>"), which again loses all but the first two hits when it scans the list provided by grep. Either grep or emacs here will miss out on valid hits unless you change both the semantic-symref instantiation and the format specification. > One way to deal with that is to treat all user inputs as regexps there. Perhaps some will have to be more verbose that ideal, but as > long as the user is familiar with the regexp syntax, the behavior will be both powerful and predictable If I understand you right, I think that's what I'm trying to do, but allowing for users who perhaps aren't too familiar with emacs regexps and who might typically just accept the default search string offered by xref. > Could those be disambiguated when the tags are scanned, instead? Then the user will tailor their input to find the one or the other. If I understand you correctly, that's also what I try to do -- each tagged command in the tags file is searched by the name of the tag, which in these cases will either start with the escape char or not. Looking at the biblatex snippet, if you come across \csuse{blx@opt@uniquename@false} somewhere in a file, and you want to see what the definition is, you can't know apriori how it was defined, with \def or with \csdef. This snippet above mixes both styles, and I hoped that a user would be allowed to choose whether to search for both styles without necessarily having to try both forms of the string in separate searches. In fact, as the code stands, it only does the second search if the first one fails, so it still more or less keeps the two command-naming styles separate. The simplest fix is to remove the escape char from all tag names, which I suggest to users of ctags in some commented-out code in etags.c. This does lose the ability to differentiate \def'ed commands and \csdef'd ones, especially as in some circumstances they can have the same name. I'm not sure how great a loss that is, on the other hand. Is that what you had in mind? > Or if we want more fuzzier matching, perhaps creating mode-specific values of etags-xref-find-definitions-tag-order could help. Yeah, you're right, I'm pretty sure I could use a buffer-local value of that variable to get xref-find-definitions to do the fuzzy matching I'm after. Does the discussion above at all help to convince you that there are other issues that might still require a new backend? David. --000000000000cf132205d89ce09f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Dmitry,

> Do you have = a step-by-step scenario? Perhaps using one of the .texi
> manuals alr= eady existing in the repo?

I can't find a = good example in the emacs repo, but I'll try to talk through what happe= ns with a code snippet from biblatex.sty, which I hope will explain some of= the issues we're discussing, even if it is a little artificial.

\DeclareBiblatexOption{global,type}[string]{uniquename}[true]{%=
=C2=A0 \ifcsdef{blx@opt@uniquename@#1}
=C2=A0 =C2=A0 {\letcs\blx@uni= quename{blx@opt@uniquename@#1}}
=C2=A0 =C2=A0 {\blx@err@invopt{uniquenam= e=3D#1}{}}}
\def\blx@opt@uniquename@false{false}
\def\blx@opt@uniquen= ame@init{init}
\def\blx@opt@uniquename@true{full}
\def\blx@opt@unique= name@full{full}
\def\blx@opt@uniquename@allinit{allinit}
\def\blx@opt= @uniquename@allfull{allfull}
\def\blx@opt@uniquename@mininit{mininit}\def\blx@opt@uniquename@minfull{minfull}

If you d= o M-? on \ifcsdef{blx@opt@uniquename@#1} using the default backend, the def= ault search string is blx@opt@uniquename@, and you'll get two hits, tha= t line and the following one.=C2=A0 Stepping through xref-references-in-dir= ectory shows that the semantic-symref search (using grep) only finds those = two using the :searchtype 'symbol, and they're returned.=C2=A0 If y= ou change 'symbol to 'regexp, grep finds all the matches in that co= de snippet, but then xref--convert-hits uses (format "\\_<%s\\_>= "), which again loses all but the first two hits when it scans the lis= t provided by grep.=C2=A0 Either grep or emacs here will miss out on valid = hits unless you change both the semantic-symref instantiation and the forma= t specification.

> One way to deal with tha= t is to treat all user inputs as regexps there. Perhaps some will have to b= e more verbose that ideal, but as=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 > long a= s the user is familiar with the regexp syntax, the behavior will be both po= werful and predictable

If I understand you right, = I think that's what I'm trying to do, but allowing for users who pe= rhaps aren't too familiar with emacs regexps and who might typically ju= st accept the default search string offered by xref.=C2=A0
<= br>
>=C2=A0 Could those be disambiguated when the tags are sca= nned, instead? Then the user will tailor their input to find the one or the= other.

If I understand you correctly, that= 9;s also what I try to do -- each tagged command in the tags file is search= ed by the name of the tag, which in these cases will either start with the = escape char or not.=C2=A0 Looking at the biblatex snippet, if you come acro= ss \csuse{blx@opt@uniquename@false} somewhere in a file, and you want to se= e what the definition is, you can't know apriori how it was defined, wi= th \def or with \csdef.=C2=A0 This snippet above mixes both styles, and I h= oped that a user would be allowed to choose whether to search for both styl= es without necessarily having to try both forms of the string in separate s= earches.=C2=A0 In fact, as the code stands, it only does the second search = if the first one fails, so it still more or less keeps the two command-nami= ng styles separate.

The simplest fix is to remove = the escape char from all tag names, which I suggest to users of ctags in so= me commented-out code in etags.c. This does lose the ability to differentia= te \def'ed commands and \csdef'd ones, especially as in some circum= stances they can have the same name.=C2=A0 I'm not sure how great a los= s that is, on the other hand.=C2=A0 Is that what you had in mind?
=

> Or if we want more fuzzier matching, perhaps creating m= ode-specific values of etags-xref-find-definitions-tag-order could help.

Yeah, you're right, I'm pretty sure I cou= ld use a buffer-local value of that variable to get xref-find-definitions t= o do the fuzzy matching I'm after.=C2=A0 Does the discussion above at a= ll help to convince you that there are other issues that might still requir= e a new backend?

David.
--000000000000cf132205d89ce09f-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 23 Feb 2022 02:22:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: David Fussner Cc: 53749@debbugs.gnu.org Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.164558289132308 (code B ref 53749); Wed, 23 Feb 2022 02:22:01 +0000 Received: (at 53749) by debbugs.gnu.org; 23 Feb 2022 02:21:31 +0000 Received: from localhost ([127.0.0.1]:43255 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nMhHU-0008Os-6S for submit@debbugs.gnu.org; Tue, 22 Feb 2022 21:21:31 -0500 Received: from mail-wm1-f53.google.com ([209.85.128.53]:39635) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nMhHR-0008Ob-U5 for 53749@debbugs.gnu.org; Tue, 22 Feb 2022 21:21:27 -0500 Received: by mail-wm1-f53.google.com with SMTP id n13-20020a05600c3b8d00b0037bff8a24ebso564532wms.4 for <53749@debbugs.gnu.org>; Tue, 22 Feb 2022 18:21:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:message-id:date:mime-version:user-agent:subject :content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=8Aos8TktPPGHjtq06SeU5VGEv5Exji4jZkl/FJ4xc/s=; b=cQeMAiyWM5fCcuITjBEZh9HPx+Kt+cUl1XDxbQRMUsuHmcKvvqG31e/vl7C8hku3TZ BcwvFpvcvs8BFgGX6auiScNwjhemL9z3MDu1ksX9VPpL58dOxwFYwXUuv1jnedk0HzzJ W8WE9++cVb9cGHJbV99jBBhE4q8IcNC7elqooCAdbfZeZDCezU0NZlI92Uu/Y7zquCoM QOJV8G64AhNZLOw/JjyxVOehihg7aVQYmztl7rD3g1Kn/0wu/AWF7CevPbMFf5Y5cZyY M01V6fuAxiIJh+BRZzRJ/fT2Wyna6Lew66/tsAD0AAQodnpMmf9c6u1jDoRrnoeyFA7G owWw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:message-id:date:mime-version:user-agent :subject:content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=8Aos8TktPPGHjtq06SeU5VGEv5Exji4jZkl/FJ4xc/s=; b=phmFIX57ZFmmeo7vEC2DUn2l7CJMPDQooq5qK2VLmJ+RHaooEYosI1WmLdJHoxjTsD fykvhBv12xBUWCPGk0DZZl8BwMoo3fjlzgcg58F9ra9L2AdCLVcfJhX0dSVCUaBTSzNW 5TTDGjvJlYiuRvJ+pY8TAuQi+1nHG0jgpo+Yd6U+TD8B4RKFU8j4jGE5Q73r5C89Cmns gmH5Gy9MET+O8YYaEl1Qb1hcqERrgwCZFi7AmKelkS+TAWueIpueLfokyPLZWzKl+Y/z pcpWYXmPIRp73hztcN9a2Qh7L22MJOCfXET9qwDHA4s5St4mE+ByW5+HLyv4YV28tYkT 2cnA== X-Gm-Message-State: AOAM532QFBaQXbMGxInoLdEM44bYbjwIoPPiMHHYc4LlwltkFTPpKW3Y 5Pb8XDQvbpdNmEI674Zx+I8= X-Google-Smtp-Source: ABdhPJzW6plc8+eL5irsW6SGpPpntFmvo/8cOfWtVgcMF5TXkH80UdbrKciELezyU2L4S8f/pGeAHQ== X-Received: by 2002:a1c:4c0a:0:b0:37b:b34d:624e with SMTP id z10-20020a1c4c0a000000b0037bb34d624emr5381476wmf.139.1645582879904; Tue, 22 Feb 2022 18:21:19 -0800 (PST) Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id w13sm3233333wrv.21.2022.02.22.18.21.18 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 22 Feb 2022 18:21:19 -0800 (PST) Message-ID: <300e30e1-aeea-ffa5-fa13-d541ccbffe30@yandex.ru> Date: Wed, 23 Feb 2022 04:21:17 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Content-Language: en-US References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <2f41ba40-9c3f-ac65-ef0d-300bd11c4867@yandex.ru> From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Score: 0.5 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.5 (/) Hi David, On 22.02.2022 17:19, David Fussner wrote: > > Do you have a step-by-step scenario? Perhaps using one of the .texi > > manuals already existing in the repo? > > I can't find a good example in the emacs repo, but I'll try to talk > through what happens with a code snippet from biblatex.sty, which I hope > will explain some of the issues we're discussing, even if it is a little > artificial. Thank you. > \DeclareBiblatexOption{global,type}[string]{uniquename}[true]{% >   \ifcsdef{blx@opt@uniquename@#1} >     {\letcs\blx@uniquename{blx@opt@uniquename@#1}} >     {\blx@err@invopt{uniquename=#1}{}}} > \def\blx@opt@uniquename@false{false} > \def\blx@opt@uniquename@init{init} > \def\blx@opt@uniquename@true{full} > \def\blx@opt@uniquename@full{full} > \def\blx@opt@uniquename@allinit{allinit} > \def\blx@opt@uniquename@allfull{allfull} > \def\blx@opt@uniquename@mininit{mininit} > \def\blx@opt@uniquename@minfull{minfull} > > If you do M-? on \ifcsdef{blx@opt@uniquename@#1} using the default > backend, the default search string is blx@opt@uniquename@, and you'll > get two hits, that line and the following one.  Stepping through > xref-references-in-directory shows that the semantic-symref search > (using grep) only finds those two using the :searchtype 'symbol, and > they're returned.  If you change 'symbol to 'regexp, grep finds all the > matches in that code snippet, but then xref--convert-hits uses (format > "\\_<%s\\_>"), which again loses all but the first two hits when it > scans the list provided by grep.  Either grep or emacs here will miss > out on valid hits unless you change both the semantic-symref > instantiation and the format specification. That might call for a different implementation of 'references' indeed. But could you make 'blx@opt@uniquename' the default search string in that example? Does that make sense? And if not, all in all, I wouldn't worry too much about xref-find-references, since TeX is more of a text format (IMHO) than a program with well-defined identifiers. Perhaps using project-find-regexp most of the time will save you a lot of the trouble? > > One way to deal with that is to treat all user inputs as regexps > there. Perhaps some will have to be more verbose that ideal, but as > > long as the user is familiar with the regexp syntax, the behavior > will be both powerful and predictable > > If I understand you right, I think that's what I'm trying to do, but > allowing for users who perhaps aren't too familiar with emacs regexps > and who might typically just accept the default search string offered by > xref. I'm not sure how I feel about the extra "fuzziness" in the behavior which comes with this approach. > >  Could those be disambiguated when the tags are scanned, instead? > Then the user will tailor their input to find the one or the other. > > If I understand you correctly, that's also what I try to do -- each > tagged command in the tags file is searched by the name of the tag, > which in these cases will either start with the escape char or not. > Looking at the biblatex snippet, if you come across > \csuse{blx@opt@uniquename@false} somewhere in a file, and you want to > see what the definition is, you can't know apriori how it was defined, > with \def or with \csdef.  This snippet above mixes both styles, and I > hoped that a user would be allowed to choose whether to search for both > styles without necessarily having to try both forms of the string in > separate searches.  In fact, as the code stands, it only does the second > search if the first one fails, so it still more or less keeps the two > command-naming styles separate. The parser could create both qualified (with \def or \csdef) and unqualified entries for the same definition. Maybe make it optional (with -Q argument to etags). Then the user could search using any of these formats. > > Or if we want more fuzzier matching, perhaps creating mode-specific > values of etags-xref-find-definitions-tag-order could help. > > Yeah, you're right, I'm pretty sure I could use a buffer-local value of > that variable to get xref-find-definitions to do the fuzzy matching I'm > after. Does the discussion above at all help to convince you that there > are other issues that might still require a new backend? The suggestion about a buffer-local value of that var was made in the context of trying to make it work with the current etags backend. At least, in the first patch. If only because I don't really like to see duplicated code. If we find another place where we really want to diverge, we could also try adding some behavior-altering variable first. After that, we might as well add a new backend (I'm not really against it, just prefer to exhaust other options first), but hopefully someone else (more familiar with tex-mode) could take over this discussion at that point, and the subsequent responsibility for the added code. That person could be yourself too, under right conditions. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 23 Feb 2022 10:46:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.164561314929350 (code B ref 53749); Wed, 23 Feb 2022 10:46:02 +0000 Received: (at 53749) by debbugs.gnu.org; 23 Feb 2022 10:45:49 +0000 Received: from localhost ([127.0.0.1]:43945 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nMp9Y-0007dJ-Tp for submit@debbugs.gnu.org; Wed, 23 Feb 2022 05:45:49 -0500 Received: from mail-qv1-f43.google.com ([209.85.219.43]:35328) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nMp9X-0007d6-DI for 53749@debbugs.gnu.org; Wed, 23 Feb 2022 05:45:47 -0500 Received: by mail-qv1-f43.google.com with SMTP id 8so7579558qvf.2 for <53749@debbugs.gnu.org>; Wed, 23 Feb 2022 02:45:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=YpiSIPdTB36nqHxD9dnDiycA9pXb+3/En4b+6fBWfVA=; b=NTcknPRGxBX/O/DzKdmWYFPzXOEuTGH1JlbYNmRoaKVHIwom85O0tDbAULUfw8aiL3 8auWoA95FZT5mV8pGZ7W0QzK7vIdGBS2o3moaGlNBt2i9PgSGfkohkLXAWVWk7cWvOA1 5LQKar4xAjyhnBoIEpkeWpg/nYJipgNwCfgEcfDxjvi341JKYwWdMI1cRKh7FswtxHg7 btiVE7blprxkyHWVcTb0Pb8T/2z5KDIPULaUDy7cuu+4Vu5p8tdgzCz6Og2qv7i3ztKX KEHKRWxaBXLGtB6aYcURoF7qG2qA65VvkNNU/sbgKlZSAnkeYrCvcVlXc7NEg24keasE s/Xw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=YpiSIPdTB36nqHxD9dnDiycA9pXb+3/En4b+6fBWfVA=; b=Ei7uercNnAmmfVgmF2F9bTmBPw+kMNm+XtNJVHkYsnPHBZiemBqbRxc4xYnW9tKAEZ n+gP6C84doyQ8fm0PMAnMl+wENILZQjm4u7u0BGbmjsl0qPBnCOEudOZkuBQpK2l1cX/ TubwMgrk/coJUFFkzw3pu4WtmvgJgP6cFKmw5nD4wZxzA5BIulo/SfN28zMB5VkkqZpa KFTDR12vz4KftxfFrcaUFNLvubiHf+L3cHcP2PW1aIXOfYan8loLAXkqWhPTddS6f8PD KVywx8fb7KT+sYmfKO7A8TGPXZKmGATHAZI9nw6ScDutDPOTOYxiT4McKVlJBwARseWg 9oAw== X-Gm-Message-State: AOAM5319nnIi2etYgeRd0W6quZymNqMix2J9mu6/OiGHgR/gpNG1QkXp n0o5v4ZV5RjDldE2UyDNk1sWzuLQeLYvEn1scdHVtCcAWXqGvw== X-Google-Smtp-Source: ABdhPJzidqwhxUO1SHsGSr3s0l4tWNOmz+05CTMCpHq4ceH2L7A0m3WtgJaxisxu24mqbGP7RF72n/NR44HiQZFRG34= X-Received: by 2002:a05:6214:21cf:b0:42d:cc:4121 with SMTP id d15-20020a05621421cf00b0042d00cc4121mr22736020qvh.70.1645613141427; Wed, 23 Feb 2022 02:45:41 -0800 (PST) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <2f41ba40-9c3f-ac65-ef0d-300bd11c4867@yandex.ru> <300e30e1-aeea-ffa5-fa13-d541ccbffe30@yandex.ru> In-Reply-To: <300e30e1-aeea-ffa5-fa13-d541ccbffe30@yandex.ru> From: David Fussner Date: Wed, 23 Feb 2022 10:45:28 +0000 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Dmitry, Thanks again for looking at all this, and for your patience. On Wed, 23 Feb 2022 at 02:21, Dmitry Gutov wrote: > > That might call for a different implementation of 'references' indeed. > > But could you make 'blx@opt@uniquename' the default search string in > that example? Does that make sense? > I guess it might be possible to come up with a regexp to suppress the @ in some positions in the string, but the bad news is that if you M-? with that search string you get no results at all with the default backend. Grep finds the same two as before, but the default format specification eliminates even those. So you're left looking at a string in your buffer and xref is telling you it isn't there. > And if not, all in all, I wouldn't worry too much about > xref-find-references, since TeX is more of a text format (IMHO) than a > program with well-defined identifiers. Perhaps using project-find-regexp > most of the time will save you a lot of the trouble? > You're quite right that C-x p g works well in this instance, and I tried to improve how thing-at-point finds search strings in TeX buffers for this command. I guess TeX is a little bit of a bad fit both for text modes and for prog modes, but I confess I'm still uneasy at the thought of M-? returning such misleading results. What would you think about putting project-find-regexp on M-? in TeX buffers? That is, assuming I don't find reasonably common TeX constructs that defeat it? > > If I understand you right, I think that's what I'm trying to do, but > > allowing for users who perhaps aren't too familiar with emacs regexps > > and who might typically just accept the default search string offered by > > xref. > > I'm not sure how I feel about the extra "fuzziness" in the behavior > which comes with this approach. I see your point here. > > The parser could create both qualified (with \def or \csdef) and > unqualified entries for the same definition. Maybe make it optional > (with -Q argument to etags). Then the user could search using any of > these formats. > I guess we could make etags do some of the work, perhaps adding also a distinction between tagged commands that require this duplication (\def & \csdef) and those that don't (\chapter). Aside from making tags files a lot bigger, and possibly adding another option to a program already overloaded with them -- neither of which is a showstopper -- I suspect it could work pretty well for xref-find-definitions. > > The suggestion about a buffer-local value of that var was made in the > context of trying to make it work with the current etags backend. At > least, in the first patch. If only because I don't really like to see > duplicated code. > > If we find another place where we really want to diverge, we could also > try adding some behavior-altering variable first. > > After that, we might as well add a new backend (I'm not really against > it, just prefer to exhaust other options first), but hopefully someone > else (more familiar with tex-mode) could take over this discussion at > that point, and the subsequent responsibility for the added code. That > person could be yourself too, under right conditions. I certainly concur about duplicated code, and I really did try hard to get by without a new backend, but I won't pretend that I exhausted all or even nearly all of the possibilities. If I'm understanding you correctly, you'd prefer a few, small changes to the backend code in etags.el (and xref.el), should that be necessary, to a whole new backend which limits changes to tex-mode.el. If this understanding is reasonably accurate, I can have another look at earlier iterations of the code to see what I missed, and perhaps come up with something that works right without so much duplication. It may well take me some time, so apologies in advance for being slow. David. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 24 Feb 2022 02:24:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: David Fussner Cc: 53749@debbugs.gnu.org Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.164566943830838 (code B ref 53749); Thu, 24 Feb 2022 02:24:02 +0000 Received: (at 53749) by debbugs.gnu.org; 24 Feb 2022 02:23:58 +0000 Received: from localhost ([127.0.0.1]:46942 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nN3nS-00081K-9k for submit@debbugs.gnu.org; Wed, 23 Feb 2022 21:23:58 -0500 Received: from mail-wr1-f46.google.com ([209.85.221.46]:42529) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nN3nQ-000815-Id for 53749@debbugs.gnu.org; Wed, 23 Feb 2022 21:23:57 -0500 Received: by mail-wr1-f46.google.com with SMTP id d17so738180wrc.9 for <53749@debbugs.gnu.org>; Wed, 23 Feb 2022 18:23:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:message-id:date:mime-version:user-agent:subject :content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=nm2/jvARW/kXJfePE75YpDEu86GSmMahZJxlHqZ+nOo=; b=TnjEHtBdEAwK+rH+QhPcroEGubcqPo0q88lo9uvR5ijEDtiyfURmcKbVoTTDLYLcft TOcApCPC+hHHE7tnlSyNsp4wwInyXQLP6y3J11emiWrtl/+zwoT3tvjMDqA3ffViiYt8 Q6pLrF2kKz3K1ZBpEeV+wAMWbKMfH/BVsYeMA6n2O61jSO6oh2pQPE/wpwfglgnjVQpM iGja949Tin0H4NMngIBauTZNqr8kSs/xUUSN5uMj1px79dAMJtM3gxEZoZTOiKE1L745 MlKqN74cK+Toj++BICEPa46l/5QZwz/CJB00CLlxB9KgcswKNGW+4GHfPhHoE78hjXvx UGjg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:message-id:date:mime-version:user-agent :subject:content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=nm2/jvARW/kXJfePE75YpDEu86GSmMahZJxlHqZ+nOo=; b=g74RqZ0x+uIGryG/TgmqgfXymDFFkWbJ5gVMDU8no11fkM/qgWrvMGMFuDmRLVd5uD C4m2joZMiZPzzJFhBrQffyl8UbBimBTfcXdB1wudN1fec2+obKqIWB1KKtm4XKiDHkA/ MQlKPUl7JHrOoR6KEcNiT2m7kDBAE98X0DPx/vsChf1hBzvMispvR/bVhv8emZM9+DtO iAJaCJDkBdeDPjF4CXliCYpcB3XZ7xEhC7D8e5nFrMyBFcETTGttwBhS33mI8ErNUmvn VYf7FS0wmi7JvwvpSpJ4+jv5sADqR+dCnTIkwSQS0egK6/V2PB1gk3UjMGWQqN7ZSOcL pPbQ== X-Gm-Message-State: AOAM5313oJIOnxiMivgCB7O0NDs8aK6qyX0vEiUvxDQDfcExNd1V+BhY 0wD0Q+frLqySX69O9TGEGOs= X-Google-Smtp-Source: ABdhPJzy0lWj1jz9B5hsbUlW51/H0QmRUmTq9hQ+HA4IeajP1TN0zwbmkeXoGH23N30AGCtu7+iaUA== X-Received: by 2002:a05:6000:1b8a:b0:1e4:b3a3:4c1f with SMTP id r10-20020a0560001b8a00b001e4b3a34c1fmr393552wru.202.1645669430605; Wed, 23 Feb 2022 18:23:50 -0800 (PST) Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id j27sm1164816wrd.32.2022.02.23.18.23.49 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 23 Feb 2022 18:23:50 -0800 (PST) Message-ID: Date: Thu, 24 Feb 2022 04:23:48 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Content-Language: en-US References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <2f41ba40-9c3f-ac65-ef0d-300bd11c4867@yandex.ru> <300e30e1-aeea-ffa5-fa13-d541ccbffe30@yandex.ru> From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.5 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.5 (/) Hi David, On 23.02.2022 12:45, David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: > I guess it might be possible to come up with a regexp to suppress the > @ in some positions in the string, but the bad news is that if you M-? > with that search string you get no results at all with the default > backend. Grep finds the same two as before, but the default format > specification eliminates even those. So you're left looking at a > string in your buffer and xref is telling you it isn't there. That's odd. I've tried searching for 'blx@opt@uniquename' inside \...@, and 'grep -w' successfully finds it. Post-processing fails, apparently, but that depends on the contents of the syntax table. So one solution might be to update tex-mode's syntax table. >> And if not, all in all, I wouldn't worry too much about >> xref-find-references, since TeX is more of a text format (IMHO) than a >> program with well-defined identifiers. Perhaps using project-find-regexp >> most of the time will save you a lot of the trouble? >> > > You're quite right that C-x p g works well in this instance, and I > tried to improve how thing-at-point finds search strings in TeX > buffers for this command. I guess TeX is a little bit of a bad fit > both for text modes and for prog modes, but I confess I'm still uneasy > at the thought of M-? returning such misleading results. What would > you think about putting project-find-regexp on M-? in TeX buffers? > That is, assuming I don't find reasonably common TeX constructs that > defeat it? At the face of it, the suggestion seems odd (those command's features and user expectations are different), but it wouldn't be out of the question to circle back to it later. >> The parser could create both qualified (with \def or \csdef) and >> unqualified entries for the same definition. Maybe make it optional >> (with -Q argument to etags). Then the user could search using any of >> these formats. >> > > I guess we could make etags do some of the work, perhaps adding also a > distinction between tagged commands that require this duplication > (\def & \csdef) and those that don't (\chapter). Aside from making > tags files a lot bigger, and possibly adding another option to a > program already overloaded with them -- neither of which is a > showstopper -- I suspect it could work pretty well for > xref-find-definitions. IIUC tag files for LaTeX aren't going to be particularly big anyway (book projects are almost always smaller than even a mid-sized software project), so the size might never be a problem. But then again, I could be very wrong about that. >> The suggestion about a buffer-local value of that var was made in the >> context of trying to make it work with the current etags backend. At >> least, in the first patch. If only because I don't really like to see >> duplicated code. >> >> If we find another place where we really want to diverge, we could also >> try adding some behavior-altering variable first. >> >> After that, we might as well add a new backend (I'm not really against >> it, just prefer to exhaust other options first), but hopefully someone >> else (more familiar with tex-mode) could take over this discussion at >> that point, and the subsequent responsibility for the added code. That >> person could be yourself too, under right conditions. > > I certainly concur about duplicated code, and I really did try hard to > get by without a new backend, but I won't pretend that I exhausted all > or even nearly all of the possibilities. If I'm understanding you > correctly, you'd prefer a few, small changes to the backend code in > etags.el (and xref.el), should that be necessary, to a whole new > backend which limits changes to tex-mode.el. If this understanding is > reasonably accurate, I can have another look at earlier iterations of > the code to see what I missed, and perhaps come up with something that > works right without so much duplication. It may well take me some > time, so apologies in advance for being slow. Yes, please. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 24 Feb 2022 13:17:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.164570856212201 (code B ref 53749); Thu, 24 Feb 2022 13:17:01 +0000 Received: (at 53749) by debbugs.gnu.org; 24 Feb 2022 13:16:02 +0000 Received: from localhost ([127.0.0.1]:47827 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nNDyU-0003Ac-5J for submit@debbugs.gnu.org; Thu, 24 Feb 2022 08:16:02 -0500 Received: from mail-qv1-f43.google.com ([209.85.219.43]:42596) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nNDyR-0003A1-Er for 53749@debbugs.gnu.org; Thu, 24 Feb 2022 08:16:00 -0500 Received: by mail-qv1-f43.google.com with SMTP id e22so3382427qvf.9 for <53749@debbugs.gnu.org>; Thu, 24 Feb 2022 05:15:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=34VJV798dzq+MIACZ6DeajURltjRqqv7o55eK8zhapo=; b=lGjj/JYFe9odxEsZmg9SdQrjU2BgFxxTeIUrwdIkZfbDSSB0aF13ngSACxyQDtHWgl jvo4pqhV9Xp+MdirWfrtwhj4Qkiny7obueLxJfbqQHh3S+4pu/+VIqcJgLNjt145tvyl 8X0Zunebyz8fPE/ZlgOtDoIOgJL4+s0H/6PCT8DrkfTAsalyVQIMe2LyNmq/QEca1hZB kho9/Ocq40CAPck/7Rs4ojl2fqfnJS3wDqNY9kinV3L5qy91W5vn8Vq3G/bONTMQSFIO A+vAYEFEuGaZvIGsDnC+ytjvMT6GIi8cMI2pO/bL1rdOXqrKB3Ulinf6H3so7BBXK5Mj HAmA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=34VJV798dzq+MIACZ6DeajURltjRqqv7o55eK8zhapo=; b=XZCq+zfEUZC1b+yLKKvqQ1fQpb2GX+vXX96N23cR6bzz5LRbzjlo4DqD5r3CbILu6j YqqSa02KIhcSUGa3axA0msBCPraJDXk/YuHjhcqNzyqhSpGtJfi3Tykf7qXd3/eFtIO6 lK828ZaMnp7F1YQb5vRWhS1VH2q002DztXPGXGWnMO6t7Ct63IM7NZJMpjMDMhXSRNoJ JrMxiTpIUx4BC0CXkgngEOqNyNAq2ZevDVv/nWM9jG1IK67FtdS4O2JHpTeowwOIjWCu F0JSW5thIteJvmvlv2FfMv+NRvDXwWhCl3u0fjGlejB//BPPQ8nEgsRfZ6LBaE60Pirt TB4w== X-Gm-Message-State: AOAM533b+agF82LmfviIC3l2KO2eKZxr/nZH65sDqeGTohrM9MW8r2ih qS8IyLjQBIa/aFPNeoj7Jjmwcw5Rtd2ze6KFcn8= X-Google-Smtp-Source: ABdhPJyrGi8ESvsSKHRHm5NsUlKXeIxhVdq7DCRbcAn2mP/tunFQ21akTAJFVfFdiAmsiPsLyOmoja+kG34P13qbpv8= X-Received: by 2002:ac8:5c4f:0:b0:2dc:8e84:b0ac with SMTP id j15-20020ac85c4f000000b002dc8e84b0acmr2229834qtj.536.1645708553503; Thu, 24 Feb 2022 05:15:53 -0800 (PST) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <2f41ba40-9c3f-ac65-ef0d-300bd11c4867@yandex.ru> <300e30e1-aeea-ffa5-fa13-d541ccbffe30@yandex.ru> In-Reply-To: From: David Fussner Date: Thu, 24 Feb 2022 13:15:41 +0000 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Thanks Dmitry. I'll post back here when I've got something. David. On Thu, 24 Feb 2022 at 02:23, Dmitry Gutov wrote: > > Hi David, > > On 23.02.2022 12:45, David Fussner via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: > > > I guess it might be possible to come up with a regexp to suppress the > > @ in some positions in the string, but the bad news is that if you M-? > > with that search string you get no results at all with the default > > backend. Grep finds the same two as before, but the default format > > specification eliminates even those. So you're left looking at a > > string in your buffer and xref is telling you it isn't there. > > That's odd. I've tried searching for 'blx@opt@uniquename' inside \...@, > and 'grep -w' successfully finds it. Post-processing fails, apparently, > but that depends on the contents of the syntax table. So one solution > might be to update tex-mode's syntax table. > > >> And if not, all in all, I wouldn't worry too much about > >> xref-find-references, since TeX is more of a text format (IMHO) than a > >> program with well-defined identifiers. Perhaps using project-find-regexp > >> most of the time will save you a lot of the trouble? > >> > > > > You're quite right that C-x p g works well in this instance, and I > > tried to improve how thing-at-point finds search strings in TeX > > buffers for this command. I guess TeX is a little bit of a bad fit > > both for text modes and for prog modes, but I confess I'm still uneasy > > at the thought of M-? returning such misleading results. What would > > you think about putting project-find-regexp on M-? in TeX buffers? > > That is, assuming I don't find reasonably common TeX constructs that > > defeat it? > > At the face of it, the suggestion seems odd (those command's features > and user expectations are different), but it wouldn't be out of the > question to circle back to it later. > > >> The parser could create both qualified (with \def or \csdef) and > >> unqualified entries for the same definition. Maybe make it optional > >> (with -Q argument to etags). Then the user could search using any of > >> these formats. > >> > > > > I guess we could make etags do some of the work, perhaps adding also a > > distinction between tagged commands that require this duplication > > (\def & \csdef) and those that don't (\chapter). Aside from making > > tags files a lot bigger, and possibly adding another option to a > > program already overloaded with them -- neither of which is a > > showstopper -- I suspect it could work pretty well for > > xref-find-definitions. > > IIUC tag files for LaTeX aren't going to be particularly big anyway > (book projects are almost always smaller than even a mid-sized software > project), so the size might never be a problem. > > But then again, I could be very wrong about that. > > >> The suggestion about a buffer-local value of that var was made in the > >> context of trying to make it work with the current etags backend. At > >> least, in the first patch. If only because I don't really like to see > >> duplicated code. > >> > >> If we find another place where we really want to diverge, we could also > >> try adding some behavior-altering variable first. > >> > >> After that, we might as well add a new backend (I'm not really against > >> it, just prefer to exhaust other options first), but hopefully someone > >> else (more familiar with tex-mode) could take over this discussion at > >> that point, and the subsequent responsibility for the added code. That > >> person could be yourself too, under right conditions. > > > > I certainly concur about duplicated code, and I really did try hard to > > get by without a new backend, but I won't pretend that I exhausted all > > or even nearly all of the possibilities. If I'm understanding you > > correctly, you'd prefer a few, small changes to the backend code in > > etags.el (and xref.el), should that be necessary, to a whole new > > backend which limits changes to tex-mode.el. If this understanding is > > reasonably accurate, I can have another look at earlier iterations of > > the code to see what I missed, and perhaps come up with something that > > works right without so much duplication. It may well take me some > > time, so apologies in advance for being slow. > > Yes, please. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Augusto Stoffel Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 25 Feb 2022 20:17:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: 53749@debbugs.gnu.org Cc: dfussner@googlemail.com X-Debbugs-Original-To: David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of text editors" X-Debbugs-Original-Cc: 53749@debbugs.gnu.org, David Fussner Received: via spool by submit@debbugs.gnu.org id=B.164582019632008 (code B ref -1); Fri, 25 Feb 2022 20:17:01 +0000 Received: (at submit) by debbugs.gnu.org; 25 Feb 2022 20:16:36 +0000 Received: from localhost ([127.0.0.1]:53813 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nNh12-0008KA-Fa for submit@debbugs.gnu.org; Fri, 25 Feb 2022 15:16:36 -0500 Received: from lists.gnu.org ([209.51.188.17]:42116) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nNh0v-0008Jw-6D for submit@debbugs.gnu.org; Fri, 25 Feb 2022 15:16:29 -0500 Received: from eggs.gnu.org ([209.51.188.92]:50848) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nNh0q-0006XV-Vu for bug-gnu-emacs@gnu.org; Fri, 25 Feb 2022 15:16:29 -0500 Received: from [2a00:1450:4864:20::533] (port=38667 helo=mail-ed1-x533.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nNh0m-00009h-3Z for bug-gnu-emacs@gnu.org; Fri, 25 Feb 2022 15:16:23 -0500 Received: by mail-ed1-x533.google.com with SMTP id s24so8937732edr.5 for ; Fri, 25 Feb 2022 12:16:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=pOtJY65BSCDg5reHSC+XupwZ0t80w4yz2ZVZg70/NPM=; b=GYXELjg/pBo6hQT+aJ2L4VV4TUtbiGFSqxvajZZtkkqXAT6grRQomHjllLI2UwyIAS 5hlPH0P0ZUOhMvLopGT7t5+Qbjoe8DwbU5evHdWNi2ZbZyP1/oFFyTgEuiDSKCEhF+CN qrsYdiaAVyqtuTUu4W+PoQNjOJF0g2arS2eKDRA7L0fGSp8nHh3BbrhrKJXtLmqyhsZH XC4uKyvHE18rj12RNpKUyy7uv23k88h7JBWdQJ+Gyiq2sidgnAswEQKK/meMPbRTefUp O3V8hQq/9p+mgeigZleCgHlNBK8rxIT6BQDPgVzM+AFjplARx+l0dJtoThhqY7vPLYvl 08ZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=pOtJY65BSCDg5reHSC+XupwZ0t80w4yz2ZVZg70/NPM=; b=vofO5TVpwwyV3RjKEAGKhhKGVXyJJP6RxAW5KHusraJE/bdZ9hJMLkZ+IAxJXySSgj 1w6riQjMTWEot8C+2IVT1keBDJ0fexEcZ7fUgMempFAeOsGERqSoXY/M5WvMYBDUAHaN wlGrDeTvV2EpyFevmfyKSIF5fmt9Iv76gWEKiNz6XMGVAQKqZmwI6K8XUv4BWxPJN4+E ES8Holo9ggWxqU2tlqXnI8GATMznMrHmFOlpU6gnd+ZWXobJ2OvN7wjxE4IMTo5mjOsT uoW/tQGFnEYUZBcJlSsZ64fMSzVFGyRSb9ksf9AxF6AL402cFlB2CWrRqqSHwG2n2VRB EyrQ== X-Gm-Message-State: AOAM533wO1h0MtQTXJy22rKzdGgSjRNCvlUW2ySGs9sJKRauXdo8gocX Er9+qkchuS2yjxCdzpgaXas= X-Google-Smtp-Source: ABdhPJzkrNg5/WBOm2QpdYQfT2LHEAhiHWZc3ImETfIBiHNhwVOdJZUb6waM9FYAvPWOmXgDfKgHNw== X-Received: by 2002:a50:ee90:0:b0:40f:349f:7368 with SMTP id f16-20020a50ee90000000b0040f349f7368mr8488283edr.236.1645820178223; Fri, 25 Feb 2022 12:16:18 -0800 (PST) Received: from ars3 ([2a02:8109:8ac0:56d0::758e]) by smtp.gmail.com with ESMTPSA id n23-20020a509357000000b00412b325b05fsm1750361eda.74.2022.02.25.12.16.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 25 Feb 2022 12:16:17 -0800 (PST) From: Augusto Stoffel References: Date: Fri, 25 Feb 2022 21:16:16 +0100 In-Reply-To: (David Fussner via's message of "Thu, 3 Feb 2022 15:09:22 +0000") Message-ID: <87pmnad7n3.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.91 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Host-Lookup-Failed: Reverse DNS lookup failed for 2a00:1450:4864:20::533 (failed) Received-SPF: pass client-ip=2a00:1450:4864:20::533; envelope-from=arstoffel@gmail.com; helo=mail-ed1-x533.google.com X-Spam_score_int: -6 X-Spam_score: -0.7 X-Spam_bar: / X-Spam_report: (-0.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, PDS_HP_HELO_NORDNS=0.659, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) Hi David, I took a superficial look at this thread, and this seems very nice. I was wondering why you want to be able to find the definition of macros with @ in their name. Those are "private" macros that the user shouldn't have occasion to use. Is it for a TeX programmer mode? Let me also mention a library I wrote for analyzing TeX code (accessible to Emacs via LSP): https://github.com/astoff/digestif It's written in Lua (can run on the LuaTeX interpreter) and uses PEGs for flexible parsing. If you want to be very ambitious about what you are able to parse, I think regexps are not sufficient. Digestif can handle \cite{messed up reference} just fine, for example. On Thu, 3 Feb 2022 at 15:09, David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of text editors" wrote: > I've recently been trying to use xref commands with a tags table in a > TeX repository, and many of the results are sub-optimal. This is a > known issue -- within living memory there have been at least two > discussions related to it on help-gnu-emacs: > > https://lists.gnu.org/archive/html/help-gnu-emacs/2018-06/msg00126.html > https://lists.gnu.org/archive/html/help-gnu-emacs/2021-07/msg00436.html > > Neither discussion resulted in any code, at least not that I can find, > and the issues mentioned there remain. For example, > xref-find-definitions on, say, '\mycommand' returns > > No definitions found for: mycommand. > > (The absence of the escape char in the search string makes the search > fail, as the tag name in the table will be '\mycommand'.) > > Similarly, any xref command on 'my:citekey' will only search by default > for the half of the symbol under point, stopping at the colon. > > There are many other behaviors that are suboptimal, as well, so in the > end I wrote a new xref backend for TeX buffers (cloning large portions > of the default etags backend), and wondered whether it might be welcome > in GNU Emacs. > > A few remarks: > > 1. The code should work as it stands both in the AUCTeX and the in-tree > modes. The AUCTeX hooks I've included in the patch are provisional, as > I would want to discuss with them how they would want to handle it, > should the patch be accepted in some form. > > 2. Along the way I found some issues with how etags parses TeX files, > issues which affect the usefulness of the xref commands, so I've made > changes in etags.c as well. When running the test suite for etags the > only diffs occurred in the TeX-related sections of the resulting tags > file, and location information in those sections was good. > > 3. The patch as it stands enables all the changes by default to give > what I judge to be the best out-of-the-box experience, but wiser heads > may well have other ideas. > > 4. If it looks like the patch will make it into Emacs in some form, I'm > going to need to assign copyright, so I'd appreciate help with getting > that started. > > Thanks, > > David. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 26 Feb 2022 09:30:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Augusto Stoffel Cc: 53749@debbugs.gnu.org X-Debbugs-Original-Cc: 53749@debbugs.gnu.org, "David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors" Received: via spool by submit@debbugs.gnu.org id=B.164586776421600 (code B ref -1); Sat, 26 Feb 2022 09:30:01 +0000 Received: (at submit) by debbugs.gnu.org; 26 Feb 2022 09:29:24 +0000 Received: from localhost ([127.0.0.1]:54293 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nNtOF-0005cI-Ld for submit@debbugs.gnu.org; Sat, 26 Feb 2022 04:29:24 -0500 Received: from lists.gnu.org ([209.51.188.17]:39174) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nNtOD-0005cA-Gm for submit@debbugs.gnu.org; Sat, 26 Feb 2022 04:29:22 -0500 Received: from eggs.gnu.org ([209.51.188.92]:38630) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nNtOD-0004mn-2x for bug-gnu-emacs@gnu.org; Sat, 26 Feb 2022 04:29:21 -0500 Received: from [2607:f8b0:4864:20::735] (port=45755 helo=mail-qk1-x735.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nNtOB-0002U3-C1 for bug-gnu-emacs@gnu.org; Sat, 26 Feb 2022 04:29:20 -0500 Received: by mail-qk1-x735.google.com with SMTP id b13so6523576qkj.12 for ; Sat, 26 Feb 2022 01:29:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=QCQ9aqQF2VgkXkjJXKe+ExzyiCy1QnZKHQ5H+PCQXpI=; b=HIn811gh+Jc0o/BUZ6t1v+zQfvF6lr2edfonkYLeK+KdX0qr45Hn/mpaPu8wDk6zyI sW5UmUfOI86t6sT6C9cCr3GqSFlXxVTfRljKQmu2AQm6yqfEJUeBZVXl9T+5EuHFB6Rn ELQzecofeKwr/7EW5ck84ZNr93cBhPGapT5aofqJ4aVOvTIOvyPCMWiSZaek/FfHFmz6 pkQ9MBb3i37zyido9tT/5G4yr1TRTfOgC6ul/TBee6cScA5H4d7DCmLRvFP2tQX5QyUF QFXSbLCRO/RJT/gHT276KefVlGGCTCtVg7Z5nLGnRDkrMmt4SmZTLFfbJrHVrwSyPmJD Yrsg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=QCQ9aqQF2VgkXkjJXKe+ExzyiCy1QnZKHQ5H+PCQXpI=; b=OfLHYdKA/hQWUWnAk5b93l5U+72AOG3o5Od2w7zM4X84lS3EY8LZKTi72i1Kv05MEj kC4eCJ+ccwNyBsQCU1xFdJqBRo7FaIkV7YwSR2aEL9bN1lxYKUiDidyRKDERH8UZVOje ih8m/gvpIEnC+U4o6QfWy4+4jg9QEtM6nrOolGAiOwFYzYI00NDo9kNtl6CKFP0BnRsT JvEpMelEMJMhXZ7OzarNIBiM11a1FfpU6tjc5kezDcrCIwNfsnsGkmPHUCDW00fIO1GC UBKOuyYTzZSuVAGh8axnrArdJd8mkJlGVbcIjhz+lGalWmpyQMuBVipV269iMekuXjlf 1tgA== X-Gm-Message-State: AOAM531D2PtBbOJ1FRo9kAfM/2THdSORjx2LB99ar1Zc5lEm3oGJkFKz 4NrBxCYlA1dRhtCXigsBqE7wSxqJtMq9QyBqS7k= X-Google-Smtp-Source: ABdhPJxD2uIvSagDTxAakvQVcDMJpunL8m0eLgVUMJRahlDmDZcQBJ6vMq6XXWoGSoBKp0MEFApWJWatXWn+BsDFl8Y= X-Received: by 2002:a37:4147:0:b0:47c:4595:b8c with SMTP id o68-20020a374147000000b0047c45950b8cmr6917449qka.267.1645867757950; Sat, 26 Feb 2022 01:29:17 -0800 (PST) MIME-Version: 1.0 References: <87pmnad7n3.fsf@gmail.com> In-Reply-To: <87pmnad7n3.fsf@gmail.com> From: David Fussner Date: Sat, 26 Feb 2022 09:29:06 +0000 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Host-Lookup-Failed: Reverse DNS lookup failed for 2607:f8b0:4864:20::735 (failed) Received-SPF: pass client-ip=2607:f8b0:4864:20::735; envelope-from=dfussner@googlemail.com; helo=mail-qk1-x735.google.com X-Spam_score_int: -6 X-Spam_score: -0.7 X-Spam_bar: / X-Spam_report: (-0.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, PDS_HP_HELO_NORDNS=0.659, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) Hi Augusto, On Fri, 25 Feb 2022 at 20:16, Augusto Stoffel wrote: > > Hi David, > > I took a superficial look at this thread, and this seems very nice. Thanks! > > I was wondering why you want to be able to find the definition of macros > with @ in their name. Those are "private" macros that the user > shouldn't have occasion to use. Is it for a TeX programmer mode? I confess that TeX developers are indeed one of the main targets for the feature as I envisioned it. For creating and following \labels, \refs, and \cites (of all sorts) I find RefTeX very handy, as well as for jumping around \chapters and \sections and the like. What I miss when developing are the code-navigation features of something like xref, which are (from the user point of view) both simple and powerful. My modest goal was to make Emacs' extensive infrastructure work a little better out of the box for TeX documents, especially for styles and other collections of macros. > > Let me also mention a library I wrote for analyzing TeX code (accessible > to Emacs via LSP): > > https://github.com/astoff/digestif > > It's written in Lua (can run on the LuaTeX interpreter) and uses PEGs > for flexible parsing. If you want to be very ambitious about what you > are able to parse, I think regexps are not sufficient. > > Digestif can handle \cite{messed up reference} just fine, for example. > This looks very nice indeed, and if I'm reading it right provides a replacement both for RefTeX and for the code-navigation features I'm trying to implement. I figure I'll continue trying to get improved out-of-the-box features into core, and if I manage to satisfy Dmitry we'll then have a choice, but in any case I'm going to have a longer look at digestif when I get some time. Thanks for the hint! David. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Augusto Stoffel Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 26 Feb 2022 10:57:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: David Fussner Cc: 53749@debbugs.gnu.org X-Debbugs-Original-Cc: 53749@debbugs.gnu.org, "David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors" Received: via spool by submit@debbugs.gnu.org id=B.164587301930991 (code B ref -1); Sat, 26 Feb 2022 10:57:02 +0000 Received: (at submit) by debbugs.gnu.org; 26 Feb 2022 10:56:59 +0000 Received: from localhost ([127.0.0.1]:54334 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nNul1-00083m-49 for submit@debbugs.gnu.org; Sat, 26 Feb 2022 05:56:59 -0500 Received: from lists.gnu.org ([209.51.188.17]:38498) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nNuky-00083X-QT for submit@debbugs.gnu.org; Sat, 26 Feb 2022 05:56:57 -0500 Received: from eggs.gnu.org ([209.51.188.92]:53568) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nNuky-0002LK-Iw for bug-gnu-emacs@gnu.org; Sat, 26 Feb 2022 05:56:56 -0500 Received: from [2a00:1450:4864:20::532] (port=39593 helo=mail-ed1-x532.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nNukw-0008Cv-Eq for bug-gnu-emacs@gnu.org; Sat, 26 Feb 2022 05:56:56 -0500 Received: by mail-ed1-x532.google.com with SMTP id g20so10714243edw.6 for ; Sat, 26 Feb 2022 02:56:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=FiuLSzPgHom99UkqJzF7iOp8PIqjGYHi7APrz9WKkqA=; b=f6RY2WEltd8BdP+oHStF6LtZ6WrYeruvkeoyxKO/BUOYZY55UHnzyV/UATvO4brgLa R3OkhPX8+lXxXI1NCR+FbuB2K3KEnqUgDwIDwP9mBAkAM+JLLIlwpAGWMlhipc3d+DQY 5WcjfMxSPNEkIgNGxsnmezVFFGUlo9gfJF/HvPXvtqm557mXCArPMb/E43W8dK6OebZX vdp3m7q/DJUR9EvgJCqqTnK470PAEirDXsv0QQml4XfB7Yy6UqQTbdDtgTc6mi3cp+rP 9X6qq4MgtEiOeCOm0FxyJPMtKtmcSDSWzhtkVv4U0b9SjmPjuEWdWtxxyFSvatchQ1Hz Hhcw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=FiuLSzPgHom99UkqJzF7iOp8PIqjGYHi7APrz9WKkqA=; b=UcdCvNGM4O5i+dH8DJIF59zcHANmJoA+cMnM3eD+vGDnFZc0n+FqDohU6bcp742C6N v+K0TwYRj+GrK5NduQyZbbpwdBreuUEH4UL3zqZRToAgbJfAhGjpyaoUoUv3OL7xyAsX pX0l1fOOFWBnDfmP1/0Iny7wJNTOy52hiozf3CxERq7tGjWmDjSCGh9MpXmyi8fpENle 1CoVIknCOnU9k2FAO0l5d1slO4DYM/4Cgvdo9MmtCJEYYsvjhIPOt5bChb5cduBEeayW dLQPYvZ/TTfnIhmuN1Y25bAyovamg8pKQsPEd8sQRz2ICHhLPGL5OP9t3gpvDoIwTjUp 3Ivw== X-Gm-Message-State: AOAM533R+bM4LEDf4+3Eu1O/cJivtILXmtfZxYnYIrefkOmfi6tekn5p fKfZUwXX/9bfIaTyR4W1nSoCa/YLwX3AcA== X-Google-Smtp-Source: ABdhPJyto6oGJpRqyfOM7aocdnKqMYaReM6+HGONklHUYzjPh4qQb/sycpqQ+ua+FjYpfEhmssmmmg== X-Received: by 2002:a50:aa8c:0:b0:410:801c:4e2f with SMTP id q12-20020a50aa8c000000b00410801c4e2fmr10752783edc.179.1645873012160; Sat, 26 Feb 2022 02:56:52 -0800 (PST) Received: from ars3 ([2a02:8109:8ac0:56d0::758e]) by smtp.gmail.com with ESMTPSA id o14-20020a170906774e00b006d5b915f27dsm2086897ejn.169.2022.02.26.02.56.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 26 Feb 2022 02:56:51 -0800 (PST) From: Augusto Stoffel References: <87pmnad7n3.fsf@gmail.com> Date: Sat, 26 Feb 2022 11:56:50 +0100 In-Reply-To: (David Fussner's message of "Sat, 26 Feb 2022 09:29:06 +0000") Message-ID: <87czj9dhfx.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.91 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Host-Lookup-Failed: Reverse DNS lookup failed for 2a00:1450:4864:20::532 (failed) Received-SPF: pass client-ip=2a00:1450:4864:20::532; envelope-from=arstoffel@gmail.com; helo=mail-ed1-x532.google.com X-Spam_score_int: -6 X-Spam_score: -0.7 X-Spam_bar: / X-Spam_report: (-0.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, PDS_HP_HELO_NORDNS=0.659, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) On Sat, 26 Feb 2022 at 09:29, David Fussner wrote: > Hi Augusto, > > On Fri, 25 Feb 2022 at 20:16, Augusto Stoffel wrote: >> >> Hi David, > >> >> I took a superficial look at this thread, and this seems very nice. > > Thanks! > >> >> I was wondering why you want to be able to find the definition of macros >> with @ in their name. Those are "private" macros that the user >> shouldn't have occasion to use. Is it for a TeX programmer mode? > > I confess that TeX developers are indeed one of the main targets for > the feature as I envisioned it. For creating and following \labels, > \refs, and \cites (of all sorts) I find RefTeX very handy, as well as > for jumping around \chapters and \sections and the like. What I miss > when developing are the code-navigation features of something like > xref, which are (from the user point of view) both simple and > powerful. My modest goal was to make Emacs' extensive infrastructure > work a little better out of the box for TeX documents, especially for > styles and other collections of macros. Sorry for entering a tangent, but here's one more thing I dislike about RefTeX you might want to consider. If you type \label{something}, as opposed to using the RefTeX command to add a label (or if you edit the label by hand) then RefTeX will not reparse the document and get out of sync. Or at least that was the case when I still used RefTeX. So it might be worth considering some cache invalidation scheme there. (Digestif has caching for multifile documents, but parsing a single file is fast enough that this is not a problem I need to worry :-).) >> >> Let me also mention a library I wrote for analyzing TeX code (accessible >> to Emacs via LSP): >> >> https://github.com/astoff/digestif >> >> It's written in Lua (can run on the LuaTeX interpreter) and uses PEGs >> for flexible parsing. If you want to be very ambitious about what you >> are able to parse, I think regexps are not sufficient. >> >> Digestif can handle \cite{messed up reference} just fine, for example. >> > > This looks very nice indeed, and if I'm reading it right provides a > replacement both for RefTeX and for the code-navigation features I'm > trying to implement. That's right. Also command completion (including snippets, if that's your thing) and Eldoc. > I figure I'll continue trying to get improved > out-of-the-box features into core, and if I manage to satisfy Dmitry > we'll then have a choice, but in any case I'm going to have a longer > look at digestif when I get some time. Let me mention one last thing, since you seem interested in a TeX programming mode. Digestif will not work great out of the box for programming because it correctly considers @ to have catcode "other" (so it can't be part of the name of a command). But this is trivial to change and, in fact, Digestif already has a "latex-prog" mode that simulates the correct catcodes. It would be easy to include a "latex-expl3" mode as well. The problem is that there's no way for Emacs to communicate that one of these programming modes is to be used. This could be fixed in two ways: A. by creating latex-prog and latex-expl3 derived modes in Emacs, or B. adding heuristics to Digestif to decide if a given file is "document" or "code". Do you have any thoughts about A? Would there be any other benefits in Emacs to justify the latex-prog and latex-expl3 major modes? It seems that (at least in AUCTeX) @ is always considered a letter, which may be innocuous but is kinda wrong. > > Thanks for the hint! > > David. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Arash Esbati Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 27 Feb 2022 18:44:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Augusto Stoffel Cc: 53749@debbugs.gnu.org, David Fussner Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.164598739715931 (code B ref 53749); Sun, 27 Feb 2022 18:44:02 +0000 Received: (at 53749) by debbugs.gnu.org; 27 Feb 2022 18:43:17 +0000 Received: from localhost ([127.0.0.1]:59207 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nOOVo-00048t-Vp for submit@debbugs.gnu.org; Sun, 27 Feb 2022 13:43:17 -0500 Received: from eggs.gnu.org ([209.51.188.92]:59644) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nOOVn-00048g-9t for 53749@debbugs.gnu.org; Sun, 27 Feb 2022 13:43:15 -0500 Received: from [2001:470:142:3::e] (port=54422 helo=fencepost.gnu.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nOOVh-0007MC-2h; Sun, 27 Feb 2022 13:43:09 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To: From; bh=sL/+jcbohWc/odqt66v0yqvRuyvd36sR/FDyPGjtQ/0=; b=i+dHj06LfboVDCJheM2d psR/ZPC8owPRXUJ+Opek/b5eDKcudj2tTapC7Mrvz8HFS7L3JXTSVS1cxbOxWJ8+FnQ+68BGYcZBi oMn8dH09n3Ii48soAEPOYj8UIPP0GHYg+PKGnEV/BJL/zn1ejrR1+WoNAdt/5HXViYUul20WT/nRg q3MEE2qgGEUFFKokgQtKgkJDg91YHKG096Jo/3i0UvIwldyW6GDF5ZovTgj3K1ArO6KFt/sWM/+7P vdenpxJ2T/bgusyr3/X9grT+VKktrLAOa2GE8zPYSPDkvd6S/OAK3t5qzj6bctrTD6v/LJrbE9BLh jX7yYWOsDCwJgA==; Received: from p5b326363.dip0.t-ipconnect.de ([91.50.99.99]:50422 helo=MUTANT) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nOOVg-00006d-B8; Sun, 27 Feb 2022 13:43:08 -0500 From: Arash Esbati References: <87pmnad7n3.fsf@gmail.com> <87czj9dhfx.fsf@gmail.com> Date: Sun, 27 Feb 2022 19:42:55 +0100 In-Reply-To: <87czj9dhfx.fsf@gmail.com> (Augusto Stoffel's message of "Sat, 26 Feb 2022 11:56:50 +0100") Message-ID: <864k4k2lsg.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Augusto Stoffel writes: > If you type \label{something}, as opposed to using the RefTeX command > to add a label (or if you edit the label by hand) then RefTeX will not > reparse the document and get out of sync. If you know the known labels to RefTeX are out of sync, you can issue `C-c )' with a prefix argument: ,----[ C-h f reftex-reference RET ] | reftex-reference is an interactive native compiled Lisp function in | =E2=80=98reftex-ref.el=E2=80=99. |=20 | (reftex-reference &optional TYPE NO-INSERT CUT) |=20 | Make a LaTeX reference. Look only for labels of a certain TYPE. | With prefix arg, force to rescan buffer for labels. This should only be | necessary if you have recently entered labels yourself without using | reftex-label. Rescanning of the buffer can also be requested from the | label selection menu. | The function returns the selected label or nil. | If NO-INSERT is non-nil, do not insert \ref command, just return label. | When called with 2 C-u prefix args, disable magic word recognition. |=20 | Probably introduced at or before Emacs version 20.1. |=20 `---- Or in the labels *RefTeX select* buffer, you have these choices: r / C-u r Reparse document / Reparse entire document. I usually hit r when I don't find the label I'm looking for. > Or at least that was the case when I still used RefTeX. So it might > be worth considering some cache invalidation scheme there. The question is if it's worth the effort where a remedy is already in place. Best, Arash From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 28 Feb 2022 09:10:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Arash Esbati Cc: 53749@debbugs.gnu.org, Augusto Stoffel Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.16460393978882 (code B ref 53749); Mon, 28 Feb 2022 09:10:02 +0000 Received: (at 53749) by debbugs.gnu.org; 28 Feb 2022 09:09:57 +0000 Received: from localhost ([127.0.0.1]:59985 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nOc2X-0002JA-1w for submit@debbugs.gnu.org; Mon, 28 Feb 2022 04:09:57 -0500 Received: from mail-qt1-f176.google.com ([209.85.160.176]:40794) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nOc2T-0002Ix-FE for 53749@debbugs.gnu.org; Mon, 28 Feb 2022 04:09:53 -0500 Received: by mail-qt1-f176.google.com with SMTP id t28so8342027qtc.7 for <53749@debbugs.gnu.org>; Mon, 28 Feb 2022 01:09:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=TEcTYdBXf7Uh+Wy/k7NnKvcCPiO55Hmrfl2PGCNGXis=; b=EFVxelue7r/2JiIoDN2nRNtF0fX/8yv5x+sHhSZH1uJloltvz1qpb/bNzMr335byC+ /hiJh8Q5qbxGBPAETU42e3mvhAM7kyiGCU86q/PJXwuBvt3IaB9Rcd69ImYiK4PPqqVR kjfiNiZoz4xOPz7DpSNsFzGsFIi7Mw5Iim2Z3n9T8+O97RAMV756BQz6s9JonZrDhDY6 MF4vukrOeQugHPBIW7waUxbc6GdSbO65Fv3NUnpf+jsO2pU+49WAkhG1Dw4bi5XxkLvh urWxKxyIa4ZohsL2UOJXQK4R4WGWyVbF6gVhQcxGbS7km4ofnKg7t7ynuAwRvvxnDLjd o9fA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=TEcTYdBXf7Uh+Wy/k7NnKvcCPiO55Hmrfl2PGCNGXis=; b=3K8GCJfoDpzMZxgjAzVOdKEpgevu+Z5UuJwSgESB77d3FzCvomID57bHW/NYywHEJm CnkNWUJ3HI2Vm+kxeC9nYTiN2WXX18oXQZ/SD53uuMHZcZh4xR8CNNeIC7oY5Wgsv9da ntjmVXNOIOORmk0oDoLPjgDIrLQAIKviji6nrYs6BmuvDJRf1TqNSkSewtpuFO5TAasu zDFfJdVrIbMB2RP3C+4HC++iVarWvpNUJVHt+25h4SClJ8TnLV3kVDaDf/JnxclgISpN fUwjcwnQcngp6hteJpdRGpQZKAplcHX9eiTpxpPbllyzpYwZkWsZEbXInRgnjZZ9nwSP DwPA== X-Gm-Message-State: AOAM532tI4vMZHqTzsU6E+eWdW9e4z49rAiNpFcmoVFYDxndKOr1PMhp mO600YidFldzMb1iWShIug/FZgA4X/kbHNXlURc= X-Google-Smtp-Source: ABdhPJzYk8EWMj294pfJCKOolNqIrTUGsI1TQiBv+CBH1ze0cBX4POxLrQ6AierbvFC01xJqV9qxM/xYwpgL+RRrTl8= X-Received: by 2002:a05:622a:1a1c:b0:2de:82f:b1f5 with SMTP id f28-20020a05622a1a1c00b002de082fb1f5mr15895498qtb.156.1646039387910; Mon, 28 Feb 2022 01:09:47 -0800 (PST) MIME-Version: 1.0 References: <87pmnad7n3.fsf@gmail.com> <87czj9dhfx.fsf@gmail.com> <864k4k2lsg.fsf@gnu.org> In-Reply-To: <864k4k2lsg.fsf@gnu.org> From: David Fussner Date: Mon, 28 Feb 2022 09:09:36 +0000 Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Augusto, For what it's worth, I've always just done what Arash suggests when RefTeX gets out of sync, and haven't had any issues with it that I can remember. (To be fair, my use cases haven't exactly been exotic.) > The problem is that there's no way for Emacs to communicate that one of > these programming modes is to be used. This could be fixed in two ways: > > A. by creating latex-prog and latex-expl3 derived modes in Emacs, or > > B. adding heuristics to Digestif to decide if a given file is "document" > or "code". > > Do you have any thoughts about A? Would there be any other benefits in > Emacs to justify the latex-prog and latex-expl3 major modes? It seems > that (at least in AUCTeX) @ is always considered a letter, which may be > innocuous but is kinda wrong. The only thought I have is that it sounds like a new major mode would be overkill for what you need here. I would think that a variable or defcustom might do the trick, or at most maybe a minor mode? When navigating code I really want to be able to follow the commands to their source no matter whether the command is internal or for users, though I can see how in a code-completion setting you might want to be able to separate the two more cleanly. Obviously, I'm not the person you need to convince about all of this -- that would be Arash and the emacs maintainers, themselves. Best, David. On Sun, 27 Feb 2022 at 18:43, Arash Esbati wrote: > > Augusto Stoffel writes: > > > If you type \label{something}, as opposed to using the RefTeX command > > to add a label (or if you edit the label by hand) then RefTeX will not > > reparse the document and get out of sync. > > If you know the known labels to RefTeX are out of sync, you can issue > `C-c )' with a prefix argument: > > ,----[ C-h f reftex-reference RET ] > | reftex-reference is an interactive native compiled Lisp function in > | =E2=80=98reftex-ref.el=E2=80=99. > | > | (reftex-reference &optional TYPE NO-INSERT CUT) > | > | Make a LaTeX reference. Look only for labels of a certain TYPE. > | With prefix arg, force to rescan buffer for labels. This should only b= e > | necessary if you have recently entered labels yourself without using > | reftex-label. Rescanning of the buffer can also be requested from the > | label selection menu. > | The function returns the selected label or nil. > | If NO-INSERT is non-nil, do not insert \ref command, just return label. > | When called with 2 C-u prefix args, disable magic word recognition. > | > | Probably introduced at or before Emacs version 20.1. > | > `---- > > Or in the labels *RefTeX select* buffer, you have these choices: > > r / C-u r Reparse document / Reparse entire document. > > I usually hit r when I don't find the label I'm looking for. > > > Or at least that was the case when I still used RefTeX. So it might > > be worth considering some cache invalidation scheme there. > > The question is if it's worth the effort where a remedy is already in > place. > > Best, Arash From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Arash Esbati Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 28 Feb 2022 11:56:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: David Fussner Cc: 53749@debbugs.gnu.org, Augusto Stoffel Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.16460493333985 (code B ref 53749); Mon, 28 Feb 2022 11:56:02 +0000 Received: (at 53749) by debbugs.gnu.org; 28 Feb 2022 11:55:33 +0000 Received: from localhost ([127.0.0.1]:60322 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nOecn-00012D-HD for submit@debbugs.gnu.org; Mon, 28 Feb 2022 06:55:33 -0500 Received: from eggs.gnu.org ([209.51.188.92]:57192) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nOecl-000121-MK for 53749@debbugs.gnu.org; Mon, 28 Feb 2022 06:55:32 -0500 Received: from [2001:470:142:3::e] (port=37644 helo=fencepost.gnu.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nOecg-0001z2-C9; Mon, 28 Feb 2022 06:55:26 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To: From; bh=cqn9p5eHNJByoXorGwu720L6kgXeZR7ZMokcRcx2SNk=; b=MbzMNddh1vOuF+p01xLB ER9r3rVpqIp1O4sPbONZSzJqzFsApAhslgqhqpv13q4DhyUyTtssx01dawokZjKOvHntbRAWK1Vz5 QuMQrrrJRL5wJ+c/qNKRJby4ENe7soptkCX/85H7X31o3+V+kcSiSTsgcyoSKM9OYLQhT0qoWel5K 6P6MlhpaS/4HsC3gwk9dd58ZKvFqUO5ImSXRH0npZC/I6XPYZzgJTrUc/fIf1Q/z73mY7AJt8Ljg1 +ozr4jkv+hO1sUUhVVUgD+YG+PHe2+ZjOoVkPkvw4PvdGHgarD+WoDUuQSgNugqYUZvSnPI/nQW2D vK2dV9x0rwdVHw==; Received: from p5b326363.dip0.t-ipconnect.de ([91.50.99.99]:59179 helo=MUTANT) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nOecf-0003CL-Rc; Mon, 28 Feb 2022 06:55:26 -0500 From: Arash Esbati References: <87pmnad7n3.fsf@gmail.com> <87czj9dhfx.fsf@gmail.com> <864k4k2lsg.fsf@gnu.org> Date: Mon, 28 Feb 2022 12:54:52 +0100 In-Reply-To: (David Fussner's message of "Mon, 28 Feb 2022 09:09:36 +0000") Message-ID: <86h78j8aur.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) David Fussner writes: >> The problem is that there's no way for Emacs to communicate that one of >> these programming modes is to be used. This could be fixed in two ways: >> >> A. by creating latex-prog and latex-expl3 derived modes in Emacs, or >> >> B. adding heuristics to Digestif to decide if a given file is "document" >> or "code". >> >> Do you have any thoughts about A? Would there be any other benefits in >> Emacs to justify the latex-prog and latex-expl3 major modes? It seems >> that (at least in AUCTeX) @ is always considered a letter, which may be >> innocuous but is kinda wrong. > > The only thought I have is that it sounds like a new major mode would > be overkill for what you need here. I would think that a variable or > defcustom might do the trick, or at most maybe a minor mode? Sorry if I'm missing something here, I wasn't tracking this thread. But does doctex-mode (or docTeX in AUCTeX) fit the bill here? Best, Arash From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Augusto Stoffel Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 28 Feb 2022 13:06:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: David Fussner Cc: 53749@debbugs.gnu.org, Arash Esbati Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.164605354919885 (code B ref 53749); Mon, 28 Feb 2022 13:06:02 +0000 Received: (at 53749) by debbugs.gnu.org; 28 Feb 2022 13:05:49 +0000 Received: from localhost ([127.0.0.1]:60473 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nOfim-0005Af-Fo for submit@debbugs.gnu.org; Mon, 28 Feb 2022 08:05:48 -0500 Received: from mail-ed1-f42.google.com ([209.85.208.42]:33622) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nOfik-0005AR-E2 for 53749@debbugs.gnu.org; Mon, 28 Feb 2022 08:05:46 -0500 Received: by mail-ed1-f42.google.com with SMTP id s14so17549440edw.0 for <53749@debbugs.gnu.org>; Mon, 28 Feb 2022 05:05:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version:content-transfer-encoding; bh=49H0wRYpOluU+MRv3P538YcwV03c6qfYnHcDghI3il4=; b=oOAvMH5kT4KT36vpFPIaCM4fgdZxuCbJR4r1TpW3k1lvEv0NZgkQ59N/dLLPvqFi3q WvTrwDveDRgU5oP24bsprqZwY/GthYSHNTHWYym6PNL2V0tmfmuKWUFuu4n1OExn/8rT fNMxEL8bENZ68AuRO9P0CW/ADJYa5svijSsAq/2ROcwMvvHqEiqL0QZ/vAnBuHidLlUO A8lkDp5t7qDsnmK/X4qzbPVu561P3MEfUZ72g7URZpRBha/VlHDFv9SX5UgQFz7ieXpu EecObhuRR5bglfF9cjR0OFolXjta55cg3BNjy62k99UZn/5W/lFcycAvMBVIG5ICuIqN u1xw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version:content-transfer-encoding; bh=49H0wRYpOluU+MRv3P538YcwV03c6qfYnHcDghI3il4=; b=gOSe8z7gRO+f2wKZfww2iGLN91LpMWWqpXGOREvxAWKukJRcNsHWom+7NBB5r3JKVF 2CuqNq0l03I9g94aK2GQUn0MSC33cD2PTqag27cpxUm4QYEbGXZmsLaDcG4p+yPbi6fC dKJsiOPp0jK7YIcURJTPkmxw3oWYZ7dI0LYxczXg3GfK9uzM95m0+zlZ+pg/DR/tofpv txnN77WvFu7Bej6L62tLwnUWsl2Wp3DxQfvRJGQa7cG9woXXNHSW8g3+7KhFoZ/jct1d D68bG7II0iaECqOX3mUU0zJsrnkusw5SKufVC6PxxUSGzklTn1djxOJ41k5VBc1ee0+F xZ4Q== X-Gm-Message-State: AOAM532oofOfSBdP2biTnORR6l3sY44Adsh3kRfMR3t2MlzUljaOo0Oc tveqbwoHy3gsPjphneFBlD0OAYfRMm8MvA== X-Google-Smtp-Source: ABdhPJy8qwtmp3aZ8OSqQcuiBKcz7ODAO1FIRzEYdsyhfBUS3VoCGvQ91GkfJ7NiyS+e1uqeiRyr+Q== X-Received: by 2002:aa7:c0ce:0:b0:400:1a:e9a2 with SMTP id j14-20020aa7c0ce000000b00400001ae9a2mr19883158edp.396.1646053540320; Mon, 28 Feb 2022 05:05:40 -0800 (PST) Received: from ars3 ([2a02:8109:8ac0:56d0::758e]) by smtp.gmail.com with ESMTPSA id sb31-20020a1709076d9f00b006ceb969822esm4385682ejc.76.2022.02.28.05.05.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 28 Feb 2022 05:05:39 -0800 (PST) From: Augusto Stoffel References: <87pmnad7n3.fsf@gmail.com> <87czj9dhfx.fsf@gmail.com> <864k4k2lsg.fsf@gnu.org> Date: Mon, 28 Feb 2022 14:05:38 +0100 In-Reply-To: (David Fussner's message of "Mon, 28 Feb 2022 09:09:36 +0000") Message-ID: <87wnhf9m59.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.91 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On Mon, 28 Feb 2022 at 09:09, David Fussner wrote: > For what it's worth, I've always just done what Arash suggests when > RefTeX gets out of sync, and haven't had any issues with it that I can > remember. (To be fair, my use cases haven't exactly been exotic.) Sure, I'm aware you have to do the manual resync when using RefTeX. I just think it's a totally unnecessary hurdle at this time and age. I used to advice the RefTeX commands so they would reparse the document every time, and this worked just fine. (Granted, I never worked on anything over 100 pages or so, but it should also be possible to reparse individual files of a multifile project so that the file sizes never become an issue.) >> The problem is that there's no way for Emacs to communicate that one of >> these programming modes is to be used. This could be fixed in two ways: >> >> A. by creating latex-prog and latex-expl3 derived modes in Emacs, or >> >> B. adding heuristics to Digestif to decide if a given file is "document" >> or "code". >> >> Do you have any thoughts about A? Would there be any other benefits in >> Emacs to justify the latex-prog and latex-expl3 major modes? It seems >> that (at least in AUCTeX) @ is always considered a letter, which may be >> innocuous but is kinda wrong. > > The only thought I have is that it sounds like a new major mode would > be overkill for what you need here. I would think that a variable or > defcustom might do the trick, or at most maybe a minor mode? When > navigating code I really want to be able to follow the commands to > their source no matter whether the command is internal or for users, > though I can see how in a code-completion setting you might want to be > able to separate the two more cleanly. Obviously, I'm not the person > you need to convince about all of this -- that would be Arash and the > emacs maintainers, themselves. Okay, thanks for your insight. > > Best, > > David. > > On Sun, 27 Feb 2022 at 18:43, Arash Esbati wrote: >> >> Augusto Stoffel writes: >> >> > If you type \label{something}, as opposed to using the RefTeX command >> > to add a label (or if you edit the label by hand) then RefTeX will not >> > reparse the document and get out of sync. >> >> If you know the known labels to RefTeX are out of sync, you can issue >> `C-c )' with a prefix argument: >> >> ,----[ C-h f reftex-reference RET ] >> | reftex-reference is an interactive native compiled Lisp function in >> | =E2=80=98reftex-ref.el=E2=80=99. >> | >> | (reftex-reference &optional TYPE NO-INSERT CUT) >> | >> | Make a LaTeX reference. Look only for labels of a certain TYPE. >> | With prefix arg, force to rescan buffer for labels. This should only = be >> | necessary if you have recently entered labels yourself without using >> | reftex-label. Rescanning of the buffer can also be requested from the >> | label selection menu. >> | The function returns the selected label or nil. >> | If NO-INSERT is non-nil, do not insert \ref command, just return label. >> | When called with 2 C-u prefix args, disable magic word recognition. >> | >> | Probably introduced at or before Emacs version 20.1. >> | >> `---- >> >> Or in the labels *RefTeX select* buffer, you have these choices: >> >> r / C-u r Reparse document / Reparse entire document. >> >> I usually hit r when I don't find the label I'm looking for. >> >> > Or at least that was the case when I still used RefTeX. So it might >> > be worth considering some cache invalidation scheme there. >> >> The question is if it's worth the effort where a remedy is already in >> place. >> >> Best, Arash From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Augusto Stoffel Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 28 Feb 2022 13:12:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Arash Esbati Cc: 53749@debbugs.gnu.org, David Fussner Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.164605387720528 (code B ref 53749); Mon, 28 Feb 2022 13:12:02 +0000 Received: (at 53749) by debbugs.gnu.org; 28 Feb 2022 13:11:17 +0000 Received: from localhost ([127.0.0.1]:60496 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nOfo5-0005L1-Kh for submit@debbugs.gnu.org; Mon, 28 Feb 2022 08:11:17 -0500 Received: from mail-ej1-f45.google.com ([209.85.218.45]:46950) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nOfo4-0005Km-9z for 53749@debbugs.gnu.org; Mon, 28 Feb 2022 08:11:16 -0500 Received: by mail-ej1-f45.google.com with SMTP id qx21so24609175ejb.13 for <53749@debbugs.gnu.org>; Mon, 28 Feb 2022 05:11:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=PWDq0UhgcV1UsuW1wVTWUXOZmwYlTg0TSLLfpFK9IjM=; b=Gm1znBIV8trWlBoZFgiT2dEdpp7QmsIrPrCJS+VZBJXll+bLcmIvT8BqVhVdrYPxlg iiCeffhNPqHowOPWfNIJ/+kqlwV+lol3sQF1xcemwTZsLMLA53ZE8vRmb0j57AN+mrQ4 jUSPxJ1NYoenmQUWmX47UnEMgku/LG+LZvXXUNotUB5WJd5a45i8bC6wvTyADTBNtn0m z7LsyECCkCI3/WGQZgwdbJQo+aW8JTlh2F58l56FvOWUSxxyLrgGkaWo7vFHuSVi3yhk NXX81D/DvDz/zd/I62tCjcT4c+6I6ryiamqMRZe16MId/5yWM0lGBg4gdacq6H9lVObJ qb/Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=PWDq0UhgcV1UsuW1wVTWUXOZmwYlTg0TSLLfpFK9IjM=; b=surHqNTl+zAF4RD2SMZT2nKIqK7wgCmCrWDQI7xScJZnBWXJ3Zz3DAn0IMeIc/7xV6 Wd/xEmuTETt5DKpN7s8QMrdmTzfLVuhFuz7G1w+VWZxFrsp2QeIh0McrbZnIR3gIcozP 2jMgHeVA82xV1XBHDLCOWkm8hvNlA3X73DuDssVdAfE/KkJQpEeDV9lECvTo96ziDuYZ cLSMt2Gancc6bV7duUySZGFifsPlC6xD4nLa6Wbo4JcL/PUAdfdFFTQ7SO4V2tdtOHAi 96Kegzk5z9Mm5lHKmLTG2c33DU5ra90vGFLR1CUqm1NYI1Tky8PolawczFf/O3NZSQDu 9+UA== X-Gm-Message-State: AOAM530cvaqNldtYbsgeP0iShTVZew3PYCRrC1DKixbhakRk2K3bEsgf 81T31vHiCqFmgerDoWqPUNsZWXMYxz1SXw== X-Google-Smtp-Source: ABdhPJz2P3V4f5/kBDfX04gUN/Va/T5kkxZ12T0wxM+cnw51LzcLV/qnQBcUZH7261yfLu/RQ9tfqA== X-Received: by 2002:a17:906:407:b0:6cd:472b:2d5f with SMTP id d7-20020a170906040700b006cd472b2d5fmr14612566eja.573.1646053866768; Mon, 28 Feb 2022 05:11:06 -0800 (PST) Received: from ars3 ([2a02:8109:8ac0:56d0::758e]) by smtp.gmail.com with ESMTPSA id w14-20020a509d8e000000b00412cf368b4csm6079917ede.53.2022.02.28.05.11.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 28 Feb 2022 05:11:05 -0800 (PST) From: Augusto Stoffel References: <87pmnad7n3.fsf@gmail.com> <87czj9dhfx.fsf@gmail.com> <864k4k2lsg.fsf@gnu.org> <86h78j8aur.fsf@gnu.org> Date: Mon, 28 Feb 2022 14:11:05 +0100 In-Reply-To: <86h78j8aur.fsf@gnu.org> (Arash Esbati's message of "Mon, 28 Feb 2022 12:54:52 +0100") Message-ID: <87sfs39lw6.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.91 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On Mon, 28 Feb 2022 at 12:54, Arash Esbati wrote: > Sorry if I'm missing something here, I wasn't tracking this thread. But > does doctex-mode (or docTeX in AUCTeX) fit the bill here? Ah, I forgot about that one. I mean basically that, but for files like plain.tex or tikz.code.tex; or also when writing a .sty file directly for personal purposes only. But since tex-mode and derived ones always pretend @ is a letter, I guess there's no real need for a dedicated TeX programming mode. Now, how about expl3 code, where _ and : are letters too? From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Arash Esbati Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 28 Feb 2022 19:05:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Augusto Stoffel Cc: 53749@debbugs.gnu.org, David Fussner Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.16460750779840 (code B ref 53749); Mon, 28 Feb 2022 19:05:02 +0000 Received: (at 53749) by debbugs.gnu.org; 28 Feb 2022 19:04:37 +0000 Received: from localhost ([127.0.0.1]:34783 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nOlK1-0002Ye-FI for submit@debbugs.gnu.org; Mon, 28 Feb 2022 14:04:37 -0500 Received: from eggs.gnu.org ([209.51.188.92]:55906) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nOlJy-0002YO-Lf for 53749@debbugs.gnu.org; Mon, 28 Feb 2022 14:04:35 -0500 Received: from [2001:470:142:3::e] (port=46426 helo=fencepost.gnu.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nOlJt-0006hH-AC; Mon, 28 Feb 2022 14:04:29 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To: From; bh=/RVTOJUrbvpU16z3ul1LDpKuiVm7VTimIijU9TJbNq0=; b=Vp4rpPIV/sJ0f7vXO747 IwXgJlA+QY+AUEC3aFNLy7Py4wharBdUr0xpdNh1nzc3XYQUyQR/3JnncgVtH+eZKMzcrlzP5D9Z0 NKI8HE4S+qnZWHmlcS99fn2xLjOKieqWsxDhk0y5faHJTubeja40qz7Ula/F8w6JaLWNrMLdk7Ksz avWxvCdc9XJ7dGV8Ro+VSnbDQcFatxxHCW4uUuChk+1X95fQUQWjLKGiGb12PB+rs9OW8YD7nqLWx 5RS9Ke0ff2XXnLQ10AYDlh9wTdCS0ZYkWdD1ocde5L4wU3q1eVFTmcwKnsHVuEonItChAu2jiGvP1 UF35kaO60UjUAA==; Received: from p5b326363.dip0.t-ipconnect.de ([91.50.99.99]:55941 helo=MUTANT) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nOlJs-000493-SK; Mon, 28 Feb 2022 14:04:29 -0500 From: Arash Esbati References: <87pmnad7n3.fsf@gmail.com> <87czj9dhfx.fsf@gmail.com> <864k4k2lsg.fsf@gnu.org> <86h78j8aur.fsf@gnu.org> <87sfs39lw6.fsf@gmail.com> Date: Mon, 28 Feb 2022 20:04:02 +0100 In-Reply-To: <87sfs39lw6.fsf@gmail.com> (Augusto Stoffel's message of "Mon, 28 Feb 2022 14:11:05 +0100") Message-ID: <86a6eaak4d.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Augusto Stoffel writes: > Now, how about expl3 code, where _ and : are letters too? AUCTeX has a style file expl3.el[1] which changes the syntax for "_" and ":". Can't tell about the builtin tex/latex-mode. Best, Arash Footnotes: [1] http://git.savannah.gnu.org/cgit/auctex.git/tree/style/expl3.el From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 01 Mar 2022 08:47:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Arash Esbati Cc: 53749@debbugs.gnu.org, Augusto Stoffel Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.16461244013982 (code B ref 53749); Tue, 01 Mar 2022 08:47:01 +0000 Received: (at 53749) by debbugs.gnu.org; 1 Mar 2022 08:46:41 +0000 Received: from localhost ([127.0.0.1]:35381 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nOy9Z-00012A-Hz for submit@debbugs.gnu.org; Tue, 01 Mar 2022 03:46:41 -0500 Received: from mail-qk1-f181.google.com ([209.85.222.181]:34748) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nOy9X-00011y-SE for 53749@debbugs.gnu.org; Tue, 01 Mar 2022 03:46:40 -0500 Received: by mail-qk1-f181.google.com with SMTP id 185so12449780qkh.1 for <53749@debbugs.gnu.org>; Tue, 01 Mar 2022 00:46:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=U9o8mlU0jKv1EIOASU+ECMaswr6voSVvlXxE8L4y1sc=; b=h1kMJS6SCBVgk9h+DNgnsBp36saCUrol+H0q53KZLWJCIMkXqReMGteAyMkt5L2dQi 1ijKJVKwHTdFryAl45BE9wLd6O7bAJ8NapbBWR5J1ZdIKz216R2KNZRaTmGx8bKrJbUP S26vtwFhF1MnsXsvuG9vDGv0UeLGxqO0CMvgXGf/YxC8+fcD11ZfyZkVu9sWuEhaCJAh fGk0S9DqajQFGdH6G1DkFNYsYFSt6neYfBMZdYluW4Why2l4gIKMXs6ORcqqmSH/xAAM O0lHqNd1TTOn/YCeN49iPy0rU7n0ABDqpEJH/kI/eSdT7Mz2/6gBadbq/3aGhGfH7QU0 qyAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=U9o8mlU0jKv1EIOASU+ECMaswr6voSVvlXxE8L4y1sc=; b=S2hLk1tR4ur2n6xeNiGSYUwoN5U3IsGaHFS7aXYPI/dqdElVwJM82DrZJrN6IZehea cADj0n7FfvYNLo9oArIMJ8dZ0cfV2ZI30FgMU/SA4H0/zehDP03M5rFmbGglYpWx4bzK cMmCSK9tlh+mhKK2BlPWw3Kf50YPWjYgOqIRjLsjXMPGjzQs9DGQg4uUNJKEIFn1kZuy oUYewjKEev4LqHRTjJ54xZoD8JMl577d/Q+EkVzfOb82R8YOBENAvZKNqoGnCb7qEWVE tUrj2c6Dg3i0e6gc9AC1kEVqZDwFYVJd+vKfkbPXXHZS3IkN/+yhltXEa2Tfb2WgojtH Q14w== X-Gm-Message-State: AOAM532fdeTwyUN/dLQuldM+OlbVeo3a1uhl4kpvFkYvjpO49Bg5QnGq xzApwe/JHBTp/oiZXb4/I7R07WM80qNEGqfYobU= X-Google-Smtp-Source: ABdhPJzh2tj1HelxrFWXPPxYF5LIW8WVF+/ZgMnkgnolumA+K9nTHFQyiTt9zSoQIuhK5GScHwiW3rbNQWlTWLiNCj8= X-Received: by 2002:a05:620a:1475:b0:60d:f9d7:a877 with SMTP id j21-20020a05620a147500b0060df9d7a877mr13360844qkl.54.1646124394233; Tue, 01 Mar 2022 00:46:34 -0800 (PST) MIME-Version: 1.0 References: <87pmnad7n3.fsf@gmail.com> <87czj9dhfx.fsf@gmail.com> <864k4k2lsg.fsf@gnu.org> <86h78j8aur.fsf@gnu.org> <87sfs39lw6.fsf@gmail.com> <86a6eaak4d.fsf@gnu.org> In-Reply-To: <86a6eaak4d.fsf@gnu.org> From: David Fussner Date: Tue, 1 Mar 2022 08:46:23 +0000 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Unless I'm missing something, the in-tree code hasn't (yet) made any syntax changes for expl3. Best, David. On Mon, 28 Feb 2022 at 19:04, Arash Esbati wrote: > > Augusto Stoffel writes: > > > Now, how about expl3 code, where _ and : are letters too? > > AUCTeX has a style file expl3.el[1] which changes the syntax for "_" and > ":". Can't tell about the builtin tex/latex-mode. > > Best, Arash > > Footnotes: > [1] http://git.savannah.gnu.org/cgit/auctex.git/tree/style/expl3.el From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Lars Ingebrigtsen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 08 Sep 2022 13:26:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org, David Fussner Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.166264351523914 (code B ref 53749); Thu, 08 Sep 2022 13:26:02 +0000 Received: (at 53749) by debbugs.gnu.org; 8 Sep 2022 13:25:15 +0000 Received: from localhost ([127.0.0.1]:57682 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oWHWs-0006De-JN for submit@debbugs.gnu.org; Thu, 08 Sep 2022 09:25:14 -0400 Received: from quimby.gnus.org ([95.216.78.240]:56848) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oWHWn-0006DK-SY for 53749@debbugs.gnu.org; Thu, 08 Sep 2022 09:25:13 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References: In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=VqHaHI80aTnlkXeyYytApBLW0GzAO9YKv4fJqHFRH8Y=; b=cZSk5Tr9dDqTVGkxtyYcw4LpSA qbICPnDdXkeDJHBeDwAZcUopp0gzgzFLtsssiYr+2tNQsDWvpFGe4+ZvAmdpVpGWPJhxjHj0hHyMN 1zp++bG+hR9115F7P9G4TmQkWSCTQ0cRzuD48miH1Q3gHabENsGPHp7nMkQ/WY4wy6CQ=; Received: from [84.212.220.105] (helo=joga) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oWHWf-0002mJ-4z; Thu, 08 Sep 2022 15:25:03 +0200 From: Lars Ingebrigtsen In-Reply-To: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> (Dmitry Gutov's message of "Mon, 21 Feb 2022 04:11:33 +0200") References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> X-Now-Playing: Body =?UTF-8?Q?Me=CF=80a's?= _The Work Is Slow_: "Rice Tea" Date: Thu, 08 Sep 2022 15:25:00 +0200 Message-ID: <87o7vq0zir.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Dmitry Gutov writes: > Let us first discuss whether we could make do without an additional > Xref backend. Just to make sure. (I'm going through old bug reports that unfortunately weren't resolved at the time.) Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Dmitry Gutov writes: > Let us first discuss whether we could make do without an additional > Xref backend. Just to make sure. (I'm going through old bug reports that unfortunately weren't resolved at the time.) I've only skimmed this bug report, so I might well have missed something. Was there a conclusion here as to what should be done? It looks like useful functionality to me (but it's been years since I've written tex-y stuff). In any case, if this is to be applied, we'd need to have a copyright assignment to the FSF on file. David, would you be willing to sign that? From debbugs-submit-bounces@debbugs.gnu.org Thu Sep 08 09:25:18 2022 Received: (at control) by debbugs.gnu.org; 8 Sep 2022 13:25:18 +0000 Received: from localhost ([127.0.0.1]:57685 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oWHWv-0006Dw-Uu for submit@debbugs.gnu.org; Thu, 08 Sep 2022 09:25:18 -0400 Received: from quimby.gnus.org ([95.216.78.240]:56864) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oWHWu-0006DT-8C for control@debbugs.gnu.org; Thu, 08 Sep 2022 09:25:16 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Subject:From:To:Message-Id:Date:Sender:Reply-To:Cc: MIME-Version:Content-Type:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=VU3pGUsnxxgSEgT6Bnwj6U1NEOG9+G8k1UpZghaZVsE=; b=McZRM1utzzPjY4ROqsM1znMEe+ wRB7DWAmLULjvxQB12+YF3hXbsmnuTe4iyuzM+PnzxxeDNkXZgMks7/O51AQmQFPObFBJXNgMVGNI YDo2o5ZPSJvmt6SC/wjLXIiOO3wQC5FH4Yb0Gc/3/QCgg/gubC6pbRqAkzxJSCZgDUPw=; Received: from [84.212.220.105] (helo=joga) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oWHWm-0002mY-Bp for control@debbugs.gnu.org; Thu, 08 Sep 2022 15:25:10 +0200 Date: Thu, 08 Sep 2022 15:25:06 +0200 Message-Id: <87mtba0zil.fsf@gnus.org> To: control@debbugs.gnu.org From: Lars Ingebrigtsen Subject: control message for bug #53749 X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: tags 53749 + moreinfo quit Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) tags 53749 + moreinfo quit From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 08 Sep 2022 13:36:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch moreinfo To: Lars Ingebrigtsen Cc: 53749@debbugs.gnu.org, Dmitry Gutov Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.1662644103790 (code B ref 53749); Thu, 08 Sep 2022 13:36:02 +0000 Received: (at 53749) by debbugs.gnu.org; 8 Sep 2022 13:35:03 +0000 Received: from localhost ([127.0.0.1]:57725 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oWHgM-0000CU-Vd for submit@debbugs.gnu.org; Thu, 08 Sep 2022 09:35:03 -0400 Received: from mail-qt1-f178.google.com ([209.85.160.178]:45025) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oWHgK-0000Bl-VT for 53749@debbugs.gnu.org; Thu, 08 Sep 2022 09:35:01 -0400 Received: by mail-qt1-f178.google.com with SMTP id g14so12812260qto.11 for <53749@debbugs.gnu.org>; Thu, 08 Sep 2022 06:35:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date; bh=GYpXlKyBTaQMnRdBJhetfDcP+G5U5WodofsxJGBSMlk=; b=eJ4fAH2Li8G9OWPfLJJ+axl8cWm+52Hbvxs350umlS/DeaEwUtrGViQ44D/bzZqOEr O+Bn6+LFCkBFXlNIpztnHN7HMnG2c9UUm15QXiHManYBQLYjCP20TD8Zii/YoyMwcijd adSy0bVsB6paRTGkJ2EsuteNgkWxBwQkYxh0jeXInjPeQ19Qm2ZwRaARFM7lYGTKPz+2 R5cljdVPF47R5wzqzB120lmku+y7ZzAExxCQVVXUndchQ3cRqmj2hsI64LU7l5XKDA8f u4KQ3vw/xWARpVhMQu7JAEgs7jL2af2bf1nXX/U9iJLHzoTDxUpokZ7pmMZITzEjx7i4 EIww== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date; bh=GYpXlKyBTaQMnRdBJhetfDcP+G5U5WodofsxJGBSMlk=; b=oONjOxkqReLXSZMrUPlwH+PBDLPwInXybT8KAt0qjjROZ6KFKwJrNaHSNpegos31Yg lulGvwAGhp4jxrXe7hl8W2xuNbpfb5kkB63BthXomnqzD1QZy94Hb9lY4nz6yVYMOcqx PpczBPHJ1FIFkdDHjmikZ8kZtWVN7FRL602OcSC0bn2QI8id0/0HEYE7Ro94wOZ31BMX rU2TaN+Oeuj/IBwT+fJR0XZearIQLV3kLu64AiqMzCP4EBa6/eNKPFd0zkhtZVmt9yJf upBAnaXn3bmG4kkySlja+RedQcvnOtiS40HJ8alhmDx5sgURvrPuUVvYLv+YyIVJGMFQ kFEg== X-Gm-Message-State: ACgBeo3DUKoQTq2cBq4LxSdKn8qe1IFwiYU8UBVR66VIRUMWf3ecf0aO 7ZYpdsFdLlb9rCO5DIJUcv1GnYy10WkUbf2/TRg= X-Google-Smtp-Source: AA6agR4XLe8Hwkq95n43He1ciAdk+i6RH3J9rD4Zpl/8h14q5S9PAi9E01EDlYqrM48WgmFXFXjVYDFDDha7QvElvj0= X-Received: by 2002:ac8:590f:0:b0:343:61fc:e242 with SMTP id 15-20020ac8590f000000b0034361fce242mr7757191qty.635.1662644095196; Thu, 08 Sep 2022 06:34:55 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> In-Reply-To: <87o7vq0zir.fsf@gnus.org> From: David Fussner Date: Thu, 8 Sep 2022 14:34:47 +0100 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Lars, The conclusion at the time was that the patch needed reworking before Dmitry was happy with it, and I've not yet found enough time to do so, though I'm still fully intending to make the necessary changes. Please leave the bug open so I can restart the conversation when I have a better patch. (Oh, and I'm more than happy to sign the copyright assignment whenever Dmitry judges the patch to be ready.) Thanks for the reminder. David. On Thu, 8 Sept 2022 at 14:25, Lars Ingebrigtsen wrote: > > Dmitry Gutov writes: > > > Let us first discuss whether we could make do without an additional > > Xref backend. Just to make sure. > > (I'm going through old bug reports that unfortunately weren't resolved > at the time.) > > I've only skimmed this bug report, so I might well have missed > something. Was there a conclusion here as to what should be done? It > looks like useful functionality to me (but it's been years since I've > written tex-y stuff). > > In any case, if this is to be applied, we'd need to have a copyright > assignment to the FSF on file. David, would you be willing to sign > that? From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Lars Ingebrigtsen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 08 Sep 2022 13:40:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch moreinfo To: David Fussner Cc: 53749@debbugs.gnu.org, Dmitry Gutov Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.16626443531267 (code B ref 53749); Thu, 08 Sep 2022 13:40:02 +0000 Received: (at 53749) by debbugs.gnu.org; 8 Sep 2022 13:39:13 +0000 Received: from localhost ([127.0.0.1]:57751 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oWHkP-0000KM-5t for submit@debbugs.gnu.org; Thu, 08 Sep 2022 09:39:13 -0400 Received: from quimby.gnus.org ([95.216.78.240]:57380) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oWHkN-0000K8-9r for 53749@debbugs.gnu.org; Thu, 08 Sep 2022 09:39:11 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References: In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=IOOOhh1kVIe3NDZvnEsWihVh4PoaKhrJdUXVz73wOWc=; b=UkaJzvvbC7h3KPlHBVC6so9RTn mvMQkwxtCHnAW3yi2JT2wCGqfCLQB0Tn99eZLM3RQJH830h7A2Sl9hj6Sh94Raj4reJqFNi7DvL2k dvCoGysNfHZNfMzz15IIB97TOFdGBFVz04pi9IF8a2z1jhyMOv6Cekrf7Yc5gP05yiHE=; Received: from [84.212.220.105] (helo=joga) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oWHkF-0002xX-9t; Thu, 08 Sep 2022 15:39:05 +0200 From: Lars Ingebrigtsen In-Reply-To: (David Fussner's message of "Thu, 8 Sep 2022 14:34:47 +0100") References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAgMAAAAqbBEUAAAABGdBTUEAALGPC/xhBQAAACBj SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAADFBMVEWXlWNpalDFzrf/ //+6G1XXAAAAAWJLR0QDEQxM8gAAAAlwSFlzAAALEgAACxIB0t1+/AAAAAd0SU1FB+YJCAw3Jo99 xAwAAAEDSURBVCjPbdG9boQwDAfwfxCWKqYghb0duvAUQTqWm5wq3ts36XBT99tvaKWKp6zzBQw1 QsoPJ8GJgRQGw6aBf0A4QOQPTCLzkTlDdQKmHQbUnwHs0xZd1eC8vg00ok0j3ZgbDIww27nCBu8r AJEVrqATrZOogCXHNcO5UWIDmV6PsA4F1jtaLgV9WBiMmmGS0Z+gZRc8SQy+og8SVkWXQDehA9+B XlCBaLSyBrH6f99gFFzxPn2INOhQM7ZgTadhh4Ikfr6VDRZ9IkpGQkxj1HJC4ApDd3E75GcwDXCv jrRqzPl6490feLPYga9PTA3b9sDku9yfdOEkyN3WL78oXdz+AJswgvt/SGGhAAAAWmVYSWZNTQAq AAAACAAFARIAAwAAAAEAAQAAARoABQAAAAEAAABKARsABQAAAAEAAABSASgAAwAAAAEAAgAAAhMA AwAAAAEAAQAAAAAAAAAAAEgAAAABAAAASAAAAAEfUvc0AAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIy LTA5LTA4VDEyOjU1OjM4KzAwOjAwWNHXXwAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMi0wOS0wOFQx Mjo1NTozOCswMDowMCmMb+MAAAAXdEVYdGV4aWY6WUNiQ3JQb3NpdGlvbmluZwAxrA+AYwAAAABJ RU5ErkJggg== X-Now-Playing: Body =?UTF-8?Q?Me=CF=80a's?= _The Work Is Slow_: "Ribbon" Date: Thu, 08 Sep 2022 15:39:02 +0200 Message-ID: <8735d20yvd.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: David Fussner writes: > The conclusion at the time was that the patch needed reworking before > Dmitry was happy with it, and I've not yet found enough time to do so, > though I'm still fully intending to make the necessar [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) David Fussner writes: > The conclusion at the time was that the patch needed reworking before > Dmitry was happy with it, and I've not yet found enough time to do so, > though I'm still fully intending to make the necessary changes. Please > leave the bug open so I can restart the conversation when I have a > better patch. Of course. > (Oh, and I'm more than happy to sign the copyright > assignment whenever Dmitry judges the patch to be ready.) Here's the form to get started: Please email the following information to assign@gnu.org, and we will send you the assignment form for your past and future changes. Please use your full legal name (in ASCII characters) as the subject line of the message. ---------------------------------------------------------------------- REQUEST: SEND FORM FOR PAST AND FUTURE CHANGES [What is the name of the program or package you're contributing to?] Emacs [Did you copy any files or text written by someone else in these changes? Even if that material is free software, we need to know about it.] [Do you have an employer who might have a basis to claim to own your changes? Do you attend a school which might make such a claim?] [For the copyright registration, what country are you a citizen of?] [What year were you born?] [Please write your email address here.] [Please write your postal address here.] [Which files have you changed so far, and which new files have you written so far?] From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 08 Sep 2022 15:52:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch moreinfo To: Lars Ingebrigtsen Cc: 53749@debbugs.gnu.org, Dmitry Gutov Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.166265227326810 (code B ref 53749); Thu, 08 Sep 2022 15:52:02 +0000 Received: (at 53749) by debbugs.gnu.org; 8 Sep 2022 15:51:13 +0000 Received: from localhost ([127.0.0.1]:59941 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oWJo8-0006yM-KV for submit@debbugs.gnu.org; Thu, 08 Sep 2022 11:51:12 -0400 Received: from mail-qk1-f171.google.com ([209.85.222.171]:43868) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oWJo4-0006y5-V2 for 53749@debbugs.gnu.org; Thu, 08 Sep 2022 11:51:11 -0400 Received: by mail-qk1-f171.google.com with SMTP id j6so13212310qkl.10 for <53749@debbugs.gnu.org>; Thu, 08 Sep 2022 08:51:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date; bh=tpQXfKI0HxK8WEM4KeKdscXFm2+cVBr00pH7opmcFA0=; b=ajGMx68arKQzN5KkDPfZgFGnljmfVS2kqLYX1aDDWB6nc1e9viRmc6MZ3l3IONMlvx ni/Cp0HIwX53lGbYqtIFRV1XnXfT6jrI/cM0OyHb5MLhros61fHbLAsWtViZI7GHAUp3 Yd/DqWPFZ1BxDhUrKI1uVGBiMOql+lHjSCcZSEscW7sD2LwPhwVHvF394eM1UKgoDSvP 6Csnv3PbsOCcqhVEtTqsEfGT1Wi+5klJ6KsEu1raXPX/QRbPMMm9LlejLDFKh06ff+DZ 9J0ir29zwaYkevXQLoLiL2Gei5D4dXdEkkGf6VnX7Dm7Katx6C5bx05nY5khGEyMEEfi 0ohw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date; bh=tpQXfKI0HxK8WEM4KeKdscXFm2+cVBr00pH7opmcFA0=; b=ibYQ9Av8UGB14zkIcTLsz2OrLyicmg2RNCw1gGXFQMEUMPvSYpO2OxsrlCBI28NLKR 9kjACF8XKAOaYgSyIJcXR2RE3j3DKkcJuALgSF/ZcM7+Ncz8tlh4K9AhgtKtcxMa2zZk S0GZAFvKyWgEcboHiBANDaomD7/9wy+NNYxZunhqF76Yp2vIHNPG7eUnYBlLRtDrqKQa kQ0dSNpmCiUVoOS2h/iEUKI2HzsXygDIUI/2uhGkXlTc6GSC6aOd5h2LQ7vRhfyFF2Uh NMsk0txBM9y6wewK+Y4EXqH6OZgQ1/rjEcHdUTfr7qst2dEQxscrZz0eruVoApwa8AUC LxdA== X-Gm-Message-State: ACgBeo0QtL+tWgH1/xYx37qsc52+cTZYriJdgTRNehDcBe5ePjOki8f+ iDf+pHOTCELCNADSdbFGNujwy9DeACoTJ1J6WQk= X-Google-Smtp-Source: AA6agR5kSb/3AieDnf5mFeG6WVfv7jtarsO9irp9H0BxHSWz7ENZsAOhyXYLaBxHEvD5qPs/9COIaTchfziugpxbjd4= X-Received: by 2002:a05:620a:458c:b0:6bb:848a:b86b with SMTP id bp12-20020a05620a458c00b006bb848ab86bmr6930840qkb.267.1662652263172; Thu, 08 Sep 2022 08:51:03 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> In-Reply-To: <8735d20yvd.fsf@gnus.org> From: David Fussner Date: Thu, 8 Sep 2022 16:50:55 +0100 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Thanks Lars, will do. On Thu, 8 Sept 2022 at 14:39, Lars Ingebrigtsen wrote: > > David Fussner writes: > > > The conclusion at the time was that the patch needed reworking before > > Dmitry was happy with it, and I've not yet found enough time to do so, > > though I'm still fully intending to make the necessary changes. Please > > leave the bug open so I can restart the conversation when I have a > > better patch. > > Of course. > > > (Oh, and I'm more than happy to sign the copyright > > assignment whenever Dmitry judges the patch to be ready.) > > Here's the form to get started: > > > Please email the following information to assign@gnu.org, and we > will send you the assignment form for your past and future changes. > > Please use your full legal name (in ASCII characters) as the subject > line of the message. > ---------------------------------------------------------------------- > REQUEST: SEND FORM FOR PAST AND FUTURE CHANGES > > [What is the name of the program or package you're contributing to?] > Emacs > > [Did you copy any files or text written by someone else in these changes? > Even if that material is free software, we need to know about it.] > > [Do you have an employer who might have a basis to claim to own > your changes? Do you attend a school which might make such a claim?] > > [For the copyright registration, what country are you a citizen of?] > > [What year were you born?] > > [Please write your email address here.] > > [Please write your postal address here.] > > [Which files have you changed so far, and which new files have you written > so far?] From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Stefan Kangas Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 03 Sep 2023 09:09:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch moreinfo To: David Fussner Cc: 53749@debbugs.gnu.org, Lars Ingebrigtsen , Dmitry Gutov Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.169373212714832 (code B ref 53749); Sun, 03 Sep 2023 09:09:01 +0000 Received: (at 53749) by debbugs.gnu.org; 3 Sep 2023 09:08:47 +0000 Received: from localhost ([127.0.0.1]:39362 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qcj66-0003rA-Qu for submit@debbugs.gnu.org; Sun, 03 Sep 2023 05:08:47 -0400 Received: from mail-lf1-x131.google.com ([2a00:1450:4864:20::131]:48318) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qcj64-0003qm-HM for 53749@debbugs.gnu.org; Sun, 03 Sep 2023 05:08:45 -0400 Received: by mail-lf1-x131.google.com with SMTP id 2adb3069b0e04-500b0f06136so933169e87.0 for <53749@debbugs.gnu.org>; Sun, 03 Sep 2023 02:08:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1693732108; x=1694336908; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:from:to:cc:subject:date:message-id:reply-to; bh=gJRb1es0KM5WPn/lcfNivxNbZKbPSzELieC1bIDA8Ww=; b=pPkVObV8r+2dFof2yemdDMZoPCBp+0Q81gxZN91tuHHuES187SKln8DHlKvxSjT8Xp UqSDK/puJmS4Ghl2/IZGE+t5id6Q+J864+3z1HIexckvqrJdYVy0EL5WNuq/ZTv1heQ6 5qrNHAohXZ5+DN/lv4MdFVIMjkWHMk7OGFy3pcTImdX0Gta6qmLzfz9P9LilybznSHL2 6UxZlQsWM+kd44M6l9Z3BShyys9yreDQAMpE24lsPG0GYIUgdygrRKm4tRlpkFUDmG1i pmYSyr0L3TvdWaEWUrZz/kHHu0jP6pwCpXD0Koa3kRT6L8nJLdxDJ9ECg4NAEKfB5334 hW/Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693732108; x=1694336908; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=gJRb1es0KM5WPn/lcfNivxNbZKbPSzELieC1bIDA8Ww=; b=O+aFPJ2+e8Wt6IvNGrQNSqeWwaLShckTmSyhkAVEP2i9JWTW1PacOyCaLkFJhaQboY 69vXLd1VomHZtwbwhAnPWv4Vl6FuW9KisnIPKWtlRX3o4NP8zM5ktgfOcatQz6xTLlNV SLOrz22DwowcmZWCOkaU7tA3h6fQvf0ZL4SLTpJfoj1PIcgU+TtDu2EHrjB/SWwZmP4y 4NFRPcmzsywIYBWorh1uNa0SPjYEQ3RtjX1l+7rWJfm2yACDf7lsavH94JEYG/Hdmwqc p4xvlfrpPMu7LWVdcz7pHvpW88n5N53Oq53n22Jhny8xQV0Dldf1X7t5Y8ow4RDQwgOi M9dw== X-Gm-Message-State: AOJu0Yx47NruXhkpoNJhZJ+oGmnfOEvbAXKHc0bxm2jdwoVzaMDtwADT 2ZPhdJumzKf+aEZMN9W6zWejMa+T9w/dNXLdFbM= X-Google-Smtp-Source: AGHT+IEBNa/fMWHqi1hqcfdkxIqfopCdByC07SAJkju/esC2JzDWAezLkLE3PlcmC0zXlZrxKYag/hwHvhXI22nX1Rk= X-Received: by 2002:a05:6512:6ca:b0:500:b0e8:a899 with SMTP id u10-20020a05651206ca00b00500b0e8a899mr6828450lff.30.1693732108038; Sun, 03 Sep 2023 02:08:28 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Sun, 3 Sep 2023 02:08:27 -0700 From: Stefan Kangas In-Reply-To: (David Fussner's message of "Thu, 8 Sep 2022 16:50:55 +0100") References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> MIME-Version: 1.0 Date: Sun, 3 Sep 2023 02:08:27 -0700 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) David Fussner writes: > Thanks Lars, will do. > > On Thu, 8 Sept 2022 at 14:39, Lars Ingebrigtsen wrote: >> >> David Fussner writes: >> >> > The conclusion at the time was that the patch needed reworking before >> > Dmitry was happy with it, and I've not yet found enough time to do so, >> > though I'm still fully intending to make the necessary changes. Please >> > leave the bug open so I can restart the conversation when I have a >> > better patch. >> >> Of course. That was a year ago. Have you made any progress here? From debbugs-submit-bounces@debbugs.gnu.org Sun Sep 03 05:09:02 2023 Received: (at control) by debbugs.gnu.org; 3 Sep 2023 09:09:02 +0000 Received: from localhost ([127.0.0.1]:39366 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qcj6M-0003rs-5I for submit@debbugs.gnu.org; Sun, 03 Sep 2023 05:09:02 -0400 Received: from mail-lf1-x134.google.com ([2a00:1450:4864:20::134]:62704) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qcj6K-0003rS-8W for control@debbugs.gnu.org; Sun, 03 Sep 2023 05:09:00 -0400 Received: by mail-lf1-x134.google.com with SMTP id 2adb3069b0e04-500bdef7167so1662393e87.0 for ; Sun, 03 Sep 2023 02:08:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1693732124; x=1694336924; darn=debbugs.gnu.org; h=to:subject:message-id:date:mime-version:from:from:to:cc:subject :date:message-id:reply-to; bh=/OSTpmY5Qgo51CSW5uxRMPiWYpKU7aY+x6r9ezhsNsU=; b=BzQeiVCeZE22CxV8fsDVewRreYkr+VaOhdt9DbUNUK2pjVLOkP1crOeMUpIzOjFh+s E8E7ptvkpVX/77rGD5k8vVAkB0SDwgdS7h8Dm5Vj4YA8Ou5lb7CwcOf5zN4cU3PX1DXl Flrf5v8Mkw80dj2phSTum/ENXK7yMlvET7WyZYPXHFugg2fLe8Nku7fXccayK4ALxdgf Zcx92OHNju8DsuDl+QXnnYR3Y3UWvgNOsL9ljA8VunORHzo6SBaDNPfSHwI3HTDOajCQ KA1qaPz2ot1kYZ1YxZBhZ8SKTVI5Cmzb5dQmWD5U6MA64NdP9MV5QUQfW1lxMBFhnzjQ Ev3A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693732124; x=1694336924; h=to:subject:message-id:date:mime-version:from:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=/OSTpmY5Qgo51CSW5uxRMPiWYpKU7aY+x6r9ezhsNsU=; b=VewAzG6rB5XCDPLTttx3mpF2mfDn2Oq5JeXZp87kWtM8AaevTbf4B0S7oNxIGmsZqU /SH/SSPxgxheswv4kMnVmRc0EAR7yw2jvyXrE7A9Y2cGaUgE+VGZy7Zz5K8gzGYZOq5O wsLeY9Dkb8UiS8Shzt5Nvyr3c6o3+Qx0+NhIheQTy7gV8Pt9Nkj0Nowsk1Koo/BzP56e mqMzj+gF4mHgFy/NwShz6SHwthDhVCVH77ejv/5aKf5emqvDjFJPTfkbSg6zNd1t/Koa y7+pNCPHTrZcoAx3Z/dag+w1pLwcXWF7Igi0a6tlMNILQkL9mzmvrfiChpF6H4vhgzOe jONQ== X-Gm-Message-State: AOJu0YzsvqGxXErADUyJNqEnqb7y0SsuN2Q73EifwXgrMsYqTz0ERuPP qbIN5D15Hxwhh6sQugf9HP6cJo0j6grgwkyMbGCn0H1W7lU= X-Google-Smtp-Source: AGHT+IGWs9gC8LfNfccGHDGrh2SOYgnCY2K6uuA5zvpu99i5ducr1yVEV1tm711eOMKHQwfZSoRbgO6MJPRWcjyZ1Co= X-Received: by 2002:a05:6512:3d07:b0:4fd:f6db:a7d9 with SMTP id d7-20020a0565123d0700b004fdf6dba7d9mr2803538lfv.32.1693732124007; Sun, 03 Sep 2023 02:08:44 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Sun, 3 Sep 2023 02:08:43 -0700 From: Stefan Kangas MIME-Version: 1.0 Date: Sun, 3 Sep 2023 02:08:43 -0700 Message-ID: Subject: control message for bug #53749 To: control@debbugs.gnu.org Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) tags 53749 - moreinfo quit From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 03 Sep 2023 10:04:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Stefan Kangas Cc: 53749@debbugs.gnu.org, Lars Ingebrigtsen , Dmitry Gutov Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.169373542830127 (code B ref 53749); Sun, 03 Sep 2023 10:04:02 +0000 Received: (at 53749) by debbugs.gnu.org; 3 Sep 2023 10:03:48 +0000 Received: from localhost ([127.0.0.1]:39581 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qcjxM-0007pq-8a for submit@debbugs.gnu.org; Sun, 03 Sep 2023 06:03:48 -0400 Received: from mail-pj1-x1031.google.com ([2607:f8b0:4864:20::1031]:48376) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qcjxI-0007pb-Qv for 53749@debbugs.gnu.org; Sun, 03 Sep 2023 06:03:46 -0400 Received: by mail-pj1-x1031.google.com with SMTP id 98e67ed59e1d1-26f7f71b9a7so348447a91.0 for <53749@debbugs.gnu.org>; Sun, 03 Sep 2023 03:03:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20221208; t=1693735408; x=1694340208; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Q/+ickqzNEzkc7jiqfa4uHFHZON87/r7vWcAiIXNiMA=; b=VpQ9ynOpDaG4xlkbdL1N1rqAchYlYNPBDbHZ/EKnqwxBEjWDwYY3basfjE9YeZ1AnO sxZWvk6/KdlRQv/4byO2EaIdRFqqQtdNSjLXsB+Cz4/53juz+UEzmZR4wLhSjFj3RIGT Etf+w+2+e9KObaG2dGpgHsJch/UNM0Sl880A8EMEN/uAtZ5HfG5D1XvZJlKdvc95nqI4 Ez/DUCicswfqy1MxdpaM0XiQzyZbONVxmwKbCv9cvO9w4sMN+F85X5ClyhX1l51eX1s+ /dogfZr7DCVqsS8wZnhDG2a2H1wqvNwCg/jjA2d3mrFRm8TFxgfnB+B5t+AY/Qv70dAV l2iA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693735408; x=1694340208; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Q/+ickqzNEzkc7jiqfa4uHFHZON87/r7vWcAiIXNiMA=; b=Qe5rZpdUqhKCVafhL/IjROlwb6GdoVCsQvAIvIxQwbgN+UV4OusJnzglZ6r/QKy8bN 91v4RFfB03H4coCTQIb03ShzvfLiYHXXUUwL0kn2VM+m5tu9OcDqs2QfKQAT0Ux8z3fb JpZC3cyPCda1dJY5USvPJd5ixlf0hNSpPTQn2LVGJ61iSS0laqLJzE5r2AWRTOs8fyPK S2gGEq/eAuSttAKzNTOEw6eUB1MBNCEhmB6YxNSRT9N9lATj5kYP16w8Y6KIMEwWypGA 3e57pjlO2GV9EsCm3om27f/XZcqvEhG8W8S8XJKm1/Ys1OQJlKeEYIs+6Tawv4Mwi9Rt 9fYQ== X-Gm-Message-State: AOJu0Yyn52wRrLk21SeZDiuRzqS9G3NA3jXcjkA1K+SKLJzhQ8+rzl7G NYLCpa6ekjmdjyZvOLeBKjU+eWMctUBltcW9310= X-Google-Smtp-Source: AGHT+IHhz4Ys0lNr/UE1lxTnWLVEAbW6Ga2CtdADlifrotq1ChO+m1mHc7Mblv6JtQlJhsrr5iGzvmAcvOWqoMlPGYQ= X-Received: by 2002:a17:90a:aa94:b0:271:c2fd:721b with SMTP id l20-20020a17090aaa9400b00271c2fd721bmr6471523pjq.18.1693735408356; Sun, 03 Sep 2023 03:03:28 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> In-Reply-To: From: David Fussner Date: Sun, 3 Sep 2023 11:03:16 +0100 Message-ID: Content-Type: multipart/alternative; boundary="0000000000005bd24c06047181a8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --0000000000005bd24c06047181a8 Content-Type: text/plain; charset="UTF-8" Hi Stefan Thanks for the nudge. I do in fact have a patch that I'm just about finding time to test, so I'll try to get it to the list within a week or two. Thanks, and best, David. On Sun, 3 Sept 2023, 10:08 Stefan Kangas, wrote: > David Fussner writes: > > > Thanks Lars, will do. > > > > On Thu, 8 Sept 2022 at 14:39, Lars Ingebrigtsen wrote: > >> > >> David Fussner writes: > >> > >> > The conclusion at the time was that the patch needed reworking before > >> > Dmitry was happy with it, and I've not yet found enough time to do so, > >> > though I'm still fully intending to make the necessary changes. Please > >> > leave the bug open so I can restart the conversation when I have a > >> > better patch. > >> > >> Of course. > > That was a year ago. Have you made any progress here? > --0000000000005bd24c06047181a8 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi=C2=A0Stefan

Thanks for the nudge. I do in fact have a patch that I'm just about = finding time to test, so I'll try to get it to the list within a week o= r two.

Thanks, and best,= =C2=A0

David.=C2=A0

On Sun, 3 Sept 2023, 10:08 Stefan Kangas, <stefankangas@gmail.com> wrote:
David Fussner <dfussner@googlemail.com> wri= tes:

> Thanks Lars, will do.
>
> On Thu, 8 Sept 2022 at 14:39, Lars Ingebrigtsen <larsi@gnus.org>= wrote:
>>
>> David Fussner <dfussner@googlemail.com> writes:
>>
>> > The conclusion at the time was that the patch needed reworkin= g before
>> > Dmitry was happy with it, and I've not yet found enough t= ime to do so,
>> > though I'm still fully intending to make the necessary ch= anges. Please
>> > leave the bug open so I can restart the conversation when I h= ave a
>> > better patch.
>>
>> Of course.

That was a year ago.=C2=A0 Have you made any progress here?
--0000000000005bd24c06047181a8-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Stefan Kangas Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 03 Sep 2023 10:47:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: David Fussner Cc: 53749@debbugs.gnu.org, Lars Ingebrigtsen , Dmitry Gutov Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.169373798013297 (code B ref 53749); Sun, 03 Sep 2023 10:47:02 +0000 Received: (at 53749) by debbugs.gnu.org; 3 Sep 2023 10:46:20 +0000 Received: from localhost ([127.0.0.1]:39729 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qckcV-0003SO-QP for submit@debbugs.gnu.org; Sun, 03 Sep 2023 06:46:20 -0400 Received: from mail-lf1-x12b.google.com ([2a00:1450:4864:20::12b]:53672) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qckcT-0003Rz-Rr for 53749@debbugs.gnu.org; Sun, 03 Sep 2023 06:46:18 -0400 Received: by mail-lf1-x12b.google.com with SMTP id 2adb3069b0e04-50091b91a83so940128e87.3 for <53749@debbugs.gnu.org>; Sun, 03 Sep 2023 03:46:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1693737962; x=1694342762; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:from:to:cc:subject:date:message-id:reply-to; bh=nNLM09GD1aQtb+kDb263aPo7FFW0dbUkmRkwskK99wI=; b=BKn3uZ5zEBs1lsgWmtzrZqjymnQ5PdYmX4hghBXr+C3jU1koj1wwLU0KT5Ew+D8jfp vuJ1HkxUA40umih9wdArzqXVIwgLaQ42gKKtshUifGlJOaxxM2zazrSRJxjN3sWNx2gr bxcaMyRUiYc7WOjnZbPpZoDZ8fWLCOAZmWBkKqkPQ2A2hSR21tOaER2sfQo90uNEmRNv 8eYJ1SjcgcosqsHefWoe0e1RZd8yC4kodTADIzl41JxuOeH/fzvg7SQthZccXka1AFpS 3KFVrWQXeqyDgnqyS0RyDpSjWuMutOwQoJ0RLSJJlvthTZwGN+9DV2fXFUn7ed5jXx3g h2jg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693737962; x=1694342762; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=nNLM09GD1aQtb+kDb263aPo7FFW0dbUkmRkwskK99wI=; b=J+ut1SgqrdurKlbfNfzcr8hb+B5ewgRgf9QOutob4DTkO82agUgD4glyfW1sJFiXU+ s/4ZBTkencYlGWSyV921nQFK+viYCjGPQseXUGJGVSLRq5LfqyRuJHJ2UH0uoKTer+0Z NZFE2aEq6w+aKPN5ISRTMoFJrsmswMfp32BJ9iivOh9Jlo3v/O8g/u3WcKGmTTMbQA7U 0YBtRKeWjpptL7/WBZUPpx7Ure9Lrokp+abDSQ/CQQLNrSfWal7RK1SwIAoP5Cl4gWEZ mcpZorPVI6wQRchef/Gv9p7FD/Tbamgbpn0l/9xSgaxyiFozY4++agnD1/HB/swxz56U sVuQ== X-Gm-Message-State: AOJu0YwOeeO5jqImwdZwgRsNBorFoD+veUN1ngvl/YM3Aw6N9ff30RaD VMOUHnsqqcfgmw6iPzpbMussxiqtCRzuLa3W9mo= X-Google-Smtp-Source: AGHT+IFfbbh5fmuQiahj+EcxytR924l3xraTHHKT69nLnXsaevrlVdw8IYN9vCpP3yuB81Mdo7s50DIKBk1+6qbyenA= X-Received: by 2002:a19:5e13:0:b0:500:d8d6:fc5b with SMTP id s19-20020a195e13000000b00500d8d6fc5bmr3967860lfb.31.1693737961483; Sun, 03 Sep 2023 03:46:01 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Sun, 3 Sep 2023 03:46:01 -0700 From: Stefan Kangas In-Reply-To: References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> MIME-Version: 1.0 Date: Sun, 3 Sep 2023 03:46:01 -0700 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) David Fussner writes: > Thanks for the nudge. I do in fact have a patch that I'm just about finding > time to test, so I'll try to get it to the list within a week or two. Sounds good, and thank you. From debbugs-submit-bounces@debbugs.gnu.org Thu Sep 07 14:27:49 2023 Received: (at control) by debbugs.gnu.org; 7 Sep 2023 18:27:49 +0000 Received: from localhost ([127.0.0.1]:41397 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qeJjI-0006n8-Ta for submit@debbugs.gnu.org; Thu, 07 Sep 2023 14:27:49 -0400 Received: from mail-lf1-x12c.google.com ([2a00:1450:4864:20::12c]:50203) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qeJjF-0006mt-Q5 for control@debbugs.gnu.org; Thu, 07 Sep 2023 14:27:46 -0400 Received: by mail-lf1-x12c.google.com with SMTP id 2adb3069b0e04-5007abb15e9so2163250e87.0 for ; Thu, 07 Sep 2023 11:27:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1694111258; x=1694716058; darn=debbugs.gnu.org; h=to:subject:message-id:date:mime-version:from:from:to:cc:subject :date:message-id:reply-to; bh=ZTjrcO0JByoAzIo6pyyMmQwBMk7FcYO++XK8R/d448I=; b=ewVBmA7859jxAgbIu8Ajkzq2atFYDiHQeda355vEi82G6jyqts73I9oNZ+dqxj63VV lcR1cVLlD8tYN+ZJi3FNPkQeNkTSY/bpkU8zrl5iwo5kAwa6Ou5KzdN6m1LgQnoRvMAf 4m2UZYzqqXDGUzy/ag0lJToO/Bwn+6maPoDMbAScJQRlA27RRb/OwCxpVhq0ECKd99zw jGWfc/BgoUsxV5/lAlp6NAj3A53FJhrth1RRGW0ahCtg8PJFpEjLPZEgCTM9khPiaV/O zrKkY8cUpHkzoIAISBly7iQynjlcz9UIJGHKeJC+XigAqnuuKmHhUHWX8BALXwV241xa r75g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694111258; x=1694716058; h=to:subject:message-id:date:mime-version:from:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=ZTjrcO0JByoAzIo6pyyMmQwBMk7FcYO++XK8R/d448I=; b=IWsESgwtzUhKF/wnsM4ptX1RZWQ4jD3sX4C7E04p8dBl2+ikgjg8oo4fYTZkO+DW69 qQCzWFGTj7W0NlHm7lNDkwYrGAEMTYrW3Hs5p4W9noOMChV0gwAA1PGJvLgv8n9KJNow tyS7QEKRO3z0zG2Y4bLV54bIoWqmNBV2PDn8CwCZrGCSoCvEuwE5XKJvubGP4WBxaO5y vq0GV73otOGb0qrxK0nMixyQ64//GMPNrls/dKurvH2HVmYzQ3ODEiVOR29vgLzctAMH ildLp1tkxdtNGxsXppnKx9KubxPFjve1WB0w6aYGnn3UulssqTxIQIZYAXJPhoSCI4TQ XYQQ== X-Gm-Message-State: AOJu0Yxf9Si9sEBUr/gvMRWfkoMUe79aaS6IgH8bAC6/8GPbNIkvSv30 ttMfOTa4aRZ0/8dJhyohGzjQOI2HJ1zmUmak8/2dHMrDjqg= X-Google-Smtp-Source: AGHT+IFn6ohKtGLt8bZ3EwJccUa9ewYMTH6nxH1lv2ugqjBlg+u9a12ZX4N3fIsfnq9O4c7vBZsNHBO170rKUiSgq5s= X-Received: by 2002:ac2:59d0:0:b0:4fb:9168:1fce with SMTP id x16-20020ac259d0000000b004fb91681fcemr178135lfn.59.1694111257737; Thu, 07 Sep 2023 11:27:37 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Thu, 7 Sep 2023 11:27:37 -0700 From: Stefan Kangas MIME-Version: 1.0 Date: Thu, 7 Sep 2023 11:27:37 -0700 Message-ID: Subject: control message for bug #53749 To: control@debbugs.gnu.org Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) tags 53749 + pending quit From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 13 Sep 2023 11:12:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Kangas Cc: 53749@debbugs.gnu.org, Lars Ingebrigtsen , Dmitry Gutov Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.16946034787709 (code B ref 53749); Wed, 13 Sep 2023 11:12:02 +0000 Received: (at 53749) by debbugs.gnu.org; 13 Sep 2023 11:11:18 +0000 Received: from localhost ([127.0.0.1]:60940 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgNm7-00020E-9M for submit@debbugs.gnu.org; Wed, 13 Sep 2023 07:11:17 -0400 Received: from mail-pg1-x52c.google.com ([2607:f8b0:4864:20::52c]:46579) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgNls-0001zU-GS for 53749@debbugs.gnu.org; Wed, 13 Sep 2023 07:11:13 -0400 Received: by mail-pg1-x52c.google.com with SMTP id 41be03b00d2f7-573f722b86eso4714067a12.1 for <53749@debbugs.gnu.org>; Wed, 13 Sep 2023 04:10:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20221208; t=1694603449; x=1695208249; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=eq/0Z9vATqwjd4nbGd1dvdA0CjUulgJ5db8PtrIaHfo=; b=ZA5rnE3YwoIrjqdqvp4pjtGKwQlxnfpXz2+Qm525EZHndMuVLCF2ZrsMKaAGT8YSCS nRdltu8Bnf7Sc41pe59sRqPWN4D+8S5xEdrvJqpYpvhx7F1pQDCOXPu592cWSvvmqr88 9+H3/GdAjG72GsjUCf77PKRH0Zi/NA3JqBBCUiYqpvR7LXDa5yuTcx0o0SbQaPgueUSj umuDoKGU5hyNMh/ZcLXaVUISzVojHfrpPG6bsoPs6zdK7DiP30vjl0PexkEsWxo4N3nQ PnqBtIoLGCzE3TXNYkcl07NO5+nqjvIqAalgMdhZoPxWvSSM6EGxBaEsZI3I3odVH8Hb Z3wg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694603449; x=1695208249; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=eq/0Z9vATqwjd4nbGd1dvdA0CjUulgJ5db8PtrIaHfo=; b=nEKVQjK9fv/79RmrJKDflUpasj3fpvs39e98S7TQRopWEKtYjvHU1xcyd72g8t2T0a web6EZ9FPDqrdh6ihFddVCZkE6jHl2dH0QNqywuz0O6W4qVTwcVH1khr/xBWme6jrZIW N+zRbtSDvlUmu3weUivkPqgM/gwDzUTX2eJSm5dOJN2pzR8Q9eh5rS8bJlN5zPMEhvna vc20krblnngwHQAlVe2Rh0nZO+gi99S1oBOjUfJ4ERGj0zO8TG/IzgrZ3biMau/hGTL7 n7tJxzIcWzduWPwytI4/TuQXhLj4BIcUfMa+e3r9+gNHiZwG8Brn1coWO0602zokObG0 ql2w== X-Gm-Message-State: AOJu0Yx+kCv4hImjOLdPtRZvAmb4yu/g3xiOLyq33hRkRQqU58e/v8BM 0VrnN9Do35PF7E6IIoRCzmO8hMaobigFfQ9xoMo= X-Google-Smtp-Source: AGHT+IF1AopegZHokBacztAhWbDZKGYwrnt2dqqh0hyO4KwuubqGtHMKGZ3WZ+pZ/vDVVXPiE4z+qpzvNlNI63Pw2bw= X-Received: by 2002:a05:6a20:440f:b0:133:e3e3:dc07 with SMTP id ce15-20020a056a20440f00b00133e3e3dc07mr2411438pzb.49.1694603449094; Wed, 13 Sep 2023 04:10:49 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> In-Reply-To: From: David Fussner Date: Wed, 13 Sep 2023 12:10:36 +0100 Message-ID: Content-Type: multipart/mixed; boundary="0000000000009f58c406053b9c14" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --0000000000009f58c406053b9c14 Content-Type: text/plain; charset="UTF-8" Hi Dmitry, I've belatedly found some time to get the xref commands working better in TeX buffers, this time using the default etags backend, as you requested last year. The basic strategy remains the same -- create a new thing-at-point argument "texsymbol" which replaces "symbol" in a definable set of major modes, then pass the resulting search term to xref. Changes in etags.c ensure that the various TeX modes and the tags tables are cooperating with each other, and I added a new option to etags (--tex-alt-forms) to handle some of the complexities of the TeX escape character (as you suggested). I also manipulate some variables buffer-locally to make things like project-find-regexp and isearch-forward-thing-at-point work better in such buffers. I attach a patch against current master. There is another patch which contains changes to the test suite in test/manual/etags, but I'll leave that one in case the changes I've made to etags.c need further work. I've sent patches to AUCTeX trying to fix a couple of issues there with xref-find-references. There's more work to be done on related issues in tex-mode.el, too, but this patch is a start. Thanks, David. P.S. I'm also starting the copyright assignment process, in case these changes prove acceptable. On Sun, 3 Sept 2023 at 11:46, Stefan Kangas wrote: > > David Fussner writes: > > > Thanks for the nudge. I do in fact have a patch that I'm just about finding > > time to test, so I'll try to get it to the list within a week or two. > > Sounds good, and thank you. --0000000000009f58c406053b9c14 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Fix-behavior-of-xref-commands-in-TeX-buffers.patch" Content-Disposition: attachment; filename="0001-Fix-behavior-of-xref-commands-in-TeX-buffers.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lmhn30dy0 RnJvbSBkNWE3N2JkMWRjNDVlMDYzOGRmM2U0Yzc2M2ExNjg5MTJjOTNiNWI1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBGdXNzbmVyIDxkZnVzc25lckBnb29nbGVtYWlsLmNv bT4KRGF0ZTogV2VkLCAxMyBTZXAgMjAyMyAxMTo1OTo1NCArMDEwMApTdWJqZWN0OiBbUEFUQ0hd IEZpeCBiZWhhdmlvciBvZiB4cmVmIGNvbW1hbmRzIGluIFRlWCBidWZmZXJzCgoqIGxpYi1zcmMv ZXRhZ3MuYyAobG9uZ29wdHMpOiBBZGQgbmV3IG9wdGlvbiAtLXRleC1hbHQtZm9ybXMuCihUZVhf Y29tbWFuZHMpOiBJbXByb3ZlIHBhcnNpbmcgb2YgY29tbWFuZHMgaW4gVGVYIGJ1ZmZlcnMuCihU RVhfZGVmZW52KTogRXhwYW5kIGxpc3Qgb2YgY29tbWFuZHMgdG8gdGFnIGJ5IGRlZmF1bHQgaW4g VGVYCmJ1ZmZlcnMuCihUZVhfaGVscCk6CiogZG9jL2VtYWNzL21haW50YWluaW5nLnRleGkgKFRh ZyBTeW50YXgpOiBEb2N1bWVudCBuZXcgdGFnZ2VkCmNvbW1hbmRzIGFuZCBuZXcgdXNlciBvcHRp b24uCihJZGVudGlmaWVyIFNlYXJjaCk6IEFkZCBub3RlIGFib3V0IGF1dG8tbW9kZS1hbGlzdCBh bmQKeHJlZi1maW5kLXJlZmVyZW5jZXMuCgoqIGxpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsICh0 ZXgtY29tbW9uLWluaXRpYWxpemF0aW9uKTogU2V0IHVwIHhyZWYKbW9kaWZpY2F0aW9ucyBmb3Ig aW4tdHJlZSBUZVggbW9kZXMuCih0ZXgtdGhpbmdhdHB0LW1vZGVzLWxpc3QpOiBOZXcgdmFyLgoo dGV4LXRoaW5nYXRwdC1pcy10ZXhzeW1ib2wpOiBOZXcgZGVmY3VzdG9tLgoodGV4LXNldC10aGlu Z2F0cHQtc3ltYm9sKTogTmV3IGNvbW1hbmQgdG8gYXBwbHkgdmFsdWUgb2YgcHJldmlvdXMKYnVm ZmVyLWxvY2FsbHkuCih0ZXgtLXN5bWJvbC1vci10ZXhzeW1ib2wpOiBOZXcgaGVscGVyIGZ1bmN0 aW9uIGZvciBwcmV2aW91cy4KKHRleC0tdGhpbmctYXQtcG9pbnQpOiBOZXcgZnVuY3Rpb24gdG8g cmV0dXJuIHRleHN5bWJvbAondGhpbmctYXQtcG9pbnQnLgoodGV4LXRoaW5nYXRwdC0tYmVnaW5u aW5nLW9mLXRleHN5bWJvbCkKKHRleC10aGluZ2F0cHQtLWVuZC1vZi10ZXhzeW1ib2wpOiBOZXcg ZnVuY3Rpb25zIHRvIGRlZmluZSB0ZXhzeW1ib2wKInRoaW5nIiBmb3IgJ3RoaW5nLWF0LXBvaW50 Jy4KKHRleC10aGluZ2F0cHQtc3ludGF4LXRhYmxlLCB0ZXgtZXNjYXBlLWNoYXIpOiBOZXcgdmFy cyB0byBkbyB0aGUKc2FtZS4KKHRleC10aGluZ2F0cHQtaW5jbHVkZS1lc2NhcGUpOiBOZXcgZGVm Y3VzdG9tIHRvIHJlZmluZSBiZWhhdmlvciBvZgpwcmV2aW91cy4KKHRleC0taW5jbHVkZS1lc2Nh cGUtcCk6IE5ldyBmdW5jdGlvbiB0byBkbyB0aGUgc2FtZS4KKHRleC10aGluZ2F0cHQtc3ludGF4 LXRhYmxlKTogTmV3IGZ1bmN0aW9uIHRvIGFjY2VzcyBhbmQgbW9kaWZ5IHRoZQpzeW50YXggdGFi bGUgb2YgdGhlIHNhbWUgbmFtZS4KLS0tCiBkb2MvZW1hY3MvbWFpbnRhaW5pbmcudGV4aSB8ICAz MyArKysrKy0KIGxpYi1zcmMvZXRhZ3MuYyAgICAgICAgICAgIHwgMTIyICsrKysrKysrKysrKysr KysrKy0tLQogbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwgfCAyMTYgKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCAzNTcgaW5zZXJ0aW9ucygr KSwgMTQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZG9jL2VtYWNzL21haW50YWluaW5nLnRl eGkgYi9kb2MvZW1hY3MvbWFpbnRhaW5pbmcudGV4aQppbmRleCBhOTUzMzVmM2RmMi4uNDRiOGIz MDQwMjYgMTAwNjQ0Ci0tLSBhL2RvYy9lbWFjcy9tYWludGFpbmluZy50ZXhpCisrKyBiL2RvYy9l bWFjcy9tYWludGFpbmluZy50ZXhpCkBAIC0yNDU3LDYgKzI0NTcsMTMgQEAgSWRlbnRpZmllciBT ZWFyY2gKIHJlZmVyZW5jZWQuICBUaGUgWFJFRiBtb2RlIGNvbW1hbmRzIGFyZSBhdmFpbGFibGUg aW4gdGhpcyBidWZmZXIsIHNlZQogQHJlZntYcmVmIENvbW1hbmRzfS4KIAorV2hlbiBpbnZva2Vk IGluIGEgYnVmZmVyIHdob3NlIG1ham9yIG1vZGUgdXNlcyB0aGUgQGNvZGV7ZXRhZ3N9CitiYWNr ZW5kLCBAa2Jke00tP30gc2VhcmNoZXMgZmlsZXMgYW5kIGJ1ZmZlcnMgd2hvc2UgbWFqb3IgbW9k ZSBtYXRjaGVzCit0aGF0IG9mIHRoZSBvcmlnaW5hbCBidWZmZXIuICBJdCBndWVzc2VzIHRoYXQg bW9kZSBmcm9tIGZpbGUKK2V4dGVuc2lvbnMsIHNvIGlmIEBrYmR7TS0/fSBzZWVtcyB0byBiZSBz a2lwcGluZyByZWxldmFudCBidWZmZXJzIG9yCitmaWxlcywgdHJ5IGN1c3RvbWl6aW5nIHRoZSB2 YXJpYWJsZSBAY29kZXthdXRvLW1vZGUtYWxpc3R9IHRvIGluY2x1ZGUKK3RoZSBtaXNzaW5nIGV4 dGVuc2lvbnMgKEBweHJlZntDaG9vc2luZyBNb2Rlc30pLgorCiBAdmluZGV4IHhyZWYtYXV0by1q dW1wLXRvLWZpcnN0LXhyZWYKICAgSWYgdGhlIHZhbHVlIG9mIHRoZSB2YXJpYWJsZSBAY29kZXt4 cmVmLWF1dG8tanVtcC10by1maXJzdC14cmVmfSBpcwogQGNvZGV7dH0sIEBjb2Rle3hyZWYtZmlu ZC1yZWZlcmVuY2VzfSBhdXRvbWF0aWNhbGx5IGp1bXBzIHRvIHRoZSBmaXJzdApAQCAtMjY3Miw4 ICsyNjc5LDIzIEBAIFRhZyBTeW50YXgKIEBjb2Rle1xzZWN0aW9ufSwgQGNvZGV7XHN1YnNlY3Rp b259LCBAY29kZXtcc3Vic3Vic2VjdGlvbn0sCiBAY29kZXtcZXFub30sIEBjb2Rle1xsYWJlbH0s IEBjb2Rle1xyZWZ9LCBAY29kZXtcY2l0ZX0sCiBAY29kZXtcYmliaXRlbX0sIEBjb2Rle1xwYXJ0 fSwgQGNvZGV7XGFwcGVuZGl4fSwgQGNvZGV7XGVudHJ5fSwKLUBjb2Rle1xpbmRleH0sIEBjb2Rl e1xkZWZ9LCBAY29kZXtcbmV3Y29tbWFuZH0sIEBjb2Rle1xyZW5ld2NvbW1hbmR9LAotQGNvZGV7 XG5ld2Vudmlyb25tZW50fSBhbmQgQGNvZGV7XHJlbmV3ZW52aXJvbm1lbnR9IGFyZSB0YWdzLgor QGNvZGV7XGluZGV4fSwgQGNvZGV7XGRlZn0sIEBjb2Rle1xlZGVmfSwgQGNvZGV7XGdkZWZ9LCBA Y29kZXtceGRlZn0sCitAY29kZXtcbmV3Y29tbWFuZH0sIEBjb2Rle1xyZW5ld2NvbW1hbmR9LCBA Y29kZXtcbmV3ZW52aXJvbm1lbnR9LAorQGNvZGV7XHJlbmV3ZW52aXJvbm1lbnR9LCBAY29kZXtc RGVjbGFyZVJvYnVzdENvbW1hbmR9LAorQGNvZGV7XG5ld3JvYnVzdGNtZH0sIEBjb2Rle1xyZW5l d3JvYnVzdGNtZH0sIEBjb2Rle1xwcm92aWRlY29tbWFuZH0sCitAY29kZXtccHJvdmlkZXJvYnVz dGNtZH0sIEBjb2Rle1xOZXdEb2N1bWVudENvbW1hbmR9LAorQGNvZGV7XFJlbmV3RG9jdW1lbnRD b21tYW5kfSwgQGNvZGV7XFByb3ZpZGVEb2N1bWVudENvbW1hbmR9LAorQGNvZGV7XERlY2xhcmVE b2N1bWVudENvbW1hbmR9LCBAY29kZXtcTmV3RXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZH0sCitA Y29kZXtcUmVuZXdFeHBhbmRhYmxlRG9jdW1lbnRDb21tYW5kfSwKK0Bjb2Rle1xQcm92aWRlRXhw YW5kYWJsZURvY3VtZW50Q29tbWFuZH0sCitAY29kZXtcRGVjbGFyZUV4cGFuZGFibGVEb2N1bWVu dENvbW1hbmR9LAorQGNvZGV7XE5ld0RvY3VtZW50RW52aXJvbm1lbnR9LCBAY29kZXtcUmVuZXdE b2N1bWVudEVudmlyb25tZW50fSwKK0Bjb2Rle1xQcm92aWRlRG9jdW1lbnRFbnZpcm9ubWVudH0s CitAY29kZXtcRGVjbGFyZURvY3VtZW50RW52aXJvbm1lbnR9LCBAY29kZXtcY3NkZWZ9LCBAY29k ZXtcY3NlZGVmfSwKK0Bjb2Rle1xjc2dkZWZ9LCBAY29kZXtcY3N4ZGVmfSwgQGNvZGV7XGNzbGV0 Y3N9LCBAY29kZXtcY3NsZXR9LAorQGNvZGV7XGxldGNzfSwgYW5kIEBjb2Rle1xsZXR9IGFyZSB0 YWdzLiAgU28gdG9vIGFyZSB0aGUgYXJndW1lbnRzIG9mCithbnkgc3RhcnJlZCB2YXJpYW50cyBv ZiB0aGVzZSBjb21tYW5kcywgd2hlbiBzdWNoIHZhcmlhbnRzIGN1cnJlbnRseQorZXhpc3QuCiAK IE90aGVyIGNvbW1hbmRzIGNhbiBtYWtlIHRhZ3MgYXMgd2VsbCwgaWYgeW91IHNwZWNpZnkgdGhl bSBpbiB0aGUKIGVudmlyb25tZW50IHZhcmlhYmxlIEBlbnZ7VEVYVEFHU30gYmVmb3JlIGludm9r aW5nIEBjb21tYW5ke2V0YWdzfS4gIFRoZQpAQCAtMjY4OSw2ICsyNzExLDEzIEBAIFRhZyBTeW50 YXgKIHNwZWNpZmllcyAodXNpbmcgQm91cm5lIHNoZWxsIHN5bnRheCkgdGhhdCB0aGUgY29tbWFu ZHMKIEBzYW1we1xteWNvbW1hbmR9IGFuZCBAc2FtcHtcbXlvdGhlcmNvbW1hbmR9IGFsc28gZGVm aW5lIHRhZ3MuCiAKK1RoZSBAc2FtcHstLXRleC1hbHQtZm9ybXN9IG9wdGlvbiBjYXVzZXMgZWFj aCB0YWcgdG8gaGF2ZSB0d28gbmFtZXMsCitvbmUgd2l0aCBhbmQgb25lIHdpdGhvdXQgdGhlIEBU ZVh7fSBlc2NhcGUgY2hhcmFjdGVyLCB1c3VhbGx5CitAc2FtcHtcfS4gIFRoaXMgbWF5IGJlIGhl bHBmdWwgd2hlbiBtaXhpbmcgdHJhZGl0aW9uYWwgQFRlWHt9IG9yCitATGFUZVh7fSBjb25zdHJ1 Y3RzIChAc2FtcHtcZGVmfSkgd2l0aCBuZXdlciBjb25zdHJ1Y3RzIGZyb20gdGhlCitAc2FtcHtl dG9vbGJveH0gcGFja2FnZSAoQHNhbXB7XGNzZGVmfSkuICBVc2Ugb2YgdGhpcyBvcHRpb24gd2ls bAorZG91YmxlIHRoZSBzaXplIG9mIGFueSBAVGVYe30tcmVsYXRlZCBzZWN0aW9ucyBpbiB5b3Vy IHRhZ3MgZmlsZS4KKwogQGl0ZW0KIEluIExpc3AgY29kZSwgYW55IGZ1bmN0aW9uIGRlZmluZWQg d2l0aCBAY29kZXtkZWZ1bn0sIGFueSB2YXJpYWJsZQogZGVmaW5lZCB3aXRoIEBjb2Rle2RlZnZh cn0gb3IgQGNvZGV7ZGVmY29uc3R9LCBhbmQgaW4gZ2VuZXJhbCB0aGUKZGlmZiAtLWdpdCBhL2xp Yi1zcmMvZXRhZ3MuYyBiL2xpYi1zcmMvZXRhZ3MuYwppbmRleCAxNDdlY2JkN2MxYi4uM2E2Njgy ZmU0NTEgMTAwNjQ0Ci0tLSBhL2xpYi1zcmMvZXRhZ3MuYworKysgYi9saWItc3JjL2V0YWdzLmMK QEAgLTQ3NSw2ICs0NzUsNyBAQCAjZGVmaW5lIHhybmV3KG9wLCBuLCBtKSAoKG9wKSA9IHhucmVh bGxvYyAob3AsIG4sIChtKSAqIHNpemVvZiAqKG9wKSkpCiBzdGF0aWMgYm9vbCBpZ25vcmVpbmRl bnQ7CS8qIC1JOiBpZ25vcmUgaW5kZW50YXRpb24gaW4gQyAqLwogc3RhdGljIGludCBwYWNrYWdl c19vbmx5OwkvKiAtLXBhY2thZ2VzLW9ubHk6IGluIEFkYSwgb25seSB0YWcgcGFja2FnZXMqLwog c3RhdGljIGludCBjbGFzc19xdWFsaWZ5OwkvKiAtUTogcHJvZHVjZSBjbGFzcy1xdWFsaWZpZWQg dGFncyBpbiBDKysvSmF2YSAqLworc3RhdGljIGludCB0ZXhfYWx0X2Zvcm1zOyAgICAgICAvKiAt LXRleC1hbHQtZm9ybXM6IHRhZyBuYW1lcyB3LyBhbmQgdy9vIGVzY2FwZSAqLwogc3RhdGljIGlu dCBkZWJ1ZzsJCS8qIC0tZGVidWcgKi8KIAogLyogU1RESU4gaXMgZGVmaW5lZCBpbiBMeW54T1Mg c3lzdGVtIGhlYWRlcnMgKi8KQEAgLTUwOSw2ICs1MTAsNyBAQCAjZGVmaW5lIFNURElOIDB4MTAw MQkJLyogcmV0dXJuZWQgYnkgZ2V0b3B0X2xvbmcgb24gLS1wYXJzZS1zdGRpbiAqLwogICB7ICJu by1yZWdleCIsICAgICAgICAgICBub19hcmd1bWVudCwgICAgICAgTlVMTCwgICAgICAgICAgICAg ICAnUicgICB9LAogICB7ICJpZ25vcmUtY2FzZS1yZWdleCIsICByZXF1aXJlZF9hcmd1bWVudCwg TlVMTCwgICAgICAgICAgICAgICAnYycgICB9LAogICB7ICJwYXJzZS1zdGRpbiIsICAgICAgICBy ZXF1aXJlZF9hcmd1bWVudCwgTlVMTCwgICAgICAgICAgICAgICBTVERJTiB9LAorICB7ICJ0ZXgt YWx0LWZvcm1zIiwgICAgICBub19hcmd1bWVudCwgICAgICAgJnRleF9hbHRfZm9ybXMsICAgICAx ICAgICB9LAogICB7ICJ2ZXJzaW9uIiwgICAgICAgICAgICBub19hcmd1bWVudCwgICAgICAgTlVM TCwgICAgICAgICAgICAgICAnVicgICB9LAogCiAjaWYgQ1RBR1MgLyogQ3RhZ3Mgb3B0aW9ucyAq LwpAQCAtNzkyLDEyICs3OTQsMjggQEAgI2RlZmluZSBTVERJTiAweDEwMDEJCS8qIHJldHVybmVk IGJ5IGdldG9wdF9sb25nIG9uIC0tcGFyc2Utc3RkaW4gKi8KICJJbiBMYVRlWCB0ZXh0LCB0aGUg YXJndW1lbnQgb2YgYW55IG9mIHRoZSBjb21tYW5kcyAnXFxjaGFwdGVyJyxcblwKICdcXHNlY3Rp b24nLCAnXFxzdWJzZWN0aW9uJywgJ1xcc3Vic3Vic2VjdGlvbicsICdcXGVxbm8nLCAnXFxsYWJl bCcsXG5cCiAnXFxyZWYnLCAnXFxjaXRlJywgJ1xcYmliaXRlbScsICdcXHBhcnQnLCAnXFxhcHBl bmRpeCcsICdcXGVudHJ5JyxcblwKLSdcXGluZGV4JywgJ1xcZGVmJywgJ1xcbmV3Y29tbWFuZCcs ICdcXHJlbmV3Y29tbWFuZCcsXG5cCi0nXFxuZXdlbnZpcm9ubWVudCcgb3IgJ1xccmVuZXdlbnZp cm9ubWVudCcgaXMgYSB0YWcuXG5cCisnXFxpbmRleCcsICdcXGRlZicsICdcXGVkZWYnLCAnXFxn ZGVmJywgJ1xceGRlZicsICdcXG5ld2NvbW1hbmQnLFxuXAorJ1xccmVuZXdjb21tYW5kJywgJ1xc bmV3ZW52aXJvbm1lbnQnLCAnXFxyZW5ld2Vudmlyb25tZW50JyxcblwKKydcXERlY2xhcmVSb2J1 c3RDb21tYW5kLCAnXFxuZXdyb2J1c3RjbWQnLCAnXFxyZW5ld3JvYnVzdGNtZCcsXG5cCisnXFxw cm92aWRlY29tbWFuZCcsICdcXHByb3ZpZGVyb2J1c3RjbWQnLCAnXFxOZXdEb2N1bWVudENvbW1h bmQnLFxuXAorJ1xcUmVuZXdEb2N1bWVudENvbW1hbmQnLCAnXFxQcm92aWRlRG9jdW1lbnRDb21t YW5kJyxcblwKKydcXERlY2xhcmVEb2N1bWVudENvbW1hbmQnLCAnXFxOZXdFeHBhbmRhYmxlRG9j dW1lbnRDb21tYW5kJyxcblwKKydcXFJlbmV3RXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZCcsICdc XFByb3ZpZGVFeHBhbmRhYmxlRG9jdW1lbnRDb21tYW5kJyxcblwKKydcXERlY2xhcmVFeHBhbmRh YmxlRG9jdW1lbnRDb21tYW5kJywgJ1xcTmV3RG9jdW1lbnRFbnZpcm9ubWVudCcsXG5cCisnXFxS ZW5ld0RvY3VtZW50RW52aXJvbm1lbnQnLCAnXFxQcm92aWRlRG9jdW1lbnRFbnZpcm9ubWVudCcs XG5cCisnXFxEZWNsYXJlRG9jdW1lbnRFbnZpcm9ubWVudCcsICdcXGNzZGVmJywgJ1xcY3NlZGVm JywgJ1xcY3NnZGVmJyxcblwKKydcXGNzeGRlZicsICdcXGNzbGV0Y3MnLCAnXFxjc2xldCcsICdc XGxldGNzJywgb3IgJ1xcbGV0JyBpcyBhIHRhZy5cblwKK1NvIGlzIHRoZSBhcmd1bWVudCBvZiBh bnkgb2YgdGhlIHN0YXJyZWQgdmFyaWFudHMgb2YgdGhlc2UgY29tbWFuZHMsXG5cCit3aGVuIGEg c3RhcnJlZCB2YXJpYW50IGN1cnJlbnRseSBleGlzdHMuXG5cCiBcblwKIE90aGVyIGNvbW1hbmRz IGNhbiBiZSBzcGVjaWZpZWQgYnkgc2V0dGluZyB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVcblwK ICdURVhUQUdTJyB0byBhIGNvbG9uLXNlcGFyYXRlZCBsaXN0IGxpa2UsIGZvciBleGFtcGxlLFxu XAotICAgICBURVhUQUdTPVwibXljb21tYW5kOm15b3RoZXJjb21tYW5kXCIuIjsKKyAgICAgVEVY VEFHUz1cIm15Y29tbWFuZDpteW90aGVyY29tbWFuZFwiLlxuXAorXG5cCitUaGUgJy0tdGV4LWFs dC1mb3Jtcycgb3B0aW9uIGNhdXNlcyBlYWNoIHRhZyB0byBoYXZlIHR3byBuYW1lcywgb25lXG5c Cit3aXRoIGFuZCBvbmUgd2l0aG91dCB0aGUgVGVYIGVzY2FwZSBjaGFyLCB1c3VhbGx5ICdcXCcu ICBUaGlzIG1heSBiZVxuXAoraGVscGZ1bCB3aGVuIG1peGluZyB0cmFkaXRpb25hbCBUZVggb3Ig TGFUZVggY29uc3RydWN0cyAoJ1xcZGVmJylcblwKK3dpdGggbmV3ZXIgY29uc3RydWN0cyBmcm9t IHRoZSAnZXRvb2xib3gnIHBhY2thZ2UgKCdcXGNzZGVmJykuIjsKIAogCiBzdGF0aWMgY29uc3Qg Y2hhciAqVGV4aW5mb19zdWZmaXhlcyBbXSA9CkBAIC01NzM1LDEyICs1NzUzLDI3IEBAIFNjaGVt ZV9mdW5jdGlvbnMgKEZJTEUgKmluZikKIAogc3RhdGljIGxpbmVidWZmZXIgKlRFWF90b2t0YWIg PSBOVUxMOyAvKiBUYWJsZSB3aXRoIHRhZyB0b2tlbnMgKi8KIAotLyogRGVmYXVsdCBzZXQgb2Yg Y29udHJvbCBzZXF1ZW5jZXMgdG8gcHV0IGludG8gVEVYX3Rva3RhYi4KLSAgIFRoZSB2YWx1ZSBv ZiBlbnZpcm9ubWVudCB2YXIgVEVYVEFHUyBpcyBwcmVwZW5kZWQgdG8gdGhpcy4gICovCisvKiBE ZWZhdWx0IHNldCBvZiBjb250cm9sIHNlcXVlbmNlcyB0byBwdXQgaW50byBURVhfdG9rdGFiLiAg VGhlIHZhbHVlIG9mCisgICBlbnZpcm9ubWVudCB2YXIgVEVYVEFHUyBpcyBwcmVwZW5kZWQgdG8g dGhpcy4gICgyMDIzKSBBZGQgdmFyaWFudHMgb2YKKyAgICdcZGVmJywgc29tZSBhZGRpdGlvbmFs IExhVGVYIChhbmQgZm9ybWVyIHhwYXJzZSkgY29tbWFuZHMsIGFuZCBjb21tb24KKyAgIHZhcmlh bnRzIGZyb20gdGhlICdldG9vbGJveCcgcGFja2FnZS4gIEFsc28sIGFkZCBzdGFycmVkIHZhcmlh bnRzIG9mIHRoZQorICAgY29tbWFuZHMgaWYgdGhleSBleGlzdC4gKi8KIHN0YXRpYyBjb25zdCBj aGFyICpURVhfZGVmZW52ID0gIlwKLTpjaGFwdGVyOnNlY3Rpb246c3Vic2VjdGlvbjpzdWJzdWJz ZWN0aW9uOmVxbm86bGFiZWw6cmVmOmNpdGU6YmliaXRlbVwKLTpwYXJ0OmFwcGVuZGl4OmVudHJ5 OmluZGV4OmRlZlwKLTpuZXdjb21tYW5kOnJlbmV3Y29tbWFuZDpuZXdlbnZpcm9ubWVudDpyZW5l d2Vudmlyb25tZW50IjsKKzpjaGFwdGVyKjpzZWN0aW9uKjpzdWJzZWN0aW9uKjpzdWJzdWJzZWN0 aW9uKjpwYXJ0KjpsYWJlbDpyZWZcCis6Y2hhcHRlcjpzZWN0aW9uOnN1YnNlY3Rpb246c3Vic3Vi c2VjdGlvbjplcW5vOmNpdGU6YmliaXRlbTpwYXJ0XAorOmFwcGVuZGl4OmVudHJ5OmluZGV4OmRl ZjplZGVmOmdkZWY6eGRlZjpuZXdjb21tYW5kKjpuZXdjb21tYW5kXAorOnJlbmV3Y29tbWFuZCo6 cmVuZXdjb21tYW5kOm5ld2Vudmlyb25tZW50KjpuZXdlbnZpcm9ubWVudFwKKzpyZW5ld2Vudmly b25tZW50KjpyZW5ld2Vudmlyb25tZW50OkRlY2xhcmVSb2J1c3RDb21tYW5kKlwKKzpEZWNsYXJl Um9idXN0Q29tbWFuZDpyZW5ld3JvYnVzdGNtZCo6cmVuZXdyb2J1c3RjbWRcCis6bmV3cm9idXN0 Y21kKjpuZXdyb2J1c3RjbWQ6cHJvdmlkZWNvbW1hbmQqOnByb3ZpZGVjb21tYW5kXAorOnByb3Zp ZGVyb2J1c3RjbWQqOnByb3ZpZGVyb2J1c3RjbWQ6TmV3RG9jdW1lbnRDb21tYW5kXAorOlJlbmV3 RG9jdW1lbnRDb21tYW5kOlByb3ZpZGVEb2N1bWVudENvbW1hbmRcCis6RGVjbGFyZURvY3VtZW50 Q29tbWFuZDpOZXdFeHBhbmRhYmxlRG9jdW1lbnRDb21tYW5kXAorOlJlbmV3RXhwYW5kYWJsZURv Y3VtZW50Q29tbWFuZDpQcm92aWRlRXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZFwKKzpEZWNsYXJl RXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZDpOZXdEb2N1bWVudEVudmlyb25tZW50XAorOlJlbmV3 RG9jdW1lbnRFbnZpcm9ubWVudDpQcm92aWRlRG9jdW1lbnRFbnZpcm9ubWVudFwKKzpEZWNsYXJl RG9jdW1lbnRFbnZpcm9ubWVudDpjc2RlZjpjc2VkZWY6Y3NnZGVmOmNzeGRlZjpjc2xldGNzXAor OmNzbGV0OmxldGNzOmxldCI7CiAKIHN0YXRpYyB2b2lkIFRFWF9kZWNvZGVfZW52IChjb25zdCBj aGFyICosIGNvbnN0IGNoYXIgKik7CiAKQEAgLTU3NTIsNiArNTc4NSw3IEBAIFRlWF9jb21tYW5k cyAoRklMRSAqaW5mKQogewogICBjaGFyICpjcDsKICAgbGluZWJ1ZmZlciAqa2V5OworICBjaGFy IG5ld25hbWVbVUNIQVJfTUFYXTsKIAogICBjaGFyIFRFWF9lc2MgPSAnXDAnOwogICBjaGFyIFRF WF9vcGdycCBVTklOSVQsIFRFWF9jbGdycCBVTklOSVQ7CkBAIC01Nzk5LDE5ICs1ODMzLDczIEBA IFRlWF9jb21tYW5kcyAoRklMRSAqaW5mKQogCSAgICAgIHsKIAkJY2hhciAqcDsKIAkJcHRyZGlm Zl90IG5hbWVsZW4sIGxpbmVsZW47Ci0JCWJvb2wgb3BncnAgPSBmYWxzZTsKKwkJYm9vbCBvcGdy cCA9IGZhbHNlLCBvbmVfZXNjID0gZmFsc2U7CiAKIAkJY3AgPSBza2lwX3NwYWNlcyAoY3AgKyBr ZXktPmxlbik7CisJCS8qIFNraXAgdGhlIG9wdGlvbmFsIGFyZ3VtZW50cyB0byBjb21tYW5kcyBp biB0aGUgdGFncyBsaXN0IHNvCisJCSAgIHRoYXQgdGhlc2UgYXJndW1lbnRzIGRvbid0IGVuZCB1 cCBhcyB0aGUgbmFtZSBvZiB0aGUgdGFnLgorCQkgICBUaGUgbmFtZSB3aWxsIGluc3RlYWQgY29t ZSBmcm9tIHRoZSBhcmd1bWVudCBpbiBjdXJseSBicmFjZXMKKwkJICAgdGhhdCBmb2xsb3dzIHRo ZSBvcHRpb25hbCBvbmVzLiAgKi8KKwkJaWYgKCpjcCA9PSAnWycgfHwgKmNwID09ICcoJykKKwkJ ICB7CisJCSAgICB3aGlsZSAoKmNwICE9IFRFWF9vcGdycCAmJiAqY3AgIT0gJ1wwJykKKwkJICAg ICAgY3ArKzsKKwkJICB9CiAJCWlmICgqY3AgPT0gVEVYX29wZ3JwKQogCQkgIHsKIAkJICAgIG9w Z3JwID0gdHJ1ZTsKIAkJICAgIGNwKys7CiAJCSAgfQorCQkvKiBKdW1waW5nIHRvIGEgVGVYIGNv bW1hbmQgZGVmaW5pdGlvbiBkb2Vzbid0IHdvcmsgaW4gYXQgbGVhc3QKKwkJICAgc29tZSBvZiB0 aGUgZWRpdG9ycyB0aGF0IHVzZSBjdGFncy4gIFVzaW5nIHRoZQorCQkgICAnLS10ZXgtYWx0LWZv cm1zJyBvcHRpb24gdG8gc3RyaXAgVEVYX2VzYyBzaG91bGQgcHJvdmlkZQorCQkgICBtaW5vciBp bXByb3ZlbWVudHMsIHRob3VnaCBvdmVyYWxsIHRoZSBiZWhhdmlvciBpcyBzdGlsbAorCQkgICBz dWJvcHRpbWFsLiAgKFdpdGggLS10ZXgtYWx0LWZvcm1zIHdlIHByaW50IGVhY2ggdGFnIHR3aWNl LAorCQkgICBvbmNlIHdpdGggYW5kIG9uY2Ugd2l0aG91dCBURVhfZXNjIGluIHRoZSB0YWcgbmFt ZS4gIFNlZQorCQkgICBiZWxvdy4pICBUaGUgdW5kb2N1bWVudGVkIGN0YWdzIG9wdGlvbiAnLS1u by1kdXBsaWNhdGVzJyBtYXkKKwkJICAgYWxzbyBoZWxwLiAgQ2hhbmdlcyBpbiB0ZXgtbW9kZS5l bCBpbiBHTlUgRW1hY3MgYWRkcmVzcyB0aGUKKwkJICAgbWFqb3JpdHkgb2YgdGhlc2UgaXNzdWVz IGZvciBldGFncywgdGhvdWdoIHRoZQorCQkgICAnLS10ZXgtYWx0LWZvcm1zJyBvcHRpb24gY2Fu IGFsc28gYmUgdXNlZnVsIHRoZXJlLiAqLworCisJCWlmICh0ZXhfYWx0X2Zvcm1zICYmICpjcCA9 PSBURVhfZXNjKQorCQkgIHsKKwkJICAgIGNwKys7CisJCSAgICBvbmVfZXNjID0gdHJ1ZTsKKwkJ ICB9CisKKwkJLyogQWRkIG9wdGlvbmFsIGFyZ3VtZW50IGJyYWNrZXRzICcoJyBhbmQgJ1snIHRv IHRoZSBsb29wIHRlc3QKKwkJICAgc28gdGhhdCB0aGVzZSBhcmd1bWVudHMgZG9uJ3QgYXBwZWFy IGluIHRhZyBuYW1lcy4gIEFsc28gYWRkCisJCSAgICc9JyBhcyBpdCdzIHJlbGF0aW9uYWwgaW4g dGhlIHZhc3QgbWFqb3JpdHkgb2YgY2FzZXMuICAqLwogCQlmb3IgKHAgPSBjcDsKLQkJICAgICAo IWNfaXNzcGFjZSAoKnApICYmICpwICE9ICcjJyAmJgotCQkgICAgICAqcCAhPSBURVhfb3BncnAg JiYgKnAgIT0gVEVYX2NsZ3JwKTsKKwkJICAgICAoIWNfaXNzcGFjZSAoKnApICYmICpwICE9ICcj JyAmJiAqcCAhPSAnPScgJiYKKwkJICAgICAgKnAgIT0gJ1snICYmICpwICE9ICcoJyAmJiAqcCAh PSBURVhfb3BncnAgJiYKKwkJICAgICAgKnAgIT0gVEVYX2NsZ3JwKTsKIAkJICAgICBwKyspCi0J CSAgY29udGludWU7CisJCSAgLyogQWxsb3cgb25seSBvbmUgZXNjYXBlIGNoYXIgaW4gYSB0YWcg bmFtZSwgd2hpY2gKKwkJICAgICAocHJpbWFyaWx5KSBlbmFibGVzIHRhZ2dpbmcgYSBUZVggY29t bWFuZCdzIGRpZmZlcmVudCwKKwkJICAgICBwb3NzaWJseSB0ZW1wb3JhcnksICdcbGV0JyBiaW5k aW5ncy4gICovCisJCSAgaWYgKCpwID09IFRFWF9lc2MpCisJCSAgICB7CisJCSAgICAgIGlmICgh b25lX2VzYykKKwkJCXsKKwkJCSAgb25lX2VzYyA9IHRydWU7CisJCQkgIGNvbnRpbnVlOworCQkJ fQorCQkgICAgICBlbHNlCisJCQlicmVhazsKKwkJICAgIH0KKwkJICBlbHNlCisJCSAgICBjb250 aW51ZTsKKwkJLyogUmUtcnVuIHRoZSBzY2FuIHRvIGNhdGNoIChoaWdobHkgdW51c3VhbCkgY2Fz ZXMgd2hlcmUgYQorCQkgICBjb21tYW5kIG5hbWUgaXMgb2YgdGhlIGZvcm0gJ1woJy4gICovCisJ CWlmICgoKnAgPT0gJygnIHx8ICpwID09ICdbJykgJiYgKHAgLSBjcCkgPCAyKQorCQkgIHsKKwkJ ICAgIGZvciAocCA9IGNwOworCQkJICghY19pc3NwYWNlICgqcCkgJiYgKnAgIT0gJyMnICYmCisJ CQkgICpwICE9IFRFWF9vcGdycCAmJiAqcCAhPSBURVhfY2xncnApOworCQkJIHArKykKKwkJICAg ICAgY29udGludWU7CisJCSAgfQogCQluYW1lbGVuID0gcCAtIGNwOwogCQlsaW5lbGVuID0gbGIu bGVuOwogCQlpZiAoIW9wZ3JwIHx8ICpwID09IFRFWF9jbGdycCkKQEAgLTU4MjAsNiArNTkwOCwx NiBAQCBUZVhfY29tbWFuZHMgKEZJTEUgKmluZikKIAkJICAgICAgcCsrOwogCQkgICAgbGluZWxl biA9IHAgLSBsYi5idWZmZXIgKyAxOwogCQkgIH0KKwkJLyogV2l0aCAtLXRleC1hbHQtZm9ybXMg d2Ugc3RyaXAgYW55IFRFWF9lc2MgZnJvbSB0aGUgbmFtZSAoc2VlCisJCSAgIGFib3ZlKSwgcHJp bnQgdGhlIHRhZyB3aXRoIFRFWF9lc2MgcHJlcGVuZGVkIHRvIHRoZSBiYXJlIHRhZworCQkgICBu YW1lLCB0aGVuIHByaW50IHRoZSBzYW1lIHRhZyBhZ2FpbiB3aXRoIHRoZSBiYXJlIHRhZworCQkg ICBuYW1lLiAqLworCQlpZiAodGV4X2FsdF9mb3JtcykKKwkJICB7CisJCSAgc25wcmludGYgKG5l d25hbWUsIFVDSEFSX01BWCwgIiVjJXMiLCBURVhfZXNjLCBjcCk7CisJCSAgbWFrZV90YWcgKG5l d25hbWUsIG5hbWVsZW4gKyAxLCB0cnVlLAorCQkJICAgIGxiLmJ1ZmZlciwgbGluZWxlbiwgbGlu ZW5vLCBsaW5lY2hhcm5vKTsKKwkJICB9CiAJCW1ha2VfdGFnIChjcCwgbmFtZWxlbiwgdHJ1ZSwK IAkJCSAgbGIuYnVmZmVyLCBsaW5lbGVuLCBsaW5lbm8sIGxpbmVjaGFybm8pOwogCQlnb3RvIHRl eF9uZXh0X2xpbmU7IC8qIFdlIG9ubHkgdGFnIGEgbGluZSBvbmNlICovCmRpZmYgLS1naXQgYS9s aXNwL3RleHRtb2Rlcy90ZXgtbW9kZS5lbCBiL2xpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsCmlu ZGV4IGEyNmU3YjljODNhLi4zZGU0YTA5M2UwOSAxMDA2NDQKLS0tIGEvbGlzcC90ZXh0bW9kZXMv dGV4LW1vZGUuZWwKKysrIGIvbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwKQEAgLTEyNzcsNiAr MTI3Nyw4IEBAIHRleC1jb21tb24taW5pdGlhbGl6YXRpb24KIAkgICAgICAoc3ludGF4LXByb3Bl cnRpemUtcnVsZXMgbGF0ZXgtc3ludGF4LXByb3BlcnRpemUtcnVsZXMpKQogICA7OyBUQUJzIGlu IHZlcmJhdGltIGVudmlyb25tZW50cyBkb24ndCBkbyB3aGF0IHlvdSB0aGluay4KICAgKHNldHEt bG9jYWwgaW5kZW50LXRhYnMtbW9kZSBuaWwpCisgIDs7IFNldCB1cCB4cmVmIGJhY2tlbmQgaW4g VGVYIGJ1ZmZlcnMuCisgICh0ZXgtc2V0LXRoaW5nYXRwdC1zeW1ib2wpCiAgIDs7IE90aGVyIHZh cnMgdGhhdCBzaG91bGQgYmUgYnVmZmVyLWxvY2FsLgogICAobWFrZS1sb2NhbC12YXJpYWJsZSAn dGV4LWNvbW1hbmQpCiAgIChtYWtlLWxvY2FsLXZhcmlhYmxlICd0ZXgtc3RhcnQtb2YtaGVhZGVy KQpAQCAtMzcyNCw2ICszNzI2LDIyMCBAQCB0ZXgtY2hrdGV4CiAgICAgICAgICAgICAgICAgICAg KGtpbGwtYnVmZmVyIChwcm9jZXNzLWJ1ZmZlciBwcm9jZXNzKSkpKSkpKQogICAgICAgKHByb2Nl c3Mtc2VuZC1yZWdpb24gdGV4LWNoa3RleC0tcHJvY2VzcyAocG9pbnQtbWluKSAocG9pbnQtbWF4 KSkKICAgICAgIChwcm9jZXNzLXNlbmQtZW9mIHRleC1jaGt0ZXgtLXByb2Nlc3MpKSkpCisMCis7 OzsgWHJlZiAvIEV0YWdzIHR3ZWFrcworCis7OyBSYXRoZXIgdGhhbiBkZWZpbmUgYSBuZXcgeHJl ZiBiYWNrZW5kIGZvciBUZVgsIHdlIHR3ZWFrIHRoZSBkZWZhdWx0Cis7OyBldGFncyBiYWNrZW5k IHNvIHRoYXQgdGhlIG1haW4geHJlZiB1c2VyIGNvbW1hbmRzIChpbmNsdWRpbmcKKzs7IGB4cmVm LWZpbmQtZGVmaW5pdGlvbnMnLCBgeHJlZi1maW5kLWFwcm9wb3MnLCBhbmQKKzs7IGB4cmVmLWZp bmQtcmVmZXJlbmNlcycgW29uIE0tLiwgQy1NLS4sIGFuZCBNLT8sIHJlc3BlY3RpdmVseV0pIHdv cmsKKzs7IGluIFRlWCBidWZmZXJzLiAgVGhpcyBtb3N0bHkgaW52b2x2ZXMgZGVmaW5pbmcgYSBu ZXcgVEhJTkcgZm9yCis7OyBgdGhpbmctYXQtcG9pbnQnICh0ZXhzeW1ib2wpLCB0aGVuIHN1YnN0 aXR1dGluZyB0aGF0IFRISU5HIGZvcgorOzsgYHN5bWJvbCcgaW4gVGVYIGJ1ZmZlcnMsIGF0IGxl YXN0IGJ5IChjb25maWd1cmFibGUpIGRlZmF1bHQuICBUaGUKKzs7IFRlWCBlc2NhcGUgY2hhcmFj dGVyIHdpbGwgYnkgZGVmYXVsdCBhcHBlYXIgaW4gdGhlIHJlc3VsdGluZyBzdHJpbmcKKzs7IG9u bHkgd2hlbiB0aGUgeHJlZiBjb21tYW5kIHVzZXMgc3RyaW5nIHNlYXJjaCBhbmQgbm90IHJlZ2V4 cAorOzsgc2VhcmNoLCB0aG91Z2ggdGhpcyB0b28gaXMgY29uZmlndXJhYmxlLiAgVGhlIG5ldyBU SElORyB0eXBlIGFsc28KKzs7IGltcHJvdmVzIHRoZSBhY2N1cmFjeSBvZiBvdGhlciBjb21tYW5k cyB0aGF0IHVzZSBgdGhpbmctYXQtcG9pbnQnCis7OyBpbiBUZVggYnVmZmVycywgbGlrZSBgaXNl YXJjaC1mb3J3YXJkLXRoaW5nLWF0LXBvaW50JyAob24gTS1zIE0tLikKKzs7IGFuZCBgcHJvamVj dC1maW5kLXJlZ2V4cCcgKG9uIEMteCBwIGcpLiAgSW5kZWVkLAorOzsgYHByb2plY3QtZmluZC1y ZWdleHAnIHNvbWV0aW1lcyB3b3JrcyBiZXR0ZXIgaW4gVGVYIGJ1ZmZlcnMgdGhhbgorOzsgYHhy ZWYtZmluZC1yZWZlcmVuY2VzJy4KKworKGRlZnZhciB0ZXgtdGhpbmdhdHB0LW1vZGVzLWxpc3QK KyAgJyh0ZXgtbW9kZSBkb2N0ZXgtbW9kZSBsYXRleC1tb2RlIHBsYWluLXRleC1tb2RlIHNsaXRl eC1tb2RlIGFtcy10ZXgtbW9kZSkKKyAgIk1ham9yIG1vZGVzIHdoZXJlIGB0aGluZy1hdC1wb2lu dCcgbWF5IHVzZSB0aGUgYHRleHN5bWJvbCcgdHlwZS4KKworV2hlbiBhIGJ1ZmZlcidzIGBtYWpv ci1tb2RlJyBpcyBpbiB0aGlzIGxpc3QsIGFuZCB3aGVuCitgdGV4LXRoaW5nYXRwdC1pcy10ZXhz eW1ib2wnIGlzIHQgKHRoZSBkZWZhdWx0KSwgYW55IGNvbW1hbmQgaW4KK3RoYXQgYnVmZmVyIHRo YXQgY2FsbHMgYHRoaW5nLWF0LXBvaW50JyB3aXRoIGEgYHN5bWJvbCcgYXJndW1lbnQKK2FjdHVh bGx5IHVzZXMgdGhlIGB0ZXhzeW1ib2wnIGFyZ3VtZW50LCBpbnN0ZWFkLiIpCisKKyhkZWZjdXN0 b20gdGV4LXRoaW5nYXRwdC1pcy10ZXhzeW1ib2wgdAorICAiV2hlbiBub24tbmlsIHJlcGxhY2Ug YHN5bWJvbCcgYnkgYHRleHN5bWJvbCcgZm9yIGB0aGluZy1hdC1wb2ludCcuCisKK1RoaXMgYXBw bGllcyBvbmx5IHRvIFRlWCBidWZmZXJzLiAgVGhlIGB0ZXhzeW1ib2wnIFwidGhpbmdcIgorbW9k aWZpZXMgdGhlIHN0YW5kYXJkIGBzeW1ib2wnIGZvciB1c2UgaW4gc3VjaCBidWZmZXJzLgorCitX aGVuIG5pbCwgcmVzdG9yZSB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiBgdGhpbmctYXQtcG9pbnQn IGluIFRlWAorYnVmZmVycy4KKworQ3VzdG9tIHdpbGwgYXV0b21hdGljYWxseSBhcHBseSBjaGFu Z2VzIGluIGFsbCBUZVggYnVmZmVycywgYnV0CitpZiB5b3Ugc2V0IHRoZSB2YXJpYWJsZSBvdXRz aWRlIG9mIEN1c3RvbSBpdCB3b24ndCB0YWtlIGVmZmVjdAordW50aWwgeW91IGFwcGx5IGl0IHdp dGggXFxbdGV4LXNldC10aGluZ2F0cHQtc3ltYm9sXS4gIFdpdGhvdXQgYQorcHJlZml4IGFyZ3Vt ZW50IChcXFt1bml2ZXJzYWwtYXJndW1lbnRdKSB0aGlzIGFwcGxpZXMgb25seSB0byB0aGUKK2N1 cnJlbnQgYnVmZmVyLCBidXQgd2l0aCBvbmUgaXQgYXBwbGllcyB0byBhbGwgVGVYIGJ1ZmZlcnMg aW4KK2BidWZmZXItbGlzdCcuICAoVGVYIGJ1ZmZlcnMgYXJlIHRob3NlIHdob3NlIGBtYWpvci1t b2RlJyBpcyBhCittZW1iZXIgb2YgYHRleC10aGluZ2F0cHQtbW9kZXMtbGlzdCcuKSIKKyAgOnR5 cGUgJ2Jvb2xlYW4KKyAgOmdyb3VwICd0ZXgtZmlsZQorICA6Z3JvdXAgJ1RlWC1taXNjCisgIDpp bml0aWFsaXplICMnY3VzdG9tLWluaXRpYWxpemUtZGVmYXVsdAorICA6c2V0IChsYW1iZGEgKHZh ciB2YWwpCisgICAgICAgICAoc2V0LWRlZmF1bHQgdmFyIHZhbCkKKyAgICAgICAgICh0ZXgtc2V0 LXRoaW5nYXRwdC1zeW1ib2wgdCkpCisgIDp2ZXJzaW9uICIzMC4xIikKKworKGRlZmN1c3RvbSB0 ZXgtdGhpbmdhdHB0LWluY2x1ZGUtZXNjYXBlICcoeHJlZi1maW5kLWRlZmluaXRpb25zCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4cmVmLWZpbmQtZGVmaW5pdGlv bnMtb3RoZXItd2luZG93CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB4cmVmLWZpbmQtZGVmaW5pdGlvbnMtb3RoZXItZnJhbWUpCisgICJJZiBub24tbmlsLCBpbmNs dWRlIGB0ZXgtZXNjYXBlLWNoYXInIGluIGB0aGluZy1hdC1wb2ludCcuCisKK1RoaXMgdmFyaWFi bGUgb25seSB0YWtlcyBlZmZlY3Qgd2hlbiBgdGV4LXRoaW5nYXRwdC1pcy10ZXhzeW1ib2wnCitp cyB0ICh0aGUgZGVmYXVsdCksIGNoYW5naW5nIHRoZSBhcmd1bWVudCBwYXNzZWQgdG8KK2B0aGlu Zy1hdC1wb2ludCcgZnJvbSBgc3ltYm9sJyB0byBgdGV4c3ltYm9sJy4gIFdoZW4gdGhhdCBpcyB0 aGUKK2Nhc2UsIHRoZSB2YWx1ZXMgb2YgdGhpcyB2YXJpYWJsZSBhY3QgYXMgZm9sbG93czoKKwor V2hlbiB0LCBgdGhpbmctYXQtcG9pbnQnIHdpbGwgYWx3YXlzIGluY2x1ZGUgYQorYHRleC1lc2Nh cGUtY2hhcicgKHVzdWFsbHkgYFxcJyksIHNob3VsZCBvbmUgYmUgcHJlc2VudCwgaW4gdGhlCitz dHJpbmcgaXQgcmV0dXJucyBpbiBUZVggYnVmZmVycy4KKworV2hlbiBuaWwsIGB0aGluZy1hdC1w b2ludCcgd2lsbCBuZXZlciBpbmNsdWRlIHRoZQorYHRleC1lc2NhcGUtY2hhcicgaW4gdGhlIHN0 cmluZyBpdCByZXR1cm5zIGluIFRlWCBidWZmZXJzLgorCitPdGhlcndpc2UsIGl0J3MgYSBsaXN0 IG9mIGNvbW1hbmRzIGZvciB3aGljaCBgdGhpbmctYXQtcG9pbnQnCit3aWxsIGFsd2F5cyBpbmNs dWRlIHRoZSBgdGV4LWVzY2FwZS1jaGFyJyBpbiB0aGUgc3RyaW5nIGl0CityZXR1cm5zLiAgVGhl IHRocmVlIHhyZWYgY29tbWFuZHMgbGlzdGVkIGJ5IGRlZmF1bHQgbWF5IGNlYXNlIHRvCitmdW5j dGlvbiBwcm9wZXJseSBpbiBUZVggYnVmZmVycyBpZiBzZXQgdG8gbmlsLCBidXQgdXNpbmcgdGhl CitgLS10ZXgtYWx0LWZvcm1zJyBvcHRpb24gd2hlbiBjcmVhdGluZyB5b3VyIHRhZ3MgdGFibGUg d2l0aAorYGV0YWdzJyB3aWxsIHJlY3RpZnkgdGhhdC4iCisgIDp0eXBlICcoY2hvaWNlIChjb25z dCA6dGFnICJBbHdheXMgaW5jbHVkZSB0ZXgtZXNjYXBlLWNoYXIiIHQpCisgICAgICAgICAgICAg ICAgIChjb25zdCA6dGFnICJOZXZlciBpbmNsdWRlIHRleC1lc2NhcGUtY2hhciIgbmlsKQorICAg ICAgICAgICAgICAgICAoc2V0IDp0YWcgIkluY2x1ZGUgdGV4LWVzY2FwZS1jaGFyIGZvciB0aGVz ZSBjb21tYW5kcyIKKwkJICAgICAgKHJlcGVhdCA6aW5saW5lIHQgKHN5bWJvbCA6dGFnICJjb21t YW5kIikpKSkKKyAgOmdyb3VwICd0ZXgtZmlsZQorICA6Z3JvdXAgJ1RlWC1taXNjCisgIDp2ZXJz aW9uICIzMC4xIikKKworKGRlZnZhciB0ZXgtZXNjYXBlLWNoYXIgP1xcCisgICJUaGUgY3VycmVu dCwgcG9zc2libHkgYnVmZmVyLWxvY2FsLCBUZVggZXNjYXBlIGNoYXJhY3Rlci4KKworVGhlIGBl dGFncycgcHJvZ3JhbSBvbmx5IHJlY29nbml6ZXMgYFxcJyAoOTIpIGFuZCBgIScgKDMzKSBhcwor ZXNjYXBlIGNoYXJhY3RlcnMgaW4gVGVYIGRvY3VtZW50cywgYW5kIGlmIGl0IGRldGVjdHMgdGhl IGxhdHRlcgoraXQgYWxzbyB1c2VzIGA8PicgYXMgdGhlIFRlWCBncm91cGluZyBjb25zdHJ1Y3Qg cmF0aGVyIHRoYW4gYHt9Jy4KK1NldHRpbmcgdGhpcyB2YXJpYWJsZSB0byBhbnl0aGluZyBvdGhl ciB0aGFuIGBcXCcgb3IgYCEnIGlzCitwb3NzaWJsZSBidXQgd2lsbCBub3QgYmUgdXNlZnVsIHdp dGhvdXQgY2hhbmdlcyB0byBgZXRhZ3MnLCBhdAorbGVhc3QgZm9yIGNvbW1hbmRzIHRoYXQgc2Vh cmNoIHRhZ3MgdGFibGVzLCBzdWNoIGFzCitgeHJlZi1maW5kLWRlZmluaXRpb25zJyAoXFxbeHJl Zi1maW5kLWRlZmluaXRpb25zXSkgYW5kIFwKK2B4cmVmLWZpbmQtYXByb3BvcycgKFxcW3hyZWYt ZmluZC1hcHJvcG9zXSkuIikKKworKGRlZnZhciB0ZXgtdGhpbmdhdHB0LXN5bnRheC10YWJsZQor ICAobGV0KiAoKG9zdCAoaWYgKGJvdW5kcCAnVGVYLW1vZGUtc3ludGF4LXRhYmxlKQorICAgICAg ICAgICAgICAgICAgVGVYLW1vZGUtc3ludGF4LXRhYmxlCisgICAgICAgICAgICAgICAgdGV4LW1v ZGUtc3ludGF4LXRhYmxlKSkKKyAgICAgICAgIChzdCAobWFrZS1zeW50YXgtdGFibGUgb3N0KSkp CisgICAgKG1vZGlmeS1zeW50YXgtZW50cnkgPyMgIiciIHN0KQorICAgIChtb2RpZnktc3ludGF4 LWVudHJ5ID89ICInIiBzdCkKKyAgICAobW9kaWZ5LXN5bnRheC1lbnRyeSA/YCAiJyIgc3QpCisg ICAgKG1vZGlmeS1zeW50YXgtZW50cnkgP1wiICInIiBzdCkKKyAgICAobW9kaWZ5LXN5bnRheC1l bnRyeSA/JyAiJyIgc3QpCisgICAgc3QpCisgICJTeW50YXggdGFibGUgZm9yIGRlbGltaXRpbmcg YHRoaW5nLWF0LXBvaW50JyBpbiBUZVggYnVmZmVycy4KKworV2hlbiBgdGV4LXRoaW5nYXRwdC1p cy10ZXhzeW1ib2wnIGlzIHQsIHRoaXMgc3ludGF4IHRhYmxlIGhlbHBzCit0byBkZWZpbmUgd2hh dCBhIGB0ZXhzeW1ib2wnIGlzLiAgVG8gYWNjZXNzIGl0IHVzZSB0aGUKK2B0ZXgtdGhpbmdhdHB0 LXN5bnRheC10YWJsZScgZnVuY3Rpb24uIikKKworKGRlZnVuIHRleC10aGluZ2F0cHQtc3ludGF4 LXRhYmxlICgpCisgICJSZXR1cm4gYSBzeW50YXggdGFibGUgZm9yIGB0aGluZy1hdC1wb2ludCcg aW4gVGVYIGJ1ZmZlcnMuCisKK0l0IG1vZGlmaWVzIHRoZSBwcmUtZGVmaW5lZCBzeW50YXggdGFi bGUgZGVwZW5kaW5nIGJvdGggb24gdGhlCitzZXR0aW5nIG9mIHRoZSBgdGV4LWVzY2FwZS1jaGFy JyB2YXJpYWJsZSwgd2hpY2ggbWF5IGJlIGJ1ZmZlcgorbG9jYWwsIGFuZCBvbiB3aGV0aGVyIHdl J3JlIHVzaW5nIEFVQ1RlWCBvciB0aGUgaW4tdHJlZSB0ZXgtbW9kZS4iCisgIChsZXQgKChuc3Qg KG1ha2Utc3ludGF4LXRhYmxlIHRleC10aGluZ2F0cHQtc3ludGF4LXRhYmxlKSkKKyAgICAgICAg KGVzY3N5IChpZiAoYm91bmRwICdUZVgtbW9kZS1zeW50YXgtdGFibGUpCisgICAgICAgICAgICAg ICAgICAgP1xcCisgICAgICAgICAgICAgICAgID8vKSkpCisgICAgKGNvbmQgKChjaGFyLWVxdWFs IHRleC1lc2NhcGUtY2hhciA/XFwpKQorICAgICAgICAgICgoY2hhci1lcXVhbCB0ZXgtZXNjYXBl LWNoYXIgPyEpCisgICAgICAgICAgIChtb2RpZnktc3ludGF4LWVudHJ5ID9cXCAiXyIgbnN0KQor ICAgICAgICAgICAobW9kaWZ5LXN5bnRheC1lbnRyeSB0ZXgtZXNjYXBlLWNoYXIgKGNoYXItdG8t c3RyaW5nIGVzY3N5KSBuc3QpCisgICAgICAgICAgIChtb2RpZnktc3ludGF4LWVudHJ5ID88ICIo PiIgbnN0KQorICAgICAgICAgICAobW9kaWZ5LXN5bnRheC1lbnRyeSA/PiAiKTwiIG5zdCkpCisg ICAgICAgICAgKHQKKyAgICAgICAgICAgKG1vZGlmeS1zeW50YXgtZW50cnkgP1xcICJfIiBuc3Qp CisgICAgICAgICAgIChtb2RpZnktc3ludGF4LWVudHJ5IHRleC1lc2NhcGUtY2hhciAoY2hhci10 by1zdHJpbmcgZXNjc3kpIG5zdCkpKQorICAgIG5zdCkpCisKKzs7IFNldHVwIEFVQ1RlWCBtb2Rl cy4gIChTaG91bGQgdGhpcyBiZSBpbiBBVUNUZVggaXRzZWxmPykKKyhhZGQtaG9vayAnVGVYLW1v ZGUtaG9vayAjJ3RleC1zZXQtdGhpbmdhdHB0LXN5bWJvbCkKKworOzsgYHhyZWYtZmluZC1yZWZl cmVuY2VzJyBuZWVkcyB0aGlzIHdoZW4gY2FsbGVkIGZyb20gYSBsYXRleC1tb2RlCis7OyBidWZm ZXIgaW4gb3JkZXIgdG8gc2VhcmNoIGZpbGVzIG9yIGJ1ZmZlcnMgd2l0aCBhIC50ZXggc3VmZml4 Cis7OyAoaW5jbHVkaW5nIHRoZSBidWZmZXIgZnJvbSB3aGljaCBpdCBoYXMgYmVlbiBjYWxsZWQp LiAgV2UgYXBwZW5kIGl0Cis7OyB0byBgYXV0by1tb2RlLWFsaXN0JyBzbyBhcyBub3QgdG8gaW50 ZXJmZXJlIHdpdGggdGhlIHVzdWFsCis7OyBtb2RlLXNldHRpbmcgYXBwYXJhdHVzLgorKGFkZC10 by1saXN0ICdhdXRvLW1vZGUtYWxpc3QgJygiXFwuW3RUXWVbeFhdXFwnIiAuIGxhdGV4LW1vZGUp IHQpCisKKyhkb2xpc3QgKHRleG1vZGUgdGV4LXRoaW5nYXRwdC1tb2Rlcy1saXN0KQorICAocHV0 IHRleG1vZGUgJ2ZpbmQtdGFnLWRlZmF1bHQtZnVuY3Rpb24gJ3RleC0tdGhpbmctYXQtcG9pbnQp KQorCisocHV0ICd0ZXhzeW1ib2wgJ2JlZ2lubmluZy1vcCAndGV4LXRoaW5nYXRwdC0tYmVnaW5u aW5nLW9mLXRleHN5bWJvbCkKKworKHB1dCAndGV4c3ltYm9sICdlbmQtb3AgJ3RleC10aGluZ2F0 cHQtLWVuZC1vZi10ZXhzeW1ib2wpCisKKyhkZWNsYXJlLWZ1bmN0aW9uIGNsLXN1YnN0aXR1dGUg ImNsLXNlcSIgKGNsLW5ldyBjbC1vbGQgY2wtc2VxICZyZXN0IGNsLWtleXMpKQorCisoZGVmdW4g dGV4LXNldC10aGluZ2F0cHQtc3ltYm9sICgmb3B0aW9uYWwgYWxsKQorICAiU2V0IG1lYW5pbmcg b2YgYHRoaW5nLWF0LXBvaW50JyBgc3ltYm9sJyBpbiAoQUxMPykgVGVYIGJ1ZmZlcnMuCisKK1do ZW4gYHRleC10aGluZ2F0cHQtaXMtdGV4c3ltYm9sJyBpcyB0LCBzZXQgYHRoaW5nLWF0LXBvaW50 JyB0bwordXNlIHRoZSBgdGV4c3ltYm9sJyBcInRoaW5nXCIgaW5zdGVhZCBvZiBgc3ltYm9sJywg b3RoZXJ3aXNlCittYWludGFpbiBvciByZXN0b3JlIHRoZSBkZWZhdWx0LiAgV2l0aG91dCBhbiBv cHRpb25hbCBBTEwgbWFrZQorY2hhbmdlcyBvbmx5IGluIGN1cnJlbnQgYnVmZmVyLCB3aXRoIEFM TCBtYWtlIGNoYW5nZXMgaW4gYWxsIFRlWAorYnVmZmVycyBpbiBgYnVmZmVyLWxpc3QnLiIKKyAg KGludGVyYWN0aXZlICJQIikKKyAgKHJlcXVpcmUgJ3RoaW5nYXRwdCkKKyAgKGlmIGFsbAorICAg ICAgKGRvbGlzdCAoYnVmIChidWZmZXItbGlzdCkpCisgICAgICAgICh3aXRoLWN1cnJlbnQtYnVm ZmVyIGJ1ZgorICAgICAgICAgICh0ZXgtLXN5bWJvbC1vci10ZXhzeW1ib2wpKSkKKyAgICAodGV4 LS1zeW1ib2wtb3ItdGV4c3ltYm9sKSkpCisKKyhkZWZ1biB0ZXgtLXN5bWJvbC1vci10ZXhzeW1i b2wgKCkKKyAgKHdoZW4gKG1lbXEgbWFqb3ItbW9kZSB0ZXgtdGhpbmdhdHB0LW1vZGVzLWxpc3Qp CisgICAgKGlmIHRleC10aGluZ2F0cHQtaXMtdGV4c3ltYm9sCisgICAgICAgIChzZXRxLWxvY2Fs IHRoaW5nLWF0LXBvaW50LXByb3ZpZGVyLWFsaXN0CisgICAgICAgICAgICAgICAgICAgIChhZGQt dG8tbGlzdCAndGhpbmctYXQtcG9pbnQtcHJvdmlkZXItYWxpc3QKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICcoc3ltYm9sIC4gdGV4LS10aGluZy1hdC1wb2ludCkpCisgICAgICAg ICAgICAgICAgICAgIGlzZWFyY2gtZm9yd2FyZC10aGluZy1hdC1wb2ludAorICAgICAgICAgICAg ICAgICAgICAoY2wtc3Vic3RpdHV0ZSAndGV4c3ltYm9sICdzeW1ib2wKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgaXNlYXJjaC1mb3J3YXJkLXRoaW5nLWF0LXBvaW50KSkKKyAg ICAgIChzZXRxLWxvY2FsIHRoaW5nLWF0LXBvaW50LXByb3ZpZGVyLWFsaXN0CisgICAgICAgICAg ICAgICAgICAoZGVsZXRlICcoc3ltYm9sIC4gdGV4LS10aGluZy1hdC1wb2ludCkKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgdGhpbmctYXQtcG9pbnQtcHJvdmlkZXItYWxpc3QpCisgICAgICAg ICAgICAgICAgICBpc2VhcmNoLWZvcndhcmQtdGhpbmctYXQtcG9pbnQKKyAgICAgICAgICAgICAg ICAgIChjbC1zdWJzdGl0dXRlICdzeW1ib2wgJ3RleHN5bWJvbAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgaXNlYXJjaC1mb3J3YXJkLXRoaW5nLWF0LXBvaW50KSkpKSkKKworKGRl ZnVuIHRleC0tdGhpbmctYXQtcG9pbnQgKCkKKyAgIlBhc3MgYHRoaW5nJyB0eXBlIGB0ZXhzeW1i b2wnIHRvIGBib3VuZHMtb2YtdGhpbmctYXQtcG9pbnQnLgorCitXaGVuIGB0ZXgtdGhpbmdhdHB0 LWlzLXRleHN5bWJvbCcgaXMgdCwgY2FsbHMgaW4gVGVYIGJ1ZmZlcnMgdG8KK2B0aGluZy1hdC1w b2ludCcgd2l0aCBhcmd1bWVudCBgc3ltYm9sJyB3aWxsIGluc3RlYWQgdXNlIHRoZQorYXJndW1l bnQgYHRleHN5bWJvbCcuICBPdGhlcndpc2UgaXQgd2lsbCBjYWxsIGBmaW5kLXRhZy1kZWZhdWx0 Jy4iCisgIChpZiB0ZXgtdGhpbmdhdHB0LWlzLXRleHN5bWJvbAorICAgICAgKGxldCAoKGJvdW5k cyAoYm91bmRzLW9mLXRoaW5nLWF0LXBvaW50ICd0ZXhzeW1ib2wpKSkKKyAgICAgICAgKHdoZW4g Ym91bmRzCisgICAgICAgICAgKGJ1ZmZlci1zdWJzdHJpbmctbm8tcHJvcGVydGllcyAoY2FyIGJv dW5kcykgKGNkciBib3VuZHMpKSkpCisgICAgKGZpbmQtdGFnLWRlZmF1bHQpKSkKKworKGRlZnVu IHRleC0taW5jbHVkZS1lc2NhcGUtcCAoY29tbWFuZCkKKyAgKG9yIChlcSB0ZXgtdGhpbmdhdHB0 LWluY2x1ZGUtZXNjYXBlIHQpCisgICAgICAobWVtcSBjb21tYW5kIHRleC10aGluZ2F0cHQtaW5j bHVkZS1lc2NhcGUpKSkKKworKGRlZnVuIHRleC10aGluZ2F0cHQtLWJlZ2lubmluZy1vZi10ZXhz eW1ib2wgKCkKKyAgIk1vdmUgcG9pbnQgdG8gdGhlIGJlZ2lubmluZyBvZiB0aGUgY3VycmVudCBU ZVggc3ltYm9sLiIKKyAgKHdpdGgtc3ludGF4LXRhYmxlICh0ZXgtdGhpbmdhdHB0LXN5bnRheC10 YWJsZSkKKyAgICAoYW5kIChyZS1zZWFyY2gtYmFja3dhcmQgIlxcKFtdWygpXVxcfFxcKFxcc3dc XHxcXHNfXFx8XFxzLlxcKStcXCkiKQorICAgICAgICAgKHNraXAtc3ludGF4LWJhY2t3YXJkICJ3 Xy4iKQorICAgICAgICAgKHdoZW4gKHRleC0taW5jbHVkZS1lc2NhcGUtcCB0aGlzLWNvbW1hbmQp CisgICAgICAgICAgIChza2lwLXN5bnRheC1iYWNrd2FyZCAiXFwvIikpKSkpCisKKyhkZWZ1biB0 ZXgtdGhpbmdhdHB0LS1lbmQtb2YtdGV4c3ltYm9sICgpCisgICJNb3ZlIHBvaW50IHRvIHRoZSBl bmQgb2YgdGhlIGN1cnJlbnQgVGVYIHN5bWJvbC4iCisgICh3aXRoLXN5bnRheC10YWJsZSAodGV4 LXRoaW5nYXRwdC1zeW50YXgtdGFibGUpCisgICAgKGFuZCAocmUtc2VhcmNoLWZvcndhcmQgIlxc KFtdWygpXVxcfFxcKFxcc3dcXHxcXHNfXFx8XFxzLlxcKStcXCkiKQorICAgICAgICAgKHNraXAt c3ludGF4LWZvcndhcmQgIndfLiIpKSkpCiAKIChtYWtlLW9ic29sZXRlLXZhcmlhYmxlICd0ZXgt bW9kZS1sb2FkLWhvb2sKICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2UgYHdpdGgtZXZhbC1h ZnRlci1sb2FkJyBpbnN0ZWFkLiIgIjI4LjEiKQotLSAKMi4zNS44Cgo= --0000000000009f58c406053b9c14-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Stefan Kangas Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 13 Sep 2023 13:43:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: David Fussner Cc: 53749@debbugs.gnu.org, Lars Ingebrigtsen , Dmitry Gutov Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.169461256210610 (code B ref 53749); Wed, 13 Sep 2023 13:43:01 +0000 Received: (at 53749) by debbugs.gnu.org; 13 Sep 2023 13:42:42 +0000 Received: from localhost ([127.0.0.1]:32978 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgQ8f-0002l4-VP for submit@debbugs.gnu.org; Wed, 13 Sep 2023 09:42:42 -0400 Received: from mail-lj1-x229.google.com ([2a00:1450:4864:20::229]:60438) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgQ8d-0002km-HT for 53749@debbugs.gnu.org; Wed, 13 Sep 2023 09:42:40 -0400 Received: by mail-lj1-x229.google.com with SMTP id 38308e7fff4ca-2bf5bf33bcdso110463521fa.0 for <53749@debbugs.gnu.org>; Wed, 13 Sep 2023 06:42:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1694612548; x=1695217348; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:from:to:cc:subject:date:message-id:reply-to; bh=6A+q1biI6XUrHVQzoDWAB9bixQvt1GpoOSN4vYhJNQo=; b=DFc4ZBJz37MXLDlf36wP6v3zWMJ6pGNeaTAxULfJZ5DaqZR2vp+sOrbC7rp9hpxRY2 mkOFAJZhD+4Gy1pAMjdt07Fgkyjk9M4vs6u0+j6cyG1MFYOlKNVZPknw44cjEs80u+H8 gdwBWWcM87gIvtRou3sItsviLWnCVFzy6PyUKhDIvD8G8x7XLitoEUMXyifkpAB2S0/N GPmkmDsBjgGF2v95o/ofG/wfU8yVumVQcuXRCB1zLHJfAKTHQnuEXawTZaYGBUiFTQ2N r3a5mQMMOqB9E8IsnbcHFFNgL/Wv6VPy82itJRa2qJ8zJYU/HOvgayyfCKv7Bo6uaE5E CkwA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694612548; x=1695217348; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=6A+q1biI6XUrHVQzoDWAB9bixQvt1GpoOSN4vYhJNQo=; b=RG/0GyvUeEidiitgzXq64aaeCEvMhvGCTXeNhQ1IQEgH3jdEBJb81zbhdPADL/Jv26 Ao3DCFFAuAn3CFFqlSsEJGBB8X2wUVk+VakmhwWrmGZjufsCT/idPvZZAn1k+5PEQJcu 4H2/baEWb4B9mSTYrYSvCm9bgfXBsppMPonkH5gr83iy1iwzKPieWKN+5hJvMquEVMex y0JnKNPgew158Uw9n1zQUeQThvzUzQmJHQCpyxIxW2J6f3AjlhhfJrCRDyHWXt4IR22m Lh8sm7uMGV2o/JojO9Hrdn4SsrDxq0ftDITJmiEiWIzn5l+e8hAv3oU/7NZmcL4uCpsg fm0A== X-Gm-Message-State: AOJu0YweiRAEGNV8wXToOKpkL7ShnL5GBHEXDEkB7SOpWhjqwzwRU9zV dHjGESAKLKDPh2cg3BJIiyfmRZvuCqQuM/UdZ1U= X-Google-Smtp-Source: AGHT+IHelf8r/Yz09F7qUDxm4og8CP6G4BxBv9NDwNUpvvSBPQWuBVHr4iBvCKjIF+L2UvYK5kontoowax9aFmiEgjI= X-Received: by 2002:a2e:84ce:0:b0:2b9:4413:864e with SMTP id q14-20020a2e84ce000000b002b94413864emr2015608ljh.53.1694612547913; Wed, 13 Sep 2023 06:42:27 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Wed, 13 Sep 2023 06:42:27 -0700 From: Stefan Kangas In-Reply-To: References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> MIME-Version: 1.0 Date: Wed, 13 Sep 2023 06:42:27 -0700 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) David Fussner writes: > P.S. I'm also starting the copyright assignment process, in case these > changes prove acceptable. That's great, thanks. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 13 Sep 2023 15:24:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: David Fussner , Stefan Kangas Cc: 53749@debbugs.gnu.org, Lars Ingebrigtsen Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.169461861321719 (code B ref 53749); Wed, 13 Sep 2023 15:24:01 +0000 Received: (at 53749) by debbugs.gnu.org; 13 Sep 2023 15:23:33 +0000 Received: from localhost ([127.0.0.1]:35668 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgRiG-0005eF-OO for submit@debbugs.gnu.org; Wed, 13 Sep 2023 11:23:33 -0400 Received: from forward501b.mail.yandex.net ([178.154.239.145]:38740) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgRiC-0005e2-P2 for 53749@debbugs.gnu.org; Wed, 13 Sep 2023 11:23:31 -0400 Received: from mail-nwsmtp-smtp-production-main-73.iva.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-73.iva.yp-c.yandex.net [IPv6:2a02:6b8:c0c:7e9c:0:640:587e:0]) by forward501b.mail.yandex.net (Yandex) with ESMTP id F35205E7A1; Wed, 13 Sep 2023 18:23:19 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-73.iva.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id HNhdbhADgeA0-777hMwy4; Wed, 13 Sep 2023 18:23:19 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1694618599; bh=cVIHCR+BFTKECr/K8OeXfbKGQSHWFHxDdg6SQkbdX1c=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=A24eHabsHoRQzHHr9RrmGDtaXBgn844gey8MYcT6iqJaI7cChkR85SGgvyBvdlIkz IE1QGRXqA4RHAtOwh/5nuSoLlc51BYjijE8lv4Sr06jZtPOM9m0zvOTXwnfPKS+meK YxoigluWTilrIdNwB5ecSKvLFypWLtxRrWb/1fZM= Authentication-Results: mail-nwsmtp-smtp-production-main-73.iva.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailauth.nyi.internal (Postfix) with ESMTP id 514B127C0054; Wed, 13 Sep 2023 11:23:17 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute3.internal (MEProxy); Wed, 13 Sep 2023 11:23:17 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudeikedgkeekucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtfeejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnheptdffgeegkeelteevtdekleethfeftdduvdegkedtkedujefhfedtveeftdff udevnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 13 Sep 2023 11:23:15 -0400 (EDT) Message-ID: Date: Wed, 13 Sep 2023 18:23:13 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Content-Language: en-US References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -1.5 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.5 (--) Hi David! Thanks for the new patch. I'm skipping over the etags parser changes (others might comment, I'm just assuming they are good). And "thing at point" code is, I think, at your discretion (if the result is useful, then that seems good). I would probably not call the function the same way given that we don't install this "thing" globally, just using it from several the major modes in a particular way. Anyway, that is a minor affair. I'd like to suggest two simplifications for the xref-related stuff, if those work for you. On 13/09/2023 14:10, David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: > <...> I also manipulate some > variables buffer-locally to make things like project-find-regexp and > isearch-forward-thing-at-point work better in such buffers. These won't be affected either way, right? Because project-find-regexp defaults its input to (thing-at-point 'symbol t), and isearch... probably also uses "symbol" if you ask it to. So... why not just make tex-thingatpt-include-escape a boolean? What commands need to be distinguished that way? I think 'find-tag' (it's obsolete but still used sometimes) would need to obey this var as well. And the second thing: you're putting the symbol on major modes. +(dolist (texmode tex-thingatpt-modes-list) + (put texmode 'find-tag-default-function 'tex--thing-at-point)) Why not set the variable find-tag-default-function instead? That seems easier and more appropriate to do inside a major mode function. Thanks. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 13 Sep 2023 17:03:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org, Lars Ingebrigtsen , Stefan Kangas Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.169462452820033 (code B ref 53749); Wed, 13 Sep 2023 17:03:02 +0000 Received: (at 53749) by debbugs.gnu.org; 13 Sep 2023 17:02:08 +0000 Received: from localhost ([127.0.0.1]:35863 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgTFg-0005D3-31 for submit@debbugs.gnu.org; Wed, 13 Sep 2023 13:02:08 -0400 Received: from mail-pf1-x433.google.com ([2607:f8b0:4864:20::433]:56333) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgTFd-0005CW-Ks for 53749@debbugs.gnu.org; Wed, 13 Sep 2023 13:02:06 -0400 Received: by mail-pf1-x433.google.com with SMTP id d2e1a72fcca58-68fb71ded6dso6477b3a.0 for <53749@debbugs.gnu.org>; Wed, 13 Sep 2023 10:02:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20221208; t=1694624514; x=1695229314; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=hDk2F0fJ+GrFtXH9IsSJtROEMzPFNMtxuCT68qWf0pk=; b=p9Hy+mFRMhChWFnTj680PFot+HmxWmFenqfxkpP3yyIrQQ87eeqlbzOSS6tgX5YFzr Zrkpq8u/i7vy7wl9XwOauxbs6IRvUEYhwVNP5i00cKkucCIdCElofsoJ+GsVkzuM4r7S q/SY4GN+BP5WZCjt/z/1QQqnmfWaY0JAJXRHKKXpjxOweSjFhBCticC6Ejzi+Q8h68vF ygAVD7ajt8ucMuuSyfzRRWmQMbt2Dt19sE0O2A9Ylw424euWEcdg14Tt6gExBwvi/K7l M13LoPuW0QyHpkaLR2AdaDJ7O5JEq0JJgP/295ayszdarkFHSRLbLgCI4AK3H5nXuTpD ZdvA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694624514; x=1695229314; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=hDk2F0fJ+GrFtXH9IsSJtROEMzPFNMtxuCT68qWf0pk=; b=nFOr3Jq/s1BceJAiL9cA3K0h4jRw0QcDvulshUuzM1cD9I+v5FaQa4WdAMnxR1zPXU BbEHBKl3qg2ASzMa6XrPGUn9tSm0LiIy3aXJUY4FovEZnTMxW3MRG8WZc9VIcTKrDAFM oFh6qkTUC2Rt42TyT2Tv+OChRkA9mglKsshYaNBl0SgHGuFLahClFjSEu0WiMTvFXric YXqFu8B38si3yEYBO7zitplya1Pl2PZDYwoVIOf2fED9/hZe6AwXw20IYj+4q1eUa2UK Tx5OrOb2fSAK6lYbFA/gsVcSSPfq4XaL7LCV8hDaeZtvx53z3H1YR8f8MRHKwo9+KF17 s8OQ== X-Gm-Message-State: AOJu0YyWmigPf21Tqzw5Z7EohbHmtCYbKVwJpE4NQ4SGnsBKX8Gbfwg3 93U894VALqDQvHjIOZcbCS5Fvin4/4g2UTRa4m4= X-Google-Smtp-Source: AGHT+IFKuE3BvDA2TSXne898q+tyPJoZ4AmYsrx/wjBdxL8c5zf/m4POPx72JiUklw/avLbJwOf6Ji+IWzMk8YuBc68= X-Received: by 2002:a05:6a21:99a2:b0:154:e054:d0d1 with SMTP id ve34-20020a056a2199a200b00154e054d0d1mr3422699pzb.55.1694624514105; Wed, 13 Sep 2023 10:01:54 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> In-Reply-To: From: David Fussner Date: Wed, 13 Sep 2023 18:01:41 +0100 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Dmitry, Thanks for the feedback! > These won't be affected either way, right? Because project-find-regexp > defaults its input to (thing-at-point 'symbol t), and isearch... > probably also uses "symbol" if you ask it to. > > So... why not just make tex-thingatpt-include-escape a boolean? What > commands need to be distinguished that way? I think 'find-tag' (it's > obsolete but still used sometimes) would need to obey this var as well. xref-find-apropos and xref-find-references don't work well (or at all) with the escape char included in the search string, so I was keeping that char away from them. (The buffer-local variables I manipulate for project-find-regexp and isearch-forward-thing-at-point have to do with ensuring they use the texsymbol thing in the first place -- see tex--symbol-or-texsymbol.) Does that make sense? I'll look at find-tag, too; thanks for pointing that out. > Why not set the variable find-tag-default-function instead? That seems > easier and more appropriate to do inside a major mode function. I settled on putting the symbol on the modes because I thought it was simpler than setting the variable buffer-locally in all the in-tree and AUCTeX modes, but I'll revisit this and see whether I can come up with something better. Thanks again. On Wed, 13 Sept 2023 at 16:23, Dmitry Gutov wrote: > > Hi David! > > Thanks for the new patch. > > I'm skipping over the etags parser changes (others might comment, I'm > just assuming they are good). > > And "thing at point" code is, I think, at your discretion (if the result > is useful, then that seems good). I would probably not call the function > the same way given that we don't install this "thing" globally, just > using it from several the major modes in a particular way. Anyway, that > is a minor affair. > > I'd like to suggest two simplifications for the xref-related stuff, if > those work for you.r along the lines of your > > On 13/09/2023 14:10, David Fussner via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: > > > <...> I also manipulate some > > variables buffer-locally to make things like project-find-regexp and > > isearch-forward-thing-at-point work better in such buffers. > > These won't be affected either way, right? Because project-find-regexp > defaults its input to (thing-at-point 'symbol t), and isearch... > probably also uses "symbol" if you ask it to. > > So... why not just make tex-thingatpt-include-escape a boolean? What > commands need to be distinguished that way? I think 'find-tag' (it's > obsolete but still used sometimes) would need to obey this var as well. > > And the second thing: you're putting the symbol on major modes. > > +(dolist (texmode tex-thingatpt-modes-list) > + (put texmode 'find-tag-default-function 'tex--thing-at-point)) > > Why not set the variable find-tag-default-function instead? That seems > easier and more appropriate to do inside a major mode function.r along the lines of your > > Thanks. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 13 Sep 2023 19:17:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org, larsi@gnus.org, stefankangas@gmail.com, dfussner@googlemail.com Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.169463260921228 (code B ref 53749); Wed, 13 Sep 2023 19:17:02 +0000 Received: (at 53749) by debbugs.gnu.org; 13 Sep 2023 19:16:49 +0000 Received: from localhost ([127.0.0.1]:36060 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgVM0-0005WK-Pv for submit@debbugs.gnu.org; Wed, 13 Sep 2023 15:16:49 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54532) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgVLy-0005W6-Ju for 53749@debbugs.gnu.org; Wed, 13 Sep 2023 15:16:47 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qgVLm-0000mt-Kb; Wed, 13 Sep 2023 15:16:34 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=aTDFV6Z0gY4vhgOrL0CX4ksEW8OBLA/mMSd3eOjR0Vs=; b=lVgnJ8rg6/3h x5JKOsCzKHcWll1C84F+Sge3Ir3hYzhuDDsb2u5YlVGAcOhifJ2Ttq9upWaZ5r00vbt9+pylqoVrP VnWWND8fMa5jxg9qh/kZwIACNTS3Ne8G0uDNHRFjTDxFedV6Fu1S367FJCXsboDOAOCg2uIa/va0/ /iYEf8XYqKLlsjn8WN4bxgsXsMh5Gn4RBMHJT/cy3n1XeuT3xKb+uHYSFcNeER8pqtyEf/HD+ivh2 8szRqtCc5/5p7U1Higz74fi9dCy50le+Tvo8O794hS6wHSYBz9imuRToJ1uBbFz2xESJ8ijH3mqmt F5Z8FxSZB9k/8yIbxUCCIQ==; Date: Wed, 13 Sep 2023 22:16:21 +0300 Message-Id: <83jzstnat6.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: (message from Dmitry Gutov on Wed, 13 Sep 2023 18:23:13 +0300) References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Cc: 53749@debbugs.gnu.org, Lars Ingebrigtsen > Date: Wed, 13 Sep 2023 18:23:13 +0300 > From: Dmitry Gutov > > I'm skipping over the etags parser changes (others might comment, I'm > just assuming they are good). They look OK to me at first glance, but we need to make sure the etags tests still succeed after this change, and the new option should be documented in the man page. Bonus points for adding to the etags test suite a test where this option is activated. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 13 Sep 2023 20:26:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Eli Zaretskii Cc: 53749@debbugs.gnu.org, Lars Ingebrigtsen , Stefan Kangas , Dmitry Gutov Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.169463675528156 (code B ref 53749); Wed, 13 Sep 2023 20:26:02 +0000 Received: (at 53749) by debbugs.gnu.org; 13 Sep 2023 20:25:55 +0000 Received: from localhost ([127.0.0.1]:36162 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgWQt-0007K4-9n for submit@debbugs.gnu.org; Wed, 13 Sep 2023 16:25:55 -0400 Received: from mail-pj1-x1029.google.com ([2607:f8b0:4864:20::1029]:61529) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgWQp-0007Jn-ND for 53749@debbugs.gnu.org; Wed, 13 Sep 2023 16:25:54 -0400 Received: by mail-pj1-x1029.google.com with SMTP id 98e67ed59e1d1-273fa877befso171630a91.2 for <53749@debbugs.gnu.org>; Wed, 13 Sep 2023 13:25:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20221208; t=1694636740; x=1695241540; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=41QkY8Udl3BCpt6H7ulsqf4IpbMQRuTa8DSn6la7J6A=; b=aKdEUOgPcFsq47pyMOe5KNj4XJHTj0/LgEo3+nAlsPe4DF9mtbWQ6BuXGcCoo4MxNc 9CkPXBMzaHQcoxRsyMSEU6yXAT/ENGQP4Z7I69C1z23yEsx32yT0qpLrQGfD/GJsdbkX 2D0gOktxRAO2FJsmtpANmUVpz/Y5FVhGPwzDnuYtz3qRT7RXsFa6ouinSMRATTwY0iZP 033Wrv5wB7RmgxUtqB8od+NqmNFAwrWBdQD+6LUN0GsQvT5T6JRTbE6uhoTs7LYV7Tnr LPsNt+bBkKNqzpYfamX+d6geiLMrHIqjk0uzEIGUs1BL7Uv+XbCmRH4mEyswQB6PIxFH v0uw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694636740; x=1695241540; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=41QkY8Udl3BCpt6H7ulsqf4IpbMQRuTa8DSn6la7J6A=; b=sADfoHxQwthfYwyEfXUUZytMIihXb/llCynBddLeEY9M8bljx8SZzSHWG7emLAejez pmtVj9u1GS1y5yDBgEnyWZ3Nojb69wjH3RNIDYoUAb/StVM8fhPmSacilq4YLOSs+mbJ m5ijiOA2L/bbMg2P4QzHzglw/QPgM74v2pDyd5g8x6z1LljELwy5H+31Z7eZjWW3sSXG SGtir6anfEuGeZpVFl3yk5pwlRyWTMqev6dVr7ByjlTOMHqSue6GU/AK8I/Y9z0pNLYt FpO4usk2Kx3b1DMY6/nG1okibSp/EyF4qPJXOrNduGEYo+YVAviNYPhxpvHRM0R5OMYM 01yg== X-Gm-Message-State: AOJu0YxwUQHPgz7xBSiuvp0yXnRx+GlM0ikjHe64VflqxzM0ymIeJceh E9F1BjEQA1u0jAsFEoYlbqqrbhmdoMbcJOFQRNc= X-Google-Smtp-Source: AGHT+IFDNMFwmBzMwCSnhm+/q3otJV84L20ejZz6RPMW9NvMk3QRUzIPXPYPcpK/rrIpZIF9/VRmZ+Y2fJFrNPiRTKI= X-Received: by 2002:a17:90a:7806:b0:263:f7ce:335e with SMTP id w6-20020a17090a780600b00263f7ce335emr3377696pjk.43.1694636740318; Wed, 13 Sep 2023 13:25:40 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <83jzstnat6.fsf@gnu.org> In-Reply-To: <83jzstnat6.fsf@gnu.org> From: David Fussner Date: Wed, 13 Sep 2023 21:25:28 +0100 Message-ID: Content-Type: multipart/alternative; boundary="000000000000ee1e3e0605435cc4" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000ee1e3e0605435cc4 Content-Type: text/plain; charset="UTF-8" Thanks Eli. I'll have a look at the man page, and also at an additional test for the suite. I did run the test suite, and all the diffs were where they should be; I can send a patch that I have if you'd like, but if I'm going to add tests maybe you'd prefer to wait? On Wed, 13 Sept 2023, 20:16 Eli Zaretskii, wrote: > > Cc: 53749@debbugs.gnu.org, Lars Ingebrigtsen > > Date: Wed, 13 Sep 2023 18:23:13 +0300 > > From: Dmitry Gutov > > > > I'm skipping over the etags parser changes (others might comment, I'm > > just assuming they are good). > > They look OK to me at first glance, but we need to make sure the etags > tests still succeed after this change, and the new option should be > documented in the man page. Bonus points for adding to the etags test > suite a test where this option is activated. > --000000000000ee1e3e0605435cc4 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Thanks Eli.

= I'll have a look at the man page, and also at an additional test for th= e suite. I did run the test suite, and all the diffs were where they should= be; I can send a patch that I have if=C2=A0you'd like, but if I'm = going to add tests maybe you'd prefer to wait?

On Wed, 13 Sept 202= 3, 20:16 Eli Zaretskii, <eliz@gnu.org> wrote:
> Cc: 53749@debb= ugs.gnu.org, Lars Ingebrigtsen <larsi@gnus.org>
> Date: Wed, 13 Sep 2023 18:23:13 +0300
> From: Dmitry Gutov <dgutov@yandex.ru>
>
> I'm skipping over the etags parser changes (others might comment, = I'm
> just assuming they are good).

They look OK to me at first glance, but we need to make sure the etags
tests still succeed after this change, and the new option should be
documented in the man page.=C2=A0 Bonus points for adding to the etags test=
suite a test where this option is activated.
--000000000000ee1e3e0605435cc4-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 14 Sep 2023 00:00:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: David Fussner Cc: 53749@debbugs.gnu.org, Lars Ingebrigtsen , Stefan Kangas Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.16946495934715 (code B ref 53749); Thu, 14 Sep 2023 00:00:02 +0000 Received: (at 53749) by debbugs.gnu.org; 13 Sep 2023 23:59:53 +0000 Received: from localhost ([127.0.0.1]:36332 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgZlx-0001Dy-39 for submit@debbugs.gnu.org; Wed, 13 Sep 2023 19:59:53 -0400 Received: from forward500a.mail.yandex.net ([178.154.239.80]:54266) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgZlu-0001Do-0T for 53749@debbugs.gnu.org; Wed, 13 Sep 2023 19:59:52 -0400 Received: from mail-nwsmtp-smtp-production-main-64.vla.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-64.vla.yp-c.yandex.net [IPv6:2a02:6b8:c0f:170e:0:640:d60c:0]) by forward500a.mail.yandex.net (Yandex) with ESMTP id E35035EF86; Thu, 14 Sep 2023 02:59:41 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-64.vla.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id dxpbg7HDSGk0-MlxyMtim; Thu, 14 Sep 2023 02:59:41 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1694649581; bh=9s8lVceYnE3mxSr+P4DSmF7RV3st3l5iYSjJOgeOPIY=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=fgkTGqiM1vRdLugEeFiq1vMkijoryZkr1PRRYbD5FUOgjMjeMvWB3hhnp90LH8ztb ke/PIGaPOFMMuDJW4zp9Vwbg+/OvTBQFN3Nbk13Hg78yr3wjteQv5paN4A/yI1P2qZ B7X/ZpkLJgb6dlxKUx1iPDp7A1LzqYJah9ZWZzfE= Authentication-Results: mail-nwsmtp-smtp-production-main-64.vla.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailauth.nyi.internal (Postfix) with ESMTP id 3C30027C0060; Wed, 13 Sep 2023 19:59:39 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute3.internal (MEProxy); Wed, 13 Sep 2023 19:59:39 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudeiledgvdekucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtfeejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnheptdffgeegkeelteevtdekleethfeftdduvdegkedtkedujefhfedtveeftdff udevnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 13 Sep 2023 19:59:37 -0400 (EDT) Message-ID: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> Date: Thu, 14 Sep 2023 02:59:33 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Content-Language: en-US References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -1.5 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.5 (--) On 13/09/2023 20:01, David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: >> These won't be affected either way, right? Because project-find-regexp >> defaults its input to (thing-at-point 'symbol t), and isearch... >> probably also uses "symbol" if you ask it to. >> >> So... why not just make tex-thingatpt-include-escape a boolean? What >> commands need to be distinguished that way? I think 'find-tag' (it's >> obsolete but still used sometimes) would need to obey this var as well. > > xref-find-apropos and xref-find-references don't work well (or at all) > with the escape char included in the search string, so I was keeping > that char away from them. (The buffer-local variables I manipulate for > project-find-regexp and isearch-forward-thing-at-point have to do with > ensuring they use the texsymbol thing in the first place -- see > tex--symbol-or-texsymbol.) Does that make sense? Hmm, I suppose I skipped over that part of the patch too quickly. Here's a potential problem with replacing the notion of "symbol": some other existing code (also working with TeX/LaTeX) might disagree, as it might have some existing notion of what a "symbol" in those modes is (as defined by the syntax table). In general, we change the notion of a symbol by either changing the mode's syntax table, or by augmenting its effect using syntax-propertize-function (which, for example, could propertize the backslashes inside the buffer as "symbol constituent"). The latter might actually be a change that would affect how 'M-x xref-find-references' works (it will likely start to consider those \tags as symbol occurrences together with the backslash). But like other changes of what is considered to be a "symbol" in a major mode, it could conflict with existing code. Anyway, I'm not saying you have to change the approach, but that's something to be aware of. And to look at it from another direction: if the default implementation of xref-find-references (and etags uses the very generic one) doesn't work for you, perhaps it would be worth it to define a TeX-specific Xref backend. That would perhaps take 20-30 lines of code total, most of them delegating to the etags backend, or the default impl. But while delegating, you can modify the passed argument - e.g. if it included a backslash, you could forward it to the default impl for "find references" without a backslash. Or - alternatively - call (project-find-regexp "...") with a more complex regexp of your choice. The first alternative could look like this: (cl-defmethod xref-backend-references ((_backend (eql 'tex-etags)) identifier) (xref-backend-references 'etags (string-remove-prefix "\\" identifier))) > I'll look at find-tag, too; thanks for pointing that out. Doing the above choice on the level of Xref backend's methods would/should automatically make it work for all commands appropriately. >> Why not set the variable find-tag-default-function instead? That seems >> easier and more appropriate to do inside a major mode function. > > I settled on putting the symbol on the modes because I thought it was > simpler than setting the variable buffer-locally in all the in-tree > and AUCTeX modes, but I'll revisit this and see whether I can come up > with something better. Do AUCTeX modes inherit from tex-mode? Or all call tex-common-initialization? Then you could set that variable locally inside that function once. All in all, it might not be wise to modify the behavior of third-party packages from inside Emacs this way (they might have other expectations, or there's going to appear a new major mode that needs the same treatment anyway). Setting a variable to be used through mode inheritance or delegation is fine, but if that doesn't help, I would probably stop at defining a helper function or two and documenting how it should be used. And then maybe work with AUCTeX people to get the remaining necessary changes in from their side (or just leaving that up to the user, depending on how functional the default config ends up being). From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 14 Sep 2023 05:15:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: David Fussner Cc: 53749@debbugs.gnu.org, larsi@gnus.org, stefankangas@gmail.com, dgutov@yandex.ru Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.16946684853678 (code B ref 53749); Thu, 14 Sep 2023 05:15:01 +0000 Received: (at 53749) by debbugs.gnu.org; 14 Sep 2023 05:14:45 +0000 Received: from localhost ([127.0.0.1]:36507 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgegf-0000xF-Ep for submit@debbugs.gnu.org; Thu, 14 Sep 2023 01:14:45 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34742) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgegc-0000x3-UI for 53749@debbugs.gnu.org; Thu, 14 Sep 2023 01:14:44 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qgegR-0001g7-Gk; Thu, 14 Sep 2023 01:14:31 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=v47V7zflxV3qhXbcqVKxt6HE1cDmbLU9qUsGi/qyKIU=; b=R5CSaPYJbuzT w8bixkCHnZAdKotsT4tLq86C/Wi5bGApTgQdE02Ic3R12lIMFKNgLawgmwwTOnzswfNKPy1QQIySZ /M3eA1Mnh5OYkDoiZ2UmoPQFKs4/W+uSMwRcWfXytXiR/OgdrpgC5Uu1P3A/5sUI+u8229W6nOABh EZdhLCOQcGVfPtBdW6BozyE5qGmuCadKrMSHDrGrC47DCUg95MzemBJ41vKJ2nytU+j/1lPFDqtUc QfDUP4XKTAhrKWzlQsNBjoHBx67E/Hq4tA7tqGWbvCmmNdpgGBuVVFdmWxMApWYXVQFEuj7CIoxTJ VtZwOen8cEFh2bdrtfyq9A==; Date: Thu, 14 Sep 2023 08:14:21 +0300 Message-Id: <83cyylmj4i.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: (message from David Fussner on Wed, 13 Sep 2023 21:25:28 +0100) References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <83jzstnat6.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: David Fussner > Date: Wed, 13 Sep 2023 21:25:28 +0100 > Cc: Dmitry Gutov , Stefan Kangas , 53749@debbugs.gnu.org, > Lars Ingebrigtsen > > I'll have a look at the man page, and also at an additional test for the suite. I did run the test suite, and > all the diffs were where they should be; I can send a patch that I have if you'd like, but if I'm going to > add tests maybe you'd prefer to wait? Sure, we will wait. There's no rush. Let's have a complete patch that covers all the aspects of this, and install it in one go. Meanwhile you will also have time to work on the other review comments. Thanks. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 14 Sep 2023 06:11:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Dmitry Gutov , Stefan Monnier , Tassilo Horn Cc: 53749@debbugs.gnu.org, larsi@gnus.org, stefankangas@gmail.com, dfussner@googlemail.com Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.169467183519614 (code B ref 53749); Thu, 14 Sep 2023 06:11:01 +0000 Received: (at 53749) by debbugs.gnu.org; 14 Sep 2023 06:10:35 +0000 Received: from localhost ([127.0.0.1]:36614 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgfYg-00056I-CX for submit@debbugs.gnu.org; Thu, 14 Sep 2023 02:10:34 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59350) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgfYd-000562-FL for 53749@debbugs.gnu.org; Thu, 14 Sep 2023 02:10:33 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qgfYR-0006gD-RR; Thu, 14 Sep 2023 02:10:19 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=xntW5xfSLhAMvBSsazXkTqy2XzPg9UBcKv0LOUQ72GA=; b=Yf4KfEUyg1HR 1XXBX4mTITRHzO30bmG0bwnKp5SJH568fmrfvNqR4NtXnqVej+elNMR/sf+aXumXAi9cQA5w3Szso HFwjQ6wljyvvuEybTtfe8Q+g+pPEddX5C5ioPIyxNmLpaq9uE+8vtHP8DhAebjNPU9YahKiBheZMk lfR3E5mNV22FAOoBqrGjkSzlK+igASA2d7CEWMJa10cQb3mbKqvqr/IZlVNkJVJfFKWDdvrAwSvwI tJ+TDpDexCzYkhPqJNsOqExdCCvJQ1H4UMrvAVv95qBy633kDzbZlv3mD1XzoDWJDyYLMHtaQGmee 9+5eGRMa7J1KzwLkIKjmew==; Date: Thu, 14 Sep 2023 09:10:06 +0300 Message-Id: <831qf1mgjl.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> (message from Dmitry Gutov on Thu, 14 Sep 2023 02:59:33 +0300) References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Cc: 53749@debbugs.gnu.org, Lars Ingebrigtsen , > Stefan Kangas > Date: Thu, 14 Sep 2023 02:59:33 +0300 > From: Dmitry Gutov > > On 13/09/2023 20:01, David Fussner via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: > > >> These won't be affected either way, right? Because project-find-regexp > >> defaults its input to (thing-at-point 'symbol t), and isearch... > >> probably also uses "symbol" if you ask it to. > >> > >> So... why not just make tex-thingatpt-include-escape a boolean? What > >> commands need to be distinguished that way? I think 'find-tag' (it's > >> obsolete but still used sometimes) would need to obey this var as well. > > > > xref-find-apropos and xref-find-references don't work well (or at all) > > with the escape char included in the search string, so I was keeping > > that char away from them. (The buffer-local variables I manipulate for > > project-find-regexp and isearch-forward-thing-at-point have to do with > > ensuring they use the texsymbol thing in the first place -- see > > tex--symbol-or-texsymbol.) Does that make sense? > > Hmm, I suppose I skipped over that part of the patch too quickly. > > Here's a potential problem with replacing the notion of "symbol": some > other existing code (also working with TeX/LaTeX) might disagree, as it > might have some existing notion of what a "symbol" in those modes is (as > defined by the syntax table). > > In general, we change the notion of a symbol by either changing the > mode's syntax table, or by augmenting its effect using > syntax-propertize-function (which, for example, could propertize the > backslashes inside the buffer as "symbol constituent"). The latter might > actually be a change that would affect how 'M-x xref-find-references' > works (it will likely start to consider those \tags as symbol > occurrences together with the backslash). But like other changes of what > is considered to be a "symbol" in a major mode, it could conflict with > existing code. > > Anyway, I'm not saying you have to change the approach, but that's > something to be aware of. > > And to look at it from another direction: if the default implementation > of xref-find-references (and etags uses the very generic one) doesn't > work for you, perhaps it would be worth it to define a TeX-specific Xref > backend. That would perhaps take 20-30 lines of code total, most of them > delegating to the etags backend, or the default impl. But while > delegating, you can modify the passed argument - e.g. if it included a > backslash, you could forward it to the default impl for "find > references" without a backslash. Or - alternatively - call > (project-find-regexp "...") with a more complex regexp of your choice. > The first alternative could look like this: > > (cl-defmethod xref-backend-references ((_backend (eql 'tex-etags)) > identifier) > (xref-backend-references 'etags (string-remove-prefix "\\" > identifier))) > > > I'll look at find-tag, too; thanks for pointing that out. > > Doing the above choice on the level of Xref backend's methods > would/should automatically make it work for all commands appropriately. > > >> Why not set the variable find-tag-default-function instead? That seems > >> easier and more appropriate to do inside a major mode function. > > > > I settled on putting the symbol on the modes because I thought it was > > simpler than setting the variable buffer-locally in all the in-tree > > and AUCTeX modes, but I'll revisit this and see whether I can come up > > with something better. > > Do AUCTeX modes inherit from tex-mode? Or all call > tex-common-initialization? Then you could set that variable locally > inside that function once. > > All in all, it might not be wise to modify the behavior of third-party > packages from inside Emacs this way (they might have other expectations, > or there's going to appear a new major mode that needs the same > treatment anyway). > > Setting a variable to be used through mode inheritance or delegation is > fine, but if that doesn't help, I would probably stop at defining a > helper function or two and documenting how it should be used. And then > maybe work with AUCTeX people to get the remaining necessary changes in > from their side (or just leaving that up to the user, depending on how > functional the default config ends up being). I think we should add Stefan and Tassilo (CCed) to this discussion, as they might have valuable comments about this. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 14 Sep 2023 16:12:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Dmitry Gutov , Eli Zaretskii Cc: 53749@debbugs.gnu.org, Lars Ingebrigtsen , Stefan Kangas Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.169470790229575 (code B ref 53749); Thu, 14 Sep 2023 16:12:02 +0000 Received: (at 53749) by debbugs.gnu.org; 14 Sep 2023 16:11:42 +0000 Received: from localhost ([127.0.0.1]:40952 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgowP-0007gx-Jn for submit@debbugs.gnu.org; Thu, 14 Sep 2023 12:11:42 -0400 Received: from mail-pg1-x52f.google.com ([2607:f8b0:4864:20::52f]:52332) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgowK-0007gi-VW for 53749@debbugs.gnu.org; Thu, 14 Sep 2023 12:11:40 -0400 Received: by mail-pg1-x52f.google.com with SMTP id 41be03b00d2f7-56b2e689968so908736a12.0 for <53749@debbugs.gnu.org>; Thu, 14 Sep 2023 09:11:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20221208; t=1694707885; x=1695312685; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=yClKgPrgkH0ijtbUZoAa+ts8E01p26jewN3Op7wFT6Y=; b=fppzqFe9Y7Ir216D293aOU2fb6jrVg2m9cIZDy5yn8mK5pEBV8TclBs9qzIpuHZZFU n9F9xrdOLkndpQYxvi8OCgVuip1a5qEmdiB5IT76KcodiEI63aKDz23h2GHMK8XIbJAR HWJnWhmDZHut+4QXSeHG5OTQ7YsMhBHXNf8vaGVwLan29hj8/kA2aQeHY9/Q/dpKqhgH BuAzuWGDE0Ja13/CWhf68Vr2DRJ0bYHEvMY7Nm4mZ9TqdWLtTHr5F2YmP6+VZmv7pgDO 8kvHU6GAySgP/KAiqmuqWvzw0a5DJotmoTm+RUoS5GiFWRVaiVC4f4MpsTOR63vEYgJu e7Rw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694707885; x=1695312685; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=yClKgPrgkH0ijtbUZoAa+ts8E01p26jewN3Op7wFT6Y=; b=XyMvFiAmvd5Sgj8qVKz6LVcKti6FCmS/HMnnye1VNcwZDVaxIwWg1E+URYtosWXO88 llUYpqWLTFKciCYcEES5HTdah2NvpMi25ho574Zm1ez9Y3toPA9VKiCRwogboscmyYWQ z74IWVNq+0yaosmheRpzOrjq5okzuttDdNM6otG/wCHZtbMUQMOJQm1JqCWVuAFBpeqa Vp2uFsah91DEG9berQQe+I8ORtTh6LzTlHgr6TlmFkp2NjNlhTw4sZBIukovHiOEuwBt g5+j76AzyO6MQgj8g9hxpZin3BY9JFvSt/O5eaNRtc+Ea5mha+2Cb6EPj2BncdCKeB/c uiIQ== X-Gm-Message-State: AOJu0YzmZxLiUcw4pL0L1PgcLYipYm3OXFtrF9bF4r9cvNFtgzv7L99E gW8mtY4ioH+b+Qw6gjf2tcShJ2QHMR2V5+mBL3g= X-Google-Smtp-Source: AGHT+IG61FnwSQmCXmH3t+pgdEz698YFKHzZKoflutTzs5z4qykFXSirDm0lhGWH5mF/8XROSnhFCgy/nlH7d9tCGlc= X-Received: by 2002:a17:90b:164d:b0:270:1611:484b with SMTP id il13-20020a17090b164d00b002701611484bmr5433909pjb.41.1694707885068; Thu, 14 Sep 2023 09:11:25 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> In-Reply-To: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> From: David Fussner Date: Thu, 14 Sep 2023 17:11:13 +0100 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Dmitry, Once again, many thanks for the feedback. I'm still not certain I agree about the risks involved in creating a new "thing" type, as it really only appears in a small number of commands and then only in TeX buffers, and generally I tried to design the code to keep out of the way of anything outside of such buffers, but needless to say you see further and more clearly than I can. I've been reviewing your comments and my code, and have a few ideas and questions about how to go forward. Though I haven't coded it yet, it's possible that the simplest (and least intrusive) approach to follow would do something like this: 1. Get rid of the new texsymbol "thing" and just use a buffer-local value of find-tag-default-function and a rather more thoroughly modified syntax table to control what "symbol" means, but _only_ in the context of commands that use find-tag-default-function. I think I'd lose the ability to change the behavior of isearch-forward-thing-at-point and project-find-regexp, as I can't see how to temporarily modify the syntax table there, though perhaps I'm missing something. 2. Simply eliminate the TeX escape character entirely, both from tag names in a TAGS file and from any thing-at-point in a TeX buffer. I think this would eliminate the need to distinguish among the various xref commands in terms of whether they can or can't handle the escape character. It would also eliminate the need for the new user option in etags.c, as there would no longer be any code to cope with the escape character when finding a (thing-at-point 'symbol). This is slightly less powerful than the default I proposed, but there are probably many use cases where it won't matter at all (though it would for my own, possibly eccentric, use case). Does this sound to you like a plausible way forward? I've tried to reach out to the AUCTeX developers to see what they might want to do about setting the value of local variables there, and anything they come up with should be doable. Thanks again. On Thu, 14 Sept 2023 at 00:59, Dmitry Gutov wrote: > > On 13/09/2023 20:01, David Fussner via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: > > >> These won't be affected either way, right? Because project-find-regexp > >> defaults its input to (thing-at-point 'symbol t), and isearch... > >> probably also uses "symbol" if you ask it to. > >> > >> So... why not just make tex-thingatpt-include-escape a boolean? What > >> commands need to be distinguished that way? I think 'find-tag' (it's > >> obsolete but still used sometimes) would need to obey this var as well. > > > > xref-find-apropos and xref-find-references don't work well (or at all) > > with the escape char included in the search string, so I was keeping > > that char away from them. (The buffer-local variables I manipulate for > > project-find-regexp and isearch-forward-thing-at-point have to do with > > ensuring they use the texsymbol thing in the first place -- see > > tex--symbol-or-texsymbol.) Does that make sense? > > Hmm, I suppose I skipped over that part of the patch too quickly. > > Here's a potential problem with replacing the notion of "symbol": some > other existing code (also working with TeX/LaTeX) might disagree, as it > might have some existing notion of what a "symbol" in those modes is (as > defined by the syntax table). > > In general, we change the notion of a symbol by either changing the > mode's syntax table, or by augmenting its effect using > syntax-propertize-function (which, for example, could propertize the > backslashes inside the buffer as "symbol constituent"). The latter might > actually be a change that would affect how 'M-x xref-find-references' > works (it will likely start to consider those \tags as symbol > occurrences together with the backslash). But like other changes of what > is considered to be a "symbol" in a major mode, it could conflict with > existing code. > > Anyway, I'm not saying you have to change the approach, but that's > something to be aware of. > > And to look at it from another direction: if the default implementation > of xref-find-references (and etags uses the very generic one) doesn't > work for you, perhaps it would be worth it to define a TeX-specific Xref > backend. That would perhaps take 20-30 lines of code total, most of them > delegating to the etags backend, or the default impl. But while > delegating, you can modify the passed argument - e.g. if it included a > backslash, you could forward it to the default impl for "find > references" without a backslash. Or - alternatively - call > (project-find-regexp "...") with a more complex regexp of your choice. > The first alternative could look like this: > > (cl-defmethod xref-backend-references ((_backend (eql 'tex-etags)) > identifier) > (xref-backend-references 'etags (string-remove-prefix "\\" > identifier))) > > > I'll look at find-tag, too; thanks for pointing that out. > > Doing the above choice on the level of Xref backend's methods > would/should automatically make it work for all commands appropriately. > > >> Why not set the variable find-tag-default-function instead? That seems > >> easier and more appropriate to do inside a major mode function. > > > > I settled on putting the symbol on the modes because I thought it was > > simpler than setting the variable buffer-locally in all the in-tree > > and AUCTeX modes, but I'll revisit this and see whether I can come up > > with something better. > > Do AUCTeX modes inherit from tex-mode? Or all call > tex-common-initialization? Then you could set that variable locally > inside that function once. > > All in all, it might not be wise to modify the behavior of third-party > packages from inside Emacs this way (they might have other expectations, > or there's going to appear a new major mode that needs the same > treatment anyway). > > Setting a variable to be used through mode inheritance or delegation is > fine, but if that doesn't help, I would probably stop at defining a > helper function or two and documenting how it should be used. And then > maybe work with AUCTeX people to get the remaining necessary changes in > from their side (or just leaving that up to the user, depending on how > functional the default config ends up being). From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 14 Sep 2023 23:56:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: David Fussner , Eli Zaretskii Cc: 53749@debbugs.gnu.org, Lars Ingebrigtsen , Stefan Kangas Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.16947357312507 (code B ref 53749); Thu, 14 Sep 2023 23:56:02 +0000 Received: (at 53749) by debbugs.gnu.org; 14 Sep 2023 23:55:31 +0000 Received: from localhost ([127.0.0.1]:41471 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgwBF-0000eL-Ck for submit@debbugs.gnu.org; Thu, 14 Sep 2023 19:55:31 -0400 Received: from forward500b.mail.yandex.net ([178.154.239.144]:36956) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qgwB9-0000e5-EQ for 53749@debbugs.gnu.org; Thu, 14 Sep 2023 19:55:27 -0400 Received: from mail-nwsmtp-smtp-production-main-46.myt.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-46.myt.yp-c.yandex.net [IPv6:2a02:6b8:c12:5b86:0:640:36b7:0]) by forward500b.mail.yandex.net (Yandex) with ESMTP id 4D3B25EC47; Fri, 15 Sep 2023 02:55:15 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-46.myt.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id Ctqi0OPDcqM0-vMPGMJVR; Fri, 15 Sep 2023 02:55:14 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1694735714; bh=S0NfX6R6EdYmuKQGejBrE2ZCz87Ck0YvppztuUB4UJ8=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=mnv1dxPXVs692q9E3bM0+BDcxV1IoF/AswaFqvbiKyfgs8dxw7znYscy6aCAmEcH9 Ur4Y8CqCHvpeFiaEeLfiadgV7w4bBN0yzPJVi4zGpAOvibFHgpHMhL6jCUDG6Q6EaQ bGcq99uVISMEbYcXCLazGzt6s2T0cG2RHNprZ11Y= Authentication-Results: mail-nwsmtp-smtp-production-main-46.myt.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailauth.nyi.internal (Postfix) with ESMTP id 1D81B27C005B; Thu, 14 Sep 2023 19:55:12 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute3.internal (MEProxy); Thu, 14 Sep 2023 19:55:12 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudejuddgvdejucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtfeejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnheptdffgeegkeelteevtdekleethfeftdduvdegkedtkedujefhfedtveeftdff udevnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 14 Sep 2023 19:55:10 -0400 (EDT) Message-ID: <891e916e-d05b-b82b-5d3f-148f097d52cc@yandex.ru> Date: Fri, 15 Sep 2023 02:55:08 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Content-Language: en-US References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -1.5 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.5 (--) Hi David, On 14/09/2023 19:11, David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: > Once again, many thanks for the feedback. I'm still not certain I > agree about the risks involved in creating a new "thing" type, as it > really only appears in a small number of commands and then only in TeX > buffers, and generally I tried to design the code to keep out of the > way of anything outside of such buffers, but needless to say you see > further and more clearly than I can. I've been reviewing your comments > and my code, and have a few ideas and questions about how to go > forward. Though I haven't coded it yet, it's possible that the > simplest (and least intrusive) approach to follow would do something > like this: I agree that the risks are probably low, and my review stems from the general approach that doing global modifications to the environment can lead to problems. It might or might not happen in your case. If anything happens, though, the same modifications tend to make it harder to investigate, e.g. to find where a particular bit of behavior comes from. So the more local an implementation of a feature can be, is generally the better. But I'm no maintainer of tex-mode, and whatever choices are made here won't have effect outside of TeX, so if somebody wants to disagree with me, they're more than welcome to. > 1. Get rid of the new texsymbol "thing" and just use a buffer-local > value of find-tag-default-function and a rather more thoroughly > modified syntax table to control what "symbol" means, but _only_ in > the context of commands that use find-tag-default-function. I think > I'd lose the ability to change the behavior of > isearch-forward-thing-at-point and project-find-regexp, as I can't see > how to temporarily modify the syntax table there, though perhaps I'm > missing something. I'm suggesting this approach together with defining a "new" backend for TeX. Quotes because while it's going to have its own name, it's mostly going to perform forwarding to an existing backend (etags). This should make it practical for you to treat identifiers in xref-backend-definitions differently from that in xref-backend-references and xref-backend-apropos. If you define find-tag-default-function, you don't have to change the syntax table too: it might be easier to search around with a regexp. But for the new backend, you can also define the method xref-backend-identifier-at-point, where you would invoke the necessary bounds-of-thing logic. Then you won't need a change in find-tag-default-function. Either way, though, the major modes will need to set up xref-backend-functions instead (with add-hook). This could also be done in a minor mode, which you'd enable in any TeX-related major modes that you use. > 2. Simply eliminate the TeX escape character entirely, both from tag > names in a TAGS file and from any thing-at-point in a TeX buffer. I > think this would eliminate the need to distinguish among the various > xref commands in terms of whether they can or can't handle the escape > character. It would also eliminate the need for the new user option in > etags.c, as there would no longer be any code to cope with the escape > character when finding a (thing-at-point 'symbol). This is slightly > less powerful than the default I proposed, but there are probably many > use cases where it won't matter at all (though it would for my own, > possibly eccentric, use case). I wanted to ask whether including the backslash is important enough (it should not matter too much for disambiguation), but I figured it must be, otherwise you wouldn't go to all this effort. If not, it would simplify things a lot, though. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 15 Sep 2023 06:48:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org, Eli Zaretskii , Lars Ingebrigtsen , Stefan Kangas Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.169476047922039 (code B ref 53749); Fri, 15 Sep 2023 06:48:02 +0000 Received: (at 53749) by debbugs.gnu.org; 15 Sep 2023 06:47:59 +0000 Received: from localhost ([127.0.0.1]:41885 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qh2cQ-0005jL-7M for submit@debbugs.gnu.org; Fri, 15 Sep 2023 02:47:59 -0400 Received: from mail-wr1-x430.google.com ([2a00:1450:4864:20::430]:55385) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qh2cN-0005iR-6J for 53749@debbugs.gnu.org; Fri, 15 Sep 2023 02:47:56 -0400 Received: by mail-wr1-x430.google.com with SMTP id ffacd0b85a97d-31fa666000dso1607379f8f.2 for <53749@debbugs.gnu.org>; Thu, 14 Sep 2023 23:47:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1694760463; x=1695365263; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=A5VBnLWqFKIETrCgLRfZktivEcRHktust55c5PCG9y8=; b=TRl0GhaAjTqEYPSpxf85IM37qZffkUOebqUhFw4tgSZcOgi+Pf3dQ2BoOzDBbpKc5o ZhhdvrnHEkEnBNOhpfqwUK0cEkNcPeWOeWF+Eg0KA38U9sjOFf9kh8YYrLiCIqvoihzM MA69+sT8IeukGOK9/Q46nnaJIVsZFhYW+n+DXdkXnSM1z3UjoR2tK1U0Ws7ljoHdwnvL URjIEk3ESmNSkFwljyhqe2h/M/17Kc7bQ7JM+HayQUUH0W77nwmv17DTVdruyBKQziZJ 56wD7lib4IPbeOyFFXN4Vjx7Yh/nIaUrkiIoCmuiAETXcOBJoLdAfDKlpiZSK9KBwXdP Bq0g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694760463; x=1695365263; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=A5VBnLWqFKIETrCgLRfZktivEcRHktust55c5PCG9y8=; b=uWhWLvQiOgyy5QYUa7DaXj4CD2H+YHjFIp9hp5BOZxU+70Bb0xSPRW2TKhfVOysLbc 9KWte8G5oqCOtWCGGlHrrpX9M/xgIpj9LuRmnjM2VYYoBP77WO4Avrve6PXSLKbT4EP5 Tro7L9WSym19eMMU04XPW/h0Rkkv8vezltsd692LdkdTeeoAIt9t4Py6ORzDvzUvh0gR XgPdkxC/QZrokjsNX7uaPhJ5CG/upaOGxYdwh6SmPp3oBjupSPdqe2AOue/xNKKkH8lE k9US3c/0ekqVhKWNax1wYZl6sBqORKrqburi0xGAZcxgKtWbaX4BB04RK/v8ea+qEOpg b0Fw== X-Gm-Message-State: AOJu0Yx/loB5P0h7UW485mlpqQAoRoBzE59rNLf4I2/ZkNVVx1pfYiJH ou7+A4uvZvpfRCsUvKEV4/et380HbHI2ojL4T4yh2pPntR8= X-Google-Smtp-Source: AGHT+IHObs5SPCI7PA5ftADb/+NgwkAJtneNrviNGeKFkPChr2X1n302k0cqe2CWgKci3wVYXlrnOfkmM4NA+V2JdFY= X-Received: by 2002:a5d:408b:0:b0:31f:95ec:9099 with SMTP id o11-20020a5d408b000000b0031f95ec9099mr576003wrp.33.1694760462700; Thu, 14 Sep 2023 23:47:42 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <891e916e-d05b-b82b-5d3f-148f097d52cc@yandex.ru> In-Reply-To: <891e916e-d05b-b82b-5d3f-148f097d52cc@yandex.ru> From: David Fussner Date: Fri, 15 Sep 2023 07:47:29 +0100 Message-ID: Content-Type: multipart/alternative; boundary="0000000000005bd4030605602bd4" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --0000000000005bd4030605602bd4 Content-Type: text/plain; charset="UTF-8" Thanks Dmitry, I'll make another stab at a "new" backend, as suggested. I'll have a look at the escape char thing, too, and see how I feel about dropping it. It shouldn't take 18 months this time! Best, David. On Fri, 15 Sept 2023, 00:55 Dmitry Gutov, wrote: > Hi David, > > On 14/09/2023 19:11, David Fussner via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: > > > Once again, many thanks for the feedback. I'm still not certain I > > agree about the risks involved in creating a new "thing" type, as it > > really only appears in a small number of commands and then only in TeX > > buffers, and generally I tried to design the code to keep out of the > > way of anything outside of such buffers, but needless to say you see > > further and more clearly than I can. I've been reviewing your comments > > and my code, and have a few ideas and questions about how to go > > forward. Though I haven't coded it yet, it's possible that the > > simplest (and least intrusive) approach to follow would do something > > like this: > > I agree that the risks are probably low, and my review stems from the > general approach that doing global modifications to the environment can > lead to problems. It might or might not happen in your case. If anything > happens, though, the same modifications tend to make it harder to > investigate, e.g. to find where a particular bit of behavior comes from. > So the more local an implementation of a feature can be, is generally > the better. > > But I'm no maintainer of tex-mode, and whatever choices are made here > won't have effect outside of TeX, so if somebody wants to disagree with > me, they're more than welcome to. > > > 1. Get rid of the new texsymbol "thing" and just use a buffer-local > > value of find-tag-default-function and a rather more thoroughly > > modified syntax table to control what "symbol" means, but _only_ in > > the context of commands that use find-tag-default-function. I think > > I'd lose the ability to change the behavior of > > isearch-forward-thing-at-point and project-find-regexp, as I can't see > > how to temporarily modify the syntax table there, though perhaps I'm > > missing something. > > I'm suggesting this approach together with defining a "new" backend for > TeX. Quotes because while it's going to have its own name, it's mostly > going to perform forwarding to an existing backend (etags). > > This should make it practical for you to treat identifiers in > xref-backend-definitions differently from that in > xref-backend-references and xref-backend-apropos. > > If you define find-tag-default-function, you don't have to change the > syntax table too: it might be easier to search around with a regexp. > > But for the new backend, you can also define the method > xref-backend-identifier-at-point, where you would invoke the necessary > bounds-of-thing logic. Then you won't need a change in > find-tag-default-function. > > Either way, though, the major modes will need to set up > xref-backend-functions instead (with add-hook). This could also be done > in a minor mode, which you'd enable in any TeX-related major modes that > you use. > > > 2. Simply eliminate the TeX escape character entirely, both from tag > > names in a TAGS file and from any thing-at-point in a TeX buffer. I > > think this would eliminate the need to distinguish among the various > > xref commands in terms of whether they can or can't handle the escape > > character. It would also eliminate the need for the new user option in > > etags.c, as there would no longer be any code to cope with the escape > > character when finding a (thing-at-point 'symbol). This is slightly > > less powerful than the default I proposed, but there are probably many > > use cases where it won't matter at all (though it would for my own, > > possibly eccentric, use case). > > I wanted to ask whether including the backslash is important enough (it > should not matter too much for disambiguation), but I figured it must > be, otherwise you wouldn't go to all this effort. > > If not, it would simplify things a lot, though. > --0000000000005bd4030605602bd4 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Thanks=C2=A0Dmitry,=C2=A0

I'll make another stab at a "new" backend, as s= uggested. I'll have a look at the escape char thing, too, and see how I= feel about dropping it. It shouldn't take 18 months this time!

Best,
David.=C2=A0

On Fri, 15 Sept 2023, 00:55 Dmi= try Gutov, <dgutov@yandex.ru>= wrote:
Hi David,

On 14/09/2023 19:11, David Fussner via Bug reports for GNU Emacs, the
Swiss army knife of text editors wrote:

> Once again, many thanks for the feedback. I'm still not certain I<= br> > agree about the risks involved in creating a new "thing" typ= e, as it
> really only appears in a small number of commands and then only in TeX=
> buffers, and generally I tried to design the code to keep out of the > way of anything outside of such buffers, but needless to say you see > further and more clearly than I can. I've been reviewing your comm= ents
> and my code, and have a few ideas and questions about how to go
> forward. Though I haven't coded it yet, it's possible that the=
> simplest (and least intrusive) approach to follow would do something > like this:

I agree that the risks are probably low, and my review stems from the
general approach that doing global modifications to the environment can lead to problems. It might or might not happen in your case. If anything happens, though, the same modifications tend to make it harder to
investigate, e.g. to find where a particular bit of behavior comes from. So the more local an implementation of a feature can be, is generally
the better.

But I'm no maintainer of tex-mode, and whatever choices are made here <= br> won't have effect outside of TeX, so if somebody wants to disagree with=
me, they're more than welcome to.

> 1. Get rid of the new texsymbol "thing" and just use a buffe= r-local
> value of find-tag-default-function and a rather more thoroughly
> modified syntax table to control what "symbol" means, but _o= nly_ in
> the context of commands that use find-tag-default-function. I think > I'd lose the ability to change the behavior of
> isearch-forward-thing-at-point and project-find-regexp, as I can't= see
> how to temporarily modify the syntax table there, though perhaps I'= ;m
> missing something.

I'm suggesting this approach together with defining a "new" b= ackend for
TeX. Quotes because while it's going to have its own name, it's mos= tly
going to perform forwarding to an existing backend (etags).

This should make it practical for you to treat identifiers in
xref-backend-definitions differently from that in
xref-backend-references and xref-backend-apropos.

If you define find-tag-default-function, you don't have to change the <= br> syntax table too: it might be easier to search around with a regexp.

But for the new backend, you can also define the method
xref-backend-identifier-at-point, where you would invoke the necessary
bounds-of-thing logic. Then you won't need a change in
find-tag-default-function.

Either way, though, the major modes will need to set up
xref-backend-functions instead (with add-hook). This could also be done in a minor mode, which you'd enable in any TeX-related major modes that=
you use.

> 2. Simply eliminate the TeX escape character entirely, both from tag > names in a TAGS file and from any thing-at-point in a TeX buffer. I > think this would eliminate the need to distinguish among the various > xref commands in terms of whether they can or can't handle the esc= ape
> character. It would also eliminate the need for the new user option in=
> etags.c, as there would no longer be any code to cope with the escape<= br> > character when finding a (thing-at-point 'symbol). This is slightl= y
> less powerful than the default I proposed, but there are probably many=
> use cases where it won't matter at all (though it would for my own= ,
> possibly eccentric, use case).

I wanted to ask whether including the backslash is important enough (it should not matter too much for disambiguation), but I figured it must
be, otherwise you wouldn't go to all this effort.

If not, it would simplify things a lot, though.
--0000000000005bd4030605602bd4-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Tassilo Horn Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 15 Sep 2023 19:13:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Eli Zaretskii Cc: 53749@debbugs.gnu.org, Ikumi Keita , dfussner@googlemail.com, stefankangas@gmail.com, Dmitry Gutov , larsi@gnus.org, Stefan Monnier Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.169480513326897 (code B ref 53749); Fri, 15 Sep 2023 19:13:02 +0000 Received: (at 53749) by debbugs.gnu.org; 15 Sep 2023 19:12:13 +0000 Received: from localhost ([127.0.0.1]:44790 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qhEEe-0006zl-Ii for submit@debbugs.gnu.org; Fri, 15 Sep 2023 15:12:12 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:43426) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qhEEb-0006yf-4s for 53749@debbugs.gnu.org; Fri, 15 Sep 2023 15:12:10 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qhEEM-0001fz-Dk; Fri, 15 Sep 2023 15:11:54 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-reply-to:Date:Subject:To:From: References; bh=MimMsDZskqyGYlfUQs16VjhR6Pb0NO1wnLNI4ZdoaXI=; b=M8jRwCBdsw/vlq DH5o1tdPM2aFdGXxYM0fN2S83DQcuXw5GTKGBQ/plPG6XXNt7TNAyHosDefahAIsuylv6yP1Z7jrl 9U3sZGiYZRLhgLpL8BPOtP0wkAOFhMcKjlz5xrlSX6U5oPmqn4IbWTOXHPY/dvayldhviqZr1W5kF JkoXtTXeapZDbbrgatBA5EdLzDcviQJLKyoTwfnvlXP04nqD0q73RvRLjyFueSLCmglDRCVzn9oHx 7BptR8Ia1ydXcF8fbBprlB7QiClqDOGgy0HiPO+RntFKRj+xZBioow0sWyVlpsy36H2Cp1EqqtS2C bffBFn9MgpOyMNrI34Jw==; X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudejvddgudefudcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpehffgfhvfevufffjgfkgggtsehttdertddtredtnecuhfhrohhmpefvrghs shhilhhoucfjohhrnhcuoehtshguhhesghhnuhdrohhrgheqnecuggftrfgrthhtvghrnh epudejtdehuddvleffjeekteegvdehleehvdeufefhueekkeekhedvgfeggeffvefgnecu vehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepthhhohhrnh domhgvshhmthhprghuthhhphgvrhhsohhnrghlihhthidqkeeijeefkeejkeegqdeifeeh vdelkedqthhsughhpeepghhnuhdrohhrghesfhgrshhtmhgrihhlrdhfmh X-ME-Proxy: Feedback-ID: ib2b94485:Fastmail References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> User-agent: mu4e 1.11.17; emacs 30.0.50 From: Tassilo Horn Date: Fri, 15 Sep 2023 20:45:45 +0200 In-reply-to: <831qf1mgjl.fsf@gnu.org> Message-ID: <87cyyj9rpp.fsf@gnu.org> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Eli Zaretskii writes: Hi Eli & all, thanks for inviting me to the discussion. I'm adding Keita, too, because he's currently the by far most active AUCTeX developer. >> Do AUCTeX modes inherit from tex-mode? Not currently but in Keita's feature/fix-mode-names-overlap branch which will probably become AUCTeX 14, I guess. >> Or all call tex-common-initialization? Then you could set that >> variable locally inside that function once. Again, not right now but probably in the future. >> All in all, it might not be wise to modify the behavior of >> third-party packages from inside Emacs this way (they might have >> other expectations, or there's going to appear a new major mode that >> needs the same treatment anyway). >> >> Setting a variable to be used through mode inheritance or delegation >> is fine, but if that doesn't help, I would probably stop at defining >> a helper function or two and documenting how it should be used. And >> then maybe work with AUCTeX people to get the remaining necessary >> changes in from their side (or just leaving that up to the user, >> depending on how functional the default config ends up being). That sounds reasonable. Bye, Tassilo From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Ikumi Keita Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 16 Sep 2023 05:54:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Tassilo Horn Cc: 53749@debbugs.gnu.org, dfussner@googlemail.com, Stefan Monnier , Dmitry Gutov , larsi@gnus.org, Eli Zaretskii , stefankangas@gmail.com Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.16948436098958 (code B ref 53749); Sat, 16 Sep 2023 05:54:02 +0000 Received: (at 53749) by debbugs.gnu.org; 16 Sep 2023 05:53:29 +0000 Received: from localhost ([127.0.0.1]:45223 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qhOFF-0002KQ-7T for submit@debbugs.gnu.org; Sat, 16 Sep 2023 01:53:29 -0400 Received: from smtp1a.inetd.co.jp ([210.129.88.11]:54562) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qhOFC-0002KC-70 for 53749@debbugs.gnu.org; Sat, 16 Sep 2023 01:53:28 -0400 Received: from localhost (42-144-34-11.rev.home.ne.jp [42.144.34.11]) by smtp1a.inetd.co.jp (Postfix) with ESMTPA id 354885C; Sat, 16 Sep 2023 14:53:17 +0900 (JST) From: Ikumi Keita In-reply-to: <87cyyj9rpp.fsf@gnu.org> References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> Comments: In-reply-to Tassilo Horn message dated "Fri, 15 Sep 2023 20:45:45 +0200." X-Mailer: MH-E 8.6+git; nmh 1.7.1; Emacs 29.1 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <65792.1694843596.1@localhost> Date: Sat, 16 Sep 2023 14:53:16 +0900 Message-ID: <65793.1694843596@localhost> X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi all, >>>>> Tassilo Horn writes: >>> Do AUCTeX modes inherit from tex-mode? > Not currently but in Keita's feature/fix-mode-names-overlap branch Currently, no. In feater/fix-mode-names-overlap branch, the major mode iheritance relations are: text-mode --+-- TeX-mode +-- Texinfo-mode TeX-mode --+-- plain-TeX-mode +-- LaTeX-mode +-- ConTeXt-mode plain-TeX-mode --+-- AmSTeX-mode +-- japanese-plain-TeX-mode LaTeX-mode --+-- docTeX-mode +-- japanese-LaTeX-mode (There are ConTeXt-en-mode and ConTeXt-nl-mode as well, but my current personal plain is to delete them.) I don't think it's a good idea to inherit from tex-mode; it isn't diffcult to change the "top" mode from text-mode with tex-mode, but in that case LaTeX-mode can't have both built-in latex-mode and TeX-mode as its parent mode. (Maybe an exception is Texinfo-mode. It would make sense to have built-in texinfo-mode as parent of Texinfo-mode. If there is a good reason to do so, I won't object strongly.) > which will probably become AUCTeX 14, I guess. I hope so. :-) >>> Or all call tex-common-initialization? Then you could set that >>> variable locally inside that function once. > Again, not right now but probably in the future. Currently, they don't call tex-common-initialization, but we can do so in TeX-mode. (But I haven't consider its pros and cons deeply yet.) Best regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 17 Sep 2023 08:51:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Ikumi Keita Cc: 53749@debbugs.gnu.org, Tassilo Horn , Stefan Monnier , Dmitry Gutov , larsi@gnus.org, Eli Zaretskii , stefankangas@gmail.com Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.16949406195538 (code B ref 53749); Sun, 17 Sep 2023 08:51:02 +0000 Received: (at 53749) by debbugs.gnu.org; 17 Sep 2023 08:50:19 +0000 Received: from localhost ([127.0.0.1]:49025 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qhnTt-0001RC-5v for submit@debbugs.gnu.org; Sun, 17 Sep 2023 04:50:19 -0400 Received: from mail-pg1-x534.google.com ([2607:f8b0:4864:20::534]:58374) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qhnTo-0001Qs-6h for 53749@debbugs.gnu.org; Sun, 17 Sep 2023 04:50:15 -0400 Received: by mail-pg1-x534.google.com with SMTP id 41be03b00d2f7-577f6b414a4so2905429a12.0 for <53749@debbugs.gnu.org>; Sun, 17 Sep 2023 01:50:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1694940599; x=1695545399; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=ZSF8pGd6O/0Mqz62bpL80UTm9fkQesJznsP8QFr1pwY=; b=dKiqv0m7+aZ6IS3Z0O2GWx6GFiAJuwOhNtH+VIwfpkT0dIDcgLma/Bj5dc8VCppAyZ 818Vjw5dE0yFHBGNUy1xiZRih03/2emDls+GcfupZzQnmHaVz0RT9nR+ofhzY/K/Nff/ /oB3hxNkkBPgV8reHYRYlw43nakg/hblM+SBmhAhRdvxMMrl5UPdJcMw8atoBct6wzl4 AfzsDfheIdHNZI7UgrWRd1UkkEXvDiWB3RM4jRIVYFoFz8+KU/wVhSmCvbGA1yGVA28K ORwxhCTmi9BtVlbVYEXMkIDrepujRw43OU4faskclGYThDmrCbwTIQCjAXexBAVqR2St ucrw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694940599; x=1695545399; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=ZSF8pGd6O/0Mqz62bpL80UTm9fkQesJznsP8QFr1pwY=; b=iMfER/GUCkRvwoBW5OtencVTBEZa3mztCs5x0kBMB/1QvqNs0y0j/Qf+dHQ+nAIiVM T8ZedBjAdDsfz9JteAShi7o+DpAUl+y+OL9J31BnaghEmsNOR2EBMhkRgpwzoBNQxSkx 6HF6XeHCf30OSLDxPmem/tut+TQBSZnG5lq1n0z5p5eJj1fm7t6ViCnTpW5E3v0AWAgw sf1BQby1XxH+iz2wB1ccrIcKxjxYoG9PYbFgarrnqG8DO8Tq4Lhpt5EJe2kQgcS9AKW8 4E4U5Lx7OYMZ7LDfj5SQZnt1Za3l6gWjW3e3I80XCkdh7GuFrFCh3Wut9mYIXYONAhdS 7BZQ== X-Gm-Message-State: AOJu0YwvFnbRt4SyZlrNAGc9Jy1//6NbYjA/ItBEUocN1eAHuSueANTU gWKnFmXZLtK+h9xpm30J9ulKR+OF64vLm3/qkFk= X-Google-Smtp-Source: AGHT+IF/GM48GS+eh1ceKLKVBNRzNz0OGi+8UxLfIbaKuoyFcdE/kHtFxWMwd6EUSV+vPaoWAkcslaffGD/HNe9zKQk= X-Received: by 2002:a17:90b:1e44:b0:263:f630:228f with SMTP id pi4-20020a17090b1e4400b00263f630228fmr6146624pjb.23.1694940598656; Sun, 17 Sep 2023 01:49:58 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> In-Reply-To: <65793.1694843596@localhost> From: David Fussner Date: Sun, 17 Sep 2023 09:49:46 +0100 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Tassilo and Keita, Thanks for the clarifications. If you look at the current patch to tex-mode.el, there's one function call added to TeX-mode-hook, mainly for my own testing purposes, but no matter what the final patch looks like it should only similarly require a single function call in an AUCTeX hook to activate the new xref code there, along with one in tex-common-initialization for the in-tree modes. If and when all parties are satisfied by the patch I'll certainly be in touch with you to find out how you'd prefer to handle activating it (or not) in AUCTeX. The current state of affairs is a convenience for me and for anyone else who cares to test the code. Thanks again, David. On Sat, 16 Sept 2023 at 06:53, Ikumi Keita wrote: > > Hi all, > > >>>>> Tassilo Horn writes: > >>> Do AUCTeX modes inherit from tex-mode? > > > Not currently but in Keita's feature/fix-mode-names-overlap branch > > Currently, no. In feater/fix-mode-names-overlap branch, the major mode > iheritance relations are: > > text-mode --+-- TeX-mode > +-- Texinfo-mode > > TeX-mode --+-- plain-TeX-mode > +-- LaTeX-mode > +-- ConTeXt-mode > > plain-TeX-mode --+-- AmSTeX-mode > +-- japanese-plain-TeX-mode > > LaTeX-mode --+-- docTeX-mode > +-- japanese-LaTeX-mode > > (There are ConTeXt-en-mode and ConTeXt-nl-mode as well, but my current > personal plain is to delete them.) > > I don't think it's a good idea to inherit from tex-mode; it isn't > diffcult to change the "top" mode from text-mode with tex-mode, but in > that case LaTeX-mode can't have both built-in latex-mode and TeX-mode as > its parent mode. > > (Maybe an exception is Texinfo-mode. It would make sense to have > built-in texinfo-mode as parent of Texinfo-mode. If there is a good > reason to do so, I won't object strongly.) > > > which will probably become AUCTeX 14, I guess. > > I hope so. :-) > > >>> Or all call tex-common-initialization? Then you could set that > >>> variable locally inside that function once. > > > Again, not right now but probably in the future. > > Currently, they don't call tex-common-initialization, but we can do so > in TeX-mode. (But I haven't consider its pros and cons deeply yet.) > > Best regards, > Ikumi Keita > #StandWithUkraine #StopWarInUkraine From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Arash Esbati Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 22 Apr 2024 13:07:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: David Fussner Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Stefan Monnier , Tassilo Horn , Eli Zaretskii , stefankangas@gmail.com Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17137912151524 (code B ref 53749); Mon, 22 Apr 2024 13:07:02 +0000 Received: (at 53749) by debbugs.gnu.org; 22 Apr 2024 13:06:55 +0000 Received: from localhost ([127.0.0.1]:45956 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rytNm-0000OW-Il for submit@debbugs.gnu.org; Mon, 22 Apr 2024 09:06:54 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:51338) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rytNh-0000NW-GG for 53749@debbugs.gnu.org; Mon, 22 Apr 2024 09:06:52 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rytNJ-00012B-Fx; Mon, 22 Apr 2024 09:06:25 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=COC37xvPPdk9JwImAhHDcJn72qW0mVzg/ChMZSUpVk4=; b=ZLPUJmCNdUdSS3z8phal MPW5rcFTioViFu+OVZYg+eerzBU8dgK1tkqt8v/4caKrYu1w4sQfStFjBUJl3iMeXibtjt1yz+r+z Qj5cxK8+rk1N8qOMnmduj2nvywFuFiRnSQ+FkFf9SLGJo7vss9TmtXh+NH5ZYkHGN7YFx5CGqvj0i GLgdzYje5tEd6Ij/MHvxfDujB98Fw6C4gm+HqLtEd9mUmJ1QZ7NBGvdkYzASzxlHmUXCcMAkmSh24 BqU2MiuGiIWyy8Di/w2HxIO2ImowNXs8Julh2LdIrZoMx+dDUR87hdYx8BE14ZlEuIrqU3uvHmXYQ CVZ+vBWP5R0rIw==; From: Arash Esbati In-Reply-To: (David Fussner's message of "Sun, 17 Sep 2023 09:49:46 +0100") References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> Date: Mon, 22 Apr 2024 15:06:06 +0200 Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) David Fussner writes: > Thanks for the clarifications. If you look at the current patch to > tex-mode.el, there's one function call added to TeX-mode-hook, mainly > for my own testing purposes, but no matter what the final patch looks > like it should only similarly require a single function call in an > AUCTeX hook to activate the new xref code there, along with one in > tex-common-initialization for the in-tree modes. If and when all > parties are satisfied by the patch I'll certainly be in touch with you > to find out how you'd prefer to handle activating it (or not) in > AUCTeX. The current state of affairs is a convenience for me and for > anyone else who cares to test the code. Hi David, I justed wanted to come back on this report and ask if there is any progress? It would be nice to get Xref working within TeX buffers. TIA. Best, Arash From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 22 Apr 2024 14:57:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Arash Esbati Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Stefan Monnier , Tassilo Horn , Eli Zaretskii , stefankangas@gmail.com Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17137978198330 (code B ref 53749); Mon, 22 Apr 2024 14:57:03 +0000 Received: (at 53749) by debbugs.gnu.org; 22 Apr 2024 14:56:59 +0000 Received: from localhost ([127.0.0.1]:46287 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ryv6I-0002AI-9d for submit@debbugs.gnu.org; Mon, 22 Apr 2024 10:56:59 -0400 Received: from mail-pj1-x102a.google.com ([2607:f8b0:4864:20::102a]:42460) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ryv6D-00029N-02 for 53749@debbugs.gnu.org; Mon, 22 Apr 2024 10:56:56 -0400 Received: by mail-pj1-x102a.google.com with SMTP id 98e67ed59e1d1-2a55a3d0b8eso3025245a91.1 for <53749@debbugs.gnu.org>; Mon, 22 Apr 2024 07:56:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1713797791; x=1714402591; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=bDesAdu67aLrP3IjcUXxIkDFDHN2kc+f2ubt1lCxf1E=; b=i80gqKMCVKkGI2GfGt+2EZC55tmxSYqmmd3GUpcY6ewf4kw00HtkKXX+VoYH8D/ldR v+yi21Uqc68JRL9BIsidRNGukZgSweGQhcm7uav9xmlOqWjRU8Lfx9koUv8Y8BihUkeR pFo3V4mSM/tUkHCGxS3iif8j4bJs4eV9et4VzH/zT1QeL7LReUtX07ayxanzrhdZ35x7 BgGUGTNy2IkzhsR5+mLc/ZhYfuKstBxm1dtYGEEevLYyLRs33lZX9pvsevfXiZIZAWhH JhLp7+yOWVBPRpryYdXX+Jx8CNChu8hs/HSg9BE49Ea+W7xErJY1dshgCoHjhO/0qHip +U2g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713797791; x=1714402591; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=bDesAdu67aLrP3IjcUXxIkDFDHN2kc+f2ubt1lCxf1E=; b=ab+NzC9iT4xkLrkuhfJkFxkIQT44/OMchPSQ3PVWlzg1hm0u4h7FnKiq6ICVBv8Rzd lwefEoIR3BM2bXYfPfIjUGsEqeXOCH/gM0cPM5G9rrGYmVIyoEfsrpX9MB8rQnc/7Aun 0jkbvS8jBMKCOHE+9ojzFDdAXn5XenIA1QGHacMY3UCfcE29mfOaqTSxUeCUb2m7JLTE MjdzfkBs7Uir3lglAp/L/WPkeSCMl3yAWq4k8WETf4LND3Bh5o5J6OJhTtfNGSTBBS3r noHHj8+ZVGL68DA5PJ0Fc1Ji5b//vfDnD4HNjt7F19lGlrKD00Zq1bQ8N0vgJjAI3TSV KT7Q== X-Forwarded-Encrypted: i=1; AJvYcCXWq1ZO2F7EMa/tmgzOpE9iKqeXlPqN6Mx07mNxlCwmNkAyrbDbZQndxOgplnFAvwt8u1VFakNmGFXS2PyBGhOlvETuTdM= X-Gm-Message-State: AOJu0Yw9g+4CUcrS6OdZJUyUoN3RfQ3CQb+XmCVlcsHntPiHFzcFaCxU pM5yoLOB+WlBeOB5vAEib16VguN5oSNlWfIZgPByW/wv+zvnLJZw+0rG7TJw4s0Olze1S+fqYdg /kXvZ0PaedxjUlAKKS8zjyw65Mag= X-Google-Smtp-Source: AGHT+IFIFHBzFMS7pMUY8/IFxPOKa1suVZz1BcVx/X7C52fkK2DV5oRWWO/g255ObPZSRpJbHERZIrvqU25syqVr5dU= X-Received: by 2002:a17:90a:928d:b0:2a2:9e5d:9bf9 with SMTP id n13-20020a17090a928d00b002a29e5d9bf9mr18166007pjo.8.1713797790843; Mon, 22 Apr 2024 07:56:30 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> In-Reply-To: From: David Fussner Date: Mon, 22 Apr 2024 15:56:34 +0100 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Arash, Thanks for the nudge. I am in fact in the final stages of preparing a new patch to get xref working in TeX buffers. As usual, the main complexities are in xref-find-references, and while I have you here I wonder whether I could ask your thoughts about addressing one part of this complexity. The semantic/symref backend used by xref-find-references greps in files matching the major-mode of the buffer where the user calls the command. It looks in semantic-symref-filepattern-alist for file-extensions matching the major-mode, and if that fails it looks in auto-mode-alist. When both fail to produce any file extensions it tells the user to customize semantic-symref-filepattern-alist. Also, if it finds things in s-s-f-a, it doesn't go on to auto-mode-alist, so s-s-f-a has to be complete in order to be useful. In effect, we need s-s-f-a to hold all the extensions for all the modes that can appear as values of major-mode, and I notice that AUCTeX has started to populate that alist, though incompletely. I'm also aware that many packages add their own extensions to files which are basically TeX or LaTeX files, and I wonder whether we can really keep up with the whole of CTAN in terms of providing complete lists of extensions for s-s-f-a. As an example of where we are, if you open a plain-tex-mode (or plain-TeX-mode) file and M-? with point on some standard word you'll currently get the message to customize s-s-f-a, because auto-mode-alist has only tex-mode and s-s-f-a doesn't cover them, either. I ask you Arash, therefore, as an AUCTeX and emacs developer, and I ask any other developers also, whether you'd prefer me just to put together as complete a list as possible for addition to s-s-f-a -- with patches for AUCTeX for all the new modes there -- or, and this is what I'm finishing up now, whether you'd consider it overkill to have code that constructs (or modifies) entries in s-s-f-a by searching in auto-mode-alist and in the buffer-list for all the file extensions emacs knows about that relate to the current major-mode. Changes in s-s-f-a wouldn't be persistent across sessions, but they would allow a user to open a file with any file extension, run latex-mode, and M-? would work in that buffer, and search that buffer from another buffer with a related major-mode, all without needing any user intervention. It would also allow customizations in auto-mode-alist to appear in s-s-f-a automatically, which seems convenient to me. If your answer is "show me the code", I'll do that shortly, but I wondered whether anyone had any preliminary thoughts on the matter. Best, and sorry for the long question, David. On Mon, 22 Apr 2024 at 14:06, Arash Esbati wrote: > > David Fussner writes: > > > Thanks for the clarifications. If you look at the current patch to > > tex-mode.el, there's one function call added to TeX-mode-hook, mainly > > for my own testing purposes, but no matter what the final patch looks > > like it should only similarly require a single function call in an > > AUCTeX hook to activate the new xref code there, along with one in > > tex-common-initialization for the in-tree modes. If and when all > > parties are satisfied by the patch I'll certainly be in touch with you > > to find out how you'd prefer to handle activating it (or not) in > > AUCTeX. The current state of affairs is a convenience for me and for > > anyone else who cares to test the code. > > Hi David, > > I justed wanted to come back on this report and ask if there is any > progress? It would be nice to get Xref working within TeX buffers. > > TIA. Best, Arash From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Stefan Monnier Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 22 Apr 2024 16:16:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: David Fussner Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Arash Esbati , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17138025388701 (code B ref 53749); Mon, 22 Apr 2024 16:16:02 +0000 Received: (at 53749) by debbugs.gnu.org; 22 Apr 2024 16:15:38 +0000 Received: from localhost ([127.0.0.1]:46627 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rywKQ-0002GH-GL for submit@debbugs.gnu.org; Mon, 22 Apr 2024 12:15:38 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:63657) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rywKN-0002F7-Av for 53749@debbugs.gnu.org; Mon, 22 Apr 2024 12:15:37 -0400 Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id C599F4413BE; Mon, 22 Apr 2024 12:15:12 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1713802511; bh=EiMlp8ZZ62dPhHQvc0nMF+dmAiyfVGt/wtYQkItVhtk=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=n+M3uskcYdQPMzVAqMKINfDwpCasaOKM0p/2eZsn4GDurRa6QzOEc/Ve1jR2t2eJK QuQHe/KMseTjDZgJ+en+nU/EOjx0zNjjXIYK9aVgPC0WZzz3VlkZjm3/JgD7NGCuhZ iJBfTJATthKi2623eo18K9C59IGrvZOlrfhy7S8yd8MekHzF61nTlHFH+AKEQ69a+T NsLylqSQAxUARpMUpOahwpATu9td87/tKbrCR01jUdK1NVlmnhkoNW1jP0JaReJF8E R+CfhJQDBa4brvc+1VBZeoVV3vTnTfuGptRKkAStLWLdDAsI8uxbPShJSZtf0XZ5cg +3j3CHyAxMOWw== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 1CC94441394; Mon, 22 Apr 2024 12:15:11 -0400 (EDT) Received: from pastel (unknown [45.72.201.215]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id C585C1202CB; Mon, 22 Apr 2024 12:15:10 -0400 (EDT) From: Stefan Monnier In-Reply-To: (David Fussner's message of "Mon, 22 Apr 2024 15:56:34 +0100") Message-ID: References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> Date: Mon, 22 Apr 2024 12:15:09 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL -0.012 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > auto-mode-alist. When both fail to produce any file extensions it > tells the user to customize semantic-symref-filepattern-alist. Yes, this is not ideal. I think ideally we'd build a regexp from `auto-mode-alist` and `major-mode-remap-alist/defaults`, tho it may require additional info. E.g. we may need to complement that with additional "related modes" (e.g. html modes may want to mention `php-mode` as "related"). Stefan From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 22 Apr 2024 16:38:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Monnier Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Arash Esbati , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171380386017457 (code B ref 53749); Mon, 22 Apr 2024 16:38:03 +0000 Received: (at 53749) by debbugs.gnu.org; 22 Apr 2024 16:37:40 +0000 Received: from localhost ([127.0.0.1]:46734 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rywfi-0004XM-Mv for submit@debbugs.gnu.org; Mon, 22 Apr 2024 12:37:40 -0400 Received: from mail-pg1-x52f.google.com ([2607:f8b0:4864:20::52f]:47339) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rywfg-0004WI-4H for 53749@debbugs.gnu.org; Mon, 22 Apr 2024 12:37:37 -0400 Received: by mail-pg1-x52f.google.com with SMTP id 41be03b00d2f7-5dca1efad59so3359172a12.2 for <53749@debbugs.gnu.org>; Mon, 22 Apr 2024 09:37:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1713803834; x=1714408634; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=nHw9F+nbcZCCdzuHnnzxs26k60Bn/+oO4uktZBzrf58=; b=c81ZwQvzqdL1BKUyRqN3B6hLCb0Wx5JlWPNGk6ChmuMVOOZiU3qD3L7hRq5LxcdHjJ /zogIYPAG6R9neB5qGKmmpcmQ15d1IHIbmjYeIXWIWkz52VpHMnkv42H+LTWT3GhZTZd Hyp9lBcgEpTbJBS1rD/aKgOL8iHvudLJ5uHdMkKxciDS4Vpv4Uv9lo5FAHVSFGdCMKMZ 1d2VC0G8gxyZnXBeYVylCkjyBuxuNc1Y977kBCrXNNHUiYdb0v1mzY85oycsLSsVmQdT si8SrGzUNuqrQkTYZmP4MooaXx5TfcXpuGjynEdV1jcxZzTSe7CQvlJnvIwUzfXSMZOj udgw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713803834; x=1714408634; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=nHw9F+nbcZCCdzuHnnzxs26k60Bn/+oO4uktZBzrf58=; b=BFYvIbxex+bpayKTxjXLjhovNFc0cAq88xCGN+ywfzxPpUeFLZoJtvUauEi0NnwmAg A1bPVufNkXDyjWvhXst+DyIqR5F2b+JqDGLcoG4ULCPD/mm+thmVYVLBfI84oviV0TCy 7gZKWrFdRz/ONnUYRNzXKKj0KDpKGNsHDoIwtq7yZ5Mg/osyXPjz+rrNEQa1f4CnJ6s9 5nU2JTqtK5DtfLZBbIdG40gpmgI6oQvrGKiyWzpVqdZ/wuHzlvAcMCKf4RiAwr3mWXE5 2uP3cbvs/XrFL4wNRqTS6q5tDCw4dRZsjm6TzywMODdtQMzBq9vwBzHIapoyNSp7wV+j V/9g== X-Forwarded-Encrypted: i=1; AJvYcCWNUL8clJKuuZvX1BofSRTi0mYgrO8tCYmguSYGqOmy0v4m2lfLXihsIFv2MQNSdkvcyMTqHb5ELWfFg+EZ3Pjt7F9a2ZQ= X-Gm-Message-State: AOJu0YybV9R/VlNoPQTe2+2NyUj/kf5YElBGClm/trax8zmCexfxD6Nu wdNZqM/6Uabr0c2/5Is+MJFE1pwIzmHaXOY1aGZ3oJRyXHlqNr+aPSqG2KnWcbZ7LWcF+s5dDj8 mV2FhWIOZGMKiZKZRVuVhkCDX9xs= X-Google-Smtp-Source: AGHT+IHFXGTDWjqGW+TL9o+BbAZJzo8ZqjmEW1yl8/4FVZ6G8/NZrXf3lxlSzsG4GLWfnh+JJiLAADf5O4uQwefuvFw= X-Received: by 2002:a17:90b:374f:b0:2ae:78cd:59fe with SMTP id ne15-20020a17090b374f00b002ae78cd59femr859357pjb.31.1713803834090; Mon, 22 Apr 2024 09:37:14 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> In-Reply-To: From: David Fussner Date: Mon, 22 Apr 2024 17:37:18 +0100 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Thank you, Stefan -- I didn't know about major-mode-remap-alist/defaults. Do you think TeX and friends are handled by emacs distinctively enough to warrant keeping some specialist extension-handling code in tex-mode.el, or do you think some changes should be more generally available, in grep.el, say? (I'm wondering whether it might be useful, for example, for semantic-symref-derive-find-filepatterns to add extensions from auto-mode-alist even when some extensions are found in semantic-symref-filepattern-alist.) David. On Mon, 22 Apr 2024 at 17:15, Stefan Monnier wrote: > > > auto-mode-alist. When both fail to produce any file extensions it > > tells the user to customize semantic-symref-filepattern-alist. > > Yes, this is not ideal. > > I think ideally we'd build a regexp from `auto-mode-alist` and > `major-mode-remap-alist/defaults`, tho it may require additional info. > > E.g. we may need to complement that with additional "related modes" > (e.g. html modes may want to mention `php-mode` as "related"). > > > Stefan > From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Stefan Monnier Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 22 Apr 2024 17:17:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: David Fussner Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Arash Esbati , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17138062161754 (code B ref 53749); Mon, 22 Apr 2024 17:17:02 +0000 Received: (at 53749) by debbugs.gnu.org; 22 Apr 2024 17:16:56 +0000 Received: from localhost ([127.0.0.1]:46898 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ryxHj-0000SE-O1 for submit@debbugs.gnu.org; Mon, 22 Apr 2024 13:16:55 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:3957) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ryxHg-0000RK-S3 for 53749@debbugs.gnu.org; Mon, 22 Apr 2024 13:16:54 -0400 Received: from pmg1.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id 229D5100170; Mon, 22 Apr 2024 13:16:31 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1713806190; bh=NLvuOgorwlEQ1UtQTLxY1DTD3RUrejOcZ4oFvQ57bFI=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=GKkFqoimsIzFggSA3lKwHZ7j9UoXDQTBc3BODwIWffpgzq40/rfm/8CTSl5Rgjndr 5RBZ7I0D/xiyOm2dle8xM6gcOkbbLqAsCIjdhka5kyrdKSpmNNZzGPsAaKRfA4Sn5E 0SXYYhp7AKlUBgvHhQPsU8N15YEGnKbmI6cWIdEU1apzGb5G0Udjcbnk9f0w6nwyhD nPQBkebFNpNadGuctQ9ueOE/7b+oLTGz7rw3b5Xt21Fzw3IkxCbaendn++xXaFvZNx hXg0/2xi8YY5r5Tm9efkMmbWMsz6zFMSLxD446zm8ZKcyxu3r9tA462sPk3Qt0TTtD y1kMb7L/ymV0g== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id 3102010002E; Mon, 22 Apr 2024 13:16:30 -0400 (EDT) Received: from pastel (unknown [45.72.201.215]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id DBECA120588; Mon, 22 Apr 2024 13:16:29 -0400 (EDT) From: Stefan Monnier In-Reply-To: (David Fussner's message of "Mon, 22 Apr 2024 17:37:18 +0100") Message-ID: References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> Date: Mon, 22 Apr 2024 13:16:28 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL 0.060 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > (I'm wondering whether it might be useful, for example, for > semantic-symref-derive-find-filepatterns to add extensions from > auto-mode-alist even when some extensions are found in > semantic-symref-filepattern-alist.) Assuming we can get good enough results from `auto-mode-alist and friends, I think we'd want to mark `semantic-symref-filepattern-alist` as obsolete. But before that, we need to check the assumption. In the short term, for AUCTeX the only workable option seems to be to add entries to `semantic-symref-filepattern-alist`. Stefan From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 22 Apr 2024 17:27:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Monnier Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Arash Esbati , Stefan Kangas , Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17138067885540 (code B ref 53749); Mon, 22 Apr 2024 17:27:01 +0000 Received: (at 53749) by debbugs.gnu.org; 22 Apr 2024 17:26:28 +0000 Received: from localhost ([127.0.0.1]:46936 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ryxQx-0001RI-Q6 for submit@debbugs.gnu.org; Mon, 22 Apr 2024 13:26:28 -0400 Received: from mail-pj1-x102f.google.com ([2607:f8b0:4864:20::102f]:53466) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ryxQu-0001Q6-9q for 53749@debbugs.gnu.org; Mon, 22 Apr 2024 13:26:25 -0400 Received: by mail-pj1-x102f.google.com with SMTP id 98e67ed59e1d1-2a519ac18b3so3256774a91.2 for <53749@debbugs.gnu.org>; Mon, 22 Apr 2024 10:26:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1713806762; x=1714411562; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=LUmRgCy0KAf/dzyt0y5rco+y/SBEk2lsSh2UpvmvB0M=; b=B6GYc5ipLDdJwc3rx4kH+T7F1MBozeWP3vUgkBDJ1uRrc1F5BuSZZQFxUGnJEGEEkF sMiuI9ccgq3K37vtgFruDzA1K0Ank/6Y4zGhRbOJcxoOTrCUHdvnQwiyFwqKW0wCqxWC 5h5GXANpOM/gj4kWbqBXfrLum0tjpvuAOYOXbTzCLwlDZWbJxOnuEImGvUqrow15qEZa lkP39ZfaIaT837EJhfp/ry3SXOY70q5+ugQAImgyspOgPn8noB9fGmeo1QjnQPwyZpHl KwOzYaGVt8l+M609frDVWSiHx2rGSRM5pHf+paVfLDME0OvLk1pIbBfCWKaOAfW/MgPE fdUw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713806762; x=1714411562; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=LUmRgCy0KAf/dzyt0y5rco+y/SBEk2lsSh2UpvmvB0M=; b=pIDw3LypLGCFhb4scOKpXrmSIbxNg8clkbCsEIOis6LmAdIIPEl6z28EY/31q6Nqck 8bS2pkKl7DUizlEmBL2OexX4FTG+N2SGLLwnS2J7cY1WBrUWw0VitlQX8Rzn5sqBvUeC ffNuVD2eDBVn1r/vH3oXoAJktClBfr98FFDdktX9iqQNHBTcmQhvhsGK1TnBkg/Oo2cn jjCQ3Nk6g8s7X8i/HmqeGoAYGwRF1GumUF9ndvC2RMq53BEr4bTGJxbA+mf4eekrHeWV 1CnLtXJQZ1BOz77Qy1DOmLXlvMIVXIz9QC5EvrNnHL7XHefJOx3pbnGX0OnaKoTsPOoy vM4Q== X-Forwarded-Encrypted: i=1; AJvYcCVndHTx444Kdn+soZpR8uEDf2Cilj9lNZEAjDPcyMkDI39vx+Xs+cBoNPdExH/KVDFrM4cg/hwW6Meusp91yrl7HVWPdig= X-Gm-Message-State: AOJu0Yx3jLnGhpBXSPX6Mqz1xutvGlfXHSroAuq1KMJS43ejcc1l3K9h Qvc8x4A0bSp6efNy0la6DucQNEcRPP+AJgTUP8cehAf/lZ/v5AQZBTQTBW333CLSTaO5NU/lcV+ bCsvOIWXp/H/deqJRyALfc8CgGmU= X-Google-Smtp-Source: AGHT+IGG8qb06X/KcACql4p45W00BJK1w9xutDhj2RUr24EkbFTj1zW3esBLO0a/nBR3pxvAdr3ERY8y2toFaemSc1Y= X-Received: by 2002:a17:90a:101:b0:2ad:dfe4:fa6a with SMTP id b1-20020a17090a010100b002addfe4fa6amr3035521pjb.12.1713806762302; Mon, 22 Apr 2024 10:26:02 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> In-Reply-To: From: David Fussner Date: Mon, 22 Apr 2024 18:25:50 +0100 Message-ID: Content-Type: multipart/alternative; boundary="00000000000047e5170616b2bbb9" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --00000000000047e5170616b2bbb9 Content-Type: text/plain; charset="UTF-8" Thank you. I hope one or two others might join in, but I'll have some code to look over in a few days, in any case. David. On Mon, 22 Apr 2024, 18:16 Stefan Monnier, wrote: > > (I'm wondering whether it might be useful, for example, for > > semantic-symref-derive-find-filepatterns to add extensions from > > auto-mode-alist even when some extensions are found in > > semantic-symref-filepattern-alist.) > > Assuming we can get good enough results from `auto-mode-alist and > friends, I think we'd want to mark `semantic-symref-filepattern-alist` > as obsolete. > But before that, we need to check the assumption. > > In the short term, for AUCTeX the only workable option seems to be to > add entries to `semantic-symref-filepattern-alist`. > > > Stefan > > --00000000000047e5170616b2bbb9 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Thank you. I hope one or two others might join in, but I&= #39;ll have some code to look over in a few days, in any case.=C2=A0

David.=C2=A0

On Mon, 22 Apr 202= 4, 18:16 Stefan Monnier, <mo= nnier@iro.umontreal.ca> wrote:
> (I'm wondering whether it might be useful, for example, for
> semantic-symref-derive-find-filepatterns to add extensions from
> auto-mode-alist even when some extensions are found in
> semantic-symref-filepattern-alist.)

Assuming we can get good enough results from `auto-mode-alist and
friends, I think we'd want to mark `semantic-symref-filepattern-alist`<= br> as obsolete.
But before that, we need to check the assumption.

In the short term, for AUCTeX the only workable option seems to be to
add entries to `semantic-symref-filepattern-alist`.


=C2=A0 =C2=A0 =C2=A0 =C2=A0 Stefan

--00000000000047e5170616b2bbb9-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Arash Esbati Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 23 Apr 2024 12:06:08 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: David Fussner Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Stefan Monnier , Tassilo Horn , Eli Zaretskii , stefankangas@gmail.com Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17138739247129 (code B ref 53749); Tue, 23 Apr 2024 12:06:08 +0000 Received: (at 53749) by debbugs.gnu.org; 23 Apr 2024 12:05:24 +0000 Received: from localhost ([127.0.0.1]:51760 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rzEth-0001q0-1a for submit@debbugs.gnu.org; Tue, 23 Apr 2024 08:05:22 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:52992) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rzEta-0001nW-5K for 53749@debbugs.gnu.org; Tue, 23 Apr 2024 08:05:13 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rzEtA-0005ko-R6; Tue, 23 Apr 2024 08:04:45 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=ciijcQH9FO0ohvppQ3a1OOjqXkZJ/6pdazTMDSweG4U=; b=Cs1tHeyc52xbZxHC13kJ 0+59CFRRw+bMMqb2bvhCge/XDtlgGkZlZAvsIKrGdQgiVYT8EqVbon1al6+7AZ6dKhUyCZHUFPIpG 1Pd4ZjNUPeTZeF+InfzQX/SvJKWqv0qliBfrz0eD7/bGV+KH9xL5e6kn/uPktlBAsZD2PR4A7dkBJ XJRu9MwZgJMuEssvDVR+dO53niYrE5R7UYoUetCZ6bC6RgxxA536hGE8oYm5I6eD74XU28kt6tX4w 9neq3pRjQN0bU85szBQbaOAiFaI+kFWL/ZrfOS2Ep9eUbxildF1ObNPEj003Qv2QtZY1ntAhQ/sTH 6kBDTXHeLkcBEg==; From: Arash Esbati In-Reply-To: (David Fussner's message of "Mon, 22 Apr 2024 15:56:34 +0100") References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> Date: Tue, 23 Apr 2024 14:04:39 +0200 Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) David Fussner writes: > Thanks for the nudge. I am in fact in the final stages of preparing a > new patch to get xref working in TeX buffers. Thanks for the update. > The semantic/symref backend used by xref-find-references greps in > files matching the major-mode of the buffer where the user calls the > command. It looks in semantic-symref-filepattern-alist for > file-extensions matching the major-mode, and if that fails it looks in > auto-mode-alist. When both fail to produce any file extensions it > tells the user to customize semantic-symref-filepattern-alist. Also, > if it finds things in s-s-f-a, it doesn't go on to auto-mode-alist, so > s-s-f-a has to be complete in order to be useful. In effect, we need > s-s-f-a to hold all the extensions for all the modes that can appear > as values of major-mode, and I notice that AUCTeX has started to > populate that alist, though incompletely. I'm not familiar with the way xref works, but reading the above, xref doesn't care about modes set per file variables, is this correct? > I'm also aware that many packages add their own extensions to files > which are basically TeX or LaTeX files, and I wonder whether we can > really keep up with the whole of CTAN in terms of providing complete > lists of extensions for s-s-f-a. I think this is almost impossible. Besides the effort, take for example the .cnf extension which is used by other programs as well, so associating it with LaTeX-mode wouldn't make sense, IMO. Finally, I think many packages are written in .dtx format and the ones with many files with different extensions (.def, .enc, .fd, ...) usually extract them from the .dtx via an .ins file, so the edited source is inside the .dtx, and we don't need to care about these extensions. > As an example of where we are, if you open a plain-tex-mode (or > plain-TeX-mode) file and M-? with point on some standard word you'll > currently get the message to customize s-s-f-a, because > auto-mode-alist has only tex-mode and s-s-f-a doesn't cover them, > either. This is possibly the next mess since .tex can be plain-TeX, ConTeXt, LaTeX ... So in general, I second what Stefan M. wrote in his other message, but respecting/using file local variables could help here (if it doesn't work ATM, see above), e.g.: --8<---------------cut here---------------start------------->8--- \beginsection 1. Introduction. This is the start of the introduction. \bye %%% Local Variables: %%% mode: plain-TeX %%% TeX-master: t %%% End: --8<---------------cut here---------------end--------------->8--- HTH. Best, Arash From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 23 Apr 2024 13:23:11 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Arash Esbati Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Stefan Monnier , Tassilo Horn , Eli Zaretskii , stefankangas@gmail.com Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17138785541183 (code B ref 53749); Tue, 23 Apr 2024 13:23:11 +0000 Received: (at 53749) by debbugs.gnu.org; 23 Apr 2024 13:22:34 +0000 Received: from localhost ([127.0.0.1]:52150 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rzG6M-0000Gs-Hg for submit@debbugs.gnu.org; Tue, 23 Apr 2024 09:22:33 -0400 Received: from mail-pl1-x629.google.com ([2607:f8b0:4864:20::629]:57533) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rzG66-0000A6-N8 for 53749@debbugs.gnu.org; Tue, 23 Apr 2024 09:22:21 -0400 Received: by mail-pl1-x629.google.com with SMTP id d9443c01a7336-1e3f17c6491so44761495ad.2 for <53749@debbugs.gnu.org>; Tue, 23 Apr 2024 06:21:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1713878508; x=1714483308; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=rCjX6uk1DuX1uS2qa/XC12uCoY3pARo2nIHg3Nn1W30=; b=NdWpivMPhFM47/ZETyEwB2Kn0JTbsFnNd/VfmOSniBbtl83tAVZX6nHarAulhIhO+f /aCO4Mc9Ch0MfhpkuEs5neK4SgOwivXXa5WIlU4F0OY7TDW1KGPkdx5j0hYif3a6rLvM nn6ErPZDR90vUFoOhtDp7N6aML1mf5Wn7mzAIH2G3vp1ZecwJX4TDp6XIdpaCuUIeEKB ML/f4CDQPEWA90Mc4bOps8p10+vpD7bUg9JgK3thAMGIyi8ttwre2KM6OP7uehouXc8L FYv0NvmAION9MHaCRH5Jk677x1zR+zGpaM59GHs7MR65Gk0UKGqPpRMPjXimhn10suY4 6Mkw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713878508; x=1714483308; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=rCjX6uk1DuX1uS2qa/XC12uCoY3pARo2nIHg3Nn1W30=; b=lEheCCdrc5tvI2IKdgLKIPEHSRpLrH8tghWdg60JykCrWTdVu3i15DcuHZMnQ0EoSF 7bjONHYWm3pZQn2vt9Hcq5Jh7+QlqB3dOHl+GulDqC5r9hkWAjP818eS/WcCm/oh37dD 7irPBW1H+9V8+lO7OC+csuJuXzrQubRKlGJjV23GYf+5527Og69IwJtGGSaeA04B/Xyh wxest9Yg4SvX9ulwyKFrKQY8gDLI6KpLvEea+yL//kZdUNX6XeDEYIoduSRaLsMa7PGV UMnV8TKiG8nIMgrdQIFmFWMX+CwCcqR3uOyMO4cYkcs88YyXL1w07ApplxGTe37U4ecM P+Bg== X-Forwarded-Encrypted: i=1; AJvYcCVmx3t3GYCMBfShldk6vwI9ve+s81Rzk0EjlyWFFS6tx9ce19s1q1bnH5X4HgmyvFeqq1FYpZgpMd6vg0cHkGlDQN20Gn0= X-Gm-Message-State: AOJu0YyZYlS2J+kmtG5ATPf+c714AmL4ZBWbKqDhtmzmCTXhJLgB+N/R 802Sleg3DWxwd0FR/k+lS8CVSwCjzG5K9k88WGryDA1wYcEwAyeAJECSmt75uJm12SwCmnIz2ft tVvnJLlcLtKs7awiLxJiqatgSxd0= X-Google-Smtp-Source: AGHT+IGCEiFEagmAWn69b6NCyF0aARFWihoKGqf7CPc/FNuTjpsjNH04vRG/j/kpNeIIEB52hfRvzz4DxJ1O6vNxjPk= X-Received: by 2002:a17:902:dac7:b0:1e8:2c8d:b74a with SMTP id q7-20020a170902dac700b001e82c8db74amr15066997plx.10.1713878507913; Tue, 23 Apr 2024 06:21:47 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> In-Reply-To: From: David Fussner Date: Tue, 23 Apr 2024 14:21:52 +0100 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Thanks for the reply, Arash. > I'm not familiar with the way xref works, but reading the above, xref > doesn't care about modes set per file variables, is this correct? As far as I know, the default xref-find-references deals strictly in file extensions. > I think this is almost impossible. Besides the effort, take for example > the .cnf extension which is used by other programs as well, so > associating it with LaTeX-mode wouldn't make sense, IMO. Agreed -- this may be an argument against my current approach. I hope, however, that the way xref-find-references searches by directory or by project should limit spurious searching when a more common extension appears on a TeX file. > This is possibly the next mess since .tex can be plain-TeX, ConTeXt, > LaTeX ... I guess currently I'm thinking that this is sort of a feature, as searching for symbols in files/buffers from many closely-related modes may produce useful matches. The code I'm finishing up tends to search more files rather than fewer, but it should be possible to prune this if it's deemed too messy. > So in general, I second what Stefan M. wrote in his other > message, but respecting/using file local variables could help here. Currently, the code takes into account file-local variables only by including in the search list extensions of TeX-related buffers, which may well only have become TeX-related due to such variables. I'll post a patch as soon as I solve an outstanding issue or two, and we'll see where we are. Thank you indeed for your help, David. On Tue, 23 Apr 2024 at 13:04, Arash Esbati wrote: > > David Fussner writes: > > > Thanks for the nudge. I am in fact in the final stages of preparing a > > new patch to get xref working in TeX buffers. > > Thanks for the update. > > > The semantic/symref backend used by xref-find-references greps in > > files matching the major-mode of the buffer where the user calls the > > command. It looks in semantic-symref-filepattern-alist for > > file-extensions matching the major-mode, and if that fails it looks in > > auto-mode-alist. When both fail to produce any file extensions it > > tells the user to customize semantic-symref-filepattern-alist. Also, > > if it finds things in s-s-f-a, it doesn't go on to auto-mode-alist, so > > s-s-f-a has to be complete in order to be useful. In effect, we need > > s-s-f-a to hold all the extensions for all the modes that can appear > > as values of major-mode, and I notice that AUCTeX has started to > > populate that alist, though incompletely. > > I'm not familiar with the way xref works, but reading the above, xref > doesn't care about modes set per file variables, is this correct? > > > I'm also aware that many packages add their own extensions to files > > which are basically TeX or LaTeX files, and I wonder whether we can > > really keep up with the whole of CTAN in terms of providing complete > > lists of extensions for s-s-f-a. > > I think this is almost impossible. Besides the effort, take for example > the .cnf extension which is used by other programs as well, so > associating it with LaTeX-mode wouldn't make sense, IMO. Finally, I > think many packages are written in .dtx format and the ones with many > files with different extensions (.def, .enc, .fd, ...) usually extract > them from the .dtx via an .ins file, so the edited source is inside the > .dtx, and we don't need to care about these extensions. > > > As an example of where we are, if you open a plain-tex-mode (or > > plain-TeX-mode) file and M-? with point on some standard word you'll > > currently get the message to customize s-s-f-a, because > > auto-mode-alist has only tex-mode and s-s-f-a doesn't cover them, > > either. > > This is possibly the next mess since .tex can be plain-TeX, ConTeXt, > LaTeX ... So in general, I second what Stefan M. wrote in his other > message, but respecting/using file local variables could help here (if > it doesn't work ATM, see above), e.g.: > > --8<---------------cut here---------------start------------->8--- > \beginsection 1. Introduction. > This is the start of the introduction. > \bye > > %%% Local Variables: > %%% mode: plain-TeX > %%% TeX-master: t > %%% End: > --8<---------------cut here---------------end--------------->8--- > > HTH. Best, Arash From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 24 Apr 2024 00:10:04 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Monnier , David Fussner Cc: 53749@debbugs.gnu.org, Ikumi Keita , Arash Esbati , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171391738215767 (code B ref 53749); Wed, 24 Apr 2024 00:10:04 +0000 Received: (at 53749) by debbugs.gnu.org; 24 Apr 2024 00:09:42 +0000 Received: from localhost ([127.0.0.1]:55124 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rzQCh-00045w-La for submit@debbugs.gnu.org; Tue, 23 Apr 2024 20:09:41 -0400 Received: from forward502b.mail.yandex.net ([178.154.239.146]:43396) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rzQCb-00044H-7L for 53749@debbugs.gnu.org; Tue, 23 Apr 2024 20:09:36 -0400 Received: from mail-nwsmtp-smtp-production-main-91.iva.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-91.iva.yp-c.yandex.net [IPv6:2a02:6b8:c0c:15a2:0:640:2a47:0]) by forward502b.mail.yandex.net (Yandex) with ESMTPS id 746C65F06B; Wed, 24 Apr 2024 03:09:13 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-91.iva.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id 898fuqICZmI0-YJ4nbCb6; Wed, 24 Apr 2024 03:09:12 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1713917352; bh=N+rO0q7OryuqrWO4nUncqcdQPPgbXm7v2k7XVNh1PJ0=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=aZdUKRVt+a7jIYNa06FhtmYRlBlGRrxsps/Gd1X1mxcuGdElvtI6MtvmptWIEm+Cz GOXFxClYC5SDemXVTnW4WzMxHJ3gmw1UVjL4JUzmALLqYdPbPQdOvRvVLmwd0rZGZI B4vJvbpWzzVLa+69YRvgo8jo22oSJG6WAzXyWb0Q= Authentication-Results: mail-nwsmtp-smtp-production-main-91.iva.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailfauth.nyi.internal (Postfix) with ESMTP id 21D781200032; Tue, 23 Apr 2024 20:09:07 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute6.internal (MEProxy); Tue, 23 Apr 2024 20:09:08 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrudelvddgfeduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnhepiefhjeeuveetffffvdefteffffekhfeuudejieehheeiudelgfehgffffedu ffdunecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 23 Apr 2024 20:09:05 -0400 (EDT) Message-ID: <2b286a05-ff3c-4637-af52-dba5a71ba9fb@yandex.ru> Date: Wed, 24 Apr 2024 03:09:03 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> Content-Language: en-US From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On 22/04/2024 20:16, Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: >> (I'm wondering whether it might be useful, for example, for >> semantic-symref-derive-find-filepatterns to add extensions from >> auto-mode-alist even when some extensions are found in >> semantic-symref-filepattern-alist.) > Assuming we can get good enough results from `auto-mode-alist and > friends, I think we'd want to mark `semantic-symref-filepattern-alist` > as obsolete. > But before that, we need to check the assumption. Last I checked, semantic-symref-filepattern-alist had explicit entries only for languages whose auto-mode-alist entries were deemed too complex to parse out the matching extensions from the corresponding regexps. Or had other difficulties like the c-or-c++-mode dispatcher. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 24 Apr 2024 09:03:07 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org, Ikumi Keita , Arash Esbati , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii , Stefan Monnier Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171394937625331 (code B ref 53749); Wed, 24 Apr 2024 09:03:07 +0000 Received: (at 53749) by debbugs.gnu.org; 24 Apr 2024 09:02:56 +0000 Received: from localhost ([127.0.0.1]:57366 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rzYWj-0006aI-Qq for submit@debbugs.gnu.org; Wed, 24 Apr 2024 05:02:55 -0400 Received: from mail-pj1-x102f.google.com ([2607:f8b0:4864:20::102f]:52557) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rzYWd-0006YT-Rz for 53749@debbugs.gnu.org; Wed, 24 Apr 2024 05:02:51 -0400 Received: by mail-pj1-x102f.google.com with SMTP id 98e67ed59e1d1-2a52c544077so4680321a91.1 for <53749@debbugs.gnu.org>; Wed, 24 Apr 2024 02:02:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1713949344; x=1714554144; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=j3mnqq9SKi2buqbFhHk18jbwY8BXWwF6xbNvvpQFzsM=; b=gTPg7K8NdKByaurrKEqXAcQqwVjqpg25Pyit+K9gHZ3q8RTsmA7lBzlMkgsRDvwTbR D54Oxo7JzVEK9H4daXTVT35/tfI1PB41WDsHpSrdNZK6w5SpcbJOPz1bxf7XshP8J+Bj VTb7FENenOeNDe/gJVuUKE82L6+q68ns5XZjKUIp1raIDTAy79zBPPhUNrj6h+88lTgo +/UayokTnkbxm+8CJ9FONaShb0avwdyCN+B4hgCCRwGCP9hxQDTfEsPoiSMSxRTLCRQS 0hHGgpWeZ4SdK9zEs4+GAlVpr2cK6zOhTWBspzZfEPGxo8XmM2DhGQ5YLNOZypEVD0Tk MSoQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713949344; x=1714554144; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=j3mnqq9SKi2buqbFhHk18jbwY8BXWwF6xbNvvpQFzsM=; b=V5xAZUWOIpe0G7A0NYqXSkVLUWhRUSeyPZhsn2brZ6OpHxJTaz49u3B56N0ADM8qan l5e4u+sza1uRDJJU0Ly2zjgQHwXSYWn8eHXf8pynCtrcwCK3Rxp9wPhi9rAqFgqH3ZX9 yRo7WRyBbN0AXJuof24JTYUp63B0oeLkY7++u7yuzrT1GiRsbAJG4TFW3wC1ZVJhMuSG kq2otM09jbqtdsTg8gh0c63C95yJ7Y9lgBA0eLRbCuV+27XydMAQ0Sm1tzpz2BbCCwJ7 2gOZ8Q0w0PX0VHLwA1vaPK7MvkWz7W7xcF/VOTeOCgbaQGZ0VwOhXSUivlfFgqDVdA8w tibQ== X-Forwarded-Encrypted: i=1; AJvYcCXkoko0LQKAkgCXbqMoAbq/S8x1EbEe4rL4Yg0KQPHCtqqFleaWKfhwgNW3MdD/gUj45SArMtJqr9ooAR1qrZcTDm+yj1I= X-Gm-Message-State: AOJu0YzP09FuRWEHHUKAMLnT7VXTRVBWC5y3s3Wfbf5ZJN0zEZhvnqjO VxFQOatvEWnYWZcuqcQoS8tOKTXA1VLSyE10MI67G8ugLbYWOWjjRi8IPjJLQLpQ1b4WOqve0Bs Xt9NdEye1Bu0Q2MGq+LbqY97IFA0= X-Google-Smtp-Source: AGHT+IG9elGk4KZhEpQmzM/dA8mBy7J1ps9QXuo2KyFn4TNdTVVT12HNXkeld9MbXsGuVHmqrMMC7/Bt8gVBJCruMwo= X-Received: by 2002:a17:90a:4213:b0:2ab:b411:8cbc with SMTP id o19-20020a17090a421300b002abb4118cbcmr1611595pjg.31.1713949344455; Wed, 24 Apr 2024 02:02:24 -0700 (PDT) MIME-Version: 1.0 References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> <2b286a05-ff3c-4637-af52-dba5a71ba9fb@yandex.ru> In-Reply-To: <2b286a05-ff3c-4637-af52-dba5a71ba9fb@yandex.ru> From: David Fussner Date: Wed, 24 Apr 2024 10:02:29 +0100 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Thanks, Dmitry. > Last I checked, semantic-symref-filepattern-alist had explicit entries > only for languages whose auto-mode-alist entries were deemed too complex > to parse out the matching extensions from the corresponding regexps. > > Or had other difficulties like the c-or-c++-mode dispatcher. That makes sense, and clarifies a few things for me. I guess TeX has the "plain-tex or latex or context or ams-tex" dispatcher and also in-tree vs. AUCTeX mode names, both of which at least for the moment make semantic-symref-filepattern-alist seem a better fit. Best, David. On Wed, 24 Apr 2024 at 01:09, Dmitry Gutov wrote: > > On 22/04/2024 20:16, Stefan Monnier via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: > >> (I'm wondering whether it might be useful, for example, for > >> semantic-symref-derive-find-filepatterns to add extensions from > >> auto-mode-alist even when some extensions are found in > >> semantic-symref-filepattern-alist.) > > Assuming we can get good enough results from `auto-mode-alist and > > friends, I think we'd want to mark `semantic-symref-filepattern-alist` > > as obsolete. > > But before that, we need to check the assumption. > > Last I checked, semantic-symref-filepattern-alist had explicit entries > only for languages whose auto-mode-alist entries were deemed too complex > to parse out the matching extensions from the corresponding regexps. > > Or had other difficulties like the c-or-c++-mode dispatcher. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 29 Apr 2024 14:17:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Arash Esbati Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Stefan Monnier , Tassilo Horn , Eli Zaretskii , stefankangas@gmail.com Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171440016612676 (code B ref 53749); Mon, 29 Apr 2024 14:17:02 +0000 Received: (at 53749) by debbugs.gnu.org; 29 Apr 2024 14:16:06 +0000 Received: from localhost ([127.0.0.1]:57489 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s1RnY-0003IO-6c for submit@debbugs.gnu.org; Mon, 29 Apr 2024 10:16:05 -0400 Received: from mail-pl1-x633.google.com ([2607:f8b0:4864:20::633]:61708) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s1RnV-0003Hz-BI for 53749@debbugs.gnu.org; Mon, 29 Apr 2024 10:16:03 -0400 Received: by mail-pl1-x633.google.com with SMTP id d9443c01a7336-1eab16c8d83so35393915ad.3 for <53749@debbugs.gnu.org>; Mon, 29 Apr 2024 07:15:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1714400135; x=1715004935; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=UeYyFj4qle6TFEUh7MtsLjXdnTYzVS94fRGVsexxs4w=; b=eY9vQcLc5cBh6eb/dXTrlVyS6rlWCOv/5yC1efDBz5snvGPwEX9wbzz/xT1piasFR9 v+fd3JmaeWeMnUEq8Oz4u2r1PAFLjBRd3lSK2VnXXCjtZgrnKxlFFe5JGa48wj7NwXAd 1g6hKrqqXPP96JX3794nFuJ0FhuOH9NFAS8HhVTqLrbsDuVpvykQzhjyO3bWs/HOzWo5 PuQ7WY/qC8IkxK0sgdTBCkfLIqp0aYehkCCILlOsYvxZUykCPssIQl48jBniczMxzKv1 0rsn3eWHyhWv2Z4E9uMMxWAhUBrwlex8BHbS7YRxYTe5ogVkdaSJVnJls2q72nPKFEM3 bU2A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1714400135; x=1715004935; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=UeYyFj4qle6TFEUh7MtsLjXdnTYzVS94fRGVsexxs4w=; b=mEf8ADsdCrIz71sVBAAULVmyM8hiIKXWSMTS84VW72/yryNmTDTq6lZ2iZP8dAGNXi 6gaak1TQbemb8gwCGTEX75rhDgDzUy7eLIgINooxZziwExB9yUjDk9nsaM+YBJPaziFL +y8DZCmoHVjDexW9HfCbvUldU79PEIm4ybP1OtHtZlCtaiKBsyMZqAqmWDZSZF3+V+UY YbC06ev5fP/LaQELgdiJ83dA/t2R07Wl/8I9vniLsTEKJ2YnKE1PTPvzTjWgQS59Stew c4sjUTezDbaArJThL0lVfpaLbNSjW2ky+je5GN3xyZpXu3ICcxSThbPazQKCfMHmCnjI fmNQ== X-Forwarded-Encrypted: i=1; AJvYcCUCTdn3KuD3XuIk7mInMxdlnJiDmGsD28MyLOy257fEW8aLS1NQKZrJ5k/WxaK25x43r6ovnqtBjG7NMUHoHfdFz5IPDGQ= X-Gm-Message-State: AOJu0YxjCFehy2Z7Ja/sB2eWv/g8DDbJwiRVIfzEHJmdFsBEiJLq6bS4 9ciEhMcvCQEWqk6NDEpTxvUl0Gp5QdBWOEpoQGHpKyP/b3L6Yf+RPqvL3eM1vn1L19yxYdvOVkX Sig4ilK4QALaFYJHesOdHjH+/i80= X-Google-Smtp-Source: AGHT+IE6WKG+8RZWhNPT6A7E/RuAn6NiFLDolXDEW5jZZMQNACEqlAJo+tVompKsbzWZB3fpUwXttMOWySbS1nYTZJE= X-Received: by 2002:a17:903:18e:b0:1e7:b6a3:7bd9 with SMTP id z14-20020a170903018e00b001e7b6a37bd9mr11895577plg.16.1714400134976; Mon, 29 Apr 2024 07:15:34 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> In-Reply-To: From: David Fussner Date: Mon, 29 Apr 2024 15:15:41 +0100 Message-ID: Content-Type: multipart/mixed; boundary="0000000000000c7e7c06173ce321" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --0000000000000c7e7c06173ce321 Content-Type: text/plain; charset="UTF-8" Hi Dmitry and Arash, Here's my third attempt at a working xref backend for TeX. I'll try quickly to summarize what's in it: 1. I've modified etags so that it creates findable tags for as many different sorts of TeX construct as possible, including those written in the new expl3 syntax. I've now removed the escape character from the tag names, as this simplifies code all around. 2. 4 of the 6 xref backend functions just call the etags backend. 3. xref-backend-identifier-at-point is modified to provide new regexps for delineating TeX symbols, and there's also code to cope with expl3 constructs slightly differently in M-? than in the other two main xref commands. 4. xref-backend-references is a wrapper for the standard backend, the wrapper doing two things: first, it tries to accumulate as many file extensions for the current major-mode as emacs knows about, and second it creates a bespoke syntax-propertize-function for strings that aren't entirely composed of symbol or word characters. It applies this function to file-visiting buffers and lets xref apply it in the *xref-temp buffer, though I had to add a one-liner in xref.el to fix what I believe is a minor bug there preventing syntax-propertize from doing its work when the temp buffer holds text from a new file. (I can provide a recipe for this if you want.) 5. Slightly unrelatedly, I've added new syntax-propertize-rules to latex-mode so that expl3 constructs with the underscore aren't fontified as subscripts, which makes such code unreadable. I'm happy to split this off as another patch. All comments gratefully received, and thanks, David. On Mon, 22 Apr 2024 at 14:06, Arash Esbati wrote: > > David Fussner writes: > > > Thanks for the clarifications. If you look at the current patch to > > tex-mode.el, there's one function call added to TeX-mode-hook, mainly > > for my own testing purposes, but no matter what the final patch looks > > like it should only similarly require a single function call in an > > AUCTeX hook to activate the new xref code there, along with one in > > tex-common-initialization for the in-tree modes. If and when all > > parties are satisfied by the patch I'll certainly be in touch with you > > to find out how you'd prefer to handle activating it (or not) in > > AUCTeX. The current state of affairs is a convenience for me and for > > anyone else who cares to test the code. > > Hi David, > > I justed wanted to come back on this report and ask if there is any > progress? It would be nice to get Xref working within TeX buffers. > > TIA. Best, Arash --0000000000000c7e7c06173ce321 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Provide-a-modified-xref-backend-for-TeX-buffers.patch" Content-Disposition: attachment; filename="0001-Provide-a-modified-xref-backend-for-TeX-buffers.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lvl1hef80 RnJvbSA2NGE0ZjdjN2I4OWI0NDc1YTM4NDFiNTQyODhjMjViY2M0ZWJkZTNkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBGdXNzbmVyIDxkZnVzc25lckBnb29nbGVtYWlsLmNv bT4KRGF0ZTogTW9uLCAyOSBBcHIgMjAyNCAxNTowNTowMyArMDEwMApTdWJqZWN0OiBbUEFUQ0hd IFByb3ZpZGUgYSBtb2RpZmllZCB4cmVmIGJhY2tlbmQgZm9yIFRlWCBidWZmZXJzCgoqIGxpYi1z cmMvZXRhZ3MuYyAoVGVYX2NvbW1hbmRzKTogSW1wcm92ZSBwYXJzaW5nIG9mIGNvbW1hbmRzIGlu IFRlWApidWZmZXJzLgooVEVYX2RlZmVudik6IEV4cGFuZCBsaXN0IG9mIGNvbW1hbmRzIHRvIHRh ZyBieSBkZWZhdWx0IGluIFRlWApidWZmZXJzLgooVGVYX2hlbHApOgoqIGRvYy9lbWFjcy9tYWlu dGFpbmluZy50ZXhpIChUYWcgU3ludGF4KTogRG9jdW1lbnQgbmV3IHRhZ2dlZApjb21tYW5kcy4K KElkZW50aWZpZXIgU2VhcmNoKTogQWRkIG5vdGUgYWJvdXQgc2VtYW50aWMtc3ltcmVmLWZpbGVw YXR0ZXJuLWFsaXN0LAphdXRvLW1vZGUtYWxpc3QsIGFuZCB4cmVmLWZpbmQtcmVmZXJlbmNlcy4K CiogbGlzcC9wcm9nbW9kZXMveHJlZi5lbCAoeHJlZi0tY29sbGVjdC1tYXRjaGVzKTogRW5zdXJl CnN5bnRheC1wcm9wZXJ0aXplIGFjdHVhbGx5IHJ1bnMgaW4gdGhlICp4cmVmLXRlbXAgYnVmZmVy IGZvciBlYWNoCm5ldyBmaWxlIHNlYXJjaGVkLgoqIGxpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVs ICh0ZXgtZm9udC1sb2NrLXN1c2NyaXB0KTogRGlzYWJsZQpzdWJzY3JpcHQgZmFjZSBpbiBleHBs MyBjb25zdHJ1Y3RzLgoobGF0ZXgtc3ludGF4LXByb3BlcnRpemUtcnVsZXMpOiBBZGQgdHdvIG5l dyBydWxlcyB0byBnaXZlIHN5bWJvbApzeW50YXggdG8gdGhlIHN0YW5kYXJkIGNvbXBvbmVudHMg b2YgZXhwbDMgY29uc3RydWN0cy4KKHRleC1jb21tb24taW5pdGlhbGl6YXRpb24pOiBTZXQgdXAg eHJlZiBiYWNrZW5kIGZvciBpbi10cmVlIFRlWAptb2Rlcy4KKHRleC0tdGhpbmctYXQtcG9pbnQs IHRleC10aGluZ2F0cHQtLWJlZ2lubmluZy1vZi1zeW1ib2wpCih0ZXgtdGhpbmdhdHB0LS1lbmQt b2Ytc3ltYm9sLCB0ZXgtLWJvdW5kcy1vZi1zeW1ib2wtYXQtcG9pbnQpOgpOZXcgZnVuY3Rpb25z IHRvIHJldHVybiAndGhpbmctYXQtcG9pbnQnIGZvciB4cmVmIGJhY2tlbmQuCih0ZXgtZXNjLWFu ZC1ncm91cC1jaGFycyk6IE5ldyB2YXIgdG8gZG8gdGhlIHNhbWUuCih4cmVmLWJhY2tlbmQtaWRl bnRpZmllci1hdC1wb2ludCk6IE5ldyBUZVggYmFja2VuZCBtZXRob2QgdG8gcHJvdmlkZQpzeW1i b2xzIGZvciBwcm9jZXNzaW5nIGJ5IHhyZWYuCih4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21w bGV0aW9uLXRhYmxlKQooeHJlZi1iYWNrZW5kLWlkZW50aWZpZXItY29tcGxldGlvbi1pZ25vcmUt Y2FzZSkKKHhyZWYtYmFja2VuZC1kZWZpbml0aW9ucywgeHJlZi1iYWNrZW5kLWFwcm9wb3MpOiBQ bGFjZWhvbGRlcnMgdG8KY2FsbCB0aGUgc3RhbmRhcmQgJ2V0YWdzJyB4cmVmIGJhY2tlbmQgbWV0 aG9kcy4KKHhyZWYtYmFja2VuZC1yZWZlcmVuY2VzKTogV3JhcHBlciB0byBjYWxsIHRoZSBkZWZh dWx0IHhyZWYgYmFja2VuZAptZXRob2QsIGZpbmRpbmcgYXMgbWFueSByZWxldmFudCBmaWxlcyBh cyBwb3NzaWJsZSBhbmQgdXNpbmcgYSBiZXNwb2tlCnN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9u LgoodGV4LS1jb2xsZWN0LWZpbGUtZXh0ZW5zaW9ucywgdGV4LXhyZWYtc3ludGF4LWZ1bmN0aW9u KTogSGVscGVyCmZ1bmN0aW9uIGFuZCBtYWNybyBmb3IgcHJldmlvdXMuCih0ZXgtZmluZC1yZWZl cmVuY2VzLXN5bnRheC10YWJsZSwgdGV4LS1idWZmZXJzLWxpc3QpCih0ZXgtLWxhc3QtcmVmLXN5 bnRheC1mbGFnLCB0ZXgtLW9sZC1zeW50YXgtZnVuY3Rpb24pOiBOZXcgdmFycyBmb3IKc2FtZS4K LS0tCiBkb2MvZW1hY3MvbWFpbnRhaW5pbmcudGV4aSB8ICAzNCArKystCiBsaWItc3JjL2V0YWdz LmMgICAgICAgICAgICB8IDE4MyArKysrKysrKysrKysrKysrKystLQogbGlzcC9wcm9nbW9kZXMv eHJlZi5lbCAgICAgfCAgIDEgKwogbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwgfCAzMzYgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQogNCBmaWxlcyBjaGFuZ2VkLCA1Mzcg aW5zZXJ0aW9ucygrKSwgMTcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZG9jL2VtYWNzL21h aW50YWluaW5nLnRleGkgYi9kb2MvZW1hY3MvbWFpbnRhaW5pbmcudGV4aQppbmRleCA1NzkwOThj ODFiMS4uMmZiYjk2NGE3YTAgMTAwNjQ0Ci0tLSBhL2RvYy9lbWFjcy9tYWludGFpbmluZy50ZXhp CisrKyBiL2RvYy9lbWFjcy9tYWludGFpbmluZy50ZXhpCkBAIC0yNTI5LDYgKzI1MjksMTUgQEAg SWRlbnRpZmllciBTZWFyY2gKIHJlZmVyZW5jZWQuICBUaGUgWFJFRiBtb2RlIGNvbW1hbmRzIGFy ZSBhdmFpbGFibGUgaW4gdGhpcyBidWZmZXIsIHNlZQogQHJlZntYcmVmIENvbW1hbmRzfS4KIAor V2hlbiBpbnZva2VkIGluIGEgYnVmZmVyIHdob3NlIG1ham9yIG1vZGUgdXNlcyB0aGUgQGNvZGV7 ZXRhZ3N9IGJhY2tlbmQsCitAa2Jke00tP30gc2VhcmNoZXMgZmlsZXMgYW5kIGJ1ZmZlcnMgd2hv c2UgbWFqb3IgbW9kZSBtYXRjaGVzIHRoYXQgb2YKK3RoZSBvcmlnaW5hbCBidWZmZXIuICBJdCBn dWVzc2VzIHRoYXQgbW9kZSBmcm9tIGZpbGUgZXh0ZW5zaW9ucywgc28gaWYKK0BrYmR7TS0/fSBz ZWVtcyB0byBiZSBza2lwcGluZyByZWxldmFudCBidWZmZXJzIG9yIGZpbGVzLCB0cnkKK2N1c3Rv bWl6aW5nIGVpdGhlciB0aGUgdmFyaWFibGUgQGNvZGV7c2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0 ZXJuLWFsaXN0fQorKGlmIHlvdXIgYnVmZmVyJ3MgbWFqb3IgbW9kZSBhbHJlYWR5IGhhcyBhbiBl bnRyeSBpbiBpdCksIG9yCitAY29kZXthdXRvLW1vZGUtYWxpc3R9IChpZiBub3QpLCB0aGVyZWJ5 IGluZm9ybWluZyBAY29kZXt4cmVmfSBvZiB0aGUKK21pc3NpbmcgZXh0ZW5zaW9ucyAoQHB4cmVm e0Nob29zaW5nIE1vZGVzfSkuCisKIEB2aW5kZXggeHJlZi1hdXRvLWp1bXAtdG8tZmlyc3QteHJl ZgogICBJZiB0aGUgdmFsdWUgb2YgdGhlIHZhcmlhYmxlIEBjb2Rle3hyZWYtYXV0by1qdW1wLXRv LWZpcnN0LXhyZWZ9IGlzCiBAY29kZXt0fSwgQGNvZGV7eHJlZi1maW5kLXJlZmVyZW5jZXN9IGF1 dG9tYXRpY2FsbHkganVtcHMgdG8gdGhlIGZpcnN0CkBAIC0yNzQ5LDggKzI3NTgsMjkgQEAgVGFn IFN5bnRheAogQGNvZGV7XHNlY3Rpb259LCBAY29kZXtcc3Vic2VjdGlvbn0sIEBjb2Rle1xzdWJz dWJzZWN0aW9ufSwKIEBjb2Rle1xlcW5vfSwgQGNvZGV7XGxhYmVsfSwgQGNvZGV7XHJlZn0sIEBj b2Rle1xjaXRlfSwKIEBjb2Rle1xiaWJpdGVtfSwgQGNvZGV7XHBhcnR9LCBAY29kZXtcYXBwZW5k aXh9LCBAY29kZXtcZW50cnl9LAotQGNvZGV7XGluZGV4fSwgQGNvZGV7XGRlZn0sIEBjb2Rle1xu ZXdjb21tYW5kfSwgQGNvZGV7XHJlbmV3Y29tbWFuZH0sCi1AY29kZXtcbmV3ZW52aXJvbm1lbnR9 IGFuZCBAY29kZXtccmVuZXdlbnZpcm9ubWVudH0gYXJlIHRhZ3MuCitAY29kZXtcaW5kZXh9LCBA Y29kZXtcZGVmfSwgQGNvZGV7XGVkZWZ9LCBAY29kZXtcZ2RlZn0sIEBjb2Rle1x4ZGVmfSwKK0Bj b2Rle1xuZXdjb21tYW5kfSwgQGNvZGV7XHJlbmV3Y29tbWFuZH0sIEBjb2Rle1xuZXdlbnZpcm9u bWVudH0sCitAY29kZXtccmVuZXdlbnZpcm9ubWVudH0sIEBjb2Rle1xEZWNsYXJlUm9idXN0Q29t bWFuZH0sCitAY29kZXtcbmV3cm9idXN0Y21kfSwgQGNvZGV7XHJlbmV3cm9idXN0Y21kfSwgQGNv ZGV7XHByb3ZpZGVjb21tYW5kfSwKK0Bjb2Rle1xwcm92aWRlcm9idXN0Y21kfSwgQGNvZGV7XE5l d0RvY3VtZW50Q29tbWFuZH0sCitAY29kZXtcUmVuZXdEb2N1bWVudENvbW1hbmR9LCBAY29kZXtc UHJvdmlkZURvY3VtZW50Q29tbWFuZH0sCitAY29kZXtcRGVjbGFyZURvY3VtZW50Q29tbWFuZH0s IEBjb2Rle1xOZXdFeHBhbmRhYmxlRG9jdW1lbnRDb21tYW5kfSwKK0Bjb2Rle1xSZW5ld0V4cGFu ZGFibGVEb2N1bWVudENvbW1hbmR9LAorQGNvZGV7XFByb3ZpZGVFeHBhbmRhYmxlRG9jdW1lbnRD b21tYW5kfSwKK0Bjb2Rle1xEZWNsYXJlRXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZH0sCitAY29k ZXtcTmV3RG9jdW1lbnRFbnZpcm9ubWVudH0sIEBjb2Rle1xSZW5ld0RvY3VtZW50RW52aXJvbm1l bnR9LAorQGNvZGV7XFByb3ZpZGVEb2N1bWVudEVudmlyb25tZW50fSwKK0Bjb2Rle1xEZWNsYXJl RG9jdW1lbnRFbnZpcm9ubWVudH0sIEBjb2Rle1xjc2RlZn0sIEBjb2Rle1xjc2VkZWZ9LAorQGNv ZGV7XGNzZ2RlZn0sIEBjb2Rle1xjc3hkZWZ9LCBAY29kZXtcY3NsZXRjc30sIEBjb2Rle1xjc2xl dH0sCitAY29kZXtcbGV0Y3N9LCBAY29kZXtcbGV0fSwgXEBjb2Rle1xjc19uZXdfcHJvdGVjdGVk X25vcGFyfSwKK0Bjb2Rle1xjc19uZXdfcHJvdGVjdGVkfSwgQGNvZGV7XGNzX25ld19ub3Bhcn0s IEBjb2Rle1xjc19uZXdfZXF9LAorQGNvZGV7XGNzX25ld30sIEBjb2Rle1xjc19zZXRfcHJvdGVj dGVkX25vcGFyfSwKK0Bjb2Rle1xjc19zZXRfcHJvdGVjdGVkfSwgQGNvZGV7XGNzX3NldF9ub3Bh cn0sIEBjb2Rle1xjc19zZXRfZXF9LAorQGNvZGV7XGNzX3NldH0sIEBjb2Rle1xjc19nc2V0X3By b3RlY3RlZF9ub3Bhcn0sCitAY29kZXtcY3NfZ3NldF9wcm90ZWN0ZWR9LCBAY29kZXtcY3NfZ3Nl dF9ub3Bhcn0sIEBjb2Rle1xjc19nc2V0X2VxfSwKK0Bjb2Rle1xjc19nc2V0fSwgQGNvZGV7XGNz X2dlbmVyYXRlX2Zyb21fYXJnX2NvdW50fSwgYW5kCitAY29kZXtcY3NfZ2VuZXJhdGVfdmFyaWFu dH0gYXJlIHRhZ3MuICBTbyB0b28gYXJlIHRoZSBhcmd1bWVudHMgb2YgYW55CitzdGFycmVkIHZh cmlhbnRzIG9mIHRoZXNlIGNvbW1hbmRzLgogCiBPdGhlciBjb21tYW5kcyBjYW4gbWFrZSB0YWdz IGFzIHdlbGwsIGlmIHlvdSBzcGVjaWZ5IHRoZW0gaW4gdGhlCiBlbnZpcm9ubWVudCB2YXJpYWJs ZSBAZW52e1RFWFRBR1N9IGJlZm9yZSBpbnZva2luZyBAY29tbWFuZHtldGFnc30uICBUaGUKZGlm ZiAtLWdpdCBhL2xpYi1zcmMvZXRhZ3MuYyBiL2xpYi1zcmMvZXRhZ3MuYwppbmRleCAwMzJjZmE4 MDEwYi4uOGI3OWU5MmFiZjEgMTAwNjQ0Ci0tLSBhL2xpYi1zcmMvZXRhZ3MuYworKysgYi9saWIt c3JjL2V0YWdzLmMKQEAgLTc5Miw4ICs3OTIsMjQgQEAgI2RlZmluZSBTVERJTiAweDEwMDEJCS8q IHJldHVybmVkIGJ5IGdldG9wdF9sb25nIG9uIC0tcGFyc2Utc3RkaW4gKi8KICJJbiBMYVRlWCB0 ZXh0LCB0aGUgYXJndW1lbnQgb2YgYW55IG9mIHRoZSBjb21tYW5kcyAnXFxjaGFwdGVyJyxcblwK ICdcXHNlY3Rpb24nLCAnXFxzdWJzZWN0aW9uJywgJ1xcc3Vic3Vic2VjdGlvbicsICdcXGVxbm8n LCAnXFxsYWJlbCcsXG5cCiAnXFxyZWYnLCAnXFxjaXRlJywgJ1xcYmliaXRlbScsICdcXHBhcnQn LCAnXFxhcHBlbmRpeCcsICdcXGVudHJ5JyxcblwKLSdcXGluZGV4JywgJ1xcZGVmJywgJ1xcbmV3 Y29tbWFuZCcsICdcXHJlbmV3Y29tbWFuZCcsXG5cCi0nXFxuZXdlbnZpcm9ubWVudCcgb3IgJ1xc cmVuZXdlbnZpcm9ubWVudCcgaXMgYSB0YWcuXG5cCisnXFxpbmRleCcsICdcXGRlZicsICdcXGVk ZWYnLCAnXFxnZGVmJywgJ1xceGRlZicsICdcXG5ld2NvbW1hbmQnLFxuXAorJ1xccmVuZXdjb21t YW5kJywgJ1xcbmV3ZW52aXJvbm1lbnQnLCAnXFxyZW5ld2Vudmlyb25tZW50JyxcblwKKydcXERl Y2xhcmVSb2J1c3RDb21tYW5kJywgJ1xcbmV3cm9idXN0Y21kJywgJ1xccmVuZXdyb2J1c3RjbWQn LFxuXAorJ1xccHJvdmlkZWNvbW1hbmQnLCAnXFxwcm92aWRlcm9idXN0Y21kJywgJ1xcTmV3RG9j dW1lbnRDb21tYW5kJyxcblwKKydcXFJlbmV3RG9jdW1lbnRDb21tYW5kJywgJ1xcUHJvdmlkZURv Y3VtZW50Q29tbWFuZCcsXG5cCisnXFxEZWNsYXJlRG9jdW1lbnRDb21tYW5kJywgJ1xcTmV3RXhw YW5kYWJsZURvY3VtZW50Q29tbWFuZCcsXG5cCisnXFxSZW5ld0V4cGFuZGFibGVEb2N1bWVudENv bW1hbmQnLCAnXFxQcm92aWRlRXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZCcsXG5cCisnXFxEZWNs YXJlRXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZCcsICdcXE5ld0RvY3VtZW50RW52aXJvbm1lbnQn LFxuXAorJ1xcUmVuZXdEb2N1bWVudEVudmlyb25tZW50JywgJ1xcUHJvdmlkZURvY3VtZW50RW52 aXJvbm1lbnQnLFxuXAorJ1xcRGVjbGFyZURvY3VtZW50RW52aXJvbm1lbnQnLCdcXGNzZGVmJywg J1xcY3NlZGVmJywgJ1xcY3NnZGVmJyxcblwKKydcXGNzeGRlZicsICdcXGNzbGV0Y3MnLCAnXFxj c2xldCcsICdcXGxldGNzJywgJ1xcbGV0JyxcblwKKydcXGNzX25ld19wcm90ZWN0ZWRfbm9wYXIn LCAnXFxjc19uZXdfcHJvdGVjdGVkJywgJ1xcY3NfbmV3X25vcGFyJyxcblwKKydcXGNzX25ld19l cScsICdcXGNzX25ldycsICdcXGNzX3NldF9wcm90ZWN0ZWRfbm9wYXInLFxuXAorJ1xcY3Nfc2V0 X3Byb3RlY3RlZCcsICdcXGNzX3NldF9ub3BhcicsICdcXGNzX3NldF9lcScsICdcXGNzX3NldCcs XG5cCisnXFxjc19nc2V0X3Byb3RlY3RlZF9ub3BhcicsICdcXGNzX2dzZXRfcHJvdGVjdGVkJywg J1xcY3NfZ3NldF9ub3BhcicsXG5cCisnXFxjc19nc2V0X2VxJywgJ1xcY3NfZ3NldCcsICdcXGNz X2dlbmVyYXRlX2Zyb21fYXJnX2NvdW50Jywgb3JcblwKKydcXGNzX2dlbmVyYXRlX3ZhcmlhbnQn IGlzIGEgdGFnLiAgU28gaXMgdGhlIGFyZ3VtZW50IG9mIGFueSBzdGFycmVkXG5cCit2YXJpYW50 IG9mIHRoZXNlIGNvbW1hbmRzLlxuXAogXG5cCiBPdGhlciBjb21tYW5kcyBjYW4gYmUgc3BlY2lm aWVkIGJ5IHNldHRpbmcgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlXG5cCiAnVEVYVEFHUycgdG8g YSBjb2xvbi1zZXBhcmF0ZWQgbGlzdCBsaWtlLCBmb3IgZXhhbXBsZSxcblwKQEAgLTU3MzYsMTEg KzU3NTIsMjUgQEAgU2NoZW1lX2Z1bmN0aW9ucyAoRklMRSAqaW5mKQogc3RhdGljIGxpbmVidWZm ZXIgKlRFWF90b2t0YWIgPSBOVUxMOyAvKiBUYWJsZSB3aXRoIHRhZyB0b2tlbnMgKi8KIAogLyog RGVmYXVsdCBzZXQgb2YgY29udHJvbCBzZXF1ZW5jZXMgdG8gcHV0IGludG8gVEVYX3Rva3RhYi4K LSAgIFRoZSB2YWx1ZSBvZiBlbnZpcm9ubWVudCB2YXIgVEVYVEFHUyBpcyBwcmVwZW5kZWQgdG8g dGhpcy4gICovCisgICBUaGUgdmFsdWUgb2YgZW52aXJvbm1lbnQgdmFyIFRFWFRBR1MgaXMgcHJl cGVuZGVkIHRvIHRoaXMuCisgICAoMjAyNCkgQWRkIHZhcmlhbnRzIG9mICdcZGVmJywgc29tZSBh ZGRpdGlvbmFsIExhVGVYIChhbmQKKyAgIGZvcm1lciB4cGFyc2UpIGNvbW1hbmRzLCBjb21tb24g dmFyaWFudHMgZnJvbSB0aGUKKyAgICdldG9vbGJveCcgcGFja2FnZSwgYW5kIHRoZSBtYWluIGV4 cGwzIGNvbW1hbmRzLiAqLwogc3RhdGljIGNvbnN0IGNoYXIgKlRFWF9kZWZlbnYgPSAiXAotOmNo YXB0ZXI6c2VjdGlvbjpzdWJzZWN0aW9uOnN1YnN1YnNlY3Rpb246ZXFubzpsYWJlbDpyZWY6Y2l0 ZTpiaWJpdGVtXAotOnBhcnQ6YXBwZW5kaXg6ZW50cnk6aW5kZXg6ZGVmXAotOm5ld2NvbW1hbmQ6 cmVuZXdjb21tYW5kOm5ld2Vudmlyb25tZW50OnJlbmV3ZW52aXJvbm1lbnQiOworOmxhYmVsOnJl ZjpjaGFwdGVyOnNlY3Rpb246c3Vic2VjdGlvbjpzdWJzdWJzZWN0aW9uOmVxbm86Y2l0ZTpiaWJp dGVtXAorOnBhcnQ6YXBwZW5kaXg6ZW50cnk6aW5kZXg6ZGVmOmVkZWY6Z2RlZjp4ZGVmOm5ld2Nv bW1hbmQ6cmVuZXdjb21tYW5kXAorOm5ld2Vudmlyb25tZW50OnJlbmV3ZW52aXJvbm1lbnQ6RGVj bGFyZVJvYnVzdENvbW1hbmQ6cmVuZXdyb2J1c3RjbWRcCis6bmV3cm9idXN0Y21kOnByb3ZpZGVj b21tYW5kOnByb3ZpZGVyb2J1c3RjbWQ6TmV3RG9jdW1lbnRDb21tYW5kXAorOlJlbmV3RG9jdW1l bnRDb21tYW5kOlByb3ZpZGVEb2N1bWVudENvbW1hbmQ6RGVjbGFyZURvY3VtZW50Q29tbWFuZFwK KzpOZXdFeHBhbmRhYmxlRG9jdW1lbnRDb21tYW5kOlJlbmV3RXhwYW5kYWJsZURvY3VtZW50Q29t bWFuZFwKKzpQcm92aWRlRXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZDpEZWNsYXJlRXhwYW5kYWJs ZURvY3VtZW50Q29tbWFuZFwKKzpOZXdEb2N1bWVudEVudmlyb25tZW50OlJlbmV3RG9jdW1lbnRF bnZpcm9ubWVudFwKKzpQcm92aWRlRG9jdW1lbnRFbnZpcm9ubWVudDpEZWNsYXJlRG9jdW1lbnRF bnZpcm9ubWVudDpjc2RlZlwKKzpjc2VkZWY6Y3NnZGVmOmNzeGRlZjpjc2xldGNzOmNzbGV0Omxl dGNzOmxldDpjc19uZXdfcHJvdGVjdGVkX25vcGFyXAorOmNzX25ld19wcm90ZWN0ZWQ6Y3NfbmV3 X25vcGFyOmNzX25ld19lcTpjc19uZXc6Y3Nfc2V0X3Byb3RlY3RlZF9ub3BhclwKKzpjc19zZXRf cHJvdGVjdGVkOmNzX3NldF9ub3Bhcjpjc19zZXRfZXE6Y3Nfc2V0OmNzX2dzZXRfcHJvdGVjdGVk X25vcGFyXAorOmNzX2dzZXRfcHJvdGVjdGVkOmNzX2dzZXRfbm9wYXI6Y3NfZ3NldF9lcTpjc19n c2V0XAorOmNzX2dlbmVyYXRlX2Zyb21fYXJnX2NvdW50OmNzX2dlbmVyYXRlX3ZhcmlhbnQiOwog CiBzdGF0aWMgdm9pZCBURVhfZGVjb2RlX2VudiAoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICop OwogCkBAIC01Nzk5LDE5ICs1ODI5LDEzNyBAQCBUZVhfY29tbWFuZHMgKEZJTEUgKmluZikKIAkg ICAgICB7CiAJCWNoYXIgKnA7CiAJCXB0cmRpZmZfdCBuYW1lbGVuLCBsaW5lbGVuOwotCQlib29s IG9wZ3JwID0gZmFsc2U7CisJCWJvb2wgb3BncnAgPSBmYWxzZSwgb25lX2VzYyA9IGZhbHNlLCBp c19leHBsdGhyZWUgPSBmYWxzZTsKIAogCQljcCA9IHNraXBfc3BhY2VzIChjcCArIGtleS0+bGVu KTsKKworCQkvKiAxLiBUaGUgY2Fub25pY2FsIGV4cGwzIHN5bnRheCBsb29rcyBzb21ldGhpbmcg bGlrZSB0aGlzOgorCQkgICBcY3NfbmV3Ok5wbiBcX19ob29rX3RsX2dwdXQ6Tm4geyBcRVJST1Ig fS4gIEZpcnN0LCBpZiB3ZQorCQkgICB3YW50IHRvIHRhZyBhbnkgc3VjaCBjb21tYW5kcywgd2Ug aW5jbHVkZSBvbmx5IHRoZSBwYXJ0CisJCSAgIGJlZm9yZSB0aGUgY29sb24gKGNzX25ldykgaW4g VEVYX2RlZmVudiBvciBURVhUQUdTLiAgU2Vjb25kLAorCQkgICBldGFncyBza2lwcyB0aGUgYXJn dW1lbnQgc3BlY2lmaWVyIChpbmNsdWRpbmcgdGhlIGNvbG9uKQorCQkgICBhZnRlciB0aGUgdGFn IHRva2VuLCBzbyB0aGF0IGl0IGRvZXNuJ3QgYmVjb21lIHRoZSB0YWcgbmFtZS4KKwkJICAgVGhp cmQsIHdlIHNldCB0aGUgYm9vbGVhbiAnaXNfZXhwbHRocmVlJyB0byB0cnVlIHNvIHRoYXQgd2UK KwkJICAgY2FuIHJlbW92ZSB0aGUgYXJndW1lbnQgc3BlY2lmaWVyIGZyb20gdGhlIGFjdHVhbCB0 YWcgbmFtZQorCQkgICAoX19ob29rX3RsX2dwdXQpLiAgVGhpcyBhbGwgYWxsb3dzIHVzIHRvIGlu Y2x1ZGUgZXhwbDMKKwkJICAgY29uc3RydWN0cyBpbiBURVhfZGVmZW52IG9yIGluIHRoZSBlbnZp cm9ubWVudCB2YXJpYWJsZQorCQkgICBURVhUQUdTIHdpdGhvdXQgcmVxdWlyaW5nIGEgY2hhbmdl IG9mIHNlcGFyYXRvciwgYW5kIGl0IGFsc28KKwkJICAgYWxsb3dzIHVzIHRvIGZpbmQgdGhlIGRl ZmluaXRpb24gb2YgdmFyaWFudCBjb21tYW5kcyAod2l0aAorCQkgICBkaWZmZXJlbnQgYXJndW1l bnQgc3BlY2lmaWVycykgZGVmaW5lZCB1c2luZywgZm9yIGV4YW1wbGUsCisJCSAgIFxjc19nZW5l cmF0ZV92YXJpYW50Ok5uLiAgUGxlYXNlIG5vdGUgdGhhdCB0aGUgZXhwbDMgc3BlYworCQkgICBy ZXF1aXJlcyBldGFncyB0byBwYXkgbW9yZSBhdHRlbnRpb24gdG8gd2hpdGVzcGFjZSBpbiB0aGUK KwkJICAgY29kZS4KKworCQkgICAyLiBXZSBhbHNvIGF1dG9tYXRpY2FsbHkgcmVtb3ZlIHRoZSBh c3RlcmlzayBmcm9tIHN0YXJyZWQKKwkJICAgdmFyaWFudHMgb2YgYWxsIGNvbW1hbmRzLCB3aXRo b3V0IHRoZSBuZWVkIHRvIGluY2x1ZGUgdGhlCisJCSAgIHN0YXJyZWQgY29tbWFuZHMgZXhwbGlj aXRseSBpbiBURVhfZGVmZW52IG9yIFRFWFRBR1MuICovCisJCWlmICgqY3AgPT0gJzonKQorCQkg IHsKKwkJICAgIHdoaWxlICghY19pc3NwYWNlICgqY3ApICYmICpjcCAhPSBURVhfb3BncnApCisJ CSAgICAgIGNwKys7CisJCSAgICBjcCA9IHNraXBfc3BhY2VzIChjcCk7CisJCSAgICBpc19leHBs dGhyZWUgPSB0cnVlOworCQkgIH0KKwkJZWxzZSBpZiAoKmNwID09ICcqJykKKwkJICBjcCsrOwor CisJCS8qIFNraXAgdGhlIG9wdGlvbmFsIGFyZ3VtZW50cyB0byBjb21tYW5kcyBpbiB0aGUgdGFn cyBsaXN0IHNvCisJCSAgIHRoYXQgdGhlc2UgYXJndW1lbnRzIGRvbid0IGVuZCB1cCBhcyB0aGUg bmFtZSBvZiB0aGUgdGFnLgorCQkgICBUaGUgbmFtZSB3aWxsIGluc3RlYWQgY29tZSBmcm9tIHRo ZSBhcmd1bWVudCBpbiBjdXJseSBicmFjZXMKKwkJICAgdGhhdCBmb2xsb3dzIHRoZSBvcHRpb25h bCBvbmVzLiAqLworCQl3aGlsZSAoKmNwICE9ICdcMCcgJiYgKmNwICE9ICclJykKKwkJICB7CisJ CSAgICBpZiAoKmNwID09ICdbJykKKwkJICAgICAgeworCQkJd2hpbGUgKCpjcCAhPSAnXScgJiYg KmNwICE9ICdcMCcgJiYgKmNwICE9ICclJykKKwkJCSAgY3ArKzsKKwkJICAgICAgfQorCQkgICAg ZWxzZSBpZiAoKmNwID09ICcoJykKKwkJICAgICAgeworCQkJd2hpbGUgKCpjcCAhPSAnKScgJiYg KmNwICE9ICdcMCcgJiYgKmNwICE9ICclJykKKwkJCSAgY3ArKzsKKwkJICAgICAgfQorCQkgICAg ZWxzZSBpZiAoKmNwID09ICddJyB8fCAqY3AgPT0gJyknKQorCQkgICAgICBjcCsrOworCQkgICAg ZWxzZQorCQkgICAgICBicmVhazsKKwkJICB9CiAJCWlmICgqY3AgPT0gVEVYX29wZ3JwKQogCQkg IHsKIAkJICAgIG9wZ3JwID0gdHJ1ZTsKIAkJICAgIGNwKys7CisJCSAgICBjcCA9IHNraXBfc3Bh Y2VzIChjcCk7IC8qIEZvciBleHBsMyBjb2RlLiAqLwogCQkgIH0KKworCQkvKiBSZW1vdmluZyB0 aGUgVGVYIGVzY2FwZSBjaGFyYWN0ZXIgZnJvbSB0YWcgbmFtZXMgc2ltcGxpZmllcworCQkgICB0 aGluZ3MgZm9yIGVkaXRvcnMgZmluZGluZyB0YWdnZWQgY29tbWFuZHMgaW4gVGVYIGJ1ZmZlcnMu CisJCSAgIFRoaXMgYXBwbGllcyB0byBFbWFjcyBidXQgYWxzbyB0byB0aGUgdGFnLWZpbmRpbmcg YmVoYXZpb3IKKwkJICAgb2YgYXQgbGVhc3Qgc29tZSBvZiB0aGUgZWRpdG9ycyB0aGF0IHVzZSBj dGFncywgdGhvdWdoIGluCisJCSAgIHRoZSBsYXR0ZXIgY2FzZSB0aGlzIHdpbGwgcmVtYWluIHN1 Ym9wdGltYWwuICBUaGUKKwkJICAgdW5kb2N1bWVudGVkIGN0YWdzIG9wdGlvbiAnLS1uby1kdXBs aWNhdGVzJyBtYXkgaGVscC4gKi8KKwkJaWYgKCpjcCA9PSBURVhfZXNjKQorCQkgIHsKKwkJICAg IGNwKys7CisJCSAgICBvbmVfZXNjID0gdHJ1ZTsKKwkJICB9CisKKwkJLyogVGVzdGluZyAhY19p c3NwYWNlICYmICFjX2lzcHVuY3QgaXMgc2ltcGxlciwgYnV0IGhhbHRzCisJCSAgIHByb2Nlc3Np bmcgYXQgdG9vIG1hbnkgcGxhY2VzLiAgVGhlIGxpc3QgYXMgaXQgc3RhbmRzIHRyaWVzCisJCSAg IGJvdGggdG8gZW5zdXJlIHRoYXQgdGFnIG5hbWVzIHdpbGwgZGVyaXZlIGZyb20gbWFjcm8gbmFt ZXMKKwkJICAgcmF0aGVyIHRoYW4gZnJvbSBvcHRpb25hbCBwYXJhbWV0ZXJzIHRvIHRob3NlIG1h Y3JvcywgYW5kCisJCSAgIGFsc28gdG8gcmV0dXJuIGZpbmRhYmxlIG5hbWVzIHdoaWxlIHN0aWxs IGFsbG93aW5nIGZvcgorCQkgICB1bm9ydGhvZG94IGNvbnN0cnVjdHMuICovCiAJCWZvciAocCA9 IGNwOwotCQkgICAgICghY19pc3NwYWNlICgqcCkgJiYgKnAgIT0gJyMnICYmCi0JCSAgICAgICpw ICE9IFRFWF9vcGdycCAmJiAqcCAhPSBURVhfY2xncnApOworCQkgICAgICghY19pc3NwYWNlICgq cCkgJiYgKnAgIT0gJyMnICYmICpwICE9ICc9JyAmJgorCQkgICAgICAqcCAhPSAnWycgJiYgKnAg IT0gJygnICYmICpwICE9IFRFWF9vcGdycCAmJgorCQkgICAgICAqcCAhPSBURVhfY2xncnAgJiYg KnAgIT0gJyInICYmICpwICE9ICdcJycgJiYKKwkJICAgICAgKnAgIT0gJyUnICYmICpwICE9ICcs JyAmJiAqcCAhPSAnfCcgJiYgKnAgIT0gJyQnKTsKIAkJICAgICBwKyspCi0JCSAgY29udGludWU7 CisJCSAgLyogSW4gZXhwbDMgY29kZSB3ZSByZW1vdmUgdGhlIGFyZ3VtZW50IHNwZWNpZmljYXRp b24gZnJvbQorCQkgICAgIHRoZSB0YWcgbmFtZS4gIE1vcmUgZ2VuZXJhbGx5IHdlIGFsbG93IG9u bHkgb25lIChkZWxldGVkKQorCQkgICAgIGVzY2FwZSBjaGFyIGluIGEgdGFnIG5hbWUsIHdoaWNo IChwcmltYXJpbHkpIGVuYWJsZXMKKwkJICAgICB0YWdnaW5nIGEgVGVYIGNvbW1hbmQncyBkaWZm ZXJlbnQsIHBvc3NpYmx5IHRlbXBvcmFyeSwKKwkJICAgICAnXGxldCcgYmluZGluZ3MuICovCisJ CSAgaWYgKGlzX2V4cGx0aHJlZSAmJiAqcCA9PSAnOicpCisJCSAgICBicmVhazsKKwkJICBlbHNl IGlmICgqcCA9PSBURVhfZXNjKQorCQkgICAgeyAvKiBTZWNvbmQgcGFydCBvZiB0ZXN0IGlzIGZv ciwgZS5nLiwgXGNzbGV0LiAqLworCQkgICAgICBpZiAoIW9uZV9lc2MgJiYgIW9wZ3JwKQorCQkJ eworCQkJICBvbmVfZXNjID0gdHJ1ZTsKKwkJCSAgY29udGludWU7CisJCQl9CisJCSAgICAgIGVs c2UKKwkJCWJyZWFrOworCQkgICAgfQorCQkgIGVsc2UKKwkJICAgIGNvbnRpbnVlOworCQkvKiBG b3IgVGVYIGZpbGVzLCB0YWdzIHdpdGhvdXQgYSBuYW1lIGFyZSBiYXNpY2FsbHkgY3J1ZnQsIGFu ZAorCQkgICBpbiBzb21lIHNpdHVhdGlvbnMgdGhleSBjYW4gcHJvZHVjZSBzcHVyaW91cyBhbmQg Y29uZnVzaW5nCisJCSAgIG1hdGNoZXMuICBUcnkgdG8gY2F0Y2ggYXMgbWFueSBjYXNlcyBhcyBw b3NzaWJsZSB3aGVyZSBhCisJCSAgIGNvbW1hbmQgbmFtZSBpcyBvZiB0aGUgZm9ybSAnXCgnLCBi dXQgYXZvaWQsIGFzIGZhciBhcworCQkgICBwb3NzaWJsZSwgdGhlIHNwdXJpb3VzIG1hdGNoZXMu ICovCisJCWlmIChwID09IGNwKQorCQkgIHsKKwkJICAgIHN3aXRjaCAoKnApCisJCSAgICAgIHsg LyogSW5jbHVkZSA9PyAqLworCQkgICAgICBjYXNlICcoJzogY2FzZSAnWyc6IGNhc2UgJyInOiBj YXNlICdcJyc6CisJCSAgICAgIGNhc2UgJ1xcJzogY2FzZSAnISc6IGNhc2UgJz0nOiBjYXNlICcs JzoKKwkJICAgICAgY2FzZSAnfCc6IGNhc2UgJyQnOgorCQkJcCsrOworCQkJYnJlYWs7CisJCSAg ICAgIGNhc2UgJ3snOiBjYXNlICd9JzogY2FzZSAnPCc6IGNhc2UgJz4nOgorCQkJaWYgKCFvcGdy cCkKKwkJCSAgeworCQkJICAgICAgcCsrOworCQkJICAgICAgaWYgKCpwID09ICdcMCcgfHwgKnAg PT0gJyUnKQorCQkJCWdvdG8gdGV4X25leHRfbGluZTsKKwkJCSAgfQorCQkJYnJlYWs7CisJCSAg ICAgIGRlZmF1bHQ6CisJCQlicmVhazsKKwkJICAgICAgfQorCQkgIH0KIAkJbmFtZWxlbiA9IHAg LSBjcDsKIAkJbGluZWxlbiA9IGxiLmxlbjsKIAkJaWYgKCFvcGdycCB8fCAqcCA9PSBURVhfY2xn cnApCkBAIC01ODIwLDkgKzU5NjgsMTggQEAgVGVYX2NvbW1hbmRzIChGSUxFICppbmYpCiAJCSAg ICAgIHArKzsKIAkJICAgIGxpbmVsZW4gPSBwIC0gbGIuYnVmZmVyICsgMTsKIAkJICB9Ci0JCW1h a2VfdGFnIChjcCwgbmFtZWxlbiwgdHJ1ZSwKLQkJCSAgbGIuYnVmZmVyLCBsaW5lbGVuLCBsaW5l bm8sIGxpbmVjaGFybm8pOwotCQlnb3RvIHRleF9uZXh0X2xpbmU7IC8qIFdlIG9ubHkgdGFnIGEg bGluZSBvbmNlICovCisJCWlmIChuYW1lbGVuKQorCQkgIG1ha2VfdGFnIChjcCwgbmFtZWxlbiwg dHJ1ZSwKKwkJCSAgICBsYi5idWZmZXIsIGxpbmVsZW4sIGxpbmVubywgbGluZWNoYXJubyk7CisJ CS8qIExpbmVzIHdpdGggbW9yZSB0aGFuIG9uZSBcZGVmIG9yIFxsZXQgYXJlIHN1cnByaXNpbmds eQorCQkgICBjb21tb24gaW4gVGVYIGZpbGVzLCBlc3BlY2lhbGx5IGluIHRoZSBzeXN0ZW0gZmls ZXMgdGhhdAorCQkgICBmb3JtIHRoZSBiYXNpcyBvZiB0aGUgdmFyaW91cyBUZVggZm9ybWF0cy4g IFRoaXMgdGFncyB0aGVtCisJCSAgIGFsbC4gKi8KKwkJLyogZ290byB0ZXhfbmV4dF9saW5lOyAv XCogV2Ugb25seSB0YWcgYSBsaW5lIG9uY2UgKlwvICovCisJCXdoaWxlICgqY3AgIT0gJ1wwJyAm JiAqY3AgIT0gJyUnICYmICpjcCAhPSBURVhfZXNjKQorCQkgIGNwKys7CisJCWlmICgqY3AgIT0g VEVYX2VzYykKKwkJICBnb3RvIHRleF9uZXh0X2xpbmU7CiAJICAgICAgfQogCX0KICAgICB0ZXhf bmV4dF9saW5lOgpkaWZmIC0tZ2l0IGEvbGlzcC9wcm9nbW9kZXMveHJlZi5lbCBiL2xpc3AvcHJv Z21vZGVzL3hyZWYuZWwKaW5kZXggNzU1YzNkYjA0ZmQuLjFkMmQ0OTA0YjA2IDEwMDY0NAotLS0g YS9saXNwL3Byb2dtb2Rlcy94cmVmLmVsCisrKyBiL2xpc3AvcHJvZ21vZGVzL3hyZWYuZWwKQEAg LTIxMjksNiArMjEyOSw3IEBAIHhyZWYtLWNvbGxlY3QtbWF0Y2hlcwogICAgICAgICAgIChlcmFz ZS1idWZmZXIpKQogICAgICAgICAoaW5zZXJ0IHRleHQpCiAgICAgICAgIChnb3RvLWNoYXIgKHBv aW50LW1pbikpCisgICAgICAgIChzZXRxIHN5bnRheC1wcm9wZXJ0aXplLS1kb25lIDApCiAgICAg ICAgICh4cmVmLS1jb2xsZWN0LW1hdGNoZXMtMSByZWdleHAgZmlsZSBsaW5lCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAocG9pbnQpCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAocG9pbnQtbWF4KQpkaWZmIC0tZ2l0IGEvbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUu ZWwgYi9saXNwL3RleHRtb2Rlcy90ZXgtbW9kZS5lbAppbmRleCA5N2M5NTAyNjdjNi4uZDk5MGEy ZGJmYTkgMTAwNjQ0Ci0tLSBhL2xpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsCisrKyBiL2xpc3Av dGV4dG1vZGVzL3RleC1tb2RlLmVsCkBAIC02NDcsNyArNjQ3LDggQEAgdGV4LWZvbnQtbG9jay1z dXNjcmlwdAogCQkgIChzZXRxIHBvcyAoMS0gcG9zKSBvZGQgKG5vdCBvZGQpKSkKIAkJb2RkKSkK ICAgICAoaWYgKGVxIChjaGFyLWFmdGVyIHBvcykgP18pCi0JYChmYWNlIHN1YnNjcmlwdCBkaXNw bGF5IChyYWlzZSAsKGNhciB0ZXgtZm9udC1zY3JpcHQtZGlzcGxheSkpKQorICAgICAgICAodW5s ZXNzIChlcXVhbCAoZ2V0LXRleHQtcHJvcGVydHkgcG9zICdzeW50YXgtdGFibGUpICcoMykpCisJ ICBgKGZhY2Ugc3Vic2NyaXB0IGRpc3BsYXkgKHJhaXNlICwoY2FyIHRleC1mb250LXNjcmlwdC1k aXNwbGF5KSkpKQogICAgICAgYChmYWNlIHN1cGVyc2NyaXB0IGRpc3BsYXkgKHJhaXNlICwoY2Fk ciB0ZXgtZm9udC1zY3JpcHQtZGlzcGxheSkpKSkpKQogCiAoZGVmdW4gdGV4LWZvbnQtbG9jay1t YXRjaC1zdXNjcmlwdCAobGltaXQpCkBAIC02OTUsNyArNjk2LDI1IEBAIHRleC12ZXJiYXRpbS1l bnZpcm9ubWVudHMKICAgICAgKCJcXFxcXFwoPzplbmRcXHxiZWdpblxcKSAqXFwoe1teXG57fV0q fVxcKSIKICAgICAgICgxIChpZ25vcmUKICAgICAgICAgICAodGV4LWVudi1tYXJrIChtYXRjaC1i ZWdpbm5pbmcgMCkKLSAgICAgICAgICAgICAgICAgICAgICAgIChtYXRjaC1iZWdpbm5pbmcgMSkg KG1hdGNoLWVuZCAxKSkpKSkpKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIChtYXRjaC1iZWdp bm5pbmcgMSkgKG1hdGNoLWVuZCAxKSkpKSkKKyAgICAgOzsgVGhlIG5leHQgdHdvIHJ1bGVzIGNo YW5nZSB0aGUgc3ludGF4IG9mIGA6JyBhbmQgYF8nIGluIGV4cGwzCisgICAgIDs7IGNvbnN0cnVj dHMsIHNvIHRoYXQgYHRleC1mb250LWxvY2stc3VzY3JpcHQnIGNhbiBmb250aWZ5IHRoZW0KKyAg ICAgOzsgbW9yZSBhY2N1cmF0ZWx5LgorICAgICAoKGNvbmNhdCAiXFwoXFwoPzpbXFxcXFs6c3Bh Y2U6XXtdX1xcfCIKKyAgICAgICAgICAgICAgIltcXFxce1s6c3BhY2U6XV1bXl1bX1s6c3BhY2U6 XVs6Y250cmw6XVs6ZGlnaXQ6XVxcXFx7fSgpLz1dK1xcKSIKKyAgICAgICAgICAgICAgIlxcKD86 XytcXCg/OlteXVtbOnNwYWNlOl1bOmNudHJsOl1bOmRpZ2l0Ol06XFxcXHt9KCkvI189XStcXHwi CisgICAgICAgICAgICAgICIjK1sxLTldXFwpXFwpK1xcKVxcKFs6X10/XFwpIikKKyAgICAgICgx IChpZ25vcmUKKyAgICAgICAgICAobGV0KiAoKGV4cHIgKGJ1ZmZlci1zdWJzdHJpbmctbm8tcHJv cGVydGllcyAobWF0Y2gtYmVnaW5uaW5nIDEpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1hdGNoLWVuZCAxKSkpCisgICAgICAgICAgICAg ICAgIChsaXN0IChzZXEtcG9zaXRpb25zIGV4cHIgP18pKSkKKyAgICAgICAgICAgIChkb2xpc3Qg KHBvcyBsaXN0KQorICAgICAgICAgICAgICAocHV0LXRleHQtcHJvcGVydHkgKCsgcG9zIChtYXRj aC1iZWdpbm5pbmcgMSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMSsgKCsg cG9zIChtYXRjaC1iZWdpbm5pbmcgMSkpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgJ3N5bnRheC10YWJsZSAoc3RyaW5nLXRvLXN5bnRheCAiXyIpKSkpKSkKKyAgICAgICgyICJf IikpCisgICAgICgiXFxcXFtbOmFscGhhOl1dK1xcKDpcXClbWzphbHBoYTpdWzpzcGFjZTpdXG5d IgorICAgICAgKDEgIl8iKSkpKSkKIAogKGRlZnVuIHRleC1lbnYtbWFyayAoY21kIHN0YXJ0IGVu ZCkKICAgKHdoZW4gKD0gY21kIChsaW5lLWJlZ2lubmluZy1wb3NpdGlvbikpCkBAIC0xMjkxLDYg KzEzMTAsOCBAQCB0ZXgtY29tbW9uLWluaXRpYWxpemF0aW9uCiAJICAgICAgKHN5bnRheC1wcm9w ZXJ0aXplLXJ1bGVzIGxhdGV4LXN5bnRheC1wcm9wZXJ0aXplLXJ1bGVzKSkKICAgOzsgVEFCcyBp biB2ZXJiYXRpbSBlbnZpcm9ubWVudHMgZG9uJ3QgZG8gd2hhdCB5b3UgdGhpbmsuCiAgIChzZXRx LWxvY2FsIGluZGVudC10YWJzLW1vZGUgbmlsKQorICA7OyBTZXQgdXAgeHJlZiBiYWNrZW5kIGlu IFRlWCBidWZmZXJzLgorICAoYWRkLWhvb2sgJ3hyZWYtYmFja2VuZC1mdW5jdGlvbnMgIyd0ZXgt LXhyZWYtYmFja2VuZCBuaWwgdCkKICAgOzsgT3RoZXIgdmFycyB0aGF0IHNob3VsZCBiZSBidWZm ZXItbG9jYWwuCiAgIChtYWtlLWxvY2FsLXZhcmlhYmxlICd0ZXgtY29tbWFuZCkKICAgKG1ha2Ut bG9jYWwtdmFyaWFibGUgJ3RleC1zdGFydC1vZi1oZWFkZXIpCkBAIC0zNzQyLDYgKzM3NjMsMzE3 IEBAIHRleC1jaGt0ZXgKICAgICAgIChwcm9jZXNzLXNlbmQtcmVnaW9uIHRleC1jaGt0ZXgtLXBy b2Nlc3MgKHBvaW50LW1pbikgKHBvaW50LW1heCkpCiAgICAgICAocHJvY2Vzcy1zZW5kLWVvZiB0 ZXgtY2hrdGV4LS1wcm9jZXNzKSkpKQogCisMCis7OzsgWHJlZiBiYWNrZW5kCisKKzs7IEhlcmUg d2UgbGlnaHRseSBhZGFwdCB0aGUgZGVmYXVsdCBldGFncyBiYWNrZW5kIGZvciB4cmVmIHNvIHRo YXQKKzs7IHRoZSBtYWluIHhyZWYgdXNlciBjb21tYW5kcyAoaW5jbHVkaW5nIGB4cmVmLWZpbmQt ZGVmaW5pdGlvbnMnLAorOzsgYHhyZWYtZmluZC1hcHJvcG9zJywgYW5kIGB4cmVmLWZpbmQtcmVm ZXJlbmNlcycgW29uIE0tLiwgQy1NLS4sIGFuZAorOzsgTS0/LCByZXNwZWN0aXZlbHldKSB3b3Jr IGluIFRlWCBidWZmZXJzLiAgVGhlIG9ubHkgbWV0aG9kcyB3ZQorOzsgYWN0dWFsbHkgbW9kaWZ5 IGFyZSBgeHJlZi1iYWNrZW5kLWlkZW50aWZpZXItYXQtcG9pbnQnIGFuZAorOzsgYHhyZWYtYmFj a2VuZC1yZWZlcmVuY2VzJy4gIE1hbnkgb2YgdGhlIGNvbXBsaWNhdGlvbnMgaGVyZSwgYW5kIGlu Cis7OyBgZXRhZ3MnIGl0c2VsZiwgYXJlIGR1ZSB0byB0aGUgbmVjZXNzaXR5IG9mIHBhcnNpbmcg Ym90aCB0aGUgb2xkCis7OyBUZVggc3ludGF4IGFuZCB0aGUgbmV3IGV4cGwzIHN5bnRheCwgd2hp Y2ggd2lsbCBjb250aW51ZSB0byBhcHBlYXIKKzs7IHRvZ2V0aGVyIGluIGRvY3VtZW50cyBmb3Ig dGhlIGZvcmVzZWVhYmxlIGZ1dHVyZS4gIFN5bmNocm9uaXppbmcKKzs7IEVtYWNzIGFuZCBgZXRh Z3MnIHRoaXMgd2F5IGFpbXMgdG8gaW1wcm92ZSB0aGUgdXNlciBleHBlcmllbmNlICJvdXQKKzs7 IG9mIHRoZSBib3guIgorCisoZGVmdmFyIHRleC1lc2MtYW5kLWdyb3VwLWNoYXJzICcoP1xcID97 ID99KQorICAiVGhlIGN1cnJlbnQgVGVYIGVzY2FwZSBhbmQgZ3JvdXBpbmcgY2hhcmFjdGVycy4K KworVGhlIGBldGFncycgcHJvZ3JhbSBvbmx5IHJlY29nbml6ZXMgYFxcJyAoOTIpIGFuZCBgIScg KDMzKSBhcworZXNjYXBlIGNoYXJhY3RlcnMgaW4gVGVYIGRvY3VtZW50cywgYW5kIGlmIGl0IGRl dGVjdHMgdGhlIGxhdHRlcgoraXQgYWxzbyB1c2VzIGA8PicgYXMgdGhlIFRlWCBncm91cGluZyBj b25zdHJ1Y3QgcmF0aGVyIHRoYW4gYHt9Jy4KK1RoZSBUZVggYHhyZWYtYmFja2VuZC1pZGVudGlm aWVyLWF0LXBvaW50JyBtZXRob2QgdXNlcyB0aGVzZQordGhyZWUgY2hhcmFjdGVycyB0byBkZWxp bWl0IHRoZSBgdGhpbmctYXQtcG9pbnQnIGluIFRlWCBidWZmZXJzLAorc28gdGhpcyB2YXJpYWJs ZSBzaG91bGQgY29udGFpbiBhdCBsZWFzdCB0aGVzZSB0aHJlZSwgdGhvdWdoIHlvdQorY2FuIG9w dGlvbmFsbHkgYWRkIG90aGVyIGNoYXJhY3RlcnMgaWYgdGhlIGRlZmF1bHQgc2V0IG9mIFRlWAor c3ltYm9sIGRlbGltaXRlcnMgaXMgaW5hZGVxdWF0ZSBmb3IgeW91ciBkb2N1bWVudHMuICAoVGhl CitmdW5jdGlvbnMgYHRleC10aGluZ2F0cHQtLWJlZ2lubmluZy1vZi1zeW1ib2wnCitgdGV4LXRo aW5nYXRwdC0tZW5kLW9mLXN5bWJvbCcgY29uc3RydWN0IHRoZSByZWdleHAuKSAgU2V0dGluZwor dGhlIGVzY2FwZSBhbmQgZ3JvdXBpbmcgY2hhcnMgdG8gYW55dGhpbmcgb3RoZXIgdGhhbiBgXFx7 fScgb3IKK2AhPD4nIHdpbGwgbm90IGJlIHVzZWZ1bCB3aXRob3V0IGNoYW5nZXMgdG8gYGV0YWdz JywgYXQgbGVhc3QgZm9yCitjb21tYW5kcyB0aGF0IHNlYXJjaCB0YWdzIHRhYmxlcywgc3VjaCBh cworXFxbeHJlZi1maW5kLWRlZmluaXRpb25zXSBhbmQgXFxbeHJlZi1maW5kLWFwcm9wb3NdLiIp CisKKzs7IFBvcHVsYXRlIGBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QnIGZvciB0 aGUgaW4tdHJlZSBtb2RlczsKKzs7IEFVQ1RlWCBpcyBkb2luZyB0aGUgc2FtZSBmb3IgaXRzIG1v ZGVzLgorKGRlZnZhciBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QpCisod2l0aC1l dmFsLWFmdGVyLWxvYWQgJ3NlbWFudGljL3N5bXJlZi9ncmVwCisgIChwdXNoICcobGF0ZXgtbW9k ZSAiKi5bdFRdZVt4WF0iICIqLmx0eCIgIiouc3R5IiAiKi5jbFtzb10iCisgICAgICAgICAgICAg ICAgICAgICAiKi5iYmwiICIqLmRydiIgIiouaHZhIikKKyAgICAgICAgc2VtYW50aWMtc3ltcmVm LWZpbGVwYXR0ZXJuLWFsaXN0KQorICAocHVzaCAnKHBsYWluLXRleC1tb2RlICIqLlt0VF1lW3hY XSIgIiouaW5zIikKKyAgICAgICAgc2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0ZXJuLWFsaXN0KQor ICAocHVzaCAnKGRvY3RleC1tb2RlICIqLmR0eCIpIHNlbWFudGljLXN5bXJlZi1maWxlcGF0dGVy bi1hbGlzdCkpCisKKyhkZWZ1biB0ZXgtLXhyZWYtYmFja2VuZCAoKSAndGV4LWV0YWdzKQorCis7 OyBTZXR1cCBBVUNUZVggbW9kZXMgKGZvciB0ZXN0aW5nIHB1cnBvc2VzIG9ubHkpLgorCisoYWRk LWhvb2sgJ1RlWC1tb2RlLWhvb2sgIyd0ZXgtc2V0LWF1Y3RleC14cmVmLWJhY2tlbmQpCisKKyhk ZWZ1biB0ZXgtc2V0LWF1Y3RleC14cmVmLWJhY2tlbmQgKCkKKyAgKGFkZC1ob29rICd4cmVmLWJh Y2tlbmQtZnVuY3Rpb25zICMndGV4LS14cmVmLWJhY2tlbmQgbmlsIHQpKQorCis7OyBgeHJlZi1m aW5kLXJlZmVyZW5jZXMnIGN1cnJlbnRseSBtYXkgbmVlZCB0aGlzIHdoZW4gY2FsbGVkIGZyb20g YQorOzsgbGF0ZXgtbW9kZSBidWZmZXIgaW4gb3JkZXIgdG8gc2VhcmNoIGZpbGVzIG9yIGJ1ZmZl cnMgd2l0aCBhIC50ZXgKKzs7IHN1ZmZpeCAoaW5jbHVkaW5nIHRoZSBidWZmZXIgZnJvbSB3aGlj aCBpdCBoYXMgYmVlbiBjYWxsZWQpLiAgV2UKKzs7IGFwcGVuZCBpdCB0byBgYXV0by1tb2RlLWFs aXN0JyBzbyBhcyBub3QgdG8gaW50ZXJmZXJlIHdpdGggdGhlIHVzdWFsCis7OyBtb2RlLXNldHRp bmcgYXBwYXJhdHVzLiAgQ2hhbmdlcyBoZXJlIGFuZCBpbiBBVUNUZVggc2hvdWxkIHNvb24KKzs7 IHJlbmRlciBpdCB1bm5lY2Vzc2FyeS4KKyhhZGQtdG8tbGlzdCAnYXV0by1tb2RlLWFsaXN0ICco IlxcLlt0VF1lW3hYXVxcJyIgLiBsYXRleC1tb2RlKSB0KQorCisoY2wtZGVmbWV0aG9kIHhyZWYt YmFja2VuZC1pZGVudGlmaWVyLWF0LXBvaW50ICgoX2JhY2tlbmQgKGVxbCAndGV4LWV0YWdzKSkp CisgIChyZXF1aXJlICdldGFncykKKyAgKHRleC0tdGhpbmctYXQtcG9pbnQpKQorCis7OyBUaGUg ZGV0ZWN0aW9uIG9mIGBfJyBhbmQgYDonIGlzIGEgcHJpbWl0aXZlIG1ldGhvZCBmb3IgZGV0ZXJt aW5pbmcKKzs7IHdoZXRoZXIgcG9pbnQgaXMgb24gYW4gZXhwbDMgY29uc3RydWN0LiAgSXQgbWF5 IGZhaWwgaW4gc29tZQorOzsgaW5zdGFuY2VzLgorKGRlZnVuIHRleC0tdGhpbmctYXQtcG9pbnQg KCkKKyAgIkRlbWFyY2F0ZSBgdGhpbmctYXQtcG9pbnQnIGZvciBUZVggYHhyZWYnIGJhY2tlbmQu IgorICAobGV0ICgoYm91bmRzICh0ZXgtLWJvdW5kcy1vZi1zeW1ib2wtYXQtcG9pbnQpKSkKKyAg ICAod2hlbiBib3VuZHMKKyAgICAgIChsZXQgKCh0ZXhzeW0gKGJ1ZmZlci1zdWJzdHJpbmctbm8t cHJvcGVydGllcyAoY2FyIGJvdW5kcykgKGNkciBib3VuZHMpKSkpCisgICAgICAgIChpZiAoYW5k IChub3QgKHN0cmluZy1tYXRjaC1wICJyZWZlcmVuY2UiIChzeW1ib2wtbmFtZSB0aGlzLWNvbW1h bmQpKSkKKyAgICAgICAgICAgICAgICAgKHNlcS1jb250YWlucy1wIHRleHN5bSA/XykKKyAgICAg ICAgICAgICAgICAgKHNlcS1jb250YWlucy1wIHRleHN5bSA/OikpCisgICAgICAgICAgICAoc2Vx LXRha2UgdGV4c3ltIChzZXEtcG9zaXRpb24gdGV4c3ltID86KSkKKyAgICAgICAgICB0ZXhzeW0p KSkpKQorCisoZGVmdW4gdGV4LXRoaW5nYXRwdC0tYmVnaW5uaW5nLW9mLXN5bWJvbCAoKQorICAo YW5kCisgICAocmUtc2VhcmNoLWJhY2t3YXJkIChjb25jYXQgIltdWyIKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAobWFwY29uY2F0ICMncmVnZXhwLXF1b3RlCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobWFwY2FyICMnY2hhci10by1zdHJpbmcKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4LWVzYy1h bmQtZ3JvdXAtY2hhcnMpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJcIipgJyM9 JigpJSx8JFs6Y250cmw6XVs6Ymxhbms6XV0iKSkKKyAgIChmb3J3YXJkLWNoYXIpKSkKKworKGRl ZnVuIHRleC10aGluZ2F0cHQtLWVuZC1vZi1zeW1ib2wgKCkKKyAgKGFuZAorICAgKHJlLXNlYXJj aC1mb3J3YXJkIChjb25jYXQgIltdWyIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICht YXBjb25jYXQgIydyZWdleHAtcXVvdGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIChtYXBjYXIgIydjaGFyLXRvLXN0cmluZworICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXgtZXNjLWFuZC1ncm91cC1jaGFycykpCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiXCIqYCcjPSYoKSUsfCRbOmNudHJsOl1bOmJs YW5rOl1dIikpCisgICAoYmFja3dhcmQtY2hhcikpKQorCisoZGVmdW4gdGV4LS1ib3VuZHMtb2Yt c3ltYm9sLWF0LXBvaW50ICgpCisgICJTaW1wbGlmeSBgYm91bmRzLW9mLXRoaW5nLWF0LXBvaW50 JyBmb3IgVGVYIGB4cmVmJyBiYWNrZW5kLiIKKyAgKGxldCAoKG9yaWcgKHBvaW50KSkpCisgICAg KGlnbm9yZS1lcnJvcnMKKyAgICAgIChzYXZlLWV4Y3Vyc2lvbgorCSh0ZXgtdGhpbmdhdHB0LS1l bmQtb2Ytc3ltYm9sKQorCSh0ZXgtdGhpbmdhdHB0LS1iZWdpbm5pbmctb2Ytc3ltYm9sKQorCShs ZXQgKChiZWcgKHBvaW50KSkpCisJICAoaWYgKDw9IGJlZyBvcmlnKQorCSAgICAgIChsZXQgKChy ZWFsLWVuZAorCQkgICAgIChwcm9nbgorCQkgICAgICAgKHRleC10aGluZ2F0cHQtLWVuZC1vZi1z eW1ib2wpCisJCSAgICAgICAocG9pbnQpKSkpCisJCShjb25kICgoYW5kICg8PSBvcmlnIHJlYWwt ZW5kKSAoPCBiZWcgcmVhbC1lbmQpKQorCQkgICAgICAgKGNvbnMgYmVnIHJlYWwtZW5kKSkKKyAg ICAgICAgICAgICAgICAgICAgICAoKGFuZCAoPSBvcmlnIHJlYWwtZW5kKSAoPSBiZWcgcmVhbC1l bmQpKQorCQkgICAgICAgKGNvbnMgYmVnICgxKyBiZWcpKSkpKSkpKSkpKTs7IEZvciAxLWNoYXIg VGVYIGNvbW1hbmRzLgorCisoY2wtZGVmbWV0aG9kIHhyZWYtYmFja2VuZC1pZGVudGlmaWVyLWNv bXBsZXRpb24tdGFibGUgKChfYmFja2VuZAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKGVxbCAndGV4LWV0YWdzKSkpCisgICh4cmVmLWJh Y2tlbmQtaWRlbnRpZmllci1jb21wbGV0aW9uLXRhYmxlICdldGFncykpCisKKyhjbC1kZWZtZXRo b2QgeHJlZi1iYWNrZW5kLWlkZW50aWZpZXItY29tcGxldGlvbi1pZ25vcmUtY2FzZSAoKF9iYWNr ZW5kCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAoZXFsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgJ3RleC1ldGFncykpKQorICAoeHJlZi1iYWNrZW5kLWlk ZW50aWZpZXItY29tcGxldGlvbi1pZ25vcmUtY2FzZSAnZXRhZ3MpKQorCisoY2wtZGVmbWV0aG9k IHhyZWYtYmFja2VuZC1kZWZpbml0aW9ucyAoKF9iYWNrZW5kIChlcWwgJ3RleC1ldGFncykpIHN5 bWJvbCkKKyAgKHhyZWYtYmFja2VuZC1kZWZpbml0aW9ucyAnZXRhZ3Mgc3ltYm9sKSkKKworKGNs LWRlZm1ldGhvZCB4cmVmLWJhY2tlbmQtYXByb3BvcyAoKF9iYWNrZW5kIChlcWwgJ3RleC1ldGFn cykpIHBhdHRlcm4pCisgICh4cmVmLWJhY2tlbmQtYXByb3BvcyAnZXRhZ3MgcGF0dGVybikpCisK Kzs7IFRoZSBgeHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMnIG1ldGhvZCByZXF1aXJlcyBtb3JlIGNv ZGUgdGhhbiB0aGUKKzs7IG90aGVycyBmb3IgYXQgbGVhc3QgdHdvIG1haW4gcmVhc29uczogVGVY IGF1dGhvcnMgaGF2ZSB0eXBpY2FsbHkgYmVlbgorOzsgZnJlZSBpbiB0aGVpciBpbnZlbnRpb24g b2YgbmV3IGZpbGUgdHlwZXMgd2l0aCBuZXcgc3VmZml4ZXMsIGFuZCB0aGV5Cis7OyBoYXZlIGFs c28gdGVuZGVkIHNvbWV0aW1lcyB0byBpbmNsdWRlIG5vbi1zeW1ib2wgY2hhcmFjdGVycyBpbgor OzsgY29tbWFuZCBuYW1lcy4gIFdoZW4gY29tYmluZWQgd2l0aCB0aGUgZGVmYXVsdCBTZW1hbnRp YyBTeW1ib2wKKzs7IFJlZmVyZW5jZSBBUEksIHRoZXNlIHR3byBjaGFyYWN0ZXJpc3RpY3Mgb2Yg VGVYIGNvZGUgbWVhbiB0aGF0IGEKKzs7IGNvbW1hbmQgbGlrZSBgeHJlZi1maW5kLXJlZmVyZW5j ZXMnIHdvdWxkIG9mdGVuIGZhaWwgdG8gZmluZCBhbnkgaGl0cworOzsgZm9yIGEgc3ltYm9sIGF0 IHBvaW50LCBpbmNsdWRpbmcgdGhlIG9uZSB1bmRlciBwb2ludCBpbiB0aGUgY3VycmVudAorOzsg YnVmZmVyLCBvciBpdCB3b3VsZCBmaW5kIG9ubHkgc29tZSBpbnN0YW5jZXMgYW5kIHNraXAgb3Ro ZXJzLgorCisoZGVmdW4gdGV4LWZpbmQtcmVmZXJlbmNlcy1zeW50YXgtdGFibGUgKCkKKyAgKGxl dCAoKHN0IChpZiAoYm91bmRwICdUZVgtbW9kZS1zeW50YXgtdGFibGUpCisgICAgICAgICAgICAg ICAgIChtYWtlLXN5bnRheC10YWJsZSBUZVgtbW9kZS1zeW50YXgtdGFibGUpCisgICAgICAgICAg ICAgICAobWFrZS1zeW50YXgtdGFibGUgdGV4LW1vZGUtc3ludGF4LXRhYmxlKSkpKQorICAgIHN0 KSkKKworKGRlZm1hY3JvIHRleC14cmVmLXN5bnRheC1mdW5jdGlvbiAoc3RyIGJlZyBlbmQpCisg IChsZXQqIChncnBiIHRlbXBzdHIKKyAgICAgICAgICAgICAgKHNocnRzdHIgKGlmIGVuZAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgKHByb2duCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIChzZXRxIHRlbXBzdHIgKHNlcS10YWtlIHN0ciAoMS0gKGxlbmd0aCBzdHIpKSkpCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIChpZiBiZWcKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIChzZXRxIHRlbXBzdHIgKHNlcS1kcm9wIHRlbXBzdHIgMSkpCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdGVtcHN0cikpCisgICAgICAgICAgICAgICAgICAgICAgICAg KHNlcS1kcm9wIHN0ciAxKSkpCisgICAgICAgICAgICAgIChncnBhIChpZiAoYW5kIGJlZyBlbmQp CisgICAgICAgICAgICAgICAgICAgICAgICAocHJvZzEKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAobGlzdCAxICJfIikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKHNldHEgZ3JwYiAo bGlzdCAyICJfIikpKQorICAgICAgICAgICAgICAgICAgICAgIChsaXN0IDEgIl8iKSkpCisgICAg ICAgICAgICAgIChyZSAoY29uY2F0IGJlZyAocmVnZXhwLXF1b3RlIHNocnRzdHIpIGVuZCkpCisg ICAgICAgICAgICAgICh0ZW1wLXJ1bGUgKGlmIGdycGIKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKGxpc3QgcmUgZ3JwYSBncnBiKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxp c3QgcmUgZ3JwYSkpKSkKKyAgICBgKHN5bnRheC1wcm9wZXJ0aXplLXJ1bGVzICx0ZW1wLXJ1bGUp KSkKKworKGRlZnVuIHRleC0tY29sbGVjdC1maWxlLWV4dGVuc2lvbnMgKCkKKyAgKGxldCogKCht bGlzdCAod2hlbiAocmFzc3EgbWFqb3ItbW9kZSBhdXRvLW1vZGUtYWxpc3QpCisJCSAgKHNlcS1m aWx0ZXIKKwkJICAgKGxhbWJkYSAoZWx0KQorCQkgICAgIChlcSAoY2RyIGVsdCkgbWFqb3ItbW9k ZSkpCisJCSAgIGF1dG8tbW9kZS1hbGlzdCkpKQorCSAobGNzeW0gKGludGVybi1zb2Z0IChkb3du Y2FzZSAoc3ltYm9sLW5hbWUgbWFqb3ItbW9kZSkpKSkKKwkgKGxjbGlzdCAoYW5kIGxjc3ltCisJ CSAgICAgIChub3QgKGVxIGxjc3ltIG1ham9yLW1vZGUpKQorCQkgICAgICAocmFzc3EgbGNzeW0g YXV0by1tb2RlLWFsaXN0KQorCQkgICAgICAoc2VxLWZpbHRlcgorCQkgICAgICAgKGxhbWJkYSAo ZWx0KQorCQkJIChlcSAoY2RyIGVsdCkgbGNzeW0pKQorCQkgICAgICAgYXV0by1tb2RlLWFsaXN0 KSkpCisJIChzaG9ydHN5bSAod2hlbiAoc3RyaW5ncCBtb2RlLW5hbWUpCisJCSAgICAgKGludGVy bi1zb2Z0IChjb25jYXQgKHN0cmluZy10cmltLXJpZ2h0IG1vZGUtbmFtZSAiLy4qIikKKwkJCQkJ ICAiLW1vZGUiKSkpKQorCSAobGNzaG9ydHN5bSAod2hlbiAoc3RyaW5ncCBtb2RlLW5hbWUpCisJ CSAgICAgICAoaW50ZXJuLXNvZnQgKGRvd25jYXNlCisJCQkJICAgICAoY29uY2F0CisJCQkJICAg ICAgKHN0cmluZy10cmltLXJpZ2h0IG1vZGUtbmFtZSAiLy4qIikKKwkJCQkgICAgICAiLW1vZGUi KSkpKSkKKwkgKHNobGlzdCAoYW5kIHNob3J0c3ltCisJCSAgICAgIChub3QgKGVxIHNob3J0c3lt IG1ham9yLW1vZGUpKQorCQkgICAgICAobm90IChlcSBzaG9ydHN5bSBsY3N5bSkpCisJCSAgICAg IChyYXNzcSBzaG9ydHN5bSBhdXRvLW1vZGUtYWxpc3QpCisJCSAgICAgIChzZXEtZmlsdGVyCisJ CSAgICAgICAobGFtYmRhIChlbHQpCisJCQkgKGVxIChjZHIgZWx0KSBzaG9ydHN5bSkpCisJCSAg ICAgICBhdXRvLW1vZGUtYWxpc3QpKSkKKwkgKGxjc2hsaXN0IChhbmQgbGNzaG9ydHN5bQorCQkJ KG5vdCAoZXEgbGNzaG9ydHN5bSBtYWpvci1tb2RlKSkKKwkJCShub3QgKGVxIGxjc2hvcnRzeW0g bGNzeW0pKQorCQkJKHJhc3NxIGxjc2hvcnRzeW0gYXV0by1tb2RlLWFsaXN0KQorCQkJKHNlcS1m aWx0ZXIKKwkJCSAobGFtYmRhIChlbHQpCisJCQkgICAoZXEgKGNkciBlbHQpIGxjc2hvcnRzeW0p KQorCQkJIGF1dG8tbW9kZS1hbGlzdCkpKQorCSAoZXh0cyAod2hlbiAob3IgbWxpc3QgbGNsaXN0 IHNobGlzdCBsY3NobGlzdCkKKwkJIChzZXEtdW5pb24gKHNlcS1tYXAgIydjYXIgbGNsaXN0KQor CQkJICAgIChzZXEtdW5pb24gKHNlcS1tYXAgIydjYXIgbWxpc3QpCisJCQkJICAgICAgIChzZXEt dW5pb24gKHNlcS1tYXAgIydjYXIgbGNzaGxpc3QpCisJCQkJCQkgIChzZXEtbWFwICMnY2FyIHNo bGlzdCkpKSkpKQorCSAoZWQtZXh0cyAod2hlbiBleHRzCisJCSAgICAoc2VxLW1hcAorCQkgICAg IChsYW1iZGEgKGVsdCkKKwkJICAgICAgIChjb25jYXQgIioiIChzdHJpbmctdHJpbSAgZWx0ICJc XFxcIiAiXFxcXCciKSkpCisJCSAgICAgZXh0cykpKSkKKyAgICBlZC1leHRzKSkKKworKGRlZnZh ciB0ZXgtLWJ1ZmZlcnMtbGlzdCBuaWwpCisoZGVmdmFyLWxvY2FsIHRleC0tbGFzdC1yZWYtc3lu dGF4LWZsYWcgbmlsKQorKGRlZnZhci1sb2NhbCB0ZXgtLW9sZC1zeW50YXgtZnVuY3Rpb24gbmls KQorCisoY2wtZGVmbWV0aG9kIHhyZWYtYmFja2VuZC1yZWZlcmVuY2VzICgoX2JhY2tlbmQgKGVx bCAndGV4LWV0YWdzKSkgaWRlbnRpZmllcikKKyAgIkZpbmQgcmVmZXJlbmNlcyBvZiBJREVOVElG SUVSIGluIFRlWCBidWZmZXJzIGFuZCBmaWxlcy4iCisgIChyZXF1aXJlICdzZW1hbnRpYy9zeW1y ZWYvZ3JlcCkKKyAgKGxldCAoYnVmcyB0ZXhidWZzCisgICAgICAgICAgICAgKG1vZGUgbWFqb3It bW9kZSkpCisgICAgKGRvbGlzdCAoYnVmIChidWZmZXItbGlzdCkpCisgICAgICAoaWYgKGVxIChi dWZmZXItbG9jYWwtdmFsdWUgJ21ham9yLW1vZGUgYnVmKSBtb2RlKQorICAgICAgICAgIChwdXNo IGJ1ZiBidWZzKQorICAgICAgICAod2hlbiAoc3RyaW5nLW1hdGNoLXAgIi4qXFwuW3RUXWVbeFhd IiAoYnVmZmVyLW5hbWUgYnVmKSkKKyAgICAgICAgICAocHVzaCBidWYgdGV4YnVmcykpKSkKKyAg ICAodW5sZXNzIChzZXEtc2V0LWVxdWFsLXAgdGV4LS1idWZmZXJzLWxpc3QgYnVmcykKKyAgICAg IChsZXQqICgoYW1hbGlzdCAodGV4LS1jb2xsZWN0LWZpbGUtZXh0ZW5zaW9ucykpCisJICAgICAo ZXh0bGlzdCAoYWxpc3QtZ2V0IG1vZGUgc2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0ZXJuLWFsaXN0 KSkKKwkgICAgIChleHRsaXN0LW5ldyAoc2VxLXVuaXEKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgIChzZXEtdW5pb24gYW1hbGlzdCBleHRsaXN0ICMnc3RyaW5nLW1hdGNoLXApKSkpCisJKHNl dHEgdGV4LS1idWZmZXJzLWxpc3QgYnVmcykKKwkoZG9saXN0IChidWYgYnVmcykKKwkgICh3aGVu LWxldCAoKGZidWYgKGJ1ZmZlci1maWxlLW5hbWUgYnVmKSkKKwkJICAgICAoZXh0IChmaWxlLW5h bWUtZXh0ZW5zaW9uIGZidWYpKQorCQkgICAgIChmaW5leHQgKGNvbmNhdCAiKi4iIGV4dCkpCisJ CSAgICAgKChub3QgKHNlcS1maW5kIChsYW1iZGEgKGVsdCkgKHN0cmluZy1tYXRjaC1wIGVsdCBm aW5leHQpKQorCQkJCSAgICAgZXh0bGlzdC1uZXcpKSkKKwkJICAgICAoKHB1c2ggZmluZXh0IGV4 dGxpc3QtbmV3KSkpKSkKKwkodW5sZXNzIChzZXEtc2V0LWVxdWFsLXAgZXh0bGlzdC1uZXcgZXh0 bGlzdCkKKwkgIChzZXRmIChhbGlzdC1nZXQgbW9kZSBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRl cm4tYWxpc3QpCisgICAgICAgICAgICAgICAgZXh0bGlzdC1uZXcpKSkpCisgICAgKGxldCogKHNl dHN5bnRheAorICAgICAgICAgICAocHVuY3QgKHdpdGgtc3ludGF4LXRhYmxlICh0ZXgtZmluZC1y ZWZlcmVuY2VzLXN5bnRheC10YWJsZSkKKyAgICAgICAgICAgICAgICAgICAgKHNlcS1wb3NpdGlv bnMgaWRlbnRpZmllciAobGlzdCA/dyA/XykKKwkJCSAgICAgICAgICAgKGxhbWJkYSAoZWx0IHN5 Y29kZSkKKwkJCSAgICAgICAgICAgICAobm90IChtZW1xIChjaGFyLXN5bnRheCBlbHQpIHN5Y29k ZSkpKSkpKQorICAgICAgICAgICAoZW5kIChhbmQgcHVuY3QKKyAgICAgICAgICAgICAgICAgICAg IChtZW1xICgxLSAobGVuZ3RoIGlkZW50aWZpZXIpKSBwdW5jdCkKKyAgICAgICAgICAgICAgICAg ICAgICg+IChsZW5ndGggaWRlbnRpZmllcikgMSkKKyAgICAgICAgICAgICAgICAgICAgIChjb25j YXQgIlxcKCIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHJlZ2V4cC1xdW90ZQorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKHN0cmluZyAoZWx0IGlkZW50aWZpZXIKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMS0gKGxlbmd0aCBpZGVudGlm aWVyKSkpKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlxcKSIpKSkKKyAgICAgICAg ICAgKGJlZyAoYW5kIHB1bmN0CisgICAgICAgICAgICAgICAgICAgICAobWVtcSAwIHB1bmN0KQor ICAgICAgICAgICAgICAgICAgICAgKGNvbmNhdCAiXFwoIgorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAocmVnZXhwLXF1b3RlIChzdHJpbmcgKGVsdCBpZGVudGlmaWVyIDApKSkKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIlxcKSIpKSkKKyAgICAgICAgICAgKHRleHQtbW9kZS1o b29rCisgICAgICAgICAgICAoaWYgKG9yIGVuZCBiZWcpCisgICAgICAgICAgICAgICAgKHByb2du CisgICAgICAgICAgICAgICAgICAoc2V0cSBzZXRzeW50YXggKGxhbWJkYSAoKQorCQkgICAgICAg ICAgICAgICAgICAgIChzZXRxLWxvY2FsIHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZXZhbAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAodGV4LXhyZWYtc3lu dGF4LWZ1bmN0aW9uCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAsaWRlbnRpZmllciAsYmVnICxlbmQpKSkKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIChzZXRxLWxvY2FsIFRlWC1zdHlsZS1ob29rLWFwcGxpZWQtcCB0KSkpCisg ICAgICAgICAgICAgICAgICAoY29ucyBzZXRzeW50YXggdGV4dC1tb2RlLWhvb2spKQorICAgICAg ICAgICAgICB0ZXh0LW1vZGUtaG9vaykpKQorICAgICAgKHVubGVzcyAobWVtcSAnZG9jdGV4LW1v ZGUgKGRlcml2ZWQtbW9kZS1hbGwtcGFyZW50cyBtb2RlKSkKKyAgICAgICAgKHNldHEgYnVmcyAo YXBwZW5kIHRleGJ1ZnMgYnVmcykpKQorICAgICAgKGRvbGlzdCAoYnVmIGJ1ZnMpCisgICAgICAg ICh3aXRoLWN1cnJlbnQtYnVmZmVyIGJ1ZgorICAgICAgICAgIChpZiAob3IgZW5kIGJlZykKKyAg ICAgICAgICAgICAgKHByb2duCisgICAgICAgICAgICAgICAgKHVubGVzcyAobG9jYWwtdmFyaWFi bGUtcCAndGV4LS1vbGQtc3ludGF4LWZ1bmN0aW9uKQorICAgICAgICAgICAgICAgICAgKHNldHEg dGV4LS1vbGQtc3ludGF4LWZ1bmN0aW9uIHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uKSkKKyAg ICAgICAgICAgICAgICAoc2V0cS1sb2NhbCBzeW50YXgtcHJvcGVydGl6ZS1mdW5jdGlvbgorICAg ICAgICAgICAgICAgICAgICAgICAgICAgIChldmFsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGAodGV4LXhyZWYtc3ludGF4LWZ1bmN0aW9uCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgLGlkZW50aWZpZXIgLGJlZyAsZW5kKSkpCisgICAgICAgICAgICAgICAgKHNldHEgc3lu dGF4LXByb3BlcnRpemUtLWRvbmUgMCkKKyAgICAgICAgICAgICAgICAoc2V0cSB0ZXgtLWxhc3Qt cmVmLXN5bnRheC1mbGFnIHQpKQorICAgICAgICAgICAgOzsgSWYgd2UndmUgY29tcHV0ZWQgYSBi ZXNwb2tlIGBzeW50YXgtcHJvcGVydGl6ZS1mdW5jdGlvbicKKyAgICAgICAgICAgIDs7IHRoZW4g dGhpcyByZXR1cm5zIHRoZSBidWZmZXIgdG8gdGhlIHN0YXR1cyBxdW8gYW50ZQorICAgICAgICAg ICAgOzsgYmVsbHVtIG9uIHRoZSBuZXh0IGludm9jYXRpb24gb2YgTS0/IHRoYXQgc2VhcmNoZXMg aXQuCisgICAgICAgICAgICAod2hlbiB0ZXgtLWxhc3QtcmVmLXN5bnRheC1mbGFnCisgICAgICAg ICAgICAgIChzZXRxLWxvY2FsIHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uCisgICAgICAgICAg ICAgICAgICAgICAgICAgIChldmFsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBgKHRleC14 cmVmLXN5bnRheC1mdW5jdGlvbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAsaWRlbnRp ZmllciBuaWwgbmlsKSkpCisgICAgICAgICAgICAgIChzZXRxIHN5bnRheC1wcm9wZXJ0aXplLS1k b25lIDApKSkpKQorICAgICAgKHVud2luZC1wcm90ZWN0CisgICAgICAgICAgKHhyZWYtYmFja2Vu ZC1yZWZlcmVuY2VzIG5pbCBpZGVudGlmaWVyKQorICAgICAgICAoZG9saXN0IChidWYgYnVmcykK KyAgICAgICAgICAod2l0aC1jdXJyZW50LWJ1ZmZlciBidWYKKyAgICAgICAgICAgICh3aGVuIGJ1 ZmZlci1maWxlLXRydWVuYW1lCisgICAgICAgICAgICAgIChpZiAob3IgZW5kIGJlZykKKyAgICAg ICAgICAgICAgICAgIChzZXRxLWxvY2FsIHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXgtLW9sZC1zeW50YXgtZnVuY3Rpb24pCisgICAg ICAgICAgICAgICAgKHdoZW4gdGV4LS1sYXN0LXJlZi1zeW50YXgtZmxhZworICAgICAgICAgICAg ICAgICAgKHNldHEtbG9jYWwgc3ludGF4LXByb3BlcnRpemUtZnVuY3Rpb24KKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHRleC0tb2xkLXN5bnRheC1mdW5jdGlvbikKKyAgICAgICAgICAg ICAgICAgIChzZXRxIHRleC0tbGFzdC1yZWYtc3ludGF4LWZsYWcgbmlsKSkpKSkpKSkpKQorCiAo bWFrZS1vYnNvbGV0ZS12YXJpYWJsZSAndGV4LW1vZGUtbG9hZC1ob29rCiAgICAgICAgICAgICAg ICAgICAgICAgICAidXNlIGB3aXRoLWV2YWwtYWZ0ZXItbG9hZCcgaW5zdGVhZC4iICIyOC4xIikK IChydW4taG9va3MgJ3RleC1tb2RlLWxvYWQtaG9vaykKLS0gCjIuMzUuOAoK --0000000000000c7e7c06173ce321-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 02 May 2024 00:44:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: David Fussner , Arash Esbati Cc: 53749@debbugs.gnu.org, Ikumi Keita , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii , Stefan Monnier Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171461062823451 (code B ref 53749); Thu, 02 May 2024 00:44:02 +0000 Received: (at 53749) by debbugs.gnu.org; 2 May 2024 00:43:48 +0000 Received: from localhost ([127.0.0.1]:40298 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s2KY8-00066B-70 for submit@debbugs.gnu.org; Wed, 01 May 2024 20:43:48 -0400 Received: from forward501c.mail.yandex.net ([178.154.239.209]:45440) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s2KY5-000663-Q7 for 53749@debbugs.gnu.org; Wed, 01 May 2024 20:43:47 -0400 Received: from mail-nwsmtp-smtp-production-main-39.myt.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-39.myt.yp-c.yandex.net [IPv6:2a02:6b8:c12:2787:0:640:338c:0]) by forward501c.mail.yandex.net (Yandex) with ESMTPS id EAC9460EBC; Thu, 2 May 2024 03:43:21 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-39.myt.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id GhGTZaVMf8c0-xX3IEU4d; Thu, 02 May 2024 03:43:21 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1714610601; bh=2joRjDGDto1B34fMIja8cRvkGf47dR+BZ8GBojfFMco=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=pu0va5NX2MIBtVc1E3jbWQC/cJqrgs5ZTUR2TmQ9uREm5yo39DVLJWOV2YQvPpWd9 HSykRz+vo82mIe+yC1l4OUynMy4gY+R1k2uMxh1JenUBNyoOgF1m8nXuFee/wX2kbs 08ticTaQOPeIQTg5YG4MadR8/dHofdY1WrDsVCYM= Authentication-Results: mail-nwsmtp-smtp-production-main-39.myt.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailfauth.nyi.internal (Postfix) with ESMTP id B799F1200043; Wed, 1 May 2024 20:43:16 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Wed, 01 May 2024 20:43:16 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvddujedgfeelucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnhepiefhjeeuveetffffvdefteffffekhfeuudejieehheeiudelgfehgffffedu ffdunecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 1 May 2024 20:43:13 -0400 (EDT) Message-ID: Date: Thu, 2 May 2024 03:43:12 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird References: <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> Content-Language: en-US From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On 29/04/2024 17:15, David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: > though I had to add a one-liner in xref.el to fix > what I believe is a minor bug there preventing syntax-propertize from > doing its work when the temp buffer holds text from a new file. (I can > provide a recipe for this if you want.) Yes, could you please expand on it separately? The rest of the patch description just makes sense to me, and I'd be happy to leave (or not) the detailed review to whoever reviews TeX contributions around here, but this is something I'll need to pay special attention to. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Arash Esbati Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 02 May 2024 06:49:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: David Fussner Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Stefan Monnier , Tassilo Horn , Eli Zaretskii , stefankangas@gmail.com Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171463248628220 (code B ref 53749); Thu, 02 May 2024 06:49:01 +0000 Received: (at 53749) by debbugs.gnu.org; 2 May 2024 06:48:06 +0000 Received: from localhost ([127.0.0.1]:41903 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s2QEg-0007L6-C0 for submit@debbugs.gnu.org; Thu, 02 May 2024 02:48:06 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36642) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s2QEd-0007Kj-2Z for 53749@debbugs.gnu.org; Thu, 02 May 2024 02:48:05 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1s2QE9-0006O3-VB; Thu, 02 May 2024 02:47:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=drNYDg5UxKnWe/AwBJwWjbhK6TWbk9ydSHSN0WRI9xw=; b=WHRoW+fTHdQKtS61BJWG J4eYyZ9aKJZW07WGSwfckIp63m0KFwqyCGO8MjjlL8P7xku3E2fE0CXi/xBubm2OLnpBQuLtLdgMe E9xNSirYBJ2d/KF/B3zewU26l4knvfFJOAfv7miRPtkoam+XuCQ6UpqVW9m3F2qylXvIgd/tNjj8e u8YJhqEShbd3ZBuaf4zhauOtL8FsFHed2Sxi9Ch56/5XUQ1gcfuXXctDO/bUg7ceB3pHFgisnuF3B U39UWZp2MSM08LXNILBSwmLFjskEv6nRNFziTqiWohFeiSpkPPt/uskC1SSSD6nL0ICR1K1tCrXqI fBTtAMX64I/l2Q==; From: Arash Esbati In-Reply-To: (David Fussner's message of "Mon, 29 Apr 2024 15:15:41 +0100") References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> Date: Thu, 02 May 2024 08:47:29 +0200 Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) David Fussner writes: > Here's my third attempt at a working xref backend for TeX. I'll try > quickly to summarize what's in it: > > 1. I've modified etags so that it creates findable tags for as many > different sorts of TeX construct as possible, including those written > in the new expl3 syntax. I've now removed the escape character from > the tag names, as this simplifies code all around. Hi David, Thanks. I trust your code works, so I have 2 minor comments. > 5. Slightly unrelatedly, I've added new syntax-propertize-rules to > latex-mode so that expl3 constructs with the underscore aren't > fontified as subscripts, which makes such code unreadable. I'm happy > to split this off as another patch. I think this makes sense. AFAIK, Stefan M. looks after tex-mode.el, so he can the review it. > @@ -5736,11 +5752,25 @@ Scheme_functions (FILE *inf) > static linebuffer *TEX_toktab = NULL; /* Table with tag tokens */ > > /* Default set of control sequences to put into TEX_toktab. > - The value of environment var TEXTAGS is prepended to this. */ > + The value of environment var TEXTAGS is prepended to this. > + (2024) Add variants of '\def', some additional LaTeX (and > + former xparse) commands, common variants from the > + 'etoolbox' package, and the main expl3 commands. */ > static const char *TEX_defenv = "\ > -:chapter:section:subsection:subsubsection:eqno:label:ref:cite:bibitem\ > -:part:appendix:entry:index:def\ > -:newcommand:renewcommand:newenvironment:renewenvironment"; > +:label:ref:chapter:section:subsection:subsubsection:eqno:cite:bibitem\ I suggest to add 'Ref' and 'footref' as well which are part of LaTeX kernel. > +(defvar tex-esc-and-group-chars '(?\\ ?{ ?}) (defvar tex-esc-and-group-chars '(?\\ ?\{ ?\}) > + "The current TeX escape and grouping characters. Best, Arash From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 02 May 2024 13:33:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org, Ikumi Keita , Arash Esbati , Stefan Monnier , Tassilo Horn , Eli Zaretskii , stefankangas@gmail.com Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171465678112640 (code B ref 53749); Thu, 02 May 2024 13:33:02 +0000 Received: (at 53749) by debbugs.gnu.org; 2 May 2024 13:33:01 +0000 Received: from localhost ([127.0.0.1]:43832 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s2WYW-0003Ho-KF for submit@debbugs.gnu.org; Thu, 02 May 2024 09:33:01 -0400 Received: from mail-pg1-x536.google.com ([2607:f8b0:4864:20::536]:44246) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s2WYU-0003Hi-AL for 53749@debbugs.gnu.org; Thu, 02 May 2024 09:32:59 -0400 Received: by mail-pg1-x536.google.com with SMTP id 41be03b00d2f7-60c49bdbcd3so3170266a12.0 for <53749@debbugs.gnu.org>; Thu, 02 May 2024 06:32:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1714656750; x=1715261550; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=qbfkAEgVCtaFAoWF+BM65A4yLl8Bt1U72KGGUav95W4=; b=R5a1++6IEN9AZYk0TsMR5MsVzpZQmbfsn5Ph2/ad+466eDd1X1lin86HwnQhfoG2fZ Z4S+IGn8F1oRcP1ZHUHnGBtBSn+Hh33c4FQU34XMBcqfXZSAI0wvb8q/TlJl2aQmqQ0g Q2y3zPtqbEMLkx+1iGF1Rn0qnn3OBG2GCasj7gEhdZjiCJceRhjUDUvHv2uVNaGa4W+2 anouIa0FMdBR0Fz/vIJvYslXKTWDK6kBXEDs4GMo328goYi+2tuTK4MCBdZa2QGLOGHQ rGQ+qix77thckO4g172e5gYCokLng3oiHsNYgtTkDJykIImIMvpcWQC29YM30B/CqMn1 p9+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1714656750; x=1715261550; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=qbfkAEgVCtaFAoWF+BM65A4yLl8Bt1U72KGGUav95W4=; b=RrO/JCAB2dfAer6CVotz4O//NTOBNsNYyI9r41pdl1PRFTrRWJPHfvfppzXaakNUPx AGrtYJyTc6KEon9T2UCmXS8QLhuDN1/H8uThFfpGQq0wvMMOtS8G392EP+RlLZOg/wjH EmmLJCn5on10EHtMGP6uFnSg8tGXyNPUtBgBmT2pbpKtSxzPb4Efjut37duTCjZsH9c8 XQ9GhTSZOy3sUxRA6lz0b6STnWfVWChA8QLxx+DPyRE232RqTMfttWkg3XP2fTQNXHG8 3dajS/euYuGImzrIy1eT7qILVNJ4v6IoetdYiFq2fM2iB1PNzwdxt6Vuvzl/4fSARySJ 7yLQ== X-Forwarded-Encrypted: i=1; AJvYcCUNyBtf33TllTCwIXk/lAQXjWVUZWcim+RxCgq0Tdr+WdyZqduG0wJJmtSK+zpgOlemykUEwkdHFSwQqwsgCo7sPfASiCw= X-Gm-Message-State: AOJu0Yyzl1BoqN+rMZeOBRZq24oUvoDsJVgguTvFgWo9Qq6qJSjhermz orPBiMVyQ4aYbonI1+8h8kFqOnjKjWGsFkT7n4WhPoDl3IoehnRJOoIYaU8Jp4lW70VqL/EP34Q 47dbgbhBR0HcJ5zMAPwAfkg3h8RU= X-Google-Smtp-Source: AGHT+IEtrE8TwQ7uKl4f/nvs8k1DeaMOXtVy13zWOwj9H68rD7jzBXTRk/8W9/kxRf34w6IeRTzuts2MvuCcU72JFKw= X-Received: by 2002:a17:90a:a012:b0:2b2:7e94:c5fa with SMTP id q18-20020a17090aa01200b002b27e94c5famr5713699pjp.5.1714656750346; Thu, 02 May 2024 06:32:30 -0700 (PDT) MIME-Version: 1.0 References: <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> In-Reply-To: From: David Fussner Date: Thu, 2 May 2024 14:32:37 +0100 Message-ID: Content-Type: multipart/mixed; boundary="00000000000084407a061778a27e" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --00000000000084407a061778a27e Content-Type: text/plain; charset="UTF-8" Hi Dmitry, Thanks for looking over the patch. Here's the recipe for the purported bug in xref.el: 1. Please apply my patch to tex-mode.el (and xref.el). 2. I've attached xref-bug.zip, which contains a directory with 4 identical LaTeX files and one LaTeX file with a single additional character. Please extract it. 3. emacs -Q 4. C-x C-f xref-bug/mwea.ltx, and please don't visit the other 4 files. 5. Put point on \__hook_debug:n in line 6. 6. M-?, RTN, ... RTN, RTN. The xref buffer should offer 5 hits, one from each file in the directory. 7. Comment out the the line I added to xref--collect-matches, byte-compile and load the file. 8. With point in the same place, M-?, RTN, ... RTN, RTN. The xref buffer should offer 3 hits. The first is from the file-visiting buffer (where I also set syntax-propertize--done to 0, because in my testing there could be some issues here, too). The second hit is from the first file opened in *xref-temp. Here, syntax-propertize runs to line-end, and all is well. The next two files are missed, because syntax-propertize--done is set to line-end and they have exactly the same line length as file two, and therefore syntax-propertize thinks that's good enough and doesn't actually change anything. The fifth file has an additional character in line 6, so syntax-propertize decides it needs to work on this line because line-end > syntax-propertize--done. You can put point on, say, \documentclass, and you'll get all 5 hits, because this string doesn't begin or end with a non-word, non-symbol character, and syntax-propertize doesn't need to run. You can make the search string "\documentclass" and you'll get 2 hits, as line 1 has the same length in all 5 files. (It's worth trying "\usepackage" as the search string, too.) That's my diagnosis anyway. Does it make sense? Thanks, David. On Thu, 2 May 2024 at 01:43, Dmitry Gutov wrote: > > On 29/04/2024 17:15, David Fussner via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: > > though I had to add a one-liner in xref.el to fix > > what I believe is a minor bug there preventing syntax-propertize from > > doing its work when the temp buffer holds text from a new file. (I can > > provide a recipe for this if you want.) > > Yes, could you please expand on it separately? > > The rest of the patch description just makes sense to me, and I'd be > happy to leave (or not) the detailed review to whoever reviews TeX > contributions around here, but this is something I'll need to pay > special attention to. --00000000000084407a061778a27e Content-Type: application/zip; name="xref-bug.zip" Content-Disposition: attachment; filename="xref-bug.zip" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lvpa9gqw0 UEsDBBQAAAAIANFpolg38qovlwAAAOUAAAARABwAeHJlZi1idWcvbXdlYS5sdHhVVAkAA6qDM2bR gzNmdXgLAAEE6AMAAARkAAAAVY4xDoMwEAR7XsEXktJ9WlKkjCPLmMMgzPnCHQrIyt9jF5Gg3R3N ru6iW2dAccEyPy9Xkleyi4wuwLfSKwNZN1kPqY8oTODO6UZ24ULeNgqPHcVud6x0G2MwCB/V1Nob M8Q4mQ7a1ZvSVNpxaQ28VZOJI6CwLn6DEUHhydv3WQx+xPQ/nXdlGJnyE5Y9QIKZZM8pYHeAflBL AwQUAAAACADnaaJYN/KqL5cAAADlAAAAEQAcAHhyZWYtYnVnL213ZWIubHR4VVQJAAPRgzNmCYQz ZnV4CwABBOgDAAAEZAAAAFWOMQ6DMBAEe17BF5LSfVpSpIwjy5jDIMz5wh0KyMrfYxeRoN0dza7u oltnQHHBMj8vV5JXsouMLsC30isDWTdZD6mPKEzgzulGduFC3jYKjx3FbnesdBtjMAgf1dTaGzPE OJkO2tWb0lTacWkNvFWTiSOgsC5+gxFB4cnb91kMfsT0P513ZRiZ8hOWPUCCmWTPKWB3gH5QSwME FAAAAAgA6WmiWDfyqi+XAAAA5QAAABEAHAB4cmVmLWJ1Zy9td2VjLmx0eFVUCQAD1YMzZgmEM2Z1 eAsAAQToAwAABGQAAABVjjEOgzAQBHtewReS0n1aUqSMI8uYwyDM+cIdCsjK32MXkaDdHc2u7qJb Z0BxwTI/L1eSV7KLjC7At9IrA1k3WQ+pjyhM4M7pRnbhQt42Co8dxW53rHQbYzAIH9XU2hszxDiZ DtrVm9JU2nFpDbxVk4kjoLAufoMRQeHJ2/dZDH7E9D+dd2UYmfITlj1Agplkzylgd4B+UEsDBBQA AAAIAOxpolg38qovlwAAAOUAAAARABwAeHJlZi1idWcvbXdlZC5sdHhVVAkAA9uDM2YJhDNmdXgL AAEE6AMAAARkAAAAVY4xDoMwEAR7XsEXktJ9WlKkjCPLmMMgzPnCHQrIyt9jF5Gg3R3Nru6iW2dA ccEyPy9Xkleyi4wuwLfSKwNZN1kPqY8oTODO6UZ24ULeNgqPHcVud6x0G2MwCB/V1NobM8Q4mQ7a 1ZvSVNpxaQ28VZOJI6CwLn6DEUHhydv3WQx+xPQ/nXdlGJnyE5Y9QIKZZM8pYHeAflBLAwQUAAAA CABcaqJYugxYb5gAAADmAAAAEQAcAHhyZWYtYnVnL213ZWUubHR4VVQJAAOvhDNm0IQzZnV4CwAB BOgDAAAEZAAAAFWOMQ6DMBAEe17BF5LSfVpSpIwjy5jDIMz5wh0KyMrfYxeRoN0dza7uoltnQHHB Mj8vV5JXsouMLsC30isDWTdZD6mPKEzgzulGduFC3jYKjx3FbnesdBtjMAgf1dTaGzPEOJkO2tWb 0lTacWkNvFXTZORIKKzLgMGIoPAk7vtsBj9i+r/OwzKMTPkKyx4gwUyy5xSwO0A/UEsBAh4DFAAA AAgA0WmiWDfyqi+XAAAA5QAAABEAGAAAAAAAAQAAAKSBAAAAAHhyZWYtYnVnL213ZWEubHR4VVQF AAOqgzNmdXgLAAEE6AMAAARkAAAAUEsBAh4DFAAAAAgA52miWDfyqi+XAAAA5QAAABEAGAAAAAAA AQAAAKSB4gAAAHhyZWYtYnVnL213ZWIubHR4VVQFAAPRgzNmdXgLAAEE6AMAAARkAAAAUEsBAh4D FAAAAAgA6WmiWDfyqi+XAAAA5QAAABEAGAAAAAAAAQAAAKSBxAEAAHhyZWYtYnVnL213ZWMubHR4 VVQFAAPVgzNmdXgLAAEE6AMAAARkAAAAUEsBAh4DFAAAAAgA7GmiWDfyqi+XAAAA5QAAABEAGAAA AAAAAQAAAKSBpgIAAHhyZWYtYnVnL213ZWQubHR4VVQFAAPbgzNmdXgLAAEE6AMAAARkAAAAUEsB Ah4DFAAAAAgAXGqiWLoMWG+YAAAA5gAAABEAGAAAAAAAAQAAAKSBiAMAAHhyZWYtYnVnL213ZWUu bHR4VVQFAAOvhDNmdXgLAAEE6AMAAARkAAAAUEsFBgAAAAAFAAUAswEAAGsEAAAAAA== --00000000000084407a061778a27e-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 02 May 2024 13:36:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Arash Esbati Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Stefan Monnier , Tassilo Horn , Eli Zaretskii , stefankangas@gmail.com Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171465690712747 (code B ref 53749); Thu, 02 May 2024 13:36:01 +0000 Received: (at 53749) by debbugs.gnu.org; 2 May 2024 13:35:07 +0000 Received: from localhost ([127.0.0.1]:43852 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s2WaY-0003JX-Mj for submit@debbugs.gnu.org; Thu, 02 May 2024 09:35:07 -0400 Received: from mail-pj1-x102d.google.com ([2607:f8b0:4864:20::102d]:45517) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s2WaX-0003J1-D3 for 53749@debbugs.gnu.org; Thu, 02 May 2024 09:35:06 -0400 Received: by mail-pj1-x102d.google.com with SMTP id 98e67ed59e1d1-2b2769f017aso2332090a91.3 for <53749@debbugs.gnu.org>; Thu, 02 May 2024 06:34:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1714656878; x=1715261678; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=NA76V/Oy3DWddy9aztETAssFfPneYE/G97RSxiYygCg=; b=JqiiecHicjYpa8z364pO1maJBx8PUGZbrO63fiyxIn63/tJ7frsdM0Ozqt9IIgSyCR DAUoC00ieuLBINSuLv5tuXZhFX4U/mCQfCO5ZHSnpomfuU0+q5f6IvGfo1uMHN4tLrLK TFunn7t+7TLQiuuFFS0koGyRIrJiQ71JqmrGmqRIIWZctFTFwSr5YcVwKLq/ouoissUS i2WPGB03KzWoUOd+o+GitOSK8Z2X0bGYvbpIbVJY5AbFNNVS92iPVL/pjxhXUL0apsA/ AjbJuUc9eC4tAhQNvwsTppS68ssK7zaRrr9VcS8xYOGK4ADebCPev28Ik7lQ0560zTZa YFDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1714656878; x=1715261678; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=NA76V/Oy3DWddy9aztETAssFfPneYE/G97RSxiYygCg=; b=xIqj14bCoYjsBFPfwYThWC5Xfvo3spsa7oEXnD4/iAoqiCkvGqTuCwvnn5UpHN6sGo tYMUWDM8oWI3R4mXZXF+d40OAVZl72GYlSogG2CrDtuc/lDRM2+PaT9X6uZr9+t9Buma ChpXULfFNIYDfyRJf1VmQyJqUVyc/bJpB8mMlT2ripC3SuwsPN0hG61pgvkqbKpcTwD+ HxLQl/P5cjtUYHXVaEDa9sAIibi9AxyNHNGgLWCl0k9xsUZhCzAvHHY7yLQ9VcZYHlbD GGYZbAckbU8OuBuRSpK8s68QrKcmXo/Gfvx6jTXFTOc0nZgY8jonqVGqpxNT698WhibT CIBw== X-Forwarded-Encrypted: i=1; AJvYcCVmqlojXbnHauz2XJzprgjE4+yNRVQz7kU+q7bXAoCAEp+bPbeVMXrBVSBEkzpBhu+IKUSnR1hliBzuk0qL+sWY/kSqRSo= X-Gm-Message-State: AOJu0Yy2bFDZn5VqLQiJP8/clA6LldZOFxEQVU2uhz5yoXPCv01Jv02u 698hZtaDQizr1cd6NFgSBgJoE6r5mctlcXC6zmso6o7sH/K1Fm6dN+7bbFUxARtOtqzf1ebn2YH REvRZABM+YveZ5PpBJknk0iMi39o= X-Google-Smtp-Source: AGHT+IHoUVyV+1xnw2NNYHKFhAWnxXUVXwrHoFXA3+F2A6ujQtvzP0WEDdzjmNXUaCw6GLuBm5ANMlXfCrSjZcX85NM= X-Received: by 2002:a17:90a:2dc2:b0:2b3:53e1:db8 with SMTP id q2-20020a17090a2dc200b002b353e10db8mr3800463pjm.35.1714656877695; Thu, 02 May 2024 06:34:37 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> In-Reply-To: From: David Fussner Date: Thu, 2 May 2024 14:34:45 +0100 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Thanks for the review, Arash, and I'll make those changes. Best, David. On Thu, 2 May 2024 at 07:47, Arash Esbati wrote: > > David Fussner writes: > > > Here's my third attempt at a working xref backend for TeX. I'll try > > quickly to summarize what's in it: > > > > 1. I've modified etags so that it creates findable tags for as many > > different sorts of TeX construct as possible, including those written > > in the new expl3 syntax. I've now removed the escape character from > > the tag names, as this simplifies code all around. > > Hi David, > > Thanks. I trust your code works, so I have 2 minor comments. > > > 5. Slightly unrelatedly, I've added new syntax-propertize-rules to > > latex-mode so that expl3 constructs with the underscore aren't > > fontified as subscripts, which makes such code unreadable. I'm happy > > to split this off as another patch. > > I think this makes sense. AFAIK, Stefan M. looks after tex-mode.el, so > he can the review it. > > > @@ -5736,11 +5752,25 @@ Scheme_functions (FILE *inf) > > static linebuffer *TEX_toktab = NULL; /* Table with tag tokens */ > > > > /* Default set of control sequences to put into TEX_toktab. > > - The value of environment var TEXTAGS is prepended to this. */ > > + The value of environment var TEXTAGS is prepended to this. > > + (2024) Add variants of '\def', some additional LaTeX (and > > + former xparse) commands, common variants from the > > + 'etoolbox' package, and the main expl3 commands. */ > > static const char *TEX_defenv = "\ > > -:chapter:section:subsection:subsubsection:eqno:label:ref:cite:bibitem\ > > -:part:appendix:entry:index:def\ > > -:newcommand:renewcommand:newenvironment:renewenvironment"; > > +:label:ref:chapter:section:subsection:subsubsection:eqno:cite:bibitem\ > > I suggest to add 'Ref' and 'footref' as well which are part of LaTeX > kernel. > > > +(defvar tex-esc-and-group-chars '(?\\ ?{ ?}) > > (defvar tex-esc-and-group-chars '(?\\ ?\{ ?\}) > > > + "The current TeX escape and grouping characters. > > Best, Arash From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Stefan Monnier Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 03 May 2024 13:44:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: David Fussner Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Arash Esbati , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17147438085299 (code B ref 53749); Fri, 03 May 2024 13:44:01 +0000 Received: (at 53749) by debbugs.gnu.org; 3 May 2024 13:43:28 +0000 Received: from localhost ([127.0.0.1]:46462 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s2tCB-0001NP-HY for submit@debbugs.gnu.org; Fri, 03 May 2024 09:43:28 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:27644) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s2tC5-0001ND-3h for 53749@debbugs.gnu.org; Fri, 03 May 2024 09:43:25 -0400 Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 24C5C80C63; Fri, 3 May 2024 09:42:52 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1714743771; bh=t48ZdDzlvoKMhUvEKBawGz0dGgjwoZ431rhnlwgmNTE=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=KOXWRxKuAaX/1V77xm+LkrHadtGycMY46RZLf283dNL+aJVWM4j3acdLnHC+gVm9a XHCbvVCldy03Wfh4iRZv6lC0nbTh+V3ucWjLQCC6iHE8f59HKRXTfl15PqWts6WU3r t+Gn6JSgnM3E6mM0oI7DFC8jGRo1UaxwbH/0dd7GBDCxYtIx97tFwrgO+6b2L9Qn7B Sl3nrB8GxyY2RhHp9YtS2AViNK4EijKQiEmF0PvoN0+X94aAyMBlGlx+yFsPekzq+Z auGlrYVlFSqF2dH6iBm/gtwe3U1h0KduUQo09ilc+cFmrAeWdYUQuC7bhlXgAol15g nIaiAGNARAsng== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 1347380136; Fri, 3 May 2024 09:42:51 -0400 (EDT) Received: from pastel (unknown [45.72.201.215]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id C358812046B; Fri, 3 May 2024 09:42:50 -0400 (EDT) From: Stefan Monnier In-Reply-To: (David Fussner's message of "Thu, 2 May 2024 14:32:37 +0100") Message-ID: References: <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> Date: Fri, 03 May 2024 09:42:42 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL -0.045 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Thanks for looking over the patch. Here's the recipe for the purported > bug in xref.el: The problem stems from xref.el's constant abuse of `inhibit-modification-hooks`. Binding this var to t should be done only in exceptional circumstances and should ideally be accompanied by a comment explaining why it's necessary. Stefan From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Stefan Monnier Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 03 May 2024 14:12:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: David Fussner Cc: 53749@debbugs.gnu.org, Ikumi Keita , Tassilo Horn , Arash Esbati , stefankangas@gmail.com, Dmitry Gutov , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17147454946777 (code B ref 53749); Fri, 03 May 2024 14:12:01 +0000 Received: (at 53749) by debbugs.gnu.org; 3 May 2024 14:11:34 +0000 Received: from localhost ([127.0.0.1]:46542 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s2tdO-0001lF-2h for submit@debbugs.gnu.org; Fri, 03 May 2024 10:11:34 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:16816) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s2tdK-0001l6-0R for 53749@debbugs.gnu.org; Fri, 03 May 2024 10:11:32 -0400 Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 20A4B4414B0; Fri, 3 May 2024 10:11:02 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1714745459; bh=Str7xwjWdC+z7r5d3a6xv+raptKl+7aQhuYFT4Hs1LA=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=nHODQCy5H9d+m+VG1GD7cAmj+KweDKAin7UirZx/B1fr8Kxl3ZhOWDDgvRpFox4hW JMJMATgOMEKpPXbOd2NsdoQUL+agupLciJN1b3CMZ6qGRnpK7rk4c3ukIXErlPcfxF DRXchAPxcQNgKJaTSFxQM9/MK4JuSSp3lmUkEAbMa8NzG6TX3E7If6DXUMANV7QVdQ u/92wba6FbXHw4tc5p7FTvFOkHYn3DMwx7QbdBTV27lsG/hmmbET51z3A/KMcIlHxV pMcPW+Ih3H9GqSFMQjC9A9sFksiiJoMmdkGuA+Pit1LBbxC+9MARUFOD9OvzXRWFrU sVaQB/kvVYF8w== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id A301544144D; Fri, 3 May 2024 10:10:59 -0400 (EDT) Received: from pastel (unknown [45.72.201.215]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 652FC12020E; Fri, 3 May 2024 10:10:59 -0400 (EDT) From: Stefan Monnier In-Reply-To: (David Fussner's message of "Mon, 29 Apr 2024 15:15:41 +0100") Message-ID: References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> Date: Fri, 03 May 2024 10:10:58 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL -0.001 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Hi, Apparently I'm the `tex-mode.el` guy, so I tried to take a look. > diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el > index 97c950267c6..d990a2dbfa9 100644 > --- a/lisp/textmodes/tex-mode.el > +++ b/lisp/textmodes/tex-mode.el > @@ -695,7 +696,25 @@ tex-verbatim-environments > ("\\\\\\(?:end\\|begin\\) *\\({[^\n{}]*}\\)" > (1 (ignore > (tex-env-mark (match-beginning 0) > - (match-beginning 1) (match-end 1)))))))) > + (match-beginning 1) (match-end 1))))) > + ;; The next two rules change the syntax of `:' and `_' in expl3 > + ;; constructs, so that `tex-font-lock-suscript' can fontify them > + ;; more accurately. > + ((concat "\\(\\(?:[\\\\[:space:]{]_\\|" > + "[\\\\{[:space:]][^][_[:space:][:cntrl:][:digit:]\\\\{}()/=]+\\)" > + "\\(?:_+\\(?:[^][[:space:][:cntrl:][:digit:]:\\\\{}()/#_=]+\\|" > + "#+[1-9]\\)\\)+\\)\\([:_]?\\)") Can you add in the comment some URL pointing to some relevant expl3 documentation which "explains" why the above regexp makes sense? Also I don't clearly see how the above regexp distinguishes expl3 code from "normal" LaTeX code, so the comment should say something about it. Side note: I'd avoid [:space:] whose exact meaning is rarely quite what we need. Side note: backslash doesn't need to be backslashed in [...]. > + (1 (ignore > + (let* ((expr (buffer-substring-no-properties (match-beginning 1) > + (match-end 1))) > + (list (seq-positions expr ?_))) > + (dolist (pos list) > + (put-text-property (+ pos (match-beginning 1)) > + (1+ (+ pos (match-beginning 1))) > + 'syntax-table (string-to-syntax "_")))))) > + (2 "_")) > + ("\\\\[[:alpha:]]+\\(:\\)[[:alpha:][:space:]\n]" > + (1 "_"))))) Currently we "skip" inappropriate underscores via `tex-font-lock-match-suscript` and/or by adding a particular `face` text property rather than via `syntax-table/propertize`. For algorithmic reasons, it's better to minimize the work done in `syntax-propertize-function` as much as possible (font-lock is more lazy than `syntax-propertize`), so I recommend you try and moving the above to font-lock rules. > +(defvar tex-esc-and-group-chars '(?\\ ?{ ?}) > + "The current TeX escape and grouping characters. I recommend you backslash escape the { and } above (although it's not indispensable, `emacs-lisp-mode` will parse the code better). More importantly, the docstring doesn't explain what this list means/does. E.g. does the order matter? Can it be longer than 3 elements? >From the current docstring I can't guess what would be the consequence of adding/removing elements to/from this list. > +;; Populate `semantic-symref-filepattern-alist' for the in-tree modes; > +;; AUCTeX is doing the same for its modes. > +(defvar semantic-symref-filepattern-alist) > +(with-eval-after-load 'semantic/symref/grep > + (push '(latex-mode "*.[tT]e[xX]" "*.ltx" "*.sty" "*.cl[so]" > + "*.bbl" "*.drv" "*.hva") > + semantic-symref-filepattern-alist) > + (push '(plain-tex-mode "*.[tT]e[xX]" "*.ins") > + semantic-symref-filepattern-alist) > + (push '(doctex-mode "*.dtx") semantic-symref-filepattern-alist)) We know `semantic-symref-filepattern-alist` will exist when `semantic/symref/grep` is loaded, but not before, so I'd put the `defvar` inside the `with-eval-after-load`. > +;; Setup AUCTeX modes (for testing purposes only). > + > +(add-hook 'TeX-mode-hook #'tex-set-auctex-xref-backend) > + > +(defun tex-set-auctex-xref-backend () > + (add-hook 'xref-backend-functions #'tex--xref-backend nil t)) I assume this will be sent to AUCTeX and is not meant to be in `tex-mode.el`, right? > +;; `xref-find-references' currently may need this when called from a > +;; latex-mode buffer in order to search files or buffers with a .tex > +;; suffix (including the buffer from which it has been called). We > +;; append it to `auto-mode-alist' so as not to interfere with the usual > +;; mode-setting apparatus. Changes here and in AUCTeX should soon > +;; render it unnecessary. > +(add-to-list 'auto-mode-alist '("\\.[tT]e[xX]\\'" . latex-mode) t) Maybe I have not followed the whole discussion closely enough, but at least to me the above "soon" is very unclear. I'll assume that this code will be removed before we install the patch. If not, please explain in the comment why this specific hack is needed and how it works. > +(cl-defmethod xref-backend-references ((_backend (eql 'tex-etags)) identifier) > + "Find references of IDENTIFIER in TeX buffers and files." > + (require 'semantic/symref/grep) > + (let (bufs texbufs > + (mode major-mode)) > + (dolist (buf (buffer-list)) > + (if (eq (buffer-local-value 'major-mode buf) mode) > + (push buf bufs) > + (when (string-match-p ".*\\.[tT]e[xX]" (buffer-name buf)) > + (push buf texbufs)))) > + (unless (seq-set-equal-p tex--buffers-list bufs) > + (let* ((amalist (tex--collect-file-extensions)) > + (extlist (alist-get mode semantic-symref-filepattern-alist)) > + (extlist-new (seq-uniq > + (seq-union amalist extlist #'string-match-p)))) After sinking the `defvar` above, you'll need to add a new `defvar` for `semantic-symref-filepattern-alist` just after the `require`. > + (setq-local syntax-propertize-function > + (eval > + `(tex-xref-syntax-function > + ,identifier ,beg ,end))) Why do we need to change `syntax-propertize-function` and why do we need `eval`? > + (setq syntax-propertize--done 0) This is not sufficient. You want to `syntax-ppss-flush-cache`. Stefan From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 04 May 2024 08:27:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Monnier Cc: 53749@debbugs.gnu.org, Ikumi Keita , Tassilo Horn , Arash Esbati , stefankangas@gmail.com, Dmitry Gutov , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171481119629574 (code B ref 53749); Sat, 04 May 2024 08:27:01 +0000 Received: (at 53749) by debbugs.gnu.org; 4 May 2024 08:26:36 +0000 Received: from localhost ([127.0.0.1]:52009 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s3Aj5-0007gv-Bo for submit@debbugs.gnu.org; Sat, 04 May 2024 04:26:35 -0400 Received: from mail-pj1-x1036.google.com ([2607:f8b0:4864:20::1036]:61594) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s3Aj3-0007gp-Hf for 53749@debbugs.gnu.org; Sat, 04 May 2024 04:26:34 -0400 Received: by mail-pj1-x1036.google.com with SMTP id 98e67ed59e1d1-2b3646494a8so316362a91.2 for <53749@debbugs.gnu.org>; Sat, 04 May 2024 01:26:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1714811165; x=1715415965; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=G3S5R1qBYja9gJpciuTPB9dnqpU0SWe9jcPOBp28xEc=; b=QZ2cot935rEUVBWJG0TKbL8a2C5nIGT7Vu6B5er7/bh2UK/0bASu/3VQTxTZ4S9dlK Ay//EzV2pbE/CbVBWFUYxLUbNm+ehcX4RMpUwYqJMTgKNXRpXxvdU0BQk9Pwboyv8vEJ a9k//+43gnxwo1O0R4gIC+Ixp7hIZSen4khJ2PNOzHRka4ELqS3bV3bhMcNufRr1rl3H Rr87azR3Z2NoMwEbRzYuH4vbf6/A+3AvVgI0SLGnslb8ujszR7YLEaWOfmAmZGWiMrHB Uc0HnQVtx5wYegw0oZ8Dk9VyeMwExj0SNFQvJLsnpndl5O2Llv7KxG+loP/GC+kDlhrm iGRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1714811165; x=1715415965; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=G3S5R1qBYja9gJpciuTPB9dnqpU0SWe9jcPOBp28xEc=; b=KaxdLWMEFT4s9PogC2ArpuKLBBZskfOwF/ch6/0febea8Fbz56SVF83SwsGLt+h8ql E/jZcydVrPDVsDMl1MoZlYWNHMVosJruwvBsSUT1nsXmkGD90U1lG4NekpWKz/mwQpkH VRB6Rn9hA8sbGGGB0+v1iOi54R9OayqqfqlVNz8Slh4Nx3te6KTFP4EHlNOnxouRyQqC 0pTUJmLya2c9jp4L0xSr/Ad0y1CeYnZ04yZKEANA/44iK3mEeZy7S8gpeGuGI3KleyTA X9yk2El47h12U2QwZlj/VPiCSXsnI7ZnKrPK7Kjem5W2eEYujUP5e01A6OfKl34zV8E8 OkNw== X-Forwarded-Encrypted: i=1; AJvYcCW1jSDf0SJ24byFHKhVlul9Uhcu5bLMsJGJh+7q+0T7Qk5Cz6canro/3IjRkKvSjO21TZYmZpMt7wyORgQoUB1mavf7KgU= X-Gm-Message-State: AOJu0YxzCKcj/Zbml1UfkyRUJFjl22glRMMTUF6rUBtOxrDEAl2GoZBt jkgyG5INJ7KL95lWoobkqPdj3Gb5R87ZRr6PWWW8qQBIO/PKuynpr5s4/GFBa3HencfOwABOH9J Pcfud/Y0LPsh+0w/xLvpRuy1bXo4= X-Google-Smtp-Source: AGHT+IGasvNpAFKWAUmLBnI6l43dvoApcGakRFDE34PIpn9q2QWbTKu65LgRtgv5qpd96zQPuE8q1zIrbekitq7AyX8= X-Received: by 2002:a17:90a:e60f:b0:2ae:9176:f928 with SMTP id j15-20020a17090ae60f00b002ae9176f928mr4734204pjy.15.1714811164451; Sat, 04 May 2024 01:26:04 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> In-Reply-To: From: David Fussner Date: Sat, 4 May 2024 09:26:12 +0100 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Thank you very much, Stefan, for taking the time to review the patch. In short, it plainly needs some work, but I'm rather short of time this weekend so will respond properly and I hope more coherently Monday or Tuesday. Best, David. On Fri, 3 May 2024 at 15:11, Stefan Monnier wrote: > > Hi, > > Apparently I'm the `tex-mode.el` guy, so I tried to take a look. > > > diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el > > index 97c950267c6..d990a2dbfa9 100644 > > --- a/lisp/textmodes/tex-mode.el > > +++ b/lisp/textmodes/tex-mode.el > > @@ -695,7 +696,25 @@ tex-verbatim-environments > > ("\\\\\\(?:end\\|begin\\) *\\({[^\n{}]*}\\)" > > (1 (ignore > > (tex-env-mark (match-beginning 0) > > - (match-beginning 1) (match-end 1)))))))) > > + (match-beginning 1) (match-end 1))))) > > + ;; The next two rules change the syntax of `:' and `_' in expl3 > > + ;; constructs, so that `tex-font-lock-suscript' can fontify them > > + ;; more accurately. > > + ((concat "\\(\\(?:[\\\\[:space:]{]_\\|" > > + "[\\\\{[:space:]][^][_[:space:][:cntrl:][:digit:]\\\\{}()/=]+\\)" > > + "\\(?:_+\\(?:[^][[:space:][:cntrl:][:digit:]:\\\\{}()/#_=]+\\|" > > + "#+[1-9]\\)\\)+\\)\\([:_]?\\)") > > Can you add in the comment some URL pointing to some relevant expl3 > documentation which "explains" why the above regexp makes sense? > Also I don't clearly see how the above regexp distinguishes expl3 code > from "normal" LaTeX code, so the comment should say something about it. > > Side note: I'd avoid [:space:] whose exact meaning is rarely quite what > we need. > Side note: backslash doesn't need to be backslashed in [...]. > > > + (1 (ignore > > + (let* ((expr (buffer-substring-no-properties (match-beginning 1) > > + (match-end 1))) > > + (list (seq-positions expr ?_))) > > + (dolist (pos list) > > + (put-text-property (+ pos (match-beginning 1)) > > + (1+ (+ pos (match-beginning 1))) > > + 'syntax-table (string-to-syntax "_")))))) > > + (2 "_")) > > + ("\\\\[[:alpha:]]+\\(:\\)[[:alpha:][:space:]\n]" > > + (1 "_"))))) > > Currently we "skip" inappropriate underscores via > `tex-font-lock-match-suscript` and/or by adding a particular `face` text > property rather than via `syntax-table/propertize`. > > For algorithmic reasons, it's better to minimize the work done in > `syntax-propertize-function` as much as possible (font-lock is more lazy > than `syntax-propertize`), so I recommend you try and moving the above > to font-lock rules. > > > +(defvar tex-esc-and-group-chars '(?\\ ?{ ?}) > > + "The current TeX escape and grouping characters. > > I recommend you backslash escape the { and } above (although it's not > indispensable, `emacs-lisp-mode` will parse the code better). > More importantly, the docstring doesn't explain what this list > means/does. E.g. does the order matter? Can it be longer than 3 elements? > > From the current docstring I can't guess what would be the consequence > of adding/removing elements to/from this list. > > > +;; Populate `semantic-symref-filepattern-alist' for the in-tree modes; > > +;; AUCTeX is doing the same for its modes. > > +(defvar semantic-symref-filepattern-alist) > > +(with-eval-after-load 'semantic/symref/grep > > + (push '(latex-mode "*.[tT]e[xX]" "*.ltx" "*.sty" "*.cl[so]" > > + "*.bbl" "*.drv" "*.hva") > > + semantic-symref-filepattern-alist) > > + (push '(plain-tex-mode "*.[tT]e[xX]" "*.ins") > > + semantic-symref-filepattern-alist) > > + (push '(doctex-mode "*.dtx") semantic-symref-filepattern-alist)) > > We know `semantic-symref-filepattern-alist` will exist when > `semantic/symref/grep` is loaded, but not before, so I'd put the > `defvar` inside the `with-eval-after-load`. > > > +;; Setup AUCTeX modes (for testing purposes only). > > + > > +(add-hook 'TeX-mode-hook #'tex-set-auctex-xref-backend) > > + > > +(defun tex-set-auctex-xref-backend () > > + (add-hook 'xref-backend-functions #'tex--xref-backend nil t)) > > I assume this will be sent to AUCTeX and is not meant to be in > `tex-mode.el`, right? > > > +;; `xref-find-references' currently may need this when called from a > > +;; latex-mode buffer in order to search files or buffers with a .tex > > +;; suffix (including the buffer from which it has been called). We > > +;; append it to `auto-mode-alist' so as not to interfere with the usual > > +;; mode-setting apparatus. Changes here and in AUCTeX should soon > > +;; render it unnecessary. > > +(add-to-list 'auto-mode-alist '("\\.[tT]e[xX]\\'" . latex-mode) t) > > Maybe I have not followed the whole discussion closely enough, but at > least to me the above "soon" is very unclear. > I'll assume that this code will be removed before we install the patch. > If not, please explain in the comment why this specific hack is needed > and how it works. > > > +(cl-defmethod xref-backend-references ((_backend (eql 'tex-etags)) identifier) > > + "Find references of IDENTIFIER in TeX buffers and files." > > + (require 'semantic/symref/grep) > > + (let (bufs texbufs > > + (mode major-mode)) > > + (dolist (buf (buffer-list)) > > + (if (eq (buffer-local-value 'major-mode buf) mode) > > + (push buf bufs) > > + (when (string-match-p ".*\\.[tT]e[xX]" (buffer-name buf)) > > + (push buf texbufs)))) > > + (unless (seq-set-equal-p tex--buffers-list bufs) > > + (let* ((amalist (tex--collect-file-extensions)) > > + (extlist (alist-get mode semantic-symref-filepattern-alist)) > > + (extlist-new (seq-uniq > > + (seq-union amalist extlist #'string-match-p)))) > > After sinking the `defvar` above, you'll need to add a new `defvar` for > `semantic-symref-filepattern-alist` just after the `require`. > > > + (setq-local syntax-propertize-function > > + (eval > > + `(tex-xref-syntax-function > > + ,identifier ,beg ,end))) > > Why do we need to change `syntax-propertize-function` and why do we need > `eval`? > > > + (setq syntax-propertize--done 0) > > This is not sufficient. You want to `syntax-ppss-flush-cache`. > > > Stefan > From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Arash Esbati Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 04 May 2024 14:34:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Monnier Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , David Fussner , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17148331855635 (code B ref 53749); Sat, 04 May 2024 14:34:01 +0000 Received: (at 53749) by debbugs.gnu.org; 4 May 2024 14:33:05 +0000 Received: from localhost ([127.0.0.1]:54022 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s3GRl-0001Sp-20 for submit@debbugs.gnu.org; Sat, 04 May 2024 10:33:05 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:41876) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s3GRi-0001SO-RU for 53749@debbugs.gnu.org; Sat, 04 May 2024 10:33:03 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1s3GRC-0003SP-IU; Sat, 04 May 2024 10:32:30 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=44lUBGbyFmM2WnNYYvX94KwpOGMbnkd8I4mlbnV8wkA=; b=gdCTjMXccj/wngWRfqZA aJB0CltNYwwfhjYw/Rf11OdzbMkhQoj3CxHFWHaCUPU8P3MtWxHLjdYToB43LwVi99j92Z9ZO9yhm 6zeL3gNnmnHWmC3Vn/fDF6znQBV9LeJqWhdQgKIMrDYmzJ1BalvD1Yu2YxFVLBfbO2ycGRv67OUza QL4wCQF1q8s+xb7Wr6PajDNbiMSYmPKT4hIHQuYzoPlBPr5+0yyHSin7wA4pk4fOtBhy3vCveBfXz l3s3E4+TgcZM5n6zH0kHfd/6ZnAPCZaRVW8aJAOLj7GBFpgwV5+j1tAVsMqxQ2B4/bvkB2nt4h3BO F4bX0vPnEU+PJg==; From: Arash Esbati In-Reply-To: (Stefan Monnier's message of "Fri, 03 May 2024 10:10:58 -0400") References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> Date: Sat, 04 May 2024 16:32:25 +0200 Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Stefan Monnier writes: >> diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el >> index 97c950267c6..d990a2dbfa9 100644 >> --- a/lisp/textmodes/tex-mode.el >> +++ b/lisp/textmodes/tex-mode.el >> @@ -695,7 +696,25 @@ tex-verbatim-environments >> ("\\\\\\(?:end\\|begin\\) *\\({[^\n{}]*}\\)" >> (1 (ignore >> (tex-env-mark (match-beginning 0) >> - (match-beginning 1) (match-end 1)))))))) >> + (match-beginning 1) (match-end 1))))) >> + ;; The next two rules change the syntax of `:' and `_' in expl3 >> + ;; constructs, so that `tex-font-lock-suscript' can fontify them >> + ;; more accurately. >> + ((concat "\\(\\(?:[\\\\[:space:]{]_\\|" >> + "[\\\\{[:space:]][^][_[:space:][:cntrl:][:digit:]\\\\{}()/=]+\\)" >> + "\\(?:_+\\(?:[^][[:space:][:cntrl:][:digit:]:\\\\{}()/#_=]+\\|" >> + "#+[1-9]\\)\\)+\\)\\([:_]?\\)") > > Can you add in the comment some URL pointing to some relevant expl3 > documentation which "explains" why the above regexp makes sense? > Also I don't clearly see how the above regexp distinguishes expl3 code > from "normal" LaTeX code, so the comment should say something about > it. FWIW, I'm not sure if there is an URL for that, but in interface3.pdf, chap.1, you'll find: 1.1 Naming functions and variables LATEX3 does not use @ as a "letter"" for defining internal macros. Instead, the symbols _ and : are used in internal macro names to provide structure. The name of each function is divided into logical units using _, while : separates the name of the function from the argument specifier ("arg-spec"). This describes the arguments expected by the function. In most cases, each argument is represented by a single letter. The complete list of arg-spec letters for a function is referred to as the signature of the function. So expect things like this: \tl_set:Nn \l_mya_tl { A } \tl_set:Nn \l_myb_tl { B } \tl_set:Nf \l_mya_tl { \l_mya_tl \l_myb_tl } >> +;; Setup AUCTeX modes (for testing purposes only). >> + >> +(add-hook 'TeX-mode-hook #'tex-set-auctex-xref-backend) >> + >> +(defun tex-set-auctex-xref-backend () >> + (add-hook 'xref-backend-functions #'tex--xref-backend nil t)) > > I assume this will be sent to AUCTeX and is not meant to be in > `tex-mode.el`, right? That would have been a question from my side, but I saw that "testing purposes only" and skipped it for this round. Best, Arash From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Stefan Monnier Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 04 May 2024 14:56:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Arash Esbati Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , David Fussner , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17148345296488 (code B ref 53749); Sat, 04 May 2024 14:56:02 +0000 Received: (at 53749) by debbugs.gnu.org; 4 May 2024 14:55:29 +0000 Received: from localhost ([127.0.0.1]:54123 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s3GnP-0001gX-KV for submit@debbugs.gnu.org; Sat, 04 May 2024 10:55:29 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:41135) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s3GnJ-0001gL-OS for 53749@debbugs.gnu.org; Sat, 04 May 2024 10:55:25 -0400 Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 42F15801BF; Sat, 4 May 2024 10:54:53 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1714834488; bh=Uq+FyXGXhteHHYWoyS4EXgwM36pKM1XIsRQklMho/Qo=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=F3u7F3vJX8R3szNPzKALpYNqxGb6OAn4Oi0XYd5h0Shodivi4eyFdJtBNV3K8XDXh 1vZtIT3wRb81aMyffAQreltVKAp9cRP+xeqiNOLunRN1akcHzf6NkWqxJrWAmJvPx7 sYqMYxkO166CCS/er4rVSrCbd3rfSeOi5Lx/fnDcMO0ahZtbk1oGNo8ev6U3cV0Sue kIN0+lrgd+PfumkbpGBHe7gpO2IuzgPuMOzUfqc8ig+OWWC4bfr4pNlEwZ5OUmK9+9 OIyq8jSzBv6GP+i8S0iIu7yUGIpOyDISV63+M814+5Mblns5CG5qQEzRjlch0ijewf 9CeEoQnn+higw== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id EF94780013; Sat, 4 May 2024 10:54:47 -0400 (EDT) Received: from pastel (unknown [45.72.201.215]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id AD2D0120352; Sat, 4 May 2024 10:54:47 -0400 (EDT) From: Stefan Monnier In-Reply-To: (Arash Esbati's message of "Sat, 04 May 2024 16:32:25 +0200") Message-ID: References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> Date: Sat, 04 May 2024 10:54:46 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL -0.044 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > FWIW, I'm not sure if there is an URL for that, but in interface3.pdf, > chap.1, you'll find: [...] > So expect things like this: > > \tl_set:Nn \l_mya_tl { A } > \tl_set:Nn \l_myb_tl { B } > \tl_set:Nf \l_mya_tl { \l_mya_tl \l_myb_tl } But that is *also* valid LaTeX, with a different meaning (i.e. where `_` has its subscript meaning). So we need some other info in order to know which of the two we're dealing with. Maybe that info is simply "assume LaTeX3 if the _ is followed by several letters" or some such heuristic, but the comment should say so. Stefan From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Arash Esbati Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 04 May 2024 21:17:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Monnier Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , David Fussner , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171485739712593 (code B ref 53749); Sat, 04 May 2024 21:17:02 +0000 Received: (at 53749) by debbugs.gnu.org; 4 May 2024 21:16:37 +0000 Received: from localhost ([127.0.0.1]:55806 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s3MkH-0003H3-Cf for submit@debbugs.gnu.org; Sat, 04 May 2024 17:16:37 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:50444) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s3MkC-0003Gv-7E for 53749@debbugs.gnu.org; Sat, 04 May 2024 17:16:35 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1s3Mjg-0004pK-5v; Sat, 04 May 2024 17:16:00 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=Ccgcv6mp9vXh2fds/uX/gY1o8zc4teDcnzkuhQyfzic=; b=KY2KbR8hwSbpb1/cKGxa 1EcHWR9x/Ki6dj7vzevbI7GVlVD6ox2QXSN+xb/73cz8egppi94YjKRGzRrROCaIS0zO9NL0JABqT tmmPtstV+kvm+3Y4hnpbBHu0jtW7s6KOJcAvrQmuOcZkTJU7AgyAy+95RQzPDOhUEaw+2QpORWK3Y bMdtGINZ2aZWYQmsbxGWP55ui0Olgr0IDkJuPb9ig9QjpUn4c4LCe7Z6+UCgD0z4Va58d5QH3nv4P EkEuKiw7LJaJP8goeU0btl+WE6wwCv7E9vX+Db7TSxspUBPUkPKMqX0o2WPN41LcqxbLJEPkvD36I l8a5TZwqSq9NeQ==; From: Arash Esbati In-Reply-To: (Stefan Monnier's message of "Sat, 04 May 2024 10:54:46 -0400") References: <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> Date: Sat, 04 May 2024 23:15:55 +0200 Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Stefan Monnier writes: > But that is *also* valid LaTeX, with a different meaning (i.e. where > `_` has its subscript meaning). So we need some other info in order to > know which of the two we're dealing with. That's true. AFAIK, one has to deal with: =E2=80=A2 \_ in ordinary text like foo\_bar =E2=80=A2 _ in math mode like $a_b$ =E2=80=A2 expl3 macros like \tl_set:Nn =E2=80=A2 expl3 macros like \__kernel_kern:n > Maybe that info is simply "assume LaTeX3 if the _ is followed by several > letters" or some such heuristic, but the comment should say so. Last time I looked at this, my conclusion was: Deal with \_ and _ in usual .tex files and expect expl3 macros in .dtx file only. Best, Arash From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 07 May 2024 02:08:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: David Fussner Cc: 53749@debbugs.gnu.org, Ikumi Keita , Arash Esbati , Stefan Monnier , Tassilo Horn , Eli Zaretskii , stefankangas@gmail.com Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17150476388508 (code B ref 53749); Tue, 07 May 2024 02:08:01 +0000 Received: (at 53749) by debbugs.gnu.org; 7 May 2024 02:07:18 +0000 Received: from localhost ([127.0.0.1]:41459 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s4AEg-0002DA-3x for submit@debbugs.gnu.org; Mon, 06 May 2024 22:07:18 -0400 Received: from forward502b.mail.yandex.net ([178.154.239.146]:38460) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s4AEc-0002D4-Fm for 53749@debbugs.gnu.org; Mon, 06 May 2024 22:07:16 -0400 Received: from mail-nwsmtp-smtp-production-main-90.myt.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-90.myt.yp-c.yandex.net [IPv6:2a02:6b8:c12:2512:0:640:eb83:0]) by forward502b.mail.yandex.net (Yandex) with ESMTPS id EAF0E5E6C7; Tue, 7 May 2024 05:06:46 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-90.myt.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id g6Nj1t5d4W20-lb5rIuPB; Tue, 07 May 2024 05:06:46 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1715047606; bh=9Ksac0fKc2s3Wn7rFf6ZVRcdfI5TVWhd6VhFtWeLdkc=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=YetryuFLTtI+wFtEHgcaFqREXpnFQXDtbfLwfkNKFM+hX5TNLMSuhyYRD3MaWWj1l FJcc/aJ9YqUTy46YPHYWD8stpSGM4dB+JoYq2AP3cONJgEJVH22AwCHyFOxmJ/VOoS gsT+naGFLD8gR+L0oH3g5kfVnWMrpRhPDVAAT8Ns= Authentication-Results: mail-nwsmtp-smtp-production-main-90.myt.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute7.internal (compute7.nyi.internal [10.202.2.48]) by mailfauth.nyi.internal (Postfix) with ESMTP id 1D88F1200032; Mon, 6 May 2024 22:06:41 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute7.internal (MEProxy); Mon, 06 May 2024 22:06:42 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvddvjedgheejucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnhepiefhjeeuveetffffvdefteffffekhfeuudejieehheeiudelgfehgffffedu ffdunecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon, 6 May 2024 22:06:39 -0400 (EDT) Message-ID: <175a4316-bb92-424a-8cca-07ffa6de8aba@yandex.ru> Date: Tue, 7 May 2024 05:06:36 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird References: <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> Content-Language: en-US From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On 02/05/2024 16:32, David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: > Hi Dmitry, > > Thanks for looking over the patch. Here's the recipe for the purported > bug in xref.el: > > 1. Please apply my patch to tex-mode.el (and xref.el). > > 2. I've attached xref-bug.zip, which contains a directory with 4 > identical LaTeX files and one LaTeX file with a single additional > character. Please extract it. > > 3. emacs -Q > > 4. C-x C-f xref-bug/mwea.ltx, and please don't visit the other 4 > files. > > 5. Put point on \__hook_debug:n in line 6. > > 6. M-?, RTN, ... RTN, RTN. > > The xref buffer should offer 5 hits, one from each file in the > directory. > > 7. Comment out the the line I added to xref--collect-matches, > byte-compile and load the file. > > 8. With point in the same place, M-?, RTN, ... RTN, RTN. > > The xref buffer should offer 3 hits. The first is from the > file-visiting buffer (where I also set syntax-propertize--done to 0, > because in my testing there could be some issues here, too). The > second hit is from the first file opened in *xref-temp. Here, > syntax-propertize runs to line-end, and all is well. The next two > files are missed, because syntax-propertize--done is set to line-end > and they have exactly the same line length as file two, and therefore > syntax-propertize thinks that's good enough and doesn't actually > change anything. The fifth file has an additional character in line 6, > so syntax-propertize decides it needs to work on this line because > line-end > syntax-propertize--done. > > You can put point on, say, \documentclass, and you'll get all 5 hits, > because this string doesn't begin or end with a non-word, non-symbol > character, and syntax-propertize doesn't need to run. You can make the > search string "\documentclass" and you'll get 2 hits, as line 1 has > the same length in all 5 files. (It's worth trying "\usepackage" as > the search string, too.) > > That's my diagnosis anyway. Does it make sense? Thank you, David, for the thorough scenario. I see the problem now. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 07 May 2024 02:28:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Monnier , David Fussner Cc: 53749@debbugs.gnu.org, Ikumi Keita , Arash Esbati , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17150488779369 (code B ref 53749); Tue, 07 May 2024 02:28:02 +0000 Received: (at 53749) by debbugs.gnu.org; 7 May 2024 02:27:57 +0000 Received: from localhost ([127.0.0.1]:41549 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s4AYf-0002R3-5j for submit@debbugs.gnu.org; Mon, 06 May 2024 22:27:57 -0400 Received: from forward500c.mail.yandex.net ([2a02:6b8:c03:500:1:45:d181:d500]:45106) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s4AYd-0002Qv-Eh for 53749@debbugs.gnu.org; Mon, 06 May 2024 22:27:56 -0400 Received: from mail-nwsmtp-smtp-production-main-44.sas.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-44.sas.yp-c.yandex.net [IPv6:2a02:6b8:c24:a33:0:640:d837:0]) by forward500c.mail.yandex.net (Yandex) with ESMTPS id 8436F60E46; Tue, 7 May 2024 05:27:23 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-44.sas.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id IRNiAUGmFmI0-NGNjqMW7; Tue, 07 May 2024 05:27:22 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1715048842; bh=7QePmLdLH9IzEey+MJrYO14uvacfm2qSLhMar6lTCqk=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=QPcpdv2htzt/OJntg3iN1NbUbtexvLRCCjWbgczWDbZr14fbz3StkiwQCUWrN6+CI dfmHiBJ+1exOke9JUJKLCjb9FoZm8K3RxGjnWtUX3r4QSkz6AqJ/0pfcUrb3rHXMrt UPMOxa+x4BTD45oHsz9tvRxao9uFzMbB3T+2xh4k= Authentication-Results: mail-nwsmtp-smtp-production-main-44.sas.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute7.internal (compute7.nyi.internal [10.202.2.48]) by mailfauth.nyi.internal (Postfix) with ESMTP id 1C9BF120006B; Mon, 6 May 2024 22:27:17 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute7.internal (MEProxy); Mon, 06 May 2024 22:27:18 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvddvjedgieduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnhepiefhjeeuveetffffvdefteffffekhfeuudejieehheeiudelgfehgffffedu ffdunecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon, 6 May 2024 22:27:15 -0400 (EDT) Message-ID: Date: Tue, 7 May 2024 05:27:14 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> Content-Language: en-US From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) On 03/05/2024 16:42, Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: >> Thanks for looking over the patch. Here's the recipe for the purported >> bug in xref.el: > The problem stems from xref.el's constant abuse of > `inhibit-modification-hooks`. Binding this var to t should be done only > in exceptional circumstances and should ideally be accompanied by a > comment explaining why it's necessary. Well, the reason is performance: I've tried to wring out the most out of it, given that we have to parse the buffer for syntax in Elisp, and that'll always have a certain overhead. The difference between inhibiting and not could be up to 20% of runtime. David's fix makes things slower (just due to having us do the necessary work), but still has an edge over having no inhibit-modification-hooks. That remaining improvement is around 4-7% in my testing, though, so maybe it's the point where we should prioritize simplicity. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 07 May 2024 13:16:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Monnier Cc: 53749@debbugs.gnu.org, Ikumi Keita , Tassilo Horn , Arash Esbati , stefankangas@gmail.com, Dmitry Gutov , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171508776117257 (code B ref 53749); Tue, 07 May 2024 13:16:01 +0000 Received: (at 53749) by debbugs.gnu.org; 7 May 2024 13:16:01 +0000 Received: from localhost ([127.0.0.1]:42652 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s4Kfn-0004UH-Tr for submit@debbugs.gnu.org; Tue, 07 May 2024 09:16:00 -0400 Received: from mail-pl1-x631.google.com ([2607:f8b0:4864:20::631]:59613) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s4Kfk-0004U9-GJ for 53749@debbugs.gnu.org; Tue, 07 May 2024 09:15:57 -0400 Received: by mail-pl1-x631.google.com with SMTP id d9443c01a7336-1ecddf96313so26750015ad.2 for <53749@debbugs.gnu.org>; Tue, 07 May 2024 06:15:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1715087726; x=1715692526; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Gh5YrPgBnl8LygP/+wg28snfCrtXdUCs4LqxlcUXS1o=; b=dPcoqpOapFz/6HIb6omWIw86nyXD2qC7bOpALmPtB0Oqq78/Ra2Kuu+JJ4tWUDYjRr DNzkU1GyWgpVSFdALOgsT5/F6hs8qo80DNgZF9hmf2zRkQPSG30BzH3KuKi/heKhzpXH BIJPcwrK4HSh4GMVdr6/lsdjEC+Sca/9dC2QBQRE7RRMKqRsgz1IUGbzwdfN2nMtlEUJ 1i87dETHMU+cjwFfxz3QJ0PPTiJ8UoMsphD2cA0U6cuMnftsixT/HMxxzV4p5a+vFq/p ZAnV3jdXS65g8T/aFN0ehP1lnIB/RwfF90ZmbWsjwWE2E35a5lX/eZdloUe3p89Ljrbt BLZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715087726; x=1715692526; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Gh5YrPgBnl8LygP/+wg28snfCrtXdUCs4LqxlcUXS1o=; b=WYmwF645d0COEGalxhj7/72dlOk3kUr61vBNamcWewH6sKR/LGd2r7zm4XdllDVxHG +ODcONckl2nSiMtEBBOFHR6mb9Bc7VkF2jnOy4LZtzKus1Lgs3ijgwXfZ62QMzLXTB7r koLvOlsnzKDLH7eNDForEQI92t6J2BFrBSzQwfoZkb7FO10JZdkNHgzUfQRmHUbJJ2Qo QGgY+aIyQat3t06Wa+A1BTnrk+DUyyuzfHgFCxkfnZ3rId7baknJNdExIAZbPgk6W4xp qG2m3flDDmU5e/suYd9qvXG8jwBE75VNwItWQoNDS+3SwdPcxFLkTQhlv4WTpcjzIpAj Ogvw== X-Forwarded-Encrypted: i=1; AJvYcCWDxJs13fEl+Ij1uaDeVszRf/cF6KfVg6nmOk4D0m0n+UI35udpbuYXhdkgxSHJ3lQRO0bmUgDQGmhv6/3PO+usbgX0Djk= X-Gm-Message-State: AOJu0Yz2KSH9r63KGL97Rut66pKEEe7cVZlCuI94segK3EYEwdBYBMgF UV3JG9uUar+RxzaqN+jas9KzTYvHV2TY/n9aP3k4m3828kSfAIxBB+jry0QnltvARgE9TO17CjW jsCk7sTADc1NVQ8HHF0bTq3fX+LwO+I9M8yQ= X-Google-Smtp-Source: AGHT+IGYe4ERX3/pMPSnOxc+wtxOX82121gR3afT85/lMqxfvUSyibjxOrq3Ca+5CnrFp17xYAtOrzxB29wZROhq75k= X-Received: by 2002:a17:90b:684:b0:2b4:329e:e373 with SMTP id m4-20020a17090b068400b002b4329ee373mr13854095pjz.6.1715087725517; Tue, 07 May 2024 06:15:25 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> In-Reply-To: From: David Fussner Date: Tue, 7 May 2024 14:15:33 +0100 Message-ID: Content-Type: multipart/mixed; boundary="000000000000a3763c0617dcfada" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000a3763c0617dcfada Content-Type: text/plain; charset="UTF-8" Hi Stefan, I apologize in advance if my reply gets lengthy. > Also I don't clearly see how the above regexp distinguishes expl3 code > from "normal" LaTeX code, so the comment should say something about it. You are quite right that the regexp can (and does) match "normal" LaTeX code, and I can see that this isn't acceptable as it stands. The only way to be sure about ":" and "_" is to determine whether they're inside a matched pair of \ExplSyntaxOn \ExplSyntaxOff macros (or in a file which does something like \ProvidesExpl[File|Class]). The file case can, I think, be sorted by modifying the syntax table as part of setting up the relevant major modes. The temporary toggling of ExplSyntax is trickier, but I have some proof-of-concept code that adds a function to the `syntax-propertize-extend-region-functions' hook that creates a list (`tex-expl-region-list`) of the start and end of all such regions in a buffer and updates it whenever `syntax-propertize` runs. In the `syntax-propertize-function` we test whether hits are inside one of these regions and only change the syntax when they are. (A very lightly-tested and incomplete patch on top of my earlier patch is attached. It only applies to the "_" now, but would need extending to the other sub-matches, too.) > Currently we "skip" inappropriate underscores via > `tex-font-lock-match-suscript` and/or by adding a particular `face` text > property rather than via `syntax-table/propertize`. > > For algorithmic reasons, it's better to minimize the work done in > `syntax-propertize-function` as much as possible (font-lock is more lazy > than `syntax-propertize`), so I recommend you try and moving the above > to font-lock rules. The reason I've been using `syntax-propertize` rather than `font-lock` is because the former may confer advantages when using `xref-find-references`, but that in turn depends on how we decide to define that function in the `tex-etags` backend. Please see below. In any case, I think I can easily use `tex-expl-region-list` in a test for how to fontify "_", so if you don't object to the addition of `tex-expl-region-set` to the `syntax-propertize-extend-region-functions' hook then we should be able to get pretty close to a rigorous demarcation between "normal" LaTeX and expl3 code in this context. > > + (setq-local syntax-propertize-function > > + (eval > > + `(tex-xref-syntax-function > > + ,identifier ,beg ,end))) > > Why do we need to change `syntax-propertize-function` and why do we need > `eval`? > > > + (setq syntax-propertize--done 0) > > This is not sufficient. You want to `syntax-ppss-flush-cache`. We only need `eval` because I'm confused about the handling of macros -- I have some code in progress to fix this. As for why we need to change `syntax-propertize-function`, that's the core of the issue with `xref-find-references`. In the current patch, the wrapper for the standard `xref-backend-references` gathers file extensions and also tests whether the search string begins and/or ends with a non-word, non-symbol character. In `xref-references-in-directory` the only hits offered to the user match (format "\\_<%s\\_>" ...), so I create a bespoke `syntax-propertize-function` to ensure that the search string matches that format. (Actually, I would need to improve that to cope with searches for "\command" in code that looks like "\let\command\othercommand" -- even when the "\" has the right syntax the search fails because the "t" in "let" doesn't.) My mental model for `syntax-propertize` was/is insufficient, as you point out, so your improvement ensures that buffers return to the status quo ante after the search is complete, but it's still an open question whether we want to do this at all. I see at least 3 options: 1. The maximalist approach, which tries to ensure that any TeX symbol may be searched for successfully, even if the syntax of its components is inconvenient. My patch is a (faulty) attempt at this. 2. The minimalist approach, providing no bespoke `syntax-propertize-function`, and accepting failure when searching some strings, especially strings which aren't offered up by default. (In the above example, "command" would be the default offered up, so manual intervention is needed to search for "\command".) In this case I'd be very keen to have the expl3 "_" and ":" code actually in `syntax-propertize`, because then searches for expl3 constructs (without the "\") would work. (I'd also be very keen on having something similar in AUCTeX, though their current method works fine in most files.) 3. The non-standard approach, the `tex-etags` backend calling a variant of `project-find-regexp` instead of `xref-backend-references` when someone presses M-?. We could supply file extensions to search, as now, and allow the choice of projects and/or directories, as now, but the output will always be very non-standard, more like `xref-backend-apropos` than `xref-backend-references`. The syntax of the search string won't matter, and the problem will be "too many hits" rather than "too few or none". If you have any thoughts on the matter I'd be all ears. > > +(add-to-list 'auto-mode-alist '("\\.[tT]e[xX]\\'" . latex-mode) t) > > Maybe I have not followed the whole discussion closely enough, but at > least to me the above "soon" is very unclear. > I'll assume that this code will be removed before we install the patch. > If not, please explain in the comment why this specific hack is needed > and how it works. As soon as AUCTeX has "*.[tT]e[xX]" in its contributions to `semantic-symref-filepattern-alist` this will be redundant. As it stands, not searching *.tex files for symbols in LaTeX-mode buffers is kind of terrible. > > +;; Setup AUCTeX modes (for testing purposes only). > > + > > +(add-hook 'TeX-mode-hook #'tex-set-auctex-xref-backend) > > + > > +(defun tex-set-auctex-xref-backend () > > + (add-hook 'xref-backend-functions #'tex--xref-backend nil t)) > > I assume this will be sent to AUCTeX and is not meant to be in > `tex-mode.el`, right? Yes. Please assume I agree with all of your other corrections and clarifications, and that I'll modify the patch accordingly. Once again, thank you for the careful review, and my apologies for occupying too much of your time. Best, David. On Fri, 3 May 2024 at 15:11, Stefan Monnier wrote: > > Hi, > > Apparently I'm the `tex-mode.el` guy, so I tried to take a look. > > > diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el > > index 97c950267c6..d990a2dbfa9 100644 > > --- a/lisp/textmodes/tex-mode.el > > +++ b/lisp/textmodes/tex-mode.el > > @@ -695,7 +696,25 @@ tex-verbatim-environments > > ("\\\\\\(?:end\\|begin\\) *\\({[^\n{}]*}\\)" > > (1 (ignore > > (tex-env-mark (match-beginning 0) > > - (match-beginning 1) (match-end 1)))))))) > > + (match-beginning 1) (match-end 1))))) > > + ;; The next two rules change the syntax of `:' and `_' in expl3 > > + ;; constructs, so that `tex-font-lock-suscript' can fontify them > > + ;; more accurately. > > + ((concat "\\(\\(?:[\\\\[:space:]{]_\\|" > > + "[\\\\{[:space:]][^][_[:space:][:cntrl:][:digit:]\\\\{}()/=]+\\)" > > + "\\(?:_+\\(?:[^][[:space:][:cntrl:][:digit:]:\\\\{}()/#_=]+\\|" > > + "#+[1-9]\\)\\)+\\)\\([:_]?\\)") > > Can you add in the comment some URL pointing to some relevant expl3 > documentation which "explains" why the above regexp makes sense? > Also I don't clearly see how the above regexp distinguishes expl3 code > from "normal" LaTeX code, so the comment should say something about it. > > Side note: I'd avoid [:space:] whose exact meaning is rarely quite what > we need. > Side note: backslash doesn't need to be backslashed in [...]. > > > + (1 (ignore > > + (let* ((expr (buffer-substring-no-properties (match-beginning 1) > > + (match-end 1))) > > + (list (seq-positions expr ?_))) > > + (dolist (pos list) > > + (put-text-property (+ pos (match-beginning 1)) > > + (1+ (+ pos (match-beginning 1))) > > + 'syntax-table (string-to-syntax "_")))))) > > + (2 "_")) > > + ("\\\\[[:alpha:]]+\\(:\\)[[:alpha:][:space:]\n]" > > + (1 "_"))))) > > Currently we "skip" inappropriate underscores via > `tex-font-lock-match-suscript` and/or by adding a particular `face` text > property rather than via `syntax-table/propertize`. > > For algorithmic reasons, it's better to minimize the work done in > `syntax-propertize-function` as much as possible (font-lock is more lazy > than `syntax-propertize`), so I recommend you try and moving the above > to font-lock rules. > > > +(defvar tex-esc-and-group-chars '(?\\ ?{ ?}) > > + "The current TeX escape and grouping characters. > > I recommend you backslash escape the { and } above (although it's not > indispensable, `emacs-lisp-mode` will parse the code better). > More importantly, the docstring doesn't explain what this list > means/does. E.g. does the order matter? Can it be longer than 3 elements? > > From the current docstring I can't guess what would be the consequence > of adding/removing elements to/from this list. > > > +;; Populate `semantic-symref-filepattern-alist' for the in-tree modes; > > +;; AUCTeX is doing the same for its modes. > > +(defvar semantic-symref-filepattern-alist) > > +(with-eval-after-load 'semantic/symref/grep > > + (push '(latex-mode "*.[tT]e[xX]" "*.ltx" "*.sty" "*.cl[so]" > > + "*.bbl" "*.drv" "*.hva") > > + semantic-symref-filepattern-alist) > > + (push '(plain-tex-mode "*.[tT]e[xX]" "*.ins") > > + semantic-symref-filepattern-alist) > > + (push '(doctex-mode "*.dtx") semantic-symref-filepattern-alist)) > > We know `semantic-symref-filepattern-alist` will exist when > `semantic/symref/grep` is loaded, but not before, so I'd put the > `defvar` inside the `with-eval-after-load`. > > > +;; Setup AUCTeX modes (for testing purposes only). > > + > > +(add-hook 'TeX-mode-hook #'tex-set-auctex-xref-backend) > > + > > +(defun tex-set-auctex-xref-backend () > > + (add-hook 'xref-backend-functions #'tex--xref-backend nil t)) > > I assume this will be sent to AUCTeX and is not meant to be in > `tex-mode.el`, right? > > > +;; `xref-find-references' currently may need this when called from a > > +;; latex-mode buffer in order to search files or buffers with a .tex > > +;; suffix (including the buffer from which it has been called). We > > +;; append it to `auto-mode-alist' so as not to interfere with the usual > > +;; mode-setting apparatus. Changes here and in AUCTeX should soon > > +;; render it unnecessary. > > +(add-to-list 'auto-mode-alist '("\\.[tT]e[xX]\\'" . latex-mode) t) > > Maybe I have not followed the whole discussion closely enough, but at > least to me the above "soon" is very unclear. > I'll assume that this code will be removed before we install the patch. > If not, please explain in the comment why this specific hack is needed > and how it works. > > > +(cl-defmethod xref-backend-references ((_backend (eql 'tex-etags)) identifier) > > + "Find references of IDENTIFIER in TeX buffers and files." > > + (require 'semantic/symref/grep) > > + (let (bufs texbufs > > + (mode major-mode)) > > + (dolist (buf (buffer-list)) > > + (if (eq (buffer-local-value 'major-mode buf) mode) > > + (push buf bufs) > > + (when (string-match-p ".*\\.[tT]e[xX]" (buffer-name buf)) > > + (push buf texbufs)))) > > + (unless (seq-set-equal-p tex--buffers-list bufs) > > + (let* ((amalist (tex--collect-file-extensions)) > > + (extlist (alist-get mode semantic-symref-filepattern-alist)) > > + (extlist-new (seq-uniq > > + (seq-union amalist extlist #'string-match-p)))) > > After sinking the `defvar` above, you'll need to add a new `defvar` for > `semantic-symref-filepattern-alist` just after the `require`. > > > + (setq-local syntax-propertize-function > > + (eval > > + `(tex-xref-syntax-function > > + ,identifier ,beg ,end))) > > Why do we need to change `syntax-propertize-function` and why do we need > `eval`? > > > + (setq syntax-propertize--done 0) > > This is not sufficient. You want to `syntax-ppss-flush-cache`. > > > Stefan > --000000000000a3763c0617dcfada Content-Type: text/x-patch; charset="US-ASCII"; name="0001-expl-region.patch" Content-Disposition: attachment; filename="0001-expl-region.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lvwecdhu0 ZGlmZiAtLWdpdCBhL2xpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsIGIvbGlzcC90ZXh0bW9kZXMv dGV4LW1vZGUuZWwKaW5kZXggZDk5MGEyZGJmYTkuLmIyYTY0MTZmMzc5IDEwMDY0NAotLS0gYS9s aXNwL3RleHRtb2Rlcy90ZXgtbW9kZS5lbAorKysgYi9saXNwL3RleHRtb2Rlcy90ZXgtbW9kZS5l bApAQCAtNzA1LDE3ICs3MDUsMzYgQEAgdGV4LXZlcmJhdGltLWVudmlyb25tZW50cwogICAgICAg ICAgICAgICAiXFwoPzpfK1xcKD86W15dW1s6c3BhY2U6XVs6Y250cmw6XVs6ZGlnaXQ6XTpcXFxc e30oKS8jXz1dK1xcfCIKICAgICAgICAgICAgICAgIiMrWzEtOV1cXClcXCkrXFwpXFwoWzpfXT9c XCkiKQogICAgICAgKDEgKGlnbm9yZQotICAgICAgICAgIChsZXQqICgoZXhwciAoYnVmZmVyLXN1 YnN0cmluZy1uby1wcm9wZXJ0aWVzIChtYXRjaC1iZWdpbm5pbmcgMSkKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobWF0Y2gtZW5kIDEpKSkK LSAgICAgICAgICAgICAgICAgKGxpc3QgKHNlcS1wb3NpdGlvbnMgZXhwciA/XykpKQotICAgICAg ICAgICAgKGRvbGlzdCAocG9zIGxpc3QpCi0gICAgICAgICAgICAgIChwdXQtdGV4dC1wcm9wZXJ0 eSAoKyBwb3MgKG1hdGNoLWJlZ2lubmluZyAxKSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICgxKyAoKyBwb3MgKG1hdGNoLWJlZ2lubmluZyAxKSkpCi0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAnc3ludGF4LXRhYmxlIChzdHJpbmctdG8tc3ludGF4ICJfIikpKSkp KQorICAgICAgICAgICh3aGVuIHRleC1leHBsLXJlZ2lvbi1saXN0CisgICAgICAgICAgICAobGV0 ICgobWF0Y2ggKG1hdGNoLWJlZ2lubmluZyAxKSkpCisgICAgICAgICAgICAgIChjYXRjaCAncmVz dWx0CisJICAgICAgICAoZG9saXN0IChyYW5nZSB0ZXgtZXhwbC1yZWdpb24tbGlzdCkKKwkgICAg ICAgICAgKGFuZCAoPiBtYXRjaCAoY2FyIHJhbmdlKSkKKwkgICAgICAgICAgICAgICAoPCBtYXRj aCAoY2RyIHJhbmdlKSkKKyAgICAgICAgICAgICAgICAgICAgICAgKGxldCogKChleHByIChidWZm ZXItc3Vic3RyaW5nLW5vLXByb3BlcnRpZXMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAobWF0Y2gtYmVnaW5uaW5nIDEpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKG1hdGNoLWVuZCAxKSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo bGlzdCAoc2VxLXBvc2l0aW9ucyBleHByID9fKSkpCisgICAgICAgICAgICAgICAgICAgICAgICAg KGRvbGlzdCAocG9zIGxpc3QpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAocHV0LXRleHQt cHJvcGVydHkgKCsgcG9zIChtYXRjaC1iZWdpbm5pbmcgMSkpCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKDErICgrIHBvcyAobWF0Y2gtYmVnaW5uaW5nIDEp KSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc3ludGF4 LXRhYmxlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHN0 cmluZy10by1zeW50YXggIl8iKSkpKQorICAgICAgICAgICAgICAgICAgICAgICAodGhyb3cgJ3Jl c3VsdCB0KSkpKSkpKSkKICAgICAgICgyICJfIikpCiAgICAgICgiXFxcXFtbOmFscGhhOl1dK1xc KDpcXClbWzphbHBoYTpdWzpzcGFjZTpdXG5dIgogICAgICAgKDEgIl8iKSkpKSkKIAorKGRlZnZh ci1sb2NhbCB0ZXgtZXhwbC1yZWdpb24tbGlzdCBuaWwpCisKKyhkZWZ1biB0ZXgtZXhwbC1yZWdp b24tc2V0IChfYmVnIF9lbmQpCisgIChzZXRxIHRleC1leHBsLXJlZ2lvbi1saXN0IG5pbCkKKyAg KGdvdG8tY2hhciAocG9pbnQtbWluKSkKKyAgKHdoaWxlIChyZS1zZWFyY2gtZm9yd2FyZCAiXFxF eHBsU3ludGF4T24iIG5pbCB0KQorICAgIChsZXQgKChuZXctYmVnIChwb2ludCkpCisgICAgICAg ICAgKG5ldy1lbmQgKHJlLXNlYXJjaC1mb3J3YXJkICJcXEV4cGxTeW50YXhPZmYiIG5pbCB0KSkp CisgICAgICAoYWRkLXRvLWxpc3QgJ3RleC1leHBsLXJlZ2lvbi1saXN0IChjb25zIG5ldy1iZWcg bmV3LWVuZCkgdCkpKSkKKwogKGRlZnVuIHRleC1lbnYtbWFyayAoY21kIHN0YXJ0IGVuZCkKICAg KHdoZW4gKD0gY21kIChsaW5lLWJlZ2lubmluZy1wb3NpdGlvbikpCiAgICAgKGxldCAoKGFyZyAo YnVmZmVyLXN1YnN0cmluZy1uby1wcm9wZXJ0aWVzICgxKyBzdGFydCkgKDEtIGVuZCkpKSkKQEAg LTEzMDgsNiArMTMyNyw4IEBAIHRleC1jb21tb24taW5pdGlhbGl6YXRpb24KICAgICAgICAgICAg ICAgICAjJ3RleC0tcHJldHRpZnktc3ltYm9scy1jb21wb3NlLXApCiAgIChzZXRxLWxvY2FsIHN5 bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uCiAJICAgICAgKHN5bnRheC1wcm9wZXJ0aXplLXJ1bGVz IGxhdGV4LXN5bnRheC1wcm9wZXJ0aXplLXJ1bGVzKSkKKyAgKGFkZC1ob29rICdzeW50YXgtcHJv cGVydGl6ZS1leHRlbmQtcmVnaW9uLWZ1bmN0aW9ucworICAgICAgICAgICAgICAgICAgIyd0ZXgt ZXhwbC1yZWdpb24tc2V0IG5pbCB0KQogICA7OyBUQUJzIGluIHZlcmJhdGltIGVudmlyb25tZW50 cyBkb24ndCBkbyB3aGF0IHlvdSB0aGluay4KICAgKHNldHEtbG9jYWwgaW5kZW50LXRhYnMtbW9k ZSBuaWwpCiAgIDs7IFNldCB1cCB4cmVmIGJhY2tlbmQgaW4gVGVYIGJ1ZmZlcnMuCg== --000000000000a3763c0617dcfada-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 09 May 2024 03:01:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Monnier , David Fussner Cc: 53749@debbugs.gnu.org, Ikumi Keita , Arash Esbati , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171522364426799 (code B ref 53749); Thu, 09 May 2024 03:01:02 +0000 Received: (at 53749) by debbugs.gnu.org; 9 May 2024 03:00:44 +0000 Received: from localhost ([127.0.0.1]:52333 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s4u1U-0006yB-7Y for submit@debbugs.gnu.org; Wed, 08 May 2024 23:00:44 -0400 Received: from forward502c.mail.yandex.net ([178.154.239.210]:33302) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s4u1P-0006y5-1A for 53749@debbugs.gnu.org; Wed, 08 May 2024 23:00:43 -0400 Received: from mail-nwsmtp-smtp-production-main-37.myt.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-37.myt.yp-c.yandex.net [IPv6:2a02:6b8:c12:3c20:0:640:1ff8:0]) by forward502c.mail.yandex.net (Yandex) with ESMTPS id 8EEA961652; Thu, 9 May 2024 06:00:11 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-37.myt.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id 60QdZpUVsGk0-BjCDg0aQ; Thu, 09 May 2024 06:00:10 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1715223610; bh=n12zuaHY1mysXW7pejM0G/Fz6YvCU/QPAJjGccrIUIU=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=Kb5KgkMUFwjqOjjcoITXnfkwqvsAnK2yHtNrDAXtb/gLoyKEEtcpuvKoY+rAtthqW mp0r9YXle4hAdFwIQSBwtYBxQ9qQOgPppxEPAHuiWh2G2K8q9OMcN/CDiS9T1k64+P U98j+94JtNUMc3arQRS3drR7+dYb8R/fBzyifToY= Authentication-Results: mail-nwsmtp-smtp-production-main-37.myt.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailfauth.nyi.internal (Postfix) with ESMTP id 3C4C51200032; Wed, 8 May 2024 23:00:06 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute6.internal (MEProxy); Wed, 08 May 2024 23:00:06 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvdefuddgiedvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffhvfevfhgjtgfgsehtkeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnheptdejgfffheetgfevieefffdujeektefgvedvhedtffehveffvdehleetuefg udelnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 8 May 2024 23:00:03 -0400 (EDT) Message-ID: <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> Date: Thu, 9 May 2024 06:00:02 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird From: Dmitry Gutov References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> Content-Language: en-US In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On 07/05/2024 05:27, Dmitry Gutov wrote: > On 03/05/2024 16:42, Stefan Monnier via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: >>> Thanks for looking over the patch. Here's the recipe for the purported >>> bug in xref.el: >> The problem stems from xref.el's constant abuse of >> `inhibit-modification-hooks`.  Binding this var to t should be done only >> in exceptional circumstances and should ideally be accompanied by a >> comment explaining why it's necessary. > > Well, the reason is performance: I've tried to wring out the most out of > it, given that we have to parse the buffer for syntax in Elisp, and > that'll always have a certain overhead. > > The difference between inhibiting and not could be up to 20% of runtime. > > David's fix makes things slower (just due to having us do the necessary > work), but still has an edge over having no inhibit-modification-hooks. > > That remaining improvement is around 4-7% in my testing, though, so > maybe it's the point where we should prioritize simplicity. For now, I've pushed a fix in 86187d43e2d which seems to handle David's scenario and address your review comment as well. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 09 May 2024 06:40:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org, Ikumi Keita , Arash Esbati , Stefan Kangas , Tassilo Horn , Eli Zaretskii , Stefan Monnier Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171523674914936 (code B ref 53749); Thu, 09 May 2024 06:40:01 +0000 Received: (at 53749) by debbugs.gnu.org; 9 May 2024 06:39:09 +0000 Received: from localhost ([127.0.0.1]:53381 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s4xQq-0003sq-MZ for submit@debbugs.gnu.org; Thu, 09 May 2024 02:39:09 -0400 Received: from mail-pl1-x62d.google.com ([2607:f8b0:4864:20::62d]:61553) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s4xQo-0003sP-4C for 53749@debbugs.gnu.org; Thu, 09 May 2024 02:39:07 -0400 Received: by mail-pl1-x62d.google.com with SMTP id d9443c01a7336-1ed904c2280so2917865ad.2 for <53749@debbugs.gnu.org>; Wed, 08 May 2024 23:38:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1715236714; x=1715841514; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Xf5HSIsrmJ8f17pLsVSc85UxUAYMSIOZiVBmLoDAIxY=; b=jQ9aEHs2QEw0xEkqwIL8DJg1xa3R2g/7JZImpP0n95ji/sqSvB5v1yCCPI/wVNOOHu BGJugXZw7nrEoZnuaI9Z1aSxkDJ6KfqYr37ldI2HxMsaOpwtCpUWPC0xdhC8Yq8exVWt 5E8tKLWivglSQJKYnHFhMDryj/r6BUyVaAvkSdmk1LYA5DZolBP7aPKr46o8wSmiHNfH wWocpPpsX9hSPUgAr+E60MCVUzbRltEzF3uhJzMEFWoQrNdczvFittXoGvAhJnErjyge ++gB2gpLafK3ynDPUUhNiuZ6qf/mx+kGx7M6VNmBPtOEDIHCZTLqSNcoSzE/pcZ4DsAs z8vQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715236714; x=1715841514; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Xf5HSIsrmJ8f17pLsVSc85UxUAYMSIOZiVBmLoDAIxY=; b=HTzhiTf5GlPe3zwsiNxMeCs8adjkl72iI53rxHNR9nswPHUpOm3eRZvCXMczJ29882 4fPlnfOkNnxhAi7+G+bdWw8SK7Ye+grDRmIpUfFCFaFC4lsprcf1Zyo9TPTAsoNE8mNZ sBQBweT2wcUSz4B3SaOToqKZtT6C1Xc2nDhSEOeow0jL7pyjFajMHROi2oXGyLRdhRX0 /P0zC7k3PkoVevqUmWZ5T1DsNmsrN7pxYg/mF3aUuoiOuOZCuyuw8nuzixpAtbFg2eXj b8oWOd4jo1Sz5VPaPWCMLafRWpBxiuWxXHtZyIZpL/0+SgExTW2BKAeqPfKHUtWLGSWI ZBpQ== X-Forwarded-Encrypted: i=1; AJvYcCXhhxzoTdlD5l7Ib/4jm+ep3SCIa/swHu3kk9jYOkkpOZBMvVPhs3zbyrgdAXHYcyAJCKtT3SGAXVWT6UI74v7gVBmZLKo= X-Gm-Message-State: AOJu0YxNBzWYvJfeDcnctTumj8Tx8xFrCDns9DZ7u8/E5K5YCS4rd1TE ZT0rxA0dpBxfiuJbffSBADcB0+bfjuuJJB7sEKxkJk5mBQNuSyOe9Ueosr40IbG4lrzWvnKohXK hYkAMPfl22+Cu3ZRhoz5P6fVpMTk= X-Google-Smtp-Source: AGHT+IG3MuPIbTvypdFVQOn57jIgaoYrY4xSr22XWiq0nM9kNBqHZXcjawJ08konXyH6rQTBJp90acoFUlZP375zMCc= X-Received: by 2002:a17:902:f681:b0:1ed:867:9ea0 with SMTP id d9443c01a7336-1eeb09959b0mr48124135ad.57.1715236714278; Wed, 08 May 2024 23:38:34 -0700 (PDT) MIME-Version: 1.0 References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> In-Reply-To: <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> From: David Fussner Date: Thu, 9 May 2024 07:38:22 +0100 Message-ID: Content-Type: multipart/alternative; boundary="0000000000000f79e30617ffabba" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --0000000000000f79e30617ffabba Content-Type: text/plain; charset="UTF-8" Thank you, Dmitry! I'll run tests later today and get back to you. David. On Thu, 9 May 2024, 04:00 Dmitry Gutov, wrote: > On 07/05/2024 05:27, Dmitry Gutov wrote: > > On 03/05/2024 16:42, Stefan Monnier via Bug reports for GNU Emacs, the > > Swiss army knife of text editors wrote: > >>> Thanks for looking over the patch. Here's the recipe for the purported > >>> bug in xref.el: > >> The problem stems from xref.el's constant abuse of > >> `inhibit-modification-hooks`. Binding this var to t should be done only > >> in exceptional circumstances and should ideally be accompanied by a > >> comment explaining why it's necessary. > > > > Well, the reason is performance: I've tried to wring out the most out of > > it, given that we have to parse the buffer for syntax in Elisp, and > > that'll always have a certain overhead. > > > > The difference between inhibiting and not could be up to 20% of runtime. > > > > David's fix makes things slower (just due to having us do the necessary > > work), but still has an edge over having no inhibit-modification-hooks. > > > > That remaining improvement is around 4-7% in my testing, though, so > > maybe it's the point where we should prioritize simplicity. > > For now, I've pushed a fix in 86187d43e2d which seems to handle David's > scenario and address your review comment as well. > --0000000000000f79e30617ffabba Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Thank you, Dmitry! I'll run tests later today and get= back to you.

David.=C2=A0

On Thu, 9 May 2024, 04:00 Dmitry Gutov, <dgutov@yandex.ru> wrote:
On 07/05/2024 05:27, Dmitry Gutov wrote:
> On 03/05/2024 16:42, Stefan Monnier via Bug reports for GNU Emacs, the=
> Swiss army knife of text editors wrote:
>>> Thanks for looking over the patch. Here's the recipe for t= he purported
>>> bug in xref.el:
>> The problem stems from xref.el's constant abuse of
>> `inhibit-modification-hooks`.=C2=A0 Binding this var to t should b= e done only
>> in exceptional circumstances and should ideally be accompanied by = a
>> comment explaining why it's necessary.
>
> Well, the reason is performance: I've tried to wring out the most = out of
> it, given that we have to parse the buffer for syntax in Elisp, and > that'll always have a certain overhead.
>
> The difference between inhibiting and not could be up to 20% of runtim= e.
>
> David's fix makes things slower (just due to having us do the nece= ssary
> work), but still has an edge over having no inhibit-modification-hooks= .
>
> That remaining improvement is around 4-7% in my testing, though, so > maybe it's the point where we should prioritize simplicity.

For now, I've pushed a fix in 86187d43e2d which seems to handle David&#= 39;s
scenario and address your review comment as well.
--0000000000000f79e30617ffabba-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 09 May 2024 10:51:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org, Ikumi Keita , Arash Esbati , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii , Stefan Monnier Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171525180824778 (code B ref 53749); Thu, 09 May 2024 10:51:02 +0000 Received: (at 53749) by debbugs.gnu.org; 9 May 2024 10:50:08 +0000 Received: from localhost ([127.0.0.1]:54586 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s51Lg-0006Ra-HI for submit@debbugs.gnu.org; Thu, 09 May 2024 06:50:08 -0400 Received: from mail-pf1-x42a.google.com ([2607:f8b0:4864:20::42a]:60527) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s51Lc-0006R8-0d for 53749@debbugs.gnu.org; Thu, 09 May 2024 06:50:03 -0400 Received: by mail-pf1-x42a.google.com with SMTP id d2e1a72fcca58-6ed3cafd766so705938b3a.0 for <53749@debbugs.gnu.org>; Thu, 09 May 2024 03:49:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1715251768; x=1715856568; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=WNAmcjmVJIqoI9BVWGA1fNYnTic5H8WSLVxJWWKmm6Y=; b=Y7tQdy39dK4+lNEcztfW8X+IQViOXeg2mEXWt2nHohAYCYOw1njD/cv+W7GKxx4Cpi TgP4LxOTNcEBDmGKjqH+lCAMytdxzDElAuWleRWAUES1jTH062KhlA8V3WdEB56OLpDR zLN/sYPb7rjugLjntvNvIf//dhALeHqEmM4JzW8MzmbqRQoUD2cxzgFashmgspeyh+op eCNX2UMJE+GQDlYzIcJhYZowQ9jj/wmOyujL4z+/p+iXNlPw0iEbBfbeUYKtw9zJvGBN d7frA3TCBj4QY/FJXP/AUkVJoPaDjoJ+UBhtR/l0I381qLvYDr8ROkzoaQ3gLu2Az8Rs u4ZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715251768; x=1715856568; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=WNAmcjmVJIqoI9BVWGA1fNYnTic5H8WSLVxJWWKmm6Y=; b=D8Kz8I1v9ZtJxVehUUq2wmsSadIk0Da4yu4l7UKvToIr1cDuwr+76zyfUJnXQJBv+e XAYLnUTYi69PZj8t8F5WVdY+vV+VMcSf+Ohoq0+baczQesK943DQBX1fyRs5FwfQkKJ3 xuKC/SQ0C4NM6rJzB3mvgZdgzDIqLHP7Igt8+IDCjyXSyfkt/065sKGGaJR2Pc40OaNW mRACA0UDMTYLmjNek395qrPEAOltJCGAz5Uc3zXiphhXNbSySOeKUIbovE9+tXyCpgPf jQCE8oxrkSLo6RjePJ9XOjT6N9u2LBfsHF5e5ws8bQxGRP0tLgAeT2B310O2a6yGdv6Z 6EAQ== X-Forwarded-Encrypted: i=1; AJvYcCVqqudIn14smGoeNHXwl0AWp/pNRkLtR0tvFZ7nX+lYkTYEJb0DdpuAAFck6ipvVZkzz85zYXUzIWJ8mbPEaSbMy6DJ4V8= X-Gm-Message-State: AOJu0Yx+1NLbAyCuo/eoO/P4HoLg5/2KUFPp4qP5PixQAAywLf2epyJS 7jg0IhGuGZRaVMt4IBdA2VK6o0tVHBnqJtSQrTnU44i/QSN8iIntnHkOnhY+gI4GrtXEE7EqbKE AGNQ3lYjvB7CxsRvGa64rBwzr9sA= X-Google-Smtp-Source: AGHT+IE9F2FUGMz10umrKpnHymx2Hv0GwoxlICFRBHu27Ht1ec5OomVfUacRIShCHoT+SV+o0XKEcHOtoSEGUcrcc+Q= X-Received: by 2002:a05:6a21:c91:b0:1a7:aabc:24ae with SMTP id adf61e73a8af0-1afc8d763efmr5544592637.18.1715251768288; Thu, 09 May 2024 03:49:28 -0700 (PDT) MIME-Version: 1.0 References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> In-Reply-To: <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> From: David Fussner Date: Thu, 9 May 2024 11:49:37 +0100 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Dmitry, All of my tests work well now, thank you. Best, David. On Thu, 9 May 2024 at 04:00, Dmitry Gutov wrote: > > On 07/05/2024 05:27, Dmitry Gutov wrote: > > On 03/05/2024 16:42, Stefan Monnier via Bug reports for GNU Emacs, the > > Swiss army knife of text editors wrote: > >>> Thanks for looking over the patch. Here's the recipe for the purported > >>> bug in xref.el: > >> The problem stems from xref.el's constant abuse of > >> `inhibit-modification-hooks`. Binding this var to t should be done only > >> in exceptional circumstances and should ideally be accompanied by a > >> comment explaining why it's necessary. > > > > Well, the reason is performance: I've tried to wring out the most out of > > it, given that we have to parse the buffer for syntax in Elisp, and > > that'll always have a certain overhead. > > > > The difference between inhibiting and not could be up to 20% of runtime. > > > > David's fix makes things slower (just due to having us do the necessary > > work), but still has an edge over having no inhibit-modification-hooks. > > > > That remaining improvement is around 4-7% in my testing, though, so > > maybe it's the point where we should prioritize simplicity. > > For now, I've pushed a fix in 86187d43e2d which seems to handle David's > scenario and address your review comment as well. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Stefan Monnier Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 13 May 2024 20:55:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org, Ikumi Keita , David Fussner , Arash Esbati , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17156336843049 (code B ref 53749); Mon, 13 May 2024 20:55:02 +0000 Received: (at 53749) by debbugs.gnu.org; 13 May 2024 20:54:44 +0000 Received: from localhost ([127.0.0.1]:34920 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s6ch1-0000n7-Op for submit@debbugs.gnu.org; Mon, 13 May 2024 16:54:44 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:27377) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s6cgz-0000n1-OX for 53749@debbugs.gnu.org; Mon, 13 May 2024 16:54:42 -0400 Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 2B81B4406AB; Mon, 13 May 2024 16:54:35 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1715633673; bh=ZWMWsjI2JLV1tc9Thg3P51foBc998uoEt1i252E81oY=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=N9sQ9ABi6Dn5le1CUh2GmBmSoTQbeSnxr82RFvGJ/rW5hmheYz6bnMbYNh1jupVIB bruZ1rit/VfyoICM6qpUCm61376lEeFNwF+uWOi8Mn7FEkZA9ikDWCU+eUgJX+SCqH MNkMaG6Xg1qiMER0+iTwPAVg/P7pdGv9wqpwnY5QZs9KdVLsw4IPHKXyKZHQ5HL8IM I8kNIJPD9YVfUnOC1e4To13fdpW0O80NeCt2lN+wV+YM6+Q1dXJ4FgVvaLRXWmfOil aJWZkF+TI7GyujiiwJOG+9K1RnD8i0JnWi2lgq8/1eUteE8jo4fKGgAHOyUNMo3rU/ y1jPETlML3gOw== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 8039C44444A; Mon, 13 May 2024 16:54:33 -0400 (EDT) Received: from alfajor (bras-base-mtrlpq0776w-grc-16-65-93-169-175.dsl.bell.ca [65.93.169.175]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 598D212024C; Mon, 13 May 2024 16:54:33 -0400 (EDT) From: Stefan Monnier In-Reply-To: <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> (Dmitry Gutov's message of "Thu, 9 May 2024 06:00:02 +0300") Message-ID: References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> Date: Mon, 13 May 2024 16:54:32 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > For now, I've pushed a fix in 86187d43e2d which seems to handle David's > scenario and address your review comment as well. The let-binding is done outside of `with-current-buffer`, so it relies on the fact (itself problematic) that `inhibit-modification-hooks` is not buffer-local. Would it be OK to use a patch like the one below? IIUC, in the `syntax-needed` case, the let-binding of `inhibit-modification-hooks` is just not useful very (4-7% is not worth the trouble), so its purpose is to speed up the other case. Did I understand it right? Also, what about the other two bindings of `inhibit-modification-hooks`? Stefan diff --git a/lisp/progmodes/xref.el b/lisp/progmodes/xref.el index f9faec1b474..214e9cb6c09 100644 --- a/lisp/progmodes/xref.el +++ b/lisp/progmodes/xref.el @@ -1282,7 +1282,7 @@ xref--show-common-initialize (erase-buffer) (setq overlay-arrow-position nil) (xref--insert-xrefs xref-alist) - (add-hook 'post-command-hook 'xref--apply-truncation nil t) + (add-hook 'post-command-hook #'xref--apply-truncation nil t) (goto-char (point-min)) (setq xref--original-window (assoc-default 'window alist) xref--original-window-intent (assoc-default 'display-action alist)) @@ -2112,10 +2112,7 @@ xref--convert-hits (defun xref--collect-matches (hit regexp tmp-buffer syntax-needed) (pcase-let* ((`(,line ,file ,text) hit) (file (and file (concat xref--hits-remote-id file))) - (buf (xref--find-file-buffer file)) - ;; This is fairly dangerouns, but improves performance - ;; for large lists, see https://debbugs.gnu.org/53749#227 - (inhibit-modification-hooks t)) + (buf (xref--find-file-buffer file))) (if buf (with-current-buffer buf (save-excursion @@ -2130,6 +2130,9 @@ ;; Using the temporary buffer is both a performance and a buffer ;; management optimization. (with-current-buffer tmp-buffer + ;; This let is fairly dangerouns, but improves performance + ;; for large lists, see https://debbugs.gnu.org/53749#227 + (let ((inhibit-modification-hooks t)) (erase-buffer) (when (and syntax-needed (not (equal file xref--temp-buffer-file-name))) @@ -2144,7 +2147,7 @@ (setq-local xref--temp-buffer-file-name file) (setq-local inhibit-read-only t) (erase-buffer)) - (insert text) + (insert text)) (goto-char (point-min)) (when syntax-needed (syntax-ppss-flush-cache (point))) From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 14 May 2024 21:26:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Monnier Cc: 53749@debbugs.gnu.org, Ikumi Keita , David Fussner , Arash Esbati , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171572191121098 (code B ref 53749); Tue, 14 May 2024 21:26:01 +0000 Received: (at 53749) by debbugs.gnu.org; 14 May 2024 21:25:11 +0000 Received: from localhost ([127.0.0.1]:41479 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s6ze2-0005UE-R1 for submit@debbugs.gnu.org; Tue, 14 May 2024 17:25:11 -0400 Received: from forward501c.mail.yandex.net ([178.154.239.209]:44302) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s6zdz-0005U7-2B for 53749@debbugs.gnu.org; Tue, 14 May 2024 17:25:09 -0400 Received: from mail-nwsmtp-smtp-production-main-85.iva.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-85.iva.yp-c.yandex.net [IPv6:2a02:6b8:c0c:b1a0:0:640:e983:0]) by forward501c.mail.yandex.net (Yandex) with ESMTPS id AFBB461424; Wed, 15 May 2024 00:24:34 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-85.iva.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id TOnPHUBCZa60-ub8Hks1u; Wed, 15 May 2024 00:24:33 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1715721873; bh=npKb8gXDgTKlxOOUWnPSoA4Xqz7JZyfV9PZP59i2DFs=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=FyMU2wrsLornY5Jg6N70A4afp4cydLaQi8vLJiEu/b6RoMOBJ5tdjOdSXzxl9X7rS bFhCgDa8fTjixrK+aLXZF/y29iyg2MUZHiEQbs2+bSRCQfvEQgEtuDnrW9SBUTA9EL e2qJY2LWqbYcJxbh6Anzc+uWylckXkrQI1medGoU= Authentication-Results: mail-nwsmtp-smtp-production-main-85.iva.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailfauth.nyi.internal (Postfix) with ESMTP id 543DB1200032; Tue, 14 May 2024 17:24:29 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute1.internal (MEProxy); Tue, 14 May 2024 17:24:29 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvdegiedgudehlecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefkffggfgfuvfevfhfhjggtgfesthejredttddvjeenucfhrhhomhepffhm ihhtrhihucfiuhhtohhvuceoughguhhtohhvseihrghnuggvgidrrhhuqeenucggtffrrg htthgvrhhnpeefleffhfejhfeghedtfeehtdeiheekheetteefleejkefhgeetiedvhefg jeeuveenucffohhmrghinhepghhnuhdrohhrghenucevlhhushhtvghrufhiiigvpedtne curfgrrhgrmhepmhgrihhlfhhrohhmpegughhuthhovhdomhgvshhmthhprghuthhhphgv rhhsohhnrghlihhthidqudeffeefleelheehvddqvdelgeejjeejjeeiqdgughhuthhovh eppeihrghnuggvgidrrhhusehfrghsthhmrghilhdrtghomh X-ME-Proxy: Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 14 May 2024 17:24:26 -0400 (EDT) Message-ID: <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> Date: Wed, 15 May 2024 00:24:24 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> Content-Language: en-US From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On 13/05/2024 23:54, Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: >> For now, I've pushed a fix in 86187d43e2d which seems to handle David's >> scenario and address your review comment as well. > > The let-binding is done outside of `with-current-buffer`, so it relies > on the fact (itself problematic) that `inhibit-modification-hooks` is > not buffer-local. Good point. > Would it be OK to use a patch like the one below? Sure, thank you. Pushed. > IIUC, in the `syntax-needed` case, the let-binding of > `inhibit-modification-hooks` is just not useful very (4-7% is not worth > the trouble), so its purpose is to speed up the other case. 4-10% is the improvement for both cases (the "syntax needed" and not). I could be on the fence whether it's "not useful" - on the one hand 4% might not sound like much - on the other we already have this bit of improvement which has no known bugs. And when you combine a few of such performance hacks, the difference gets more noticeable. Also, I'm eyeing another performance improvement (simplifying file type detection) - the call to set-auto-mode is not fast. Simply commenting this call out improves the performance by 4x or so - but we'll need a simpler version of it instead, of course. And with the above change (commenting out the set-auto-mode call), the difference that the inhibit-modification-hooks hack makes is amplified: it can get up to 20%. Ultimately it'll be somewhere in between, but this sounds better, right? > Also, what about the other two bindings of `inhibit-modification-hooks`? The other two are used while the contents of the Xref buffer are printed (or re-printed), so there's none of the syntax-ppss complications there. The performance difference is 8.5% in my last measurement. > > Stefan > > > diff --git a/lisp/progmodes/xref.el b/lisp/progmodes/xref.el > index f9faec1b474..214e9cb6c09 100644 > --- a/lisp/progmodes/xref.el > +++ b/lisp/progmodes/xref.el > @@ -1282,7 +1282,7 @@ xref--show-common-initialize > (erase-buffer) > (setq overlay-arrow-position nil) > (xref--insert-xrefs xref-alist) > - (add-hook 'post-command-hook 'xref--apply-truncation nil t) > + (add-hook 'post-command-hook #'xref--apply-truncation nil t) > (goto-char (point-min)) > (setq xref--original-window (assoc-default 'window alist) > xref--original-window-intent (assoc-default 'display-action alist)) > @@ -2112,10 +2112,7 @@ xref--convert-hits > (defun xref--collect-matches (hit regexp tmp-buffer syntax-needed) > (pcase-let* ((`(,line ,file ,text) hit) > (file (and file (concat xref--hits-remote-id file))) > - (buf (xref--find-file-buffer file)) > - ;; This is fairly dangerouns, but improves performance > - ;; for large lists, see https://debbugs.gnu.org/53749#227 > - (inhibit-modification-hooks t)) > + (buf (xref--find-file-buffer file))) > (if buf > (with-current-buffer buf > (save-excursion > @@ -2130,6 +2130,9 @@ > ;; Using the temporary buffer is both a performance and a buffer > ;; management optimization. > (with-current-buffer tmp-buffer > + ;; This let is fairly dangerouns, but improves performance > + ;; for large lists, see https://debbugs.gnu.org/53749#227 > + (let ((inhibit-modification-hooks t)) > (erase-buffer) > (when (and syntax-needed > (not (equal file xref--temp-buffer-file-name))) > @@ -2144,7 +2147,7 @@ > (setq-local xref--temp-buffer-file-name file) > (setq-local inhibit-read-only t) > (erase-buffer)) > - (insert text) > + (insert text)) > (goto-char (point-min)) > (when syntax-needed > (syntax-ppss-flush-cache (point))) > > > > From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 15 May 2024 15:49:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Monnier Cc: 53749@debbugs.gnu.org, Ikumi Keita , Tassilo Horn , Arash Esbati , stefankangas@gmail.com, Dmitry Gutov , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171578812913249 (code B ref 53749); Wed, 15 May 2024 15:49:01 +0000 Received: (at 53749) by debbugs.gnu.org; 15 May 2024 15:48:49 +0000 Received: from localhost ([127.0.0.1]:42790 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s7Gs2-0003Rb-UZ for submit@debbugs.gnu.org; Wed, 15 May 2024 11:48:49 -0400 Received: from mail-pf1-f181.google.com ([209.85.210.181]:43228) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s7Grz-0003RT-5L for 53749@debbugs.gnu.org; Wed, 15 May 2024 11:48:45 -0400 Received: by mail-pf1-f181.google.com with SMTP id d2e1a72fcca58-6f457853950so5291754b3a.0 for <53749@debbugs.gnu.org>; Wed, 15 May 2024 08:48:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1715788055; x=1716392855; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=wG28VNEHsmBOfD7gbh6Js0uuuI5QZYQmtwXx8QNFuEQ=; b=GiRaRbM5YevgsU+PAwU1o4RgPyGlu9Ejw0pi7uI5EPf0Awi3eIVLgmnZmK3RBwCjfq hcaovSKP5uScHGx2a9Hi6oZabrNfQcmcHoa0YCrZ/wK7c81rNKyReUDoP9EWGlZ+CfcG CYrf2MHXzDr/EGikCp1akSdmTrx0drYUM1u4V8g2gOP770sTfbWSPVk3MZ8mMe2DUesK u6VSRrnxDgiUyUA3iUz6YEK3gu10gcbDASK55wWpKuEOBI62960OP05i1PqO+3OocwpW pXSRYWu0r4iVEdoEQGtGDsmJd0hz+4rO/voQUkokeaUcq+M/l/GXu6STNoWBhlmbu5ZX 9l8g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715788055; x=1716392855; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=wG28VNEHsmBOfD7gbh6Js0uuuI5QZYQmtwXx8QNFuEQ=; b=kGs1ujmhUDFOOl7XKxLfZBoICSGSq6Oe3NpJlfWo+CDxjHxR+uNA/K6U5kuTGVf9Ef KU1vqVuESmjT788nW6a6wr1qSPv6gveAvQQyLHvuSnmaseSGwCwPkKD0GkWVckicDHa8 umkyLYoXic6uyI/FU61hqjsnYRhwFwLB6h2zeVUMVneety7ZT7i+ZrDWrb8pzCBL9OOj alaJjWA9W7x/ou3eKPRrO5OayrMh+CzANALeovvpE/H82qyfTJwAqgaoJCQsrGFUUcek Nd7F5nheIcfjTLH6jRqWHW5dGYUfGrUZBbnzfS9I27EpNBqAlGpTgtWmX0fcrFm20hLs 8vVg== X-Forwarded-Encrypted: i=1; AJvYcCXspdrr5+bLwok69lc6lnXngtyJg/RWz+tD9ED8o+xxjSAFzrA74pdRT2K92ArNYozUHeVDvkpxy8UO6cXYpZBQaLIUu6o= X-Gm-Message-State: AOJu0YywF6B+0Il9CmNpmETo+1e+koJp4BHok4s9Bq1YDKyy1I3HSSYd VSmjCi0wCBpQyKLaqJHmCQ3NJMzjgEZaVqtB1Ghwnz1E5p/NYuW5azpUppIxFZ+4JAmHz+p00mO slyQanld1Z2XTNvysUkPr6GLSN58= X-Google-Smtp-Source: AGHT+IGnwhPLnCUZWy65ZvMBqck5gOzZXq/aBodpiRX8T9dv3a7Cz1b1TYfZKDJgQE/8h17i4e2G788/Par0JzZYo/Y= X-Received: by 2002:a17:90b:4f8d:b0:2a2:fec9:1bbd with SMTP id 98e67ed59e1d1-2b65fe214c7mr28090302a91.17.1715788055297; Wed, 15 May 2024 08:47:35 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> In-Reply-To: From: David Fussner Date: Wed, 15 May 2024 16:47:46 +0100 Message-ID: Content-Type: multipart/mixed; boundary="0000000000008be4640618800951" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --0000000000008be4640618800951 Content-Type: text/plain; charset="UTF-8" Hi Stefan, I attach an updated patch for tex-mode and etags, in which I've attempted to include all of your recommendations. A few notes: 1. I changed the name as well as the doc string of the variable holding the TeX escape and grouping chars (now `tex-thingatpt-exclude-chars`). I hope this makes it clearer. 2. I removed the regexp for detecting expl3 constructs, and now rely on the mechanism I outlined in my previous work-in-progress patch: (a) Test for expl3 class or package, set `tex-expl-file-p` to t. (b) If not (a), add `tex-expl-region-set` to the `syntax-propertize-extend-region-functions` hook to list all regions between \ExplSyntaxOn and \ExplSyntaxOff (`tex-expl-region-list`). (c) Add test in `tex-font-lock-suscript` for (a) then (b), don't subscript after the underscore when either is t. 3. I tried benchmarking `syntax-ppss-flush-cache` and `font-lock-flush` before and after the changes. The former had a maximum slowdown of 0.5% (usually less) and the latter a maximum of 0.2%, but if you want to see my methodology or suggest something to try please let me know. 4. I left the bespoke `syntax-propertize-function` in the `xref-backend-references` method uncompiled, as simple benchmarking suggested no perceptible gain from byte compiling it. Using `syntax-ppss-flush-cache` to restore the status quo ante in each file-visiting buffer streamlined the code and made it do what it was supposed to do. Thanks again for your advice, and please let me know what still needs work. Best, David. On Fri, 3 May 2024 at 15:11, Stefan Monnier wrote: > > Hi, > > Apparently I'm the `tex-mode.el` guy, so I tried to take a look. > > > diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el > > index 97c950267c6..d990a2dbfa9 100644 > > --- a/lisp/textmodes/tex-mode.el > > +++ b/lisp/textmodes/tex-mode.el > > @@ -695,7 +696,25 @@ tex-verbatim-environments > > ("\\\\\\(?:end\\|begin\\) *\\({[^\n{}]*}\\)" > > (1 (ignore > > (tex-env-mark (match-beginning 0) > > - (match-beginning 1) (match-end 1)))))))) > > + (match-beginning 1) (match-end 1))))) > > + ;; The next two rules change the syntax of `:' and `_' in expl3 > > + ;; constructs, so that `tex-font-lock-suscript' can fontify them > > + ;; more accurately. > > + ((concat "\\(\\(?:[\\\\[:space:]{]_\\|" > > + "[\\\\{[:space:]][^][_[:space:][:cntrl:][:digit:]\\\\{}()/=]+\\)" > > + "\\(?:_+\\(?:[^][[:space:][:cntrl:][:digit:]:\\\\{}()/#_=]+\\|" > > + "#+[1-9]\\)\\)+\\)\\([:_]?\\)") > > Can you add in the comment some URL pointing to some relevant expl3 > documentation which "explains" why the above regexp makes sense? > Also I don't clearly see how the above regexp distinguishes expl3 code > from "normal" LaTeX code, so the comment should say something about it. > > Side note: I'd avoid [:space:] whose exact meaning is rarely quite what > we need. > Side note: backslash doesn't need to be backslashed in [...]. > > > + (1 (ignore > > + (let* ((expr (buffer-substring-no-properties (match-beginning 1) > > + (match-end 1))) > > + (list (seq-positions expr ?_))) > > + (dolist (pos list) > > + (put-text-property (+ pos (match-beginning 1)) > > + (1+ (+ pos (match-beginning 1))) > > + 'syntax-table (string-to-syntax "_")))))) > > + (2 "_")) > > + ("\\\\[[:alpha:]]+\\(:\\)[[:alpha:][:space:]\n]" > > + (1 "_"))))) > > Currently we "skip" inappropriate underscores via > `tex-font-lock-match-suscript` and/or by adding a particular `face` text > property rather than via `syntax-table/propertize`. > > For algorithmic reasons, it's better to minimize the work done in > `syntax-propertize-function` as much as possible (font-lock is more lazy > than `syntax-propertize`), so I recommend you try and moving the above > to font-lock rules. > > > +(defvar tex-esc-and-group-chars '(?\\ ?{ ?}) > > + "The current TeX escape and grouping characters. > > I recommend you backslash escape the { and } above (although it's not > indispensable, `emacs-lisp-mode` will parse the code better). > More importantly, the docstring doesn't explain what this list > means/does. E.g. does the order matter? Can it be longer than 3 elements? > > From the current docstring I can't guess what would be the consequence > of adding/removing elements to/from this list. > > > +;; Populate `semantic-symref-filepattern-alist' for the in-tree modes; > > +;; AUCTeX is doing the same for its modes. > > +(defvar semantic-symref-filepattern-alist) > > +(with-eval-after-load 'semantic/symref/grep > > + (push '(latex-mode "*.[tT]e[xX]" "*.ltx" "*.sty" "*.cl[so]" > > + "*.bbl" "*.drv" "*.hva") > > + semantic-symref-filepattern-alist) > > + (push '(plain-tex-mode "*.[tT]e[xX]" "*.ins") > > + semantic-symref-filepattern-alist) > > + (push '(doctex-mode "*.dtx") semantic-symref-filepattern-alist)) > > We know `semantic-symref-filepattern-alist` will exist when > `semantic/symref/grep` is loaded, but not before, so I'd put the > `defvar` inside the `with-eval-after-load`. > > > +;; Setup AUCTeX modes (for testing purposes only). > > + > > +(add-hook 'TeX-mode-hook #'tex-set-auctex-xref-backend) > > + > > +(defun tex-set-auctex-xref-backend () > > + (add-hook 'xref-backend-functions #'tex--xref-backend nil t)) > > I assume this will be sent to AUCTeX and is not meant to be in > `tex-mode.el`, right? > > > +;; `xref-find-references' currently may need this when called from a > > +;; latex-mode buffer in order to search files or buffers with a .tex > > +;; suffix (including the buffer from which it has been called). We > > +;; append it to `auto-mode-alist' so as not to interfere with the usual > > +;; mode-setting apparatus. Changes here and in AUCTeX should soon > > +;; render it unnecessary. > > +(add-to-list 'auto-mode-alist '("\\.[tT]e[xX]\\'" . latex-mode) t) > > Maybe I have not followed the whole discussion closely enough, but at > least to me the above "soon" is very unclear. > I'll assume that this code will be removed before we install the patch. > If not, please explain in the comment why this specific hack is needed > and how it works. > > > +(cl-defmethod xref-backend-references ((_backend (eql 'tex-etags)) identifier) > > + "Find references of IDENTIFIER in TeX buffers and files." > > + (require 'semantic/symref/grep) > > + (let (bufs texbufs > > + (mode major-mode)) > > + (dolist (buf (buffer-list)) > > + (if (eq (buffer-local-value 'major-mode buf) mode) > > + (push buf bufs) > > + (when (string-match-p ".*\\.[tT]e[xX]" (buffer-name buf)) > > + (push buf texbufs)))) > > + (unless (seq-set-equal-p tex--buffers-list bufs) > > + (let* ((amalist (tex--collect-file-extensions)) > > + (extlist (alist-get mode semantic-symref-filepattern-alist)) > > + (extlist-new (seq-uniq > > + (seq-union amalist extlist #'string-match-p)))) > > After sinking the `defvar` above, you'll need to add a new `defvar` for > `semantic-symref-filepattern-alist` just after the `require`. > > > + (setq-local syntax-propertize-function > > + (eval > > + `(tex-xref-syntax-function > > + ,identifier ,beg ,end))) > > Why do we need to change `syntax-propertize-function` and why do we need > `eval`? > > > + (setq syntax-propertize--done 0) > > This is not sufficient. You want to `syntax-ppss-flush-cache`. > > > Stefan > --0000000000008be4640618800951 Content-Type: text/x-patch; charset="US-ASCII"; name="0002-Provide-a-modified-xref-backend-for-TeX-buffers.patch" Content-Disposition: attachment; filename="0002-Provide-a-modified-xref-backend-for-TeX-buffers.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lw7zw08w0 RnJvbSA4N2Q4Mzc3OGNlOGMzNTM2NTkzNzMyMjE4M2QxMDFiZTIzNGFjODgyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBGdXNzbmVyIDxkZnVzc25lckBnb29nbGVtYWlsLmNv bT4KRGF0ZTogV2VkLCAxNSBNYXkgMjAyNCAxNjozNjoxNSArMDEwMApTdWJqZWN0OiBbUEFUQ0hd IFByb3ZpZGUgYSBtb2RpZmllZCB4cmVmIGJhY2tlbmQgZm9yIFRlWCBidWZmZXJzCgoqIGxpYi1z cmMvZXRhZ3MuYyAoVGVYX2NvbW1hbmRzKTogSW1wcm92ZSBwYXJzaW5nIG9mIGNvbW1hbmRzIGlu IFRlWApidWZmZXJzLgooVEVYX2RlZmVudik6IEV4cGFuZCBsaXN0IG9mIGNvbW1hbmRzIHRvIHRh ZyBieSBkZWZhdWx0IGluIFRlWApidWZmZXJzLgooVGVYX2hlbHApOgoqIGRvYy9lbWFjcy9tYWlu dGFpbmluZy50ZXhpIChUYWcgU3ludGF4KTogRG9jdW1lbnQgbmV3IHRhZ2dlZApjb21tYW5kcy4K KElkZW50aWZpZXIgU2VhcmNoKTogQWRkIG5vdGUgYWJvdXQgc2VtYW50aWMtc3ltcmVmLWZpbGVw YXR0ZXJuLWFsaXN0LAphdXRvLW1vZGUtYWxpc3QsIGFuZCB4cmVmLWZpbmQtcmVmZXJlbmNlcy4K CiogbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwgKHRleC1mb250LWxvY2stc3VzY3JpcHQpOiBU ZXN0IGZvcgp1bmRlcnNjb3JlIGluIGV4cGwzIGZpbGVzIGFuZCByZWdpb25zLCBkaXNhYmxlIHN1 YnNjcmlwdCBmYWNlIHRoZXJlLgoodGV4LWNvbW1vbi1pbml0aWFsaXphdGlvbik6IFNldCB1cCB4 cmVmIGJhY2tlbmQgZm9yIGluLXRyZWUgVGVYCm1vZGVzLiBEZXRlY3QgZXhwbDMgZmlsZXMsIGFu ZCBpbiBvdGhlcnMgc2V0IHVwIGEgbGlzdCBvZiBleHBsMwpyZWdpb25zLgoodGV4LWV4cGwtYnVm ZmVyLXBhcnNlKTogTmV3IGZ1bmN0aW9uIGNhbGxlZCBpbiBwcmV2aW91cy4KKHRleC1leHBsLWJ1 ZmZlci1wKTogTmV3IHZhciB0byBob2xkIHRoZSByZXN1bHQgb2YgcHJldmlvdXMuCih0ZXgtZXhw bC1yZWdpb24tc2V0KTogTmV3IGZ1bmN0aW9uIGFkZGVkIHRvCidzeW50YXgtcHJvcGVydGl6ZS1l eHRlbmQtcmVnaW9uLWZ1bmN0aW9ucycgaG9vay4KKHRleC1leHBsLXJlZ2lvbi1saXN0KTogTmV3 IHZhciB0byBob2xkIHRoZSByZXN1bHQgb2YgcHJldmlvdXMuCih0ZXgtLXRoaW5nLWF0LXBvaW50 LCB0ZXgtdGhpbmdhdHB0LS1iZWdpbm5pbmctb2Ytc3ltYm9sKQoodGV4LXRoaW5nYXRwdC0tZW5k LW9mLXN5bWJvbCwgdGV4LS1ib3VuZHMtb2Ytc3ltYm9sLWF0LXBvaW50KToKTmV3IGZ1bmN0aW9u cyB0byByZXR1cm4gJ3RoaW5nLWF0LXBvaW50JyBmb3IgeHJlZiBiYWNrZW5kLgoodGV4LXRoaW5n YXRwdC1leGNsdWRlLWNoYXJzKTogTmV3IHZhciB0byBkbyB0aGUgc2FtZS4KKHhyZWYtYmFja2Vu ZC1pZGVudGlmaWVyLWF0LXBvaW50KTogTmV3IFRlWCBiYWNrZW5kIG1ldGhvZCB0byBwcm92aWRl CnN5bWJvbHMgZm9yIHByb2Nlc3NpbmcgYnkgeHJlZi4KKHhyZWYtYmFja2VuZC1pZGVudGlmaWVy LWNvbXBsZXRpb24tdGFibGUpCih4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21wbGV0aW9uLWln bm9yZS1jYXNlKQooeHJlZi1iYWNrZW5kLWRlZmluaXRpb25zLCB4cmVmLWJhY2tlbmQtYXByb3Bv cyk6IFBsYWNlaG9sZGVycyB0bwpjYWxsIHRoZSBzdGFuZGFyZCAnZXRhZ3MnIHhyZWYgYmFja2Vu ZCBtZXRob2RzLgooeHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMpOiBXcmFwcGVyIHRvIGNhbGwgdGhl IGRlZmF1bHQgeHJlZiBiYWNrZW5kCm1ldGhvZCwgZmluZGluZyBhcyBtYW55IHJlbGV2YW50IGZp bGVzIGFzIHBvc3NpYmxlIGFuZCB1c2luZyBhIGJlc3Bva2UKc3ludGF4LXByb3BlcnRpemUtZnVu Y3Rpb24gd2hlbiByZXF1aXJlZC4KKHRleC0tY29sbGVjdC1maWxlLWV4dGVuc2lvbnMsIHRleC14 cmVmLXN5bnRheC1mdW5jdGlvbik6IEhlbHBlcgpmdW5jdGlvbnMgZm9yIHByZXZpb3VzLgoodGV4 LWZpbmQtcmVmZXJlbmNlcy1zeW50YXgtdGFibGUsIHRleC0tYnVmZmVycy1saXN0KQoodGV4LS14 cmVmLXN5bnRheC1mdW4sIHRleC0tb2xkLXN5bnRheC1mdW5jdGlvbik6IE5ldyB2YXJzIGZvciBz YW1lLgotLS0KIGRvYy9lbWFjcy9tYWludGFpbmluZy50ZXhpIHwgIDM5ICsrKy0KIGxpYi1zcmMv ZXRhZ3MuYyAgICAgICAgICAgIHwgMTg5ICsrKysrKysrKysrKysrKysrLS0KIGxpc3AvdGV4dG1v ZGVzL3RleC1tb2RlLmVsIHwgMzcyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr Ky0KIDMgZmlsZXMgY2hhbmdlZCwgNTc5IGluc2VydGlvbnMoKyksIDIxIGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL2RvYy9lbWFjcy9tYWludGFpbmluZy50ZXhpIGIvZG9jL2VtYWNzL21haW50 YWluaW5nLnRleGkKaW5kZXggNTc5MDk4YzgxYjEuLmEwNjQxMDNhYTI1IDEwMDY0NAotLS0gYS9k b2MvZW1hY3MvbWFpbnRhaW5pbmcudGV4aQorKysgYi9kb2MvZW1hY3MvbWFpbnRhaW5pbmcudGV4 aQpAQCAtMjUyOSw2ICsyNTI5LDE1IEBAIElkZW50aWZpZXIgU2VhcmNoCiByZWZlcmVuY2VkLiAg VGhlIFhSRUYgbW9kZSBjb21tYW5kcyBhcmUgYXZhaWxhYmxlIGluIHRoaXMgYnVmZmVyLCBzZWUK IEByZWZ7WHJlZiBDb21tYW5kc30uCiAKK1doZW4gaW52b2tlZCBpbiBhIGJ1ZmZlciB3aG9zZSBt YWpvciBtb2RlIHVzZXMgdGhlIEBjb2Rle2V0YWdzfSBiYWNrZW5kLAorQGtiZHtNLT99IHNlYXJj aGVzIGZpbGVzIGFuZCBidWZmZXJzIHdob3NlIG1ham9yIG1vZGUgbWF0Y2hlcyB0aGF0IG9mCit0 aGUgb3JpZ2luYWwgYnVmZmVyLiAgSXQgZ3Vlc3NlcyB0aGF0IG1vZGUgZnJvbSBmaWxlIGV4dGVu c2lvbnMsIHNvIGlmCitAa2Jke00tP30gc2VlbXMgdG8gYmUgc2tpcHBpbmcgcmVsZXZhbnQgYnVm ZmVycyBvciBmaWxlcywgdHJ5CitjdXN0b21pemluZyBlaXRoZXIgdGhlIHZhcmlhYmxlIEBjb2Rl e3NlbWFudGljLXN5bXJlZi1maWxlcGF0dGVybi1hbGlzdH0KKyhpZiB5b3VyIGJ1ZmZlcidzIG1h am9yIG1vZGUgYWxyZWFkeSBoYXMgYW4gZW50cnkgaW4gaXQpLCBvcgorQGNvZGV7YXV0by1tb2Rl LWFsaXN0fSAoaWYgbm90KSwgdGhlcmVieSBpbmZvcm1pbmcgQGNvZGV7eHJlZn0gb2YgdGhlCitt aXNzaW5nIGV4dGVuc2lvbnMgKEBweHJlZntDaG9vc2luZyBNb2Rlc30pLgorCiBAdmluZGV4IHhy ZWYtYXV0by1qdW1wLXRvLWZpcnN0LXhyZWYKICAgSWYgdGhlIHZhbHVlIG9mIHRoZSB2YXJpYWJs ZSBAY29kZXt4cmVmLWF1dG8tanVtcC10by1maXJzdC14cmVmfSBpcwogQGNvZGV7dH0sIEBjb2Rl e3hyZWYtZmluZC1yZWZlcmVuY2VzfSBhdXRvbWF0aWNhbGx5IGp1bXBzIHRvIHRoZSBmaXJzdApA QCAtMjc0NywxMCArMjc1NiwzMiBAQCBUYWcgU3ludGF4CiBAaXRlbQogSW4gQExhVGVYe30gZG9j dW1lbnRzLCB0aGUgYXJndW1lbnRzIGZvciBAY29kZXtcY2hhcHRlcn0sCiBAY29kZXtcc2VjdGlv bn0sIEBjb2Rle1xzdWJzZWN0aW9ufSwgQGNvZGV7XHN1YnN1YnNlY3Rpb259LAotQGNvZGV7XGVx bm99LCBAY29kZXtcbGFiZWx9LCBAY29kZXtccmVmfSwgQGNvZGV7XGNpdGV9LAotQGNvZGV7XGJp Yml0ZW19LCBAY29kZXtccGFydH0sIEBjb2Rle1xhcHBlbmRpeH0sIEBjb2Rle1xlbnRyeX0sCi1A Y29kZXtcaW5kZXh9LCBAY29kZXtcZGVmfSwgQGNvZGV7XG5ld2NvbW1hbmR9LCBAY29kZXtccmVu ZXdjb21tYW5kfSwKLUBjb2Rle1xuZXdlbnZpcm9ubWVudH0gYW5kIEBjb2Rle1xyZW5ld2Vudmly b25tZW50fSBhcmUgdGFncy4KK0Bjb2Rle1xlcW5vfSwgQGNvZGV7XGxhYmVsfSwgQGNvZGV7XHJl Zn0sIEBjb2Rle1xSZWZ9LCBAY29kZXtcZm9vdHJlZn0sCitAY29kZXtcY2l0ZX0sIEBjb2Rle1xi aWJpdGVtfSwgQGNvZGV7XHBhcnR9LCBAY29kZXtcYXBwZW5kaXh9LAorQGNvZGV7XGVudHJ5fSwg QGNvZGV7XGluZGV4fSwgQGNvZGV7XGRlZn0sIEBjb2Rle1xlZGVmfSwgQGNvZGV7XGdkZWZ9LAor QGNvZGV7XHhkZWZ9LCBAY29kZXtcbmV3Y29tbWFuZH0sIEBjb2Rle1xyZW5ld2NvbW1hbmR9LAor QGNvZGV7XG5ld2Vudmlyb25tZW50fSwgQGNvZGV7XHJlbmV3ZW52aXJvbm1lbnR9LAorQGNvZGV7 XERlY2xhcmVSb2J1c3RDb21tYW5kfSwgQGNvZGV7XG5ld3JvYnVzdGNtZH0sCitAY29kZXtccmVu ZXdyb2J1c3RjbWR9LCBAY29kZXtccHJvdmlkZWNvbW1hbmR9LAorQGNvZGV7XHByb3ZpZGVyb2J1 c3RjbWR9LCBAY29kZXtcTmV3RG9jdW1lbnRDb21tYW5kfSwKK0Bjb2Rle1xSZW5ld0RvY3VtZW50 Q29tbWFuZH0sIEBjb2Rle1xQcm92aWRlRG9jdW1lbnRDb21tYW5kfSwKK0Bjb2Rle1xEZWNsYXJl RG9jdW1lbnRDb21tYW5kfSwgQGNvZGV7XE5ld0V4cGFuZGFibGVEb2N1bWVudENvbW1hbmR9LAor QGNvZGV7XFJlbmV3RXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZH0sCitAY29kZXtcUHJvdmlkZUV4 cGFuZGFibGVEb2N1bWVudENvbW1hbmR9LAorQGNvZGV7XERlY2xhcmVFeHBhbmRhYmxlRG9jdW1l bnRDb21tYW5kfSwKK0Bjb2Rle1xOZXdEb2N1bWVudEVudmlyb25tZW50fSwgQGNvZGV7XFJlbmV3 RG9jdW1lbnRFbnZpcm9ubWVudH0sCitAY29kZXtcUHJvdmlkZURvY3VtZW50RW52aXJvbm1lbnR9 LCBAY29kZXtcRGVjbGFyZURvY3VtZW50RW52aXJvbm1lbnR9LAorQGNvZGV7XGNzZGVmfSwgQGNv ZGV7XGNzZWRlZn0sIEBjb2Rle1xjc2dkZWZ9LCBAY29kZXtcY3N4ZGVmfSwKK0Bjb2Rle1xjc2xl dGNzfSwgQGNvZGV7XGNzbGV0fSwgQGNvZGV7XGxldGNzfSwgQGNvZGV7XGxldH0sCitAY29kZXtc Y3NfbmV3X3Byb3RlY3RlZF9ub3Bhcn0sIEBjb2Rle1xjc19uZXdfcHJvdGVjdGVkfSwKK0Bjb2Rl e1xjc19uZXdfbm9wYXJ9LCBAY29kZXtcY3NfbmV3X2VxfSwgQGNvZGV7XGNzX25ld30sCitAY29k ZXtcY3Nfc2V0X3Byb3RlY3RlZF9ub3Bhcn0sIEBjb2Rle1xjc19zZXRfcHJvdGVjdGVkfSwKK0Bj b2Rle1xjc19zZXRfbm9wYXJ9LCBAY29kZXtcY3Nfc2V0X2VxfSwgQGNvZGV7XGNzX3NldH0sCitA Y29kZXtcY3NfZ3NldF9wcm90ZWN0ZWRfbm9wYXJ9LCBAY29kZXtcY3NfZ3NldF9wcm90ZWN0ZWR9 LAorQGNvZGV7XGNzX2dzZXRfbm9wYXJ9LCBAY29kZXtcY3NfZ3NldF9lcX0sIEBjb2Rle1xjc19n c2V0fSwKK0Bjb2Rle1xjc19nZW5lcmF0ZV9mcm9tX2FyZ19jb3VudH0sIGFuZCBAY29kZXtcY3Nf Z2VuZXJhdGVfdmFyaWFudH0gYXJlCit0YWdzLiAgU28gdG9vIGFyZSB0aGUgYXJndW1lbnRzIG9m IGFueSBzdGFycmVkIHZhcmlhbnRzIG9mIHRoZXNlCitjb21tYW5kcy4KIAogT3RoZXIgY29tbWFu ZHMgY2FuIG1ha2UgdGFncyBhcyB3ZWxsLCBpZiB5b3Ugc3BlY2lmeSB0aGVtIGluIHRoZQogZW52 aXJvbm1lbnQgdmFyaWFibGUgQGVudntURVhUQUdTfSBiZWZvcmUgaW52b2tpbmcgQGNvbW1hbmR7 ZXRhZ3N9LiAgVGhlCmRpZmYgLS1naXQgYS9saWItc3JjL2V0YWdzLmMgYi9saWItc3JjL2V0YWdz LmMKaW5kZXggMDNiYzU1ZGUwM2QuLjExZmRkYzE4N2MyIDEwMDY0NAotLS0gYS9saWItc3JjL2V0 YWdzLmMKKysrIGIvbGliLXNyYy9ldGFncy5jCkBAIC03OTMsMTEgKzc5MywyNyBAQCAjZGVmaW5l IFNURElOIDB4MTAwMQkJLyogcmV0dXJuZWQgYnkgZ2V0b3B0X2xvbmcgb24gLS1wYXJzZS1zdGRp biAqLwogc3RhdGljIGNvbnN0IGNoYXIgKlRlWF9zdWZmaXhlcyBbXSA9CiAgIHsgImJpYiIsICJj bG8iLCAiY2xzIiwgImx0eCIsICJzdHkiLCAiVGVYIiwgInRleCIsIE5VTEwgfTsKIHN0YXRpYyBj b25zdCBjaGFyIFRlWF9oZWxwIFtdID0KLSJJbiBMYVRlWCB0ZXh0LCB0aGUgYXJndW1lbnQgb2Yg YW55IG9mIHRoZSBjb21tYW5kcyAnXFxjaGFwdGVyJyxcblwKLSdcXHNlY3Rpb24nLCAnXFxzdWJz ZWN0aW9uJywgJ1xcc3Vic3Vic2VjdGlvbicsICdcXGVxbm8nLCAnXFxsYWJlbCcsXG5cCi0nXFxy ZWYnLCAnXFxjaXRlJywgJ1xcYmliaXRlbScsICdcXHBhcnQnLCAnXFxhcHBlbmRpeCcsICdcXGVu dHJ5JyxcblwKLSdcXGluZGV4JywgJ1xcZGVmJywgJ1xcbmV3Y29tbWFuZCcsICdcXHJlbmV3Y29t bWFuZCcsXG5cCi0nXFxuZXdlbnZpcm9ubWVudCcgb3IgJ1xccmVuZXdlbnZpcm9ubWVudCcgaXMg YSB0YWcuXG5cCisiSW4gTGFUZVggdGV4dCwgdGhlIGFyZ3VtZW50IG9mIHRoZSBjb21tYW5kcyAn XFxjaGFwdGVyJywgJ1xcc2VjdGlvbicsXG5cCisnXFxzdWJzZWN0aW9uJywgJ1xcc3Vic3Vic2Vj dGlvbicsICdcXGVxbm8nLCAnXFxsYWJlbCcsICdcXHJlZicsXG5cCisnXFxSZWYnLCAnXFxmb290 cmVmJywgJ1xcY2l0ZScsICdcXGJpYml0ZW0nLCAnXFxwYXJ0JywgJ1xcYXBwZW5kaXgnLFxuXAor J1xcZW50cnknLCAnXFxpbmRleCcsICdcXGRlZicsICdcXGVkZWYnLCAnXFxnZGVmJywgJ1xceGRl ZicsXG5cCisnXFxuZXdjb21tYW5kJywgJ1xccmVuZXdjb21tYW5kJywgJ1xcbmV3cm9idXN0Y21k JywgJ1xccmVuZXdyb2J1c3RjbWQnLFxuXAorJ1xcbmV3ZW52aXJvbm1lbnQnLCAnXFxyZW5ld2Vu dmlyb25tZW50JywgJ1xcRGVjbGFyZVJvYnVzdENvbW1hbmQnLFxuXAorJ1xccHJvdmlkZWNvbW1h bmQnLCAnXFxwcm92aWRlcm9idXN0Y21kJywgJ1xcTmV3RG9jdW1lbnRDb21tYW5kJyxcblwKKydc XFJlbmV3RG9jdW1lbnRDb21tYW5kJywgJ1xcUHJvdmlkZURvY3VtZW50Q29tbWFuZCcsXG5cCisn XFxEZWNsYXJlRG9jdW1lbnRDb21tYW5kJywgJ1xcTmV3RXhwYW5kYWJsZURvY3VtZW50Q29tbWFu ZCcsXG5cCisnXFxSZW5ld0V4cGFuZGFibGVEb2N1bWVudENvbW1hbmQnLCAnXFxQcm92aWRlRXhw YW5kYWJsZURvY3VtZW50Q29tbWFuZCcsXG5cCisnXFxEZWNsYXJlRXhwYW5kYWJsZURvY3VtZW50 Q29tbWFuZCcsICdcXE5ld0RvY3VtZW50RW52aXJvbm1lbnQnLFxuXAorJ1xcUmVuZXdEb2N1bWVu dEVudmlyb25tZW50JywgJ1xcUHJvdmlkZURvY3VtZW50RW52aXJvbm1lbnQnLFxuXAorJ1xcRGVj bGFyZURvY3VtZW50RW52aXJvbm1lbnQnLCdcXGNzZGVmJywgJ1xcY3NlZGVmJywgJ1xcY3NnZGVm JyxcblwKKydcXGNzeGRlZicsICdcXGNzbGV0Y3MnLCAnXFxjc2xldCcsICdcXGxldGNzJywgJ1xc bGV0JyxcblwKKydcXGNzX25ld19wcm90ZWN0ZWRfbm9wYXInLCAnXFxjc19uZXdfcHJvdGVjdGVk JywgJ1xcY3NfbmV3X25vcGFyJyxcblwKKydcXGNzX25ld19lcScsICdcXGNzX25ldycsICdcXGNz X3NldF9wcm90ZWN0ZWRfbm9wYXInLFxuXAorJ1xcY3Nfc2V0X3Byb3RlY3RlZCcsICdcXGNzX3Nl dF9ub3BhcicsICdcXGNzX3NldF9lcScsICdcXGNzX3NldCcsXG5cCisnXFxjc19nc2V0X3Byb3Rl Y3RlZF9ub3BhcicsICdcXGNzX2dzZXRfcHJvdGVjdGVkJywgJ1xcY3NfZ3NldF9ub3BhcicsXG5c CisnXFxjc19nc2V0X2VxJywgJ1xcY3NfZ3NldCcsICdcXGNzX2dlbmVyYXRlX2Zyb21fYXJnX2Nv dW50Jywgb3JcblwKKydcXGNzX2dlbmVyYXRlX3ZhcmlhbnQnIGlzIGEgdGFnLiAgU28gaXMgdGhl IGFyZ3VtZW50IG9mIGFueSBzdGFycmVkXG5cCit2YXJpYW50IG9mIHRoZXNlIGNvbW1hbmRzLlxu XAogXG5cCiBPdGhlciBjb21tYW5kcyBjYW4gYmUgc3BlY2lmaWVkIGJ5IHNldHRpbmcgdGhlIGVu dmlyb25tZW50IHZhcmlhYmxlXG5cCiAnVEVYVEFHUycgdG8gYSBjb2xvbi1zZXBhcmF0ZWQgbGlz dCBsaWtlLCBmb3IgZXhhbXBsZSxcblwKQEAgLTU3NDAsMTEgKzU3NTYsMjUgQEAgU2NoZW1lX2Z1 bmN0aW9ucyAoRklMRSAqaW5mKQogc3RhdGljIGxpbmVidWZmZXIgKlRFWF90b2t0YWIgPSBOVUxM OyAvKiBUYWJsZSB3aXRoIHRhZyB0b2tlbnMgKi8KIAogLyogRGVmYXVsdCBzZXQgb2YgY29udHJv bCBzZXF1ZW5jZXMgdG8gcHV0IGludG8gVEVYX3Rva3RhYi4KLSAgIFRoZSB2YWx1ZSBvZiBlbnZp cm9ubWVudCB2YXIgVEVYVEFHUyBpcyBwcmVwZW5kZWQgdG8gdGhpcy4gICovCisgICBUaGUgdmFs dWUgb2YgZW52aXJvbm1lbnQgdmFyIFRFWFRBR1MgaXMgcHJlcGVuZGVkIHRvIHRoaXMuCisgICAo MjAyNCkgQWRkIHZhcmlhbnRzIG9mICdcZGVmJywgc29tZSBhZGRpdGlvbmFsIExhVGVYIChhbmQK KyAgIGZvcm1lciB4cGFyc2UpIGNvbW1hbmRzLCBjb21tb24gdmFyaWFudHMgZnJvbSB0aGUKKyAg ICdldG9vbGJveCcgcGFja2FnZSwgYW5kIHRoZSBtYWluIGV4cGwzIGNvbW1hbmRzLiAqLwogc3Rh dGljIGNvbnN0IGNoYXIgKlRFWF9kZWZlbnYgPSAiXAotOmNoYXB0ZXI6c2VjdGlvbjpzdWJzZWN0 aW9uOnN1YnN1YnNlY3Rpb246ZXFubzpsYWJlbDpyZWY6Y2l0ZTpiaWJpdGVtXAotOnBhcnQ6YXBw ZW5kaXg6ZW50cnk6aW5kZXg6ZGVmXAotOm5ld2NvbW1hbmQ6cmVuZXdjb21tYW5kOm5ld2Vudmly b25tZW50OnJlbmV3ZW52aXJvbm1lbnQiOworOmxhYmVsOnJlZjpSZWY6Zm9vdHJlZjpjaGFwdGVy OnNlY3Rpb246c3Vic2VjdGlvbjpzdWJzdWJzZWN0aW9uOmVxbm86Y2l0ZVwKKzpiaWJpdGVtOnBh cnQ6YXBwZW5kaXg6ZW50cnk6aW5kZXg6ZGVmOmVkZWY6Z2RlZjp4ZGVmOm5ld2NvbW1hbmQ6cmVu ZXdjb21tYW5kXAorOm5ld2Vudmlyb25tZW50OnJlbmV3ZW52aXJvbm1lbnQ6RGVjbGFyZVJvYnVz dENvbW1hbmQ6cmVuZXdyb2J1c3RjbWRcCis6bmV3cm9idXN0Y21kOnByb3ZpZGVjb21tYW5kOnBy b3ZpZGVyb2J1c3RjbWQ6TmV3RG9jdW1lbnRDb21tYW5kXAorOlJlbmV3RG9jdW1lbnRDb21tYW5k OlByb3ZpZGVEb2N1bWVudENvbW1hbmQ6RGVjbGFyZURvY3VtZW50Q29tbWFuZFwKKzpOZXdFeHBh bmRhYmxlRG9jdW1lbnRDb21tYW5kOlJlbmV3RXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZFwKKzpQ cm92aWRlRXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZDpEZWNsYXJlRXhwYW5kYWJsZURvY3VtZW50 Q29tbWFuZFwKKzpOZXdEb2N1bWVudEVudmlyb25tZW50OlJlbmV3RG9jdW1lbnRFbnZpcm9ubWVu dFwKKzpQcm92aWRlRG9jdW1lbnRFbnZpcm9ubWVudDpEZWNsYXJlRG9jdW1lbnRFbnZpcm9ubWVu dDpjc2RlZlwKKzpjc2VkZWY6Y3NnZGVmOmNzeGRlZjpjc2xldGNzOmNzbGV0OmxldGNzOmxldDpj c19uZXdfcHJvdGVjdGVkX25vcGFyXAorOmNzX25ld19wcm90ZWN0ZWQ6Y3NfbmV3X25vcGFyOmNz X25ld19lcTpjc19uZXc6Y3Nfc2V0X3Byb3RlY3RlZF9ub3BhclwKKzpjc19zZXRfcHJvdGVjdGVk OmNzX3NldF9ub3Bhcjpjc19zZXRfZXE6Y3Nfc2V0OmNzX2dzZXRfcHJvdGVjdGVkX25vcGFyXAor OmNzX2dzZXRfcHJvdGVjdGVkOmNzX2dzZXRfbm9wYXI6Y3NfZ3NldF9lcTpjc19nc2V0XAorOmNz X2dlbmVyYXRlX2Zyb21fYXJnX2NvdW50OmNzX2dlbmVyYXRlX3ZhcmlhbnQiOwogCiBzdGF0aWMg dm9pZCBURVhfZGVjb2RlX2VudiAoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOwogCkBAIC01 ODAzLDE5ICs1ODMzLDEzNyBAQCBUZVhfY29tbWFuZHMgKEZJTEUgKmluZikKIAkgICAgICB7CiAJ CWNoYXIgKnA7CiAJCXB0cmRpZmZfdCBuYW1lbGVuLCBsaW5lbGVuOwotCQlib29sIG9wZ3JwID0g ZmFsc2U7CisJCWJvb2wgb3BncnAgPSBmYWxzZSwgb25lX2VzYyA9IGZhbHNlLCBpc19leHBsdGhy ZWUgPSBmYWxzZTsKIAogCQljcCA9IHNraXBfc3BhY2VzIChjcCArIGtleS0+bGVuKTsKKworCQkv KiAxLiBUaGUgY2Fub25pY2FsIGV4cGwzIHN5bnRheCBsb29rcyBzb21ldGhpbmcgbGlrZSB0aGlz OgorCQkgICBcY3NfbmV3Ok5wbiBcX19ob29rX3RsX2dwdXQ6Tm4geyBcRVJST1IgfS4gIEZpcnN0 LCBpZiB3ZQorCQkgICB3YW50IHRvIHRhZyBhbnkgc3VjaCBjb21tYW5kcywgd2UgaW5jbHVkZSBv bmx5IHRoZSBwYXJ0CisJCSAgIGJlZm9yZSB0aGUgY29sb24gKGNzX25ldykgaW4gVEVYX2RlZmVu diBvciBURVhUQUdTLiAgU2Vjb25kLAorCQkgICBldGFncyBza2lwcyB0aGUgYXJndW1lbnQgc3Bl Y2lmaWVyIChpbmNsdWRpbmcgdGhlIGNvbG9uKQorCQkgICBhZnRlciB0aGUgdGFnIHRva2VuLCBz byB0aGF0IGl0IGRvZXNuJ3QgYmVjb21lIHRoZSB0YWcgbmFtZS4KKwkJICAgVGhpcmQsIHdlIHNl dCB0aGUgYm9vbGVhbiAnaXNfZXhwbHRocmVlJyB0byB0cnVlIHNvIHRoYXQgd2UKKwkJICAgY2Fu IHJlbW92ZSB0aGUgYXJndW1lbnQgc3BlY2lmaWVyIGZyb20gdGhlIGFjdHVhbCB0YWcgbmFtZQor CQkgICAoX19ob29rX3RsX2dwdXQpLiAgVGhpcyBhbGwgYWxsb3dzIHVzIHRvIGluY2x1ZGUgZXhw bDMKKwkJICAgY29uc3RydWN0cyBpbiBURVhfZGVmZW52IG9yIGluIHRoZSBlbnZpcm9ubWVudCB2 YXJpYWJsZQorCQkgICBURVhUQUdTIHdpdGhvdXQgcmVxdWlyaW5nIGEgY2hhbmdlIG9mIHNlcGFy YXRvciwgYW5kIGl0IGFsc28KKwkJICAgYWxsb3dzIHVzIHRvIGZpbmQgdGhlIGRlZmluaXRpb24g b2YgdmFyaWFudCBjb21tYW5kcyAod2l0aAorCQkgICBkaWZmZXJlbnQgYXJndW1lbnQgc3BlY2lm aWVycykgZGVmaW5lZCB1c2luZywgZm9yIGV4YW1wbGUsCisJCSAgIFxjc19nZW5lcmF0ZV92YXJp YW50Ok5uLiAgUGxlYXNlIG5vdGUgdGhhdCB0aGUgZXhwbDMgc3BlYworCQkgICByZXF1aXJlcyBl dGFncyB0byBwYXkgbW9yZSBhdHRlbnRpb24gdG8gd2hpdGVzcGFjZSBpbiB0aGUKKwkJICAgY29k ZS4KKworCQkgICAyLiBXZSBhbHNvIGF1dG9tYXRpY2FsbHkgcmVtb3ZlIHRoZSBhc3RlcmlzayBm cm9tIHN0YXJyZWQKKwkJICAgdmFyaWFudHMgb2YgYWxsIGNvbW1hbmRzLCB3aXRob3V0IHRoZSBu ZWVkIHRvIGluY2x1ZGUgdGhlCisJCSAgIHN0YXJyZWQgY29tbWFuZHMgZXhwbGljaXRseSBpbiBU RVhfZGVmZW52IG9yIFRFWFRBR1MuICovCisJCWlmICgqY3AgPT0gJzonKQorCQkgIHsKKwkJICAg IHdoaWxlICghY19pc3NwYWNlICgqY3ApICYmICpjcCAhPSBURVhfb3BncnApCisJCSAgICAgIGNw Kys7CisJCSAgICBjcCA9IHNraXBfc3BhY2VzIChjcCk7CisJCSAgICBpc19leHBsdGhyZWUgPSB0 cnVlOworCQkgIH0KKwkJZWxzZSBpZiAoKmNwID09ICcqJykKKwkJICBjcCsrOworCisJCS8qIFNr aXAgdGhlIG9wdGlvbmFsIGFyZ3VtZW50cyB0byBjb21tYW5kcyBpbiB0aGUgdGFncyBsaXN0IHNv CisJCSAgIHRoYXQgdGhlc2UgYXJndW1lbnRzIGRvbid0IGVuZCB1cCBhcyB0aGUgbmFtZSBvZiB0 aGUgdGFnLgorCQkgICBUaGUgbmFtZSB3aWxsIGluc3RlYWQgY29tZSBmcm9tIHRoZSBhcmd1bWVu dCBpbiBjdXJseSBicmFjZXMKKwkJICAgdGhhdCBmb2xsb3dzIHRoZSBvcHRpb25hbCBvbmVzLiAq LworCQl3aGlsZSAoKmNwICE9ICdcMCcgJiYgKmNwICE9ICclJykKKwkJICB7CisJCSAgICBpZiAo KmNwID09ICdbJykKKwkJICAgICAgeworCQkJd2hpbGUgKCpjcCAhPSAnXScgJiYgKmNwICE9ICdc MCcgJiYgKmNwICE9ICclJykKKwkJCSAgY3ArKzsKKwkJICAgICAgfQorCQkgICAgZWxzZSBpZiAo KmNwID09ICcoJykKKwkJICAgICAgeworCQkJd2hpbGUgKCpjcCAhPSAnKScgJiYgKmNwICE9ICdc MCcgJiYgKmNwICE9ICclJykKKwkJCSAgY3ArKzsKKwkJICAgICAgfQorCQkgICAgZWxzZSBpZiAo KmNwID09ICddJyB8fCAqY3AgPT0gJyknKQorCQkgICAgICBjcCsrOworCQkgICAgZWxzZQorCQkg ICAgICBicmVhazsKKwkJICB9CiAJCWlmICgqY3AgPT0gVEVYX29wZ3JwKQogCQkgIHsKIAkJICAg IG9wZ3JwID0gdHJ1ZTsKIAkJICAgIGNwKys7CisJCSAgICBjcCA9IHNraXBfc3BhY2VzIChjcCk7 IC8qIEZvciBleHBsMyBjb2RlLiAqLwogCQkgIH0KKworCQkvKiBSZW1vdmluZyB0aGUgVGVYIGVz Y2FwZSBjaGFyYWN0ZXIgZnJvbSB0YWcgbmFtZXMgc2ltcGxpZmllcworCQkgICB0aGluZ3MgZm9y IGVkaXRvcnMgZmluZGluZyB0YWdnZWQgY29tbWFuZHMgaW4gVGVYIGJ1ZmZlcnMuCisJCSAgIFRo aXMgYXBwbGllcyB0byBFbWFjcyBidXQgYWxzbyB0byB0aGUgdGFnLWZpbmRpbmcgYmVoYXZpb3IK KwkJICAgb2YgYXQgbGVhc3Qgc29tZSBvZiB0aGUgZWRpdG9ycyB0aGF0IHVzZSBjdGFncywgdGhv dWdoIGluCisJCSAgIHRoZSBsYXR0ZXIgY2FzZSB0aGlzIHdpbGwgcmVtYWluIHN1Ym9wdGltYWwu ICBUaGUKKwkJICAgdW5kb2N1bWVudGVkIGN0YWdzIG9wdGlvbiAnLS1uby1kdXBsaWNhdGVzJyBt YXkgaGVscC4gKi8KKwkJaWYgKCpjcCA9PSBURVhfZXNjKQorCQkgIHsKKwkJICAgIGNwKys7CisJ CSAgICBvbmVfZXNjID0gdHJ1ZTsKKwkJICB9CisKKwkJLyogVGVzdGluZyAhY19pc3NwYWNlICYm ICFjX2lzcHVuY3QgaXMgc2ltcGxlciwgYnV0IGhhbHRzCisJCSAgIHByb2Nlc3NpbmcgYXQgdG9v IG1hbnkgcGxhY2VzLiAgVGhlIGxpc3QgYXMgaXQgc3RhbmRzIHRyaWVzCisJCSAgIGJvdGggdG8g ZW5zdXJlIHRoYXQgdGFnIG5hbWVzIHdpbGwgZGVyaXZlIGZyb20gbWFjcm8gbmFtZXMKKwkJICAg cmF0aGVyIHRoYW4gZnJvbSBvcHRpb25hbCBwYXJhbWV0ZXJzIHRvIHRob3NlIG1hY3JvcywgYW5k CisJCSAgIGFsc28gdG8gcmV0dXJuIGZpbmRhYmxlIG5hbWVzIHdoaWxlIHN0aWxsIGFsbG93aW5n IGZvcgorCQkgICB1bm9ydGhvZG94IGNvbnN0cnVjdHMuICovCiAJCWZvciAocCA9IGNwOwotCQkg ICAgICghY19pc3NwYWNlICgqcCkgJiYgKnAgIT0gJyMnICYmCi0JCSAgICAgICpwICE9IFRFWF9v cGdycCAmJiAqcCAhPSBURVhfY2xncnApOworCQkgICAgICghY19pc3NwYWNlICgqcCkgJiYgKnAg IT0gJyMnICYmICpwICE9ICc9JyAmJgorCQkgICAgICAqcCAhPSAnWycgJiYgKnAgIT0gJygnICYm ICpwICE9IFRFWF9vcGdycCAmJgorCQkgICAgICAqcCAhPSBURVhfY2xncnAgJiYgKnAgIT0gJyIn ICYmICpwICE9ICdcJycgJiYKKwkJICAgICAgKnAgIT0gJyUnICYmICpwICE9ICcsJyAmJiAqcCAh PSAnfCcgJiYgKnAgIT0gJyQnKTsKIAkJICAgICBwKyspCi0JCSAgY29udGludWU7CisJCSAgLyog SW4gZXhwbDMgY29kZSB3ZSByZW1vdmUgdGhlIGFyZ3VtZW50IHNwZWNpZmljYXRpb24gZnJvbQor CQkgICAgIHRoZSB0YWcgbmFtZS4gIE1vcmUgZ2VuZXJhbGx5IHdlIGFsbG93IG9ubHkgb25lIChk ZWxldGVkKQorCQkgICAgIGVzY2FwZSBjaGFyIGluIGEgdGFnIG5hbWUsIHdoaWNoIChwcmltYXJp bHkpIGVuYWJsZXMKKwkJICAgICB0YWdnaW5nIGEgVGVYIGNvbW1hbmQncyBkaWZmZXJlbnQsIHBv c3NpYmx5IHRlbXBvcmFyeSwKKwkJICAgICAnXGxldCcgYmluZGluZ3MuICovCisJCSAgaWYgKGlz X2V4cGx0aHJlZSAmJiAqcCA9PSAnOicpCisJCSAgICBicmVhazsKKwkJICBlbHNlIGlmICgqcCA9 PSBURVhfZXNjKQorCQkgICAgeyAvKiBTZWNvbmQgcGFydCBvZiB0ZXN0IGlzIGZvciwgZS5nLiwg XGNzbGV0LiAqLworCQkgICAgICBpZiAoIW9uZV9lc2MgJiYgIW9wZ3JwKQorCQkJeworCQkJICBv bmVfZXNjID0gdHJ1ZTsKKwkJCSAgY29udGludWU7CisJCQl9CisJCSAgICAgIGVsc2UKKwkJCWJy ZWFrOworCQkgICAgfQorCQkgIGVsc2UKKwkJICAgIGNvbnRpbnVlOworCQkvKiBGb3IgVGVYIGZp bGVzLCB0YWdzIHdpdGhvdXQgYSBuYW1lIGFyZSBiYXNpY2FsbHkgY3J1ZnQsIGFuZAorCQkgICBp biBzb21lIHNpdHVhdGlvbnMgdGhleSBjYW4gcHJvZHVjZSBzcHVyaW91cyBhbmQgY29uZnVzaW5n CisJCSAgIG1hdGNoZXMuICBUcnkgdG8gY2F0Y2ggYXMgbWFueSBjYXNlcyBhcyBwb3NzaWJsZSB3 aGVyZSBhCisJCSAgIGNvbW1hbmQgbmFtZSBpcyBvZiB0aGUgZm9ybSAnXCgnLCBidXQgYXZvaWQs IGFzIGZhciBhcworCQkgICBwb3NzaWJsZSwgdGhlIHNwdXJpb3VzIG1hdGNoZXMuICovCisJCWlm IChwID09IGNwKQorCQkgIHsKKwkJICAgIHN3aXRjaCAoKnApCisJCSAgICAgIHsgLyogSW5jbHVk ZSA9PyAqLworCQkgICAgICBjYXNlICcoJzogY2FzZSAnWyc6IGNhc2UgJyInOiBjYXNlICdcJyc6 CisJCSAgICAgIGNhc2UgJ1xcJzogY2FzZSAnISc6IGNhc2UgJz0nOiBjYXNlICcsJzoKKwkJICAg ICAgY2FzZSAnfCc6IGNhc2UgJyQnOgorCQkJcCsrOworCQkJYnJlYWs7CisJCSAgICAgIGNhc2Ug J3snOiBjYXNlICd9JzogY2FzZSAnPCc6IGNhc2UgJz4nOgorCQkJaWYgKCFvcGdycCkKKwkJCSAg eworCQkJICAgICAgcCsrOworCQkJICAgICAgaWYgKCpwID09ICdcMCcgfHwgKnAgPT0gJyUnKQor CQkJCWdvdG8gdGV4X25leHRfbGluZTsKKwkJCSAgfQorCQkJYnJlYWs7CisJCSAgICAgIGRlZmF1 bHQ6CisJCQlicmVhazsKKwkJICAgICAgfQorCQkgIH0KIAkJbmFtZWxlbiA9IHAgLSBjcDsKIAkJ bGluZWxlbiA9IGxiLmxlbjsKIAkJaWYgKCFvcGdycCB8fCAqcCA9PSBURVhfY2xncnApCkBAIC01 ODI0LDkgKzU5NzIsMTggQEAgVGVYX2NvbW1hbmRzIChGSUxFICppbmYpCiAJCSAgICAgIHArKzsK IAkJICAgIGxpbmVsZW4gPSBwIC0gbGIuYnVmZmVyICsgMTsKIAkJICB9Ci0JCW1ha2VfdGFnIChj cCwgbmFtZWxlbiwgdHJ1ZSwKLQkJCSAgbGIuYnVmZmVyLCBsaW5lbGVuLCBsaW5lbm8sIGxpbmVj aGFybm8pOwotCQlnb3RvIHRleF9uZXh0X2xpbmU7IC8qIFdlIG9ubHkgdGFnIGEgbGluZSBvbmNl ICovCisJCWlmIChuYW1lbGVuKQorCQkgIG1ha2VfdGFnIChjcCwgbmFtZWxlbiwgdHJ1ZSwKKwkJ CSAgICBsYi5idWZmZXIsIGxpbmVsZW4sIGxpbmVubywgbGluZWNoYXJubyk7CisJCS8qIExpbmVz IHdpdGggbW9yZSB0aGFuIG9uZSBcZGVmIG9yIFxsZXQgYXJlIHN1cnByaXNpbmdseQorCQkgICBj b21tb24gaW4gVGVYIGZpbGVzLCBlc3BlY2lhbGx5IGluIHRoZSBzeXN0ZW0gZmlsZXMgdGhhdAor CQkgICBmb3JtIHRoZSBiYXNpcyBvZiB0aGUgdmFyaW91cyBUZVggZm9ybWF0cy4gIFRoaXMgdGFn cyB0aGVtCisJCSAgIGFsbC4gKi8KKwkJLyogZ290byB0ZXhfbmV4dF9saW5lOyAvXCogV2Ugb25s eSB0YWcgYSBsaW5lIG9uY2UgKlwvICovCisJCXdoaWxlICgqY3AgIT0gJ1wwJyAmJiAqY3AgIT0g JyUnICYmICpjcCAhPSBURVhfZXNjKQorCQkgIGNwKys7CisJCWlmICgqY3AgIT0gVEVYX2VzYykK KwkJICBnb3RvIHRleF9uZXh0X2xpbmU7CiAJICAgICAgfQogCX0KICAgICB0ZXhfbmV4dF9saW5l OgpkaWZmIC0tZ2l0IGEvbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwgYi9saXNwL3RleHRtb2Rl cy90ZXgtbW9kZS5lbAppbmRleCA5N2M5NTAyNjdjNi4uMjI0OTMwZDY4YWUgMTAwNjQ0Ci0tLSBh L2xpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsCisrKyBiL2xpc3AvdGV4dG1vZGVzL3RleC1tb2Rl LmVsCkBAIC02MzYsNiArNjM2LDE0IEBAIHRleC1mb250LWxvY2sta2V5d29yZHMtMgogCSAgICAg IDMgJyh0ZXgtZm9udC1sb2NrLWFwcGVuZC1wcm9wICdib2xkKSAnYXBwZW5kKSkpKSkKICAgICJH YXVkeSBleHByZXNzaW9ucyB0byBoaWdobGlnaHQgaW4gVGVYIG1vZGVzLiIpCiAKKyhkZWZ2YXIt bG9jYWwgdGV4LWV4cGwtcmVnaW9uLWxpc3QgbmlsCisgICJMaXN0IG9mIHJlZ2lvbiBib3VuZGFy aWVzIHdoZXJlIGV4cGwzIHN5bnRheCBpcyBhY3RpdmUuCitJdCB3aWxsIGJlIG5pbCBpbiBidWZm ZXJzIHdoZXJlIGV4cGwzIHN5bnRheCBpcyBhbHdheXMgYWN0aXZlLCBlLmcuLAorZXhwbDMgY2xh c3NlcyBvciBwYWNrYWdlcy4iKQorCisoZGVmdmFyLWxvY2FsIHRleC1leHBsLWJ1ZmZlci1wIG5p bAorICAiTm9uLW5pbCBpbiBidWZmZXJzIHdoZXJlIGV4cGwzIHN5bnRheCBpcyBhbHdheXMgYWN0 aXZlLiIpCisKIChkZWZ1biB0ZXgtZm9udC1sb2NrLXN1c2NyaXB0IChwb3MpCiAgICh1bmxlc3Mg KG9yIChtZW1xIChnZXQtdGV4dC1wcm9wZXJ0eSBwb3MgJ2ZhY2UpCiAJCSAgICAnKGZvbnQtbG9j ay1jb25zdGFudC1mYWNlIGZvbnQtbG9jay1idWlsdGluLWZhY2UKQEAgLTY0NSw3ICs2NTMsMTcg QEAgdGV4LWZvbnQtbG9jay1zdXNjcmlwdAogCQkgICAgKHBvcyBwb3MpKQogCQkod2hpbGUgKGVx IChjaGFyLWJlZm9yZSBwb3MpID9cXCkKIAkJICAoc2V0cSBwb3MgKDEtIHBvcykgb2RkIChub3Qg b2RkKSkpCi0JCW9kZCkpCisJCW9kZCkKKyAgICAgICAgICAgICAgOzsgQ2hlY2sgaWYgUE9TIGlz IGluIGFuIGV4cGwzIHN5bnRheCByZWdpb24gb3IgYW4gZXhwbDMgYnVmZmVyCisgICAgICAgICAg ICAgICh3aGVuIChlcSAoY2hhci1hZnRlciBwb3MpID9fKQorICAgICAgICAgICAgICAgIChvciB0 ZXgtZXhwbC1idWZmZXItcAorICAgICAgICAgICAgICAgICAgICAoYW5kCisgICAgICAgICAgICAg ICAgICAgICB0ZXgtZXhwbC1yZWdpb24tbGlzdAorICAgICAgICAgICAgICAgICAgICAgKGNhdGNo ICdyZXN1bHQKKwkgICAgICAgICAgICAgICAoZG9saXN0IChyYW5nZSB0ZXgtZXhwbC1yZWdpb24t bGlzdCkKKwkgICAgICAgICAgICAgICAgIChhbmQgKD4gcG9zIChjYXIgcmFuZ2UpKQorCSAgICAg ICAgICAgICAgICAgICAgICAoPCBwb3MgKGNkciByYW5nZSkpCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAodGhyb3cgJ3Jlc3VsdCB0KSkpKSkpKSkKICAgICAoaWYgKGVxIChjaGFyLWFm dGVyIHBvcykgP18pCiAJYChmYWNlIHN1YnNjcmlwdCBkaXNwbGF5IChyYWlzZSAsKGNhciB0ZXgt Zm9udC1zY3JpcHQtZGlzcGxheSkpKQogICAgICAgYChmYWNlIHN1cGVyc2NyaXB0IGRpc3BsYXkg KHJhaXNlICwoY2FkciB0ZXgtZm9udC1zY3JpcHQtZGlzcGxheSkpKSkpKQpAQCAtMTI4OSw4ICsx MzA3LDE2IEBAIHRleC1jb21tb24taW5pdGlhbGl6YXRpb24KICAgICAgICAgICAgICAgICAjJ3Rl eC0tcHJldHRpZnktc3ltYm9scy1jb21wb3NlLXApCiAgIChzZXRxLWxvY2FsIHN5bnRheC1wcm9w ZXJ0aXplLWZ1bmN0aW9uCiAJICAgICAgKHN5bnRheC1wcm9wZXJ0aXplLXJ1bGVzIGxhdGV4LXN5 bnRheC1wcm9wZXJ0aXplLXJ1bGVzKSkKKyAgOzsgRG9uJ3QgYWRkIGV4dHJhIHByb2Nlc3Npbmcg dG8gYHN5bnRheC1wcm9wZXJ0aXplJyBpbiBmaWxlcyB3aGVyZQorICA7OyBleHBsMyBzeW50YXgg aXMgYWx3YXlzIGFjdGl2ZS4KKyAgOmFmdGVyLWhvb2sgKHByb2duICh0ZXgtZXhwbC1idWZmZXIt cGFyc2UpCisgICAgICAgICAgICAgICAgICAgICAodW5sZXNzIHRleC1leHBsLWJ1ZmZlci1wCisg ICAgICAgICAgICAgICAgICAgICAgIChhZGQtaG9vayAnc3ludGF4LXByb3BlcnRpemUtZXh0ZW5k LXJlZ2lvbi1mdW5jdGlvbnMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMndGV4 LWV4cGwtcmVnaW9uLXNldCBuaWwgdCkpKQogICA7OyBUQUJzIGluIHZlcmJhdGltIGVudmlyb25t ZW50cyBkb24ndCBkbyB3aGF0IHlvdSB0aGluay4KICAgKHNldHEtbG9jYWwgaW5kZW50LXRhYnMt bW9kZSBuaWwpCisgIDs7IFNldCB1cCB4cmVmIGJhY2tlbmQgaW4gVGVYIGJ1ZmZlcnMuCisgIChh ZGQtaG9vayAneHJlZi1iYWNrZW5kLWZ1bmN0aW9ucyAjJ3RleC0teHJlZi1iYWNrZW5kIG5pbCB0 KQogICA7OyBPdGhlciB2YXJzIHRoYXQgc2hvdWxkIGJlIGJ1ZmZlci1sb2NhbC4KICAgKG1ha2Ut bG9jYWwtdmFyaWFibGUgJ3RleC1jb21tYW5kKQogICAobWFrZS1sb2NhbC12YXJpYWJsZSAndGV4 LXN0YXJ0LW9mLWhlYWRlcikKQEAgLTE5MzYsNiArMTk2MiwzNSBAQCB0ZXgtY291bnQtd29yZHMK IAkJKGZvcndhcmQtc2V4cCAxKSkpKSkpCiAgICAgICAobWVzc2FnZSAiJXMgd29yZHMiIGNvdW50 KSkpKQogCisoZGVmdW4gdGV4LWV4cGwtYnVmZmVyLXBhcnNlICgpCisgICJJZGVudGlmeSBidWZm ZXJzIHdoZXJlIGV4cGwzIHN5bnRheCBpcyBhbHdheXMgYWN0aXZlLiIKKyAgKHNhdmUtZXhjdXJz aW9uCisgICAgKGdvdG8tY2hhciAocG9pbnQtbWluKSkKKyAgICAod2hlbiAodGV4LXNlYXJjaC1u b25jb21tZW50CisJICAgKHJlLXNlYXJjaC1mb3J3YXJkCisJICAgICJcXCg/OlxcXFxcXCg/OkV4 cGxGaWxlXFx8UHJvdmlkZXNFeHBsXFx8X194cGFyc2VfZmlsZVxcKVxcKSIKKwkgICAgbmlsIHQp KQorICAgICAgKHNldHEgdGV4LWV4cGwtYnVmZmVyLXAgdCkpKSkKKworKGRlZnVuIHRleC1leHBs LXJlZ2lvbi1zZXQgKF9iZWcgX2VuZCkKKyAgIkNyZWF0ZSBhIGxpc3Qgb2YgcmVnaW9ucyB3aGVy ZSBleHBsMyBzeW50YXggaXMgYWN0aXZlLgorVGhpcyBmdW5jdGlvbiB1cGRhdGVzIHRoZSBsaXN0 IHdoZW5ldmVyIGBzeW50YXgtcHJvcGVydGl6ZScgcnVucywgYW5kCitzdG9yZXMgaXQgaW4gdGhl IGJ1ZmZlci1sb2NhbCB2YXJpYWJsZSBgdGV4LWV4cGwtcmVnaW9uLWxpc3QnLiAgVGhlCitsaXN0 IHdpbGwgYWx3YXlzIGJlIG5pbCB3aGVuIHRoZSBidWZmZXIgdmlzaXRzIGFuIGV4cGwzIGZpbGUs IGUuZy4sIGFuCitleHBsMyBjbGFzcyBvciBwYWNrYWdlLCB3aGVyZSBleHBsMyBzeW50YXggaXMg YWx3YXlzIGFjdGl2ZS4iCisgICh1bmxlc3Mgc3ludGF4LXBwc3MtLXVwZGF0ZWQtY2FjaGU7OyBT dG9wIGZvcndhcmQgc2VhcmNoIHJ1bm5pbmcgdHdpY2UuCisgICAgKHNldHEgdGV4LWV4cGwtcmVn aW9uLWxpc3QgbmlsKQorICAgIDs7IExlYXZpbmcgdGhpcyB0ZXN0IGhlcmUgYWxsb3dzIHVzZXJz IHRvIHNldCBgdGV4LWV4cGwtYnVmZmVyLXAnCisgICAgOzsgaW5kZXBlbmRlbnRseSBvZiB0aGUg bW9kZSdzIGF1dG9tYXRpYyBkZXRlY3Rpb24gb2YgYW4gZXhwbDMgZmlsZS4KKyAgICAodW5sZXNz IHRleC1leHBsLWJ1ZmZlci1wCisgICAgICAoZ290by1jaGFyIChwb2ludC1taW4pKQorICAgICAg KHdoaWxlICh0ZXgtc2VhcmNoLW5vbmNvbW1lbnQKKyAgICAgICAgICAgICAgKHJlLXNlYXJjaC1m b3J3YXJkICJcXEV4cGxTeW50YXhPbiIgbmlsIHQpKQorICAgICAgICAobGV0ICgobmV3LWJlZyAo cG9pbnQpKQorICAgICAgICAgICAgICAobmV3LWVuZCAob3IgKHRleC1zZWFyY2gtbm9uY29tbWVu dAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIChyZS1zZWFyY2gtZm9yd2FyZCAiXFxFeHBs U3ludGF4T2ZmIiBuaWwgdCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAocG9pbnQtbWF4 KSkpKQorICAgICAgICAgIChwdXNoIChjb25zIG5ldy1iZWcgbmV3LWVuZCkgdGV4LWV4cGwtcmVn aW9uLWxpc3QpKSkpKSkKIAogDAogOzs7IEludm9raW5nIFRlWCBpbiBhbiBpbmZlcmlvciBzaGVs bC4KQEAgLTM3NDIsNiArMzc5NywzMjEgQEAgdGV4LWNoa3RleAogICAgICAgKHByb2Nlc3Mtc2Vu ZC1yZWdpb24gdGV4LWNoa3RleC0tcHJvY2VzcyAocG9pbnQtbWluKSAocG9pbnQtbWF4KSkKICAg ICAgIChwcm9jZXNzLXNlbmQtZW9mIHRleC1jaGt0ZXgtLXByb2Nlc3MpKSkpCiAKKwwKKzs7OyBY cmVmIGJhY2tlbmQKKworOzsgSGVyZSB3ZSBsaWdodGx5IGFkYXB0IHRoZSBkZWZhdWx0IGV0YWdz IGJhY2tlbmQgZm9yIHhyZWYgc28gdGhhdAorOzsgdGhlIG1haW4geHJlZiB1c2VyIGNvbW1hbmRz IChpbmNsdWRpbmcgYHhyZWYtZmluZC1kZWZpbml0aW9ucycsCis7OyBgeHJlZi1maW5kLWFwcm9w b3MnLCBhbmQgYHhyZWYtZmluZC1yZWZlcmVuY2VzJyBbb24gTS0uLCBDLU0tLiwgYW5kCis7OyBN LT8sIHJlc3BlY3RpdmVseV0pIHdvcmsgaW4gVGVYIGJ1ZmZlcnMuICBUaGUgb25seSBtZXRob2Rz IHdlCis7OyBhY3R1YWxseSBtb2RpZnkgYXJlIGB4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1hdC1w b2ludCcgYW5kCis7OyBgeHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMnLiAgTWFueSBvZiB0aGUgY29t cGxpY2F0aW9ucyBoZXJlLCBhbmQgaW4KKzs7IGBldGFncycgaXRzZWxmLCBhcmUgZHVlIHRvIHRo ZSBuZWNlc3NpdHkgb2YgcGFyc2luZyBib3RoIHRoZSBvbGQKKzs7IFRlWCBzeW50YXggYW5kIHRo ZSBuZXcgZXhwbDMgc3ludGF4LCB3aGljaCB3aWxsIGNvbnRpbnVlIHRvIGFwcGVhcgorOzsgdG9n ZXRoZXIgaW4gZG9jdW1lbnRzIGZvciB0aGUgZm9yZXNlZWFibGUgZnV0dXJlLiAgU3luY2hyb25p emluZworOzsgRW1hY3MgYW5kIGBldGFncycgdGhpcyB3YXkgYWltcyB0byBpbXByb3ZlIHRoZSB1 c2VyIGV4cGVyaWVuY2UgIm91dAorOzsgb2YgdGhlIGJveC4iCisKKyhkZWZ2YXIgdGV4LXRoaW5n YXRwdC1leGNsdWRlLWNoYXJzICcoP1xcID9ceyA/XH0pCisgICJFeGNsdWRlIHRoZXNlIGNoYXJz IGJ5IGRlZmF1bHQgZnJvbSBUZVggdGhpbmctYXQtcG9pbnQuCisKK1RoZSBUZVggYHhyZWYtYmFj a2VuZC1pZGVudGlmaWVyLWF0LXBvaW50JyBtZXRob2QgdXNlcyB0aGUgY2hhcmFjdGVycworbGlz dGVkIGluIHRoaXMgdmFyaWFibGUgdG8gZGVjaWRlIG9uIHRoZSBkZWZhdWx0IHNlYXJjaCBzdHJp bmcgdG8KK3ByZXNlbnQgdG8gdGhlIHVzZXIgd2hvIGNhbGxzIGFuIGB4cmVmJyBjb21tYW5kLiAg VGhlc2UgY2hhcmFjdGVycworYmVjb21lIHBhcnQgb2YgYSByZWdleHAgd2hpY2ggYWx3YXlzIGV4 Y2x1ZGVzIHRoZW0gZnJvbSB0aGF0IGRlZmF1bHQKK3N0cmluZy4gIEZvciB0aGUgYHhyZWYnIGNv bW1hbmRzIHRvIGZ1bmN0aW9uIHByb3Blcmx5IGluIFRlWCBidWZmZXJzLCBhdAorbGVhc3QgdGhl IFRlWCBlc2NhcGUgYW5kIHRoZSB0d28gVGVYIGdyb3VwaW5nIGNoYXJhY3RlcnMgc2hvdWxkIGJl CitsaXN0ZWQgaGVyZS4gIFNob3VsZCB5b3VyIFRlWCBkb2N1bWVudHMgY29udGFpbiBvdGhlciBj aGFyYWN0ZXJzIHdoaWNoCit5b3Ugd2FudCB0byBleGNsdWRlIGJ5IGRlZmF1bHQsIHRoZW4geW91 IGNhbiBhZGQgdGhlbSB0byB0aGUgbGlzdCwKK3Rob3VnaCB5b3UgbWF5IHdpc2ggdG8gY29uc3Vs dCB0aGUgZnVuY3Rpb25zCitgdGV4LXRoaW5nYXRwdC0tYmVnaW5uaW5nLW9mLXN5bWJvbCcgYW5k IGB0ZXgtdGhpbmdhdHB0LS1lbmQtb2Ytc3ltYm9sJwordG8gc2VlIHdoYXQgdGhlIHJlZ2V4cCBh bHJlYWR5IGNvbnRhaW5zLiAgSWYgeW91ciBkb2N1bWVudHMgY29udGFpbgorbm9uLXN0YW5kYXJk IGVzY2FwZSBhbmQgZ3JvdXBpbmcgY2hhcmFjdGVycywgdGhlbiB5b3UgY2FuIHJlcGxhY2UgdGhl Cit0aHJlZSBsaXN0ZWQgaGVyZSB3aXRoIHlvdXIgb3duLCB0aGVyZWJ5IGFsbG93aW5nIHRoZSB0 aHJlZSBzdGFuZGFyZAorY2hhcmFjdGVycyB0byBhcHBlYXIgYnkgZGVmYXVsdCBpbiBzZWFyY2gg c3RyaW5ncy4gIFBsZWFzZSBiZSBhd2FyZSwKK2hvd2V2ZXIsIHRoYXQgdGhlIGBldGFncycgcHJv Z3JhbSBvbmx5IHJlY29nbml6ZXMgYFxcJyAoOTIpIGFuZCBgIScgKDMzKQorYXMgZXNjYXBlIGNo YXJhY3RlcnMgaW4gVGVYIGRvY3VtZW50cywgYW5kIGlmIGl0IGRldGVjdHMgdGhlIGxhdHRlciBp dAorYWxzbyB1c2VzIGA8PicgYXMgdGhlIFRlWCBncm91cGluZyBjb25zdHJ1Y3QgcmF0aGVyIHRo YW4gYHt9Jy4gIFNldHRpbmcKK3RoZSBlc2NhcGUgYW5kIGdyb3VwaW5nIGNoYXJzIHRvIGFueXRo aW5nIG90aGVyIHRoYW4gYFxcPVxce30nIG9yIGAhPD4nCit3aWxsIG5vdCBiZSB1c2VmdWwgd2l0 aG91dCBjaGFuZ2VzIHRvIGBldGFncycsIGF0IGxlYXN0IGZvciBjb21tYW5kcwordGhhdCBzZWFy Y2ggdGFncyB0YWJsZXMsIHN1Y2ggYXMgXFxbeHJlZi1maW5kLWRlZmluaXRpb25zXSBhbmQgXAor XFxbeHJlZi1maW5kLWFwcm9wb3NdLgorCitTaG91bGQgeW91IHdpc2ggdG8gY2hhbmdlIHRoZSBk ZWZhdWx0cywgcGxlYXNlIGFsc28gYmUgYXdhcmUgdGhhdCwKK3dpdGhvdXQgZnVydGhlciBtb2Rp ZmljYXRpb25zIHRvIHRleC1tb2RlLmVsLCB0aGUgdXN1YWwgdGV4dC1wYXJzaW5nCityb3V0aW5l cyBmb3IgYGZvbnQtbG9jaycgYW5kIHRoZSBsaWtlIHdvbid0IHdvcmsgY29ycmVjdGx5LCBhcyB0 aGUKK2RlZmF1bHQgZXNjYXBlIGFuZCBncm91cGluZyBjaGFyYWN0ZXJzIGFyZSBjdXJyZW50bHkg aGFyZCBjb2RlZCBpbiBtYW55CitwbGFjZXMuIikKKworOzsgUG9wdWxhdGUgYHNlbWFudGljLXN5 bXJlZi1maWxlcGF0dGVybi1hbGlzdCcgZm9yIHRoZSBpbi10cmVlIG1vZGVzOworOzsgQVVDVGVY IGlzIGRvaW5nIHRoZSBzYW1lIGZvciBpdHMgbW9kZXMuCisod2l0aC1ldmFsLWFmdGVyLWxvYWQg J3NlbWFudGljL3N5bXJlZi9ncmVwCisgIChkZWZ2YXIgc2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0 ZXJuLWFsaXN0KQorICAocHVzaCAnKGxhdGV4LW1vZGUgIiouW3RUXWVbeFhdIiAiKi5sdHgiICIq LnN0eSIgIiouY2xbc29dIgorICAgICAgICAgICAgICAgICAgICAgIiouYmJsIiAiKi5kcnYiICIq Lmh2YSIpCisgICAgICAgIHNlbWFudGljLXN5bXJlZi1maWxlcGF0dGVybi1hbGlzdCkKKyAgKHB1 c2ggJyhwbGFpbi10ZXgtbW9kZSAiKi5bdFRdZVt4WF0iICIqLmlucyIpCisgICAgICAgIHNlbWFu dGljLXN5bXJlZi1maWxlcGF0dGVybi1hbGlzdCkKKyAgKHB1c2ggJyhkb2N0ZXgtbW9kZSAiKi5k dHgiKSBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QpKQorCisoZGVmdW4gdGV4LS14 cmVmLWJhY2tlbmQgKCkgJ3RleC1ldGFncykKKworOzsgU2V0dXAgQVVDVGVYIG1vZGVzIChmb3Ig dGVzdGluZyBwdXJwb3NlcyBvbmx5KS4KKworKGFkZC1ob29rICdUZVgtbW9kZS1ob29rICMndGV4 LXNldC1hdWN0ZXgteHJlZi1iYWNrZW5kKQorCisoZGVmdW4gdGV4LXNldC1hdWN0ZXgteHJlZi1i YWNrZW5kICgpCisgIChhZGQtaG9vayAneHJlZi1iYWNrZW5kLWZ1bmN0aW9ucyAjJ3RleC0teHJl Zi1iYWNrZW5kIG5pbCB0KSkKKworOzsgYHhyZWYtZmluZC1yZWZlcmVuY2VzJyBjdXJyZW50bHkg bWF5IG5lZWQgdGhpcyB3aGVuIGNhbGxlZCBmcm9tIGEKKzs7IGxhdGV4LW1vZGUgYnVmZmVyIGlu IG9yZGVyIHRvIHNlYXJjaCBmaWxlcyBvciBidWZmZXJzIHdpdGggYSAudGV4Cis7OyBzdWZmaXgg KGluY2x1ZGluZyB0aGUgYnVmZmVyIGZyb20gd2hpY2ggaXQgaGFzIGJlZW4gY2FsbGVkKS4gIFdl Cis7OyBhcHBlbmQgaXQgdG8gYGF1dG8tbW9kZS1hbGlzdCcgc28gYXMgbm90IHRvIGludGVyZmVy ZSB3aXRoIHRoZSB1c3VhbAorOzsgbW9kZS1zZXR0aW5nIGFwcGFyYXR1cy4gIENoYW5nZXMgaGVy ZSBhbmQgaW4gQVVDVGVYIHNob3VsZCBzb29uCis7OyByZW5kZXIgaXQgdW5uZWNlc3NhcnkuCiso YWRkLXRvLWxpc3QgJ2F1dG8tbW9kZS1hbGlzdCAnKCJcXC5bdFRdZVt4WF1cXCciIC4gbGF0ZXgt bW9kZSkgdCkKKworKGNsLWRlZm1ldGhvZCB4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1hdC1wb2lu dCAoKF9iYWNrZW5kIChlcWwgJ3RleC1ldGFncykpKQorICAocmVxdWlyZSAnZXRhZ3MpCisgICh0 ZXgtLXRoaW5nLWF0LXBvaW50KSkKKworOzsgVGhlIGRldGVjdGlvbiBvZiBgXycgYW5kIGA6JyBp cyBhIHByaW1pdGl2ZSBtZXRob2QgZm9yIGRldGVybWluaW5nCis7OyB3aGV0aGVyIHBvaW50IGlz IG9uIGFuIGV4cGwzIGNvbnN0cnVjdC4gIEl0IG1heSBmYWlsIGluIHNvbWUKKzs7IGluc3RhbmNl cy4KKyhkZWZ1biB0ZXgtLXRoaW5nLWF0LXBvaW50ICgpCisgICJEZW1hcmNhdGUgYHRoaW5nLWF0 LXBvaW50JyBmb3IgdGhlIFRlWCBgeHJlZicgYmFja2VuZC4iCisgIChsZXQgKChib3VuZHMgKHRl eC0tYm91bmRzLW9mLXN5bWJvbC1hdC1wb2ludCkpKQorICAgICh3aGVuIGJvdW5kcworICAgICAg KGxldCAoKHRleHN5bSAoYnVmZmVyLXN1YnN0cmluZy1uby1wcm9wZXJ0aWVzIChjYXIgYm91bmRz KSAoY2RyIGJvdW5kcykpKSkKKyAgICAgICAgKGlmIChhbmQgKG5vdCAoc3RyaW5nLW1hdGNoLXAg InJlZmVyZW5jZSIgKHN5bWJvbC1uYW1lIHRoaXMtY29tbWFuZCkpKQorICAgICAgICAgICAgICAg ICAoc2VxLWNvbnRhaW5zLXAgdGV4c3ltID9fKQorICAgICAgICAgICAgICAgICAoc2VxLWNvbnRh aW5zLXAgdGV4c3ltID86KSkKKyAgICAgICAgICAgIChzZXEtdGFrZSB0ZXhzeW0gKHNlcS1wb3Np dGlvbiB0ZXhzeW0gPzopKQorICAgICAgICAgIHRleHN5bSkpKSkpCisKKyhkZWZ1biB0ZXgtdGhp bmdhdHB0LS1iZWdpbm5pbmctb2Ytc3ltYm9sICgpCisgIChhbmQKKyAgIChyZS1zZWFyY2gtYmFj a3dhcmQgKGNvbmNhdCAiW11bIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtYXBj b25jYXQgIydyZWdleHAtcXVvdGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIChtYXBjYXIgIydjaGFyLXRvLXN0cmluZworICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXgtdGhpbmdhdHB0LWV4Y2x1ZGUtY2hhcnMpKQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJcIipgJyM9JigpJSx8JFs6Y250cmw6XVs6 Ymxhbms6XV0iKSkKKyAgIChmb3J3YXJkLWNoYXIpKSkKKworKGRlZnVuIHRleC10aGluZ2F0cHQt LWVuZC1vZi1zeW1ib2wgKCkKKyAgKGFuZAorICAgKHJlLXNlYXJjaC1mb3J3YXJkIChjb25jYXQg IltdWyIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtYXBjb25jYXQgIydyZWdleHAt cXVvdGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtYXBjYXIg IydjaGFyLXRvLXN0cmluZworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB0ZXgtdGhpbmdhdHB0LWV4Y2x1ZGUtY2hhcnMpKQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIlwiKmAnIz0mKCklLHwkWzpjbnRybDpdWzpibGFuazpdXSIpKQorICAg KGJhY2t3YXJkLWNoYXIpKSkKKworKGRlZnVuIHRleC0tYm91bmRzLW9mLXN5bWJvbC1hdC1wb2lu dCAoKQorICAiU2ltcGxpZnkgYGJvdW5kcy1vZi10aGluZy1hdC1wb2ludCcgZm9yIFRlWCBgeHJl ZicgYmFja2VuZC4iCisgIChsZXQgKChvcmlnIChwb2ludCkpKQorICAgIChpZ25vcmUtZXJyb3Jz CisgICAgICAoc2F2ZS1leGN1cnNpb24KKwkodGV4LXRoaW5nYXRwdC0tZW5kLW9mLXN5bWJvbCkK KwkodGV4LXRoaW5nYXRwdC0tYmVnaW5uaW5nLW9mLXN5bWJvbCkKKwkobGV0ICgoYmVnIChwb2lu dCkpKQorCSAgKGlmICg8PSBiZWcgb3JpZykKKwkgICAgICAobGV0ICgocmVhbC1lbmQKKwkJICAg ICAocHJvZ24KKwkJICAgICAgICh0ZXgtdGhpbmdhdHB0LS1lbmQtb2Ytc3ltYm9sKQorCQkgICAg ICAgKHBvaW50KSkpKQorCQkoY29uZCAoKGFuZCAoPD0gb3JpZyByZWFsLWVuZCkgKDwgYmVnIHJl YWwtZW5kKSkKKwkJICAgICAgIChjb25zIGJlZyByZWFsLWVuZCkpCisgICAgICAgICAgICAgICAg ICAgICAgKChhbmQgKD0gb3JpZyByZWFsLWVuZCkgKD0gYmVnIHJlYWwtZW5kKSkKKwkJICAgICAg IChjb25zIGJlZyAoMSsgYmVnKSkpKSkpKSkpKSk7OyBGb3IgMS1jaGFyIFRlWCBjb21tYW5kcy4K KworKGNsLWRlZm1ldGhvZCB4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21wbGV0aW9uLXRhYmxl ICgoX2JhY2tlbmQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIChlcWwgJ3RleC1ldGFncykpKQorICAoeHJlZi1iYWNrZW5kLWlkZW50aWZp ZXItY29tcGxldGlvbi10YWJsZSAnZXRhZ3MpKQorCisoY2wtZGVmbWV0aG9kIHhyZWYtYmFja2Vu ZC1pZGVudGlmaWVyLWNvbXBsZXRpb24taWdub3JlLWNhc2UgKChfYmFja2VuZAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGVx bAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICd0ZXgtZXRhZ3MpKSkKKyAgKHhyZWYtYmFja2VuZC1pZGVudGlmaWVyLWNvbXBs ZXRpb24taWdub3JlLWNhc2UgJ2V0YWdzKSkKKworKGNsLWRlZm1ldGhvZCB4cmVmLWJhY2tlbmQt ZGVmaW5pdGlvbnMgKChfYmFja2VuZCAoZXFsICd0ZXgtZXRhZ3MpKSBzeW1ib2wpCisgICh4cmVm LWJhY2tlbmQtZGVmaW5pdGlvbnMgJ2V0YWdzIHN5bWJvbCkpCisKKyhjbC1kZWZtZXRob2QgeHJl Zi1iYWNrZW5kLWFwcm9wb3MgKChfYmFja2VuZCAoZXFsICd0ZXgtZXRhZ3MpKSBwYXR0ZXJuKQor ICAoeHJlZi1iYWNrZW5kLWFwcm9wb3MgJ2V0YWdzIHBhdHRlcm4pKQorCis7OyBUaGUgYHhyZWYt YmFja2VuZC1yZWZlcmVuY2VzJyBtZXRob2QgcmVxdWlyZXMgbW9yZSBjb2RlIHRoYW4gdGhlCis7 OyBvdGhlcnMgZm9yIGF0IGxlYXN0IHR3byBtYWluIHJlYXNvbnM6IFRlWCBhdXRob3JzIGhhdmUg dHlwaWNhbGx5IGJlZW4KKzs7IGZyZWUgaW4gdGhlaXIgaW52ZW50aW9uIG9mIG5ldyBmaWxlIHR5 cGVzIHdpdGggbmV3IHN1ZmZpeGVzLCBhbmQgdGhleQorOzsgaGF2ZSBhbHNvIHRlbmRlZCBzb21l dGltZXMgdG8gaW5jbHVkZSBub24tc3ltYm9sIGNoYXJhY3RlcnMgaW4KKzs7IGNvbW1hbmQgbmFt ZXMuICBXaGVuIGNvbWJpbmVkIHdpdGggdGhlIGRlZmF1bHQgU2VtYW50aWMgU3ltYm9sCis7OyBS ZWZlcmVuY2UgQVBJLCB0aGVzZSB0d28gY2hhcmFjdGVyaXN0aWNzIG9mIFRlWCBjb2RlIG1lYW4g dGhhdCBhCis7OyBjb21tYW5kIGxpa2UgYHhyZWYtZmluZC1yZWZlcmVuY2VzJyB3b3VsZCBvZnRl biBmYWlsIHRvIGZpbmQgYW55IGhpdHMKKzs7IGZvciBhIHN5bWJvbCBhdCBwb2ludCwgaW5jbHVk aW5nIHRoZSBvbmUgdW5kZXIgcG9pbnQgaW4gdGhlIGN1cnJlbnQKKzs7IGJ1ZmZlciwgb3IgaXQg d291bGQgZmluZCBvbmx5IHNvbWUgaW5zdGFuY2VzIGFuZCBza2lwIG90aGVycy4KKworKGRlZnVu IHRleC1maW5kLXJlZmVyZW5jZXMtc3ludGF4LXRhYmxlICgpCisgIChsZXQgKChzdCAoaWYgKGJv dW5kcCAnVGVYLW1vZGUtc3ludGF4LXRhYmxlKQorICAgICAgICAgICAgICAgICAobWFrZS1zeW50 YXgtdGFibGUgVGVYLW1vZGUtc3ludGF4LXRhYmxlKQorICAgICAgICAgICAgICAgKG1ha2Utc3lu dGF4LXRhYmxlIHRleC1tb2RlLXN5bnRheC10YWJsZSkpKSkKKyAgICBzdCkpCisKKyhkZWZ2YXIg dGV4LS14cmVmLXN5bnRheC1mdW4gbmlsKQorCisoZGVmdW4gdGV4LXhyZWYtc3ludGF4LWZ1bmN0 aW9uIChzdHIgYmVnIGVuZCkKKyAgIlByb3ZpZGUgYSBiZXNwb2tlIGBzeW50YXgtcHJvcGVydGl6 ZS1mdW5jdGlvbicgZm9yIFxcW3hyZWYtZmluZC1yZWZlcmVuY2VzXS4iCisgIChsZXQqIChncnBi IHRlbXBzdHIKKyAgICAgICAgICAgICAgKHNocnRzdHIgKGlmIGVuZAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgKHByb2duCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzZXRxIHRl bXBzdHIgKHNlcS10YWtlIHN0ciAoMS0gKGxlbmd0aCBzdHIpKSkpCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIChpZiBiZWcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChz ZXRxIHRlbXBzdHIgKHNlcS1kcm9wIHRlbXBzdHIgMSkpCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdGVtcHN0cikpCisgICAgICAgICAgICAgICAgICAgICAgICAgKHNlcS1kcm9wIHN0 ciAxKSkpCisgICAgICAgICAgICAgIChncnBhIChpZiAoYW5kIGJlZyBlbmQpCisgICAgICAgICAg ICAgICAgICAgICAgICAocHJvZzEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAobGlzdCAx ICJfIikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKHNldHEgZ3JwYiAobGlzdCAyICJfIikp KQorICAgICAgICAgICAgICAgICAgICAgIChsaXN0IDEgIl8iKSkpCisgICAgICAgICAgICAgIChy ZSAoY29uY2F0IGJlZyAocmVnZXhwLXF1b3RlIHNocnRzdHIpIGVuZCkpCisgICAgICAgICAgICAg ICh0ZW1wLXJ1bGUgKGlmIGdycGIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxpc3Qg cmUgZ3JwYSBncnBiKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxpc3QgcmUgZ3JwYSkp KSkKKyAgICA7OyBTaW1wbGUgYmVuY2htYXJrcyBzdWdnZXN0ZWQgdGhhdCB0aGUgc3BlZWQtdXAg ZnJvbSBjb21waWxpbmcgdGhpcworICAgIDs7IGZ1bmN0aW9uIHdhcyBuZWFybHkgbmlsLCBzbyBg ZXZhbCcgYW5kIGl0cyBub24tYnl0ZS1jb21waWxlZAorICAgIDs7IGZ1bmN0aW9uIHJlbWFpbi4K KyAgICAoc2V0cSB0ZXgtLXhyZWYtc3ludGF4LWZ1biAoZXZhbAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBgKHN5bnRheC1wcm9wZXJ0aXplLXJ1bGVzICx0ZW1wLXJ1bGUpKSkpKQor CisoZGVmdW4gdGV4LS1jb2xsZWN0LWZpbGUtZXh0ZW5zaW9ucyAoKQorICAiR2F0aGVyIFRlWCBm aWxlIGV4dGVuc2lvbnMgZnJvbSBgYXV0by1tb2RlLWFsaXN0Jy4iCisgIChsZXQqICgobWxpc3Qg KHdoZW4gKHJhc3NxIG1ham9yLW1vZGUgYXV0by1tb2RlLWFsaXN0KQorCQkgIChzZXEtZmlsdGVy CisJCSAgIChsYW1iZGEgKGVsdCkKKwkJICAgICAoZXEgKGNkciBlbHQpIG1ham9yLW1vZGUpKQor CQkgICBhdXRvLW1vZGUtYWxpc3QpKSkKKwkgKGxjc3ltIChpbnRlcm4tc29mdCAoZG93bmNhc2Ug KHN5bWJvbC1uYW1lIG1ham9yLW1vZGUpKSkpCisJIChsY2xpc3QgKGFuZCBsY3N5bQorCQkgICAg ICAobm90IChlcSBsY3N5bSBtYWpvci1tb2RlKSkKKwkJICAgICAgKHJhc3NxIGxjc3ltIGF1dG8t bW9kZS1hbGlzdCkKKwkJICAgICAgKHNlcS1maWx0ZXIKKwkJICAgICAgIChsYW1iZGEgKGVsdCkK KwkJCSAoZXEgKGNkciBlbHQpIGxjc3ltKSkKKwkJICAgICAgIGF1dG8tbW9kZS1hbGlzdCkpKQor CSAoc2hvcnRzeW0gKHdoZW4gKHN0cmluZ3AgbW9kZS1uYW1lKQorCQkgICAgIChpbnRlcm4tc29m dCAoY29uY2F0IChzdHJpbmctdHJpbS1yaWdodCBtb2RlLW5hbWUgIi8uKiIpCisJCQkJCSAgIi1t b2RlIikpKSkKKwkgKGxjc2hvcnRzeW0gKHdoZW4gKHN0cmluZ3AgbW9kZS1uYW1lKQorCQkgICAg ICAgKGludGVybi1zb2Z0IChkb3duY2FzZQorCQkJCSAgICAgKGNvbmNhdAorCQkJCSAgICAgIChz dHJpbmctdHJpbS1yaWdodCBtb2RlLW5hbWUgIi8uKiIpCisJCQkJICAgICAgIi1tb2RlIikpKSkp CisJIChzaGxpc3QgKGFuZCBzaG9ydHN5bQorCQkgICAgICAobm90IChlcSBzaG9ydHN5bSBtYWpv ci1tb2RlKSkKKwkJICAgICAgKG5vdCAoZXEgc2hvcnRzeW0gbGNzeW0pKQorCQkgICAgICAocmFz c3Egc2hvcnRzeW0gYXV0by1tb2RlLWFsaXN0KQorCQkgICAgICAoc2VxLWZpbHRlcgorCQkgICAg ICAgKGxhbWJkYSAoZWx0KQorCQkJIChlcSAoY2RyIGVsdCkgc2hvcnRzeW0pKQorCQkgICAgICAg YXV0by1tb2RlLWFsaXN0KSkpCisJIChsY3NobGlzdCAoYW5kIGxjc2hvcnRzeW0KKwkJCShub3Qg KGVxIGxjc2hvcnRzeW0gbWFqb3ItbW9kZSkpCisJCQkobm90IChlcSBsY3Nob3J0c3ltIGxjc3lt KSkKKwkJCShyYXNzcSBsY3Nob3J0c3ltIGF1dG8tbW9kZS1hbGlzdCkKKwkJCShzZXEtZmlsdGVy CisJCQkgKGxhbWJkYSAoZWx0KQorCQkJICAgKGVxIChjZHIgZWx0KSBsY3Nob3J0c3ltKSkKKwkJ CSBhdXRvLW1vZGUtYWxpc3QpKSkKKwkgKGV4dHMgKHdoZW4gKG9yIG1saXN0IGxjbGlzdCBzaGxp c3QgbGNzaGxpc3QpCisJCSAoc2VxLXVuaW9uIChzZXEtbWFwICMnY2FyIGxjbGlzdCkKKwkJCSAg ICAoc2VxLXVuaW9uIChzZXEtbWFwICMnY2FyIG1saXN0KQorCQkJCSAgICAgICAoc2VxLXVuaW9u IChzZXEtbWFwICMnY2FyIGxjc2hsaXN0KQorCQkJCQkJICAoc2VxLW1hcCAjJ2NhciBzaGxpc3Qp KSkpKSkKKwkgKGVkLWV4dHMgKHdoZW4gZXh0cworCQkgICAgKHNlcS1tYXAKKwkJICAgICAobGFt YmRhIChlbHQpCisJCSAgICAgICAoY29uY2F0ICIqIiAoc3RyaW5nLXRyaW0gIGVsdCAiXFxcXCIg IlxcXFwnIikpKQorCQkgICAgIGV4dHMpKSkpCisgICAgZWQtZXh0cykpCisKKyhkZWZ2YXIgdGV4 LS1idWZmZXJzLWxpc3QgbmlsKQorKGRlZnZhci1sb2NhbCB0ZXgtLW9sZC1zeW50YXgtZnVuY3Rp b24gbmlsKQorCisoY2wtZGVmbWV0aG9kIHhyZWYtYmFja2VuZC1yZWZlcmVuY2VzICgoX2JhY2tl bmQgKGVxbCAndGV4LWV0YWdzKSkgaWRlbnRpZmllcikKKyAgIkZpbmQgcmVmZXJlbmNlcyBvZiBJ REVOVElGSUVSIGluIFRlWCBidWZmZXJzIGFuZCBmaWxlcy4iCisgIChyZXF1aXJlICdzZW1hbnRp Yy9zeW1yZWYvZ3JlcCkKKyAgKGRlZnZhciBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxp c3QpCisgIChsZXQgKGJ1ZnMgdGV4YnVmcworICAgICAgICAgICAgIChtb2RlIG1ham9yLW1vZGUp KQorICAgIChkb2xpc3QgKGJ1ZiAoYnVmZmVyLWxpc3QpKQorICAgICAgKGlmIChlcSAoYnVmZmVy LWxvY2FsLXZhbHVlICdtYWpvci1tb2RlIGJ1ZikgbW9kZSkKKyAgICAgICAgICAocHVzaCBidWYg YnVmcykKKyAgICAgICAgKHdoZW4gKHN0cmluZy1tYXRjaC1wICIuKlxcLlt0VF1lW3hYXSIgKGJ1 ZmZlci1uYW1lIGJ1ZikpCisgICAgICAgICAgKHB1c2ggYnVmIHRleGJ1ZnMpKSkpCisgICAgKHVu bGVzcyAoc2VxLXNldC1lcXVhbC1wIHRleC0tYnVmZmVycy1saXN0IGJ1ZnMpCisgICAgICAobGV0 KiAoKGFtYWxpc3QgKHRleC0tY29sbGVjdC1maWxlLWV4dGVuc2lvbnMpKQorCSAgICAgKGV4dGxp c3QgKGFsaXN0LWdldCBtb2RlIHNlbWFudGljLXN5bXJlZi1maWxlcGF0dGVybi1hbGlzdCkpCisJ ICAgICAoZXh0bGlzdC1uZXcgKHNlcS11bmlxCisgICAgICAgICAgICAgICAgICAgICAgICAgICAo c2VxLXVuaW9uIGFtYWxpc3QgZXh0bGlzdCAjJ3N0cmluZy1tYXRjaC1wKSkpKQorCShzZXRxIHRl eC0tYnVmZmVycy1saXN0IGJ1ZnMpCisJKGRvbGlzdCAoYnVmIGJ1ZnMpCisJICAod2hlbi1sZXQg KChmYnVmIChidWZmZXItZmlsZS1uYW1lIGJ1ZikpCisJCSAgICAgKGV4dCAoZmlsZS1uYW1lLWV4 dGVuc2lvbiBmYnVmKSkKKwkJICAgICAoZmluZXh0IChjb25jYXQgIiouIiBleHQpKQorCQkgICAg ICgobm90IChzZXEtZmluZCAobGFtYmRhIChlbHQpIChzdHJpbmctbWF0Y2gtcCBlbHQgZmluZXh0 KSkKKwkJCQkgICAgIGV4dGxpc3QtbmV3KSkpCisJCSAgICAgKChwdXNoIGZpbmV4dCBleHRsaXN0 LW5ldykpKSkpCisJKHVubGVzcyAoc2VxLXNldC1lcXVhbC1wIGV4dGxpc3QtbmV3IGV4dGxpc3Qp CisJICAoc2V0ZiAoYWxpc3QtZ2V0IG1vZGUgc2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0ZXJuLWFs aXN0KQorICAgICAgICAgICAgICAgIGV4dGxpc3QtbmV3KSkpKQorICAgIChsZXQqIChzZXRzeW50 YXgKKyAgICAgICAgICAgKHB1bmN0ICh3aXRoLXN5bnRheC10YWJsZSAodGV4LWZpbmQtcmVmZXJl bmNlcy1zeW50YXgtdGFibGUpCisgICAgICAgICAgICAgICAgICAgIChzZXEtcG9zaXRpb25zIGlk ZW50aWZpZXIgKGxpc3QgP3cgP18pCisJCQkgICAgICAgICAgIChsYW1iZGEgKGVsdCBzeWNvZGUp CisJCQkgICAgICAgICAgICAgKG5vdCAobWVtcSAoY2hhci1zeW50YXggZWx0KSBzeWNvZGUpKSkp KSkKKyAgICAgICAgICAgKGVuZCAoYW5kIHB1bmN0CisgICAgICAgICAgICAgICAgICAgICAobWVt cSAoMS0gKGxlbmd0aCBpZGVudGlmaWVyKSkgcHVuY3QpCisgICAgICAgICAgICAgICAgICAgICAo PiAobGVuZ3RoIGlkZW50aWZpZXIpIDEpCisgICAgICAgICAgICAgICAgICAgICAoY29uY2F0ICJc XCgiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChyZWdleHAtcXVvdGUKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIChzdHJpbmcgKGVsdCBpZGVudGlmaWVyCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDEtIChsZW5ndGggaWRlbnRpZmllcikp KSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJcXCkiKSkpCisgICAgICAgICAgIChi ZWcgKGFuZCBwdW5jdAorICAgICAgICAgICAgICAgICAgICAgKG1lbXEgMCBwdW5jdCkKKyAgICAg ICAgICAgICAgICAgICAgIChjb25jYXQgIlxcKCIKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgKHJlZ2V4cC1xdW90ZSAoc3RyaW5nIChlbHQgaWRlbnRpZmllciAwKSkpCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICJcXCkiKSkpCisgICAgICAgICAgICh0ZXh0LW1vZGUtaG9vawor ICAgICAgICAgICAgKGlmIChvciBlbmQgYmVnKQorICAgICAgICAgICAgICAgIChwcm9nbgorICAg ICAgICAgICAgICAgICAgKHRleC14cmVmLXN5bnRheC1mdW5jdGlvbiBpZGVudGlmaWVyIGJlZyBl bmQpCisgICAgICAgICAgICAgICAgICAoc2V0cSBzZXRzeW50YXggKGxhbWJkYSAoKQorCQkgICAg ICAgICAgICAgICAgICAgIChzZXRxLWxvY2FsIHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXgtLXhyZWYt c3ludGF4LWZ1bikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzZXRxLWxv Y2FsIFRlWC1zdHlsZS1ob29rLWFwcGxpZWQtcCB0KSkpCisgICAgICAgICAgICAgICAgICAoY29u cyBzZXRzeW50YXggdGV4dC1tb2RlLWhvb2spKQorICAgICAgICAgICAgICB0ZXh0LW1vZGUtaG9v aykpKQorICAgICAgKHVubGVzcyAobWVtcSAnZG9jdGV4LW1vZGUgKGRlcml2ZWQtbW9kZS1hbGwt cGFyZW50cyBtb2RlKSkKKyAgICAgICAgKHNldHEgYnVmcyAoYXBwZW5kIHRleGJ1ZnMgYnVmcykp KQorICAgICAgKHdoZW4gKG9yIGVuZCBiZWcpCisgICAgICAgIChkb2xpc3QgKGJ1ZiBidWZzKQor ICAgICAgICAgICh3aXRoLWN1cnJlbnQtYnVmZmVyIGJ1ZgorICAgICAgICAgICAgKHVubGVzcyAo bG9jYWwtdmFyaWFibGUtcCAndGV4LS1vbGQtc3ludGF4LWZ1bmN0aW9uKQorICAgICAgICAgICAg ICAoc2V0cSB0ZXgtLW9sZC1zeW50YXgtZnVuY3Rpb24gc3ludGF4LXByb3BlcnRpemUtZnVuY3Rp b24pKQorICAgICAgICAgICAgKHNldHEtbG9jYWwgc3ludGF4LXByb3BlcnRpemUtZnVuY3Rpb24K KyAgICAgICAgICAgICAgICAgICAgICAgIHRleC0teHJlZi1zeW50YXgtZnVuKQorICAgICAgICAg ICAgKHN5bnRheC1wcHNzLWZsdXNoLWNhY2hlIChwb2ludC1taW4pKSkpKQorICAgICAgKHVud2lu ZC1wcm90ZWN0CisgICAgICAgICAgKHhyZWYtYmFja2VuZC1yZWZlcmVuY2VzIG5pbCBpZGVudGlm aWVyKQorICAgICAgICAod2hlbiAob3IgZW5kIGJlZykKKyAgICAgICAgICAoZG9saXN0IChidWYg YnVmcykKKyAgICAgICAgICAgICh3aXRoLWN1cnJlbnQtYnVmZmVyIGJ1ZgorICAgICAgICAgICAg ICAod2hlbiBidWZmZXItZmlsZS10cnVlbmFtZQorICAgICAgICAgICAgICAgIChzZXRxLWxvY2Fs IHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg dGV4LS1vbGQtc3ludGF4LWZ1bmN0aW9uKQorICAgICAgICAgICAgICAgIChzeW50YXgtcHBzcy1m bHVzaC1jYWNoZSAocG9pbnQtbWluKSkpKSkpKSkpKQorCiAobWFrZS1vYnNvbGV0ZS12YXJpYWJs ZSAndGV4LW1vZGUtbG9hZC1ob29rCiAgICAgICAgICAgICAgICAgICAgICAgICAidXNlIGB3aXRo LWV2YWwtYWZ0ZXItbG9hZCcgaW5zdGVhZC4iICIyOC4xIikKIChydW4taG9va3MgJ3RleC1tb2Rl LWxvYWQtaG9vaykKLS0gCjIuMzUuOAoK --0000000000008be4640618800951-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Arash Esbati Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 16 May 2024 07:57:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: David Fussner Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Stefan Monnier , Tassilo Horn , Eli Zaretskii , stefankangas@gmail.com Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171584619129574 (code B ref 53749); Thu, 16 May 2024 07:57:01 +0000 Received: (at 53749) by debbugs.gnu.org; 16 May 2024 07:56:31 +0000 Received: from localhost ([127.0.0.1]:47270 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s7VyZ-0007gw-6i for submit@debbugs.gnu.org; Thu, 16 May 2024 03:56:31 -0400 Received: from eggs.gnu.org ([209.51.188.92]:40342) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s7VyX-0007gq-LB for 53749@debbugs.gnu.org; Thu, 16 May 2024 03:56:30 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1s7VwG-0006dN-CO; Thu, 16 May 2024 03:54:08 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=10MNOxlh0bACDO/SMICNgQIN4kU5DBR9acpu1mW1ZpI=; b=PHyIXq4VKlrmjXPTRmif k0e3b6f0i+9b2lTQfkzNZbxWzGjZJCQiGT8C00msODWwJRu9COQpwM8pGoun+z2XBHlRBzNcaK92B T278JnTDCNLE8fzrcKPYBhGVTPCryx25H28GVMtQIjbVxEY/P02eFbOJS33bUPF3PPL9b60kymztZ FMI/NHdIO/Tznyf1nozOGKbVDwWEOnhJA2Xym/phBrIYzoD08/8KvBXsmw+0fx2lNJp5GSXRKqepx 1Zug6WPkR0jSA7IvcnmdQmwolP748aRWV72kcdqteVnL9PY2yDAbdUvWhNvjQq1aGjmKHurJl07Fo m4TYhINviuBLSA==; From: Arash Esbati In-Reply-To: (David Fussner's message of "Wed, 15 May 2024 16:47:46 +0100") References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> Date: Thu, 16 May 2024 09:53:59 +0200 Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) David Fussner writes: > +(defun tex-expl-buffer-parse () > + "Identify buffers where expl3 syntax is always active." > + (save-excursion > + (goto-char (point-min)) > + (when (tex-search-noncomment > + (re-search-forward > + "\\(?:\\\\\\(?:ExplFile\\|ProvidesExpl\\|__xparse_file\\)\\)" Is the outer grouping necessary? Why not just: "\\\\\\(?:ExplFile\\|ProvidesExpl\\|__xparse_file\\)" > + nil t)) > + (setq tex-expl-buffer-p t)))) > + > +(defun tex-expl-region-set (_beg _end) > + "Create a list of regions where expl3 syntax is active. > +This function updates the list whenever `syntax-propertize' runs, and > +stores it in the buffer-local variable `tex-expl-region-list'. The > +list will always be nil when the buffer visits an expl3 file, e.g., an > +expl3 class or package, where expl3 syntax is always active." > + (unless syntax-ppss--updated-cache;; Stop forward search running twice. > + (setq tex-expl-region-list nil) > + ;; Leaving this test here allows users to set `tex-expl-buffer-p' > + ;; independently of the mode's automatic detection of an expl3 file. > + (unless tex-expl-buffer-p > + (goto-char (point-min)) > + (while (tex-search-noncomment > + (re-search-forward "\\ExplSyntaxOn" nil t)) This looks wrong, I think you want `search-forward'. > + (let ((new-beg (point)) > + (new-end (or (tex-search-noncomment > + (re-search-forward "\\ExplSyntaxOff" nil t)) Same here. > + (point-max)))) > + (push (cons new-beg new-end) tex-expl-region-list)))))) Best, Arash From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 16 May 2024 12:58:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Arash Esbati Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Stefan Monnier , Tassilo Horn , Eli Zaretskii , stefankangas@gmail.com Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171586428122792 (code B ref 53749); Thu, 16 May 2024 12:58:02 +0000 Received: (at 53749) by debbugs.gnu.org; 16 May 2024 12:58:01 +0000 Received: from localhost ([127.0.0.1]:48630 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s7agJ-0005vW-Hm for submit@debbugs.gnu.org; Thu, 16 May 2024 08:58:01 -0400 Received: from mail-pg1-f171.google.com ([209.85.215.171]:49208) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s7agD-0005vK-PS for 53749@debbugs.gnu.org; Thu, 16 May 2024 08:57:57 -0400 Received: by mail-pg1-f171.google.com with SMTP id 41be03b00d2f7-5e4f79007ffso112862a12.2 for <53749@debbugs.gnu.org>; Thu, 16 May 2024 05:57:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1715864205; x=1716469005; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=1J+/msAhJaP0ARxmPxGBOl1H1iGmOhUcxwtRZhtcTwM=; b=PWhcVNK/GReNRxqsd0Ak/7/e5MVWnwwuTEd8ARX+gNCWhNpbPiPA2uAsODwxa+FJFD wYy273+bdo2MNTA70IB7tH/oeRzMurYMnT1SA7Hjer0Bd65EyHsKWyZpb3FdBFAcA+8k KBxy/m0LToOqhWm1qgJtw9V3NbatyHutpwusmVhSFM/YCp9nWah4ZpHU0zJF84GJCwjl +No8u3d0DdHd1+vAHTPkwdE5LrmqZPqaLPxbc4pVvS+1WQGT+1aPhmLop/QTUiNrr0rP KdMazW9nDFIMilAYOZkm2goXV8YaMkb9Z4UqsgkBqH8g/MmeYByvTBgajLF6MrSXv9nJ jSxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715864205; x=1716469005; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=1J+/msAhJaP0ARxmPxGBOl1H1iGmOhUcxwtRZhtcTwM=; b=FNs2gPWFmK8re8Q+15wo4YYjvjhEIY0WF9EOkhBbLq9In6mZ/aqSjQd2rPiY83SQQC GpViKL1gSYnO1zBWYRSZVgbP1OfrZrfAddIuRif0vh7Xis9sOXvYeK+XqjAdmufSu/h7 uA6SBk4QuWTxXws4xIjL0jON8o31FaOaJ/rzAc9DQYplb81RM7Z/Fl6x/vhBGdNl0cYs spe65ZBZOQfqUX78yViYmTqaYMHwBngblLp6Q+ajazOrosEWLfMAl33EbGAa5ooLKp77 N1ovzExnDhZAwNjLw9lp4xasMDvcZGuAnA0RE2AgO+somOxRrNvPKgGEksPmu3UzhpEI e10g== X-Forwarded-Encrypted: i=1; AJvYcCVOQHpv7ZhttdRELVuLc/Aa126r+NVbKa5jsiIC1/uSLGz7/lAj4Zr8WKd5oruw2q+MUwrI58uJM1jzkWDP/Sd9JofTEHg= X-Gm-Message-State: AOJu0Yz1mqKy8GK+rbw1WPBTEc6lc9jQfNYGUpOi2KQgKS9ZsuzXUZEw ZFyth+c6qWDP2yXEFNYHgSZYLjbok/IiogzjfK6yBYlK8s6zMAC1Fs9R3VWMS9TH/3AqDr+a2Kq 6RgmXjxtkhtVrBNGGZ+ZrEZb24IE= X-Google-Smtp-Source: AGHT+IGi8hW8+E7rJj/a/QeBXqimx1uBG8ETfzuhQ7o17VmCM3o8aAaoG0EHOTiCoaBY40A89pV4NECIHoGkWSK8BUI= X-Received: by 2002:a17:90a:d251:b0:2ae:72a3:2ed4 with SMTP id 98e67ed59e1d1-2b6cc453391mr17311889a91.15.1715864205325; Thu, 16 May 2024 05:56:45 -0700 (PDT) MIME-Version: 1.0 References: <1de34060-e93b-0a42-fff5-20e283abe0dc@yandex.ru> <87o7vq0zir.fsf@gnus.org> <8735d20yvd.fsf@gnus.org> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> In-Reply-To: From: David Fussner Date: Thu, 16 May 2024 13:56:56 +0100 Message-ID: Content-Type: multipart/mixed; boundary="00000000000071180b061891c40c" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --00000000000071180b061891c40c Content-Type: text/plain; charset="UTF-8" Thanks, Arash. Agreed, on all counts. Revised patch attached. Best, David. On Thu, 16 May 2024 at 08:54, Arash Esbati wrote: > > David Fussner writes: > > > +(defun tex-expl-buffer-parse () > > + "Identify buffers where expl3 syntax is always active." > > + (save-excursion > > + (goto-char (point-min)) > > + (when (tex-search-noncomment > > + (re-search-forward > > + "\\(?:\\\\\\(?:ExplFile\\|ProvidesExpl\\|__xparse_file\\)\\)" > > Is the outer grouping necessary? Why not just: > > "\\\\\\(?:ExplFile\\|ProvidesExpl\\|__xparse_file\\)" > > > + nil t)) > > + (setq tex-expl-buffer-p t)))) > > + > > +(defun tex-expl-region-set (_beg _end) > > + "Create a list of regions where expl3 syntax is active. > > +This function updates the list whenever `syntax-propertize' runs, and > > +stores it in the buffer-local variable `tex-expl-region-list'. The > > +list will always be nil when the buffer visits an expl3 file, e.g., an > > +expl3 class or package, where expl3 syntax is always active." > > + (unless syntax-ppss--updated-cache;; Stop forward search running twice. > > + (setq tex-expl-region-list nil) > > + ;; Leaving this test here allows users to set `tex-expl-buffer-p' > > + ;; independently of the mode's automatic detection of an expl3 file. > > + (unless tex-expl-buffer-p > > + (goto-char (point-min)) > > + (while (tex-search-noncomment > > + (re-search-forward "\\ExplSyntaxOn" nil t)) > > This looks wrong, I think you want `search-forward'. > > > + (let ((new-beg (point)) > > + (new-end (or (tex-search-noncomment > > + (re-search-forward "\\ExplSyntaxOff" nil t)) > > Same here. > > > + (point-max)))) > > + (push (cons new-beg new-end) tex-expl-region-list)))))) > > Best, Arash --00000000000071180b061891c40c Content-Type: text/x-patch; charset="US-ASCII"; name="0003-Provide-a-modified-xref-backend-for-TeX-buffers.patch" Content-Disposition: attachment; filename="0003-Provide-a-modified-xref-backend-for-TeX-buffers.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lw998l1b0 RnJvbSAyODM5Y2JlMTVmOTFhMTI5MmQyNmU5MjA4ZDIxY2U0NzI3MGZkNzJlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBGdXNzbmVyIDxkZnVzc25lckBnb29nbGVtYWlsLmNv bT4KRGF0ZTogVGh1LCAxNiBNYXkgMjAyNCAxMzo1MToxMiArMDEwMApTdWJqZWN0OiBbUEFUQ0hd IFByb3ZpZGUgYSBtb2RpZmllZCB4cmVmIGJhY2tlbmQgZm9yIFRlWCBidWZmZXJzCgoqIGxpYi1z cmMvZXRhZ3MuYyAoVGVYX2NvbW1hbmRzKTogSW1wcm92ZSBwYXJzaW5nIG9mIGNvbW1hbmRzIGlu IFRlWApidWZmZXJzLgooVEVYX2RlZmVudik6IEV4cGFuZCBsaXN0IG9mIGNvbW1hbmRzIHRvIHRh ZyBieSBkZWZhdWx0IGluIFRlWApidWZmZXJzLgooVGVYX2hlbHApOgoqIGRvYy9lbWFjcy9tYWlu dGFpbmluZy50ZXhpIChUYWcgU3ludGF4KTogRG9jdW1lbnQgbmV3IHRhZ2dlZApjb21tYW5kcy4K KElkZW50aWZpZXIgU2VhcmNoKTogQWRkIG5vdGUgYWJvdXQgc2VtYW50aWMtc3ltcmVmLWZpbGVw YXR0ZXJuLWFsaXN0LAphdXRvLW1vZGUtYWxpc3QsIGFuZCB4cmVmLWZpbmQtcmVmZXJlbmNlcy4K CiogbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwgKHRleC1mb250LWxvY2stc3VzY3JpcHQpOiBU ZXN0IGZvcgp1bmRlcnNjb3JlIGluIGV4cGwzIGZpbGVzIGFuZCByZWdpb25zLCBkaXNhYmxlIHN1 YnNjcmlwdCBmYWNlIHRoZXJlLgoodGV4LWNvbW1vbi1pbml0aWFsaXphdGlvbik6IFNldCB1cCB4 cmVmIGJhY2tlbmQgZm9yIGluLXRyZWUgVGVYCm1vZGVzLiBEZXRlY3QgZXhwbDMgZmlsZXMsIGFu ZCBpbiBvdGhlcnMgc2V0IHVwIGEgbGlzdCBvZiBleHBsMwpyZWdpb25zLgoodGV4LWV4cGwtYnVm ZmVyLXBhcnNlKTogTmV3IGZ1bmN0aW9uIGNhbGxlZCBpbiBwcmV2aW91cy4KKHRleC1leHBsLWJ1 ZmZlci1wKTogTmV3IHZhciB0byBob2xkIHRoZSByZXN1bHQgb2YgcHJldmlvdXMuCih0ZXgtZXhw bC1yZWdpb24tc2V0KTogTmV3IGZ1bmN0aW9uIGFkZGVkIHRvCidzeW50YXgtcHJvcGVydGl6ZS1l eHRlbmQtcmVnaW9uLWZ1bmN0aW9ucycgaG9vay4KKHRleC1leHBsLXJlZ2lvbi1saXN0KTogTmV3 IHZhciB0byBob2xkIHRoZSByZXN1bHQgb2YgcHJldmlvdXMuCih0ZXgtLXRoaW5nLWF0LXBvaW50 LCB0ZXgtdGhpbmdhdHB0LS1iZWdpbm5pbmctb2Ytc3ltYm9sKQoodGV4LXRoaW5nYXRwdC0tZW5k LW9mLXN5bWJvbCwgdGV4LS1ib3VuZHMtb2Ytc3ltYm9sLWF0LXBvaW50KToKTmV3IGZ1bmN0aW9u cyB0byByZXR1cm4gJ3RoaW5nLWF0LXBvaW50JyBmb3IgeHJlZiBiYWNrZW5kLgoodGV4LXRoaW5n YXRwdC1leGNsdWRlLWNoYXJzKTogTmV3IHZhciB0byBkbyB0aGUgc2FtZS4KKHhyZWYtYmFja2Vu ZC1pZGVudGlmaWVyLWF0LXBvaW50KTogTmV3IFRlWCBiYWNrZW5kIG1ldGhvZCB0byBwcm92aWRl CnN5bWJvbHMgZm9yIHByb2Nlc3NpbmcgYnkgeHJlZi4KKHhyZWYtYmFja2VuZC1pZGVudGlmaWVy LWNvbXBsZXRpb24tdGFibGUpCih4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21wbGV0aW9uLWln bm9yZS1jYXNlKQooeHJlZi1iYWNrZW5kLWRlZmluaXRpb25zLCB4cmVmLWJhY2tlbmQtYXByb3Bv cyk6IFBsYWNlaG9sZGVycyB0bwpjYWxsIHRoZSBzdGFuZGFyZCAnZXRhZ3MnIHhyZWYgYmFja2Vu ZCBtZXRob2RzLgooeHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMpOiBXcmFwcGVyIHRvIGNhbGwgdGhl IGRlZmF1bHQgeHJlZiBiYWNrZW5kCm1ldGhvZCwgZmluZGluZyBhcyBtYW55IHJlbGV2YW50IGZp bGVzIGFzIHBvc3NpYmxlIGFuZCB1c2luZyBhIGJlc3Bva2UKc3ludGF4LXByb3BlcnRpemUtZnVu Y3Rpb24gd2hlbiByZXF1aXJlZC4KKHRleC0tY29sbGVjdC1maWxlLWV4dGVuc2lvbnMsIHRleC14 cmVmLXN5bnRheC1mdW5jdGlvbik6IEhlbHBlcgpmdW5jdGlvbnMgZm9yIHByZXZpb3VzLgoodGV4 LWZpbmQtcmVmZXJlbmNlcy1zeW50YXgtdGFibGUsIHRleC0tYnVmZmVycy1saXN0KQoodGV4LS14 cmVmLXN5bnRheC1mdW4sIHRleC0tb2xkLXN5bnRheC1mdW5jdGlvbik6IE5ldyB2YXJzIGZvciBz YW1lLgotLS0KIGRvYy9lbWFjcy9tYWludGFpbmluZy50ZXhpIHwgIDM5ICsrKy0KIGxpYi1zcmMv ZXRhZ3MuYyAgICAgICAgICAgIHwgMTg5ICsrKysrKysrKysrKysrKysrLS0KIGxpc3AvdGV4dG1v ZGVzL3RleC1tb2RlLmVsIHwgMzczICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr Ky0KIDMgZmlsZXMgY2hhbmdlZCwgNTgwIGluc2VydGlvbnMoKyksIDIxIGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL2RvYy9lbWFjcy9tYWludGFpbmluZy50ZXhpIGIvZG9jL2VtYWNzL21haW50 YWluaW5nLnRleGkKaW5kZXggNTc5MDk4YzgxYjEuLmEwNjQxMDNhYTI1IDEwMDY0NAotLS0gYS9k b2MvZW1hY3MvbWFpbnRhaW5pbmcudGV4aQorKysgYi9kb2MvZW1hY3MvbWFpbnRhaW5pbmcudGV4 aQpAQCAtMjUyOSw2ICsyNTI5LDE1IEBAIElkZW50aWZpZXIgU2VhcmNoCiByZWZlcmVuY2VkLiAg VGhlIFhSRUYgbW9kZSBjb21tYW5kcyBhcmUgYXZhaWxhYmxlIGluIHRoaXMgYnVmZmVyLCBzZWUK IEByZWZ7WHJlZiBDb21tYW5kc30uCiAKK1doZW4gaW52b2tlZCBpbiBhIGJ1ZmZlciB3aG9zZSBt YWpvciBtb2RlIHVzZXMgdGhlIEBjb2Rle2V0YWdzfSBiYWNrZW5kLAorQGtiZHtNLT99IHNlYXJj aGVzIGZpbGVzIGFuZCBidWZmZXJzIHdob3NlIG1ham9yIG1vZGUgbWF0Y2hlcyB0aGF0IG9mCit0 aGUgb3JpZ2luYWwgYnVmZmVyLiAgSXQgZ3Vlc3NlcyB0aGF0IG1vZGUgZnJvbSBmaWxlIGV4dGVu c2lvbnMsIHNvIGlmCitAa2Jke00tP30gc2VlbXMgdG8gYmUgc2tpcHBpbmcgcmVsZXZhbnQgYnVm ZmVycyBvciBmaWxlcywgdHJ5CitjdXN0b21pemluZyBlaXRoZXIgdGhlIHZhcmlhYmxlIEBjb2Rl e3NlbWFudGljLXN5bXJlZi1maWxlcGF0dGVybi1hbGlzdH0KKyhpZiB5b3VyIGJ1ZmZlcidzIG1h am9yIG1vZGUgYWxyZWFkeSBoYXMgYW4gZW50cnkgaW4gaXQpLCBvcgorQGNvZGV7YXV0by1tb2Rl LWFsaXN0fSAoaWYgbm90KSwgdGhlcmVieSBpbmZvcm1pbmcgQGNvZGV7eHJlZn0gb2YgdGhlCitt aXNzaW5nIGV4dGVuc2lvbnMgKEBweHJlZntDaG9vc2luZyBNb2Rlc30pLgorCiBAdmluZGV4IHhy ZWYtYXV0by1qdW1wLXRvLWZpcnN0LXhyZWYKICAgSWYgdGhlIHZhbHVlIG9mIHRoZSB2YXJpYWJs ZSBAY29kZXt4cmVmLWF1dG8tanVtcC10by1maXJzdC14cmVmfSBpcwogQGNvZGV7dH0sIEBjb2Rl e3hyZWYtZmluZC1yZWZlcmVuY2VzfSBhdXRvbWF0aWNhbGx5IGp1bXBzIHRvIHRoZSBmaXJzdApA QCAtMjc0NywxMCArMjc1NiwzMiBAQCBUYWcgU3ludGF4CiBAaXRlbQogSW4gQExhVGVYe30gZG9j dW1lbnRzLCB0aGUgYXJndW1lbnRzIGZvciBAY29kZXtcY2hhcHRlcn0sCiBAY29kZXtcc2VjdGlv bn0sIEBjb2Rle1xzdWJzZWN0aW9ufSwgQGNvZGV7XHN1YnN1YnNlY3Rpb259LAotQGNvZGV7XGVx bm99LCBAY29kZXtcbGFiZWx9LCBAY29kZXtccmVmfSwgQGNvZGV7XGNpdGV9LAotQGNvZGV7XGJp Yml0ZW19LCBAY29kZXtccGFydH0sIEBjb2Rle1xhcHBlbmRpeH0sIEBjb2Rle1xlbnRyeX0sCi1A Y29kZXtcaW5kZXh9LCBAY29kZXtcZGVmfSwgQGNvZGV7XG5ld2NvbW1hbmR9LCBAY29kZXtccmVu ZXdjb21tYW5kfSwKLUBjb2Rle1xuZXdlbnZpcm9ubWVudH0gYW5kIEBjb2Rle1xyZW5ld2Vudmly b25tZW50fSBhcmUgdGFncy4KK0Bjb2Rle1xlcW5vfSwgQGNvZGV7XGxhYmVsfSwgQGNvZGV7XHJl Zn0sIEBjb2Rle1xSZWZ9LCBAY29kZXtcZm9vdHJlZn0sCitAY29kZXtcY2l0ZX0sIEBjb2Rle1xi aWJpdGVtfSwgQGNvZGV7XHBhcnR9LCBAY29kZXtcYXBwZW5kaXh9LAorQGNvZGV7XGVudHJ5fSwg QGNvZGV7XGluZGV4fSwgQGNvZGV7XGRlZn0sIEBjb2Rle1xlZGVmfSwgQGNvZGV7XGdkZWZ9LAor QGNvZGV7XHhkZWZ9LCBAY29kZXtcbmV3Y29tbWFuZH0sIEBjb2Rle1xyZW5ld2NvbW1hbmR9LAor QGNvZGV7XG5ld2Vudmlyb25tZW50fSwgQGNvZGV7XHJlbmV3ZW52aXJvbm1lbnR9LAorQGNvZGV7 XERlY2xhcmVSb2J1c3RDb21tYW5kfSwgQGNvZGV7XG5ld3JvYnVzdGNtZH0sCitAY29kZXtccmVu ZXdyb2J1c3RjbWR9LCBAY29kZXtccHJvdmlkZWNvbW1hbmR9LAorQGNvZGV7XHByb3ZpZGVyb2J1 c3RjbWR9LCBAY29kZXtcTmV3RG9jdW1lbnRDb21tYW5kfSwKK0Bjb2Rle1xSZW5ld0RvY3VtZW50 Q29tbWFuZH0sIEBjb2Rle1xQcm92aWRlRG9jdW1lbnRDb21tYW5kfSwKK0Bjb2Rle1xEZWNsYXJl RG9jdW1lbnRDb21tYW5kfSwgQGNvZGV7XE5ld0V4cGFuZGFibGVEb2N1bWVudENvbW1hbmR9LAor QGNvZGV7XFJlbmV3RXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZH0sCitAY29kZXtcUHJvdmlkZUV4 cGFuZGFibGVEb2N1bWVudENvbW1hbmR9LAorQGNvZGV7XERlY2xhcmVFeHBhbmRhYmxlRG9jdW1l bnRDb21tYW5kfSwKK0Bjb2Rle1xOZXdEb2N1bWVudEVudmlyb25tZW50fSwgQGNvZGV7XFJlbmV3 RG9jdW1lbnRFbnZpcm9ubWVudH0sCitAY29kZXtcUHJvdmlkZURvY3VtZW50RW52aXJvbm1lbnR9 LCBAY29kZXtcRGVjbGFyZURvY3VtZW50RW52aXJvbm1lbnR9LAorQGNvZGV7XGNzZGVmfSwgQGNv ZGV7XGNzZWRlZn0sIEBjb2Rle1xjc2dkZWZ9LCBAY29kZXtcY3N4ZGVmfSwKK0Bjb2Rle1xjc2xl dGNzfSwgQGNvZGV7XGNzbGV0fSwgQGNvZGV7XGxldGNzfSwgQGNvZGV7XGxldH0sCitAY29kZXtc Y3NfbmV3X3Byb3RlY3RlZF9ub3Bhcn0sIEBjb2Rle1xjc19uZXdfcHJvdGVjdGVkfSwKK0Bjb2Rl e1xjc19uZXdfbm9wYXJ9LCBAY29kZXtcY3NfbmV3X2VxfSwgQGNvZGV7XGNzX25ld30sCitAY29k ZXtcY3Nfc2V0X3Byb3RlY3RlZF9ub3Bhcn0sIEBjb2Rle1xjc19zZXRfcHJvdGVjdGVkfSwKK0Bj b2Rle1xjc19zZXRfbm9wYXJ9LCBAY29kZXtcY3Nfc2V0X2VxfSwgQGNvZGV7XGNzX3NldH0sCitA Y29kZXtcY3NfZ3NldF9wcm90ZWN0ZWRfbm9wYXJ9LCBAY29kZXtcY3NfZ3NldF9wcm90ZWN0ZWR9 LAorQGNvZGV7XGNzX2dzZXRfbm9wYXJ9LCBAY29kZXtcY3NfZ3NldF9lcX0sIEBjb2Rle1xjc19n c2V0fSwKK0Bjb2Rle1xjc19nZW5lcmF0ZV9mcm9tX2FyZ19jb3VudH0sIGFuZCBAY29kZXtcY3Nf Z2VuZXJhdGVfdmFyaWFudH0gYXJlCit0YWdzLiAgU28gdG9vIGFyZSB0aGUgYXJndW1lbnRzIG9m IGFueSBzdGFycmVkIHZhcmlhbnRzIG9mIHRoZXNlCitjb21tYW5kcy4KIAogT3RoZXIgY29tbWFu ZHMgY2FuIG1ha2UgdGFncyBhcyB3ZWxsLCBpZiB5b3Ugc3BlY2lmeSB0aGVtIGluIHRoZQogZW52 aXJvbm1lbnQgdmFyaWFibGUgQGVudntURVhUQUdTfSBiZWZvcmUgaW52b2tpbmcgQGNvbW1hbmR7 ZXRhZ3N9LiAgVGhlCmRpZmYgLS1naXQgYS9saWItc3JjL2V0YWdzLmMgYi9saWItc3JjL2V0YWdz LmMKaW5kZXggMDNiYzU1ZGUwM2QuLjExZmRkYzE4N2MyIDEwMDY0NAotLS0gYS9saWItc3JjL2V0 YWdzLmMKKysrIGIvbGliLXNyYy9ldGFncy5jCkBAIC03OTMsMTEgKzc5MywyNyBAQCAjZGVmaW5l IFNURElOIDB4MTAwMQkJLyogcmV0dXJuZWQgYnkgZ2V0b3B0X2xvbmcgb24gLS1wYXJzZS1zdGRp biAqLwogc3RhdGljIGNvbnN0IGNoYXIgKlRlWF9zdWZmaXhlcyBbXSA9CiAgIHsgImJpYiIsICJj bG8iLCAiY2xzIiwgImx0eCIsICJzdHkiLCAiVGVYIiwgInRleCIsIE5VTEwgfTsKIHN0YXRpYyBj b25zdCBjaGFyIFRlWF9oZWxwIFtdID0KLSJJbiBMYVRlWCB0ZXh0LCB0aGUgYXJndW1lbnQgb2Yg YW55IG9mIHRoZSBjb21tYW5kcyAnXFxjaGFwdGVyJyxcblwKLSdcXHNlY3Rpb24nLCAnXFxzdWJz ZWN0aW9uJywgJ1xcc3Vic3Vic2VjdGlvbicsICdcXGVxbm8nLCAnXFxsYWJlbCcsXG5cCi0nXFxy ZWYnLCAnXFxjaXRlJywgJ1xcYmliaXRlbScsICdcXHBhcnQnLCAnXFxhcHBlbmRpeCcsICdcXGVu dHJ5JyxcblwKLSdcXGluZGV4JywgJ1xcZGVmJywgJ1xcbmV3Y29tbWFuZCcsICdcXHJlbmV3Y29t bWFuZCcsXG5cCi0nXFxuZXdlbnZpcm9ubWVudCcgb3IgJ1xccmVuZXdlbnZpcm9ubWVudCcgaXMg YSB0YWcuXG5cCisiSW4gTGFUZVggdGV4dCwgdGhlIGFyZ3VtZW50IG9mIHRoZSBjb21tYW5kcyAn XFxjaGFwdGVyJywgJ1xcc2VjdGlvbicsXG5cCisnXFxzdWJzZWN0aW9uJywgJ1xcc3Vic3Vic2Vj dGlvbicsICdcXGVxbm8nLCAnXFxsYWJlbCcsICdcXHJlZicsXG5cCisnXFxSZWYnLCAnXFxmb290 cmVmJywgJ1xcY2l0ZScsICdcXGJpYml0ZW0nLCAnXFxwYXJ0JywgJ1xcYXBwZW5kaXgnLFxuXAor J1xcZW50cnknLCAnXFxpbmRleCcsICdcXGRlZicsICdcXGVkZWYnLCAnXFxnZGVmJywgJ1xceGRl ZicsXG5cCisnXFxuZXdjb21tYW5kJywgJ1xccmVuZXdjb21tYW5kJywgJ1xcbmV3cm9idXN0Y21k JywgJ1xccmVuZXdyb2J1c3RjbWQnLFxuXAorJ1xcbmV3ZW52aXJvbm1lbnQnLCAnXFxyZW5ld2Vu dmlyb25tZW50JywgJ1xcRGVjbGFyZVJvYnVzdENvbW1hbmQnLFxuXAorJ1xccHJvdmlkZWNvbW1h bmQnLCAnXFxwcm92aWRlcm9idXN0Y21kJywgJ1xcTmV3RG9jdW1lbnRDb21tYW5kJyxcblwKKydc XFJlbmV3RG9jdW1lbnRDb21tYW5kJywgJ1xcUHJvdmlkZURvY3VtZW50Q29tbWFuZCcsXG5cCisn XFxEZWNsYXJlRG9jdW1lbnRDb21tYW5kJywgJ1xcTmV3RXhwYW5kYWJsZURvY3VtZW50Q29tbWFu ZCcsXG5cCisnXFxSZW5ld0V4cGFuZGFibGVEb2N1bWVudENvbW1hbmQnLCAnXFxQcm92aWRlRXhw YW5kYWJsZURvY3VtZW50Q29tbWFuZCcsXG5cCisnXFxEZWNsYXJlRXhwYW5kYWJsZURvY3VtZW50 Q29tbWFuZCcsICdcXE5ld0RvY3VtZW50RW52aXJvbm1lbnQnLFxuXAorJ1xcUmVuZXdEb2N1bWVu dEVudmlyb25tZW50JywgJ1xcUHJvdmlkZURvY3VtZW50RW52aXJvbm1lbnQnLFxuXAorJ1xcRGVj bGFyZURvY3VtZW50RW52aXJvbm1lbnQnLCdcXGNzZGVmJywgJ1xcY3NlZGVmJywgJ1xcY3NnZGVm JyxcblwKKydcXGNzeGRlZicsICdcXGNzbGV0Y3MnLCAnXFxjc2xldCcsICdcXGxldGNzJywgJ1xc bGV0JyxcblwKKydcXGNzX25ld19wcm90ZWN0ZWRfbm9wYXInLCAnXFxjc19uZXdfcHJvdGVjdGVk JywgJ1xcY3NfbmV3X25vcGFyJyxcblwKKydcXGNzX25ld19lcScsICdcXGNzX25ldycsICdcXGNz X3NldF9wcm90ZWN0ZWRfbm9wYXInLFxuXAorJ1xcY3Nfc2V0X3Byb3RlY3RlZCcsICdcXGNzX3Nl dF9ub3BhcicsICdcXGNzX3NldF9lcScsICdcXGNzX3NldCcsXG5cCisnXFxjc19nc2V0X3Byb3Rl Y3RlZF9ub3BhcicsICdcXGNzX2dzZXRfcHJvdGVjdGVkJywgJ1xcY3NfZ3NldF9ub3BhcicsXG5c CisnXFxjc19nc2V0X2VxJywgJ1xcY3NfZ3NldCcsICdcXGNzX2dlbmVyYXRlX2Zyb21fYXJnX2Nv dW50Jywgb3JcblwKKydcXGNzX2dlbmVyYXRlX3ZhcmlhbnQnIGlzIGEgdGFnLiAgU28gaXMgdGhl IGFyZ3VtZW50IG9mIGFueSBzdGFycmVkXG5cCit2YXJpYW50IG9mIHRoZXNlIGNvbW1hbmRzLlxu XAogXG5cCiBPdGhlciBjb21tYW5kcyBjYW4gYmUgc3BlY2lmaWVkIGJ5IHNldHRpbmcgdGhlIGVu dmlyb25tZW50IHZhcmlhYmxlXG5cCiAnVEVYVEFHUycgdG8gYSBjb2xvbi1zZXBhcmF0ZWQgbGlz dCBsaWtlLCBmb3IgZXhhbXBsZSxcblwKQEAgLTU3NDAsMTEgKzU3NTYsMjUgQEAgU2NoZW1lX2Z1 bmN0aW9ucyAoRklMRSAqaW5mKQogc3RhdGljIGxpbmVidWZmZXIgKlRFWF90b2t0YWIgPSBOVUxM OyAvKiBUYWJsZSB3aXRoIHRhZyB0b2tlbnMgKi8KIAogLyogRGVmYXVsdCBzZXQgb2YgY29udHJv bCBzZXF1ZW5jZXMgdG8gcHV0IGludG8gVEVYX3Rva3RhYi4KLSAgIFRoZSB2YWx1ZSBvZiBlbnZp cm9ubWVudCB2YXIgVEVYVEFHUyBpcyBwcmVwZW5kZWQgdG8gdGhpcy4gICovCisgICBUaGUgdmFs dWUgb2YgZW52aXJvbm1lbnQgdmFyIFRFWFRBR1MgaXMgcHJlcGVuZGVkIHRvIHRoaXMuCisgICAo MjAyNCkgQWRkIHZhcmlhbnRzIG9mICdcZGVmJywgc29tZSBhZGRpdGlvbmFsIExhVGVYIChhbmQK KyAgIGZvcm1lciB4cGFyc2UpIGNvbW1hbmRzLCBjb21tb24gdmFyaWFudHMgZnJvbSB0aGUKKyAg ICdldG9vbGJveCcgcGFja2FnZSwgYW5kIHRoZSBtYWluIGV4cGwzIGNvbW1hbmRzLiAqLwogc3Rh dGljIGNvbnN0IGNoYXIgKlRFWF9kZWZlbnYgPSAiXAotOmNoYXB0ZXI6c2VjdGlvbjpzdWJzZWN0 aW9uOnN1YnN1YnNlY3Rpb246ZXFubzpsYWJlbDpyZWY6Y2l0ZTpiaWJpdGVtXAotOnBhcnQ6YXBw ZW5kaXg6ZW50cnk6aW5kZXg6ZGVmXAotOm5ld2NvbW1hbmQ6cmVuZXdjb21tYW5kOm5ld2Vudmly b25tZW50OnJlbmV3ZW52aXJvbm1lbnQiOworOmxhYmVsOnJlZjpSZWY6Zm9vdHJlZjpjaGFwdGVy OnNlY3Rpb246c3Vic2VjdGlvbjpzdWJzdWJzZWN0aW9uOmVxbm86Y2l0ZVwKKzpiaWJpdGVtOnBh cnQ6YXBwZW5kaXg6ZW50cnk6aW5kZXg6ZGVmOmVkZWY6Z2RlZjp4ZGVmOm5ld2NvbW1hbmQ6cmVu ZXdjb21tYW5kXAorOm5ld2Vudmlyb25tZW50OnJlbmV3ZW52aXJvbm1lbnQ6RGVjbGFyZVJvYnVz dENvbW1hbmQ6cmVuZXdyb2J1c3RjbWRcCis6bmV3cm9idXN0Y21kOnByb3ZpZGVjb21tYW5kOnBy b3ZpZGVyb2J1c3RjbWQ6TmV3RG9jdW1lbnRDb21tYW5kXAorOlJlbmV3RG9jdW1lbnRDb21tYW5k OlByb3ZpZGVEb2N1bWVudENvbW1hbmQ6RGVjbGFyZURvY3VtZW50Q29tbWFuZFwKKzpOZXdFeHBh bmRhYmxlRG9jdW1lbnRDb21tYW5kOlJlbmV3RXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZFwKKzpQ cm92aWRlRXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZDpEZWNsYXJlRXhwYW5kYWJsZURvY3VtZW50 Q29tbWFuZFwKKzpOZXdEb2N1bWVudEVudmlyb25tZW50OlJlbmV3RG9jdW1lbnRFbnZpcm9ubWVu dFwKKzpQcm92aWRlRG9jdW1lbnRFbnZpcm9ubWVudDpEZWNsYXJlRG9jdW1lbnRFbnZpcm9ubWVu dDpjc2RlZlwKKzpjc2VkZWY6Y3NnZGVmOmNzeGRlZjpjc2xldGNzOmNzbGV0OmxldGNzOmxldDpj c19uZXdfcHJvdGVjdGVkX25vcGFyXAorOmNzX25ld19wcm90ZWN0ZWQ6Y3NfbmV3X25vcGFyOmNz X25ld19lcTpjc19uZXc6Y3Nfc2V0X3Byb3RlY3RlZF9ub3BhclwKKzpjc19zZXRfcHJvdGVjdGVk OmNzX3NldF9ub3Bhcjpjc19zZXRfZXE6Y3Nfc2V0OmNzX2dzZXRfcHJvdGVjdGVkX25vcGFyXAor OmNzX2dzZXRfcHJvdGVjdGVkOmNzX2dzZXRfbm9wYXI6Y3NfZ3NldF9lcTpjc19nc2V0XAorOmNz X2dlbmVyYXRlX2Zyb21fYXJnX2NvdW50OmNzX2dlbmVyYXRlX3ZhcmlhbnQiOwogCiBzdGF0aWMg dm9pZCBURVhfZGVjb2RlX2VudiAoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOwogCkBAIC01 ODAzLDE5ICs1ODMzLDEzNyBAQCBUZVhfY29tbWFuZHMgKEZJTEUgKmluZikKIAkgICAgICB7CiAJ CWNoYXIgKnA7CiAJCXB0cmRpZmZfdCBuYW1lbGVuLCBsaW5lbGVuOwotCQlib29sIG9wZ3JwID0g ZmFsc2U7CisJCWJvb2wgb3BncnAgPSBmYWxzZSwgb25lX2VzYyA9IGZhbHNlLCBpc19leHBsdGhy ZWUgPSBmYWxzZTsKIAogCQljcCA9IHNraXBfc3BhY2VzIChjcCArIGtleS0+bGVuKTsKKworCQkv KiAxLiBUaGUgY2Fub25pY2FsIGV4cGwzIHN5bnRheCBsb29rcyBzb21ldGhpbmcgbGlrZSB0aGlz OgorCQkgICBcY3NfbmV3Ok5wbiBcX19ob29rX3RsX2dwdXQ6Tm4geyBcRVJST1IgfS4gIEZpcnN0 LCBpZiB3ZQorCQkgICB3YW50IHRvIHRhZyBhbnkgc3VjaCBjb21tYW5kcywgd2UgaW5jbHVkZSBv bmx5IHRoZSBwYXJ0CisJCSAgIGJlZm9yZSB0aGUgY29sb24gKGNzX25ldykgaW4gVEVYX2RlZmVu diBvciBURVhUQUdTLiAgU2Vjb25kLAorCQkgICBldGFncyBza2lwcyB0aGUgYXJndW1lbnQgc3Bl Y2lmaWVyIChpbmNsdWRpbmcgdGhlIGNvbG9uKQorCQkgICBhZnRlciB0aGUgdGFnIHRva2VuLCBz byB0aGF0IGl0IGRvZXNuJ3QgYmVjb21lIHRoZSB0YWcgbmFtZS4KKwkJICAgVGhpcmQsIHdlIHNl dCB0aGUgYm9vbGVhbiAnaXNfZXhwbHRocmVlJyB0byB0cnVlIHNvIHRoYXQgd2UKKwkJICAgY2Fu IHJlbW92ZSB0aGUgYXJndW1lbnQgc3BlY2lmaWVyIGZyb20gdGhlIGFjdHVhbCB0YWcgbmFtZQor CQkgICAoX19ob29rX3RsX2dwdXQpLiAgVGhpcyBhbGwgYWxsb3dzIHVzIHRvIGluY2x1ZGUgZXhw bDMKKwkJICAgY29uc3RydWN0cyBpbiBURVhfZGVmZW52IG9yIGluIHRoZSBlbnZpcm9ubWVudCB2 YXJpYWJsZQorCQkgICBURVhUQUdTIHdpdGhvdXQgcmVxdWlyaW5nIGEgY2hhbmdlIG9mIHNlcGFy YXRvciwgYW5kIGl0IGFsc28KKwkJICAgYWxsb3dzIHVzIHRvIGZpbmQgdGhlIGRlZmluaXRpb24g b2YgdmFyaWFudCBjb21tYW5kcyAod2l0aAorCQkgICBkaWZmZXJlbnQgYXJndW1lbnQgc3BlY2lm aWVycykgZGVmaW5lZCB1c2luZywgZm9yIGV4YW1wbGUsCisJCSAgIFxjc19nZW5lcmF0ZV92YXJp YW50Ok5uLiAgUGxlYXNlIG5vdGUgdGhhdCB0aGUgZXhwbDMgc3BlYworCQkgICByZXF1aXJlcyBl dGFncyB0byBwYXkgbW9yZSBhdHRlbnRpb24gdG8gd2hpdGVzcGFjZSBpbiB0aGUKKwkJICAgY29k ZS4KKworCQkgICAyLiBXZSBhbHNvIGF1dG9tYXRpY2FsbHkgcmVtb3ZlIHRoZSBhc3RlcmlzayBm cm9tIHN0YXJyZWQKKwkJICAgdmFyaWFudHMgb2YgYWxsIGNvbW1hbmRzLCB3aXRob3V0IHRoZSBu ZWVkIHRvIGluY2x1ZGUgdGhlCisJCSAgIHN0YXJyZWQgY29tbWFuZHMgZXhwbGljaXRseSBpbiBU RVhfZGVmZW52IG9yIFRFWFRBR1MuICovCisJCWlmICgqY3AgPT0gJzonKQorCQkgIHsKKwkJICAg IHdoaWxlICghY19pc3NwYWNlICgqY3ApICYmICpjcCAhPSBURVhfb3BncnApCisJCSAgICAgIGNw Kys7CisJCSAgICBjcCA9IHNraXBfc3BhY2VzIChjcCk7CisJCSAgICBpc19leHBsdGhyZWUgPSB0 cnVlOworCQkgIH0KKwkJZWxzZSBpZiAoKmNwID09ICcqJykKKwkJICBjcCsrOworCisJCS8qIFNr aXAgdGhlIG9wdGlvbmFsIGFyZ3VtZW50cyB0byBjb21tYW5kcyBpbiB0aGUgdGFncyBsaXN0IHNv CisJCSAgIHRoYXQgdGhlc2UgYXJndW1lbnRzIGRvbid0IGVuZCB1cCBhcyB0aGUgbmFtZSBvZiB0 aGUgdGFnLgorCQkgICBUaGUgbmFtZSB3aWxsIGluc3RlYWQgY29tZSBmcm9tIHRoZSBhcmd1bWVu dCBpbiBjdXJseSBicmFjZXMKKwkJICAgdGhhdCBmb2xsb3dzIHRoZSBvcHRpb25hbCBvbmVzLiAq LworCQl3aGlsZSAoKmNwICE9ICdcMCcgJiYgKmNwICE9ICclJykKKwkJICB7CisJCSAgICBpZiAo KmNwID09ICdbJykKKwkJICAgICAgeworCQkJd2hpbGUgKCpjcCAhPSAnXScgJiYgKmNwICE9ICdc MCcgJiYgKmNwICE9ICclJykKKwkJCSAgY3ArKzsKKwkJICAgICAgfQorCQkgICAgZWxzZSBpZiAo KmNwID09ICcoJykKKwkJICAgICAgeworCQkJd2hpbGUgKCpjcCAhPSAnKScgJiYgKmNwICE9ICdc MCcgJiYgKmNwICE9ICclJykKKwkJCSAgY3ArKzsKKwkJICAgICAgfQorCQkgICAgZWxzZSBpZiAo KmNwID09ICddJyB8fCAqY3AgPT0gJyknKQorCQkgICAgICBjcCsrOworCQkgICAgZWxzZQorCQkg ICAgICBicmVhazsKKwkJICB9CiAJCWlmICgqY3AgPT0gVEVYX29wZ3JwKQogCQkgIHsKIAkJICAg IG9wZ3JwID0gdHJ1ZTsKIAkJICAgIGNwKys7CisJCSAgICBjcCA9IHNraXBfc3BhY2VzIChjcCk7 IC8qIEZvciBleHBsMyBjb2RlLiAqLwogCQkgIH0KKworCQkvKiBSZW1vdmluZyB0aGUgVGVYIGVz Y2FwZSBjaGFyYWN0ZXIgZnJvbSB0YWcgbmFtZXMgc2ltcGxpZmllcworCQkgICB0aGluZ3MgZm9y IGVkaXRvcnMgZmluZGluZyB0YWdnZWQgY29tbWFuZHMgaW4gVGVYIGJ1ZmZlcnMuCisJCSAgIFRo aXMgYXBwbGllcyB0byBFbWFjcyBidXQgYWxzbyB0byB0aGUgdGFnLWZpbmRpbmcgYmVoYXZpb3IK KwkJICAgb2YgYXQgbGVhc3Qgc29tZSBvZiB0aGUgZWRpdG9ycyB0aGF0IHVzZSBjdGFncywgdGhv dWdoIGluCisJCSAgIHRoZSBsYXR0ZXIgY2FzZSB0aGlzIHdpbGwgcmVtYWluIHN1Ym9wdGltYWwu ICBUaGUKKwkJICAgdW5kb2N1bWVudGVkIGN0YWdzIG9wdGlvbiAnLS1uby1kdXBsaWNhdGVzJyBt YXkgaGVscC4gKi8KKwkJaWYgKCpjcCA9PSBURVhfZXNjKQorCQkgIHsKKwkJICAgIGNwKys7CisJ CSAgICBvbmVfZXNjID0gdHJ1ZTsKKwkJICB9CisKKwkJLyogVGVzdGluZyAhY19pc3NwYWNlICYm ICFjX2lzcHVuY3QgaXMgc2ltcGxlciwgYnV0IGhhbHRzCisJCSAgIHByb2Nlc3NpbmcgYXQgdG9v IG1hbnkgcGxhY2VzLiAgVGhlIGxpc3QgYXMgaXQgc3RhbmRzIHRyaWVzCisJCSAgIGJvdGggdG8g ZW5zdXJlIHRoYXQgdGFnIG5hbWVzIHdpbGwgZGVyaXZlIGZyb20gbWFjcm8gbmFtZXMKKwkJICAg cmF0aGVyIHRoYW4gZnJvbSBvcHRpb25hbCBwYXJhbWV0ZXJzIHRvIHRob3NlIG1hY3JvcywgYW5k CisJCSAgIGFsc28gdG8gcmV0dXJuIGZpbmRhYmxlIG5hbWVzIHdoaWxlIHN0aWxsIGFsbG93aW5n IGZvcgorCQkgICB1bm9ydGhvZG94IGNvbnN0cnVjdHMuICovCiAJCWZvciAocCA9IGNwOwotCQkg ICAgICghY19pc3NwYWNlICgqcCkgJiYgKnAgIT0gJyMnICYmCi0JCSAgICAgICpwICE9IFRFWF9v cGdycCAmJiAqcCAhPSBURVhfY2xncnApOworCQkgICAgICghY19pc3NwYWNlICgqcCkgJiYgKnAg IT0gJyMnICYmICpwICE9ICc9JyAmJgorCQkgICAgICAqcCAhPSAnWycgJiYgKnAgIT0gJygnICYm ICpwICE9IFRFWF9vcGdycCAmJgorCQkgICAgICAqcCAhPSBURVhfY2xncnAgJiYgKnAgIT0gJyIn ICYmICpwICE9ICdcJycgJiYKKwkJICAgICAgKnAgIT0gJyUnICYmICpwICE9ICcsJyAmJiAqcCAh PSAnfCcgJiYgKnAgIT0gJyQnKTsKIAkJICAgICBwKyspCi0JCSAgY29udGludWU7CisJCSAgLyog SW4gZXhwbDMgY29kZSB3ZSByZW1vdmUgdGhlIGFyZ3VtZW50IHNwZWNpZmljYXRpb24gZnJvbQor CQkgICAgIHRoZSB0YWcgbmFtZS4gIE1vcmUgZ2VuZXJhbGx5IHdlIGFsbG93IG9ubHkgb25lIChk ZWxldGVkKQorCQkgICAgIGVzY2FwZSBjaGFyIGluIGEgdGFnIG5hbWUsIHdoaWNoIChwcmltYXJp bHkpIGVuYWJsZXMKKwkJICAgICB0YWdnaW5nIGEgVGVYIGNvbW1hbmQncyBkaWZmZXJlbnQsIHBv c3NpYmx5IHRlbXBvcmFyeSwKKwkJICAgICAnXGxldCcgYmluZGluZ3MuICovCisJCSAgaWYgKGlz X2V4cGx0aHJlZSAmJiAqcCA9PSAnOicpCisJCSAgICBicmVhazsKKwkJICBlbHNlIGlmICgqcCA9 PSBURVhfZXNjKQorCQkgICAgeyAvKiBTZWNvbmQgcGFydCBvZiB0ZXN0IGlzIGZvciwgZS5nLiwg XGNzbGV0LiAqLworCQkgICAgICBpZiAoIW9uZV9lc2MgJiYgIW9wZ3JwKQorCQkJeworCQkJICBv bmVfZXNjID0gdHJ1ZTsKKwkJCSAgY29udGludWU7CisJCQl9CisJCSAgICAgIGVsc2UKKwkJCWJy ZWFrOworCQkgICAgfQorCQkgIGVsc2UKKwkJICAgIGNvbnRpbnVlOworCQkvKiBGb3IgVGVYIGZp bGVzLCB0YWdzIHdpdGhvdXQgYSBuYW1lIGFyZSBiYXNpY2FsbHkgY3J1ZnQsIGFuZAorCQkgICBp biBzb21lIHNpdHVhdGlvbnMgdGhleSBjYW4gcHJvZHVjZSBzcHVyaW91cyBhbmQgY29uZnVzaW5n CisJCSAgIG1hdGNoZXMuICBUcnkgdG8gY2F0Y2ggYXMgbWFueSBjYXNlcyBhcyBwb3NzaWJsZSB3 aGVyZSBhCisJCSAgIGNvbW1hbmQgbmFtZSBpcyBvZiB0aGUgZm9ybSAnXCgnLCBidXQgYXZvaWQs IGFzIGZhciBhcworCQkgICBwb3NzaWJsZSwgdGhlIHNwdXJpb3VzIG1hdGNoZXMuICovCisJCWlm IChwID09IGNwKQorCQkgIHsKKwkJICAgIHN3aXRjaCAoKnApCisJCSAgICAgIHsgLyogSW5jbHVk ZSA9PyAqLworCQkgICAgICBjYXNlICcoJzogY2FzZSAnWyc6IGNhc2UgJyInOiBjYXNlICdcJyc6 CisJCSAgICAgIGNhc2UgJ1xcJzogY2FzZSAnISc6IGNhc2UgJz0nOiBjYXNlICcsJzoKKwkJICAg ICAgY2FzZSAnfCc6IGNhc2UgJyQnOgorCQkJcCsrOworCQkJYnJlYWs7CisJCSAgICAgIGNhc2Ug J3snOiBjYXNlICd9JzogY2FzZSAnPCc6IGNhc2UgJz4nOgorCQkJaWYgKCFvcGdycCkKKwkJCSAg eworCQkJICAgICAgcCsrOworCQkJICAgICAgaWYgKCpwID09ICdcMCcgfHwgKnAgPT0gJyUnKQor CQkJCWdvdG8gdGV4X25leHRfbGluZTsKKwkJCSAgfQorCQkJYnJlYWs7CisJCSAgICAgIGRlZmF1 bHQ6CisJCQlicmVhazsKKwkJICAgICAgfQorCQkgIH0KIAkJbmFtZWxlbiA9IHAgLSBjcDsKIAkJ bGluZWxlbiA9IGxiLmxlbjsKIAkJaWYgKCFvcGdycCB8fCAqcCA9PSBURVhfY2xncnApCkBAIC01 ODI0LDkgKzU5NzIsMTggQEAgVGVYX2NvbW1hbmRzIChGSUxFICppbmYpCiAJCSAgICAgIHArKzsK IAkJICAgIGxpbmVsZW4gPSBwIC0gbGIuYnVmZmVyICsgMTsKIAkJICB9Ci0JCW1ha2VfdGFnIChj cCwgbmFtZWxlbiwgdHJ1ZSwKLQkJCSAgbGIuYnVmZmVyLCBsaW5lbGVuLCBsaW5lbm8sIGxpbmVj aGFybm8pOwotCQlnb3RvIHRleF9uZXh0X2xpbmU7IC8qIFdlIG9ubHkgdGFnIGEgbGluZSBvbmNl ICovCisJCWlmIChuYW1lbGVuKQorCQkgIG1ha2VfdGFnIChjcCwgbmFtZWxlbiwgdHJ1ZSwKKwkJ CSAgICBsYi5idWZmZXIsIGxpbmVsZW4sIGxpbmVubywgbGluZWNoYXJubyk7CisJCS8qIExpbmVz IHdpdGggbW9yZSB0aGFuIG9uZSBcZGVmIG9yIFxsZXQgYXJlIHN1cnByaXNpbmdseQorCQkgICBj b21tb24gaW4gVGVYIGZpbGVzLCBlc3BlY2lhbGx5IGluIHRoZSBzeXN0ZW0gZmlsZXMgdGhhdAor CQkgICBmb3JtIHRoZSBiYXNpcyBvZiB0aGUgdmFyaW91cyBUZVggZm9ybWF0cy4gIFRoaXMgdGFn cyB0aGVtCisJCSAgIGFsbC4gKi8KKwkJLyogZ290byB0ZXhfbmV4dF9saW5lOyAvXCogV2Ugb25s eSB0YWcgYSBsaW5lIG9uY2UgKlwvICovCisJCXdoaWxlICgqY3AgIT0gJ1wwJyAmJiAqY3AgIT0g JyUnICYmICpjcCAhPSBURVhfZXNjKQorCQkgIGNwKys7CisJCWlmICgqY3AgIT0gVEVYX2VzYykK KwkJICBnb3RvIHRleF9uZXh0X2xpbmU7CiAJICAgICAgfQogCX0KICAgICB0ZXhfbmV4dF9saW5l OgpkaWZmIC0tZ2l0IGEvbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwgYi9saXNwL3RleHRtb2Rl cy90ZXgtbW9kZS5lbAppbmRleCA5N2M5NTAyNjdjNi4uNGE1OTVhYTFlYTUgMTAwNjQ0Ci0tLSBh L2xpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsCisrKyBiL2xpc3AvdGV4dG1vZGVzL3RleC1tb2Rl LmVsCkBAIC02MzYsNiArNjM2LDE0IEBAIHRleC1mb250LWxvY2sta2V5d29yZHMtMgogCSAgICAg IDMgJyh0ZXgtZm9udC1sb2NrLWFwcGVuZC1wcm9wICdib2xkKSAnYXBwZW5kKSkpKSkKICAgICJH YXVkeSBleHByZXNzaW9ucyB0byBoaWdobGlnaHQgaW4gVGVYIG1vZGVzLiIpCiAKKyhkZWZ2YXIt bG9jYWwgdGV4LWV4cGwtcmVnaW9uLWxpc3QgbmlsCisgICJMaXN0IG9mIHJlZ2lvbiBib3VuZGFy aWVzIHdoZXJlIGV4cGwzIHN5bnRheCBpcyBhY3RpdmUuCitJdCB3aWxsIGJlIG5pbCBpbiBidWZm ZXJzIHdoZXJlIGV4cGwzIHN5bnRheCBpcyBhbHdheXMgYWN0aXZlLCBlLmcuLAorZXhwbDMgY2xh c3NlcyBvciBwYWNrYWdlcy4iKQorCisoZGVmdmFyLWxvY2FsIHRleC1leHBsLWJ1ZmZlci1wIG5p bAorICAiTm9uLW5pbCBpbiBidWZmZXJzIHdoZXJlIGV4cGwzIHN5bnRheCBpcyBhbHdheXMgYWN0 aXZlLiIpCisKIChkZWZ1biB0ZXgtZm9udC1sb2NrLXN1c2NyaXB0IChwb3MpCiAgICh1bmxlc3Mg KG9yIChtZW1xIChnZXQtdGV4dC1wcm9wZXJ0eSBwb3MgJ2ZhY2UpCiAJCSAgICAnKGZvbnQtbG9j ay1jb25zdGFudC1mYWNlIGZvbnQtbG9jay1idWlsdGluLWZhY2UKQEAgLTY0NSw3ICs2NTMsMTcg QEAgdGV4LWZvbnQtbG9jay1zdXNjcmlwdAogCQkgICAgKHBvcyBwb3MpKQogCQkod2hpbGUgKGVx IChjaGFyLWJlZm9yZSBwb3MpID9cXCkKIAkJICAoc2V0cSBwb3MgKDEtIHBvcykgb2RkIChub3Qg b2RkKSkpCi0JCW9kZCkpCisJCW9kZCkKKyAgICAgICAgICAgICAgOzsgQ2hlY2sgaWYgUE9TIGlz IGluIGFuIGV4cGwzIHN5bnRheCByZWdpb24gb3IgYW4gZXhwbDMgYnVmZmVyCisgICAgICAgICAg ICAgICh3aGVuIChlcSAoY2hhci1hZnRlciBwb3MpID9fKQorICAgICAgICAgICAgICAgIChvciB0 ZXgtZXhwbC1idWZmZXItcAorICAgICAgICAgICAgICAgICAgICAoYW5kCisgICAgICAgICAgICAg ICAgICAgICB0ZXgtZXhwbC1yZWdpb24tbGlzdAorICAgICAgICAgICAgICAgICAgICAgKGNhdGNo ICdyZXN1bHQKKwkgICAgICAgICAgICAgICAoZG9saXN0IChyYW5nZSB0ZXgtZXhwbC1yZWdpb24t bGlzdCkKKwkgICAgICAgICAgICAgICAgIChhbmQgKD4gcG9zIChjYXIgcmFuZ2UpKQorCSAgICAg ICAgICAgICAgICAgICAgICAoPCBwb3MgKGNkciByYW5nZSkpCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAodGhyb3cgJ3Jlc3VsdCB0KSkpKSkpKSkKICAgICAoaWYgKGVxIChjaGFyLWFm dGVyIHBvcykgP18pCiAJYChmYWNlIHN1YnNjcmlwdCBkaXNwbGF5IChyYWlzZSAsKGNhciB0ZXgt Zm9udC1zY3JpcHQtZGlzcGxheSkpKQogICAgICAgYChmYWNlIHN1cGVyc2NyaXB0IGRpc3BsYXkg KHJhaXNlICwoY2FkciB0ZXgtZm9udC1zY3JpcHQtZGlzcGxheSkpKSkpKQpAQCAtMTI4OSw4ICsx MzA3LDE2IEBAIHRleC1jb21tb24taW5pdGlhbGl6YXRpb24KICAgICAgICAgICAgICAgICAjJ3Rl eC0tcHJldHRpZnktc3ltYm9scy1jb21wb3NlLXApCiAgIChzZXRxLWxvY2FsIHN5bnRheC1wcm9w ZXJ0aXplLWZ1bmN0aW9uCiAJICAgICAgKHN5bnRheC1wcm9wZXJ0aXplLXJ1bGVzIGxhdGV4LXN5 bnRheC1wcm9wZXJ0aXplLXJ1bGVzKSkKKyAgOzsgRG9uJ3QgYWRkIGV4dHJhIHByb2Nlc3Npbmcg dG8gYHN5bnRheC1wcm9wZXJ0aXplJyBpbiBmaWxlcyB3aGVyZQorICA7OyBleHBsMyBzeW50YXgg aXMgYWx3YXlzIGFjdGl2ZS4KKyAgOmFmdGVyLWhvb2sgKHByb2duICh0ZXgtZXhwbC1idWZmZXIt cGFyc2UpCisgICAgICAgICAgICAgICAgICAgICAodW5sZXNzIHRleC1leHBsLWJ1ZmZlci1wCisg ICAgICAgICAgICAgICAgICAgICAgIChhZGQtaG9vayAnc3ludGF4LXByb3BlcnRpemUtZXh0ZW5k LXJlZ2lvbi1mdW5jdGlvbnMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMndGV4 LWV4cGwtcmVnaW9uLXNldCBuaWwgdCkpKQogICA7OyBUQUJzIGluIHZlcmJhdGltIGVudmlyb25t ZW50cyBkb24ndCBkbyB3aGF0IHlvdSB0aGluay4KICAgKHNldHEtbG9jYWwgaW5kZW50LXRhYnMt bW9kZSBuaWwpCisgIDs7IFNldCB1cCB4cmVmIGJhY2tlbmQgaW4gVGVYIGJ1ZmZlcnMuCisgIChh ZGQtaG9vayAneHJlZi1iYWNrZW5kLWZ1bmN0aW9ucyAjJ3RleC0teHJlZi1iYWNrZW5kIG5pbCB0 KQogICA7OyBPdGhlciB2YXJzIHRoYXQgc2hvdWxkIGJlIGJ1ZmZlci1sb2NhbC4KICAgKG1ha2Ut bG9jYWwtdmFyaWFibGUgJ3RleC1jb21tYW5kKQogICAobWFrZS1sb2NhbC12YXJpYWJsZSAndGV4 LXN0YXJ0LW9mLWhlYWRlcikKQEAgLTE5MzYsNiArMTk2MiwzNiBAQCB0ZXgtY291bnQtd29yZHMK IAkJKGZvcndhcmQtc2V4cCAxKSkpKSkpCiAgICAgICAobWVzc2FnZSAiJXMgd29yZHMiIGNvdW50 KSkpKQogCisoZGVmdW4gdGV4LWV4cGwtYnVmZmVyLXBhcnNlICgpCisgICJJZGVudGlmeSBidWZm ZXJzIHdoZXJlIGV4cGwzIHN5bnRheCBpcyBhbHdheXMgYWN0aXZlLiIKKyAgKHNhdmUtZXhjdXJz aW9uCisgICAgKGdvdG8tY2hhciAocG9pbnQtbWluKSkKKyAgICAod2hlbiAodGV4LXNlYXJjaC1u b25jb21tZW50CisJICAgKHJlLXNlYXJjaC1mb3J3YXJkCisJICAgICJcXFxcXFwoPzpFeHBsRmls ZVxcfFByb3ZpZGVzRXhwbFxcfF9feHBhcnNlX2ZpbGVcXCkiCisJICAgIG5pbCB0KSkKKyAgICAg IChzZXRxIHRleC1leHBsLWJ1ZmZlci1wIHQpKSkpCisKKyhkZWZ1biB0ZXgtZXhwbC1yZWdpb24t c2V0IChfYmVnIF9lbmQpCisgICJDcmVhdGUgYSBsaXN0IG9mIHJlZ2lvbnMgd2hlcmUgZXhwbDMg c3ludGF4IGlzIGFjdGl2ZS4KK1RoaXMgZnVuY3Rpb24gdXBkYXRlcyB0aGUgbGlzdCB3aGVuZXZl ciBgc3ludGF4LXByb3BlcnRpemUnIHJ1bnMsIGFuZAorc3RvcmVzIGl0IGluIHRoZSBidWZmZXIt bG9jYWwgdmFyaWFibGUgYHRleC1leHBsLXJlZ2lvbi1saXN0Jy4gIFRoZQorbGlzdCB3aWxsIGFs d2F5cyBiZSBuaWwgd2hlbiB0aGUgYnVmZmVyIHZpc2l0cyBhbiBleHBsMyBmaWxlLCBlLmcuLCBh bgorZXhwbDMgY2xhc3Mgb3IgcGFja2FnZSwgd2hlcmUgZXhwbDMgc3ludGF4IGlzIGFsd2F5cyBh Y3RpdmUuIgorICAodW5sZXNzIHN5bnRheC1wcHNzLS11cGRhdGVkLWNhY2hlOzsgU3RvcCBmb3J3 YXJkIHNlYXJjaCBydW5uaW5nIHR3aWNlLgorICAgIChzZXRxIHRleC1leHBsLXJlZ2lvbi1saXN0 IG5pbCkKKyAgICA7OyBMZWF2aW5nIHRoaXMgdGVzdCBoZXJlIGFsbG93cyB1c2VycyB0byBzZXQg YHRleC1leHBsLWJ1ZmZlci1wJworICAgIDs7IGluZGVwZW5kZW50bHkgb2YgdGhlIG1vZGUncyBh dXRvbWF0aWMgZGV0ZWN0aW9uIG9mIGFuIGV4cGwzIGZpbGUuCisgICAgKHVubGVzcyB0ZXgtZXhw bC1idWZmZXItcAorICAgICAgKGdvdG8tY2hhciAocG9pbnQtbWluKSkKKyAgICAgIChsZXQgKChj YXNlLWZvbGQtc2VhcmNoIG5pbCkpCisgICAgICAgICh3aGlsZSAodGV4LXNlYXJjaC1ub25jb21t ZW50CisgICAgICAgICAgICAgICAgKHNlYXJjaC1mb3J3YXJkICJcXEV4cGxTeW50YXhPbiIgbmls IHQpKQorICAgICAgICAgIChsZXQgKChuZXctYmVnIChwb2ludCkpCisgICAgICAgICAgICAgICAg KG5ldy1lbmQgKG9yICh0ZXgtc2VhcmNoLW5vbmNvbW1lbnQKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIChzZWFyY2gtZm9yd2FyZCAiXFxFeHBsU3ludGF4T2ZmIiBuaWwgdCkpCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIChwb2ludC1tYXgpKSkpCisgICAgICAgICAgICAocHVz aCAoY29ucyBuZXctYmVnIG5ldy1lbmQpIHRleC1leHBsLXJlZ2lvbi1saXN0KSkpKSkpKQogCiAM CiA7OzsgSW52b2tpbmcgVGVYIGluIGFuIGluZmVyaW9yIHNoZWxsLgpAQCAtMzc0Miw2ICszNzk4 LDMyMSBAQCB0ZXgtY2hrdGV4CiAgICAgICAocHJvY2Vzcy1zZW5kLXJlZ2lvbiB0ZXgtY2hrdGV4 LS1wcm9jZXNzIChwb2ludC1taW4pIChwb2ludC1tYXgpKQogICAgICAgKHByb2Nlc3Mtc2VuZC1l b2YgdGV4LWNoa3RleC0tcHJvY2VzcykpKSkKIAorDAorOzs7IFhyZWYgYmFja2VuZAorCis7OyBI ZXJlIHdlIGxpZ2h0bHkgYWRhcHQgdGhlIGRlZmF1bHQgZXRhZ3MgYmFja2VuZCBmb3IgeHJlZiBz byB0aGF0Cis7OyB0aGUgbWFpbiB4cmVmIHVzZXIgY29tbWFuZHMgKGluY2x1ZGluZyBgeHJlZi1m aW5kLWRlZmluaXRpb25zJywKKzs7IGB4cmVmLWZpbmQtYXByb3BvcycsIGFuZCBgeHJlZi1maW5k LXJlZmVyZW5jZXMnIFtvbiBNLS4sIEMtTS0uLCBhbmQKKzs7IE0tPywgcmVzcGVjdGl2ZWx5XSkg d29yayBpbiBUZVggYnVmZmVycy4gIFRoZSBvbmx5IG1ldGhvZHMgd2UKKzs7IGFjdHVhbGx5IG1v ZGlmeSBhcmUgYHhyZWYtYmFja2VuZC1pZGVudGlmaWVyLWF0LXBvaW50JyBhbmQKKzs7IGB4cmVm LWJhY2tlbmQtcmVmZXJlbmNlcycuICBNYW55IG9mIHRoZSBjb21wbGljYXRpb25zIGhlcmUsIGFu ZCBpbgorOzsgYGV0YWdzJyBpdHNlbGYsIGFyZSBkdWUgdG8gdGhlIG5lY2Vzc2l0eSBvZiBwYXJz aW5nIGJvdGggdGhlIG9sZAorOzsgVGVYIHN5bnRheCBhbmQgdGhlIG5ldyBleHBsMyBzeW50YXgs IHdoaWNoIHdpbGwgY29udGludWUgdG8gYXBwZWFyCis7OyB0b2dldGhlciBpbiBkb2N1bWVudHMg Zm9yIHRoZSBmb3Jlc2VlYWJsZSBmdXR1cmUuICBTeW5jaHJvbml6aW5nCis7OyBFbWFjcyBhbmQg YGV0YWdzJyB0aGlzIHdheSBhaW1zIHRvIGltcHJvdmUgdGhlIHVzZXIgZXhwZXJpZW5jZSAib3V0 Cis7OyBvZiB0aGUgYm94LiIKKworKGRlZnZhciB0ZXgtdGhpbmdhdHB0LWV4Y2x1ZGUtY2hhcnMg Jyg/XFwgP1x7ID9cfSkKKyAgIkV4Y2x1ZGUgdGhlc2UgY2hhcnMgYnkgZGVmYXVsdCBmcm9tIFRl WCB0aGluZy1hdC1wb2ludC4KKworVGhlIFRlWCBgeHJlZi1iYWNrZW5kLWlkZW50aWZpZXItYXQt cG9pbnQnIG1ldGhvZCB1c2VzIHRoZSBjaGFyYWN0ZXJzCitsaXN0ZWQgaW4gdGhpcyB2YXJpYWJs ZSB0byBkZWNpZGUgb24gdGhlIGRlZmF1bHQgc2VhcmNoIHN0cmluZyB0bworcHJlc2VudCB0byB0 aGUgdXNlciB3aG8gY2FsbHMgYW4gYHhyZWYnIGNvbW1hbmQuICBUaGVzZSBjaGFyYWN0ZXJzCiti ZWNvbWUgcGFydCBvZiBhIHJlZ2V4cCB3aGljaCBhbHdheXMgZXhjbHVkZXMgdGhlbSBmcm9tIHRo YXQgZGVmYXVsdAorc3RyaW5nLiAgRm9yIHRoZSBgeHJlZicgY29tbWFuZHMgdG8gZnVuY3Rpb24g cHJvcGVybHkgaW4gVGVYIGJ1ZmZlcnMsIGF0CitsZWFzdCB0aGUgVGVYIGVzY2FwZSBhbmQgdGhl IHR3byBUZVggZ3JvdXBpbmcgY2hhcmFjdGVycyBzaG91bGQgYmUKK2xpc3RlZCBoZXJlLiAgU2hv dWxkIHlvdXIgVGVYIGRvY3VtZW50cyBjb250YWluIG90aGVyIGNoYXJhY3RlcnMgd2hpY2gKK3lv dSB3YW50IHRvIGV4Y2x1ZGUgYnkgZGVmYXVsdCwgdGhlbiB5b3UgY2FuIGFkZCB0aGVtIHRvIHRo ZSBsaXN0LAordGhvdWdoIHlvdSBtYXkgd2lzaCB0byBjb25zdWx0IHRoZSBmdW5jdGlvbnMKK2B0 ZXgtdGhpbmdhdHB0LS1iZWdpbm5pbmctb2Ytc3ltYm9sJyBhbmQgYHRleC10aGluZ2F0cHQtLWVu ZC1vZi1zeW1ib2wnCit0byBzZWUgd2hhdCB0aGUgcmVnZXhwIGFscmVhZHkgY29udGFpbnMuICBJ ZiB5b3VyIGRvY3VtZW50cyBjb250YWluCitub24tc3RhbmRhcmQgZXNjYXBlIGFuZCBncm91cGlu ZyBjaGFyYWN0ZXJzLCB0aGVuIHlvdSBjYW4gcmVwbGFjZSB0aGUKK3RocmVlIGxpc3RlZCBoZXJl IHdpdGggeW91ciBvd24sIHRoZXJlYnkgYWxsb3dpbmcgdGhlIHRocmVlIHN0YW5kYXJkCitjaGFy YWN0ZXJzIHRvIGFwcGVhciBieSBkZWZhdWx0IGluIHNlYXJjaCBzdHJpbmdzLiAgUGxlYXNlIGJl IGF3YXJlLAoraG93ZXZlciwgdGhhdCB0aGUgYGV0YWdzJyBwcm9ncmFtIG9ubHkgcmVjb2duaXpl cyBgXFwnICg5MikgYW5kIGAhJyAoMzMpCithcyBlc2NhcGUgY2hhcmFjdGVycyBpbiBUZVggZG9j dW1lbnRzLCBhbmQgaWYgaXQgZGV0ZWN0cyB0aGUgbGF0dGVyIGl0CithbHNvIHVzZXMgYDw+JyBh cyB0aGUgVGVYIGdyb3VwaW5nIGNvbnN0cnVjdCByYXRoZXIgdGhhbiBge30nLiAgU2V0dGluZwor dGhlIGVzY2FwZSBhbmQgZ3JvdXBpbmcgY2hhcnMgdG8gYW55dGhpbmcgb3RoZXIgdGhhbiBgXFw9 XFx7fScgb3IgYCE8PicKK3dpbGwgbm90IGJlIHVzZWZ1bCB3aXRob3V0IGNoYW5nZXMgdG8gYGV0 YWdzJywgYXQgbGVhc3QgZm9yIGNvbW1hbmRzCit0aGF0IHNlYXJjaCB0YWdzIHRhYmxlcywgc3Vj aCBhcyBcXFt4cmVmLWZpbmQtZGVmaW5pdGlvbnNdIGFuZCBcCitcXFt4cmVmLWZpbmQtYXByb3Bv c10uCisKK1Nob3VsZCB5b3Ugd2lzaCB0byBjaGFuZ2UgdGhlIGRlZmF1bHRzLCBwbGVhc2UgYWxz byBiZSBhd2FyZSB0aGF0LAord2l0aG91dCBmdXJ0aGVyIG1vZGlmaWNhdGlvbnMgdG8gdGV4LW1v ZGUuZWwsIHRoZSB1c3VhbCB0ZXh0LXBhcnNpbmcKK3JvdXRpbmVzIGZvciBgZm9udC1sb2NrJyBh bmQgdGhlIGxpa2Ugd29uJ3Qgd29yayBjb3JyZWN0bHksIGFzIHRoZQorZGVmYXVsdCBlc2NhcGUg YW5kIGdyb3VwaW5nIGNoYXJhY3RlcnMgYXJlIGN1cnJlbnRseSBoYXJkIGNvZGVkIGluIG1hbnkK K3BsYWNlcy4iKQorCis7OyBQb3B1bGF0ZSBgc2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0ZXJuLWFs aXN0JyBmb3IgdGhlIGluLXRyZWUgbW9kZXM7Cis7OyBBVUNUZVggaXMgZG9pbmcgdGhlIHNhbWUg Zm9yIGl0cyBtb2Rlcy4KKyh3aXRoLWV2YWwtYWZ0ZXItbG9hZCAnc2VtYW50aWMvc3ltcmVmL2dy ZXAKKyAgKGRlZnZhciBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QpCisgIChwdXNo ICcobGF0ZXgtbW9kZSAiKi5bdFRdZVt4WF0iICIqLmx0eCIgIiouc3R5IiAiKi5jbFtzb10iCisg ICAgICAgICAgICAgICAgICAgICAiKi5iYmwiICIqLmRydiIgIiouaHZhIikKKyAgICAgICAgc2Vt YW50aWMtc3ltcmVmLWZpbGVwYXR0ZXJuLWFsaXN0KQorICAocHVzaCAnKHBsYWluLXRleC1tb2Rl ICIqLlt0VF1lW3hYXSIgIiouaW5zIikKKyAgICAgICAgc2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0 ZXJuLWFsaXN0KQorICAocHVzaCAnKGRvY3RleC1tb2RlICIqLmR0eCIpIHNlbWFudGljLXN5bXJl Zi1maWxlcGF0dGVybi1hbGlzdCkpCisKKyhkZWZ1biB0ZXgtLXhyZWYtYmFja2VuZCAoKSAndGV4 LWV0YWdzKQorCis7OyBTZXR1cCBBVUNUZVggbW9kZXMgKGZvciB0ZXN0aW5nIHB1cnBvc2VzIG9u bHkpLgorCisoYWRkLWhvb2sgJ1RlWC1tb2RlLWhvb2sgIyd0ZXgtc2V0LWF1Y3RleC14cmVmLWJh Y2tlbmQpCisKKyhkZWZ1biB0ZXgtc2V0LWF1Y3RleC14cmVmLWJhY2tlbmQgKCkKKyAgKGFkZC1o b29rICd4cmVmLWJhY2tlbmQtZnVuY3Rpb25zICMndGV4LS14cmVmLWJhY2tlbmQgbmlsIHQpKQor Cis7OyBgeHJlZi1maW5kLXJlZmVyZW5jZXMnIGN1cnJlbnRseSBtYXkgbmVlZCB0aGlzIHdoZW4g Y2FsbGVkIGZyb20gYQorOzsgbGF0ZXgtbW9kZSBidWZmZXIgaW4gb3JkZXIgdG8gc2VhcmNoIGZp bGVzIG9yIGJ1ZmZlcnMgd2l0aCBhIC50ZXgKKzs7IHN1ZmZpeCAoaW5jbHVkaW5nIHRoZSBidWZm ZXIgZnJvbSB3aGljaCBpdCBoYXMgYmVlbiBjYWxsZWQpLiAgV2UKKzs7IGFwcGVuZCBpdCB0byBg YXV0by1tb2RlLWFsaXN0JyBzbyBhcyBub3QgdG8gaW50ZXJmZXJlIHdpdGggdGhlIHVzdWFsCis7 OyBtb2RlLXNldHRpbmcgYXBwYXJhdHVzLiAgQ2hhbmdlcyBoZXJlIGFuZCBpbiBBVUNUZVggc2hv dWxkIHNvb24KKzs7IHJlbmRlciBpdCB1bm5lY2Vzc2FyeS4KKyhhZGQtdG8tbGlzdCAnYXV0by1t b2RlLWFsaXN0ICcoIlxcLlt0VF1lW3hYXVxcJyIgLiBsYXRleC1tb2RlKSB0KQorCisoY2wtZGVm bWV0aG9kIHhyZWYtYmFja2VuZC1pZGVudGlmaWVyLWF0LXBvaW50ICgoX2JhY2tlbmQgKGVxbCAn dGV4LWV0YWdzKSkpCisgIChyZXF1aXJlICdldGFncykKKyAgKHRleC0tdGhpbmctYXQtcG9pbnQp KQorCis7OyBUaGUgZGV0ZWN0aW9uIG9mIGBfJyBhbmQgYDonIGlzIGEgcHJpbWl0aXZlIG1ldGhv ZCBmb3IgZGV0ZXJtaW5pbmcKKzs7IHdoZXRoZXIgcG9pbnQgaXMgb24gYW4gZXhwbDMgY29uc3Ry dWN0LiAgSXQgbWF5IGZhaWwgaW4gc29tZQorOzsgaW5zdGFuY2VzLgorKGRlZnVuIHRleC0tdGhp bmctYXQtcG9pbnQgKCkKKyAgIkRlbWFyY2F0ZSBgdGhpbmctYXQtcG9pbnQnIGZvciB0aGUgVGVY IGB4cmVmJyBiYWNrZW5kLiIKKyAgKGxldCAoKGJvdW5kcyAodGV4LS1ib3VuZHMtb2Ytc3ltYm9s LWF0LXBvaW50KSkpCisgICAgKHdoZW4gYm91bmRzCisgICAgICAobGV0ICgodGV4c3ltIChidWZm ZXItc3Vic3RyaW5nLW5vLXByb3BlcnRpZXMgKGNhciBib3VuZHMpIChjZHIgYm91bmRzKSkpKQor ICAgICAgICAoaWYgKGFuZCAobm90IChzdHJpbmctbWF0Y2gtcCAicmVmZXJlbmNlIiAoc3ltYm9s LW5hbWUgdGhpcy1jb21tYW5kKSkpCisgICAgICAgICAgICAgICAgIChzZXEtY29udGFpbnMtcCB0 ZXhzeW0gP18pCisgICAgICAgICAgICAgICAgIChzZXEtY29udGFpbnMtcCB0ZXhzeW0gPzopKQor ICAgICAgICAgICAgKHNlcS10YWtlIHRleHN5bSAoc2VxLXBvc2l0aW9uIHRleHN5bSA/OikpCisg ICAgICAgICAgdGV4c3ltKSkpKSkKKworKGRlZnVuIHRleC10aGluZ2F0cHQtLWJlZ2lubmluZy1v Zi1zeW1ib2wgKCkKKyAgKGFuZAorICAgKHJlLXNlYXJjaC1iYWNrd2FyZCAoY29uY2F0ICJbXVsi CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1hcGNvbmNhdCAjJ3JlZ2V4cC1xdW90 ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1hcGNhciAjJ2No YXItdG8tc3RyaW5nCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHRleC10aGluZ2F0cHQtZXhjbHVkZS1jaGFycykpCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIlwiKmAnIz0mKCklLHwkWzpjbnRybDpdWzpibGFuazpdXSIpKQorICAgKGZv cndhcmQtY2hhcikpKQorCisoZGVmdW4gdGV4LXRoaW5nYXRwdC0tZW5kLW9mLXN5bWJvbCAoKQor ICAoYW5kCisgICAocmUtc2VhcmNoLWZvcndhcmQgKGNvbmNhdCAiW11bIgorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgKG1hcGNvbmNhdCAjJ3JlZ2V4cC1xdW90ZQorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1hcGNhciAjJ2NoYXItdG8tc3RyaW5nCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleC10aGlu Z2F0cHQtZXhjbHVkZS1jaGFycykpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiXCIq YCcjPSYoKSUsfCRbOmNudHJsOl1bOmJsYW5rOl1dIikpCisgICAoYmFja3dhcmQtY2hhcikpKQor CisoZGVmdW4gdGV4LS1ib3VuZHMtb2Ytc3ltYm9sLWF0LXBvaW50ICgpCisgICJTaW1wbGlmeSBg Ym91bmRzLW9mLXRoaW5nLWF0LXBvaW50JyBmb3IgVGVYIGB4cmVmJyBiYWNrZW5kLiIKKyAgKGxl dCAoKG9yaWcgKHBvaW50KSkpCisgICAgKGlnbm9yZS1lcnJvcnMKKyAgICAgIChzYXZlLWV4Y3Vy c2lvbgorCSh0ZXgtdGhpbmdhdHB0LS1lbmQtb2Ytc3ltYm9sKQorCSh0ZXgtdGhpbmdhdHB0LS1i ZWdpbm5pbmctb2Ytc3ltYm9sKQorCShsZXQgKChiZWcgKHBvaW50KSkpCisJICAoaWYgKDw9IGJl ZyBvcmlnKQorCSAgICAgIChsZXQgKChyZWFsLWVuZAorCQkgICAgIChwcm9nbgorCQkgICAgICAg KHRleC10aGluZ2F0cHQtLWVuZC1vZi1zeW1ib2wpCisJCSAgICAgICAocG9pbnQpKSkpCisJCShj b25kICgoYW5kICg8PSBvcmlnIHJlYWwtZW5kKSAoPCBiZWcgcmVhbC1lbmQpKQorCQkgICAgICAg KGNvbnMgYmVnIHJlYWwtZW5kKSkKKyAgICAgICAgICAgICAgICAgICAgICAoKGFuZCAoPSBvcmln IHJlYWwtZW5kKSAoPSBiZWcgcmVhbC1lbmQpKQorCQkgICAgICAgKGNvbnMgYmVnICgxKyBiZWcp KSkpKSkpKSkpKTs7IEZvciAxLWNoYXIgVGVYIGNvbW1hbmRzLgorCisoY2wtZGVmbWV0aG9kIHhy ZWYtYmFja2VuZC1pZGVudGlmaWVyLWNvbXBsZXRpb24tdGFibGUgKChfYmFja2VuZAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGVxbCAn dGV4LWV0YWdzKSkpCisgICh4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21wbGV0aW9uLXRhYmxl ICdldGFncykpCisKKyhjbC1kZWZtZXRob2QgeHJlZi1iYWNrZW5kLWlkZW50aWZpZXItY29tcGxl dGlvbi1pZ25vcmUtY2FzZSAoKF9iYWNrZW5kCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZXFsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RleC1ldGFn cykpKQorICAoeHJlZi1iYWNrZW5kLWlkZW50aWZpZXItY29tcGxldGlvbi1pZ25vcmUtY2FzZSAn ZXRhZ3MpKQorCisoY2wtZGVmbWV0aG9kIHhyZWYtYmFja2VuZC1kZWZpbml0aW9ucyAoKF9iYWNr ZW5kIChlcWwgJ3RleC1ldGFncykpIHN5bWJvbCkKKyAgKHhyZWYtYmFja2VuZC1kZWZpbml0aW9u cyAnZXRhZ3Mgc3ltYm9sKSkKKworKGNsLWRlZm1ldGhvZCB4cmVmLWJhY2tlbmQtYXByb3BvcyAo KF9iYWNrZW5kIChlcWwgJ3RleC1ldGFncykpIHBhdHRlcm4pCisgICh4cmVmLWJhY2tlbmQtYXBy b3BvcyAnZXRhZ3MgcGF0dGVybikpCisKKzs7IFRoZSBgeHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMn IG1ldGhvZCByZXF1aXJlcyBtb3JlIGNvZGUgdGhhbiB0aGUKKzs7IG90aGVycyBmb3IgYXQgbGVh c3QgdHdvIG1haW4gcmVhc29uczogVGVYIGF1dGhvcnMgaGF2ZSB0eXBpY2FsbHkgYmVlbgorOzsg ZnJlZSBpbiB0aGVpciBpbnZlbnRpb24gb2YgbmV3IGZpbGUgdHlwZXMgd2l0aCBuZXcgc3VmZml4 ZXMsIGFuZCB0aGV5Cis7OyBoYXZlIGFsc28gdGVuZGVkIHNvbWV0aW1lcyB0byBpbmNsdWRlIG5v bi1zeW1ib2wgY2hhcmFjdGVycyBpbgorOzsgY29tbWFuZCBuYW1lcy4gIFdoZW4gY29tYmluZWQg d2l0aCB0aGUgZGVmYXVsdCBTZW1hbnRpYyBTeW1ib2wKKzs7IFJlZmVyZW5jZSBBUEksIHRoZXNl IHR3byBjaGFyYWN0ZXJpc3RpY3Mgb2YgVGVYIGNvZGUgbWVhbiB0aGF0IGEKKzs7IGNvbW1hbmQg bGlrZSBgeHJlZi1maW5kLXJlZmVyZW5jZXMnIHdvdWxkIG9mdGVuIGZhaWwgdG8gZmluZCBhbnkg aGl0cworOzsgZm9yIGEgc3ltYm9sIGF0IHBvaW50LCBpbmNsdWRpbmcgdGhlIG9uZSB1bmRlciBw b2ludCBpbiB0aGUgY3VycmVudAorOzsgYnVmZmVyLCBvciBpdCB3b3VsZCBmaW5kIG9ubHkgc29t ZSBpbnN0YW5jZXMgYW5kIHNraXAgb3RoZXJzLgorCisoZGVmdW4gdGV4LWZpbmQtcmVmZXJlbmNl cy1zeW50YXgtdGFibGUgKCkKKyAgKGxldCAoKHN0IChpZiAoYm91bmRwICdUZVgtbW9kZS1zeW50 YXgtdGFibGUpCisgICAgICAgICAgICAgICAgIChtYWtlLXN5bnRheC10YWJsZSBUZVgtbW9kZS1z eW50YXgtdGFibGUpCisgICAgICAgICAgICAgICAobWFrZS1zeW50YXgtdGFibGUgdGV4LW1vZGUt c3ludGF4LXRhYmxlKSkpKQorICAgIHN0KSkKKworKGRlZnZhciB0ZXgtLXhyZWYtc3ludGF4LWZ1 biBuaWwpCisKKyhkZWZ1biB0ZXgteHJlZi1zeW50YXgtZnVuY3Rpb24gKHN0ciBiZWcgZW5kKQor ICAiUHJvdmlkZSBhIGJlc3Bva2UgYHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uJyBmb3IgXFxb eHJlZi1maW5kLXJlZmVyZW5jZXNdLiIKKyAgKGxldCogKGdycGIgdGVtcHN0cgorICAgICAgICAg ICAgICAoc2hydHN0ciAoaWYgZW5kCisgICAgICAgICAgICAgICAgICAgICAgICAgICAocHJvZ24K KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNldHEgdGVtcHN0ciAoc2VxLXRha2Ugc3Ry ICgxLSAobGVuZ3RoIHN0cikpKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGlmIGJl ZworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNldHEgdGVtcHN0ciAoc2VxLWRy b3AgdGVtcHN0ciAxKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZW1wc3RyKSkK KyAgICAgICAgICAgICAgICAgICAgICAgICAoc2VxLWRyb3Agc3RyIDEpKSkKKyAgICAgICAgICAg ICAgKGdycGEgKGlmIChhbmQgYmVnIGVuZCkKKyAgICAgICAgICAgICAgICAgICAgICAgIChwcm9n MQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIChsaXN0IDEgIl8iKQorICAgICAgICAgICAg ICAgICAgICAgICAgICAoc2V0cSBncnBiIChsaXN0IDIgIl8iKSkpCisgICAgICAgICAgICAgICAg ICAgICAgKGxpc3QgMSAiXyIpKSkKKyAgICAgICAgICAgICAgKHJlIChjb25jYXQgYmVnIChyZWdl eHAtcXVvdGUgc2hydHN0cikgZW5kKSkKKyAgICAgICAgICAgICAgKHRlbXAtcnVsZSAoaWYgZ3Jw YgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobGlzdCByZSBncnBhIGdycGIpCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAobGlzdCByZSBncnBhKSkpKQorICAgIDs7IFNpbXBsZSBi ZW5jaG1hcmtzIHN1Z2dlc3RlZCB0aGF0IHRoZSBzcGVlZC11cCBmcm9tIGNvbXBpbGluZyB0aGlz CisgICAgOzsgZnVuY3Rpb24gd2FzIG5lYXJseSBuaWwsIHNvIGBldmFsJyBhbmQgaXRzIG5vbi1i eXRlLWNvbXBpbGVkCisgICAgOzsgZnVuY3Rpb24gcmVtYWluLgorICAgIChzZXRxIHRleC0teHJl Zi1zeW50YXgtZnVuIChldmFsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAoc3lu dGF4LXByb3BlcnRpemUtcnVsZXMgLHRlbXAtcnVsZSkpKSkpCisKKyhkZWZ1biB0ZXgtLWNvbGxl Y3QtZmlsZS1leHRlbnNpb25zICgpCisgICJHYXRoZXIgVGVYIGZpbGUgZXh0ZW5zaW9ucyBmcm9t IGBhdXRvLW1vZGUtYWxpc3QnLiIKKyAgKGxldCogKChtbGlzdCAod2hlbiAocmFzc3EgbWFqb3It bW9kZSBhdXRvLW1vZGUtYWxpc3QpCisJCSAgKHNlcS1maWx0ZXIKKwkJICAgKGxhbWJkYSAoZWx0 KQorCQkgICAgIChlcSAoY2RyIGVsdCkgbWFqb3ItbW9kZSkpCisJCSAgIGF1dG8tbW9kZS1hbGlz dCkpKQorCSAobGNzeW0gKGludGVybi1zb2Z0IChkb3duY2FzZSAoc3ltYm9sLW5hbWUgbWFqb3It bW9kZSkpKSkKKwkgKGxjbGlzdCAoYW5kIGxjc3ltCisJCSAgICAgIChub3QgKGVxIGxjc3ltIG1h am9yLW1vZGUpKQorCQkgICAgICAocmFzc3EgbGNzeW0gYXV0by1tb2RlLWFsaXN0KQorCQkgICAg ICAoc2VxLWZpbHRlcgorCQkgICAgICAgKGxhbWJkYSAoZWx0KQorCQkJIChlcSAoY2RyIGVsdCkg bGNzeW0pKQorCQkgICAgICAgYXV0by1tb2RlLWFsaXN0KSkpCisJIChzaG9ydHN5bSAod2hlbiAo c3RyaW5ncCBtb2RlLW5hbWUpCisJCSAgICAgKGludGVybi1zb2Z0IChjb25jYXQgKHN0cmluZy10 cmltLXJpZ2h0IG1vZGUtbmFtZSAiLy4qIikKKwkJCQkJICAiLW1vZGUiKSkpKQorCSAobGNzaG9y dHN5bSAod2hlbiAoc3RyaW5ncCBtb2RlLW5hbWUpCisJCSAgICAgICAoaW50ZXJuLXNvZnQgKGRv d25jYXNlCisJCQkJICAgICAoY29uY2F0CisJCQkJICAgICAgKHN0cmluZy10cmltLXJpZ2h0IG1v ZGUtbmFtZSAiLy4qIikKKwkJCQkgICAgICAiLW1vZGUiKSkpKSkKKwkgKHNobGlzdCAoYW5kIHNo b3J0c3ltCisJCSAgICAgIChub3QgKGVxIHNob3J0c3ltIG1ham9yLW1vZGUpKQorCQkgICAgICAo bm90IChlcSBzaG9ydHN5bSBsY3N5bSkpCisJCSAgICAgIChyYXNzcSBzaG9ydHN5bSBhdXRvLW1v ZGUtYWxpc3QpCisJCSAgICAgIChzZXEtZmlsdGVyCisJCSAgICAgICAobGFtYmRhIChlbHQpCisJ CQkgKGVxIChjZHIgZWx0KSBzaG9ydHN5bSkpCisJCSAgICAgICBhdXRvLW1vZGUtYWxpc3QpKSkK KwkgKGxjc2hsaXN0IChhbmQgbGNzaG9ydHN5bQorCQkJKG5vdCAoZXEgbGNzaG9ydHN5bSBtYWpv ci1tb2RlKSkKKwkJCShub3QgKGVxIGxjc2hvcnRzeW0gbGNzeW0pKQorCQkJKHJhc3NxIGxjc2hv cnRzeW0gYXV0by1tb2RlLWFsaXN0KQorCQkJKHNlcS1maWx0ZXIKKwkJCSAobGFtYmRhIChlbHQp CisJCQkgICAoZXEgKGNkciBlbHQpIGxjc2hvcnRzeW0pKQorCQkJIGF1dG8tbW9kZS1hbGlzdCkp KQorCSAoZXh0cyAod2hlbiAob3IgbWxpc3QgbGNsaXN0IHNobGlzdCBsY3NobGlzdCkKKwkJIChz ZXEtdW5pb24gKHNlcS1tYXAgIydjYXIgbGNsaXN0KQorCQkJICAgIChzZXEtdW5pb24gKHNlcS1t YXAgIydjYXIgbWxpc3QpCisJCQkJICAgICAgIChzZXEtdW5pb24gKHNlcS1tYXAgIydjYXIgbGNz aGxpc3QpCisJCQkJCQkgIChzZXEtbWFwICMnY2FyIHNobGlzdCkpKSkpKQorCSAoZWQtZXh0cyAo d2hlbiBleHRzCisJCSAgICAoc2VxLW1hcAorCQkgICAgIChsYW1iZGEgKGVsdCkKKwkJICAgICAg IChjb25jYXQgIioiIChzdHJpbmctdHJpbSAgZWx0ICJcXFxcIiAiXFxcXCciKSkpCisJCSAgICAg ZXh0cykpKSkKKyAgICBlZC1leHRzKSkKKworKGRlZnZhciB0ZXgtLWJ1ZmZlcnMtbGlzdCBuaWwp CisoZGVmdmFyLWxvY2FsIHRleC0tb2xkLXN5bnRheC1mdW5jdGlvbiBuaWwpCisKKyhjbC1kZWZt ZXRob2QgeHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMgKChfYmFja2VuZCAoZXFsICd0ZXgtZXRhZ3Mp KSBpZGVudGlmaWVyKQorICAiRmluZCByZWZlcmVuY2VzIG9mIElERU5USUZJRVIgaW4gVGVYIGJ1 ZmZlcnMgYW5kIGZpbGVzLiIKKyAgKHJlcXVpcmUgJ3NlbWFudGljL3N5bXJlZi9ncmVwKQorICAo ZGVmdmFyIHNlbWFudGljLXN5bXJlZi1maWxlcGF0dGVybi1hbGlzdCkKKyAgKGxldCAoYnVmcyB0 ZXhidWZzCisgICAgICAgICAgICAgKG1vZGUgbWFqb3ItbW9kZSkpCisgICAgKGRvbGlzdCAoYnVm IChidWZmZXItbGlzdCkpCisgICAgICAoaWYgKGVxIChidWZmZXItbG9jYWwtdmFsdWUgJ21ham9y LW1vZGUgYnVmKSBtb2RlKQorICAgICAgICAgIChwdXNoIGJ1ZiBidWZzKQorICAgICAgICAod2hl biAoc3RyaW5nLW1hdGNoLXAgIi4qXFwuW3RUXWVbeFhdIiAoYnVmZmVyLW5hbWUgYnVmKSkKKyAg ICAgICAgICAocHVzaCBidWYgdGV4YnVmcykpKSkKKyAgICAodW5sZXNzIChzZXEtc2V0LWVxdWFs LXAgdGV4LS1idWZmZXJzLWxpc3QgYnVmcykKKyAgICAgIChsZXQqICgoYW1hbGlzdCAodGV4LS1j b2xsZWN0LWZpbGUtZXh0ZW5zaW9ucykpCisJICAgICAoZXh0bGlzdCAoYWxpc3QtZ2V0IG1vZGUg c2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0ZXJuLWFsaXN0KSkKKwkgICAgIChleHRsaXN0LW5ldyAo c2VxLXVuaXEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIChzZXEtdW5pb24gYW1hbGlzdCBl eHRsaXN0ICMnc3RyaW5nLW1hdGNoLXApKSkpCisJKHNldHEgdGV4LS1idWZmZXJzLWxpc3QgYnVm cykKKwkoZG9saXN0IChidWYgYnVmcykKKwkgICh3aGVuLWxldCAoKGZidWYgKGJ1ZmZlci1maWxl LW5hbWUgYnVmKSkKKwkJICAgICAoZXh0IChmaWxlLW5hbWUtZXh0ZW5zaW9uIGZidWYpKQorCQkg ICAgIChmaW5leHQgKGNvbmNhdCAiKi4iIGV4dCkpCisJCSAgICAgKChub3QgKHNlcS1maW5kIChs YW1iZGEgKGVsdCkgKHN0cmluZy1tYXRjaC1wIGVsdCBmaW5leHQpKQorCQkJCSAgICAgZXh0bGlz dC1uZXcpKSkKKwkJICAgICAoKHB1c2ggZmluZXh0IGV4dGxpc3QtbmV3KSkpKSkKKwkodW5sZXNz IChzZXEtc2V0LWVxdWFsLXAgZXh0bGlzdC1uZXcgZXh0bGlzdCkKKwkgIChzZXRmIChhbGlzdC1n ZXQgbW9kZSBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QpCisgICAgICAgICAgICAg ICAgZXh0bGlzdC1uZXcpKSkpCisgICAgKGxldCogKHNldHN5bnRheAorICAgICAgICAgICAocHVu Y3QgKHdpdGgtc3ludGF4LXRhYmxlICh0ZXgtZmluZC1yZWZlcmVuY2VzLXN5bnRheC10YWJsZSkK KyAgICAgICAgICAgICAgICAgICAgKHNlcS1wb3NpdGlvbnMgaWRlbnRpZmllciAobGlzdCA/dyA/ XykKKwkJCSAgICAgICAgICAgKGxhbWJkYSAoZWx0IHN5Y29kZSkKKwkJCSAgICAgICAgICAgICAo bm90IChtZW1xIChjaGFyLXN5bnRheCBlbHQpIHN5Y29kZSkpKSkpKQorICAgICAgICAgICAoZW5k IChhbmQgcHVuY3QKKyAgICAgICAgICAgICAgICAgICAgIChtZW1xICgxLSAobGVuZ3RoIGlkZW50 aWZpZXIpKSBwdW5jdCkKKyAgICAgICAgICAgICAgICAgICAgICg+IChsZW5ndGggaWRlbnRpZmll cikgMSkKKyAgICAgICAgICAgICAgICAgICAgIChjb25jYXQgIlxcKCIKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgKHJlZ2V4cC1xdW90ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgKHN0cmluZyAoZWx0IGlkZW50aWZpZXIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAoMS0gKGxlbmd0aCBpZGVudGlmaWVyKSkpKSkKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIlxcKSIpKSkKKyAgICAgICAgICAgKGJlZyAoYW5kIHB1bmN0CisgICAg ICAgICAgICAgICAgICAgICAobWVtcSAwIHB1bmN0KQorICAgICAgICAgICAgICAgICAgICAgKGNv bmNhdCAiXFwoIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocmVnZXhwLXF1b3RlIChz dHJpbmcgKGVsdCBpZGVudGlmaWVyIDApKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IlxcKSIpKSkKKyAgICAgICAgICAgKHRleHQtbW9kZS1ob29rCisgICAgICAgICAgICAoaWYgKG9y IGVuZCBiZWcpCisgICAgICAgICAgICAgICAgKHByb2duCisgICAgICAgICAgICAgICAgICAodGV4 LXhyZWYtc3ludGF4LWZ1bmN0aW9uIGlkZW50aWZpZXIgYmVnIGVuZCkKKyAgICAgICAgICAgICAg ICAgIChzZXRxIHNldHN5bnRheCAobGFtYmRhICgpCisJCSAgICAgICAgICAgICAgICAgICAgKHNl dHEtbG9jYWwgc3ludGF4LXByb3BlcnRpemUtZnVuY3Rpb24KKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleC0teHJlZi1zeW50YXgtZnVuKQorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNldHEtbG9jYWwgVGVYLXN0eWxlLWhvb2st YXBwbGllZC1wIHQpKSkKKyAgICAgICAgICAgICAgICAgIChjb25zIHNldHN5bnRheCB0ZXh0LW1v ZGUtaG9vaykpCisgICAgICAgICAgICAgIHRleHQtbW9kZS1ob29rKSkpCisgICAgICAodW5sZXNz IChtZW1xICdkb2N0ZXgtbW9kZSAoZGVyaXZlZC1tb2RlLWFsbC1wYXJlbnRzIG1vZGUpKQorICAg ICAgICAoc2V0cSBidWZzIChhcHBlbmQgdGV4YnVmcyBidWZzKSkpCisgICAgICAod2hlbiAob3Ig ZW5kIGJlZykKKyAgICAgICAgKGRvbGlzdCAoYnVmIGJ1ZnMpCisgICAgICAgICAgKHdpdGgtY3Vy cmVudC1idWZmZXIgYnVmCisgICAgICAgICAgICAodW5sZXNzIChsb2NhbC12YXJpYWJsZS1wICd0 ZXgtLW9sZC1zeW50YXgtZnVuY3Rpb24pCisgICAgICAgICAgICAgIChzZXRxIHRleC0tb2xkLXN5 bnRheC1mdW5jdGlvbiBzeW50YXgtcHJvcGVydGl6ZS1mdW5jdGlvbikpCisgICAgICAgICAgICAo c2V0cS1sb2NhbCBzeW50YXgtcHJvcGVydGl6ZS1mdW5jdGlvbgorICAgICAgICAgICAgICAgICAg ICAgICAgdGV4LS14cmVmLXN5bnRheC1mdW4pCisgICAgICAgICAgICAoc3ludGF4LXBwc3MtZmx1 c2gtY2FjaGUgKHBvaW50LW1pbikpKSkpCisgICAgICAodW53aW5kLXByb3RlY3QKKyAgICAgICAg ICAoeHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMgbmlsIGlkZW50aWZpZXIpCisgICAgICAgICh3aGVu IChvciBlbmQgYmVnKQorICAgICAgICAgIChkb2xpc3QgKGJ1ZiBidWZzKQorICAgICAgICAgICAg KHdpdGgtY3VycmVudC1idWZmZXIgYnVmCisgICAgICAgICAgICAgICh3aGVuIGJ1ZmZlci1maWxl LXRydWVuYW1lCisgICAgICAgICAgICAgICAgKHNldHEtbG9jYWwgc3ludGF4LXByb3BlcnRpemUt ZnVuY3Rpb24KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXgtLW9sZC1zeW50YXgtZnVu Y3Rpb24pCisgICAgICAgICAgICAgICAgKHN5bnRheC1wcHNzLWZsdXNoLWNhY2hlIChwb2ludC1t aW4pKSkpKSkpKSkpCisKIChtYWtlLW9ic29sZXRlLXZhcmlhYmxlICd0ZXgtbW9kZS1sb2FkLWhv b2sKICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2UgYHdpdGgtZXZhbC1hZnRlci1sb2FkJyBp bnN0ZWFkLiIgIjI4LjEiKQogKHJ1bi1ob29rcyAndGV4LW1vZGUtbG9hZC1ob29rKQotLSAKMi4z OS40Cgo= --00000000000071180b061891c40c-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Stefan Monnier Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 16 May 2024 18:20:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org, Ikumi Keita , David Fussner , Arash Esbati , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17158835517400 (code B ref 53749); Thu, 16 May 2024 18:20:01 +0000 Received: (at 53749) by debbugs.gnu.org; 16 May 2024 18:19:11 +0000 Received: from localhost ([127.0.0.1]:50193 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s7fh8-0001vI-St for submit@debbugs.gnu.org; Thu, 16 May 2024 14:19:11 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:15088) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s7fh6-0001uy-RD for 53749@debbugs.gnu.org; Thu, 16 May 2024 14:19:09 -0400 Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 4AFD84415C0; Thu, 16 May 2024 14:19:00 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1715883534; bh=s7LfnzTOVMyyIaDvTVS8WGyB5p6AjT10cg1oP8XzWFI=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=IdMuu1C7HvZHHkTUHISsnx5QajVakm2C5/uGc4fgWH3928SBY05YLSIxUl+N+bf/W ZpPcecTHhxT9BySZYjPP6h9z4eOdEsku13MvA88kwIrRTwE7dT8azPGI/JDFgDLvPB sC8ASsP+QFkMBXTjy8sUePveONrWbfkMbvGXC8gjXs2laQa/uJKt5LXDBtd58fsICn GCxFCZdaVa3AV2mRhgnWSV5ikJ3/yWG1i56qBborMm3O3IojucDsHzpkFGbLVCB2dN RkKyRNgZ/6hcKZF28zLU6rQaG7mVIx/J7ixhBMO10g2WwMWqVqyZEhY5QGrlUekmh/ yfgD64YPn3cFQ== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id B2B6344137D; Thu, 16 May 2024 14:18:54 -0400 (EDT) Received: from lechazo (lechon.iro.umontreal.ca [132.204.27.242]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 9A3DD12047E; Thu, 16 May 2024 14:18:54 -0400 (EDT) From: Stefan Monnier In-Reply-To: <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> (Dmitry Gutov's message of "Wed, 15 May 2024 00:24:24 +0300") Message-ID: References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> Date: Thu, 16 May 2024 14:18:54 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL 0.099 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) >> IIUC, in the `syntax-needed` case, the let-binding of >> `inhibit-modification-hooks` is just not useful very (4-7% is not worth >> the trouble), so its purpose is to speed up the other case. > 4-10% is the improvement for both cases (the "syntax needed" and not). Hmm... not sure it's worth the trouble, then. Also, it might be worth trying to see where those 4-10% are spent: this is done in a temp buffer where there should presumably be very little need for before/after-change-functions, so maybe we can get rid of the specific offenders rather than inhibit all modification hooks. > Also, I'm eyeing another performance improvement (simplifying file type > detection) - the call to set-auto-mode is not fast. Simply commenting this > call out improves the performance by 4x or so - but we'll need a simpler > version of it instead, of course. > > And with the above change (commenting out the set-auto-mode call), the > difference that the inhibit-modification-hooks hack makes is amplified: it > can get up to 20%. I wonder what we do during those 20% of the time if the buffer is left in fundamental-mode. >> Also, what about the other two bindings of `inhibit-modification-hooks`? > The other two are used while the contents of the Xref buffer are printed (or > re-printed), so there's none of the syntax-ppss complications there. The > performance difference is 8.5% in my last measurement. Is this 8.5% of a function that's fast anyway of 8.5% of a function which takes a fair bit of time? Again, I'm not sure it's worth the trouble. But as a start, every such binding should have a comment mentioning that it's there only to gain a few percents of performance. Stefan From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 20 May 2024 00:23:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Monnier Cc: 53749@debbugs.gnu.org, Ikumi Keita , David Fussner , Arash Esbati , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17161645522012 (code B ref 53749); Mon, 20 May 2024 00:23:02 +0000 Received: (at 53749) by debbugs.gnu.org; 20 May 2024 00:22:32 +0000 Received: from localhost ([127.0.0.1]:38829 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s8qnQ-0000WO-2e for submit@debbugs.gnu.org; Sun, 19 May 2024 20:22:32 -0400 Received: from forward502b.mail.yandex.net ([178.154.239.146]:56546) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s8qnD-0000WI-OL for 53749@debbugs.gnu.org; Sun, 19 May 2024 20:22:31 -0400 Received: from mail-nwsmtp-smtp-production-main-78.myt.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-78.myt.yp-c.yandex.net [IPv6:2a02:6b8:c12:39ad:0:640:62fe:0]) by forward502b.mail.yandex.net (Yandex) with ESMTPS id 2739F5E93C; Mon, 20 May 2024 03:21:43 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-78.myt.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id bL5igJfOoSw0-O7DXu2nv; Mon, 20 May 2024 03:21:42 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1716164502; bh=xiBVAOKEBCaVJb1350x9Uj83oczA3dV6PvmgZjVoPsk=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=LyxBDByRHimkhaIQ1sxkg4IKUSVFt1C53PJoWmiI89f13lzcdbhluGGM7XAZ3+NFf sJd3jDWACberwcrJAB+xZcXVH5zp/AYROfXOUny3uFYL5M4tSAhCWhQQHmoBUzDmJ7 Hx3KMo9wP/aPgTeXVqldqL/B44pD8kmSoEs1DIHQ= Authentication-Results: mail-nwsmtp-smtp-production-main-78.myt.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailfauth.nyi.internal (Postfix) with ESMTP id 8B32A1200032; Sun, 19 May 2024 20:21:37 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Sun, 19 May 2024 20:21:37 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvdehledgfedvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnhepiefhjeeuveetffffvdefteffffekhfeuudejieehheeiudelgfehgffffedu ffdunecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun, 19 May 2024 20:21:35 -0400 (EDT) Message-ID: Date: Mon, 20 May 2024 03:21:33 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> Content-Language: en-US From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On 16/05/2024 21:18, Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: >>> IIUC, in the `syntax-needed` case, the let-binding of >>> `inhibit-modification-hooks` is just not useful very (4-7% is not worth >>> the trouble), so its purpose is to speed up the other case. >> 4-10% is the improvement for both cases (the "syntax needed" and not). > > Hmm... not sure it's worth the trouble, then. > Also, it might be worth trying to see where those 4-10% are spent: this > is done in a temp buffer where there should presumably be very little > need for before/after-change-functions, so maybe we can get rid of the > specific offenders rather than inhibit all modification hooks. Given the relatively low percentages, it might be difficult to glance from a profiler report. I was assuming the time was mostly spent in syntax-ppss-flush-cache, but the function is pretty simple. >> Also, I'm eyeing another performance improvement (simplifying file type >> detection) - the call to set-auto-mode is not fast. Simply commenting this >> call out improves the performance by 4x or so - but we'll need a simpler >> version of it instead, of course. >> >> And with the above change (commenting out the set-auto-mode call), the >> difference that the inhibit-modification-hooks hack makes is amplified: it >> can get up to 20%. > > I wonder what we do during those 20% of the time if the buffer is left > in fundamental-mode. Good question. >>> Also, what about the other two bindings of `inhibit-modification-hooks`? >> The other two are used while the contents of the Xref buffer are printed (or >> re-printed), so there's none of the syntax-ppss complications there. The >> performance difference is 8.5% in my last measurement. > > Is this 8.5% of a function that's fast anyway of 8.5% of a function > which takes a fair bit of time? When there are a lot of matches, it can take some time. Note that 100% in this case is the whole list-files-do-search-print-results pipeline, not just the printing phase. So printing is sped up by more than 8% (my last test says it's by 27%). > But as a start, every such binding should have a comment > mentioning that it's there only to gain a few percents of performance. Sure. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Stefan Monnier Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 20 May 2024 02:40:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org, Ikumi Keita , David Fussner , Arash Esbati , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17161727448360 (code B ref 53749); Mon, 20 May 2024 02:40:01 +0000 Received: (at 53749) by debbugs.gnu.org; 20 May 2024 02:39:04 +0000 Received: from localhost ([127.0.0.1]:39357 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s8svX-0002Am-O9 for submit@debbugs.gnu.org; Sun, 19 May 2024 22:39:04 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:17804) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s8svS-0002AG-T0 for 53749@debbugs.gnu.org; Sun, 19 May 2024 22:39:02 -0400 Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id A5174443B04; Sun, 19 May 2024 22:38:48 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1716172727; bh=cOM+3kFdKv9PtVZFMTDE7BkCYm59e5Vi5GmZe6tXuAo=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=OR+Fyw7RSaXnOCHgirHHeSuSCed5S3tKhh1sN8iGPGVaLLD67Pdb5uKMKN+aCk6aD GpBWTLgnTH10PadN161ddqKqfONgnOiTYGfIzjwh3ajGPvS8mLY2naVsO4qIXHiLPo PaQeVFgtC5CsICE51Nz61Xp851SaVNFi3hUpq6TFl13RFaqD3guMreG4io/4HpoBQ0 rPeU7s2Z4dz1gSFHWb8Da+BBRep0ergE51d7QjUdcXkqAyZSpJP0w6XOQk/1/fFGGU Pqclw9hWl97L90KD6EoUMkniapEu9kgPE1fP125+QlNzDMg+UuFPEop7RMIc+XNEIF 4hV17jjnCEZdg== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 377B2443B0C; Sun, 19 May 2024 22:38:47 -0400 (EDT) Received: from pastel (unknown [45.72.201.215]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id E222A1204F5; Sun, 19 May 2024 22:38:46 -0400 (EDT) From: Stefan Monnier In-Reply-To: (Dmitry Gutov's message of "Mon, 20 May 2024 03:21:33 +0300") Message-ID: References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> Date: Sun, 19 May 2024 22:38:45 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL 0.004 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) >> Hmm... not sure it's worth the trouble, then. >> Also, it might be worth trying to see where those 4-10% are spent: this >> is done in a temp buffer where there should presumably be very little >> need for before/after-change-functions, so maybe we can get rid of the >> specific offenders rather than inhibit all modification hooks. > Given the relatively low percentages, it might be difficult to glance from > a profiler report. I was assuming the time was mostly spent in > syntax-ppss-flush-cache, but the function is pretty simple. Rather than a profiler report, maybe a better approach would be to remove things from the non-inhibited-modification-hooks paths and see how/if they change the performance. E.g. replace the `inhibit-modification-hooks` binding by one that binds `before/after-change-functions` to nil. >> I wonder what we do during those 20% of the time if the buffer is left >> in fundamental-mode. > Good question. It's probably the better case to investigate since it might be easier to see the effects. >>>> Also, what about the other two bindings of `inhibit-modification-hooks`? >>> The other two are used while the contents of the Xref buffer are printed (or >>> re-printed), so there's none of the syntax-ppss complications there. The >>> performance difference is 8.5% in my last measurement. >> Is this 8.5% of a function that's fast anyway of 8.5% of a function >> which takes a fair bit of time? > When there are a lot of matches, it can take some time. Note that 100% in > this case is the whole list-files-do-search-print-results pipeline, not just > the printing phase. So printing is sped up by more than 8% (my last test > says it's by 27%). I guess during printing if it's done in many small steps we may indeed run modification hooks many times, so that could explain the higher percentage. It still seems hard to justify 27% since those modification hooks should usually do nothing, AFAICT. Maybe there's something silly going on. Stefan From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 25 May 2024 07:58:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Monnier Cc: 53749@debbugs.gnu.org, ikumi@ikumi.que.jp, tsdh@gnu.org, dfussner@googlemail.com, arash@gnu.org, stefankangas@gmail.com, dgutov@yandex.ru Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171662386327042 (code B ref 53749); Sat, 25 May 2024 07:58:01 +0000 Received: (at 53749) by debbugs.gnu.org; 25 May 2024 07:57:43 +0000 Received: from localhost ([127.0.0.1]:41930 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sAmHe-000726-Sn for submit@debbugs.gnu.org; Sat, 25 May 2024 03:57:43 -0400 Received: from eggs.gnu.org ([209.51.188.92]:59414) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sAmHc-000720-Tv for 53749@debbugs.gnu.org; Sat, 25 May 2024 03:57:41 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sAmHN-0001HF-J1; Sat, 25 May 2024 03:57:25 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=8QZfVJOwOnKiLuvo7FzL9/ErNaZZFnxYaPA1A9SXbic=; b=oRrMwYgbwwpr ZUEeazV4lggtyYXodhlL4Ga+FMgEoluIGIo2M3z/c0j/mK+0YUIhwXYQ+h2ajQR6+uX3VVY6CA6Kb douxjXMW9xGdml0dVR/FZuyvXVthANHeHLz6aJcmeWxkXcxkrFObZOqdSuJhZ/FOcZmQAhlpdbZ2D 49ToRKXYJapWpa144B26SwMRtc1z5Zktlqrk36SvbaaLD0aGcN6TUMVqaM+5Bd/9zYlLzBH5cHO2z sgluYQqL+kxyghfnMogo3mgMOrLfOpY3rkd5ceMkTeiPRboiwmb4uTMoSu6CunP2AJZPkcCFZK6hF LCqoqy4ZpbzmZuK/vF7KSw==; Date: Sat, 25 May 2024 10:57:22 +0300 Message-Id: <86v832z5lp.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: (message from Stefan Monnier on Sun, 19 May 2024 22:38:45 -0400) References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) How should we proceed about this bug report? Is David's last changeset acceptable or isn't it? > From: Stefan Monnier > Cc: 53749@debbugs.gnu.org, Ikumi Keita , David Fussner > , Arash Esbati , > stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii > > Date: Sun, 19 May 2024 22:38:45 -0400 > > >> Hmm... not sure it's worth the trouble, then. > >> Also, it might be worth trying to see where those 4-10% are spent: this > >> is done in a temp buffer where there should presumably be very little > >> need for before/after-change-functions, so maybe we can get rid of the > >> specific offenders rather than inhibit all modification hooks. > > Given the relatively low percentages, it might be difficult to glance from > > a profiler report. I was assuming the time was mostly spent in > > syntax-ppss-flush-cache, but the function is pretty simple. > > Rather than a profiler report, maybe a better approach would be to > remove things from the non-inhibited-modification-hooks paths and see > how/if they change the performance. > E.g. replace the `inhibit-modification-hooks` binding by one that binds > `before/after-change-functions` to nil. > > >> I wonder what we do during those 20% of the time if the buffer is left > >> in fundamental-mode. > > Good question. > > It's probably the better case to investigate since it might be easier to > see the effects. > > >>>> Also, what about the other two bindings of `inhibit-modification-hooks`? > >>> The other two are used while the contents of the Xref buffer are printed (or > >>> re-printed), so there's none of the syntax-ppss complications there. The > >>> performance difference is 8.5% in my last measurement. > >> Is this 8.5% of a function that's fast anyway of 8.5% of a function > >> which takes a fair bit of time? > > When there are a lot of matches, it can take some time. Note that 100% in > > this case is the whole list-files-do-search-print-results pipeline, not just > > the printing phase. So printing is sped up by more than 8% (my last test > > says it's by 27%). > > I guess during printing if it's done in many small steps we may indeed > run modification hooks many times, so that could explain the > higher percentage. > > It still seems hard to justify 27% since those modification hooks should > usually do nothing, AFAICT. Maybe there's something silly going on. > > > Stefan > > From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 25 May 2024 23:03:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Monnier Cc: 53749@debbugs.gnu.org, Ikumi Keita , David Fussner , Arash Esbati , stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171667814230409 (code B ref 53749); Sat, 25 May 2024 23:03:01 +0000 Received: (at 53749) by debbugs.gnu.org; 25 May 2024 23:02:22 +0000 Received: from localhost ([127.0.0.1]:36923 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sB0P8-0007tU-35 for submit@debbugs.gnu.org; Sat, 25 May 2024 19:02:22 -0400 Received: from forward500b.mail.yandex.net ([178.154.239.144]:37722) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sB0P5-0007ma-PC for 53749@debbugs.gnu.org; Sat, 25 May 2024 19:02:20 -0400 Received: from mail-nwsmtp-smtp-production-main-42.myt.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-42.myt.yp-c.yandex.net [IPv6:2a02:6b8:c12:28a2:0:640:9f07:0]) by forward500b.mail.yandex.net (Yandex) with ESMTPS id D2AF9612FF; Sun, 26 May 2024 02:01:39 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-42.myt.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id W1Xcgw19UCg0-XK0M4OmT; Sun, 26 May 2024 02:01:38 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1716678099; bh=WpOWfXCz/GpwFZ6zvI96cu70dWMSrBFHkZD4ZsajbvE=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=Y537bAdyndrjNhh+4zycaiy7tWCqqtCc9HzkqfCFq/Av04Qt3gCIb6rPTCa3NG2vT o25RAdFlVLiJ3SHqz94AzvySEYqNLDb3iyyrL7m/c4s3KITmzOe9azl1MYlktUjprY c2BERKzJ18ESHndO25Lg1MYY0IC7r/ojiIy5a+0s= Authentication-Results: mail-nwsmtp-smtp-production-main-42.myt.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailfauth.nyi.internal (Postfix) with ESMTP id A407E1200032; Sat, 25 May 2024 19:01:32 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute1.internal (MEProxy); Sat, 25 May 2024 19:01:32 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvdejuddgudeiucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnhepiefhjeeuveetffffvdefteffffekhfeuudejieehheeiudelgfehgffffedu ffdunecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 25 May 2024 19:01:30 -0400 (EDT) Message-ID: Date: Sun, 26 May 2024 02:01:28 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> Content-Language: en-US From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On 20/05/2024 05:38, Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: >>> Hmm... not sure it's worth the trouble, then. >>> Also, it might be worth trying to see where those 4-10% are spent: this >>> is done in a temp buffer where there should presumably be very little >>> need for before/after-change-functions, so maybe we can get rid of the >>> specific offenders rather than inhibit all modification hooks. >> Given the relatively low percentages, it might be difficult to glance from >> a profiler report. I was assuming the time was mostly spent in >> syntax-ppss-flush-cache, but the function is pretty simple. > > Rather than a profiler report, maybe a better approach would be to > remove things from the non-inhibited-modification-hooks paths and see > how/if they change the performance. > E.g. replace the `inhibit-modification-hooks` binding by one that binds > `before/after-change-functions` to nil. > >>> I wonder what we do during those 20% of the time if the buffer is left >>> in fundamental-mode. >> Good question. > > It's probably the better case to investigate since it might be easier to > see the effects. Revisiting this, I haven't been able to reproduce the 20% number. :-( The effect of that specific inhibit-modification-hooks binding seems to stay around 4-8%, and it's actually on the higher end when the set-auto-mode call it present (probably due to text manipulation inside it). Binding before/after-change-functions, both of the hooks have their impact - one more than the other, but like 60/40. Maybe just funcall overhead. >>>>> Also, what about the other two bindings of `inhibit-modification-hooks`? >>>> The other two are used while the contents of the Xref buffer are printed (or >>>> re-printed), so there's none of the syntax-ppss complications there. The >>>> performance difference is 8.5% in my last measurement. >>> Is this 8.5% of a function that's fast anyway of 8.5% of a function >>> which takes a fair bit of time? >> When there are a lot of matches, it can take some time. Note that 100% in >> this case is the whole list-files-do-search-print-results pipeline, not just >> the printing phase. So printing is sped up by more than 8% (my last test >> says it's by 27%). > > I guess during printing if it's done in many small steps we may indeed > run modification hooks many times, so that could explain the > higher percentage. > > It still seems hard to justify 27% since those modification hooks should > usually do nothing, AFAICT. Maybe there's something silly going on. On this step (xref--show-common-initialize) the numbers still hold, however. What's different, is that replacing the inhibit-modification-hooks with two (before-change-functions and after-change-functions both to nil) doesn't have a similar effect. Which makes sense, since the buffer is almost in fundamental-mode, both hooks are nil there. Binding create-lockfiles or select-active-regions to nil doesn't have any impact. And replacing the use of all of the above with combine-change-calls makes performance worse. If we're going to continue this subthread, it's probably better to move it somewhere else (separate bug, or emacs-devel). From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 05 Jun 2024 09:48:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Eli Zaretskii Cc: 53749@debbugs.gnu.org, ikumi@ikumi.que.jp, tsdh@gnu.org, arash@gnu.org, stefankangas@gmail.com, dgutov@yandex.ru, Stefan Monnier Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17175808416593 (code B ref 53749); Wed, 05 Jun 2024 09:48:02 +0000 Received: (at 53749) by debbugs.gnu.org; 5 Jun 2024 09:47:21 +0000 Received: from localhost ([127.0.0.1]:47240 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sEnEl-0001i9-36 for submit@debbugs.gnu.org; Wed, 05 Jun 2024 05:47:21 -0400 Received: from mail-pj1-f44.google.com ([209.85.216.44]:52673) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sEnEi-0001hl-4a for 53749@debbugs.gnu.org; Wed, 05 Jun 2024 05:47:18 -0400 Received: by mail-pj1-f44.google.com with SMTP id 98e67ed59e1d1-2c1b9152848so4569378a91.1 for <53749@debbugs.gnu.org>; Wed, 05 Jun 2024 02:47:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1717580756; x=1718185556; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=6xcB4dDywNWqrmS9WwCGbBnodSdryJgU1FXuZ1VjoVw=; b=jYS1sggxtwZ4iYRP04QFezIcng2kU17bR81dPf9Asd2uT9pW/pu+HWf1UATy7geXTE MQJ7qZNQpooaEiL+haOfs+ZGbQEZwi8wfUfzFRwyi1CPfg1Hf320Cpo6r8D1tiWo/fLy a4eyF5w4I0xMsuLRVcW3akhyl/mBRE3/Z4Sy7IVn4/DphOSCjxoGaXzVQ0w+A8m5VdTL yNjGNAlJKIpHbnSUfV3+7WedOSWL9ELthR+Wuo3Q1DATLVmwhzh329MRiMk+kGK4BjWd 6LT9EnKKMTp9DUl93YAs/VFsojVOyLyHCkHcV3rUTKQAvLgm8jnJJHfRMOv1CpUIezT6 GB2g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1717580756; x=1718185556; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=6xcB4dDywNWqrmS9WwCGbBnodSdryJgU1FXuZ1VjoVw=; b=jein2bfNyvalg2ijotgOklgqLYnktEz9kUHtd4v1CN7FQDBDNMhpZoiZ5N2cpiur6d 8qqKK1t3EIPZGShagUXN0cu0ptMc323ND6k4SHn+65OtW72o1r8qrmKh+yQjmPf/ZAi8 TNi/tH5DgnD6rqdfLxjWidhrxT2ECdhR0118IcXM+vh7KpdXKUslDOS8BtKgnf+BA3tM TcyqNzB3e/m1iyQNj4lMild+NEGTtyKfcysFNBSR/LTX0qY89CJjd7pPrw6spa5MY6LU /UUw8n+tpb5zgO5+F9HjLIwS7CxPwP53a7M0VsJ9945vVZDxUwpxCEScRK4u3YC3oU1C uCvA== X-Forwarded-Encrypted: i=1; AJvYcCUjZBWrmFUFjDuVUS/AnLT8z8bH50dbotH1Ab96z5u1TMV2raDfMK27dBG2cTQuI0KyHAE/UIYGvgsvYsfvouZmgkLKEXo= X-Gm-Message-State: AOJu0YxA+XVu6Icy8v88LMJaU2D4Fliv8hhGyrxfOoaeMe4EGrXgDvdg B1g2TpdCyqx+BhcqY1bgnOlIrUjpGKg5nrojNKquiYFd2hH43HqzBmvAkSF5iMdMpgbW3M3DptL PmU3QOZcffrL0R2ufSjB+LGqgk78= X-Google-Smtp-Source: AGHT+IFZceVh8OD+9IzXkXCctIiPolst2kEpfgubEiHhGScC/KO8tIaAVofFkvDybiCArA+sJDNSkiImfogFtaD32wk= X-Received: by 2002:a17:90b:1018:b0:2c1:a052:d6b4 with SMTP id 98e67ed59e1d1-2c27db1fc28mr1868853a91.27.1717580756180; Wed, 05 Jun 2024 02:45:56 -0700 (PDT) MIME-Version: 1.0 References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> <86v832z5lp.fsf@gnu.org> In-Reply-To: <86v832z5lp.fsf@gnu.org> From: David Fussner Date: Wed, 5 Jun 2024 10:46:10 +0100 Message-ID: Content-Type: multipart/mixed; boundary="000000000000d8a2b5061a216eeb" X-Spam-Score: 1.0 (+) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000d8a2b5061a216eeb Content-Type: text/plain; charset="UTF-8" Hi Eli, Stefan, and Dmitry, In case the changeset might prove acceptable for version 30, I attach the latest patch, which clears out the code I was using to simplify testing of the AUCTeX modes. I can if requested send a patch for the manual etags tests, also, in case that might prove helpful down the line. Best, David. On Sat, 25 May 2024 at 12:01, Eli Zaretskii wrote: > > How should we proceed about this bug report? Is David's last > changeset acceptable or isn't it? > > > From: Stefan Monnier > > Cc: 53749@debbugs.gnu.org, Ikumi Keita , David Fussner > > , Arash Esbati , > > stefankangas@gmail.com, Tassilo Horn , Eli Zaretskii > > > > Date: Sun, 19 May 2024 22:38:45 -0400 > > > > >> Hmm... not sure it's worth the trouble, then. > > >> Also, it might be worth trying to see where those 4-10% are spent: this > > >> is done in a temp buffer where there should presumably be very little > > >> need for before/after-change-functions, so maybe we can get rid of the > > >> specific offenders rather than inhibit all modification hooks. > > > Given the relatively low percentages, it might be difficult to glance from > > > a profiler report. I was assuming the time was mostly spent in > > > syntax-ppss-flush-cache, but the function is pretty simple. > > > > Rather than a profiler report, maybe a better approach would be to > > remove things from the non-inhibited-modification-hooks paths and see > > how/if they change the performance. > > E.g. replace the `inhibit-modification-hooks` binding by one that binds > > `before/after-change-functions` to nil. > > > > >> I wonder what we do during those 20% of the time if the buffer is left > > >> in fundamental-mode. > > > Good question. > > > > It's probably the better case to investigate since it might be easier to > > see the effects. > > > > >>>> Also, what about the other two bindings of `inhibit-modification-hooks`? > > >>> The other two are used while the contents of the Xref buffer are printed (or > > >>> re-printed), so there's none of the syntax-ppss complications there. The > > >>> performance difference is 8.5% in my last measurement. > > >> Is this 8.5% of a function that's fast anyway of 8.5% of a function > > >> which takes a fair bit of time? > > > When there are a lot of matches, it can take some time. Note that 100% in > > > this case is the whole list-files-do-search-print-results pipeline, not just > > > the printing phase. So printing is sped up by more than 8% (my last test > > > says it's by 27%). > > > > I guess during printing if it's done in many small steps we may indeed > > run modification hooks many times, so that could explain the > > higher percentage. > > > > It still seems hard to justify 27% since those modification hooks should > > usually do nothing, AFAICT. Maybe there's something silly going on. > > > > > > Stefan > > > > --000000000000d8a2b5061a216eeb Content-Type: text/x-patch; charset="US-ASCII"; name="0004-Provide-a-modified-xref-backend-for-TeX-buffers.patch" Content-Disposition: attachment; filename="0004-Provide-a-modified-xref-backend-for-TeX-buffers.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lx1n84cf0 RnJvbSBkMjk2MTI2ZjM2YWFiY2FhMzBlNDMxNDBkMWM5YjdjMGUyOTEyMzUzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBGdXNzbmVyIDxkZnVzc25lckBnb29nbGVtYWlsLmNv bT4KRGF0ZTogV2VkLCA1IEp1biAyMDI0IDEwOjI2OjE4ICswMTAwClN1YmplY3Q6IFtQQVRDSF0g UHJvdmlkZSBhIG1vZGlmaWVkIHhyZWYgYmFja2VuZCBmb3IgVGVYIGJ1ZmZlcnMKCiogbGliLXNy Yy9ldGFncy5jIChUZVhfY29tbWFuZHMpOiBJbXByb3ZlIHBhcnNpbmcgb2YgY29tbWFuZHMgaW4g VGVYCmJ1ZmZlcnMuCihURVhfZGVmZW52KTogRXhwYW5kIGxpc3Qgb2YgY29tbWFuZHMgdG8gdGFn IGJ5IGRlZmF1bHQgaW4gVGVYCmJ1ZmZlcnMuCihUZVhfaGVscCk6CiogZG9jL2VtYWNzL21haW50 YWluaW5nLnRleGkgKFRhZyBTeW50YXgpOiBEb2N1bWVudCBuZXcgdGFnZ2VkCmNvbW1hbmRzLgoo SWRlbnRpZmllciBTZWFyY2gpOiBBZGQgbm90ZSBhYm91dCBzZW1hbnRpYy1zeW1yZWYtZmlsZXBh dHRlcm4tYWxpc3QsCmF1dG8tbW9kZS1hbGlzdCwgYW5kIHhyZWYtZmluZC1yZWZlcmVuY2VzLgoK KiBsaXNwL3RleHRtb2Rlcy90ZXgtbW9kZS5lbCAodGV4LWZvbnQtbG9jay1zdXNjcmlwdCk6IFRl c3QgZm9yCnVuZGVyc2NvcmUgaW4gZXhwbDMgZmlsZXMgYW5kIHJlZ2lvbnMsIGRpc2FibGUgc3Vi c2NyaXB0IGZhY2UgdGhlcmUuCih0ZXgtY29tbW9uLWluaXRpYWxpemF0aW9uKTogU2V0IHVwIHhy ZWYgYmFja2VuZCBmb3IgaW4tdHJlZSBUZVgKbW9kZXMuIERldGVjdCBleHBsMyBmaWxlcywgYW5k IGluIG90aGVycyBzZXQgdXAgYSBsaXN0IG9mIGV4cGwzCnJlZ2lvbnMuCih0ZXgtZXhwbC1idWZm ZXItcGFyc2UpOiBOZXcgZnVuY3Rpb24gY2FsbGVkIGluIHByZXZpb3VzLgoodGV4LWV4cGwtYnVm ZmVyLXApOiBOZXcgdmFyIHRvIGhvbGQgdGhlIHJlc3VsdCBvZiBwcmV2aW91cy4KKHRleC1leHBs LXJlZ2lvbi1zZXQpOiBOZXcgZnVuY3Rpb24gYWRkZWQgdG8KJ3N5bnRheC1wcm9wZXJ0aXplLWV4 dGVuZC1yZWdpb24tZnVuY3Rpb25zJyBob29rLgoodGV4LWV4cGwtcmVnaW9uLWxpc3QpOiBOZXcg dmFyIHRvIGhvbGQgdGhlIHJlc3VsdCBvZiBwcmV2aW91cy4KKHRleC0teHJlZi1iYWNrZW5kKTog TmV3IGZ1bmN0aW9uIHRvIGlkZW50aWZ5IHRoZSB4cmVmIGJhY2tlbmQuCih0ZXgtLXRoaW5nLWF0 LXBvaW50LCB0ZXgtdGhpbmdhdHB0LS1iZWdpbm5pbmctb2Ytc3ltYm9sKQoodGV4LXRoaW5nYXRw dC0tZW5kLW9mLXN5bWJvbCwgdGV4LS1ib3VuZHMtb2Ytc3ltYm9sLWF0LXBvaW50KToKTmV3IGZ1 bmN0aW9ucyB0byByZXR1cm4gJ3RoaW5nLWF0LXBvaW50JyBmb3IgeHJlZiBiYWNrZW5kLgoodGV4 LXRoaW5nYXRwdC1leGNsdWRlLWNoYXJzKTogTmV3IHZhciB0byBkbyB0aGUgc2FtZS4KKHhyZWYt YmFja2VuZC1pZGVudGlmaWVyLWF0LXBvaW50KTogTmV3IFRlWCBiYWNrZW5kIG1ldGhvZCB0byBw cm92aWRlCnN5bWJvbHMgZm9yIHByb2Nlc3NpbmcgYnkgeHJlZi4KKHhyZWYtYmFja2VuZC1pZGVu dGlmaWVyLWNvbXBsZXRpb24tdGFibGUpCih4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21wbGV0 aW9uLWlnbm9yZS1jYXNlKQooeHJlZi1iYWNrZW5kLWRlZmluaXRpb25zLCB4cmVmLWJhY2tlbmQt YXByb3Bvcyk6IFBsYWNlaG9sZGVycyB0bwpjYWxsIHRoZSBzdGFuZGFyZCAnZXRhZ3MnIHhyZWYg YmFja2VuZCBtZXRob2RzLgooeHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMpOiBXcmFwcGVyIHRvIGNh bGwgdGhlIGRlZmF1bHQgeHJlZiBiYWNrZW5kCm1ldGhvZCwgZmluZGluZyBhcyBtYW55IHJlbGV2 YW50IGZpbGVzIGFzIHBvc3NpYmxlIGFuZCB1c2luZyBhIGJlc3Bva2UKc3ludGF4LXByb3BlcnRp emUtZnVuY3Rpb24gd2hlbiByZXF1aXJlZC4KKHRleC0tY29sbGVjdC1maWxlLWV4dGVuc2lvbnMs IHRleC14cmVmLXN5bnRheC1mdW5jdGlvbik6IEhlbHBlcgpmdW5jdGlvbnMgZm9yIHByZXZpb3Vz LgoodGV4LWZpbmQtcmVmZXJlbmNlcy1zeW50YXgtdGFibGUsIHRleC0tYnVmZmVycy1saXN0KQoo dGV4LS14cmVmLXN5bnRheC1mdW4sIHRleC0tb2xkLXN5bnRheC1mdW5jdGlvbik6IE5ldyB2YXJz IGZvciBzYW1lLgotLS0KIGRvYy9lbWFjcy9tYWludGFpbmluZy50ZXhpIHwgIDM5ICsrKy0KIGxp Yi1zcmMvZXRhZ3MuYyAgICAgICAgICAgIHwgMTkxICsrKysrKysrKysrKysrKysrKy0tCiBsaXNw L3RleHRtb2Rlcy90ZXgtbW9kZS5lbCB8IDM1OCArKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKystCiAzIGZpbGVzIGNoYW5nZWQsIDU2NyBpbnNlcnRpb25zKCspLCAyMSBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9kb2MvZW1hY3MvbWFpbnRhaW5pbmcudGV4aSBiL2RvYy9lbWFj cy9tYWludGFpbmluZy50ZXhpCmluZGV4IDU3OTA5OGM4MWIxLi5hMDY0MTAzYWEyNSAxMDA2NDQK LS0tIGEvZG9jL2VtYWNzL21haW50YWluaW5nLnRleGkKKysrIGIvZG9jL2VtYWNzL21haW50YWlu aW5nLnRleGkKQEAgLTI1MjksNiArMjUyOSwxNSBAQCBJZGVudGlmaWVyIFNlYXJjaAogcmVmZXJl bmNlZC4gIFRoZSBYUkVGIG1vZGUgY29tbWFuZHMgYXJlIGF2YWlsYWJsZSBpbiB0aGlzIGJ1ZmZl ciwgc2VlCiBAcmVme1hyZWYgQ29tbWFuZHN9LgogCitXaGVuIGludm9rZWQgaW4gYSBidWZmZXIg d2hvc2UgbWFqb3IgbW9kZSB1c2VzIHRoZSBAY29kZXtldGFnc30gYmFja2VuZCwKK0BrYmR7TS0/ fSBzZWFyY2hlcyBmaWxlcyBhbmQgYnVmZmVycyB3aG9zZSBtYWpvciBtb2RlIG1hdGNoZXMgdGhh dCBvZgordGhlIG9yaWdpbmFsIGJ1ZmZlci4gIEl0IGd1ZXNzZXMgdGhhdCBtb2RlIGZyb20gZmls ZSBleHRlbnNpb25zLCBzbyBpZgorQGtiZHtNLT99IHNlZW1zIHRvIGJlIHNraXBwaW5nIHJlbGV2 YW50IGJ1ZmZlcnMgb3IgZmlsZXMsIHRyeQorY3VzdG9taXppbmcgZWl0aGVyIHRoZSB2YXJpYWJs ZSBAY29kZXtzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3R9CisoaWYgeW91ciBidWZm ZXIncyBtYWpvciBtb2RlIGFscmVhZHkgaGFzIGFuIGVudHJ5IGluIGl0KSwgb3IKK0Bjb2Rle2F1 dG8tbW9kZS1hbGlzdH0gKGlmIG5vdCksIHRoZXJlYnkgaW5mb3JtaW5nIEBjb2Rle3hyZWZ9IG9m IHRoZQorbWlzc2luZyBleHRlbnNpb25zIChAcHhyZWZ7Q2hvb3NpbmcgTW9kZXN9KS4KKwogQHZp bmRleCB4cmVmLWF1dG8tanVtcC10by1maXJzdC14cmVmCiAgIElmIHRoZSB2YWx1ZSBvZiB0aGUg dmFyaWFibGUgQGNvZGV7eHJlZi1hdXRvLWp1bXAtdG8tZmlyc3QteHJlZn0gaXMKIEBjb2Rle3R9 LCBAY29kZXt4cmVmLWZpbmQtcmVmZXJlbmNlc30gYXV0b21hdGljYWxseSBqdW1wcyB0byB0aGUg Zmlyc3QKQEAgLTI3NDcsMTAgKzI3NTYsMzIgQEAgVGFnIFN5bnRheAogQGl0ZW0KIEluIEBMYVRl WHt9IGRvY3VtZW50cywgdGhlIGFyZ3VtZW50cyBmb3IgQGNvZGV7XGNoYXB0ZXJ9LAogQGNvZGV7 XHNlY3Rpb259LCBAY29kZXtcc3Vic2VjdGlvbn0sIEBjb2Rle1xzdWJzdWJzZWN0aW9ufSwKLUBj b2Rle1xlcW5vfSwgQGNvZGV7XGxhYmVsfSwgQGNvZGV7XHJlZn0sIEBjb2Rle1xjaXRlfSwKLUBj b2Rle1xiaWJpdGVtfSwgQGNvZGV7XHBhcnR9LCBAY29kZXtcYXBwZW5kaXh9LCBAY29kZXtcZW50 cnl9LAotQGNvZGV7XGluZGV4fSwgQGNvZGV7XGRlZn0sIEBjb2Rle1xuZXdjb21tYW5kfSwgQGNv ZGV7XHJlbmV3Y29tbWFuZH0sCi1AY29kZXtcbmV3ZW52aXJvbm1lbnR9IGFuZCBAY29kZXtccmVu ZXdlbnZpcm9ubWVudH0gYXJlIHRhZ3MuCitAY29kZXtcZXFub30sIEBjb2Rle1xsYWJlbH0sIEBj b2Rle1xyZWZ9LCBAY29kZXtcUmVmfSwgQGNvZGV7XGZvb3RyZWZ9LAorQGNvZGV7XGNpdGV9LCBA Y29kZXtcYmliaXRlbX0sIEBjb2Rle1xwYXJ0fSwgQGNvZGV7XGFwcGVuZGl4fSwKK0Bjb2Rle1xl bnRyeX0sIEBjb2Rle1xpbmRleH0sIEBjb2Rle1xkZWZ9LCBAY29kZXtcZWRlZn0sIEBjb2Rle1xn ZGVmfSwKK0Bjb2Rle1x4ZGVmfSwgQGNvZGV7XG5ld2NvbW1hbmR9LCBAY29kZXtccmVuZXdjb21t YW5kfSwKK0Bjb2Rle1xuZXdlbnZpcm9ubWVudH0sIEBjb2Rle1xyZW5ld2Vudmlyb25tZW50fSwK K0Bjb2Rle1xEZWNsYXJlUm9idXN0Q29tbWFuZH0sIEBjb2Rle1xuZXdyb2J1c3RjbWR9LAorQGNv ZGV7XHJlbmV3cm9idXN0Y21kfSwgQGNvZGV7XHByb3ZpZGVjb21tYW5kfSwKK0Bjb2Rle1xwcm92 aWRlcm9idXN0Y21kfSwgQGNvZGV7XE5ld0RvY3VtZW50Q29tbWFuZH0sCitAY29kZXtcUmVuZXdE b2N1bWVudENvbW1hbmR9LCBAY29kZXtcUHJvdmlkZURvY3VtZW50Q29tbWFuZH0sCitAY29kZXtc RGVjbGFyZURvY3VtZW50Q29tbWFuZH0sIEBjb2Rle1xOZXdFeHBhbmRhYmxlRG9jdW1lbnRDb21t YW5kfSwKK0Bjb2Rle1xSZW5ld0V4cGFuZGFibGVEb2N1bWVudENvbW1hbmR9LAorQGNvZGV7XFBy b3ZpZGVFeHBhbmRhYmxlRG9jdW1lbnRDb21tYW5kfSwKK0Bjb2Rle1xEZWNsYXJlRXhwYW5kYWJs ZURvY3VtZW50Q29tbWFuZH0sCitAY29kZXtcTmV3RG9jdW1lbnRFbnZpcm9ubWVudH0sIEBjb2Rl e1xSZW5ld0RvY3VtZW50RW52aXJvbm1lbnR9LAorQGNvZGV7XFByb3ZpZGVEb2N1bWVudEVudmly b25tZW50fSwgQGNvZGV7XERlY2xhcmVEb2N1bWVudEVudmlyb25tZW50fSwKK0Bjb2Rle1xjc2Rl Zn0sIEBjb2Rle1xjc2VkZWZ9LCBAY29kZXtcY3NnZGVmfSwgQGNvZGV7XGNzeGRlZn0sCitAY29k ZXtcY3NsZXRjc30sIEBjb2Rle1xjc2xldH0sIEBjb2Rle1xsZXRjc30sIEBjb2Rle1xsZXR9LAor QGNvZGV7XGNzX25ld19wcm90ZWN0ZWRfbm9wYXJ9LCBAY29kZXtcY3NfbmV3X3Byb3RlY3RlZH0s CitAY29kZXtcY3NfbmV3X25vcGFyfSwgQGNvZGV7XGNzX25ld19lcX0sIEBjb2Rle1xjc19uZXd9 LAorQGNvZGV7XGNzX3NldF9wcm90ZWN0ZWRfbm9wYXJ9LCBAY29kZXtcY3Nfc2V0X3Byb3RlY3Rl ZH0sCitAY29kZXtcY3Nfc2V0X25vcGFyfSwgQGNvZGV7XGNzX3NldF9lcX0sIEBjb2Rle1xjc19z ZXR9LAorQGNvZGV7XGNzX2dzZXRfcHJvdGVjdGVkX25vcGFyfSwgQGNvZGV7XGNzX2dzZXRfcHJv dGVjdGVkfSwKK0Bjb2Rle1xjc19nc2V0X25vcGFyfSwgQGNvZGV7XGNzX2dzZXRfZXF9LCBAY29k ZXtcY3NfZ3NldH0sCitAY29kZXtcY3NfZ2VuZXJhdGVfZnJvbV9hcmdfY291bnR9LCBhbmQgQGNv ZGV7XGNzX2dlbmVyYXRlX3ZhcmlhbnR9IGFyZQordGFncy4gIFNvIHRvbyBhcmUgdGhlIGFyZ3Vt ZW50cyBvZiBhbnkgc3RhcnJlZCB2YXJpYW50cyBvZiB0aGVzZQorY29tbWFuZHMuCiAKIE90aGVy IGNvbW1hbmRzIGNhbiBtYWtlIHRhZ3MgYXMgd2VsbCwgaWYgeW91IHNwZWNpZnkgdGhlbSBpbiB0 aGUKIGVudmlyb25tZW50IHZhcmlhYmxlIEBlbnZ7VEVYVEFHU30gYmVmb3JlIGludm9raW5nIEBj b21tYW5ke2V0YWdzfS4gIFRoZQpkaWZmIC0tZ2l0IGEvbGliLXNyYy9ldGFncy5jIGIvbGliLXNy Yy9ldGFncy5jCmluZGV4IDAzYmM1NWRlMDNkLi42YmM3MzRlN2RmMCAxMDA2NDQKLS0tIGEvbGli LXNyYy9ldGFncy5jCisrKyBiL2xpYi1zcmMvZXRhZ3MuYwpAQCAtNzkzLDExICs3OTMsMjcgQEAg I2RlZmluZSBTVERJTiAweDEwMDEJCS8qIHJldHVybmVkIGJ5IGdldG9wdF9sb25nIG9uIC0tcGFy c2Utc3RkaW4gKi8KIHN0YXRpYyBjb25zdCBjaGFyICpUZVhfc3VmZml4ZXMgW10gPQogICB7ICJi aWIiLCAiY2xvIiwgImNscyIsICJsdHgiLCAic3R5IiwgIlRlWCIsICJ0ZXgiLCBOVUxMIH07CiBz dGF0aWMgY29uc3QgY2hhciBUZVhfaGVscCBbXSA9Ci0iSW4gTGFUZVggdGV4dCwgdGhlIGFyZ3Vt ZW50IG9mIGFueSBvZiB0aGUgY29tbWFuZHMgJ1xcY2hhcHRlcicsXG5cCi0nXFxzZWN0aW9uJywg J1xcc3Vic2VjdGlvbicsICdcXHN1YnN1YnNlY3Rpb24nLCAnXFxlcW5vJywgJ1xcbGFiZWwnLFxu XAotJ1xccmVmJywgJ1xcY2l0ZScsICdcXGJpYml0ZW0nLCAnXFxwYXJ0JywgJ1xcYXBwZW5kaXgn LCAnXFxlbnRyeScsXG5cCi0nXFxpbmRleCcsICdcXGRlZicsICdcXG5ld2NvbW1hbmQnLCAnXFxy ZW5ld2NvbW1hbmQnLFxuXAotJ1xcbmV3ZW52aXJvbm1lbnQnIG9yICdcXHJlbmV3ZW52aXJvbm1l bnQnIGlzIGEgdGFnLlxuXAorIkluIExhVGVYIHRleHQsIHRoZSBhcmd1bWVudCBvZiB0aGUgY29t bWFuZHMgJ1xcY2hhcHRlcicsICdcXHNlY3Rpb24nLFxuXAorJ1xcc3Vic2VjdGlvbicsICdcXHN1 YnN1YnNlY3Rpb24nLCAnXFxlcW5vJywgJ1xcbGFiZWwnLCAnXFxyZWYnLFxuXAorJ1xcUmVmJywg J1xcZm9vdHJlZicsICdcXGNpdGUnLCAnXFxiaWJpdGVtJywgJ1xccGFydCcsICdcXGFwcGVuZGl4 JyxcblwKKydcXGVudHJ5JywgJ1xcaW5kZXgnLCAnXFxkZWYnLCAnXFxlZGVmJywgJ1xcZ2RlZics ICdcXHhkZWYnLFxuXAorJ1xcbmV3Y29tbWFuZCcsICdcXHJlbmV3Y29tbWFuZCcsICdcXG5ld3Jv YnVzdGNtZCcsICdcXHJlbmV3cm9idXN0Y21kJyxcblwKKydcXG5ld2Vudmlyb25tZW50JywgJ1xc cmVuZXdlbnZpcm9ubWVudCcsICdcXERlY2xhcmVSb2J1c3RDb21tYW5kJyxcblwKKydcXHByb3Zp ZGVjb21tYW5kJywgJ1xccHJvdmlkZXJvYnVzdGNtZCcsICdcXE5ld0RvY3VtZW50Q29tbWFuZCcs XG5cCisnXFxSZW5ld0RvY3VtZW50Q29tbWFuZCcsICdcXFByb3ZpZGVEb2N1bWVudENvbW1hbmQn LFxuXAorJ1xcRGVjbGFyZURvY3VtZW50Q29tbWFuZCcsICdcXE5ld0V4cGFuZGFibGVEb2N1bWVu dENvbW1hbmQnLFxuXAorJ1xcUmVuZXdFeHBhbmRhYmxlRG9jdW1lbnRDb21tYW5kJywgJ1xcUHJv dmlkZUV4cGFuZGFibGVEb2N1bWVudENvbW1hbmQnLFxuXAorJ1xcRGVjbGFyZUV4cGFuZGFibGVE b2N1bWVudENvbW1hbmQnLCAnXFxOZXdEb2N1bWVudEVudmlyb25tZW50JyxcblwKKydcXFJlbmV3 RG9jdW1lbnRFbnZpcm9ubWVudCcsICdcXFByb3ZpZGVEb2N1bWVudEVudmlyb25tZW50JyxcblwK KydcXERlY2xhcmVEb2N1bWVudEVudmlyb25tZW50JywnXFxjc2RlZicsICdcXGNzZWRlZicsICdc XGNzZ2RlZicsXG5cCisnXFxjc3hkZWYnLCAnXFxjc2xldGNzJywgJ1xcY3NsZXQnLCAnXFxsZXRj cycsICdcXGxldCcsXG5cCisnXFxjc19uZXdfcHJvdGVjdGVkX25vcGFyJywgJ1xcY3NfbmV3X3By b3RlY3RlZCcsICdcXGNzX25ld19ub3BhcicsXG5cCisnXFxjc19uZXdfZXEnLCAnXFxjc19uZXcn LCAnXFxjc19zZXRfcHJvdGVjdGVkX25vcGFyJyxcblwKKydcXGNzX3NldF9wcm90ZWN0ZWQnLCAn XFxjc19zZXRfbm9wYXInLCAnXFxjc19zZXRfZXEnLCAnXFxjc19zZXQnLFxuXAorJ1xcY3NfZ3Nl dF9wcm90ZWN0ZWRfbm9wYXInLCAnXFxjc19nc2V0X3Byb3RlY3RlZCcsICdcXGNzX2dzZXRfbm9w YXInLFxuXAorJ1xcY3NfZ3NldF9lcScsICdcXGNzX2dzZXQnLCAnXFxjc19nZW5lcmF0ZV9mcm9t X2FyZ19jb3VudCcsIG9yXG5cCisnXFxjc19nZW5lcmF0ZV92YXJpYW50JyBpcyBhIHRhZy4gIFNv IGlzIHRoZSBhcmd1bWVudCBvZiBhbnkgc3RhcnJlZFxuXAordmFyaWFudCBvZiB0aGVzZSBjb21t YW5kcy5cblwKIFxuXAogT3RoZXIgY29tbWFuZHMgY2FuIGJlIHNwZWNpZmllZCBieSBzZXR0aW5n IHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZVxuXAogJ1RFWFRBR1MnIHRvIGEgY29sb24tc2VwYXJh dGVkIGxpc3QgbGlrZSwgZm9yIGV4YW1wbGUsXG5cCkBAIC01NzQwLDExICs1NzU2LDI1IEBAIFNj aGVtZV9mdW5jdGlvbnMgKEZJTEUgKmluZikKIHN0YXRpYyBsaW5lYnVmZmVyICpURVhfdG9rdGFi ID0gTlVMTDsgLyogVGFibGUgd2l0aCB0YWcgdG9rZW5zICovCiAKIC8qIERlZmF1bHQgc2V0IG9m IGNvbnRyb2wgc2VxdWVuY2VzIHRvIHB1dCBpbnRvIFRFWF90b2t0YWIuCi0gICBUaGUgdmFsdWUg b2YgZW52aXJvbm1lbnQgdmFyIFRFWFRBR1MgaXMgcHJlcGVuZGVkIHRvIHRoaXMuICAqLworICAg VGhlIHZhbHVlIG9mIGVudmlyb25tZW50IHZhciBURVhUQUdTIGlzIHByZXBlbmRlZCB0byB0aGlz LgorICAgKDIwMjQpIEFkZCB2YXJpYW50cyBvZiAnXGRlZicsIHNvbWUgYWRkaXRpb25hbCBMYVRl WCAoYW5kCisgICBmb3JtZXIgeHBhcnNlKSBjb21tYW5kcywgY29tbW9uIHZhcmlhbnRzIGZyb20g dGhlCisgICAnZXRvb2xib3gnIHBhY2thZ2UsIGFuZCB0aGUgbWFpbiBleHBsMyBjb21tYW5kcy4g Ki8KIHN0YXRpYyBjb25zdCBjaGFyICpURVhfZGVmZW52ID0gIlwKLTpjaGFwdGVyOnNlY3Rpb246 c3Vic2VjdGlvbjpzdWJzdWJzZWN0aW9uOmVxbm86bGFiZWw6cmVmOmNpdGU6YmliaXRlbVwKLTpw YXJ0OmFwcGVuZGl4OmVudHJ5OmluZGV4OmRlZlwKLTpuZXdjb21tYW5kOnJlbmV3Y29tbWFuZDpu ZXdlbnZpcm9ubWVudDpyZW5ld2Vudmlyb25tZW50IjsKKzpsYWJlbDpyZWY6UmVmOmZvb3RyZWY6 Y2hhcHRlcjpzZWN0aW9uOnN1YnNlY3Rpb246c3Vic3Vic2VjdGlvbjplcW5vOmNpdGVcCis6Ymli aXRlbTpwYXJ0OmFwcGVuZGl4OmVudHJ5OmluZGV4OmRlZjplZGVmOmdkZWY6eGRlZjpuZXdjb21t YW5kOnJlbmV3Y29tbWFuZFwKKzpuZXdlbnZpcm9ubWVudDpyZW5ld2Vudmlyb25tZW50OkRlY2xh cmVSb2J1c3RDb21tYW5kOnJlbmV3cm9idXN0Y21kXAorOm5ld3JvYnVzdGNtZDpwcm92aWRlY29t bWFuZDpwcm92aWRlcm9idXN0Y21kOk5ld0RvY3VtZW50Q29tbWFuZFwKKzpSZW5ld0RvY3VtZW50 Q29tbWFuZDpQcm92aWRlRG9jdW1lbnRDb21tYW5kOkRlY2xhcmVEb2N1bWVudENvbW1hbmRcCis6 TmV3RXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZDpSZW5ld0V4cGFuZGFibGVEb2N1bWVudENvbW1h bmRcCis6UHJvdmlkZUV4cGFuZGFibGVEb2N1bWVudENvbW1hbmQ6RGVjbGFyZUV4cGFuZGFibGVE b2N1bWVudENvbW1hbmRcCis6TmV3RG9jdW1lbnRFbnZpcm9ubWVudDpSZW5ld0RvY3VtZW50RW52 aXJvbm1lbnRcCis6UHJvdmlkZURvY3VtZW50RW52aXJvbm1lbnQ6RGVjbGFyZURvY3VtZW50RW52 aXJvbm1lbnQ6Y3NkZWZcCis6Y3NlZGVmOmNzZ2RlZjpjc3hkZWY6Y3NsZXRjczpjc2xldDpsZXRj czpsZXQ6Y3NfbmV3X3Byb3RlY3RlZF9ub3BhclwKKzpjc19uZXdfcHJvdGVjdGVkOmNzX25ld19u b3Bhcjpjc19uZXdfZXE6Y3NfbmV3OmNzX3NldF9wcm90ZWN0ZWRfbm9wYXJcCis6Y3Nfc2V0X3By b3RlY3RlZDpjc19zZXRfbm9wYXI6Y3Nfc2V0X2VxOmNzX3NldDpjc19nc2V0X3Byb3RlY3RlZF9u b3BhclwKKzpjc19nc2V0X3Byb3RlY3RlZDpjc19nc2V0X25vcGFyOmNzX2dzZXRfZXE6Y3NfZ3Nl dFwKKzpjc19nZW5lcmF0ZV9mcm9tX2FyZ19jb3VudDpjc19nZW5lcmF0ZV92YXJpYW50IjsKIAog c3RhdGljIHZvaWQgVEVYX2RlY29kZV9lbnYgKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKTsK IApAQCAtNTgwMywxOSArNTgzMywxMzkgQEAgVGVYX2NvbW1hbmRzIChGSUxFICppbmYpCiAJICAg ICAgewogCQljaGFyICpwOwogCQlwdHJkaWZmX3QgbmFtZWxlbiwgbGluZWxlbjsKLQkJYm9vbCBv cGdycCA9IGZhbHNlOworCQlib29sIG9wZ3JwID0gZmFsc2UsIG9uZV9lc2MgPSBmYWxzZSwgaXNf ZXhwbHRocmVlID0gZmFsc2U7CiAKIAkJY3AgPSBza2lwX3NwYWNlcyAoY3AgKyBrZXktPmxlbik7 CisKKwkJLyogMS4gVGhlIGNhbm9uaWNhbCBleHBsMyBzeW50YXggbG9va3Mgc29tZXRoaW5nIGxp a2UgdGhpczoKKwkJICAgXGNzX25ldzpOcG4gXF9faG9va190bF9ncHV0Ok5uIHsgXEVSUk9SIH0u ICBGaXJzdCwgaWYgd2UKKwkJICAgd2FudCB0byB0YWcgYW55IHN1Y2ggY29tbWFuZHMsIHdlIGlu Y2x1ZGUgb25seSB0aGUgcGFydAorCQkgICBiZWZvcmUgdGhlIGNvbG9uIChjc19uZXcpIGluIFRF WF9kZWZlbnYgb3IgVEVYVEFHUy4gIFNlY29uZCwKKwkJICAgZXRhZ3Mgc2tpcHMgdGhlIGFyZ3Vt ZW50IHNwZWNpZmllciAoaW5jbHVkaW5nIHRoZSBjb2xvbikKKwkJICAgYWZ0ZXIgdGhlIHRhZyB0 b2tlbiwgc28gdGhhdCBpdCBkb2Vzbid0IGJlY29tZSB0aGUgdGFnIG5hbWUuCisJCSAgIFRoaXJk LCB3ZSBzZXQgdGhlIGJvb2xlYW4gJ2lzX2V4cGx0aHJlZScgdG8gdHJ1ZSBzbyB0aGF0IHdlCisJ CSAgIGNhbiByZW1vdmUgdGhlIGFyZ3VtZW50IHNwZWNpZmllciBmcm9tIHRoZSBhY3R1YWwgdGFn IG5hbWUKKwkJICAgKF9faG9va190bF9ncHV0KS4gIFRoaXMgYWxsIGFsbG93cyB1cyB0byBpbmNs dWRlIGV4cGwzCisJCSAgIGNvbnN0cnVjdHMgaW4gVEVYX2RlZmVudiBvciBpbiB0aGUgZW52aXJv bm1lbnQgdmFyaWFibGUKKwkJICAgVEVYVEFHUyB3aXRob3V0IHJlcXVpcmluZyBhIGNoYW5nZSBv ZiBzZXBhcmF0b3IsIGFuZCBpdCBhbHNvCisJCSAgIGFsbG93cyB1cyB0byBmaW5kIHRoZSBkZWZp bml0aW9uIG9mIHZhcmlhbnQgY29tbWFuZHMgKHdpdGgKKwkJICAgZGlmZmVyZW50IGFyZ3VtZW50 IHNwZWNpZmllcnMpIGRlZmluZWQgdXNpbmcsIGZvciBleGFtcGxlLAorCQkgICBcY3NfZ2VuZXJh dGVfdmFyaWFudDpObi4gIFBsZWFzZSBub3RlIHRoYXQgdGhlIGV4cGwzIHNwZWMKKwkJICAgcmVx dWlyZXMgZXRhZ3MgdG8gcGF5IG1vcmUgYXR0ZW50aW9uIHRvIHdoaXRlc3BhY2UgaW4gdGhlCisJ CSAgIGNvZGUuCisKKwkJICAgMi4gV2UgYWxzbyBhdXRvbWF0aWNhbGx5IHJlbW92ZSB0aGUgYXN0 ZXJpc2sgZnJvbSBzdGFycmVkCisJCSAgIHZhcmlhbnRzIG9mIGFsbCBjb21tYW5kcywgd2l0aG91 dCB0aGUgbmVlZCB0byBpbmNsdWRlIHRoZQorCQkgICBzdGFycmVkIGNvbW1hbmRzIGV4cGxpY2l0 bHkgaW4gVEVYX2RlZmVudiBvciBURVhUQUdTLiAqLworCQlpZiAoKmNwID09ICc6JykKKwkJICB7 CisJCSAgICB3aGlsZSAoIWNfaXNzcGFjZSAoKmNwKSAmJiAqY3AgIT0gVEVYX29wZ3JwKQorCQkg ICAgICBjcCsrOworCQkgICAgY3AgPSBza2lwX3NwYWNlcyAoY3ApOworCQkgICAgaXNfZXhwbHRo cmVlID0gdHJ1ZTsKKwkJICB9CisJCWVsc2UgaWYgKCpjcCA9PSAnKicpCisJCSAgY3ArKzsKKwor CQkvKiBTa2lwIHRoZSBvcHRpb25hbCBhcmd1bWVudHMgdG8gY29tbWFuZHMgaW4gdGhlIHRhZ3Mg bGlzdCBzbworCQkgICB0aGF0IHRoZXNlIGFyZ3VtZW50cyBkb24ndCBlbmQgdXAgYXMgdGhlIG5h bWUgb2YgdGhlIHRhZy4KKwkJICAgVGhlIG5hbWUgd2lsbCBpbnN0ZWFkIGNvbWUgZnJvbSB0aGUg YXJndW1lbnQgaW4gY3VybHkgYnJhY2VzCisJCSAgIHRoYXQgZm9sbG93cyB0aGUgb3B0aW9uYWwg b25lcy4gIFRoZSAnXGxldCcgY29tbWFuZCBnZXRzCisJCSAgIHNwZWNpYWwgdHJlYXRtZW50LiAq LworCQl3aGlsZSAoKmNwICE9ICdcMCcgJiYgKmNwICE9ICclJworCQkgICAgICAgJiYgIXN0cmVx IChrZXktPmJ1ZmZlciwgImxldCIpKQorCQkgIHsKKwkJICAgIGlmICgqY3AgPT0gJ1snKQorCQkg ICAgICB7CisJCQl3aGlsZSAoKmNwICE9ICddJyAmJiAqY3AgIT0gJ1wwJyAmJiAqY3AgIT0gJyUn KQorCQkJICBjcCsrOworCQkgICAgICB9CisJCSAgICBlbHNlIGlmICgqY3AgPT0gJygnKQorCQkg ICAgICB7CisJCQl3aGlsZSAoKmNwICE9ICcpJyAmJiAqY3AgIT0gJ1wwJyAmJiAqY3AgIT0gJyUn KQorCQkJICBjcCsrOworCQkgICAgICB9CisJCSAgICBlbHNlIGlmICgqY3AgPT0gJ10nIHx8ICpj cCA9PSAnKScpCisJCSAgICAgIGNwKys7CisJCSAgICBlbHNlCisJCSAgICAgIGJyZWFrOworCQkg IH0KIAkJaWYgKCpjcCA9PSBURVhfb3BncnApCiAJCSAgewogCQkgICAgb3BncnAgPSB0cnVlOwog CQkgICAgY3ArKzsKKwkJICAgIGNwID0gc2tpcF9zcGFjZXMgKGNwKTsgLyogRm9yIGV4cGwzIGNv ZGUuICovCiAJCSAgfQorCisJCS8qIFJlbW92aW5nIHRoZSBUZVggZXNjYXBlIGNoYXJhY3RlciBm cm9tIHRhZyBuYW1lcyBzaW1wbGlmaWVzCisJCSAgIHRoaW5ncyBmb3IgZWRpdG9ycyBmaW5kaW5n IHRhZ2dlZCBjb21tYW5kcyBpbiBUZVggYnVmZmVycy4KKwkJICAgVGhpcyBhcHBsaWVzIHRvIEVt YWNzIGJ1dCBhbHNvIHRvIHRoZSB0YWctZmluZGluZyBiZWhhdmlvcgorCQkgICBvZiBhdCBsZWFz dCBzb21lIG9mIHRoZSBlZGl0b3JzIHRoYXQgdXNlIGN0YWdzLCB0aG91Z2ggaW4KKwkJICAgdGhl IGxhdHRlciBjYXNlIHRoaXMgd2lsbCByZW1haW4gc3Vib3B0aW1hbC4gIFRoZQorCQkgICB1bmRv Y3VtZW50ZWQgY3RhZ3Mgb3B0aW9uICctLW5vLWR1cGxpY2F0ZXMnIG1heSBoZWxwLiAqLworCQlp ZiAoKmNwID09IFRFWF9lc2MpCisJCSAgeworCQkgICAgY3ArKzsKKwkJICAgIG9uZV9lc2MgPSB0 cnVlOworCQkgIH0KKworCQkvKiBUZXN0aW5nICFjX2lzc3BhY2UgJiYgIWNfaXNwdW5jdCBpcyBz aW1wbGVyLCBidXQgaGFsdHMKKwkJICAgcHJvY2Vzc2luZyBhdCB0b28gbWFueSBwbGFjZXMuICBU aGUgbGlzdCBhcyBpdCBzdGFuZHMgdHJpZXMKKwkJICAgYm90aCB0byBlbnN1cmUgdGhhdCB0YWcg bmFtZXMgd2lsbCBkZXJpdmUgZnJvbSBtYWNybyBuYW1lcworCQkgICByYXRoZXIgdGhhbiBmcm9t IG9wdGlvbmFsIHBhcmFtZXRlcnMgdG8gdGhvc2UgbWFjcm9zLCBhbmQKKwkJICAgYWxzbyB0byBy ZXR1cm4gZmluZGFibGUgbmFtZXMgd2hpbGUgc3RpbGwgYWxsb3dpbmcgZm9yCisJCSAgIHVub3J0 aG9kb3ggY29uc3RydWN0cy4gKi8KIAkJZm9yIChwID0gY3A7Ci0JCSAgICAgKCFjX2lzc3BhY2Ug KCpwKSAmJiAqcCAhPSAnIycgJiYKLQkJICAgICAgKnAgIT0gVEVYX29wZ3JwICYmICpwICE9IFRF WF9jbGdycCk7CisJCSAgICAgKCFjX2lzc3BhY2UgKCpwKSAmJiAqcCAhPSAnIycgJiYgKnAgIT0g Jz0nICYmCisJCSAgICAgICpwICE9ICdbJyAmJiAqcCAhPSAnKCcgJiYgKnAgIT0gVEVYX29wZ3Jw ICYmCisJCSAgICAgICpwICE9IFRFWF9jbGdycCAmJiAqcCAhPSAnIicgJiYgKnAgIT0gJ1wnJyAm JgorCQkgICAgICAqcCAhPSAnJScgJiYgKnAgIT0gJywnICYmICpwICE9ICd8JyAmJiAqcCAhPSAn JCcpOwogCQkgICAgIHArKykKLQkJICBjb250aW51ZTsKKwkJICAvKiBJbiBleHBsMyBjb2RlIHdl IHJlbW92ZSB0aGUgYXJndW1lbnQgc3BlY2lmaWNhdGlvbiBmcm9tCisJCSAgICAgdGhlIHRhZyBu YW1lLiAgTW9yZSBnZW5lcmFsbHkgd2UgYWxsb3cgb25seSBvbmUgKGRlbGV0ZWQpCisJCSAgICAg ZXNjYXBlIGNoYXIgaW4gYSB0YWcgbmFtZSwgd2hpY2ggKHByaW1hcmlseSkgZW5hYmxlcworCQkg ICAgIHRhZ2dpbmcgYSBUZVggY29tbWFuZCdzIGRpZmZlcmVudCwgcG9zc2libHkgdGVtcG9yYXJ5 LAorCQkgICAgICdcbGV0JyBiaW5kaW5ncy4gKi8KKwkJICBpZiAoaXNfZXhwbHRocmVlICYmICpw ID09ICc6JykKKwkJICAgIGJyZWFrOworCQkgIGVsc2UgaWYgKCpwID09IFRFWF9lc2MpCisJCSAg ICB7IC8qIFNlY29uZCBwYXJ0IG9mIHRlc3QgaXMgZm9yLCBlLmcuLCBcY3NsZXQuICovCisJCSAg ICAgIGlmICghb25lX2VzYyAmJiAhb3BncnApCisJCQl7CisJCQkgIG9uZV9lc2MgPSB0cnVlOwor CQkJICBjb250aW51ZTsKKwkJCX0KKwkJICAgICAgZWxzZQorCQkJYnJlYWs7CisJCSAgICB9CisJ CSAgZWxzZQorCQkgICAgY29udGludWU7CisJCS8qIEZvciBUZVggZmlsZXMsIHRhZ3Mgd2l0aG91 dCBhIG5hbWUgYXJlIGJhc2ljYWxseSBjcnVmdCwgYW5kCisJCSAgIGluIHNvbWUgc2l0dWF0aW9u cyB0aGV5IGNhbiBwcm9kdWNlIHNwdXJpb3VzIGFuZCBjb25mdXNpbmcKKwkJICAgbWF0Y2hlcy4g IFRyeSB0byBjYXRjaCBhcyBtYW55IGNhc2VzIGFzIHBvc3NpYmxlIHdoZXJlIGEKKwkJICAgY29t bWFuZCBuYW1lIGlzIG9mIHRoZSBmb3JtICdcKCcsIGJ1dCBhdm9pZCwgYXMgZmFyIGFzCisJCSAg IHBvc3NpYmxlLCB0aGUgc3B1cmlvdXMgbWF0Y2hlcy4gKi8KKwkJaWYgKHAgPT0gY3ApCisJCSAg eworCQkgICAgc3dpdGNoICgqcCkKKwkJICAgICAgeyAvKiBJbmNsdWRlID0/ICovCisJCSAgICAg IGNhc2UgJygnOiBjYXNlICdbJzogY2FzZSAnIic6IGNhc2UgJ1wnJzoKKwkJICAgICAgY2FzZSAn XFwnOiBjYXNlICchJzogY2FzZSAnPSc6IGNhc2UgJywnOgorCQkgICAgICBjYXNlICd8JzogY2Fz ZSAnJCc6CisJCQlwKys7CisJCQlicmVhazsKKwkJICAgICAgY2FzZSAneyc6IGNhc2UgJ30nOiBj YXNlICc8JzogY2FzZSAnPic6CisJCQlpZiAoIW9wZ3JwKQorCQkJICB7CisJCQkgICAgICBwKys7 CisJCQkgICAgICBpZiAoKnAgPT0gJ1wwJyB8fCAqcCA9PSAnJScpCisJCQkJZ290byB0ZXhfbmV4 dF9saW5lOworCQkJICB9CisJCQlicmVhazsKKwkJICAgICAgZGVmYXVsdDoKKwkJCWJyZWFrOwor CQkgICAgICB9CisJCSAgfQogCQluYW1lbGVuID0gcCAtIGNwOwogCQlsaW5lbGVuID0gbGIubGVu OwogCQlpZiAoIW9wZ3JwIHx8ICpwID09IFRFWF9jbGdycCkKQEAgLTU4MjQsOSArNTk3NCwxOCBA QCBUZVhfY29tbWFuZHMgKEZJTEUgKmluZikKIAkJICAgICAgcCsrOwogCQkgICAgbGluZWxlbiA9 IHAgLSBsYi5idWZmZXIgKyAxOwogCQkgIH0KLQkJbWFrZV90YWcgKGNwLCBuYW1lbGVuLCB0cnVl LAotCQkJICBsYi5idWZmZXIsIGxpbmVsZW4sIGxpbmVubywgbGluZWNoYXJubyk7Ci0JCWdvdG8g dGV4X25leHRfbGluZTsgLyogV2Ugb25seSB0YWcgYSBsaW5lIG9uY2UgKi8KKwkJaWYgKG5hbWVs ZW4pCisJCSAgbWFrZV90YWcgKGNwLCBuYW1lbGVuLCB0cnVlLAorCQkJICAgIGxiLmJ1ZmZlciwg bGluZWxlbiwgbGluZW5vLCBsaW5lY2hhcm5vKTsKKwkJLyogTGluZXMgd2l0aCBtb3JlIHRoYW4g b25lIFxkZWYgb3IgXGxldCBhcmUgc3VycHJpc2luZ2x5CisJCSAgIGNvbW1vbiBpbiBUZVggZmls ZXMsIGVzcGVjaWFsbHkgaW4gdGhlIHN5c3RlbSBmaWxlcyB0aGF0CisJCSAgIGZvcm0gdGhlIGJh c2lzIG9mIHRoZSB2YXJpb3VzIFRlWCBmb3JtYXRzLiAgVGhpcyB0YWdzIHRoZW0KKwkJICAgYWxs LiAqLworCQkvKiBnb3RvIHRleF9uZXh0X2xpbmU7IC9cKiBXZSBvbmx5IHRhZyBhIGxpbmUgb25j ZSAqXC8gKi8KKwkJd2hpbGUgKCpjcCAhPSAnXDAnICYmICpjcCAhPSAnJScgJiYgKmNwICE9IFRF WF9lc2MpCisJCSAgY3ArKzsKKwkJaWYgKCpjcCAhPSBURVhfZXNjKQorCQkgIGdvdG8gdGV4X25l eHRfbGluZTsKIAkgICAgICB9CiAJfQogICAgIHRleF9uZXh0X2xpbmU6CmRpZmYgLS1naXQgYS9s aXNwL3RleHRtb2Rlcy90ZXgtbW9kZS5lbCBiL2xpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsCmlu ZGV4IDk3Yzk1MDI2N2M2Li5mYmYwODg0MDY5OSAxMDA2NDQKLS0tIGEvbGlzcC90ZXh0bW9kZXMv dGV4LW1vZGUuZWwKKysrIGIvbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwKQEAgLTYzNiw2ICs2 MzYsMTQgQEAgdGV4LWZvbnQtbG9jay1rZXl3b3Jkcy0yCiAJICAgICAgMyAnKHRleC1mb250LWxv Y2stYXBwZW5kLXByb3AgJ2JvbGQpICdhcHBlbmQpKSkpKQogICAgIkdhdWR5IGV4cHJlc3Npb25z IHRvIGhpZ2hsaWdodCBpbiBUZVggbW9kZXMuIikKIAorKGRlZnZhci1sb2NhbCB0ZXgtZXhwbC1y ZWdpb24tbGlzdCBuaWwKKyAgIkxpc3Qgb2YgcmVnaW9uIGJvdW5kYXJpZXMgd2hlcmUgZXhwbDMg c3ludGF4IGlzIGFjdGl2ZS4KK0l0IHdpbGwgYmUgbmlsIGluIGJ1ZmZlcnMgd2hlcmUgZXhwbDMg c3ludGF4IGlzIGFsd2F5cyBhY3RpdmUsIGUuZy4sCitleHBsMyBjbGFzc2VzIG9yIHBhY2thZ2Vz LiIpCisKKyhkZWZ2YXItbG9jYWwgdGV4LWV4cGwtYnVmZmVyLXAgbmlsCisgICJOb24tbmlsIGlu IGJ1ZmZlcnMgd2hlcmUgZXhwbDMgc3ludGF4IGlzIGFsd2F5cyBhY3RpdmUuIikKKwogKGRlZnVu IHRleC1mb250LWxvY2stc3VzY3JpcHQgKHBvcykKICAgKHVubGVzcyAob3IgKG1lbXEgKGdldC10 ZXh0LXByb3BlcnR5IHBvcyAnZmFjZSkKIAkJICAgICcoZm9udC1sb2NrLWNvbnN0YW50LWZhY2Ug Zm9udC1sb2NrLWJ1aWx0aW4tZmFjZQpAQCAtNjQ1LDcgKzY1MywxNyBAQCB0ZXgtZm9udC1sb2Nr LXN1c2NyaXB0CiAJCSAgICAocG9zIHBvcykpCiAJCSh3aGlsZSAoZXEgKGNoYXItYmVmb3JlIHBv cykgP1xcKQogCQkgIChzZXRxIHBvcyAoMS0gcG9zKSBvZGQgKG5vdCBvZGQpKSkKLQkJb2RkKSkK KwkJb2RkKQorICAgICAgICAgICAgICA7OyBDaGVjayBpZiBQT1MgaXMgaW4gYW4gZXhwbDMgc3lu dGF4IHJlZ2lvbiBvciBhbiBleHBsMyBidWZmZXIKKyAgICAgICAgICAgICAgKHdoZW4gKGVxIChj aGFyLWFmdGVyIHBvcykgP18pCisgICAgICAgICAgICAgICAgKG9yIHRleC1leHBsLWJ1ZmZlci1w CisgICAgICAgICAgICAgICAgICAgIChhbmQKKyAgICAgICAgICAgICAgICAgICAgIHRleC1leHBs LXJlZ2lvbi1saXN0CisgICAgICAgICAgICAgICAgICAgICAoY2F0Y2ggJ3Jlc3VsdAorCSAgICAg ICAgICAgICAgIChkb2xpc3QgKHJhbmdlIHRleC1leHBsLXJlZ2lvbi1saXN0KQorCSAgICAgICAg ICAgICAgICAgKGFuZCAoPiBwb3MgKGNhciByYW5nZSkpCisJICAgICAgICAgICAgICAgICAgICAg ICg8IHBvcyAoY2RyIHJhbmdlKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh0aHJv dyAncmVzdWx0IHQpKSkpKSkpKQogICAgIChpZiAoZXEgKGNoYXItYWZ0ZXIgcG9zKSA/XykKIAlg KGZhY2Ugc3Vic2NyaXB0IGRpc3BsYXkgKHJhaXNlICwoY2FyIHRleC1mb250LXNjcmlwdC1kaXNw bGF5KSkpCiAgICAgICBgKGZhY2Ugc3VwZXJzY3JpcHQgZGlzcGxheSAocmFpc2UgLChjYWRyIHRl eC1mb250LXNjcmlwdC1kaXNwbGF5KSkpKSkpCkBAIC0xMjg5LDggKzEzMDcsMTYgQEAgdGV4LWNv bW1vbi1pbml0aWFsaXphdGlvbgogICAgICAgICAgICAgICAgICMndGV4LS1wcmV0dGlmeS1zeW1i b2xzLWNvbXBvc2UtcCkKICAgKHNldHEtbG9jYWwgc3ludGF4LXByb3BlcnRpemUtZnVuY3Rpb24K IAkgICAgICAoc3ludGF4LXByb3BlcnRpemUtcnVsZXMgbGF0ZXgtc3ludGF4LXByb3BlcnRpemUt cnVsZXMpKQorICA7OyBEb24ndCBhZGQgZXh0cmEgcHJvY2Vzc2luZyB0byBgc3ludGF4LXByb3Bl cnRpemUnIGluIGZpbGVzIHdoZXJlCisgIDs7IGV4cGwzIHN5bnRheCBpcyBhbHdheXMgYWN0aXZl LgorICA6YWZ0ZXItaG9vayAocHJvZ24gKHRleC1leHBsLWJ1ZmZlci1wYXJzZSkKKyAgICAgICAg ICAgICAgICAgICAgICh1bmxlc3MgdGV4LWV4cGwtYnVmZmVyLXAKKyAgICAgICAgICAgICAgICAg ICAgICAgKGFkZC1ob29rICdzeW50YXgtcHJvcGVydGl6ZS1leHRlbmQtcmVnaW9uLWZ1bmN0aW9u cworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyd0ZXgtZXhwbC1yZWdpb24tc2V0 IG5pbCB0KSkpCiAgIDs7IFRBQnMgaW4gdmVyYmF0aW0gZW52aXJvbm1lbnRzIGRvbid0IGRvIHdo YXQgeW91IHRoaW5rLgogICAoc2V0cS1sb2NhbCBpbmRlbnQtdGFicy1tb2RlIG5pbCkKKyAgOzsg U2V0IHVwIHhyZWYgYmFja2VuZCBpbiBUZVggYnVmZmVycy4KKyAgKGFkZC1ob29rICd4cmVmLWJh Y2tlbmQtZnVuY3Rpb25zICMndGV4LS14cmVmLWJhY2tlbmQgbmlsIHQpCiAgIDs7IE90aGVyIHZh cnMgdGhhdCBzaG91bGQgYmUgYnVmZmVyLWxvY2FsLgogICAobWFrZS1sb2NhbC12YXJpYWJsZSAn dGV4LWNvbW1hbmQpCiAgIChtYWtlLWxvY2FsLXZhcmlhYmxlICd0ZXgtc3RhcnQtb2YtaGVhZGVy KQpAQCAtMTkzNiw2ICsxOTYyLDM2IEBAIHRleC1jb3VudC13b3JkcwogCQkoZm9yd2FyZC1zZXhw IDEpKSkpKSkKICAgICAgIChtZXNzYWdlICIlcyB3b3JkcyIgY291bnQpKSkpCiAKKyhkZWZ1biB0 ZXgtZXhwbC1idWZmZXItcGFyc2UgKCkKKyAgIklkZW50aWZ5IGJ1ZmZlcnMgd2hlcmUgZXhwbDMg c3ludGF4IGlzIGFsd2F5cyBhY3RpdmUuIgorICAoc2F2ZS1leGN1cnNpb24KKyAgICAoZ290by1j aGFyIChwb2ludC1taW4pKQorICAgICh3aGVuICh0ZXgtc2VhcmNoLW5vbmNvbW1lbnQKKwkgICAo cmUtc2VhcmNoLWZvcndhcmQKKwkgICAgIlxcXFxcXCg/OkV4cGxGaWxlXFx8UHJvdmlkZXNFeHBs XFx8X194cGFyc2VfZmlsZVxcKSIKKwkgICAgbmlsIHQpKQorICAgICAgKHNldHEgdGV4LWV4cGwt YnVmZmVyLXAgdCkpKSkKKworKGRlZnVuIHRleC1leHBsLXJlZ2lvbi1zZXQgKF9iZWcgX2VuZCkK KyAgIkNyZWF0ZSBhIGxpc3Qgb2YgcmVnaW9ucyB3aGVyZSBleHBsMyBzeW50YXggaXMgYWN0aXZl LgorVGhpcyBmdW5jdGlvbiB1cGRhdGVzIHRoZSBsaXN0IHdoZW5ldmVyIGBzeW50YXgtcHJvcGVy dGl6ZScgcnVucywgYW5kCitzdG9yZXMgaXQgaW4gdGhlIGJ1ZmZlci1sb2NhbCB2YXJpYWJsZSBg dGV4LWV4cGwtcmVnaW9uLWxpc3QnLiAgVGhlCitsaXN0IHdpbGwgYWx3YXlzIGJlIG5pbCB3aGVu IHRoZSBidWZmZXIgdmlzaXRzIGFuIGV4cGwzIGZpbGUsIGUuZy4sIGFuCitleHBsMyBjbGFzcyBv ciBwYWNrYWdlLCB3aGVyZSBleHBsMyBzeW50YXggaXMgYWx3YXlzIGFjdGl2ZS4iCisgICh1bmxl c3Mgc3ludGF4LXBwc3MtLXVwZGF0ZWQtY2FjaGU7OyBTdG9wIGZvcndhcmQgc2VhcmNoIHJ1bm5p bmcgdHdpY2UuCisgICAgKHNldHEgdGV4LWV4cGwtcmVnaW9uLWxpc3QgbmlsKQorICAgIDs7IExl YXZpbmcgdGhpcyB0ZXN0IGhlcmUgYWxsb3dzIHVzZXJzIHRvIHNldCBgdGV4LWV4cGwtYnVmZmVy LXAnCisgICAgOzsgaW5kZXBlbmRlbnRseSBvZiB0aGUgbW9kZSdzIGF1dG9tYXRpYyBkZXRlY3Rp b24gb2YgYW4gZXhwbDMgZmlsZS4KKyAgICAodW5sZXNzIHRleC1leHBsLWJ1ZmZlci1wCisgICAg ICAoZ290by1jaGFyIChwb2ludC1taW4pKQorICAgICAgKGxldCAoKGNhc2UtZm9sZC1zZWFyY2gg bmlsKSkKKyAgICAgICAgKHdoaWxlICh0ZXgtc2VhcmNoLW5vbmNvbW1lbnQKKyAgICAgICAgICAg ICAgICAoc2VhcmNoLWZvcndhcmQgIlxcRXhwbFN5bnRheE9uIiBuaWwgdCkpCisgICAgICAgICAg KGxldCAoKG5ldy1iZWcgKHBvaW50KSkKKyAgICAgICAgICAgICAgICAobmV3LWVuZCAob3IgKHRl eC1zZWFyY2gtbm9uY29tbWVudAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNlYXJj aC1mb3J3YXJkICJcXEV4cGxTeW50YXhPZmYiIG5pbCB0KSkKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKHBvaW50LW1heCkpKSkKKyAgICAgICAgICAgIChwdXNoIChjb25zIG5ldy1iZWcg bmV3LWVuZCkgdGV4LWV4cGwtcmVnaW9uLWxpc3QpKSkpKSkpCiAKIAwKIDs7OyBJbnZva2luZyBU ZVggaW4gYW4gaW5mZXJpb3Igc2hlbGwuCkBAIC0zNzQyLDYgKzM3OTgsMzA2IEBAIHRleC1jaGt0 ZXgKICAgICAgIChwcm9jZXNzLXNlbmQtcmVnaW9uIHRleC1jaGt0ZXgtLXByb2Nlc3MgKHBvaW50 LW1pbikgKHBvaW50LW1heCkpCiAgICAgICAocHJvY2Vzcy1zZW5kLWVvZiB0ZXgtY2hrdGV4LS1w cm9jZXNzKSkpKQogCisMCis7OzsgWHJlZiBiYWNrZW5kCisKKzs7IEhlcmUgd2UgbGlnaHRseSBh ZGFwdCB0aGUgZGVmYXVsdCBldGFncyBiYWNrZW5kIGZvciB4cmVmIHNvIHRoYXQKKzs7IHRoZSBt YWluIHhyZWYgdXNlciBjb21tYW5kcyAoaW5jbHVkaW5nIGB4cmVmLWZpbmQtZGVmaW5pdGlvbnMn LAorOzsgYHhyZWYtZmluZC1hcHJvcG9zJywgYW5kIGB4cmVmLWZpbmQtcmVmZXJlbmNlcycgW29u IE0tLiwgQy1NLS4sIGFuZAorOzsgTS0/LCByZXNwZWN0aXZlbHldKSB3b3JrIGluIFRlWCBidWZm ZXJzLiAgVGhlIG9ubHkgbWV0aG9kcyB3ZQorOzsgYWN0dWFsbHkgbW9kaWZ5IGFyZSBgeHJlZi1i YWNrZW5kLWlkZW50aWZpZXItYXQtcG9pbnQnIGFuZAorOzsgYHhyZWYtYmFja2VuZC1yZWZlcmVu Y2VzJy4gIE1hbnkgb2YgdGhlIGNvbXBsaWNhdGlvbnMgaGVyZSwgYW5kIGluCis7OyBgZXRhZ3Mn IGl0c2VsZiwgYXJlIGR1ZSB0byB0aGUgbmVjZXNzaXR5IG9mIHBhcnNpbmcgYm90aCB0aGUgb2xk Cis7OyBUZVggc3ludGF4IGFuZCB0aGUgbmV3IGV4cGwzIHN5bnRheCwgd2hpY2ggd2lsbCBjb250 aW51ZSB0byBhcHBlYXIKKzs7IHRvZ2V0aGVyIGluIGRvY3VtZW50cyBmb3IgdGhlIGZvcmVzZWVh YmxlIGZ1dHVyZS4gIFN5bmNocm9uaXppbmcKKzs7IEVtYWNzIGFuZCBgZXRhZ3MnIHRoaXMgd2F5 IGFpbXMgdG8gaW1wcm92ZSB0aGUgdXNlciBleHBlcmllbmNlICJvdXQKKzs7IG9mIHRoZSBib3gu IgorCisoZGVmdmFyIHRleC10aGluZ2F0cHQtZXhjbHVkZS1jaGFycyAnKD9cXCA/XHsgP1x9KQor ICAiRXhjbHVkZSB0aGVzZSBjaGFycyBieSBkZWZhdWx0IGZyb20gVGVYIHRoaW5nLWF0LXBvaW50 LgorCitUaGUgVGVYIGB4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1hdC1wb2ludCcgbWV0aG9kIHVz ZXMgdGhlIGNoYXJhY3RlcnMKK2xpc3RlZCBpbiB0aGlzIHZhcmlhYmxlIHRvIGRlY2lkZSBvbiB0 aGUgZGVmYXVsdCBzZWFyY2ggc3RyaW5nIHRvCitwcmVzZW50IHRvIHRoZSB1c2VyIHdobyBjYWxs cyBhbiBgeHJlZicgY29tbWFuZC4gIFRoZXNlIGNoYXJhY3RlcnMKK2JlY29tZSBwYXJ0IG9mIGEg cmVnZXhwIHdoaWNoIGFsd2F5cyBleGNsdWRlcyB0aGVtIGZyb20gdGhhdCBkZWZhdWx0CitzdHJp bmcuICBGb3IgdGhlIGB4cmVmJyBjb21tYW5kcyB0byBmdW5jdGlvbiBwcm9wZXJseSBpbiBUZVgg YnVmZmVycywgYXQKK2xlYXN0IHRoZSBUZVggZXNjYXBlIGFuZCB0aGUgdHdvIFRlWCBncm91cGlu ZyBjaGFyYWN0ZXJzIHNob3VsZCBiZQorbGlzdGVkIGhlcmUuICBTaG91bGQgeW91ciBUZVggZG9j dW1lbnRzIGNvbnRhaW4gb3RoZXIgY2hhcmFjdGVycyB3aGljaAoreW91IHdhbnQgdG8gZXhjbHVk ZSBieSBkZWZhdWx0LCB0aGVuIHlvdSBjYW4gYWRkIHRoZW0gdG8gdGhlIGxpc3QsCit0aG91Z2gg eW91IG1heSB3aXNoIHRvIGNvbnN1bHQgdGhlIGZ1bmN0aW9ucworYHRleC10aGluZ2F0cHQtLWJl Z2lubmluZy1vZi1zeW1ib2wnIGFuZCBgdGV4LXRoaW5nYXRwdC0tZW5kLW9mLXN5bWJvbCcKK3Rv IHNlZSB3aGF0IHRoZSByZWdleHAgYWxyZWFkeSBjb250YWlucy4gIElmIHlvdXIgZG9jdW1lbnRz IGNvbnRhaW4KK25vbi1zdGFuZGFyZCBlc2NhcGUgYW5kIGdyb3VwaW5nIGNoYXJhY3RlcnMsIHRo ZW4geW91IGNhbiByZXBsYWNlIHRoZQordGhyZWUgbGlzdGVkIGhlcmUgd2l0aCB5b3VyIG93biwg dGhlcmVieSBhbGxvd2luZyB0aGUgdGhyZWUgc3RhbmRhcmQKK2NoYXJhY3RlcnMgdG8gYXBwZWFy IGJ5IGRlZmF1bHQgaW4gc2VhcmNoIHN0cmluZ3MuICBQbGVhc2UgYmUgYXdhcmUsCitob3dldmVy LCB0aGF0IHRoZSBgZXRhZ3MnIHByb2dyYW0gb25seSByZWNvZ25pemVzIGBcXCcgKDkyKSBhbmQg YCEnICgzMykKK2FzIGVzY2FwZSBjaGFyYWN0ZXJzIGluIFRlWCBkb2N1bWVudHMsIGFuZCBpZiBp dCBkZXRlY3RzIHRoZSBsYXR0ZXIgaXQKK2Fsc28gdXNlcyBgPD4nIGFzIHRoZSBUZVggZ3JvdXBp bmcgY29uc3RydWN0IHJhdGhlciB0aGFuIGB7fScuICBTZXR0aW5nCit0aGUgZXNjYXBlIGFuZCBn cm91cGluZyBjaGFycyB0byBhbnl0aGluZyBvdGhlciB0aGFuIGBcXD1cXHt9JyBvciBgITw+Jwor d2lsbCBub3QgYmUgdXNlZnVsIHdpdGhvdXQgY2hhbmdlcyB0byBgZXRhZ3MnLCBhdCBsZWFzdCBm b3IgY29tbWFuZHMKK3RoYXQgc2VhcmNoIHRhZ3MgdGFibGVzLCBzdWNoIGFzIFxcW3hyZWYtZmlu ZC1kZWZpbml0aW9uc10gYW5kIFwKK1xcW3hyZWYtZmluZC1hcHJvcG9zXS4KKworU2hvdWxkIHlv dSB3aXNoIHRvIGNoYW5nZSB0aGUgZGVmYXVsdHMsIHBsZWFzZSBhbHNvIGJlIGF3YXJlIHRoYXQs Cit3aXRob3V0IGZ1cnRoZXIgbW9kaWZpY2F0aW9ucyB0byB0ZXgtbW9kZS5lbCwgdGhlIHVzdWFs IHRleHQtcGFyc2luZworcm91dGluZXMgZm9yIGBmb250LWxvY2snIGFuZCB0aGUgbGlrZSB3b24n dCB3b3JrIGNvcnJlY3RseSwgYXMgdGhlCitkZWZhdWx0IGVzY2FwZSBhbmQgZ3JvdXBpbmcgY2hh cmFjdGVycyBhcmUgY3VycmVudGx5IGhhcmQgY29kZWQgaW4gbWFueQorcGxhY2VzLiIpCisKKzs7 IFBvcHVsYXRlIGBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QnIGZvciB0aGUgaW4t dHJlZSBtb2RlczsKKzs7IEFVQ1RlWCBpcyBkb2luZyB0aGUgc2FtZSBmb3IgaXRzIG1vZGVzLgor KHdpdGgtZXZhbC1hZnRlci1sb2FkICdzZW1hbnRpYy9zeW1yZWYvZ3JlcAorICAoZGVmdmFyIHNl bWFudGljLXN5bXJlZi1maWxlcGF0dGVybi1hbGlzdCkKKyAgKHB1c2ggJyhsYXRleC1tb2RlICIq Llt0VF1lW3hYXSIgIioubHR4IiAiKi5zdHkiICIqLmNsW3NvXSIKKyAgICAgICAgICAgICAgICAg ICAgICIqLmJibCIgIiouZHJ2IiAiKi5odmEiKQorICAgICAgICBzZW1hbnRpYy1zeW1yZWYtZmls ZXBhdHRlcm4tYWxpc3QpCisgIChwdXNoICcocGxhaW4tdGV4LW1vZGUgIiouW3RUXWVbeFhdIiAi Ki5pbnMiKQorICAgICAgICBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QpCisgIChw dXNoICcoZG9jdGV4LW1vZGUgIiouZHR4Iikgc2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0ZXJuLWFs aXN0KSkKKworKGRlZnVuIHRleC0teHJlZi1iYWNrZW5kICgpICd0ZXgtZXRhZ3MpCisKKyhjbC1k ZWZtZXRob2QgeHJlZi1iYWNrZW5kLWlkZW50aWZpZXItYXQtcG9pbnQgKChfYmFja2VuZCAoZXFs ICd0ZXgtZXRhZ3MpKSkKKyAgKHJlcXVpcmUgJ2V0YWdzKQorICAodGV4LS10aGluZy1hdC1wb2lu dCkpCisKKzs7IFRoZSBkZXRlY3Rpb24gb2YgYF8nIGFuZCBgOicgaXMgYSBwcmltaXRpdmUgbWV0 aG9kIGZvciBkZXRlcm1pbmluZworOzsgd2hldGhlciBwb2ludCBpcyBvbiBhbiBleHBsMyBjb25z dHJ1Y3QuICBJdCBtYXkgZmFpbCBpbiBzb21lCis7OyBpbnN0YW5jZXMuCisoZGVmdW4gdGV4LS10 aGluZy1hdC1wb2ludCAoKQorICAiRGVtYXJjYXRlIGB0aGluZy1hdC1wb2ludCcgZm9yIHRoZSBU ZVggYHhyZWYnIGJhY2tlbmQuIgorICAobGV0ICgoYm91bmRzICh0ZXgtLWJvdW5kcy1vZi1zeW1i b2wtYXQtcG9pbnQpKSkKKyAgICAod2hlbiBib3VuZHMKKyAgICAgIChsZXQgKCh0ZXhzeW0gKGJ1 ZmZlci1zdWJzdHJpbmctbm8tcHJvcGVydGllcyAoY2FyIGJvdW5kcykgKGNkciBib3VuZHMpKSkp CisgICAgICAgIChpZiAoYW5kIChub3QgKHN0cmluZy1tYXRjaC1wICJyZWZlcmVuY2UiIChzeW1i b2wtbmFtZSB0aGlzLWNvbW1hbmQpKSkKKyAgICAgICAgICAgICAgICAgKHNlcS1jb250YWlucy1w IHRleHN5bSA/XykKKyAgICAgICAgICAgICAgICAgKHNlcS1jb250YWlucy1wIHRleHN5bSA/Oikp CisgICAgICAgICAgICAoc2VxLXRha2UgdGV4c3ltIChzZXEtcG9zaXRpb24gdGV4c3ltID86KSkK KyAgICAgICAgICB0ZXhzeW0pKSkpKQorCisoZGVmdW4gdGV4LXRoaW5nYXRwdC0tYmVnaW5uaW5n LW9mLXN5bWJvbCAoKQorICAoYW5kCisgICAocmUtc2VhcmNoLWJhY2t3YXJkIChjb25jYXQgIltd WyIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobWFwY29uY2F0ICMncmVnZXhwLXF1 b3RlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobWFwY2FyICMn Y2hhci10by1zdHJpbmcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdGV4LXRoaW5nYXRwdC1leGNsdWRlLWNoYXJzKSkKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAiXCIqYCcjPSYoKSUsfCRbOmNudHJsOl1bOmJsYW5rOl1dIikpCisgICAo Zm9yd2FyZC1jaGFyKSkpCisKKyhkZWZ1biB0ZXgtdGhpbmdhdHB0LS1lbmQtb2Ytc3ltYm9sICgp CisgIChhbmQKKyAgIChyZS1zZWFyY2gtZm9yd2FyZCAoY29uY2F0ICJbXVsiCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAobWFwY29uY2F0ICMncmVnZXhwLXF1b3RlCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobWFwY2FyICMnY2hhci10by1zdHJpbmcK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4LXRo aW5nYXRwdC1leGNsdWRlLWNoYXJzKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJc IipgJyM9JigpJSx8JFs6Y250cmw6XVs6Ymxhbms6XV0iKSkKKyAgIChiYWNrd2FyZC1jaGFyKSkp CisKKyhkZWZ1biB0ZXgtLWJvdW5kcy1vZi1zeW1ib2wtYXQtcG9pbnQgKCkKKyAgIlNpbXBsaWZ5 IGBib3VuZHMtb2YtdGhpbmctYXQtcG9pbnQnIGZvciBUZVggYHhyZWYnIGJhY2tlbmQuIgorICAo bGV0ICgob3JpZyAocG9pbnQpKSkKKyAgICAoaWdub3JlLWVycm9ycworICAgICAgKHNhdmUtZXhj dXJzaW9uCisJKHRleC10aGluZ2F0cHQtLWVuZC1vZi1zeW1ib2wpCisJKHRleC10aGluZ2F0cHQt LWJlZ2lubmluZy1vZi1zeW1ib2wpCisJKGxldCAoKGJlZyAocG9pbnQpKSkKKwkgIChpZiAoPD0g YmVnIG9yaWcpCisJICAgICAgKGxldCAoKHJlYWwtZW5kCisJCSAgICAgKHByb2duCisJCSAgICAg ICAodGV4LXRoaW5nYXRwdC0tZW5kLW9mLXN5bWJvbCkKKwkJICAgICAgIChwb2ludCkpKSkKKwkJ KGNvbmQgKChhbmQgKDw9IG9yaWcgcmVhbC1lbmQpICg8IGJlZyByZWFsLWVuZCkpCisJCSAgICAg ICAoY29ucyBiZWcgcmVhbC1lbmQpKQorICAgICAgICAgICAgICAgICAgICAgICgoYW5kICg9IG9y aWcgcmVhbC1lbmQpICg9IGJlZyByZWFsLWVuZCkpCisJCSAgICAgICAoY29ucyBiZWcgKDErIGJl ZykpKSkpKSkpKSkpOzsgRm9yIDEtY2hhciBUZVggY29tbWFuZHMuCisKKyhjbC1kZWZtZXRob2Qg eHJlZi1iYWNrZW5kLWlkZW50aWZpZXItY29tcGxldGlvbi10YWJsZSAoKF9iYWNrZW5kCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZXFs ICd0ZXgtZXRhZ3MpKSkKKyAgKHhyZWYtYmFja2VuZC1pZGVudGlmaWVyLWNvbXBsZXRpb24tdGFi bGUgJ2V0YWdzKSkKKworKGNsLWRlZm1ldGhvZCB4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21w bGV0aW9uLWlnbm9yZS1jYXNlICgoX2JhY2tlbmQKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChlcWwKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndGV4LWV0 YWdzKSkpCisgICh4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21wbGV0aW9uLWlnbm9yZS1jYXNl ICdldGFncykpCisKKyhjbC1kZWZtZXRob2QgeHJlZi1iYWNrZW5kLWRlZmluaXRpb25zICgoX2Jh Y2tlbmQgKGVxbCAndGV4LWV0YWdzKSkgc3ltYm9sKQorICAoeHJlZi1iYWNrZW5kLWRlZmluaXRp b25zICdldGFncyBzeW1ib2wpKQorCisoY2wtZGVmbWV0aG9kIHhyZWYtYmFja2VuZC1hcHJvcG9z ICgoX2JhY2tlbmQgKGVxbCAndGV4LWV0YWdzKSkgcGF0dGVybikKKyAgKHhyZWYtYmFja2VuZC1h cHJvcG9zICdldGFncyBwYXR0ZXJuKSkKKworOzsgVGhlIGB4cmVmLWJhY2tlbmQtcmVmZXJlbmNl cycgbWV0aG9kIHJlcXVpcmVzIG1vcmUgY29kZSB0aGFuIHRoZQorOzsgb3RoZXJzIGZvciBhdCBs ZWFzdCB0d28gbWFpbiByZWFzb25zOiBUZVggYXV0aG9ycyBoYXZlIHR5cGljYWxseSBiZWVuCis7 OyBmcmVlIGluIHRoZWlyIGludmVudGlvbiBvZiBuZXcgZmlsZSB0eXBlcyB3aXRoIG5ldyBzdWZm aXhlcywgYW5kIHRoZXkKKzs7IGhhdmUgYWxzbyB0ZW5kZWQgc29tZXRpbWVzIHRvIGluY2x1ZGUg bm9uLXN5bWJvbCBjaGFyYWN0ZXJzIGluCis7OyBjb21tYW5kIG5hbWVzLiAgV2hlbiBjb21iaW5l ZCB3aXRoIHRoZSBkZWZhdWx0IFNlbWFudGljIFN5bWJvbAorOzsgUmVmZXJlbmNlIEFQSSwgdGhl c2UgdHdvIGNoYXJhY3RlcmlzdGljcyBvZiBUZVggY29kZSBtZWFuIHRoYXQgYQorOzsgY29tbWFu ZCBsaWtlIGB4cmVmLWZpbmQtcmVmZXJlbmNlcycgd291bGQgb2Z0ZW4gZmFpbCB0byBmaW5kIGFu eSBoaXRzCis7OyBmb3IgYSBzeW1ib2wgYXQgcG9pbnQsIGluY2x1ZGluZyB0aGUgb25lIHVuZGVy IHBvaW50IGluIHRoZSBjdXJyZW50Cis7OyBidWZmZXIsIG9yIGl0IHdvdWxkIGZpbmQgb25seSBz b21lIGluc3RhbmNlcyBhbmQgc2tpcCBvdGhlcnMuCisKKyhkZWZ1biB0ZXgtZmluZC1yZWZlcmVu Y2VzLXN5bnRheC10YWJsZSAoKQorICAobGV0ICgoc3QgKGlmIChib3VuZHAgJ1RlWC1tb2RlLXN5 bnRheC10YWJsZSkKKyAgICAgICAgICAgICAgICAgKG1ha2Utc3ludGF4LXRhYmxlIFRlWC1tb2Rl LXN5bnRheC10YWJsZSkKKyAgICAgICAgICAgICAgIChtYWtlLXN5bnRheC10YWJsZSB0ZXgtbW9k ZS1zeW50YXgtdGFibGUpKSkpCisgICAgc3QpKQorCisoZGVmdmFyIHRleC0teHJlZi1zeW50YXgt ZnVuIG5pbCkKKworKGRlZnVuIHRleC14cmVmLXN5bnRheC1mdW5jdGlvbiAoc3RyIGJlZyBlbmQp CisgICJQcm92aWRlIGEgYmVzcG9rZSBgc3ludGF4LXByb3BlcnRpemUtZnVuY3Rpb24nIGZvciBc XFt4cmVmLWZpbmQtcmVmZXJlbmNlc10uIgorICAobGV0KiAoZ3JwYiB0ZW1wc3RyCisgICAgICAg ICAgICAgIChzaHJ0c3RyIChpZiBlbmQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIChwcm9n bgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2V0cSB0ZW1wc3RyIChzZXEtdGFrZSBz dHIgKDEtIChsZW5ndGggc3RyKSkpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaWYg YmVnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2V0cSB0ZW1wc3RyIChzZXEt ZHJvcCB0ZW1wc3RyIDEpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlbXBzdHIp KQorICAgICAgICAgICAgICAgICAgICAgICAgIChzZXEtZHJvcCBzdHIgMSkpKQorICAgICAgICAg ICAgICAoZ3JwYSAoaWYgKGFuZCBiZWcgZW5kKQorICAgICAgICAgICAgICAgICAgICAgICAgKHBy b2cxCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxpc3QgMSAiXyIpCisgICAgICAgICAg ICAgICAgICAgICAgICAgIChzZXRxIGdycGIgKGxpc3QgMiAiXyIpKSkKKyAgICAgICAgICAgICAg ICAgICAgICAobGlzdCAxICJfIikpKQorICAgICAgICAgICAgICAocmUgKGNvbmNhdCBiZWcgKHJl Z2V4cC1xdW90ZSBzaHJ0c3RyKSBlbmQpKQorICAgICAgICAgICAgICAodGVtcC1ydWxlIChpZiBn cnBiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChsaXN0IHJlIGdycGEgZ3JwYikKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgIChsaXN0IHJlIGdycGEpKSkpCisgICAgOzsgU2ltcGxl IGJlbmNobWFya3Mgc3VnZ2VzdGVkIHRoYXQgdGhlIHNwZWVkLXVwIGZyb20gY29tcGlsaW5nIHRo aXMKKyAgICA7OyBmdW5jdGlvbiB3YXMgbmVhcmx5IG5pbCwgc28gYGV2YWwnIGFuZCBpdHMgbm9u LWJ5dGUtY29tcGlsZWQKKyAgICA7OyBmdW5jdGlvbiByZW1haW4uCisgICAgKHNldHEgdGV4LS14 cmVmLXN5bnRheC1mdW4gKGV2YWwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYChz eW50YXgtcHJvcGVydGl6ZS1ydWxlcyAsdGVtcC1ydWxlKSkpKSkKKworKGRlZnVuIHRleC0tY29s bGVjdC1maWxlLWV4dGVuc2lvbnMgKCkKKyAgIkdhdGhlciBUZVggZmlsZSBleHRlbnNpb25zIGZy b20gYGF1dG8tbW9kZS1hbGlzdCcuIgorICAobGV0KiAoKG1saXN0ICh3aGVuIChyYXNzcSBtYWpv ci1tb2RlIGF1dG8tbW9kZS1hbGlzdCkKKwkJICAoc2VxLWZpbHRlcgorCQkgICAobGFtYmRhIChl bHQpCisJCSAgICAgKGVxIChjZHIgZWx0KSBtYWpvci1tb2RlKSkKKwkJICAgYXV0by1tb2RlLWFs aXN0KSkpCisJIChsY3N5bSAoaW50ZXJuLXNvZnQgKGRvd25jYXNlIChzeW1ib2wtbmFtZSBtYWpv ci1tb2RlKSkpKQorCSAobGNsaXN0IChhbmQgbGNzeW0KKwkJICAgICAgKG5vdCAoZXEgbGNzeW0g bWFqb3ItbW9kZSkpCisJCSAgICAgIChyYXNzcSBsY3N5bSBhdXRvLW1vZGUtYWxpc3QpCisJCSAg ICAgIChzZXEtZmlsdGVyCisJCSAgICAgICAobGFtYmRhIChlbHQpCisJCQkgKGVxIChjZHIgZWx0 KSBsY3N5bSkpCisJCSAgICAgICBhdXRvLW1vZGUtYWxpc3QpKSkKKwkgKHNob3J0c3ltICh3aGVu IChzdHJpbmdwIG1vZGUtbmFtZSkKKwkJICAgICAoaW50ZXJuLXNvZnQgKGNvbmNhdCAoc3RyaW5n LXRyaW0tcmlnaHQgbW9kZS1uYW1lICIvLioiKQorCQkJCQkgICItbW9kZSIpKSkpCisJIChsY3No b3J0c3ltICh3aGVuIChzdHJpbmdwIG1vZGUtbmFtZSkKKwkJICAgICAgIChpbnRlcm4tc29mdCAo ZG93bmNhc2UKKwkJCQkgICAgIChjb25jYXQKKwkJCQkgICAgICAoc3RyaW5nLXRyaW0tcmlnaHQg bW9kZS1uYW1lICIvLioiKQorCQkJCSAgICAgICItbW9kZSIpKSkpKQorCSAoc2hsaXN0IChhbmQg c2hvcnRzeW0KKwkJICAgICAgKG5vdCAoZXEgc2hvcnRzeW0gbWFqb3ItbW9kZSkpCisJCSAgICAg IChub3QgKGVxIHNob3J0c3ltIGxjc3ltKSkKKwkJICAgICAgKHJhc3NxIHNob3J0c3ltIGF1dG8t bW9kZS1hbGlzdCkKKwkJICAgICAgKHNlcS1maWx0ZXIKKwkJICAgICAgIChsYW1iZGEgKGVsdCkK KwkJCSAoZXEgKGNkciBlbHQpIHNob3J0c3ltKSkKKwkJICAgICAgIGF1dG8tbW9kZS1hbGlzdCkp KQorCSAobGNzaGxpc3QgKGFuZCBsY3Nob3J0c3ltCisJCQkobm90IChlcSBsY3Nob3J0c3ltIG1h am9yLW1vZGUpKQorCQkJKG5vdCAoZXEgbGNzaG9ydHN5bSBsY3N5bSkpCisJCQkocmFzc3EgbGNz aG9ydHN5bSBhdXRvLW1vZGUtYWxpc3QpCisJCQkoc2VxLWZpbHRlcgorCQkJIChsYW1iZGEgKGVs dCkKKwkJCSAgIChlcSAoY2RyIGVsdCkgbGNzaG9ydHN5bSkpCisJCQkgYXV0by1tb2RlLWFsaXN0 KSkpCisJIChleHRzICh3aGVuIChvciBtbGlzdCBsY2xpc3Qgc2hsaXN0IGxjc2hsaXN0KQorCQkg KHNlcS11bmlvbiAoc2VxLW1hcCAjJ2NhciBsY2xpc3QpCisJCQkgICAgKHNlcS11bmlvbiAoc2Vx LW1hcCAjJ2NhciBtbGlzdCkKKwkJCQkgICAgICAgKHNlcS11bmlvbiAoc2VxLW1hcCAjJ2NhciBs Y3NobGlzdCkKKwkJCQkJCSAgKHNlcS1tYXAgIydjYXIgc2hsaXN0KSkpKSkpCisJIChlZC1leHRz ICh3aGVuIGV4dHMKKwkJICAgIChzZXEtbWFwCisJCSAgICAgKGxhbWJkYSAoZWx0KQorCQkgICAg ICAgKGNvbmNhdCAiKiIgKHN0cmluZy10cmltICBlbHQgIlxcXFwiICJcXFxcJyIpKSkKKwkJICAg ICBleHRzKSkpKQorICAgIGVkLWV4dHMpKQorCisoZGVmdmFyIHRleC0tYnVmZmVycy1saXN0IG5p bCkKKyhkZWZ2YXItbG9jYWwgdGV4LS1vbGQtc3ludGF4LWZ1bmN0aW9uIG5pbCkKKworKGNsLWRl Zm1ldGhvZCB4cmVmLWJhY2tlbmQtcmVmZXJlbmNlcyAoKF9iYWNrZW5kIChlcWwgJ3RleC1ldGFn cykpIGlkZW50aWZpZXIpCisgICJGaW5kIHJlZmVyZW5jZXMgb2YgSURFTlRJRklFUiBpbiBUZVgg YnVmZmVycyBhbmQgZmlsZXMuIgorICAocmVxdWlyZSAnc2VtYW50aWMvc3ltcmVmL2dyZXApCisg IChkZWZ2YXIgc2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0ZXJuLWFsaXN0KQorICAobGV0IChidWZz IHRleGJ1ZnMKKyAgICAgICAgICAgICAobW9kZSBtYWpvci1tb2RlKSkKKyAgICAoZG9saXN0IChi dWYgKGJ1ZmZlci1saXN0KSkKKyAgICAgIChpZiAoZXEgKGJ1ZmZlci1sb2NhbC12YWx1ZSAnbWFq b3ItbW9kZSBidWYpIG1vZGUpCisgICAgICAgICAgKHB1c2ggYnVmIGJ1ZnMpCisgICAgICAgICh3 aGVuIChzdHJpbmctbWF0Y2gtcCAiLipcXC5bdFRdZVt4WF0iIChidWZmZXItbmFtZSBidWYpKQor ICAgICAgICAgIChwdXNoIGJ1ZiB0ZXhidWZzKSkpKQorICAgICh1bmxlc3MgKHNlcS1zZXQtZXF1 YWwtcCB0ZXgtLWJ1ZmZlcnMtbGlzdCBidWZzKQorICAgICAgKGxldCogKChhbWFsaXN0ICh0ZXgt LWNvbGxlY3QtZmlsZS1leHRlbnNpb25zKSkKKwkgICAgIChleHRsaXN0IChhbGlzdC1nZXQgbW9k ZSBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QpKQorCSAgICAgKGV4dGxpc3QtbmV3 IChzZXEtdW5pcQorICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNlcS11bmlvbiBhbWFsaXN0 IGV4dGxpc3QgIydzdHJpbmctbWF0Y2gtcCkpKSkKKwkoc2V0cSB0ZXgtLWJ1ZmZlcnMtbGlzdCBi dWZzKQorCShkb2xpc3QgKGJ1ZiBidWZzKQorCSAgKHdoZW4tbGV0ICgoZmJ1ZiAoYnVmZmVyLWZp bGUtbmFtZSBidWYpKQorCQkgICAgIChleHQgKGZpbGUtbmFtZS1leHRlbnNpb24gZmJ1ZikpCisJ CSAgICAgKGZpbmV4dCAoY29uY2F0ICIqLiIgZXh0KSkKKwkJICAgICAoKG5vdCAoc2VxLWZpbmQg KGxhbWJkYSAoZWx0KSAoc3RyaW5nLW1hdGNoLXAgZWx0IGZpbmV4dCkpCisJCQkJICAgICBleHRs aXN0LW5ldykpKQorCQkgICAgICgocHVzaCBmaW5leHQgZXh0bGlzdC1uZXcpKSkpKQorCSh1bmxl c3MgKHNlcS1zZXQtZXF1YWwtcCBleHRsaXN0LW5ldyBleHRsaXN0KQorCSAgKHNldGYgKGFsaXN0 LWdldCBtb2RlIHNlbWFudGljLXN5bXJlZi1maWxlcGF0dGVybi1hbGlzdCkKKyAgICAgICAgICAg ICAgICBleHRsaXN0LW5ldykpKSkKKyAgICAobGV0KiAoc2V0c3ludGF4CisgICAgICAgICAgIChw dW5jdCAod2l0aC1zeW50YXgtdGFibGUgKHRleC1maW5kLXJlZmVyZW5jZXMtc3ludGF4LXRhYmxl KQorICAgICAgICAgICAgICAgICAgICAoc2VxLXBvc2l0aW9ucyBpZGVudGlmaWVyIChsaXN0ID93 ID9fKQorCQkJICAgICAgICAgICAobGFtYmRhIChlbHQgc3ljb2RlKQorCQkJICAgICAgICAgICAg IChub3QgKG1lbXEgKGNoYXItc3ludGF4IGVsdCkgc3ljb2RlKSkpKSkpCisgICAgICAgICAgIChl bmQgKGFuZCBwdW5jdAorICAgICAgICAgICAgICAgICAgICAgKG1lbXEgKDEtIChsZW5ndGggaWRl bnRpZmllcikpIHB1bmN0KQorICAgICAgICAgICAgICAgICAgICAgKD4gKGxlbmd0aCBpZGVudGlm aWVyKSAxKQorICAgICAgICAgICAgICAgICAgICAgKGNvbmNhdCAiXFwoIgorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAocmVnZXhwLXF1b3RlCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAoc3RyaW5nIChlbHQgaWRlbnRpZmllcgorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICgxLSAobGVuZ3RoIGlkZW50aWZpZXIpKSkpKQorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAiXFwpIikpKQorICAgICAgICAgICAoYmVnIChhbmQgcHVuY3QKKyAg ICAgICAgICAgICAgICAgICAgIChtZW1xIDAgcHVuY3QpCisgICAgICAgICAgICAgICAgICAgICAo Y29uY2F0ICJcXCgiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChyZWdleHAtcXVvdGUg KHN0cmluZyAoZWx0IGlkZW50aWZpZXIgMCkpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAiXFwpIikpKQorICAgICAgICAgICAodGV4dC1tb2RlLWhvb2sKKyAgICAgICAgICAgIChpZiAo b3IgZW5kIGJlZykKKyAgICAgICAgICAgICAgICAocHJvZ24KKyAgICAgICAgICAgICAgICAgICh0 ZXgteHJlZi1zeW50YXgtZnVuY3Rpb24gaWRlbnRpZmllciBiZWcgZW5kKQorICAgICAgICAgICAg ICAgICAgKHNldHEgc2V0c3ludGF4IChsYW1iZGEgKCkKKwkJICAgICAgICAgICAgICAgICAgICAo c2V0cS1sb2NhbCBzeW50YXgtcHJvcGVydGl6ZS1mdW5jdGlvbgorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4LS14cmVmLXN5bnRheC1mdW4pCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2V0cS1sb2NhbCBUZVgtc3R5bGUtaG9v ay1hcHBsaWVkLXAgdCkpKQorICAgICAgICAgICAgICAgICAgKGNvbnMgc2V0c3ludGF4IHRleHQt bW9kZS1ob29rKSkKKyAgICAgICAgICAgICAgdGV4dC1tb2RlLWhvb2spKSkKKyAgICAgICh1bmxl c3MgKG1lbXEgJ2RvY3RleC1tb2RlIChkZXJpdmVkLW1vZGUtYWxsLXBhcmVudHMgbW9kZSkpCisg ICAgICAgIChzZXRxIGJ1ZnMgKGFwcGVuZCB0ZXhidWZzIGJ1ZnMpKSkKKyAgICAgICh3aGVuIChv ciBlbmQgYmVnKQorICAgICAgICAoZG9saXN0IChidWYgYnVmcykKKyAgICAgICAgICAod2l0aC1j dXJyZW50LWJ1ZmZlciBidWYKKyAgICAgICAgICAgICh1bmxlc3MgKGxvY2FsLXZhcmlhYmxlLXAg J3RleC0tb2xkLXN5bnRheC1mdW5jdGlvbikKKyAgICAgICAgICAgICAgKHNldHEgdGV4LS1vbGQt c3ludGF4LWZ1bmN0aW9uIHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uKSkKKyAgICAgICAgICAg IChzZXRxLWxvY2FsIHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uCisgICAgICAgICAgICAgICAg ICAgICAgICB0ZXgtLXhyZWYtc3ludGF4LWZ1bikKKyAgICAgICAgICAgIChzeW50YXgtcHBzcy1m bHVzaC1jYWNoZSAocG9pbnQtbWluKSkpKSkKKyAgICAgICh1bndpbmQtcHJvdGVjdAorICAgICAg ICAgICh4cmVmLWJhY2tlbmQtcmVmZXJlbmNlcyBuaWwgaWRlbnRpZmllcikKKyAgICAgICAgKHdo ZW4gKG9yIGVuZCBiZWcpCisgICAgICAgICAgKGRvbGlzdCAoYnVmIGJ1ZnMpCisgICAgICAgICAg ICAod2l0aC1jdXJyZW50LWJ1ZmZlciBidWYKKyAgICAgICAgICAgICAgKHdoZW4gYnVmZmVyLWZp bGUtdHJ1ZW5hbWUKKyAgICAgICAgICAgICAgICAoc2V0cS1sb2NhbCBzeW50YXgtcHJvcGVydGl6 ZS1mdW5jdGlvbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleC0tb2xkLXN5bnRheC1m dW5jdGlvbikKKyAgICAgICAgICAgICAgICAoc3ludGF4LXBwc3MtZmx1c2gtY2FjaGUgKHBvaW50 LW1pbikpKSkpKSkpKSkKKwogKG1ha2Utb2Jzb2xldGUtdmFyaWFibGUgJ3RleC1tb2RlLWxvYWQt aG9vawogICAgICAgICAgICAgICAgICAgICAgICAgInVzZSBgd2l0aC1ldmFsLWFmdGVyLWxvYWQn IGluc3RlYWQuIiAiMjguMSIpCiAocnVuLWhvb2tzICd0ZXgtbW9kZS1sb2FkLWhvb2spCi0tIAoy LjM5LjQKCg== --000000000000d8a2b5061a216eeb-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 08 Jun 2024 12:39:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: David Fussner Cc: 53749@debbugs.gnu.org, ikumi@ikumi.que.jp, tsdh@gnu.org, arash@gnu.org, stefankangas@gmail.com, dgutov@yandex.ru, monnier@iro.umontreal.ca Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171785032914373 (code B ref 53749); Sat, 08 Jun 2024 12:39:01 +0000 Received: (at 53749) by debbugs.gnu.org; 8 Jun 2024 12:38:49 +0000 Received: from localhost ([127.0.0.1]:37742 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sFvLN-0003jk-FJ for submit@debbugs.gnu.org; Sat, 08 Jun 2024 08:38:49 -0400 Received: from eggs.gnu.org ([209.51.188.92]:34136) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sFvLL-0003jX-2A for 53749@debbugs.gnu.org; Sat, 08 Jun 2024 08:38:48 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sFvKx-0007R6-Ud; Sat, 08 Jun 2024 08:38:23 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=3ix8XTfHQ33tuoTKr8qpkwNMDgbxKeFg7HkLb8mf484=; b=K/gwQHr1VdyZ h/pqnVTl46OgAo7w1hPQvM3sUjCC8dn8UicnvGTMY9+H8b7vW/UZF9Yjk68VdmuDagMkNFRn5Y2VJ AWXn3aiCFLm3QKRJXfuDtNsjAx4cjz/ShGZstA+IQPIMkr5zn8TNW3rYzIzt2lnuls1UgKjpUu6Nc loajoEUcNRUnNiL/E3dwIu/aPK51gjtp8wm4pS/XpPq05z+DuwVSBqwdnuqoPcs+XLkG0FVNDidz+ 4bbJWn1EMVtOeGhkAQgbbHEVFUCYylM7pKWPSHgTzhGiQ9d3D/lpepmGOjsb8pSEq7jLMlzENPcAE jGltk2a/20yUKUAWfLLLYg==; Date: Sat, 08 Jun 2024 15:38:17 +0300 Message-Id: <86h6e3d2yu.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: (message from David Fussner on Wed, 5 Jun 2024 10:46:10 +0100) References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> <86v832z5lp.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: David Fussner > Date: Wed, 5 Jun 2024 10:46:10 +0100 > Cc: Stefan Monnier , dgutov@yandex.ru, 53749@debbugs.gnu.org, > ikumi@ikumi.que.jp, arash@gnu.org, stefankangas@gmail.com, tsdh@gnu.org > > Hi Eli, Stefan, and Dmitry, > > In case the changeset might prove acceptable for version 30, I attach > the latest patch, which clears out the code I was using to simplify > testing of the AUCTeX modes. I can if requested send a patch for the > manual etags tests, also, in case that might prove helpful down the > line. Thanks, I'm still waiting for answers to my question: > On Sat, 25 May 2024 at 12:01, Eli Zaretskii wrote: > > > > How should we proceed about this bug report? Is David's last > > changeset acceptable or isn't it? From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 08 Jun 2024 21:56:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Eli Zaretskii , David Fussner Cc: 53749@debbugs.gnu.org, ikumi@ikumi.que.jp, arash@gnu.org, stefankangas@gmail.com, tsdh@gnu.org, monnier@iro.umontreal.ca Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171788372216177 (code B ref 53749); Sat, 08 Jun 2024 21:56:02 +0000 Received: (at 53749) by debbugs.gnu.org; 8 Jun 2024 21:55:22 +0000 Received: from localhost ([127.0.0.1]:42571 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sG41v-0004Cl-HN for submit@debbugs.gnu.org; Sat, 08 Jun 2024 17:55:22 -0400 Received: from fout2-smtp.messagingengine.com ([103.168.172.145]:35987) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sG3fF-0003C4-Pl for 53749@debbugs.gnu.org; Sat, 08 Jun 2024 17:31:55 -0400 Received: from compute7.internal (compute7.nyi.internal [10.202.2.48]) by mailfout.nyi.internal (Postfix) with ESMTP id 899991380095; Sat, 8 Jun 2024 16:54:35 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute7.internal (MEProxy); Sat, 08 Jun 2024 16:54:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc :cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm3; t=1717880075; x=1717966475; bh=xBwPa8nNyV6oPO7Y//Omz3LND3l9ulOTNZBEZ05cNK0=; b= EKYd1m1KWsnasmo2JhXxMdmWVM20LlkitVGbwN7DKhenaBm5oXTbNBjTEICGCwtJ 6vXYSS9srJtTbgi9UaBKrNrRI/DzNQHnt0QWc+EGVeFxda+b6IEq1/Cn9t1ddLj5 rPjLSnevO0BLNsvm30edizTryU0Ah6YV75jG6eVdl13xmkWxw2FnddVTacHABJWh yR+7wAdQtXkXz9NrzKS+A+MCsyO0jlT/sulJmvYcYIMVfDoamvFgP2bZIpasUYLj BJtxyms0DDoqHrdjQQmu4QLasKQKQ1Zvbh+KKaQh5bTAeckzFb1p0fYBYloOXGeL xHs7d/nJPjL/GpuTHyOinw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1717880075; x= 1717966475; bh=xBwPa8nNyV6oPO7Y//Omz3LND3l9ulOTNZBEZ05cNK0=; b=A Q8Kw4DvTlI3hyTsAhnhNpAEt+KIavRK8Rc54AmsMLCprcKNAZSULfDCroTj2UILt evY/a7K7X7hLBfosjOPY4sofW19h+RaeJNR5zbKXDq0xTLBjFzADt/BLgUfKwZ9g wuExQUVbD7FYcRlLkjuV31HxUakIF2x6m0Zg2IdeLhuHr9jgXuetKqHlNvb1tG+O MKhHASLONNzGtOVkiQOC5qIvlG2hgTmg+bsSUJsowam6WhLbXZRRBEPLM0DvlOlR CkbqmDa6wv/aa2E/NyxwHEa6HfIbl6V8IFTk5GLikodeZ6JIuVrKdUUZVYtuZzvo +PwAD5DDdwlybwjsCQwig== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrfedtgedgledtucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth htvghrnhepteduleejgeehtefgheegjeekueehvdevieekueeftddvtdevfefhvdevgedu jeehnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hmihhtrhihsehguhhtohhvrdguvghv X-ME-Proxy: Feedback-ID: i0e71465a:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 8 Jun 2024 16:54:32 -0400 (EDT) Message-ID: <2e6fec89-272a-4b52-a635-017d0fa52a4e@gutov.dev> Date: Sat, 8 Jun 2024 23:54:30 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> <86v832z5lp.fsf@gnu.org> <86h6e3d2yu.fsf@gnu.org> Content-Language: en-US From: Dmitry Gutov In-Reply-To: <86h6e3d2yu.fsf@gnu.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) On 08/06/2024 15:38, Eli Zaretskii wrote: >> From: David Fussner >> Date: Wed, 5 Jun 2024 10:46:10 +0100 >> Cc: Stefan Monnier,dgutov@yandex.ru,53749@debbugs.gnu.org, >> ikumi@ikumi.que.jp,arash@gnu.org,stefankangas@gmail.com,tsdh@gnu.org >> >> Hi Eli, Stefan, and Dmitry, >> >> In case the changeset might prove acceptable for version 30, I attach >> the latest patch, which clears out the code I was using to simplify >> testing of the AUCTeX modes. I can if requested send a patch for the >> manual etags tests, also, in case that might prove helpful down the >> line. > Thanks, I'm still waiting for answers to my question: > >> On Sat, 25 May 2024 at 12:01, Eli Zaretskii wrote: >>> How should we proceed about this bug report? Is David's last >>> changeset acceptable or isn't it? To the extent that I can evaluate the code, it look pretty good. And it's an additive change, so I don't see blockers to installing it. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Stefan Kangas Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 09 Jun 2024 11:20:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: David Fussner , Eli Zaretskii Cc: 53749@debbugs.gnu.org, ikumi@ikumi.que.jp, dgutov@yandex.ru, arash@gnu.org, Stefan Monnier , tsdh@gnu.org Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17179319756414 (code B ref 53749); Sun, 09 Jun 2024 11:20:02 +0000 Received: (at 53749) by debbugs.gnu.org; 9 Jun 2024 11:19:35 +0000 Received: from localhost ([127.0.0.1]:60158 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sGGaE-0001fM-Lf for submit@debbugs.gnu.org; Sun, 09 Jun 2024 07:19:35 -0400 Received: from mail-lf1-f45.google.com ([209.85.167.45]:56351) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sGGaC-0001f3-Ma for 53749@debbugs.gnu.org; Sun, 09 Jun 2024 07:19:33 -0400 Received: by mail-lf1-f45.google.com with SMTP id 2adb3069b0e04-52c8973ff29so144585e87.0 for <53749@debbugs.gnu.org>; Sun, 09 Jun 2024 04:19:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1717931890; x=1718536690; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:from:to:cc:subject:date:message-id:reply-to; bh=M2Os0Lqq1aA3QPLDA+oHGppvsHCv45DO87ZipYXaLP4=; b=MOTXvEjLsit300BKqIgtwOHyHzArZvyAbKyoT09TwwacmMoTiEajLuAXNpFQkUfHfO ZanOhO5xtg+mSFPrHItL3OCDf6tYjjdKyauIarbRcslPg9yrbjZbapDcfHrF2+MZevB4 jM2gHMu/oKCxgMMGFuCH9MZe+ilzIrRExTnmsiktb3dI86WZcRs1K0pCbCeK0dp3w+0i 0j0AK9o5fVaG21IkF2QFP/XnbjYZitZIeEgO/uaig68VGCHnU3OPQHMdlyUhSrp/Jaai sXKoWeOFwC6r5RPPAT/oJyNR0Cl42BNuAVBBM5uMq4SGVphCEpOsPn+fUwBmaqjQC7f3 PQgA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1717931890; x=1718536690; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=M2Os0Lqq1aA3QPLDA+oHGppvsHCv45DO87ZipYXaLP4=; b=U9KAclgvc9YwFhjXYwgt0W/k69ofj4FE44jOa8ShkaC/lFv3sj5wWOeyQ2tPcTe12U 3p6Ya3q3yOrdTotxZ8dedroGV/kCFalMfvIk3F7Z9FUGtD1eonhsAXxjoJrQhsvLTAd0 SpGkmcXAQVLgOhT2C2AO6XAlsyIgMu6H9TPuYh4o521hPOiSn0ZagNnsBZ9mPLcdPV5+ UJJk3VUFl380LBBURUcm5Rf8PW/Xf/Mj/jeTH7NqCqcDfxED9llI+V+Hp4L6R8JLIsUi 6LSdNA/J4aqY/ctSbio3UEe7f8D5T7nSm5+SR+GLxvjSq24NseWafB47suM9GqsRMeCa qyfg== X-Forwarded-Encrypted: i=1; AJvYcCUv0MvkBVPUMsKtCnj9+fVPrVVQGGmoNzYX8TjWiNjycD+sNzrdFmsSYmAmEcac3amGNUs2NZ7+M6s1/zAkqphXX/5XxiI= X-Gm-Message-State: AOJu0YxtmSRuHPLUuPzJcP97Ms/bIRYkblF5uw758qvrAVazvFEzqqjS qdVLC8NwJpufsjgIGKiQj+I/sWGzmPmpPiX35skHoUpXGK/edAvptaY1KNKLJkuU0jd4polbhLT pjiaAS0PVxR6YyCqc6vT+3GkFlB81Awai X-Google-Smtp-Source: AGHT+IHTPY+Urh+cg1ut5Lpc6xEjy0Jlr5VEyVI33KbwcXaSO6BedrSS3swhAp9+tyaGKgNJePUzBrFfA4M7ci7gVgc= X-Received: by 2002:a50:f685:0:b0:57c:620c:8f76 with SMTP id 4fb4d7f45d1cf-57c620c92b9mr2729522a12.26.1717931442727; Sun, 09 Jun 2024 04:10:42 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Sun, 9 Jun 2024 04:10:42 -0700 From: Stefan Kangas In-Reply-To: References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> <86v832z5lp.fsf@gnu.org> MIME-Version: 1.0 Date: Sun, 9 Jun 2024 04:10:42 -0700 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) David Fussner writes: > I can if requested send a patch for the manual etags tests, also, in > case that might prove helpful down the line. I believe that such tests would help, yes. Thanks in advance. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Stefan Kangas Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 09 Jun 2024 12:41:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: David Fussner , Eli Zaretskii Cc: 53749@debbugs.gnu.org, ikumi@ikumi.que.jp, dgutov@yandex.ru, arash@gnu.org, Stefan Monnier , tsdh@gnu.org Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171793683531209 (code B ref 53749); Sun, 09 Jun 2024 12:41:03 +0000 Received: (at 53749) by debbugs.gnu.org; 9 Jun 2024 12:40:35 +0000 Received: from localhost ([127.0.0.1]:35327 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sGHqc-00087C-Ey for submit@debbugs.gnu.org; Sun, 09 Jun 2024 08:40:35 -0400 Received: from mail-ed1-f48.google.com ([209.85.208.48]:43154) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sGGsH-0005Ob-Er for 53749@debbugs.gnu.org; Sun, 09 Jun 2024 07:38:14 -0400 Received: by mail-ed1-f48.google.com with SMTP id 4fb4d7f45d1cf-57c6d3e6606so1408786a12.0 for <53749@debbugs.gnu.org>; Sun, 09 Jun 2024 04:37:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1717933011; x=1718537811; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:from:to:cc:subject:date:message-id:reply-to; bh=lGEanGL/eI+IHlXaBTXXBQ8rgrD/tE6Ym/ePXGV0MoY=; b=AVMeHwX1w/eL8DyCVobcjyuOh+quC3n6Ea3WwRLo5J90t0WAtJcE+Uk2W4cTbCBd8V A1uzX0a/5U2vAJn/o/Hsqhh11LU3JG+m89SfROSbXzEjy9i/OsXZPUGYtRHaOWmlS7K2 2XIXeusrWRxQbW80s0NdYo/1rLFhuH0nDvrmfLeje/Lj4E/yIq/GzciDIOrd57jOA5in QEsBEIq2xPi0gJdEiRmjMso/LcrWoC5LsW+BYvMlG1HSSWcXK9WPXZHzTuc1lcTefVPJ lcgUtOX2QTpFvnbp4MALkFV4w5DmuAGDwGcnEyFSRR3oYxjS842LHXIrZl0ubYMUeECa 9rVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1717933011; x=1718537811; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=lGEanGL/eI+IHlXaBTXXBQ8rgrD/tE6Ym/ePXGV0MoY=; b=uch6vWq/BNpc9htQE65zGvITQE1sjpyE6MDrUWMUQWpmLd1aDhgXZPBGKny+AujTYP 3jjjE82OYlG74PbGF/1xNzD1sBBQ4NW67WCt+cbpBvFcIe3wdnej+br/eOyoxKxNRpuK G+3uCtqVQGGxUPtWc5rhZzEHMXAsYpxUZRNxNSd9qtQiTCs9ClwOGqzRKyx10eITiFGX u5Ha7S6vCPzYV0a2CC9kitLO23u8llYXyym0F2j1ItsjmApQtiHmynsX8LbkO9YPpJ7x GPGuOdZwiAV0YPLHUySnSfvKJpeDKYVcF3lBBB04VZYGzD4h72z7+nFNPf45q+IJr4W5 K7tg== X-Forwarded-Encrypted: i=1; AJvYcCWBemmNCZx9xLG7owMfHh+k7F76HJqWgTcWH3Kx9Tfkm95qdnbpX2knTcB47bwiYc93zDr1LogMktEXr4AbwgmV4isKLxc= X-Gm-Message-State: AOJu0YxMtxzIe3eRqLMOx47TkmT4cKE+ZLG4IQp9rlu41IXaek+LVA14 Zrr7VABcuJsdi9P25oNzYv6+UnTnFHDrrFY2+MEU/zMTezjE9ISJ0BTAPy9ULVYeDPUn+EwGuMG vVZuNZdQ2KzZVKgk7gJt3sH32PC8= X-Google-Smtp-Source: AGHT+IE1ErbOS8Vo+eVOncFmg/XUSUg07iJaCcuM4Kwl8NAaxfByglW8Y/t17TTjm8RjoeW4U/zMUyfEs3Tbn7QTZ8s= X-Received: by 2002:a17:907:94c3:b0:a6f:1c58:754a with SMTP id a640c23a62f3a-a6f1c587594mr57380866b.24.1717933011172; Sun, 09 Jun 2024 04:36:51 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Sun, 9 Jun 2024 07:36:50 -0400 From: Stefan Kangas In-Reply-To: References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> <86v832z5lp.fsf@gnu.org> MIME-Version: 1.0 Date: Sun, 9 Jun 2024 07:36:50 -0400 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) David Fussner writes: > In case the changeset might prove acceptable for version 30, I attach > the latest patch, which clears out the code I was using to simplify > testing of the AUCTeX modes. I have some comments and questions: - Does this need a NEWS entry? - I see the brief text you added to tex-mode.el explaining more about expl3, but perhaps there should be a clear explanation in the commit message too. - [Optional: In most places you use spaces for indentation, but here and there, there is a single tab followed by one or more spaces. Consider using only spaces.] > From: David Fussner > Date: Wed, 5 Jun 2024 10:26:18 +0100 > Subject: [PATCH] Provide a modified xref backend for TeX buffers [Don't forget to add the bug number to the ChangeLog.] > diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi > index 579098c81b1..a064103aa25 100644 > --- a/doc/emacs/maintaining.texi > +++ b/doc/emacs/maintaining.texi > @@ -2529,6 +2529,15 @@ Identifier Search > referenced. The XREF mode commands are available in this buffer, see > @ref{Xref Commands}. > > +When invoked in a buffer whose major mode uses the @code{etags} backend, > +@kbd{M-?} searches files and buffers whose major mode matches that of > +the original buffer. It guesses that mode from file extensions, so if > +@kbd{M-?} seems to be skipping relevant buffers or files, try > +customizing either the variable @code{semantic-symref-filepattern-alist} Why does this speak of Semantic? Does `xref-find-references` depend on it somehow? > diff --git a/lib-src/etags.c b/lib-src/etags.c > index 03bc55de03d..6bc734e7df0 100644 > --- a/lib-src/etags.c > +++ b/lib-src/etags.c > @@ -5740,11 +5756,25 @@ Scheme_functions (FILE *inf) > static linebuffer *TEX_toktab = NULL; /* Table with tag tokens */ > > /* Default set of control sequences to put into TEX_toktab. > - The value of environment var TEXTAGS is prepended to this. */ > + The value of environment var TEXTAGS is prepended to this. > + (2024) Add variants of '\def', some additional LaTeX (and > + former xparse) commands, common variants from the > + 'etoolbox' package, and the main expl3 commands. */ Do we really need this comment? Isn't the git log enough? > diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el > index 97c950267c6..fbf08840699 100644 > --- a/lisp/textmodes/tex-mode.el > +++ b/lisp/textmodes/tex-mode.el > @@ -636,6 +636,14 @@ tex-font-lock-keywords-2 > 3 '(tex-font-lock-append-prop 'bold) 'append))))) > "Gaudy expressions to highlight in TeX modes.") > > +(defvar-local tex-expl-region-list nil > + "List of region boundaries where expl3 syntax is active. > +It will be nil in buffers where expl3 syntax is always active, e.g., Please prefer "for example" to "e.g.". > +(defvar-local tex-expl-buffer-p nil > + "Non-nil in buffers where expl3 syntax is always active.") What does "always active" mean as compared to just "active"? Does this need to be elaborated? > +;; Populate `semantic-symref-filepattern-alist' for the in-tree modes; > +;; AUCTeX is doing the same for its modes. > +(with-eval-after-load 'semantic/symref/grep > + (defvar semantic-symref-filepattern-alist) > + (push '(latex-mode "*.[tT]e[xX]" "*.ltx" "*.sty" "*.cl[so]" > + "*.bbl" "*.drv" "*.hva") > + semantic-symref-filepattern-alist) > + (push '(plain-tex-mode "*.[tT]e[xX]" "*.ins") > + semantic-symref-filepattern-alist) > + (push '(doctex-mode "*.dtx") semantic-symref-filepattern-alist)) Doesn't this stuff rather belong in semantic itself? > +(cl-defmethod xref-backend-references ((_backend (eql 'tex-etags)) identifier) > + "Find references of IDENTIFIER in TeX buffers and files." > + (require 'semantic/symref/grep) Are we sure that we want to make this depend on semantic? Is there any way around that? From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 09 Jun 2024 18:47:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Kangas , David Fussner , Eli Zaretskii Cc: 53749@debbugs.gnu.org, arash@gnu.org, tsdh@gnu.org, Stefan Monnier , ikumi@ikumi.que.jp Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17179587722096 (code B ref 53749); Sun, 09 Jun 2024 18:47:01 +0000 Received: (at 53749) by debbugs.gnu.org; 9 Jun 2024 18:46:12 +0000 Received: from localhost ([127.0.0.1]:54435 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sGNYR-0000Xh-Tn for submit@debbugs.gnu.org; Sun, 09 Jun 2024 14:46:12 -0400 Received: from forward502c.mail.yandex.net ([178.154.239.210]:40200) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sGNYO-0000XT-JP for 53749@debbugs.gnu.org; Sun, 09 Jun 2024 14:46:11 -0400 Received: from mail-nwsmtp-smtp-production-main-36.sas.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-36.sas.yp-c.yandex.net [IPv6:2a02:6b8:c10:2b05:0:640:2bb4:0]) by forward502c.mail.yandex.net (Yandex) with ESMTPS id C103360C25; Sun, 9 Jun 2024 21:45:49 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-36.sas.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id ijhtNp1o8Sw0-NfWH7irY; Sun, 09 Jun 2024 21:45:48 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1717958749; bh=/KjbP34QlBmlrQtqEi4+G+J3JsWZ6YxYEFUNPQCytA0=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=uFbCtq1BbM6bCMEzvWC+i4cIeO0EONJQ4p12ef0Qayy5I34iHudkySh1iVHRPncvd zxh2f/Rl8msQ1gigeCFXCeYaN1HhI9ahdJ9t2+3ZnshPLCuN56Hxl4oIc/J76FD5VQ jsTWryEL4sLFmLr/xOt8eENaEGrIxTIQnCD8574A= Authentication-Results: mail-nwsmtp-smtp-production-main-36.sas.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailfauth.nyi.internal (Postfix) with ESMTP id 4EC071200043; Sun, 9 Jun 2024 14:45:44 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute6.internal (MEProxy); Sun, 09 Jun 2024 14:45:44 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrfedtjedguddvkecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefkffggfgfuvfevfhfhjggtgfesthejredttddvjeenucfhrhhomhepffhm ihhtrhihucfiuhhtohhvuceoughguhhtohhvseihrghnuggvgidrrhhuqeenucggtffrrg htthgvrhhnpeeihfejueevteffffdvfeetffffkefhuedujeeiheehiedulefghefgffef udffudenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpe gughhuthhovhdomhgvshhmthhprghuthhhphgvrhhsohhnrghlihhthidqudeffeefleel heehvddqvdelgeejjeejjeeiqdgughhuthhovheppeihrghnuggvgidrrhhusehfrghsth hmrghilhdrtghomh X-ME-Proxy: Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun, 9 Jun 2024 14:45:42 -0400 (EDT) Message-ID: <6efddf34-1f18-41c8-9125-b6b2e3ad3d21@yandex.ru> Date: Sun, 9 Jun 2024 21:45:40 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird References: <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> <86v832z5lp.fsf@gnu.org> Content-Language: en-US From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On 09/06/2024 14:36, Stefan Kangas wrote: >> diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi >> index 579098c81b1..a064103aa25 100644 >> --- a/doc/emacs/maintaining.texi >> +++ b/doc/emacs/maintaining.texi >> @@ -2529,6 +2529,15 @@ Identifier Search >> referenced. The XREF mode commands are available in this buffer, see >> @ref{Xref Commands}. >> >> +When invoked in a buffer whose major mode uses the @code{etags} backend, >> +@kbd{M-?} searches files and buffers whose major mode matches that of >> +the original buffer. It guesses that mode from file extensions, so if >> +@kbd{M-?} seems to be skipping relevant buffers or files, try >> +customizing either the variable @code{semantic-symref-filepattern-alist} > Why does this speak of Semantic? Does `xref-find-references` depend on > it somehow? xref-backend-references's default implementation calls semantic-symref-perform-search under the cover. It's just the "symref" package, not the parser or the rest. David's addition also uses it, and that's fine. >> +;; Populate `semantic-symref-filepattern-alist' for the in-tree modes; >> +;; AUCTeX is doing the same for its modes. >> +(with-eval-after-load 'semantic/symref/grep >> + (defvar semantic-symref-filepattern-alist) >> + (push '(latex-mode "*.[tT]e[xX]" "*.ltx" "*.sty" "*.cl[so]" >> + "*.bbl" "*.drv" "*.hva") >> + semantic-symref-filepattern-alist) >> + (push '(plain-tex-mode "*.[tT]e[xX]" "*.ins") >> + semantic-symref-filepattern-alist) >> + (push '(doctex-mode "*.dtx") semantic-symref-filepattern-alist)) > Doesn't this stuff rather belong in semantic itself? Good point. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 09 Jun 2024 18:53:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Kangas Cc: 53749@debbugs.gnu.org, Ikumi Keita , Tassilo Horn , Arash Esbati , Stefan Monnier , Dmitry Gutov , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17179591313068 (code B ref 53749); Sun, 09 Jun 2024 18:53:02 +0000 Received: (at 53749) by debbugs.gnu.org; 9 Jun 2024 18:52:11 +0000 Received: from localhost ([127.0.0.1]:54665 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sGNeE-0000nL-9V for submit@debbugs.gnu.org; Sun, 09 Jun 2024 14:52:11 -0400 Received: from mail-qt1-f170.google.com ([209.85.160.170]:49475) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sGNeC-0000n1-Lb for 53749@debbugs.gnu.org; Sun, 09 Jun 2024 14:52:09 -0400 Received: by mail-qt1-f170.google.com with SMTP id d75a77b69052e-4404fae8c6aso11001071cf.3 for <53749@debbugs.gnu.org>; Sun, 09 Jun 2024 11:51:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1717959046; x=1718563846; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=6nsSq5+SeRGTUYCbTYhe1LXbZHPAZJUk1HNhBInKsCc=; b=AK9aoRWKIjknm2jpr3tgd0VXVkP2ZeDF8KpulZQtukxTNfJG9p/3P6I+EyDnGVya2y cQPBdocTWElMqDpKxA8tZYPT5Z82o0nmyCYLaDCriLYIuPBvgBJuLfy9uuZYTUSmBH2G 0uVXRpGTBpvZQg9M/NUpYh9Vn9iYfuxtAdcSUTWqxZUkQINCuf+TvZmWZU/4g08pHqZh uxaWCEIe9WhDDCCSCtqhERH40+6iHozhnM4RRkDk5XfT1JO7PlVMieMdJS1i/R3G3H+l 8qa7mIvULWh/po+xg5piekd0zfJDyvI7cE1bTe9aW+CzQnUurtGufpPqyBirxFfTkbeu Y8uA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1717959046; x=1718563846; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=6nsSq5+SeRGTUYCbTYhe1LXbZHPAZJUk1HNhBInKsCc=; b=cE+17p83s3TKKDJviChescf+0tfsBIIM0oe8Af5ASjLuSxyUMdewQXImarp5jk3HcR ORvLaSapz2sBXbZWiNRTw4NGUy3pT5x41Om1TgwuLnCYshSwfuUKueCEdBGhJSzf1nJK 5i770SsHS+4wk3qyRrqdRM3y9+pmnPA73yRU9Ki2iEOWoXeHdPqM0givxaUiPuNwoCKR KhykzYob/zYxoFQXQq6Hr/qsJrVLjTiOjHXSlSSjSP6K38wkXI+4KEDiGVE1Fcb5z5MX UJrR+lldbkNajZcCfdpUp492vGaWxV9gzqCR0jMhiJiEtAgR1KEY7b81IkZevzrvjIUT OdCQ== X-Forwarded-Encrypted: i=1; AJvYcCWSuImbpQleDNawvVRAAdFzqZTxwzdIKGfcY5TlSXe7QyNe4HvPkfDjkjU93xSxT0BrE90T6RJnzjNi9YrQcKbjCE/3Fpg= X-Gm-Message-State: AOJu0YyuNe8Wuom0rQTpl9rATnQZRqYW4NysVggJd0YLXlimaDpd76eq ptoqp5hOaDgxAoR6B45haZh5VLrUL2g4jOdGHkzbPPGxC79SRcO4/OEV0UxW4UM0qIUCHdhGzzg rSBneZuhJxGEewIXc+v2vIbwZ3VFIdbsk X-Google-Smtp-Source: AGHT+IGe6ZkkIAZkGMO4+JwoST5oKbzPYo2et93Fz5BUP1bbbTo2G1plc5YHPVgfjKUbICUqLjFH3FIxdDOqE0NXpfU= X-Received: by 2002:a17:903:18b:b0:1f6:f814:d542 with SMTP id d9443c01a7336-1f6f814d672mr38866915ad.68.1717958560922; Sun, 09 Jun 2024 11:42:40 -0700 (PDT) MIME-Version: 1.0 References: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@yandex.ru> <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> <86v832z5lp.fsf@gnu.org> In-Reply-To: From: David Fussner Date: Sun, 9 Jun 2024 19:42:29 +0100 Message-ID: Content-Type: multipart/alternative; boundary="000000000000c346cf061a79657f" X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000c346cf061a79657f Content-Type: text/plain; charset="UTF-8" Hi Stefan, Thanks very much for the review. I'll try to address most of it in a revised patch tomorrow, but I did want to explain now that the default implementation of xref-find-references in xref.el uses semantic symref functionality to search files. The TeX backend puts a wrapper around it, but doesn't, following Dmitry's advice, try to reinvent that wheel. As for where we set the filepattern variable, I don't mind, but AUCTeX is setting it internally for their modes, so it seemed OK in tex-mode, too. More tomorrow, and thanks again. David. On Sun, 9 Jun 2024, 12:36 Stefan Kangas, wrote: > David Fussner writes: > > > In case the changeset might prove acceptable for version 30, I attach > > the latest patch, which clears out the code I was using to simplify > > testing of the AUCTeX modes. > > I have some comments and questions: > > - Does this need a NEWS entry? > > - I see the brief text you added to tex-mode.el explaining more about > expl3, but perhaps there should be a clear explanation in the commit > message too. > > - [Optional: In most places you use spaces for indentation, but here and > there, there is a single tab followed by one or more spaces. Consider > using only spaces.] > > > From: David Fussner > > Date: Wed, 5 Jun 2024 10:26:18 +0100 > > Subject: [PATCH] Provide a modified xref backend for TeX buffers > > [Don't forget to add the bug number to the ChangeLog.] > > > diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi > > index 579098c81b1..a064103aa25 100644 > > --- a/doc/emacs/maintaining.texi > > +++ b/doc/emacs/maintaining.texi > > @@ -2529,6 +2529,15 @@ Identifier Search > > referenced. The XREF mode commands are available in this buffer, see > > @ref{Xref Commands}. > > > > +When invoked in a buffer whose major mode uses the @code{etags} backend, > > +@kbd{M-?} searches files and buffers whose major mode matches that of > > +the original buffer. It guesses that mode from file extensions, so if > > +@kbd{M-?} seems to be skipping relevant buffers or files, try > > +customizing either the variable @code{semantic-symref-filepattern-alist} > > Why does this speak of Semantic? Does `xref-find-references` depend on > it somehow? > > > diff --git a/lib-src/etags.c b/lib-src/etags.c > > index 03bc55de03d..6bc734e7df0 100644 > > --- a/lib-src/etags.c > > +++ b/lib-src/etags.c > > @@ -5740,11 +5756,25 @@ Scheme_functions (FILE *inf) > > static linebuffer *TEX_toktab = NULL; /* Table with tag tokens */ > > > > /* Default set of control sequences to put into TEX_toktab. > > - The value of environment var TEXTAGS is prepended to this. */ > > + The value of environment var TEXTAGS is prepended to this. > > + (2024) Add variants of '\def', some additional LaTeX (and > > + former xparse) commands, common variants from the > > + 'etoolbox' package, and the main expl3 commands. */ > > Do we really need this comment? Isn't the git log enough? > > > diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el > > index 97c950267c6..fbf08840699 100644 > > --- a/lisp/textmodes/tex-mode.el > > +++ b/lisp/textmodes/tex-mode.el > > @@ -636,6 +636,14 @@ tex-font-lock-keywords-2 > > 3 '(tex-font-lock-append-prop 'bold) 'append))))) > > "Gaudy expressions to highlight in TeX modes.") > > > > +(defvar-local tex-expl-region-list nil > > + "List of region boundaries where expl3 syntax is active. > > +It will be nil in buffers where expl3 syntax is always active, e.g., > > Please prefer "for example" to "e.g.". > > > +(defvar-local tex-expl-buffer-p nil > > + "Non-nil in buffers where expl3 syntax is always active.") > > What does "always active" mean as compared to just "active"? > Does this need to be elaborated? > > > +;; Populate `semantic-symref-filepattern-alist' for the in-tree modes; > > +;; AUCTeX is doing the same for its modes. > > +(with-eval-after-load 'semantic/symref/grep > > + (defvar semantic-symref-filepattern-alist) > > + (push '(latex-mode "*.[tT]e[xX]" "*.ltx" "*.sty" "*.cl[so]" > > + "*.bbl" "*.drv" "*.hva") > > + semantic-symref-filepattern-alist) > > + (push '(plain-tex-mode "*.[tT]e[xX]" "*.ins") > > + semantic-symref-filepattern-alist) > > + (push '(doctex-mode "*.dtx") semantic-symref-filepattern-alist)) > > Doesn't this stuff rather belong in semantic itself? > > > +(cl-defmethod xref-backend-references ((_backend (eql 'tex-etags)) > identifier) > > + "Find references of IDENTIFIER in TeX buffers and files." > > + (require 'semantic/symref/grep) > > Are we sure that we want to make this depend on semantic? > > Is there any way around that? > --000000000000c346cf061a79657f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Stefan,=C2=A0

Thanks very much for the review. I'll try to address most of it in= a revised patch tomorrow, but I did want to explain now that the default i= mplementation of xref-find-references in xref.el uses semantic symref funct= ionality to search files. The TeX backend puts a wrapper around it, but doe= sn't, following Dmitry's advice, try to reinvent that wheel. As for= where we set the filepattern variable, I don't mind, but AUCTeX is set= ting it internally for their modes, so it seemed OK in tex-mode, too.
=

More tomorrow, and thanks aga= in.=C2=A0

David.=C2=A0

On Sun, 9 Jun 2024, 12:36 Stefan Kangas, <stefankangas@gmail.com> wrote:
David Fussner <dfussner@googlemail.com> w= rites:

> In case the changeset might prove acceptable for version 30, I attach<= br> > the latest patch, which clears out the code I was using to simplify > testing of the AUCTeX modes.

I have some comments and questions:

- Does this need a NEWS entry?

- I see the brief text you added to tex-mode.el explaining more about
=C2=A0 expl3, but perhaps there should be a clear explanation in the commit=
=C2=A0 message too.

- [Optional: In most places you use spaces for indentation, but here and =C2=A0 there, there is a single tab followed by one or more spaces.=C2=A0 C= onsider
=C2=A0 using only spaces.]

> From: David Fussner <dfussner@googlemail.com>
> Date: Wed, 5 Jun 2024 10:26:18 +0100
> Subject: [PATCH] Provide a modified xref backend for TeX buffers

[Don't forget to add the bug number to the ChangeLog.]

> diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi > index 579098c81b1..a064103aa25 100644
> --- a/doc/emacs/maintaining.texi
> +++ b/doc/emacs/maintaining.texi
> @@ -2529,6 +2529,15 @@ Identifier Search
>=C2=A0 referenced.=C2=A0 The XREF mode commands are available in this b= uffer, see
>=C2=A0 @ref{Xref Commands}.
>
> +When invoked in a buffer whose major mode uses the @code{etags} backe= nd,
> +@kbd{M-?} searches files and buffers whose major mode matches that of=
> +the original buffer.=C2=A0 It guesses that mode from file extensions,= so if
> +@kbd{M-?} seems to be skipping relevant buffers or files, try
> +customizing either the variable @code{semantic-symref-filepattern-ali= st}

Why does this speak of Semantic?=C2=A0 Does `xref-find-references` depend o= n
it somehow?

> diff --git a/lib-src/etags.c b/lib-src/etags.c
> index 03bc55de03d..6bc734e7df0 100644
> --- a/lib-src/etags.c
> +++ b/lib-src/etags.c
> @@ -5740,11 +5756,25 @@ Scheme_functions (FILE *inf)
>=C2=A0 static linebuffer *TEX_toktab =3D NULL; /* Table with tag tokens= */
>
>=C2=A0 /* Default set of control sequences to put into TEX_toktab.
> -=C2=A0 =C2=A0The value of environment var TEXTAGS is prepended to thi= s.=C2=A0 */
> +=C2=A0 =C2=A0The value of environment var TEXTAGS is prepended to thi= s.
> +=C2=A0 =C2=A0(2024) Add variants of '\def', some additional L= aTeX (and
> +=C2=A0 =C2=A0former xparse) commands, common variants from the
> +=C2=A0 =C2=A0'etoolbox' package, and the main expl3 commands.= */

Do we really need this comment?=C2=A0 Isn't the git log enough?

> diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el > index 97c950267c6..fbf08840699 100644
> --- a/lisp/textmodes/tex-mode.el
> +++ b/lisp/textmodes/tex-mode.el
> @@ -636,6 +636,14 @@ tex-font-lock-keywords-2
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A03 '(tex-font-lock-a= ppend-prop 'bold) 'append)))))
>=C2=A0 =C2=A0 =C2=A0"Gaudy expressions to highlight in TeX modes.&= quot;)
>
> +(defvar-local tex-expl-region-list nil
> +=C2=A0 "List of region boundaries where expl3 syntax is active.<= br> > +It will be nil in buffers where expl3 syntax is always active, e.g.,<= br>
Please prefer "for example" to "e.g.".

> +(defvar-local tex-expl-buffer-p nil
> +=C2=A0 "Non-nil in buffers where expl3 syntax is always active.&= quot;)

What does "always active" mean as compared to just "active&q= uot;?
Does this need to be elaborated?

> +;; Populate `semantic-symref-filepattern-alist' for the in-tree m= odes;
> +;; AUCTeX is doing the same for its modes.
> +(with-eval-after-load 'semantic/symref/grep
> +=C2=A0 (defvar semantic-symref-filepattern-alist)
> +=C2=A0 (push '(latex-mode "*.[tT]e[xX]" "*.ltx&quo= t; "*.sty" "*.cl[so]"
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0"*.bbl" "*.drv" "*.hva")
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 semantic-symref-filepattern-alist)
> +=C2=A0 (push '(plain-tex-mode "*.[tT]e[xX]" "*.ins= ")
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 semantic-symref-filepattern-alist)
> +=C2=A0 (push '(doctex-mode "*.dtx") semantic-symref-fil= epattern-alist))

Doesn't this stuff rather belong in semantic itself?

> +(cl-defmethod xref-backend-references ((_backend (eql 'tex-etags)= ) identifier)
> +=C2=A0 "Find references of IDENTIFIER in TeX buffers and files.&= quot;
> +=C2=A0 (require 'semantic/symref/grep)

Are we sure that we want to make this depend on semantic?

Is there any way around that?
--000000000000c346cf061a79657f-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Stefan Monnier Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 09 Jun 2024 21:41:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org, ikumi@ikumi.que.jp, David Fussner , arash@gnu.org, Stefan Kangas , tsdh@gnu.org, Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17179692301132 (code B ref 53749); Sun, 09 Jun 2024 21:41:01 +0000 Received: (at 53749) by debbugs.gnu.org; 9 Jun 2024 21:40:30 +0000 Received: from localhost ([127.0.0.1]:34435 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sGQH7-0000I0-2Z for submit@debbugs.gnu.org; Sun, 09 Jun 2024 17:40:29 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:21403) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sGPhv-0003v7-VV for 53749@debbugs.gnu.org; Sun, 09 Jun 2024 17:04:08 -0400 Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 9322A80882; Sun, 9 Jun 2024 17:03:45 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1717967024; bh=sI/l2mX7CaYBHBtBDb+A6Ka+DXmvsWGrTk/2ZNMXtfE=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=lzEiXVVUMSp0Nfa90l1xjDpXu1tQTk3qUmB1i63OIUXoBZl5Op+kraWXS3tva9JVB TyofMyRdPdfssyTfy9lR0543PVGik63XC2UZj7tCk4Ztq/z9bcwhmzslTylgpFPslg lfwlZOO1WTuIOgLqx17Q9nZlFwLabNOTWrnyHHIPGUmMLj/FbiYi4108V60QLqjQ0d uWEalgLf/gJwdBsyofxeMOKpYeWK9o/M7ICaAkAsqY4VoBC62KFuG2OK7bCHHaQmF2 ClNP6zWVNUvoMBGFtwXEtikFTiT3zQzuSEQBlG1NUeHjgfYPLXZGCboZItZXL8Rzri EyUxCaapKP17w== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 8B4DC80781; Sun, 9 Jun 2024 17:03:44 -0400 (EDT) Received: from pastel (unknown [24.140.236.196]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 43968120351; Sun, 9 Jun 2024 17:03:44 -0400 (EDT) From: Stefan Monnier In-Reply-To: <6efddf34-1f18-41c8-9125-b6b2e3ad3d21@yandex.ru> (Dmitry Gutov's message of "Sun, 9 Jun 2024 21:45:40 +0300") Message-ID: References: <831qf1mgjl.fsf@gnu.org> <87cyyj9rpp.fsf@gnu.org> <65793.1694843596@localhost> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> <86v832z5lp.fsf@gnu.org> <6efddf34-1f18-41c8-9125-b6b2e3ad3d21@yandex.ru> Date: Sun, 09 Jun 2024 17:03:43 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL -0.147 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain T_SCC_BODY_TEXT_LINE -0.01 - X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) >>> +;; Populate `semantic-symref-filepattern-alist' for the in-tree modes; >>> +;; AUCTeX is doing the same for its modes. >>> +(with-eval-after-load 'semantic/symref/grep >>> + (defvar semantic-symref-filepattern-alist) >>> + (push '(latex-mode "*.[tT]e[xX]" "*.ltx" "*.sty" "*.cl[so]" >>> + "*.bbl" "*.drv" "*.hva") >>> + semantic-symref-filepattern-alist) >>> + (push '(plain-tex-mode "*.[tT]e[xX]" "*.ins") >>> + semantic-symref-filepattern-alist) >>> + (push '(doctex-mode "*.dtx") semantic-symref-filepattern-alist)) >> Doesn't this stuff rather belong in semantic itself? > Good point. FWIW, I think the responsability of `symref.el` is to provide hooks like the `semantic-symref-filepattern-alist` var along with the code that uses them, but the mode-specific settings, such as knowledge about which glob patterns should be used for `latex-mode` belong to the corresponding mode. Stefan From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 09 Jun 2024 22:15:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Monnier Cc: 53749@debbugs.gnu.org, ikumi@ikumi.que.jp, David Fussner , arash@gnu.org, Stefan Kangas , tsdh@gnu.org, Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17179712546701 (code B ref 53749); Sun, 09 Jun 2024 22:15:01 +0000 Received: (at 53749) by debbugs.gnu.org; 9 Jun 2024 22:14:14 +0000 Received: from localhost ([127.0.0.1]:35680 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sGQnm-0001k0-Cp for submit@debbugs.gnu.org; Sun, 09 Jun 2024 18:14:14 -0400 Received: from forward502c.mail.yandex.net ([178.154.239.210]:49798) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sGQnj-0001jk-Du for 53749@debbugs.gnu.org; Sun, 09 Jun 2024 18:14:13 -0400 Received: from mail-nwsmtp-smtp-production-main-44.sas.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-44.sas.yp-c.yandex.net [IPv6:2a02:6b8:c24:a33:0:640:d837:0]) by forward502c.mail.yandex.net (Yandex) with ESMTPS id 2962E60C82; Mon, 10 Jun 2024 01:13:52 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-44.sas.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id lDlgnC0Qt4Y0-CzWVaNff; Mon, 10 Jun 2024 01:13:51 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1717971231; bh=v+qhvfhjCPgXKTQq0xLV3G5FfeneY10RWMP8sX8gnQg=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=CgxMD0JmkCPnmzjMK9HEo3wqrQpXoITHQUadomf7VCzQoTtyGsBEGHN4uF1wgeCVz CrMedN0ixKC3vT4z5Zphgq7ZOMjZL9YBd0SkGDozrHCqBXSyMmf74eYnU7RgnDv3oA Ut5gwNuqf5KiEop7XF1uIxcj1MhqWa1NHU0C2AKA= Authentication-Results: mail-nwsmtp-smtp-production-main-44.sas.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailfauth.nyi.internal (Postfix) with ESMTP id D16B41200043; Sun, 9 Jun 2024 18:13:46 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Sun, 09 Jun 2024 18:13:46 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrfedtkedgtdekucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnhepiefhjeeuveetffffvdefteffffekhfeuudejieehheeiudelgfehgffffedu ffdunecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun, 9 Jun 2024 18:13:44 -0400 (EDT) Message-ID: <75d6872c-4c31-44a5-8597-781741dca720@yandex.ru> Date: Mon, 10 Jun 2024 01:13:43 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird References: <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> <86v832z5lp.fsf@gnu.org> <6efddf34-1f18-41c8-9125-b6b2e3ad3d21@yandex.ru> Content-Language: en-US From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On 10/06/2024 00:03, Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: >>>> +;; Populate `semantic-symref-filepattern-alist' for the in-tree modes; >>>> +;; AUCTeX is doing the same for its modes. >>>> +(with-eval-after-load 'semantic/symref/grep >>>> + (defvar semantic-symref-filepattern-alist) >>>> + (push '(latex-mode "*.[tT]e[xX]" "*.ltx" "*.sty" "*.cl[so]" >>>> + "*.bbl" "*.drv" "*.hva") >>>> + semantic-symref-filepattern-alist) >>>> + (push '(plain-tex-mode "*.[tT]e[xX]" "*.ins") >>>> + semantic-symref-filepattern-alist) >>>> + (push '(doctex-mode "*.dtx") semantic-symref-filepattern-alist)) >>> Doesn't this stuff rather belong in semantic itself? >> Good point. > FWIW, I think the responsability of `symref.el` is to provide hooks like > the `semantic-symref-filepattern-alist` var along with the code that > uses them, but the mode-specific settings, such as knowledge about which > glob patterns should be used for `latex-mode` belong to the > corresponding mode. I've been looking at semantic-symref-filepattern-alist like a workaround for the fast that the major modes don't provide enough relevant information in auto-mode-alist (or, to look at it differently, don't provide such info in some other variable which the auto-mode-alist entry would be computed from). From that perspective, storing the missing association inside the semantic-symref package seems suitable. But a more "proper" place for it would be better, of course. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 10 Jun 2024 13:31:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org, ikumi@ikumi.que.jp, arash@gnu.org, Stefan Kangas , tsdh@gnu.org, Eli Zaretskii , Stefan Monnier Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.171802626226457 (code B ref 53749); Mon, 10 Jun 2024 13:31:03 +0000 Received: (at 53749) by debbugs.gnu.org; 10 Jun 2024 13:31:02 +0000 Received: from localhost ([127.0.0.1]:33715 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sGf6z-0006sa-7J for submit@debbugs.gnu.org; Mon, 10 Jun 2024 09:31:01 -0400 Received: from mail-pl1-f171.google.com ([209.85.214.171]:57453) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sGf6x-0006s9-44 for 53749@debbugs.gnu.org; Mon, 10 Jun 2024 09:30:59 -0400 Received: by mail-pl1-f171.google.com with SMTP id d9443c01a7336-1f61f775738so37024865ad.2 for <53749@debbugs.gnu.org>; Mon, 10 Jun 2024 06:30:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1718026176; x=1718630976; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=8I7YFcK0jODxSJ2FMX1BC0ZFbVlsnEjxG87Cx+06Dmk=; b=D4PEB8iWB1Mx42h/DUTJL5bbMQX15S5P+ovhp7yD5RKS9R51RBAYUsxsKgTwlbCto1 jg7l7HwwFG50G51QT2CNYQ+YXQD/b40KttwvDBZ/bCUADtspzC8MyfS7KWm+MCxLnIEt 3kN5u85eIJZ0ilmnicwHFxq7gStBK1uHtTnqZHZAH1GpQzT0euvz6NIASkpEQThuxgg3 VGndNa21gXXGs9N8sNuUZir6EintmLgcdYqZ7htQjWDIajGadabR1vYSw5di+rYw2B+f +Abqld111IGqKoIgEvnijuqExv4iZSH4u/iFz8RZ36WfUMUlcu8GINUCS9goxgGsY9J6 SlHA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718026176; x=1718630976; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=8I7YFcK0jODxSJ2FMX1BC0ZFbVlsnEjxG87Cx+06Dmk=; b=hSsT+t+WqYv/BdsJ8kIqZV1DBOQlCFpW/fUirNHik6w4OFa1weOmlKVGundnQj47kL pI13+FAHzaiCoPRTumHTO/eFQhoOYKiV2dknV0puhCfUFWXqxgUMa9/mAGYAfgAYldMb 4eOse/7wfyaYDnKjYdOQuzmHyc+aXwK/vrv0O54dZMGR4fMmh7ZVo171Z9oUZRsWtEFt jsTLbJNzjpNyyR8ufsqgUQuXhZy5b8jcZnSCsGRr0HIpGPd4Lp1l1ggVQqUal6HTrhA6 VEWr0DkjLu11jcn2eOOqelOAo6bD8btscE8R4e6GFyxRaA+uR1za7BMC1oBq6tuaF5Za yA2A== X-Forwarded-Encrypted: i=1; AJvYcCWqxAPUmCq9AQ5hTZrn6ZRiP4KdiIgXydSgZQK2SekkNlkXr+xTPe4MgFlBg8M3JK5YiVSZZUBGAVGN+AbhtQLyKHPfnwI= X-Gm-Message-State: AOJu0Yy1bH/eM0W8a5fOersufxWLPFSCBb2l6Bjhbb4uZ4Di5V+H9tLx Sv7c44y9cy5jv3eyMRbRMyFph/SRKgpOTvgM3FUq19KLh4ZsuImB0sph6a6IHi0VnzSPq/9xO2u 8V2kBYCr8OZZbC/RiRCphMOf6vUE= X-Google-Smtp-Source: AGHT+IEzgrnJBvN199P6lgRyIxqXWbZ26mKFDhJ0IVtQ1uzD4pzKLYMfscaOLmXuhsV2+vxIksHh9OWcjgHA2WsjDxE= X-Received: by 2002:a17:902:64c1:b0:1f6:daa6:e774 with SMTP id d9443c01a7336-1f6daa6e87cmr71949785ad.61.1718026175896; Mon, 10 Jun 2024 06:29:35 -0700 (PDT) MIME-Version: 1.0 References: <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> <86v832z5lp.fsf@gnu.org> <6efddf34-1f18-41c8-9125-b6b2e3ad3d21@yandex.ru> <75d6872c-4c31-44a5-8597-781741dca720@yandex.ru> In-Reply-To: <75d6872c-4c31-44a5-8597-781741dca720@yandex.ru> From: David Fussner Date: Mon, 10 Jun 2024 14:29:51 +0100 Message-ID: Content-Type: multipart/mixed; boundary="000000000000ef265b061a89234c" X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" --000000000000ef265b061a89234c Content-Type: text/plain; charset="UTF-8" Hi Dmitry, Stefan M and Stefan K, Here's the latest patch, with most of the modifications requested by Stefan K. The code populating `semantic-symref-filepattern-alist` I've left in tex-mode.el, because I wasn't sure how to adjudicate the differing opinions on where it should go. Moving it won't take any time, should that be the verdict. I've had a stab at a NEWS entry, and included the patches to the manual etags test files. The diffs for the test files are large, since we remove the TeX escape char from any tag names where it occurs, as discussed elsewhere on this thread. Please let me know if more changes are needed. Best, David. On Sun, 9 Jun 2024 at 23:13, Dmitry Gutov wrote: > > On 10/06/2024 00:03, Stefan Monnier via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: > >>>> +;; Populate `semantic-symref-filepattern-alist' for the in-tree modes; > >>>> +;; AUCTeX is doing the same for its modes. > >>>> +(with-eval-after-load 'semantic/symref/grep > >>>> + (defvar semantic-symref-filepattern-alist) > >>>> + (push '(latex-mode "*.[tT]e[xX]" "*.ltx" "*.sty" "*.cl[so]" > >>>> + "*.bbl" "*.drv" "*.hva") > >>>> + semantic-symref-filepattern-alist) > >>>> + (push '(plain-tex-mode "*.[tT]e[xX]" "*.ins") > >>>> + semantic-symref-filepattern-alist) > >>>> + (push '(doctex-mode "*.dtx") semantic-symref-filepattern-alist)) > >>> Doesn't this stuff rather belong in semantic itself? > >> Good point. > > FWIW, I think the responsability of `symref.el` is to provide hooks like > > the `semantic-symref-filepattern-alist` var along with the code that > > uses them, but the mode-specific settings, such as knowledge about which > > glob patterns should be used for `latex-mode` belong to the > > corresponding mode. > > I've been looking at semantic-symref-filepattern-alist like a workaround > for the fast that the major modes don't provide enough relevant > information in auto-mode-alist (or, to look at it differently, don't > provide such info in some other variable which the auto-mode-alist entry > would be computed from). > > From that perspective, storing the missing association inside the > semantic-symref package seems suitable. But a more "proper" place for it > would be better, of course. --000000000000ef265b061a89234c Content-Type: text/x-patch; charset="US-ASCII"; name="0005-Provide-a-modified-xref-backend-for-TeX-buffers.patch" Content-Disposition: attachment; filename="0005-Provide-a-modified-xref-backend-for-TeX-buffers.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lx90dkvq0 RnJvbSBiYjY2NjQ3NWY0MTJlNDM1NTYwM2YyMWI2NDZiMTdkZWJhYjc3YTdhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBGdXNzbmVyIDxkZnVzc25lckBnb29nbGVtYWlsLmNv bT4KRGF0ZTogTW9uLCAxMCBKdW4gMjAyNCAxNDoxNjowNCArMDEwMApTdWJqZWN0OiBbUEFUQ0hd IFByb3ZpZGUgYSBtb2RpZmllZCB4cmVmIGJhY2tlbmQgZm9yIFRlWCBidWZmZXJzCgooYnVnIzUz NzQ5KSBJbiBhZGRpdGlvbiB0byBwcm92aWRpbmcgYSBuZXcgYHhyZWYnIGJhY2tlbmQsIHRoZSBw YXRjaAphbHNvIGltcHJvdmVzIHRoZSBnZW5lcmFsIGhhbmRsaW5nIG9mIGV4cGwzIHN5bnRheC4g IEV4cGwzIGlzIHRoZQpuZXh0LWdlbmVyYXRpb24gTGFUZVggc3BlY2lmaWNhdGlvbiwgYW5kIGhh cyBmb3Igc29tZSB0aW1lIGJlZW4KYXZhaWxhYmxlIGJ5IGRlZmF1bHQgaW4gdGhlIExhVGVYIGtl cm5lbC4gIFRoZSBuZXcgc3ludGF4IGNvLWV4aXN0cyBpbgptYW55IGZpbGVzIHdpdGggdGhlIHN0 YW5kYXJkIExhVGVYMmUgc3ludGF4LCBzbyB3ZSB0cnkgYXQgbGVhc3QKbWluaW1hbGx5IHRvIHNl cGFyYXRlIHRoZSB3YXkgbW9kZXMgaGFuZGxlIHRoZSB0d28gc3BlY2lmaWNhdGlvbnMsCmJvdGgg dG8gcmVkdWNlIHZpc3VhbGx5LWRpc3R1cmJpbmcgaW50ZXJmZXJlbmNlIGJldHdlZW4gdGhlbSBh bmQgYWxzbwp0byBpbXByb3ZlIHRoZSBgeHJlZicgYmFja2VuZC4KCiogbGliLXNyYy9ldGFncy5j IChUZVhfY29tbWFuZHMpOiBJbXByb3ZlIHBhcnNpbmcgb2YgY29tbWFuZHMgaW4gVGVYCmJ1ZmZl cnMuCihURVhfZGVmZW52KTogRXhwYW5kIGxpc3Qgb2YgY29tbWFuZHMgdG8gdGFnIGJ5IGRlZmF1 bHQgaW4gVGVYCmJ1ZmZlcnMuCihUZVhfaGVscCk6CiogZG9jL2VtYWNzL21haW50YWluaW5nLnRl eGkgKFRhZyBTeW50YXgpOiBEb2N1bWVudCBuZXcgdGFnZ2VkCmNvbW1hbmRzLgooSWRlbnRpZmll ciBTZWFyY2gpOiBBZGQgbm90ZSBhYm91dCBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxp c3QsCmF1dG8tbW9kZS1hbGlzdCwgYW5kIHhyZWYtZmluZC1yZWZlcmVuY2VzLgoKKiBsaXNwL3Rl eHRtb2Rlcy90ZXgtbW9kZS5lbCAodGV4LWZvbnQtbG9jay1zdXNjcmlwdCk6IFRlc3QgZm9yCnVu ZGVyc2NvcmUgaW4gZXhwbDMgZmlsZXMgYW5kIHJlZ2lvbnMsIGRpc2FibGUgc3Vic2NyaXB0IGZh Y2UgdGhlcmUuCih0ZXgtY29tbW9uLWluaXRpYWxpemF0aW9uKTogU2V0IHVwIHhyZWYgYmFja2Vu ZCBmb3IgaW4tdHJlZSBUZVgKbW9kZXMuIERldGVjdCBleHBsMyBmaWxlcywgYW5kIGluIG90aGVy cyBzZXQgdXAgYSBsaXN0IG9mIGV4cGwzCnJlZ2lvbnMuCih0ZXgtZXhwbC1idWZmZXItcGFyc2Up OiBOZXcgZnVuY3Rpb24gY2FsbGVkIGluIHByZXZpb3VzLgoodGV4LWV4cGwtYnVmZmVyLXApOiBO ZXcgdmFyIHRvIGhvbGQgdGhlIHJlc3VsdCBvZiBwcmV2aW91cy4KKHRleC1leHBsLXJlZ2lvbi1z ZXQpOiBOZXcgZnVuY3Rpb24gYWRkZWQgdG8KJ3N5bnRheC1wcm9wZXJ0aXplLWV4dGVuZC1yZWdp b24tZnVuY3Rpb25zJyBob29rLgoodGV4LWV4cGwtcmVnaW9uLWxpc3QpOiBOZXcgdmFyIHRvIGhv bGQgdGhlIHJlc3VsdCBvZiBwcmV2aW91cy4KKHRleC0teHJlZi1iYWNrZW5kKTogTmV3IGZ1bmN0 aW9uIHRvIGlkZW50aWZ5IHRoZSB4cmVmIGJhY2tlbmQuCih0ZXgtLXRoaW5nLWF0LXBvaW50LCB0 ZXgtdGhpbmdhdHB0LS1iZWdpbm5pbmctb2Ytc3ltYm9sKQoodGV4LXRoaW5nYXRwdC0tZW5kLW9m LXN5bWJvbCwgdGV4LS1ib3VuZHMtb2Ytc3ltYm9sLWF0LXBvaW50KToKTmV3IGZ1bmN0aW9ucyB0 byByZXR1cm4gJ3RoaW5nLWF0LXBvaW50JyBmb3IgeHJlZiBiYWNrZW5kLgoodGV4LXRoaW5nYXRw dC1leGNsdWRlLWNoYXJzKTogTmV3IHZhciB0byBkbyB0aGUgc2FtZS4KKHhyZWYtYmFja2VuZC1p ZGVudGlmaWVyLWF0LXBvaW50KTogTmV3IFRlWCBiYWNrZW5kIG1ldGhvZCB0byBwcm92aWRlCnN5 bWJvbHMgZm9yIHByb2Nlc3NpbmcgYnkgeHJlZi4KKHhyZWYtYmFja2VuZC1pZGVudGlmaWVyLWNv bXBsZXRpb24tdGFibGUpCih4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21wbGV0aW9uLWlnbm9y ZS1jYXNlKQooeHJlZi1iYWNrZW5kLWRlZmluaXRpb25zLCB4cmVmLWJhY2tlbmQtYXByb3Bvcyk6 IFBsYWNlaG9sZGVycyB0bwpjYWxsIHRoZSBzdGFuZGFyZCAnZXRhZ3MnIHhyZWYgYmFja2VuZCBt ZXRob2RzLgooeHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMpOiBXcmFwcGVyIHRvIGNhbGwgdGhlIGRl ZmF1bHQgeHJlZiBiYWNrZW5kCm1ldGhvZCwgZmluZGluZyBhcyBtYW55IHJlbGV2YW50IGZpbGVz IGFzIHBvc3NpYmxlIGFuZCB1c2luZyBhIGJlc3Bva2UKc3ludGF4LXByb3BlcnRpemUtZnVuY3Rp b24gd2hlbiByZXF1aXJlZC4KKHRleC0tY29sbGVjdC1maWxlLWV4dGVuc2lvbnMsIHRleC14cmVm LXN5bnRheC1mdW5jdGlvbik6IEhlbHBlcgpmdW5jdGlvbnMgZm9yIHByZXZpb3VzLgoodGV4LWZp bmQtcmVmZXJlbmNlcy1zeW50YXgtdGFibGUsIHRleC0tYnVmZmVycy1saXN0KQoodGV4LS14cmVm LXN5bnRheC1mdW4sIHRleC0tb2xkLXN5bnRheC1mdW5jdGlvbik6IE5ldyB2YXJzIGZvciBzYW1l LgoKKiBldGMvTkVXUyAoQ2hhbmdlcyBpbiBTcGVjaWFsaXplZCBNb2Rlcyk6IEFkZCBuZXdzLgoK KiB0ZXN0L21hbnVhbC9ldGFncy9FVEFHUy5nb29kXyo6CiogdGVzdC9tYW51YWwvZXRhZ3MvQ1RB R1MuZ29vZCo6IFVwZGF0ZSBleHBlY3RlZCByZXN1bHRzIGZyb20gVGVYCiAgZmlsZXMuCi0tLQog ZG9jL2VtYWNzL21haW50YWluaW5nLnRleGkgICAgICAgICAgfCAgIDM5ICstCiBldGMvTkVXUyAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDkgKwogbGliLXNyYy9ldGFncy5jICAgICAg ICAgICAgICAgICAgICAgfCAgMTg2ICsrLQogbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwgICAg ICAgICAgfCAgMzU4ICsrKysrLQogdGVzdC9tYW51YWwvZXRhZ3MvQ1RBR1MuZ29vZCAgICAgICAg fCAxNjE5ICsrKysrKysrKysrKysrKystLS0tLS0tLS0tCiB0ZXN0L21hbnVhbC9ldGFncy9DVEFH Uy5nb29kX2NybGYgICB8IDE1MzcgKysrKysrKysrKysrKysrLS0tLS0tLS0tLQogdGVzdC9tYW51 YWwvZXRhZ3MvQ1RBR1MuZ29vZF91cGRhdGUgfCAxNTM3ICsrKysrKysrKysrKysrKy0tLS0tLS0t LS0KIHRlc3QvbWFudWFsL2V0YWdzL0VUQUdTLmdvb2RfMSAgICAgIHwgMTYzNiArKysrKysrKysr KysrKysrKy0tLS0tLS0tLS0KIHRlc3QvbWFudWFsL2V0YWdzL0VUQUdTLmdvb2RfMiAgICAgIHwg MTYzNiArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0KIHRlc3QvbWFudWFsL2V0YWdzL0VUQUdT Lmdvb2RfMyAgICAgIHwgMTYzNiArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0KIHRlc3QvbWFu dWFsL2V0YWdzL0VUQUdTLmdvb2RfNCAgICAgIHwgMTYzNiArKysrKysrKysrKysrKysrKy0tLS0t LS0tLS0KIHRlc3QvbWFudWFsL2V0YWdzL0VUQUdTLmdvb2RfNSAgICAgIHwgMTYzNiArKysrKysr KysrKysrKysrKy0tLS0tLS0tLS0KIHRlc3QvbWFudWFsL2V0YWdzL0VUQUdTLmdvb2RfNiAgICAg IHwgMTYzNiArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0KIDEzIGZpbGVzIGNoYW5nZWQsIDk2 OTIgaW5zZXJ0aW9ucygrKSwgNTQwOSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2MvZW1h Y3MvbWFpbnRhaW5pbmcudGV4aSBiL2RvYy9lbWFjcy9tYWludGFpbmluZy50ZXhpCmluZGV4IDU3 OTA5OGM4MWIxLi5hMDY0MTAzYWEyNSAxMDA2NDQKLS0tIGEvZG9jL2VtYWNzL21haW50YWluaW5n LnRleGkKKysrIGIvZG9jL2VtYWNzL21haW50YWluaW5nLnRleGkKQEAgLTI1MjksNiArMjUyOSwx NSBAQCBJZGVudGlmaWVyIFNlYXJjaAogcmVmZXJlbmNlZC4gIFRoZSBYUkVGIG1vZGUgY29tbWFu ZHMgYXJlIGF2YWlsYWJsZSBpbiB0aGlzIGJ1ZmZlciwgc2VlCiBAcmVme1hyZWYgQ29tbWFuZHN9 LgogCitXaGVuIGludm9rZWQgaW4gYSBidWZmZXIgd2hvc2UgbWFqb3IgbW9kZSB1c2VzIHRoZSBA Y29kZXtldGFnc30gYmFja2VuZCwKK0BrYmR7TS0/fSBzZWFyY2hlcyBmaWxlcyBhbmQgYnVmZmVy cyB3aG9zZSBtYWpvciBtb2RlIG1hdGNoZXMgdGhhdCBvZgordGhlIG9yaWdpbmFsIGJ1ZmZlci4g IEl0IGd1ZXNzZXMgdGhhdCBtb2RlIGZyb20gZmlsZSBleHRlbnNpb25zLCBzbyBpZgorQGtiZHtN LT99IHNlZW1zIHRvIGJlIHNraXBwaW5nIHJlbGV2YW50IGJ1ZmZlcnMgb3IgZmlsZXMsIHRyeQor Y3VzdG9taXppbmcgZWl0aGVyIHRoZSB2YXJpYWJsZSBAY29kZXtzZW1hbnRpYy1zeW1yZWYtZmls ZXBhdHRlcm4tYWxpc3R9CisoaWYgeW91ciBidWZmZXIncyBtYWpvciBtb2RlIGFscmVhZHkgaGFz IGFuIGVudHJ5IGluIGl0KSwgb3IKK0Bjb2Rle2F1dG8tbW9kZS1hbGlzdH0gKGlmIG5vdCksIHRo ZXJlYnkgaW5mb3JtaW5nIEBjb2Rle3hyZWZ9IG9mIHRoZQorbWlzc2luZyBleHRlbnNpb25zIChA cHhyZWZ7Q2hvb3NpbmcgTW9kZXN9KS4KKwogQHZpbmRleCB4cmVmLWF1dG8tanVtcC10by1maXJz dC14cmVmCiAgIElmIHRoZSB2YWx1ZSBvZiB0aGUgdmFyaWFibGUgQGNvZGV7eHJlZi1hdXRvLWp1 bXAtdG8tZmlyc3QteHJlZn0gaXMKIEBjb2Rle3R9LCBAY29kZXt4cmVmLWZpbmQtcmVmZXJlbmNl c30gYXV0b21hdGljYWxseSBqdW1wcyB0byB0aGUgZmlyc3QKQEAgLTI3NDcsMTAgKzI3NTYsMzIg QEAgVGFnIFN5bnRheAogQGl0ZW0KIEluIEBMYVRlWHt9IGRvY3VtZW50cywgdGhlIGFyZ3VtZW50 cyBmb3IgQGNvZGV7XGNoYXB0ZXJ9LAogQGNvZGV7XHNlY3Rpb259LCBAY29kZXtcc3Vic2VjdGlv bn0sIEBjb2Rle1xzdWJzdWJzZWN0aW9ufSwKLUBjb2Rle1xlcW5vfSwgQGNvZGV7XGxhYmVsfSwg QGNvZGV7XHJlZn0sIEBjb2Rle1xjaXRlfSwKLUBjb2Rle1xiaWJpdGVtfSwgQGNvZGV7XHBhcnR9 LCBAY29kZXtcYXBwZW5kaXh9LCBAY29kZXtcZW50cnl9LAotQGNvZGV7XGluZGV4fSwgQGNvZGV7 XGRlZn0sIEBjb2Rle1xuZXdjb21tYW5kfSwgQGNvZGV7XHJlbmV3Y29tbWFuZH0sCi1AY29kZXtc bmV3ZW52aXJvbm1lbnR9IGFuZCBAY29kZXtccmVuZXdlbnZpcm9ubWVudH0gYXJlIHRhZ3MuCitA Y29kZXtcZXFub30sIEBjb2Rle1xsYWJlbH0sIEBjb2Rle1xyZWZ9LCBAY29kZXtcUmVmfSwgQGNv ZGV7XGZvb3RyZWZ9LAorQGNvZGV7XGNpdGV9LCBAY29kZXtcYmliaXRlbX0sIEBjb2Rle1xwYXJ0 fSwgQGNvZGV7XGFwcGVuZGl4fSwKK0Bjb2Rle1xlbnRyeX0sIEBjb2Rle1xpbmRleH0sIEBjb2Rl e1xkZWZ9LCBAY29kZXtcZWRlZn0sIEBjb2Rle1xnZGVmfSwKK0Bjb2Rle1x4ZGVmfSwgQGNvZGV7 XG5ld2NvbW1hbmR9LCBAY29kZXtccmVuZXdjb21tYW5kfSwKK0Bjb2Rle1xuZXdlbnZpcm9ubWVu dH0sIEBjb2Rle1xyZW5ld2Vudmlyb25tZW50fSwKK0Bjb2Rle1xEZWNsYXJlUm9idXN0Q29tbWFu ZH0sIEBjb2Rle1xuZXdyb2J1c3RjbWR9LAorQGNvZGV7XHJlbmV3cm9idXN0Y21kfSwgQGNvZGV7 XHByb3ZpZGVjb21tYW5kfSwKK0Bjb2Rle1xwcm92aWRlcm9idXN0Y21kfSwgQGNvZGV7XE5ld0Rv Y3VtZW50Q29tbWFuZH0sCitAY29kZXtcUmVuZXdEb2N1bWVudENvbW1hbmR9LCBAY29kZXtcUHJv dmlkZURvY3VtZW50Q29tbWFuZH0sCitAY29kZXtcRGVjbGFyZURvY3VtZW50Q29tbWFuZH0sIEBj b2Rle1xOZXdFeHBhbmRhYmxlRG9jdW1lbnRDb21tYW5kfSwKK0Bjb2Rle1xSZW5ld0V4cGFuZGFi bGVEb2N1bWVudENvbW1hbmR9LAorQGNvZGV7XFByb3ZpZGVFeHBhbmRhYmxlRG9jdW1lbnRDb21t YW5kfSwKK0Bjb2Rle1xEZWNsYXJlRXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZH0sCitAY29kZXtc TmV3RG9jdW1lbnRFbnZpcm9ubWVudH0sIEBjb2Rle1xSZW5ld0RvY3VtZW50RW52aXJvbm1lbnR9 LAorQGNvZGV7XFByb3ZpZGVEb2N1bWVudEVudmlyb25tZW50fSwgQGNvZGV7XERlY2xhcmVEb2N1 bWVudEVudmlyb25tZW50fSwKK0Bjb2Rle1xjc2RlZn0sIEBjb2Rle1xjc2VkZWZ9LCBAY29kZXtc Y3NnZGVmfSwgQGNvZGV7XGNzeGRlZn0sCitAY29kZXtcY3NsZXRjc30sIEBjb2Rle1xjc2xldH0s IEBjb2Rle1xsZXRjc30sIEBjb2Rle1xsZXR9LAorQGNvZGV7XGNzX25ld19wcm90ZWN0ZWRfbm9w YXJ9LCBAY29kZXtcY3NfbmV3X3Byb3RlY3RlZH0sCitAY29kZXtcY3NfbmV3X25vcGFyfSwgQGNv ZGV7XGNzX25ld19lcX0sIEBjb2Rle1xjc19uZXd9LAorQGNvZGV7XGNzX3NldF9wcm90ZWN0ZWRf bm9wYXJ9LCBAY29kZXtcY3Nfc2V0X3Byb3RlY3RlZH0sCitAY29kZXtcY3Nfc2V0X25vcGFyfSwg QGNvZGV7XGNzX3NldF9lcX0sIEBjb2Rle1xjc19zZXR9LAorQGNvZGV7XGNzX2dzZXRfcHJvdGVj dGVkX25vcGFyfSwgQGNvZGV7XGNzX2dzZXRfcHJvdGVjdGVkfSwKK0Bjb2Rle1xjc19nc2V0X25v cGFyfSwgQGNvZGV7XGNzX2dzZXRfZXF9LCBAY29kZXtcY3NfZ3NldH0sCitAY29kZXtcY3NfZ2Vu ZXJhdGVfZnJvbV9hcmdfY291bnR9LCBhbmQgQGNvZGV7XGNzX2dlbmVyYXRlX3ZhcmlhbnR9IGFy ZQordGFncy4gIFNvIHRvbyBhcmUgdGhlIGFyZ3VtZW50cyBvZiBhbnkgc3RhcnJlZCB2YXJpYW50 cyBvZiB0aGVzZQorY29tbWFuZHMuCiAKIE90aGVyIGNvbW1hbmRzIGNhbiBtYWtlIHRhZ3MgYXMg d2VsbCwgaWYgeW91IHNwZWNpZnkgdGhlbSBpbiB0aGUKIGVudmlyb25tZW50IHZhcmlhYmxlIEBl bnZ7VEVYVEFHU30gYmVmb3JlIGludm9raW5nIEBjb21tYW5ke2V0YWdzfS4gIFRoZQpkaWZmIC0t Z2l0IGEvZXRjL05FV1MgYi9ldGMvTkVXUwppbmRleCA5NDU1N2ZkZDI1NS4uYWM1ZDUyMDUzZGUg MTAwNjQ0Ci0tLSBhL2V0Yy9ORVdTCisrKyBiL2V0Yy9ORVdTCkBAIC0xODgyLDYgKzE4ODIsMTUg QEAgQnkgZGVmYXVsdCBpdCByZXRhaW5zIHRoZSBwcmV2aW91cyBiZWhhdmlvcjogcmVhZCB0aGUg Y29udGVudHMgb2YKIEdlbWZpbGUgYW5kIGFjdCBhY2NvcmRpbmdseS4gIEJ1dCB5b3UgY2FuIGFs c28gc2V0IGl0IHRvIHQgb3IgbmlsIHRvCiBza2lwIHRoZSBjaGVjay4KIAorKiogVGVYIG1vZGVz CisKKysrKworKioqIE5ldyB4cmVmIGJhY2tlbmQgZm9yIFRlWCBtb2Rlcy4KK1RoZSBuZXcgYmFj a2VuZCAoJ3RleC1ldGFncycpIGlzIG9uIGJ5IGRlZmF1bHQsIGFuZCBpbXByb3ZlcyB0aGUKK2Z1 bmN0aW9uYWxpdHkgb2YgdGhlIHN0YW5kYXJkICd4cmVmJyBjb21tYW5kcyBpbiBUZVggYnVmZmVy cy4gIFlvdSBjYW4KK3Jlc3RvcmUgdGhlIHN0YW5kYXJkICdldGFncycgYmFja2VuZCB3aXRoIHRo ZSAnTS14IHhyZWYtZXRhZ3MtbW9kZScKK3RvZ2dsZS4KKwogKiogVGhpbmdhdHB0CiAKIC0tLQpk aWZmIC0tZ2l0IGEvbGliLXNyYy9ldGFncy5jIGIvbGliLXNyYy9ldGFncy5jCmluZGV4IDAzYmM1 NWRlMDNkLi5iZGIxMWMwOWViNyAxMDA2NDQKLS0tIGEvbGliLXNyYy9ldGFncy5jCisrKyBiL2xp Yi1zcmMvZXRhZ3MuYwpAQCAtNzkzLDExICs3OTMsMjcgQEAgI2RlZmluZSBTVERJTiAweDEwMDEJ CS8qIHJldHVybmVkIGJ5IGdldG9wdF9sb25nIG9uIC0tcGFyc2Utc3RkaW4gKi8KIHN0YXRpYyBj b25zdCBjaGFyICpUZVhfc3VmZml4ZXMgW10gPQogICB7ICJiaWIiLCAiY2xvIiwgImNscyIsICJs dHgiLCAic3R5IiwgIlRlWCIsICJ0ZXgiLCBOVUxMIH07CiBzdGF0aWMgY29uc3QgY2hhciBUZVhf aGVscCBbXSA9Ci0iSW4gTGFUZVggdGV4dCwgdGhlIGFyZ3VtZW50IG9mIGFueSBvZiB0aGUgY29t bWFuZHMgJ1xcY2hhcHRlcicsXG5cCi0nXFxzZWN0aW9uJywgJ1xcc3Vic2VjdGlvbicsICdcXHN1 YnN1YnNlY3Rpb24nLCAnXFxlcW5vJywgJ1xcbGFiZWwnLFxuXAotJ1xccmVmJywgJ1xcY2l0ZScs ICdcXGJpYml0ZW0nLCAnXFxwYXJ0JywgJ1xcYXBwZW5kaXgnLCAnXFxlbnRyeScsXG5cCi0nXFxp bmRleCcsICdcXGRlZicsICdcXG5ld2NvbW1hbmQnLCAnXFxyZW5ld2NvbW1hbmQnLFxuXAotJ1xc bmV3ZW52aXJvbm1lbnQnIG9yICdcXHJlbmV3ZW52aXJvbm1lbnQnIGlzIGEgdGFnLlxuXAorIklu IExhVGVYIHRleHQsIHRoZSBhcmd1bWVudCBvZiB0aGUgY29tbWFuZHMgJ1xcY2hhcHRlcicsICdc XHNlY3Rpb24nLFxuXAorJ1xcc3Vic2VjdGlvbicsICdcXHN1YnN1YnNlY3Rpb24nLCAnXFxlcW5v JywgJ1xcbGFiZWwnLCAnXFxyZWYnLFxuXAorJ1xcUmVmJywgJ1xcZm9vdHJlZicsICdcXGNpdGUn LCAnXFxiaWJpdGVtJywgJ1xccGFydCcsICdcXGFwcGVuZGl4JyxcblwKKydcXGVudHJ5JywgJ1xc aW5kZXgnLCAnXFxkZWYnLCAnXFxlZGVmJywgJ1xcZ2RlZicsICdcXHhkZWYnLFxuXAorJ1xcbmV3 Y29tbWFuZCcsICdcXHJlbmV3Y29tbWFuZCcsICdcXG5ld3JvYnVzdGNtZCcsICdcXHJlbmV3cm9i dXN0Y21kJyxcblwKKydcXG5ld2Vudmlyb25tZW50JywgJ1xccmVuZXdlbnZpcm9ubWVudCcsICdc XERlY2xhcmVSb2J1c3RDb21tYW5kJyxcblwKKydcXHByb3ZpZGVjb21tYW5kJywgJ1xccHJvdmlk ZXJvYnVzdGNtZCcsICdcXE5ld0RvY3VtZW50Q29tbWFuZCcsXG5cCisnXFxSZW5ld0RvY3VtZW50 Q29tbWFuZCcsICdcXFByb3ZpZGVEb2N1bWVudENvbW1hbmQnLFxuXAorJ1xcRGVjbGFyZURvY3Vt ZW50Q29tbWFuZCcsICdcXE5ld0V4cGFuZGFibGVEb2N1bWVudENvbW1hbmQnLFxuXAorJ1xcUmVu ZXdFeHBhbmRhYmxlRG9jdW1lbnRDb21tYW5kJywgJ1xcUHJvdmlkZUV4cGFuZGFibGVEb2N1bWVu dENvbW1hbmQnLFxuXAorJ1xcRGVjbGFyZUV4cGFuZGFibGVEb2N1bWVudENvbW1hbmQnLCAnXFxO ZXdEb2N1bWVudEVudmlyb25tZW50JyxcblwKKydcXFJlbmV3RG9jdW1lbnRFbnZpcm9ubWVudCcs ICdcXFByb3ZpZGVEb2N1bWVudEVudmlyb25tZW50JyxcblwKKydcXERlY2xhcmVEb2N1bWVudEVu dmlyb25tZW50JywnXFxjc2RlZicsICdcXGNzZWRlZicsICdcXGNzZ2RlZicsXG5cCisnXFxjc3hk ZWYnLCAnXFxjc2xldGNzJywgJ1xcY3NsZXQnLCAnXFxsZXRjcycsICdcXGxldCcsXG5cCisnXFxj c19uZXdfcHJvdGVjdGVkX25vcGFyJywgJ1xcY3NfbmV3X3Byb3RlY3RlZCcsICdcXGNzX25ld19u b3BhcicsXG5cCisnXFxjc19uZXdfZXEnLCAnXFxjc19uZXcnLCAnXFxjc19zZXRfcHJvdGVjdGVk X25vcGFyJyxcblwKKydcXGNzX3NldF9wcm90ZWN0ZWQnLCAnXFxjc19zZXRfbm9wYXInLCAnXFxj c19zZXRfZXEnLCAnXFxjc19zZXQnLFxuXAorJ1xcY3NfZ3NldF9wcm90ZWN0ZWRfbm9wYXInLCAn XFxjc19nc2V0X3Byb3RlY3RlZCcsICdcXGNzX2dzZXRfbm9wYXInLFxuXAorJ1xcY3NfZ3NldF9l cScsICdcXGNzX2dzZXQnLCAnXFxjc19nZW5lcmF0ZV9mcm9tX2FyZ19jb3VudCcsIG9yXG5cCisn XFxjc19nZW5lcmF0ZV92YXJpYW50JyBpcyBhIHRhZy4gIFNvIGlzIHRoZSBhcmd1bWVudCBvZiBh bnkgc3RhcnJlZFxuXAordmFyaWFudCBvZiB0aGVzZSBjb21tYW5kcy5cblwKIFxuXAogT3RoZXIg Y29tbWFuZHMgY2FuIGJlIHNwZWNpZmllZCBieSBzZXR0aW5nIHRoZSBlbnZpcm9ubWVudCB2YXJp YWJsZVxuXAogJ1RFWFRBR1MnIHRvIGEgY29sb24tc2VwYXJhdGVkIGxpc3QgbGlrZSwgZm9yIGV4 YW1wbGUsXG5cCkBAIC01NzQyLDkgKzU3NTgsMjAgQEAgU2NoZW1lX2Z1bmN0aW9ucyAoRklMRSAq aW5mKQogLyogRGVmYXVsdCBzZXQgb2YgY29udHJvbCBzZXF1ZW5jZXMgdG8gcHV0IGludG8gVEVY X3Rva3RhYi4KICAgIFRoZSB2YWx1ZSBvZiBlbnZpcm9ubWVudCB2YXIgVEVYVEFHUyBpcyBwcmVw ZW5kZWQgdG8gdGhpcy4gICovCiBzdGF0aWMgY29uc3QgY2hhciAqVEVYX2RlZmVudiA9ICJcCi06 Y2hhcHRlcjpzZWN0aW9uOnN1YnNlY3Rpb246c3Vic3Vic2VjdGlvbjplcW5vOmxhYmVsOnJlZjpj aXRlOmJpYml0ZW1cCi06cGFydDphcHBlbmRpeDplbnRyeTppbmRleDpkZWZcCi06bmV3Y29tbWFu ZDpyZW5ld2NvbW1hbmQ6bmV3ZW52aXJvbm1lbnQ6cmVuZXdlbnZpcm9ubWVudCI7Cis6bGFiZWw6 cmVmOlJlZjpmb290cmVmOmNoYXB0ZXI6c2VjdGlvbjpzdWJzZWN0aW9uOnN1YnN1YnNlY3Rpb246 ZXFubzpjaXRlXAorOmJpYml0ZW06cGFydDphcHBlbmRpeDplbnRyeTppbmRleDpkZWY6ZWRlZjpn ZGVmOnhkZWY6bmV3Y29tbWFuZDpyZW5ld2NvbW1hbmRcCis6bmV3ZW52aXJvbm1lbnQ6cmVuZXdl bnZpcm9ubWVudDpEZWNsYXJlUm9idXN0Q29tbWFuZDpyZW5ld3JvYnVzdGNtZFwKKzpuZXdyb2J1 c3RjbWQ6cHJvdmlkZWNvbW1hbmQ6cHJvdmlkZXJvYnVzdGNtZDpOZXdEb2N1bWVudENvbW1hbmRc Cis6UmVuZXdEb2N1bWVudENvbW1hbmQ6UHJvdmlkZURvY3VtZW50Q29tbWFuZDpEZWNsYXJlRG9j dW1lbnRDb21tYW5kXAorOk5ld0V4cGFuZGFibGVEb2N1bWVudENvbW1hbmQ6UmVuZXdFeHBhbmRh YmxlRG9jdW1lbnRDb21tYW5kXAorOlByb3ZpZGVFeHBhbmRhYmxlRG9jdW1lbnRDb21tYW5kOkRl Y2xhcmVFeHBhbmRhYmxlRG9jdW1lbnRDb21tYW5kXAorOk5ld0RvY3VtZW50RW52aXJvbm1lbnQ6 UmVuZXdEb2N1bWVudEVudmlyb25tZW50XAorOlByb3ZpZGVEb2N1bWVudEVudmlyb25tZW50OkRl Y2xhcmVEb2N1bWVudEVudmlyb25tZW50OmNzZGVmXAorOmNzZWRlZjpjc2dkZWY6Y3N4ZGVmOmNz bGV0Y3M6Y3NsZXQ6bGV0Y3M6bGV0OmNzX25ld19wcm90ZWN0ZWRfbm9wYXJcCis6Y3NfbmV3X3By b3RlY3RlZDpjc19uZXdfbm9wYXI6Y3NfbmV3X2VxOmNzX25ldzpjc19zZXRfcHJvdGVjdGVkX25v cGFyXAorOmNzX3NldF9wcm90ZWN0ZWQ6Y3Nfc2V0X25vcGFyOmNzX3NldF9lcTpjc19zZXQ6Y3Nf Z3NldF9wcm90ZWN0ZWRfbm9wYXJcCis6Y3NfZ3NldF9wcm90ZWN0ZWQ6Y3NfZ3NldF9ub3Bhcjpj c19nc2V0X2VxOmNzX2dzZXRcCis6Y3NfZ2VuZXJhdGVfZnJvbV9hcmdfY291bnQ6Y3NfZ2VuZXJh dGVfdmFyaWFudCI7CiAKIHN0YXRpYyB2b2lkIFRFWF9kZWNvZGVfZW52IChjb25zdCBjaGFyICos IGNvbnN0IGNoYXIgKik7CiAKQEAgLTU4MDMsMTkgKzU4MzAsMTM5IEBAIFRlWF9jb21tYW5kcyAo RklMRSAqaW5mKQogCSAgICAgIHsKIAkJY2hhciAqcDsKIAkJcHRyZGlmZl90IG5hbWVsZW4sIGxp bmVsZW47Ci0JCWJvb2wgb3BncnAgPSBmYWxzZTsKKwkJYm9vbCBvcGdycCA9IGZhbHNlLCBvbmVf ZXNjID0gZmFsc2UsIGlzX2V4cGx0aHJlZSA9IGZhbHNlOwogCiAJCWNwID0gc2tpcF9zcGFjZXMg KGNwICsga2V5LT5sZW4pOworCisJCS8qIDEuIFRoZSBjYW5vbmljYWwgZXhwbDMgc3ludGF4IGxv b2tzIHNvbWV0aGluZyBsaWtlIHRoaXM6CisJCSAgIFxjc19uZXc6TnBuIFxfX2hvb2tfdGxfZ3B1 dDpObiB7IFxFUlJPUiB9LiAgRmlyc3QsIGlmIHdlCisJCSAgIHdhbnQgdG8gdGFnIGFueSBzdWNo IGNvbW1hbmRzLCB3ZSBpbmNsdWRlIG9ubHkgdGhlIHBhcnQKKwkJICAgYmVmb3JlIHRoZSBjb2xv biAoY3NfbmV3KSBpbiBURVhfZGVmZW52IG9yIFRFWFRBR1MuICBTZWNvbmQsCisJCSAgIGV0YWdz IHNraXBzIHRoZSBhcmd1bWVudCBzcGVjaWZpZXIgKGluY2x1ZGluZyB0aGUgY29sb24pCisJCSAg IGFmdGVyIHRoZSB0YWcgdG9rZW4sIHNvIHRoYXQgaXQgZG9lc24ndCBiZWNvbWUgdGhlIHRhZyBu YW1lLgorCQkgICBUaGlyZCwgd2Ugc2V0IHRoZSBib29sZWFuICdpc19leHBsdGhyZWUnIHRvIHRy dWUgc28gdGhhdCB3ZQorCQkgICBjYW4gcmVtb3ZlIHRoZSBhcmd1bWVudCBzcGVjaWZpZXIgZnJv bSB0aGUgYWN0dWFsIHRhZyBuYW1lCisJCSAgIChfX2hvb2tfdGxfZ3B1dCkuICBUaGlzIGFsbCBh bGxvd3MgdXMgdG8gaW5jbHVkZSBleHBsMworCQkgICBjb25zdHJ1Y3RzIGluIFRFWF9kZWZlbnYg b3IgaW4gdGhlIGVudmlyb25tZW50IHZhcmlhYmxlCisJCSAgIFRFWFRBR1Mgd2l0aG91dCByZXF1 aXJpbmcgYSBjaGFuZ2Ugb2Ygc2VwYXJhdG9yLCBhbmQgaXQgYWxzbworCQkgICBhbGxvd3MgdXMg dG8gZmluZCB0aGUgZGVmaW5pdGlvbiBvZiB2YXJpYW50IGNvbW1hbmRzICh3aXRoCisJCSAgIGRp ZmZlcmVudCBhcmd1bWVudCBzcGVjaWZpZXJzKSBkZWZpbmVkIHVzaW5nLCBmb3IgZXhhbXBsZSwK KwkJICAgXGNzX2dlbmVyYXRlX3ZhcmlhbnQ6Tm4uICBQbGVhc2Ugbm90ZSB0aGF0IHRoZSBleHBs MyBzcGVjCisJCSAgIHJlcXVpcmVzIGV0YWdzIHRvIHBheSBtb3JlIGF0dGVudGlvbiB0byB3aGl0 ZXNwYWNlIGluIHRoZQorCQkgICBjb2RlLgorCisJCSAgIDIuIFdlIGFsc28gYXV0b21hdGljYWxs eSByZW1vdmUgdGhlIGFzdGVyaXNrIGZyb20gc3RhcnJlZAorCQkgICB2YXJpYW50cyBvZiBhbGwg Y29tbWFuZHMsIHdpdGhvdXQgdGhlIG5lZWQgdG8gaW5jbHVkZSB0aGUKKwkJICAgc3RhcnJlZCBj b21tYW5kcyBleHBsaWNpdGx5IGluIFRFWF9kZWZlbnYgb3IgVEVYVEFHUy4gKi8KKwkJaWYgKCpj cCA9PSAnOicpCisJCSAgeworCQkgICAgd2hpbGUgKCFjX2lzc3BhY2UgKCpjcCkgJiYgKmNwICE9 IFRFWF9vcGdycCkKKwkJICAgICAgY3ArKzsKKwkJICAgIGNwID0gc2tpcF9zcGFjZXMgKGNwKTsK KwkJICAgIGlzX2V4cGx0aHJlZSA9IHRydWU7CisJCSAgfQorCQllbHNlIGlmICgqY3AgPT0gJyon KQorCQkgIGNwKys7CisKKwkJLyogU2tpcCB0aGUgb3B0aW9uYWwgYXJndW1lbnRzIHRvIGNvbW1h bmRzIGluIHRoZSB0YWdzIGxpc3Qgc28KKwkJICAgdGhhdCB0aGVzZSBhcmd1bWVudHMgZG9uJ3Qg ZW5kIHVwIGFzIHRoZSBuYW1lIG9mIHRoZSB0YWcuCisJCSAgIFRoZSBuYW1lIHdpbGwgaW5zdGVh ZCBjb21lIGZyb20gdGhlIGFyZ3VtZW50IGluIGN1cmx5IGJyYWNlcworCQkgICB0aGF0IGZvbGxv d3MgdGhlIG9wdGlvbmFsIG9uZXMuICBUaGUgJ1xsZXQnIGNvbW1hbmQgZ2V0cworCQkgICBzcGVj aWFsIHRyZWF0bWVudC4gKi8KKwkJd2hpbGUgKCpjcCAhPSAnXDAnICYmICpjcCAhPSAnJScKKwkJ ICAgICAgICYmICFzdHJlcSAoa2V5LT5idWZmZXIsICJsZXQiKSkKKwkJICB7CisJCSAgICBpZiAo KmNwID09ICdbJykKKwkJICAgICAgeworCQkJd2hpbGUgKCpjcCAhPSAnXScgJiYgKmNwICE9ICdc MCcgJiYgKmNwICE9ICclJykKKwkJCSAgY3ArKzsKKwkJICAgICAgfQorCQkgICAgZWxzZSBpZiAo KmNwID09ICcoJykKKwkJICAgICAgeworCQkJd2hpbGUgKCpjcCAhPSAnKScgJiYgKmNwICE9ICdc MCcgJiYgKmNwICE9ICclJykKKwkJCSAgY3ArKzsKKwkJICAgICAgfQorCQkgICAgZWxzZSBpZiAo KmNwID09ICddJyB8fCAqY3AgPT0gJyknKQorCQkgICAgICBjcCsrOworCQkgICAgZWxzZQorCQkg ICAgICBicmVhazsKKwkJICB9CiAJCWlmICgqY3AgPT0gVEVYX29wZ3JwKQogCQkgIHsKIAkJICAg IG9wZ3JwID0gdHJ1ZTsKIAkJICAgIGNwKys7CisJCSAgICBjcCA9IHNraXBfc3BhY2VzIChjcCk7 IC8qIEZvciBleHBsMyBjb2RlLiAqLwogCQkgIH0KKworCQkvKiBSZW1vdmluZyB0aGUgVGVYIGVz Y2FwZSBjaGFyYWN0ZXIgZnJvbSB0YWcgbmFtZXMgc2ltcGxpZmllcworCQkgICB0aGluZ3MgZm9y IGVkaXRvcnMgZmluZGluZyB0YWdnZWQgY29tbWFuZHMgaW4gVGVYIGJ1ZmZlcnMuCisJCSAgIFRo aXMgYXBwbGllcyB0byBFbWFjcyBidXQgYWxzbyB0byB0aGUgdGFnLWZpbmRpbmcgYmVoYXZpb3IK KwkJICAgb2YgYXQgbGVhc3Qgc29tZSBvZiB0aGUgZWRpdG9ycyB0aGF0IHVzZSBjdGFncywgdGhv dWdoIGluCisJCSAgIHRoZSBsYXR0ZXIgY2FzZSB0aGlzIHdpbGwgcmVtYWluIHN1Ym9wdGltYWwu ICBUaGUKKwkJICAgdW5kb2N1bWVudGVkIGN0YWdzIG9wdGlvbiAnLS1uby1kdXBsaWNhdGVzJyBt YXkgaGVscC4gKi8KKwkJaWYgKCpjcCA9PSBURVhfZXNjKQorCQkgIHsKKwkJICAgIGNwKys7CisJ CSAgICBvbmVfZXNjID0gdHJ1ZTsKKwkJICB9CisKKwkJLyogVGVzdGluZyAhY19pc3NwYWNlICYm ICFjX2lzcHVuY3QgaXMgc2ltcGxlciwgYnV0IGhhbHRzCisJCSAgIHByb2Nlc3NpbmcgYXQgdG9v IG1hbnkgcGxhY2VzLiAgVGhlIGxpc3QgYXMgaXQgc3RhbmRzIHRyaWVzCisJCSAgIGJvdGggdG8g ZW5zdXJlIHRoYXQgdGFnIG5hbWVzIHdpbGwgZGVyaXZlIGZyb20gbWFjcm8gbmFtZXMKKwkJICAg cmF0aGVyIHRoYW4gZnJvbSBvcHRpb25hbCBwYXJhbWV0ZXJzIHRvIHRob3NlIG1hY3JvcywgYW5k CisJCSAgIGFsc28gdG8gcmV0dXJuIGZpbmRhYmxlIG5hbWVzIHdoaWxlIHN0aWxsIGFsbG93aW5n IGZvcgorCQkgICB1bm9ydGhvZG94IGNvbnN0cnVjdHMuICovCiAJCWZvciAocCA9IGNwOwotCQkg ICAgICghY19pc3NwYWNlICgqcCkgJiYgKnAgIT0gJyMnICYmCi0JCSAgICAgICpwICE9IFRFWF9v cGdycCAmJiAqcCAhPSBURVhfY2xncnApOworCQkgICAgICghY19pc3NwYWNlICgqcCkgJiYgKnAg IT0gJyMnICYmICpwICE9ICc9JyAmJgorCQkgICAgICAqcCAhPSAnWycgJiYgKnAgIT0gJygnICYm ICpwICE9IFRFWF9vcGdycCAmJgorCQkgICAgICAqcCAhPSBURVhfY2xncnAgJiYgKnAgIT0gJyIn ICYmICpwICE9ICdcJycgJiYKKwkJICAgICAgKnAgIT0gJyUnICYmICpwICE9ICcsJyAmJiAqcCAh PSAnfCcgJiYgKnAgIT0gJyQnKTsKIAkJICAgICBwKyspCi0JCSAgY29udGludWU7CisJCSAgLyog SW4gZXhwbDMgY29kZSB3ZSByZW1vdmUgdGhlIGFyZ3VtZW50IHNwZWNpZmljYXRpb24gZnJvbQor CQkgICAgIHRoZSB0YWcgbmFtZS4gIE1vcmUgZ2VuZXJhbGx5IHdlIGFsbG93IG9ubHkgb25lIChk ZWxldGVkKQorCQkgICAgIGVzY2FwZSBjaGFyIGluIGEgdGFnIG5hbWUsIHdoaWNoIChwcmltYXJp bHkpIGVuYWJsZXMKKwkJICAgICB0YWdnaW5nIGEgVGVYIGNvbW1hbmQncyBkaWZmZXJlbnQsIHBv c3NpYmx5IHRlbXBvcmFyeSwKKwkJICAgICAnXGxldCcgYmluZGluZ3MuICovCisJCSAgaWYgKGlz X2V4cGx0aHJlZSAmJiAqcCA9PSAnOicpCisJCSAgICBicmVhazsKKwkJICBlbHNlIGlmICgqcCA9 PSBURVhfZXNjKQorCQkgICAgeyAvKiBTZWNvbmQgcGFydCBvZiB0ZXN0IGlzIGZvciwgZS5nLiwg XGNzbGV0LiAqLworCQkgICAgICBpZiAoIW9uZV9lc2MgJiYgIW9wZ3JwKQorCQkJeworCQkJICBv bmVfZXNjID0gdHJ1ZTsKKwkJCSAgY29udGludWU7CisJCQl9CisJCSAgICAgIGVsc2UKKwkJCWJy ZWFrOworCQkgICAgfQorCQkgIGVsc2UKKwkJICAgIGNvbnRpbnVlOworCQkvKiBGb3IgVGVYIGZp bGVzLCB0YWdzIHdpdGhvdXQgYSBuYW1lIGFyZSBiYXNpY2FsbHkgY3J1ZnQsIGFuZAorCQkgICBp biBzb21lIHNpdHVhdGlvbnMgdGhleSBjYW4gcHJvZHVjZSBzcHVyaW91cyBhbmQgY29uZnVzaW5n CisJCSAgIG1hdGNoZXMuICBUcnkgdG8gY2F0Y2ggYXMgbWFueSBjYXNlcyBhcyBwb3NzaWJsZSB3 aGVyZSBhCisJCSAgIGNvbW1hbmQgbmFtZSBpcyBvZiB0aGUgZm9ybSAnXCgnLCBidXQgYXZvaWQs IGFzIGZhciBhcworCQkgICBwb3NzaWJsZSwgdGhlIHNwdXJpb3VzIG1hdGNoZXMuICovCisJCWlm IChwID09IGNwKQorCQkgIHsKKwkJICAgIHN3aXRjaCAoKnApCisJCSAgICAgIHsgLyogSW5jbHVk ZSA9PyAqLworCQkgICAgICBjYXNlICcoJzogY2FzZSAnWyc6IGNhc2UgJyInOiBjYXNlICdcJyc6 CisJCSAgICAgIGNhc2UgJ1xcJzogY2FzZSAnISc6IGNhc2UgJz0nOiBjYXNlICcsJzoKKwkJICAg ICAgY2FzZSAnfCc6IGNhc2UgJyQnOgorCQkJcCsrOworCQkJYnJlYWs7CisJCSAgICAgIGNhc2Ug J3snOiBjYXNlICd9JzogY2FzZSAnPCc6IGNhc2UgJz4nOgorCQkJaWYgKCFvcGdycCkKKwkJCSAg eworCQkJICAgICAgcCsrOworCQkJICAgICAgaWYgKCpwID09ICdcMCcgfHwgKnAgPT0gJyUnKQor CQkJCWdvdG8gdGV4X25leHRfbGluZTsKKwkJCSAgfQorCQkJYnJlYWs7CisJCSAgICAgIGRlZmF1 bHQ6CisJCQlicmVhazsKKwkJICAgICAgfQorCQkgIH0KIAkJbmFtZWxlbiA9IHAgLSBjcDsKIAkJ bGluZWxlbiA9IGxiLmxlbjsKIAkJaWYgKCFvcGdycCB8fCAqcCA9PSBURVhfY2xncnApCkBAIC01 ODI0LDkgKzU5NzEsMTggQEAgVGVYX2NvbW1hbmRzIChGSUxFICppbmYpCiAJCSAgICAgIHArKzsK IAkJICAgIGxpbmVsZW4gPSBwIC0gbGIuYnVmZmVyICsgMTsKIAkJICB9Ci0JCW1ha2VfdGFnIChj cCwgbmFtZWxlbiwgdHJ1ZSwKLQkJCSAgbGIuYnVmZmVyLCBsaW5lbGVuLCBsaW5lbm8sIGxpbmVj aGFybm8pOwotCQlnb3RvIHRleF9uZXh0X2xpbmU7IC8qIFdlIG9ubHkgdGFnIGEgbGluZSBvbmNl ICovCisJCWlmIChuYW1lbGVuKQorCQkgIG1ha2VfdGFnIChjcCwgbmFtZWxlbiwgdHJ1ZSwKKwkJ CSAgICBsYi5idWZmZXIsIGxpbmVsZW4sIGxpbmVubywgbGluZWNoYXJubyk7CisJCS8qIExpbmVz IHdpdGggbW9yZSB0aGFuIG9uZSBcZGVmIG9yIFxsZXQgYXJlIHN1cnByaXNpbmdseQorCQkgICBj b21tb24gaW4gVGVYIGZpbGVzLCBlc3BlY2lhbGx5IGluIHRoZSBzeXN0ZW0gZmlsZXMgdGhhdAor CQkgICBmb3JtIHRoZSBiYXNpcyBvZiB0aGUgdmFyaW91cyBUZVggZm9ybWF0cy4gIFRoaXMgdGFn cyB0aGVtCisJCSAgIGFsbC4gKi8KKwkJLyogZ290byB0ZXhfbmV4dF9saW5lOyAvXCogV2Ugb25s eSB0YWcgYSBsaW5lIG9uY2UgKlwvICovCisJCXdoaWxlICgqY3AgIT0gJ1wwJyAmJiAqY3AgIT0g JyUnICYmICpjcCAhPSBURVhfZXNjKQorCQkgIGNwKys7CisJCWlmICgqY3AgIT0gVEVYX2VzYykK KwkJICBnb3RvIHRleF9uZXh0X2xpbmU7CiAJICAgICAgfQogCX0KICAgICB0ZXhfbmV4dF9saW5l OgpkaWZmIC0tZ2l0IGEvbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwgYi9saXNwL3RleHRtb2Rl cy90ZXgtbW9kZS5lbAppbmRleCA5N2M5NTAyNjdjNi4uMmI0YmE2NmUwZTMgMTAwNjQ0Ci0tLSBh L2xpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsCisrKyBiL2xpc3AvdGV4dG1vZGVzL3RleC1tb2Rl LmVsCkBAIC02MzYsNiArNjM2LDE0IEBAIHRleC1mb250LWxvY2sta2V5d29yZHMtMgogCSAgICAg IDMgJyh0ZXgtZm9udC1sb2NrLWFwcGVuZC1wcm9wICdib2xkKSAnYXBwZW5kKSkpKSkKICAgICJH YXVkeSBleHByZXNzaW9ucyB0byBoaWdobGlnaHQgaW4gVGVYIG1vZGVzLiIpCiAKKyhkZWZ2YXIt bG9jYWwgdGV4LWV4cGwtcmVnaW9uLWxpc3QgbmlsCisgICJMaXN0IG9mIHJlZ2lvbiBib3VuZGFy aWVzIHdoZXJlIGV4cGwzIHN5bnRheCBpcyBhY3RpdmUuCitJdCB3aWxsIGJlIG5pbCBpbiBidWZm ZXJzIHZpc2l0aW5nIGZpbGVzIHdoaWNoIHVzZSBleHBsMyBzeW50YXgKK3Rocm91Z2hvdXQsIGZv ciBleGFtcGxlLCBleHBsMyBjbGFzc2VzIG9yIHBhY2thZ2VzLiIpCisKKyhkZWZ2YXItbG9jYWwg dGV4LWV4cGwtYnVmZmVyLXAgbmlsCisgICJOb24tbmlsIGluIGJ1ZmZlcnMgdXNpbmcgZXhwbDMg c3ludGF4IHRocm91Z2hvdXQuIikKKwogKGRlZnVuIHRleC1mb250LWxvY2stc3VzY3JpcHQgKHBv cykKICAgKHVubGVzcyAob3IgKG1lbXEgKGdldC10ZXh0LXByb3BlcnR5IHBvcyAnZmFjZSkKIAkJ ICAgICcoZm9udC1sb2NrLWNvbnN0YW50LWZhY2UgZm9udC1sb2NrLWJ1aWx0aW4tZmFjZQpAQCAt NjQ1LDcgKzY1MywxNyBAQCB0ZXgtZm9udC1sb2NrLXN1c2NyaXB0CiAJCSAgICAocG9zIHBvcykp CiAJCSh3aGlsZSAoZXEgKGNoYXItYmVmb3JlIHBvcykgP1xcKQogCQkgIChzZXRxIHBvcyAoMS0g cG9zKSBvZGQgKG5vdCBvZGQpKSkKLQkJb2RkKSkKKwkJb2RkKQorICAgICAgICAgICAgICA7OyBD aGVjayBpZiBQT1MgaXMgaW4gYW4gZXhwbDMgc3ludGF4IHJlZ2lvbiBvciBhbiBleHBsMyBidWZm ZXIKKyAgICAgICAgICAgICAgKHdoZW4gKGVxIChjaGFyLWFmdGVyIHBvcykgP18pCisgICAgICAg ICAgICAgICAgKG9yIHRleC1leHBsLWJ1ZmZlci1wCisgICAgICAgICAgICAgICAgICAgIChhbmQK KyAgICAgICAgICAgICAgICAgICAgIHRleC1leHBsLXJlZ2lvbi1saXN0CisgICAgICAgICAgICAg ICAgICAgICAoY2F0Y2ggJ3Jlc3VsdAorICAgICAgICAgICAgICAgICAgICAgICAoZG9saXN0IChy YW5nZSB0ZXgtZXhwbC1yZWdpb24tbGlzdCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAoYW5k ICg+IHBvcyAoY2FyIHJhbmdlKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICg8IHBv cyAoY2RyIHJhbmdlKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh0aHJvdyAncmVz dWx0IHQpKSkpKSkpKQogICAgIChpZiAoZXEgKGNoYXItYWZ0ZXIgcG9zKSA/XykKIAlgKGZhY2Ug c3Vic2NyaXB0IGRpc3BsYXkgKHJhaXNlICwoY2FyIHRleC1mb250LXNjcmlwdC1kaXNwbGF5KSkp CiAgICAgICBgKGZhY2Ugc3VwZXJzY3JpcHQgZGlzcGxheSAocmFpc2UgLChjYWRyIHRleC1mb250 LXNjcmlwdC1kaXNwbGF5KSkpKSkpCkBAIC0xMjg5LDggKzEzMDcsMTYgQEAgdGV4LWNvbW1vbi1p bml0aWFsaXphdGlvbgogICAgICAgICAgICAgICAgICMndGV4LS1wcmV0dGlmeS1zeW1ib2xzLWNv bXBvc2UtcCkKICAgKHNldHEtbG9jYWwgc3ludGF4LXByb3BlcnRpemUtZnVuY3Rpb24KIAkgICAg ICAoc3ludGF4LXByb3BlcnRpemUtcnVsZXMgbGF0ZXgtc3ludGF4LXByb3BlcnRpemUtcnVsZXMp KQorICA7OyBEb24ndCBhZGQgZXh0cmEgcHJvY2Vzc2luZyB0byBgc3ludGF4LXByb3BlcnRpemUn IGluIGZpbGVzIHdoZXJlCisgIDs7IGV4cGwzIHN5bnRheCBpcyBhbHdheXMgYWN0aXZlLgorICA6 YWZ0ZXItaG9vayAocHJvZ24gKHRleC1leHBsLWJ1ZmZlci1wYXJzZSkKKyAgICAgICAgICAgICAg ICAgICAgICh1bmxlc3MgdGV4LWV4cGwtYnVmZmVyLXAKKyAgICAgICAgICAgICAgICAgICAgICAg KGFkZC1ob29rICdzeW50YXgtcHJvcGVydGl6ZS1leHRlbmQtcmVnaW9uLWZ1bmN0aW9ucworICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyd0ZXgtZXhwbC1yZWdpb24tc2V0IG5pbCB0 KSkpCiAgIDs7IFRBQnMgaW4gdmVyYmF0aW0gZW52aXJvbm1lbnRzIGRvbid0IGRvIHdoYXQgeW91 IHRoaW5rLgogICAoc2V0cS1sb2NhbCBpbmRlbnQtdGFicy1tb2RlIG5pbCkKKyAgOzsgU2V0IHVw IHhyZWYgYmFja2VuZCBpbiBUZVggYnVmZmVycy4KKyAgKGFkZC1ob29rICd4cmVmLWJhY2tlbmQt ZnVuY3Rpb25zICMndGV4LS14cmVmLWJhY2tlbmQgbmlsIHQpCiAgIDs7IE90aGVyIHZhcnMgdGhh dCBzaG91bGQgYmUgYnVmZmVyLWxvY2FsLgogICAobWFrZS1sb2NhbC12YXJpYWJsZSAndGV4LWNv bW1hbmQpCiAgIChtYWtlLWxvY2FsLXZhcmlhYmxlICd0ZXgtc3RhcnQtb2YtaGVhZGVyKQpAQCAt MTkzNiw2ICsxOTYyLDM2IEBAIHRleC1jb3VudC13b3JkcwogCQkoZm9yd2FyZC1zZXhwIDEpKSkp KSkKICAgICAgIChtZXNzYWdlICIlcyB3b3JkcyIgY291bnQpKSkpCiAKKyhkZWZ1biB0ZXgtZXhw bC1idWZmZXItcGFyc2UgKCkKKyAgIklkZW50aWZ5IGJ1ZmZlcnMgdXNpbmcgZXhwbDMgc3ludGF4 IHRocm91Z2hvdXQuIgorICAoc2F2ZS1leGN1cnNpb24KKyAgICAoZ290by1jaGFyIChwb2ludC1t aW4pKQorICAgICh3aGVuICh0ZXgtc2VhcmNoLW5vbmNvbW1lbnQKKyAgICAgICAgICAgKHJlLXNl YXJjaC1mb3J3YXJkCisgICAgICAgICAgICAiXFxcXFxcKD86RXhwbEZpbGVcXHxQcm92aWRlc0V4 cGxcXHxfX3hwYXJzZV9maWxlXFwpIgorICAgICAgICAgICAgbmlsIHQpKQorICAgICAgKHNldHEg dGV4LWV4cGwtYnVmZmVyLXAgdCkpKSkKKworKGRlZnVuIHRleC1leHBsLXJlZ2lvbi1zZXQgKF9i ZWcgX2VuZCkKKyAgIkNyZWF0ZSBhIGxpc3Qgb2YgcmVnaW9ucyB3aGVyZSBleHBsMyBzeW50YXgg aXMgYWN0aXZlLgorVGhpcyBmdW5jdGlvbiB1cGRhdGVzIHRoZSBsaXN0IHdoZW5ldmVyIGBzeW50 YXgtcHJvcGVydGl6ZScgcnVucywgYW5kCitzdG9yZXMgaXQgaW4gdGhlIGJ1ZmZlci1sb2NhbCB2 YXJpYWJsZSBgdGV4LWV4cGwtcmVnaW9uLWxpc3QnLiAgVGhlIGxpc3QKK3dpbGwgYWx3YXlzIGJl IG5pbCB3aGVuIHRoZSBidWZmZXIgdmlzaXRzIGFuIGV4cGwzIGZpbGUsIGZvciBleGFtcGxlLCBh bgorZXhwbDMgY2xhc3Mgb3IgcGFja2FnZSwgd2hlcmUgdGhlIGVudGlyZSBmaWxlIHVzZXMgZXhw bDMgc3ludGF4LiIKKyAgKHVubGVzcyBzeW50YXgtcHBzcy0tdXBkYXRlZC1jYWNoZTs7IFN0b3Ag Zm9yd2FyZCBzZWFyY2ggcnVubmluZyB0d2ljZS4KKyAgICAoc2V0cSB0ZXgtZXhwbC1yZWdpb24t bGlzdCBuaWwpCisgICAgOzsgTGVhdmluZyB0aGlzIHRlc3QgaGVyZSBhbGxvd3MgdXNlcnMgdG8g c2V0IGB0ZXgtZXhwbC1idWZmZXItcCcKKyAgICA7OyBpbmRlcGVuZGVudGx5IG9mIHRoZSBtb2Rl J3MgYXV0b21hdGljIGRldGVjdGlvbiBvZiBhbiBleHBsMyBmaWxlLgorICAgICh1bmxlc3MgdGV4 LWV4cGwtYnVmZmVyLXAKKyAgICAgIChnb3RvLWNoYXIgKHBvaW50LW1pbikpCisgICAgICAobGV0 ICgoY2FzZS1mb2xkLXNlYXJjaCBuaWwpKQorICAgICAgICAod2hpbGUgKHRleC1zZWFyY2gtbm9u Y29tbWVudAorICAgICAgICAgICAgICAgIChzZWFyY2gtZm9yd2FyZCAiXFxFeHBsU3ludGF4T24i IG5pbCB0KSkKKyAgICAgICAgICAobGV0ICgobmV3LWJlZyAocG9pbnQpKQorICAgICAgICAgICAg ICAgIChuZXctZW5kIChvciAodGV4LXNlYXJjaC1ub25jb21tZW50CisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAoc2VhcmNoLWZvcndhcmQgIlxcRXhwbFN5bnRheE9mZiIgbmlsIHQpKQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocG9pbnQtbWF4KSkpKQorICAgICAgICAgICAg KHB1c2ggKGNvbnMgbmV3LWJlZyBuZXctZW5kKSB0ZXgtZXhwbC1yZWdpb24tbGlzdCkpKSkpKSkK IAogDAogOzs7IEludm9raW5nIFRlWCBpbiBhbiBpbmZlcmlvciBzaGVsbC4KQEAgLTM3NDIsNiAr Mzc5OCwzMDYgQEAgdGV4LWNoa3RleAogICAgICAgKHByb2Nlc3Mtc2VuZC1yZWdpb24gdGV4LWNo a3RleC0tcHJvY2VzcyAocG9pbnQtbWluKSAocG9pbnQtbWF4KSkKICAgICAgIChwcm9jZXNzLXNl bmQtZW9mIHRleC1jaGt0ZXgtLXByb2Nlc3MpKSkpCiAKKwwKKzs7OyBYcmVmIGJhY2tlbmQKKwor OzsgSGVyZSB3ZSBsaWdodGx5IGFkYXB0IHRoZSBkZWZhdWx0IGV0YWdzIGJhY2tlbmQgZm9yIHhy ZWYgc28gdGhhdAorOzsgdGhlIG1haW4geHJlZiB1c2VyIGNvbW1hbmRzIChpbmNsdWRpbmcgYHhy ZWYtZmluZC1kZWZpbml0aW9ucycsCis7OyBgeHJlZi1maW5kLWFwcm9wb3MnLCBhbmQgYHhyZWYt ZmluZC1yZWZlcmVuY2VzJyBbb24gTS0uLCBDLU0tLiwgYW5kCis7OyBNLT8sIHJlc3BlY3RpdmVs eV0pIHdvcmsgaW4gVGVYIGJ1ZmZlcnMuICBUaGUgb25seSBtZXRob2RzIHdlCis7OyBhY3R1YWxs eSBtb2RpZnkgYXJlIGB4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1hdC1wb2ludCcgYW5kCis7OyBg eHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMnLiAgTWFueSBvZiB0aGUgY29tcGxpY2F0aW9ucyBoZXJl LCBhbmQgaW4KKzs7IGBldGFncycgaXRzZWxmLCBhcmUgZHVlIHRvIHRoZSBuZWNlc3NpdHkgb2Yg cGFyc2luZyBib3RoIHRoZSBvbGQKKzs7IFRlWCBzeW50YXggYW5kIHRoZSBuZXcgZXhwbDMgc3lu dGF4LCB3aGljaCB3aWxsIGNvbnRpbnVlIHRvIGFwcGVhcgorOzsgdG9nZXRoZXIgaW4gZG9jdW1l bnRzIGZvciB0aGUgZm9yZXNlZWFibGUgZnV0dXJlLiAgU3luY2hyb25pemluZworOzsgRW1hY3Mg YW5kIGBldGFncycgdGhpcyB3YXkgYWltcyB0byBpbXByb3ZlIHRoZSB1c2VyIGV4cGVyaWVuY2Ug Im91dAorOzsgb2YgdGhlIGJveC4iCisKKyhkZWZ2YXIgdGV4LXRoaW5nYXRwdC1leGNsdWRlLWNo YXJzICcoP1xcID9ceyA/XH0pCisgICJFeGNsdWRlIHRoZXNlIGNoYXJzIGJ5IGRlZmF1bHQgZnJv bSBUZVggdGhpbmctYXQtcG9pbnQuCisKK1RoZSBUZVggYHhyZWYtYmFja2VuZC1pZGVudGlmaWVy LWF0LXBvaW50JyBtZXRob2QgdXNlcyB0aGUgY2hhcmFjdGVycworbGlzdGVkIGluIHRoaXMgdmFy aWFibGUgdG8gZGVjaWRlIG9uIHRoZSBkZWZhdWx0IHNlYXJjaCBzdHJpbmcgdG8KK3ByZXNlbnQg dG8gdGhlIHVzZXIgd2hvIGNhbGxzIGFuIGB4cmVmJyBjb21tYW5kLiAgVGhlc2UgY2hhcmFjdGVy cworYmVjb21lIHBhcnQgb2YgYSByZWdleHAgd2hpY2ggYWx3YXlzIGV4Y2x1ZGVzIHRoZW0gZnJv bSB0aGF0IGRlZmF1bHQKK3N0cmluZy4gIEZvciB0aGUgYHhyZWYnIGNvbW1hbmRzIHRvIGZ1bmN0 aW9uIHByb3Blcmx5IGluIFRlWCBidWZmZXJzLCBhdAorbGVhc3QgdGhlIFRlWCBlc2NhcGUgYW5k IHRoZSB0d28gVGVYIGdyb3VwaW5nIGNoYXJhY3RlcnMgc2hvdWxkIGJlCitsaXN0ZWQgaGVyZS4g IFNob3VsZCB5b3VyIFRlWCBkb2N1bWVudHMgY29udGFpbiBvdGhlciBjaGFyYWN0ZXJzIHdoaWNo Cit5b3Ugd2FudCB0byBleGNsdWRlIGJ5IGRlZmF1bHQsIHRoZW4geW91IGNhbiBhZGQgdGhlbSB0 byB0aGUgbGlzdCwKK3Rob3VnaCB5b3UgbWF5IHdpc2ggdG8gY29uc3VsdCB0aGUgZnVuY3Rpb25z CitgdGV4LXRoaW5nYXRwdC0tYmVnaW5uaW5nLW9mLXN5bWJvbCcgYW5kIGB0ZXgtdGhpbmdhdHB0 LS1lbmQtb2Ytc3ltYm9sJwordG8gc2VlIHdoYXQgdGhlIHJlZ2V4cCBhbHJlYWR5IGNvbnRhaW5z LiAgSWYgeW91ciBkb2N1bWVudHMgY29udGFpbgorbm9uLXN0YW5kYXJkIGVzY2FwZSBhbmQgZ3Jv dXBpbmcgY2hhcmFjdGVycywgdGhlbiB5b3UgY2FuIHJlcGxhY2UgdGhlCit0aHJlZSBsaXN0ZWQg aGVyZSB3aXRoIHlvdXIgb3duLCB0aGVyZWJ5IGFsbG93aW5nIHRoZSB0aHJlZSBzdGFuZGFyZAor Y2hhcmFjdGVycyB0byBhcHBlYXIgYnkgZGVmYXVsdCBpbiBzZWFyY2ggc3RyaW5ncy4gIFBsZWFz ZSBiZSBhd2FyZSwKK2hvd2V2ZXIsIHRoYXQgdGhlIGBldGFncycgcHJvZ3JhbSBvbmx5IHJlY29n bml6ZXMgYFxcJyAoOTIpIGFuZCBgIScgKDMzKQorYXMgZXNjYXBlIGNoYXJhY3RlcnMgaW4gVGVY IGRvY3VtZW50cywgYW5kIGlmIGl0IGRldGVjdHMgdGhlIGxhdHRlciBpdAorYWxzbyB1c2VzIGA8 PicgYXMgdGhlIFRlWCBncm91cGluZyBjb25zdHJ1Y3QgcmF0aGVyIHRoYW4gYHt9Jy4gIFNldHRp bmcKK3RoZSBlc2NhcGUgYW5kIGdyb3VwaW5nIGNoYXJzIHRvIGFueXRoaW5nIG90aGVyIHRoYW4g YFxcPVxce30nIG9yIGAhPD4nCit3aWxsIG5vdCBiZSB1c2VmdWwgd2l0aG91dCBjaGFuZ2VzIHRv IGBldGFncycsIGF0IGxlYXN0IGZvciBjb21tYW5kcwordGhhdCBzZWFyY2ggdGFncyB0YWJsZXMs IHN1Y2ggYXMgXFxbeHJlZi1maW5kLWRlZmluaXRpb25zXSBhbmQgXAorXFxbeHJlZi1maW5kLWFw cm9wb3NdLgorCitTaG91bGQgeW91IHdpc2ggdG8gY2hhbmdlIHRoZSBkZWZhdWx0cywgcGxlYXNl IGFsc28gYmUgYXdhcmUgdGhhdCwKK3dpdGhvdXQgZnVydGhlciBtb2RpZmljYXRpb25zIHRvIHRl eC1tb2RlLmVsLCB0aGUgdXN1YWwgdGV4dC1wYXJzaW5nCityb3V0aW5lcyBmb3IgYGZvbnQtbG9j aycgYW5kIHRoZSBsaWtlIHdvbid0IHdvcmsgY29ycmVjdGx5LCBhcyB0aGUKK2RlZmF1bHQgZXNj YXBlIGFuZCBncm91cGluZyBjaGFyYWN0ZXJzIGFyZSBjdXJyZW50bHkgaGFyZCBjb2RlZCBpbiBt YW55CitwbGFjZXMuIikKKworOzsgUG9wdWxhdGUgYHNlbWFudGljLXN5bXJlZi1maWxlcGF0dGVy bi1hbGlzdCcgZm9yIHRoZSBpbi10cmVlIG1vZGVzOworOzsgQVVDVGVYIGlzIGRvaW5nIHRoZSBz YW1lIGZvciBpdHMgbW9kZXMuCisod2l0aC1ldmFsLWFmdGVyLWxvYWQgJ3NlbWFudGljL3N5bXJl Zi9ncmVwCisgIChkZWZ2YXIgc2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0ZXJuLWFsaXN0KQorICAo cHVzaCAnKGxhdGV4LW1vZGUgIiouW3RUXWVbeFhdIiAiKi5sdHgiICIqLnN0eSIgIiouY2xbc29d IgorICAgICAgICAgICAgICAgICAgICAgIiouYmJsIiAiKi5kcnYiICIqLmh2YSIpCisgICAgICAg IHNlbWFudGljLXN5bXJlZi1maWxlcGF0dGVybi1hbGlzdCkKKyAgKHB1c2ggJyhwbGFpbi10ZXgt bW9kZSAiKi5bdFRdZVt4WF0iICIqLmlucyIpCisgICAgICAgIHNlbWFudGljLXN5bXJlZi1maWxl cGF0dGVybi1hbGlzdCkKKyAgKHB1c2ggJyhkb2N0ZXgtbW9kZSAiKi5kdHgiKSBzZW1hbnRpYy1z eW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QpKQorCisoZGVmdW4gdGV4LS14cmVmLWJhY2tlbmQgKCkg J3RleC1ldGFncykKKworKGNsLWRlZm1ldGhvZCB4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1hdC1w b2ludCAoKF9iYWNrZW5kIChlcWwgJ3RleC1ldGFncykpKQorICAocmVxdWlyZSAnZXRhZ3MpCisg ICh0ZXgtLXRoaW5nLWF0LXBvaW50KSkKKworOzsgVGhlIGRldGVjdGlvbiBvZiBgXycgYW5kIGA6 JyBpcyBhIHByaW1pdGl2ZSBtZXRob2QgZm9yIGRldGVybWluaW5nCis7OyB3aGV0aGVyIHBvaW50 IGlzIG9uIGFuIGV4cGwzIGNvbnN0cnVjdC4gIEl0IG1heSBmYWlsIGluIHNvbWUKKzs7IGluc3Rh bmNlcy4KKyhkZWZ1biB0ZXgtLXRoaW5nLWF0LXBvaW50ICgpCisgICJEZW1hcmNhdGUgYHRoaW5n LWF0LXBvaW50JyBmb3IgdGhlIFRlWCBgeHJlZicgYmFja2VuZC4iCisgIChsZXQgKChib3VuZHMg KHRleC0tYm91bmRzLW9mLXN5bWJvbC1hdC1wb2ludCkpKQorICAgICh3aGVuIGJvdW5kcworICAg ICAgKGxldCAoKHRleHN5bSAoYnVmZmVyLXN1YnN0cmluZy1uby1wcm9wZXJ0aWVzIChjYXIgYm91 bmRzKSAoY2RyIGJvdW5kcykpKSkKKyAgICAgICAgKGlmIChhbmQgKG5vdCAoc3RyaW5nLW1hdGNo LXAgInJlZmVyZW5jZSIgKHN5bWJvbC1uYW1lIHRoaXMtY29tbWFuZCkpKQorICAgICAgICAgICAg ICAgICAoc2VxLWNvbnRhaW5zLXAgdGV4c3ltID9fKQorICAgICAgICAgICAgICAgICAoc2VxLWNv bnRhaW5zLXAgdGV4c3ltID86KSkKKyAgICAgICAgICAgIChzZXEtdGFrZSB0ZXhzeW0gKHNlcS1w b3NpdGlvbiB0ZXhzeW0gPzopKQorICAgICAgICAgIHRleHN5bSkpKSkpCisKKyhkZWZ1biB0ZXgt dGhpbmdhdHB0LS1iZWdpbm5pbmctb2Ytc3ltYm9sICgpCisgIChhbmQKKyAgIChyZS1zZWFyY2gt YmFja3dhcmQgKGNvbmNhdCAiW11bIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICht YXBjb25jYXQgIydyZWdleHAtcXVvdGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIChtYXBjYXIgIydjaGFyLXRvLXN0cmluZworICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXgtdGhpbmdhdHB0LWV4Y2x1ZGUtY2hhcnMp KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJcIipgJyM9JigpJSx8JFs6Y250cmw6 XVs6Ymxhbms6XV0iKSkKKyAgIChmb3J3YXJkLWNoYXIpKSkKKworKGRlZnVuIHRleC10aGluZ2F0 cHQtLWVuZC1vZi1zeW1ib2wgKCkKKyAgKGFuZAorICAgKHJlLXNlYXJjaC1mb3J3YXJkIChjb25j YXQgIltdWyIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtYXBjb25jYXQgIydyZWdl eHAtcXVvdGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtYXBj YXIgIydjaGFyLXRvLXN0cmluZworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB0ZXgtdGhpbmdhdHB0LWV4Y2x1ZGUtY2hhcnMpKQorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIlwiKmAnIz0mKCklLHwkWzpjbnRybDpdWzpibGFuazpdXSIpKQor ICAgKGJhY2t3YXJkLWNoYXIpKSkKKworKGRlZnVuIHRleC0tYm91bmRzLW9mLXN5bWJvbC1hdC1w b2ludCAoKQorICAiU2ltcGxpZnkgYGJvdW5kcy1vZi10aGluZy1hdC1wb2ludCcgZm9yIFRlWCBg eHJlZicgYmFja2VuZC4iCisgIChsZXQgKChvcmlnIChwb2ludCkpKQorICAgIChpZ25vcmUtZXJy b3JzCisgICAgICAoc2F2ZS1leGN1cnNpb24KKyAgICAgICAgKHRleC10aGluZ2F0cHQtLWVuZC1v Zi1zeW1ib2wpCisgICAgICAgICh0ZXgtdGhpbmdhdHB0LS1iZWdpbm5pbmctb2Ytc3ltYm9sKQor ICAgICAgICAobGV0ICgoYmVnIChwb2ludCkpKQorICAgICAgICAgIChpZiAoPD0gYmVnIG9yaWcp CisgICAgICAgICAgICAgIChsZXQgKChyZWFsLWVuZAorICAgICAgICAgICAgICAgICAgICAgKHBy b2duCisgICAgICAgICAgICAgICAgICAgICAgICh0ZXgtdGhpbmdhdHB0LS1lbmQtb2Ytc3ltYm9s KQorICAgICAgICAgICAgICAgICAgICAgICAocG9pbnQpKSkpCisgICAgICAgICAgICAgICAgKGNv bmQgKChhbmQgKDw9IG9yaWcgcmVhbC1lbmQpICg8IGJlZyByZWFsLWVuZCkpCisgICAgICAgICAg ICAgICAgICAgICAgIChjb25zIGJlZyByZWFsLWVuZCkpCisgICAgICAgICAgICAgICAgICAgICAg KChhbmQgKD0gb3JpZyByZWFsLWVuZCkgKD0gYmVnIHJlYWwtZW5kKSkKKyAgICAgICAgICAgICAg ICAgICAgICAgKGNvbnMgYmVnICgxKyBiZWcpKSkpKSkpKSkpKTs7IEZvciAxLWNoYXIgVGVYIGNv bW1hbmRzLgorCisoY2wtZGVmbWV0aG9kIHhyZWYtYmFja2VuZC1pZGVudGlmaWVyLWNvbXBsZXRp b24tdGFibGUgKChfYmFja2VuZAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKGVxbCAndGV4LWV0YWdzKSkpCisgICh4cmVmLWJhY2tlbmQt aWRlbnRpZmllci1jb21wbGV0aW9uLXRhYmxlICdldGFncykpCisKKyhjbC1kZWZtZXRob2QgeHJl Zi1iYWNrZW5kLWlkZW50aWZpZXItY29tcGxldGlvbi1pZ25vcmUtY2FzZSAoKF9iYWNrZW5kCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAoZXFsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgJ3RleC1ldGFncykpKQorICAoeHJlZi1iYWNrZW5kLWlkZW50aWZp ZXItY29tcGxldGlvbi1pZ25vcmUtY2FzZSAnZXRhZ3MpKQorCisoY2wtZGVmbWV0aG9kIHhyZWYt YmFja2VuZC1kZWZpbml0aW9ucyAoKF9iYWNrZW5kIChlcWwgJ3RleC1ldGFncykpIHN5bWJvbCkK KyAgKHhyZWYtYmFja2VuZC1kZWZpbml0aW9ucyAnZXRhZ3Mgc3ltYm9sKSkKKworKGNsLWRlZm1l dGhvZCB4cmVmLWJhY2tlbmQtYXByb3BvcyAoKF9iYWNrZW5kIChlcWwgJ3RleC1ldGFncykpIHBh dHRlcm4pCisgICh4cmVmLWJhY2tlbmQtYXByb3BvcyAnZXRhZ3MgcGF0dGVybikpCisKKzs7IFRo ZSBgeHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMnIG1ldGhvZCByZXF1aXJlcyBtb3JlIGNvZGUgdGhh biB0aGUKKzs7IG90aGVycyBmb3IgYXQgbGVhc3QgdHdvIG1haW4gcmVhc29uczogVGVYIGF1dGhv cnMgaGF2ZSB0eXBpY2FsbHkgYmVlbgorOzsgZnJlZSBpbiB0aGVpciBpbnZlbnRpb24gb2YgbmV3 IGZpbGUgdHlwZXMgd2l0aCBuZXcgc3VmZml4ZXMsIGFuZCB0aGV5Cis7OyBoYXZlIGFsc28gdGVu ZGVkIHNvbWV0aW1lcyB0byBpbmNsdWRlIG5vbi1zeW1ib2wgY2hhcmFjdGVycyBpbgorOzsgY29t bWFuZCBuYW1lcy4gIFdoZW4gY29tYmluZWQgd2l0aCB0aGUgZGVmYXVsdCBTZW1hbnRpYyBTeW1i b2wKKzs7IFJlZmVyZW5jZSBBUEksIHRoZXNlIHR3byBjaGFyYWN0ZXJpc3RpY3Mgb2YgVGVYIGNv ZGUgbWVhbiB0aGF0IGEKKzs7IGNvbW1hbmQgbGlrZSBgeHJlZi1maW5kLXJlZmVyZW5jZXMnIHdv dWxkIG9mdGVuIGZhaWwgdG8gZmluZCBhbnkgaGl0cworOzsgZm9yIGEgc3ltYm9sIGF0IHBvaW50 LCBpbmNsdWRpbmcgdGhlIG9uZSB1bmRlciBwb2ludCBpbiB0aGUgY3VycmVudAorOzsgYnVmZmVy LCBvciBpdCB3b3VsZCBmaW5kIG9ubHkgc29tZSBpbnN0YW5jZXMgYW5kIHNraXAgb3RoZXJzLgor CisoZGVmdW4gdGV4LWZpbmQtcmVmZXJlbmNlcy1zeW50YXgtdGFibGUgKCkKKyAgKGxldCAoKHN0 IChpZiAoYm91bmRwICdUZVgtbW9kZS1zeW50YXgtdGFibGUpCisgICAgICAgICAgICAgICAgICht YWtlLXN5bnRheC10YWJsZSBUZVgtbW9kZS1zeW50YXgtdGFibGUpCisgICAgICAgICAgICAgICAo bWFrZS1zeW50YXgtdGFibGUgdGV4LW1vZGUtc3ludGF4LXRhYmxlKSkpKQorICAgIHN0KSkKKwor KGRlZnZhciB0ZXgtLXhyZWYtc3ludGF4LWZ1biBuaWwpCisKKyhkZWZ1biB0ZXgteHJlZi1zeW50 YXgtZnVuY3Rpb24gKHN0ciBiZWcgZW5kKQorICAiUHJvdmlkZSBhIGJlc3Bva2UgYHN5bnRheC1w cm9wZXJ0aXplLWZ1bmN0aW9uJyBmb3IgXFxbeHJlZi1maW5kLXJlZmVyZW5jZXNdLiIKKyAgKGxl dCogKGdycGIgdGVtcHN0cgorICAgICAgICAgICAgICAoc2hydHN0ciAoaWYgZW5kCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAocHJvZ24KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg KHNldHEgdGVtcHN0ciAoc2VxLXRha2Ugc3RyICgxLSAobGVuZ3RoIHN0cikpKSkKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKGlmIGJlZworICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKHNldHEgdGVtcHN0ciAoc2VxLWRyb3AgdGVtcHN0ciAxKSkKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB0ZW1wc3RyKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAoc2Vx LWRyb3Agc3RyIDEpKSkKKyAgICAgICAgICAgICAgKGdycGEgKGlmIChhbmQgYmVnIGVuZCkKKyAg ICAgICAgICAgICAgICAgICAgICAgIChwcm9nMQorICAgICAgICAgICAgICAgICAgICAgICAgICAg IChsaXN0IDEgIl8iKQorICAgICAgICAgICAgICAgICAgICAgICAgICAoc2V0cSBncnBiIChsaXN0 IDIgIl8iKSkpCisgICAgICAgICAgICAgICAgICAgICAgKGxpc3QgMSAiXyIpKSkKKyAgICAgICAg ICAgICAgKHJlIChjb25jYXQgYmVnIChyZWdleHAtcXVvdGUgc2hydHN0cikgZW5kKSkKKyAgICAg ICAgICAgICAgKHRlbXAtcnVsZSAoaWYgZ3JwYgorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAobGlzdCByZSBncnBhIGdycGIpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAobGlzdCBy ZSBncnBhKSkpKQorICAgIDs7IFNpbXBsZSBiZW5jaG1hcmtzIHN1Z2dlc3RlZCB0aGF0IHRoZSBz cGVlZC11cCBmcm9tIGNvbXBpbGluZyB0aGlzCisgICAgOzsgZnVuY3Rpb24gd2FzIG5lYXJseSBu aWwsIHNvIGBldmFsJyBhbmQgaXRzIG5vbi1ieXRlLWNvbXBpbGVkCisgICAgOzsgZnVuY3Rpb24g cmVtYWluLgorICAgIChzZXRxIHRleC0teHJlZi1zeW50YXgtZnVuIChldmFsCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGAoc3ludGF4LXByb3BlcnRpemUtcnVsZXMgLHRlbXAtcnVs ZSkpKSkpCisKKyhkZWZ1biB0ZXgtLWNvbGxlY3QtZmlsZS1leHRlbnNpb25zICgpCisgICJHYXRo ZXIgVGVYIGZpbGUgZXh0ZW5zaW9ucyBmcm9tIGBhdXRvLW1vZGUtYWxpc3QnLiIKKyAgKGxldCog KChtbGlzdCAod2hlbiAocmFzc3EgbWFqb3ItbW9kZSBhdXRvLW1vZGUtYWxpc3QpCisgICAgICAg ICAgICAgICAgICAoc2VxLWZpbHRlcgorICAgICAgICAgICAgICAgICAgIChsYW1iZGEgKGVsdCkK KyAgICAgICAgICAgICAgICAgICAgIChlcSAoY2RyIGVsdCkgbWFqb3ItbW9kZSkpCisgICAgICAg ICAgICAgICAgICAgYXV0by1tb2RlLWFsaXN0KSkpCisgICAgICAgICAobGNzeW0gKGludGVybi1z b2Z0IChkb3duY2FzZSAoc3ltYm9sLW5hbWUgbWFqb3ItbW9kZSkpKSkKKyAgICAgICAgIChsY2xp c3QgKGFuZCBsY3N5bQorICAgICAgICAgICAgICAgICAgICAgIChub3QgKGVxIGxjc3ltIG1ham9y LW1vZGUpKQorICAgICAgICAgICAgICAgICAgICAgIChyYXNzcSBsY3N5bSBhdXRvLW1vZGUtYWxp c3QpCisgICAgICAgICAgICAgICAgICAgICAgKHNlcS1maWx0ZXIKKyAgICAgICAgICAgICAgICAg ICAgICAgKGxhbWJkYSAoZWx0KQorICAgICAgICAgICAgICAgICAgICAgICAgIChlcSAoY2RyIGVs dCkgbGNzeW0pKQorICAgICAgICAgICAgICAgICAgICAgICBhdXRvLW1vZGUtYWxpc3QpKSkKKyAg ICAgICAgIChzaG9ydHN5bSAod2hlbiAoc3RyaW5ncCBtb2RlLW5hbWUpCisgICAgICAgICAgICAg ICAgICAgICAoaW50ZXJuLXNvZnQgKGNvbmNhdCAoc3RyaW5nLXRyaW0tcmlnaHQgbW9kZS1uYW1l ICIvLioiKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIi1tb2Rl IikpKSkKKyAgICAgICAgIChsY3Nob3J0c3ltICh3aGVuIChzdHJpbmdwIG1vZGUtbmFtZSkKKyAg ICAgICAgICAgICAgICAgICAgICAgKGludGVybi1zb2Z0IChkb3duY2FzZQorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIChjb25jYXQKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgKHN0cmluZy10cmltLXJpZ2h0IG1vZGUtbmFtZSAiLy4qIikKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIi1tb2RlIikpKSkpCisgICAgICAgICAo c2hsaXN0IChhbmQgc2hvcnRzeW0KKyAgICAgICAgICAgICAgICAgICAgICAobm90IChlcSBzaG9y dHN5bSBtYWpvci1tb2RlKSkKKyAgICAgICAgICAgICAgICAgICAgICAobm90IChlcSBzaG9ydHN5 bSBsY3N5bSkpCisgICAgICAgICAgICAgICAgICAgICAgKHJhc3NxIHNob3J0c3ltIGF1dG8tbW9k ZS1hbGlzdCkKKyAgICAgICAgICAgICAgICAgICAgICAoc2VxLWZpbHRlcgorICAgICAgICAgICAg ICAgICAgICAgICAobGFtYmRhIChlbHQpCisgICAgICAgICAgICAgICAgICAgICAgICAgKGVxIChj ZHIgZWx0KSBzaG9ydHN5bSkpCisgICAgICAgICAgICAgICAgICAgICAgIGF1dG8tbW9kZS1hbGlz dCkpKQorICAgICAgICAgKGxjc2hsaXN0IChhbmQgbGNzaG9ydHN5bQorICAgICAgICAgICAgICAg ICAgICAgICAgKG5vdCAoZXEgbGNzaG9ydHN5bSBtYWpvci1tb2RlKSkKKyAgICAgICAgICAgICAg ICAgICAgICAgIChub3QgKGVxIGxjc2hvcnRzeW0gbGNzeW0pKQorICAgICAgICAgICAgICAgICAg ICAgICAgKHJhc3NxIGxjc2hvcnRzeW0gYXV0by1tb2RlLWFsaXN0KQorICAgICAgICAgICAgICAg ICAgICAgICAgKHNlcS1maWx0ZXIKKyAgICAgICAgICAgICAgICAgICAgICAgICAobGFtYmRhIChl bHQpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAoZXEgKGNkciBlbHQpIGxjc2hvcnRzeW0p KQorICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG8tbW9kZS1hbGlzdCkpKQorICAgICAgICAg KGV4dHMgKHdoZW4gKG9yIG1saXN0IGxjbGlzdCBzaGxpc3QgbGNzaGxpc3QpCisgICAgICAgICAg ICAgICAgIChzZXEtdW5pb24gKHNlcS1tYXAgIydjYXIgbGNsaXN0KQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgIChzZXEtdW5pb24gKHNlcS1tYXAgIydjYXIgbWxpc3QpCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2VxLXVuaW9uIChzZXEtbWFwICMnY2FyIGxj c2hsaXN0KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAoc2VxLW1hcCAjJ2NhciBzaGxpc3QpKSkpKSkKKyAgICAgICAgIChlZC1leHRzICh3aGVuIGV4 dHMKKyAgICAgICAgICAgICAgICAgICAgKHNlcS1tYXAKKyAgICAgICAgICAgICAgICAgICAgIChs YW1iZGEgKGVsdCkKKyAgICAgICAgICAgICAgICAgICAgICAgKGNvbmNhdCAiKiIgKHN0cmluZy10 cmltICBlbHQgIlxcXFwiICJcXFxcJyIpKSkKKyAgICAgICAgICAgICAgICAgICAgIGV4dHMpKSkp CisgICAgZWQtZXh0cykpCisKKyhkZWZ2YXIgdGV4LS1idWZmZXJzLWxpc3QgbmlsKQorKGRlZnZh ci1sb2NhbCB0ZXgtLW9sZC1zeW50YXgtZnVuY3Rpb24gbmlsKQorCisoY2wtZGVmbWV0aG9kIHhy ZWYtYmFja2VuZC1yZWZlcmVuY2VzICgoX2JhY2tlbmQgKGVxbCAndGV4LWV0YWdzKSkgaWRlbnRp ZmllcikKKyAgIkZpbmQgcmVmZXJlbmNlcyBvZiBJREVOVElGSUVSIGluIFRlWCBidWZmZXJzIGFu ZCBmaWxlcy4iCisgIChyZXF1aXJlICdzZW1hbnRpYy9zeW1yZWYvZ3JlcCkKKyAgKGRlZnZhciBz ZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QpCisgIChsZXQgKGJ1ZnMgdGV4YnVmcwor ICAgICAgICAgICAgIChtb2RlIG1ham9yLW1vZGUpKQorICAgIChkb2xpc3QgKGJ1ZiAoYnVmZmVy LWxpc3QpKQorICAgICAgKGlmIChlcSAoYnVmZmVyLWxvY2FsLXZhbHVlICdtYWpvci1tb2RlIGJ1 ZikgbW9kZSkKKyAgICAgICAgICAocHVzaCBidWYgYnVmcykKKyAgICAgICAgKHdoZW4gKHN0cmlu Zy1tYXRjaC1wICIuKlxcLlt0VF1lW3hYXSIgKGJ1ZmZlci1uYW1lIGJ1ZikpCisgICAgICAgICAg KHB1c2ggYnVmIHRleGJ1ZnMpKSkpCisgICAgKHVubGVzcyAoc2VxLXNldC1lcXVhbC1wIHRleC0t YnVmZmVycy1saXN0IGJ1ZnMpCisgICAgICAobGV0KiAoKGFtYWxpc3QgKHRleC0tY29sbGVjdC1m aWxlLWV4dGVuc2lvbnMpKQorICAgICAgICAgICAgIChleHRsaXN0IChhbGlzdC1nZXQgbW9kZSBz ZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QpKQorICAgICAgICAgICAgIChleHRsaXN0 LW5ldyAoc2VxLXVuaXEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIChzZXEtdW5pb24gYW1h bGlzdCBleHRsaXN0ICMnc3RyaW5nLW1hdGNoLXApKSkpCisgICAgICAgIChzZXRxIHRleC0tYnVm ZmVycy1saXN0IGJ1ZnMpCisgICAgICAgIChkb2xpc3QgKGJ1ZiBidWZzKQorICAgICAgICAgICh3 aGVuLWxldCAoKGZidWYgKGJ1ZmZlci1maWxlLW5hbWUgYnVmKSkKKyAgICAgICAgICAgICAgICAg ICAgIChleHQgKGZpbGUtbmFtZS1leHRlbnNpb24gZmJ1ZikpCisgICAgICAgICAgICAgICAgICAg ICAoZmluZXh0IChjb25jYXQgIiouIiBleHQpKQorICAgICAgICAgICAgICAgICAgICAgKChub3Qg KHNlcS1maW5kIChsYW1iZGEgKGVsdCkgKHN0cmluZy1tYXRjaC1wIGVsdCBmaW5leHQpKQorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dGxpc3QtbmV3KSkpCisgICAgICAg ICAgICAgICAgICAgICAoKHB1c2ggZmluZXh0IGV4dGxpc3QtbmV3KSkpKSkKKyAgICAgICAgKHVu bGVzcyAoc2VxLXNldC1lcXVhbC1wIGV4dGxpc3QtbmV3IGV4dGxpc3QpCisgICAgICAgICAgKHNl dGYgKGFsaXN0LWdldCBtb2RlIHNlbWFudGljLXN5bXJlZi1maWxlcGF0dGVybi1hbGlzdCkKKyAg ICAgICAgICAgICAgICBleHRsaXN0LW5ldykpKSkKKyAgICAobGV0KiAoc2V0c3ludGF4CisgICAg ICAgICAgIChwdW5jdCAod2l0aC1zeW50YXgtdGFibGUgKHRleC1maW5kLXJlZmVyZW5jZXMtc3lu dGF4LXRhYmxlKQorICAgICAgICAgICAgICAgICAgICAoc2VxLXBvc2l0aW9ucyBpZGVudGlmaWVy IChsaXN0ID93ID9fKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobGFtYmRh IChlbHQgc3ljb2RlKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChub3Qg KG1lbXEgKGNoYXItc3ludGF4IGVsdCkgc3ljb2RlKSkpKSkpCisgICAgICAgICAgIChlbmQgKGFu ZCBwdW5jdAorICAgICAgICAgICAgICAgICAgICAgKG1lbXEgKDEtIChsZW5ndGggaWRlbnRpZmll cikpIHB1bmN0KQorICAgICAgICAgICAgICAgICAgICAgKD4gKGxlbmd0aCBpZGVudGlmaWVyKSAx KQorICAgICAgICAgICAgICAgICAgICAgKGNvbmNhdCAiXFwoIgorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAocmVnZXhwLXF1b3RlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo c3RyaW5nIChlbHQgaWRlbnRpZmllcgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICgxLSAobGVuZ3RoIGlkZW50aWZpZXIpKSkpKQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAiXFwpIikpKQorICAgICAgICAgICAoYmVnIChhbmQgcHVuY3QKKyAgICAgICAg ICAgICAgICAgICAgIChtZW1xIDAgcHVuY3QpCisgICAgICAgICAgICAgICAgICAgICAoY29uY2F0 ICJcXCgiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChyZWdleHAtcXVvdGUgKHN0cmlu ZyAoZWx0IGlkZW50aWZpZXIgMCkpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiXFwp IikpKQorICAgICAgICAgICAodGV4dC1tb2RlLWhvb2sKKyAgICAgICAgICAgIChpZiAob3IgZW5k IGJlZykKKyAgICAgICAgICAgICAgICAocHJvZ24KKyAgICAgICAgICAgICAgICAgICh0ZXgteHJl Zi1zeW50YXgtZnVuY3Rpb24gaWRlbnRpZmllciBiZWcgZW5kKQorICAgICAgICAgICAgICAgICAg KHNldHEgc2V0c3ludGF4IChsYW1iZGEgKCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIChzZXRxLWxvY2FsIHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXgtLXhyZWYtc3ludGF4LWZ1 bikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzZXRxLWxvY2FsIFRlWC1z dHlsZS1ob29rLWFwcGxpZWQtcCB0KSkpCisgICAgICAgICAgICAgICAgICAoY29ucyBzZXRzeW50 YXggdGV4dC1tb2RlLWhvb2spKQorICAgICAgICAgICAgICB0ZXh0LW1vZGUtaG9vaykpKQorICAg ICAgKHVubGVzcyAobWVtcSAnZG9jdGV4LW1vZGUgKGRlcml2ZWQtbW9kZS1hbGwtcGFyZW50cyBt b2RlKSkKKyAgICAgICAgKHNldHEgYnVmcyAoYXBwZW5kIHRleGJ1ZnMgYnVmcykpKQorICAgICAg KHdoZW4gKG9yIGVuZCBiZWcpCisgICAgICAgIChkb2xpc3QgKGJ1ZiBidWZzKQorICAgICAgICAg ICh3aXRoLWN1cnJlbnQtYnVmZmVyIGJ1ZgorICAgICAgICAgICAgKHVubGVzcyAobG9jYWwtdmFy aWFibGUtcCAndGV4LS1vbGQtc3ludGF4LWZ1bmN0aW9uKQorICAgICAgICAgICAgICAoc2V0cSB0 ZXgtLW9sZC1zeW50YXgtZnVuY3Rpb24gc3ludGF4LXByb3BlcnRpemUtZnVuY3Rpb24pKQorICAg ICAgICAgICAgKHNldHEtbG9jYWwgc3ludGF4LXByb3BlcnRpemUtZnVuY3Rpb24KKyAgICAgICAg ICAgICAgICAgICAgICAgIHRleC0teHJlZi1zeW50YXgtZnVuKQorICAgICAgICAgICAgKHN5bnRh eC1wcHNzLWZsdXNoLWNhY2hlIChwb2ludC1taW4pKSkpKQorICAgICAgKHVud2luZC1wcm90ZWN0 CisgICAgICAgICAgKHhyZWYtYmFja2VuZC1yZWZlcmVuY2VzIG5pbCBpZGVudGlmaWVyKQorICAg ICAgICAod2hlbiAob3IgZW5kIGJlZykKKyAgICAgICAgICAoZG9saXN0IChidWYgYnVmcykKKyAg ICAgICAgICAgICh3aXRoLWN1cnJlbnQtYnVmZmVyIGJ1ZgorICAgICAgICAgICAgICAod2hlbiBi dWZmZXItZmlsZS10cnVlbmFtZQorICAgICAgICAgICAgICAgIChzZXRxLWxvY2FsIHN5bnRheC1w cm9wZXJ0aXplLWZ1bmN0aW9uCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4LS1vbGQt c3ludGF4LWZ1bmN0aW9uKQorICAgICAgICAgICAgICAgIChzeW50YXgtcHBzcy1mbHVzaC1jYWNo ZSAocG9pbnQtbWluKSkpKSkpKSkpKQorCiAobWFrZS1vYnNvbGV0ZS12YXJpYWJsZSAndGV4LW1v ZGUtbG9hZC1ob29rCiAgICAgICAgICAgICAgICAgICAgICAgICAidXNlIGB3aXRoLWV2YWwtYWZ0 ZXItbG9hZCcgaW5zdGVhZC4iICIyOC4xIikKIChydW4taG9va3MgJ3RleC1tb2RlLWxvYWQtaG9v aykKZGlmZiAtLWdpdCBhL3Rlc3QvbWFudWFsL2V0YWdzL0NUQUdTLmdvb2QgYi90ZXN0L21hbnVh bC9ldGFncy9DVEFHUy5nb29kCmluZGV4IDg0YTU2YjIzY2ZhLi42NmMzMzYxNmY5OCAxMDA2NDQK LS0tIGEvdGVzdC9tYW51YWwvZXRhZ3MvQ1RBR1MuZ29vZAorKysgYi90ZXN0L21hbnVhbC9ldGFn cy9DVEFHUy5nb29kCkBAIC0xLDMgKzEsNSBAQAorIgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxs ZXQiPVxcYWN0aXZlZG91YmxlcXVvdGUkLworIgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHR1cm5vZmZhY3RpdmV7XFxsZXQiPVxcbm9ybWFsZG91YmxlcXVvdGUkLwogI2EtZGVmZXItd29y ZAlmb3J0aC1zcmMvdGVzdC1mb3J0aC5mdGgJL15kZWZlciAjYS1kZWZlci13b3JkJC8KICNzb21l LXN0b3JhZ2UJZm9ydGgtc3JjL3Rlc3QtZm9ydGguZnRoCS9eMjAwMCBidWZmZXI6ICNzb21lLXN0 b3JhZ2UkLwogJDB4ODAJYy1zcmMvc3lzZGVwLmgJMzIKQEAgLTMyLDE0ICszNCwyOCBAQCAkdXNl cl9jb21tZW50X2xjCXBocC1zcmMvbGNlX2Z1bmN0aW9ucy5waHAJMTE1CiAke0NIRUNLT0JKU30J bWFrZS1zcmMvTWFrZWZpbGUJL14ke0NIRUNLT0JKU306IENGTEFHUz0tZzMgLUROVUxMRlJFRUNI RUNLPTAkLwogJWNkaWZmCW1ha2Utc3JjL01ha2VmaWxlCS9eJWNkaWZmOiBDVEFHUyUgQ1RBR1Mg JHtpbmZpbGVzfSQvCiAlZWRpZmYJbWFrZS1zcmMvTWFrZWZpbGUJL14lZWRpZmY6IEVUQUdTJSBF VEFHUyAke2luZmlsZXN9JC8KKyYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcZnVuY3Rp b25wYXJlbnN7XFxib2xkYnJheFxcbGV0Jj1cXGFtcHJtXFxwYXJlbmNvLworJgl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxnZGVmXFxub3JtYWxwYXJlbnN7XFxib2xkYnJheFxcbGV0Jj1cXGFtcG5y fSQvCisnCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcJ3t7J319JC8KKygJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZ2RlZlxcYm9sZGJyYXh7XFxsZXQoPVxcb3BuclxcbGV0KT1cXGNsbnJc XGxldFs9XFxsYnJiXFxsLworKAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxvcHJtIzEg e3tcXHJtXFxjaGFyYFxcKH0jMSBcXGJmIFxcbGV0KD1cXG9wbmVzdGVkIC8KKygJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcaWZudW0gXFxwYXJlbmNvdW50PTEge1xccm0gXFxjaGFyIGBcXCl9XFxz bCBcXGxldCg9XFxvcHIvCisoCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXGFtcHJtIzEg e3tcXHJtXFwmIzF9XFxsZXQoPVxcb3BybSBcXGxldCk9XFxjbHJtXFwgfS8KICgkXywkZmxhZywk b3B0LCRmLCRyLEB0ZW1wCXBlcmwtc3JjL3lhZ3JpcC5wbAk4CiAoJHByb2csJF8sQGxpc3QJcGVy bC1zcmMveWFncmlwLnBsCTM5CiAoJHN0cmluZywkZmxhZyxAc3RyaW5nLEB0ZW1wLEBsYXN0CXBl cmwtc3JjL3lhZ3JpcC5wbAk0MAogKGEtZm9ydGgtY29uc3RhbnQJZm9ydGgtc3JjL3Rlc3QtZm9y dGguZnRoCS9eY29uc3RhbnQgKGEtZm9ydGgtY29uc3RhbnQkLwogKGFub3RoZXItZm9ydGgtd29y ZCkJZm9ydGgtc3JjL3Rlc3QtZm9ydGguZnRoCS9eOiAoYW5vdGhlci1mb3J0aC13b3JkKSAoIC0t ICkkLwogKGZvbykJZm9ydGgtc3JjL3Rlc3QtZm9ydGguZnRoCS9eOiAoZm9vKSAxIDskLworKQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxib2xkYnJheHtcXGxldCg9XFxvcG5yXFxsZXQp PVxcY2xuclxcbGV0Wz1cXGxicmJcXGwvCispCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZc XGFtcHJtIzEge3tcXHJtXFwmIzF9XFxsZXQoPVxcb3BybSBcXGxldCk9XFxjbHJtXFwgfS8KKyoJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFwqe1xcaGZpbFxcYnJlYWtcXGhib3h7fVxcaWdu b3Jlc3BhY2VzfSQvCisqCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcKj1cXHB0ZXhzdGFy JC8KICsJcnVieS1zcmMvdGVzdC5yYgkvXiAgICAgICAgZGVmICsoeSkkLwogKwl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWYre3tcXHR0IFxcY2hhciA0M319JC8KKysJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcbGV0Kz1cXG5vcm1hbHBsdXN9JC8KKy4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFwuey5cXHNwYWNlZmFjdG9yPTMwMDAgfSQvCisuCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGxldFxcLj1cXHB0ZXhkb3QkLwogLlBSRUNJT1VTCW1ha2Utc3JjL01ha2VmaWxlCS9eLlBSRUNJ T1VTOiBFVEFHUyBDVEFHUyBFVEFHUzE2IENUQUdTMTYgRVRBR1MxNyBDVEEvCiAvLm5vdGRlZglw cy1zcmMvcmZjMTI0NS5wcwkvXlwvLm5vdGRlZiBcLy5ub3RkZWYgXC8ubm90ZGVmIFwvLm5vdGRl ZiBcLy5ub3RkZWYgXC8ubm90LwogLy5ub3RkZWYJcHMtc3JjL3JmYzEyNDUucHMJL15cLy5ub3Rk ZWYgXC8ubm90ZGVmIFwvLm5vdGRlZiBcLy5ub3RkZWYgXC8ubm90ZGVmIFwvLm5vdC8KQEAgLTE3 NCwzOCArMTkwLDI2IEBAICR7Q0hFQ0tPQkpTfQltYWtlLXNyYy9NYWtlZmlsZQkvXiR7Q0hFQ0tP QkpTfTogQ0ZMQUdTPS1nMyAtRE5VTExGUkVFQ0hFQ0s9MCQvCiAyY29uc3QJZm9ydGgtc3JjL3Rl c3QtZm9ydGguZnRoCS9eMyA0IDJjb25zdGFudCAyY29uc3QkLwogMnZhbAlmb3J0aC1zcmMvdGVz dC1mb3J0aC5mdGgJL14yY29uc3QgMnZhbHVlIDJ2YWwkLwogMnZhcglmb3J0aC1zcmMvdGVzdC1m b3J0aC5mdGgJL14ydmFyaWFibGUgMnZhciQvCis6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcOntcXHNwYWNlZmFjdG9yPTEwMDAgfSQvCiA6YS1mb3J0aC1kaWN0aW9uYXJ5LWVudHJ5CWZv cnRoLXNyYy90ZXN0LWZvcnRoLmZ0aAkvXmNyZWF0ZSA6YS1mb3J0aC1kaWN0aW9uYXJ5LWVudHJ5 JC8KIDwJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmPHt7XFx0dCBcXGxlc3N9fSQvCis8CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGxldDw9XFxub3JtYWxsZXNzJC8KIDw8CXJ1Ynktc3JjL3Rl c3QucmIJL14gICAgICAgIGRlZiA8PCh5KSQvCiA8PQlydWJ5LXNyYy90ZXN0LnJiCS9eICAgICAg ICBkZWYgPD0oeSkkLwogPD0+CXJ1Ynktc3JjL3Rlc3QucmIJL14gICAgICAgIGRlZiA8PT4oeSkk LwotPQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc2VjdGlvbiA9IFxcbnVt YmVyZWRzZWMkLwotPQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vic2Vj dGlvbiA9IFxcbnVtYmVyZWRzdWJzZWMkLwotPQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9i YWxcXGxldFxcc3Vic3Vic2VjdGlvbiA9IFxcbnVtYmVyZWRzdWJzdWJzZWMkLwotPQl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc2VjdGlvbiA9IFxcYXBwZW5kaXhzZWMkLwot PQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vic2VjdGlvbiA9IFxcYXBw ZW5kaXhzdWJzZWMkLwotPQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vi c3Vic2VjdGlvbiA9IFxcYXBwZW5kaXhzdWJzdWJzZWMkLwotPQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxnbG9iYWxcXGxldFxcc2VjdGlvbiA9IFxcdW5udW1iZXJlZHNlYyQvCi09CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGdsb2JhbFxcbGV0XFxzdWJzZWN0aW9uID0gXFx1bm51bWJlcmVkc3Vi c2VjJC8KLT0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHN1YnN1YnNlY3Rp b24gPSBcXHVubnVtYmVyZWRzdWJzdWJzZWMkLwotPQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxn bG9iYWxcXGxldFxcc2VjdGlvbiA9IFxcbnVtYmVyZWRzZWMkLwotPQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vic2VjdGlvbiA9IFxcbnVtYmVyZWRzdWJzZWMkLwotPQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vic3Vic2VjdGlvbiA9IFxcbnVt YmVyZWRzdWJzdWJzZWMkLwogPQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGRlZj17 e1xcdHQgXFxjaGFyIDYxfX19JC8KID0vZglhZGEtc3JjL2V0YWdzLXRlc3QtZm9yLmFkYQkvXiAg IGZ1bmN0aW9uICI9IiAoTCwgUiA6IFN5c3RlbS5BZGRyZXNzKSByZXR1cm4gQm9vLwogPT0JcnVi eS1zcmMvdGVzdC5yYgkvXiAgICAgICAgZGVmID09KHkpJC8KID09PQlydWJ5LXNyYy90ZXN0LnJi CS9eICAgICAgICBkZWYgPT09KHkpJC8KLT1caW5kZXhkdW1teWZvbnQJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcbGV0XFxjaXRlPVxcaW5kZXhkdW1teWZvbnQkLwotPVxyZWxheAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxsZXRcXGNoYXB0ZXI9XFxyZWxheCQvCi09XHJlbGF4CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGxldFxcc2VjdGlvbj1cXHJlbGF4JC8KLT1ccmVsYXgJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcbGV0XFxzdWJzZWN0aW9uPVxccmVsYXgkLwotPVxyZWxheAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxsZXRcXHN1YnN1YnNlY3Rpb249XFxyZWxheCQvCi09XHJlbGF4CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGxldFxcYXBwZW5kaXg9XFxyZWxheCQvCi09XHNtYXJ0aXRhbGlj CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcY2l0ZT1cXHNtYXJ0aXRhbGljJC8KID1zdGFy dHMtd2l0aC1lcXVhbHMhCXNjbS1zcmMvdGVzdC5zY20JL14oZGVmaW5lID1zdGFydHMtd2l0aC1l cXVhbHMhICN0KSQvCiA+CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZj57e1xcdHQgXFxndHJ9 fSQvCis+CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldD49XFxub3JtYWxncmVhdGVyJC8KID5m aWVsZDEJZm9ydGgtc3JjL3Rlc3QtZm9ydGguZnRoCS9eICAgOSAgIGZpZWxkICAgPmZpZWxkMSQv CiA+ZmllbGQyCWZvcnRoLXNyYy90ZXN0LWZvcnRoLmZ0aAkvXiAgIDUgICBmaWVsZCAgID5maWVs ZDIkLworQAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEB7e1xcdHQgXFxjaGFyICcxMDB9 fSQvCitACXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcQHtAfSUkLworQHNmCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGxldFxcQHNmXFxlbXB0eSQvCitAc2YJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcaWZobW9kZVxcZWRlZlxcQHNme1xcc3BhY2VmYWN0b3JcXHRoZVxcc3BhY2VmYWN0b3J9 XFxcL1xcLwogQQljLmMJMTYyCiBBCWNwLXNyYy9jLkMJMzkKIEEJY3Atc3JjL2MuQwk1NgpAQCAt MzMxLDYgKzMzNSwxMSBAQCBDQVRDSEVSCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMzAyMQogQ0RS CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL15DRFIgKExpc3BfT2JqZWN0IGMpJC8KIENEUl9TQUZF CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL15DRFJfU0FGRSAoTGlzcF9PYmplY3QgYykkLwogQ0ZM QUdTCW1ha2Utc3JjL01ha2VmaWxlCS9eQ0ZMQUdTPSR7V0FSTklOR1N9IC1hbnNpIC1nMyAjIC1w ZyAtTyQvCitDSEFQRm9wZW4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxDSEFQRm9wZW57 JC8KK0NIQVBGcGxhaW4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxDSEFQRnBsYWlueyQv CitDSEFQUEFHb2RkCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcQ0hBUFBBR29kZHskLwor Q0hBUFBBR29mZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXENIQVBQQUdvZmZ7JC8KK0NI QVBQQUdvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXENIQVBQQUdvbnskLwogQ0hBUglj LXNyYy9ldGFncy5jCS9eI2RlZmluZSBDSEFSKHgpCQkoKHVuc2lnbmVkIGludCkoeCkgJiAoQ0hB UlMgLSAxKSkvCiBDSEFSCXktc3JjL2NjY3AuYwk3CiBDSEFSQUNURVJCSVRTCWMtc3JjL2VtYWNz L3NyYy9saXNwLmgJMjQ1NwpAQCAtNTQwLDYgKzU0OSw3IEBAIEVNQUNTX1VJTlQJYy1zcmMvZW1h Y3Mvc3JjL2xpc3AuaAkxMDQKIEVOVFJZCWMtc3JjL3N5c2RlcC5oCS9eI2RlZmluZQlFTlRSWShu YW1lKQkJCQkJCQkgICAgICBcXCQvCiBFTlVNX0JGCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL14j ZGVmaW5lIEVOVU1fQkYoVFlQRSkgdW5zaWduZWQgaW50JC8KIEVOVU1fQkYJYy1zcmMvZW1hY3Mv c3JjL2xpc3AuaAkvXiNkZWZpbmUgRU5VTV9CRihUWVBFKSBlbnVtIFRZUEUkLworRU5WY2hlY2sJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFTlZjaGVja3slJC8KIEVRCWMtc3JjL2VtYWNz L3NyYy9saXNwLmgJL14jIGRlZmluZSBFUSh4LCB5KSBsaXNwX2hfRVEgKHgsIHkpJC8KIEVRVUFM CXktc3JjL2NjY3AuYwkxMgogRVJMU1JDCW1ha2Utc3JjL01ha2VmaWxlCS9eRVJMU1JDPWdzX2Rp YWxvZy5lcmwgbGluZXMuZXJsIGxpc3RzLmVybCQvCkBAIC01NTMsMTMgKzU2MywzOCBAQCBFWEZV TgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eI2RlZmluZSBFWEZVTihmbm5hbWUsIG1heGFyZ3Mp IFxcJC8KIEVYVEFHUwltYWtlLXNyYy9NYWtlZmlsZQkvXkVYVEFHUzogZXh0YWdzICR7aW5maWxl c30gTWFrZWZpbGUkLwogRVhURVJOQUxMWV9WSVNJQkxFCWMtc3JjL2VtYWNzL3NyYy9rZXlib2Fy ZC5jCTM0OTcKIEVYVEVSTkFMTFlfVklTSUJMRQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwk0 MzcyCitFYWxwaGFlbnVtZXJhdGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFYWxwaGFl bnVtZXJhdGV7XFxFZW51bWVyYXRlfSQvCitFY2Fwc2VudW1lcmF0ZQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXEVjYXBzZW51bWVyYXRle1xcRWVudW1lcmF0ZX0kLworRWNhcnRvdWNoZQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVjYXJ0b3VjaGV7JSQvCitFZGVzY3JpcHRpb24J dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFZGVzY3JpcHRpb257XFxFdGFibGV9JSBOZWNl c3Nhcnkga2x1ZGdlLiQvCitFZGlzcGxheQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVk aXNwbGF5e1xcZW5kZ3JvdXBcXGFmdGVyZW52YnJlYWt9JSQvCitFZXhhbXBsZQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXEVleGFtcGxle1xcRWxpc3B9JC8KK0VmbHVzaGxlZnQJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFZmx1c2hsZWZ0e1xcZW5kZ3JvdXBcXGFmdGVyZW52YnJl YWt9JSQvCitFZmx1c2hyaWdodAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVmbHVzaHJp Z2h0e1xcZW5kZ3JvdXBcXGFmdGVyZW52YnJlYWt9JSQvCitFZm9ybWF0CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcRWZvcm1hdHtcXGVuZGdyb3VwXFxhZnRlcmVudmJyZWFrfSQvCitFZnRh YmxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRWZ0YWJsZXtcXGVuZGdyYWZcXGVuZGdy b3VwXFxhZnRlcmVudmJyZWFrfSUkLworRWdyb3VwCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxc ZGVmXFxFZ3JvdXB7XFxlZ3JvdXBcXGVuZGdyb3VwfSUkLworRWlmY2xlYXIJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxFaWZjbGVhcnt9JC8KK0VpZnNldAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXEVpZnNldHt9JC8KK0VpZnRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XEVpZnRleHt9JC8KK0VsaXNwCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRWxpc3B7XFxl bmRncm91cFxcYWZ0ZXJlbnZicmVha30lJC8KIEVtcHR5Tm1TdHIJcGFzLXNyYy9jb21tb24ucGFz CS9eZnVuY3Rpb24gRW1wdHlObVN0cigqIDogTmFtZVN0cmluZyopOyQvCiBFbnZpcm9ubWVudAl0 ZXgtc3JjL2d6aXAudGV4aQkvXkBub2RlIEVudmlyb25tZW50LCBUYXBlcywgQWR2YW5jZWQgdXNh Z2UsIFRvcCQvCitFcXVvdGF0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRXF1b3Rh dGlvbntcXHBhclxcZW5kZ3JvdXBcXGFmdGVyZW52YnJlYWt9JSQvCiBFcmxhbmdfZnVuY3Rpb25z CWMtc3JjL2V0YWdzLmMJL15FcmxhbmdfZnVuY3Rpb25zIChGSUxFICppbmYpJC8KIEVybGFuZ19o ZWxwCWMtc3JjL2V0YWdzLmMJNTY3CiBFcmxhbmdfc3VmZml4ZXMJYy1zcmMvZXRhZ3MuYwk1NjUK IEVyclN0clRvTm1TdHIJcGFzLXNyYy9jb21tb24ucGFzCS9eZnVuY3Rpb24gRXJyU3RyVG9ObVN0 cjsoKigkLwogRXJyb3JfSW5mb3JtYXRpb24vdAlhZGEtc3JjLzJhdGFzcHJpLmFkcwkvXiAgIHR5 cGUgRXJyb3JfSW5mb3JtYXRpb24gaXMgbmV3IEludGVyZmFjZXMuQy5QT1NJLworRXNtYWxsZXhh bXBsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVzbWFsbGV4YW1wbGV7XFxFbGlzcH0k LworRXNtYWxsZXhhbXBsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGRlZlxcRXNt YWxsZXhhbXBsZXtcXEVzbWFsbGxpc3B9JC8KK0VzbWFsbGxpc3AJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxFc21hbGxsaXNwe1xcZW5kZ3JvdXBcXGFmdGVyZW52YnJlYWt9JSQvCitFdGFi bGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxFdGFibGU9XFxyZWxheH19JC8KK0V0YWJs ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXEV0YWJsZT1cXHJlbGF4fX0kLworRXRhYmxl CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRXRhYmxle1xcZW5kZ3JhZlxcZW5kZ3JvdXBc XGFmdGVyZW52YnJlYWt9JSQvCitFdGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcRXRl eD1cXGVuZGdyb3VwfSQvCitFdGl0bGVwYWdlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc RXRpdGxlcGFnZXslJC8KK0V2dGFibGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFdnRh Ymxle1xcZW5kZ3JhZlxcZW5kZ3JvdXBcXGFmdGVyZW52YnJlYWt9JSQvCiBFeGl0X0xMX1Rhc2sv cAlhZGEtc3JjLzJhdGFzcHJpLmFkYgkvXiAgIHByb2NlZHVyZSBFeGl0X0xMX1Rhc2sgaXMkLwog RXhpdF9MTF9UYXNrL3AJYWRhLXNyYy8yYXRhc3ByaS5hZHMJL14gICBwcm9jZWR1cmUgRXhpdF9M TF9UYXNrOyQvCiBFeHRyYWN0Q29tbWVudEluZm8JcGFzLXNyYy9jb21tb24ucGFzCS9ecHJvY2Vk dXJlIEV4dHJhY3RDb21tZW50SW5mbzsgKCooJC8KQEAgLTcwNyw2ICs3NDIsMjAgQEAgSEFTSF9U QUJMRV9QCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL15IQVNIX1RBQkxFX1AgKExpc3BfT2JqZWN0 IGEpJC8KIEhBU0hfVEFCTEVfU0laRQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eSEFTSF9UQUJM RV9TSVpFIChzdHJ1Y3QgTGlzcF9IYXNoX1RhYmxlICpoKSQvCiBIQVNIX1ZBTFVFCWMtc3JjL2Vt YWNzL3NyYy9saXNwLmgJL15IQVNIX1ZBTFVFIChzdHJ1Y3QgTGlzcF9IYXNoX1RhYmxlICpoLCBw dHJkaWZmX3QgaS8KIEhBVkVfTlRHVUkJYy1zcmMvZXRhZ3MuYwkxMTYKK0hFQURJTkdTYWZ0ZXIJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxIRUFESU5HU2FmdGVye1xcbGV0XFxIRUFESU5H U2hvb2s9XFxIRUFESU5HU2RvdWIvCitIRUFESU5HU2RvdWJsZQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXEhFQURJTkdTZG91YmxleyQvCitIRUFESU5HU2RvdWJsZWFmdGVyCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGxldFxcSEVBRElOR1Nkb3VibGVhZnRlcj1cXEhFQURJTkdTYWZ0ZXIk LworSEVBRElOR1Nkb3VibGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcSEVBRElOR1Nk b3VibGV4eyUkLworSEVBRElOR1Nob29rCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcSEVB RElOR1Nob29rPVxccmVsYXgkLworSEVBRElOR1Nob29rCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcSEVBRElOR1NhZnRlcntcXGxldFxcSEVBRElOR1Nob29rPVxcSEVBRElOR1Nkb3ViLwor SEVBRElOR1Nob29rCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcSEVBRElOR1NzaW5nbGVh ZnRlcntcXGxldFxcSEVBRElOR1Nob29rPVxcSEVBRElOLworSEVBRElOR1NvZmYJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxIRUFESU5HU29mZnskLworSEVBRElOR1Nvbgl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXEhFQURJTkdTb257XFxIRUFESU5HU2RvdWJsZX0kLworSEVBRElO R1Nvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGRlZlxcSEVBRElOR1NvbntcXEhF QURJTkdTc2luZ2xlfX0kLworSEVBRElOR1Nvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9i YWxcXGRlZlxcSEVBRElOR1NvbntcXEhFQURJTkdTZG91YmxlfX0kLworSEVBRElOR1NzaW5nbGUJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxIRUFESU5HU3NpbmdsZXskLworSEVBRElOR1Nz aW5nbGVhZnRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEhFQURJTkdTc2luZ2xlYWZ0 ZXJ7XFxsZXRcXEhFQURJTkdTaG9vaz1cXEhFQURJTi8KK0hFQURJTkdTc2luZ2xleAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXEhFQURJTkdTc2luZ2xleHslJC8KIEhFQVAJYy1zcmMvZW1h Y3Mvc3JjL2dtYWxsb2MuYwkxMzEKIEhUTUxTUkMJbWFrZS1zcmMvTWFrZWZpbGUJL15IVE1MU1JD PXNvZnR3YXJlbGliZXJvLmh0bWwgaW5kZXguc2h0bWwgYWxncnRobXMuaC8KIEhUTUxfaGVscAlj LXNyYy9ldGFncy5jCTU4NApAQCAtNzY4LDYgKzgxNyw3IEBAIEpBVkFTUkMJbWFrZS1zcmMvTWFr ZWZpbGUJL15KQVZBU1JDPUFXVEVNdWwuamF2YSBLZXlFdmUuamF2YSBTTWFuLmphdmEgU3lzQ29s Li8KIEtCRF9CVUZGRVJfU0laRQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwk4MgogS0JZVEVT CW9iamMtc3JjL1BhY2tJbnNwLm0JNTgKIEtFWV9UT19DSEFSCWMtc3JjL2VtYWNzL3NyYy9rZXli b2FyZC5jCS9eI2RlZmluZSBLRVlfVE9fQ0hBUihrKSAoWElOVCAoaykgJiAoKDEgPDwgQ0hBUkFD VEUvCitMCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcTD1cXHB0ZXhMJC8KIExBVEVTVAlt YWtlLXNyYy9NYWtlZmlsZQkvXkxBVEVTVD0xNyQvCiBMQ0VfQ09NTUVOVAlwaHAtc3JjL2xjZV9m dW5jdGlvbnMucGhwCTEzCiBMQ0VfQ09NTUVOVF9UT09MCXBocC1zcmMvbGNlX2Z1bmN0aW9ucy5w aHAJMTcKQEAgLTE0MjksNiArMTQ3OSw5IEBAIFRhc2tfVHlwZS9iCWFkYS1zcmMvZXRhZ3MtdGVz dC1mb3IuYWRhCS9eICB0YXNrIGJvZHkgVGFza19UeXBlIGlzJC8KIFRhc2tfVHlwZS9iCWFkYS1z cmMvd2Fyb3F1aWVycy5hZGEJL14gIHRhc2sgYm9keSBUYXNrX1R5cGUgaXMkLwogVGFza19UeXBl L2sJYWRhLXNyYy9ldGFncy10ZXN0LWZvci5hZGEJL14gIHRhc2sgdHlwZSBUYXNrX1R5cGUgaXMk LwogVGFza19UeXBlL2sJYWRhLXNyYy93YXJvcXVpZXJzLmFkYQkvXiAgdGFzayB0eXBlIFRhc2tf VHlwZSBpcyQvCitUZVgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxUZVh7XFxyZWFsYmFj a3NsYXNoIFRlWH0lJC8KK1RlWAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXFRlWD1cXGlu ZGV4ZHVtbXl0ZXgkLworVGVYCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcVGVYe1xccmVh bGJhY2tzbGFzaCBUZVh9JC8KIFRlWF9jb21tYW5kcwljLXNyYy9ldGFncy5jCS9eVGVYX2NvbW1h bmRzIChGSUxFICppbmYpJC8KIFRlWF9oZWxwCWMtc3JjL2V0YWdzLmMJNjc0CiBUZVhfc3VmZml4 ZXMJYy1zcmMvZXRhZ3MuYwk2NzIKQEAgLTE3MTIsMTQgKzE3NjUsMTUgQEAgWVlfREVDTF9WQVJJ QUJMRVMJL3Vzci9zaGFyZS9iaXNvbi9iaXNvbi5zaW1wbGUJMzkxCiBZYWNjX2VudHJpZXMJYy1z cmMvZXRhZ3MuYwkvXllhY2NfZW50cmllcyAoRklMRSAqaW5mKSQvCiBZYWNjX2hlbHAJYy1zcmMv ZXRhZ3MuYwk2OTMKIFlhY2Nfc3VmZml4ZXMJYy1zcmMvZXRhZ3MuYwk2OTEKK1lhcHBlbmRpeGxl dHRlcmFuZHR5cGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxZYXBwZW5kaXhsZXR0ZXJh bmR0eXBleyUkLworWW5vdGhpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxZbm90aGlu Z3t9JC8KK1lwYWdlbnVtYmVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcWXBhZ2VudW1i ZXJ7XFxmb2xpb30kLworWXNlY3Rpb25udW1iZXJhbmR0eXBlCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcWXNlY3Rpb25udW1iZXJhbmR0eXBleyUkLworWXRpdGxlCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcWXRpdGxle1xcdGhpc2NoYXB0ZXJ9JC8KIFoJYy1zcmMvaC5oCTEwMAor Wwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxib2xkYnJheHtcXGxldCg9XFxvcG5yXFxs ZXQpPVxcY2xuclxcbGV0Wz1cXGxicmJcXGwvCiBbXQlydWJ5LXNyYy90ZXN0LnJiCS9eICAgICAg ICBkZWYgW10oeSkkLwogW109CXJ1Ynktc3JjL3Rlc3QucmIJL14gICAgICAgIGRlZiBbXT0oeSwg dmFsKSQvCi1cCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcIHt7XFxmb250ZGltZW4yXFxm b250PVxcdGNsb3Nlc2F2ZXt9IH19JSQvCi1cCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZc XHNlcHNwYWNlc3tcXGRlZiB7XFwgfX19JC8KLVwnCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcJ3t7J319JC8KLVwqCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcKntcXGhmaWxcXGJy ZWFrXFxoYm94e31cXGlnbm9yZXNwYWNlc30kLwotXC4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFwuey5cXHNwYWNlZmFjdG9yPTMwMDAgfSQvCiBcMQljLXNyYy9hYmJyZXYuYwkvXiAgREVG VkFSX0xJU1AgKCJhYmJyZXYtdGFibGUtbmFtZS1saXN0IiwgJlZhYmJyZXZfLwogXDEJYy1zcmMv YWJicmV2LmMJL14gIERFRlZBUl9MSVNQICgiZ2xvYmFsLWFiYnJldi10YWJsZSIsICZWZ2xvYmFs X2FiYi8KIFwxCWMtc3JjL2FiYnJldi5jCS9eICBERUZWQVJfTElTUCAoImZ1bmRhbWVudGFsLW1v ZGUtYWJicmV2LXRhYmxlIiwgJlYvCkBAIC0xODIyLDU0OCArMTg3NiwxMyBAQCBaCWMtc3JjL2gu aAkxMDAKIFwxCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eICBERUZWQVJfTElTUCAoInNl bGVjdGlvbi1pbmhpYml0LXVwZGF0ZS1jb21tYW5kcyIvCiBcMQljLXNyYy9lbWFjcy9zcmMva2V5 Ym9hcmQuYwkvXiAgREVGVkFSX0xJU1AgKCJkZWJ1Zy1vbi1ldmVudCIsCiAgICAgICAgICAgICAg ICBWZC8KLVw6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcOntcXHNwYWNlZmFjdG9yPTEw MDAgfSQvCi1cQAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEB7e1xcdHQgXFxjaGFyICcx MDB9fSQvCi1cQAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEB7QH0lJC8KLVxDSEFQRm9w ZW4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxDSEFQRm9wZW57JC8KLVxDSEFQRnBsYWlu CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcQ0hBUEZwbGFpbnskLwotXENIQVBQQUdvZGQJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxDSEFQUEFHb2RkeyQvCi1cQ0hBUFBBR29mZgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXENIQVBQQUdvZmZ7JC8KLVxDSEFQUEFHb24JdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxDSEFQUEFHb257JC8KLVxFTlZjaGVjawl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXEVOVmNoZWNreyUkLwotXEVhbHBoYWVudW1lcmF0ZQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVhbHBoYWVudW1lcmF0ZXtcXEVlbnVtZXJhdGV9JC8K LVxFY2Fwc2VudW1lcmF0ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVjYXBzZW51bWVy YXRle1xcRWVudW1lcmF0ZX0kLwotXEVjYXJ0b3VjaGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxFY2FydG91Y2hleyUkLwotXEVkZXNjcmlwdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXEVkZXNjcmlwdGlvbntcXEV0YWJsZX0lIE5lY2Vzc2FyeSBrbHVkZ2UuJC8KLVxFZGlz cGxheQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVkaXNwbGF5e1xcZW5kZ3JvdXBcXGFm dGVyZW52YnJlYWt9JSQvCi1cRWV4YW1wbGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxF ZXhhbXBsZXtcXEVsaXNwfSQvCi1cRWZsdXNobGVmdAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXEVmbHVzaGxlZnR7XFxlbmRncm91cFxcYWZ0ZXJlbnZicmVha30lJC8KLVxFZmx1c2hyaWdo dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVmbHVzaHJpZ2h0e1xcZW5kZ3JvdXBcXGFm dGVyZW52YnJlYWt9JSQvCi1cRWZvcm1hdAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVm b3JtYXR7XFxlbmRncm91cFxcYWZ0ZXJlbnZicmVha30kLwotXEVmdGFibGUJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxFZnRhYmxle1xcZW5kZ3JhZlxcZW5kZ3JvdXBcXGFmdGVyZW52YnJl YWt9JSQvCi1cRWdyb3VwCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcZGVmXFxFZ3JvdXB7XFxl Z3JvdXBcXGVuZGdyb3VwfSUkLwotXEVpZmNsZWFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcRWlmY2xlYXJ7fSQvCi1cRWlmc2V0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRWlm c2V0e30kLwotXEVpZnRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVpZnRleHt9JC8K LVxFbGlzcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVsaXNwe1xcZW5kZ3JvdXBcXGFm dGVyZW52YnJlYWt9JSQvCi1cRXF1b3RhdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XEVxdW90YXRpb257XFxwYXJcXGVuZGdyb3VwXFxhZnRlcmVudmJyZWFrfSUkLwotXEVzbWFsbGV4 YW1wbGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFc21hbGxleGFtcGxle1xcRWxpc3B9 JC8KLVxFc21hbGxleGFtcGxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdsb2JhbFxcZGVmXFxF c21hbGxleGFtcGxle1xcRXNtYWxsbGlzcH0kLwotXEVzbWFsbGxpc3AJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxFc21hbGxsaXNwe1xcZW5kZ3JvdXBcXGFmdGVyZW52YnJlYWt9JSQvCi1c RXRhYmxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRXRhYmxle1xcZW5kZ3JhZlxcZW5k Z3JvdXBcXGFmdGVyZW52YnJlYWt9JSQvCi1cRXRpdGxlcGFnZQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXEV0aXRsZXBhZ2V7JSQvCi1cRXZ0YWJsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXEV2dGFibGV7XFxlbmRncmFmXFxlbmRncm91cFxcYWZ0ZXJlbnZicmVha30lJC8KLVxI RUFESU5HU2FmdGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcSEVBRElOR1NhZnRlcntc XGxldFxcSEVBRElOR1Nob29rPVxcSEVBRElOR1Nkb3ViLwotXEhFQURJTkdTZG91YmxlCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcSEVBRElOR1Nkb3VibGV7JC8KLVxIRUFESU5HU2RvdWJs ZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxIRUFESU5HU2RvdWJsZXh7JSQvCi1cSEVB RElOR1NvZmYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxIRUFESU5HU29mZnskLwotXEhF QURJTkdTb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxIRUFESU5HU29ue1xcSEVBRElO R1Nkb3VibGV9JC8KLVxIRUFESU5HU29uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdsb2JhbFxc ZGVmXFxIRUFESU5HU29ue1xcSEVBRElOR1NzaW5nbGV9fSQvCi1cSEVBRElOR1Nvbgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGRlZlxcSEVBRElOR1NvbntcXEhFQURJTkdTZG91Ymxl fX0kLwotXEhFQURJTkdTc2luZ2xlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcSEVBRElO R1NzaW5nbGV7JC8KLVxIRUFESU5HU3NpbmdsZWFmdGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcSEVBRElOR1NzaW5nbGVhZnRlcntcXGxldFxcSEVBRElOR1Nob29rPVxcSEVBRElOLwot XEhFQURJTkdTc2luZ2xleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEhFQURJTkdTc2lu Z2xleHslJC8KLVxUZVgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxUZVh7XFxyZWFsYmFj a3NsYXNoIFRlWH0lJC8KLVxUZVgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxUZVh7XFxy ZWFsYmFja3NsYXNoIFRlWH0kLwotXFlhcHBlbmRpeGxldHRlcmFuZHR5cGUJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxZYXBwZW5kaXhsZXR0ZXJhbmR0eXBleyUkLwotXFlub3RoaW5nCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcWW5vdGhpbmd7fSQvCi1cWXBhZ2VudW1iZXIJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxZcGFnZW51bWJlcntcXGZvbGlvfSQvCi1cWXNlY3Rp b25udW1iZXJhbmR0eXBlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcWXNlY3Rpb25udW1i ZXJhbmR0eXBleyUkLwotXFl0aXRsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXFl0aXRs ZXtcXHRoaXNjaGFwdGVyfSQvCi1cXwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXF97e1xc cmVhbGJhY2tzbGFzaCBffX0lJC8KLVxfCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcX3tc XGx2dm1vZGUgXFxrZXJuLjA2ZW0gXFx2Ym94e1xcaHJ1bGUgd2lkdGguM2VtIC8KLVxgCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYHt7YH19JC8KLVxhYm92ZWVudmJyZWFrCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcYWJvdmVlbnZicmVha3t7XFxhZHZhbmNlXFxhYm92ZWVudnNr aXBhbW91bnQgYnkvCi1cYWN0aXZlZG91YmxlcXVvdGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxhY3RpdmVkb3VibGVxdW90ZXt7XFx0dCBcXGNoYXIgJzA0Mn19JC8KLVxhY3RpdmVwYXJl bnMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxhY3RpdmVwYXJlbnN7JSQvCi1cYWZvdXJw YXBlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFmb3VycGFwZXJ7JC8KLVxhZnRlcmVu dmJyZWFrCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYWZ0ZXJlbnZicmVha3tcXGVuZGdy YWYgXFxpZmRpbVxcbGFzdHNraXA8XFxhYm92ZS8KLVxhbHBoYWVudW1lcmF0ZQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGFscGhhZW51bWVyYXRle1xcZW51bWVyYXRle2F9fSQvCi1cYXBw ZW5kaXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRlZlxcYXBwZW5kaXh7XFxwYXJz ZWFyZ1xcYXBwZW5kaXh6enp9JC8KLVxhcHBlbmRpeGxldHRlcgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGFwcGVuZGl4bGV0dGVye1xcY2hhclxcdGhlXFxhcHBlbmRpeG5vfSQvCi1cYXBw ZW5kaXhub2RlcmVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYXBwZW5kaXhub2RlcmVm e1xcaWZ4XFxsYXN0bm9kZVxccmVsYXhcXGVsc2UkLwotXGFwcGVuZGl4c2VjCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXGFwcGVuZGl4c2Vje1xccGFyc2VhcmdcXGFwcGVuZGl4 c2VjdGlvbnp6LwotXGFwcGVuZGl4c2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRl clxcZGVmXFxhcHBlbmRpeHNlY3Rpb257XFxwYXJzZWFyZ1xcYXBwZW5kaXhzZWN0aS8KLVxhcHBl bmRpeHNlY3Rpb256enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxhcHBlbmRpeHNlY3Rp b256enogIzF7XFxzZWNjaGVja3thcHBlbmRpeHNlY3RpLwotXGFwcGVuZGl4c2V0cmVmCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYXBwZW5kaXhzZXRyZWYjMXslJC8KLVxhcHBlbmRpeHN1 YnNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxhcHBlbmRpeHN1YnNlY3tc XHBhcnNlYXJnXFxhcHBlbmRpeHN1YnNlYy8KLVxhcHBlbmRpeHN1YnNlY3p6egl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGFwcGVuZGl4c3Vic2Vjenp6ICMxe1xcc2VjY2hlY2t7YXBwZW5k aXhzdWJzZWMvCi1cYXBwZW5kaXhzdWJzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0 ZXJcXGRlZlxcYXBwZW5kaXhzdWJzdWJzZWN7XFxwYXJzZWFyZ1xcYXBwZW5kaXhzdWIvCi1cYXBw ZW5kaXhzdWJzdWJzZWN6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxhcHBlbmRpeHN1 YnN1YnNlY3p6eiAjMXtcXHNlY2NoZWNre2FwcGVuZGl4c3ViLwotXGFwcGVuZGl4enp6CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYXBwZW5kaXh6enogIzF7XFxzZWNjaGVja3thcHBlbmRp eH0lJC8KLVxhc2lzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYXNpcyMxeyMxfSQvCi1c YXV0aG9yCXRleC1zcmMvdGV4aW5mby50ZXgJL14gICBcXGRlZlxcYXV0aG9ye1xccGFyc2Vhcmdc XGF1dGhvcnp6en0lJC8KLVxhdXRob3Jmb250CXRleC1zcmMvdGV4aW5mby50ZXgJL14gICBcXGRl ZlxcYXV0aG9yZm9udHtcXGF1dGhvcnJtIFxcbm9ybWFsYmFzZWxpbmVza2lwID0vCi1cYXV0aG9y enp6CXRleC1zcmMvdGV4aW5mby50ZXgJL14gICBcXGRlZlxcYXV0aG9yenp6IyMxe1xcaWZzZWVu YXV0aG9yXFxlbHNlXFx2c2tpcCAwcHQgLwotXGIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxiIzF7e1xcYmYgIzF9fSQvCi1cYgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGIjIzF7 XFxyZWFsYmFja3NsYXNoIGIgeyMjMX19JSQvCi1cYgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGIjIzF7XFxyZWFsYmFja3NsYXNoIGIgeyMjMX19JC8KLVxiYWxhbmNlY29sdW1ucwl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGJhbGFuY2Vjb2x1bW5zeyUkLwotXGJlZ2luCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXGJlZ2lue1xccGFyc2VhcmdcXGJlZ2lueHh4 fSQvCi1cYmVnaW5kb3VibGVjb2x1bW5zCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYmVn aW5kb3VibGVjb2x1bW5ze1xcYmVnaW5ncm91cCQvCi1cYmVnaW54eHgJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxiZWdpbnh4eCAjMXslJC8KLVxiZgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGJme1xccmVhbGJhY2tzbGFzaCBiZiB9JSQvCi1cYmYJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxiZntcXHJlYWxiYWNrc2xhc2ggYmYgfSQvCi1cYnVsbGV0CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcYnVsbGV0eyRcXHB0ZXhidWxsZXQkfSQvCi1cYnllCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXGJ5ZXtcXHBhZ2VhbGlnbm1hY3JvXFx0cmFjaW5n c3RhdHM9MVxccHRleC8KLVxjYXBzZW51bWVyYXRlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcY2Fwc2VudW1lcmF0ZXtcXGVudW1lcmF0ZXtBfX0kLwotXGNhcnRib3QJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxjYXJ0Ym90e1xcaGJveCB0byBcXGNhcnRvdXRlcntcXGhza2lwXFxs c2tpcCQvCi1cY2FydG91Y2hlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxvbmdcXGRlZlxcY2Fy dG91Y2hleyUkLwotXGNhcnR0b3AJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjYXJ0dG9w e1xcaGJveCB0byBcXGNhcnRvdXRlcntcXGhza2lwXFxsc2tpcCQvCi1cY2JsCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcY2Jse3tcXGNpcmNsZVxcY2hhcicwMTJcXGhza2lwIC02cHR9fSQv Ci1cY2JyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2Jye3tcXGhza2lwIDZwdFxcY2ly Y2xlXFxjaGFyJzAxMX19JC8KLVxjZW50ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxj ZW50ZXJ7XFxwYXJzZWFyZ1xcY2VudGVyenp6fSQvCi1cY2VudGVyenp6CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcY2VudGVyenp6ICMxe3tcXGFkdmFuY2VcXGhzaXplIGJ5IC1cXGxlZnRz a2lwJC8KLVxjaGFwYnJlYWsJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwYnJlYWt7 XFxkb2JyZWFrIFxcY2hhcGhlYWRpbmdza2lwIHstNDAwMH19JC8KLVxjaGFwZW50cnkJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwZW50cnkjMSMyIzN7XFxkb2NoYXBlbnRyeXsjMlxc bGFiZWxzcGFjZSMxfS8KLVxjaGFwZW50cnlmb250cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGNoYXBlbnRyeWZvbnRze1xcc2VjZm9udHMgXFxybX0kLwotXGNoYXBmb250cwl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGNoYXBmb250c3slJC8KLVxjaGFwaGVhZGluZwl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGNoYXBoZWFkaW5ne1xccGFyc2VhcmdcXGNoYXBoZWFkaW5n enp6fSQvCi1cY2hhcGhlYWRpbmd6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFw aGVhZGluZ3p6eiAjMXtcXGNoYXBicmVhayAlJC8KLVxjaGFwb2RkcGFnZQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGNoYXBvZGRwYWdle1xcY2hhcHBhZ2VyIFxcaWZvZGRcXHBhZ2VubyBc XGVsc2UgXFxoLwotXGNoYXBwYWdlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNoYXBw YWdlcntcXHBhclxcdmZpbGxcXHN1cGVyZWplY3R9JC8KLVxjaGFwdGVyCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXG91dGVyXFxkZWZcXGNoYXB0ZXJ7XFxwYXJzZWFyZ1xcY2hhcHRlcnp6en0kLwot XGNoYXB0ZXJub2ZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2hhcHRlcm5vZm9u dHN7JSQvCi1cY2hhcHRlcnp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNoYXB0ZXJ6 enogIzF7XFxzZWNjaGVja3tjaGFwdGVyfSUkLwotXGNoYXIJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxjaGFye1xccmVhbGJhY2tzbGFzaCBjaGFyfSUkLwotXGNoYXIJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxjaGFye1xccmVhbGJhY2tzbGFzaCBjaGFyfSQvCi1cY2hmb3Blbgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNoZm9wZW4gIzEjMntcXGNoYXBvZGRwYWdlIHtc XGNoYXBmb250cyQvCi1cY2hmcGxhaW4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGZw bGFpbiAjMSMyeyUkLwotXGNpbmRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNpbmRl eCB7XFxjcGluZGV4fSQvCi1cY2luZGV4c3ViCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc Y2luZGV4c3ViIHtcXGJlZ2luZ3JvdXBcXG9iZXlsaW5lc1xcY2luZGV4c3VifSQvCi1cY2l0ZQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNpdGUjIzF7XFxyZWFsYmFja3NsYXNoIGNpdGUg eyMjMX19JSQvCi1cY2l0ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNpdGUjIzF7XFxy ZWFsYmFja3NsYXNoIGNpdGUgeyMjMX19JC8KLVxjbGVhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGNsZWFye1xccGFyc2VhcmdcXGNsZWFyeHh4fSQvCi1cY2xlYXJ4eHgJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxjbGVhcnh4eCAjMXskLwotXGNvZGUJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxjb2RlIyMxe1xccmVhbGJhY2tzbGFzaCBjb2RlIHsjIzF9fSUkLwotXGNv ZGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjb2RlIyMxe1xccmVhbGJhY2tzbGFzaCBj b2RlIHsjIzF9fSQvCi1cY29tbWVudAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNvbW1l bnR7XFxjYXRjb2RlIDY0PVxcb3RoZXIgXFxjYXRjb2RlIDEyMz1cXG90aGUvCi1cY29tbWVudHh4 eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNvbW1lbnR4eHggIzF7XFxjYXRjb2RlIDY0 PTAgXFxjYXRjb2RlIDEyMz0xIFxcYy8KLVxjb250ZW50cwl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxvdXRlclxcZGVmXFxjb250ZW50c3slJC8KLVxjb3B5cmlnaHQJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxjb3B5cmlnaHR7XFxyZWFsYmFja3NsYXNoIGNvcHlyaWdodCB9JSQvCi1cY29w eXJpZ2h0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY29weXJpZ2h0e1xccmVhbGJhY2tz bGFzaCBjb3B5cmlnaHR9JC8KLVxjcm9wbWFya3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxjcm9wbWFya3N7XFxsZXRcXG9uZXBhZ2VvdXQ9XFxjcm9wcGFnZW91dCB9JC8KLVxjcm9wcGFn ZW91dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNyb3BwYWdlb3V0IzF7XFxob2Zmc2V0 PTBwdCAlIG1ha2Ugc3VyZSB0aGlzIGQvCi1cY3RsCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcY3Rse3tcXGNpcmNsZVxcY2hhcicwMTNcXGhza2lwIC02cHR9fSUgNnB0IGZyb20gLwotXGN0 cgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGN0cnt7XFxoc2tpcCA2cHRcXGNpcmNsZVxc Y2hhcicwMTB9fSQvCi1cY3RybAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGN0cmwgIzF7 e1xcdHQgXFxyYXdiYWNrc2xhc2ggXFxoYXR9IzF9JC8KLVxkZWZjb2RlaW5kZXgJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZjb2RlaW5kZXh7XFxwYXJzZWFyZ1xcbmV3Y29kZWluZGV4 fSQvCi1cZGVmY3YJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZjdiAjMSB7XFxkZWZc XGRlZmN2dHlwZXsjMX0lJC8KLVxkZWZjdmFyaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcZGVmY3ZhcmhlYWRlciAjMSMyIzN7JSQvCi1cZGVmY3Z4CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZGVmY3Z4ICMxIHtcXGVycm1lc3NhZ2V7QGRlZmN2eCBpbiBpbnZhbGlkIGNv bi8KLVxkZWZmbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZmZue1xcZGVmbWV0aHBh cnNlYm9keVxcRWRlZmZuXFxkZWZmbnhcXGRlZmZuaGUvCi1cZGVmZm5oZWFkZXIJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZmbmhlYWRlciAjMSMyIzN7XFxkb2luZCB7Zm59e1xcY29k ZXsjMn19JSQvCi1cZGVmZm54CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmZm54ICMx IHtcXGVycm1lc3NhZ2V7QGRlZmZueCBpbiBpbnZhbGlkIGNvbi8KLVxkZWZpbmRleAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGRlZmluZGV4e1xccGFyc2VhcmdcXG5ld2luZGV4fSQvCi1c ZGVmaXZhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZml2YXJ7XFxkZWZ2cnBhcnNl Ym9keVxcRWRlZml2YXJcXGRlZml2YXJ4XFxkZWYvCi1cZGVmaXZhcmhlYWRlcgl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGRlZml2YXJoZWFkZXIgIzEjMiMzeyUkLwotXGRlZml2YXJ4CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmaXZhcnggIzEge1xcZXJybWVzc2FnZXtAZGVm aXZhcnggaW4gaW52YWxpZC8KLVxkZWZtYWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxk ZWZtYWN7XFxkZWZwYXJzZWJvZHlcXEVkZWZtYWNcXGRlZm1hY3hcXGRlZm1hY2hlLwotXGRlZm1h Y2hlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm1hY2hlYWRlciAjMSMye1xc ZG9pbmQge2ZufXtcXGNvZGV7IzF9fSUgTWFrLwotXGRlZm1hY3gJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxkZWZtYWN4ICMxIHtcXGVycm1lc3NhZ2V7QGRlZm1hY3ggaW4gaW52YWxpZCBj LwotXGRlZm1ldGhvZAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm1ldGhvZHtcXGRl Zm1ldGhwYXJzZWJvZHlcXEVkZWZtZXRob2RcXGRlZm1ldC8KLVxkZWZtZXRob2RoZWFkZXIJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZtZXRob2RoZWFkZXIgIzEjMiMzeyUkLwotXGRl Zm1ldGhvZHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZtZXRob2R4ICMxIHtcXGVy cm1lc3NhZ2V7QGRlZm1ldGhvZHggaW4gaW52LwotXGRlZm1ldGhwYXJzZWJvZHkJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZtZXRocGFyc2Vib2R5ICMxIzIjMyM0IHtcXGJlZ2luZ3Jv dXBcXGluRU5WIC8KLVxkZWZuYW1lCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmbmFt ZSAjMSMyeyUkLwotXGRlZm9wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmb3AgIzEg e1xcZGVmXFxkZWZvcHR5cGV7IzF9JSQvCi1cZGVmb3BoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxkZWZvcGhlYWRlciAjMSMyIzN7JSQvCi1cZGVmb3BwYXJzZWJvZHkJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZvcHBhcnNlYm9keSAjMSMyIzMjNCM1IHtcXGJlZ2lu Z3JvdXBcXGluRU5WIC8KLVxkZWZvcHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZv cHR7XFxkZWZ2YXJwYXJzZWJvZHlcXEVkZWZvcHRcXGRlZm9wdHhcXGRlZm9wLwotXGRlZm9wdGhl YWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm9wdGhlYWRlciAjMSMye1xcZG9p bmQge3ZyfXtcXGNvZGV7IzF9fSUgTWFrLwotXGRlZm9wdHgJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxkZWZvcHR4ICMxIHtcXGVycm1lc3NhZ2V7QGRlZm9wdHggaW4gaW52YWxpZCBjLwot XGRlZm9wdmFycGFyc2Vib2R5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmb3B2YXJw YXJzZWJvZHkgIzEjMiMzIzQjNSB7XFxiZWdpbmdyb3VwXFxpbkUvCi1cZGVmb3B4CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcZGVmb3B4ICMxIHtcXGVycm1lc3NhZ2V7QGRlZm9weCBpbiBp bnZhbGlkIGNvbi8KLVxkZWZwYXJzZWJvZHkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxk ZWZwYXJzZWJvZHkgIzEjMiMze1xcYmVnaW5ncm91cFxcaW5FTlYlIEVudmlyby8KLVxkZWZzcGVj CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmc3BlY3tcXGRlZnBhcnNlYm9keVxcRWRl ZnNwZWNcXGRlZnNwZWN4XFxkZWZzcC8KLVxkZWZzcGVjaGVhZGVyCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZGVmc3BlY2hlYWRlciAjMSMye1xcZG9pbmQge2ZufXtcXGNvZGV7IzF9fSUg TWEvCi1cZGVmc3BlY3gJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZzcGVjeCAjMSB7 XFxlcnJtZXNzYWdle0BkZWZzcGVjeCBpbiBpbnZhbGlkLwotXGRlZnRwCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcZGVmdHB7XFxkZWZ2cnBhcnNlYm9keVxcRWRlZnRwXFxkZWZ0cHhcXGRl ZnRwaGVhZC8KLVxkZWZ0cGFyZ3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0cGFy Z3MgIzF7XFxiZiBcXGRlZnZhcmFyZ3N7IzF9fSQvCi1cZGVmdHBoZWFkZXIJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxkZWZ0cGhlYWRlciAjMSMyIzN7XFxkb2luZCB7dHB9e1xcY29kZXsj Mn19JSQvCi1cZGVmdHB4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHB4ICMxIHtc XGVycm1lc3NhZ2V7QGRlZnRweCBpbiBpbnZhbGlkIGNvbi8KLVxkZWZ0eXBlZm4JdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBlZm57XFxkZWZtZXRocGFyc2Vib2R5XFxFZGVmdHlw ZWZuXFxkZWZ0eXAvCi1cZGVmdHlwZWZuaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcZGVmdHlwZWZuaGVhZGVyICMxIzIjM3tcXGRlZnR5cGVmbmhlYWRlcnh7IzF9ey8KLVxkZWZ0 eXBlZm5oZWFkZXJ4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZuaGVhZGVy eCAjMSMyIzMgIzRcXHJlbGF4eyUkLwotXGRlZnR5cGVmbngJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxkZWZ0eXBlZm54ICMxIHtcXGVycm1lc3NhZ2V7QGRlZnR5cGVmbnggaW4gaW52Lwot XGRlZnR5cGVmdW4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBlZnVue1xcZGVm cGFyc2Vib2R5XFxFZGVmdHlwZWZ1blxcZGVmdHlwZWYvCi1cZGVmdHlwZWZ1bmFyZ3MJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBlZnVuYXJncyAjMXslJC8KLVxkZWZ0eXBlZnVu aGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZ1bmhlYWRlciAjMSMy e1xcZGVmdHlwZWZ1bmhlYWRlcnh7IzF9Iy8KLVxkZWZ0eXBlZnVuaGVhZGVyeAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGVmdW5oZWFkZXJ4ICMxIzIgIzNcXHJlbGF4eyUkLwot XGRlZnR5cGV1bngJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBldW54ICMxIHtc XGVycm1lc3NhZ2V7QGRlZnR5cGV1bnggaW4gaW52LwotXGRlZnR5cGV2YXIJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBldmFye1xcZGVmdmFycGFyc2Vib2R5XFxFZGVmdHlwZXZh clxcZGVmdHkvCi1cZGVmdHlwZXZhcmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGRlZnR5cGV2YXJoZWFkZXIgIzEjMnslJC8KLVxkZWZ0eXBldmFyeAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGRlZnR5cGV2YXJ4ICMxIHtcXGVycm1lc3NhZ2V7QGRlZnR5cGV2YXJ4IGlu IGkvCi1cZGVmdHlwZXZyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZXZye1xc ZGVmdnJwYXJzZWJvZHlcXEVkZWZ0eXBldnJcXGRlZnR5cGV2LwotXGRlZnR5cGV2cmhlYWRlcgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGV2cmhlYWRlciAjMSMyIzN7XFxkb2lu ZCB7dnJ9e1xcY29kZXsjM319LwotXGRlZnR5cGV2cngJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxkZWZ0eXBldnJ4ICMxIHtcXGVycm1lc3NhZ2V7QGRlZnR5cGV2cnggaW4gaW52LwotXGRl ZnVuCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdW57XFxkZWZwYXJzZWJvZHlcXEVk ZWZ1blxcZGVmdW54XFxkZWZ1bmhlYWRlci8KLVxkZWZ1bmFyZ3MJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxkZWZ1bmFyZ3MgIzF7XFxmdW5jdGlvbnBhcmVucyBcXHNsJC8KLVxkZWZ1bmhl YWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnVuaGVhZGVyICMxIzJ7XFxkb2lu ZCB7Zm59e1xcY29kZXsjMX19JSBNYWtlLwotXGRlZnVueAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGRlZnVueCAjMSB7XFxlcnJtZXNzYWdle0BkZWZ1bnggaW4gaW52YWxpZCBjb24vCi1c ZGVmdmFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdmFye1xcZGVmdmFycGFyc2Vi b2R5XFxFZGVmdmFyXFxkZWZ2YXJ4XFxkZWZ2YS8KLVxkZWZ2YXJhcmdzCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcZGVmdmFyYXJncyAjMXtcXG5vcm1hbHBhcmVucyAjMSUkLwotXGRlZnZh cmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnZhcmhlYWRlciAjMSMye1xc ZG9pbmQge3ZyfXtcXGNvZGV7IzF9fSUgTWFrLwotXGRlZnZhcnBhcnNlYm9keQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGRlZnZhcnBhcnNlYm9keSAjMSMyIzN7XFxiZWdpbmdyb3VwXFxp bkVOViUgRW52LwotXGRlZnZhcngJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ2YXJ4 ICMxIHtcXGVycm1lc3NhZ2V7QGRlZnZhcnggaW4gaW52YWxpZCBjLwotXGRlZnZyCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdnJ7XFxkZWZ2cnBhcnNlYm9keVxcRWRlZnZyXFxkZWZ2 cnhcXGRlZnZyaGVhZC8KLVxkZWZ2cmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGRlZnZyaGVhZGVyICMxIzIjM3tcXGRvaW5kIHt2cn17XFxjb2RleyMyfX0lJC8KLVxkZWZ2cnBh cnNlYm9keQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnZycGFyc2Vib2R5ICMxIzIj MyM0IHtcXGJlZ2luZ3JvdXBcXGluRU5WICUkLwotXGRlZnZyeAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGRlZnZyeCAjMSB7XFxlcnJtZXNzYWdle0BkZWZ2cnggaW4gaW52YWxpZCBjb24v Ci1cZGVzY3JpcHRpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZXNjcmlwdGlvbntc XHRhYmxlentcXGRvbnRpbmRleH17MX17fXt9e317fX0kLwotXGRmCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZGZ7XFxsZXRcXHRlbnR0PVxcZGVmdHQgXFxsZXRcXHRlbmJmID0gXFxkZWZi ZiBcXGJmfS8KLVxkZm4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZm4jIzF7XFxyZWFs YmFja3NsYXNoIGRmbiB7IyMxfX0kLwotXGRpcmVudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcZGlyZW50cnl7XFxiZWdpbmdyb3VwXFxkaXJlbnRyeXh4eH0kLwotXGRpcmVudHJ5eHh4 CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxvbmdcXGRlZlxcZGlyZW50cnl4eHggIzFcXGVuZCBk aXJlbnRyeXtcXGVuZGdyb3VwXFxpZy8KLVxkaXNwbGF5CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcZGlzcGxheXtcXGJlZ2luZ3JvdXBcXGluRU5WICVUaGlzIGdyb3VwIGVuZHMgYXQvCi1c ZG1uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG1uIzF7XFx0aGluc3BhY2UgIzF9JC8K LVxkb2JyZWFrCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9icmVhayMxIzJ7XFxwYXJc XGlmZGltXFxsYXN0c2tpcDwjMVxccmVtb3ZlbGFzdC8KLVxkb2NoYXBlbnRyeQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGRvY2hhcGVudHJ5IzEjMnslJC8KLVxkb2NvZGVpbmRleAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRvY29kZWluZGV4IzF7XFxlZGVmXFxpbmRleG5hbWV7 IzF9XFxwYXJzZWFyZ1xcc2kvCi1cZG9pbmQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxk b2luZCAjMSMyeyUkLwotXGRvaW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb2lu ZGV4IzF7XFxlZGVmXFxpbmRleG5hbWV7IzF9XFxwYXJzZWFyZ1xcc2luZ2xlLwotXGRvbm9kZXJl Zgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRvbm9kZXJlZntcXGlmeFxcbGFzdG5vZGVc XHJlbGF4XFxlbHNlJC8KLVxkb250aW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxk b250aW5kZXggIzF7fSQvCi1cZG9wYWdlbm8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxk b3BhZ2VubyMxe3tcXHJtICMxfX0kLwotXGRvcHJpbnRpbmRleAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGRvcHJpbnRpbmRleCMxeyUkLwotXGRvc2VjZW50cnkJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxkb3NlY2VudHJ5IzEjMnslJC8KLVxkb3NldHEJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxkb3NldHEgIzEjMnt7XFxsZXRcXGZvbGlvPTAgXFx0dXJub2ZmYWN0aXZl JSQvCi1cZG9zaG9ydHBhZ2Vubwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRvc2hvcnRw YWdlbm8jMXt7XFxybSAjMX19JC8KLVxkb3N1YmluZAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGRvc3ViaW5kICMxIzIjM3slJC8KLVxkb3N1YnNlY2VudHJ5CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZG9zdWJzZWNlbnRyeSMxIzJ7JSQvCi1cZG9zdWJzdWJzZWNlbnRyeQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRvc3Vic3Vic2VjZW50cnkjMSMyeyUkLwotXGRvdHMJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3RzeyRcXGxkb3RzJH0kLwotXGRvdHMJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3Rze1xccmVhbGJhY2tzbGFzaCBkb3RzIH0lJC8K LVxkb3RzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG90c3tcXHJlYWxiYWNrc2xhc2gg ZG90c30kLwotXGRvdWJsZWNvbHVtbm91dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRv dWJsZWNvbHVtbm91dHtcXHNwbGl0dG9wc2tpcD1cXHRvcHNraXAgXFxzcGxpdC8KLVxlbXBoCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZW1waCMjMXtcXHJlYWxiYWNrc2xhc2ggZW1waCB7 IyMxfX0kLwotXGVuZAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGVuZHtcXHBhcnNlYXJn XFxlbmR4eHh9JC8KLVxlbmRkb3VibGVjb2x1bW5zCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcZW5kZG91YmxlY29sdW1uc3tcXG91dHB1dD17XFxiYWxhbmNlY29sdW1uc31cXGVqLwotXGVu ZHh4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGVuZHh4eCAjMXslJC8KLVxlbnRyeQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGVudHJ5ICMxIzJ7XFxiZWdpbmdyb3VwJC8KLVxl bnVtZXJhdGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxlbnVtZXJhdGV7XFxwYXJzZWFy Z1xcZW51bWVyYXRlenp6fSQvCi1cZW51bWVyYXRleQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGVudW1lcmF0ZXkgIzEgIzJcXGVuZGVudW1lcmF0ZXl7JSQvCi1cZW51bWVyYXRlenp6CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZW51bWVyYXRlenp6ICMxe1xcZW51bWVyYXRleSAj MSAgXFxlbmRlbnVtZXJhdGUvCi1cZXF1aXYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxl cXVpdntcXHJlYWxiYWNrc2xhc2ggZXF1aXZ9JC8KLVxlcXVpdgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGVxdWl2e1xcbGVhdmV2bW9kZVxcbG93ZXIuMWV4XFxoYm94IHRvIDFlbXtcXGhm aWwvCi1cZXJyb3IJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxlcnJvcntcXGxlYXZldm1v ZGVcXGxvd2VyLjdleFxcY29weVxcZXJyb3Jib3h9JC8KLVxlcnJvckUJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxlcnJvckUjMXskLwotXGV2ZW5mb290aW5nCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZXZlbmZvb3Rpbmd7XFxwYXJzZWFyZ1xcZXZlbmZvb3Rpbmd4eHh9JC8KLVxl dmVuaGVhZGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGV2ZW5oZWFkaW5ne1xccGFy c2VhcmdcXGV2ZW5oZWFkaW5neHh4fSQvCi1cZXZlcnlmb290aW5nCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZXZlcnlmb290aW5ne1xccGFyc2VhcmdcXGV2ZXJ5Zm9vdGluZ3h4eH0kLwot XGV2ZXJ5aGVhZGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGV2ZXJ5aGVhZGluZ3tc XHBhcnNlYXJnXFxldmVyeWhlYWRpbmd4eHh9JC8KLVxld2JvdAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGV3Ym90e1xcdnJ1bGUgaGVpZ2h0MHB0IGRlcHRoXFxjb3JuZXJ0aGljayB3aWR0 LwotXGV3dG9wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZXd0b3B7XFx2cnVsZSBoZWln aHRcXGNvcm5lcnRoaWNrIGRlcHRoMHB0IHdpZHQvCi1cZXhkZW50CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZXhkZW50e1xccGFyc2VhcmdcXGV4ZGVudHl5eX0kLwotXGV4ZGVudHl5eQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGV4ZGVudHl5eSAjMXt7XFxoZmlsXFxicmVha1xc aGJveHtcXGtlcm4gLVxcZXhkZW50LwotXGV4cGFuc2lvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGV4cGFuc2lvbntcXHJlYWxiYWNrc2xhc2ggZXhwYW5zaW9ufSQvCi1cZXhwYW5zaW9u CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZXhwYW5zaW9ue1xcbGVhdmV2bW9kZVxccmFp c2UuMWV4XFxoYm94IHRvIDFlbXtcXC8KLVxmaWxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcZmlsZSMjMXtcXHJlYWxiYWNrc2xhc2ggZmlsZSB7IyMxfX0lJC8KLVxmaWxlCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcZmlsZSMjMXtcXHJlYWxiYWNrc2xhc2ggZmlsZSB7IyMxfX0k LwotXGZpbmFsb3V0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZmluYWxvdXR7XFxvdmVy ZnVsbHJ1bGU9MHB0fSQvCi1cZmluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZmlu ZGV4IHtcXGZuaW5kZXh9JC8KLVxmaW5pc2h0aXRsZXBhZ2UJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxmaW5pc2h0aXRsZXBhZ2V7JSQvCi1cZmx1c2hjcgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGZsdXNoY3J7XFxpZnhcXHBhclxcbGlzcHBhciBcXGRlZlxcbmV4dCMjMXt9XFxl bHNlIC8KLVxmbHVzaGxlZnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxmbHVzaGxlZnR7 JSQvCi1cZmx1c2hyaWdodAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGZsdXNocmlnaHR7 JSQvCi1cZm5pdGVtaW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxmbml0ZW1pbmRl eCAjMXtcXGRvaW5kIHtmbn17XFxjb2RleyMxfX19JSQvCi1cZm9ybWF0CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcZm9ybWF0e1xcYmVnaW5ncm91cFxcaW5FTlYgJVRoaXMgZ3JvdXAgZW5k cyBhdCAvCi1cZnJlbmNoc3BhY2luZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGZyZW5j aHNwYWNpbmd7XFxzZmNvZGU0Nj0xMDAwIFxcc2Zjb2RlNjM9MTAwMCBcXC8KLVxmdGFibGUJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxmdGFibGV7XFxiZWdpbmdyb3VwXFxpbkVOVlxcb2Jl eWxpbmVzXFxvYmV5c3BhY2VzLwotXGdsb2dnaW5nYWxsCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcZ2xvZ2dpbmdhbGx7XFxiZWdpbmdyb3VwIFxcZ2xvYmFsZGVmcyA9IDEgXFxsb2dnLwot XGdyb3VwCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZ3JvdXB7XFxiZWdpbmdyb3VwJC8K LVxndHIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxndHJ7XFxyZWFsYmFja3NsYXNoIGd0 cn0lJC8KLVxndHIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxndHJ7XFxyZWFsYmFja3Ns YXNoIGd0cn0kLwotXGhhdAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGhhdHtcXHJlYWxi YWNrc2xhc2ggaGF0fSUkLwotXGhhdAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGhhdHtc XHJlYWxiYWNrc2xhc2ggaGF0fSQvCi1caGVhZGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGhlYWRpbmd7XFxwYXJzZWFyZ1xcc2VjaGVhZGluZ2l9JC8KLVxoZWFkaW5ncwl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGhlYWRpbmdzICMxIHtcXGNzbmFtZSBIRUFESU5HUyMxXFxl bmRjc25hbWV9JC8KLVxpCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaSMjMXtcXHJlYWxi YWNrc2xhc2ggaSB7IyMxfX0lJC8KLVxpCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaSMj MXtcXHJlYWxiYWNrc2xhc2ggaSB7IyMxfX0kLwotXGlmY2xlYXIJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxpZmNsZWFye1xcYmVnaW5ncm91cFxcaWdub3Jlc2VjdGlvbnNcXHBhcnNlYXJn XFxpLwotXGlmY2xlYXJmYWlsCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaWZjbGVhcmZh aWx7XFxiZWdpbmdyb3VwXFxpZ25vcmVzZWN0aW9uc1xcaWZjbGVhLwotXGlmY2xlYXJmYWlseHh4 CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxvbmdcXGRlZlxcaWZjbGVhcmZhaWx4eHggIzFcXGVu ZCBpZmNsZWFye1xcZW5kZ3JvdXBcXC8KLVxpZmNsZWFyeHh4CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcaWZjbGVhcnh4eCAjMXtcXGVuZGdyb3VwJC8KLVxpZmluZm8JdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxpZmluZm97XFxiZWdpbmdyb3VwXFxpZ25vcmVzZWN0aW9uc1xcaWZp bmZveHh4fSQvCi1caWZpbmZveHh4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxvbmdcXGRlZlxc aWZpbmZveHh4ICMxXFxlbmQgaWZpbmZve1xcZW5kZ3JvdXBcXGlnbm9yZS8KLVxpZnNldAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGlmc2V0e1xcYmVnaW5ncm91cFxcaWdub3Jlc2VjdGlv bnNcXHBhcnNlYXJnXFxpZnMvCi1caWZzZXRmYWlsCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcaWZzZXRmYWlse1xcYmVnaW5ncm91cFxcaWdub3Jlc2VjdGlvbnNcXGlmc2V0ZmFpLwotXGlm c2V0ZmFpbHh4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsb25nXFxkZWZcXGlmc2V0ZmFpbHh4 eCAjMVxcZW5kIGlmc2V0e1xcZW5kZ3JvdXBcXGlnbm8vCi1caWZzZXR4eHgJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxpZnNldHh4eCAjMXtcXGVuZGdyb3VwJC8KLVxpZnRleAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGlmdGV4e30kLwotXGlmdXNpbmd0dAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGlmdXNpbmd0dCMxIzJ7XFxpZmRpbSBcXGZvbnRkaW1lbjNcXHRoZVxc Zm9udD0wcHQvCi1caWdub3JlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaWdub3Jle1xc YmVnaW5ncm91cFxcaWdub3Jlc2VjdGlvbnMkLwotXGlnbm9yZXNlY3Rpb25zCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcaWdub3Jlc2VjdGlvbnN7JSQvCi1caWdub3JleHh4CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGxvbmdcXGRlZlxcaWdub3JleHh4ICMxXFxlbmQgaWdub3Jle1xcZW5k Z3JvdXBcXGlnbm9yZS8KLVxpaQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGlpIzF7e1xc aXQgIzF9fQkJJSBpdGFsaWMgZm9udCQvCi1caW5FTlYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc bmV3aWZcXGlmRU5WIFxcRU5WZmFsc2UgXFxkZWZcXGluRU5We1xcaWZFTlZcXHJlbGF4XFxlbHMv Ci1caW5jbHVkZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluY2x1ZGV7XFxwYXJzZWFy Z1xcaW5jbHVkZXp6en0kLwotXGluY2x1ZGV6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxpbmNsdWRlenp6ICMxe3tcXGRlZlxcdGhpc2ZpbGV7IzF9XFxpbnB1dCAjMSQvCi1caW5kZXhi YWNrc2xhc2gJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxkZWZcXGluZGV4YmFja3NsYXNoe1xc cmF3YmFja3NsYXNoeHh9JC8KLVxpbmRleGRvdGZpbGwJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxpbmRleGRvdGZpbGx7XFxjbGVhZGVycyQvCi1caW5kZXhkdW1taWVzCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcaW5kZXhkdW1taWVzeyUkLwotXGluZGV4ZHVtbXlkb3RzCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5kZXhkdW1teWRvdHN7Li4ufSQvCi1caW5kZXhkdW1t eWZvbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmRleGR1bW15Zm9udCMxeyMxfSQv Ci1caW5kZXhkdW1teXRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZGV4ZHVtbXl0 ZXh7VGVYfSQvCi1caW5kZXhmb250cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZGV4 Zm9udHN7JSQvCi1caW5kZXhub2ZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5k ZXhub2ZvbnRzeyUkLwotXGluZm9hcHBlbmRpeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGluZm9hcHBlbmRpeHtcXHBhcnNlYXJnXFxhcHBlbmRpeHp6en0kLwotXGluZm9hcHBlbmRpeHNl Ywl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm9hcHBlbmRpeHNlY3tcXHBhcnNlYXJn XFxhcHBlbmRpeHNlY3p6en0kLwotXGluZm9hcHBlbmRpeHN1YnNlYwl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGluZm9hcHBlbmRpeHN1YnNlY3tcXHBhcnNlYXJnXFxhcHBlbmRpeHN1YnNl Y3p6LwotXGluZm9hcHBlbmRpeHN1YnN1YnNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGluZm9hcHBlbmRpeHN1YnN1YnNlY3tcXHBhcnNlYXJnXFxhcHBlbmRpeHN1YnN1LwotXGluZm9j aGFwdGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5mb2NoYXB0ZXJ7XFxwYXJzZWFy Z1xcY2hhcHRlcnp6en0kLwotXGluZm9yZWYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxp bmZvcmVmICMxe1xcaW5mb3JlZnp6eiAjMSwsLCwqKn0kLwotXGluZm9yZWZ6enoJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvcmVmenp6ICMxLCMyLCMzLCM0Kip7U2VlIEluZm8gZmls ZSBcXGZpbGV7LwotXGluZm9zZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5m b3NlY3Rpb257XFxwYXJzZWFyZ1xcc2VjdGlvbnp6en0kLwotXGluZm9zdWJzZWN0aW9uCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5mb3N1YnNlY3Rpb257XFxwYXJzZWFyZ1xcc3Vic2Vj dGlvbnp6en0kLwotXGluZm9zdWJzdWJzZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcaW5mb3N1YnN1YnNlY3Rpb257XFxwYXJzZWFyZ1xcc3Vic3Vic2VjdGlvbnp6en0vCi1caW5m b3RvcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm90b3B7XFxwYXJzZWFyZ1xcdW5u dW1iZXJlZHp6en0kLwotXGluZm91bm51bWJlcmVkCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcaW5mb3VubnVtYmVyZWR7XFxwYXJzZWFyZ1xcdW5udW1iZXJlZHp6en0kLwotXGluZm91bm51 bWJlcmVkc2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5mb3VubnVtYmVyZWRzZWN7 XFxwYXJzZWFyZ1xcdW5udW1iZXJlZHNlY3p6en0vCi1caW5mb3VubnVtYmVyZWRzdWJzZWMJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvdW5udW1iZXJlZHN1YnNlY3tcXHBhcnNlYXJn XFx1bm51bWJlcmVkc3Vicy8KLVxpbmZvdW5udW1iZXJlZHN1YnN1YnNlYwl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGluZm91bm51bWJlcmVkc3Vic3Vic2Vje1xccGFyc2VhcmdcXHVubnVt YmVyZWRzLwotXGluaXRpYWwJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbml0aWFsICMx eyUkLwotXGludGVybmFsQml0ZW0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbnRlcm5h bEJpdGVte1xcc21hbGxicmVhayBcXHBhcnNlYXJnXFxpdGVtenp6fSQvCi1caW50ZXJuYWxCaXRl bXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbnRlcm5hbEJpdGVteHtcXHBhciBcXHBh cnNlYXJnXFxpdGVtenp6fSQvCi1caW50ZXJuYWxCa2l0ZW0JdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxpbnRlcm5hbEJraXRlbXtcXHNtYWxsYnJlYWsgXFxwYXJzZWFyZ1xca2l0ZW16enov Ci1caW50ZXJuYWxCa2l0ZW14CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW50ZXJuYWxC a2l0ZW14e1xccGFyIFxccGFyc2VhcmdcXGtpdGVtenp6fSQvCi1caW50ZXJuYWxCeGl0ZW0JdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbnRlcm5hbEJ4aXRlbSAiIzEie1xcZGVmXFx4aXRl bXN1YnRvcGl4eyMxfSBcXHMvCi1caW50ZXJuYWxCeGl0ZW14CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcaW50ZXJuYWxCeGl0ZW14ICIjMSJ7XFxkZWZcXHhpdGVtc3VidG9waXh7IzF9IFxc LwotXGludGVybmFsc2V0cQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGludGVybmFsc2V0 cSAjMSMyeyd4cmRlZiB7IzF9e1xcY3NuYW1lICMyXFxlbmRjLwotXGl0ZW0JdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxpdGVte1xcZXJybWVzc2FnZXtAaXRlbSB3aGlsZSBub3QgaW4gYSB0 YWJsZX19LwotXGl0ZW1jb250ZW50cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGl0ZW1j b250ZW50c3sjMX0lJC8KLVxpdGVtZm9udAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGl0 ZW1mb250eyMyfSUkLwotXGl0ZW1pemUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpdGVt aXple1xccGFyc2VhcmdcXGl0ZW1pemV6enp9JC8KLVxpdGVtaXplaXRlbQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGl0ZW1pemVpdGVteyUkLwotXGl0ZW1pemV5CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcaXRlbWl6ZXkgIzEjMnslJC8KLVxpdGVtaXplenp6CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcaXRlbWl6ZXp6eiAjMXslJC8KLVxpdGVteAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGl0ZW14e1xcZXJybWVzc2FnZXtAaXRlbXggd2hpbGUgbm90IGluIGEg dGFibGUvCi1caXRlbXp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGl0ZW16enogIzF7 XFxiZWdpbmdyb3VwICUkLwotXGtiZAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtiZCMx e1xcZGVmXFxsb29reyMxfVxcZXhwYW5kYWZ0ZXJcXGtiZGZvb1xcbG9vaz8/LwotXGtiZAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtiZCMjMXtcXHJlYWxiYWNrc2xhc2gga2JkIHsjIzF9 fSUkLwotXGtiZAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtiZCMjMXtcXHJlYWxiYWNr c2xhc2gga2JkIHsjIzF9fSQvCi1ca2JkZm9vCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc a2JkZm9vIzEjMiMzXFxwYXJ7XFxkZWZcXG9uZXsjMX1cXGRlZlxcdGhyZWV7IzN9XFxkLwotXGtl eQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtleSAjMXt7XFx0dCBcXGV4aHlwaGVucGVu YWx0eT0xMDAwMFxcdXBwZXJjYXNley8KLVxrZXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxrZXkjIzF7XFxyZWFsYmFja3NsYXNoIGtleSB7IyMxfX0lJC8KLVxrZXkJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxrZXkjIzF7XFxyZWFsYmFja3NsYXNoIGtleSB7IyMxfX0kLwotXGtp bmRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtpbmRleCB7XFxreWluZGV4fSQvCi1c a2l0ZW0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxraXRlbXtcXGVycm1lc3NhZ2V7QGtp dGVtIHdoaWxlIG5vdCBpbiBhIHRhYmxlLwotXGtpdGVteAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGtpdGVteHtcXGVycm1lc3NhZ2V7QGtpdGVteCB3aGlsZSBub3QgaW4gYSB0YWIvCi1c a2l0ZW16enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxraXRlbXp6eiAjMXtcXGRvc3Vi aW5kIHtrd317XFxjb2RleyMxfX17Zm9yIHtcXGIvCi1cbAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGwjMXt7XFxsaSAjMX1cXG51bGx9CQklICQvCi1cbGFiZWxzcGFjZQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGxhYmVsc3BhY2V7XFxoc2tpcDFlbSBcXHJlbGF4fSQvCi1cbGJy Ygl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGxicmJ7e1xcYmZcXGNoYXJgXFxbfX0gXFxk ZWZcXHJicmJ7e1xcYmZcXGNoYXJgXFxdfX0kLwotXGxlc3MJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxsZXNze1xccmVhbGJhY2tzbGFzaCBsZXNzfSUkLwotXGxlc3MJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxsZXNze1xccmVhbGJhY2tzbGFzaCBsZXNzfSQvCi1cbGluZW51bWJl cgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGRlZlxcbGluZW51bWJlcntcXHRoZVxcaW5wdXRs aW5lbm86XFxzcGFjZX0kLwotXGxpc3AJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxsaXNw e1xcYWJvdmVlbnZicmVhayQvCi1cbG9nZ2luZ2FsbAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGxvZ2dpbmdhbGx7XFx0cmFjaW5nY29tbWFuZHMyIFxcdHJhY2luZ3N0YXRzMiAkLwotXGxv c2VzcGFjZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGxvc2VzcGFjZSAjMXsjMX0kLwot XGxvd2VyY2FzZWVudW1lcmF0ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGxvd2VyY2Fz ZWVudW1lcmF0ZXslJC8KLVxsdnZtb2RlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbHZ2 bW9kZXtcXHZib3ggdG8gMHB0e319JC8KLVxtYWpvcmhlYWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxtYWpvcmhlYWRpbmd7XFxwYXJzZWFyZ1xcbWFqb3JoZWFkaW5nenp6fSQvCi1c bWFqb3JoZWFkaW5nenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbWFqb3JoZWFkaW5n enp6ICMxeyUkLwotXG1hdGgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxtYXRoIzF7XFxp bXBsaWNpdG1hdGggIzFcXGltcGxpY2l0bWF0aH0kLwotXG1lbnUJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcbG9uZ1xcZGVmXFxtZW51ICMxXFxlbmQgbWVudXt9JC8KLVxtaW51cwl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXG1pbnVzeyQtJH0kLwotXG15bGJyYWNlCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcbXlsYnJhY2Uge3tcXHR0IFxcY2hhciAnMTczfX0kLwotXG15cmJyYWNl CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbXlyYnJhY2Uge3tcXHR0IFxcY2hhciAnMTc1 fX0kLwotXG5lZWQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxuZWVke1xccGFyc2Vhcmdc XG5lZWR4fSQvCi1cbmVlZHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxuZWVkeCMxeyUk LwotXG5ld2NvZGVpbmRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5ld2NvZGVpbmRl eCAjMXskLwotXG5ld2luZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbmV3aW5kZXgg IzF7JC8KLVxuZXh0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbmV4dCMjMXt9XFxuZXh0 fSQvCi1cbmV4dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5leHQjIzF7fVxcbmV4dH0k LwotXG5leHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxuZXh0IyMxe31cXG5leHR9JC8K LVxuZXh0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbmV4dCMjMXt9XFxuZXh0fSQvCi1c bmV4dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5leHQjIzF7fVxcbmV4dH0kLwotXG5l eHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxuZXh0IyMxe31cXG5leHR9JC8KLVxubQl0 ZXgtc3JjL3Rlc3RlbnYudGV4CS9eXFxuZXdjb21tYW5ke1xcbm19WzJde1xcbm9tZW5jbGF0dXJl eyMxfXsjMn19JC8KLVxub2RlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbm9kZXtcXEVO VmNoZWNrXFxwYXJzZWFyZ1xcbm9kZXp6en0kLwotXG5vZGV4eHhbCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcbm9kZXh4eFsjMSwjMl17XFxnZGVmXFxsYXN0bm9kZXsjMX19JC8KLVxub2Rl enp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbm9kZXp6eiMxe1xcbm9kZXh4eCBbIzEs XX0kLwotXG5vZmlsbGV4ZGVudAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5vZmlsbGV4 ZGVudHtcXHBhcnNlYXJnXFxub2ZpbGxleGRlbnR5eXl9JC8KLVxub2ZpbGxleGRlbnR5eXkJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxub2ZpbGxleGRlbnR5eXkgIzF7e1xcYWR2YW5jZSBc XGxlZnRza2lwIGJ5IC1cXGUvCi1cbm9ybWFsYmFja3NsYXNoCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcbm9ybWFsYmFja3NsYXNoe3tcXHR0XFxyYXdiYWNrc2xhc2h4eH19JC8KLVxub3Jt YWxjYXJldAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5vcm1hbGNhcmV0e159JC8KLVxu b3JtYWxkb3VibGVxdW90ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5vcm1hbGRvdWJs ZXF1b3RleyJ9JC8KLVxub3JtYWxncmVhdGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc bm9ybWFsZ3JlYXRlcns+fSQvCi1cbm9ybWFsbGVzcwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXG5vcm1hbGxlc3N7PH0kLwotXG5vcm1hbHBsdXMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxub3JtYWxwbHVzeyt9JC8KLVxub3JtYWx0aWxkZQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXG5vcm1hbHRpbGRle359JC8KLVxub3JtYWx1bmRlcnNjb3JlCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcbm9ybWFsdW5kZXJzY29yZXtffSQvCi1cbm9ybWFsdmVydGljYWxiYXIJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxub3JtYWx2ZXJ0aWNhbGJhcnt8fSQvCi1cbnNi b3QJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxuc2JvdHtcXHZib3gkLwotXG5zdG9wCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbnN0b3B7XFx2Ym94JC8KLVxudW1iZXJlZHNlYwl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxudW1iZXJlZHNlY3tcXHBhcnNlYXJn XFxzZWN6enp9JC8KLVxudW1iZXJlZHN1YnNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRl clxcZGVmXFxudW1iZXJlZHN1YnNlY3tcXHBhcnNlYXJnXFxudW1iZXJlZHN1YnNlYy8KLVxudW1i ZXJlZHN1YnNlY3p6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG51bWJlcmVkc3Vic2Vj enp6ICMxe1xcc2VjY2hlY2t7c3Vic2VjdGlvbn0lJC8KLVxudW1iZXJlZHN1YnN1YnNlYwl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxudW1iZXJlZHN1YnN1YnNlY3tcXHBhcnNl YXJnXFxudW1iZXJlZHN1Yi8KLVxudW1iZXJlZHN1YnN1YnNlY3p6egl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXG51bWJlcmVkc3Vic3Vic2Vjenp6ICMxe1xcc2VjY2hlY2t7c3Vic3Vic2Vj dGkvCi1cbnVtZXJpY2VudW1lcmF0ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG51bWVy aWNlbnVtZXJhdGV7JSQvCi1cb2RkZm9vdGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XG9kZGZvb3Rpbmd7XFxwYXJzZWFyZ1xcb2RkZm9vdGluZ3h4eH0kLwotXG9kZGhlYWRpbmcJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxvZGRoZWFkaW5ne1xccGFyc2VhcmdcXG9kZGhlYWRp bmd4eHh9JC8KLVxvbmVwYWdlb3V0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcb25lcGFn ZW91dCMxe1xcaG9mZnNldD1cXG5vcm1hbG9mZnNldCQvCi1cb3BlbmNvbnRlbnRzCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcb3BlbmNvbnRlbnRze1xcb3Blbm91dCBcXGNvbnRlbnRzZmls ZSA9IFxcam9ibmFtLwotXG9wZW5pbmRpY2VzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc b3BlbmluZGljZXN7JSQvCi1cb3Bucgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG9wbnJ7 e1xcc2ZcXGNoYXJgXFwofX0gXFxkZWZcXGNsbnJ7e1xcc2ZcXGNoYXJgXFwpfX0gLwotXHBhZ2UJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwYWdle1xccGFyXFx2ZmlsbFxcc3VwZXJlamVj dH0kLwotXHBhZ2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgIFxcZGVmXFxwYWdleyUkLwotXHBh Z2Vib2R5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccGFnZWJvZHkjMXtcXHZib3ggdG9c XHBhZ2VoZWlnaHR7XFxib3htYXhkZXB0aD1cXC8KLVxwYWdlc29mYXIJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxwYWdlc29mYXJ7XFx1bnZib3hcXHBhcnRpYWxwYWdlICUkLwotXHBhcnNl YXJnCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccGFyc2VhcmcgIzF7XFxsZXRcXG5leHQ9 IzFcXGJlZ2luZ3JvdXBcXG9iZXlsaW5lcy8KLVxwYXJzZWFyZ2xpbmUJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxwYXJzZWFyZ2xpbmV7XFxiZWdpbmdyb3VwIFxcb2JleWxpbmVzIFxccGFy c2VhcmcvCi1ccGFyc2Vhcmd4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccGFyc2Vhcmd4 eyUkLwotXHBpbmRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHBpbmRleCB7XFxwZ2lu ZGV4fSQvCi1ccGxhaW5zZWNoZWFkaW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccGxh aW5zZWNoZWFkaW5nICMxe1xcc2VjaGVhZGluZ2kgeyMxfX0kLwotXHBvaW50CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxccG9pbnR7JFxcc3RhciR9JC8KLVxwcmltYXJ5CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxccHJpbWFyeSAjMXtcXGxpbmV7IzFcXGhmaWx9fSQvCi1ccHJpbnQJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwcmludHtcXHJlYWxiYWNrc2xhc2ggcHJpbnR9 JC8KLVxwcmludAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHByaW50e1xcbGVhdmV2bW9k ZVxcbG93ZXIuMWV4XFxoYm94IHRvIDFlbXtcXGhmaWwvCi1ccHJpbnRlZG1hbnVhbAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXHByaW50ZWRtYW51YWx7XFxpZ25vcmVzcGFjZXMgIzV9JSQv Ci1ccHJpbnRlZG1hbnVhbAl0ZXgtc3JjL3RleGluZm8udGV4CS9ec2VjdGlvbiBgYFxccHJpbnRl ZG5vZGVuYW1lJycgaW4gXFxjaXRle1xccHJpbnRlZG1hbnUvCi1ccHJpbnRlZG5vZGVuYW1lCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccHJpbnRlZG5vZGVuYW1le1xcaWdub3Jlc3BhY2Vz ICMzfSUkLwotXHByaW50ZWRub2RlbmFtZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHBy aW50ZWRub2RlbmFtZXtcXGlnbm9yZXNwYWNlcyAjMX0lJC8KLVxwcmludGluZGV4CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxccHJpbnRpbmRleHtcXHBhcnNlYXJnXFxkb3ByaW50aW5kZXh9 JC8KLVxweHJlZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHB4cmVmIzF7c2VlIFxceHJl ZlhbIzEsLCwsLCwsXX0kLwotXHF1b3RhdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHF1b3RhdGlvbnslJC8KLVxyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcciMxe3tcXHJt ICMxfX0JCSUgcm9tYW4gZm9udCQvCi1ccgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHIj IzF7XFxyZWFsYmFja3NsYXNoIHIgeyMjMX19JSQvCi1ccgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXHIjIzF7XFxyZWFsYmFja3NsYXNoIHIgeyMjMX19JC8KLVxyYXdiYWNrc2xhc2h4eAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHJhd2JhY2tzbGFzaHh4e1xcaW5kZXhiYWNrc2xh c2h9JSBcXGluZGV4YmFja3NsLwotXHJhd2JhY2tzbGFzaHh4CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxccmF3YmFja3NsYXNoeHh7XFxpbmRleGJhY2tzbGFzaH0lJC8KLVxyZWFkYXV4Zmls ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHJlYWRhdXhmaWxleyUkLwotXHJlZgl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHJlZiMxe1xceHJlZlhbIzEsLCwsLCwsXX0kLwotXHJl ZngJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxyZWZ4IzEjMnslJC8KLVxyZXNldG1hdGhm b250cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHJlc2V0bWF0aGZvbnRzeyUkLwotXHJl c3VsdAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHJlc3VsdHtcXHJlYWxiYWNrc2xhc2gg cmVzdWx0fSQvCi1ccmVzdWx0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccmVzdWx0e1xc bGVhdmV2bW9kZVxccmFpc2UuMTVleFxcaGJveCB0byAxZW17XFxoZi8KLVxybQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXHJte1xccmVhbGJhY2tzbGFzaCBybSB9JSQvCi1cc2FtcAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNhbXAgIzF7YFxcdGNsb3NleyMxfSdcXG51bGx9JC8K LVxzYW1wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2FtcCMjMXtcXHJlYWxiYWNrc2xh c2ggc2FtcCB7IyMxfX0lJC8KLVxzYW1wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2Ft cCMjMXtcXHJlYWxiYWNrc2xhc2ggc2FtcCB7IyMxfX0kLwotXHNjCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcc2MjMXt7XFxzbWFsbGNhcHMjMX19CSUgc21hbGxjYXBzIGZvbnQkLwotXHNl Y2NoZWNrCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2VjY2hlY2sjMXtcXGlmIFxccGFn ZW5vPDAgJSQvCi1cc2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgICAgIFxcZGVmXFxz ZWNlbnRyeSAjIzEjIzIjIzMjIzR7fSQvCi1cc2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxzZWNlbnRyeSMxIzIjMyM0e1xcZG9zZWNlbnRyeXsjMi4jM1xcbGFiZWxzcGFjZS8K LVxzZWNlbnRyeWZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2VjZW50cnlmb250 c3tcXHRleHRmb250c30kLwotXHNlY2ZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc c2VjZm9udHN7JSQvCi1cc2VjaGVhZGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNl Y2hlYWRpbmcgIzEjMiMze1xcc2VjaGVhZGluZ2kgeyMyLiMzXFxlbnNwYWNlLwotXHNlY2hlYWRp bmdicmVhawl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNlY2hlYWRpbmdicmVha3tcXGRv YnJlYWsgXFxzZWNoZWFkaW5nc2tpcCB7LTEwLwotXHNlY2hlYWRpbmdpCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcc2VjaGVhZGluZ2kgIzF7e1xcYWR2YW5jZSBcXHNlY2hlYWRpbmdza2lw IGJ5IFxcLwotXHNlY29uZGFyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNlY29uZGFy eSAjMSMyeyQvCi1cc2Vjenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2Vjenp6ICMx e1xcc2VjY2hlY2t7c2VjdGlvbn0lJC8KLVxzZXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxzZXR7XFxwYXJzZWFyZ1xcc2V0eHh4fSQvCi1cc2V0Y2hhcHRlcm5ld3BhZ2UJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxzZXRjaGFwdGVybmV3cGFnZSAjMSB7XFxjc25hbWUgQ0hBUFBB RyMxXFxlbmRjcy8KLVxzZXRjaGFwdGVyc3R5bGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxzZXRjaGFwdGVyc3R5bGUgIzEge1xcY3NuYW1lIENIQVBGIzFcXGVuZGNzbmFtZS8KLVxzZXRk ZWZmb250CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2V0ZGVmZm9udCAjMSB7XFxjc25h bWUgREVGIzFcXGVuZGNzbmFtZX0kLwotXHNldGZpbGVuYW1lCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcc2V0ZmlsZW5hbWV7JSQvCi1cc2V0cmVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcc2V0cmVmIzF7JSQvCi1cc2V0dGl0bGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxzZXR0aXRsZXtcXHBhcnNlYXJnXFxzZXR0aXRsZXp6en0kLwotXHNldHRpdGxlenp6CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2V0dGl0bGV6enogIzF7XFxnZGVmXFx0aGlzdGl0bGV7 IzF9fSQvCi1cc2V0eHh4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2V0eHh4ICMxeyQv Ci1cc2YJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZntcXGZhbT1cXHNmZmFtIFxcdGVu c2Z9JC8KLVxzZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNme1xccmVhbGJhY2tzbGFz aCBzZn0lJC8KLVxzaG9ydGNoYXBlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNo b3J0Y2hhcGVudHJ5IzEjMiMzeyUkLwotXHNob3J0dW5udW1iZXJlZGVudHJ5CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcc2hvcnR1bm51bWJlcmVkZW50cnkjMSMyeyUkLwotXHNpbmdsZWNv ZGVpbmRleGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2luZ2xlY29kZWluZGV4ZXIg IzF7XFxkb2luZHtcXGluZGV4bmFtZX17XFxjb2RlLwotXHNpbmdsZWluZGV4ZXIJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxzaW5nbGVpbmRleGVyICMxe1xcZG9pbmR7XFxpbmRleG5hbWV9 eyMxfX0kLwotXHNpbmdsZXNwYWNlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2luZ2xl c3BhY2V7JSQvCi1cc2wJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzbHtcXHJlYWxiYWNr c2xhc2ggc2wgfSUkLwotXHNtYWxsYm9vawl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNt YWxsYm9va3skLwotXHNtYWxsbGlzcHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzbWFs bGxpc3B4e1xcYWJvdmVlbnZicmVha1xcYmVnaW5ncm91cFxcaW5FTlYkLwotXHNtYXJ0aXRhbGlj CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc21hcnRpdGFsaWMjMXt7XFxzbCAjMX1cXGZ1 dHVyZWxldFxcbmV4dFxcc21hcnRpdC8KLVxzbWFydGl0YWxpY3gJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxzbWFydGl0YWxpY3h7XFxpZnhcXG5leHQsXFxlbHNlXFxpZnhcXG5leHQtXFxl bHNlXFxpLwotXHNwCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3B7XFxwYXJzZWFyZ1xc c3B4eHh9JC8KLVxzcGxpdG9mZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNwbGl0b2Zm IzEjMlxcZW5kbWFya3tcXGRlZlxcZmlyc3R7IzF9XFxkZWZcXHJlc3R7LwotXHNweHh4CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3B4eHggIzF7XFxwYXIgXFx2c2tpcCAjMVxcYmFzZWxp bmVza2lwfSQvCi1cc3RhcnRjb250ZW50cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHN0 YXJ0Y29udGVudHMjMXslJC8KLVxzdGFydGVudW1lcmF0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcc3RhcnRlbnVtZXJhdGlvbiMxeyUkLwotXHN1YmhlYWRpbmcJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxzdWJoZWFkaW5ne1xccGFyc2VhcmdcXHN1YnNlY2hlYWRpbmdpfSQv Ci1cc3Vic2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgICAgIFxcZGVmXFxzdWJzZWNl bnRyeSAjIzEjIzIjIzMjIzQjIzV7fSQvCi1cc3Vic2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxzdWJzZWNlbnRyeSMxIzIjMyM0IzV7XFxkb3N1YnNlY2VudHJ5eyMyLiMzLiM0 LwotXHN1YnNlY2ZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3Vic2VjZm9udHN7 JSQvCi1cc3Vic2VjaGVhZGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHN1YnNlY2hl YWRpbmcgIzEjMiMzIzR7XFxzdWJzZWNoZWFkaW5naSB7IzIuIzMvCi1cc3Vic2VjaGVhZGluZ2Jy ZWFrCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3Vic2VjaGVhZGluZ2JyZWFre1xcZG9i cmVhayBcXHN1YnNlY2hlYWRpbmdza2kvCi1cc3Vic2VjaGVhZGluZ2kJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxzdWJzZWNoZWFkaW5naSAjMXt7XFxhZHZhbmNlIFxcc3Vic2VjaGVhZGlu Z3NraS8KLVxzdWJzdWJoZWFkaW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3Vic3Vi aGVhZGluZ3tcXHBhcnNlYXJnXFxzdWJzdWJzZWNoZWFkaW5naX0kLwotXHN1YnN1YnNlY2VudHJ5 CXRleC1zcmMvdGV4aW5mby50ZXgJL14gICAgICBcXGRlZlxcc3Vic3Vic2VjZW50cnkgIyMxIyMy IyMzIyM0IyM1IyM2e30kLwotXHN1YnN1YnNlY2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcc3Vic3Vic2VjZW50cnkjMSMyIzMjNCM1IzZ7JSQvCi1cc3Vic3Vic2VjZm9udHMJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzdWJzdWJzZWNmb250c3tcXHN1YnNlY2ZvbnRzfSAl IE1heWJlIHRoaXMgc2hvLwotXHN1YnN1YnNlY2hlYWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxzdWJzdWJzZWNoZWFkaW5nICMxIzIjMyM0IzV7XFxzdWJzdWJzZWNoZWFkaW5nLwot XHN1YnN1YnNlY2hlYWRpbmdpCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3Vic3Vic2Vj aGVhZGluZ2kgIzF7e1xcYWR2YW5jZSBcXHN1YnNlY2hlYWRpbmcvCi1cc3VidGl0bGUJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXiAgIFxcZGVmXFxzdWJ0aXRsZXtcXHBhcnNlYXJnXFxzdWJ0aXRsZXp6 en0lJC8KLVxzdWJ0aXRsZWZvbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgIFxcZGVmXFxzdWJ0 aXRsZWZvbnR7XFxzdWJ0aXRsZXJtIFxcbm9ybWFsYmFzZWxpbmVzay8KLVxzdWJ0aXRsZXp6egl0 ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFxkZWZcXHN1YnRpdGxlenp6IyMxe3tcXHN1YnRpdGxl Zm9udCBcXHJpZ2h0bGluZXsjLwotXHN1bW1hcnljb250ZW50cwl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxvdXRlclxcZGVmXFxzdW1tYXJ5Y29udGVudHN7JSQvCi1cc3VwZXJlamVjdAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXHN1cGVyZWplY3R7XFxwYXJcXHBlbmFsdHkgLTIwMDAwXFxm b290bm90ZW5vID0wIC8KLVxzeW5jb2RlaW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxzeW5jb2RlaW5kZXggIzEgIzIgeyUkLwotXHN5bmluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcc3luaW5kZXggIzEgIzIgeyUkLwotXHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFx0IzF7e1xcdHQgXFxleGh5cGhlbnBlbmFsdHk9MTAwMDBcXHJhd2JhY2tzbGFzaCAvCi1c dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHQjIzF7XFxyZWFsYmFja3NsYXNoIHIgeyMj MX19JSQvCi1cdGFibGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0YWJsZXtcXGJlZ2lu Z3JvdXBcXGluRU5WXFxvYmV5bGluZXNcXG9iZXlzcGFjZXNcXC8KLVx0YWJsZXoJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFx0YWJsZXogIzEjMiMzIzQjNSM2eyUkLwotXHRjbG9zZQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHRjbG9zZSMxe3tcXHJtIFxcdGNsb3Nlcm09XFxmb250 ZGltZW4yXFxmb250IFxcdHQgLwotXHRjbG9zZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHRjbG9zZSMjMXtcXHJlYWxiYWNrc2xhc2ggdGNsb3NlIHsjIzF9fSUkLwotXHRjbG9zZQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHRjbG9zZSMjMXtcXHJlYWxiYWNrc2xhc2ggdGNsb3Nl IHsjIzF9fSQvCi1cdGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdGV4e1xcYmVnaW5n cm91cCQvCi1cdGV4aW5mb3ZlcnNpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0ZXhp bmZvdmVyc2lvbnsyLjczfSQvCi1cdGV4dGZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcdGV4dGZvbnRzeyUkLwotXHRoZWFyZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGRlZlxc dGhlYXJneyMxfSUkLwotXHRoZWFyZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGlmeFxcdGhl YXJnXFxlbXB0eSBcXGRlZlxcdGhlYXJnezF9XFxmaSQvCi1cdGhpc2NoYXB0ZXIJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFx0aGlzY2hhcHRlcnt9IFxcZGVmXFx0aGlzc2VjdGlvbnt9JC8K LVx0aGlzY2hhcHRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFx1bm51bWJjaGFwbWFjcm97 IzF9XFxkZWZcXHRoaXNjaGFwdGVye30lJC8KLVx0aGlzY2hhcHRlcm5hbWUJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFx0aGlzY2hhcHRlcm5hbWV7Tm8gQ2hhcHRlciBUaXRsZX0kLwotXHRo aXNmaWxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdGhpc2ZpbGV7fSQvCi1cdGhpc3Rp dGxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdGhpc3RpdGxle05vIFRpdGxlfSQvCi1c dGllCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdGlle1xccGVuYWx0eSAxMDAwMFxcIH0g ICAgICUgU2F2ZSBwbGFpbiB0ZXggZGUvCi1cdGluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcdGluZGV4IHtcXHRwaW5kZXh9JC8KLVx0aXRsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9e ICAgXFxkZWZcXHRpdGxle1xccGFyc2VhcmdcXHRpdGxlenp6fSUkLwotXHRpdGxlZm9udAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHRpdGxlZm9udCMxe3tcXHRpdGxlcm0gIzF9fSQvCi1c dGl0bGVwYWdlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdGl0bGVwYWdle1xcYmVnaW5n cm91cCBcXHBhcmluZGVudD0wcHQgXFx0ZXh0Zm9uLwotXHRpdGxlenp6CXRleC1zcmMvdGV4aW5m by50ZXgJL14gICBcXGRlZlxcdGl0bGV6enojIzF7XFxsZWZ0bGluZXtcXHRpdGxlZm9udHsjIzF9 fSQvCi1cdG9kYXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0b2RheXtcXG51bWJlclxc ZGF5XFxzcGFjZSQvCi1cdG9wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXHRv cHtcXHBhcnNlYXJnXFx1bm51bWJlcmVkenp6fSQvCi1cdHQJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFx0dHtcXHJlYWxiYWNrc2xhc2ggdHR9JSQvCi1cdHQJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFx0dHtcXHJlYWxiYWNrc2xhc2ggdHR9JC8KLVx0dXJub2ZmYWN0aXZlCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdHVybm9mZmFjdGl2ZXtcXGxldCI9XFxub3JtYWxkb3Vi bGVxdW90ZSQvCi1cdW5uY2hmb3Blbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHVubmNo Zm9wZW4gIzF7JSQvCi1cdW5uY2hmcGxhaW4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx1 bm5jaGZwbGFpbiAjMXslJC8KLVx1bm51bWJjaGFwZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFx1bm51bWJjaGFwZW50cnkjMSMye1xcZG9jaGFwZW50cnl7IzF9eyMyfX0kLwotXHVu bnVtYmVyZWQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRlZlxcdW5udW1iZXJlZHtc XHBhcnNlYXJnXFx1bm51bWJlcmVkenp6fSQvCi1cdW5udW1iZXJlZHNlYwl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxvdXRlclxcZGVmXFx1bm51bWJlcmVkc2Vje1xccGFyc2VhcmdcXHVubnVtYmVy ZWRzZWN6ei8KLVx1bm51bWJlcmVkc2Vjenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc dW5udW1iZXJlZHNlY3p6eiAjMXtcXHNlY2NoZWNre3VubnVtYmVyZWRzZWN9JS8KLVx1bm51bWJl cmVkc3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXHVubnVtYmVyZWRz dWJzZWN7XFxwYXJzZWFyZ1xcdW5udW1iZXJlZHN1LwotXHVubnVtYmVyZWRzdWJzZWN6enoJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx1bm51bWJlcmVkc3Vic2Vjenp6ICMxe1xcc2VjY2hl Y2t7dW5udW1iZXJlZHN1LwotXHVubnVtYmVyZWRzdWJzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcb3V0ZXJcXGRlZlxcdW5udW1iZXJlZHN1YnN1YnNlY3tcXHBhcnNlYXJnXFx1bm51bWJl cmUvCi1cdW5udW1iZXJlZHN1YnN1YnNlY3p6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHVubnVtYmVyZWRzdWJzdWJzZWN6enogIzF7XFxzZWNjaGVja3t1bm51bWJlcmUvCi1cdW5udW1i ZXJlZHp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHVubnVtYmVyZWR6enogIzF7XFxz ZWNjaGVja3t1bm51bWJlcmVkfSUkLwotXHVubnVtYm5vZGVyZWYJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFx1bm51bWJub2RlcmVme1xcaWZ4XFxsYXN0bm9kZVxccmVsYXhcXGVsc2UkLwot XHVubnVtYnNlY2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL14gICAgICBcXGRlZlxcdW5udW1i c2VjZW50cnkgIyMxIyMye30kLwotXHVubnVtYnNlY2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcdW5udW1ic2VjZW50cnkjMSMye1xcZG9zZWNlbnRyeXsjMX17IzJ9fSQvCi1cdW5u dW1ic2V0cmVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdW5udW1ic2V0cmVmIzF7JSQv Ci1cdW5udW1ic3Vic2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgICAgIFxcZGVmXFx1 bm51bWJzdWJzZWNlbnRyeSAjIzEjIzJ7fSQvCi1cdW5udW1ic3Vic2VjZW50cnkJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFx1bm51bWJzdWJzZWNlbnRyeSMxIzJ7XFxkb3N1YnNlY2VudHJ5 eyMxfXsjMn19LwotXHVubnVtYnN1YnN1YnNlY2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL14g ICAgICBcXGRlZlxcdW5udW1ic3Vic3Vic2VjZW50cnkgIyMxIyMye30kLwotXHVubnVtYnN1YnN1 YnNlY2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdW5udW1ic3Vic3Vic2VjZW50 cnkjMSMye1xcZG9zdWJzdWJzZWNlbnRyeXsjMS8KLVx1cHBlcmNhc2VlbnVtZXJhdGUJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFx1cHBlcmNhc2VlbnVtZXJhdGV7JSQvCi1cdmFyCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdmFyIyMxe1xccmVhbGJhY2tzbGFzaCB2YXIgeyMjMX19 JSQvCi1cdmFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdmFyIyMxe1xccmVhbGJhY2tz bGFzaCB2YXIgeyMjMX19JC8KLVx2aW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx2 aW5kZXgge1xcdnJpbmRleH0kLwotXHZyaXRlbWluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcdnJpdGVtaW5kZXggIzF7XFxkb2luZCB7dnJ9e1xcY29kZXsjMX19fSUkLwotXHZ0YWJs ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHZ0YWJsZXtcXGJlZ2luZ3JvdXBcXGluRU5W XFxvYmV5bGluZXNcXG9iZXlzcGFjZXMvCi1cdwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHcjMXtcXGxlYXZldm1vZGVcXGhib3h7IzF9fSQvCi1cdwl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXHd7XFxyZWFsYmFja3NsYXNoIHcgfSUkLwotXHcJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFx3e1xccmVhbGJhY2tzbGFzaCB3fSQvCi1ceGl0ZW0JdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFx4aXRlbXtcXGVycm1lc3NhZ2V7QHhpdGVtIHdoaWxlIG5vdCBpbiBhIHRhYmxl LwotXHhpdGVteAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHhpdGVteHtcXGVycm1lc3Nh Z2V7QHhpdGVteCB3aGlsZSBub3QgaW4gYSB0YWIvCi1ceGl0ZW16enoJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFx4aXRlbXp6eiAjMXtcXGRvc3ViaW5kIHtrd317XFxjb2RleyMxfX17Zm9y IHtcXGIvCi1ceGtleQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHhrZXl7XFxrZXl9JC8K LVx4cmRlZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHhyZGVmICMxIzJ7JC8KLVx4cmVm CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxceHJlZiMxe1NlZSBcXHhyZWZYWyMxLCwsLCws LF19JC8KLVx4cmVmWFsJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx4cmVmWFsjMSwjMiwj MywjNCwjNSwjNl17XFxiZWdpbmdyb3VwJSQvCitdCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdk ZWZcXGJvbGRicmF4e1xcbGV0KD1cXG9wbnJcXGxldCk9XFxjbG5yXFxsZXRbPVxcbGJyYlxcbC8K IF4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXnt7XFx0dCBcXGhhdH19JC8KK14JdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcbGV0Xj1cXG5vcm1hbGNhcmV0JC8KK18JdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxfe3tcXHJlYWxiYWNrc2xhc2ggX319JSQvCiBfCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZl97XFxpZnVzaW5ndHRcXG5vcm1hbHVuZGVyc2NvcmVcXF99JC8KK18JdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxfe1xcbHZ2bW9kZSBcXGtlcm4uMDZlbSBcXHZib3h7 XFxocnVsZSB3aWR0aC4zZW0gLworXwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRfPVxcbm9y bWFsdW5kZXJzY29yZSQvCiBfR0VUT1BUX0gJYy1zcmMvZ2V0b3B0LmgJMTkKIF9HTlVfU09VUkNF CWMtc3JjL2V0YWdzLmMJOTQKIF9SRUdFWF9ICWMtc3JjL2VtYWNzL3NyYy9yZWdleC5oCTIxCkBA IC0yNDIyLDYgKzE5NDEsNyBAQCBfcmVhbGxvYwljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCS9e X3JlYWxsb2MgKHZvaWQgKnB0ciwgc2l6ZV90IHNpemUpJC8KIF9yZWFsbG9jX2ludGVybmFsCWMt c3JjL2VtYWNzL3NyYy9nbWFsbG9jLmMJL15fcmVhbGxvY19pbnRlcm5hbCAodm9pZCAqcHRyLCBz aXplX3Qgc2l6ZSkkLwogX3JlYWxsb2NfaW50ZXJuYWxfbm9sb2NrCWMtc3JjL2VtYWNzL3NyYy9n bWFsbG9jLmMJL15fcmVhbGxvY19pbnRlcm5hbF9ub2xvY2sgKHZvaWQgKnB0ciwgc2l6ZV90IHNp emUpJC8KIGAJcnVieS1zcmMvdGVzdC5yYgkvXiAgICAgICAgZGVmIGAoY29tbWFuZCkkLworYAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGB7e2B9fSQvCiBhCWMuYwkxNTIKIGEJYy5jCTE4 MAogYQljLmMJL15hKCkkLwpAQCAtMjQ1Nyw2ICsxOTc3LDcgQEAgYWJicmV2c19jaGFuZ2VkCWMt c3JjL2FiYnJldi5jCTU2CiBhYmMJYy1zcmMvaC5oCTMzCiBhYmMJYy1zcmMvaC5oCTM3CiBhYm9y dC1yZWN1cnNpdmUtZWRpdAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXkRFRlVOICgiYWJv cnQtcmVjdXJzaXZlLWVkaXQiLCBGYWJvcnRfcmVjdXJzaXZlX2VkLworYWJvdmVlbnZicmVhawl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFib3ZlZW52YnJlYWt7e1xcYWR2YW5jZVxcYWJv dmVlbnZza2lwYW1vdW50IGJ5LwogYWJzL2YJYWRhLXNyYy9ldGFncy10ZXN0LWZvci5hZGEJL14g ICBmdW5jdGlvbiAiYWJzIiAgIChSaWdodCA6IENvbXBsZXgpIHJldHVybiBSZWFsJy8KIGFic29s dXRlX2Rpcm5hbWUJYy1zcmMvZXRhZ3MuYwkvXmFic29sdXRlX2Rpcm5hbWUgKGNoYXIgKmZpbGUs IGNoYXIgKmRpcikkLwogYWJzb2x1dGVfZmlsZW5hbWUJYy1zcmMvZXRhZ3MuYwkvXmFic29sdXRl X2ZpbGVuYW1lIChjaGFyICpmaWxlLCBjaGFyICpkaXIpJC8KQEAgLTI1MDUsNiArMjAyNiw4IEBA IGFjY3Vfd2FybmluZwltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gdHlwZSBhY2N1X3dhcm5p bmckLwogYWN0CXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15hY3QoT3V0Rm9ybSxPdXRTeW4sV3Mp Oi0kLwogYWN0aW9uCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15hY3Rpb24oS2V5VmFscyk6LSQv CiBhY3RpdmVfbWFwcwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmFjdGl2ZV9tYXBzIChM aXNwX09iamVjdCBmaXJzdF9ldmVudCkkLworYWN0aXZlZG91YmxlcXVvdGUJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxhY3RpdmVkb3VibGVxdW90ZXt7XFx0dCBcXGNoYXIgJzA0Mn19JC8K K2FjdGl2ZXBhcmVucwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFjdGl2ZXBhcmVuc3sl JC8KIGFjdG91dAlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9eYWN0b3V0KCdUZXh0JyxUcmVlcyk6 LSQvCiBhZGRBcmNocwlvYmpjLXNyYy9QYWNrSW5zcC5tCS9eLSh2b2lkKWFkZEFyY2hzOihjb25z dCBjaGFyICopc3RyaW5nJC8KIGFkZFBPUmVhZGVyCXBocC1zcmMvbGNlX2Z1bmN0aW9ucy5waHAJ L14gICAgICBmdW5jdGlvbiBhZGRQT1JlYWRlcigkZF9uYW1lLCAmJHBvcikkLwpAQCAtMjUxNyw2 ICsyMDQwLDggQEAgYWRkX3VzZXJfc2lnbmFsCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9e YWRkX3VzZXJfc2lnbmFsIChpbnQgc2lnLCBjb25zdCBjaGEKIGFkZG5vaXNlCWh0bWwtc3JjL2Fs Z3J0aG1zLmh0bWwJL15BZGRpbmcgTm9pc2UgdG8gdGhlJC8KIGFkZHJlc3MJeS1zcmMvY2NjcC55 CTExMwogYWRqdXN0X3BvaW50X2Zvcl9wcm9wZXJ0eQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQu YwkvXmFkanVzdF9wb2ludF9mb3JfcHJvcGVydHkgKHB0cmRpZmZfdCBsYXN0X3B0LCBib29sLwor YWZvdXJwYXBlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFmb3VycGFwZXJ7JC8KK2Fm dGVyZW52YnJlYWsJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxhZnRlcmVudmJyZWFre1xc ZW5kZ3JhZiBcXGlmZGltXFxsYXN0c2tpcDxcXGFib3ZlLwogYWdlbnQJY3Atc3JjL2NsaGVpci5o cHAJNzUKIGFsZ29yaXRobXMJaHRtbC1zcmMvYWxncnRobXMuaHRtbAkvXkRlc2NyaXB0aW9uJC8K IGFsaWFzCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJNjg4CkBAIC0yNTMxLDYgKzIwNTYsOSBAQCBh bGl2ZQljcC1zcmMvY29ud2F5LmhwcAk3CiBhbGxfa2JvYXJkcwljLXNyYy9lbWFjcy9zcmMva2V5 Ym9hcmQuYwk4NgogYWxsb2NhdGVfa2JvYXJkCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9e YWxsb2NhdGVfa2JvYXJkIChMaXNwX09iamVjdCB0eXBlKSQvCiBhbGxvY2F0ZWQJYy1zcmMvZW1h Y3Mvc3JjL3JlZ2V4LmgJMzQ0CithbHBoYWVudW1lcmF0ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGFscGhhZW51bWVyYXRle1xcZW51bWVyYXRle2F9fSQvCithbXBucgl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXG9wbnJ7e1xcc2ZcXGNoYXJgXFwofX0gXFxkZWZcXGNsbnJ7e1xc c2ZcXGNoYXJgXFwpfX0gLworYW1wcm0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcYW1w cm0jMSB7e1xccm1cXCYjMX1cXGxldCg9XFxvcHJtIFxcbGV0KT1cXGNscm1cXCB9LwogYW5fZXh0 ZXJuX2xpbmthZ2UJYy1zcmMvaC5oCTQ0CiBhbl9leHRlcm5fbGlua2FnZQljLXNyYy9oLmgJNTYK IGFuX2V4dGVybl9saW5rYWdlX3B0cgljLXNyYy9oLmgJNDMKQEAgLTI1NDcsOCArMjA3NSwyNyBA QCBhcHBlbmRfbGlzdAlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9eYXBwZW5kX2xpc3QoW10sW10p LiQvCiBhcHBlbmRfc3RyaW5nCXBhcy1zcmMvY29tbW9uLnBhcwkvXnByb2NlZHVyZSBhcHBlbmRf c3RyaW5nOygqKCQvCiBhcHBlbmRfdG9vbF9iYXJfaXRlbQljLXNyYy9lbWFjcy9zcmMva2V5Ym9h cmQuYwkvXmFwcGVuZF90b29sX2Jhcl9pdGVtICh2b2lkKSQvCiBhcHBlbmRpeAlwZXJsLXNyYy9o dGxtaWZ5LWN5c3RpYwkyNAorYXBwZW5kaXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxh cHBlbmRpeD1cXHJlbGF4JC8KK2FwcGVuZGl4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVy XFxkZWZcXGFwcGVuZGl4e1xccGFyc2VhcmdcXGFwcGVuZGl4enp6fSQvCiBhcHBlbmRpeF9uYW1l CXBlcmwtc3JjL2h0bG1pZnktY3lzdGljCTEzCiBhcHBlbmRpeF90b2MJcGVybC1zcmMvaHRsbWlm eS1jeXN0aWMJMTYKK2FwcGVuZGl4bGV0dGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc YXBwZW5kaXhsZXR0ZXJ7XFxjaGFyXFx0aGVcXGFwcGVuZGl4bm99JC8KK2FwcGVuZGl4bm9kZXJl Zgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFwcGVuZGl4bm9kZXJlZntcXGlmeFxcbGFz dG5vZGVcXHJlbGF4XFxlbHNlJC8KK2FwcGVuZGl4c2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGxldFxcYXBwZW5kaXhzZWM9XFxyZWxheCQvCithcHBlbmRpeHNlYwl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxvdXRlclxcZGVmXFxhcHBlbmRpeHNlY3tcXHBhcnNlYXJnXFxhcHBlbmRpeHNlY3Rp b256ei8KK2FwcGVuZGl4c2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGFwcGVu ZGl4c2VjdGlvbj1cXHJlbGF4JC8KK2FwcGVuZGl4c2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxvdXRlclxcZGVmXFxhcHBlbmRpeHNlY3Rpb257XFxwYXJzZWFyZ1xcYXBwZW5kaXhzZWN0 aS8KK2FwcGVuZGl4c2VjdGlvbnp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFwcGVu ZGl4c2VjdGlvbnp6eiAjMXtcXHNlY2NoZWNre2FwcGVuZGl4c2VjdGkvCithcHBlbmRpeHNldHJl Zgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFwcGVuZGl4c2V0cmVmIzF7JSQvCithcHBl bmRpeHN1YnNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGFwcGVuZGl4c3Vic2VjPVxc cmVsYXgkLworYXBwZW5kaXhzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRl ZlxcYXBwZW5kaXhzdWJzZWN7XFxwYXJzZWFyZ1xcYXBwZW5kaXhzdWJzZWMvCithcHBlbmRpeHN1 YnNlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxhcHBlbmRpeHN1YnNlY3Rpb249 XFxyZWxheCQvCithcHBlbmRpeHN1YnNlY3p6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGFwcGVuZGl4c3Vic2Vjenp6ICMxe1xcc2VjY2hlY2t7YXBwZW5kaXhzdWJzZWMvCithcHBlbmRp eHN1YnN1YnNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGFwcGVuZGl4c3Vic3Vic2Vj PVxccmVsYXgkLworYXBwZW5kaXhzdWJzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0 ZXJcXGRlZlxcYXBwZW5kaXhzdWJzdWJzZWN7XFxwYXJzZWFyZ1xcYXBwZW5kaXhzdWIvCithcHBl bmRpeHN1YnN1YnNlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxhcHBlbmRpeHN1 YnN1YnNlY3Rpb249XFxyZWxheCQvCithcHBlbmRpeHN1YnN1YnNlY3p6egl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGFwcGVuZGl4c3Vic3Vic2Vjenp6ICMxe1xcc2VjY2hlY2t7YXBwZW5k aXhzdWIvCithcHBlbmRpeHp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFwcGVuZGl4 enp6ICMxe1xcc2VjY2hlY2t7YXBwZW5kaXh9JSQvCiBhcHBseV9tb2RpZmllcnMJYy1zcmMvZW1h Y3Mvc3JjL2tleWJvYXJkLmMJL15hcHBseV9tb2RpZmllcnMgKGludCBtb2RpZmllcnMsIExpc3Bf T2JqZWN0IGJhc2UpJC8KIGFwcGx5X21vZGlmaWVyc191bmNhY2hlZAljLXNyYy9lbWFjcy9zcmMv a2V5Ym9hcmQuYwkvXmFwcGx5X21vZGlmaWVyc191bmNhY2hlZCAoaW50IG1vZGlmaWVycywgY2hh ciAqYmFzLwogYXJlZl9hZGRyCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL15hcmVmX2FkZHIgKExp c3BfT2JqZWN0IGFycmF5LCBwdHJkaWZmX3QgaWR4KSQvCkBAIC0yNTYyLDEyICsyMTA5LDE0IEBA IGFyZ25vCXktc3JjL2NjY3AueQk0NQogYXJncwljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTI5ODYK IGFyZ3MJYy1zcmMvaC5oCTMwCiBhcmdzaW5kZW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG5l d3NraXBcXGRlZmFyZ3NpbmRlbnQgXFxkZWZhcmdzaW5kZW50PTUwcHQkLworYXJnc2luZGVudAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxuZXdza2lwXFxkZWZhcmdzaW5kZW50IFxcZGVmYXJnc2lu ZGVudD01MHB0JC8KIGFyZ3NpbmRlbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGltZW4xPVxc aHNpemUgXFxhZHZhbmNlIFxcZGltZW4xIGJ5IC1cXGRlZmFyZ3NpbmRlbnQvCiBhcmdzaW5kZW50 CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXHBhcnNoYXBlIDIgMGluIFxcZGltZW4wIFxcZGVmYXJn c2luZGVudCBcXGRpbWVuMSAgICAvCiBhcmd1bWVudAljLXNyYy9ldGFncy5jCTI1MwogYXJndmFs cwlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9eYXJndmFscyhbXSkgLS0+IFtdLiQvCiBhcnJheQlj LmMJMTkwCiBhc2NpaQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE1OTgKK2FzaXMJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxhc2lzIzF7IzF9JC8KIGFzb3J0CWNwLXNyYy9mdW5jdGlvbnMu Y3BwCS9edm9pZCBhc29ydChpbnQgKmEsIGludCBudW0peyQvCiBhc3NlbWJ5LWNvZGUtd29yZAlm b3J0aC1zcmMvdGVzdC1mb3J0aC5mdGgJL15jb2RlIGFzc2VtYnktY29kZS13b3JkICggZHVubm8g d2hhdCBpdCBkb2VzICkkLwogYXNzZXJ0CWMtc3JjL2V0YWdzLmMJMTM1CkBAIC0yNTg0LDggKzIx MzMsMTMgQEAgYXRfc3RkaW4JYy1zcmMvZXRhZ3MuYwkyNDgKIGF0b20JcHJvbC1zcmMvbmF0ZGVk LnByb2xvZwkvXmF0b20oWCkgLS0+IFtYXSwge2F0b21pYyhYKX0uJC8KIGF0b212YWwJcHJvbC1z cmMvbmF0ZGVkLnByb2xvZwkvXmF0b212YWwoWCkgLS0+IGF0b20oWCkuJC8KIGF1bHRwYXJpbmRl bnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbmV3ZGltZW5cXGRlZmF1bHRwYXJpbmRlbnQgXFxk ZWZhdWx0cGFyaW5kZW50ID0gMTVwLworYXVsdHBhcmluZGVudAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxuZXdkaW1lblxcZGVmYXVsdHBhcmluZGVudCBcXGRlZmF1bHRwYXJpbmRlbnQgPSAxNXAv CiBhdWx0cGFyaW5kZW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXHBhcmluZGVudCA9IFxcZGVm YXVsdHBhcmluZGVudCQvCi1hdWx0cGFyaW5kZW50XGhhbmdcdGV4dGluZGVudAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxmb290c3RydXRcXHBhcmluZGVudD1cXGRlZmF1bHRwYXJpbmRlbnRcXGhh bmdcXHRleHRpbi8KK2F1bHRwYXJpbmRlbnRcaGFuZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxm b290c3RydXRcXHBhcmluZGVudD1cXGRlZmF1bHRwYXJpbmRlbnRcXGhhbmdcXHRleHRpbi8KK2F1 dGhvcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFxkZWZcXGF1dGhvcntcXHBhcnNlYXJnXFxh dXRob3J6enp9JSQvCithdXRob3Jmb250CXRleC1zcmMvdGV4aW5mby50ZXgJL14gICBcXGRlZlxc YXV0aG9yZm9udHtcXGF1dGhvcnJtIFxcbm9ybWFsYmFzZWxpbmVza2lwID0vCithdXRob3JybQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGF1dGhvcnJtID0gXFxzZWNybSQvCithdXRob3J6 enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgIFxcZGVmXFxhdXRob3J6enojIzF7XFxpZnNlZW5h dXRob3JcXGVsc2VcXHZza2lwIDBwdCAvCiBhdXRvX2hlbHAJYy1zcmMvZXRhZ3MuYwk2OTkKIGIJ Yy5jCTE4MAogYgljLmMJMjU5CkBAIC0yNTk3LDcgKzIxNTEsMTQgQEAgYgljLXNyYy9oLmgJMTAz CiBiCWMtc3JjL2guaAkxMDQKIGIJY3Atc3JjL2MuQwkxMzIKIGIJcnVieS1zcmMvdGVzdDEucnUJ L14gZGVmIGIoKSQvCi1iYWNrc2xhc2g9MAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGlu ZGV4YmFja3NsYXNoPTAgICVvdmVycmlkZGVuIGR1cmluZyBcXHByaW50aW4vCitiCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcYiMxe3tcXGJmICMxfX0kLworYgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGIjIzF7XFxyZWFsYmFja3NsYXNoIGIgeyMjMX19JSQvCitiCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGxldFxcYj1cXGluZGV4ZHVtbXlmb250JC8KK2IJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxiIyMxe1xccmVhbGJhY2tzbGFzaCBiIHsjIzF9fSQvCitiCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGxldFxcYj1cXHB0ZXhiIFxcbGV0XFxjPVxccHRleGMgXFxsZXRc XGk9XFxwdGV4aSBcXGxldFxcdD1cXC8KK2JhY2tzbGFzaAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXHJhd2JhY2tzbGFzaHh4e1xcaW5kZXhiYWNrc2xhc2h9JSBcXGluZGV4YmFja3NsLwor YmFja3NsYXNoCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccmF3YmFja3NsYXNoeHh7XFxp bmRleGJhY2tzbGFzaH0lJC8KK2JhbGFuY2Vjb2x1bW5zCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcYmFsYW5jZWNvbHVtbnN7JSQvCiBiYXIJYy1zcmMvYy5jCS9edm9pZCBiYXIoKSB7d2hp bGUoMCkge319JC8KIGJhcgljLmMJMTQzCiBiYXIJYy1zcmMvaC5oCTE5CkBAIC0yNjE3LDkgKzIx NzgsMTYgQEAgYmJiYmJiCWMtc3JjL2guaAkxMTMKIGJlZW5fd2FybmVkCWMtc3JjL2V0YWdzLmMJ MjIyCiBiZWZvcmVfY29tbWFuZF9lY2hvX2xlbmd0aAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQu YwkxMzAKIGJlZm9yZV9jb21tYW5kX2tleV9jb3VudAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQu YwkxMjkKK2JlZ2luCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXGJlZ2lue1xc cGFyc2VhcmdcXGJlZ2lueHh4fSQvCitiZWdpbmRvdWJsZWNvbHVtbnMJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxiZWdpbmRvdWJsZWNvbHVtbnN7XFxiZWdpbmdyb3VwJC8KK2JlZ2lueHh4 CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYmVnaW54eHggIzF7JSQvCiBiZWd0b2tlbglj LXNyYy9ldGFncy5jCS9eI2RlZmluZQliZWd0b2tlbihjKQkoX2J0a1tDSEFSIChjKV0pIFwvKiBj IGNhbiBzdGFyLwogYmVoYXZpb3VyX2luZm8JZXJsLXNyYy9nc19kaWFsb2cuZXJsCS9eYmVoYXZp b3VyX2luZm8oY2FsbGJhY2tzKSAtPiQvCi1iZj1jbWJ4MTAJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZm9udFxcZGVmYmY9Y21ieDEwIHNjYWxlZCBcXG1hZ3N0ZXAxICV3YXMgMTMxNCQvCitiZgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxmb250XFxkZWZiZj1jbWJ4MTAgc2NhbGVkIFxcbWFnc3Rl cDEgJXdhcyAxMzE0JC8KK2JmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGZ7XFxsZXRc XHRlbnR0PVxcZGVmdHQgXFxsZXRcXHRlbmJmID0gXFxkZWZiZiBcXGJmfS8KK2JmCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcYmZ7XFxyZWFsYmFja3NsYXNoIGJmIH0lJC8KK2JmCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYmZ7XFxyZWFsYmFja3NsYXNoIGJmIH0kLworYmYJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXiAgICAgIFxcbGV0XFxybT1cXHNob3J0Y29udHJtIFxcbGV0XFxi Zj1cXHNob3J0Y29udGJmIFxcbC8KIGJpbmQJcHl0LXNyYy9zZXJ2ZXIucHkJL14gICAgZGVmIGJp bmQoc2VsZiwga2V5LCBhY3Rpb24pOiQvCiBiaW5kX3BvbGxpbmdfcGVyaW9kCWMtc3JjL2VtYWNz L3NyYy9rZXlib2FyZC5jCS9eYmluZF9wb2xsaW5nX3BlcmlvZCAoaW50IG4pJC8KIGJpdHNfd29y ZAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTEyMwpAQCAtMjYzMCwyMiArMjE5OCwzMCBAQCBibGV0 Y2gJZWwtc3JjL1RBR1RFU1QuRUwJL14oZm9vOjpkZWZtdW1ibGUgYmxldGNoIGJldWFyZ2hoKSQv CiBibHYJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAk2ODkKIGJsdl9mb3VuZAljLXNyYy9lbWFjcy9z cmMvbGlzcC5oCS9eYmx2X2ZvdW5kIChzdHJ1Y3QgTGlzcF9CdWZmZXJfTG9jYWxfVmFsdWUgKmJs dikkLwogYm9keWluZGVudAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxuZXdza2lwXFxkZWZib2R5 aW5kZW50IFxcZGVmYm9keWluZGVudD0uNGluJC8KK2JvZHlpbmRlbnQJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcbmV3c2tpcFxcZGVmYm9keWluZGVudCBcXGRlZmJvZHlpbmRlbnQ9LjRpbiQvCiBi b2R5aW5kZW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGFkdmFuY2VcXGRpbWVuMiBieSAtXFxk ZWZib2R5aW5kZW50JC8KIGJvZHlpbmRlbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcYWR2YW5j ZVxcZGltZW4zIGJ5IC1cXGRlZmJvZHlpbmRlbnQkLwogYm9keWluZGVudAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxhZHZhbmNlXFxsZWZ0c2tpcCBieSAtXFxkZWZib2R5aW5kZW50JC8KIGJvZHlp bmRlbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZXhkZW50YW1vdW50PVxcZGVmYm9keWluZGVu dCQvCiBib2R5aW5kZW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGFkdmFuY2VcXGxlZnRza2lw IGJ5IFxcZGVmYm9keWluZGVudCBcXGFkdmFuY2UgXFxyaWdoLworYm9keWluZGVudAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxhZHZhbmNlXFxsZWZ0c2tpcCBieSBcXGRlZmJvZHlpbmRlbnQgXFxh ZHZhbmNlIFxccmlnaC8KIGJvZHlpbmRlbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZXhkZW50 YW1vdW50PVxcZGVmYm9keWluZGVudCQvCiBib2R5aW5kZW50CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGFkdmFuY2VcXGxlZnRza2lwIGJ5IFxcZGVmYm9keWluZGVudCBcXGFkdmFuY2UgXFxyaWdo LworYm9keWluZGVudAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxhZHZhbmNlXFxsZWZ0c2tpcCBi eSBcXGRlZmJvZHlpbmRlbnQgXFxhZHZhbmNlIFxccmlnaC8KIGJvZHlpbmRlbnQJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZXhkZW50YW1vdW50PVxcZGVmYm9keWluZGVudCQvCiBib2R5aW5kZW50 CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGFkdmFuY2VcXGxlZnRza2lwIGJ5IFxcZGVmYm9keWlu ZGVudCBcXGFkdmFuY2UgXFxyaWdoLworYm9keWluZGVudAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxhZHZhbmNlXFxsZWZ0c2tpcCBieSBcXGRlZmJvZHlpbmRlbnQgXFxhZHZhbmNlIFxccmlnaC8K IGJvZHlpbmRlbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZXhkZW50YW1vdW50PVxcZGVmYm9k eWluZGVudCQvCiBib2R5aW5kZW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGFkdmFuY2VcXGxl ZnRza2lwIGJ5IFxcZGVmYm9keWluZGVudCBcXGFkdmFuY2UgXFxyaWdoLworYm9keWluZGVudAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxhZHZhbmNlXFxsZWZ0c2tpcCBieSBcXGRlZmJvZHlpbmRl bnQgXFxhZHZhbmNlIFxccmlnaC8KIGJvZHlpbmRlbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZXhkZW50YW1vdW50PVxcZGVmYm9keWluZGVudCQvCiBib2R5aW5kZW50CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGFkdmFuY2VcXGxlZnRza2lwIGJ5IFxcZGVmYm9keWluZGVudCBcXGFkdmFuY2Ug XFxyaWdoLworYm9keWluZGVudAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxhZHZhbmNlXFxsZWZ0 c2tpcCBieSBcXGRlZmJvZHlpbmRlbnQgXFxhZHZhbmNlIFxccmlnaC8KIGJvZHlpbmRlbnQJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZXhkZW50YW1vdW50PVxcZGVmYm9keWluZGVudCQvCiBib2R5 aW5kZW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGFkdmFuY2VcXGxlZnRza2lwIGJ5IFxcZGVm Ym9keWluZGVudCBcXGFkdmFuY2UgXFxyaWdoLworYm9keWluZGVudAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxhZHZhbmNlXFxsZWZ0c2tpcCBieSBcXGRlZmJvZHlpbmRlbnQgXFxhZHZhbmNlIFxc cmlnaC8KIGJvZHlpbmRlbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZXhkZW50YW1vdW50PVxc ZGVmYm9keWluZGVudCQvCitib2xkYnJheAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxi b2xkYnJheHtcXGxldCg9XFxvcG5yXFxsZXQpPVxcY2xuclxcbGV0Wz1cXGxicmJcXGwvCiBib29s CWMuYwkyMjIKIGJvb2wJbWVyYy1zcmMvYWNjdW11bGF0b3IubQkvXjotIGltcG9ydF9tb2R1bGUg Ym9vbC4kLwogYm9vbF9oZWFkZXJfc2l6ZQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE0NzIKQEAg LTI2NTgsNiArMjIzNCw3IEBAIGJvb2xfdmVjdG9yX3NpemUJYy1zcmMvZW1hY3Mvc3JjL2xpc3Au aAkvXmJvb2xfdmVjdG9yX3NpemUgKExpc3BfT2JqZWN0IGEpJC8KIGJvb2xfdmVjdG9yX3VjaGFy X2RhdGEJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXmJvb2xfdmVjdG9yX3VjaGFyX2RhdGEgKExp c3BfT2JqZWN0IGEpJC8KIGJvb2xfdmVjdG9yX3dvcmRzCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJ L15ib29sX3ZlY3Rvcl93b3JkcyAoRU1BQ1NfSU5UIHNpemUpJC8KIGJvb2x2YXIJYy1zcmMvZW1h Y3Mvc3JjL2xpc3AuaAkyMjg3Citicgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGJyID0g XFxwYXIkLwogYnJhY2VsZXYJYy1zcmMvZXRhZ3MuYwkyNTIwCiBic3BfRGV2SWQJYy1zcmMvaC5o CTI1CiBidAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTI5ODgKQEAgLTI2NzEsMTAgKzIyNDgsMTMg QEAgYnVpbGRfcHVyZV9jX3N0cmluZwljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eYnVpbGRfcHVy ZV9jX3N0cmluZyAoY29uc3QgY2hhciAqc3QKIGJ1aWxkX3N0cmluZwljLXNyYy9lbWFjcy9zcmMv bGlzcC5oCS9eYnVpbGRfc3RyaW5nIChjb25zdCBjaGFyICpzdHIpJC8KIGJ1aWxkYWN0CXByb2wt c3JjL25hdGRlZC5wcm9sb2cJL15idWlsZGFjdChbU3luSW5dLFJpZ2h0LFJpZ2h0UGx1czEpOi0k LwogYnVpbHRpbl9saXNwX3N5bWJvbAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eYnVpbHRpbl9s aXNwX3N5bWJvbCAoaW50IGluZGV4KSQvCitidWxsZXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxidWxsZXR7JFxccHRleGJ1bGxldCR9JC8KK2J1bGxldAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxsZXRcXGJ1bGxldD1cXHB0ZXhidWxsZXQkLwogYnVyc3QJYy1zcmMvaC5oCTI4CiBidXN5 CWMtc3JjL2VtYWNzL3NyYy9nbWFsbG9jLmMJMTU4CiBidXR0b25fZG93bl9sb2NhdGlvbgljLXNy Yy9lbWFjcy9zcmMva2V5Ym9hcmQuYwk1MjEwCiBidXR0b25fZG93bl90aW1lCWMtc3JjL2VtYWNz L3NyYy9rZXlib2FyZC5jCTUyMTgKK2J5ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxc ZGVmXFxieWV7XFxwYWdlYWxpZ25tYWNyb1xcdHJhY2luZ3N0YXRzPTFcXHB0ZXgvCiBieXRlX3N0 YWNrCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMzA0OQogYnl0ZWNvZGVfZGVzdAljLXNyYy9lbWFj cy9zcmMvbGlzcC5oCTMwMzcKIGJ5dGVjb2RlX3RvcAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTMw MzYKQEAgLTI2ODUsNiArMjI2NSw4IEBAIGJ5dGVzX3VzZWQJYy1zcmMvZW1hY3Mvc3JjL2dtYWxs b2MuYwkzMTIKIGMJYy5jCTE4MAogYwljLXNyYy9oLmgJL14jZGVmaW5lIGMoKSBkJC8KIGMJYy1z cmMvaC5oCTEwNgorYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGM9XFxjb21tZW50JC8K K2MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxiPVxccHRleGIgXFxsZXRcXGM9XFxwdGV4 YyBcXGxldFxcaT1cXHB0ZXhpIFxcbGV0XFx0PVxcLwogY19leHQJYy1zcmMvZXRhZ3MuYwkyMjcx CiBjYWNjYWNhY2NhCWMuYwkvXmNhY2NhY2FjY2EgKGEsYixjLGQsZSxmLGcpJC8KIGNhY2hlTFJV RW50cnlfcwljLmMJMTcyCkBAIC0yNjk3LDIxICsyMjc5LDQ3IEBAIGNhbGxvYwljLXNyYy9lbWFj cy9zcmMvZ21hbGxvYy5jCTE3MTcKIGNhbl9iZV9udWxsCWMtc3JjL2VtYWNzL3NyYy9yZWdleC5o CTM3MAogY2FuY2VsX2VjaG9pbmcJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15jYW5jZWxf ZWNob2luZyAodm9pZCkkLwogY2Fub25pY2FsaXplX2ZpbGVuYW1lCWMtc3JjL2V0YWdzLmMJL15j YW5vbmljYWxpemVfZmlsZW5hbWUgKHJlZ2lzdGVyIGNoYXIgKmZuKSQvCitjYXBzZW51bWVyYXRl CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2Fwc2VudW1lcmF0ZXtcXGVudW1lcmF0ZXtB fX0kLworY2FydGJvdAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNhcnRib3R7XFxoYm94 IHRvIFxcY2FydG91dGVye1xcaHNraXBcXGxza2lwJC8KK2NhcnRvdWNoZQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxsb25nXFxkZWZcXGNhcnRvdWNoZXslJC8KK2NhcnR0b3AJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxjYXJ0dG9we1xcaGJveCB0byBcXGNhcnRvdXRlcntcXGhza2lwXFxs c2tpcCQvCiBjYXNlX0xpc3BfSW50CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJNDM4CiBjYXQJYy1z cmMvaC5oCTgxCiBjYXQJY3Atc3JjL2MuQwkxMjYKIGNhdAljcC1zcmMvYy5DCTEzMAogY2F0CXBy b2wtc3JjL25hdGRlZC5wcm9sb2cJL15jYXQoQSwgQWxwaGFAQmV0YSwgQXNzMywgUXMzLCB0cmVl KGZlLEE6QWxwaGFAQmV0YS8KIGNhdF9hdG9tcwlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9eY2F0 X2F0b21zKEExLEEyLEEzKTotJC8KK2NibAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNi bHt7XFxjaXJjbGVcXGNoYXInMDEyXFxoc2tpcCAtNnB0fX0kLworY2JyCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcY2Jye3tcXGhza2lwIDZwdFxcY2lyY2xlXFxjaGFyJzAxMX19JC8KIGNj Y2NjY2NjY2MJYy1zcmMvaC5oCTExNQogY2RyCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTE1OQog Y2VsbAl5LXNyYy9wYXJzZS55CTI3OQorY2VudGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcY2VudGVye1xccGFyc2VhcmdcXGNlbnRlcnp6en0kLworY2VudGVyenp6CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcY2VudGVyenp6ICMxe3tcXGFkdmFuY2VcXGhzaXplIGJ5IC1cXGxl ZnRza2lwJC8KIGNncmVwCWh0bWwtc3JjL3NvZnR3YXJlLmh0bWwJL15jZ3JlcCQvCiBjaGFpbglj LXNyYy9lbWFjcy9zcmMvbGlzcC5oCTExNjIKIGNoYWluCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJ MjIwNgogY2hhaW4JYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyMzk2CiBjaGFpbl9zdWJzdAltZXJj LXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gZnVuYyBjaGFpbl9zdWJzdChhY2N1X3N1YnN0LCBhY2N1 X3N1YnN0KSA9IGFjY3UvCiBjaGFpbl9zdWJzdF8yCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146 LSBwcmVkIGNoYWluX3N1YnN0XzIobGlzdChBKTo6aW4sIG1hcChBLCBCKTo6aW4sIC8KK2NoYXBi Zgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGNoYXBiZj1cXGNoYXBybSQvCitjaGFwYnJl YWsJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwYnJlYWt7XFxkb2JyZWFrIFxcY2hh cGhlYWRpbmdza2lwIHstNDAwMH19JC8KK2NoYXBlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9e ICAgICAgXFxsZXRcXGNoYXBlbnRyeSA9IFxcc2hvcnRjaGFwZW50cnkkLworY2hhcGVudHJ5CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2hhcGVudHJ5IzEjMiMze1xcZG9jaGFwZW50cnl7 IzJcXGxhYmVsc3BhY2UjMX0vCitjaGFwZW50cnlmb250cwl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGNoYXBlbnRyeWZvbnRze1xcc2VjZm9udHMgXFxybX0kLworY2hhcGZvbnRzCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2hhcGZvbnRzeyUkLworY2hhcGhlYWRpbmcJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwaGVhZGluZ3tcXHBhcnNlYXJnXFxjaGFwaGVhZGlu Z3p6en0kLworY2hhcGhlYWRpbmd6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFw aGVhZGluZ3p6eiAjMXtcXGNoYXBicmVhayAlJC8KK2NoYXBtYWNybwl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxnbG9iYWxcXGxldFxcY2hhcG1hY3JvPVxcY2hmcGxhaW4kLworY2hhcG1hY3JvCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGdsb2JhbFxcbGV0XFxjaGFwbWFjcm89XFxjaGZvcGVuJC8K K2NoYXBvZGRwYWdlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2hhcG9kZHBhZ2V7XFxj aGFwcGFnZXIgXFxpZm9kZFxccGFnZW5vIFxcZWxzZSBcXGgvCitjaGFwcGFnZXIJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwcGFnZXJ7XFxwYXJcXHZmaWxsXFxzdXBlcmVqZWN0fSQv CitjaGFwdGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcY2hhcHRlcj1cXHJlbGF4JC8K K2NoYXB0ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRlZlxcY2hhcHRlcntcXHBh cnNlYXJnXFxjaGFwdGVyenp6fSQvCitjaGFwdGVybm9mb250cwl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGNoYXB0ZXJub2ZvbnRzeyUkLworY2hhcHRlcnp6egl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGNoYXB0ZXJ6enogIzF7XFxzZWNjaGVja3tjaGFwdGVyfSUkLworY2hhcgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNoYXJ7XFxyZWFsYmFja3NsYXNoIGNoYXJ9JSQv CitjaGFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2hhcntcXHJlYWxiYWNrc2xhc2gg Y2hhcn0kLwogY2hhcl9iaXRzCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMjQ0MwogY2hhcl90YWJs ZV9zcGVjaWFscwljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE2OTIKIGNoYXJwb3MJYy1zcmMvZW1h Y3Mvc3JjL2xpc3AuaAkyMDExCkBAIC0yNzIyLDE0ICsyMzMwLDI0IEBAIGNoZWNrX2NvbnNfbGlz dAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eIyAgZGVmaW5lIGNoZWNrX2NvbnNfbGlzdCgpIGxp c3BfaF9jaGVjCiBjaGVja2VyCW1ha2Utc3JjL01ha2VmaWxlCS9eY2hlY2tlcjokLwogY2hlY2to ZHIJYy1zcmMvZW1hY3Mvc3JjL2dtYWxsb2MuYwkvXmNoZWNraGRyIChjb25zdCBzdHJ1Y3QgaGRy ICpoZHIpJC8KIGNoZWNraXNvCWh0bWwtc3JjL3NvZnR3YXJlLmh0bWwJL15jaGVja2lzbyQvCitj aGZvcGVuCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2hmb3BlbiAjMSMye1xcY2hhcG9k ZHBhZ2Uge1xcY2hhcGZvbnRzJC8KK2NoZnBsYWluCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcY2hmcGxhaW4gIzEjMnslJC8KIGNoaWxkRGlkRXhpdAlvYmpjLXNyYy9TdWJwcm9jZXNzLm0J L14tIGNoaWxkRGlkRXhpdCQvCiBjaHVua3NfZnJlZQljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5j CTMxMwogY2h1bmtzX3VzZWQJYy1zcmMvZW1hY3Mvc3JjL2dtYWxsb2MuYwkzMTEKK2NpbmRleAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNpbmRleCB7XFxjcGluZGV4fSQvCitjaW5kZXhz dWIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaW5kZXhzdWIge1xcYmVnaW5ncm91cFxc b2JleWxpbmVzXFxjaW5kZXhzdWJ9JC8KK2NpbmRleHN1Ygl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxnZGVmXFxjaW5kZXhzdWIgIiMxIiAjMl5eTXtcXGVuZGdyb3VwICUkLworY2l0ZQl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxsZXRcXGNpdGU9XFxzbWFydGl0YWxpYyQvCitjaXRlCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcY2l0ZSMjMXtcXHJlYWxiYWNrc2xhc2ggY2l0ZSB7IyMxfX0l JC8KK2NpdGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxjaXRlPVxcaW5kZXhkdW1teWZv bnQkLworY2l0ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNpdGUjIzF7XFxyZWFsYmFj a3NsYXNoIGNpdGUgeyMjMX19JC8KIGNqYXZhCWMtc3JjL2V0YWdzLmMJMjkzNgogY2xhc3NfbWV0 aG9kCXJ1Ynktc3JjL3Rlc3QucmIJL14gICAgICAgIGRlZiBDbGFzc0V4YW1wbGUuY2xhc3NfbWV0 aG9kJC8KIGNsYXNzaWZ5TGluZQlwaHAtc3JjL2xjZV9mdW5jdGlvbnMucGhwCS9eICAgICAgZnVu Y3Rpb24gY2xhc3NpZnlMaW5lKCRsaW5lKSQvCiBjbGVhbgltYWtlLXNyYy9NYWtlZmlsZQkvXmNs ZWFuOiQvCiBjbGVhcgljcC1zcmMvY29ud2F5LmhwcAkvXiAgICB2b2lkIGNsZWFyKHZvaWQpIHsg YWxpdmUgPSAwOyB9JC8KK2NsZWFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2xlYXJ7 XFxwYXJzZWFyZ1xcY2xlYXJ4eHh9JC8KIGNsZWFyLWFiYnJldi10YWJsZQljLXNyYy9hYmJyZXYu YwkvXkRFRlVOICgiY2xlYXItYWJicmV2LXRhYmxlIiwgRmNsZWFyX2FiYnJldl90YWJsZSwgLwog Y2xlYXItdGhpcy1jb21tYW5kLWtleXMJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15ERUZV TiAoImNsZWFyLXRoaXMtY29tbWFuZC1rZXlzIiwgRmNsZWFyX3RoaXNfY29tbS8KIGNsZWFyQWxs S2V5CW9iamNwcC1zcmMvU2ltcGxlQ2FsYy5NCS9eLSBjbGVhckFsbEtleTpzZW5kZXIkLwpAQCAt MjczOSwxMiArMjM1NywxOSBAQCBjbGVhcl9pbnB1dF9wZW5kaW5nCWMtc3JjL2VtYWNzL3NyYy9r ZXlib2FyZC5jCS9eY2xlYXJfaW5wdXRfcGVuZGluZyAodm9pZCkkLwogY2xlYXJfbmVpZ2hib3Jz CWNwLXNyYy9jbGhlaXIuY3BwCS9edm9pZCBkaXNjcmV0ZV9sb2NhdGlvbjo6Y2xlYXJfbmVpZ2hi b3JzKHZvaWQpJC8KIGNsZWFyX3NjcmVlbgljcC1zcmMvc2NyZWVuLmNwcAkvXnZvaWQgY2xlYXJf c2NyZWVuKHZvaWQpJC8KIGNsZWFyX3dhaXRpbmdfZm9yX2lucHV0CWMtc3JjL2VtYWNzL3NyYy9r ZXlib2FyZC5jCS9eY2xlYXJfd2FpdGluZ19mb3JfaW5wdXQgKHZvaWQpJC8KK2NsZWFyeHh4CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2xlYXJ4eHggIzF7JC8KK2NsbnIJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxvcG5ye3tcXHNmXFxjaGFyYFxcKH19IFxcZGVmXFxjbG5ye3tc XHNmXFxjaGFyYFxcKX19IC8KK2Nscm0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcY2xy bXslIFByaW50IGEgcGFyZW4gaW4gcm9tYW4gaWYgaXQgaXMgdGFraW4vCiBjbWRfZXJyb3IJYy1z cmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15jbWRfZXJyb3IgKExpc3BfT2JqZWN0IGRhdGEpJC8K IGNtZF9lcnJvcl9pbnRlcm5hbAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmNtZF9lcnJv cl9pbnRlcm5hbCAoTGlzcF9PYmplY3QgZGF0YSwgY29uc3QgY2hhciAqLwogY21wZm4JYy1zcmMv ZW1hY3Mvc3JjL2xpc3AuaAkvXiAgYm9vbCAoKmNtcGZuKSAoc3RydWN0IGhhc2hfdGFibGVfdGVz dCAqdCwgTGlzcF9PLwogY210CXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15jbXQ6LSQvCiBjbmFt ZQljLXNyYy9ldGFncy5jCTI1MTkKIGNubwljLXNyYy9ldGFncy5jCTIyNAorY29kZQl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxsZXRcXGNvZGU9XFx0Y2xvc2UkLworY29kZQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGNvZGUjIzF7XFxyZWFsYmFja3NsYXNoIGNvZGUgeyMjMX19JSQvCitj b2RlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcY29kZT1cXGluZGV4ZHVtbXlmb250JC8K K2NvZGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjb2RlIyMxe1xccmVhbGJhY2tzbGFz aCBjb2RlIHsjIzF9fSQvCiBjb2xvcmkJY3Atc3JjL2MuQwk0MAogY29tbWFhcmd2YWxzCXByb2wt c3JjL25hdGRlZC5wcm9sb2cJL15jb21tYWFyZ3ZhbHMoQXJncykgLS0+JC8KIGNvbW1hbmQJYy1z cmMvZXRhZ3MuYwkxODcKQEAgLTI3NTQsNiArMjM3OSw4IEBAIGNvbW1hbmRfbG9vcF8xCWMtc3Jj L2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eY29tbWFuZF9sb29wXzEgKHZvaWQpJC8KIGNvbW1hbmRf bG9vcF8yCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eY29tbWFuZF9sb29wXzIgKExpc3Bf T2JqZWN0IGlnbm9yZSkkLwogY29tbWFuZF9sb29wX2xldmVsCWMtc3JjL2VtYWNzL3NyYy9rZXli b2FyZC5jCTE5NQogY29tbWVudAlwaHAtc3JjL2xjZV9mdW5jdGlvbnMucGhwCS9eICAgICAgZnVu Y3Rpb24gY29tbWVudCgkbGluZSwgJGNsYXNzKSQvCitjb21tZW50CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcY29tbWVudHtcXGNhdGNvZGUgNjQ9XFxvdGhlciBcXGNhdGNvZGUgMTIzPVxc b3RoZS8KK2NvbW1lbnR4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjb21tZW50eHh4 ICMxe1xcY2F0Y29kZSA2ND0wIFxcY2F0Y29kZSAxMjM9MSBcXGMvCiBjb21tdXRhdGl2aXR5X2Fz c2VydGlvbgltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gcHJlZCBjb21tdXRhdGl2aXR5X2Fz c2VydGlvbihtb2R1bGVfaW5mbzo6aW4sbGkvCiBjb21waWxlX2VtcHR5CXByb2wtc3JjL25hdGRl ZC5wcm9sb2cJL15jb21waWxlX2VtcHR5Oi0kLwogY29tcGlsZV9sZXgJcHJvbC1zcmMvbmF0ZGVk LnByb2xvZwkvXmNvbXBpbGVfbGV4KEZpbGUpOi0kLwpAQCAtMjc3Niw2ICsyNDAzLDEwIEBAIGNv bnN1bHRfbGV4CXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15jb25zdWx0X2xleDotJC8KIGNvbnRl bnRzCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTM3MgogY29udGVudHMJYy1zcmMvZW1hY3Mvc3Jj L2xpc3AuaAkxNjAwCiBjb250ZW50cwljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE2MjQKK2NvbnRl bnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcY29udGVudHM9XFxyZWxheCQvCitjb250 ZW50cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxjb250ZW50c3slJC8KK2Nv cHlyaWdodAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNvcHlyaWdodHtcXHJlYWxiYWNr c2xhc2ggY29weXJpZ2h0IH0lJC8KK2NvcHlyaWdodAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGNvcHlyaWdodHtcXHJlYWxiYWNrc2xhc2ggY29weXJpZ2h0fSQvCiBjb3VudAljLXNyYy9l bWFjcy9zcmMvbGlzcC5oCTE4NjMKIGNvdW50X2xheWVycwlsdWEtc3JjL2FsbGVncm8ubHVhCS9e bG9jYWwgZnVuY3Rpb24gY291bnRfbGF5ZXJzIChsYXllcikkLwogY291bnRfd29yZHMJYy1zcmMv dGFiLmMJL15zdGF0aWMgaW50CQljb3VudF93b3JkcyhjaGFyICpzdHIsIGNoYXIgZGVsaW0pJC8K QEAgLTI3OTUsMTAgKzI0MjYsMjQgQEAgY3JlYXRlX25ld19vcmlnX3JlY3Vyc2l2ZV9nb2Fscwlt ZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gZnVuYyBjcmVhdGVfbmV3X29yaWcKIGNyZWF0ZV9u ZXdfcmVjdXJzaXZlX2dvYWxzCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBmdW5jIGNyZWF0 ZV9uZXdfcmVjdXJzaXZlX2dvYWxzKHNldChhY2N1X2dvYWxfaS8KIGNyZWF0ZV9uZXdfdmFyCW1l cmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBwcmVkIGNyZWF0ZV9uZXdfdmFyKHByb2dfdmFyOjpp biwgc3RyaW5nOjppbiwgcC8KIGNyZWF0ZV9vcmlnX2dvYWwJbWVyYy1zcmMvYWNjdW11bGF0b3Iu bQkvXjotIHByZWQgY3JlYXRlX29yaWdfZ29hbChobGRzX2dvYWw6OmluLCBhY2N1X3N1YnN0Lwor Y3JvcG1hcmtzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY3JvcG1hcmtze1xcbGV0XFxv bmVwYWdlb3V0PVxcY3JvcHBhZ2VvdXQgfSQvCitjcm9wcGFnZW91dAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGNyb3BwYWdlb3V0IzF7XFxob2Zmc2V0PTBwdCAlIG1ha2Ugc3VyZSB0aGlz IGQvCiBjc2NJbml0VGltZQljcC1zcmMvYy5DCTcKIGNzY1NlZ21lbnRhdGlvblRpbWUJY3Atc3Jj L2MuQwk4Citjc25hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZXhwYW5kYWZ0ZXJcXGxldFxc Y3NuYW1lIElGIzFcXGVuZGNzbmFtZT1cXHNldH0kLworY3NuYW1lCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGV4cGFuZGFmdGVyXFxsZXRcXGNzbmFtZSBJRiMxXFxlbmRjc25hbWU9XFxyZWxheH0k LworY3NuYW1lCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGV4cGFuZGFmdGVyXFx4ZGVmXFxjc25h bWUjMWluZGV4XFxlbmRjc25hbWV7JQklIERlZmkvCitjc25hbWUJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZXhwYW5kYWZ0ZXJcXHhkZWZcXGNzbmFtZSMxaW5kZXhcXGVuZGNzbmFtZXslCSUgRGVm aS8KK2NzbmFtZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxleHBhbmRhZnRlclxcbGV0XFxjc25h bWUjMWluZGZpbGVcXGVuZGNzbmFtZT1cXHN5bmluZC8KK2NzbmFtZQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxleHBhbmRhZnRlclxceGRlZlxcY3NuYW1lIzFpbmRleFxcZW5kY3NuYW1leyUJJSBE ZWZpLworY3NuYW1lCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGV4cGFuZGFmdGVyXFxsZXRcXGNz bmFtZSMxaW5kZmlsZVxcZW5kY3NuYW1lPVxcc3luaW5kLworY3NuYW1lCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGV4cGFuZGFmdGVyXFx4ZGVmXFxjc25hbWUjMWluZGV4XFxlbmRjc25hbWV7JQkl IERlZmkvCitjc25hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXntcXGNhdGNvZGVgXFwnPVxcb3Ro ZXJcXGV4cGFuZGFmdGVyIFxcZ2RlZiBcXGNzbmFtZSBYIzFcXC8KIGNzdGFjawljLXNyYy9ldGFn cy5jCTI1MjMKIGN0YWdzCW1ha2Utc3JjL01ha2VmaWxlCS9eY3RhZ3M6IGV0YWdzLmMgJHtPQkpT fSQvCitjdGwJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjdGx7e1xcY2lyY2xlXFxjaGFy JzAxM1xcaHNraXAgLTZwdH19JSA2cHQgZnJvbSAvCitjdHIJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxjdHJ7e1xcaHNraXAgNnB0XFxjaXJjbGVcXGNoYXInMDEwfX0kLworY3RybAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGN0cmwgIzF7e1xcdHQgXFxyYXdiYWNrc2xhc2ggXFxo YXR9IzF9JC8KIGN1cmxiCWMtc3JjL2V0YWdzLmMJMjkyOQogY3VybGluZXBvcwljLXNyYy9ldGFn cy5jCTI5MzEKIGN1cnJlbnQtaWRsZS10aW1lCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9e REVGVU4gKCJjdXJyZW50LWlkbGUtdGltZSIsIEZjdXJyZW50X2lkbGVfdGltZSwgU2MvCkBAIC0y ODA5LDYgKzI0NTQsMTAgQEAgY3VycnktdGVzdAlzY20tc3JjL3Rlc3Quc2NtCS9eKGRlZmluZSAo KCgoKGN1cnJ5LXRlc3QgYSkgYikgYykgZCkgZSkkLwogY3Vyc29yX3Bvc2l0aW9uCWNwLXNyYy9z Y3JlZW4uY3BwCS9edm9pZCBjdXJzb3JfcG9zaXRpb24odm9pZCkkLwogY3Vyc29yX3gJY3Atc3Jj L3NjcmVlbi5jcHAJMTUKIGN1cnNvcl95CWNwLXNyYy9zY3JlZW4uY3BwCTE1CitjdmFyaGVhZGVy XGRlZmN2dHlwZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZvcHZhcnBhcnNlYm9keVxcRWRl ZmN2XFxkZWZjdnhcXGRlZmN2YXJoZWFkZXJcXGRlZi8KK2N2dHlwZQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZvcHZhcnBhcnNlYm9keVxcRWRlZmN2XFxkZWZjdnhcXGRlZmN2YXJoZWFkZXJc XGRlZi8KK2N2dHlwZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxiZWdpbmdyb3VwXFxkZWZuYW1l IHsjMn17XFxkZWZjdnR5cGV7fSBvZiAjMX0lJC8KK2N2eFxkZWZjdmFyaGVhZGVyCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZm9wdmFycGFyc2Vib2R5XFxFZGVmY3ZcXGRlZmN2eFxcZGVmY3Zh cmhlYWRlclxcZGVmLwogZAljLmMJMTgwCiBkCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJNDY3Mwog ZAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTQ2NzkKQEAgLTI4MzAsNiArMjQ3OSwxNSBAQCBkZWZh dWx0X0NfaGVscAljLXNyYy9ldGFncy5jCTUxNQogZGVmYXVsdF9DX2hlbHAJYy1zcmMvZXRhZ3Mu Ywk1MjMKIGRlZmF1bHRfQ19zdWZmaXhlcwljLXNyYy9ldGFncy5jCTUxMgogZGVmY2VsbAljLXNy Yy9lbWFjcy9zcmMvbGlzcC5oCTIzNTEKK2RlZmNvZGVpbmRleAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGRlZmNvZGVpbmRleHtcXHBhcnNlYXJnXFxuZXdjb2RlaW5kZXh9JC8KK2RlZmN2 CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmY3YgIzEge1xcZGVmXFxkZWZjdnR5cGV7 IzF9JSQvCitkZWZjdmFyaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmY3Zh cmhlYWRlciAjMSMyIzN7JSQvCitkZWZjdnR5cGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxkZWZjdiAjMSB7XFxkZWZcXGRlZmN2dHlwZXsjMX0lJC8KK2RlZmN2eAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGRlZmN2eCAjMSB7XFxlcnJtZXNzYWdle0BkZWZjdnggaW4gaW52YWxp ZCBjb24vCitkZWZmbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZmZue1xcZGVmbWV0 aHBhcnNlYm9keVxcRWRlZmZuXFxkZWZmbnhcXGRlZmZuaGUvCitkZWZmbmhlYWRlcgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGRlZmZuaGVhZGVyICMxIzIjM3tcXGRvaW5kIHtmbn17XFxj b2RleyMyfX0lJC8KK2RlZmZueAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZmZueCAj MSB7XFxlcnJtZXNzYWdle0BkZWZmbnggaW4gaW52YWxpZCBjb24vCitkZWZpbmRleAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGRlZmluZGV4e1xccGFyc2VhcmdcXG5ld2luZGV4fSQvCiBk ZWZpbmUtYWJicmV2CWMtc3JjL2FiYnJldi5jCS9eREVGVU4gKCJkZWZpbmUtYWJicmV2IiwgRmRl ZmluZV9hYmJyZXYsIFNkZWZpbmVfYWIvCiBkZWZpbmUtYWJicmV2LXRhYmxlCWMtc3JjL2FiYnJl di5jCS9eREVGVU4gKCJkZWZpbmUtYWJicmV2LXRhYmxlIiwgRmRlZmluZV9hYmJyZXZfdGFibGUv CiBkZWZpbmUtZ2xvYmFsLWFiYnJldgljLXNyYy9hYmJyZXYuYwkvXkRFRlVOICgiZGVmaW5lLWds b2JhbC1hYmJyZXYiLCBGZGVmaW5lX2dsb2JhbF9hYmJyLwpAQCAtMjgzNyw3ICsyNDk1LDYzIEBA IGRlZmluZS1tb2RlLWFiYnJldgljLXNyYy9hYmJyZXYuYwkvXkRFRlVOICgiZGVmaW5lLW1vZGUt YWJicmV2IiwgRmRlZmluZV9tb2RlX2FiCiBkZWZpbmVkX0dDX0NIRUNLX1NUUklOR19CWVRFUwlj LXNyYy9lbWFjcy9zcmMvbGlzcC5oCTQ2NjMKIGRlZmluZWRfR0NfQ0hFQ0tfU1RSSU5HX0JZVEVT CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJNDY2NQogZGVmaW5lZGVmCWMtc3JjL2V0YWdzLmMJMjQ2 NAorZGVmaXZhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZml2YXJ7XFxkZWZ2cnBh cnNlYm9keVxcRWRlZml2YXJcXGRlZml2YXJ4XFxkZWYvCitkZWZpdmFyaGVhZGVyCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcZGVmaXZhcmhlYWRlciAjMSMyIzN7JSQvCitkZWZpdmFyeAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZml2YXJ4ICMxIHtcXGVycm1lc3NhZ2V7QGRl Zml2YXJ4IGluIGludmFsaWQvCitkZWZtYWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxk ZWZtYWN7XFxkZWZwYXJzZWJvZHlcXEVkZWZtYWNcXGRlZm1hY3hcXGRlZm1hY2hlLworZGVmbWFj aGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmbWFjaGVhZGVyICMxIzJ7XFxk b2luZCB7Zm59e1xcY29kZXsjMX19JSBNYWsvCitkZWZtYWN4CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcZGVmbWFjeCAjMSB7XFxlcnJtZXNzYWdle0BkZWZtYWN4IGluIGludmFsaWQgYy8K K2RlZm1ldGhvZAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm1ldGhvZHtcXGRlZm1l dGhwYXJzZWJvZHlcXEVkZWZtZXRob2RcXGRlZm1ldC8KK2RlZm1ldGhvZGhlYWRlcgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm1ldGhvZGhlYWRlciAjMSMyIzN7JSQvCitkZWZtZXRo b2R4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmbWV0aG9keCAjMSB7XFxlcnJtZXNz YWdle0BkZWZtZXRob2R4IGluIGludi8KK2RlZm1ldGhwYXJzZWJvZHkJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxkZWZtZXRocGFyc2Vib2R5ICMxIzIjMyM0IHtcXGJlZ2luZ3JvdXBcXGlu RU5WIC8KK2RlZm5hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZuYW1lICMxIzJ7 JSQvCitkZWZvcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm9wICMxIHtcXGRlZlxc ZGVmb3B0eXBleyMxfSUkLworZGVmb3BoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxkZWZvcGhlYWRlciAjMSMyIzN7JSQvCitkZWZvcHBhcnNlYm9keQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGRlZm9wcGFyc2Vib2R5ICMxIzIjMyM0IzUge1xcYmVnaW5ncm91cFxcaW5F TlYgLworZGVmb3B0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmb3B0e1xcZGVmdmFy cGFyc2Vib2R5XFxFZGVmb3B0XFxkZWZvcHR4XFxkZWZvcC8KK2RlZm9wdGhlYWRlcgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm9wdGhlYWRlciAjMSMye1xcZG9pbmQge3ZyfXtcXGNv ZGV7IzF9fSUgTWFrLworZGVmb3B0eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm9w dHggIzEge1xcZXJybWVzc2FnZXtAZGVmb3B0eCBpbiBpbnZhbGlkIGMvCitkZWZvcHR5cGUJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZvcCAjMSB7XFxkZWZcXGRlZm9wdHlwZXsjMX0l JC8KK2RlZm9wdmFycGFyc2Vib2R5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmb3B2 YXJwYXJzZWJvZHkgIzEjMiMzIzQjNSB7XFxiZWdpbmdyb3VwXFxpbkUvCitkZWZvcHgJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZvcHggIzEge1xcZXJybWVzc2FnZXtAZGVmb3B4IGlu IGludmFsaWQgY29uLworZGVmcGFyc2Vib2R5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc ZGVmcGFyc2Vib2R5ICMxIzIjM3tcXGJlZ2luZ3JvdXBcXGluRU5WJSBFbnZpcm8vCitkZWZzcGVj CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmc3BlY3tcXGRlZnBhcnNlYm9keVxcRWRl ZnNwZWNcXGRlZnNwZWN4XFxkZWZzcC8KK2RlZnNwZWNoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxkZWZzcGVjaGVhZGVyICMxIzJ7XFxkb2luZCB7Zm59e1xcY29kZXsjMX19JSBN YS8KK2RlZnNwZWN4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmc3BlY3ggIzEge1xc ZXJybWVzc2FnZXtAZGVmc3BlY3ggaW4gaW52YWxpZC8KK2RlZnRwCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZGVmdHB7XFxkZWZ2cnBhcnNlYm9keVxcRWRlZnRwXFxkZWZ0cHhcXGRlZnRw aGVhZC8KK2RlZnRwYXJncwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnRwYXJncyAj MXtcXGJmIFxcZGVmdmFyYXJnc3sjMX19JC8KK2RlZnRwaGVhZGVyCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZGVmdHBoZWFkZXIgIzEjMiMze1xcZG9pbmQge3RwfXtcXGNvZGV7IzJ9fSUk LworZGVmdHB4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHB4ICMxIHtcXGVycm1l c3NhZ2V7QGRlZnRweCBpbiBpbnZhbGlkIGNvbi8KK2RlZnR5cGVmbgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGRlZnR5cGVmbntcXGRlZm1ldGhwYXJzZWJvZHlcXEVkZWZ0eXBlZm5cXGRl ZnR5cC8KK2RlZnR5cGVmbmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5 cGVmbmhlYWRlciAjMSMyIzN7XFxkZWZ0eXBlZm5oZWFkZXJ4eyMxfXsvCitkZWZ0eXBlZm5oZWFk ZXJ4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZuaGVhZGVyeCAjMSMyIzMg IzRcXHJlbGF4eyUkLworZGVmdHlwZWZueAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRl ZnR5cGVmbnggIzEge1xcZXJybWVzc2FnZXtAZGVmdHlwZWZueCBpbiBpbnYvCitkZWZ0eXBlZnVu CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZ1bntcXGRlZnBhcnNlYm9keVxc RWRlZnR5cGVmdW5cXGRlZnR5cGVmLworZGVmdHlwZWZ1bmFyZ3MJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxkZWZ0eXBlZnVuYXJncyAjMXslJC8KK2RlZnR5cGVmdW5oZWFkZXIJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBlZnVuaGVhZGVyICMxIzJ7XFxkZWZ0eXBlZnVu aGVhZGVyeHsjMX0jLworZGVmdHlwZWZ1bmhlYWRlcngJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxkZWZ0eXBlZnVuaGVhZGVyeCAjMSMyICMzXFxyZWxheHslJC8KK2RlZnR5cGV1bngJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBldW54ICMxIHtcXGVycm1lc3NhZ2V7QGRl ZnR5cGV1bnggaW4gaW52LworZGVmdHlwZXZhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGRlZnR5cGV2YXJ7XFxkZWZ2YXJwYXJzZWJvZHlcXEVkZWZ0eXBldmFyXFxkZWZ0eS8KK2RlZnR5 cGV2YXJoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBldmFyaGVhZGVy ICMxIzJ7JSQvCitkZWZ0eXBldmFyeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5 cGV2YXJ4ICMxIHtcXGVycm1lc3NhZ2V7QGRlZnR5cGV2YXJ4IGluIGkvCitkZWZ0eXBldnIJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBldnJ7XFxkZWZ2cnBhcnNlYm9keVxcRWRl ZnR5cGV2clxcZGVmdHlwZXYvCitkZWZ0eXBldnJoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxkZWZ0eXBldnJoZWFkZXIgIzEjMiMze1xcZG9pbmQge3ZyfXtcXGNvZGV7IzN9fS8K K2RlZnR5cGV2cngJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBldnJ4ICMxIHtc XGVycm1lc3NhZ2V7QGRlZnR5cGV2cnggaW4gaW52LworZGVmdW4JdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxkZWZ1bntcXGRlZnBhcnNlYm9keVxcRWRlZnVuXFxkZWZ1bnhcXGRlZnVuaGVh ZGVyLwogZGVmdW5fZnVuYzEJYy5jCS9eZGVmdW5fZnVuYzEoKSQvCitkZWZ1bmFyZ3MJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ1bmFyZ3MgIzF7XFxmdW5jdGlvbnBhcmVucyBcXHNs JC8KK2RlZnVuaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdW5oZWFkZXIg IzEjMntcXGRvaW5kIHtmbn17XFxjb2RleyMxfX0lIE1ha2UvCitkZWZ1bngJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxkZWZ1bnggIzEge1xcZXJybWVzc2FnZXtAZGVmdW54IGluIGludmFs aWQgY29uLworZGVmdmFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdmFye1xcZGVm dmFycGFyc2Vib2R5XFxFZGVmdmFyXFxkZWZ2YXJ4XFxkZWZ2YS8KK2RlZnZhcmFyZ3MJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ2YXJhcmdzICMxe1xcbm9ybWFscGFyZW5zICMxJSQv CitkZWZ2YXJoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ2YXJoZWFkZXIg IzEjMntcXGRvaW5kIHt2cn17XFxjb2RleyMxfX0lIE1hay8KK2RlZnZhcnBhcnNlYm9keQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnZhcnBhcnNlYm9keSAjMSMyIzN7XFxiZWdpbmdy b3VwXFxpbkVOViUgRW52LworZGVmdmFyeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRl ZnZhcnggIzEge1xcZXJybWVzc2FnZXtAZGVmdmFyeCBpbiBpbnZhbGlkIGMvCitkZWZ2cgl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnZye1xcZGVmdnJwYXJzZWJvZHlcXEVkZWZ2clxc ZGVmdnJ4XFxkZWZ2cmhlYWQvCitkZWZ2cmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGRlZnZyaGVhZGVyICMxIzIjM3tcXGRvaW5kIHt2cn17XFxjb2RleyMyfX0lJC8KK2RlZnZy cGFyc2Vib2R5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdnJwYXJzZWJvZHkgIzEj MiMzIzQge1xcYmVnaW5ncm91cFxcaW5FTlYgJSQvCitkZWZ2cngJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxkZWZ2cnggIzEge1xcZXJybWVzc2FnZXtAZGVmdnJ4IGluIGludmFsaWQgY29u LwogZGVsZWdhdGUJb2JqYy1zcmMvU3VicHJvY2Vzcy5tCS9eLSBkZWxlZ2F0ZSQvCiBkZWxldGVJ dGVtCXB5dC1zcmMvc2VydmVyLnB5CS9eICAgIGRlZiBkZWxldGVJdGVtKHNlbGYpOiQvCiBkZWxl dGVfa2JvYXJkCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eZGVsZXRlX2tib2FyZCAoS0JP QVJEICprYikkLwpAQCAtMjg0NywyNSArMjU2MSw1NCBAQCBkZWxpdmVyX3VzZXJfc2lnbmFsCWMt c3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eZGVsaXZlcl91c2VyX3NpZ25hbCAoaW50IHNpZykk LwogZGVwdGgJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxNjE4CiBkZXJpdmVkX2FuYWx5c2VzCXBy b2wtc3JjL25hdGRlZC5wcm9sb2cJL15kZXJpdmVkX2FuYWx5c2VzKFtdLFtdKS4kLwogZGVzY3Jp YmVfYWJicmV2CWMtc3JjL2FiYnJldi5jCS9eZGVzY3JpYmVfYWJicmV2IChzeW0sIHN0cmVhbSkk LworZGVzY3JpcHRpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZXNjcmlwdGlvbntc XHRhYmxlentcXGRvbnRpbmRleH17MX17fXt9e317fX0kLwogZGV0ZWN0X2lucHV0X3BlbmRpbmcJ Yy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15kZXRlY3RfaW5wdXRfcGVuZGluZyAodm9pZCkk LwogZGV0ZWN0X2lucHV0X3BlbmRpbmdfaWdub3JlX3NxdWVlemFibGVzCWMtc3JjL2VtYWNzL3Ny Yy9rZXlib2FyZC5jCS9eZGV0ZWN0X2lucHV0X3BlbmRpbmdfaWdub3JlX3NxdWVlemFibGVzICh2 b2lkKSQvCiBkZXRlY3RfaW5wdXRfcGVuZGluZ19ydW5fdGltZXJzCWMtc3JjL2VtYWNzL3NyYy9r ZXlib2FyZC5jCS9eZGV0ZWN0X2lucHV0X3BlbmRpbmdfcnVuX3RpbWVycyAoYm9vbCBkb19kaXNw bGF5KSQvCitkZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRme1xcbGV0XFx0ZW50dD1c XGRlZnR0IFxcbGV0XFx0ZW5iZiA9IFxcZGVmYmYgXFxiZn0vCitkZm4JdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcbGV0XFxkZm49XFxzbWFydGl0YWxpYyQvCitkZm4JdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxkZm4jIzF7XFxyZWFsYmFja3NsYXNoIGRmbiB7IyMxfX0kLwogZGlhbG9nX2xv b3AJZXJsLXNyYy9nc19kaWFsb2cuZXJsCS9eZGlhbG9nX2xvb3AoTW9kdWxlLCBXaW5kb3csIEZy YW1lLCBFeHRyYSwgQXJncykgLT4vCiBkaWdub3JlcmVzdAljLXNyYy9ldGFncy5jCTI0NjMKK2Rp cmVudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGlyZW50cnl7XFxiZWdpbmdyb3Vw XFxkaXJlbnRyeXh4eH0kLworZGlyZW50cnl4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbG9u Z1xcZGVmXFxkaXJlbnRyeXh4eCAjMVxcZW5kIGRpcmVudHJ5e1xcZW5kZ3JvdXBcXGlnLwogZGlz Y2FyZC1pbnB1dAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXkRFRlVOICgiZGlzY2FyZC1p bnB1dCIsIEZkaXNjYXJkX2lucHV0LCBTZGlzY2FyZF9pLwogZGlzY2FyZF9tb3VzZV9ldmVudHMJ Yy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15kaXNjYXJkX21vdXNlX2V2ZW50cyAodm9pZCkk LwogZGlzY3JldGVfbG9jYXRpb24JY3Atc3JjL2NsaGVpci5ocHAJNTYKIGRpc2NyZXRlX2xvY2F0 aW9uCWNwLXNyYy9jbGhlaXIuaHBwCS9eICAgIGRpc2NyZXRlX2xvY2F0aW9uKGludCB4aSwgaW50 IHlpLCBpbnQgemkpOiQvCiBkaXNwbGF5CWNwLXNyYy9jb253YXkuY3BwCS9edm9pZCBkaXNwbGF5 KHZvaWQpJC8KK2Rpc3BsYXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkaXNwbGF5e1xc YmVnaW5ncm91cFxcaW5FTlYgJVRoaXMgZ3JvdXAgZW5kcyBhdC8KIGRpc3Bvc2V0ZXh0c3RyaW5n CXBhcy1zcmMvY29tbW9uLnBhcwkvXnByb2NlZHVyZSBkaXNwb3NldGV4dHN0cmluZzsoKigkLwor ZG1uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG1uIzF7XFx0aGluc3BhY2UgIzF9JC8K IGRub25lCWMtc3JjL2V0YWdzLmMJMjQ2MAorZG9icmVhawl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGRvYnJlYWsjMSMye1xccGFyXFxpZmRpbVxcbGFzdHNraXA8IzFcXHJlbW92ZWxhc3Qv CiBkb2MJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxNjg5Citkb2NoYXBlbnRyeQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGRvY2hhcGVudHJ5IzEjMnslJC8KK2RvY29kZWluZGV4CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9jb2RlaW5kZXgjMXtcXGVkZWZcXGluZGV4bmFtZXsj MX1cXHBhcnNlYXJnXFxzaS8KIGRvZwljLXNyYy9oLmgJODEKIGRvZwljcC1zcmMvYy5DCTEyNgog ZG9nCWNwLXNyYy9jLkMJMTMwCitkb2luZAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRv aW5kICMxIzJ7JSQvCitkb2luZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9pbmRl eCMxe1xcZWRlZlxcaW5kZXhuYW1leyMxfVxccGFyc2VhcmdcXHNpbmdsZS8KK2Rvbm9kZXJlZgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRvbm9kZXJlZntcXGlmeFxcbGFzdG5vZGVcXHJl bGF4XFxlbHNlJC8KK2RvbnRpbmRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRvbnRp bmRleCAjMXt9JC8KK2RvcGFnZW5vCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9wYWdl bm8jMXt7XFxybSAjMX19JC8KK2RvcHJpbnRpbmRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGRvcHJpbnRpbmRleCMxeyUkLworZG9zZWNlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGRvc2VjZW50cnkjMSMyeyUkLworZG9zZXRxCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcZG9zZXRxICMxIzJ7e1xcbGV0XFxmb2xpbz0wIFxcdHVybm9mZmFjdGl2ZSUkLworZG9z aG9ydHBhZ2Vubwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRvc2hvcnRwYWdlbm8jMXt7 XFxybSAjMX19JC8KK2Rvc3ViaW5kCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9zdWJp bmQgIzEjMiMzeyUkLworZG9zdWJzZWNlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGRvc3Vic2VjZW50cnkjMSMyeyUkLworZG9zdWJzdWJzZWNlbnRyeQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGRvc3Vic3Vic2VjZW50cnkjMSMyeyUkLwogZG90ZmlsbAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eICBcXG51bGxcXG5vYnJlYWtcXGluZGV4ZG90ZmlsbCAlIEhhdmUgbGVhZGVy cyBiZWZvcmUvCiBkb3RmaWxsCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG5vaW5kZW50XFxoc2tp cFxcc2Vjb25kYXJ5aW5kZW50XFxoYm94eyMxfVxcaW5kZXhkb3RmLworZG90cwl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGRvdHN7JFxcbGRvdHMkfSQvCitkb3RzCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcZG90c3tcXHJlYWxiYWNrc2xhc2ggZG90cyB9JSQvCitkb3RzCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGxldFxcZG90cz1cXGluZGV4ZHVtbXlkb3RzJC8KK2RvdHMJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3Rze1xccmVhbGJhY2tzbGFzaCBkb3RzfSQvCitk b3RzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcZG90cz1cXHB0ZXhkb3RzJC8KIGRvdWJs ZV9jbGlja19jb3VudAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwk1MjIyCitkb3VibGVjb2x1 bW5vdXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3VibGVjb2x1bW5vdXR7XFxzcGxp dHRvcHNraXA9XFx0b3Bza2lwIFxcc3BsaXQvCiBkcmFnX25fZHJvcF9zeW1zCWMtc3JjL2VtYWNz L3NyYy9rZXlib2FyZC5jCTQ2MjkKIGRyaWJibGUJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJ MjM2CiBkc2hhcnBzZWVuCWMtc3JjL2V0YWdzLmMJMjQ2MQpAQCAtMjg4Miw2ICsyNjI1LDcgQEAg ZHVtbXlmb250CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcaT1cXGluZGV4ZHVtbXlmb250 JC8KIGR1bW15Zm9udAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGI9XFxpbmRleGR1bW15 Zm9udCQvCiBkdW1teWZvbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxlbXBoPVxcaW5k ZXhkdW1teWZvbnQkLwogZHVtbXlmb250CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcc3Ry b25nPVxcaW5kZXhkdW1teWZvbnQkLworZHVtbXlmb250CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGxldFxcY2l0ZT1cXGluZGV4ZHVtbXlmb250JC8KIGR1bW15Zm9udAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxsZXRcXHNjPVxcaW5kZXhkdW1teWZvbnQkLwogZHVtbXlmb250CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGxldFxcdGNsb3NlPVxcaW5kZXhkdW1teWZvbnQkLwogZHVtbXlmb250CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcY29kZT1cXGluZGV4ZHVtbXlmb250JC8KQEAgLTI5 MTUsMTAgKzI2NTksMTYgQEAgZWRpdHNpdGUJcHl0LXNyYy9zZXJ2ZXIucHkJL14gICAgZGVmIGVk aXRzaXRlKHNlbGYsIHNpdGUpOiQvCiBlZGl0dXNlcglweXQtc3JjL3NlcnZlci5weQkvXiAgICBk ZWYgZWRpdHVzZXIoc2VsZiwgdXNlcik6JC8KIGVnZXRlbnYJYy1zcmMvZW1hY3Mvc3JjL2xpc3Au aAkvXmVnZXRlbnYgKGNvbnN0IGNoYXIgKnZhcikkLwogZW1hY3NfYWJvcnQJYy1zcmMvZW1hY3Mv c3JjL2xpc3AuaAkvXmV4dGVybiBfTm9yZXR1cm4gdm9pZCBlbWFjc19hYm9ydCAodm9pZCkgTk9f SU5MSU5FLworZW1waAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGVtcGg9XFxzbWFydGl0 YWxpYyQvCitlbXBoCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcZW1waD1cXGluZGV4ZHVt bXlmb250JC8KK2VtcGgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxlbXBoIyMxe1xccmVh bGJhY2tzbGFzaCBlbXBoIHsjIzF9fSQvCiBlbmQJYy1zcmMvZW1hY3Mvc3JjL3JlZ2V4LmgJNDMy CiBlbmQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJODc1MwogZW5kCWMtc3JjL2VtYWNzL3Ny Yy9saXNwLmgJMjAzOQorZW5kCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZW5ke1xccGFy c2VhcmdcXGVuZHh4eH0kLworZW5kZG91YmxlY29sdW1ucwl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGVuZGRvdWJsZWNvbHVtbnN7XFxvdXRwdXQ9e1xcYmFsYW5jZWNvbHVtbnN9XFxlai8K IGVuZHRva2VuCWMtc3JjL2V0YWdzLmMJL14jZGVmaW5lCWVuZHRva2VuKGMpCShfZXRrW0NIQVIg KGMpXSkgXC8qIGMgZW5kcyB0b2svCitlbmR4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxlbmR4eHggIzF7JSQvCiBlbnRlcl9jcml0aWNhbF9zZWN0aW9uCWMtc3JjL2guaAkxMTYKIGVu dHJ5CXBlcmwtc3JjL2h0bG1pZnktY3lzdGljCTIxOAogZW50cnkJcGVybC1zcmMvaHRsbWlmeS1j eXN0aWMJMjM0CkBAIC0yOTI4LDE0ICsyNjc4LDIyIEBAIGVudHJ5CXBlcmwtc3JjL2h0bG1pZnkt Y3lzdGljCTI2OAogZW50cnkJcGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJMjc2CiBlbnRyeQlwZXJs LXNyYy9odGxtaWZ5LWN5c3RpYwkyODEKIGVudHJ5CXBlcmwtc3JjL2h0bG1pZnktY3lzdGljCTI5 NgorZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxlbnRyeSAjMSMye1xcYmVnaW5n cm91cCQvCitlbnVtZXJhdGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxlbnVtZXJhdGV7 XFxwYXJzZWFyZ1xcZW51bWVyYXRlenp6fSQvCitlbnVtZXJhdGV5CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZW51bWVyYXRleSAjMSAjMlxcZW5kZW51bWVyYXRleXslJC8KK2VudW1lcmF0 ZXp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGVudW1lcmF0ZXp6eiAjMXtcXGVudW1l cmF0ZXkgIzEgIFxcZW5kZW51bWVyYXRlLwogZXF1YWxzS2V5CW9iamNwcC1zcmMvU2ltcGxlQ2Fs Yy5NCS9eLSBlcXVhbHNLZXk6c2VuZGVyJC8KK2VxdWl2CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcZXF1aXZ7XFxyZWFsYmFja3NsYXNoIGVxdWl2fSQvCitlcXVpdgl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGVxdWl2e1xcbGVhdmV2bW9kZVxcbG93ZXIuMWV4XFxoYm94IHRvIDFl bXtcXGhmaWwvCiBlcmxhbmdfYXRvbQljLXNyYy9ldGFncy5jCS9eZXJsYW5nX2F0b20gKGNoYXIg KnMpJC8KIGVybGFuZ19hdHRyaWJ1dGUJYy1zcmMvZXRhZ3MuYwkvXmVybGFuZ19hdHRyaWJ1dGUg KGNoYXIgKnMpJC8KIGVybGFuZ19mdW5jCWMtc3JjL2V0YWdzLmMJL15lcmxhbmdfZnVuYyAoY2hh ciAqcywgY2hhciAqbGFzdCkkLwogZXJyb3IJYy1zcmMvZXRhZ3MuYwkvXnN0YXRpYyB2b2lkIGVy cm9yIChjb25zdCBjaGFyICosIC4uLikgQVRUUklCVVRFX0ZPLwogZXJyb3IJYy1zcmMvZXRhZ3Mu YwkvXmVycm9yIChjb25zdCBjaGFyICpmb3JtYXQsIC4uLikkLwogZXJyb3IJYy1zcmMvZW1hY3Mv c3JjL2xpc3AuaAkvXmV4dGVybiBfTm9yZXR1cm4gdm9pZCBlcnJvciAoY29uc3QgY2hhciAqLCAu Li4pIEFULworZXJyb3IJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxlcnJvcntcXGxlYXZl dm1vZGVcXGxvd2VyLjdleFxcY29weVxcZXJyb3Jib3h9JC8KIGVycm9yCXktc3JjL2NjY3AueQkv XmVycm9yIChtc2cpJC8KK2Vycm9yRQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGVycm9y RSMxeyQvCiBlcnJvcl9zaWduYWxlZAljLXNyYy9ldGFncy5jCTI2NAogZXRhZ3MJZWwtc3JjL2Vt YWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRlZmdyb3VwIGV0YWdzIG5pbCAiVGFncyB0 YWJsZXMuIiQvCiBldGFncwlodG1sLXNyYy9zb2Z0d2FyZS5odG1sCS9eRXRhZ3MkLwpAQCAtMjk1 OCwxMSArMjcxNiwzMSBAQCBldGFncy14cmVmLWZpbmQtZGVmaW5pdGlvbnMtdGFnLW9yZGVyCWVs LXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihkZQogZXRhZ3MuMS5tYW4JbWFr ZS1zcmMvTWFrZWZpbGUJL15ldGFncy4xLm1hbjogZXRhZ3MuMSQvCiBldGFnc19nZXRjd2QJYy1z cmMvZXRhZ3MuYwkvXmV0YWdzX2dldGN3ZCAodm9pZCkkLwogZXZhbF9keW4JYy1zcmMvZW1hY3Mv c3JjL2tleWJvYXJkLmMJL15ldmFsX2R5biAoTGlzcF9PYmplY3QgZm9ybSkkLworZXZlbmZvb3Rp bmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxldmVuZm9vdGluZ3tcXHBhcnNlYXJnXFxl dmVuZm9vdGluZ3h4eH0kLworZXZlbmZvb3Rpbmd4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc Z2RlZlxcZXZlbmZvb3Rpbmd4eHggIzF7XFxldmVuZm9vdGluZ3l5eSAjMUB8QHxAfEB8LworZXZl bmZvb3Rpbmd5eXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcZXZlbmZvb3Rpbmd5eXkg IzFAfCMyQHwjM0B8IzRcXGZpbmlzaHslJC8KK2V2ZW5oZWFkaW5nCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZXZlbmhlYWRpbmd7XFxwYXJzZWFyZ1xcZXZlbmhlYWRpbmd4eHh9JC8KK2V2 ZW5oZWFkaW5neHh4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXGV2ZW5oZWFkaW5neHh4 ICMxe1xcZXZlbmhlYWRpbmd5eXkgIzFAfEB8QHxAfC8KK2V2ZW5oZWFkaW5neXl5CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGdkZWZcXGV2ZW5oZWFkaW5neXl5ICMxQHwjMkB8IzNAfCM0XFxmaW5p c2h7JSQvCiBldmVudC1jb252ZXJ0LWxpc3QJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15E RUZVTiAoImV2ZW50LWNvbnZlcnQtbGlzdCIsIEZldmVudF9jb252ZXJ0X2xpc3QsIC8KIGV2ZW50 LXN5bWJvbC1wYXJzZS1tb2RpZmllcnMJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15ERUZV TiAoImludGVybmFsLWV2ZW50LXN5bWJvbC1wYXJzZS1tb2RpZmllcnMiLCBGZS8KIGV2ZW50X2hl YWQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJMTEwMjEKIGV2ZW50X3RvX2tib2FyZAljLXNy Yy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmV2ZW50X3RvX2tib2FyZCAoc3RydWN0IGlucHV0X2V2 ZW50ICpldmVudCkkLworZXZlcnlmb290aW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc ZXZlcnlmb290aW5ne1xccGFyc2VhcmdcXGV2ZXJ5Zm9vdGluZ3h4eH0kLworZXZlcnlmb290aW5n eHh4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXGV2ZXJ5Zm9vdGluZ3h4eCAjMXtcXGV2 ZXJ5Zm9vdGluZ3l5eSAjMUB8QHxAfC8KK2V2ZXJ5Zm9vdGluZ3l5eQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxnZGVmXFxldmVyeWZvb3Rpbmd5eXkgIzFAfCMyQHwjM0B8IzRcXGZpbmlzaHslJC8K K2V2ZXJ5aGVhZGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGV2ZXJ5aGVhZGluZ3tc XHBhcnNlYXJnXFxldmVyeWhlYWRpbmd4eHh9JC8KK2V2ZXJ5aGVhZGluZ3h4eAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxnZGVmXFxldmVyeWhlYWRpbmd4eHggIzF7XFxldmVyeWhlYWRpbmd5eXkg IzFAfEB8QHwvCitldmVyeWhlYWRpbmd5eXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxc ZXZlcnloZWFkaW5neXl5ICMxQHwjMkB8IzNAfCM0XFxmaW5pc2h7JSQvCitld2JvdAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGV3Ym90e1xcdnJ1bGUgaGVpZ2h0MHB0IGRlcHRoXFxjb3Ju ZXJ0aGljayB3aWR0LworZXd0b3AJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxld3RvcHtc XHZydWxlIGhlaWdodFxcY29ybmVydGhpY2sgZGVwdGgwcHQgd2lkdC8KIGV4YWN0CWMtc3JjL2Vt YWNzL3NyYy9nbWFsbG9jLmMJMjAwCitleGFtcGxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxl dFxcZXhhbXBsZT1cXGxpc3AkLworZXhkZW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc ZXhkZW50e1xccGFyc2VhcmdcXGV4ZGVudHl5eX0kLworZXhkZW50CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGxldFxcZXhkZW50PVxcbm9maWxsZXhkZW50JC8KK2V4ZGVudAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxsZXRcXGV4ZGVudD1cXG5vZmlsbGV4ZGVudCQvCitleGRlbnQJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcbGV0XFxleGRlbnQ9XFxub2ZpbGxleGRlbnQkLworZXhkZW50eXl5CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZXhkZW50eXl5ICMxe3tcXGhmaWxcXGJyZWFrXFxo Ym94e1xca2VybiAtXFxleGRlbnQvCiBleGVjdXRlCWNwLXNyYy9jLkMJL14gICAgICAgIHZvaWQg ZXhlY3V0ZShDUGx1Z2luQ1NDU3RhdGUmIHAsIGludCB3LCBpbi8KIGV4aXQJYy1zcmMvZXhpdC5j CS9eREVGVU4oZXhpdCwgKHN0YXR1cyksIGludCBzdGF0dXMpJC8KIGV4aXQJYy1zcmMvZXhpdC5z dHJhbmdlX3N1ZmZpeAkvXkRFRlVOKGV4aXQsIChzdGF0dXMpLCBpbnQgc3RhdHVzKSQvCkBAIC0y OTc1LDEwICsyNzUzLDE0IEBAIGV4cAl5LXNyYy9jY2NwLnkJMTg1CiBleHAxCXktc3JjL2NjY3Au eQkxNDgKIGV4cF9saXN0CXktc3JjL3BhcnNlLnkJMjYzCiBleHBhbmQtYWJicmV2CWMtc3JjL2Fi YnJldi5jCS9eREVGVU4gKCJleHBhbmQtYWJicmV2IiwgRmV4cGFuZF9hYmJyZXYsIFNleHBhbmRf YWIvCitleHBhbmRhZnRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxleHBhbmRhZnRlclxcbGV0 XFxleHBhbmRhZnRlclxcc3luaW5kZXhmb29cXGV4cGFuZGFmdC8KK2V4cGFuZGFmdGVyCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGV4cGFuZGFmdGVyXFxsZXRcXGV4cGFuZGFmdGVyXFxzeW5pbmRl eGZvb1xcZXhwYW5kYWZ0LwogZXhwYW5kbW5nCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15leHBh bmRtbmcodmFyKFYpLHZhcihWKSkuJC8KIGV4cGFuZG1uZ190cmVlCXByb2wtc3JjL25hdGRlZC5w cm9sb2cJL15leHBhbmRtbmdfdHJlZSh0cmVlKFJ1bGUsU3luOlNlbSxUcmVlcyksJC8KIGV4cGFu ZG1uZ190cmVlcwlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9eZXhwYW5kbW5nX3RyZWVzKFtdLFtd KS4kLwogZXhwYW5kc3luCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15leHBhbmRzeW4oU3luLFN5 bik6LSQvCitleHBhbnNpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxleHBhbnNpb257 XFxyZWFsYmFja3NsYXNoIGV4cGFuc2lvbn0kLworZXhwYW5zaW9uCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZXhwYW5zaW9ue1xcbGVhdmV2bW9kZVxccmFpc2UuMWV4XFxoYm94IHRvIDFl bXtcXC8KIGV4cGxpY2l0bHktcXVvdGVkLXBlbmRpbmctZGVsZXRlLW1vZGUJZWwtc3JjL1RBR1RF U1QuRUwJL14oZGVmYWxpYXMgKHF1b3RlIGV4cGxpY2l0bHktcXVvdGVkLXBlbmRpbmctZGVsZXRl LS8KIGV4cHJlc3Npb25fdmFsdWUJeS1zcmMvY2NjcC55CTY4CiBleHRyYXMJYy1zcmMvZW1hY3Mv c3JjL2xpc3AuaAkxNjAzCkBAIC0zMDI2LDYgKzI4MDgsMTAgQEAgZmRwCWMtc3JjL2V0YWdzLmMJ MjE3CiBmZgljcC1zcmMvYy5DCS9eICBpbnQgZmYoKXtyZXR1cm4gMTt9OyQvCiBmaWVsZF9vZl9w bGF5CWNwLXNyYy9jb253YXkuY3BwCTE4CiBmaWdub3JlCWMtc3JjL2V0YWdzLmMJMjQxNgorZmls ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGZpbGU9XFxzYW1wJC8KK2ZpbGUJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxmaWxlIyMxe1xccmVhbGJhY2tzbGFzaCBmaWxlIHsjIzF9 fSUkLworZmlsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGZpbGU9XFxpbmRleGR1bW15 Zm9udCQvCitmaWxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZmlsZSMjMXtcXHJlYWxi YWNrc2xhc2ggZmlsZSB7IyMxfX0kLwogZmlsZS1vZi10YWcJZWwtc3JjL2VtYWNzL2xpc3AvcHJv Z21vZGVzL2V0YWdzLmVsCS9eKGRlZnVuIGZpbGUtb2YtdGFnICgmb3B0aW9uYWwgcmVsYXRpdmUp JC8KIGZpbGUtb2YtdGFnLWZ1bmN0aW9uCWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFn cy5lbAkvXihkZWZ2YXIgZmlsZS1vZi10YWctZnVuY3Rpb24gbmlsJC8KIGZpbGVKb2luCXBocC1z cmMvbGNlX2Z1bmN0aW9ucy5waHAJL14gIGZ1bmN0aW9uIGZpbGVKb2luKCkkLwpAQCAtMzAzNCw2 ICsyODIwLDcgQEAgZmlsZV9pbmRleAlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkzMwogZmlsZV90 b2NzCXBlcmwtc3JjL2h0bG1pZnktY3lzdGljCTMwCiBmaWxlbmFtZV9pc19hYnNvbHV0ZQljLXNy Yy9ldGFncy5jCS9eZmlsZW5hbWVfaXNfYWJzb2x1dGUgKGNoYXIgKmZuKSQvCiBmaWxlbmFtZXMJ Yy1zcmMvZXRhZ3MuYwkxOTYKK2ZpbmFsb3V0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc ZmluYWxvdXR7XFxvdmVyZnVsbHJ1bGU9MHB0fSQvCiBmaW5kLXRhZwllbC1zcmMvZW1hY3MvbGlz cC9wcm9nbW9kZXMvZXRhZ3MuZWwJL14oZGVmdW4gZmluZC10YWcgKHRhZ25hbWUgJm9wdGlvbmFs IG5leHQtcCByZWdleHAtcC8KIGZpbmQtdGFnLWRlZmF1bHQtZnVuY3Rpb24JZWwtc3JjL2VtYWNz L2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRlZmN1c3RvbSBmaW5kLXRhZy1kZWZhdWx0LWZ1 bmN0aW9uIG5pbCQvCiBmaW5kLXRhZy1oaXN0b3J5CWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rl cy9ldGFncy5lbAkvXihkZWZ2YXIgZmluZC10YWctaGlzdG9yeSBuaWwpIDsgRG9jIHN0cmluZz8k LwpAQCAtMzA1NiwyMSArMjg0MywzMyBAQCBmaW5kLXRhZy10YWctb3JkZXIJZWwtc3JjL2VtYWNz L2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRlZnZhciBmaW5kLXRhZy10YWctbwogZmluZF9l bnRyaWVzCWMtc3JjL2V0YWdzLmMJL15maW5kX2VudHJpZXMgKEZJTEUgKmluZikkLwogZmluZF91 c2VyX3NpZ25hbF9uYW1lCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eZmluZF91c2VyX3Np Z25hbF9uYW1lIChpbnQgc2lnKSQvCiBmaW5kY2F0cwlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9e ZmluZGNhdHMoW10sTGVmdCxMZWZ0KS4kLworZmluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcZmluZGV4IHtcXGZuaW5kZXh9JC8KIGZpbmlzaF9hcHBlbmRpY2VzCXBlcmwtc3JjL2h0 bG1pZnktY3lzdGljCS9ec3ViIGZpbmlzaF9hcHBlbmRpY2VzICgpJC8KIGZpbmlzaF9zZWN0aW9u cwlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkvXnN1YiBmaW5pc2hfc2VjdGlvbnMgKCkkLwogZmlu aXNoX3N1YnNlY3Rpb25zCXBlcmwtc3JjL2h0bG1pZnktY3lzdGljCS9ec3ViIGZpbmlzaF9zdWJz ZWN0aW9ucyAoKSQvCiBmaW5pc2hfc3Vic3Vic2VjdGlvbnMJcGVybC1zcmMvaHRsbWlmeS1jeXN0 aWMJL15zdWIgZmluaXNoX3N1YnN1YnNlY3Rpb25zICgpJC8KK2ZpbmlzaHRpdGxlcGFnZQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGZpbmlzaHRpdGxlcGFnZXslJC8KIGZpbmxpc3QJYy1z cmMvZXRhZ3MuYwkyNDE0CiBmaXJzdAljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCTE1MQorZmly c3QJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzcGxpdG9mZiMxIzJcXGVuZG1hcmt7XFxk ZWZcXGZpcnN0eyMxfVxcZGVmXFxyZXN0ey8KIGZpdGNodHJlZWxpc3QJcHJvbC1zcmMvbmF0ZGVk LnByb2xvZwkvXmZpdGNodHJlZWxpc3QoW10pLiQvCiBmaXh1cF9sb2NhbGUJYy1zcmMvZW1hY3Mv c3JjL2xpc3AuaAkvXklOTElORSB2b2lkIGZpeHVwX2xvY2FsZSAodm9pZCkge30kLwogZmxhZwlj LXNyYy9nZXRvcHQuaAk4MwogZmxhZzJzdHIJcHl0LXNyYy9zZXJ2ZXIucHkJL15kZWYgZmxhZzJz dHIodmFsdWUsIHN0cmluZyk6JC8KIGZsaXN0c2VlbgljLXNyYy9ldGFncy5jCTI0MTUKK2ZsdXNo Y3IJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxmbHVzaGNye1xcaWZ4XFxwYXJcXGxpc3Bw YXIgXFxkZWZcXG5leHQjIzF7fVxcZWxzZSAvCitmbHVzaGxlZnQJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxmbHVzaGxlZnR7JSQvCitmbHVzaHJpZ2h0CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcZmx1c2hyaWdodHslJC8KIGZuCWMtc3JjL2V4aXQuYwkvXiAgICB2b2lkIEVYRlVO KCgqZm5bMV0pLCAoTk9BUkdTKSk7JC8KIGZuCWMtc3JjL2V4aXQuc3RyYW5nZV9zdWZmaXgJL14g ICAgdm9pZCBFWEZVTigoKmZuWzFdKSwgKE5PQVJHUykpOyQvCitmbmhlYWRlcgl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGRlZmZue1xcZGVmbWV0aHBhcnNlYm9keVxcRWRlZmZuXFxkZWZm bnhcXGRlZmZuaGUvCiBmbmluCXktc3JjL3BhcnNlLnkJNjgKK2ZuaXRlbWluZGV4CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcZm5pdGVtaW5kZXggIzF7XFxkb2luZCB7Zm59e1xcY29kZXsj MX19fSUkLworZm54XGRlZmZuaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVm Zm57XFxkZWZtZXRocGFyc2Vib2R5XFxFZGVmZm5cXGRlZmZueFxcZGVmZm5oZS8KIGZvY3VzX3Nl dAlweXQtc3JjL3NlcnZlci5weQkvXiAgICBkZWYgZm9jdXNfc2V0KHNlbGYpOiQvCitmb2xpbwl0 ZXgtc3JjL3RleGluZm8udGV4CS9ee1xcbGV0XFxmb2xpbz0wJSBFeHBhbmQgYWxsIG1hY3JvcyBu b3cgRVhDRVBUIFxcZm9saW8vCitmb2xpbwl0ZXgtc3JjL3RleGluZm8udGV4CS9ee1xcbGV0XFxm b2xpbz0wJSQvCitmb2xpbwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRvc2V0cSAjMSMy e3tcXGxldFxcZm9saW89MCBcXHR1cm5vZmZhY3RpdmUlJC8KIGZvbGxvd19rZXkJYy1zcmMvZW1h Y3Mvc3JjL2tleWJvYXJkLmMJL15mb2xsb3dfa2V5IChMaXNwX09iamVjdCBrZXltYXAsIExpc3Bf T2JqZWN0IGtleSkkLwogZm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb2JleXNwYWNlcyBc XG9iZXlsaW5lcyBcXG5pbmV0dCBcXGluZGV4Zm9udHMgXFxyYXdiYWMvCiBmb250c1xybQl0ZXgt c3JjL3RleGluZm8udGV4CS9eICBcXGluZGV4Zm9udHNcXHJtIFxcdG9sZXJhbmNlPTk1MDAgXFxh ZHZhbmNlXFxiYXNlbGluZS8KQEAgLTMwOTgsMTEgKzI4OTcsMTUgQEAgZm9vYmFyCWMtc3JjL2Mu YwkvXmludCBmb29iYXIoKSB7O30kLwogZm9vYmFyCWMuYwkvXmV4dGVybiB2b2lkIGZvb2JhciAo dm9pZCkgX19hdHRyaWJ1dGVfXyAoKHNlY3Rpb24gLwogZm9vYmFyMgljLXNyYy9oLmgJMjAKIGZv b2JhcjJfCWMtc3JjL2guaAkxNgorZm9vdG5vdGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbG9u Z1xcZ2RlZlxcZm9vdG5vdGUgIzF7XFxnbG9iYWxcXGFkdmFuY2UgXFxmb290bm90ZW5vLworZm9v dG5vdGVzdHlsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGZvb3Rub3Rlc3R5bGU9XFxj b21tZW50JC8KK2Zvb3Rub3Rlenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxvbmdcXGdkZWZc XGZvb3Rub3Rlenp6ICMxe1xcaW5zZXJ0XFxmb290aW5zeyQvCiBmb3BlcmF0b3IJYy1zcmMvZXRh Z3MuYwkyNDExCiBmb3JjZV9hdXRvX3NhdmVfc29vbgljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQu YwkvXmZvcmNlX2F1dG9fc2F2ZV9zb29uICh2b2lkKSQvCiBmb3JjZV9leHBsaWNpdF9uYW1lCWMt c3JjL2V0YWdzLmMJMjY1CiBmb3JjZV9xdWl0X2NvdW50CWMtc3JjL2VtYWNzL3NyYy9rZXlib2Fy ZC5jCTEwMzg3CiBmb3JlaWduX2V4cG9ydAltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gcHJh Z21hIGZvcmVpZ25fZXhwb3J0KCJDIiwgdW5yYXZlbF91bml2KGluLCBvdXQvCitmb3JtYXQJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxmb3JtYXR7XFxiZWdpbmdyb3VwXFxpbkVOViAlVGhp cyBncm91cCBlbmRzIGF0IC8KIGZvcm1hdFNpemUJb2JqYy1zcmMvUGFja0luc3AubQkvXi0oY29u c3QgY2hhciAqKWZvcm1hdFNpemU6KGNvbnN0IGNoYXIgKilzaXplIGluQnVmLwogZm91bmQJYy1z cmMvZW1hY3Mvc3JjL2xpc3AuaAkyMzQ0CiBmcmFjYXMJaHRtbC1zcmMvc29mdHdhcmUuaHRtbAkv XkZyYWNhcyQvCkBAIC0zMTE5LDggKzI5MjIsMTIgQEAgZnJlZV9yZWdleHBzCWMtc3JjL2V0YWdz LmMJL15mcmVlX3JlZ2V4cHMgKHZvaWQpJC8KIGZyZWVfdHJlZQljLXNyYy9ldGFncy5jCS9eZnJl ZV90cmVlIChyZWdpc3RlciBub2RlICpucCkkLwogZnJlZV92YXIJcHJvbC1zcmMvbmF0ZGVkLnBy b2xvZwkvXmZyZWVfdmFyKHZhcihWKSx2YXIoVikpLiQvCiBmcmVlaG9vawljLXNyYy9lbWFjcy9z cmMvZ21hbGxvYy5jCS9eZnJlZWhvb2sgKHZvaWQgKnB0cikkLworZnJlbmNoc3BhY2luZwl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGZyZW5jaHNwYWNpbmd7XFxzZmNvZGU0Nj0xMDAwIFxc c2Zjb2RlNjM9MTAwMCBcXC8KK2ZyZW5jaHNwYWNpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc bGV0XFxmcmVuY2hzcGFjaW5nPVxccmVsYXglJC8KIGZyZXNoX3ZhcnMJcHJvbC1zcmMvbmF0ZGVk LnByb2xvZwkvXmZyZXNoX3ZhcnModmFyKFYpLHZhcihWKSkuJC8KIGZzdGFydGxpc3QJYy1zcmMv ZXRhZ3MuYwkyNDEzCitmdGFibGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxmdGFibGV7 XFxiZWdpbmdyb3VwXFxpbkVOVlxcb2JleWxpbmVzXFxvYmV5c3BhY2VzLworZnRhYmxleAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxmdGFibGV4ICMxXl5NeyUkLwogZnVuYwljLXNyYy9l bWFjcy9zcmMvbGlzcC5oCS9eICAgICAgdm9pZCAoKmZ1bmMpIChMaXNwX09iamVjdCk7JC8KIGZ1 bmMJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXiAgICAgIHZvaWQgKCpmdW5jKSAodm9pZCAqKTsk LwogZnVuYwljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eICAgICAgdm9pZCAoKmZ1bmMpIChpbnQp OyQvCkBAIC0zMTM3LDYgKzI5NDQsNyBAQCBmdW5jdGlvbgljLXNyYy9lbWFjcy9zcmMvbGlzcC5o CTE2ODUKIGZ1bmN0aW9uCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMjE5NwogZnVuY3Rpb24JYy1z cmMvZW1hY3Mvc3JjL2xpc3AuaAkyOTg1CiBmdW5jdGlvbnAJYy1zcmMvZW1hY3Mvc3JjL2xpc3Au aAkvXmZ1bmN0aW9ucCAoTGlzcF9PYmplY3Qgb2JqZWN0KSQvCitmdW5jdGlvbnBhcmVucwl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxmdW5jdGlvbnBhcmVuc3tcXGJvbGRicmF4XFxsZXQm PVxcYW1wcm1cXHBhcmVuY28vCiBmdmFsCWZvcnRoLXNyYy90ZXN0LWZvcnRoLmZ0aAkvXmZjb25z dCBmdmFsdWUgZnZhbCQvCiBmdmFyCWZvcnRoLXNyYy90ZXN0LWZvcnRoLmZ0aAkvXmZ2YXJpYWJs ZSBmdmFyJC8KIGZ2ZGVmCWMtc3JjL2V0YWdzLmMJMjQxOApAQCAtMzE5MywxMCArMzAwMSwxNCBA QCBnaGkxCWMtc3JjL2guaAkzNgogZ2hpMgljLXNyYy9oLmgJMzkKIGdpYWxsbwljcC1zcmMvYy5D CTQwCiBnbGlkZXIJY3Atc3JjL2NvbndheS5jcHAJL152b2lkIGdsaWRlcihpbnQgeCwgaW50IHkp JC8KK2dsb2dnaW5nYWxsCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZ2xvZ2dpbmdhbGx7 XFxiZWdpbmdyb3VwIFxcZ2xvYmFsZGVmcyA9IDEgXFxsb2dnLwogZ251CWh0bWwtc3JjL3NvZnR3 YXJlLmh0bWwJL15GcmVlIHNvZnR3YXJlIHRoYXQgSSB3cm90ZSBmb3IgdGhlIEdOVSBwcm9qZWN0 IG9yIC8KIGdvYmJsZV9pbnB1dAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmdvYmJsZV9p bnB1dCAodm9pZCkkLwogZ290by10YWctbG9jYXRpb24tZnVuY3Rpb24JZWwtc3JjL2VtYWNzL2xp c3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRlZnZhciBnb3RvLXRhZy1sb2NhdGlvbi1mdW5jdGlv biBuaWwkLwogZ290b194eQljcC1zcmMvc2NyZWVuLmNwcAkvXnZvaWQgZ290b194eSh1bnNpZ25l ZCBjaGFyIHgsIHVuc2lnbmVkIGNoYXIgeSkkLworZ3JvdXAJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxncm91cHtcXGJlZ2luZ3JvdXAkLworZ3RyCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcZ3Rye1xccmVhbGJhY2tzbGFzaCBndHJ9JSQvCitndHIJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxndHJ7XFxyZWFsYmFja3NsYXNoIGd0cn0kLwogaGFuZGxlTGlzdAlweXQtc3Jj L3NlcnZlci5weQkvXiAgICBkZWYgaGFuZGxlTGlzdChzZWxmLCBldmVudCk6JC8KIGhhbmRsZU5l dwlweXQtc3JjL3NlcnZlci5weQkvXiAgICBkZWYgaGFuZGxlTmV3KHNlbGYsIGV2ZW50KTokLwog aGFuZGxlX2FzeW5jX2lucHV0CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eaGFuZGxlX2Fz eW5jX2lucHV0ICh2b2lkKSQvCkBAIC0zMjExLDYgKzMwMjMsOCBAQCBoYXNoCWMtc3JjL2V0YWdz LmMJL15oYXNoIChjb25zdCBjaGFyICpzdHIsIGludCBsZW4pJC8KIGhhc2gJYy1zcmMvZW1hY3Mv c3JjL2xpc3AuaAkxODQzCiBoYXNoX3RhYmxlX3Rlc3QJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkx ODA1CiBoYXNoZm4JYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXiAgRU1BQ1NfVUlOVCAoKmhhc2hm bikgKHN0cnVjdCBoYXNoX3RhYmxlX3Rlc3QgKnQsLworaGF0CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcaGF0e1xccmVhbGJhY2tzbGFzaCBoYXR9JSQvCitoYXQJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxoYXR7XFxyZWFsYmFja3NsYXNoIGhhdH0kLwogaGRyCWMtc3JjL2VtYWNz L3NyYy9nbWFsbG9jLmMJMTg2MAogaGVhZF90YWJsZQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQu YwkxMTAyNwogaGVhZGVyCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTM3MQpAQCAtMzIyMCw2ICsz MDM0LDggQEAgaGVhZGVyCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTYxMAogaGVhZGVyCWMtc3Jj L2VtYWNzL3NyYy9saXNwLmgJMTY3MgogaGVhZGVyCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTgy NgogaGVhZGVyX3NpemUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxNDcxCitoZWFkaW5nCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaGVhZGluZ3tcXHBhcnNlYXJnXFxzZWNoZWFkaW5naX0k LworaGVhZGluZ3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxoZWFkaW5ncyAjMSB7XFxj c25hbWUgSEVBRElOR1MjMVxcZW5kY3NuYW1lfSQvCiBoZWFwc2l6ZQljLXNyYy9lbWFjcy9zcmMv Z21hbGxvYy5jCTM2MQogaGVsbG8Jc2NtLXNyYy90ZXN0LnNjbQkvXihkZWZpbmUgaGVsbG8gIkhl bGxvLCBFbWFjcyEiKSQvCiBoZWxsbwlzY20tc3JjL3Rlc3Quc2NtCS9eKHNldCEgaGVsbG8gIkhl bGxvLCB3b3JsZCEiKSQvCkBAIC0zMjMxLDYgKzMwNDcsMTAgQEAgaGVscF9mb3JtX3NhdmVkX3dp bmRvd19jb25maWdzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTIxNTYKIGhlbHB3aW4JcHl0 LXNyYy9zZXJ2ZXIucHkJL15kZWYgaGVscHdpbihoZWxwZGljdCk6JC8KIGhpZGVfY3Vyc29yCWNw LXNyYy9zY3JlZW4uY3BwCS9edm9pZCBoaWRlX2N1cnNvcih2b2lkKSQvCiBobGRzCW1lcmMtc3Jj L2FjY3VtdWxhdG9yLm0JL146LSBpbXBvcnRfbW9kdWxlIGhsZHMuJC8KK2hzaXplCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXHNoaXBvdXRcXHZib3h7e1xcbGV0XFxoc2l6ZT1cXHBhZ2V3aWR0aCBc XG1ha2VoZWFkbGluZS8KK2hzaXplCXRleC1zcmMvdGV4aW5mby50ZXgJL157XFxsZXRcXGhzaXpl PVxccGFnZXdpZHRoIFxcbWFrZWZvb3RsaW5lfX19JSQvCitoc2l6ZQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eCQkJe1xcbGV0XFxoc2l6ZT1cXHBhZ2V3aWR0aCBcXG1ha2VoZWFkbGluZX0kLworaHNp emUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXgkJCXtcXGxldFxcaHNpemU9XFxwYWdld2lkdGggXFxt YWtlZm9vdGxpbmV9fSQvCiBodG1sdHJlZWxpc3QJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmh0 bWx0cmVlbGlzdChbXSkuJC8KIGh5YnJpZF9hbGlnbmVkX2FsbG9jCWMtc3JjL2VtYWNzL3NyYy9n bWFsbG9jLmMJL15oeWJyaWRfYWxpZ25lZF9hbGxvYyAoc2l6ZV90IGFsaWdubWVudCwgc2l6ZV90 IHNpei8KIGh5YnJpZF9jYWxsb2MJYy1zcmMvZW1hY3Mvc3JjL2dtYWxsb2MuYwkvXmh5YnJpZF9j YWxsb2MgKHNpemVfdCBubWVtYiwgc2l6ZV90IHNpemUpJC8KQEAgLTMyNDUsMzEgKzMwNjUsODcg QEAgaQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTU2NwogaQljLXNyYy9lbWFjcy9zcmMvbGlzcC5o CTQ2NzMKIGkJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAk0Njc5CiBpCWNwLXNyYy9jLkMJMTMyCitp CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcaT1cXHNtYXJ0aXRhbGljJC8KK2kJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpIyMxe1xccmVhbGJhY2tzbGFzaCBpIHsjIzF9fSUkLwor aQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGk9XFxpbmRleGR1bW15Zm9udCQvCitpCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaSMjMXtcXHJlYWxiYWNrc2xhc2ggaSB7IyMxfX0k LworaQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGI9XFxwdGV4YiBcXGxldFxcYz1cXHB0 ZXhjIFxcbGV0XFxpPVxccHRleGkgXFxsZXRcXHQ9XFwvCiBpYWxwYWdlCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXG5ld2JveFxccGFydGlhbHBhZ2UkLworaWFscGFnZQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eICBcXG91dHB1dD17XFxnbG9iYWxcXHNldGJveFxccGFydGlhbHBhZ2U9JC8KIGlhbHBh Z2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxkaW1lbkA9XFxwYWdlaGVpZ2h0IFxcYWR2YW5j ZVxcZGltZW5AIGJ5LVxcaHRcXHBhcnRpLworaWFscGFnZQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXHBhZ2Vzb2ZhcntcXHVudmJveFxccGFydGlhbHBhZ2UgJSQvCiBpYWxwYWdlCXRleC1z cmMvdGV4aW5mby50ZXgJL14gIFxcYXZhaWxkaW1lbkA9XFxwYWdlaGVpZ2h0IFxcYWR2YW5jZVxc YXZhaWxkaW1lbkAgYnkvCiBpYWxwYWdlCXRleC1zcmMvdGV4aW5mby50ZXgJL14gICAgIFxcZGlt ZW5APVxccGFnZWhlaWdodCBcXGFkdmFuY2VcXGRpbWVuQCBieS1cXGh0XFxwYS8KLWlhbHBhZ2U9 CXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcb3V0cHV0PXtcXGdsb2JhbFxcc2V0Ym94XFxwYXJ0 aWFscGFnZT0kLwogaWRlbnRpZnlfZ29hbF90eXBlCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146 LSBwcmVkIGlkZW50aWZ5X2dvYWxfdHlwZShwcmVkX2lkOjppbiwgcHJvY19pZDo6aS8KIGlkZW50 aWZ5X291dF9hbmRfb3V0X3ByaW1lCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBwcmVkIGlk ZW50aWZ5X291dF9hbmRfb3V0X3ByaW1lKG1vZHVsZV9pbmZvOjppbi8KIGlkZW50aWZ5X3JlY3Vy c2l2ZV9jYWxscwltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gcHJlZCBpZGVudGlmeV9yZWN1 cnNpdmVfY2FsbHMocHJlZF9pZDo6aW4sIHByb2MvCiBpZHgJYy1zcmMvZW1hY3Mvc3JjL2xpc3Au aAkzMTUwCitpZmNsZWFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaWZjbGVhcntcXGJl Z2luZ3JvdXBcXGlnbm9yZXNlY3Rpb25zXFxwYXJzZWFyZ1xcaS8KK2lmY2xlYXJmYWlsCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaWZjbGVhcmZhaWx7XFxiZWdpbmdyb3VwXFxpZ25vcmVz ZWN0aW9uc1xcaWZjbGVhLworaWZjbGVhcmZhaWx4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc bG9uZ1xcZGVmXFxpZmNsZWFyZmFpbHh4eCAjMVxcZW5kIGlmY2xlYXJ7XFxlbmRncm91cFxcLwor aWZjbGVhcnh4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGlmY2xlYXJ4eHggIzF7XFxl bmRncm91cCQvCitpZmluZm8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpZmluZm97XFxi ZWdpbmdyb3VwXFxpZ25vcmVzZWN0aW9uc1xcaWZpbmZveHh4fSQvCitpZmluZm94eHgJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcbG9uZ1xcZGVmXFxpZmluZm94eHggIzFcXGVuZCBpZmluZm97XFxl bmRncm91cFxcaWdub3JlLworaWZzZXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpZnNl dHtcXGJlZ2luZ3JvdXBcXGlnbm9yZXNlY3Rpb25zXFxwYXJzZWFyZ1xcaWZzLworaWZzZXRmYWls CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaWZzZXRmYWlse1xcYmVnaW5ncm91cFxcaWdu b3Jlc2VjdGlvbnNcXGlmc2V0ZmFpLworaWZzZXRmYWlseHh4CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGxvbmdcXGRlZlxcaWZzZXRmYWlseHh4ICMxXFxlbmQgaWZzZXR7XFxlbmRncm91cFxcaWdu by8KK2lmc2V0eHh4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaWZzZXR4eHggIzF7XFxl bmRncm91cCQvCitpZnRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGlmdGV4e30kLwor aWZ1c2luZ3R0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaWZ1c2luZ3R0IzEjMntcXGlm ZGltIFxcZm9udGRpbWVuM1xcdGhlXFxmb250PTBwdC8KK2lnbm9yZQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGlnbm9yZXtcXGJlZ2luZ3JvdXBcXGlnbm9yZXNlY3Rpb25zJC8KIGlnbm9y ZV9jYXNlCWMtc3JjL2V0YWdzLmMJMjY2CiBpZ25vcmVfbW91c2VfZHJhZ19wCWMtc3JjL2VtYWNz L3NyYy9rZXlib2FyZC5jCTEyNTYKLWlsbD1ccmVsYXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc bGV0XFxyZWZpbGw9XFxyZWxheCQvCitpZ25vcmVzZWN0aW9ucwl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGlnbm9yZXNlY3Rpb25zeyUkLworaWdub3JleHh4CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGxvbmdcXGRlZlxcaWdub3JleHh4ICMxXFxlbmQgaWdub3Jle1xcZW5kZ3JvdXBcXGln bm9yZS8KK2lpCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaWkjMXt7XFxpdCAjMX19CQkl IGl0YWxpYyBmb250JC8KIGltbWVkaWF0ZV9xdWl0CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5j CTE3NAogaW1wYXR0bwlodG1sLXNyYy9zb2Z0d2FyZWxpYmVyby5odG1sCS9eSW1wYXR0byBwcmF0 aWNvIGRlbCBzb2Z0d2FyZSBsaWJlcm8kLwogaW1wbGVtZW50YXRpb24JbWVyYy1zcmMvYWNjdW11 bGF0b3IubQkvXjotIGltcGxlbWVudGF0aW9uLiQvCitpbXBsaWNpdG1hdGgJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcbGV0XFxpbXBsaWNpdG1hdGggPSAkJC8KK2luRU5WCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXG5ld2lmXFxpZkVOViBcXEVOVmZhbHNlIFxcZGVmXFxpbkVOVntcXGlmRU5WXFxy ZWxheFxcZWxzLwogaW5fd29yZF9zZXQJYy1zcmMvZXRhZ3MuYwkvXmluX3dvcmRfc2V0IChyZWdp c3RlciBjb25zdCBjaGFyICpzdHIsIHJlZ2lzdGVyIHVuLwogaW5hdHRyaWJ1dGUJYy1zcmMvZXRh Z3MuYwkyNDAwCiBpbmMJY3Atc3JjL1JhbmdlLmgJL14gIGRvdWJsZSBpbmMgKHZvaWQpIGNvbnN0 IHsgcmV0dXJuIHJuZ19pbmM7ICAgfSQvCitpbmNsdWRlCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcaW5jbHVkZXtcXHBhcnNlYXJnXFxpbmNsdWRlenp6fSQvCitpbmNsdWRlenp6CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5jbHVkZXp6eiAjMXt7XFxkZWZcXHRoaXNmaWxleyMx fVxcaW5wdXQgIzEkLworaW5kYmYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxpbmRiZj1c XGluZHJtJC8KIGluZGV4CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTg1NgoraW5kZXhiYWNrc2xh c2gJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxpbmRleGJhY2tzbGFzaD0wICAlb3ZlcnJp ZGRlbiBkdXJpbmcgXFxwcmludGluLworaW5kZXhiYWNrc2xhc2gJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXiAgXFxkZWZcXGluZGV4YmFja3NsYXNoe1xccmF3YmFja3NsYXNoeHh9JC8KK2luZGV4ZG90 ZmlsbAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZGV4ZG90ZmlsbHtcXGNsZWFkZXJz JC8KK2luZGV4ZHVtbWllcwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZGV4ZHVtbWll c3slJC8KK2luZGV4ZHVtbXlkb3RzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5kZXhk dW1teWRvdHN7Li4ufSQvCitpbmRleGR1bW15Zm9udAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGluZGV4ZHVtbXlmb250IzF7IzF9JC8KK2luZGV4ZHVtbXl0ZXgJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxpbmRleGR1bW15dGV4e1RlWH0kLworaW5kZXhmb250cwl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGluZGV4Zm9udHN7JSQvCitpbmRleG5hbWUJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxkb2luZGV4IzF7XFxlZGVmXFxpbmRleG5hbWV7IzF9XFxwYXJzZWFy Z1xcc2luZ2xlLworaW5kZXhuYW1lCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9jb2Rl aW5kZXgjMXtcXGVkZWZcXGluZGV4bmFtZXsjMX1cXHBhcnNlYXJnXFxzaS8KK2luZGV4bm9mb250 cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZGV4bm9mb250c3slJC8KK2luZHNjCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcaW5kc2M9XFxpbmRybSQvCitpbmRzZgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxsZXRcXGluZHNmPVxcaW5kcm0kLworaW5kc2wJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcbGV0XFxpbmRzbD1cXGluZGl0JC8KK2luZHR0CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGxldFxcaW5kdHQ9XFxuaW5ldHQkLwogaW5mYWJzZGlyCWMtc3JjL2V0YWdzLmMJMjA2 CiBpbmZhYnNuYW1lCWMtc3JjL2V0YWdzLmMJMjA1CiBpbmZpbGVzCW1ha2Utc3JjL01ha2VmaWxl CS9eaW5maWxlcyA9ICQoZmlsdGVyLW91dCAke05PTlNSQ1N9LCR7U1JDU30pIHNyY2xpc3QvCiBp bmZuYW1lCWMtc3JjL2V0YWdzLmMJMjA0CiBpbmZvCWMtc3JjL2VtYWNzL3NyYy9nbWFsbG9jLmMJ MTU3CiBpbmZvUGFuZWwJb2JqY3BwLXNyYy9TaW1wbGVDYWxjLk0JL14tIGluZm9QYW5lbDpzZW5k ZXIkLworaW5mb2FwcGVuZGl4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5mb2FwcGVu ZGl4e1xccGFyc2VhcmdcXGFwcGVuZGl4enp6fSQvCitpbmZvYXBwZW5kaXhzZWMJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvYXBwZW5kaXhzZWN7XFxwYXJzZWFyZ1xcYXBwZW5kaXhz ZWN6enp9JC8KK2luZm9hcHBlbmRpeHN1YnNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGluZm9hcHBlbmRpeHN1YnNlY3tcXHBhcnNlYXJnXFxhcHBlbmRpeHN1YnNlY3p6LworaW5mb2Fw cGVuZGl4c3Vic3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5mb2FwcGVuZGl4 c3Vic3Vic2Vje1xccGFyc2VhcmdcXGFwcGVuZGl4c3Vic3UvCitpbmZvY2hhcHRlcgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGluZm9jaGFwdGVye1xccGFyc2VhcmdcXGNoYXB0ZXJ6enp9 JC8KK2luZm9yZWYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvcmVmICMxe1xcaW5m b3JlZnp6eiAjMSwsLCwqKn0kLworaW5mb3JlZnp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGluZm9yZWZ6enogIzEsIzIsIzMsIzQqKntTZWUgSW5mbyBmaWxlIFxcZmlsZXsvCitpbmZv c2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm9zZWN0aW9ue1xccGFyc2Vh cmdcXHNlY3Rpb256enp9JC8KK2luZm9zdWJzZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcaW5mb3N1YnNlY3Rpb257XFxwYXJzZWFyZ1xcc3Vic2VjdGlvbnp6en0kLworaW5mb3N1 YnN1YnNlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvc3Vic3Vic2VjdGlv bntcXHBhcnNlYXJnXFxzdWJzdWJzZWN0aW9uenp6fS8KK2luZm90b3AJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxpbmZvdG9we1xccGFyc2VhcmdcXHVubnVtYmVyZWR6enp9JC8KK2luZm91 bm51bWJlcmVkCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5mb3VubnVtYmVyZWR7XFxw YXJzZWFyZ1xcdW5udW1iZXJlZHp6en0kLworaW5mb3VubnVtYmVyZWRzZWMJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxpbmZvdW5udW1iZXJlZHNlY3tcXHBhcnNlYXJnXFx1bm51bWJlcmVk c2Vjenp6fS8KK2luZm91bm51bWJlcmVkc3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcaW5mb3VubnVtYmVyZWRzdWJzZWN7XFxwYXJzZWFyZ1xcdW5udW1iZXJlZHN1YnMvCitpbmZv dW5udW1iZXJlZHN1YnN1YnNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm91bm51 bWJlcmVkc3Vic3Vic2Vje1xccGFyc2VhcmdcXHVubnVtYmVyZWRzLwogaW5pdAljLXNyYy9ldGFn cy5jCS9eaW5pdCAodm9pZCkkLwogaW5pdAlvYmpjLXNyYy9TdWJwcm9jZXNzLm0JL14tIGluaXQ6 KGNvbnN0IGNoYXIgKilzdWJwcm9jZXNzU3RyaW5nJC8KIGluaXQJb2JqYy1zcmMvU3VicHJvY2Vz cy5tCS9eICAgIGFuZFN0ZEVycjooQk9PTCl3YW50c1N0ZEVyciQvCkBAIC0zMjgxLDYgKzMxNTcs NyBAQCBpbml0X3JlZ2lzdHJ5CWNwLXNyYy9jbGhlaXIuY3BwCS9edm9pZCBpbml0X3JlZ2lzdHJ5 KHZvaWQpJC8KIGluaXRfdG9vbF9iYXJfaXRlbXMJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJ L15pbml0X3Rvb2xfYmFyX2l0ZW1zIChMaXNwX09iamVjdCByZXVzZSkkLwogaW5pdGEJYy5jCS9e c3RhdGljIHZvaWQgaW5pdGEgKCkge30kLwogaW5pdGIJYy5jCS9ec3RhdGljIHZvaWQgaW5pdGIg KCkge30kLworaW5pdGlhbAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluaXRpYWwgIzF7 JSQvCiBpbml0aWFsX2tib2FyZAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwk4NAogaW5pdGlh bGl6ZS1uZXctdGFncy10YWJsZQllbC1zcmMvZW1hY3MvbGlzcC9wcm9nbW9kZXMvZXRhZ3MuZWwJ L14oZGVmdW4gaW5pdGlhbGl6ZS1uZXctdGFncy10YWJsZSAoKSQvCiBpbml0aWFsaXplX2dvYWxf c3RvcmUJbWVyYy1zcmMvYWNjdW11bGF0b3IubQkvXjotIGZ1bmMgaW5pdGlhbGl6ZV9nb2FsX3N0 b3JlKGxpc3QoaGxkc19nb2FsKSwgaW5zLwpAQCAtMzMxMiw3ICszMTg5LDE0IEBAIGludGVyZmFj ZQltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gaW50ZXJmYWNlLiQvCiBpbnRlcmZhY2VfbG9j YXRlCWMtc3JjL2MuYwkvXmludGVyZmFjZV9sb2NhdGUodm9pZCkkLwogaW50ZXJuCWMtc3JjL2Vt YWNzL3NyYy9saXNwLmgJL15pbnRlcm4gKGNvbnN0IGNoYXIgKnN0cikkLwogaW50ZXJuX2Nfc3Ry aW5nCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL15pbnRlcm5fY19zdHJpbmcgKGNvbnN0IGNoYXIg KnN0cikkLworaW50ZXJuYWxCaXRlbQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGludGVy bmFsQml0ZW17XFxzbWFsbGJyZWFrIFxccGFyc2VhcmdcXGl0ZW16enp9JC8KK2ludGVybmFsQml0 ZW14CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW50ZXJuYWxCaXRlbXh7XFxwYXIgXFxw YXJzZWFyZ1xcaXRlbXp6en0kLworaW50ZXJuYWxCa2l0ZW0JdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxpbnRlcm5hbEJraXRlbXtcXHNtYWxsYnJlYWsgXFxwYXJzZWFyZ1xca2l0ZW16enov CitpbnRlcm5hbEJraXRlbXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbnRlcm5hbEJr aXRlbXh7XFxwYXIgXFxwYXJzZWFyZ1xca2l0ZW16enp9JC8KK2ludGVybmFsQnhpdGVtCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW50ZXJuYWxCeGl0ZW0gIiMxIntcXGRlZlxceGl0ZW1z dWJ0b3BpeHsjMX0gXFxzLworaW50ZXJuYWxCeGl0ZW14CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcaW50ZXJuYWxCeGl0ZW14ICIjMSJ7XFxkZWZcXHhpdGVtc3VidG9waXh7IzF9IFxcLwog aW50ZXJuYWxfbGFzdF9ldmVudF9mcmFtZQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkyMjgK K2ludGVybmFsc2V0cQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGludGVybmFsc2V0cSAj MSMyeyd4cmRlZiB7IzF9e1xcY3NuYW1lICMyXFxlbmRjLwogaW50ZXJuZWQJYy1zcmMvZW1hY3Mv c3JjL2xpc3AuaAk2NzIKIGludGVycHJldGVycwljLXNyYy9ldGFncy5jCTE5NwogaW50ZXJydXB0 X2lucHV0CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTMyOApAQCAtMzM0Nyw5ICszMjMxLDI4 IEBAIGlzb19saXNweV9mdW5jdGlvbl9rZXlzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTUx NTEKIGlzb3BlcmF0b3IJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmlzb3BlcmF0b3IoQ2hhcik6 LSQvCiBpc29wdGFiCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15pc29wdGFiKCclJykuJC8KIGlz d2hpdGUJYy1zcmMvZXRhZ3MuYwkvXiNkZWZpbmUJaXN3aGl0ZShjKQkoX3dodFtDSEFSIChjKV0p IFwvKiBjIGlzIHdoaXRlIC8KK2l0ZW0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpdGVt e1xcZXJybWVzc2FnZXtAaXRlbSB3aGlsZSBub3QgaW4gYSB0YWJsZX19LworaXRlbQl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxsZXRcXGl0ZW0gPSBcXGludGVybmFsQml0ZW0gJSQvCitpdGVtCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcaXRlbT1cXGl0ZW1pemVpdGVtfSQvCiBpdGVtX3By b3BlcnRpZXMJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJNzU2OAoraXRlbWNvbnRlbnRzCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaXRlbWNvbnRlbnRzeyMxfSUkLworaXRlbWZvbnQJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpdGVtZm9udHsjMn0lJC8KK2l0ZW1pbmRleAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGl0ZW1pbmRleD0jMSUkLworaXRlbWl6ZQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGl0ZW1pemV7XFxwYXJzZWFyZ1xcaXRlbWl6ZXp6en0k LworaXRlbWl6ZWl0ZW0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpdGVtaXplaXRlbXsl JC8KK2l0ZW1pemV5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaXRlbWl6ZXkgIzEjMnsl JC8KK2l0ZW1pemV6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpdGVtaXplenp6ICMx eyUkLworaXRlbXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpdGVteHtcXGVycm1lc3Nh Z2V7QGl0ZW14IHdoaWxlIG5vdCBpbiBhIHRhYmxlLworaXRlbXgJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcbGV0XFxpdGVteCA9IFxcaW50ZXJuYWxCaXRlbXggJSQvCitpdGVtenp6CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcaXRlbXp6eiAjMXtcXGJlZ2luZ3JvdXAgJSQvCitpdmFyaGVh ZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmaXZhcntcXGRlZnZycGFyc2Vib2R5 XFxFZGVmaXZhclxcZGVmaXZhcnhcXGRlZi8KK2l2YXJ4XGRlZml2YXJoZWFkZXIJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZpdmFye1xcZGVmdnJwYXJzZWJvZHlcXEVkZWZpdmFyXFxk ZWZpdmFyeFxcZGVmLwogam1wCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMzA0NAoganVzdF9yZWFk X2ZpbGUJYy1zcmMvZXRhZ3MuYwkvXmp1c3RfcmVhZF9maWxlIChGSUxFICppbmYpJC8KK2tiZAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtiZCMxe1xcZGVmXFxsb29reyMxfVxcZXhwYW5k YWZ0ZXJcXGtiZGZvb1xcbG9vaz8/Lwora2JkCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc a2JkIyMxe1xccmVhbGJhY2tzbGFzaCBrYmQgeyMjMX19JSQvCitrYmQJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcbGV0XFxrYmQ9XFxpbmRleGR1bW15Zm9udCQvCitrYmQJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxrYmQjIzF7XFxyZWFsYmFja3NsYXNoIGtiZCB7IyMxfX0kLwoga2JkX2J1 ZmZlcgljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkyOTEKIGtiZF9idWZmZXJfZXZlbnRzX3dh aXRpbmcJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15rYmRfYnVmZmVyX2V2ZW50c193YWl0 aW5nICh2b2lkKSQvCiBrYmRfYnVmZmVyX2dldF9ldmVudAljLXNyYy9lbWFjcy9zcmMva2V5Ym9h cmQuYwkvXmtiZF9idWZmZXJfZ2V0X2V2ZW50IChLQk9BUkQgKiprYnAsJC8KQEAgLTMzNjAsOSAr MzI2MywxNCBAQCBrYmRfYnVmZmVyX3N0b3JlX2hlbHBfZXZlbnQJYy1zcmMvZW1hY3Mvc3JjL2tl eWJvYXJkLmMJL15rYmRfYnVmZmVyX3N0b3JlX2hlbHBfZQoga2JkX2J1ZmZlcl91bmdldF9ldmVu dAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmtiZF9idWZmZXJfdW5nZXRfZXZlbnQgKHJl Z2lzdGVyIHN0cnVjdCBpbnB1dF9ldmVuLwoga2JkX2ZldGNoX3B0cgljLXNyYy9lbWFjcy9zcmMv a2V5Ym9hcmQuYwkyOTcKIGtiZF9zdG9yZV9wdHIJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJ MzAyCitrYmRmb28JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxrYmRmb28jMSMyIzNcXHBh cntcXGRlZlxcb25leyMxfVxcZGVmXFx0aHJlZXsjM31cXGQvCiBrYm9hcmQJYy1zcmMvZW1hY3Mv c3JjL2tleWJvYXJkLmMJODYwCiBrYm9hcmRfc3RhY2sJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJk LmMJODU4CiBrYm9hcmRfc3RhY2sJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJODY0CitrZXkJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxrZXkgIzF7e1xcdHQgXFxleGh5cGhlbnBlbmFs dHk9MTAwMDBcXHVwcGVyY2FzZXsvCitrZXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxr ZXkjIzF7XFxyZWFsYmFja3NsYXNoIGtleSB7IyMxfX0lJC8KK2tleQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxsZXRcXGtleT1cXGluZGV4ZHVtbXlmb250JC8KK2tleQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGtleSMjMXtcXHJlYWxiYWNrc2xhc2gga2V5IHsjIzF9fSQvCiBrZXlfYW5k X3ZhbHVlCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTg2OAoga2V5cmVtYXAJYy1zcmMvZW1hY3Mv c3JjL2tleWJvYXJkLmMJODc0Mgoga2V5cmVtYXAJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJ ODc1NApAQCAtMzM3Nyw2ICszMjg1LDEyIEBAIGtleXdvcmRzCXktc3JjL2NjY3AueQkxMTQKIGtl eXdvcmRzCXktc3JjL2NjY3AueQkzMDYKIGtpbmQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJ MTEwMjQKIGtpbmQJYy1zcmMvaC5oCTQ2CitraW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxraW5kZXgge1xca3lpbmRleH0kLwora2l0ZW0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxraXRlbXtcXGVycm1lc3NhZ2V7QGtpdGVtIHdoaWxlIG5vdCBpbiBhIHRhYmxlLwora2l0 ZW0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxraXRlbSA9IFxcaW50ZXJuYWxCa2l0ZW0g JSQvCitraXRlbXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxraXRlbXh7XFxlcnJtZXNz YWdle0BraXRlbXggd2hpbGUgbm90IGluIGEgdGFiLwora2l0ZW14CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGxldFxca2l0ZW14ID0gXFxpbnRlcm5hbEJraXRlbXggJSQvCitraXRlbXp6egl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtpdGVtenp6ICMxe1xcZG9zdWJpbmQge2t3fXtcXGNv ZGV7IzF9fXtmb3Ige1xcYi8KIGtzZXRfZWNob19zdHJpbmcJYy1zcmMvZW1hY3Mvc3JjL2tleWJv YXJkLmMJL15rc2V0X2VjaG9fc3RyaW5nIChzdHJ1Y3Qga2JvYXJkICprYiwgTGlzcF9PYmplY3Qg di8KIGtzZXRfa2JkX3F1ZXVlCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ea3NldF9rYmRf cXVldWUgKHN0cnVjdCBrYm9hcmQgKmtiLCBMaXNwX09iamVjdCB2YWwvCiBrc2V0X2tleWJvYXJk X3RyYW5zbGF0ZV90YWJsZQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmtzZXRfa2V5Ym9h cmRfdHJhbnNsYXRlX3RhYmxlIChzdHJ1Y3Qga2JvYXJkICprYiwgLwpAQCAtMzM4Niw2ICszMzAw LDkgQEAga3NldF9sb2NhbF9mdW5jdGlvbl9rZXlfbWFwCWMtc3JjL2VtYWNzL3NyYy9rZXlib2Fy ZC5jCS9ea3NldF9sb2NhbF9mdW5jdGlvbl9rZXkKIGtzZXRfb3ZlcnJpZGluZ190ZXJtaW5hbF9s b2NhbF9tYXAJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15rc2V0X292ZXJyaWRpbmdfdGVy bWluYWxfbG9jYWxfbWFwIChzdHJ1Y3Qga2JvYXJkIC8KIGtzZXRfcmVhbF9sYXN0X2NvbW1hbmQJ Yy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15rc2V0X3JlYWxfbGFzdF9jb21tYW5kIChzdHJ1 Y3Qga2JvYXJkICprYiwgTGlzcF9PYi8KIGtzZXRfc3lzdGVtX2tleV9zeW1zCWMtc3JjL2VtYWNz L3NyYy9rZXlib2FyZC5jCS9ea3NldF9zeXN0ZW1fa2V5X3N5bXMgKHN0cnVjdCBrYm9hcmQgKmti LCBMaXNwX09iamUvCitsCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbCMxe3tcXGxpICMx fVxcbnVsbH0JCSUgJC8KK2wJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxiPVxccHRleGIg XFxsZXRcXGM9XFxwdGV4YyBcXGxldFxcaT1cXHB0ZXhpIFxcbGV0XFx0PVxcLworbGFiZWxzcGFj ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGxhYmVsc3BhY2V7XFxoc2tpcDFlbSBcXHJl bGF4fSQvCiBsYW5nCWMtc3JjL2V0YWdzLmMJMjA4CiBsYW5nCWMtc3JjL2V0YWdzLmMJMjUxCiBs YW5nCWMtc3JjL2V0YWdzLmMJMjU5CkBAIC0zNDA0LDkgKzMzMjEsMTYgQEAgbGFzdF9zdGF0ZV9z aXplCWMtc3JjL2VtYWNzL3NyYy9nbWFsbG9jLmMJNDAxCiBsYXN0X3VuZG9fYm91bmRhcnkJYy1z cmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJMTI4NwogbGFzdGEJYy5jCTI3MgogbGFzdGFyZ21hcmdp bgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxuZXdza2lwXFxkZWZsYXN0YXJnbWFyZ2luIFxcZGVm bGFzdGFyZ21hcmdpbj0xOHB0JC8KK2xhc3RhcmdtYXJnaW4JdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcbmV3c2tpcFxcZGVmbGFzdGFyZ21hcmdpbiBcXGRlZmxhc3RhcmdtYXJnaW49MThwdCQvCiBs YXN0YXJnbWFyZ2luCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXHNldGJveDA9XFxoYm94e1xcaHNr aXAgXFxkZWZsYXN0YXJnbWFyZ2lue1xccm0gIzJ9XFxocy8KIGxhc3RiCWMuYwkyNzgKK2xhc3Ru b2RlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbm9kZXh4eFsjMSwjMl17XFxnZGVmXFxs YXN0bm9kZXsjMX19JC8KK2xhc3Rub2RlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcbGFz dG5vZGU9XFxyZWxheCQvCitsYXN0bm9kZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGxh c3Rub2RlPVxccmVsYXh9JC8KK2xhc3Rub2RlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxc bGFzdG5vZGU9XFxyZWxheH0kLworbGFzdG5vZGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0 XFxsYXN0bm9kZT1cXHJlbGF4fSQvCiBsYgljLXNyYy9ldGFncy5jCTI5MjMKK2xicmIJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxsYnJie3tcXGJmXFxjaGFyYFxcW319IFxcZGVmXFxyYnJi e3tcXGJmXFxjaGFyYFxcXX19JC8KIGxicwljLXNyYy9ldGFncy5jCTI5MjQKIGxjZQlwaHAtc3Jj L2xjZV9mdW5jdGlvbnMucGhwCS9eICAgICAgZnVuY3Rpb24gbGNlKCkkLwogbGNlCXBocC1zcmMv bGNlX2Z1bmN0aW9ucy5waHAJL14gICAgICBmdW5jdGlvbiBsY2UoKSQvCkBAIC0zNDI2LDcgKzMz NTAsMTAgQEAgbGVuCWMtc3JjL2V0YWdzLmMJMjM3CiBsZW5ndGgJYy1zcmMvZXRhZ3MuYwkyNDk1 CiBsZW5ndGgJeS1zcmMvY2NjcC55CTQ0CiBsZW5ndGgJeS1zcmMvY2NjcC55CTExMworbGVzcwl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGxlc3N7XFxyZWFsYmFja3NsYXNoIGxlc3N9JSQv CitsZXNzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbGVzc3tcXHJlYWxiYWNrc2xhc2gg bGVzc30kLwogbGV0CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMjk4MQorbGV0dGVyCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGdsb2JhbFxcYWR2YW5jZSBcXGFwcGVuZGl4bm8gYnkgMSBcXG1lc3Nh Z2V7QXBwZW5kaXgvCiBsZXR0ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcY2hhcG1hY3JvIHsj MX17QXBwZW5kaXggXFxhcHBlbmRpeGxldHRlcn0lJC8KIGxldHRlcgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eICB7IzF9e0FwcGVuZGl4IFxcYXBwZW5kaXhsZXR0ZXJ9e1xcbm9leHBhbmRcXGZvbGlv fX0vCiBsZXR0ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcdGhpc3NlY3Rpb257IzF9 XFxzZWNoZWFkaW5nIHsjMX17XFxhcHBlbmRpeGxldC8KQEAgLTM0MzksNiArMzM2Niw3IEBAIGxl dHRlcjoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxceGRlZlxcdGhpc2NoYXB0ZXJ7QXBwZW5kaXgg XFxhcHBlbmRpeGxldHRlcjogXFxuCiBsZXZlbAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTMxNTMK IGxleAlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9ebGV4KFcsU3luT3V0LFNlbSk6LSQvCiBsZXhw dHIJeS1zcmMvY2NjcC55CTMzMgorbGkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxsaSA9 IFxcc2YgJSBTb21ldGltZXMgd2UgY2FsbCBpdCBcXGxpLCBub3QgXFxzZi4vCiBsaWJzCW1lcmMt c3JjL2FjY3VtdWxhdG9yLm0JL146LSBpbXBvcnRfbW9kdWxlIGxpYnMuJC8KIGxpY2VuemUJaHRt bC1zcmMvc29mdHdhcmVsaWJlcm8uaHRtbAkvXkxpY2VuemUgZCd1c28gZGkgdW4gcHJvZ3JhbW1h JC8KIGxpbWl0CWNwLXNyYy9SYW5nZS5oCS9eICBkb3VibGUgbGltaXQgKHZvaWQpIGNvbnN0IHsg cmV0dXJuIHJuZ19saW1pdDsgfSQvCkBAIC0zNDUxLDkgKzMzNzksMTIgQEAgbGluZWJ1ZmZlcl9p bml0CWMtc3JjL2V0YWdzLmMJL15saW5lYnVmZmVyX2luaXQgKGxpbmVidWZmZXIgKmxicCkkLwog bGluZWJ1ZmZlcl9zZXRsZW4JYy1zcmMvZXRhZ3MuYwkvXmxpbmVidWZmZXJfc2V0bGVuIChsaW5l YnVmZmVyICpsYnAsIGludCB0b2tzaXplKSQvCiBsaW5lbm8JYy1zcmMvZXRhZ3MuYwkyNTA2CiBs aW5lbm8JYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkzMTQ3CitsaW5lbnVtYmVyCXRleC1zcmMvdGV4 aW5mby50ZXgJL14gIFxcbGV0XFxsaW5lbnVtYmVyID0gXFxlbXB0eSAlIE5vbi0zLjAuJC8KK2xp bmVudW1iZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxkZWZcXGxpbmVudW1iZXJ7XFx0aGVc XGlucHV0bGluZW5vOlxcc3BhY2V9JC8KIGxpbmVwb3MJYy1zcmMvZXRhZ3MuYwkyNTA3CiBsaW5l cG9zCWMtc3JjL2V0YWdzLmMJMjkyMgogbGlua3MJaHRtbC1zcmMvc29mdHdhcmUuaHRtbAkvXkxp bmtzIHRvIGludGVyZXN0aW5nIHNvZnR3YXJlJC8KK2xpc3AJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxsaXNwe1xcYWJvdmVlbnZicmVhayQvCiBsaXNwX2V2YWxfZGVwdGgJYy1zcmMvZW1h Y3Mvc3JjL2xpc3AuaAkzMDQ1CiBsaXNwX2hfQ0hFQ0tfTElTVF9DT05TCWMtc3JjL2VtYWNzL3Ny Yy9saXNwLmgJL14jZGVmaW5lIGxpc3BfaF9DSEVDS19MSVNUX0NPTlMoeCwgeSkgQ0hFQ0tfVFlQ RSAoQy8KIGxpc3BfaF9DSEVDS19OVU1CRVIJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXiNkZWZp bmUgbGlzcF9oX0NIRUNLX05VTUJFUih4KSBDSEVDS19UWVBFIChJTlRFR0VSLwpAQCAtMzQ4Nyw2 ICszNDE4LDcgQEAgbGlzcF9oX1hUWVBFCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL14jIGRlZmlu ZSBsaXNwX2hfWFRZUEUoYSkgKChlbnVtIExpc3BfVHlwZSkKIGxpc3BfaF9YVU5UQUcJYy1zcmMv ZW1hY3Mvc3JjL2xpc3AuaAkvXiMgZGVmaW5lIGxpc3BfaF9YVU5UQUcoYSwgdHlwZSkgKCh2b2lk ICopIChpbnRwdHJfLwogbGlzcF9oX2NoZWNrX2NvbnNfbGlzdAljLXNyYy9lbWFjcy9zcmMvbGlz cC5oCS9eIyBkZWZpbmUgbGlzcF9oX2NoZWNrX2NvbnNfbGlzdCgpICgodm9pZCkgMCkkLwogbGlz cF9oX21ha2VfbnVtYmVyCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL14jIGRlZmluZSBsaXNwX2hf bWFrZV9udW1iZXIobikgXFwkLworbGlzcHBhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVm XFxsaXNwcGFye1xcbnVsbFxcZW5kZ3JhZn19JC8KIGxpc3B5X2FjY2VudF9jb2RlcwljLXNyYy9l bWFjcy9zcmMva2V5Ym9hcmQuYwk0NjM0CiBsaXNweV9hY2NlbnRfa2V5cwljLXNyYy9lbWFjcy9z cmMva2V5Ym9hcmQuYwk0NzQxCiBsaXNweV9kcmFnX25fZHJvcF9uYW1lcwljLXNyYy9lbWFjcy9z cmMva2V5Ym9hcmQuYwk1MTgxCkBAIC0zNTEzLDE4ICszNDQ1LDI5IEBAIGxvYWRQT1JNYW5hZ2Vy CXBocC1zcmMvbGNlX2Z1bmN0aW9ucy5waHAJL14gIGZ1bmN0aW9uICZsb2FkUE9STWFuYWdlcigp JC8KIGxvY2FsX2lmX3NldAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTIzMzgKIGxvY2F0aW9uCWNw LXNyYy9jbGhlaXIuaHBwCTMzCiBsb2NhdGlvbgljcC1zcmMvY2xoZWlyLmhwcAkvXiAgICBsb2Nh dGlvbigpIHsgfSQvCitsb2dnaW5nYWxsCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbG9n Z2luZ2FsbHtcXHRyYWNpbmdjb21tYW5kczIgXFx0cmFjaW5nc3RhdHMyICQvCitsb29rCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxca2JkIzF7XFxkZWZcXGxvb2t7IzF9XFxleHBhbmRhZnRl clxca2JkZm9vXFxsb29rPz8vCiBsb29rdXAJeS1zcmMvY2NjcC55CS9ebG9va3VwIChuYW1lLCBs ZW4sIGhhc2gpJC8KIGxvb2t1cF9jYWxsCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBwcmVk IGxvb2t1cF9jYWxsKGFjY3VfZ29hbF9zdG9yZTo6aW4sIGFjY3VfZ29hbC8KK2xvc2VzcGFjZQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGxvc2VzcGFjZSAjMXsjMX0kLwogbG93Y2FzZQlj LXNyYy9ldGFncy5jCS9eI2RlZmluZSBsb3djYXNlKGMpCXRvbG93ZXIgKENIQVIgKGMpKSQvCits b3dlcmNhc2VlbnVtZXJhdGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxsb3dlcmNhc2Vl bnVtZXJhdGV7JSQvCiBsdWNpZF9ldmVudF90eXBlX2xpc3RfcAljLXNyYy9lbWFjcy9zcmMva2V5 Ym9hcmQuYwkvXmx1Y2lkX2V2ZW50X3R5cGVfbGlzdF9wIChMaXNwX09iamVjdCBvYmplY3QpJC8K K2x2dm1vZGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxsdnZtb2Rle1xcdmJveCB0byAw cHR7fX0kLwogbWFib3J0CWMtc3JjL2VtYWNzL3NyYy9nbWFsbG9jLmMJL15tYWJvcnQgKGVudW0g bWNoZWNrX3N0YXR1cyBzdGF0dXMpJC8KIG1hY2hfaG9zdF9zZWxmCWMtc3JjL21hY2hzeXNjYWxs cy5oCS9eU1lTQ0FMTCAobWFjaF9ob3N0X3NlbGYsIC0yOSwkLwogbWFjaF9tc2dfdHJhcAljLXNy Yy9tYWNoc3lzY2FsbHMuaAkvXlNZU0NBTEwgKG1hY2hfbXNnX3RyYXAsIC0yNSwkLwogbWFjaF9y ZXBseV9wb3J0CWMtc3JjL21hY2hzeXNjYWxscy5oCS9eU1lTQ0FMTCAobWFjaF9yZXBseV9wb3J0 LCAtMjYsJC8KIG1hY2hfdGFza19zZWxmCWMtc3JjL21hY2hzeXNjYWxscy5oCS9eU1lTQ0FMTCAo bWFjaF90YXNrX3NlbGYsIC0yOCwkLwogbWFjaF90aHJlYWRfc2VsZgljLXNyYy9tYWNoc3lzY2Fs bHMuaAkvXlNZU0NBTEwgKG1hY2hfdGhyZWFkX3NlbGYsIC0yNywkLworbWFjaGVhZGVyCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmbWFje1xcZGVmcGFyc2Vib2R5XFxFZGVmbWFjXFxk ZWZtYWN4XFxkZWZtYWNoZS8KK21hY3hcZGVmbWFjaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcZGVmbWFje1xcZGVmcGFyc2Vib2R5XFxFZGVmbWFjXFxkZWZtYWN4XFxkZWZtYWNo ZS8KIG1hZ2ljCWMtc3JjL2VtYWNzL3NyYy9nbWFsbG9jLmMJMTg2MworbWFpbm1hZ3N0ZXAJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxtYWlubWFnc3RlcD1cXG1hZ3N0ZXBoYWxmJC8KK21h aW5tYWdzdGVwCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcbWFpbm1hZ3N0ZXA9XFxtYWdz dGVwMSQvCiBtYWludGFpbmluZy5pbmZvCW1ha2Utc3JjL01ha2VmaWxlCS9ebWFpbnRhaW5pbmcu aW5mbzogbWFpbnRhaW5pbmcudGV4aSQvCittYWpvcmhlYWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxtYWpvcmhlYWRpbmd7XFxwYXJzZWFyZ1xcbWFqb3JoZWFkaW5nenp6fSQvCitt YWpvcmhlYWRpbmd6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxtYWpvcmhlYWRpbmd6 enogIzF7JSQvCiBtYWtlLWFiYnJldi10YWJsZQljLXNyYy9hYmJyZXYuYwkvXkRFRlVOICgibWFr ZS1hYmJyZXYtdGFibGUiLCBGbWFrZV9hYmJyZXZfdGFibGUsIFNtLwogbWFrZV9DX3RhZwljLXNy Yy9ldGFncy5jCS9ebWFrZV9DX3RhZyAoYm9vbCBpc2Z1bikkLwogbWFrZV9jb29yCXByb2wtc3Jj L25hdGRlZC5wcm9sb2cJL15tYWtlX2Nvb3IocyhfKSxBbHBoYSxTZW0xLFNlbTIsQWxwaGFAU2Vt MUBTZW0yKS4kLwpAQCAtMzU2NSw2ICszNTA4LDcgQEAgbWFwX3dvcmQJcHJvbC1zcmMvbmF0ZGVk LnByb2xvZwkvXm1hcF93b3JkKFtbX118V3NdLEV4cCk6LSQvCiBtYXBwaW5nCWh0bWwtc3JjL2Fs Z3J0aG1zLmh0bWwJL15NYXBwaW5nIHRoZSBDaGFubmVsIFN5bWJvbHMkLwogbWFwc3luCXByb2wt c3JjL25hdGRlZC5wcm9sb2cJL15tYXBzeW4oQVwvQixBTVwvQk0pOi0kLwogbWFya19rYm9hcmRz CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ebWFya19rYm9hcmRzICh2b2lkKSQvCittYXRo CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbWF0aCMxe1xcaW1wbGljaXRtYXRoICMxXFxp bXBsaWNpdG1hdGh9JC8KIG1heAljLmMJL15tYXggKGludCBhLCBpbnQgYikkLwogbWF4CWMuYwkv Xl9fYXR0cmlidXRlX18gKChhbHdheXNfaW5saW5lKSkgbWF4IChpbnQgYSwgaW50IGIpLwogbWF4 CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJNTgKQEAgLTM1ODcsNiArMzUzMSw3IEBAIG1lbWFsaWdu CWMtc3JjL2VtYWNzL3NyYy9nbWFsbG9jLmMJL15tZW1hbGlnbiAoc2l6ZV90IGFsaWdubWVudCwg c2l6ZV90IHNpemUpJC8KIG1lbWJlcglwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9ebWVtYmVyKFgs W1h8X10pLiQvCiBtZW1iZXJfbGVzc3RoYW5fZ29hbGlkCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0J L146LSBwcmVkIG1lbWJlcl9sZXNzdGhhbl9nb2FsaWQoYWNjdV9nb2FsX3N0b3JlOjppbi8KIG1l bWNsZWFyCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL15tZW1jbGVhciAodm9pZCAqcCwgcHRyZGlm Zl90IG5ieXRlcykkLworbWVudQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsb25nXFxkZWZcXG1l bnUgIzFcXGVuZCBtZW51e30kLwogbWVudV9iYXJfaXRlbQljLXNyYy9lbWFjcy9zcmMva2V5Ym9h cmQuYwkvXm1lbnVfYmFyX2l0ZW0gKExpc3BfT2JqZWN0IGtleSwgTGlzcF9PYmplY3QgaXRlbSwg LwogbWVudV9iYXJfaXRlbXMJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15tZW51X2Jhcl9p dGVtcyAoTGlzcF9PYmplY3Qgb2xkKSQvCiBtZW51X2Jhcl9pdGVtc19pbmRleAljLXNyYy9lbWFj cy9zcmMva2V5Ym9hcmQuYwk3MzY5CkBAIC0zNTk2LDYgKzM1NDEsMTEgQEAgbWVudV9pdGVtX2V2 YWxfcHJvcGVydHkJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15tZW51X2l0ZW1fZXZhbF9w cm9wZXJ0eSAoTGkKIG1lbnVfaXRlbV9ldmFsX3Byb3BlcnR5XzEJYy1zcmMvZW1hY3Mvc3JjL2tl eWJvYXJkLmMJL15tZW51X2l0ZW1fZXZhbF9wcm9wZXJ0eV8xIChMaXNwX09iamVjdCBhcmcpJC8K IG1lbnVfc2VwYXJhdG9yX25hbWVfcAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXm1lbnVf c2VwYXJhdG9yX25hbWVfcCAoY29uc3QgY2hhciAqbGFiZWwpJC8KIG1ldGFzb3VyY2UJYy1zcmMv ZXRhZ3MuYwkxOTgKK21ldGhvZGhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRl Zm1ldGhvZHtcXGRlZm1ldGhwYXJzZWJvZHlcXEVkZWZtZXRob2RcXGRlZm1ldC8KK21ldGhvZHhc ZGVmbWV0aG9kaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmbWV0aG9ke1xc ZGVmbWV0aHBhcnNlYm9keVxcRWRlZm1ldGhvZFxcZGVmbWV0LworbWV0aHBhcnNlYm9keVxFZGVm Zm4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZmbntcXGRlZm1ldGhwYXJzZWJvZHlc XEVkZWZmblxcZGVmZm54XFxkZWZmbmhlLworbWV0aHBhcnNlYm9keVxFZGVmbWV0aG9kCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmbWV0aG9ke1xcZGVmbWV0aHBhcnNlYm9keVxcRWRl Zm1ldGhvZFxcZGVmbWV0LworbWV0aHBhcnNlYm9keVxFZGVmdHlwZWZuCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcZGVmdHlwZWZue1xcZGVmbWV0aHBhcnNlYm9keVxcRWRlZnR5cGVmblxc ZGVmdHlwLwogbWluCWMtc3JjL2VtYWNzL3NyYy9nbWFsbG9jLmMJL14jZGVmaW5lIG1pbihhLCBi KSAoKGEpIDwgKGIpID8gKGEpIDogKGIpKSQvCiBtaW4JYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAk1 NwogbWluCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL14jZGVmaW5lIG1pbihhLCBiKSAoKGEpIDwg KGIpID8gKGEpIDogKGIpKSQvCkBAIC0zNjAzLDYgKzM1NTMsNyBAQCBtaW4JY3Atc3JjL2Nvbndh eS5jcHAJL14jZGVmaW5lIG1pbih4LHkpICAoKHggPiB5KSA/IHkgOiB4KSQvCiBtaW5fYXJncwlj LXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE2ODYKIG1pbl9jaGFyCWMtc3JjL2VtYWNzL3NyYy9saXNw LmgJMTYyMQogbWludXMJY3Atc3JjL2Z1bmN0aW9ucy5jcHAJL152b2lkIERhdGU6Om1pbnVzICgg aW50IGRheXMgLCBpbnQgbW9udGggLCBpbnQgeWVhci8KK21pbnVzCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcbWludXN7JC0kfSQvCiBtaXRpCWh0bWwtc3JjL3NvZnR3YXJlbGliZXJvLmh0 bWwJL15TZmF0aWFtbyBhbGN1bmkgbWl0aSQvCiBtb2RpZmllcl9uYW1lcwljLXNyYy9lbWFjcy9z cmMva2V5Ym9hcmQuYwk2MzE5CiBtb2RpZmllcl9zeW1ib2xzCWMtc3JjL2VtYWNzL3NyYy9rZXli b2FyZC5jCTYzMjcKQEAgLTM2MjgsNyArMzU3OSw5IEBAIG15X3N0cnVjdAljLmMJMjI2CiBteV9z dHJ1Y3QJYy1zcmMvaC5oCTkxCiBteV90eXBlZGVmCWMuYwkyMjgKIG15X3R5cGVkZWYJYy1zcmMv aC5oCTkzCitteWxicmFjZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG15bGJyYWNlIHt7 XFx0dCBcXGNoYXIgJzE3M319JC8KIG15cGkJZm9ydGgtc3JjL3Rlc3QtZm9ydGguZnRoCS9ec3lu b255bSBteXBpIGZjb25zdCQvCitteXJicmFjZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XG15cmJyYWNlIHt7XFx0dCBcXGNoYXIgJzE3NX19JC8KIG4JYy1zcmMvZXhpdC5jCTI4CiBuCWMt c3JjL2V4aXQuc3RyYW5nZV9zdWZmaXgJMjgKIG5hbWUJYy1zcmMvZ2V0b3B0LmgJNzYKQEAgLTM2 NDIsNiArMzU5NSw4IEBAIG5hbWUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAk2ODIKIG5hbWUJYy1z cmMvZW1hY3Mvc3JjL2xpc3AuaAkxODA4CiBuYW1lCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMzE0 NAogbmFtZQlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkzNTcKK25hbWUJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxzaW5nbGVpbmRleGVyICMxe1xcZG9pbmR7XFxpbmRleG5hbWV9eyMxfX0k LworbmFtZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNpbmdsZWNvZGVpbmRleGVyICMx e1xcZG9pbmR7XFxpbmRleG5hbWV9e1xcY29kZS8KIG5hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcYmVnaW5ncm91cFxcZGVmbmFtZSB7IzJ9eyMxfVxcZGVmdW5hcmdzeyMzfVxcZW5kZ3JvdS8K IG5hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcYmVnaW5ncm91cFxcZGVmbmFtZSB7IzF9e0Z1 bmN0aW9ufSUkLwogbmFtZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxiZWdpbmdyb3VwXFxkZWZu YW1lIHtcXGNvZGV7IzF9ICMyfXtGdW5jdGlvbn0lJC8KQEAgLTM2NjQsMTYgKzM2MTksMjEgQEAg bmFtZQl5LXNyYy9jY2NwLnkJMTEzCiBuYW1lZAljLXNyYy9ldGFncy5jCTI1MDUKIG5hbWVzdHJp bmdlcXVhbAlwYXMtc3JjL2NvbW1vbi5wYXMJL15mdW5jdGlvbiBuYW1lc3RyaW5nZXF1YWw7KCoo dmFyIE5hbWUxLE5hbWUyIDogTmFtZS8KIG5hcmdzCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMjk4 NworbmVlZAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5lZWR7XFxwYXJzZWFyZ1xcbmVl ZHh9JC8KIG5lZWRfYWRqdXN0bWVudAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE5ODYKK25lZWR4 CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbmVlZHgjMXslJC8KIG5laWdoYm9ycwljcC1z cmMvY2xoZWlyLmhwcAk1OQogbmVsZW0JY3Atc3JjL1JhbmdlLmgJL14gIGludCBuZWxlbSAodm9p ZCkgY29uc3QgeyByZXR1cm4gcm5nX25lbGVtOyB9JC8KIG5lc3RsZXYJYy1zcmMvZXRhZ3MuYwky NTI1CiBuZXcJb2JqYy1zcmMvUGFja0luc3AubQkvXituZXckLwogbmV3CXBlcmwtc3JjL2h0bG1p ZnktY3lzdGljCTE2MwogbmV3X3RhZwlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkxOAorbmV3Y29k ZWluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbmV3Y29kZWluZGV4ICMxeyQvCitu ZXdpbmRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5ld2luZGV4ICMxeyQvCiBuZXds YgljLXNyYy9ldGFncy5jCTI5MzAKIG5ld2xpbmVwb3MJYy1zcmMvZXRhZ3MuYwkyOTMyCiBuZXd0 ZXh0c3RyaW5nCXBhcy1zcmMvY29tbW9uLnBhcwkvXmZ1bmN0aW9uIG5ld3RleHRzdHJpbmc7ICgq OiBUZXh0U3RyaW5nOyopJC8KK25ld3dyaXRlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZc XG5ld3dyaXRle1xcYWxsb2NAN1xcd3JpdGVcXGNoYXJkZWZcXHNpeHRAQG59fSQvCiBuZXh0CWMu YwkxNzQKIG5leHQJYy1zcmMvZXRhZ3MuYwkyMDMKIG5leHQJYy1zcmMvZW1hY3Mvc3JjL2dtYWxs b2MuYwkxNjQKQEAgLTM2ODgsNiArMzY0OCwxNiBAQCBuZXh0CWMtc3JjL2VtYWNzL3NyYy9saXNw LmgJMjAzNwogbmV4dAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTIxOTIKIG5leHQJYy1zcmMvZW1h Y3Mvc3JjL2xpc3AuaAkzMDI4CiBuZXh0CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMzEzNAorbmV4 dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHBhcnNlYXJnICMxe1xcbGV0XFxuZXh0PSMx XFxiZWdpbmdyb3VwXFxvYmV5bGluZXMvCituZXh0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcZmx1c2hjcntcXGlmeFxccGFyXFxsaXNwcGFyIFxcZGVmXFxuZXh0IyMxe31cXGVsc2UgLwor bmV4dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGZsdXNoY3J7XFxpZnhcXHBhclxcbGlz cHBhciBcXGRlZlxcbmV4dCMjMXt9XFxlbHNlIC8KK25leHQJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxuZXh0IyMxe31cXG5leHR9JC8KK25leHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxuZXh0IyMxe31cXG5leHR9JC8KK25leHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxuZXh0IyMxe31cXG5leHR9JC8KK25leHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxu ZXh0IyMxe31cXG5leHR9JC8KK25leHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxuZXh0 IyMxe31cXG5leHR9JC8KK25leHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxuZXh0IyMx e31cXG5leHR9JC8KK25leHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZWRlZlxcbmV4dHtcXHdy aXRlXFxhdXhmaWxle1xcaW50ZXJuYWxzZXRxIHsjMX17IzJ9fX0vCiBuZXh0CXktc3JjL2NjY3Au eQk0MgogbmV4dC1maWxlCWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihk ZWZ1biBuZXh0LWZpbGUgKCZvcHRpb25hbCBpbml0aWFsaXplIG5vdmlzaXQpJC8KIG5leHQtZmls ZS1saXN0CWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihkZWZ2YXIgbmV4 dC1maWxlLWxpc3QgbmlsJC8KQEAgLTM2OTgsNDEgKzM2NjgsNjUgQEAgbmV4dF93ZWFrCWMtc3Jj L2VtYWNzL3NyYy9saXNwLmgJMTg3NQogbmV4dGZyZWUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkz MDI5CiBuZnJlZQljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCTE1MAogbmwJYy1zcmMvZXRhZ3Mu YwkyNTIxCitubQl0ZXgtc3JjL3Rlc3RlbnYudGV4CS9eXFxuZXdjb21tYW5ke1xcbm19WzJde1xc bm9tZW5jbGF0dXJleyMxfXsjMn19JC8KIG5vCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG5ld2Nv dW50IFxcYXBwZW5kaXhubyAgXFxhcHBlbmRpeG5vID0gYFxcQCQvCitubwl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxuZXdjb3VudCBcXGFwcGVuZGl4bm8gIFxcYXBwZW5kaXhubyA9IGBcXEAkLwor bm8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxhcHBlbmRpeGxldHRlcntcXGNoYXJcXHRo ZVxcYXBwZW5kaXhub30kLwogbm8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxhZHZh bmNlIFxcYXBwZW5kaXhubyBieSAxIFxcbWVzc2FnZXtBcHBlbmRpeC8KIG5vCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGlmbnVtXFxzZWNubz0wIEFwcGVuZGl4XFx4cmVmdGllJ2NoYXJcXHRoZVxc YXBwZW5kaXhuLwotbm8uXHRoZVxzZWNubwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxlbHNlIFxc aWZudW0gXFxzdWJzZWNubz0wIFNlY3Rpb25cXHhyZWZ0aWUnY2hhclxcdGhlXFwvCi1uby5cdGhl XHNlY25vLlx0aGVcc3Vic2Vjbm8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlNlY3Rpb25cXHhyZWZ0 aWUnY2hhclxcdGhlXFxhcHBlbmRpeG5vLlxcdGhlXFxzZWNuby5cXHRoLwotbm8uXHRoZVxzZWNu by5cdGhlXHN1YnNlY25vLlx0aGVcc3Vic3Vic2Vjbm8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlNl Y3Rpb25cXHhyZWZ0aWUnY2hhclxcdGhlXFxhcHBlbmRpeG5vLlxcdGhlXFxzZWNuby5cXHRoLwor bm8uXHRoZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxlbHNlIFxcaWZudW0gXFxzdWJzZWNubz0w IFNlY3Rpb25cXHhyZWZ0aWUnY2hhclxcdGhlXFwvCituby5cdGhlCXRleC1zcmMvdGV4aW5mby50 ZXgJL15TZWN0aW9uXFx4cmVmdGllJ2NoYXJcXHRoZVxcYXBwZW5kaXhuby5cXHRoZVxcc2Vjbm8u XFx0aC8KK25vLlx0aGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlNlY3Rpb25cXHhyZWZ0aWUnY2hh clxcdGhlXFxhcHBlbmRpeG5vLlxcdGhlXFxzZWNuby5cXHRoLwogbm9fYXJndW1lbnQJYy1zcmMv Z2V0b3B0LmgJODkKIG5vX2xhbmdfaGVscAljLXNyYy9ldGFncy5jCTcwNwogbm9fc3ViCWMtc3Jj L2VtYWNzL3NyYy9yZWdleC5oCTM4Nwogbm9jYXNlX3RhaWwJYy1zcmMvZXRhZ3MuYwkvXm5vY2Fz ZV90YWlsIChjb25zdCBjaGFyICpjcCkkLwogbm9kZQljLXNyYy9ldGFncy5jCTIyNQorbm9kZQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5vZGV7XFxFTlZjaGVja1xccGFyc2VhcmdcXG5v ZGV6enp9JC8KIG5vZGVfc3QJYy1zcmMvZXRhZ3MuYwkyMTQKIG5vZGVyZWYJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcYXBwZW5kaXhub2RlcmVmICUkLwogbm9kZXJlZgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxhcHBlbmRpeG5vZGVyZWYgJSQvCiBub2RlcmVmCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGFwcGVuZGl4bm9kZXJlZiAlJC8KIG5vZGVyZWYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc YXBwZW5kaXhub2RlcmVmICUkLworbm9kZXh4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XG5vZGV4eHhbIzEsIzJde1xcZ2RlZlxcbGFzdG5vZGV7IzF9fSQvCitub2Rlenp6CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcbm9kZXp6eiMxe1xcbm9kZXh4eCBbIzEsXX0kLworbm9maWxs ZXhkZW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbm9maWxsZXhkZW50e1xccGFyc2Vh cmdcXG5vZmlsbGV4ZGVudHl5eX0kLworbm9maWxsZXhkZW50eXl5CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcbm9maWxsZXhkZW50eXl5ICMxe3tcXGFkdmFuY2UgXFxsZWZ0c2tpcCBieSAt XFxlLwogbm9mb250cwl0ZXgtc3JjL3RleGluZm8udGV4CS9ee1xcaW5kZXhub2ZvbnRzJC8KIG5v Zm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXntcXGluZGV4bm9mb250cyQvCi1ub2ZvbnRzJQl0 ZXgtc3JjL3RleGluZm8udGV4CS9ee1xcY2hhcHRlcm5vZm9udHMlJC8KLW5vZm9udHMlCXRleC1z cmMvdGV4aW5mby50ZXgJL157XFxjaGFwdGVybm9mb250cyUkLwotbm9mb250cyUJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXntcXGNoYXB0ZXJub2ZvbnRzJSQvCi1ub2ZvbnRzJQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9ee1xcY2hhcHRlcm5vZm9udHMlJC8KLW5vZm9udHMlCXRleC1zcmMvdGV4aW5mby50 ZXgJL157XFxjaGFwdGVybm9mb250cyUkLwotbm9mb250cyUJdGV4LXNyYy90ZXhpbmZvLnRleAkv XntcXGNoYXB0ZXJub2ZvbnRzJSQvCi1ub2ZvbnRzJQl0ZXgtc3JjL3RleGluZm8udGV4CS9ee1xc Y2hhcHRlcm5vZm9udHMlJC8KLW5vZm9udHMlCXRleC1zcmMvdGV4aW5mby50ZXgJL157XFxjaGFw dGVybm9mb250cyUkLwotbm9mb250cyUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXntcXGNoYXB0ZXJu b2ZvbnRzJSQvCi1ub2ZvbnRzJQl0ZXgtc3JjL3RleGluZm8udGV4CS9ee1xcY2hhcHRlcm5vZm9u dHMlJC8KLW5vZm9udHMlCXRleC1zcmMvdGV4aW5mby50ZXgJL157XFxjaGFwdGVybm9mb250cyUk Lwotbm9mb250cyUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXntcXGNoYXB0ZXJub2ZvbnRzJSQvCitu b2ZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL157XFxjaGFwdGVybm9mb250cyUkLworbm9mb250 cwl0ZXgtc3JjL3RleGluZm8udGV4CS9ee1xcY2hhcHRlcm5vZm9udHMlJC8KK25vZm9udHMJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXntcXGNoYXB0ZXJub2ZvbnRzJSQvCitub2ZvbnRzCXRleC1zcmMv dGV4aW5mby50ZXgJL157XFxjaGFwdGVybm9mb250cyUkLworbm9mb250cwl0ZXgtc3JjL3RleGlu Zm8udGV4CS9ee1xcY2hhcHRlcm5vZm9udHMlJC8KK25vZm9udHMJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXntcXGNoYXB0ZXJub2ZvbnRzJSQvCitub2ZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL157 XFxjaGFwdGVybm9mb250cyUkLworbm9mb250cwl0ZXgtc3JjL3RleGluZm8udGV4CS9ee1xcY2hh cHRlcm5vZm9udHMlJC8KK25vZm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXntcXGNoYXB0ZXJu b2ZvbnRzJSQvCitub2ZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL157XFxjaGFwdGVybm9mb250 cyUkLworbm9mb250cwl0ZXgtc3JjL3RleGluZm8udGV4CS9ee1xcY2hhcHRlcm5vZm9udHMlJC8K K25vZm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXntcXGNoYXB0ZXJub2ZvbnRzJSQvCitub25h cnJvd2luZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXG5vbmFycm93aW5nPVxccmVsYXgk Lworbm9uYXJyb3dpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXglcXGxldFxcbm9uYXJyb3dpbmc9 XFxjb21tZW50JC8KK25vbmFycm93aW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcbm9u YXJyb3dpbmc9XFxyZWxheCQvCitub25hcnJvd2luZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxs ZXRcXG5vbmFycm93aW5nPVxccmVsYXgkLworbm9uYXJyb3dpbmcJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcbGV0XFxub25hcnJvd2luZz1cXHJlbGF4JC8KK25vbmFycm93aW5nCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGxldFxcbm9uYXJyb3dpbmc9XFxyZWxheCQvCiBub25lX2hlbHAJYy1zcmMv ZXRhZ3MuYwk3MDMKK25vcm1hbGJhY2tzbGFzaAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XG5vcm1hbGJhY2tzbGFzaHt7XFx0dFxccmF3YmFja3NsYXNoeHh9fSQvCitub3JtYWxjYXJldAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5vcm1hbGNhcmV0e159JC8KK25vcm1hbGRvdWJs ZXF1b3RlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbm9ybWFsZG91YmxlcXVvdGV7In0k Lworbm9ybWFsZ3JlYXRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5vcm1hbGdyZWF0 ZXJ7Pn0kLwogbm9ybWFsaXplCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15ub3JtYWxpemUoTSxN Tm9ybSk6LSQvCiBub3JtYWxpemVfZnJlc2gJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXm5vcm1h bGl6ZV9mcmVzaChNLE4pOi0kLwogbm9ybWFsaXplX3RyZWUJcHJvbC1zcmMvbmF0ZGVkLnByb2xv ZwkvXm5vcm1hbGl6ZV90cmVlKHRyZWUoUnVsZSxTeW46U2VtLFRyZWVzKSwkLwogbm9ybWFsaXpl X3RyZWVzCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15ub3JtYWxpemVfdHJlZXMoW10sW10pLiQv Citub3JtYWxsZXNzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbm9ybWFsbGVzc3s8fSQv Citub3JtYWxwYXJlbnMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcbm9ybWFscGFyZW5z e1xcYm9sZGJyYXhcXGxldCY9XFxhbXBucn0kLworbm9ybWFscGx1cwl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXG5vcm1hbHBsdXN7K30kLworbm9ybWFsdGlsZGUJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxub3JtYWx0aWxkZXt+fSQvCitub3JtYWx1bmRlcnNjb3JlCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcbm9ybWFsdW5kZXJzY29yZXtffSQvCitub3JtYWx2ZXJ0aWNh bGJhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5vcm1hbHZlcnRpY2FsYmFye3x9JC8K IG5vc2F2ZQlweXQtc3JjL3NlcnZlci5weQkvXiAgICBkZWYgbm9zYXZlKHNlbGYpOiQvCiBub3Nh dmUJcHl0LXNyYy9zZXJ2ZXIucHkJL14gICAgZGVmIG5vc2F2ZShzZWxmKTokLwogbm9zYXZlCXB5 dC1zcmMvc2VydmVyLnB5CS9eICAgIGRlZiBub3NhdmUoc2VsZik6JC8KQEAgLTM3NDUsNiArMzcz OSw4IEBAIG5vdGFnNAljLXNyYy90b3J0dXJlLmMJNDUKIG5vdGFnNAljLXNyYy9kb3N0b3J0dXJl LmMJNDUKIG5vdGlubmFtZQljLXNyYy9ldGFncy5jCS9eI2RlZmluZSBub3Rpbm5hbWUoYykJKF9u aW5bQ0hBUiAoYyldKSBcLyogYyBpcyBub3QgLwogbnBlbmRpbmcJYy1zcmMvZW1hY3Mvc3JjL2tl eWJvYXJkLmMJNzI0NAorbnNib3QJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxuc2JvdHtc XHZib3gkLworbnN0b3AJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxuc3RvcHtcXHZib3gk LwogbnRvb2xfYmFyX2l0ZW1zCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTc5NzQKIG51bU9m Q2hhbm5lbHMJY3Atc3JjL2MuQwkxCiBudW1fY29sdW1ucwljcC1zcmMvY29ud2F5LmNwcAkxNgpA QCAtMzc1Myw4ICszNzQ5LDE1IEBAIG51bV9yZWdzCWMtc3JjL2VtYWNzL3NyYy9yZWdleC5oCTQz MAogbnVtX3Jvd3MJY3Atc3JjL2NvbndheS5jcHAJMTUKIG51bWJlcktleXMJb2JqY3BwLXNyYy9T aW1wbGVDYWxjLk0JL14tIG51bWJlcktleXM6c2VuZGVyJC8KIG51bWJlcl9sZW4JYy1zcmMvZXRh Z3MuYwkvXnN0YXRpYyBpbnQgbnVtYmVyX2xlbiAobG9uZykgQVRUUklCVVRFX0NPTlNUOyQvCitu dW1iZXJlZHNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxudW1iZXJlZHNl Y3tcXHBhcnNlYXJnXFxzZWN6enp9JC8KK251bWJlcmVkc3Vic2VjCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXG91dGVyXFxkZWZcXG51bWJlcmVkc3Vic2Vje1xccGFyc2VhcmdcXG51bWJlcmVkc3Vi c2VjLworbnVtYmVyZWRzdWJzZWN6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxudW1i ZXJlZHN1YnNlY3p6eiAjMXtcXHNlY2NoZWNre3N1YnNlY3Rpb259JSQvCitudW1iZXJlZHN1YnN1 YnNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxudW1iZXJlZHN1YnN1YnNl Y3tcXHBhcnNlYXJnXFxudW1iZXJlZHN1Yi8KK251bWJlcmVkc3Vic3Vic2Vjenp6CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcbnVtYmVyZWRzdWJzdWJzZWN6enogIzF7XFxzZWNjaGVja3tz dWJzdWJzZWN0aS8KIG51bWJlcnZhcnMJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXm51bWJlcnZh cnMoWCk6LSQvCitudW1lcmljZW51bWVyYXRlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc bnVtZXJpY2VudW1lcmF0ZXslJC8KIG52YXJzCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMzE0MAor b2JleWVkc3BhY2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcb2JleWVkc3BhY2V7XFwg fSQvCiBvYmpkZWYJYy1zcmMvZXRhZ3MuYwkyNDg0CiBvYmplY3QJYy1zcmMvZW1hY3Mvc3JjL2xp c3AuaAkyMTI4CiBvYmplY3RfcmVnaXN0cnkJY3Atc3JjL2NsaGVpci5jcHAJMTAKQEAgLTM3NjUs NiArMzc2OCwxMiBAQCBvYnN0YWNrX2NodW5rX2ZyZWUJeS1zcmMvcGFyc2UueQk0OAogb2NhdHNl ZW4JYy1zcmMvZXRhZ3MuYwkyNDc3CiBvY3RhdmVfTURpYWdBcnJheTJfaAljcC1zcmMvTURpYWdB cnJheTIuaAkyOQogb2N0YXZlX1JhbmdlX2gJY3Atc3JjL1JhbmdlLmgJMjQKK29kZGZvb3RpbmcJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxvZGRmb290aW5ne1xccGFyc2VhcmdcXG9kZGZv b3Rpbmd4eHh9JC8KK29kZGZvb3Rpbmd4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxc b2RkZm9vdGluZ3h4eCAjMXtcXG9kZGZvb3Rpbmd5eXkgIzFAfEB8QHxAfFxcZi8KK29kZGZvb3Rp bmd5eXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcb2RkZm9vdGluZ3l5eSAjMUB8IzJA fCMzQHwjNFxcZmluaXNoeyUkLworb2RkaGVhZGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXG9kZGhlYWRpbmd7XFxwYXJzZWFyZ1xcb2RkaGVhZGluZ3h4eH0kLworb2RkaGVhZGluZ3h4 eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxvZGRoZWFkaW5neHh4ICMxe1xcb2RkaGVh ZGluZ3l5eSAjMUB8QHxAfEB8XFxmLworb2RkaGVhZGluZ3l5eQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxnZGVmXFxvZGRoZWFkaW5neXl5ICMxQHwjMkB8IzNAfCM0XFxmaW5pc2h7JSQvCiBvZWRp ZmYJbWFrZS1zcmMvTWFrZWZpbGUJL15vZWRpZmY6IE9UQUdTIEVUQUdTICR7aW5maWxlc30kLwog b2Zmc2V0CWMtc3JjL2V0YWdzLmMJMjQ5NAogb2Zmc2V0CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJ MjMwNQpAQCAtMzc3NSwxNSArMzc4NCwyMSBAQCBvaW5ib2R5CWMtc3JjL2V0YWdzLmMJMjQ3OAog b2sJb2JqYy1zcmMvUGFja0luc3AubQkvXi1vazpzZW5kZXIkLwogb2tfdG9fZWNob19hdF9uZXh0 X3BhdXNlCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTE1OQogb2xkX3ZhbHVlCWMtc3JjL2Vt YWNzL3NyYy9saXNwLmgJMjk4MAorb2xkcGFnZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFxs ZXRcXG9sZHBhZ2UgPSBcXHBhZ2UkLwogb21ldGhvZGNvbG9uCWMtc3JjL2V0YWdzLmMJMjQ4MQog b21ldGhvZHBhcm0JYy1zcmMvZXRhZ3MuYwkyNDgyCiBvbWV0aG9kc2lnbgljLXNyYy9ldGFncy5j CTI0NzkKIG9tZXRob2R0YWcJYy1zcmMvZXRhZ3MuYwkyNDgwCitvbmUJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxrYmRmb28jMSMyIzNcXHBhcntcXGRlZlxcb25leyMxfVxcZGVmXFx0aHJl ZXsjM31cXGQvCitvbmVwYWdlb3V0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcb25lcGFn ZW91dCMxe1xcaG9mZnNldD1cXG5vcm1hbG9mZnNldCQvCitvbmVwYWdlb3V0CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcY3JvcG1hcmtze1xcbGV0XFxvbmVwYWdlb3V0PVxcY3JvcHBhZ2Vv dXQgfSQvCiBvbm9uZQljLXNyYy9ldGFncy5jCTI0NzIKIG9wYXJlbnNlZW4JYy1zcmMvZXRhZ3Mu YwkyNDc2CiBvcGVuCW9iamMtc3JjL1BhY2tJbnNwLm0JL14tb3BlbjpzZW5kZXIkLwogb3Blbi1k cmliYmxlLWZpbGUJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15ERUZVTiAoIm9wZW4tZHJp YmJsZS1maWxlIiwgRm9wZW5fZHJpYmJsZV9maWxlLCBTby8KIG9wZW5JbldvcmtzcGFjZQlvYmpj LXNyYy9QYWNrSW5zcC5tCS9ec3RhdGljIHZvaWQgb3BlbkluV29ya3NwYWNlKGNvbnN0IGNoYXIg KmZpbGVuYW1lKSQvCitvcGVuY29udGVudHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxv cGVuY29udGVudHN7XFxvcGVub3V0IFxcY29udGVudHNmaWxlID0gXFxqb2JuYW0vCitvcGVuaW5k aWNlcwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG9wZW5pbmRpY2VzeyUkLwogb3BlcmF0 aW9uS2V5cwlvYmpjcHAtc3JjL1NpbXBsZUNhbGMuTQkvXi0gb3BlcmF0aW9uS2V5czpzZW5kZXIk Lwogb3BlcmF0b3IJeS1zcmMvY2NjcC55CTQzOAogb3BlcmF0b3IgKysJY3Atc3JjL2Z1bmN0aW9u cy5jcHAJL15EYXRlICYgRGF0ZTo6b3BlcmF0b3IgKysgKCB2b2lkICl7JC8KQEAgLTM4MDUsMTEg KzM4MjAsMjAgQEAgb3BlcmF0b3IgaW50CWNwLXNyYy9mYWlsLkMJL14JCQkgICBvcGVyYXRvciBp bnQoKSBjb25zdCB7cmV0dXJuIHg7fSQvCiBvcGVyYXRvcisJY3Atc3JjL2MuQwkvXmNvbnN0IEEm IEE6Om9wZXJhdG9yKyhjb25zdCBBJikgeyB9JC8KIG9wZXJhdG9yKwljcC1zcmMvYy5DCS9edm9p ZCBvcGVyYXRvcisoaW50LCBpbnQpIHt9JC8KIG9wZXJhdG9yKwljcC1zcmMvYy5DCS9eICBBIG9w ZXJhdG9yKyhBJiBhKSB7fTskLwotb3BwYXJzZWJvZHlcRWRlZm9wXGRlZm9weFxkZWZvcGhlYWRl clxkZWZvcHR5cGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmb3BwYXJzZWJvZHlcXEVkZWZv cFxcZGVmb3B4XFxkZWZvcGhlYWRlclxcZGVmb3B0eXAvCitvcGhlYWRlclxkZWZvcHR5cGUJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmb3BwYXJzZWJvZHlcXEVkZWZvcFxcZGVmb3B4XFxkZWZv cGhlYWRlclxcZGVmb3B0eXAvCitvcG5lc3RlZAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVm XFxvcG5lc3RlZHtcXGNoYXJgXFwoXFxnbG9iYWxcXGFkdmFuY2VcXHBhcmVuY291bnQgLworb3Bu cgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG9wbnJ7e1xcc2ZcXGNoYXJgXFwofX0gXFxk ZWZcXGNsbnJ7e1xcc2ZcXGNoYXJgXFwpfX0gLworb3BwYXJzZWJvZHlcRWRlZm9wCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZm9wcGFyc2Vib2R5XFxFZGVmb3BcXGRlZm9weFxcZGVmb3BoZWFk ZXJcXGRlZm9wdHlwLworb3BybQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxvcHJtIzEg e3tcXHJtXFxjaGFyYFxcKH0jMSBcXGJmIFxcbGV0KD1cXG9wbmVzdGVkIC8KIG9wcm90b2NvbAlj LXNyYy9ldGFncy5jCTI0NzMKK29wdGhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGRlZm9wdHtcXGRlZnZhcnBhcnNlYm9keVxcRWRlZm9wdFxcZGVmb3B0eFxcZGVmb3AvCiBvcHRp b24JYy1zcmMvZ2V0b3B0LmgJNzMKIG9wdGlvbmFsX2FyZ3VtZW50CWMtc3JjL2dldG9wdC5oCTkx Ci1vcHZhcnBhcnNlYm9keVxFZGVmY3ZcZGVmY3Z4XGRlZmN2YXJoZWFkZXJcZGVmY3Z0eXBlCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZm9wdmFycGFyc2Vib2R5XFxFZGVmY3ZcXGRlZmN2eFxc ZGVmY3ZhcmhlYWRlclxcZGVmLworb3B0eFxkZWZvcHRoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxkZWZvcHR7XFxkZWZ2YXJwYXJzZWJvZHlcXEVkZWZvcHRcXGRlZm9wdHhcXGRl Zm9wLworb3B0eXBlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZm9wcGFyc2Vib2R5XFxFZGVm b3BcXGRlZm9weFxcZGVmb3BoZWFkZXJcXGRlZm9wdHlwLworb3B0eXBlCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGJlZ2luZ3JvdXBcXGRlZm5hbWUgeyMyfXtcXGRlZm9wdHlwZXt9IG9uICMxfSUk Lworb3B2YXJwYXJzZWJvZHlcRWRlZmN2CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZm9wdmFy cGFyc2Vib2R5XFxFZGVmY3ZcXGRlZmN2eFxcZGVmY3ZhcmhlYWRlclxcZGVmLworb3B4XGRlZm9w aGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZm9wcGFyc2Vib2R5XFxFZGVmb3BcXGRl Zm9weFxcZGVmb3BoZWFkZXJcXGRlZm9wdHlwLwogb3JkX2FkZF9lbGVtZW50CXByb2wtc3JjL29y ZHNldHMucHJvbG9nCS9eb3JkX2FkZF9lbGVtZW50KFtdLCBFbGVtZW50LCBbRWxlbWVudF0pLiQv CiBvcmRfZGVsX2VsZW1lbnQJcHJvbC1zcmMvb3Jkc2V0cy5wcm9sb2cJL15vcmRfZGVsX2VsZW1l bnQoW10sIF8sIFtdKS4kLwogb3JkX2Rpc2pvaW50CXByb2wtc3JjL29yZHNldHMucHJvbG9nCS9e b3JkX2Rpc2pvaW50KFNldDEsIFNldDIpIDotJC8KQEAgLTM4NTUsOCArMzg3OSwyNSBAQCBwTWQJ Yy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxNTUKIHBNdQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE1 MQogcE11CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTU2CiBwX25leHQJYy1zcmMvZXRhZ3MuYwky NTgKK3BhZ2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwYWdle1xccGFyXFx2ZmlsbFxc c3VwZXJlamVjdH0kLworcGFnZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFxkZWZcXHBhZ2V7 JSQvCitwYWdlCXRleC1zcmMvdGV4aW5mby50ZXgJL14gICAgICBcXGxldFxccGFnZSA9IFxcb2xk cGFnZSQvCitwYWdlYWxpZ25tYWNybwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxl dFxccGFnZWFsaWdubWFjcm89XFxjaGFwcGFnZXJ9JC8KK3BhZ2VhbGlnbm1hY3JvCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGdsb2JhbFxcbGV0XFxwYWdlYWxpZ25tYWNybz1cXGNoYXBwYWdlciQv CitwYWdlYWxpZ25tYWNybwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxccGFn ZWFsaWdubWFjcm89XFxjaGFwb2RkcGFnZSQvCitwYWdlYm9keQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXHBhZ2Vib2R5IzF7XFx2Ym94IHRvXFxwYWdlaGVpZ2h0e1xcYm94bWF4ZGVwdGg9 XFwvCitwYWdlY29udGVudHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxccGFnZWNvbnRl bnRzIzF7XFxpZnZvaWRcXHRvcGluc1xcZWxzZVxcdW52Ym94XFx0by8KIHBhZ2VzaXplCWMtc3Jj L2VtYWNzL3NyYy9nbWFsbG9jLmMJMTcwMworcGFnZXNvZmFyCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxccGFnZXNvZmFye1xcdW52Ym94XFxwYXJ0aWFscGFnZSAlJC8KIHBhaXIJbWVyYy1z cmMvYWNjdW11bGF0b3IubQkvXjotIGltcG9ydF9tb2R1bGUgcGFpci4kLworcGFyCXRleC1zcmMv dGV4aW5mby50ZXgJL157XFxsZXRcXHBhcj1cXGVuZGdyYWYgXFxzbWFsbGJyZWFrfSUkLworcGFy CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxccGFyPVxcbGlzcHBhciQvCitwYXIJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcbGV0XFxwYXI9XFxsaXNwcGFyJC8KK3Bhcgl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxsZXRcXHBhcj1cXGxpc3BwYXIkLworcGFyCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGxldFxccGFyPVxcbGlzcHBhciQvCitwYXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0 XFxwYXI9XFxsaXNwcGFyJC8KK3Bhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHBhcj1c XGxpc3BwYXIkLworcGFyYWdyYXBoaW5kZW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxc cGFyYWdyYXBoaW5kZW50PVxcY29tbWVudCQvCiBwYXJlbnQJYy1zcmMvZW1hY3Mvc3JjL2tleWJv YXJkLmMJODc0NQogcGFyZW50CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTU5MAogcGFyc2UJcHJv bC1zcmMvbmF0ZGVkLnByb2xvZwkvXnBhcnNlKFdzLENhdCk6LSQvCkBAIC0zODc1LDggKzM5MTYs MjAgQEAgcGFyc2VfcmV0dXJuX2Vycm9yCXktc3JjL2NjY3AueQk3MAogcGFyc2Vfc29saXRhcnlf bW9kaWZpZXIJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15wYXJzZV9zb2xpdGFyeV9tb2Rp ZmllciAoTGlzcF9PYmplY3Qgc3ltYm9sKSQvCiBwYXJzZV90b29sX2Jhcl9pdGVtCWMtc3JjL2Vt YWNzL3NyYy9rZXlib2FyZC5jCS9ecGFyc2VfdG9vbF9iYXJfaXRlbSAoTGlzcF9PYmplY3Qga2V5 LCBMaXNwX09iamVjdCAvCiBwYXJzZV90cmVlCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBp bXBvcnRfbW9kdWxlIHBhcnNlX3RyZWUuJC8KK3BhcnNlYXJnCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxccGFyc2VhcmcgIzF7XFxsZXRcXG5leHQ9IzFcXGJlZ2luZ3JvdXBcXG9iZXlsaW5l cy8KK3BhcnNlYXJnZGlzY2FyZHNwYWNlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXHBh cnNlYXJnZGlzY2FyZHNwYWNlIHtcXGJlZ2luZ3JvdXBcXG9iZXlsaW5lc1xcLworcGFyc2Vhcmds aW5lCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccGFyc2VhcmdsaW5le1xcYmVnaW5ncm91 cCBcXG9iZXlsaW5lcyBcXHBhcnNlYXJnLworcGFyc2VhcmdsaW5leAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxnZGVmXFxwYXJzZWFyZ2xpbmV4ICMxXl5Ne1xcZW5kZ3JvdXAgXFxuZXh0IHsjMX19 fSQvCitwYXJzZWFyZ3gJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwYXJzZWFyZ3h7JSQv CitwYXJzZWJvZHlcRWRlZm1hYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm1hY3tc XGRlZnBhcnNlYm9keVxcRWRlZm1hY1xcZGVmbWFjeFxcZGVmbWFjaGUvCitwYXJzZWJvZHlcRWRl ZnNwZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZzcGVje1xcZGVmcGFyc2Vib2R5 XFxFZGVmc3BlY1xcZGVmc3BlY3hcXGRlZnNwLworcGFyc2Vib2R5XEVkZWZ0eXBlZnVuCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZ1bntcXGRlZnBhcnNlYm9keVxcRWRlZnR5 cGVmdW5cXGRlZnR5cGVmLworcGFyc2Vib2R5XEVkZWZ1bgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGRlZnVue1xcZGVmcGFyc2Vib2R5XFxFZGVmdW5cXGRlZnVueFxcZGVmdW5oZWFkZXIv CiBwYXQJYy1zcmMvZXRhZ3MuYwkyNjIKIHBhdHRlcm4JYy1zcmMvZXRhZ3MuYwkyNjAKK3BjaGFw c2VwbWFjcm8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHBjaGFwc2VwbWFj cm89XFxjaGFwYnJlYWskLworcGNoYXBzZXBtYWNybwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxn bG9iYWxcXGxldFxccGNoYXBzZXBtYWNybz1cXGNoYXBwYWdlciQvCitwY2hhcHNlcG1hY3JvCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGdsb2JhbFxcbGV0XFxwY2hhcHNlcG1hY3JvPVxcY2hhcG9k ZHBhZ2UkLwogcGRsY291bnQJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkzMDQ2CiBwZW5kaW5nLWRl bGV0ZS1tb2RlCWVsLXNyYy9UQUdURVNULkVMCS9eKGRlZmFsaWFzICdwZW5kaW5nLWRlbGV0ZS1t b2RlICdkZWxldGUtc2VsZWN0aW9uLW0vCiBwZW5kaW5nX2Z1bmNhbGxzCWMtc3JjL2VtYWNzL3Ny Yy9rZXlib2FyZC5jCTQzNzcKQEAgLTM4ODQsMTYgKzM5MzcsMTkgQEAgcGVuZGluZ19zaWduYWxz CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTgwCiBwZmF0YWwJYy1zcmMvZXRhZ3MuYwkvXnBm YXRhbCAoY29uc3QgY2hhciAqczEpJC8KIHBmZHNldAljLXNyYy9oLmgJNTcKIHBmbm90ZQljLXNy Yy9ldGFncy5jCS9ecGZub3RlIChjaGFyICpuYW1lLCBib29sIGlzX2Z1bmMsIGNoYXIgKmxpbmVz dGFydCwvCitwaW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwaW5kZXgge1xccGdp bmRleH0kLwogcGlubmVkCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJNjc5CiBwbGFpbl9DX2VudHJp ZXMJYy1zcmMvZXRhZ3MuYwkvXnBsYWluX0NfZW50cmllcyAoRklMRSAqaW5mKSQvCiBwbGFpbl9D X3N1ZmZpeGVzCWMtc3JjL2V0YWdzLmMJNjQzCiBwbGFpbmMJYy1zcmMvZXRhZ3MuYwkyOTM0Citw bGFpbnNlY2hlYWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwbGFpbnNlY2hlYWRp bmcgIzF7XFxzZWNoZWFkaW5naSB7IzF9fSQvCiBwbGlzdAljLXNyYy9lbWFjcy9zcmMvbGlzcC5o CTY5NwogcGxpc3QJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyMDQwCiBwbHVzCWNwLXNyYy9mdW5j dGlvbnMuY3BwCS9edm9pZCBEYXRlOjpwbHVzICggaW50IGRheXMgLCBpbnQgbW9udGggLCBpbnQg eWVhciAvCiBwbHVzCWdvLXNyYy90ZXN0MS5nbwk1CiBwbHVzdmFsc2VxCXByb2wtc3JjL25hdGRl ZC5wcm9sb2cJL15wbHVzdmFsc2VxKFtdKSAtLT4gW10uJC8KIHBvaW50CWZvcnRoLXNyYy90ZXN0 LWZvcnRoLmZ0aAkvXkJFR0lOLVNUUlVDVFVSRSBwb2ludCBcXCBjcmVhdGUgdGhlIG5hbWVkIHN0 cnVjdHVyZS8KK3BvaW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccG9pbnR7JFxcc3Rh ciR9JC8KIHBvaW50ZXIJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyMTI1CiBwb2xsX2Zvcl9pbnB1 dAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnBvbGxfZm9yX2lucHV0IChzdHJ1Y3QgYXRp bWVyICp0aW1lcikkLwogcG9sbF9mb3JfaW5wdXRfMQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQu YwkvXnBvbGxfZm9yX2lucHV0XzEgKHZvaWQpJC8KQEAgLTM5NDQsMTAgKzQwMDAsMTggQEAgcHJl dgljLmMJMTc1CiBwcmV2CWMtc3JjL2VtYWNzL3NyYy9nbWFsbG9jLmMJMTY1CiBwcmV2CWMtc3Jj L2VtYWNzL3NyYy9nbWFsbG9jLmMJMTg5CiBwcmV2CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMjE5 MQorcHJpbWFyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHByaW1hcnkgIzF7XFxsaW5l eyMxXFxoZmlsfX0kLworcHJpbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwcmludHtc XHJlYWxiYWNrc2xhc2ggcHJpbnR9JC8KK3ByaW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxccHJpbnR7XFxsZWF2ZXZtb2RlXFxsb3dlci4xZXhcXGhib3ggdG8gMWVte1xcaGZpbC8KIHBy aW50Q2xhc3NpZmljYXRpb24JcGhwLXNyYy9sY2VfZnVuY3Rpb25zLnBocAkvXiAgICAgIGZ1bmN0 aW9uIHByaW50Q2xhc3NpZmljYXRpb24oKSQvCiBwcmludF9oZWxwCWMtc3JjL2V0YWdzLmMJL15w cmludF9oZWxwIChhcmd1bWVudCAqYXJnYnVmZmVyKSQvCiBwcmludF9sYW5ndWFnZV9uYW1lcwlj LXNyYy9ldGFncy5jCS9ecHJpbnRfbGFuZ3VhZ2VfbmFtZXMgKHZvaWQpJC8KIHByaW50X3ZlcnNp b24JYy1zcmMvZXRhZ3MuYwkvXnByaW50X3ZlcnNpb24gKHZvaWQpJC8KK3ByaW50ZWRtYW51YWwJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwcmludGVkbWFudWFse1xcaWdub3Jlc3BhY2Vz ICM1fSUkLworcHJpbnRlZG1hbnVhbAl0ZXgtc3JjL3RleGluZm8udGV4CS9ec2VjdGlvbiBgYFxc cHJpbnRlZG5vZGVuYW1lJycgaW4gXFxjaXRle1xccHJpbnRlZG1hbnUvCitwcmludGVkbm9kZW5h bWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwcmludGVkbm9kZW5hbWV7XFxpZ25vcmVz cGFjZXMgIzN9JSQvCitwcmludGVkbm9kZW5hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxwcmludGVkbm9kZW5hbWV7XFxpZ25vcmVzcGFjZXMgIzF9JSQvCitwcmludGluZGV4CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxccHJpbnRpbmRleHtcXHBhcnNlYXJnXFxkb3ByaW50aW5k ZXh9JC8KIHByaW50bWF4X3QJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxNDgKIHByaW50bWF4X3QJ Yy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxNTMKIHByb2MJYy1zcmMvaC5oCTg3CkBAIC0zOTYyLDYg KzQwMjYsMjEgQEAgcHJvbG9nX3ByCWMtc3JjL2V0YWdzLmMJL15wcm9sb2dfcHIgKGNoYXIgKnMs IGNoYXIgKmxhc3QpJC8KIHByb2xvZ19za2lwX2NvbW1lbnQJYy1zcmMvZXRhZ3MuYwkvXnByb2xv Z19za2lwX2NvbW1lbnQgKGxpbmVidWZmZXIgKnBsYiwgRklMRSAqaW5mKSQvCiBwcm9wCWMtc3Jj L2V0YWdzLmMJMjA5CiBwcm90ZWN0X21hbGxvY19zdGF0ZQljLXNyYy9lbWFjcy9zcmMvZ21hbGxv Yy5jCS9ecHJvdGVjdF9tYWxsb2Nfc3RhdGUgKGludCBwcm90ZWN0X3ApJC8KK3B0ZXhMCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGxldFxccHRleEw9XFxMJC8KK3B0ZXhiCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGxldFxccHRleGI9XFxiJC8KK3B0ZXhidWxsZXQJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcbGV0XFxwdGV4YnVsbGV0PVxcYnVsbGV0JC8KK3B0ZXhjCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGxldFxccHRleGM9XFxjJC8KK3B0ZXhkb3QJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc bGV0XFxwdGV4ZG90PVxcLiQvCitwdGV4ZG90cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRc XHB0ZXhkb3RzPVxcZG90cyQvCitwdGV4ZW5kCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxc cHRleGVuZD1cXGVuZCQvCitwdGV4ZXF1aXYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxw dGV4ZXF1aXYgPSBcXGVxdWl2JC8KK3B0ZXhmb290bm90ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxsZXRcXHB0ZXhmb290bm90ZT1cXGZvb3Rub3RlJC8KK3B0ZXhpCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGxldFxccHRleGk9XFxpJC8KK3B0ZXhsCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxl dFxccHRleGw9XFxsJC8KK3B0ZXhsYnJhY2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxw dGV4bGJyYWNlPVxceyQvCitwdGV4cmJyYWNlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxc cHRleHJicmFjZT1cXH0kLworcHRleHN0YXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxw dGV4c3Rhcj1cXCokLworcHRleHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxwdGV4dD1c XHQkLwogcHRocmVhZF9tdXRleGF0dHJfc2V0cHJpb19jZWlsaW5nL2YJYWRhLXNyYy8yYXRhc3By aS5hZGIJL14gICBmdW5jdGlvbiBwdGhyZWFkX211dGV4YXR0cl9zZXRwcmlvX2NlaWxpbmckLwog cHRocmVhZF9tdXRleGF0dHJfc2V0cHJvdG9jb2wvZglhZGEtc3JjLzJhdGFzcHJpLmFkYgkvXiAg IGZ1bmN0aW9uIHB0aHJlYWRfbXV0ZXhhdHRyX3NldHByb3RvY29sJC8KIHB1cnBvc2UJYy1zcmMv ZW1hY3Mvc3JjL2xpc3AuaAkxNTk0CkBAIC0zOTY5LDE0ICs0MDQ4LDIwIEBAIHB1c2hfa2JvYXJk CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ecHVzaF9rYm9hcmQgKHN0cnVjdCBrYm9hcmQg KmspJC8KIHB1c2hjbGFzc19hYm92ZQljLXNyYy9ldGFncy5jCS9ecHVzaGNsYXNzX2Fib3ZlIChp bnQgYnJhY2VsZXYsIGNoYXIgKnN0ciwgaW50IGxlbikvCiBwdXRfZW50cmllcwljLXNyYy9ldGFn cy5jCS9ecHV0X2VudHJpZXMgKHJlZ2lzdGVyIG5vZGUgKm5wKSQvCiBwdmVjX3R5cGUJYy1zcmMv ZW1hY3Mvc3JjL2xpc3AuaAk3ODAKK3B4cmVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc cHhyZWYjMXtzZWUgXFx4cmVmWFsjMSwsLCwsLCxdfSQvCiBxdWFudGl6aW5nCWh0bWwtc3JjL2Fs Z3J0aG1zLmh0bWwJL15RdWFudGl6aW5nIHRoZSBSZWNlaXZlZCQvCiBxdWVzdG8JLi4vYy9jLndl YgkzNAogcXVpZXR0ZXN0CW1ha2Utc3JjL01ha2VmaWxlCS9ecXVpZXR0ZXN0OiQvCiBxdWl0X2No YXIJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJMTkyCiBxdWl0X3Rocm93X3RvX3JlYWRfY2hh cgljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnF1aXRfdGhyb3dfdG9fcmVhZF9jaGFyIChi b29sIGZyb21fc2lnbmFsKSQvCitxdW90YXRpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxxdW90YXRpb257JSQvCiBxdXgJcnVieS1zcmMvdGVzdDEucnUJL14gICAgYWxpYXNfbWV0aG9k IDpxdXgsIDp0ZWUsIGF0dHJfYWNjZXNzb3IoOmJvZ3VzKS8KIHF1eDEJcnVieS1zcmMvdGVzdDEu cnUJL14gICAgICAgICAgICAgICAgOnF1eDEpJC8KIHF1eD0JcnVieS1zcmMvdGVzdDEucnUJL14g ICAgICBkZWYgcXV4PSh0ZWUpJC8KK3IJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxyIzF7 e1xccm0gIzF9fQkJJSByb21hbiBmb250JC8KK3IJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxyIyMxe1xccmVhbGJhY2tzbGFzaCByIHsjIzF9fSUkLworcgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxsZXRcXHI9XFxpbmRleGR1bW15Zm9udCQvCityCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcciMjMXtcXHJlYWxiYWNrc2xhc2ggciB7IyMxfX0kLwogcjAJYy1zcmMvc3lzZGVwLmgJ NTQKIHIxCWMtc3JjL3N5c2RlcC5oCTU1CiByX2FsbG9jCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJ L15leHRlcm4gdm9pZCAqcl9hbGxvYyAodm9pZCAqKiwgc2l6ZV90KSBBVFRSSUJVVEVfQS8KQEAg LTM5ODQsNiArNDA2OSwxMCBAQCByYW5nZV9leHAJeS1zcmMvcGFyc2UueQkyNjkKIHJhbmdlX2V4 cF9saXN0CXktc3JjL3BhcnNlLnkJMjczCiByYXdfa2V5YnVmCWMtc3JjL2VtYWNzL3NyYy9rZXli b2FyZC5jCTExNgogcmF3X2tleWJ1Zl9jb3VudAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkx MTcKK3Jhd2JhY2tzbGFzaAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHJhd2JhY2tzbGFz aD1cXHJlbGF4JSQvCityYXdiYWNrc2xhc2h4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHJhd2JhY2tzbGFzaHh4e1xcaW5kZXhiYWNrc2xhc2h9JSBcXGluZGV4YmFja3NsLworcmF3YmFj a3NsYXNoeHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxyYXdiYWNrc2xhc2h4eHtcXGlu ZGV4YmFja3NsYXNofSUkLworcmJyYgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGxicmJ7 e1xcYmZcXGNoYXJgXFxbfX0gXFxkZWZcXHJicmJ7e1xcYmZcXGNoYXJgXFxdfX0kLwogcmJ0cAlj LmMJMjQwCiByZV9pc3djdHlwZQljLXNyYy9lbWFjcy9zcmMvcmVnZXguaAk2MDIKIHJlX25zdWIJ Yy1zcmMvZW1hY3Mvc3JjL3JlZ2V4LmgJMzY0CkBAIC00MDE1LDYgKzQxMDQsNyBAQCByZWFkX2tl eV9zZXF1ZW5jZV92cwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnJlYWRfa2V5X3NlcXVl bmNlX3ZzIChMaXNwX09iagogcmVhZF9tZW51X2NvbW1hbmQJYy1zcmMvZW1hY3Mvc3JjL2tleWJv YXJkLmMJL15yZWFkX21lbnVfY29tbWFuZCAodm9pZCkkLwogcmVhZF90b2MJcGVybC1zcmMvaHRs bWlmeS1jeXN0aWMJL15zdWIgcmVhZF90b2MgKCkkLwogcmVhZGFibGVfZXZlbnRzCWMtc3JjL2Vt YWNzL3NyYy9rZXlib2FyZC5jCS9ecmVhZGFibGVfZXZlbnRzIChpbnQgZmxhZ3MpJC8KK3JlYWRh dXhmaWxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccmVhZGF1eGZpbGV7JSQvCiByZWFk bGluZQljLXNyYy9ldGFncy5jCS9ecmVhZGxpbmUgKGxpbmVidWZmZXIgKmxicCwgRklMRSAqc3Ry ZWFtKSQvCiByZWFkbGluZV9pbnRlcm5hbAljLXNyYy9ldGFncy5jCS9ecmVhZGxpbmVfaW50ZXJu YWwgKGxpbmVidWZmZXIgKmxicCwgcmVnaXN0ZXIgRklMRSAvCiByZWFsbG9jCWMtc3JjL2VtYWNz L3NyYy9nbWFsbG9jLmMJNjUKQEAgLTQwMzksNyArNDEyOSwxMCBAQCByZWN1cnNpdmVfZWRpdF91 bndpbmQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15yZWN1cnNpdmVfZWRpdF91bndpbmQg KExpc3BfTwogcmVkaXJlY3QJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAk2NjMKIHJlZHVjZQlwcm9s LXNyYy9uYXRkZWQucHJvbG9nCS9ecmVkdWNlKChYXk0pQE4sTCk6LSAgICAgJSBiZXRhIHJlZHVj dGlvbiQvCiByZWR1Y2Vfc3VidGVybQlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9ecmVkdWNlX3N1 YnRlcm0oTSxNMik6LSQvCityZWYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxyZWYjMXtc XHhyZWZYWyMxLCwsLCwsLF19JC8KK3JlZmlsbAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRc XHJlZmlsbD1cXHJlbGF4JC8KIHJlZnJlc2hQb3J0CXB5dC1zcmMvc2VydmVyLnB5CS9eICAgIGRl ZiByZWZyZXNoUG9ydChzZWxmKTokLworcmVmeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHJlZngjMSMyeyUkLwogcmVnX2VycmNvZGVfdAljLmMJMjc5CiByZWdfZXJyY29kZV90CWMtc3Jj L2VtYWNzL3NyYy9yZWdleC5oCTMyMwogcmVnX3N5bnRheF90CWMtc3JjL2VtYWNzL3NyYy9yZWdl eC5oCTQzCkBAIC00MDcwLDggKzQxNjMsMTIgQEAgcmVxdWV1ZWRfZXZlbnRzX3BlbmRpbmdfcAlj LXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnJlcXVldWVkX2V2ZW50c19wZW5kaW5nX3AKIHJl cXVpcmUJbWVyYy1zcmMvYWNjdW11bGF0b3IubQkvXjotIGltcG9ydF9tb2R1bGUgcmVxdWlyZS4k LwogcmVxdWlyZWRfYXJndW1lbnQJYy1zcmMvZ2V0b3B0LmgJOTAKIHJlc2V0LXRoaXMtY29tbWFu ZC1sZW5ndGhzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eREVGVU4gKCJyZXNldC10aGlz LWNvbW1hbmQtbGVuZ3RocyIsIEZyZXNldF90aGlzX2MvCityZXNldG1hdGhmb250cwl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXHJlc2V0bWF0aGZvbnRzeyUkLworcmVzdAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXHNwbGl0b2ZmIzEjMlxcZW5kbWFya3tcXGRlZlxcZmlyc3R7IzF9 XFxkZWZcXHJlc3R7LwogcmVzdG9yZV9nZXRjam1wCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5j CS9ecmVzdG9yZV9nZXRjam1wIChzeXNfam1wX2J1ZiB0ZW1wKSQvCiByZXN0b3JlX2tib2FyZF9j b25maWd1cmF0aW9uCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ecmVzdG9yZV9rYm9hcmRf Y29uZmlndXJhdGlvbiAoaW50IHdhc19sb2NrZWQpJC8KK3Jlc3VsdAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXHJlc3VsdHtcXHJlYWxiYWNrc2xhc2ggcmVzdWx0fSQvCityZXN1bHQJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxyZXN1bHR7XFxsZWF2ZXZtb2RlXFxyYWlzZS4xNWV4 XFxoYm94IHRvIDFlbXtcXGhmLwogcmV0dXJuX3RvX2NvbW1hbmRfbG9vcAljLXNyYy9lbWFjcy9z cmMva2V5Ym9hcmQuYwkxMzUKIHJldmVyc2UJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXnJldmVy c2UoW10sV3MsV3MpLiQvCiByZXZlcnQJb2JqYy1zcmMvUGFja0luc3AubQkvXi1yZXZlcnQ6c2Vu ZGVyJC8KQEAgLTQwNzksNiArNDE3Niw4IEBAIHJpZ2h0CWMtc3JjL2V0YWdzLmMJMjE2CiByaWdo dF9zaGlmdAl5LXNyYy9jY2NwLnkJL15yaWdodF9zaGlmdCAoYSwgYikkLwogcmluZzEJYy5jCTI0 MQogcmluZzIJYy5jCTI0Mgorcm0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxybXtcXHJl YWxiYWNrc2xhc2ggcm0gfSUkLworcm0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgICAgIFxcbGV0 XFxybT1cXHNob3J0Y29udHJtIFxcbGV0XFxiZj1cXHNob3J0Y29udGJmIFxcbC8KIHJtX2VvCWMt c3JjL2VtYWNzL3NyYy9yZWdleC5oCTQ1MAogcm1fc28JYy1zcmMvZW1hY3Mvc3JjL3JlZ2V4LmgJ NDQ5CiBybmdfYmFzZQljcC1zcmMvUmFuZ2UuaAk3OQpAQCAtNDEwNSw2ICs0MjA0LDEwIEBAIHNh ZmVfcnVuX2hvb2tfZnVuY2FsbAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnNhZmVfcnVu X2hvb2tfZnVuY2FsbCAocHRyZGlmCiBzYWZlX3J1bl9ob29rcwljLXNyYy9lbWFjcy9zcmMva2V5 Ym9hcmQuYwkvXnNhZmVfcnVuX2hvb2tzIChMaXNwX09iamVjdCBob29rKSQvCiBzYWZlX3J1bl9o b29rc18xCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ec2FmZV9ydW5faG9va3NfMSAocHRy ZGlmZl90IG5hcmdzLCBMaXNwX09iamVjdCAqYXIvCiBzYWZlX3J1bl9ob29rc19lcnJvcgljLXNy Yy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnNhZmVfcnVuX2hvb2tzX2Vycm9yIChMaXNwX09iamVj dCBlcnJvciwgcHRyZGlmZl90Lworc2FtcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNh bXAgIzF7YFxcdGNsb3NleyMxfSdcXG51bGx9JC8KK3NhbXAJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxzYW1wIyMxe1xccmVhbGJhY2tzbGFzaCBzYW1wIHsjIzF9fSUkLworc2FtcAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHNhbXA9XFxpbmRleGR1bW15Zm9udCQvCitzYW1wCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2FtcCMjMXtcXHJlYWxiYWNrc2xhc2ggc2FtcCB7 IyMxfX0kLwogc2F2ZQlweXQtc3JjL3NlcnZlci5weQkvXiAgICBkZWYgc2F2ZShzZWxmKTokLwog c2F2ZQlweXQtc3JjL3NlcnZlci5weQkvXiAgICBkZWYgc2F2ZShzZWxmKTokLwogc2F2ZQlweXQt c3JjL3NlcnZlci5weQkvXiAgICBkZWYgc2F2ZShzZWxmKTokLwpAQCAtNDExMywxMyArNDIxNiwy OCBAQCBzYXZlX3R5cGUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXnNhdmVfdHlwZSAoc3RydWN0 IExpc3BfU2F2ZV9WYWx1ZSAqdiwgaW50IG4pJAogc2F2ZW5zdHIJYy1zcmMvZXRhZ3MuYwkvXnNh dmVuc3RyIChjb25zdCBjaGFyICpjcCwgaW50IGxlbikkLwogc2F2ZXN0cgljLXNyYy9ldGFncy5j CS9ec2F2ZXN0ciAoY29uc3QgY2hhciAqY3ApJC8KIHNheQlnby1zcmMvdGVzdC5nbwkvXmZ1bmMg c2F5KG1zZyBzdHJpbmcpIHskLworc2MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzYyMx e3tcXHNtYWxsY2FwcyMxfX0JJSBzbWFsbGNhcHMgZm9udCQvCitzYwl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxsZXRcXHNjPVxcaW5kZXhkdW1teWZvbnQkLwogc2Nhbl9zZXBhcmF0b3JzCWMtc3Jj L2V0YWdzLmMJL15zY2FuX3NlcGFyYXRvcnMgKGNoYXIgKm5hbWUpJC8KIHNjb2xvbnNlZW4JYy1z cmMvZXRhZ3MuYwkyNDQ3CiBzY3JhdGNoCWMtc3JjL3N5c2RlcC5oCTU2CiBzY3JvbGxfYmFyX3Bh cnRzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTUxODkKLXNlYz1ccmVsYXgJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcbGV0XFxhcHBlbmRpeHNlYz1cXHJlbGF4JC8KK3NlYwl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc2VjdGlvbiA9IFxcYXBwZW5kaXhzZWMkLworc2Vj Y2hlY2sJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZWNjaGVjayMxe1xcaWYgXFxwYWdl bm88MCAlJC8KK3NlY2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL14gICAgICBcXGRlZlxcc2Vj ZW50cnkgIyMxIyMyIyMzIyM0e30kLworc2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxzZWNlbnRyeSMxIzIjMyM0e1xcZG9zZWNlbnRyeXsjMi4jM1xcbGFiZWxzcGFjZS8KK3Nl Y2VudHJ5Zm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZWNlbnRyeWZvbnRze1xc dGV4dGZvbnRzfSQvCitzZWNmb250cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNlY2Zv bnRzeyUkLworc2VjaGVhZGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNlY2hlYWRp bmcgIzEjMiMze1xcc2VjaGVhZGluZ2kgeyMyLiMzXFxlbnNwYWNlLworc2VjaGVhZGluZ2JyZWFr CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2VjaGVhZGluZ2JyZWFre1xcZG9icmVhayBc XHNlY2hlYWRpbmdza2lwIHstMTAvCitzZWNoZWFkaW5naQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXHNlY2hlYWRpbmdpICMxe3tcXGFkdmFuY2UgXFxzZWNoZWFkaW5nc2tpcCBieSBcXC8K K3NlY29uZGFyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNlY29uZGFyeSAjMSMyeyQv CiBzZWN0aW9uCXBlcmwtc3JjL2h0bG1pZnktY3lzdGljCTI1Ci1zZWN0aW9uPVxyZWxheAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGFwcGVuZGl4c2VjdGlvbj1cXHJlbGF4JC8KK3NlY3Rp b24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxzZWN0aW9uPVxccmVsYXgkLworc2VjdGlv bgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc2VjdGlvbiA9IFxcbnVtYmVy ZWRzZWMkLworc2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc2Vj dGlvbiA9IFxcYXBwZW5kaXhzZWMkLworc2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxn bG9iYWxcXGxldFxcc2VjdGlvbiA9IFxcdW5udW1iZXJlZHNlYyQvCitzZWN0aW9uCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGdsb2JhbFxcbGV0XFxzZWN0aW9uID0gXFxudW1iZXJlZHNlYyQvCiBz ZWN0aW9uX2hyZWYJcGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJL15zdWIgc2VjdGlvbl9ocmVmICgk KSQvCiBzZWN0aW9uX25hbWUJcGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJMTIKIHNlY3Rpb25fbmFt ZQlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkvXnN1YiBzZWN0aW9uX25hbWUgKCQpJC8KQEAgLTQx MjcsNiArNDI0NSwxMCBAQCBzZWN0aW9uX3RvYwlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkxNQog c2VjdGlvbl91cmwJcGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJL15zdWIgc2VjdGlvbl91cmwgKCkk Lwogc2VjdGlvbl91cmxfYmFzZQlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkvXnN1YiBzZWN0aW9u X3VybF9iYXNlICgpJC8KIHNlY3Rpb25fdXJsX25hbWUJcGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJ L15zdWIgc2VjdGlvbl91cmxfbmFtZSAoKSQvCitzZWN0aW9uenp6CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXG91dGVyXFxkZWZcXGFwcGVuZGl4c2VjdGlvbntcXHBhcnNlYXJnXFxhcHBlbmRpeHNl Y3RpLworc2VjdGlvbnp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxhcHBl bmRpeHNlY3tcXHBhcnNlYXJnXFxhcHBlbmRpeHNlY3Rpb256ei8KK3NlY3p6egl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXHNlY3p6eiAjMXtcXHNlY2NoZWNre3NlY3Rpb259JSQvCitzZWN6 enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvYXBwZW5kaXhzZWN7XFxwYXJzZWFy Z1xcYXBwZW5kaXhzZWN6enp9JC8KIHNlbGVjdAlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9ec2Vs ZWN0KFgsW1h8WHNdLFhzKS4kLwogc2VsZWN0LXRhZ3MtdGFibGUJZWwtc3JjL2VtYWNzL2xpc3Av cHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRlZnVuIHNlbGVjdC10YWdzLXRhYmxlICgpJC8KIHNlbGVj dC10YWdzLXRhYmxlLW1vZGUJZWwtc3JjL2VtYWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9e KGRlZmluZS1kZXJpdmVkLW1vZGUgc2VsZWN0LXRhZ3MtdGFibGUtbW9kZSBzcGVjaWEvCkBAIC00 MTM3LDkgKzQyNTksMTEgQEAgc2VsZWN0X2xhc3QJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXnNl bGVjdF9sYXN0KFtYXSxYLFtdKS4kLwogc2VuZAlvYmpjLXNyYy9TdWJwcm9jZXNzLm0JL14tIHNl bmQ6KGNvbnN0IGNoYXIgKilzdHJpbmcgd2l0aE5ld2xpbmU6KEJPT0wpd2FudC8KIHNlbmQJb2Jq Yy1zcmMvU3VicHJvY2Vzcy5tCS9eLSBzZW5kOihjb25zdCBjaGFyICopc3RyaW5nJC8KIHNlcGFy YXRvcl9uYW1lcwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwk3MzcyCitzZXBzcGFjZXMJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcc2Vwc3BhY2Vze1xcZGVmIHtcXCB9fX0kLwogc2Vy aWFsaXplVG9WYXJzCXBocC1zcmMvbGNlX2Z1bmN0aW9ucy5waHAJL14gICAgICBmdW5jdGlvbiBz ZXJpYWxpemVUb1ZhcnMoJHByZWZpeCkkLwogc2VyaWFsaXplVG9WYXJzCXBocC1zcmMvbGNlX2Z1 bmN0aW9ucy5waHAJL14gICAgICBmdW5jdGlvbiBzZXJpYWxpemVUb1ZhcnMoJHByZWZpeCkkLwog c2V0CWNwLXNyYy9jb253YXkuaHBwCS9eICAgIHZvaWQgc2V0KHZvaWQpIHsgYWxpdmUgPSAxOyB9 JC8KK3NldAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNldHtcXHBhcnNlYXJnXFxzZXR4 eHh9JC8KIHNldAltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gaW1wb3J0X21vZHVsZSBzZXQu JC8KIHNldC1pbnB1dC1pbnRlcnJ1cHQtbW9kZQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkv XkRFRlVOICgic2V0LWlucHV0LWludGVycnVwdC1tb2RlIiwgRnNldF9pbnB1dF9pbnRlLwogc2V0 LWlucHV0LW1ldGEtbW9kZQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXkRFRlVOICgic2V0 LWlucHV0LW1ldGEtbW9kZSIsIEZzZXRfaW5wdXRfbWV0YV9tb2RlLwpAQCAtNDE3MCw5ICs0Mjk0 LDI0IEBAIHNldF9zeW1ib2xfbmV4dAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9ec2V0X3N5bWJv bF9uZXh0IChMaXNwX09iamVjdCBzeW0sIHN0cnVjCiBzZXRfc3ltYm9sX3BsaXN0CWMtc3JjL2Vt YWNzL3NyYy9saXNwLmgJL15zZXRfc3ltYm9sX3BsaXN0IChMaXNwX09iamVjdCBzeW0sIExpc3Bf T2JqZWN0IHBsaS8KIHNldF91cHRvCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBmdW5jIHNl dF91cHRvKGFjY3VfY2FzZSwgaW50KSA9IHNldChhY2N1X2dvYWxfaS8KIHNldF93YWl0aW5nX2Zv cl9pbnB1dAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnNldF93YWl0aW5nX2Zvcl9pbnB1 dCAoc3RydWN0IHRpbWVzcGVjICp0aW1lX3RvX2NsLworc2V0Y2hhcHRlcm5ld3BhZ2UJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZXRjaGFwdGVybmV3cGFnZSAjMSB7XFxjc25hbWUgQ0hB UFBBRyMxXFxlbmRjcy8KK3NldGNoYXB0ZXJzdHlsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXHNldGNoYXB0ZXJzdHlsZSAjMSB7XFxjc25hbWUgQ0hBUEYjMVxcZW5kY3NuYW1lLworc2V0 ZGVmZm9udAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNldGRlZmZvbnQgIzEge1xcY3Nu YW1lIERFRiMxXFxlbmRjc25hbWV9JC8KK3NldGZpbGVuYW1lCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcc2V0ZmlsZW5hbWV7JSQvCitzZXRmaWxlbmFtZQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eICAgXFxnbG9iYWxcXGxldFxcc2V0ZmlsZW5hbWU9XFxjb21tZW50ICUgSWdub3JlIGV4dHJh Lwogc2V0cmVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGV4cGFuZGFmdGVyXFxleHBhbmRhZnRl clxcZXhwYW5kYWZ0ZXJcXGFwcGVuZGl4c2V0cmUvCitzZXRyZWYJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxzZXRyZWYjMXslJC8KK3NldHRpdGxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcc2V0dGl0bGV7XFxwYXJzZWFyZ1xcc2V0dGl0bGV6enp9JC8KK3NldHRpdGxlenp6CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2V0dGl0bGV6enogIzF7XFxnZGVmXFx0aGlzdGl0 bGV7IzF9fSQvCiBzZXR1cAljcC1zcmMvYy5DCTUKK3NldHh4eAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXHNldHh4eCAjMXskLworc2YJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxz ZntcXGZhbT1cXHNmZmFtIFxcdGVuc2Z9JC8KK3NmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl Zlxcc2Z7XFxyZWFsYmFja3NsYXNoIHNmfSUkLworc2YJdGV4LXNyYy90ZXhpbmZvLnRleAkvXntc XGxldFxcdGVudHQ9XFxzZWN0dCBcXGxldFxcdHQ9XFxzZWN0dCBcXGxldFxcc2Y9XFxzZWN0dCQv CiBzaGlmdAljcC1zcmMvZnVuY3Rpb25zLmNwcAkvXnZvaWQgRGF0ZTo6c2hpZnQgKCB2b2lkICl7 XC9cL1NoaWZ0IHRoaXMgZGF0ZSB0byBwcmUvCitzaG9ydGNoYXBlbnRyeQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXHNob3J0Y2hhcGVudHJ5IzEjMiMzeyUkLworc2hvcnRjb250ZW50cwl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHNob3J0Y29udGVudHMgPSBcXHN1bW1hcnljb250 ZW50cyQvCitzaG9ydHVubnVtYmVyZWRlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHNob3J0dW5udW1iZXJlZGVudHJ5IzEjMnslJC8KIHNob3VsZExvYWQJb2JqYy1zcmMvUGFja0lu c3AubQkvXi0oQk9PTClzaG91bGRMb2FkJC8KIHNob3VsZF9hdHRlbXB0X2FjY3VfdHJhbnNmb3Jt CW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBwcmVkIHNob3VsZF9hdHRlbXB0X2FjY3VfdHJh bnNmb3JtKG1vZHVsZV9pbmZvOi8KIHNob3VsZF9hdHRlbXB0X2FjY3VfdHJhbnNmb3JtXzIJbWVy Yy1zcmMvYWNjdW11bGF0b3IubQkvXjotIHByZWQgc2hvdWxkX2F0dGVtcHRfYWNjdV90cmFuc2Zv cm1fMihtb2R1bGVfaW5mLwpAQCAtNDE5MCw2ICs0MzI5LDkgQEAgc2lnbmFsX2hhbmRsZXJfdAlj LXNyYy9oLmgJOTQKIHNpbXVsYXRpb24JaHRtbC1zcmMvc29mdHdhcmUuaHRtbAkvXlNvZnR3YXJl IHRoYXQgSSB3cm90ZSBmb3Igc3VwcG9ydGluZyBteSByZXNlYXJjaCBhLwogc2luZ2xlX2tib2Fy ZAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwk4OQogc2luZ2xlX2tib2FyZF9zdGF0ZQljLXNy Yy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnNpbmdsZV9rYm9hcmRfc3RhdGUgKCkkLworc2luZ2xl Y29kZWluZGV4ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzaW5nbGVjb2RlaW5kZXhl ciAjMXtcXGRvaW5ke1xcaW5kZXhuYW1lfXtcXGNvZGUvCitzaW5nbGVpbmRleGVyCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcc2luZ2xlaW5kZXhlciAjMXtcXGRvaW5ke1xcaW5kZXhuYW1l fXsjMX19JC8KK3NpbmdsZXNwYWNlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2luZ2xl c3BhY2V7JSQvCiBzaXRlCWNwLXNyYy9jb253YXkuaHBwCTUKIHNpdGUJY3Atc3JjL2NvbndheS5o cHAJL14gICAgc2l0ZShpbnQgeGksIGludCB5aSk6IHgoeGkpLCB5KHlpKSwgYWxpdmUoMCkgey8K IHNpemUJYy1zcmMvZXRhZ3MuYwkyMzYKQEAgLTQyMDMsMjAgKzQzNDUsNDUgQEAgc2tleXNlZW4J Yy1zcmMvZXRhZ3MuYwkyNDQ1CiBza2lwX25hbWUJYy1zcmMvZXRhZ3MuYwkvXnNraXBfbmFtZSAo Y2hhciAqY3ApJC8KIHNraXBfbm9uX3NwYWNlcwljLXNyYy9ldGFncy5jCS9ec2tpcF9ub25fc3Bh Y2VzIChjaGFyICpjcCkkLwogc2tpcF9zcGFjZXMJYy1zcmMvZXRhZ3MuYwkvXnNraXBfc3BhY2Vz IChjaGFyICpjcCkkLworc2wJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzbHtcXHJlYWxi YWNrc2xhc2ggc2wgfSUkLworc2wJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgICAgIFxcbGV0XFxy bT1cXHNob3J0Y29udHJtIFxcbGV0XFxiZj1cXHNob3J0Y29udGJmIFxcbC8KK3NtYWxsYm9vawl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHNtYWxsYm9vaz1cXHJlbGF4JC8KK3NtYWxsYm9v awl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNtYWxsYm9va3skLworc21hbGxjYXBzCXRl eC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5iZj1cXHRleHRiZiBcXGxldFxcdGVudHQ9 XFx0ZXh0dHQgXFxsZXRcXHNtYWxsLworc21hbGxjYXBzCXRleC1zcmMvdGV4aW5mby50ZXgJL14g IFxcbGV0XFx0ZW5iZj1cXGNoYXBiZiBcXGxldFxcdGVudHQ9XFxjaGFwdHQgXFxsZXRcXHNtYWxs Lworc21hbGxjYXBzCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5iZj1cXHNlY2Jm IFxcbGV0XFx0ZW50dD1cXHNlY3R0IFxcbGV0XFxzbWFsbGNhLworc21hbGxjYXBzCXRleC1zcmMv dGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5iZj1cXHNzZWNiZiBcXGxldFxcdGVudHQ9XFxzc2Vj dHQgXFxsZXRcXHNtYWxsLworc21hbGxjYXBzCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0 XFx0ZW5iZj1cXGluZGJmIFxcbGV0XFx0ZW50dD1cXGluZHR0IFxcbGV0XFxzbWFsbGNhLworc21h bGxleGFtcGxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcc21hbGxleGFtcGxlPVxcbGlz cCQvCitzbWFsbGV4YW1wbGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHNt YWxsZXhhbXBsZT1cXHNtYWxsbGlzcHgkLworc21hbGxsaXNwCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGdsb2JhbFxcbGV0XFxzbWFsbGxpc3A9XFxzbWFsbGxpc3B4JC8KK3NtYWxsbGlzcHgJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzbWFsbGxpc3B4e1xcYWJvdmVlbnZicmVha1xcYmVn aW5ncm91cFxcaW5FTlYkLworc21hcnRpdGFsaWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxzbWFydGl0YWxpYyMxe3tcXHNsICMxfVxcZnV0dXJlbGV0XFxuZXh0XFxzbWFydGl0Lworc21h cnRpdGFsaWN4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc21hcnRpdGFsaWN4e1xcaWZ4 XFxuZXh0LFxcZWxzZVxcaWZ4XFxuZXh0LVxcZWxzZVxcaS8KIHNuYXJmLXRhZy1mdW5jdGlvbgll bC1zcmMvZW1hY3MvbGlzcC9wcm9nbW9kZXMvZXRhZ3MuZWwJL14oZGVmdmFyIHNuYXJmLXRhZy1m dW5jdGlvbiBuaWwkLwogc25vbmUJYy1zcmMvZXRhZ3MuYwkyNDQzCiBzb2x1dGlvbnMJbWVyYy1z cmMvYWNjdW11bGF0b3IubQkvXjotIGltcG9ydF9tb2R1bGUgc29sdXRpb25zLiQvCiBzb21lX21v dXNlX21vdmVkCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ec29tZV9tb3VzZV9tb3ZlZCAo dm9pZCkkLworc3AJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzcHtcXHBhcnNlYXJnXFxz cHh4eH0kLworc3BhY2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwZW50cnkjMSMy IzN7XFxkb2NoYXBlbnRyeXsjMlxcbGFiZWxzcGFjZSMxfS8KIHNwYWNlCXRleC1zcmMvdGV4aW5m by50ZXgJL14gICAgeyMyXFxsYWJlbHNwYWNlICMxfVxcZG90ZmlsbFxcZG9zaG9ydHBhZ2Vub3sj M319JS8KK3NwYWNlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2VjZW50cnkjMSMyIzMj NHtcXGRvc2VjZW50cnl7IzIuIzNcXGxhYmVsc3BhY2UvCitzcGFjZQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXHN1YnNlY2VudHJ5IzEjMiMzIzQjNXtcXGRvc3Vic2VjZW50cnl7IzIuIzMu IzQvCiBzcGFjZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGRvc3Vic3Vic2VjZW50cnl7IzIu IzMuIzQuIzVcXGxhYmVsc3BhY2UjMX17IzZ9fS8KIHNwYWNlcgljLXNyYy9lbWFjcy9zcmMvbGlz cC5oCTE5NzUKIHNwYWNlcgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE5ODIKIHNwYWNlcgljLXNy Yy9lbWFjcy9zcmMvbGlzcC5oCTIwMzYKIHNwYWNlcgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTIy MDUKK3NwYWNlc3BsaXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcc3BhY2VzcGxpdCMx IzJeXk17XFxlbmRncm91cFxcc3BhY2VzcGxpdGZvb3sjMS8KK3NwYWNlc3BsaXRmb28JdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcbG9uZ1xcZ2RlZlxcc3BhY2VzcGxpdGZvbyMxIzIgIzMjNFxcc3Bh Y2VzcGxpdGZvb3slJC8KIHNwZWNiaW5kX3RhZwljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTI5NDMK IHNwZWNiaW5kaW5nCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMjk1NQorc3BlY2hlYWRlcgl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnNwZWN7XFxkZWZwYXJzZWJvZHlcXEVkZWZzcGVj XFxkZWZzcGVjeFxcZGVmc3AvCiBzcGVjaWFsc3ltYm9sCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJ L15zcGVjaWFsc3ltYm9sKEMxLEMyLFMpOi0kLworc3BlY3hcZGVmc3BlY2hlYWRlcgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnNwZWN7XFxkZWZwYXJzZWJvZHlcXEVkZWZzcGVjXFxk ZWZzcGVjeFxcZGVmc3AvCiBzcGxpdGV4cAlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9ec3BsaXRl eHAoRSxFLCgnTklMJywnTklMJykpOi0hLiQvCitzcGxpdG9mZgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXHNwbGl0b2ZmIzEjMlxcZW5kbWFya3tcXGRlZlxcZmlyc3R7IzF9XFxkZWZcXHJl c3R7Lworc3B4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzcHh4eCAjMXtcXHBhciBc XHZza2lwICMxXFxiYXNlbGluZXNraXB9JC8KIHNyY2xpc3QJbWFrZS1zcmMvTWFrZWZpbGUJL15z cmNsaXN0OiBNYWtlZmlsZSQvCiBzczMJYy5jCTI1NQogc3NzMQljLmMJMjUyCkBAIC00MjQ4LDYg KzQ0MTUsOCBAQCBzdGFydAlwaHAtc3JjL2xjZV9mdW5jdGlvbnMucGhwCS9eICAgICAgZnVuY3Rp b24gc3RhcnQoJGxpbmUsICRjbGFzcykkLwogc3RhcnQJeS1zcmMvY2NjcC55CTE0Mwogc3RhcnRf cG9sbGluZwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnN0YXJ0X3BvbGxpbmcgKHZvaWQp JC8KIHN0YXJ0X3VwCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15zdGFydF91cDotJC8KK3N0YXJ0 Y29udGVudHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzdGFydGNvbnRlbnRzIzF7JSQv CitzdGFydGVudW1lcmF0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3RhcnRlbnVt ZXJhdGlvbiMxeyUkLwogc3RhdGVfcHJvdGVjdGVkX3AJYy1zcmMvZW1hY3Mvc3JjL2dtYWxsb2Mu Ywk0MDAKIHN0YXRldGFibGUJaHRtbC1zcmMvYWxncnRobXMuaHRtbAkvXk5leHQkLwogc3RhdGlj ZXRhZ3MJbWFrZS1zcmMvTWFrZWZpbGUJL15zdGF0aWNldGFnczokLwpAQCAtNDI2NywyNCArNDQz Niw2MSBAQCBzdHJpcExpbmUJcGhwLXNyYy9sY2VfZnVuY3Rpb25zLnBocAkvXiAgICAgIGZ1bmN0 aW9uIHN0cmlwTGluZSgkbGluZSwgJGNsYXNzKSQvCiBzdHJpcG5hbWUJcGFzLXNyYy9jb21tb24u cGFzCS9eZnVuY3Rpb24gc3RyaXBuYW1lOyAoKiAoJC8KIHN0cm5jYXNlZXEJYy1zcmMvZXRhZ3Mu YwkvXiNkZWZpbmUgc3RybmNhc2VlcShzLHQsbikgKGFzc2VydCAoKHMpIT1OVUxMICYmICh0Lwog c3RybmVxCWMtc3JjL2V0YWdzLmMJL14jZGVmaW5lIHN0cm5lcShzLHQsbikJKGFzc2VydCAoKHMp IT1OVUxMIHx8ICh0KSE9Ti8KK3N0cm9uZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHN0 cm9uZz1cXGIkLworc3Ryb25nCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcc3Ryb25nPVxc aW5kZXhkdW1teWZvbnQkLwogc3RydWN0ZGVmCWMtc3JjL2V0YWdzLmMJMjQ0OAogc3R1ZmZfYnVm ZmVyZWRfaW5wdXQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15zdHVmZl9idWZmZXJlZF9p bnB1dCAoTGlzcF9PYmplY3Qgc3R1ZmZzdHJpbmcpJC8KK3N1YmhlYWRpbmcJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxzdWJoZWFkaW5ne1xccGFyc2VhcmdcXHN1YnNlY2hlYWRpbmdpfSQv CiBzdWJwcm9jZXNzCW9iamMtc3JjL1BhY2tJbnNwLm0JL14tc3VicHJvY2VzczooU3VicHJvY2Vz cyAqKXNlbmRlciBvdXRwdXQ6KGNoYXIgKilidS8KIHN1YnByb2Nlc3NEb25lCW9iamMtc3JjL1Bh Y2tJbnNwLm0JL14tc3VicHJvY2Vzc0RvbmU6KFN1YnByb2Nlc3MgKilzZW5kZXIkLwotc3Vic2Vj PVxyZWxheAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGFwcGVuZGl4c3Vic2VjPVxccmVs YXgkLworc3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcc3Vic2VjPVxccmVsYXgk Lworc3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdsb2JhbFxcbGV0XFxzdWJzZWN0aW9u ID0gXFxhcHBlbmRpeHN1YnNlYyQvCitzdWJzZWNlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9e ICAgICAgXFxkZWZcXHN1YnNlY2VudHJ5ICMjMSMjMiMjMyMjNCMjNXt9JC8KK3N1YnNlY2VudHJ5 CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3Vic2VjZW50cnkjMSMyIzMjNCM1e1xcZG9z dWJzZWNlbnRyeXsjMi4jMy4jNC8KK3N1YnNlY2VudHJ5Zm9udHMJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcbGV0XFxzdWJzZWNlbnRyeWZvbnRzID0gXFx0ZXh0Zm9udHMkLworc3Vic2VjZm9udHMJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzdWJzZWNmb250c3slJC8KK3N1YnNlY2hlYWRp bmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzdWJzZWNoZWFkaW5nICMxIzIjMyM0e1xc c3Vic2VjaGVhZGluZ2kgeyMyLiMzLworc3Vic2VjaGVhZGluZ2JyZWFrCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcc3Vic2VjaGVhZGluZ2JyZWFre1xcZG9icmVhayBcXHN1YnNlY2hlYWRp bmdza2kvCitzdWJzZWNoZWFkaW5naQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHN1YnNl Y2hlYWRpbmdpICMxe3tcXGFkdmFuY2UgXFxzdWJzZWNoZWFkaW5nc2tpLwogc3Vic2VjdGlvbglw ZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkyNgotc3Vic2VjdGlvbj1ccmVsYXgJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcbGV0XFxhcHBlbmRpeHN1YnNlY3Rpb249XFxyZWxheCQvCitzdWJzZWN0aW9u CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcc3Vic2VjdGlvbj1cXHJlbGF4JC8KK3N1YnNl Y3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHN1YnNlY3Rpb24gPSBc XG51bWJlcmVkc3Vic2VjJC8KK3N1YnNlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xv YmFsXFxsZXRcXHN1YnNlY3Rpb24gPSBcXGFwcGVuZGl4c3Vic2VjJC8KK3N1YnNlY3Rpb24JdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHN1YnNlY3Rpb24gPSBcXHVubnVtYmVy ZWRzdWJzZWMkLworc3Vic2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxl dFxcc3Vic2VjdGlvbiA9IFxcbnVtYmVyZWRzdWJzZWMkLwogc3Vic2VjdGlvbl9tYXJrZXIJcGVy bC1zcmMvaHRsbWlmeS1jeXN0aWMJMTYxCitzdWJzZWN6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkv Xlxcb3V0ZXJcXGRlZlxcYXBwZW5kaXhzdWJzZWN7XFxwYXJzZWFyZ1xcYXBwZW5kaXhzdWJzZWMv CitzdWJzZWN6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvYXBwZW5kaXhzdWJz ZWN7XFxwYXJzZWFyZ1xcYXBwZW5kaXhzdWJzZWN6ei8KIHN1YnN0CXByb2wtc3JjL25hdGRlZC5w cm9sb2cJL15zdWJzdCh2YXIoWSksdmFyKFgpLE0sTik6LSQvCiBzdWJzdGl0dXRlCWMtc3JjL2V0 YWdzLmMJL15zdWJzdGl0dXRlIChjaGFyICppbiwgY2hhciAqb3V0LCBzdHJ1Y3QgcmVfcmVnaXN0 ZS8KLXN1YnN1YnNlYz1ccmVsYXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxhcHBlbmRp eHN1YnN1YnNlYz1cXHJlbGF4JC8KK3N1YnN1YmhlYWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxzdWJzdWJoZWFkaW5ne1xccGFyc2VhcmdcXHN1YnN1YnNlY2hlYWRpbmdpfSQvCitz dWJzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxzdWJzdWJzZWM9XFxyZWxheCQv CitzdWJzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHN1YnN1YnNl Y3Rpb24gPSBcXGFwcGVuZGl4c3Vic3Vic2VjJC8KK3N1YnN1YnNlY2VudHJ5CXRleC1zcmMvdGV4 aW5mby50ZXgJL14gICAgICBcXGRlZlxcc3Vic3Vic2VjZW50cnkgIyMxIyMyIyMzIyM0IyM1IyM2 e30kLworc3Vic3Vic2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzdWJzdWJz ZWNlbnRyeSMxIzIjMyM0IzUjNnslJC8KK3N1YnN1YnNlY2VudHJ5Zm9udHMJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcbGV0XFxzdWJzdWJzZWNlbnRyeWZvbnRzID0gXFx0ZXh0Zm9udHMkLworc3Vi c3Vic2VjZm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzdWJzdWJzZWNmb250c3tc XHN1YnNlY2ZvbnRzfSAlIE1heWJlIHRoaXMgc2hvLworc3Vic3Vic2VjaGVhZGluZwl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXHN1YnN1YnNlY2hlYWRpbmcgIzEjMiMzIzQjNXtcXHN1YnN1 YnNlY2hlYWRpbmcvCitzdWJzdWJzZWNoZWFkaW5naQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXHN1YnN1YnNlY2hlYWRpbmdpICMxe3tcXGFkdmFuY2UgXFxzdWJzZWNoZWFkaW5nLwogc3Vi c3Vic2VjdGlvbglwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkyNwotc3Vic3Vic2VjdGlvbj1ccmVs YXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxhcHBlbmRpeHN1YnN1YnNlY3Rpb249XFxy ZWxheCQvCitzdWJzdWJzZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcc3Vic3Vi c2VjdGlvbj1cXHJlbGF4JC8KK3N1YnN1YnNlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc Z2xvYmFsXFxsZXRcXHN1YnN1YnNlY3Rpb24gPSBcXG51bWJlcmVkc3Vic3Vic2VjJC8KK3N1YnN1 YnNlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHN1YnN1YnNlY3Rp b24gPSBcXGFwcGVuZGl4c3Vic3Vic2VjJC8KK3N1YnN1YnNlY3Rpb24JdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZ2xvYmFsXFxsZXRcXHN1YnN1YnNlY3Rpb24gPSBcXHVubnVtYmVyZWRzdWJzdWJz ZWMkLworc3Vic3Vic2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxc c3Vic3Vic2VjdGlvbiA9IFxcbnVtYmVyZWRzdWJzdWJzZWMkLworc3Vic3Vic2Vjenp6CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXGFwcGVuZGl4c3Vic3Vic2Vje1xccGFyc2Vh cmdcXGFwcGVuZGl4c3ViLworc3Vic3Vic2Vjenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcaW5mb2FwcGVuZGl4c3Vic3Vic2Vje1xccGFyc2VhcmdcXGFwcGVuZGl4c3Vic3UvCitzdWJ0 aXRsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFxkZWZcXHN1YnRpdGxle1xccGFyc2Vhcmdc XHN1YnRpdGxlenp6fSUkLworc3VidGl0bGVmb250CXRleC1zcmMvdGV4aW5mby50ZXgJL14gICBc XGRlZlxcc3VidGl0bGVmb250e1xcc3VidGl0bGVybSBcXG5vcm1hbGJhc2VsaW5lc2svCitzdWJ0 aXRsZXJtCXRleC1zcmMvdGV4aW5mby50ZXgJL14gICBcXGxldFxcc3VidGl0bGVybT1cXHRlbnJt JC8KK3N1YnRpdGxlenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL14gICBcXGRlZlxcc3VidGl0bGV6 enojIzF7e1xcc3VidGl0bGVmb250IFxccmlnaHRsaW5leyMvCiBzdWJ0bGUJcnVieS1zcmMvdGVz dDEucnUJL14gICAgICAgICAgICAgICAgIDp0ZWUgOyBhdHRyX3JlYWRlciA6c3VidGxlJC8KIHN1 YnRyZWUJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXnN1YnRyZWUoVCxUKS4kLwogc3VmZml4CWMt c3JjL2V0YWdzLmMJMTg2CiBzdWZmaXhlcwljLXNyYy9ldGFncy5jCTE5NQogc3VnZ2VzdF9hc2tp bmdfZm9yX2hlbHAJYy1zcmMvZXRhZ3MuYwkvXnN1Z2dlc3RfYXNraW5nX2Zvcl9oZWxwICh2b2lk KSQvCitzdW1tYXJ5Y29udGVudHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRlZlxc c3VtbWFyeWNvbnRlbnRzeyUkLworc3VwZXJlamVjdAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXHN1cGVyZWplY3R7XFxwYXJcXHBlbmFsdHkgLTIwMDAwXFxmb290bm90ZW5vID0wIC8KIHN1 c3BlbmQtZW1hY3MJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15ERUZVTiAoInN1c3BlbmQt ZW1hY3MiLCBGc3VzcGVuZF9lbWFjcywgU3N1c3BlbmRfZS8KIHN2YWwJeS1zcmMvY2NjcC55CTEx Ngogc3dhbGxvd19ldmVudHMJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15zd2FsbG93X2V2 ZW50cyAoYm9vbCBkb19kaXNwbGF5KSQvCkBAIC00Mjk5LDYgKzQ1MDUsOCBAQCBzeW1zX29mX2Fi YnJldgljLXNyYy9hYmJyZXYuYwkvXnN5bXNfb2ZfYWJicmV2ICgpJC8KIHN5bXNfb2Zfa2V5Ym9h cmQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15zeW1zX29mX2tleWJvYXJkICh2b2lkKSQv CiBzeW5jaHJvbml6ZV9zeXN0ZW1fbWVzc2FnZXNfbG9jYWxlCWMtc3JjL2VtYWNzL3NyYy9saXNw LmgJL15JTkxJTkUgdm9pZCBzeW5jaHJvbml6ZV9zeXN0ZW1fbWVzc2FnZXNfbG9jYWxlICh2by8K IHN5bmNocm9uaXplX3N5c3RlbV90aW1lX2xvY2FsZQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9e SU5MSU5FIHZvaWQgc3luY2hyb25pemVfc3lzdGVtX3RpbWVfbG9jYWxlICh2b2lkKSAvCitzeW5j b2RlaW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzeW5jb2RlaW5kZXggIzEgIzIg eyUkLworc3luaW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzeW5pbmRleCAjMSAj MiB7JSQvCiBzeW50YXgJYy1zcmMvZW1hY3Mvc3JjL3JlZ2V4LmgJMzUwCiBzeXNfam1wX2J1Zglj LXNyYy9lbWFjcy9zcmMvbGlzcC5oCTI5MDYKIHN5c19qbXBfYnVmCWMtc3JjL2VtYWNzL3NyYy9s aXNwLmgJMjkxMApAQCAtNDMxMSwxMiArNDUxOSwyMCBAQCBzeXNfc2V0am1wCWMtc3JjL2VtYWNz L3NyYy9saXNwLmgJL14jIGRlZmluZSBzeXNfc2V0am1wKGopIHNpZ3NldGptcCAoaiwgMCkkLwog c3lzX3NldGptcAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eIyBkZWZpbmUgc3lzX3NldGptcChq KSBzZXRqbXAgKGopJC8KIHN5c2NhbGxfZXJyb3IJYy1zcmMvc3lzZGVwLmgJMzQKIHQJY3Atc3Jj L2MuQwk1MgordAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHQjMXt7XFx0dCBcXGV4aHlw aGVucGVuYWx0eT0xMDAwMFxccmF3YmFja3NsYXNoIC8KK3QJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFx0IyMxe1xccmVhbGJhY2tzbGFzaCByIHsjIzF9fSUkLwordAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxsZXRcXHQ9XFxpbmRleGR1bW15Zm9udCQvCit0CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGxldFxcYj1cXHB0ZXhiIFxcbGV0XFxjPVxccHRleGMgXFxsZXRcXGk9XFxwdGV4aSBc XGxldFxcdD1cXC8KIHQxCWNwLXNyYy9jLkMJMzQKIHQyCWNwLXNyYy9jLkMJMzgKIHRhYl9jb3Vu dF93b3JkcwljLXNyYy90YWIuYwkvXmludAkJCXRhYl9jb3VudF93b3JkcyhjaGFyICoqdGFiKSQv CiB0YWJfZGVsZXRlX2ZpcnN0CWMtc3JjL3RhYi5jCS9eaW50CQkJdGFiX2RlbGV0ZV9maXJzdChj aGFyICoqdGFiKSQvCiB0YWJfZmlsbAljLXNyYy90YWIuYwkvXmNoYXIJCQkqKnRhYl9maWxsKGNo YXIgKnN0ciwgY2hhciBkZWxpbSkkLwogdGFiX2ZyZWUJYy1zcmMvdGFiLmMJL152b2lkCQkJdGFi X2ZyZWUoY2hhciAqKnRhYikkLwordGFibGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0 YWJsZXtcXGJlZ2luZ3JvdXBcXGluRU5WXFxvYmV5bGluZXNcXG9iZXlzcGFjZXNcXC8KK3RhYmxl eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFx0YWJsZXggIzFeXk17JSQvCit0YWJsZXkJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcdGFibGV5IzEjMiAjMyAjNCAjNSAjNiAjN1xc ZW5kdGFibGV5e1xcZW5kZ3JvdS8KK3RhYmxlegl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHRhYmxleiAjMSMyIzMjNCM1IzZ7JSQvCiB0YWctYW55LW1hdGNoLXAJZWwtc3JjL2VtYWNzL2xp c3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRlZnVuIHRhZy1hbnktbWF0Y2gtcCAoX3RhZykkLwog dGFnLWV4YWN0LWZpbGUtbmFtZS1tYXRjaC1wCWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9l dGFncy5lbAkvXihkZWZ1biB0YWctZXhhY3QtZmlsZS1uYW1lLW1hdGNoLXAgKHRhZykkLwogdGFn LWV4YWN0LW1hdGNoLXAJZWwtc3JjL2VtYWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRl ZnVuIHRhZy1leGFjdC1tYXRjaC1wICh0YWcpJC8KQEAgLTQzOTUsMTIgKzQ2MTEsNzkgQEAgdGFn cy10YWctZmFjZQllbC1zcmMvZW1hY3MvbGlzcC9wcm9nbW9kZXMvZXRhZ3MuZWwJL14oZGVmY3Vz dG9tIHRhZ3MtdGFnLWZhY2UgJ2QKIHRhZ3MtdmVyaWZ5LXRhYmxlCWVsLXNyYy9lbWFjcy9saXNw L3Byb2dtb2Rlcy9ldGFncy5lbAkvXihkZWZ1biB0YWdzLXZlcmlmeS10YWJsZSAoZmlsZSkkLwog dGFncy13aXRoLWZhY2UJZWwtc3JjL2VtYWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRl Zm1hY3JvIHRhZ3Mtd2l0aC1mYWNlIChmYWNlICZyZXN0IGJvZHkpJC8KIHRhcmdldF9tdWx0aWJ5 dGUJYy1zcmMvZW1hY3Mvc3JjL3JlZ2V4LmgJNDA3Cit0Y2xvc2UJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFx0Y2xvc2UjMXt7XFxybSBcXHRjbG9zZXJtPVxcZm9udGRpbWVuMlxcZm9udCBc XHR0IC8KK3RjbG9zZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHRjbG9zZSMjMXtcXHJl YWxiYWNrc2xhc2ggdGNsb3NlIHsjIzF9fSUkLwordGNsb3NlCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGxldFxcdGNsb3NlPVxcaW5kZXhkdW1teWZvbnQkLwordGNsb3NlCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcdGNsb3NlIyMxe1xccmVhbGJhY2tzbGFzaCB0Y2xvc2UgeyMjMX19JC8K IHRjcGR1bXAJaHRtbC1zcmMvc29mdHdhcmUuaHRtbAkvXnRjcGR1bXAkLwogdGVhdHMJY3Atc3Jj L2MuQwkxMjcKIHRlZQlydWJ5LXNyYy90ZXN0MS5ydQkvXiAgICBhdHRyX2FjY2Vzc29yIDp0ZWUk LwogdGVlPQlydWJ5LXNyYy90ZXN0MS5ydQkvXiAgICBhdHRyX2FjY2Vzc29yIDp0ZWUkLwordGVt cAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxleHBhbmRhZnRlclxcaWZ4XFxjc25hbWUgSUYjMVxc ZW5kY3NuYW1lXFxyZWxheCBcXGxldFxcLwordGVtcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxl bHNlIFxcbGV0XFx0ZW1wPVxccmVsYXggXFxmaSQvCit0ZW1wCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGV4cGFuZGFmdGVyXFxpZnhcXGNzbmFtZSBJRiMxXFxlbmRjc25hbWVcXHJlbGF4IFxcbGV0 XFwvCit0ZW1wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGVsc2UgXFxsZXRcXHRlbXA9XFxpZmNs ZWFyZmFpbCBcXGZpJC8KK3RlbXAJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZWRlZlxcdGVtcHsl JC8KK3RlbXAJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZWRlZlxcdGVtcHslJC8KK3RlbXAJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZWRlZlxcdGVtcHt7XFxyZWFsYmFja3NsYXNoIGNoYXBlbnRy eSB7IzF9e1xcdGhlXFxjaGEvCit0ZW1wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGVkZWZcXHRl bXB7e1xccmVhbGJhY2tzbGFzaCBjaGFwZW50cnkgJC8KK3RlbXAJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZWRlZlxcdGVtcHt7XFxyZWFsYmFja3NsYXNoIHVubnVtYmNoYXBlbnRyeSB7IzF9e1xc bi8KK3RlbXAJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZWRlZlxcdGVtcHt7XFxyZWFsYmFja3Ns YXNoIHNlY2VudHJ5ICUkLwordGVtcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxlZGVmXFx0ZW1w e3tcXHJlYWxiYWNrc2xhc2ggc2VjZW50cnkgJSQvCit0ZW1wCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGVkZWZcXHRlbXB7e1xccmVhbGJhY2tzbGFzaCB1bm51bWJzZWNlbnRyeXsjMX17XFxub2Uv Cit0ZW1wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGVkZWZcXHRlbXB7e1xccmVhbGJhY2tzbGFz aCBzdWJzZWNlbnRyeSAlJC8KK3RlbXAJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZWRlZlxcdGVt cHt7XFxyZWFsYmFja3NsYXNoIHN1YnNlY2VudHJ5ICUkLwordGVtcAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxlZGVmXFx0ZW1we3tcXHJlYWxiYWNrc2xhc2ggdW5udW1ic3Vic2VjZW50cnl7IzF9 e1xcLwordGVtcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxlZGVmXFx0ZW1we3tcXHJlYWxiYWNr c2xhc2ggc3Vic3Vic2VjZW50cnkgJSQvCit0ZW1wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGVk ZWZcXHRlbXB7e1xccmVhbGJhY2tzbGFzaCBzdWJzdWJzZWNlbnRyeXsjMX0lJC8KK3RlbXAJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZWRlZlxcdGVtcHt7XFxyZWFsYmFja3NsYXNoIHVubnVtYnN1 YnN1YnNlY2VudHJ5eyMxLwordGVtcDEJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxceGRlZlxcdGVt cDF7IzJ9JSQvCit0ZW1wMQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFx4ZGVmXFx0ZW1wMXsjMiAj M30lJC8KIHRlbXBvcmFyaWx5X3N3aXRjaF90b19zaW5nbGVfa2JvYXJkCWMtc3JjL2VtYWNzL3Ny Yy9rZXlib2FyZC5jCS9edGVtcG9yYXJpbHlfc3dpdGNoX3RvX3NpbmdsZV9rYm9hcmQgKHN0cnVj dCBmcmFtZSAvCit0ZW5iZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRme1xcbGV0XFx0 ZW50dD1cXGRlZnR0IFxcbGV0XFx0ZW5iZiA9IFxcZGVmYmYgXFxiZn0vCit0ZW5iZgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuYmY9XFx0ZXh0YmYgXFxsZXRcXHRlbnR0PVxcdGV4 dHR0IFxcbGV0XFxzbWFsbC8KK3RlbmJmCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0 ZW5iZj1cXGNoYXBiZiBcXGxldFxcdGVudHQ9XFxjaGFwdHQgXFxsZXRcXHNtYWxsLwordGVuYmYJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxsZXRcXHRlbmJmPVxcc2VjYmYgXFxsZXRcXHRlbnR0 PVxcc2VjdHQgXFxsZXRcXHNtYWxsY2EvCit0ZW5iZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBc XGxldFxcdGVuYmY9XFxzc2VjYmYgXFxsZXRcXHRlbnR0PVxcc3NlY3R0IFxcbGV0XFxzbWFsbC8K K3RlbmJmCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5iZj1cXGluZGJmIFxcbGV0 XFx0ZW50dD1cXGluZHR0IFxcbGV0XFxzbWFsbGNhLwogdGVuZAljLXNyYy9ldGFncy5jCTI0MzIK K3RlbmkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxsZXRcXHRlbnNmPVxcdGV4dHNmIFxcbGV0 XFx0ZW5pPVxcdGV4dGkgXFxsZXRcXHRlbnN5PVxcLwordGVuaQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eICBcXGxldFxcdGVuc2Y9XFxjaGFwc2YgXFxsZXRcXHRlbmk9XFxjaGFwaSBcXGxldFxcdGVu c3k9XFwvCit0ZW5pCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5zZj1cXHNlY3Nm IFxcbGV0XFx0ZW5pPVxcc2VjaSBcXGxldFxcdGVuc3k9XFxzZS8KK3RlbmkJdGV4LXNyYy90ZXhp bmZvLnRleAkvXiAgXFxsZXRcXHRlbnNmPVxcc3NlY3NmIFxcbGV0XFx0ZW5pPVxcc3NlY2kgXFxs ZXRcXHRlbnN5PVxcLwordGVuaQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9 XFxpbmRzZiBcXGxldFxcdGVuaT1cXGluZGkgXFxsZXRcXHRlbnN5PVxcaW4vCit0ZW5pdAl0ZXgt c3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVucm09XFx0ZXh0cm0gXFxsZXRcXHRlbml0PVxc dGV4dGl0IFxcbGV0XFx0ZW5zbC8KK3Rlbml0CXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0 XFx0ZW5ybT1cXGNoYXBybSBcXGxldFxcdGVuaXQ9XFxjaGFwaXQgXFxsZXRcXHRlbnNsLwordGVu aXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxsZXRcXHRlbnJtPVxcc2Vjcm0gXFxsZXRcXHRl bml0PVxcc2VjaXQgXFxsZXRcXHRlbnNsPVxcLwordGVuaXQJdGV4LXNyYy90ZXhpbmZvLnRleAkv XiAgXFxsZXRcXHRlbnJtPVxcc3NlY3JtIFxcbGV0XFx0ZW5pdD1cXHNzZWNpdCBcXGxldFxcdGVu c2wvCit0ZW5pdAl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVucm09XFxpbmRybSBc XGxldFxcdGVuaXQ9XFxpbmRpdCBcXGxldFxcdGVuc2w9XFwvCit0ZW5ybQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eICBcXGxldFxcdGVucm09XFx0ZXh0cm0gXFxsZXRcXHRlbml0PVxcdGV4dGl0IFxc bGV0XFx0ZW5zbC8KK3RlbnJtCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5ybT1c XGNoYXBybSBcXGxldFxcdGVuaXQ9XFxjaGFwaXQgXFxsZXRcXHRlbnNsLwordGVucm0JdGV4LXNy Yy90ZXhpbmZvLnRleAkvXiAgXFxsZXRcXHRlbnJtPVxcc2Vjcm0gXFxsZXRcXHRlbml0PVxcc2Vj aXQgXFxsZXRcXHRlbnNsPVxcLwordGVucm0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxsZXRc XHRlbnJtPVxcc3NlY3JtIFxcbGV0XFx0ZW5pdD1cXHNzZWNpdCBcXGxldFxcdGVuc2wvCit0ZW5y bQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVucm09XFxpbmRybSBcXGxldFxcdGVu aXQ9XFxpbmRpdCBcXGxldFxcdGVuc2w9XFwvCit0ZW5zZgl0ZXgtc3JjL3RleGluZm8udGV4CS9e ICBcXGxldFxcdGVuc2Y9XFx0ZXh0c2YgXFxsZXRcXHRlbmk9XFx0ZXh0aSBcXGxldFxcdGVuc3k9 XFwvCit0ZW5zZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9XFxjaGFwc2Yg XFxsZXRcXHRlbmk9XFxjaGFwaSBcXGxldFxcdGVuc3k9XFwvCit0ZW5zZgl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eICBcXGxldFxcdGVuc2Y9XFxzZWNzZiBcXGxldFxcdGVuaT1cXHNlY2kgXFxsZXRc XHRlbnN5PVxcc2UvCit0ZW5zZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9 XFxzc2Vjc2YgXFxsZXRcXHRlbmk9XFxzc2VjaSBcXGxldFxcdGVuc3k9XFwvCit0ZW5zZgl0ZXgt c3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9XFxpbmRzZiBcXGxldFxcdGVuaT1cXGlu ZGkgXFxsZXRcXHRlbnN5PVxcaW4vCit0ZW5zbAl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxl dFxcdGVucm09XFx0ZXh0cm0gXFxsZXRcXHRlbml0PVxcdGV4dGl0IFxcbGV0XFx0ZW5zbC8KK3Rl bnNsCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5ybT1cXGNoYXBybSBcXGxldFxc dGVuaXQ9XFxjaGFwaXQgXFxsZXRcXHRlbnNsLwordGVuc2wJdGV4LXNyYy90ZXhpbmZvLnRleAkv XiAgXFxsZXRcXHRlbnJtPVxcc2Vjcm0gXFxsZXRcXHRlbml0PVxcc2VjaXQgXFxsZXRcXHRlbnNs PVxcLwordGVuc2wJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxsZXRcXHRlbnJtPVxcc3NlY3Jt IFxcbGV0XFx0ZW5pdD1cXHNzZWNpdCBcXGxldFxcdGVuc2wvCit0ZW5zbAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eICBcXGxldFxcdGVucm09XFxpbmRybSBcXGxldFxcdGVuaXQ9XFxpbmRpdCBcXGxl dFxcdGVuc2w9XFwvCit0ZW5zeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9 XFx0ZXh0c2YgXFxsZXRcXHRlbmk9XFx0ZXh0aSBcXGxldFxcdGVuc3k9XFwvCit0ZW5zeQl0ZXgt c3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9XFxjaGFwc2YgXFxsZXRcXHRlbmk9XFxj aGFwaSBcXGxldFxcdGVuc3k9XFwvCit0ZW5zeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxl dFxcdGVuc2Y9XFxzZWNzZiBcXGxldFxcdGVuaT1cXHNlY2kgXFxsZXRcXHRlbnN5PVxcc2UvCit0 ZW5zeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9XFxzc2Vjc2YgXFxsZXRc XHRlbmk9XFxzc2VjaSBcXGxldFxcdGVuc3k9XFwvCit0ZW5zeQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eICBcXGxldFxcdGVuc2Y9XFxpbmRzZiBcXGxldFxcdGVuaT1cXGluZGkgXFxsZXRcXHRlbnN5 PVxcaW4vCit0ZW50dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRme1xcbGV0XFx0ZW50 dD1cXGRlZnR0IFxcbGV0XFx0ZW5iZiA9IFxcZGVmYmYgXFxiZn0vCit0ZW50dAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eICBcXGxldFxcdGVuYmY9XFx0ZXh0YmYgXFxsZXRcXHRlbnR0PVxcdGV4dHR0 IFxcbGV0XFxzbWFsbC8KK3RlbnR0CXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5i Zj1cXGNoYXBiZiBcXGxldFxcdGVudHQ9XFxjaGFwdHQgXFxsZXRcXHNtYWxsLwordGVudHQJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxsZXRcXHRlbmJmPVxcc2VjYmYgXFxsZXRcXHRlbnR0PVxc c2VjdHQgXFxsZXRcXHNtYWxsY2EvCit0ZW50dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxl dFxcdGVuYmY9XFxzc2VjYmYgXFxsZXRcXHRlbnR0PVxcc3NlY3R0IFxcbGV0XFxzbWFsbC8KK3Rl bnR0CXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5iZj1cXGluZGJmIFxcbGV0XFx0 ZW50dD1cXGluZHR0IFxcbGV0XFxzbWFsbGNhLwordGVudHQJdGV4LXNyYy90ZXhpbmZvLnRleAkv XntcXGxldFxcdGVudHQ9XFxzZWN0dCBcXGxldFxcdHQ9XFxzZWN0dCBcXGxldFxcc2Y9XFxzZWN0 dCQvCiB0ZXJtCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBpbXBvcnRfbW9kdWxlIHRlcm0u JC8KIHRlcm1pbmF0ZQlvYmpjLXNyYy9TdWJwcm9jZXNzLm0JL14tIHRlcm1pbmF0ZTpzZW5kZXIk LwogdGVybWluYXRlSW5wdXQJb2JqYy1zcmMvU3VicHJvY2Vzcy5tCS9eLSB0ZXJtaW5hdGVJbnB1 dCQvCkBAIC00NDE1LDcgKzQ2OTgsMTIgQEAgdGVzdC5tZTIyYglsdWEtc3JjL3Rlc3QubHVhCS9e ICAgbG9jYWwgZnVuY3Rpb24gdGVzdC5tZTIyYiAob25lKSQvCiB0ZXN0Lm1lXzIyYQlsdWEtc3Jj L3Rlc3QubHVhCS9eICAgZnVuY3Rpb24gdGVzdC5tZV8yMmEob25lLCB0d28pJC8KIHRlc3QxCXJz LXNyYy90ZXN0LnJzCS9eZm4gdGVzdDEoKSB7JC8KIHRlc3RfdW5kZWZpbmVkCWMtc3JjL2VtYWNz L3NyYy9rZXlib2FyZC5jCS9edGVzdF91bmRlZmluZWQgKExpc3BfT2JqZWN0IGJpbmRpbmcpJC8K K3RleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHRleHtcXGJlZ2luZ3JvdXAkLwordGV4 aW5mb3ZlcnNpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0ZXhpbmZvdmVyc2lvbnsy LjczfSQvCit0ZXh0Zm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0ZXh0Zm9udHN7 JSQvCiB0ZXh0dHJlZWxpc3QJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXnRleHR0cmVlbGlzdChb XSkuJC8KK3RoZWFyZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGRlZlxcdGhlYXJneyMxfSUk LwordGhlYXJnCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcaWZ4XFx0aGVhcmdcXGVtcHR5IFxc ZGVmXFx0aGVhcmd7MX1cXGZpJC8KIHRoZXJlLWlzLWEtPS1pbi10aGUtbWlkZGxlIQlzY20tc3Jj L3Rlc3Quc2NtCS9eKGRlZmluZSAodGhlcmUtaXMtYS09LWluLXRoZS1taWRkbGUhKSAjdCkkLwog dGhpcwljLXNyYy9hL2IvYi5jCTEKIHRoaXMtY29tbWFuZC1rZXlzCWMtc3JjL2VtYWNzL3NyYy9r ZXlib2FyZC5jCS9eREVGVU4gKCJ0aGlzLWNvbW1hbmQta2V5cyIsIEZ0aGlzX2NvbW1hbmRfa2V5 cywgU3QvCkBAIC00NDI3LDYgKzQ3MTUsMzYgQEAgdGhpc19jb21tYW5kX2tleV9jb3VudF9yZXNl dAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkxMTIKIHRoaXNfY29tbWFuZF9rZXlzCWMtc3Jj L2VtYWNzL3NyYy9rZXlib2FyZC5jCTEwNwogdGhpc19maWxlX3RvYwlwZXJsLXNyYy9odGxtaWZ5 LWN5c3RpYwkyOQogdGhpc19zaW5nbGVfY29tbWFuZF9rZXlfc3RhcnQJYy1zcmMvZW1hY3Mvc3Jj L2tleWJvYXJkLmMJMTI1Cit0aGlzY2hhcHRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHRoaXNjaGFwdGVye30gXFxkZWZcXHRoaXNzZWN0aW9ue30kLwordGhpc2NoYXB0ZXIJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxceGRlZlxcdGhpc2NoYXB0ZXJ7Q2hhcHRlciBcXHRoZVxcY2hhcG5v OiBcXG5vZXhwYW5kXFx0LwordGhpc2NoYXB0ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxceGRl ZlxcdGhpc2NoYXB0ZXJ7QXBwZW5kaXggXFxhcHBlbmRpeGxldHRlcjogXFxub2V4cC8KK3RoaXNj aGFwdGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXHRoaXNjaGFwdGVyeyMxfVxcZ2Rl ZlxcdGhpc3NlY3Rpb257IzF9JSQvCit0aGlzY2hhcHRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9e ICAgXFx1bm51bWJjaGFwbWFjcm97IzF9XFxkZWZcXHRoaXNjaGFwdGVye30lJC8KK3RoaXNjaGFw dGVybmFtZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHRoaXNjaGFwdGVybmFtZXtObyBD aGFwdGVyIFRpdGxlfSQvCit0aGlzY2hhcHRlcm5hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc Z2RlZlxcdGhpc2NoYXB0ZXJuYW1leyMxfSUkLwordGhpc2NoYXB0ZXJuYW1lCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGdkZWZcXHRoaXNjaGFwdGVybmFtZXsjMX0lJC8KK3RoaXNmaWxlCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5jbHVkZXp6eiAjMXt7XFxkZWZcXHRoaXNmaWxleyMx fVxcaW5wdXQgIzEkLwordGhpc2ZpbGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0aGlz ZmlsZXt9JC8KK3RoaXNmb290bm8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZWRlZlxcdGhpc2Zv b3Rub3skXntcXHRoZVxcZm9vdG5vdGVub30kfSUkLwordGhpc3BhZ2UJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcbGV0XFx0aGlzcGFnZT1cXGZvbGlvJC8KK3RoaXNzZWN0aW9uCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcdGhpc2NoYXB0ZXJ7fSBcXGRlZlxcdGhpc3NlY3Rpb257fSQvCit0 aGlzc2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFx0aGlzc2VjdGlvbnsjMX0l JC8KK3RoaXNzZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXHRoaXNzZWN0aW9u eyMxfSUkLwordGhpc3NlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcdGhpc2No YXB0ZXJ7IzF9XFxnZGVmXFx0aGlzc2VjdGlvbnsjMX0lJC8KK3RoaXNzZWN0aW9uCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGdkZWZcXHRoaXNzZWN0aW9ueyMxfVxcc2VjaGVhZGluZyB7IzF9e1xc dGhlXFxjaGFwbm99LwordGhpc3NlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxc dGhpc3NlY3Rpb257IzF9XFxzZWNoZWFkaW5nIHsjMX17XFxhcHBlbmRpeGxldC8KK3RoaXNzZWN0 aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXHBsYWluc2VjaGVhZGluZyB7IzF9XFxnZGVmXFx0 aGlzc2VjdGlvbnsjMX0lJC8KK3RoaXNzZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdk ZWZcXHRoaXNzZWN0aW9ueyMxfVxcc3Vic3Vic2Vjbm89MCBcXGdsb2JhbFxcYWR2YW5jLwordGhp c3NlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcdGhpc3NlY3Rpb257IzF9XFxz dWJzdWJzZWNubz0wIFxcZ2xvYmFsXFxhZHZhbmMvCit0aGlzc2VjdGlvbgl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxwbGFpbnNlY2hlYWRpbmcgeyMxfVxcZ2RlZlxcdGhpc3NlY3Rpb257IzF9JSQv Cit0aGlzc2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFx0aGlzc2VjdGlvbnsj MX1cXGdsb2JhbFxcYWR2YW5jZSBcXHN1YnN1YnNlY25vIC8KK3RoaXNzZWN0aW9uCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGdkZWZcXHRoaXNzZWN0aW9ueyMxfVxcZ2xvYmFsXFxhZHZhbmNlIFxc c3Vic3Vic2Vjbm8gLwordGhpc3NlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxccGxhaW5z ZWNoZWFkaW5nIHsjMX1cXGdkZWZcXHRoaXNzZWN0aW9ueyMxfSUkLwordGhpc3RpdGxlCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdGhpc3RpdGxle05vIFRpdGxlfSQvCit0aGlzdGl0bGUJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZXR0aXRsZXp6eiAjMXtcXGdkZWZcXHRoaXN0 aXRsZXsjMX19JC8KK3RocmVlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxca2JkZm9vIzEj MiMzXFxwYXJ7XFxkZWZcXG9uZXsjMX1cXGRlZlxcdGhyZWV7IzN9XFxkLwordGhyZWV4CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxca2JkZm9vIzEjMiMzXFxwYXJ7XFxkZWZcXG9uZXsjMX1c XGRlZlxcdGhyZWV7IzN9XFxkLwordGllCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdGll e1xccGVuYWx0eSAxMDAwMFxcIH0gICAgICUgU2F2ZSBwbGFpbiB0ZXggZGUvCiB0aWdub3JlCWMt c3JjL2V0YWdzLmMJMjQzMwogdGltZXJfY2hlY2sJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJ L150aW1lcl9jaGVjayAodm9pZCkkLwogdGltZXJfY2hlY2tfMgljLXNyYy9lbWFjcy9zcmMva2V5 Ym9hcmQuYwkvXnRpbWVyX2NoZWNrXzIgKExpc3BfT2JqZWN0IHRpbWVycywgTGlzcF9PYmplY3Qg aWRsLwpAQCAtNDQzNyw5ICs0NzU1LDE2IEBAIHRpbWVyX3N0YXJ0X2lkbGUJYy1zcmMvZW1hY3Mv c3JjL2tleWJvYXJkLmMJL150aW1lcl9zdGFydF9pZGxlICh2b2lkKSQvCiB0aW1lcl9zdG9wX2lk bGUJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL150aW1lcl9zdG9wX2lkbGUgKHZvaWQpJC8K IHRpbWVyc19ydW4JYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJMzIwCiB0aW5ib2R5CWMtc3Jj L2V0YWdzLmMJMjQzMQordGluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdGluZGV4 IHtcXHRwaW5kZXh9JC8KK3RpdGxlCXRleC1zcmMvdGV4aW5mby50ZXgJL14gICBcXGRlZlxcdGl0 bGV7XFxwYXJzZWFyZ1xcdGl0bGV6enp9JSQvCit0aXRsZWZvbnQJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFx0aXRsZWZvbnQjMXt7XFx0aXRsZXJtICMxfX0kLwordGl0bGVwYWdlCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGxldFxcdGl0bGVwYWdlPVxccmVsYXgkLwordGl0bGVwYWdlCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdGl0bGVwYWdle1xcYmVnaW5ncm91cCBcXHBhcmlu ZGVudD0wcHQgXFx0ZXh0Zm9uLwordGl0bGV6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgIFxc ZGVmXFx0aXRsZXp6eiMjMXtcXGxlZnRsaW5le1xcdGl0bGVmb250eyMjMX19JC8KIHRrZXlzZWVu CWMtc3JjL2V0YWdzLmMJMjQyOQogdG5vbmUJYy1zcmMvZXRhZ3MuYwkyNDI4CiB0b2NfbGluZQlw ZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkvXnN1YiB0b2NfbGluZSAoJCkkLwordG9kYXkJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0b2RheXtcXG51bWJlclxcZGF5XFxzcGFjZSQvCiB0b2dn bGVEZXNjcmlwdGlvbglvYmpjLXNyYy9QYWNrSW5zcC5tCS9eLXRvZ2dsZURlc2NyaXB0aW9uJC8K IHRvawljLXNyYy9ldGFncy5jCTI0OTEKIHRva2VuCWMtc3JjL2V0YWdzLmMJMjUwOApAQCAtNDQ1 Miw2ICs0Nzc3LDggQEAgdG9vbF9iYXJfaXRlbV9wcm9wZXJ0aWVzCWMtc3JjL2VtYWNzL3NyYy9r ZXlib2FyZC5jCTc5NzAKIHRvb2xfYmFyX2l0ZW1zCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5j CS9edG9vbF9iYXJfaXRlbXMgKExpc3BfT2JqZWN0IHJldXNlLCBpbnQgKm5pdGVtcykkLwogdG9v bF9iYXJfaXRlbXNfdmVjdG9yCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTc5NjUKIHRvb2xr aXRfbWVudWJhcl9pbl91c2UJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL150b29sa2l0X21l bnViYXJfaW5fdXNlIChzdHJ1Y3QgZnJhbWUgKmYpJC8KK3RvcAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxsZXRcXHRvcD1cXHJlbGF4JC8KK3RvcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRl clxcZGVmXFx0b3B7XFxwYXJzZWFyZ1xcdW5udW1iZXJlZHp6en0kLwogdG9wLWxldmVsCWMtc3Jj L2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eREVGVU4gKCJ0b3AtbGV2ZWwiLCBGdG9wX2xldmVsLCBT dG9wX2xldmVsLCAwLCAwLCAvCiB0b3BfbGV2ZWwJbWVyYy1zcmMvYWNjdW11bGF0b3IubQkvXjot IHR5cGUgdG9wX2xldmVsJC8KIHRvcF9sZXZlbF8xCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5j CS9edG9wX2xldmVsXzEgKExpc3BfT2JqZWN0IGlnbm9yZSkkLwpAQCAtNDQ2MCwxNyArNDc4Nywy NiBAQCB0b3RhbF9rZXlzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTk3CiB0b3RhbF9zaXpl X29mX2VudHJpZXMJYy1zcmMvZXRhZ3MuYwkvXnRvdGFsX3NpemVfb2ZfZW50cmllcyAocmVnaXN0 ZXIgbm9kZSAqbnApJC8KIHRvdGFsX3N1cnJvdW5kaW5nCWNwLXNyYy9jb253YXkuY3BwCS9eaW50 IHNpdGU6OnRvdGFsX3N1cnJvdW5kaW5nKHZvaWQpJC8KIHRvdGFsbHlfdW5ibG9ja19pbnB1dAlj LXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnRvdGFsbHlfdW5ibG9ja19pbnB1dCAodm9pZCkk LwordHBhcmdzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGJlZ2luZ3JvdXBcXGRlZm5hbWUgeyMy fXsjMX1cXGRlZnRwYXJnc3sjM31cXGVuZGdyb3UvCiB0cGNtZAljLXNyYy9oLmgJOAogdHBjbWQJ Yy1zcmMvaC5oCTE1Cit0cGhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnRw e1xcZGVmdnJwYXJzZWJvZHlcXEVkZWZ0cFxcZGVmdHB4XFxkZWZ0cGhlYWQvCit0cHhcZGVmdHBo ZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0cHtcXGRlZnZycGFyc2Vib2R5 XFxFZGVmdHBcXGRlZnRweFxcZGVmdHBoZWFkLwogdHJhY2stbW91c2UJYy1zcmMvZW1hY3Mvc3Jj L2tleWJvYXJkLmMJL15ERUZVTiAoImludGVybmFsLS10cmFjay1tb3VzZSIsIEZ0cmFja19tb3Vz ZSwgU3RyYS8KIHRyYWNraW5nX29mZgljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnRyYWNr aW5nX29mZiAoTGlzcF9PYmplY3Qgb2xkX3ZhbHVlKSQvCiB0cmFmZmljX2xpZ2h0CWNwLXNyYy9j b253YXkuY3BwCS9edm9pZCB0cmFmZmljX2xpZ2h0KGludCB4LCBpbnQgeSkkLwogdHJhbnNsYXRl CWMtc3JjL2VtYWNzL3NyYy9yZWdleC5oCTM2MQogdHJlYXRzCWNwLXNyYy9jLkMJMTMxCiB0dAlw cm9sLXNyYy9uYXRkZWQucHJvbG9nCS9edHQ6LSQvCi10dD1jbXR0MTAJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZm9udFxcZGVmdHQ9Y210dDEwIHNjYWxlZCBcXG1hZ3N0ZXAxJC8KK3R0CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGZvbnRcXGRlZnR0PWNtdHQxMCBzY2FsZWQgXFxtYWdzdGVwMSQv Cit0dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRme1xcbGV0XFx0ZW50dD1cXGRlZnR0 IFxcbGV0XFx0ZW5iZiA9IFxcZGVmYmYgXFxiZn0vCit0dAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXHR0e1xccmVhbGJhY2tzbGFzaCB0dH0lJC8KK3R0CXRleC1zcmMvdGV4aW5mby50ZXgJ L157XFxsZXRcXHRlbnR0PVxcc2VjdHQgXFxsZXRcXHR0PVxcc2VjdHQgXFxsZXRcXHNmPVxcc2Vj dHQkLwordHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0dHtcXHJlYWxiYWNrc2xhc2gg dHR9JC8KK3R0Zm9udAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHR0Zm9udCA9IFxcdCQv CiB0dHlfcmVhZF9hdmFpbF9pbnB1dAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnR0eV9y ZWFkX2F2YWlsX2lucHV0IChzdHJ1Y3QgdGVybWluYWwgKnRlcm1pbmFsLCQvCiB0dHlwZXNlZW4J Yy1zcmMvZXRhZ3MuYwkyNDMwCit0dXJub2ZmYWN0aXZlCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcdHVybm9mZmFjdGl2ZXtcXGxldCI9XFxub3JtYWxkb3VibGVxdW90ZSQvCiB0eXBkZWYJ Yy1zcmMvZXRhZ3MuYwkyNDM0CiB0eXBlCWMtc3JjL2V0YWdzLmMJMjI3MQogdHlwZQljLXNyYy9l bWFjcy9zcmMvZ21hbGxvYy5jCTE0NQpAQCAtNDQ4NSwxMCArNDgyMSwyMiBAQCB0eXBlCWMtc3Jj L2VtYWNzL3NyYy9saXNwLmgJMjI5NgogdHlwZQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTIzMDQK IHR5cGUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyMzY0CiB0eXBlCWMtc3JjL2VtYWNzL3NyYy9s aXNwLmgJMzAyNQordHlwZWZuaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVm dHlwZWZue1xcZGVmbWV0aHBhcnNlYm9keVxcRWRlZnR5cGVmblxcZGVmdHlwLwordHlwZWZuaGVh ZGVyeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGVmbmhlYWRlciAjMSMyIzN7 XFxkZWZ0eXBlZm5oZWFkZXJ4eyMxfXsvCit0eXBlZm54XGRlZnR5cGVmbmhlYWRlcgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGVmbntcXGRlZm1ldGhwYXJzZWJvZHlcXEVkZWZ0 eXBlZm5cXGRlZnR5cC8KIHR5cGVmdW5hcmdzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZnR5 cGVmdW5hcmdzIHsjM31cXGVuZGdyb3VwICUkLwogdHlwZWZ1bmFyZ3MJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmdHlwZWZ1bmFyZ3MgeyM0fVxcZW5kZ3JvdXAgJSQvCit0eXBlZnVuaGVhZGVy CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZ1bntcXGRlZnBhcnNlYm9keVxc RWRlZnR5cGVmdW5cXGRlZnR5cGVmLwordHlwZWZ1bmhlYWRlcngJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxkZWZ0eXBlZnVuaGVhZGVyICMxIzJ7XFxkZWZ0eXBlZnVuaGVhZGVyeHsjMX0j LwordHlwZWZ1bnhcZGVmdHlwZWZ1bmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGRlZnR5cGVmdW57XFxkZWZwYXJzZWJvZHlcXEVkZWZ0eXBlZnVuXFxkZWZ0eXBlZi8KK3R5cGVt YXJnaW4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbmV3c2tpcFxcZGVmdHlwZW1hcmdpbiBcXGRl ZnR5cGVtYXJnaW49MTJwdCQvCiB0eXBlbWFyZ2luCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG5l d3NraXBcXGRlZnR5cGVtYXJnaW4gXFxkZWZ0eXBlbWFyZ2luPTEycHQkLwordHlwZW1hcmdpbgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxzZXRib3gwPVxcaGJveHtcXGhza2lwIFxcZGVmbGFzdGFy Z21hcmdpbntcXHJtICMyfVxcaHMvCiB0eXBlbWFyZ2luCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XHJsYXB7XFxyaWdodGxpbmV7e1xccm0gIzJ9XFxoc2tpcCBcXGRlZnR5cGVtYXJnaW59fX0lLwor dHlwZXZhcmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGV2YXJ7XFxk ZWZ2YXJwYXJzZWJvZHlcXEVkZWZ0eXBldmFyXFxkZWZ0eS8KK3R5cGV2YXJ4XGRlZnR5cGV2YXJo ZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBldmFye1xcZGVmdmFycGFy c2Vib2R5XFxFZGVmdHlwZXZhclxcZGVmdHkvCit0eXBldnJoZWFkZXIJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxkZWZ0eXBldnJ7XFxkZWZ2cnBhcnNlYm9keVxcRWRlZnR5cGV2clxcZGVm dHlwZXYvCit0eXBldnJ4XGRlZnR5cGV2cmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGRlZnR5cGV2cntcXGRlZnZycGFyc2Vib2R5XFxFZGVmdHlwZXZyXFxkZWZ0eXBldi8KIHUJ Yy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyMzk3CiB1X2FueQljLXNyYy9lbWFjcy9zcmMvbGlzcC5o CTIyMTQKIHVfYm9vbGZ3ZAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTIzNzEKQEAgLTQ1MDEsNiAr NDg0OSw3IEBAIHVfbWFya2VyCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMjIxNgogdV9vYmpmd2QJ Yy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyMzcyCiB1X292ZXJsYXkJYy1zcmMvZW1hY3Mvc3JjL2xp c3AuaAkyMjE3CiB1X3NhdmVfdmFsdWUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyMjE4Cit1bmFy Z3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcYmVnaW5ncm91cFxcZGVmbmFtZSB7IzJ9eyMxfVxc ZGVmdW5hcmdzeyMzfVxcZW5kZ3JvdS8KIHVuYXJncwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZ1bmFyZ3MgeyMyfVxcZW5kZ3JvdXAgJSQvCiB1bmFyZ3MJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmdW5hcmdzIHsjMn1cXGVuZGdyb3VwICUkLwogdW5hcmdzCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZnVuYXJncyB7IzJ9XFxlbmRncm91cCAlJC8KQEAgLTQ1MTAsNyArNDg1OSwzNyBA QCB1bmJsb2NrX2lucHV0CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9edW5ibG9ja19pbnB1 dCAodm9pZCkkLwogdW5ibG9ja19pbnB1dF90bwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkv XnVuYmxvY2tfaW5wdXRfdG8gKGludCBsZXZlbCkkLwogdW5jaGFyCWMtc3JjL2guaAk5OQogdW5l eHBhbmQtYWJicmV2CWMtc3JjL2FiYnJldi5jCS9eREVGVU4gKCJ1bmV4cGFuZC1hYmJyZXYiLCBG dW5leHBhbmRfYWJicmV2LCBTdW5leHAvCit1bmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGRlZnVue1xcZGVmcGFyc2Vib2R5XFxFZGVmdW5cXGRlZnVueFxcZGVmdW5oZWFkZXIv CiB1bml2CW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBpbXBvcnRfbW9kdWxlIHVuaXYuJC8K K3VubmNoZm9wZW4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx1bm5jaGZvcGVuICMxeyUk LwordW5uY2hmcGxhaW4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx1bm5jaGZwbGFpbiAj MXslJC8KK3VubnVtYmNoYXBlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgICAgXFxsZXRc XHVubnVtYmNoYXBlbnRyeSA9IFxcc2hvcnR1bm51bWJlcmVkZW50cnkvCit1bm51bWJjaGFwZW50 cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx1bm51bWJjaGFwZW50cnkjMSMye1xcZG9j aGFwZW50cnl7IzF9eyMyfX0kLwordW5udW1iY2hhcG1hY3JvCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGdsb2JhbFxcbGV0XFx1bm51bWJjaGFwbWFjcm89XFx1bm5jaGZwbGFpbn0kLwordW5udW1i Y2hhcG1hY3JvCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdsb2JhbFxcbGV0XFx1bm51bWJjaGFw bWFjcm89XFx1bm5jaGZvcGVufSQvCit1bm51bWJlcmVkCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGxldFxcdW5udW1iZXJlZD1cXHJlbGF4JC8KK3VubnVtYmVyZWQJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcb3V0ZXJcXGRlZlxcdW5udW1iZXJlZHtcXHBhcnNlYXJnXFx1bm51bWJlcmVkenp6fSQv Cit1bm51bWJlcmVkc2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcdW5udW1iZXJlZHNl Yz1cXHJlbGF4JC8KK3VubnVtYmVyZWRzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJc XGRlZlxcdW5udW1iZXJlZHNlY3tcXHBhcnNlYXJnXFx1bm51bWJlcmVkc2VjenovCit1bm51bWJl cmVkc2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHVubnVtYmVyZWRzZWN0aW9u PVxccmVsYXgkLwordW5udW1iZXJlZHNlY3p6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHVubnVtYmVyZWRzZWN6enogIzF7XFxzZWNjaGVja3t1bm51bWJlcmVkc2VjfSUvCit1bm51bWJl cmVkc3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcdW5udW1iZXJlZHN1YnNlYz1c XHJlbGF4JC8KK3VubnVtYmVyZWRzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJc XGRlZlxcdW5udW1iZXJlZHN1YnNlY3tcXHBhcnNlYXJnXFx1bm51bWJlcmVkc3UvCit1bm51bWJl cmVkc3Vic2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHVubnVtYmVyZWRzdWJz ZWN0aW9uPVxccmVsYXgkLwordW5udW1iZXJlZHN1YnNlY3p6egl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXHVubnVtYmVyZWRzdWJzZWN6enogIzF7XFxzZWNjaGVja3t1bm51bWJlcmVkc3Uv Cit1bm51bWJlcmVkc3Vic3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcdW5udW1i ZXJlZHN1YnN1YnNlYz1cXHJlbGF4JC8KK3VubnVtYmVyZWRzdWJzdWJzZWMJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcb3V0ZXJcXGRlZlxcdW5udW1iZXJlZHN1YnN1YnNlY3tcXHBhcnNlYXJnXFx1 bm51bWJlcmUvCit1bm51bWJlcmVkc3Vic3Vic2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxsZXRcXHVubnVtYmVyZWRzdWJzdWJzZWN0aW9uPVxccmVsYXgkLwordW5udW1iZXJlZHN1YnN1 YnNlY3p6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHVubnVtYmVyZWRzdWJzdWJzZWN6 enogIzF7XFxzZWNjaGVja3t1bm51bWJlcmUvCit1bm51bWJlcmVkenp6CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcdW5udW1iZXJlZHp6eiAjMXtcXHNlY2NoZWNre3VubnVtYmVyZWR9JSQv Cit1bm51bWJub2RlcmVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdW5udW1ibm9kZXJl ZntcXGlmeFxcbGFzdG5vZGVcXHJlbGF4XFxlbHNlJC8KK3VubnVtYnNlY2VudHJ5CXRleC1zcmMv dGV4aW5mby50ZXgJL14gICAgICBcXGRlZlxcdW5udW1ic2VjZW50cnkgIyMxIyMye30kLwordW5u dW1ic2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx1bm51bWJzZWNlbnRyeSMx IzJ7XFxkb3NlY2VudHJ5eyMxfXsjMn19JC8KK3VubnVtYnNldHJlZgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXHVubnVtYnNldHJlZiMxeyUkLwordW5udW1ic3Vic2VjZW50cnkJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXiAgICAgIFxcZGVmXFx1bm51bWJzdWJzZWNlbnRyeSAjIzEjIzJ7fSQv Cit1bm51bWJzdWJzZWNlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHVubnVtYnN1 YnNlY2VudHJ5IzEjMntcXGRvc3Vic2VjZW50cnl7IzF9eyMyfX0vCit1bm51bWJzdWJzdWJzZWNl bnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgICAgXFxkZWZcXHVubnVtYnN1YnN1YnNlY2Vu dHJ5ICMjMSMjMnt9JC8KK3VubnVtYnN1YnN1YnNlY2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcdW5udW1ic3Vic3Vic2VjZW50cnkjMSMye1xcZG9zdWJzdWJzZWNlbnRyeXsjMS8K IHVucmF2ZWxfdW5pdgltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gc29tZSBbVF0gcHJlZCB1 bnJhdmVsX3VuaXYodW5pdjo6aW4sIFQ6Om91dCkgaXMvCiB1bnJlYWRfc3dpdGNoX2ZyYW1lCWMt c3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTIwNAogdW5zaWduZWRwCXktc3JjL2NjY3AueQkxMTIK QEAgLTQ1MTgsNyArNDg5Nyw5IEBAIHVud2luZAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTI5NjIK IHVud2luZF9pbnQJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyOTcyCiB1bndpbmRfcHRyCWMtc3Jj L2VtYWNzL3NyYy9saXNwLmgJMjk2NwogdW53aW5kX3ZvaWQJYy1zcmMvZW1hY3Mvc3JjL2xpc3Au aAkyOTc2Cit1bnhcZGVmdW5oZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ1 bntcXGRlZnBhcnNlYm9keVxcRWRlZnVuXFxkZWZ1bnhcXGRlZnVuaGVhZGVyLwogdXBkYXRlX2Fj Y3VtdWxhdG9yX3ByZWQJbWVyYy1zcmMvYWNjdW11bGF0b3IubQkvXjotIHByZWQgdXBkYXRlX2Fj Y3VtdWxhdG9yX3ByZWQocHJlZF9pZDo6aW4sIHByb2NfLwordXBwZXJjYXNlZW51bWVyYXRlCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdXBwZXJjYXNlZW51bWVyYXRleyUkLwogdXByaW50 bWF4X3QJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxNDkKIHVwcmludG1heF90CWMtc3JjL2VtYWNz L3NyYy9saXNwLmgJMTU0CiB1c2FnZQlwZXJsLXNyYy95YWdyaXAucGwJL15zdWIgdXNhZ2UgeyQv CkBAIC00NTQ2LDIyICs0OTI3LDQ3IEBAIHZhbHVlCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJNjg3 CiB2YWx1ZQl5LXNyYy9jY2NwLnkJMTEyCiB2YXIJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJ MTEwMjMKIHZhcgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTMxMzcKK3Zhcgl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxsZXRcXHZhcj1cXHNtYXJ0aXRhbGljJC8KK3Zhcgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXHZhciMjMXtcXHJlYWxiYWNrc2xhc2ggdmFyIHsjIzF9fSUkLwordmFyCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcdmFyPVxcaW5kZXhkdW1teWZvbnQkLwordmFyCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdmFyIyMxe1xccmVhbGJhY2tzbGFzaCB2YXIgeyMj MX19JC8KIHZhcmFyZ3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmdmFyYXJncyB7IzN9XFxl bmRncm91cCAlJC8KIHZhcmFyZ3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmdmFyYXJncyB7 IzN9XFxlbmRncm91cCAlJC8KK3ZhcmFyZ3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcYmVnaW5n cm91cFxcZGVmbmFtZSB7IzJ9eyMxfVxcZGVmdmFyYXJnc3sjM31cXGVuZGdyby8KIHZhcmFyZ3MJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmdmFyYXJncyB7IzJ9XFxlbmRncm91cCAlJC8KIHZh cmFyZ3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmdmFyYXJncyB7IzJ9XFxlbmRncm91cCAl JC8KK3ZhcmFyZ3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0cGFyZ3MgIzF7XFxi ZiBcXGRlZnZhcmFyZ3N7IzF9fSQvCit2YXJoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxkZWZ2YXJ7XFxkZWZ2YXJwYXJzZWJvZHlcXEVkZWZ2YXJcXGRlZnZhcnhcXGRlZnZhLwor dmFycGFyc2Vib2R5XEVkZWZvcHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZvcHR7 XFxkZWZ2YXJwYXJzZWJvZHlcXEVkZWZvcHRcXGRlZm9wdHhcXGRlZm9wLwordmFycGFyc2Vib2R5 XEVkZWZ0eXBldmFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZXZhcntcXGRl ZnZhcnBhcnNlYm9keVxcRWRlZnR5cGV2YXJcXGRlZnR5LwordmFycGFyc2Vib2R5XEVkZWZ2YXIJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ2YXJ7XFxkZWZ2YXJwYXJzZWJvZHlcXEVk ZWZ2YXJcXGRlZnZhcnhcXGRlZnZhLwogdmFyc2V0CW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146 LSBpbXBvcnRfbW9kdWxlIHZhcnNldC4kLwordmFyeFxkZWZ2YXJoZWFkZXIJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxkZWZ2YXJ7XFxkZWZ2YXJwYXJzZWJvZHlcXEVkZWZ2YXJcXGRlZnZh cnhcXGRlZnZhLwogdmNvcHkJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXnZjb3B5IChMaXNwX09i amVjdCB2LCBwdHJkaWZmX3Qgb2Zmc2V0LCBMaXNwX09iamVjLwogdmVjdG9ybGlrZV9oZWFkZXIJ Yy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxMzQzCiB2ZXJkZQljcC1zcmMvYy5DCTQwCiB2ZXJpZnkt dGFncy10YWJsZS1mdW5jdGlvbgllbC1zcmMvZW1hY3MvbGlzcC9wcm9nbW9kZXMvZXRhZ3MuZWwJ L14oZGVmdmFyIHZlcmlmeS10YWdzLXRhYmxlLWZ1bmN0aW9uIG5pbCQvCiB2ZXJpZnlfYXNjaWkJ Yy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXiMgZGVmaW5lIHZlcmlmeV9hc2NpaShzdHIpIChzdHIp JC8KIHZpZ25vcmUJYy1zcmMvZXRhZ3MuYwkyNDE3Cit2aW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFx2aW5kZXgge1xcdnJpbmRleH0kLwogdmlzaXQtdGFncy10YWJsZQllbC1zcmMv ZW1hY3MvbGlzcC9wcm9nbW9kZXMvZXRhZ3MuZWwJL14oZGVmdW4gdmlzaXQtdGFncy10YWJsZSAo ZmlsZSAmb3B0aW9uYWwgbG9jYWwpJC8KIHZpc2l0LXRhZ3MtdGFibGUtYnVmZmVyCWVsLXNyYy9l bWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihkZWZ1biB2aXNpdC10YWdzLXRhYmxlLWJ1 ZmZlciAoJm9wdGlvbmFsIGNvbnQpJC8KIHZvaWQJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXklO TElORSB2b2lkIChjaGVja19jb25zX2xpc3QpICh2b2lkKSB7IGxpc3BfaF9jaGVjLwogdm9pZGZ1 bmNwdHIJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyMTA4CiB2b2lkdmFsCXktc3JjL2NjY3AueQkx MTUKK3ZyaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdnJ7XFxkZWZ2cnBh cnNlYm9keVxcRWRlZnZyXFxkZWZ2cnhcXGRlZnZyaGVhZC8KK3ZyaXRlbWluZGV4CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcdnJpdGVtaW5kZXggIzF7XFxkb2luZCB7dnJ9e1xcY29kZXsj MX19fSUkLwordnJwYXJzZWJvZHlcRWRlZml2YXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxkZWZpdmFye1xcZGVmdnJwYXJzZWJvZHlcXEVkZWZpdmFyXFxkZWZpdmFyeFxcZGVmLwordnJw YXJzZWJvZHlcRWRlZnRwCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHB7XFxkZWZ2 cnBhcnNlYm9keVxcRWRlZnRwXFxkZWZ0cHhcXGRlZnRwaGVhZC8KK3ZycGFyc2Vib2R5XEVkZWZ0 eXBldnIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBldnJ7XFxkZWZ2cnBhcnNl Ym9keVxcRWRlZnR5cGV2clxcZGVmdHlwZXYvCit2cnBhcnNlYm9keVxFZGVmdnIJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ2cntcXGRlZnZycGFyc2Vib2R5XFxFZGVmdnJcXGRlZnZy eFxcZGVmdnJoZWFkLwordnJ4XGRlZnZyaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcZGVmdnJ7XFxkZWZ2cnBhcnNlYm9keVxcRWRlZnZyXFxkZWZ2cnhcXGRlZnZyaGVhZC8KK3Z0 YWJsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHZ0YWJsZXtcXGJlZ2luZ3JvdXBcXGlu RU5WXFxvYmV5bGluZXNcXG9iZXlzcGFjZXMvCit2dGFibGV4CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGdkZWZcXHZ0YWJsZXggIzFeXk17JSQvCit3CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcdyMxe1xcbGVhdmV2bW9kZVxcaGJveHsjMX19JC8KK3cJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFx3e1xccmVhbGJhY2tzbGFzaCB3IH0lJC8KK3cJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcbGV0XFx3PVxcaW5kZXhkdW1teWZvbnQkLwordwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXHd7XFxyZWFsYmFja3NsYXNoIHd9JC8KIHdhaXRfc3RhdHVzX3B0cl90CWMuYwkxNjEKIHdh aXRpbmdfZm9yX2lucHV0CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTE1MAogd2FybmluZwl5 LXNyYy9jY2NwLnkJL153YXJuaW5nIChtc2cpJC8KQEAgLTQ2MDksMTggKzUwMTUsMzEgQEAgeAlj cC1zcmMvY2xoZWlyLmhwcAk1OAogeAljcC1zcmMvZmFpbC5DCTEwCiB4CWNwLXNyYy9mYWlsLkMJ NDQKIHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxccmVmeHsjMS1zbnR9e30gW1xccHJpbnRlZG5v ZGVuYW1lXSwgcGFnZVxcdGllXFxyZWZ4ey8KK3gJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxccmVm eHsjMS1zbnR9e30gW1xccHJpbnRlZG5vZGVuYW1lXSwgcGFnZVxcdGllXFxyZWZ4ey8KIHgtZ2V0 LXNlbGVjdGlvbi1pbnRlcm5hbAljLmMJL15ERUZVTiAoIngtZ2V0LXNlbGVjdGlvbi1pbnRlcm5h bCIsIEZ4X2dldF9zZWxlY3Rpby8KIHgtZ2V0LXNlbGVjdGlvbi1pbnRlcm5hbAljLmMJL14gICAg ICAgRnhfZ2V0X3NlbGVjdGlvbl9pbnRlcm5hbCwgU3hfZ2V0X3NlbGVjdGlvbi8KIHhjYXJfYWRk cgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eeGNhcl9hZGRyIChMaXNwX09iamVjdCBjKSQvCiB4 Y2RyX2FkZHIJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXnhjZHJfYWRkciAoTGlzcF9PYmplY3Qg YykkLwogeGRpZmYJbWFrZS1zcmMvTWFrZWZpbGUJL154ZGlmZjogRVRBR1MgRVhUQUdTICR7aW5m aWxlc30kLworeGl0ZW0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx4aXRlbXtcXGVycm1l c3NhZ2V7QHhpdGVtIHdoaWxlIG5vdCBpbiBhIHRhYmxlLworeGl0ZW0JdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcbGV0XFx4aXRlbSA9IFxcaW50ZXJuYWxCeGl0ZW0gJSQvCit4aXRlbXN1YnRvcGl4 CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW50ZXJuYWxCeGl0ZW0gIiMxIntcXGRlZlxc eGl0ZW1zdWJ0b3BpeHsjMX0gXFxzLworeGl0ZW1zdWJ0b3BpeAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGludGVybmFsQnhpdGVteCAiIzEie1xcZGVmXFx4aXRlbXN1YnRvcGl4eyMxfSBc XC8KK3hpdGVteAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHhpdGVteHtcXGVycm1lc3Nh Z2V7QHhpdGVteCB3aGlsZSBub3QgaW4gYSB0YWIvCit4aXRlbXgJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcbGV0XFx4aXRlbXggPSBcXGludGVybmFsQnhpdGVteCAlJC8KK3hpdGVtenp6CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxceGl0ZW16enogIzF7XFxkb3N1YmluZCB7a3d9e1xcY29k ZXsjMX19e2ZvciB7XFxiLworeGtleQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHhrZXl7 XFxrZXl9JC8KIHhtYWxsb2MJYy1zcmMvZXRhZ3MuYwkvXnhtYWxsb2MgKHNpemVfdCBzaXplKSQv CiB4bmV3CWMtc3JjL2V0YWdzLmMJL14jZGVmaW5lIHhuZXcobiwgVHlwZSkgICAgICAoKFR5cGUg KikgeG1hbGxvYyAoKG4pIC8KK3hyZGVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxceHJk ZWYgIzEjMnskLwogeHJlYWxsb2MJYy1zcmMvZXRhZ3MuYwkvXnhyZWFsbG9jICh2b2lkICpwdHIs IHNpemVfdCBzaXplKSQvCit4cmVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxceHJlZiMx e1NlZSBcXHhyZWZYWyMxLCwsLCwsLF19JC8KIHhyZWYtZXRhZ3MtbG9jYXRpb24JZWwtc3JjL2Vt YWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRlZmNsYXNzIHhyZWYtZXRhZ3MtbG9jYXRp b24gKHhyZWYtbG9jYXRpb24pJC8KIHhyZWYtbG9jYXRpb24tbGluZQllbC1zcmMvZW1hY3MvbGlz cC9wcm9nbW9kZXMvZXRhZ3MuZWwJL14oY2wtZGVmbWV0aG9kIHhyZWYtbG9jYXRpb24tbGluZSAo KGwgeHJlZi1ldGFncy1sby8KIHhyZWYtbG9jYXRpb24tbWFya2VyCWVsLXNyYy9lbWFjcy9saXNw L3Byb2dtb2Rlcy9ldGFncy5lbAkvXihjbC1kZWZtZXRob2QgeHJlZi1sb2NhdGlvbi1tYXJrZXIg KChsIHhyZWYtZXRhZ3MtLwogeHJlZi1tYWtlLWV0YWdzLWxvY2F0aW9uCWVsLXNyYy9lbWFjcy9s aXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihkZWZ1biB4cmVmLW1ha2UtZXRhZ3MtbG9jYXRpb24g KHRhZy1pbmZvIGZpbGUpJC8KK3hyZWZYCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxceHJl ZlhbIzEsIzIsIzMsIzQsIzUsIzZde1xcYmVnaW5ncm91cCUkLworeHJlZnRpZQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxnZGVmXFx4cmVmdGlleyd0aWV9JC8KIHhybmV3CWMtc3JjL2V0YWdzLmMJ L14jZGVmaW5lIHhybmV3KG9wLCBuLCBUeXBlKSAoKG9wKSA9IChUeXBlICopIHhyZWFsbC8KIHh4 CW1ha2Utc3JjL01ha2VmaWxlCS9eeHg9InRoaXMgbGluZSBpcyBoZXJlIGJlY2F1c2Ugb2YgYSBm b250bG9jayBidWckLwogeHl6CXJ1Ynktc3JjL3Rlc3QxLnJ1CS9eICAgIGFsaWFzX21ldGhvZCA6 eHl6LCQvCkBAIC00Njg0LDggKzUxMDMsMjIgQEAgegljLmMJMTQ0CiB6CWMuYwkxNjQKIHoJY3At c3JjL2NsaGVpci5ocHAJNDkKIHoJY3Atc3JjL2NsaGVpci5ocHAJNTgKK3p6egl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxjaGFwdGVye1xccGFyc2VhcmdcXGNoYXB0ZXJ6enp9 JC8KK3p6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxhcHBlbmRpeHtcXHBh cnNlYXJnXFxhcHBlbmRpeHp6en0kLworenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc aW5mb2FwcGVuZGl4e1xccGFyc2VhcmdcXGFwcGVuZGl4enp6fSQvCit6enoJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxpbmZvY2hhcHRlcntcXHBhcnNlYXJnXFxjaGFwdGVyenp6fSQvCit6 enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvc2VjdGlvbntcXHBhcnNlYXJnXFxz ZWN0aW9uenp6fSQvCit6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvc3Vic2Vj dGlvbntcXHBhcnNlYXJnXFxzdWJzZWN0aW9uenp6fSQvCit6enoJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxpbmZvc3Vic3Vic2VjdGlvbntcXHBhcnNlYXJnXFxzdWJzdWJzZWN0aW9uenp6 fS8KK3sJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFx7PVxcbXlsYnJhY2UkLworewl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHs9XFxwdGV4bGJyYWNlJC8KIHwJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmfHt7XFx0dCBcXGNoYXIgJzE3NH19JC8KK3wJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcbGV0fD1cXG5vcm1hbHZlcnRpY2FsYmFyJC8KK30JdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcbGV0XFx9PVxcbXlyYnJhY2UkLworfQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRc XH09XFxwdGV4cmJyYWNlJC8KK34JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcY2F0Y29kZSBgXFxe PTcgXFxjYXRjb2RlIGBcXF89OCBcXGNhdGNvZGUgYFxcfj0xMyBcXGxldC8KIH4JdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmfnt7XFx0dCBcXGNoYXIgJzE3Nn19JC8KK34JdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcbGV0fj1cXG5vcm1hbHRpbGRlJC8KIH5BCWNwLXNyYy9jLkMJL15BOjp+QSgp IHt9JC8KIH5CCWNwLXNyYy9jLkMJL14gICAgfkIoKSB7fTskLwogfk1EaWFnQXJyYXkyCWNwLXNy Yy9NRGlhZ0FycmF5Mi5oCS9eICB+TURpYWdBcnJheTIgKHZvaWQpIHsgfSQvCmRpZmYgLS1naXQg YS90ZXN0L21hbnVhbC9ldGFncy9DVEFHUy5nb29kX2NybGYgYi90ZXN0L21hbnVhbC9ldGFncy9D VEFHUy5nb29kX2NybGYKaW5kZXggM2Q2NGZhNjNjN2EuLjI5YWMwMWQ2MDVkIDEwMDY0NAotLS0g YS90ZXN0L21hbnVhbC9ldGFncy9DVEFHUy5nb29kX2NybGYKKysrIGIvdGVzdC9tYW51YWwvZXRh Z3MvQ1RBR1MuZ29vZF9jcmxmCkBAIC0xLDMgKzEsNSBAQAorIgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXHR1cm5vZmZhY3RpdmV7XFxsZXQiPVxcbm9ybWFsZG91YmxlcXVvdGUkLworIgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXQiPVxcYWN0aXZlZG91YmxlcXVvdGUkLwogI2EtZGVm ZXItd29yZAlmb3J0aC1zcmMvdGVzdC1mb3J0aC5mdGgJL15kZWZlciAjYS1kZWZlci13b3JkJC8K ICNzb21lLXN0b3JhZ2UJZm9ydGgtc3JjL3Rlc3QtZm9ydGguZnRoCS9eMjAwMCBidWZmZXI6ICNz b21lLXN0b3JhZ2UkLwogJDB4ODAJYy1zcmMvc3lzZGVwLmgJMzIKQEAgLTMyLDE0ICszNCwyOCBA QCAkdXNlcl9jb21tZW50X2xjCXBocC1zcmMvbGNlX2Z1bmN0aW9ucy5waHAJMTE1CiAke0NIRUNL T0JKU30JbWFrZS1zcmMvTWFrZWZpbGUJL14ke0NIRUNLT0JKU306IENGTEFHUz0tZzMgLUROVUxM RlJFRUNIRUNLPTAkLwogJWNkaWZmCW1ha2Utc3JjL01ha2VmaWxlCS9eJWNkaWZmOiBDVEFHUyUg Q1RBR1MgJHtpbmZpbGVzfSQvCiAlZWRpZmYJbWFrZS1zcmMvTWFrZWZpbGUJL14lZWRpZmY6IEVU QUdTJSBFVEFHUyAke2luZmlsZXN9JC8KKyYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxc ZnVuY3Rpb25wYXJlbnN7XFxib2xkYnJheFxcbGV0Jj1cXGFtcHJtXFxwYXJlbmNvLworJgl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxub3JtYWxwYXJlbnN7XFxib2xkYnJheFxcbGV0Jj1c XGFtcG5yfSQvCisnCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcJ3t7J319JC8KKygJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcYW1wcm0jMSB7e1xccm1cXCYjMX1cXGxldCg9XFxv cHJtIFxcbGV0KT1cXGNscm1cXCB9LworKAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxi b2xkYnJheHtcXGxldCg9XFxvcG5yXFxsZXQpPVxcY2xuclxcbGV0Wz1cXGxicmJcXGwvCisoCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXG9wcm0jMSB7e1xccm1cXGNoYXJgXFwofSMxIFxc YmYgXFxsZXQoPVxcb3BuZXN0ZWQgLworKAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxpZm51bSBc XHBhcmVuY291bnQ9MSB7XFxybSBcXGNoYXIgYFxcKX1cXHNsIFxcbGV0KD1cXG9wci8KICgkXywk ZmxhZywkb3B0LCRmLCRyLEB0ZW1wCXBlcmwtc3JjL3lhZ3JpcC5wbAk4CiAoJHByb2csJF8sQGxp c3QJcGVybC1zcmMveWFncmlwLnBsCTM5CiAoJHN0cmluZywkZmxhZyxAc3RyaW5nLEB0ZW1wLEBs YXN0CXBlcmwtc3JjL3lhZ3JpcC5wbAk0MAogKGEtZm9ydGgtY29uc3RhbnQJZm9ydGgtc3JjL3Rl c3QtZm9ydGguZnRoCS9eY29uc3RhbnQgKGEtZm9ydGgtY29uc3RhbnQkLwogKGFub3RoZXItZm9y dGgtd29yZCkJZm9ydGgtc3JjL3Rlc3QtZm9ydGguZnRoCS9eOiAoYW5vdGhlci1mb3J0aC13b3Jk KSAoIC0tICkkLwogKGZvbykJZm9ydGgtc3JjL3Rlc3QtZm9ydGguZnRoCS9eOiAoZm9vKSAxIDsk LworKQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxhbXBybSMxIHt7XFxybVxcJiMxfVxc bGV0KD1cXG9wcm0gXFxsZXQpPVxcY2xybVxcIH0vCispCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGdkZWZcXGJvbGRicmF4e1xcbGV0KD1cXG9wbnJcXGxldCk9XFxjbG5yXFxsZXRbPVxcbGJyYlxc bC8KKyoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFwqe1xcaGZpbFxcYnJlYWtcXGhib3h7 fVxcaWdub3Jlc3BhY2VzfSQvCisqCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcKj1cXHB0 ZXhzdGFyJC8KICsJcnVieS1zcmMvdGVzdC5yYgkvXiAgICAgICAgZGVmICsoeSkkLwogKwl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWYre3tcXHR0IFxcY2hhciA0M319JC8KKysJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcbGV0Kz1cXG5vcm1hbHBsdXN9JC8KKy4JdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFwuey5cXHNwYWNlZmFjdG9yPTMwMDAgfSQvCisuCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGxldFxcLj1cXHB0ZXhkb3QkLwogLlBSRUNJT1VTCW1ha2Utc3JjL01ha2VmaWxlCS9e LlBSRUNJT1VTOiBFVEFHUyBDVEFHUyBFVEFHUzE2IENUQUdTMTYgRVRBR1MxNyBDVEEvCiAvLm5v dGRlZglwcy1zcmMvcmZjMTI0NS5wcwkvXlwvLm5vdGRlZiBcLy5ub3RkZWYgXC8ubm90ZGVmIFwv Lm5vdGRlZiBcLy5ub3RkZWYgXC8ubm90LwogLy5ub3RkZWYJcHMtc3JjL3JmYzEyNDUucHMJL15c Ly5ub3RkZWYgXC8ubm90ZGVmIFwvLm5vdGRlZiBcLy5ub3RkZWYgXC9zcGFjZSBcL2V4Y2xhbS8K QEAgLTE3MSwzNSArMTg3LDI2IEBAICR7Q0hFQ0tPQkpTfQltYWtlLXNyYy9NYWtlZmlsZQkvXiR7 Q0hFQ0tPQkpTfTogQ0ZMQUdTPS1nMyAtRE5VTExGUkVFQ0hFQ0s9MCQvCiAyY29uc3QJZm9ydGgt c3JjL3Rlc3QtZm9ydGguZnRoCS9eMyA0IDJjb25zdGFudCAyY29uc3QkLwogMnZhbAlmb3J0aC1z cmMvdGVzdC1mb3J0aC5mdGgJL14yY29uc3QgMnZhbHVlIDJ2YWwkLwogMnZhcglmb3J0aC1zcmMv dGVzdC1mb3J0aC5mdGgJL14ydmFyaWFibGUgMnZhciQvCis6CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcOntcXHNwYWNlZmFjdG9yPTEwMDAgfSQvCiA6YS1mb3J0aC1kaWN0aW9uYXJ5LWVu dHJ5CWZvcnRoLXNyYy90ZXN0LWZvcnRoLmZ0aAkvXmNyZWF0ZSA6YS1mb3J0aC1kaWN0aW9uYXJ5 LWVudHJ5JC8KIDwJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmPHt7XFx0dCBcXGxlc3N9fSQv Cis8CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldDw9XFxub3JtYWxsZXNzJC8KIDw8CXJ1Ynkt c3JjL3Rlc3QucmIJL14gICAgICAgIGRlZiA8PCh5KSQvCiA8PQlydWJ5LXNyYy90ZXN0LnJiCS9e ICAgICAgICBkZWYgPD0oeSkkLwogPD0+CXJ1Ynktc3JjL3Rlc3QucmIJL14gICAgICAgIGRlZiA8 PT4oeSkkLwogPQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGRlZj17e1xcdHQgXFxj aGFyIDYxfX19JC8KLT0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHNlY3Rp b24gPSBcXGFwcGVuZGl4c2VjJC8KLT0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxs ZXRcXHNlY3Rpb24gPSBcXG51bWJlcmVkc2VjJC8KLT0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc Z2xvYmFsXFxsZXRcXHNlY3Rpb24gPSBcXHVubnVtYmVyZWRzZWMkLwotPQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vic2VjdGlvbiA9IFxcYXBwZW5kaXhzdWJzZWMkLwot PQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vic2VjdGlvbiA9IFxcbnVt YmVyZWRzdWJzZWMkLwotPQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vi c2VjdGlvbiA9IFxcdW5udW1iZXJlZHN1YnNlYyQvCi09CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGdsb2JhbFxcbGV0XFxzdWJzdWJzZWN0aW9uID0gXFxhcHBlbmRpeHN1YnN1YnNlYyQvCi09CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGdsb2JhbFxcbGV0XFxzdWJzdWJzZWN0aW9uID0gXFxudW1i ZXJlZHN1YnN1YnNlYyQvCi09CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdsb2JhbFxcbGV0XFxz dWJzdWJzZWN0aW9uID0gXFx1bm51bWJlcmVkc3Vic3Vic2VjJC8KID0vZglhZGEtc3JjL2V0YWdz LXRlc3QtZm9yLmFkYQkvXiAgIGZ1bmN0aW9uICI9IiAoTCwgUiA6IFN5c3RlbS5BZGRyZXNzKSBy ZXR1cm4gQm9vLwogPT0JcnVieS1zcmMvdGVzdC5yYgkvXiAgICAgICAgZGVmID09KHkpJC8KID09 PQlydWJ5LXNyYy90ZXN0LnJiCS9eICAgICAgICBkZWYgPT09KHkpJC8KLT1caW5kZXhkdW1teWZv bnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxjaXRlPVxcaW5kZXhkdW1teWZvbnQkLwot PVxyZWxheAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGFwcGVuZGl4PVxccmVsYXgkLwot PVxyZWxheAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGNoYXB0ZXI9XFxyZWxheCQvCi09 XHJlbGF4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcc2VjdGlvbj1cXHJlbGF4JC8KLT1c cmVsYXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxzdWJzZWN0aW9uPVxccmVsYXgkLwot PVxyZWxheAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHN1YnN1YnNlY3Rpb249XFxyZWxh eCQvCi09XHNtYXJ0aXRhbGljCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcY2l0ZT1cXHNt YXJ0aXRhbGljJC8KID1zdGFydHMtd2l0aC1lcXVhbHMhCXNjbS1zcmMvdGVzdC5zY20JL14oZGVm aW5lID1zdGFydHMtd2l0aC1lcXVhbHMhICN0KSQvCiA+CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZj57e1xcdHQgXFxndHJ9fSQvCis+CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldD49XFxu b3JtYWxncmVhdGVyJC8KID5maWVsZDEJZm9ydGgtc3JjL3Rlc3QtZm9ydGguZnRoCS9eICAgOSAg IGZpZWxkICAgPmZpZWxkMSQvCiA+ZmllbGQyCWZvcnRoLXNyYy90ZXN0LWZvcnRoLmZ0aAkvXiAg IDUgICBmaWVsZCAgID5maWVsZDIkLworQAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEB7 QH0lJC8KK0AJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxAe3tcXHR0IFxcY2hhciAnMTAw fX0kLworQHNmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGlmaG1vZGVcXGVkZWZcXEBzZntcXHNw YWNlZmFjdG9yXFx0aGVcXHNwYWNlZmFjdG9yfVxcXC9cXC8KK0BzZgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxsZXRcXEBzZlxcZW1wdHkkLwogQQljLmMJMTYyCiBBCWNwLXNyYy9jLkMJL152b2lk IEE6OkEoKSB7fSQvCiBBCWNwLXNyYy9jLkMJMTE3CkBAIC0zMjQsNiArMzMxLDExIEBAIENBVENI RVIJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkzMDIxCiBDRFIJYy1zcmMvZW1hY3Mvc3JjL2xpc3Au aAkvXkNEUiAoTGlzcF9PYmplY3QgYykkLwogQ0RSX1NBRkUJYy1zcmMvZW1hY3Mvc3JjL2xpc3Au aAkvXkNEUl9TQUZFIChMaXNwX09iamVjdCBjKSQvCiBDRkxBR1MJbWFrZS1zcmMvTWFrZWZpbGUJ L15DRkxBR1M9JHtXQVJOSU5HU30gLWFuc2kgLWczICMgLXBnIC1PJC8KK0NIQVBGb3Blbgl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXENIQVBGb3BlbnskLworQ0hBUEZwbGFpbgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXENIQVBGcGxhaW57JC8KK0NIQVBQQUdvZGQJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxDSEFQUEFHb2RkeyQvCitDSEFQUEFHb2ZmCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcQ0hBUFBBR29mZnskLworQ0hBUFBBR29uCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcQ0hBUFBBR29ueyQvCiBDSEFSCWMtc3JjL2V0YWdzLmMJL14jZGVmaW5l IENIQVIoeCkJCSgodW5zaWduZWQgaW50KSh4KSAmIChDSEFSUyAtIDEpKS8KIENIQVIJeS1zcmMv Y2NjcC5jCTcKIENIQVJBQ1RFUkJJVFMJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyNDU3CkBAIC01 MjksNiArNTQxLDcgQEAgRU1BQ1NfVUlOVAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTk3CiBFTlRS WQljLXNyYy9zeXNkZXAuaAkvXiNkZWZpbmUJRU5UUlkobmFtZSkJCQkJCQkJICAgICAgXFwkLwog RU5VTV9CRgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eI2RlZmluZSBFTlVNX0JGKFRZUEUpIGVu dW0gVFlQRSQvCiBFTlVNX0JGCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL14jZGVmaW5lIEVOVU1f QkYoVFlQRSkgdW5zaWduZWQgaW50JC8KK0VOVmNoZWNrCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcRU5WY2hlY2t7JSQvCiBFUQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eIyBkZWZpbmUg RVEoeCwgeSkgbGlzcF9oX0VRICh4LCB5KSQvCiBFUVVBTAl5LXNyYy9jY2NwLmMJMTIKIEVSTFNS QwltYWtlLXNyYy9NYWtlZmlsZQkvXkVSTFNSQz1nc19kaWFsb2cuZXJsIGxpbmVzLmVybCBsaXN0 cy5lcmwkLwpAQCAtNTQyLDEzICs1NTUsMzcgQEAgRVhGVU4JYy1zcmMvZW1hY3Mvc3JjL2xpc3Au aAkvXiNkZWZpbmUgRVhGVU4oZm5uYW1lLCBtYXhhcmdzKSBcXCQvCiBFWFRBR1MJbWFrZS1zcmMv TWFrZWZpbGUJL15FWFRBR1M6IGV4dGFncyAke2luZmlsZXN9IE1ha2VmaWxlJC8KIEVYVEVSTkFM TFlfVklTSUJMRQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkzNDk3CiBFWFRFUk5BTExZX1ZJ U0lCTEUJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJNDM3MgorRWFscGhhZW51bWVyYXRlCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRWFscGhhZW51bWVyYXRle1xcRWVudW1lcmF0ZX0k LworRWNhcHNlbnVtZXJhdGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFY2Fwc2VudW1l cmF0ZXtcXEVlbnVtZXJhdGV9JC8KK0VjYXJ0b3VjaGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxFY2FydG91Y2hleyUkLworRWRlc2NyaXB0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcRWRlc2NyaXB0aW9ue1xcRXRhYmxlfSUgTmVjZXNzYXJ5IGtsdWRnZS4kLworRWRpc3Bs YXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFZGlzcGxheXtcXGVuZGdyb3VwXFxhZnRl cmVudmJyZWFrfSUkLworRWV4YW1wbGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFZXhh bXBsZXtcXEVsaXNwfSQvCitFZmx1c2hsZWZ0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc RWZsdXNobGVmdHtcXGVuZGdyb3VwXFxhZnRlcmVudmJyZWFrfSUkLworRWZsdXNocmlnaHQJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFZmx1c2hyaWdodHtcXGVuZGdyb3VwXFxhZnRlcmVu dmJyZWFrfSUkLworRWZvcm1hdAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVmb3JtYXR7 XFxlbmRncm91cFxcYWZ0ZXJlbnZicmVha30kLworRWZ0YWJsZQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXEVmdGFibGV7XFxlbmRncmFmXFxlbmRncm91cFxcYWZ0ZXJlbnZicmVha30lJC8K K0Vncm91cAl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGRlZlxcRWdyb3Vwe1xcZWdyb3VwXFxl bmRncm91cH0lJC8KK0VpZmNsZWFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRWlmY2xl YXJ7fSQvCitFaWZzZXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFaWZzZXR7fSQvCitF aWZ0ZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFaWZ0ZXh7fSQvCitFbGlzcAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVsaXNwe1xcZW5kZ3JvdXBcXGFmdGVyZW52YnJlYWt9 JSQvCiBFbXB0eU5tU3RyCXBhcy1zcmMvY29tbW9uLnBhcwkvXmZ1bmN0aW9uIEVtcHR5Tm1TdHIo KiA6IE5hbWVTdHJpbmcqKTskLwogRW52aXJvbm1lbnQJdGV4LXNyYy9nemlwLnRleGkJL15Abm9k ZSBFbnZpcm9ubWVudCwgVGFwZXMsIEFkdmFuY2VkIHVzYWdlLCBUb3AkLworRXF1b3RhdGlvbgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVxdW90YXRpb257XFxwYXJcXGVuZGdyb3VwXFxh ZnRlcmVudmJyZWFrfSUkLwogRXJsYW5nX2Z1bmN0aW9ucwljLXNyYy9ldGFncy5jCS9eRXJsYW5n X2Z1bmN0aW9ucyAoRklMRSAqaW5mKSQvCiBFcmxhbmdfaGVscAljLXNyYy9ldGFncy5jCTU2Nwog RXJsYW5nX3N1ZmZpeGVzCWMtc3JjL2V0YWdzLmMJNTY1CiBFcnJTdHJUb05tU3RyCXBhcy1zcmMv Y29tbW9uLnBhcwkvXmZ1bmN0aW9uIEVyclN0clRvTm1TdHI7KCooJC8KIEVycm9yX0luZm9ybWF0 aW9uL3QJYWRhLXNyYy8yYXRhc3ByaS5hZHMJL14gICB0eXBlIEVycm9yX0luZm9ybWF0aW9uIGlz IG5ldyBJbnRlcmZhY2VzLkMuUE9TSS8KK0VzbWFsbGV4YW1wbGUJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxFc21hbGxleGFtcGxle1xcRWxpc3B9JC8KK0VzbWFsbGV4YW1wbGUJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxkZWZcXEVzbWFsbGV4YW1wbGV7XFxFc21hbGxsaXNw fSQvCitFc21hbGxsaXNwCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRXNtYWxsbGlzcHtc XGVuZGdyb3VwXFxhZnRlcmVudmJyZWFrfSUkLworRXRhYmxlCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcRXRhYmxle1xcZW5kZ3JhZlxcZW5kZ3JvdXBcXGFmdGVyZW52YnJlYWt9JSQvCitF dGFibGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxFdGFibGU9XFxyZWxheH19JC8KK0V0 ZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxFdGV4PVxcZW5kZ3JvdXB9JC8KK0V0aXRs ZXBhZ2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFdGl0bGVwYWdleyUkLworRXZ0YWJs ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEV2dGFibGV7XFxlbmRncmFmXFxlbmRncm91 cFxcYWZ0ZXJlbnZicmVha30lJC8KIEV4aXRfTExfVGFzay9wCWFkYS1zcmMvMmF0YXNwcmkuYWRi CS9eICAgcHJvY2VkdXJlIEV4aXRfTExfVGFzayBpcyQvCiBFeGl0X0xMX1Rhc2svcAlhZGEtc3Jj LzJhdGFzcHJpLmFkcwkvXiAgIHByb2NlZHVyZSBFeGl0X0xMX1Rhc2s7JC8KIEV4dHJhY3RDb21t ZW50SW5mbwlwYXMtc3JjL2NvbW1vbi5wYXMJL15wcm9jZWR1cmUgRXh0cmFjdENvbW1lbnRJbmZv OyAoKigkLwpAQCAtNjg5LDYgKzcyNiwyMCBAQCBIQVNIX1RBQkxFX1AJYy1zcmMvZW1hY3Mvc3Jj L2xpc3AuaAkvXkhBU0hfVEFCTEVfUCAoTGlzcF9PYmplY3QgYSkkLwogSEFTSF9UQUJMRV9TSVpF CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL15IQVNIX1RBQkxFX1NJWkUgKHN0cnVjdCBMaXNwX0hh c2hfVGFibGUgKmgpJC8KIEhBU0hfVkFMVUUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXkhBU0hf VkFMVUUgKHN0cnVjdCBMaXNwX0hhc2hfVGFibGUgKmgsIHB0cmRpZmZfdCBpLwogSEFWRV9OVEdV SQljLXNyYy9ldGFncy5jCTExNgorSEVBRElOR1NhZnRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXEhFQURJTkdTYWZ0ZXJ7XFxsZXRcXEhFQURJTkdTaG9vaz1cXEhFQURJTkdTZG91Yi8K K0hFQURJTkdTZG91YmxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcSEVBRElOR1Nkb3Vi bGV7JC8KK0hFQURJTkdTZG91YmxlYWZ0ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxI RUFESU5HU2RvdWJsZWFmdGVyPVxcSEVBRElOR1NhZnRlciQvCitIRUFESU5HU2RvdWJsZXgJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxIRUFESU5HU2RvdWJsZXh7JSQvCitIRUFESU5HU2hv b2sJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxIRUFESU5HU2FmdGVye1xcbGV0XFxIRUFE SU5HU2hvb2s9XFxIRUFESU5HU2RvdWIvCitIRUFESU5HU2hvb2sJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxIRUFESU5HU3NpbmdsZWFmdGVye1xcbGV0XFxIRUFESU5HU2hvb2s9XFxIRUFE SU4vCitIRUFESU5HU2hvb2sJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxIRUFESU5HU2hv b2s9XFxyZWxheCQvCitIRUFESU5HU29mZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEhF QURJTkdTb2ZmeyQvCitIRUFESU5HU29uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcSEVB RElOR1NvbntcXEhFQURJTkdTZG91YmxlfSQvCitIRUFESU5HU29uCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGdsb2JhbFxcZGVmXFxIRUFESU5HU29ue1xcSEVBRElOR1Nkb3VibGV9fSQvCitIRUFE SU5HU29uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdsb2JhbFxcZGVmXFxIRUFESU5HU29ue1xc SEVBRElOR1NzaW5nbGV9fSQvCitIRUFESU5HU3NpbmdsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXEhFQURJTkdTc2luZ2xleyQvCitIRUFESU5HU3NpbmdsZWFmdGVyCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcSEVBRElOR1NzaW5nbGVhZnRlcntcXGxldFxcSEVBRElOR1Nob29r PVxcSEVBRElOLworSEVBRElOR1NzaW5nbGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc SEVBRElOR1NzaW5nbGV4eyUkLwogSEVBUAljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCTEzMQog SFRNTFNSQwltYWtlLXNyYy9NYWtlZmlsZQkvXkhUTUxTUkM9c29mdHdhcmVsaWJlcm8uaHRtbCBp bmRleC5zaHRtbCBhbGdydGhtcy5oLwogSFRNTF9oZWxwCWMtc3JjL2V0YWdzLmMJNTg0CkBAIC03 NTAsNiArODAxLDcgQEAgSkFWQVNSQwltYWtlLXNyYy9NYWtlZmlsZQkvXkpBVkFTUkM9QVdURU11 bC5qYXZhIEtleUV2ZS5qYXZhIFNNYW4uamF2YSBTeXNDb2wuLwogS0JEX0JVRkZFUl9TSVpFCWMt c3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTgyCiBLQllURVMJb2JqYy1zcmMvUGFja0luc3AubQk1 OAogS0VZX1RPX0NIQVIJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL14jZGVmaW5lIEtFWV9U T19DSEFSKGspIChYSU5UIChrKSAmICgoMSA8PCBDSEFSQUNURS8KK0wJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcbGV0XFxMPVxccHRleEwkLwogTEFURVNUCW1ha2Utc3JjL01ha2VmaWxlCS9eTEFU RVNUPTE3JC8KIExDRV9DT01NRU5UCXBocC1zcmMvbGNlX2Z1bmN0aW9ucy5waHAJMTMKIExDRV9D T01NRU5UX1RPT0wJcGhwLXNyYy9sY2VfZnVuY3Rpb25zLnBocAkxNwpAQCAtMTQwNyw2ICsxNDU5 LDkgQEAgVGFza19UeXBlL2IJYWRhLXNyYy9ldGFncy10ZXN0LWZvci5hZGEJL14gIHRhc2sgYm9k eSBUYXNrX1R5cGUgaXMkLwogVGFza19UeXBlL2IJYWRhLXNyYy93YXJvcXVpZXJzLmFkYQkvXiAg dGFzayBib2R5IFRhc2tfVHlwZSBpcyQvCiBUYXNrX1R5cGUvawlhZGEtc3JjL2V0YWdzLXRlc3Qt Zm9yLmFkYQkvXiAgdGFzayB0eXBlIFRhc2tfVHlwZSBpcyQvCiBUYXNrX1R5cGUvawlhZGEtc3Jj L3dhcm9xdWllcnMuYWRhCS9eICB0YXNrIHR5cGUgVGFza19UeXBlIGlzJC8KK1RlWAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXFRlWHtcXHJlYWxiYWNrc2xhc2ggVGVYfSQvCitUZVgJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxUZVh7XFxyZWFsYmFja3NsYXNoIFRlWH0lJC8KK1Rl WAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXFRlWD1cXGluZGV4ZHVtbXl0ZXgkLwogVGVY X2NvbW1hbmRzCWMtc3JjL2V0YWdzLmMJL15UZVhfY29tbWFuZHMgKEZJTEUgKmluZikkLwogVGVY X2hlbHAJYy1zcmMvZXRhZ3MuYwk2NzQKIFRlWF9zdWZmaXhlcwljLXNyYy9ldGFncy5jCTY3MgpA QCAtMTY2Niw1NTEgKzE3MjEsMjIgQEAgWVlfREVDTF9WQVJJQUJMRVMJL3Vzci9zaGFyZS9iaXNv bi9iaXNvbi5zaW1wbGUJMzkxCiBZYWNjX2VudHJpZXMJYy1zcmMvZXRhZ3MuYwkvXllhY2NfZW50 cmllcyAoRklMRSAqaW5mKSQvCiBZYWNjX2hlbHAJYy1zcmMvZXRhZ3MuYwk2OTMKIFlhY2Nfc3Vm Zml4ZXMJYy1zcmMvZXRhZ3MuYwk2OTEKK1lhcHBlbmRpeGxldHRlcmFuZHR5cGUJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxZYXBwZW5kaXhsZXR0ZXJhbmR0eXBleyUkLworWW5vdGhpbmcJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxZbm90aGluZ3t9JC8KK1lwYWdlbnVtYmVyCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcWXBhZ2VudW1iZXJ7XFxmb2xpb30kLworWXNlY3Rp b25udW1iZXJhbmR0eXBlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcWXNlY3Rpb25udW1i ZXJhbmR0eXBleyUkLworWXRpdGxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcWXRpdGxl e1xcdGhpc2NoYXB0ZXJ9JC8KIFoJYy1zcmMvaC5oCTEwMAorWwl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxnZGVmXFxib2xkYnJheHtcXGxldCg9XFxvcG5yXFxsZXQpPVxcY2xuclxcbGV0Wz1cXGxi cmJcXGwvCiBbXQlydWJ5LXNyYy90ZXN0LnJiCS9eICAgICAgICBkZWYgW10oeSkkLwogW109CXJ1 Ynktc3JjL3Rlc3QucmIJL14gICAgICAgIGRlZiBbXT0oeSwgdmFsKSQvCi1cCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcIHt7XFxmb250ZGltZW4yXFxmb250PVxcdGNsb3Nlc2F2ZXt9IH19 JSQvCi1cCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXHNlcHNwYWNlc3tcXGRlZiB7XFwg fX19JC8KLVwnCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcJ3t7J319JC8KLVwqCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcKntcXGhmaWxcXGJyZWFrXFxoYm94e31cXGlnbm9yZXNw YWNlc30kLwotXC4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFwuey5cXHNwYWNlZmFjdG9y PTMwMDAgfSQvCi1cOgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXDp7XFxzcGFjZWZhY3Rv cj0xMDAwIH0kLwotXEAJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxAe0B9JSQvCi1cQAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEB7e1xcdHQgXFxjaGFyICcxMDB9fSQvCi1cQ0hB UEZvcGVuCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcQ0hBUEZvcGVueyQvCi1cQ0hBUEZw bGFpbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXENIQVBGcGxhaW57JC8KLVxDSEFQUEFH b2RkCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcQ0hBUFBBR29kZHskLwotXENIQVBQQUdv ZmYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxDSEFQUEFHb2ZmeyQvCi1cQ0hBUFBBR29u CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcQ0hBUFBBR29ueyQvCi1cRU5WY2hlY2sJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFTlZjaGVja3slJC8KLVxFYWxwaGFlbnVtZXJhdGUJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFYWxwaGFlbnVtZXJhdGV7XFxFZW51bWVyYXRl fSQvCi1cRWNhcHNlbnVtZXJhdGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFY2Fwc2Vu dW1lcmF0ZXtcXEVlbnVtZXJhdGV9JC8KLVxFY2FydG91Y2hlCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcRWNhcnRvdWNoZXslJC8KLVxFZGVzY3JpcHRpb24JdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxFZGVzY3JpcHRpb257XFxFdGFibGV9JSBOZWNlc3Nhcnkga2x1ZGdlLiQvCi1c RWRpc3BsYXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFZGlzcGxheXtcXGVuZGdyb3Vw XFxhZnRlcmVudmJyZWFrfSUkLwotXEVleGFtcGxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcRWV4YW1wbGV7XFxFbGlzcH0kLwotXEVmbHVzaGxlZnQJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxFZmx1c2hsZWZ0e1xcZW5kZ3JvdXBcXGFmdGVyZW52YnJlYWt9JSQvCi1cRWZsdXNo cmlnaHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFZmx1c2hyaWdodHtcXGVuZGdyb3Vw XFxhZnRlcmVudmJyZWFrfSUkLwotXEVmb3JtYXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxFZm9ybWF0e1xcZW5kZ3JvdXBcXGFmdGVyZW52YnJlYWt9JC8KLVxFZnRhYmxlCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcRWZ0YWJsZXtcXGVuZGdyYWZcXGVuZGdyb3VwXFxhZnRlcmVu dmJyZWFrfSUkLwotXEVncm91cAl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGRlZlxcRWdyb3Vw e1xcZWdyb3VwXFxlbmRncm91cH0lJC8KLVxFaWZjbGVhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXEVpZmNsZWFye30kLwotXEVpZnNldAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XEVpZnNldHt9JC8KLVxFaWZ0ZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFaWZ0ZXh7 fSQvCi1cRWxpc3AJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFbGlzcHtcXGVuZGdyb3Vw XFxhZnRlcmVudmJyZWFrfSUkLwotXEVxdW90YXRpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxFcXVvdGF0aW9ue1xccGFyXFxlbmRncm91cFxcYWZ0ZXJlbnZicmVha30lJC8KLVxFc21h bGxleGFtcGxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRXNtYWxsZXhhbXBsZXtcXEVs aXNwfSQvCi1cRXNtYWxsZXhhbXBsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGRl ZlxcRXNtYWxsZXhhbXBsZXtcXEVzbWFsbGxpc3B9JC8KLVxFc21hbGxsaXNwCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcRXNtYWxsbGlzcHtcXGVuZGdyb3VwXFxhZnRlcmVudmJyZWFrfSUk LwotXEV0YWJsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEV0YWJsZXtcXGVuZGdyYWZc XGVuZGdyb3VwXFxhZnRlcmVudmJyZWFrfSUkLwotXEV0aXRsZXBhZ2UJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxFdGl0bGVwYWdleyUkLwotXEV2dGFibGUJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxFdnRhYmxle1xcZW5kZ3JhZlxcZW5kZ3JvdXBcXGFmdGVyZW52YnJlYWt9JSQv Ci1cSEVBRElOR1NhZnRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEhFQURJTkdTYWZ0 ZXJ7XFxsZXRcXEhFQURJTkdTaG9vaz1cXEhFQURJTkdTZG91Yi8KLVxIRUFESU5HU2RvdWJsZQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEhFQURJTkdTZG91YmxleyQvCi1cSEVBRElOR1Nk b3VibGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcSEVBRElOR1Nkb3VibGV4eyUkLwot XEhFQURJTkdTb2ZmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcSEVBRElOR1NvZmZ7JC8K LVxIRUFESU5HU29uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcSEVBRElOR1NvbntcXEhF QURJTkdTZG91YmxlfSQvCi1cSEVBRElOR1Nvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9i YWxcXGRlZlxcSEVBRElOR1NvbntcXEhFQURJTkdTZG91YmxlfX0kLwotXEhFQURJTkdTb24JdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxkZWZcXEhFQURJTkdTb257XFxIRUFESU5HU3Np bmdsZX19JC8KLVxIRUFESU5HU3NpbmdsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEhF QURJTkdTc2luZ2xleyQvCi1cSEVBRElOR1NzaW5nbGVhZnRlcgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXEhFQURJTkdTc2luZ2xlYWZ0ZXJ7XFxsZXRcXEhFQURJTkdTaG9vaz1cXEhFQURJ Ti8KLVxIRUFESU5HU3NpbmdsZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxIRUFESU5H U3NpbmdsZXh7JSQvCi1cVGVYCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcVGVYe1xccmVh bGJhY2tzbGFzaCBUZVh9JC8KLVxUZVgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxUZVh7 XFxyZWFsYmFja3NsYXNoIFRlWH0lJC8KLVxZYXBwZW5kaXhsZXR0ZXJhbmR0eXBlCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcWWFwcGVuZGl4bGV0dGVyYW5kdHlwZXslJC8KLVxZbm90aGlu Zwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXFlub3RoaW5ne30kLwotXFlwYWdlbnVtYmVy CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcWXBhZ2VudW1iZXJ7XFxmb2xpb30kLwotXFlz ZWN0aW9ubnVtYmVyYW5kdHlwZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXFlzZWN0aW9u bnVtYmVyYW5kdHlwZXslJC8KLVxZdGl0bGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxZ dGl0bGV7XFx0aGlzY2hhcHRlcn0kLwotXF8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxf e1xcbHZ2bW9kZSBcXGtlcm4uMDZlbSBcXHZib3h7XFxocnVsZSB3aWR0aC4zZW0gLwotXF8JdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxfe3tcXHJlYWxiYWNrc2xhc2ggX319JSQvCi1cYAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGB7e2B9fSQvCi1cYWJvdmVlbnZicmVhawl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFib3ZlZW52YnJlYWt7e1xcYWR2YW5jZVxcYWJvdmVl bnZza2lwYW1vdW50IGJ5LwotXGFjdGl2ZWRvdWJsZXF1b3RlCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcYWN0aXZlZG91YmxlcXVvdGV7e1xcdHQgXFxjaGFyICcwNDJ9fSQvCi1cYWN0aXZl cGFyZW5zCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYWN0aXZlcGFyZW5zeyUkLwotXGFm b3VycGFwZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxhZm91cnBhcGVyeyQvCi1cYWZ0 ZXJlbnZicmVhawl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFmdGVyZW52YnJlYWt7XFxl bmRncmFmIFxcaWZkaW1cXGxhc3Rza2lwPFxcYWJvdmUvCi1cYWxwaGFlbnVtZXJhdGUJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxhbHBoYWVudW1lcmF0ZXtcXGVudW1lcmF0ZXthfX0kLwot XGFwcGVuZGl4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXGFwcGVuZGl4e1xc cGFyc2VhcmdcXGFwcGVuZGl4enp6fSQvCi1cYXBwZW5kaXhsZXR0ZXIJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxhcHBlbmRpeGxldHRlcntcXGNoYXJcXHRoZVxcYXBwZW5kaXhub30kLwot XGFwcGVuZGl4bm9kZXJlZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFwcGVuZGl4bm9k ZXJlZntcXGlmeFxcbGFzdG5vZGVcXHJlbGF4XFxlbHNlJC8KLVxhcHBlbmRpeHNlYwl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxhcHBlbmRpeHNlY3tcXHBhcnNlYXJnXFxhcHBl bmRpeHNlY3Rpb256ei8KLVxhcHBlbmRpeHNlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc b3V0ZXJcXGRlZlxcYXBwZW5kaXhzZWN0aW9ue1xccGFyc2VhcmdcXGFwcGVuZGl4c2VjdGkvCi1c YXBwZW5kaXhzZWN0aW9uenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYXBwZW5kaXhz ZWN0aW9uenp6ICMxe1xcc2VjY2hlY2t7YXBwZW5kaXhzZWN0aS8KLVxhcHBlbmRpeHNldHJlZgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFwcGVuZGl4c2V0cmVmIzF7JSQvCi1cYXBwZW5k aXhzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRlZlxcYXBwZW5kaXhzdWJz ZWN7XFxwYXJzZWFyZ1xcYXBwZW5kaXhzdWJzZWMvCi1cYXBwZW5kaXhzdWJzZWN6enoJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxhcHBlbmRpeHN1YnNlY3p6eiAjMXtcXHNlY2NoZWNre2Fw cGVuZGl4c3Vic2VjLwotXGFwcGVuZGl4c3Vic3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XG91dGVyXFxkZWZcXGFwcGVuZGl4c3Vic3Vic2Vje1xccGFyc2VhcmdcXGFwcGVuZGl4c3ViLwot XGFwcGVuZGl4c3Vic3Vic2Vjenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYXBwZW5k aXhzdWJzdWJzZWN6enogIzF7XFxzZWNjaGVja3thcHBlbmRpeHN1Yi8KLVxhcHBlbmRpeHp6egl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFwcGVuZGl4enp6ICMxe1xcc2VjY2hlY2t7YXBw ZW5kaXh9JSQvCi1cYXNpcwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFzaXMjMXsjMX0k LwotXGF1dGhvcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFxkZWZcXGF1dGhvcntcXHBhcnNl YXJnXFxhdXRob3J6enp9JSQvCi1cYXV0aG9yZm9udAl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAg XFxkZWZcXGF1dGhvcmZvbnR7XFxhdXRob3JybSBcXG5vcm1hbGJhc2VsaW5lc2tpcCA9LwotXGF1 dGhvcnp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFxkZWZcXGF1dGhvcnp6eiMjMXtcXGlm c2VlbmF1dGhvclxcZWxzZVxcdnNraXAgMHB0IC8KLVxiCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcYiMjMXtcXHJlYWxiYWNrc2xhc2ggYiB7IyMxfX0kLwotXGIJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxiIyMxe1xccmVhbGJhY2tzbGFzaCBiIHsjIzF9fSUkLwotXGIJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxiIzF7e1xcYmYgIzF9fSQvCi1cYmFsYW5jZWNvbHVtbnMJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxiYWxhbmNlY29sdW1uc3slJC8KLVxiZWdpbgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxiZWdpbntcXHBhcnNlYXJnXFxiZWdp bnh4eH0kLwotXGJlZ2luZG91YmxlY29sdW1ucwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGJlZ2luZG91YmxlY29sdW1uc3tcXGJlZ2luZ3JvdXAkLwotXGJlZ2lueHh4CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcYmVnaW54eHggIzF7JSQvCi1cYmYJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxiZntcXHJlYWxiYWNrc2xhc2ggYmYgfSQvCi1cYmYJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxiZntcXHJlYWxiYWNrc2xhc2ggYmYgfSUkLwotXGJ1bGxldAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGJ1bGxldHskXFxwdGV4YnVsbGV0JH0kLwotXGJ5ZQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxieWV7XFxwYWdlYWxpZ25tYWNyb1xcdHJh Y2luZ3N0YXRzPTFcXHB0ZXgvCi1cY2Fwc2VudW1lcmF0ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGNhcHNlbnVtZXJhdGV7XFxlbnVtZXJhdGV7QX19JC8KLVxjYXJ0Ym90CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcY2FydGJvdHtcXGhib3ggdG8gXFxjYXJ0b3V0ZXJ7XFxoc2tp cFxcbHNraXAkLwotXGNhcnRvdWNoZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsb25nXFxkZWZc XGNhcnRvdWNoZXslJC8KLVxjYXJ0dG9wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2Fy dHRvcHtcXGhib3ggdG8gXFxjYXJ0b3V0ZXJ7XFxoc2tpcFxcbHNraXAkLwotXGNibAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGNibHt7XFxjaXJjbGVcXGNoYXInMDEyXFxoc2tpcCAtNnB0 fX0kLwotXGNicgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNicnt7XFxoc2tpcCA2cHRc XGNpcmNsZVxcY2hhcicwMTF9fSQvCi1cY2VudGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcY2VudGVye1xccGFyc2VhcmdcXGNlbnRlcnp6en0kLwotXGNlbnRlcnp6egl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGNlbnRlcnp6eiAjMXt7XFxhZHZhbmNlXFxoc2l6ZSBieSAtXFxs ZWZ0c2tpcCQvCi1cY2hhcGJyZWFrCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2hhcGJy ZWFre1xcZG9icmVhayBcXGNoYXBoZWFkaW5nc2tpcCB7LTQwMDB9fSQvCi1cY2hhcGVudHJ5CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2hhcGVudHJ5IzEjMiMze1xcZG9jaGFwZW50cnl7 IzJcXGxhYmVsc3BhY2UjMX0vCi1cY2hhcGVudHJ5Zm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxjaGFwZW50cnlmb250c3tcXHNlY2ZvbnRzIFxccm19JC8KLVxjaGFwZm9udHMJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwZm9udHN7JSQvCi1cY2hhcGhlYWRpbmcJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwaGVhZGluZ3tcXHBhcnNlYXJnXFxjaGFwaGVh ZGluZ3p6en0kLwotXGNoYXBoZWFkaW5nenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc Y2hhcGhlYWRpbmd6enogIzF7XFxjaGFwYnJlYWsgJSQvCi1cY2hhcG9kZHBhZ2UJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwb2RkcGFnZXtcXGNoYXBwYWdlciBcXGlmb2RkXFxwYWdl bm8gXFxlbHNlIFxcaC8KLVxjaGFwcGFnZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxj aGFwcGFnZXJ7XFxwYXJcXHZmaWxsXFxzdXBlcmVqZWN0fSQvCi1cY2hhcHRlcgl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxjaGFwdGVye1xccGFyc2VhcmdcXGNoYXB0ZXJ6enp9 JC8KLVxjaGFwdGVybm9mb250cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNoYXB0ZXJu b2ZvbnRzeyUkLwotXGNoYXB0ZXJ6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFw dGVyenp6ICMxe1xcc2VjY2hlY2t7Y2hhcHRlcn0lJC8KLVxjaGFyCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcY2hhcntcXHJlYWxiYWNrc2xhc2ggY2hhcn0kLwotXGNoYXIJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFye1xccmVhbGJhY2tzbGFzaCBjaGFyfSUkLwotXGNoZm9w ZW4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGZvcGVuICMxIzJ7XFxjaGFwb2RkcGFn ZSB7XFxjaGFwZm9udHMkLwotXGNoZnBsYWluCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc Y2hmcGxhaW4gIzEjMnslJC8KLVxjaW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxj aW5kZXgge1xcY3BpbmRleH0kLwotXGNpbmRleHN1Ygl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGNpbmRleHN1YiB7XFxiZWdpbmdyb3VwXFxvYmV5bGluZXNcXGNpbmRleHN1Yn0kLwotXGNp dGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaXRlIyMxe1xccmVhbGJhY2tzbGFzaCBj aXRlIHsjIzF9fSQvCi1cY2l0ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNpdGUjIzF7 XFxyZWFsYmFja3NsYXNoIGNpdGUgeyMjMX19JSQvCi1cY2xlYXIJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxjbGVhcntcXHBhcnNlYXJnXFxjbGVhcnh4eH0kLwotXGNsZWFyeHh4CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2xlYXJ4eHggIzF7JC8KLVxjb2RlCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcY29kZSMjMXtcXHJlYWxiYWNrc2xhc2ggY29kZSB7IyMxfX0kLwot XGNvZGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjb2RlIyMxe1xccmVhbGJhY2tzbGFz aCBjb2RlIHsjIzF9fSUkLwotXGNvbW1lbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxj b21tZW50e1xcY2F0Y29kZSA2ND1cXG90aGVyIFxcY2F0Y29kZSAxMjM9XFxvdGhlLwotXGNvbW1l bnR4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjb21tZW50eHh4ICMxe1xcY2F0Y29k ZSA2ND0wIFxcY2F0Y29kZSAxMjM9MSBcXGMvCi1cY29udGVudHMJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcb3V0ZXJcXGRlZlxcY29udGVudHN7JSQvCi1cY29weXJpZ2h0CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcY29weXJpZ2h0e1xccmVhbGJhY2tzbGFzaCBjb3B5cmlnaHQgfSUkLwot XGNvcHlyaWdodAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNvcHlyaWdodHtcXHJlYWxi YWNrc2xhc2ggY29weXJpZ2h0fSQvCi1cY3JvcG1hcmtzCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcY3JvcG1hcmtze1xcbGV0XFxvbmVwYWdlb3V0PVxcY3JvcHBhZ2VvdXQgfSQvCi1cY3Jv cHBhZ2VvdXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjcm9wcGFnZW91dCMxe1xcaG9m ZnNldD0wcHQgJSBtYWtlIHN1cmUgdGhpcyBkLwotXGN0bAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGN0bHt7XFxjaXJjbGVcXGNoYXInMDEzXFxoc2tpcCAtNnB0fX0lIDZwdCBmcm9tIC8K LVxjdHIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjdHJ7e1xcaHNraXAgNnB0XFxjaXJj bGVcXGNoYXInMDEwfX0kLwotXGN0cmwJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjdHJs ICMxe3tcXHR0IFxccmF3YmFja3NsYXNoIFxcaGF0fSMxfSQvCi1cZGVmY29kZWluZGV4CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmY29kZWluZGV4e1xccGFyc2VhcmdcXG5ld2NvZGVp bmRleH0kLwotXGRlZmN2CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmY3YgIzEge1xc ZGVmXFxkZWZjdnR5cGV7IzF9JSQvCi1cZGVmY3ZhcmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGRlZmN2YXJoZWFkZXIgIzEjMiMzeyUkLwotXGRlZmN2eAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGRlZmN2eCAjMSB7XFxlcnJtZXNzYWdle0BkZWZjdnggaW4gaW52YWxp ZCBjb24vCi1cZGVmZm4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZmbntcXGRlZm1l dGhwYXJzZWJvZHlcXEVkZWZmblxcZGVmZm54XFxkZWZmbmhlLwotXGRlZmZuaGVhZGVyCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmZm5oZWFkZXIgIzEjMiMze1xcZG9pbmQge2ZufXtc XGNvZGV7IzJ9fSUkLwotXGRlZmZueAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZmZu eCAjMSB7XFxlcnJtZXNzYWdle0BkZWZmbnggaW4gaW52YWxpZCBjb24vCi1cZGVmaW5kZXgJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZpbmRleHtcXHBhcnNlYXJnXFxuZXdpbmRleH0k LwotXGRlZml2YXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZpdmFye1xcZGVmdnJw YXJzZWJvZHlcXEVkZWZpdmFyXFxkZWZpdmFyeFxcZGVmLwotXGRlZml2YXJoZWFkZXIJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZpdmFyaGVhZGVyICMxIzIjM3slJC8KLVxkZWZpdmFy eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZml2YXJ4ICMxIHtcXGVycm1lc3NhZ2V7 QGRlZml2YXJ4IGluIGludmFsaWQvCi1cZGVmbWFjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcZGVmbWFje1xcZGVmcGFyc2Vib2R5XFxFZGVmbWFjXFxkZWZtYWN4XFxkZWZtYWNoZS8KLVxk ZWZtYWNoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZtYWNoZWFkZXIgIzEj MntcXGRvaW5kIHtmbn17XFxjb2RleyMxfX0lIE1hay8KLVxkZWZtYWN4CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcZGVmbWFjeCAjMSB7XFxlcnJtZXNzYWdle0BkZWZtYWN4IGluIGludmFs aWQgYy8KLVxkZWZtZXRob2QJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZtZXRob2R7 XFxkZWZtZXRocGFyc2Vib2R5XFxFZGVmbWV0aG9kXFxkZWZtZXQvCi1cZGVmbWV0aG9kaGVhZGVy CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmbWV0aG9kaGVhZGVyICMxIzIjM3slJC8K LVxkZWZtZXRob2R4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmbWV0aG9keCAjMSB7 XFxlcnJtZXNzYWdle0BkZWZtZXRob2R4IGluIGludi8KLVxkZWZtZXRocGFyc2Vib2R5CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmbWV0aHBhcnNlYm9keSAjMSMyIzMjNCB7XFxiZWdp bmdyb3VwXFxpbkVOViAvCi1cZGVmbmFtZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRl Zm5hbWUgIzEjMnslJC8KLVxkZWZvcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm9w ICMxIHtcXGRlZlxcZGVmb3B0eXBleyMxfSUkLwotXGRlZm9waGVhZGVyCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcZGVmb3BoZWFkZXIgIzEjMiMzeyUkLwotXGRlZm9wcGFyc2Vib2R5CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmb3BwYXJzZWJvZHkgIzEjMiMzIzQjNSB7XFxi ZWdpbmdyb3VwXFxpbkVOViAvCi1cZGVmb3B0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc ZGVmb3B0e1xcZGVmdmFycGFyc2Vib2R5XFxFZGVmb3B0XFxkZWZvcHR4XFxkZWZvcC8KLVxkZWZv cHRoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZvcHRoZWFkZXIgIzEjMntc XGRvaW5kIHt2cn17XFxjb2RleyMxfX0lIE1hay8KLVxkZWZvcHR4CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZGVmb3B0eCAjMSB7XFxlcnJtZXNzYWdle0BkZWZvcHR4IGluIGludmFsaWQg Yy8KLVxkZWZvcHZhcnBhcnNlYm9keQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm9w dmFycGFyc2Vib2R5ICMxIzIjMyM0IzUge1xcYmVnaW5ncm91cFxcaW5FLwotXGRlZm9weAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm9weCAjMSB7XFxlcnJtZXNzYWdle0BkZWZvcHgg aW4gaW52YWxpZCBjb24vCi1cZGVmcGFyc2Vib2R5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcZGVmcGFyc2Vib2R5ICMxIzIjM3tcXGJlZ2luZ3JvdXBcXGluRU5WJSBFbnZpcm8vCi1cZGVm c3BlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnNwZWN7XFxkZWZwYXJzZWJvZHlc XEVkZWZzcGVjXFxkZWZzcGVjeFxcZGVmc3AvCi1cZGVmc3BlY2hlYWRlcgl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGRlZnNwZWNoZWFkZXIgIzEjMntcXGRvaW5kIHtmbn17XFxjb2RleyMx fX0lIE1hLwotXGRlZnNwZWN4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmc3BlY3gg IzEge1xcZXJybWVzc2FnZXtAZGVmc3BlY3ggaW4gaW52YWxpZC8KLVxkZWZ0cAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGRlZnRwe1xcZGVmdnJwYXJzZWJvZHlcXEVkZWZ0cFxcZGVmdHB4 XFxkZWZ0cGhlYWQvCi1cZGVmdHBhcmdzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVm dHBhcmdzICMxe1xcYmYgXFxkZWZ2YXJhcmdzeyMxfX0kLwotXGRlZnRwaGVhZGVyCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHBoZWFkZXIgIzEjMiMze1xcZG9pbmQge3RwfXtcXGNv ZGV7IzJ9fSUkLwotXGRlZnRweAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnRweCAj MSB7XFxlcnJtZXNzYWdle0BkZWZ0cHggaW4gaW52YWxpZCBjb24vCi1cZGVmdHlwZWZuCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZue1xcZGVmbWV0aHBhcnNlYm9keVxcRWRl ZnR5cGVmblxcZGVmdHlwLwotXGRlZnR5cGVmbmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGRlZnR5cGVmbmhlYWRlciAjMSMyIzN7XFxkZWZ0eXBlZm5oZWFkZXJ4eyMxfXsvCi1c ZGVmdHlwZWZuaGVhZGVyeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGVmbmhl YWRlcnggIzEjMiMzICM0XFxyZWxheHslJC8KLVxkZWZ0eXBlZm54CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZGVmdHlwZWZueCAjMSB7XFxlcnJtZXNzYWdle0BkZWZ0eXBlZm54IGluIGlu di8KLVxkZWZ0eXBlZnVuCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZ1bntc XGRlZnBhcnNlYm9keVxcRWRlZnR5cGVmdW5cXGRlZnR5cGVmLwotXGRlZnR5cGVmdW5hcmdzCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZ1bmFyZ3MgIzF7JSQvCi1cZGVmdHlw ZWZ1bmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGVmdW5oZWFkZXIg IzEjMntcXGRlZnR5cGVmdW5oZWFkZXJ4eyMxfSMvCi1cZGVmdHlwZWZ1bmhlYWRlcngJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBlZnVuaGVhZGVyeCAjMSMyICMzXFxyZWxheHsl JC8KLVxkZWZ0eXBldW54CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZXVueCAj MSB7XFxlcnJtZXNzYWdle0BkZWZ0eXBldW54IGluIGludi8KLVxkZWZ0eXBldmFyCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZXZhcntcXGRlZnZhcnBhcnNlYm9keVxcRWRlZnR5 cGV2YXJcXGRlZnR5LwotXGRlZnR5cGV2YXJoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxkZWZ0eXBldmFyaGVhZGVyICMxIzJ7JSQvCi1cZGVmdHlwZXZhcngJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBldmFyeCAjMSB7XFxlcnJtZXNzYWdle0BkZWZ0eXBldmFy eCBpbiBpLwotXGRlZnR5cGV2cgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGV2 cntcXGRlZnZycGFyc2Vib2R5XFxFZGVmdHlwZXZyXFxkZWZ0eXBldi8KLVxkZWZ0eXBldnJoZWFk ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBldnJoZWFkZXIgIzEjMiMze1xc ZG9pbmQge3ZyfXtcXGNvZGV7IzN9fS8KLVxkZWZ0eXBldnJ4CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcZGVmdHlwZXZyeCAjMSB7XFxlcnJtZXNzYWdle0BkZWZ0eXBldnJ4IGluIGludi8K LVxkZWZ1bgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnVue1xcZGVmcGFyc2Vib2R5 XFxFZGVmdW5cXGRlZnVueFxcZGVmdW5oZWFkZXIvCi1cZGVmdW5hcmdzCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcZGVmdW5hcmdzICMxe1xcZnVuY3Rpb25wYXJlbnMgXFxzbCQvCi1cZGVm dW5oZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ1bmhlYWRlciAjMSMye1xc ZG9pbmQge2ZufXtcXGNvZGV7IzF9fSUgTWFrZS8KLVxkZWZ1bngJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxkZWZ1bnggIzEge1xcZXJybWVzc2FnZXtAZGVmdW54IGluIGludmFsaWQgY29u LwotXGRlZnZhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnZhcntcXGRlZnZhcnBh cnNlYm9keVxcRWRlZnZhclxcZGVmdmFyeFxcZGVmdmEvCi1cZGVmdmFyYXJncwl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGRlZnZhcmFyZ3MgIzF7XFxub3JtYWxwYXJlbnMgIzElJC8KLVxk ZWZ2YXJoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ2YXJoZWFkZXIgIzEj MntcXGRvaW5kIHt2cn17XFxjb2RleyMxfX0lIE1hay8KLVxkZWZ2YXJwYXJzZWJvZHkJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ2YXJwYXJzZWJvZHkgIzEjMiMze1xcYmVnaW5ncm91 cFxcaW5FTlYlIEVudi8KLVxkZWZ2YXJ4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVm dmFyeCAjMSB7XFxlcnJtZXNzYWdle0BkZWZ2YXJ4IGluIGludmFsaWQgYy8KLVxkZWZ2cgl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnZye1xcZGVmdnJwYXJzZWJvZHlcXEVkZWZ2clxc ZGVmdnJ4XFxkZWZ2cmhlYWQvCi1cZGVmdnJoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxkZWZ2cmhlYWRlciAjMSMyIzN7XFxkb2luZCB7dnJ9e1xcY29kZXsjMn19JSQvCi1cZGVm dnJwYXJzZWJvZHkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ2cnBhcnNlYm9keSAj MSMyIzMjNCB7XFxiZWdpbmdyb3VwXFxpbkVOViAlJC8KLVxkZWZ2cngJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxkZWZ2cnggIzEge1xcZXJybWVzc2FnZXtAZGVmdnJ4IGluIGludmFsaWQg Y29uLwotXGRlc2NyaXB0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVzY3JpcHRp b257XFx0YWJsZXp7XFxkb250aW5kZXh9ezF9e317fXt9e319JC8KLVxkZgl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGRme1xcbGV0XFx0ZW50dD1cXGRlZnR0IFxcbGV0XFx0ZW5iZiA9IFxc ZGVmYmYgXFxiZn0vCi1cZGZuCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGZuIyMxe1xc cmVhbGJhY2tzbGFzaCBkZm4geyMjMX19JC8KLVxkaXJlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGRpcmVudHJ5e1xcYmVnaW5ncm91cFxcZGlyZW50cnl4eHh9JC8KLVxkaXJlbnRy eXh4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsb25nXFxkZWZcXGRpcmVudHJ5eHh4ICMxXFxl bmQgZGlyZW50cnl7XFxlbmRncm91cFxcaWcvCi1cZGlzcGxheQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGRpc3BsYXl7XFxiZWdpbmdyb3VwXFxpbkVOViAlVGhpcyBncm91cCBlbmRzIGF0 LwotXGRtbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRtbiMxe1xcdGhpbnNwYWNlICMx fSQvCi1cZG9icmVhawl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRvYnJlYWsjMSMye1xc cGFyXFxpZmRpbVxcbGFzdHNraXA8IzFcXHJlbW92ZWxhc3QvCi1cZG9jaGFwZW50cnkJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb2NoYXBlbnRyeSMxIzJ7JSQvCi1cZG9jb2RlaW5kZXgJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb2NvZGVpbmRleCMxe1xcZWRlZlxcaW5kZXhu YW1leyMxfVxccGFyc2VhcmdcXHNpLwotXGRvaW5kCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcZG9pbmQgIzEjMnslJC8KLVxkb2luZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc ZG9pbmRleCMxe1xcZWRlZlxcaW5kZXhuYW1leyMxfVxccGFyc2VhcmdcXHNpbmdsZS8KLVxkb25v ZGVyZWYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb25vZGVyZWZ7XFxpZnhcXGxhc3Ru b2RlXFxyZWxheFxcZWxzZSQvCi1cZG9udGluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcZG9udGluZGV4ICMxe30kLwotXGRvcGFnZW5vCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcZG9wYWdlbm8jMXt7XFxybSAjMX19JC8KLVxkb3ByaW50aW5kZXgJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxkb3ByaW50aW5kZXgjMXslJC8KLVxkb3NlY2VudHJ5CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcZG9zZWNlbnRyeSMxIzJ7JSQvCi1cZG9zZXRxCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcZG9zZXRxICMxIzJ7e1xcbGV0XFxmb2xpbz0wIFxcdHVybm9mZmFj dGl2ZSUkLwotXGRvc2hvcnRwYWdlbm8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3No b3J0cGFnZW5vIzF7e1xccm0gIzF9fSQvCi1cZG9zdWJpbmQJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxkb3N1YmluZCAjMSMyIzN7JSQvCi1cZG9zdWJzZWNlbnRyeQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGRvc3Vic2VjZW50cnkjMSMyeyUkLwotXGRvc3Vic3Vic2VjZW50cnkJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3N1YnN1YnNlY2VudHJ5IzEjMnslJC8KLVxk b3RzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG90c3skXFxsZG90cyR9JC8KLVxkb3Rz CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG90c3tcXHJlYWxiYWNrc2xhc2ggZG90cyB9 JSQvCi1cZG90cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRvdHN7XFxyZWFsYmFja3Ns YXNoIGRvdHN9JC8KLVxkb3VibGVjb2x1bW5vdXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxkb3VibGVjb2x1bW5vdXR7XFxzcGxpdHRvcHNraXA9XFx0b3Bza2lwIFxcc3BsaXQvCi1cZW1w aAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGVtcGgjIzF7XFxyZWFsYmFja3NsYXNoIGVt cGggeyMjMX19JC8KLVxlbmQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxlbmR7XFxwYXJz ZWFyZ1xcZW5keHh4fSQvCi1cZW5kZG91YmxlY29sdW1ucwl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGVuZGRvdWJsZWNvbHVtbnN7XFxvdXRwdXQ9e1xcYmFsYW5jZWNvbHVtbnN9XFxlai8K LVxlbmR4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxlbmR4eHggIzF7JSQvCi1cZW50 cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxlbnRyeSAjMSMye1xcYmVnaW5ncm91cCQv Ci1cZW51bWVyYXRlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZW51bWVyYXRle1xccGFy c2VhcmdcXGVudW1lcmF0ZXp6en0kLwotXGVudW1lcmF0ZXkJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxlbnVtZXJhdGV5ICMxICMyXFxlbmRlbnVtZXJhdGV5eyUkLwotXGVudW1lcmF0ZXp6 egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGVudW1lcmF0ZXp6eiAjMXtcXGVudW1lcmF0 ZXkgIzEgIFxcZW5kZW51bWVyYXRlLwotXGVxdWl2CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcZXF1aXZ7XFxsZWF2ZXZtb2RlXFxsb3dlci4xZXhcXGhib3ggdG8gMWVte1xcaGZpbC8KLVxl cXVpdgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGVxdWl2e1xccmVhbGJhY2tzbGFzaCBl cXVpdn0kLwotXGVycm9yCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZXJyb3J7XFxsZWF2 ZXZtb2RlXFxsb3dlci43ZXhcXGNvcHlcXGVycm9yYm94fSQvCi1cZXJyb3JFCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcZXJyb3JFIzF7JC8KLVxldmVuZm9vdGluZwl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGV2ZW5mb290aW5ne1xccGFyc2VhcmdcXGV2ZW5mb290aW5neHh4fSQv Ci1cZXZlbmhlYWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxldmVuaGVhZGluZ3tc XHBhcnNlYXJnXFxldmVuaGVhZGluZ3h4eH0kLwotXGV2ZXJ5Zm9vdGluZwl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGV2ZXJ5Zm9vdGluZ3tcXHBhcnNlYXJnXFxldmVyeWZvb3Rpbmd4eHh9 JC8KLVxldmVyeWhlYWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxldmVyeWhlYWRp bmd7XFxwYXJzZWFyZ1xcZXZlcnloZWFkaW5neHh4fSQvCi1cZXdib3QJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxld2JvdHtcXHZydWxlIGhlaWdodDBwdCBkZXB0aFxcY29ybmVydGhpY2sg d2lkdC8KLVxld3RvcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGV3dG9we1xcdnJ1bGUg aGVpZ2h0XFxjb3JuZXJ0aGljayBkZXB0aDBwdCB3aWR0LwotXGV4ZGVudAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGV4ZGVudHtcXHBhcnNlYXJnXFxleGRlbnR5eXl9JC8KLVxleGRlbnR5 eXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxleGRlbnR5eXkgIzF7e1xcaGZpbFxcYnJl YWtcXGhib3h7XFxrZXJuIC1cXGV4ZGVudC8KLVxleHBhbnNpb24JdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxleHBhbnNpb257XFxsZWF2ZXZtb2RlXFxyYWlzZS4xZXhcXGhib3ggdG8gMWVt e1xcLwotXGV4cGFuc2lvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGV4cGFuc2lvbntc XHJlYWxiYWNrc2xhc2ggZXhwYW5zaW9ufSQvCi1cZmlsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGZpbGUjIzF7XFxyZWFsYmFja3NsYXNoIGZpbGUgeyMjMX19JC8KLVxmaWxlCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZmlsZSMjMXtcXHJlYWxiYWNrc2xhc2ggZmlsZSB7IyMx fX0lJC8KLVxmaW5hbG91dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGZpbmFsb3V0e1xc b3ZlcmZ1bGxydWxlPTBwdH0kLwotXGZpbmRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGZpbmRleCB7XFxmbmluZGV4fSQvCi1cZmluaXNodGl0bGVwYWdlCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZmluaXNodGl0bGVwYWdleyUkLwotXGZsdXNoY3IJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxmbHVzaGNye1xcaWZ4XFxwYXJcXGxpc3BwYXIgXFxkZWZcXG5leHQjIzF7 fVxcZWxzZSAvCi1cZmx1c2hsZWZ0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZmx1c2hs ZWZ0eyUkLwotXGZsdXNocmlnaHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxmbHVzaHJp Z2h0eyUkLwotXGZuaXRlbWluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZm5pdGVt aW5kZXggIzF7XFxkb2luZCB7Zm59e1xcY29kZXsjMX19fSUkLwotXGZvcm1hdAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGZvcm1hdHtcXGJlZ2luZ3JvdXBcXGluRU5WICVUaGlzIGdyb3Vw IGVuZHMgYXQgLwotXGZyZW5jaHNwYWNpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxm cmVuY2hzcGFjaW5ne1xcc2Zjb2RlNDY9MTAwMCBcXHNmY29kZTYzPTEwMDAgXFwvCi1cZnRhYmxl CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZnRhYmxle1xcYmVnaW5ncm91cFxcaW5FTlZc XG9iZXlsaW5lc1xcb2JleXNwYWNlcy8KLVxnbG9nZ2luZ2FsbAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGdsb2dnaW5nYWxse1xcYmVnaW5ncm91cCBcXGdsb2JhbGRlZnMgPSAxIFxcbG9n Zy8KLVxncm91cAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGdyb3Vwe1xcYmVnaW5ncm91 cCQvCi1cZ3RyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZ3Rye1xccmVhbGJhY2tzbGFz aCBndHJ9JC8KLVxndHIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxndHJ7XFxyZWFsYmFj a3NsYXNoIGd0cn0lJC8KLVxoYXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxoYXR7XFxy ZWFsYmFja3NsYXNoIGhhdH0kLwotXGhhdAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGhh dHtcXHJlYWxiYWNrc2xhc2ggaGF0fSUkLwotXGhlYWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxoZWFkaW5ne1xccGFyc2VhcmdcXHNlY2hlYWRpbmdpfSQvCi1caGVhZGluZ3MJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxoZWFkaW5ncyAjMSB7XFxjc25hbWUgSEVBRElOR1Mj MVxcZW5kY3NuYW1lfSQvCi1caQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGkjIzF7XFxy ZWFsYmFja3NsYXNoIGkgeyMjMX19JC8KLVxpCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc aSMjMXtcXHJlYWxiYWNrc2xhc2ggaSB7IyMxfX0lJC8KLVxpZmNsZWFyCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcaWZjbGVhcntcXGJlZ2luZ3JvdXBcXGlnbm9yZXNlY3Rpb25zXFxwYXJz ZWFyZ1xcaS8KLVxpZmNsZWFyZmFpbAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGlmY2xl YXJmYWlse1xcYmVnaW5ncm91cFxcaWdub3Jlc2VjdGlvbnNcXGlmY2xlYS8KLVxpZmNsZWFyZmFp bHh4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsb25nXFxkZWZcXGlmY2xlYXJmYWlseHh4ICMx XFxlbmQgaWZjbGVhcntcXGVuZGdyb3VwXFwvCi1caWZjbGVhcnh4eAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGlmY2xlYXJ4eHggIzF7XFxlbmRncm91cCQvCi1caWZpbmZvCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcaWZpbmZve1xcYmVnaW5ncm91cFxcaWdub3Jlc2VjdGlvbnNc XGlmaW5mb3h4eH0kLwotXGlmaW5mb3h4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsb25nXFxk ZWZcXGlmaW5mb3h4eCAjMVxcZW5kIGlmaW5mb3tcXGVuZGdyb3VwXFxpZ25vcmUvCi1caWZzZXQJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpZnNldHtcXGJlZ2luZ3JvdXBcXGlnbm9yZXNl Y3Rpb25zXFxwYXJzZWFyZ1xcaWZzLwotXGlmc2V0ZmFpbAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGlmc2V0ZmFpbHtcXGJlZ2luZ3JvdXBcXGlnbm9yZXNlY3Rpb25zXFxpZnNldGZhaS8K LVxpZnNldGZhaWx4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbG9uZ1xcZGVmXFxpZnNldGZh aWx4eHggIzFcXGVuZCBpZnNldHtcXGVuZGdyb3VwXFxpZ25vLwotXGlmc2V0eHh4CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcaWZzZXR4eHggIzF7XFxlbmRncm91cCQvCi1caWZ0ZXgJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpZnRleHt9JC8KLVxpZnVzaW5ndHQJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxpZnVzaW5ndHQjMSMye1xcaWZkaW0gXFxmb250ZGltZW4zXFx0 aGVcXGZvbnQ9MHB0LwotXGlnbm9yZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGlnbm9y ZXtcXGJlZ2luZ3JvdXBcXGlnbm9yZXNlY3Rpb25zJC8KLVxpZ25vcmVzZWN0aW9ucwl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGlnbm9yZXNlY3Rpb25zeyUkLwotXGlnbm9yZXh4eAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxsb25nXFxkZWZcXGlnbm9yZXh4eCAjMVxcZW5kIGlnbm9yZXtc XGVuZGdyb3VwXFxpZ25vcmUvCi1caWkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpaSMx e3tcXGl0ICMxfX0JCSUgaXRhbGljIGZvbnQkLwotXGluRU5WCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXG5ld2lmXFxpZkVOViBcXEVOVmZhbHNlIFxcZGVmXFxpbkVOVntcXGlmRU5WXFxyZWxheFxc ZWxzLwotXGluY2x1ZGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmNsdWRle1xccGFy c2VhcmdcXGluY2x1ZGV6enp9JC8KLVxpbmNsdWRlenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcaW5jbHVkZXp6eiAjMXt7XFxkZWZcXHRoaXNmaWxleyMxfVxcaW5wdXQgIzEkLwotXGlu ZGV4YmFja3NsYXNoCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcZGVmXFxpbmRleGJhY2tzbGFz aHtcXHJhd2JhY2tzbGFzaHh4fSQvCi1caW5kZXhkb3RmaWxsCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcaW5kZXhkb3RmaWxse1xcY2xlYWRlcnMkLwotXGluZGV4ZHVtbWllcwl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGluZGV4ZHVtbWllc3slJC8KLVxpbmRleGR1bW15ZG90cwl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZGV4ZHVtbXlkb3Rzey4uLn0kLwotXGluZGV4 ZHVtbXlmb250CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5kZXhkdW1teWZvbnQjMXsj MX0kLwotXGluZGV4ZHVtbXl0ZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmRleGR1 bW15dGV4e1RlWH0kLwotXGluZGV4Zm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxp bmRleGZvbnRzeyUkLwotXGluZGV4bm9mb250cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGluZGV4bm9mb250c3slJC8KLVxpbmZvYXBwZW5kaXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxpbmZvYXBwZW5kaXh7XFxwYXJzZWFyZ1xcYXBwZW5kaXh6enp9JC8KLVxpbmZvYXBwZW5k aXhzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvYXBwZW5kaXhzZWN7XFxwYXJz ZWFyZ1xcYXBwZW5kaXhzZWN6enp9JC8KLVxpbmZvYXBwZW5kaXhzdWJzZWMJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxpbmZvYXBwZW5kaXhzdWJzZWN7XFxwYXJzZWFyZ1xcYXBwZW5kaXhz dWJzZWN6ei8KLVxpbmZvYXBwZW5kaXhzdWJzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxpbmZvYXBwZW5kaXhzdWJzdWJzZWN7XFxwYXJzZWFyZ1xcYXBwZW5kaXhzdWJzdS8KLVxp bmZvY2hhcHRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm9jaGFwdGVye1xccGFy c2VhcmdcXGNoYXB0ZXJ6enp9JC8KLVxpbmZvcmVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcaW5mb3JlZiAjMXtcXGluZm9yZWZ6enogIzEsLCwsKip9JC8KLVxpbmZvcmVmenp6CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5mb3JlZnp6eiAjMSwjMiwjMywjNCoqe1NlZSBJbmZv IGZpbGUgXFxmaWxley8KLVxpbmZvc2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGluZm9zZWN0aW9ue1xccGFyc2VhcmdcXHNlY3Rpb256enp9JC8KLVxpbmZvc3Vic2VjdGlvbgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm9zdWJzZWN0aW9ue1xccGFyc2VhcmdcXHN1 YnNlY3Rpb256enp9JC8KLVxpbmZvc3Vic3Vic2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGluZm9zdWJzdWJzZWN0aW9ue1xccGFyc2VhcmdcXHN1YnN1YnNlY3Rpb256enp9Lwot XGluZm90b3AJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvdG9we1xccGFyc2Vhcmdc XHVubnVtYmVyZWR6enp9JC8KLVxpbmZvdW5udW1iZXJlZAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGluZm91bm51bWJlcmVke1xccGFyc2VhcmdcXHVubnVtYmVyZWR6enp9JC8KLVxpbmZv dW5udW1iZXJlZHNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm91bm51bWJlcmVk c2Vje1xccGFyc2VhcmdcXHVubnVtYmVyZWRzZWN6enp9LwotXGluZm91bm51bWJlcmVkc3Vic2Vj CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5mb3VubnVtYmVyZWRzdWJzZWN7XFxwYXJz ZWFyZ1xcdW5udW1iZXJlZHN1YnMvCi1caW5mb3VubnVtYmVyZWRzdWJzdWJzZWMJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvdW5udW1iZXJlZHN1YnN1YnNlY3tcXHBhcnNlYXJnXFx1 bm51bWJlcmVkcy8KLVxpbml0aWFsCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5pdGlh bCAjMXslJC8KLVxpbnRlcm5hbEJpdGVtCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW50 ZXJuYWxCaXRlbXtcXHNtYWxsYnJlYWsgXFxwYXJzZWFyZ1xcaXRlbXp6en0kLwotXGludGVybmFs Qml0ZW14CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW50ZXJuYWxCaXRlbXh7XFxwYXIg XFxwYXJzZWFyZ1xcaXRlbXp6en0kLwotXGludGVybmFsQmtpdGVtCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcaW50ZXJuYWxCa2l0ZW17XFxzbWFsbGJyZWFrIFxccGFyc2VhcmdcXGtpdGVt enp6LwotXGludGVybmFsQmtpdGVteAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGludGVy bmFsQmtpdGVteHtcXHBhciBcXHBhcnNlYXJnXFxraXRlbXp6en0kLwotXGludGVybmFsQnhpdGVt CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW50ZXJuYWxCeGl0ZW0gIiMxIntcXGRlZlxc eGl0ZW1zdWJ0b3BpeHsjMX0gXFxzLwotXGludGVybmFsQnhpdGVteAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGludGVybmFsQnhpdGVteCAiIzEie1xcZGVmXFx4aXRlbXN1YnRvcGl4eyMx fSBcXC8KLVxpbnRlcm5hbHNldHEJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbnRlcm5h bHNldHEgIzEjMnsneHJkZWYgeyMxfXtcXGNzbmFtZSAjMlxcZW5kYy8KLVxpdGVtCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcaXRlbXtcXGVycm1lc3NhZ2V7QGl0ZW0gd2hpbGUgbm90IGlu IGEgdGFibGV9fS8KLVxpdGVtY29udGVudHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxp dGVtY29udGVudHN7IzF9JSQvCi1caXRlbWZvbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxpdGVtZm9udHsjMn0lJC8KLVxpdGVtaXplCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc aXRlbWl6ZXtcXHBhcnNlYXJnXFxpdGVtaXplenp6fSQvCi1caXRlbWl6ZWl0ZW0JdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxpdGVtaXplaXRlbXslJC8KLVxpdGVtaXpleQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGl0ZW1pemV5ICMxIzJ7JSQvCi1caXRlbWl6ZXp6egl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGl0ZW1pemV6enogIzF7JSQvCi1caXRlbXgJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxpdGVteHtcXGVycm1lc3NhZ2V7QGl0ZW14IHdoaWxlIG5vdCBp biBhIHRhYmxlLwotXGl0ZW16enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpdGVtenp6 ICMxe1xcYmVnaW5ncm91cCAlJC8KLVxrYmQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxr YmQjIzF7XFxyZWFsYmFja3NsYXNoIGtiZCB7IyMxfX0kLwotXGtiZAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGtiZCMjMXtcXHJlYWxiYWNrc2xhc2gga2JkIHsjIzF9fSUkLwotXGtiZAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtiZCMxe1xcZGVmXFxsb29reyMxfVxcZXhwYW5k YWZ0ZXJcXGtiZGZvb1xcbG9vaz8/LwotXGtiZGZvbwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGtiZGZvbyMxIzIjM1xccGFye1xcZGVmXFxvbmV7IzF9XFxkZWZcXHRocmVleyMzfVxcZC8K LVxrZXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxrZXkgIzF7e1xcdHQgXFxleGh5cGhl bnBlbmFsdHk9MTAwMDBcXHVwcGVyY2FzZXsvCi1ca2V5CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxca2V5IyMxe1xccmVhbGJhY2tzbGFzaCBrZXkgeyMjMX19JC8KLVxrZXkJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxrZXkjIzF7XFxyZWFsYmFja3NsYXNoIGtleSB7IyMxfX0lJC8K LVxraW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxraW5kZXgge1xca3lpbmRleH0k LwotXGtpdGVtCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxca2l0ZW17XFxlcnJtZXNzYWdl e0BraXRlbSB3aGlsZSBub3QgaW4gYSB0YWJsZS8KLVxraXRlbXgJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxraXRlbXh7XFxlcnJtZXNzYWdle0BraXRlbXggd2hpbGUgbm90IGluIGEgdGFi LwotXGtpdGVtenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxca2l0ZW16enogIzF7XFxk b3N1YmluZCB7a3d9e1xcY29kZXsjMX19e2ZvciB7XFxiLwotXGwJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxsIzF7e1xcbGkgIzF9XFxudWxsfQkJJSAkLwotXGxhYmVsc3BhY2UJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxsYWJlbHNwYWNle1xcaHNraXAxZW0gXFxyZWxheH0kLwot XGxicmIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxsYnJie3tcXGJmXFxjaGFyYFxcW319 IFxcZGVmXFxyYnJie3tcXGJmXFxjaGFyYFxcXX19JC8KLVxsZXNzCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcbGVzc3tcXHJlYWxiYWNrc2xhc2ggbGVzc30kLwotXGxlc3MJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxsZXNze1xccmVhbGJhY2tzbGFzaCBsZXNzfSUkLwotXGxpbmVu dW1iZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxkZWZcXGxpbmVudW1iZXJ7XFx0aGVcXGlu cHV0bGluZW5vOlxcc3BhY2V9JC8KLVxsaXNwCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc bGlzcHtcXGFib3ZlZW52YnJlYWskLwotXGxvZ2dpbmdhbGwJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxsb2dnaW5nYWxse1xcdHJhY2luZ2NvbW1hbmRzMiBcXHRyYWNpbmdzdGF0czIgJC8K LVxsb3Nlc3BhY2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxsb3Nlc3BhY2UgIzF7IzF9 JC8KLVxsb3dlcmNhc2VlbnVtZXJhdGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxsb3dl cmNhc2VlbnVtZXJhdGV7JSQvCi1cbHZ2bW9kZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGx2dm1vZGV7XFx2Ym94IHRvIDBwdHt9fSQvCi1cbWFqb3JoZWFkaW5nCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcbWFqb3JoZWFkaW5ne1xccGFyc2VhcmdcXG1ham9yaGVhZGluZ3p6en0k LwotXG1ham9yaGVhZGluZ3p6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG1ham9yaGVh ZGluZ3p6eiAjMXslJC8KLVxtYXRoCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbWF0aCMx e1xcaW1wbGljaXRtYXRoICMxXFxpbXBsaWNpdG1hdGh9JC8KLVxtZW51CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGxvbmdcXGRlZlxcbWVudSAjMVxcZW5kIG1lbnV7fSQvCi1cbWludXMJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxtaW51c3skLSR9JC8KLVxteWxicmFjZQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXG15bGJyYWNlIHt7XFx0dCBcXGNoYXIgJzE3M319JC8KLVxteXJi cmFjZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG15cmJyYWNlIHt7XFx0dCBcXGNoYXIg JzE3NX19JC8KLVxuZWVkCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbmVlZHtcXHBhcnNl YXJnXFxuZWVkeH0kLwotXG5lZWR4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbmVlZHgj MXslJC8KLVxuZXdjb2RlaW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxuZXdjb2Rl aW5kZXggIzF7JC8KLVxuZXdpbmRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5ld2lu ZGV4ICMxeyQvCi1cbmV4dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5leHQjIzF7fVxc bmV4dH0kLwotXG5tCXRleC1zcmMvdGVzdGVudi50ZXgJL15cXG5ld2NvbW1hbmR7XFxubX1bMl17 XFxub21lbmNsYXR1cmV7IzF9eyMyfX0kLwotXG5vZGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxub2Rle1xcRU5WY2hlY2tcXHBhcnNlYXJnXFxub2Rlenp6fSQvCi1cbm9kZXh4eFsJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxub2RleHh4WyMxLCMyXXtcXGdkZWZcXGxhc3Rub2Rl eyMxfX0kLwotXG5vZGV6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxub2Rlenp6IzF7 XFxub2RleHh4IFsjMSxdfSQvCi1cbm9maWxsZXhkZW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcbm9maWxsZXhkZW50e1xccGFyc2VhcmdcXG5vZmlsbGV4ZGVudHl5eX0kLwotXG5vZmls bGV4ZGVudHl5eQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5vZmlsbGV4ZGVudHl5eSAj MXt7XFxhZHZhbmNlIFxcbGVmdHNraXAgYnkgLVxcZS8KLVxub3JtYWxiYWNrc2xhc2gJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxub3JtYWxiYWNrc2xhc2h7e1xcdHRcXHJhd2JhY2tzbGFz aHh4fX0kLwotXG5vcm1hbGNhcmV0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbm9ybWFs Y2FyZXR7Xn0kLwotXG5vcm1hbGRvdWJsZXF1b3RlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl Zlxcbm9ybWFsZG91YmxlcXVvdGV7In0kLwotXG5vcm1hbGdyZWF0ZXIJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxub3JtYWxncmVhdGVyez59JC8KLVxub3JtYWxsZXNzCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcbm9ybWFsbGVzc3s8fSQvCi1cbm9ybWFscGx1cwl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXG5vcm1hbHBsdXN7K30kLwotXG5vcm1hbHRpbGRlCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcbm9ybWFsdGlsZGV7fn0kLwotXG5vcm1hbHVuZGVyc2NvcmUJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxub3JtYWx1bmRlcnNjb3Jle199JC8KLVxub3Jt YWx2ZXJ0aWNhbGJhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5vcm1hbHZlcnRpY2Fs YmFye3x9JC8KLVxuc2JvdAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5zYm90e1xcdmJv eCQvCi1cbnN0b3AJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxuc3RvcHtcXHZib3gkLwot XG51bWJlcmVkc2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXG51bWJlcmVk c2Vje1xccGFyc2VhcmdcXHNlY3p6en0kLwotXG51bWJlcmVkc3Vic2VjCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXG91dGVyXFxkZWZcXG51bWJlcmVkc3Vic2Vje1xccGFyc2VhcmdcXG51bWJlcmVk c3Vic2VjLwotXG51bWJlcmVkc3Vic2Vjenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc bnVtYmVyZWRzdWJzZWN6enogIzF7XFxzZWNjaGVja3tzdWJzZWN0aW9ufSUkLwotXG51bWJlcmVk c3Vic3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXG51bWJlcmVkc3Vi c3Vic2Vje1xccGFyc2VhcmdcXG51bWJlcmVkc3ViLwotXG51bWJlcmVkc3Vic3Vic2Vjenp6CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbnVtYmVyZWRzdWJzdWJzZWN6enogIzF7XFxzZWNj aGVja3tzdWJzdWJzZWN0aS8KLVxudW1lcmljZW51bWVyYXRlCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcbnVtZXJpY2VudW1lcmF0ZXslJC8KLVxvZGRmb290aW5nCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcb2RkZm9vdGluZ3tcXHBhcnNlYXJnXFxvZGRmb290aW5neHh4fSQvCi1c b2RkaGVhZGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG9kZGhlYWRpbmd7XFxwYXJz ZWFyZ1xcb2RkaGVhZGluZ3h4eH0kLwotXG9uZXBhZ2VvdXQJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxvbmVwYWdlb3V0IzF7XFxob2Zmc2V0PVxcbm9ybWFsb2Zmc2V0JC8KLVxvcGVuY29u dGVudHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxvcGVuY29udGVudHN7XFxvcGVub3V0 IFxcY29udGVudHNmaWxlID0gXFxqb2JuYW0vCi1cb3BlbmluZGljZXMJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxvcGVuaW5kaWNlc3slJC8KLVxvcG5yCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcb3Bucnt7XFxzZlxcY2hhcmBcXCh9fSBcXGRlZlxcY2xucnt7XFxzZlxcY2hhcmBc XCl9fSAvCi1ccGFnZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFxkZWZcXHBhZ2V7JSQvCi1c cGFnZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHBhZ2V7XFxwYXJcXHZmaWxsXFxzdXBl cmVqZWN0fSQvCi1ccGFnZWJvZHkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwYWdlYm9k eSMxe1xcdmJveCB0b1xccGFnZWhlaWdodHtcXGJveG1heGRlcHRoPVxcLwotXHBhZ2Vzb2Zhcgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHBhZ2Vzb2ZhcntcXHVudmJveFxccGFydGlhbHBh Z2UgJSQvCi1ccGFyc2VhcmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwYXJzZWFyZyAj MXtcXGxldFxcbmV4dD0jMVxcYmVnaW5ncm91cFxcb2JleWxpbmVzLwotXHBhcnNlYXJnbGluZQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHBhcnNlYXJnbGluZXtcXGJlZ2luZ3JvdXAgXFxv YmV5bGluZXMgXFxwYXJzZWFyZy8KLVxwYXJzZWFyZ3gJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxwYXJzZWFyZ3h7JSQvCi1ccGluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc cGluZGV4IHtcXHBnaW5kZXh9JC8KLVxwbGFpbnNlY2hlYWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxwbGFpbnNlY2hlYWRpbmcgIzF7XFxzZWNoZWFkaW5naSB7IzF9fSQvCi1ccG9p bnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwb2ludHskXFxzdGFyJH0kLwotXHByaW1h cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwcmltYXJ5ICMxe1xcbGluZXsjMVxcaGZp bH19JC8KLVxwcmludAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHByaW50e1xcbGVhdmV2 bW9kZVxcbG93ZXIuMWV4XFxoYm94IHRvIDFlbXtcXGhmaWwvCi1ccHJpbnQJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxwcmludHtcXHJlYWxiYWNrc2xhc2ggcHJpbnR9JC8KLVxwcmludGVk bWFudWFsCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccHJpbnRlZG1hbnVhbHtcXGlnbm9y ZXNwYWNlcyAjNX0lJC8KLVxwcmludGVkbWFudWFsCXRleC1zcmMvdGV4aW5mby50ZXgJL15zZWN0 aW9uIGBgXFxwcmludGVkbm9kZW5hbWUnJyBpbiBcXGNpdGV7XFxwcmludGVkbWFudS8KLVxwcmlu dGVkbm9kZW5hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwcmludGVkbm9kZW5hbWV7 XFxpZ25vcmVzcGFjZXMgIzF9JSQvCi1ccHJpbnRlZG5vZGVuYW1lCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxccHJpbnRlZG5vZGVuYW1le1xcaWdub3Jlc3BhY2VzICMzfSUkLwotXHByaW50 aW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwcmludGluZGV4e1xccGFyc2Vhcmdc XGRvcHJpbnRpbmRleH0kLwotXHB4cmVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccHhy ZWYjMXtzZWUgXFx4cmVmWFsjMSwsLCwsLCxdfSQvCi1ccXVvdGF0aW9uCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxccXVvdGF0aW9ueyUkLwotXHIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxyIyMxe1xccmVhbGJhY2tzbGFzaCByIHsjIzF9fSQvCi1ccgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXHIjIzF7XFxyZWFsYmFja3NsYXNoIHIgeyMjMX19JSQvCi1ccgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXHIjMXt7XFxybSAjMX19CQklIHJvbWFuIGZvbnQkLwotXHJh d2JhY2tzbGFzaHh4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccmF3YmFja3NsYXNoeHh7 XFxpbmRleGJhY2tzbGFzaH0lIFxcaW5kZXhiYWNrc2wvCi1ccmF3YmFja3NsYXNoeHgJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxyYXdiYWNrc2xhc2h4eHtcXGluZGV4YmFja3NsYXNofSUk LwotXHJlYWRhdXhmaWxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccmVhZGF1eGZpbGV7 JSQvCi1ccmVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccmVmIzF7XFx4cmVmWFsjMSws LCwsLCxdfSQvCi1ccmVmeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHJlZngjMSMyeyUk LwotXHJlc2V0bWF0aGZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccmVzZXRtYXRo Zm9udHN7JSQvCi1ccmVzdWx0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccmVzdWx0e1xc bGVhdmV2bW9kZVxccmFpc2UuMTVleFxcaGJveCB0byAxZW17XFxoZi8KLVxyZXN1bHQJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxyZXN1bHR7XFxyZWFsYmFja3NsYXNoIHJlc3VsdH0kLwot XHJtCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccm17XFxyZWFsYmFja3NsYXNoIHJtIH0l JC8KLVxzYW1wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2FtcCAjMXtgXFx0Y2xvc2V7 IzF9J1xcbnVsbH0kLwotXHNhbXAJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzYW1wIyMx e1xccmVhbGJhY2tzbGFzaCBzYW1wIHsjIzF9fSQvCi1cc2FtcAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXHNhbXAjIzF7XFxyZWFsYmFja3NsYXNoIHNhbXAgeyMjMX19JSQvCi1cc2MJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzYyMxe3tcXHNtYWxsY2FwcyMxfX0JJSBzbWFsbGNh cHMgZm9udCQvCi1cc2VjY2hlY2sJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZWNjaGVj ayMxe1xcaWYgXFxwYWdlbm88MCAlJC8KLVxzZWNlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9e ICAgICAgXFxkZWZcXHNlY2VudHJ5ICMjMSMjMiMjMyMjNHt9JC8KLVxzZWNlbnRyeQl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXHNlY2VudHJ5IzEjMiMzIzR7XFxkb3NlY2VudHJ5eyMyLiMz XFxsYWJlbHNwYWNlLwotXHNlY2VudHJ5Zm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxzZWNlbnRyeWZvbnRze1xcdGV4dGZvbnRzfSQvCi1cc2VjZm9udHMJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxzZWNmb250c3slJC8KLVxzZWNoZWFkaW5nCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcc2VjaGVhZGluZyAjMSMyIzN7XFxzZWNoZWFkaW5naSB7IzIuIzNcXGVuc3Bh Y2UvCi1cc2VjaGVhZGluZ2JyZWFrCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2VjaGVh ZGluZ2JyZWFre1xcZG9icmVhayBcXHNlY2hlYWRpbmdza2lwIHstMTAvCi1cc2VjaGVhZGluZ2kJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZWNoZWFkaW5naSAjMXt7XFxhZHZhbmNlIFxc c2VjaGVhZGluZ3NraXAgYnkgXFwvCi1cc2Vjb25kYXJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcc2Vjb25kYXJ5ICMxIzJ7JC8KLVxzZWN6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxzZWN6enogIzF7XFxzZWNjaGVja3tzZWN0aW9ufSUkLwotXHNldAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXHNldHtcXHBhcnNlYXJnXFxzZXR4eHh9JC8KLVxzZXRjaGFwdGVybmV3 cGFnZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNldGNoYXB0ZXJuZXdwYWdlICMxIHtc XGNzbmFtZSBDSEFQUEFHIzFcXGVuZGNzLwotXHNldGNoYXB0ZXJzdHlsZQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXHNldGNoYXB0ZXJzdHlsZSAjMSB7XFxjc25hbWUgQ0hBUEYjMVxcZW5k Y3NuYW1lLwotXHNldGRlZmZvbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZXRkZWZm b250ICMxIHtcXGNzbmFtZSBERUYjMVxcZW5kY3NuYW1lfSQvCi1cc2V0ZmlsZW5hbWUJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZXRmaWxlbmFtZXslJC8KLVxzZXRyZWYJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxzZXRyZWYjMXslJC8KLVxzZXR0aXRsZQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXHNldHRpdGxle1xccGFyc2VhcmdcXHNldHRpdGxlenp6fSQvCi1cc2V0 dGl0bGV6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZXR0aXRsZXp6eiAjMXtcXGdk ZWZcXHRoaXN0aXRsZXsjMX19JC8KLVxzZXR4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxzZXR4eHggIzF7JC8KLVxzZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNme1xcZmFt PVxcc2ZmYW0gXFx0ZW5zZn0kLwotXHNmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2Z7 XFxyZWFsYmFja3NsYXNoIHNmfSUkLwotXHNob3J0Y2hhcGVudHJ5CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcc2hvcnRjaGFwZW50cnkjMSMyIzN7JSQvCi1cc2hvcnR1bm51bWJlcmVkZW50 cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzaG9ydHVubnVtYmVyZWRlbnRyeSMxIzJ7 JSQvCi1cc2luZ2xlY29kZWluZGV4ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzaW5n bGVjb2RlaW5kZXhlciAjMXtcXGRvaW5ke1xcaW5kZXhuYW1lfXtcXGNvZGUvCi1cc2luZ2xlaW5k ZXhlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNpbmdsZWluZGV4ZXIgIzF7XFxkb2lu ZHtcXGluZGV4bmFtZX17IzF9fSQvCi1cc2luZ2xlc3BhY2UJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxzaW5nbGVzcGFjZXslJC8KLVxzbAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHNse1xccmVhbGJhY2tzbGFzaCBzbCB9JSQvCi1cc21hbGxib29rCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcc21hbGxib29reyQvCi1cc21hbGxsaXNweAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXHNtYWxsbGlzcHh7XFxhYm92ZWVudmJyZWFrXFxiZWdpbmdyb3VwXFxpbkVOViQv Ci1cc21hcnRpdGFsaWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzbWFydGl0YWxpYyMx e3tcXHNsICMxfVxcZnV0dXJlbGV0XFxuZXh0XFxzbWFydGl0LwotXHNtYXJ0aXRhbGljeAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNtYXJ0aXRhbGljeHtcXGlmeFxcbmV4dCxcXGVsc2Vc XGlmeFxcbmV4dC1cXGVsc2VcXGkvCi1cc3AJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxz cHtcXHBhcnNlYXJnXFxzcHh4eH0kLwotXHNwbGl0b2ZmCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcc3BsaXRvZmYjMSMyXFxlbmRtYXJre1xcZGVmXFxmaXJzdHsjMX1cXGRlZlxccmVzdHsv Ci1cc3B4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzcHh4eCAjMXtcXHBhciBcXHZz a2lwICMxXFxiYXNlbGluZXNraXB9JC8KLVxzdGFydGNvbnRlbnRzCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcc3RhcnRjb250ZW50cyMxeyUkLwotXHN0YXJ0ZW51bWVyYXRpb24JdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzdGFydGVudW1lcmF0aW9uIzF7JSQvCi1cc3ViaGVhZGlu Zwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHN1YmhlYWRpbmd7XFxwYXJzZWFyZ1xcc3Vi c2VjaGVhZGluZ2l9JC8KLVxzdWJzZWNlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgICAg XFxkZWZcXHN1YnNlY2VudHJ5ICMjMSMjMiMjMyMjNCMjNXt9JC8KLVxzdWJzZWNlbnRyeQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHN1YnNlY2VudHJ5IzEjMiMzIzQjNXtcXGRvc3Vic2Vj ZW50cnl7IzIuIzMuIzQvCi1cc3Vic2VjZm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxzdWJzZWNmb250c3slJC8KLVxzdWJzZWNoZWFkaW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcc3Vic2VjaGVhZGluZyAjMSMyIzMjNHtcXHN1YnNlY2hlYWRpbmdpIHsjMi4jMy8KLVxz dWJzZWNoZWFkaW5nYnJlYWsJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzdWJzZWNoZWFk aW5nYnJlYWt7XFxkb2JyZWFrIFxcc3Vic2VjaGVhZGluZ3NraS8KLVxzdWJzZWNoZWFkaW5naQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHN1YnNlY2hlYWRpbmdpICMxe3tcXGFkdmFuY2Ug XFxzdWJzZWNoZWFkaW5nc2tpLwotXHN1YnN1YmhlYWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxzdWJzdWJoZWFkaW5ne1xccGFyc2VhcmdcXHN1YnN1YnNlY2hlYWRpbmdpfSQvCi1c c3Vic3Vic2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgICAgIFxcZGVmXFxzdWJzdWJz ZWNlbnRyeSAjIzEjIzIjIzMjIzQjIzUjIzZ7fSQvCi1cc3Vic3Vic2VjZW50cnkJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxzdWJzdWJzZWNlbnRyeSMxIzIjMyM0IzUjNnslJC8KLVxzdWJz dWJzZWNmb250cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHN1YnN1YnNlY2ZvbnRze1xc c3Vic2VjZm9udHN9ICUgTWF5YmUgdGhpcyBzaG8vCi1cc3Vic3Vic2VjaGVhZGluZwl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXHN1YnN1YnNlY2hlYWRpbmcgIzEjMiMzIzQjNXtcXHN1YnN1 YnNlY2hlYWRpbmcvCi1cc3Vic3Vic2VjaGVhZGluZ2kJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxzdWJzdWJzZWNoZWFkaW5naSAjMXt7XFxhZHZhbmNlIFxcc3Vic2VjaGVhZGluZy8KLVxz dWJ0aXRsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFxkZWZcXHN1YnRpdGxle1xccGFyc2Vh cmdcXHN1YnRpdGxlenp6fSUkLwotXHN1YnRpdGxlZm9udAl0ZXgtc3JjL3RleGluZm8udGV4CS9e ICAgXFxkZWZcXHN1YnRpdGxlZm9udHtcXHN1YnRpdGxlcm0gXFxub3JtYWxiYXNlbGluZXNrLwot XHN1YnRpdGxlenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL14gICBcXGRlZlxcc3VidGl0bGV6enoj IzF7e1xcc3VidGl0bGVmb250IFxccmlnaHRsaW5leyMvCi1cc3VtbWFyeWNvbnRlbnRzCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXHN1bW1hcnljb250ZW50c3slJC8KLVxzdXBl cmVqZWN0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3VwZXJlamVjdHtcXHBhclxccGVu YWx0eSAtMjAwMDBcXGZvb3Rub3Rlbm8gPTAgLwotXHN5bmNvZGVpbmRleAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXHN5bmNvZGVpbmRleCAjMSAjMiB7JSQvCi1cc3luaW5kZXgJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzeW5pbmRleCAjMSAjMiB7JSQvCi1cdAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXHQjIzF7XFxyZWFsYmFja3NsYXNoIHIgeyMjMX19JSQvCi1cdAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHQjMXt7XFx0dCBcXGV4aHlwaGVucGVuYWx0eT0x MDAwMFxccmF3YmFja3NsYXNoIC8KLVx0YWJsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHRhYmxle1xcYmVnaW5ncm91cFxcaW5FTlZcXG9iZXlsaW5lc1xcb2JleXNwYWNlc1xcLwotXHRh Ymxlegl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHRhYmxleiAjMSMyIzMjNCM1IzZ7JSQv Ci1cdGNsb3NlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdGNsb3NlIyMxe1xccmVhbGJh Y2tzbGFzaCB0Y2xvc2UgeyMjMX19JC8KLVx0Y2xvc2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFx0Y2xvc2UjIzF7XFxyZWFsYmFja3NsYXNoIHRjbG9zZSB7IyMxfX0lJC8KLVx0Y2xvc2UJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0Y2xvc2UjMXt7XFxybSBcXHRjbG9zZXJtPVxc Zm9udGRpbWVuMlxcZm9udCBcXHR0IC8KLVx0ZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFx0ZXh7XFxiZWdpbmdyb3VwJC8KLVx0ZXhpbmZvdmVyc2lvbgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXHRleGluZm92ZXJzaW9uezIuNzN9JC8KLVx0ZXh0Zm9udHMJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFx0ZXh0Zm9udHN7JSQvCi1cdGhlYXJnCXRleC1zcmMvdGV4aW5mby50 ZXgJL14gIFxcZGVmXFx0aGVhcmd7IzF9JSQvCi1cdGhlYXJnCXRleC1zcmMvdGV4aW5mby50ZXgJ L14gIFxcaWZ4XFx0aGVhcmdcXGVtcHR5IFxcZGVmXFx0aGVhcmd7MX1cXGZpJC8KLVx0aGlzY2hh cHRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFx1bm51bWJjaGFwbWFjcm97IzF9XFxkZWZc XHRoaXNjaGFwdGVye30lJC8KLVx0aGlzY2hhcHRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXHRoaXNjaGFwdGVye30gXFxkZWZcXHRoaXNzZWN0aW9ue30kLwotXHRoaXNjaGFwdGVybmFt ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHRoaXNjaGFwdGVybmFtZXtObyBDaGFwdGVy IFRpdGxlfSQvCi1cdGhpc2ZpbGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0aGlzZmls ZXt9JC8KLVx0aGlzdGl0bGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0aGlzdGl0bGV7 Tm8gVGl0bGV9JC8KLVx0aWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0aWV7XFxwZW5h bHR5IDEwMDAwXFwgfSAgICAgJSBTYXZlIHBsYWluIHRleCBkZS8KLVx0aW5kZXgJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFx0aW5kZXgge1xcdHBpbmRleH0kLwotXHRpdGxlCXRleC1zcmMv dGV4aW5mby50ZXgJL14gICBcXGRlZlxcdGl0bGV7XFxwYXJzZWFyZ1xcdGl0bGV6enp9JSQvCi1c dGl0bGVmb250CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdGl0bGVmb250IzF7e1xcdGl0 bGVybSAjMX19JC8KLVx0aXRsZXBhZ2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0aXRs ZXBhZ2V7XFxiZWdpbmdyb3VwIFxccGFyaW5kZW50PTBwdCBcXHRleHRmb24vCi1cdGl0bGV6enoJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgIFxcZGVmXFx0aXRsZXp6eiMjMXtcXGxlZnRsaW5le1xc dGl0bGVmb250eyMjMX19JC8KLVx0b2RheQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHRv ZGF5e1xcbnVtYmVyXFxkYXlcXHNwYWNlJC8KLVx0b3AJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc b3V0ZXJcXGRlZlxcdG9we1xccGFyc2VhcmdcXHVubnVtYmVyZWR6enp9JC8KLVx0dAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXHR0e1xccmVhbGJhY2tzbGFzaCB0dH0kLwotXHR0CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdHR7XFxyZWFsYmFja3NsYXNoIHR0fSUkLwotXHR1cm5v ZmZhY3RpdmUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0dXJub2ZmYWN0aXZle1xcbGV0 Ij1cXG5vcm1hbGRvdWJsZXF1b3RlJC8KLVx1bm5jaGZvcGVuCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcdW5uY2hmb3BlbiAjMXslJC8KLVx1bm5jaGZwbGFpbgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXHVubmNoZnBsYWluICMxeyUkLwotXHVubnVtYmNoYXBlbnRyeQl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXHVubnVtYmNoYXBlbnRyeSMxIzJ7XFxkb2NoYXBlbnRyeXsj MX17IzJ9fSQvCi1cdW5udW1iZXJlZAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVm XFx1bm51bWJlcmVke1xccGFyc2VhcmdcXHVubnVtYmVyZWR6enp9JC8KLVx1bm51bWJlcmVkc2Vj CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXHVubnVtYmVyZWRzZWN7XFxwYXJz ZWFyZ1xcdW5udW1iZXJlZHNlY3p6LwotXHVubnVtYmVyZWRzZWN6enoJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFx1bm51bWJlcmVkc2Vjenp6ICMxe1xcc2VjY2hlY2t7dW5udW1iZXJlZHNl Y30lLwotXHVubnVtYmVyZWRzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRl ZlxcdW5udW1iZXJlZHN1YnNlY3tcXHBhcnNlYXJnXFx1bm51bWJlcmVkc3UvCi1cdW5udW1iZXJl ZHN1YnNlY3p6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHVubnVtYmVyZWRzdWJzZWN6 enogIzF7XFxzZWNjaGVja3t1bm51bWJlcmVkc3UvCi1cdW5udW1iZXJlZHN1YnN1YnNlYwl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFx1bm51bWJlcmVkc3Vic3Vic2Vje1xccGFy c2VhcmdcXHVubnVtYmVyZS8KLVx1bm51bWJlcmVkc3Vic3Vic2Vjenp6CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcdW5udW1iZXJlZHN1YnN1YnNlY3p6eiAjMXtcXHNlY2NoZWNre3VubnVt YmVyZS8KLVx1bm51bWJlcmVkenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdW5udW1i ZXJlZHp6eiAjMXtcXHNlY2NoZWNre3VubnVtYmVyZWR9JSQvCi1cdW5udW1ibm9kZXJlZgl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHVubnVtYm5vZGVyZWZ7XFxpZnhcXGxhc3Rub2RlXFxy ZWxheFxcZWxzZSQvCi1cdW5udW1ic2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgICAg IFxcZGVmXFx1bm51bWJzZWNlbnRyeSAjIzEjIzJ7fSQvCi1cdW5udW1ic2VjZW50cnkJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFx1bm51bWJzZWNlbnRyeSMxIzJ7XFxkb3NlY2VudHJ5eyMx fXsjMn19JC8KLVx1bm51bWJzZXRyZWYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx1bm51 bWJzZXRyZWYjMXslJC8KLVx1bm51bWJzdWJzZWNlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9e ICAgICAgXFxkZWZcXHVubnVtYnN1YnNlY2VudHJ5ICMjMSMjMnt9JC8KLVx1bm51bWJzdWJzZWNl bnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHVubnVtYnN1YnNlY2VudHJ5IzEjMntc XGRvc3Vic2VjZW50cnl7IzF9eyMyfX0vCi1cdW5udW1ic3Vic3Vic2VjZW50cnkJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXiAgICAgIFxcZGVmXFx1bm51bWJzdWJzdWJzZWNlbnRyeSAjIzEjIzJ7fSQv Ci1cdW5udW1ic3Vic3Vic2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx1bm51 bWJzdWJzdWJzZWNlbnRyeSMxIzJ7XFxkb3N1YnN1YnNlY2VudHJ5eyMxLwotXHVwcGVyY2FzZWVu dW1lcmF0ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHVwcGVyY2FzZWVudW1lcmF0ZXsl JC8KLVx2YXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx2YXIjIzF7XFxyZWFsYmFja3Ns YXNoIHZhciB7IyMxfX0kLwotXHZhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHZhciMj MXtcXHJlYWxiYWNrc2xhc2ggdmFyIHsjIzF9fSUkLwotXHZpbmRleAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXHZpbmRleCB7XFx2cmluZGV4fSQvCi1cdnJpdGVtaW5kZXgJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFx2cml0ZW1pbmRleCAjMXtcXGRvaW5kIHt2cn17XFxjb2RleyMx fX19JSQvCi1cdnRhYmxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdnRhYmxle1xcYmVn aW5ncm91cFxcaW5FTlZcXG9iZXlsaW5lc1xcb2JleXNwYWNlcy8KLVx3CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcdyMxe1xcbGVhdmV2bW9kZVxcaGJveHsjMX19JC8KLVx3CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcd3tcXHJlYWxiYWNrc2xhc2ggdyB9JSQvCi1cdwl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXHd7XFxyZWFsYmFja3NsYXNoIHd9JC8KLVx4aXRlbQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHhpdGVte1xcZXJybWVzc2FnZXtAeGl0ZW0gd2hpbGUg bm90IGluIGEgdGFibGUvCi1ceGl0ZW14CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxceGl0 ZW14e1xcZXJybWVzc2FnZXtAeGl0ZW14IHdoaWxlIG5vdCBpbiBhIHRhYi8KLVx4aXRlbXp6egl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHhpdGVtenp6ICMxe1xcZG9zdWJpbmQge2t3fXtc XGNvZGV7IzF9fXtmb3Ige1xcYi8KLVx4a2V5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc eGtleXtcXGtleX0kLwotXHhyZGVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxceHJkZWYg IzEjMnskLwotXHhyZWYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx4cmVmIzF7U2VlIFxc eHJlZlhbIzEsLCwsLCwsXX0kLwotXHhyZWZYWwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHhyZWZYWyMxLCMyLCMzLCM0LCM1LCM2XXtcXGJlZ2luZ3JvdXAlJC8KK10JdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZ2RlZlxcYm9sZGJyYXh7XFxsZXQoPVxcb3BuclxcbGV0KT1cXGNsbnJcXGxl dFs9XFxsYnJiXFxsLwogXgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZee3tcXHR0IFxcaGF0 fX0kLworXgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRePVxcbm9ybWFsY2FyZXQkLworXwl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXF97XFxsdnZtb2RlIFxca2Vybi4wNmVtIFxcdmJv eHtcXGhydWxlIHdpZHRoLjNlbSAvCitfCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcX3t7 XFxyZWFsYmFja3NsYXNoIF99fSUkLwogXwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZfe1xc aWZ1c2luZ3R0XFxub3JtYWx1bmRlcnNjb3JlXFxffSQvCitfCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGxldF89XFxub3JtYWx1bmRlcnNjb3JlJC8KIF9HRVRPUFRfSAljLXNyYy9nZXRvcHQuaAkx OQogX0dOVV9TT1VSQ0UJYy1zcmMvZXRhZ3MuYwk5NAogX1JFR0VYX0gJYy1zcmMvZW1hY3Mvc3Jj L3JlZ2V4LmgJMjEKQEAgLTIyNjMsNiArMTc4OSw3IEBAIF9yZWFsbG9jCWMtc3JjL2VtYWNzL3Ny Yy9nbWFsbG9jLmMJL15fcmVhbGxvYyAodm9pZCAqcHRyLCBzaXplX3Qgc2l6ZSkkLwogX3JlYWxs b2NfaW50ZXJuYWwJYy1zcmMvZW1hY3Mvc3JjL2dtYWxsb2MuYwkvXl9yZWFsbG9jX2ludGVybmFs ICh2b2lkICpwdHIsIHNpemVfdCBzaXplKSQvCiBfcmVhbGxvY19pbnRlcm5hbF9ub2xvY2sJYy1z cmMvZW1hY3Mvc3JjL2dtYWxsb2MuYwkvXl9yZWFsbG9jX2ludGVybmFsX25vbG9jayAodm9pZCAq cHRyLCBzaXplX3Qgc2l6ZSkkLwogYAlydWJ5LXNyYy90ZXN0LnJiCS9eICAgICAgICBkZWYgYChj b21tYW5kKSQvCitgCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYHt7YH19JC8KIGEJYy1z cmMvaC5oCTEwMwogYQljLXNyYy9oLmgJNDAKIGEJYy5jCS9eYSAoKSQvCkBAIC0yMjk4LDYgKzE4 MjUsNyBAQCBhYmJyZXZzX2NoYW5nZWQJYy1zcmMvYWJicmV2LmMJNTYKIGFiYwljLXNyYy9oLmgJ MzMKIGFiYwljLXNyYy9oLmgJMzcKIGFib3J0LXJlY3Vyc2l2ZS1lZGl0CWMtc3JjL2VtYWNzL3Ny Yy9rZXlib2FyZC5jCS9eREVGVU4gKCJhYm9ydC1yZWN1cnNpdmUtZWRpdCIsIEZhYm9ydF9yZWN1 cnNpdmVfZWQvCithYm92ZWVudmJyZWFrCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYWJv dmVlbnZicmVha3t7XFxhZHZhbmNlXFxhYm92ZWVudnNraXBhbW91bnQgYnkvCiBhYnMvZglhZGEt c3JjL2V0YWdzLXRlc3QtZm9yLmFkYQkvXiAgIGZ1bmN0aW9uICJhYnMiICAgKFJpZ2h0IDogQ29t cGxleCkgcmV0dXJuIFJlYWwnLwogYWJzb2x1dGVfZGlybmFtZQljLXNyYy9ldGFncy5jCS9eYWJz b2x1dGVfZGlybmFtZSAoY2hhciAqZmlsZSwgY2hhciAqZGlyKSQvCiBhYnNvbHV0ZV9maWxlbmFt ZQljLXNyYy9ldGFncy5jCS9eYWJzb2x1dGVfZmlsZW5hbWUgKGNoYXIgKmZpbGUsIGNoYXIgKmRp cikkLwpAQCAtMjM0Niw2ICsxODc0LDggQEAgYWNjdV93YXJuaW5nCW1lcmMtc3JjL2FjY3VtdWxh dG9yLm0JL146LSB0eXBlIGFjY3Vfd2FybmluZyQvCiBhY3QJcHJvbC1zcmMvbmF0ZGVkLnByb2xv ZwkvXmFjdChPdXRGb3JtLE91dFN5bixXcyk6LSQvCiBhY3Rpb24JcHJvbC1zcmMvbmF0ZGVkLnBy b2xvZwkvXmFjdGlvbihLZXlWYWxzKTotJC8KIGFjdGl2ZV9tYXBzCWMtc3JjL2VtYWNzL3NyYy9r ZXlib2FyZC5jCS9eYWN0aXZlX21hcHMgKExpc3BfT2JqZWN0IGZpcnN0X2V2ZW50KSQvCithY3Rp dmVkb3VibGVxdW90ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFjdGl2ZWRvdWJsZXF1 b3Rle3tcXHR0IFxcY2hhciAnMDQyfX0kLworYWN0aXZlcGFyZW5zCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcYWN0aXZlcGFyZW5zeyUkLwogYWN0b3V0CXByb2wtc3JjL25hdGRlZC5wcm9s b2cJL15hY3RvdXQoJ1RleHQnLFRyZWVzKTotJC8KIGFkZEFyY2hzCW9iamMtc3JjL1BhY2tJbnNw Lm0JL14tKHZvaWQpYWRkQXJjaHM6KGNvbnN0IGNoYXIgKilzdHJpbmckLwogYWRkUE9SZWFkZXIJ cGhwLXNyYy9sY2VfZnVuY3Rpb25zLnBocAkvXiAgICAgIGZ1bmN0aW9uIGFkZFBPUmVhZGVyKCRk X25hbWUsICYkcG9yKSQvCkBAIC0yMzU4LDYgKzE4ODgsOCBAQCBhZGRfdXNlcl9zaWduYWwJYy1z cmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15hZGRfdXNlcl9zaWduYWwgKGludCBzaWcsIGNvbnN0 IGNoYQogYWRkbm9pc2UJaHRtbC1zcmMvYWxncnRobXMuaHRtbAkvXkFkZGluZyBOb2lzZSB0byB0 aGUkLwogYWRkcmVzcwl5LXNyYy9jY2NwLnkJMTEzCiBhZGp1c3RfcG9pbnRfZm9yX3Byb3BlcnR5 CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eYWRqdXN0X3BvaW50X2Zvcl9wcm9wZXJ0eSAo cHRyZGlmZl90IGxhc3RfcHQsIGJvb2wvCithZm91cnBhcGVyCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcYWZvdXJwYXBlcnskLworYWZ0ZXJlbnZicmVhawl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGFmdGVyZW52YnJlYWt7XFxlbmRncmFmIFxcaWZkaW1cXGxhc3Rza2lwPFxcYWJv dmUvCiBhZ2VudAljcC1zcmMvY2xoZWlyLmhwcAk3NQogYWxnb3JpdGhtcwlodG1sLXNyYy9hbGdy dGhtcy5odG1sCS9eRGVzY3JpcHRpb24kLwogYWxpYXMJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAk2 ODgKQEAgLTIzNzIsNiArMTkwNCw5IEBAIGFsaXZlCWNwLXNyYy9jb253YXkuaHBwCTcKIGFsbF9r Ym9hcmRzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTg2CiBhbGxvY2F0ZV9rYm9hcmQJYy1z cmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15hbGxvY2F0ZV9rYm9hcmQgKExpc3BfT2JqZWN0IHR5 cGUpJC8KIGFsbG9jYXRlZAljLXNyYy9lbWFjcy9zcmMvcmVnZXguaAkzNDQKK2FscGhhZW51bWVy YXRlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYWxwaGFlbnVtZXJhdGV7XFxlbnVtZXJh dGV7YX19JC8KK2FtcG5yCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcb3Bucnt7XFxzZlxc Y2hhcmBcXCh9fSBcXGRlZlxcY2xucnt7XFxzZlxcY2hhcmBcXCl9fSAvCithbXBybQl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxnZGVmXFxhbXBybSMxIHt7XFxybVxcJiMxfVxcbGV0KD1cXG9wcm0g XFxsZXQpPVxcY2xybVxcIH0vCiBhbl9leHRlcm5fbGlua2FnZQljLXNyYy9oLmgJNDQKIGFuX2V4 dGVybl9saW5rYWdlCWMtc3JjL2guaAk1NgogYW5fZXh0ZXJuX2xpbmthZ2VfcHRyCWMtc3JjL2gu aAk0MwpAQCAtMjM4OCw4ICsxOTIzLDI3IEBAIGFwcGVuZF9saXN0CXByb2wtc3JjL25hdGRlZC5w cm9sb2cJL15hcHBlbmRfbGlzdChbXSxbXSkuJC8KIGFwcGVuZF9zdHJpbmcJcGFzLXNyYy9jb21t b24ucGFzCS9ecHJvY2VkdXJlIGFwcGVuZF9zdHJpbmc7KCooJC8KIGFwcGVuZF90b29sX2Jhcl9p dGVtCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eYXBwZW5kX3Rvb2xfYmFyX2l0ZW0gKHZv aWQpJC8KIGFwcGVuZGl4CXBlcmwtc3JjL2h0bG1pZnktY3lzdGljCTI0CithcHBlbmRpeAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGFwcGVuZGl4PVxccmVsYXgkLworYXBwZW5kaXgJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRlZlxcYXBwZW5kaXh7XFxwYXJzZWFyZ1xcYXBw ZW5kaXh6enp9JC8KIGFwcGVuZGl4X25hbWUJcGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJMTMKIGFw cGVuZGl4X3RvYwlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkxNgorYXBwZW5kaXhsZXR0ZXIJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxhcHBlbmRpeGxldHRlcntcXGNoYXJcXHRoZVxcYXBw ZW5kaXhub30kLworYXBwZW5kaXhub2RlcmVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc YXBwZW5kaXhub2RlcmVme1xcaWZ4XFxsYXN0bm9kZVxccmVsYXhcXGVsc2UkLworYXBwZW5kaXhz ZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxhcHBlbmRpeHNlYz1cXHJlbGF4JC8KK2Fw cGVuZGl4c2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXGFwcGVuZGl4c2Vj e1xccGFyc2VhcmdcXGFwcGVuZGl4c2VjdGlvbnp6LworYXBwZW5kaXhzZWN0aW9uCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGxldFxcYXBwZW5kaXhzZWN0aW9uPVxccmVsYXgkLworYXBwZW5kaXhz ZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXGFwcGVuZGl4c2VjdGlv bntcXHBhcnNlYXJnXFxhcHBlbmRpeHNlY3RpLworYXBwZW5kaXhzZWN0aW9uenp6CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcYXBwZW5kaXhzZWN0aW9uenp6ICMxe1xcc2VjY2hlY2t7YXBw ZW5kaXhzZWN0aS8KK2FwcGVuZGl4c2V0cmVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc YXBwZW5kaXhzZXRyZWYjMXslJC8KK2FwcGVuZGl4c3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGxldFxcYXBwZW5kaXhzdWJzZWM9XFxyZWxheCQvCithcHBlbmRpeHN1YnNlYwl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxhcHBlbmRpeHN1YnNlY3tcXHBhcnNlYXJnXFxh cHBlbmRpeHN1YnNlYy8KK2FwcGVuZGl4c3Vic2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxsZXRcXGFwcGVuZGl4c3Vic2VjdGlvbj1cXHJlbGF4JC8KK2FwcGVuZGl4c3Vic2Vjenp6CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYXBwZW5kaXhzdWJzZWN6enogIzF7XFxzZWNjaGVj a3thcHBlbmRpeHN1YnNlYy8KK2FwcGVuZGl4c3Vic3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGxldFxcYXBwZW5kaXhzdWJzdWJzZWM9XFxyZWxheCQvCithcHBlbmRpeHN1YnN1YnNlYwl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxhcHBlbmRpeHN1YnN1YnNlY3tcXHBh cnNlYXJnXFxhcHBlbmRpeHN1Yi8KK2FwcGVuZGl4c3Vic3Vic2VjdGlvbgl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxsZXRcXGFwcGVuZGl4c3Vic3Vic2VjdGlvbj1cXHJlbGF4JC8KK2FwcGVuZGl4 c3Vic3Vic2Vjenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYXBwZW5kaXhzdWJzdWJz ZWN6enogIzF7XFxzZWNjaGVja3thcHBlbmRpeHN1Yi8KK2FwcGVuZGl4enp6CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcYXBwZW5kaXh6enogIzF7XFxzZWNjaGVja3thcHBlbmRpeH0lJC8K IGFwcGx5X21vZGlmaWVycwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmFwcGx5X21vZGlm aWVycyAoaW50IG1vZGlmaWVycywgTGlzcF9PYmplY3QgYmFzZSkkLwogYXBwbHlfbW9kaWZpZXJz X3VuY2FjaGVkCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eYXBwbHlfbW9kaWZpZXJzX3Vu Y2FjaGVkIChpbnQgbW9kaWZpZXJzLCBjaGFyICpiYXMvCiBhcmVmX2FkZHIJYy1zcmMvZW1hY3Mv c3JjL2xpc3AuaAkvXmFyZWZfYWRkciAoTGlzcF9PYmplY3QgYXJyYXksIHB0cmRpZmZfdCBpZHgp JC8KQEAgLTI0MDksNiArMTk2Myw3IEBAIGFyZ3VtZW50CWMtc3JjL2V0YWdzLmMJMjUzCiBhcmd2 YWxzCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15hcmd2YWxzKFtdKSAtLT4gW10uJC8KIGFycmF5 CWMuYwkxOTAKIGFzY2lpCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTU5OAorYXNpcwl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGFzaXMjMXsjMX0kLwogYXNvcnQJY3Atc3JjL2Z1bmN0aW9u cy5jcHAJL152b2lkIGFzb3J0KGludCAqYSwgaW50IG51bSl7JC8KIGFzc2VtYnktY29kZS13b3Jk CWZvcnRoLXNyYy90ZXN0LWZvcnRoLmZ0aAkvXmNvZGUgYXNzZW1ieS1jb2RlLXdvcmQgKCBkdW5u byB3aGF0IGl0IGRvZXMgKSQvCiBhc3NlcnQJYy1zcmMvZXRhZ3MuYwkvXiMgZGVmaW5lIGFzc2Vy dCh4KSAoKHZvaWQpIDApJC8KQEAgLTI0MjYsNyArMTk4MSwxMSBAQCBhdG9tCXByb2wtc3JjL25h dGRlZC5wcm9sb2cJL15hdG9tKFgpIC0tPiBbWF0sIHthdG9taWMoWCl9LiQvCiBhdG9tdmFsCXBy b2wtc3JjL25hdGRlZC5wcm9sb2cJL15hdG9tdmFsKFgpIC0tPiBhdG9tKFgpLiQvCiBhdWx0cGFy aW5kZW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG5ld2RpbWVuXFxkZWZhdWx0cGFyaW5kZW50 IFxcZGVmYXVsdHBhcmluZGVudCA9IDE1cC8KIGF1bHRwYXJpbmRlbnQJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxccGFyaW5kZW50ID0gXFxkZWZhdWx0cGFyaW5kZW50JC8KLWF1bHRwYXJpbmRlbnRc aGFuZ1x0ZXh0aW5kZW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGZvb3RzdHJ1dFxccGFyaW5k ZW50PVxcZGVmYXVsdHBhcmluZGVudFxcaGFuZ1xcdGV4dGluLworYXVsdHBhcmluZGVudFxoYW5n CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGZvb3RzdHJ1dFxccGFyaW5kZW50PVxcZGVmYXVsdHBh cmluZGVudFxcaGFuZ1xcdGV4dGluLworYXV0aG9yCXRleC1zcmMvdGV4aW5mby50ZXgJL14gICBc XGRlZlxcYXV0aG9ye1xccGFyc2VhcmdcXGF1dGhvcnp6en0lJC8KK2F1dGhvcmZvbnQJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXiAgIFxcZGVmXFxhdXRob3Jmb250e1xcYXV0aG9ycm0gXFxub3JtYWxi YXNlbGluZXNraXAgPS8KK2F1dGhvcnJtCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcYXV0 aG9ycm0gPSBcXHNlY3JtJC8KK2F1dGhvcnp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFxk ZWZcXGF1dGhvcnp6eiMjMXtcXGlmc2VlbmF1dGhvclxcZWxzZVxcdnNraXAgMHB0IC8KIGF1dG9f aGVscAljLXNyYy9ldGFncy5jCTY5OQogYgljLXNyYy9oLmgJMTAzCiBiCWMtc3JjL2guaAkxMDQK QEAgLTI0MzgsNyArMTk5NywxNCBAQCBiCWMuYwkyNjAKIGIJYy5jCTI2MgogYgljcC1zcmMvYy5D CTEzMgogYglydWJ5LXNyYy90ZXN0MS5ydQkvXiBkZWYgYigpJC8KLWJhY2tzbGFzaD0wCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGxldFxcaW5kZXhiYWNrc2xhc2g9MCAgJW92ZXJyaWRkZW4gZHVy aW5nIFxccHJpbnRpbi8KK2IJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxiIyMxe1xccmVh bGJhY2tzbGFzaCBiIHsjIzF9fSQvCitiCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYiMj MXtcXHJlYWxiYWNrc2xhc2ggYiB7IyMxfX0lJC8KK2IJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxiIzF7e1xcYmYgIzF9fSQvCitiCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcYj1c XGluZGV4ZHVtbXlmb250JC8KK2IJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxiPVxccHRl eGIgXFxsZXRcXGM9XFxwdGV4YyBcXGxldFxcaT1cXHB0ZXhpIFxcbGV0XFx0PVxcLworYmFja3Ns YXNoCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccmF3YmFja3NsYXNoeHh7XFxpbmRleGJh Y2tzbGFzaH0lIFxcaW5kZXhiYWNrc2wvCitiYWNrc2xhc2gJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxyYXdiYWNrc2xhc2h4eHtcXGluZGV4YmFja3NsYXNofSUkLworYmFsYW5jZWNvbHVt bnMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxiYWxhbmNlY29sdW1uc3slJC8KIGJhcglj LXNyYy9jLmMJL152b2lkIGJhcigpIHt3aGlsZSgwKSB7fX0kLwogYmFyCWMtc3JjL2guaAkxOQog YmFyCWMuYwkxNDMKQEAgLTI0NTgsOSArMjAyNCwxNiBAQCBiYmJiYmIJYy1zcmMvaC5oCTExMwog YmVlbl93YXJuZWQJYy1zcmMvZXRhZ3MuYwkyMjIKIGJlZm9yZV9jb21tYW5kX2VjaG9fbGVuZ3Ro CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTEzMAogYmVmb3JlX2NvbW1hbmRfa2V5X2NvdW50 CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTEyOQorYmVnaW4JdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcb3V0ZXJcXGRlZlxcYmVnaW57XFxwYXJzZWFyZ1xcYmVnaW54eHh9JC8KK2JlZ2luZG91 YmxlY29sdW1ucwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGJlZ2luZG91YmxlY29sdW1u c3tcXGJlZ2luZ3JvdXAkLworYmVnaW54eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxi ZWdpbnh4eCAjMXslJC8KIGJlZ3Rva2VuCWMtc3JjL2V0YWdzLmMJL14jZGVmaW5lCWJlZ3Rva2Vu KGMpCShfYnRrW0NIQVIgKGMpXSkgXC8qIGMgY2FuIHN0YXIvCiBiZWhhdmlvdXJfaW5mbwllcmwt c3JjL2dzX2RpYWxvZy5lcmwJL15iZWhhdmlvdXJfaW5mbyhjYWxsYmFja3MpIC0+JC8KLWJmPWNt YngxMAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxmb250XFxkZWZiZj1jbWJ4MTAgc2NhbGVkIFxc bWFnc3RlcDEgJXdhcyAxMzE0JC8KK2JmCXRleC1zcmMvdGV4aW5mby50ZXgJL14gICAgICBcXGxl dFxccm09XFxzaG9ydGNvbnRybSBcXGxldFxcYmY9XFxzaG9ydGNvbnRiZiBcXGwvCitiZgl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGJme1xccmVhbGJhY2tzbGFzaCBiZiB9JC8KK2JmCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYmZ7XFxyZWFsYmFja3NsYXNoIGJmIH0lJC8KK2Jm CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGZ7XFxsZXRcXHRlbnR0PVxcZGVmdHQgXFxs ZXRcXHRlbmJmID0gXFxkZWZiZiBcXGJmfS8KK2JmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGZv bnRcXGRlZmJmPWNtYngxMCBzY2FsZWQgXFxtYWdzdGVwMSAld2FzIDEzMTQkLwogYmluZAlweXQt c3JjL3NlcnZlci5weQkvXiAgICBkZWYgYmluZChzZWxmLCBrZXksIGFjdGlvbik6JC8KIGJpbmRf cG9sbGluZ19wZXJpb2QJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15iaW5kX3BvbGxpbmdf cGVyaW9kIChpbnQgbikkLwogYml0c193b3JkCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTIzCkBA IC0yNDc2LDYgKzIwNDksNyBAQCBib2R5aW5kZW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGFk dmFuY2VcXGxlZnRza2lwIGJ5IC1cXGRlZmJvZHlpbmRlbnQkLwogYm9keWluZGVudAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxhZHZhbmNlXFxsZWZ0c2tpcCBieSBcXGRlZmJvZHlpbmRlbnQgXFxh ZHZhbmNlIFxccmlnaC8KIGJvZHlpbmRlbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZXhkZW50 YW1vdW50PVxcZGVmYm9keWluZGVudCQvCiBib2R5aW5kZW50CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXG5ld3NraXBcXGRlZmJvZHlpbmRlbnQgXFxkZWZib2R5aW5kZW50PS40aW4kLworYm9sZGJy YXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcYm9sZGJyYXh7XFxsZXQoPVxcb3Buclxc bGV0KT1cXGNsbnJcXGxldFs9XFxsYnJiXFxsLwogYm9vbAljLmMJMjIyCiBib29sCW1lcmMtc3Jj L2FjY3VtdWxhdG9yLm0JL146LSBpbXBvcnRfbW9kdWxlIGJvb2wuJC8KIGJvb2xfaGVhZGVyX3Np emUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxNDcyCkBAIC0yNDg4LDYgKzIwNjIsNyBAQCBib29s X3ZlY3Rvcl9zaXplCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL15ib29sX3ZlY3Rvcl9zaXplIChM aXNwX09iamVjdCBhKSQvCiBib29sX3ZlY3Rvcl91Y2hhcl9kYXRhCWMtc3JjL2VtYWNzL3NyYy9s aXNwLmgJL15ib29sX3ZlY3Rvcl91Y2hhcl9kYXRhIChMaXNwX09iamVjdCBhKSQvCiBib29sX3Zl Y3Rvcl93b3JkcwljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eYm9vbF92ZWN0b3Jfd29yZHMgKEVN QUNTX0lOVCBzaXplKSQvCiBib29sdmFyCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMjI4NworYnIJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxiciA9IFxccGFyJC8KIGJyYWNlbGV2CWMtc3Jj L2V0YWdzLmMJMjUyMAogYnNwX0RldklkCWMtc3JjL2guaAkyNQogYnQJYy1zcmMvZW1hY3Mvc3Jj L2xpc3AuaAkyOTg4CkBAIC0yNTAxLDEwICsyMDc2LDEzIEBAIGJ1aWxkX3B1cmVfY19zdHJpbmcJ Yy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXmJ1aWxkX3B1cmVfY19zdHJpbmcgKGNvbnN0IGNoYXIg KnN0CiBidWlsZF9zdHJpbmcJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXmJ1aWxkX3N0cmluZyAo Y29uc3QgY2hhciAqc3RyKSQvCiBidWlsZGFjdAlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9eYnVp bGRhY3QoW1N5bkluXSxSaWdodCxSaWdodFBsdXMxKTotJC8KIGJ1aWx0aW5fbGlzcF9zeW1ib2wJ Yy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXmJ1aWx0aW5fbGlzcF9zeW1ib2wgKGludCBpbmRleCkk LworYnVsbGV0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYnVsbGV0eyRcXHB0ZXhidWxs ZXQkfSQvCitidWxsZXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxidWxsZXQ9XFxwdGV4 YnVsbGV0JC8KIGJ1cnN0CWMtc3JjL2guaAkyOAogYnVzeQljLXNyYy9lbWFjcy9zcmMvZ21hbGxv Yy5jCTE1OAogYnV0dG9uX2Rvd25fbG9jYXRpb24JYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJ NTIxMAogYnV0dG9uX2Rvd25fdGltZQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwk1MjE4Citi eWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRlZlxcYnlle1xccGFnZWFsaWdubWFj cm9cXHRyYWNpbmdzdGF0cz0xXFxwdGV4LwogYnl0ZV9zdGFjawljLXNyYy9lbWFjcy9zcmMvbGlz cC5oCTMwNDkKIGJ5dGVjb2RlX2Rlc3QJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkzMDM3CiBieXRl Y29kZV90b3AJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkzMDM2CkBAIC0yNTE1LDYgKzIwOTMsOCBA QCBieXRlc191c2VkCWMtc3JjL2VtYWNzL3NyYy9nbWFsbG9jLmMJMzEyCiBjCWMtc3JjL2guaAkv XiNkZWZpbmUgYygpIGQkLwogYwljLXNyYy9oLmgJMTA2CiBjCWMuYwkxODAKK2MJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcbGV0XFxiPVxccHRleGIgXFxsZXRcXGM9XFxwdGV4YyBcXGxldFxcaT1c XHB0ZXhpIFxcbGV0XFx0PVxcLworYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGM9XFxj b21tZW50JC8KIGNfZXh0CWMtc3JjL2V0YWdzLmMJMjI3MQogY2FjY2FjYWNjYQljLmMJL15jYWNj YWNhY2NhIChhLGIsYyxkLGUsZixnKSQvCiBjYWNoZUxSVUVudHJ5X3MJYy5jCTE3MgpAQCAtMjUy NywyMSArMjEwNyw0NyBAQCBjYWxsb2MJYy1zcmMvZW1hY3Mvc3JjL2dtYWxsb2MuYwk3MAogY2Fu X2JlX251bGwJYy1zcmMvZW1hY3Mvc3JjL3JlZ2V4LmgJMzcwCiBjYW5jZWxfZWNob2luZwljLXNy Yy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmNhbmNlbF9lY2hvaW5nICh2b2lkKSQvCiBjYW5vbmlj YWxpemVfZmlsZW5hbWUJYy1zcmMvZXRhZ3MuYwkvXmNhbm9uaWNhbGl6ZV9maWxlbmFtZSAocmVn aXN0ZXIgY2hhciAqZm4pJC8KK2NhcHNlbnVtZXJhdGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxjYXBzZW51bWVyYXRle1xcZW51bWVyYXRle0F9fSQvCitjYXJ0Ym90CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcY2FydGJvdHtcXGhib3ggdG8gXFxjYXJ0b3V0ZXJ7XFxoc2tpcFxc bHNraXAkLworY2FydG91Y2hlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxvbmdcXGRlZlxcY2Fy dG91Y2hleyUkLworY2FydHRvcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNhcnR0b3B7 XFxoYm94IHRvIFxcY2FydG91dGVye1xcaHNraXBcXGxza2lwJC8KIGNhc2VfTGlzcF9JbnQJYy1z cmMvZW1hY3Mvc3JjL2xpc3AuaAk0MzgKIGNhdAljLXNyYy9oLmgJODEKIGNhdAljcC1zcmMvYy5D CTEyNgogY2F0CWNwLXNyYy9jLkMJMTMwCiBjYXQJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmNh dChBLCBBbHBoYUBCZXRhLCBBc3MzLCBRczMsIHRyZWUoZmUsQTpBbHBoYUBCZXRhLwogY2F0X2F0 b21zCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15jYXRfYXRvbXMoQTEsQTIsQTMpOi0kLworY2Js CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2Jse3tcXGNpcmNsZVxcY2hhcicwMTJcXGhz a2lwIC02cHR9fSQvCitjYnIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjYnJ7e1xcaHNr aXAgNnB0XFxjaXJjbGVcXGNoYXInMDExfX0kLwogY2NjY2NjY2NjYwljLXNyYy9oLmgJMTE1CiBj ZHIJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxMTU5CiBjZWxsCXktc3JjL3BhcnNlLnkJMjc5Citj ZW50ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjZW50ZXJ7XFxwYXJzZWFyZ1xcY2Vu dGVyenp6fSQvCitjZW50ZXJ6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjZW50ZXJ6 enogIzF7e1xcYWR2YW5jZVxcaHNpemUgYnkgLVxcbGVmdHNraXAkLwogY2dyZXAJaHRtbC1zcmMv c29mdHdhcmUuaHRtbAkvXmNncmVwJC8KIGNoYWluCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTE2 MgogY2hhaW4JYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyMjA2CiBjaGFpbgljLXNyYy9lbWFjcy9z cmMvbGlzcC5oCTIzOTYKIGNoYWluX3N1YnN0CW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBm dW5jIGNoYWluX3N1YnN0KGFjY3Vfc3Vic3QsIGFjY3Vfc3Vic3QpID0gYWNjdS8KIGNoYWluX3N1 YnN0XzIJbWVyYy1zcmMvYWNjdW11bGF0b3IubQkvXjotIHByZWQgY2hhaW5fc3Vic3RfMihsaXN0 KEEpOjppbiwgbWFwKEEsIEIpOjppbiwgLworY2hhcGJmCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGxldFxcY2hhcGJmPVxcY2hhcHJtJC8KK2NoYXBicmVhawl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGNoYXBicmVha3tcXGRvYnJlYWsgXFxjaGFwaGVhZGluZ3NraXAgey00MDAwfX0kLwor Y2hhcGVudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL14gICAgICBcXGxldFxcY2hhcGVudHJ5ID0g XFxzaG9ydGNoYXBlbnRyeSQvCitjaGFwZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxjaGFwZW50cnkjMSMyIzN7XFxkb2NoYXBlbnRyeXsjMlxcbGFiZWxzcGFjZSMxfS8KK2NoYXBl bnRyeWZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2hhcGVudHJ5Zm9udHN7XFxz ZWNmb250cyBcXHJtfSQvCitjaGFwZm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxj aGFwZm9udHN7JSQvCitjaGFwaGVhZGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNo YXBoZWFkaW5ne1xccGFyc2VhcmdcXGNoYXBoZWFkaW5nenp6fSQvCitjaGFwaGVhZGluZ3p6egl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNoYXBoZWFkaW5nenp6ICMxe1xcY2hhcGJyZWFr ICUkLworY2hhcG1hY3JvCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdsb2JhbFxcbGV0XFxjaGFw bWFjcm89XFxjaGZvcGVuJC8KK2NoYXBtYWNybwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9i YWxcXGxldFxcY2hhcG1hY3JvPVxcY2hmcGxhaW4kLworY2hhcG9kZHBhZ2UJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxjaGFwb2RkcGFnZXtcXGNoYXBwYWdlciBcXGlmb2RkXFxwYWdlbm8g XFxlbHNlIFxcaC8KK2NoYXBwYWdlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNoYXBw YWdlcntcXHBhclxcdmZpbGxcXHN1cGVyZWplY3R9JC8KK2NoYXB0ZXIJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcbGV0XFxjaGFwdGVyPVxccmVsYXgkLworY2hhcHRlcgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxvdXRlclxcZGVmXFxjaGFwdGVye1xccGFyc2VhcmdcXGNoYXB0ZXJ6enp9JC8KK2No YXB0ZXJub2ZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2hhcHRlcm5vZm9udHN7 JSQvCitjaGFwdGVyenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2hhcHRlcnp6eiAj MXtcXHNlY2NoZWNre2NoYXB0ZXJ9JSQvCitjaGFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcY2hhcntcXHJlYWxiYWNrc2xhc2ggY2hhcn0kLworY2hhcgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGNoYXJ7XFxyZWFsYmFja3NsYXNoIGNoYXJ9JSQvCiBjaGFyX2JpdHMJYy1zcmMv ZW1hY3Mvc3JjL2xpc3AuaAkyNDQzCiBjaGFyX3RhYmxlX3NwZWNpYWxzCWMtc3JjL2VtYWNzL3Ny Yy9saXNwLmgJMTY5MgogY2hhcnBvcwljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTIwMTEKQEAgLTI1 NTIsMTQgKzIxNTgsMjQgQEAgY2hlY2tfY29uc19saXN0CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJ L14jICBkZWZpbmUgY2hlY2tfY29uc19saXN0KCkgbGlzcF9oX2NoZWMKIGNoZWNrZXIJbWFrZS1z cmMvTWFrZWZpbGUJL15jaGVja2VyOiQvCiBjaGVja2hkcgljLXNyYy9lbWFjcy9zcmMvZ21hbGxv Yy5jCS9eY2hlY2toZHIgKGNvbnN0IHN0cnVjdCBoZHIgKmhkcikkLwogY2hlY2tpc28JaHRtbC1z cmMvc29mdHdhcmUuaHRtbAkvXmNoZWNraXNvJC8KK2NoZm9wZW4JdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxjaGZvcGVuICMxIzJ7XFxjaGFwb2RkcGFnZSB7XFxjaGFwZm9udHMkLworY2hm cGxhaW4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGZwbGFpbiAjMSMyeyUkLwogY2hp bGREaWRFeGl0CW9iamMtc3JjL1N1YnByb2Nlc3MubQkvXi0gY2hpbGREaWRFeGl0JC8KIGNodW5r c19mcmVlCWMtc3JjL2VtYWNzL3NyYy9nbWFsbG9jLmMJMzEzCiBjaHVua3NfdXNlZAljLXNyYy9l bWFjcy9zcmMvZ21hbGxvYy5jCTMxMQorY2luZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcY2luZGV4IHtcXGNwaW5kZXh9JC8KK2NpbmRleHN1Ygl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGNpbmRleHN1YiB7XFxiZWdpbmdyb3VwXFxvYmV5bGluZXNcXGNpbmRleHN1Yn0kLwor Y2luZGV4c3ViCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXGNpbmRleHN1YiAiIzEiICMy Xl5Ne1xcZW5kZ3JvdXAgJSQvCitjaXRlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2l0 ZSMjMXtcXHJlYWxiYWNrc2xhc2ggY2l0ZSB7IyMxfX0kLworY2l0ZQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGNpdGUjIzF7XFxyZWFsYmFja3NsYXNoIGNpdGUgeyMjMX19JSQvCitjaXRl CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcY2l0ZT1cXGluZGV4ZHVtbXlmb250JC8KK2Np dGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxjaXRlPVxcc21hcnRpdGFsaWMkLwogY2ph dmEJYy1zcmMvZXRhZ3MuYwkyOTM2CiBjbGFzc19tZXRob2QJcnVieS1zcmMvdGVzdC5yYgkvXiAg ICAgICAgZGVmIENsYXNzRXhhbXBsZS5jbGFzc19tZXRob2QkLwogY2xhc3NpZnlMaW5lCXBocC1z cmMvbGNlX2Z1bmN0aW9ucy5waHAJL14gICAgICBmdW5jdGlvbiBjbGFzc2lmeUxpbmUoJGxpbmUp JC8KIGNsZWFuCW1ha2Utc3JjL01ha2VmaWxlCS9eY2xlYW46JC8KIGNsZWFyCWNwLXNyYy9jb253 YXkuaHBwCS9eICAgIHZvaWQgY2xlYXIodm9pZCkgeyBhbGl2ZSA9IDA7IH0kLworY2xlYXIJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjbGVhcntcXHBhcnNlYXJnXFxjbGVhcnh4eH0kLwog Y2xlYXItYWJicmV2LXRhYmxlCWMtc3JjL2FiYnJldi5jCS9eREVGVU4gKCJjbGVhci1hYmJyZXYt dGFibGUiLCBGY2xlYXJfYWJicmV2X3RhYmxlLCAvCiBjbGVhci10aGlzLWNvbW1hbmQta2V5cwlj LXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXkRFRlVOICgiY2xlYXItdGhpcy1jb21tYW5kLWtl eXMiLCBGY2xlYXJfdGhpc19jb21tLwogY2xlYXJBbGxLZXkJb2JqY3BwLXNyYy9TaW1wbGVDYWxj Lk0JL14tIGNsZWFyQWxsS2V5OnNlbmRlciQvCkBAIC0yNTY5LDEyICsyMTg1LDE5IEBAIGNsZWFy X2lucHV0X3BlbmRpbmcJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15jbGVhcl9pbnB1dF9w ZW5kaW5nICh2b2lkKSQvCiBjbGVhcl9uZWlnaGJvcnMJY3Atc3JjL2NsaGVpci5jcHAJL152b2lk IGRpc2NyZXRlX2xvY2F0aW9uOjpjbGVhcl9uZWlnaGJvcnModm9pZCkkLwogY2xlYXJfc2NyZWVu CWNwLXNyYy9zY3JlZW4uY3BwCS9edm9pZCBjbGVhcl9zY3JlZW4odm9pZCkkLwogY2xlYXJfd2Fp dGluZ19mb3JfaW5wdXQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15jbGVhcl93YWl0aW5n X2Zvcl9pbnB1dCAodm9pZCkkLworY2xlYXJ4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxjbGVhcnh4eCAjMXskLworY2xucgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG9wbnJ7 e1xcc2ZcXGNoYXJgXFwofX0gXFxkZWZcXGNsbnJ7e1xcc2ZcXGNoYXJgXFwpfX0gLworY2xybQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxjbHJteyUgUHJpbnQgYSBwYXJlbiBpbiByb21h biBpZiBpdCBpcyB0YWtpbi8KIGNtZF9lcnJvcgljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkv XmNtZF9lcnJvciAoTGlzcF9PYmplY3QgZGF0YSkkLwogY21kX2Vycm9yX2ludGVybmFsCWMtc3Jj L2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eY21kX2Vycm9yX2ludGVybmFsIChMaXNwX09iamVjdCBk YXRhLCBjb25zdCBjaGFyICovCiBjbXBmbgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eICBib29s ICgqY21wZm4pIChzdHJ1Y3QgaGFzaF90YWJsZV90ZXN0ICp0LCBMaXNwX08vCiBjbXQJcHJvbC1z cmMvbmF0ZGVkLnByb2xvZwkvXmNtdDotJC8KIGNuYW1lCWMtc3JjL2V0YWdzLmMJMjUxOQogY25v CWMtc3JjL2V0YWdzLmMJMjI0Citjb2RlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY29k ZSMjMXtcXHJlYWxiYWNrc2xhc2ggY29kZSB7IyMxfX0kLworY29kZQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGNvZGUjIzF7XFxyZWFsYmFja3NsYXNoIGNvZGUgeyMjMX19JSQvCitjb2Rl CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcY29kZT1cXGluZGV4ZHVtbXlmb250JC8KK2Nv ZGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxjb2RlPVxcdGNsb3NlJC8KIGNvbG9yaQlj cC1zcmMvYy5DCTQwCiBjb21tYWFyZ3ZhbHMJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmNvbW1h YXJndmFscyhBcmdzKSAtLT4kLwogY29tbWFuZAljLXNyYy9ldGFncy5jCTE4NwpAQCAtMjU4NCw2 ICsyMjA3LDggQEAgY29tbWFuZF9sb29wXzEJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15j b21tYW5kX2xvb3BfMSAodm9pZCkkLwogY29tbWFuZF9sb29wXzIJYy1zcmMvZW1hY3Mvc3JjL2tl eWJvYXJkLmMJL15jb21tYW5kX2xvb3BfMiAoTGlzcF9PYmplY3QgaWdub3JlKSQvCiBjb21tYW5k X2xvb3BfbGV2ZWwJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJMTk1CiBjb21tZW50CXBocC1z cmMvbGNlX2Z1bmN0aW9ucy5waHAJL14gICAgICBmdW5jdGlvbiBjb21tZW50KCRsaW5lLCAkY2xh c3MpJC8KK2NvbW1lbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjb21tZW50e1xcY2F0 Y29kZSA2ND1cXG90aGVyIFxcY2F0Y29kZSAxMjM9XFxvdGhlLworY29tbWVudHh4eAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGNvbW1lbnR4eHggIzF7XFxjYXRjb2RlIDY0PTAgXFxjYXRj b2RlIDEyMz0xIFxcYy8KIGNvbW11dGF0aXZpdHlfYXNzZXJ0aW9uCW1lcmMtc3JjL2FjY3VtdWxh dG9yLm0JL146LSBwcmVkIGNvbW11dGF0aXZpdHlfYXNzZXJ0aW9uKG1vZHVsZV9pbmZvOjppbixs aS8KIGNvbXBpbGVfZW1wdHkJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmNvbXBpbGVfZW1wdHk6 LSQvCiBjb21waWxlX2xleAlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9eY29tcGlsZV9sZXgoRmls ZSk6LSQvCkBAIC0yNjA2LDYgKzIyMzEsMTAgQEAgY29uc3VsdF9sZXgJcHJvbC1zcmMvbmF0ZGVk LnByb2xvZwkvXmNvbnN1bHRfbGV4Oi0kLwogY29udGVudHMJYy1zcmMvZW1hY3Mvc3JjL2xpc3Au aAkxMzcyCiBjb250ZW50cwljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE2MDAKIGNvbnRlbnRzCWMt c3JjL2VtYWNzL3NyYy9saXNwLmgJMTYyNAorY29udGVudHMJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcbGV0XFxjb250ZW50cz1cXHJlbGF4JC8KK2NvbnRlbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXG91dGVyXFxkZWZcXGNvbnRlbnRzeyUkLworY29weXJpZ2h0CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcY29weXJpZ2h0e1xccmVhbGJhY2tzbGFzaCBjb3B5cmlnaHQgfSUkLworY29w eXJpZ2h0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY29weXJpZ2h0e1xccmVhbGJhY2tz bGFzaCBjb3B5cmlnaHR9JC8KIGNvdW50CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTg2MwogY291 bnRfbGF5ZXJzCWx1YS1zcmMvYWxsZWdyby5sdWEJL15sb2NhbCBmdW5jdGlvbiBjb3VudF9sYXll cnMgKGxheWVyKSQvCiBjb3VudF93b3JkcwljLXNyYy90YWIuYwkvXnN0YXRpYyBpbnQJCWNvdW50 X3dvcmRzKGNoYXIgKnN0ciwgY2hhciBkZWxpbSkkLwpAQCAtMjYyNSwxMCArMjI1NCwyMCBAQCBj cmVhdGVfbmV3X29yaWdfcmVjdXJzaXZlX2dvYWxzCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146 LSBmdW5jIGNyZWF0ZV9uZXdfb3JpZwogY3JlYXRlX25ld19yZWN1cnNpdmVfZ29hbHMJbWVyYy1z cmMvYWNjdW11bGF0b3IubQkvXjotIGZ1bmMgY3JlYXRlX25ld19yZWN1cnNpdmVfZ29hbHMoc2V0 KGFjY3VfZ29hbF9pLwogY3JlYXRlX25ld192YXIJbWVyYy1zcmMvYWNjdW11bGF0b3IubQkvXjot IHByZWQgY3JlYXRlX25ld192YXIocHJvZ192YXI6OmluLCBzdHJpbmc6OmluLCBwLwogY3JlYXRl X29yaWdfZ29hbAltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gcHJlZCBjcmVhdGVfb3JpZ19n b2FsKGhsZHNfZ29hbDo6aW4sIGFjY3Vfc3Vic3QvCitjcm9wbWFya3MJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxjcm9wbWFya3N7XFxsZXRcXG9uZXBhZ2VvdXQ9XFxjcm9wcGFnZW91dCB9 JC8KK2Nyb3BwYWdlb3V0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY3JvcHBhZ2VvdXQj MXtcXGhvZmZzZXQ9MHB0ICUgbWFrZSBzdXJlIHRoaXMgZC8KIGNzY0luaXRUaW1lCWNwLXNyYy9j LkMJNwogY3NjU2VnbWVudGF0aW9uVGltZQljcC1zcmMvYy5DCTgKK2NzbmFtZQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxleHBhbmRhZnRlclxcbGV0XFxjc25hbWUgSUYjMVxcZW5kY3NuYW1lPVxc cmVsYXh9JC8KK2NzbmFtZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxleHBhbmRhZnRlclxcbGV0 XFxjc25hbWUgSUYjMVxcZW5kY3NuYW1lPVxcc2V0fSQvCitjc25hbWUJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZXhwYW5kYWZ0ZXJcXGxldFxcY3NuYW1lIzFpbmRmaWxlXFxlbmRjc25hbWU9XFxz eW5pbmQvCitjc25hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZXhwYW5kYWZ0ZXJcXHhkZWZc XGNzbmFtZSMxaW5kZXhcXGVuZGNzbmFtZXslCSUgRGVmaS8KK2NzbmFtZQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9ee1xcY2F0Y29kZWBcXCc9XFxvdGhlclxcZXhwYW5kYWZ0ZXIgXFxnZGVmIFxcY3Nu YW1lIFgjMVxcLwogY3N0YWNrCWMtc3JjL2V0YWdzLmMJMjUyMwogY3RhZ3MJbWFrZS1zcmMvTWFr ZWZpbGUJL15jdGFnczogZXRhZ3MuYyAke09CSlN9JC8KK2N0bAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGN0bHt7XFxjaXJjbGVcXGNoYXInMDEzXFxoc2tpcCAtNnB0fX0lIDZwdCBmcm9t IC8KK2N0cgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGN0cnt7XFxoc2tpcCA2cHRcXGNp cmNsZVxcY2hhcicwMTB9fSQvCitjdHJsCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY3Ry bCAjMXt7XFx0dCBcXHJhd2JhY2tzbGFzaCBcXGhhdH0jMX0kLwogY3VybGIJYy1zcmMvZXRhZ3Mu YwkyOTI5CiBjdXJsaW5lcG9zCWMtc3JjL2V0YWdzLmMJMjkzMQogY3VycmVudC1pZGxlLXRpbWUJ Yy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15ERUZVTiAoImN1cnJlbnQtaWRsZS10aW1lIiwg RmN1cnJlbnRfaWRsZV90aW1lLCBTYy8KQEAgLTI2MzksNiArMjI3OCwxMCBAQCBjdXJyeS10ZXN0 CXNjbS1zcmMvdGVzdC5zY20JL14oZGVmaW5lICgoKCgoY3VycnktdGVzdCBhKSBiKSBjKSBkKSBl KSQvCiBjdXJzb3JfcG9zaXRpb24JY3Atc3JjL3NjcmVlbi5jcHAJL152b2lkIGN1cnNvcl9wb3Np dGlvbih2b2lkKSQvCiBjdXJzb3JfeAljcC1zcmMvc2NyZWVuLmNwcAkxNQogY3Vyc29yX3kJY3At c3JjL3NjcmVlbi5jcHAJMTUKK2N2YXJoZWFkZXJcZGVmY3Z0eXBlCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZm9wdmFycGFyc2Vib2R5XFxFZGVmY3ZcXGRlZmN2eFxcZGVmY3ZhcmhlYWRlclxc ZGVmLworY3Z0eXBlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGJlZ2luZ3JvdXBcXGRlZm5hbWUg eyMyfXtcXGRlZmN2dHlwZXt9IG9mICMxfSUkLworY3Z0eXBlCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZm9wdmFycGFyc2Vib2R5XFxFZGVmY3ZcXGRlZmN2eFxcZGVmY3ZhcmhlYWRlclxcZGVm LworY3Z4XGRlZmN2YXJoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmb3B2YXJwYXJz ZWJvZHlcXEVkZWZjdlxcZGVmY3Z4XFxkZWZjdmFyaGVhZGVyXFxkZWYvCiBkCWMtc3JjL2VtYWNz L3NyYy9saXNwLmgJNDY3MwogZAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTQ2NzkKIGQJYy5jCTE4 MApAQCAtMjY2MCw2ICsyMzAzLDE1IEBAIGRlZmF1bHRfQ19oZWxwCWMtc3JjL2V0YWdzLmMJNTE1 CiBkZWZhdWx0X0NfaGVscAljLXNyYy9ldGFncy5jCTUyMwogZGVmYXVsdF9DX3N1ZmZpeGVzCWMt c3JjL2V0YWdzLmMJNTEyCiBkZWZjZWxsCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMjM1MQorZGVm Y29kZWluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmY29kZWluZGV4e1xccGFy c2VhcmdcXG5ld2NvZGVpbmRleH0kLworZGVmY3YJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxkZWZjdiAjMSB7XFxkZWZcXGRlZmN2dHlwZXsjMX0lJC8KK2RlZmN2YXJoZWFkZXIJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZjdmFyaGVhZGVyICMxIzIjM3slJC8KK2RlZmN2dHlw ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZmN2ICMxIHtcXGRlZlxcZGVmY3Z0eXBl eyMxfSUkLworZGVmY3Z4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmY3Z4ICMxIHtc XGVycm1lc3NhZ2V7QGRlZmN2eCBpbiBpbnZhbGlkIGNvbi8KK2RlZmZuCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcZGVmZm57XFxkZWZtZXRocGFyc2Vib2R5XFxFZGVmZm5cXGRlZmZueFxc ZGVmZm5oZS8KK2RlZmZuaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmZm5o ZWFkZXIgIzEjMiMze1xcZG9pbmQge2ZufXtcXGNvZGV7IzJ9fSUkLworZGVmZm54CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcZGVmZm54ICMxIHtcXGVycm1lc3NhZ2V7QGRlZmZueCBpbiBp bnZhbGlkIGNvbi8KK2RlZmluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmaW5k ZXh7XFxwYXJzZWFyZ1xcbmV3aW5kZXh9JC8KIGRlZmluZS1hYmJyZXYJYy1zcmMvYWJicmV2LmMJ L15ERUZVTiAoImRlZmluZS1hYmJyZXYiLCBGZGVmaW5lX2FiYnJldiwgU2RlZmluZV9hYi8KIGRl ZmluZS1hYmJyZXYtdGFibGUJYy1zcmMvYWJicmV2LmMJL15ERUZVTiAoImRlZmluZS1hYmJyZXYt dGFibGUiLCBGZGVmaW5lX2FiYnJldl90YWJsZS8KIGRlZmluZS1nbG9iYWwtYWJicmV2CWMtc3Jj L2FiYnJldi5jCS9eREVGVU4gKCJkZWZpbmUtZ2xvYmFsLWFiYnJldiIsIEZkZWZpbmVfZ2xvYmFs X2FiYnIvCkBAIC0yNjY3LDcgKzIzMTksNjMgQEAgZGVmaW5lLW1vZGUtYWJicmV2CWMtc3JjL2Fi YnJldi5jCS9eREVGVU4gKCJkZWZpbmUtbW9kZS1hYmJyZXYiLCBGZGVmaW5lX21vZGVfYWIKIGRl ZmluZWRfR0NfQ0hFQ0tfU1RSSU5HX0JZVEVTCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJNDY2Mwog ZGVmaW5lZF9HQ19DSEVDS19TVFJJTkdfQllURVMJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAk0NjY1 CiBkZWZpbmVkZWYJYy1zcmMvZXRhZ3MuYwkyNDY0CitkZWZpdmFyCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZGVmaXZhcntcXGRlZnZycGFyc2Vib2R5XFxFZGVmaXZhclxcZGVmaXZhcnhc XGRlZi8KK2RlZml2YXJoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZpdmFy aGVhZGVyICMxIzIjM3slJC8KK2RlZml2YXJ4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc ZGVmaXZhcnggIzEge1xcZXJybWVzc2FnZXtAZGVmaXZhcnggaW4gaW52YWxpZC8KK2RlZm1hYwl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm1hY3tcXGRlZnBhcnNlYm9keVxcRWRlZm1h Y1xcZGVmbWFjeFxcZGVmbWFjaGUvCitkZWZtYWNoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxkZWZtYWNoZWFkZXIgIzEjMntcXGRvaW5kIHtmbn17XFxjb2RleyMxfX0lIE1hay8K K2RlZm1hY3gJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZtYWN4ICMxIHtcXGVycm1l c3NhZ2V7QGRlZm1hY3ggaW4gaW52YWxpZCBjLworZGVmbWV0aG9kCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZGVmbWV0aG9ke1xcZGVmbWV0aHBhcnNlYm9keVxcRWRlZm1ldGhvZFxcZGVm bWV0LworZGVmbWV0aG9kaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmbWV0 aG9kaGVhZGVyICMxIzIjM3slJC8KK2RlZm1ldGhvZHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxkZWZtZXRob2R4ICMxIHtcXGVycm1lc3NhZ2V7QGRlZm1ldGhvZHggaW4gaW52LworZGVm bWV0aHBhcnNlYm9keQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm1ldGhwYXJzZWJv ZHkgIzEjMiMzIzQge1xcYmVnaW5ncm91cFxcaW5FTlYgLworZGVmbmFtZQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGRlZm5hbWUgIzEjMnslJC8KK2RlZm9wCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZGVmb3AgIzEge1xcZGVmXFxkZWZvcHR5cGV7IzF9JSQvCitkZWZvcGhlYWRl cgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm9waGVhZGVyICMxIzIjM3slJC8KK2Rl Zm9wcGFyc2Vib2R5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmb3BwYXJzZWJvZHkg IzEjMiMzIzQjNSB7XFxiZWdpbmdyb3VwXFxpbkVOViAvCitkZWZvcHQJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxkZWZvcHR7XFxkZWZ2YXJwYXJzZWJvZHlcXEVkZWZvcHRcXGRlZm9wdHhc XGRlZm9wLworZGVmb3B0aGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmb3B0 aGVhZGVyICMxIzJ7XFxkb2luZCB7dnJ9e1xcY29kZXsjMX19JSBNYWsvCitkZWZvcHR4CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmb3B0eCAjMSB7XFxlcnJtZXNzYWdle0BkZWZvcHR4 IGluIGludmFsaWQgYy8KK2RlZm9wdHlwZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRl Zm9wICMxIHtcXGRlZlxcZGVmb3B0eXBleyMxfSUkLworZGVmb3B2YXJwYXJzZWJvZHkJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZvcHZhcnBhcnNlYm9keSAjMSMyIzMjNCM1IHtcXGJl Z2luZ3JvdXBcXGluRS8KK2RlZm9weAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm9w eCAjMSB7XFxlcnJtZXNzYWdle0BkZWZvcHggaW4gaW52YWxpZCBjb24vCitkZWZwYXJzZWJvZHkJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZwYXJzZWJvZHkgIzEjMiMze1xcYmVnaW5n cm91cFxcaW5FTlYlIEVudmlyby8KK2RlZnNwZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxkZWZzcGVje1xcZGVmcGFyc2Vib2R5XFxFZGVmc3BlY1xcZGVmc3BlY3hcXGRlZnNwLworZGVm c3BlY2hlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnNwZWNoZWFkZXIgIzEj MntcXGRvaW5kIHtmbn17XFxjb2RleyMxfX0lIE1hLworZGVmc3BlY3gJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxkZWZzcGVjeCAjMSB7XFxlcnJtZXNzYWdle0BkZWZzcGVjeCBpbiBpbnZh bGlkLworZGVmdHAJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0cHtcXGRlZnZycGFy c2Vib2R5XFxFZGVmdHBcXGRlZnRweFxcZGVmdHBoZWFkLworZGVmdHBhcmdzCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcZGVmdHBhcmdzICMxe1xcYmYgXFxkZWZ2YXJhcmdzeyMxfX0kLwor ZGVmdHBoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0cGhlYWRlciAjMSMy IzN7XFxkb2luZCB7dHB9e1xcY29kZXsjMn19JSQvCitkZWZ0cHgJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxkZWZ0cHggIzEge1xcZXJybWVzc2FnZXtAZGVmdHB4IGluIGludmFsaWQgY29u LworZGVmdHlwZWZuCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZue1xcZGVm bWV0aHBhcnNlYm9keVxcRWRlZnR5cGVmblxcZGVmdHlwLworZGVmdHlwZWZuaGVhZGVyCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZuaGVhZGVyICMxIzIjM3tcXGRlZnR5cGVm bmhlYWRlcnh7IzF9ey8KK2RlZnR5cGVmbmhlYWRlcngJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxkZWZ0eXBlZm5oZWFkZXJ4ICMxIzIjMyAjNFxccmVsYXh7JSQvCitkZWZ0eXBlZm54CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZueCAjMSB7XFxlcnJtZXNzYWdle0Bk ZWZ0eXBlZm54IGluIGludi8KK2RlZnR5cGVmdW4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxkZWZ0eXBlZnVue1xcZGVmcGFyc2Vib2R5XFxFZGVmdHlwZWZ1blxcZGVmdHlwZWYvCitkZWZ0 eXBlZnVuYXJncwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGVmdW5hcmdzICMx eyUkLworZGVmdHlwZWZ1bmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5 cGVmdW5oZWFkZXIgIzEjMntcXGRlZnR5cGVmdW5oZWFkZXJ4eyMxfSMvCitkZWZ0eXBlZnVuaGVh ZGVyeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGVmdW5oZWFkZXJ4ICMxIzIg IzNcXHJlbGF4eyUkLworZGVmdHlwZXVueAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRl ZnR5cGV1bnggIzEge1xcZXJybWVzc2FnZXtAZGVmdHlwZXVueCBpbiBpbnYvCitkZWZ0eXBldmFy CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZXZhcntcXGRlZnZhcnBhcnNlYm9k eVxcRWRlZnR5cGV2YXJcXGRlZnR5LworZGVmdHlwZXZhcmhlYWRlcgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGRlZnR5cGV2YXJoZWFkZXIgIzEjMnslJC8KK2RlZnR5cGV2YXJ4CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZXZhcnggIzEge1xcZXJybWVzc2FnZXtAZGVm dHlwZXZhcnggaW4gaS8KK2RlZnR5cGV2cgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRl ZnR5cGV2cntcXGRlZnZycGFyc2Vib2R5XFxFZGVmdHlwZXZyXFxkZWZ0eXBldi8KK2RlZnR5cGV2 cmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGV2cmhlYWRlciAjMSMy IzN7XFxkb2luZCB7dnJ9e1xcY29kZXsjM319LworZGVmdHlwZXZyeAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGRlZnR5cGV2cnggIzEge1xcZXJybWVzc2FnZXtAZGVmdHlwZXZyeCBpbiBp bnYvCitkZWZ1bgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnVue1xcZGVmcGFyc2Vi b2R5XFxFZGVmdW5cXGRlZnVueFxcZGVmdW5oZWFkZXIvCiBkZWZ1bl9mdW5jMQljLmMJL15kZWZ1 bl9mdW5jMSgpJC8KK2RlZnVuYXJncwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnVu YXJncyAjMXtcXGZ1bmN0aW9ucGFyZW5zIFxcc2wkLworZGVmdW5oZWFkZXIJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxkZWZ1bmhlYWRlciAjMSMye1xcZG9pbmQge2ZufXtcXGNvZGV7IzF9 fSUgTWFrZS8KK2RlZnVueAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnVueCAjMSB7 XFxlcnJtZXNzYWdle0BkZWZ1bnggaW4gaW52YWxpZCBjb24vCitkZWZ2YXIJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxkZWZ2YXJ7XFxkZWZ2YXJwYXJzZWJvZHlcXEVkZWZ2YXJcXGRlZnZh cnhcXGRlZnZhLworZGVmdmFyYXJncwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnZh cmFyZ3MgIzF7XFxub3JtYWxwYXJlbnMgIzElJC8KK2RlZnZhcmhlYWRlcgl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGRlZnZhcmhlYWRlciAjMSMye1xcZG9pbmQge3ZyfXtcXGNvZGV7IzF9 fSUgTWFrLworZGVmdmFycGFyc2Vib2R5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVm dmFycGFyc2Vib2R5ICMxIzIjM3tcXGJlZ2luZ3JvdXBcXGluRU5WJSBFbnYvCitkZWZ2YXJ4CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdmFyeCAjMSB7XFxlcnJtZXNzYWdle0BkZWZ2 YXJ4IGluIGludmFsaWQgYy8KK2RlZnZyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVm dnJ7XFxkZWZ2cnBhcnNlYm9keVxcRWRlZnZyXFxkZWZ2cnhcXGRlZnZyaGVhZC8KK2RlZnZyaGVh ZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdnJoZWFkZXIgIzEjMiMze1xcZG9p bmQge3ZyfXtcXGNvZGV7IzJ9fSUkLworZGVmdnJwYXJzZWJvZHkJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxkZWZ2cnBhcnNlYm9keSAjMSMyIzMjNCB7XFxiZWdpbmdyb3VwXFxpbkVOViAl JC8KK2RlZnZyeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnZyeCAjMSB7XFxlcnJt ZXNzYWdle0BkZWZ2cnggaW4gaW52YWxpZCBjb24vCiBkZWxlZ2F0ZQlvYmpjLXNyYy9TdWJwcm9j ZXNzLm0JL14tIGRlbGVnYXRlJC8KIGRlbGV0ZUl0ZW0JcHl0LXNyYy9zZXJ2ZXIucHkJL14gICAg ZGVmIGRlbGV0ZUl0ZW0oc2VsZik6JC8KIGRlbGV0ZV9rYm9hcmQJYy1zcmMvZW1hY3Mvc3JjL2tl eWJvYXJkLmMJL15kZWxldGVfa2JvYXJkIChLQk9BUkQgKmtiKSQvCkBAIC0yNjc3LDI1ICsyMzg1 LDU0IEBAIGRlbGl2ZXJfdXNlcl9zaWduYWwJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15k ZWxpdmVyX3VzZXJfc2lnbmFsIChpbnQgc2lnKSQvCiBkZXB0aAljLXNyYy9lbWFjcy9zcmMvbGlz cC5oCTE2MTgKIGRlcml2ZWRfYW5hbHlzZXMJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmRlcml2 ZWRfYW5hbHlzZXMoW10sW10pLiQvCiBkZXNjcmliZV9hYmJyZXYJYy1zcmMvYWJicmV2LmMJL15k ZXNjcmliZV9hYmJyZXYgKHN5bSwgc3RyZWFtKSQvCitkZXNjcmlwdGlvbgl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGRlc2NyaXB0aW9ue1xcdGFibGV6e1xcZG9udGluZGV4fXsxfXt9e317 fXt9fSQvCiBkZXRlY3RfaW5wdXRfcGVuZGluZwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkv XmRldGVjdF9pbnB1dF9wZW5kaW5nICh2b2lkKSQvCiBkZXRlY3RfaW5wdXRfcGVuZGluZ19pZ25v cmVfc3F1ZWV6YWJsZXMJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15kZXRlY3RfaW5wdXRf cGVuZGluZ19pZ25vcmVfc3F1ZWV6YWJsZXMgKHZvaWQpJC8KIGRldGVjdF9pbnB1dF9wZW5kaW5n X3J1bl90aW1lcnMJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15kZXRlY3RfaW5wdXRfcGVu ZGluZ19ydW5fdGltZXJzIChib29sIGRvX2Rpc3BsYXkpJC8KK2RmCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZGZ7XFxsZXRcXHRlbnR0PVxcZGVmdHQgXFxsZXRcXHRlbmJmID0gXFxkZWZi ZiBcXGJmfS8KK2Rmbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRmbiMjMXtcXHJlYWxi YWNrc2xhc2ggZGZuIHsjIzF9fSQvCitkZm4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxk Zm49XFxzbWFydGl0YWxpYyQvCiBkaWFsb2dfbG9vcAllcmwtc3JjL2dzX2RpYWxvZy5lcmwJL15k aWFsb2dfbG9vcChNb2R1bGUsIFdpbmRvdywgRnJhbWUsIEV4dHJhLCBBcmdzKSAtPi8KIGRpZ25v cmVyZXN0CWMtc3JjL2V0YWdzLmMJMjQ2MworZGlyZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxkaXJlbnRyeXtcXGJlZ2luZ3JvdXBcXGRpcmVudHJ5eHh4fSQvCitkaXJlbnRyeXh4 eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsb25nXFxkZWZcXGRpcmVudHJ5eHh4ICMxXFxlbmQg ZGlyZW50cnl7XFxlbmRncm91cFxcaWcvCiBkaXNjYXJkLWlucHV0CWMtc3JjL2VtYWNzL3NyYy9r ZXlib2FyZC5jCS9eREVGVU4gKCJkaXNjYXJkLWlucHV0IiwgRmRpc2NhcmRfaW5wdXQsIFNkaXNj YXJkX2kvCiBkaXNjYXJkX21vdXNlX2V2ZW50cwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkv XmRpc2NhcmRfbW91c2VfZXZlbnRzICh2b2lkKSQvCiBkaXNjcmV0ZV9sb2NhdGlvbgljcC1zcmMv Y2xoZWlyLmhwcAkvXiAgICBkaXNjcmV0ZV9sb2NhdGlvbihpbnQgeGksIGludCB5aSwgaW50IHpp KTokLwogZGlzY3JldGVfbG9jYXRpb24JY3Atc3JjL2NsaGVpci5ocHAJNTYKIGRpc3BsYXkJY3At c3JjL2NvbndheS5jcHAJL152b2lkIGRpc3BsYXkodm9pZCkkLworZGlzcGxheQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGRpc3BsYXl7XFxiZWdpbmdyb3VwXFxpbkVOViAlVGhpcyBncm91 cCBlbmRzIGF0LwogZGlzcG9zZXRleHRzdHJpbmcJcGFzLXNyYy9jb21tb24ucGFzCS9ecHJvY2Vk dXJlIGRpc3Bvc2V0ZXh0c3RyaW5nOygqKCQvCitkbW4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxkbW4jMXtcXHRoaW5zcGFjZSAjMX0kLwogZG5vbmUJYy1zcmMvZXRhZ3MuYwkyNDYwCitk b2JyZWFrCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9icmVhayMxIzJ7XFxwYXJcXGlm ZGltXFxsYXN0c2tpcDwjMVxccmVtb3ZlbGFzdC8KIGRvYwljLXNyYy9lbWFjcy9zcmMvbGlzcC5o CTE2ODkKK2RvY2hhcGVudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9jaGFwZW50 cnkjMSMyeyUkLworZG9jb2RlaW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb2Nv ZGVpbmRleCMxe1xcZWRlZlxcaW5kZXhuYW1leyMxfVxccGFyc2VhcmdcXHNpLwogZG9nCWMtc3Jj L2guaAk4MQogZG9nCWNwLXNyYy9jLkMJMTI2CiBkb2cJY3Atc3JjL2MuQwkxMzAKK2RvaW5kCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9pbmQgIzEjMnslJC8KK2RvaW5kZXgJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb2luZGV4IzF7XFxlZGVmXFxpbmRleG5hbWV7IzF9XFxw YXJzZWFyZ1xcc2luZ2xlLworZG9ub2RlcmVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc ZG9ub2RlcmVme1xcaWZ4XFxsYXN0bm9kZVxccmVsYXhcXGVsc2UkLworZG9udGluZGV4CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9udGluZGV4ICMxe30kLworZG9wYWdlbm8JdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3BhZ2VubyMxe3tcXHJtICMxfX0kLworZG9wcmludGlu ZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9wcmludGluZGV4IzF7JSQvCitkb3Nl Y2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9zZWNlbnRyeSMxIzJ7JSQvCitk b3NldHEJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3NldHEgIzEjMnt7XFxsZXRcXGZv bGlvPTAgXFx0dXJub2ZmYWN0aXZlJSQvCitkb3Nob3J0cGFnZW5vCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZG9zaG9ydHBhZ2VubyMxe3tcXHJtICMxfX0kLworZG9zdWJpbmQJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3N1YmluZCAjMSMyIzN7JSQvCitkb3N1YnNlY2VudHJ5 CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9zdWJzZWNlbnRyeSMxIzJ7JSQvCitkb3N1 YnN1YnNlY2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9zdWJzdWJzZWNlbnRy eSMxIzJ7JSQvCiBkb3RmaWxsCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbnVsbFxcbm9icmVh a1xcaW5kZXhkb3RmaWxsICUgSGF2ZSBsZWFkZXJzIGJlZm9yZS8KIGRvdGZpbGwJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcbm9pbmRlbnRcXGhza2lwXFxzZWNvbmRhcnlpbmRlbnRcXGhib3h7IzF9 XFxpbmRleGRvdGYvCitkb3RzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG90c3skXFxs ZG90cyR9JC8KK2RvdHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3Rze1xccmVhbGJh Y2tzbGFzaCBkb3RzIH0lJC8KK2RvdHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3Rz e1xccmVhbGJhY2tzbGFzaCBkb3RzfSQvCitkb3RzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxl dFxcZG90cz1cXGluZGV4ZHVtbXlkb3RzJC8KK2RvdHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc bGV0XFxkb3RzPVxccHRleGRvdHMkLwogZG91YmxlX2NsaWNrX2NvdW50CWMtc3JjL2VtYWNzL3Ny Yy9rZXlib2FyZC5jCTUyMjIKK2RvdWJsZWNvbHVtbm91dAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGRvdWJsZWNvbHVtbm91dHtcXHNwbGl0dG9wc2tpcD1cXHRvcHNraXAgXFxzcGxpdC8K IGRyYWdfbl9kcm9wX3N5bXMJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJNDYyOQogZHJpYmJs ZQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkyMzYKIGRzaGFycHNlZW4JYy1zcmMvZXRhZ3Mu YwkyNDYxCkBAIC0yNzA1LDYgKzI0NDIsNyBAQCBkdW1teTIJY3Atc3JjL2J1cnRvbi5jcHAJL146 OmR1bW15OjpkdW1teSB0ZXN0OjpkdW1teTIoOjpDT1JCQTo6TG9uZyBkdW1teSkkLwogZHVtbXkz CWNwLXNyYy9idXJ0b24uY3BwCS9eOjpkdW1teTo6ZHVtbXkgdGVzdDo6ZHVtbXkzKGNoYXIqIG5h bWUsIDo6Q09SQkE6OkwvCiBkdW1teWRvdHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxk b3RzPVxcaW5kZXhkdW1teWRvdHMkLwogZHVtbXlmb250CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGxldFxcYj1cXGluZGV4ZHVtbXlmb250JC8KK2R1bW15Zm9udAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxsZXRcXGNpdGU9XFxpbmRleGR1bW15Zm9udCQvCiBkdW1teWZvbnQJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcbGV0XFxjb2RlPVxcaW5kZXhkdW1teWZvbnQkLwogZHVtbXlmb250CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGxldFxcZW1waD1cXGluZGV4ZHVtbXlmb250JC8KIGR1bW15Zm9u dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGZpbGU9XFxpbmRleGR1bW15Zm9udCQvCkBA IC0yNzQzLDEwICsyNDgxLDE2IEBAIGVkaXRzaXRlCXB5dC1zcmMvc2VydmVyLnB5CS9eICAgIGRl ZiBlZGl0c2l0ZShzZWxmLCBzaXRlKTokLwogZWRpdHVzZXIJcHl0LXNyYy9zZXJ2ZXIucHkJL14g ICAgZGVmIGVkaXR1c2VyKHNlbGYsIHVzZXIpOiQvCiBlZ2V0ZW52CWMtc3JjL2VtYWNzL3NyYy9s aXNwLmgJL15lZ2V0ZW52IChjb25zdCBjaGFyICp2YXIpJC8KIGVtYWNzX2Fib3J0CWMtc3JjL2Vt YWNzL3NyYy9saXNwLmgJL15leHRlcm4gX05vcmV0dXJuIHZvaWQgZW1hY3NfYWJvcnQgKHZvaWQp IE5PX0lOTElORS8KK2VtcGgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxlbXBoIyMxe1xc cmVhbGJhY2tzbGFzaCBlbXBoIHsjIzF9fSQvCitlbXBoCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGxldFxcZW1waD1cXGluZGV4ZHVtbXlmb250JC8KK2VtcGgJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcbGV0XFxlbXBoPVxcc21hcnRpdGFsaWMkLwogZW5kCWMtc3JjL2VtYWNzL3NyYy9rZXlib2Fy ZC5jCTg3NTMKIGVuZAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTIwMzkKIGVuZAljLXNyYy9lbWFj cy9zcmMvcmVnZXguaAk0MzIKK2VuZAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGVuZHtc XHBhcnNlYXJnXFxlbmR4eHh9JC8KK2VuZGRvdWJsZWNvbHVtbnMJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxlbmRkb3VibGVjb2x1bW5ze1xcb3V0cHV0PXtcXGJhbGFuY2Vjb2x1bW5zfVxc ZWovCiBlbmR0b2tlbgljLXNyYy9ldGFncy5jCS9eI2RlZmluZQllbmR0b2tlbihjKQkoX2V0a1tD SEFSIChjKV0pIFwvKiBjIGVuZHMgdG9rLworZW5keHh4CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcZW5keHh4ICMxeyUkLwogZW50ZXJfY3JpdGljYWxfc2VjdGlvbgljLXNyYy9oLmgJMTE2 CiBlbnRyeQlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkyMTgKIGVudHJ5CXBlcmwtc3JjL2h0bG1p ZnktY3lzdGljCTIzNApAQCAtMjc1NiwxNCArMjUwMCwyMiBAQCBlbnRyeQlwZXJsLXNyYy9odGxt aWZ5LWN5c3RpYwkyNjgKIGVudHJ5CXBlcmwtc3JjL2h0bG1pZnktY3lzdGljCTI3NgogZW50cnkJ cGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJMjgxCiBlbnRyeQlwZXJsLXNyYy9odGxtaWZ5LWN5c3Rp YwkyOTYKK2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZW50cnkgIzEjMntcXGJl Z2luZ3JvdXAkLworZW51bWVyYXRlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZW51bWVy YXRle1xccGFyc2VhcmdcXGVudW1lcmF0ZXp6en0kLworZW51bWVyYXRleQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGVudW1lcmF0ZXkgIzEgIzJcXGVuZGVudW1lcmF0ZXl7JSQvCitlbnVt ZXJhdGV6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxlbnVtZXJhdGV6enogIzF7XFxl bnVtZXJhdGV5ICMxICBcXGVuZGVudW1lcmF0ZS8KIGVxdWFsc0tleQlvYmpjcHAtc3JjL1NpbXBs ZUNhbGMuTQkvXi0gZXF1YWxzS2V5OnNlbmRlciQvCitlcXVpdgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGVxdWl2e1xcbGVhdmV2bW9kZVxcbG93ZXIuMWV4XFxoYm94IHRvIDFlbXtcXGhm aWwvCitlcXVpdgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGVxdWl2e1xccmVhbGJhY2tz bGFzaCBlcXVpdn0kLwogZXJsYW5nX2F0b20JYy1zcmMvZXRhZ3MuYwkvXmVybGFuZ19hdG9tIChj aGFyICpzKSQvCiBlcmxhbmdfYXR0cmlidXRlCWMtc3JjL2V0YWdzLmMJL15lcmxhbmdfYXR0cmli dXRlIChjaGFyICpzKSQvCiBlcmxhbmdfZnVuYwljLXNyYy9ldGFncy5jCS9eZXJsYW5nX2Z1bmMg KGNoYXIgKnMsIGNoYXIgKmxhc3QpJC8KIGVycm9yCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL15l eHRlcm4gX05vcmV0dXJuIHZvaWQgZXJyb3IgKGNvbnN0IGNoYXIgKiwgLi4uKSBBVC8KIGVycm9y CWMtc3JjL2V0YWdzLmMJL15lcnJvciAoY29uc3QgY2hhciAqZm9ybWF0LCAuLi4pJC8KIGVycm9y CWMtc3JjL2V0YWdzLmMJL15zdGF0aWMgdm9pZCBlcnJvciAoY29uc3QgY2hhciAqLCAuLi4pIEFU VFJJQlVURV9GTy8KK2Vycm9yCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZXJyb3J7XFxs ZWF2ZXZtb2RlXFxsb3dlci43ZXhcXGNvcHlcXGVycm9yYm94fSQvCiBlcnJvcgl5LXNyYy9jY2Nw LnkJL15lcnJvciAobXNnKSQvCitlcnJvckUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxl cnJvckUjMXskLwogZXJyb3Jfc2lnbmFsZWQJYy1zcmMvZXRhZ3MuYwkyNjQKIGV0YWdzCWVsLXNy Yy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihkZWZncm91cCBldGFncyBuaWwgIlRh Z3MgdGFibGVzLiIkLwogZXRhZ3MJaHRtbC1zcmMvc29mdHdhcmUuaHRtbAkvXkV0YWdzJC8KQEAg LTI3ODYsMTEgKzI1MzgsMjkgQEAgZXRhZ3MteHJlZi1maW5kLWRlZmluaXRpb25zLXRhZy1vcmRl cgllbC1zcmMvZW1hY3MvbGlzcC9wcm9nbW9kZXMvZXRhZ3MuZWwJL14oZGUKIGV0YWdzLjEubWFu CW1ha2Utc3JjL01ha2VmaWxlCS9eZXRhZ3MuMS5tYW46IGV0YWdzLjEkLwogZXRhZ3NfZ2V0Y3dk CWMtc3JjL2V0YWdzLmMJL15ldGFnc19nZXRjd2QgKHZvaWQpJC8KIGV2YWxfZHluCWMtc3JjL2Vt YWNzL3NyYy9rZXlib2FyZC5jCS9eZXZhbF9keW4gKExpc3BfT2JqZWN0IGZvcm0pJC8KK2V2ZW5m b290aW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZXZlbmZvb3Rpbmd7XFxwYXJzZWFy Z1xcZXZlbmZvb3Rpbmd4eHh9JC8KK2V2ZW5mb290aW5neHh4CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGdkZWZcXGV2ZW5mb290aW5neHh4ICMxe1xcZXZlbmZvb3Rpbmd5eXkgIzFAfEB8QHxAfC8K K2V2ZW5mb290aW5neXl5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXGV2ZW5mb290aW5n eXl5ICMxQHwjMkB8IzNAfCM0XFxmaW5pc2h7JSQvCitldmVuaGVhZGluZwl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGV2ZW5oZWFkaW5ne1xccGFyc2VhcmdcXGV2ZW5oZWFkaW5neHh4fSQv CitldmVuaGVhZGluZ3h4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxldmVuaGVhZGlu Z3h4eCAjMXtcXGV2ZW5oZWFkaW5neXl5ICMxQHxAfEB8QHwvCitldmVuaGVhZGluZ3l5eQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxldmVuaGVhZGluZ3l5eSAjMUB8IzJAfCMzQHwjNFxc ZmluaXNoeyUkLwogZXZlbnQtY29udmVydC1saXN0CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5j CS9eREVGVU4gKCJldmVudC1jb252ZXJ0LWxpc3QiLCBGZXZlbnRfY29udmVydF9saXN0LCAvCiBl dmVudC1zeW1ib2wtcGFyc2UtbW9kaWZpZXJzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9e REVGVU4gKCJpbnRlcm5hbC1ldmVudC1zeW1ib2wtcGFyc2UtbW9kaWZpZXJzIiwgRmUvCiBldmVu dF9oZWFkCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTExMDIxCiBldmVudF90b19rYm9hcmQJ Yy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15ldmVudF90b19rYm9hcmQgKHN0cnVjdCBpbnB1 dF9ldmVudCAqZXZlbnQpJC8KK2V2ZXJ5Zm9vdGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGV2ZXJ5Zm9vdGluZ3tcXHBhcnNlYXJnXFxldmVyeWZvb3Rpbmd4eHh9JC8KK2V2ZXJ5Zm9v dGluZ3h4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxldmVyeWZvb3Rpbmd4eHggIzF7 XFxldmVyeWZvb3Rpbmd5eXkgIzFAfEB8QHwvCitldmVyeWZvb3Rpbmd5eXkJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZ2RlZlxcZXZlcnlmb290aW5neXl5ICMxQHwjMkB8IzNAfCM0XFxmaW5pc2h7 JSQvCitldmVyeWhlYWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxldmVyeWhlYWRp bmd7XFxwYXJzZWFyZ1xcZXZlcnloZWFkaW5neHh4fSQvCitldmVyeWhlYWRpbmd4eHgJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcZXZlcnloZWFkaW5neHh4ICMxe1xcZXZlcnloZWFkaW5n eXl5ICMxQHxAfEB8LworZXZlcnloZWFkaW5neXl5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdk ZWZcXGV2ZXJ5aGVhZGluZ3l5eSAjMUB8IzJAfCMzQHwjNFxcZmluaXNoeyUkLworZXdib3QJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxld2JvdHtcXHZydWxlIGhlaWdodDBwdCBkZXB0aFxc Y29ybmVydGhpY2sgd2lkdC8KK2V3dG9wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZXd0 b3B7XFx2cnVsZSBoZWlnaHRcXGNvcm5lcnRoaWNrIGRlcHRoMHB0IHdpZHQvCiBleGFjdAljLXNy Yy9lbWFjcy9zcmMvZ21hbGxvYy5jCTIwMAorZXhhbXBsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxsZXRcXGV4YW1wbGU9XFxsaXNwJC8KK2V4ZGVudAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGV4ZGVudHtcXHBhcnNlYXJnXFxleGRlbnR5eXl9JC8KK2V4ZGVudAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxsZXRcXGV4ZGVudD1cXG5vZmlsbGV4ZGVudCQvCitleGRlbnR5eXkJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxleGRlbnR5eXkgIzF7e1xcaGZpbFxcYnJlYWtcXGhib3h7 XFxrZXJuIC1cXGV4ZGVudC8KIGV4ZWN1dGUJY3Atc3JjL2MuQwkvXiAgICAgICAgdm9pZCBleGVj dXRlKENQbHVnaW5DU0NTdGF0ZSYgcCwgaW50IHcsIGluLwogZXhpdAljLXNyYy9leGl0LmMJL15E RUZVTihleGl0LCAoc3RhdHVzKSwgaW50IHN0YXR1cykkLwogZXhpdAljLXNyYy9leGl0LnN0cmFu Z2Vfc3VmZml4CS9eREVGVU4oZXhpdCwgKHN0YXR1cyksIGludCBzdGF0dXMpJC8KQEAgLTI4MDMs MTAgKzI1NzMsMTMgQEAgZXhwCXktc3JjL3BhcnNlLnkJOTUKIGV4cDEJeS1zcmMvY2NjcC55CTE0 OAogZXhwX2xpc3QJeS1zcmMvcGFyc2UueQkyNjMKIGV4cGFuZC1hYmJyZXYJYy1zcmMvYWJicmV2 LmMJL15ERUZVTiAoImV4cGFuZC1hYmJyZXYiLCBGZXhwYW5kX2FiYnJldiwgU2V4cGFuZF9hYi8K K2V4cGFuZGFmdGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGV4cGFuZGFmdGVyXFxsZXRcXGV4 cGFuZGFmdGVyXFxzeW5pbmRleGZvb1xcZXhwYW5kYWZ0LwogZXhwYW5kbW5nCXByb2wtc3JjL25h dGRlZC5wcm9sb2cJL15leHBhbmRtbmcodmFyKFYpLHZhcihWKSkuJC8KIGV4cGFuZG1uZ190cmVl CXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15leHBhbmRtbmdfdHJlZSh0cmVlKFJ1bGUsU3luOlNl bSxUcmVlcyksJC8KIGV4cGFuZG1uZ190cmVlcwlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9eZXhw YW5kbW5nX3RyZWVzKFtdLFtdKS4kLwogZXhwYW5kc3luCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJ L15leHBhbmRzeW4oU3luLFN5bik6LSQvCitleHBhbnNpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxleHBhbnNpb257XFxsZWF2ZXZtb2RlXFxyYWlzZS4xZXhcXGhib3ggdG8gMWVte1xc LworZXhwYW5zaW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZXhwYW5zaW9ue1xccmVh bGJhY2tzbGFzaCBleHBhbnNpb259JC8KIGV4cGxpY2l0bHktcXVvdGVkLXBlbmRpbmctZGVsZXRl LW1vZGUJZWwtc3JjL1RBR1RFU1QuRUwJL14oZGVmYWxpYXMgKHF1b3RlIGV4cGxpY2l0bHktcXVv dGVkLXBlbmRpbmctZGVsZXRlLS8KIGV4cHJlc3Npb25fdmFsdWUJeS1zcmMvY2NjcC55CTY4CiBl eHRyYXMJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxNjAzCkBAIC0yODUzLDYgKzI2MjYsMTAgQEAg ZmRwCWMtc3JjL2V0YWdzLmMJMjE3CiBmZgljcC1zcmMvYy5DCS9eICBpbnQgZmYoKXtyZXR1cm4g MTt9OyQvCiBmaWVsZF9vZl9wbGF5CWNwLXNyYy9jb253YXkuY3BwCTE4CiBmaWdub3JlCWMtc3Jj L2V0YWdzLmMJMjQxNgorZmlsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGZpbGUjIzF7 XFxyZWFsYmFja3NsYXNoIGZpbGUgeyMjMX19JC8KK2ZpbGUJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxmaWxlIyMxe1xccmVhbGJhY2tzbGFzaCBmaWxlIHsjIzF9fSUkLworZmlsZQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGZpbGU9XFxpbmRleGR1bW15Zm9udCQvCitmaWxlCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcZmlsZT1cXHNhbXAkLwogZmlsZS1vZi10YWcJZWwt c3JjL2VtYWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRlZnVuIGZpbGUtb2YtdGFnICgm b3B0aW9uYWwgcmVsYXRpdmUpJC8KIGZpbGUtb2YtdGFnLWZ1bmN0aW9uCWVsLXNyYy9lbWFjcy9s aXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihkZWZ2YXIgZmlsZS1vZi10YWctZnVuY3Rpb24gbmls JC8KIGZpbGVKb2luCXBocC1zcmMvbGNlX2Z1bmN0aW9ucy5waHAJL14gIGZ1bmN0aW9uIGZpbGVK b2luKCkkLwpAQCAtMjg2MSw2ICsyNjM4LDcgQEAgZmlsZV9pbmRleAlwZXJsLXNyYy9odGxtaWZ5 LWN5c3RpYwkzMwogZmlsZV90b2NzCXBlcmwtc3JjL2h0bG1pZnktY3lzdGljCTMwCiBmaWxlbmFt ZV9pc19hYnNvbHV0ZQljLXNyYy9ldGFncy5jCS9eZmlsZW5hbWVfaXNfYWJzb2x1dGUgKGNoYXIg KmZuKSQvCiBmaWxlbmFtZXMJYy1zcmMvZXRhZ3MuYwkxOTYKK2ZpbmFsb3V0CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcZmluYWxvdXR7XFxvdmVyZnVsbHJ1bGU9MHB0fSQvCiBmaW5kLXRh ZwllbC1zcmMvZW1hY3MvbGlzcC9wcm9nbW9kZXMvZXRhZ3MuZWwJL14oZGVmdW4gZmluZC10YWcg KHRhZ25hbWUgJm9wdGlvbmFsIG5leHQtcCByZWdleHAtcC8KIGZpbmQtdGFnLWRlZmF1bHQtZnVu Y3Rpb24JZWwtc3JjL2VtYWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRlZmN1c3RvbSBm aW5kLXRhZy1kZWZhdWx0LWZ1bmN0aW9uIG5pbCQvCiBmaW5kLXRhZy1oaXN0b3J5CWVsLXNyYy9l bWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihkZWZ2YXIgZmluZC10YWctaGlzdG9yeSBu aWwpIDsgRG9jIHN0cmluZz8kLwpAQCAtMjg4MywyMSArMjY2MSwzMyBAQCBmaW5kLXRhZy10YWct b3JkZXIJZWwtc3JjL2VtYWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRlZnZhciBmaW5k LXRhZy10YWctbwogZmluZF9lbnRyaWVzCWMtc3JjL2V0YWdzLmMJL15maW5kX2VudHJpZXMgKEZJ TEUgKmluZikkLwogZmluZF91c2VyX3NpZ25hbF9uYW1lCWMtc3JjL2VtYWNzL3NyYy9rZXlib2Fy ZC5jCS9eZmluZF91c2VyX3NpZ25hbF9uYW1lIChpbnQgc2lnKSQvCiBmaW5kY2F0cwlwcm9sLXNy Yy9uYXRkZWQucHJvbG9nCS9eZmluZGNhdHMoW10sTGVmdCxMZWZ0KS4kLworZmluZGV4CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZmluZGV4IHtcXGZuaW5kZXh9JC8KIGZpbmlzaF9hcHBl bmRpY2VzCXBlcmwtc3JjL2h0bG1pZnktY3lzdGljCS9ec3ViIGZpbmlzaF9hcHBlbmRpY2VzICgp JC8KIGZpbmlzaF9zZWN0aW9ucwlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkvXnN1YiBmaW5pc2hf c2VjdGlvbnMgKCkkLwogZmluaXNoX3N1YnNlY3Rpb25zCXBlcmwtc3JjL2h0bG1pZnktY3lzdGlj CS9ec3ViIGZpbmlzaF9zdWJzZWN0aW9ucyAoKSQvCiBmaW5pc2hfc3Vic3Vic2VjdGlvbnMJcGVy bC1zcmMvaHRsbWlmeS1jeXN0aWMJL15zdWIgZmluaXNoX3N1YnN1YnNlY3Rpb25zICgpJC8KK2Zp bmlzaHRpdGxlcGFnZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGZpbmlzaHRpdGxlcGFn ZXslJC8KIGZpbmxpc3QJYy1zcmMvZXRhZ3MuYwkyNDE0CiBmaXJzdAljLXNyYy9lbWFjcy9zcmMv Z21hbGxvYy5jCTE1MQorZmlyc3QJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzcGxpdG9m ZiMxIzJcXGVuZG1hcmt7XFxkZWZcXGZpcnN0eyMxfVxcZGVmXFxyZXN0ey8KIGZpdGNodHJlZWxp c3QJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmZpdGNodHJlZWxpc3QoW10pLiQvCiBmaXh1cF9s b2NhbGUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXklOTElORSB2b2lkIGZpeHVwX2xvY2FsZSAo dm9pZCkge30kLwogZmxhZwljLXNyYy9nZXRvcHQuaAk4MwogZmxhZzJzdHIJcHl0LXNyYy9zZXJ2 ZXIucHkJL15kZWYgZmxhZzJzdHIodmFsdWUsIHN0cmluZyk6JC8KIGZsaXN0c2VlbgljLXNyYy9l dGFncy5jCTI0MTUKK2ZsdXNoY3IJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxmbHVzaGNy e1xcaWZ4XFxwYXJcXGxpc3BwYXIgXFxkZWZcXG5leHQjIzF7fVxcZWxzZSAvCitmbHVzaGxlZnQJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxmbHVzaGxlZnR7JSQvCitmbHVzaHJpZ2h0CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZmx1c2hyaWdodHslJC8KIGZuCWMtc3JjL2V4aXQu YwkvXiAgICB2b2lkIEVYRlVOKCgqZm5bMV0pLCAoTk9BUkdTKSk7JC8KIGZuCWMtc3JjL2V4aXQu c3RyYW5nZV9zdWZmaXgJL14gICAgdm9pZCBFWEZVTigoKmZuWzFdKSwgKE5PQVJHUykpOyQvCitm bmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZmZue1xcZGVmbWV0aHBhcnNl Ym9keVxcRWRlZmZuXFxkZWZmbnhcXGRlZmZuaGUvCiBmbmluCXktc3JjL3BhcnNlLnkJNjgKK2Zu aXRlbWluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZm5pdGVtaW5kZXggIzF7XFxk b2luZCB7Zm59e1xcY29kZXsjMX19fSUkLworZm54XGRlZmZuaGVhZGVyCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcZGVmZm57XFxkZWZtZXRocGFyc2Vib2R5XFxFZGVmZm5cXGRlZmZueFxc ZGVmZm5oZS8KIGZvY3VzX3NldAlweXQtc3JjL3NlcnZlci5weQkvXiAgICBkZWYgZm9jdXNfc2V0 KHNlbGYpOiQvCitmb2xpbwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRvc2V0cSAjMSMy e3tcXGxldFxcZm9saW89MCBcXHR1cm5vZmZhY3RpdmUlJC8KK2ZvbGlvCXRleC1zcmMvdGV4aW5m by50ZXgJL157XFxsZXRcXGZvbGlvPTAlIEV4cGFuZCBhbGwgbWFjcm9zIG5vdyBFWENFUFQgXFxm b2xpby8KK2ZvbGlvCXRleC1zcmMvdGV4aW5mby50ZXgJL157XFxsZXRcXGZvbGlvPTAlJC8KIGZv bGxvd19rZXkJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15mb2xsb3dfa2V5IChMaXNwX09i amVjdCBrZXltYXAsIExpc3BfT2JqZWN0IGtleSkkLwogZm9udHMJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcb2JleXNwYWNlcyBcXG9iZXlsaW5lcyBcXG5pbmV0dCBcXGluZGV4Zm9udHMgXFxyYXdi YWMvCiBmb250c1xybQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGluZGV4Zm9udHNcXHJtIFxc dG9sZXJhbmNlPTk1MDAgXFxhZHZhbmNlXFxiYXNlbGluZS8KQEAgLTI5MjUsMTEgKzI3MTUsMTUg QEAgZm9vYmFyCWMtc3JjL2MuYwkvXmludCBmb29iYXIoKSB7O30kLwogZm9vYmFyCWMuYwkvXmV4 dGVybiB2b2lkIGZvb2JhciAodm9pZCkgX19hdHRyaWJ1dGVfXyAoKHNlY3Rpb24gLwogZm9vYmFy MgljLXNyYy9oLmgJMjAKIGZvb2JhcjJfCWMtc3JjL2guaAkxNgorZm9vdG5vdGUJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcbG9uZ1xcZ2RlZlxcZm9vdG5vdGUgIzF7XFxnbG9iYWxcXGFkdmFuY2Ug XFxmb290bm90ZW5vLworZm9vdG5vdGVzdHlsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRc XGZvb3Rub3Rlc3R5bGU9XFxjb21tZW50JC8KK2Zvb3Rub3Rlenp6CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGxvbmdcXGdkZWZcXGZvb3Rub3Rlenp6ICMxe1xcaW5zZXJ0XFxmb290aW5zeyQvCiBm b3BlcmF0b3IJYy1zcmMvZXRhZ3MuYwkyNDExCiBmb3JjZV9hdXRvX3NhdmVfc29vbgljLXNyYy9l bWFjcy9zcmMva2V5Ym9hcmQuYwkvXmZvcmNlX2F1dG9fc2F2ZV9zb29uICh2b2lkKSQvCiBmb3Jj ZV9leHBsaWNpdF9uYW1lCWMtc3JjL2V0YWdzLmMJMjY1CiBmb3JjZV9xdWl0X2NvdW50CWMtc3Jj L2VtYWNzL3NyYy9rZXlib2FyZC5jCTEwMzg3CiBmb3JlaWduX2V4cG9ydAltZXJjLXNyYy9hY2N1 bXVsYXRvci5tCS9eOi0gcHJhZ21hIGZvcmVpZ25fZXhwb3J0KCJDIiwgdW5yYXZlbF91bml2KGlu LCBvdXQvCitmb3JtYXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxmb3JtYXR7XFxiZWdp bmdyb3VwXFxpbkVOViAlVGhpcyBncm91cCBlbmRzIGF0IC8KIGZvcm1hdFNpemUJb2JqYy1zcmMv UGFja0luc3AubQkvXi0oY29uc3QgY2hhciAqKWZvcm1hdFNpemU6KGNvbnN0IGNoYXIgKilzaXpl IGluQnVmLwogZm91bmQJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyMzQ0CiBmcmFjYXMJaHRtbC1z cmMvc29mdHdhcmUuaHRtbAkvXkZyYWNhcyQvCkBAIC0yOTQ2LDggKzI3NDAsMTIgQEAgZnJlZV9y ZWdleHBzCWMtc3JjL2V0YWdzLmMJL15mcmVlX3JlZ2V4cHMgKHZvaWQpJC8KIGZyZWVfdHJlZQlj LXNyYy9ldGFncy5jCS9eZnJlZV90cmVlIChyZWdpc3RlciBub2RlICpucCkkLwogZnJlZV92YXIJ cHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmZyZWVfdmFyKHZhcihWKSx2YXIoVikpLiQvCiBmcmVl aG9vawljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCS9eZnJlZWhvb2sgKHZvaWQgKnB0cikkLwor ZnJlbmNoc3BhY2luZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGZyZW5jaHNwYWNpbmd7 XFxzZmNvZGU0Nj0xMDAwIFxcc2Zjb2RlNjM9MTAwMCBcXC8KK2ZyZW5jaHNwYWNpbmcJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcbGV0XFxmcmVuY2hzcGFjaW5nPVxccmVsYXglJC8KIGZyZXNoX3Zh cnMJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmZyZXNoX3ZhcnModmFyKFYpLHZhcihWKSkuJC8K IGZzdGFydGxpc3QJYy1zcmMvZXRhZ3MuYwkyNDEzCitmdGFibGUJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxmdGFibGV7XFxiZWdpbmdyb3VwXFxpbkVOVlxcb2JleWxpbmVzXFxvYmV5c3Bh Y2VzLworZnRhYmxleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxmdGFibGV4ICMxXl5N eyUkLwogZnVuYwljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eICAgICAgdm9pZCAoKmZ1bmMpIChM aXNwX09iamVjdCk7JC8KIGZ1bmMJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXiAgICAgIHZvaWQg KCpmdW5jKSAoaW50KTskLwogZnVuYwljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eICAgICAgdm9p ZCAoKmZ1bmMpICh2b2lkICopOyQvCkBAIC0yOTY0LDYgKzI3NjIsNyBAQCBmdW5jdGlvbgljLXNy Yy9lbWFjcy9zcmMvbGlzcC5oCTI5ODUKIGZ1bmN0aW9uCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJ Njk0CiBmdW5jdGlvbgljLXNyYy9ldGFncy5jCTE5NAogZnVuY3Rpb25wCWMtc3JjL2VtYWNzL3Ny Yy9saXNwLmgJL15mdW5jdGlvbnAgKExpc3BfT2JqZWN0IG9iamVjdCkkLworZnVuY3Rpb25wYXJl bnMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcZnVuY3Rpb25wYXJlbnN7XFxib2xkYnJh eFxcbGV0Jj1cXGFtcHJtXFxwYXJlbmNvLwogZnZhbAlmb3J0aC1zcmMvdGVzdC1mb3J0aC5mdGgJ L15mY29uc3QgZnZhbHVlIGZ2YWwkLwogZnZhcglmb3J0aC1zcmMvdGVzdC1mb3J0aC5mdGgJL15m dmFyaWFibGUgZnZhciQvCiBmdmRlZgljLXNyYy9ldGFncy5jCTI0MTgKQEAgLTMwMTksMTAgKzI4 MTgsMTQgQEAgZ2hpMQljLXNyYy9oLmgJMzYKIGdoaTIJYy1zcmMvaC5oCTM5CiBnaWFsbG8JY3At c3JjL2MuQwk0MAogZ2xpZGVyCWNwLXNyYy9jb253YXkuY3BwCS9edm9pZCBnbGlkZXIoaW50IHgs IGludCB5KSQvCitnbG9nZ2luZ2FsbAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGdsb2dn aW5nYWxse1xcYmVnaW5ncm91cCBcXGdsb2JhbGRlZnMgPSAxIFxcbG9nZy8KIGdudQlodG1sLXNy Yy9zb2Z0d2FyZS5odG1sCS9eRnJlZSBzb2Z0d2FyZSB0aGF0IEkgd3JvdGUgZm9yIHRoZSBHTlUg cHJvamVjdCBvciAvCiBnb2JibGVfaW5wdXQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15n b2JibGVfaW5wdXQgKHZvaWQpJC8KIGdvdG8tdGFnLWxvY2F0aW9uLWZ1bmN0aW9uCWVsLXNyYy9l bWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihkZWZ2YXIgZ290by10YWctbG9jYXRpb24t ZnVuY3Rpb24gbmlsJC8KIGdvdG9feHkJY3Atc3JjL3NjcmVlbi5jcHAJL152b2lkIGdvdG9feHko dW5zaWduZWQgY2hhciB4LCB1bnNpZ25lZCBjaGFyIHkpJC8KK2dyb3VwCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcZ3JvdXB7XFxiZWdpbmdyb3VwJC8KK2d0cgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGd0cntcXHJlYWxiYWNrc2xhc2ggZ3RyfSQvCitndHIJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxndHJ7XFxyZWFsYmFja3NsYXNoIGd0cn0lJC8KIGhhbmRsZUxpc3QJ cHl0LXNyYy9zZXJ2ZXIucHkJL14gICAgZGVmIGhhbmRsZUxpc3Qoc2VsZiwgZXZlbnQpOiQvCiBo YW5kbGVOZXcJcHl0LXNyYy9zZXJ2ZXIucHkJL14gICAgZGVmIGhhbmRsZU5ldyhzZWxmLCBldmVu dCk6JC8KIGhhbmRsZV9hc3luY19pbnB1dAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmhh bmRsZV9hc3luY19pbnB1dCAodm9pZCkkLwpAQCAtMzAzNyw2ICsyODQwLDggQEAgaGFzaAljLXNy Yy9lbWFjcy9zcmMvbGlzcC5oCTE4NDMKIGhhc2gJYy1zcmMvZXRhZ3MuYwkvXmhhc2ggKGNvbnN0 IGNoYXIgKnN0ciwgaW50IGxlbikkLwogaGFzaF90YWJsZV90ZXN0CWMtc3JjL2VtYWNzL3NyYy9s aXNwLmgJMTgwNQogaGFzaGZuCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL14gIEVNQUNTX1VJTlQg KCpoYXNoZm4pIChzdHJ1Y3QgaGFzaF90YWJsZV90ZXN0ICp0LC8KK2hhdAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGhhdHtcXHJlYWxiYWNrc2xhc2ggaGF0fSQvCitoYXQJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxoYXR7XFxyZWFsYmFja3NsYXNoIGhhdH0lJC8KIGhkcgljLXNy Yy9lbWFjcy9zcmMvZ21hbGxvYy5jCTE4NjAKIGhlYWRfdGFibGUJYy1zcmMvZW1hY3Mvc3JjL2tl eWJvYXJkLmMJMTEwMjcKIGhlYWRlcgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTEzNzEKQEAgLTMw NDYsNiArMjg1MSw4IEBAIGhlYWRlcgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE2MTAKIGhlYWRl cgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE2NzIKIGhlYWRlcgljLXNyYy9lbWFjcy9zcmMvbGlz cC5oCTE4MjYKIGhlYWRlcl9zaXplCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTQ3MQoraGVhZGlu Zwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGhlYWRpbmd7XFxwYXJzZWFyZ1xcc2VjaGVh ZGluZ2l9JC8KK2hlYWRpbmdzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaGVhZGluZ3Mg IzEge1xcY3NuYW1lIEhFQURJTkdTIzFcXGVuZGNzbmFtZX0kLwogaGVhcHNpemUJYy1zcmMvZW1h Y3Mvc3JjL2dtYWxsb2MuYwkzNjEKIGhlbGxvCXNjbS1zcmMvdGVzdC5zY20JL14oZGVmaW5lIGhl bGxvICJIZWxsbywgRW1hY3MhIikkLwogaGVsbG8Jc2NtLXNyYy90ZXN0LnNjbQkvXihzZXQhIGhl bGxvICJIZWxsbywgd29ybGQhIikkLwpAQCAtMzA1Nyw2ICsyODY0LDEwIEBAIGhlbHBfZm9ybV9z YXZlZF93aW5kb3dfY29uZmlncwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkyMTU2CiBoZWxw d2luCXB5dC1zcmMvc2VydmVyLnB5CS9eZGVmIGhlbHB3aW4oaGVscGRpY3QpOiQvCiBoaWRlX2N1 cnNvcgljcC1zcmMvc2NyZWVuLmNwcAkvXnZvaWQgaGlkZV9jdXJzb3Iodm9pZCkkLwogaGxkcwlt ZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gaW1wb3J0X21vZHVsZSBobGRzLiQvCitoc2l6ZQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eCQkJe1xcbGV0XFxoc2l6ZT1cXHBhZ2V3aWR0aCBcXG1ha2Vm b290bGluZX19JC8KK2hzaXplCXRleC1zcmMvdGV4aW5mby50ZXgJL14JCQl7XFxsZXRcXGhzaXpl PVxccGFnZXdpZHRoIFxcbWFrZWhlYWRsaW5lfSQvCitoc2l6ZQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxzaGlwb3V0XFx2Ym94e3tcXGxldFxcaHNpemU9XFxwYWdld2lkdGggXFxtYWtlaGVhZGxp bmUvCitoc2l6ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9ee1xcbGV0XFxoc2l6ZT1cXHBhZ2V3aWR0 aCBcXG1ha2Vmb290bGluZX19fSUkLwogaHRtbHRyZWVsaXN0CXByb2wtc3JjL25hdGRlZC5wcm9s b2cJL15odG1sdHJlZWxpc3QoW10pLiQvCiBoeWJyaWRfYWxpZ25lZF9hbGxvYwljLXNyYy9lbWFj cy9zcmMvZ21hbGxvYy5jCS9eaHlicmlkX2FsaWduZWRfYWxsb2MgKHNpemVfdCBhbGlnbm1lbnQs IHNpemVfdCBzaXovCiBoeWJyaWRfY2FsbG9jCWMtc3JjL2VtYWNzL3NyYy9nbWFsbG9jLmMJL15o eWJyaWRfY2FsbG9jIChzaXplX3Qgbm1lbWIsIHNpemVfdCBzaXplKSQvCkBAIC0zMDcxLDMxICsy ODgyLDg3IEBAIGkJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAk0Njc5CiBpCWMtc3JjL2VtYWNzL3Ny Yy9saXNwLmgJNTY3CiBpCWMuYwkxNjkKIGkJY3Atc3JjL2MuQwkxMzIKK2kJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxpIyMxe1xccmVhbGJhY2tzbGFzaCBpIHsjIzF9fSQvCitpCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaSMjMXtcXHJlYWxiYWNrc2xhc2ggaSB7IyMxfX0lJC8K K2kJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxiPVxccHRleGIgXFxsZXRcXGM9XFxwdGV4 YyBcXGxldFxcaT1cXHB0ZXhpIFxcbGV0XFx0PVxcLworaQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxsZXRcXGk9XFxpbmRleGR1bW15Zm9udCQvCitpCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxl dFxcaT1cXHNtYXJ0aXRhbGljJC8KIGlhbHBhZ2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgICAg XFxkaW1lbkA9XFxwYWdlaGVpZ2h0IFxcYWR2YW5jZVxcZGltZW5AIGJ5LVxcaHRcXHBhLwogaWFs cGFnZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGF2YWlsZGltZW5APVxccGFnZWhlaWdodCBc XGFkdmFuY2VcXGF2YWlsZGltZW5AIGJ5LwogaWFscGFnZQl0ZXgtc3JjL3RleGluZm8udGV4CS9e ICBcXGRpbWVuQD1cXHBhZ2VoZWlnaHQgXFxhZHZhbmNlXFxkaW1lbkAgYnktXFxodFxccGFydGkv CitpYWxwYWdlCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcb3V0cHV0PXtcXGdsb2JhbFxcc2V0 Ym94XFxwYXJ0aWFscGFnZT0kLworaWFscGFnZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHBhZ2Vzb2ZhcntcXHVudmJveFxccGFydGlhbHBhZ2UgJSQvCiBpYWxwYWdlCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXG5ld2JveFxccGFydGlhbHBhZ2UkLwotaWFscGFnZT0JdGV4LXNyYy90ZXhp bmZvLnRleAkvXiAgXFxvdXRwdXQ9e1xcZ2xvYmFsXFxzZXRib3hcXHBhcnRpYWxwYWdlPSQvCiBp ZGVudGlmeV9nb2FsX3R5cGUJbWVyYy1zcmMvYWNjdW11bGF0b3IubQkvXjotIHByZWQgaWRlbnRp ZnlfZ29hbF90eXBlKHByZWRfaWQ6OmluLCBwcm9jX2lkOjppLwogaWRlbnRpZnlfb3V0X2FuZF9v dXRfcHJpbWUJbWVyYy1zcmMvYWNjdW11bGF0b3IubQkvXjotIHByZWQgaWRlbnRpZnlfb3V0X2Fu ZF9vdXRfcHJpbWUobW9kdWxlX2luZm86OmluLwogaWRlbnRpZnlfcmVjdXJzaXZlX2NhbGxzCW1l cmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBwcmVkIGlkZW50aWZ5X3JlY3Vyc2l2ZV9jYWxscyhw cmVkX2lkOjppbiwgcHJvYy8KIGlkeAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTMxNTAKK2lmY2xl YXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpZmNsZWFye1xcYmVnaW5ncm91cFxcaWdu b3Jlc2VjdGlvbnNcXHBhcnNlYXJnXFxpLworaWZjbGVhcmZhaWwJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxpZmNsZWFyZmFpbHtcXGJlZ2luZ3JvdXBcXGlnbm9yZXNlY3Rpb25zXFxpZmNs ZWEvCitpZmNsZWFyZmFpbHh4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsb25nXFxkZWZcXGlm Y2xlYXJmYWlseHh4ICMxXFxlbmQgaWZjbGVhcntcXGVuZGdyb3VwXFwvCitpZmNsZWFyeHh4CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaWZjbGVhcnh4eCAjMXtcXGVuZGdyb3VwJC8KK2lm aW5mbwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGlmaW5mb3tcXGJlZ2luZ3JvdXBcXGln bm9yZXNlY3Rpb25zXFxpZmluZm94eHh9JC8KK2lmaW5mb3h4eAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxsb25nXFxkZWZcXGlmaW5mb3h4eCAjMVxcZW5kIGlmaW5mb3tcXGVuZGdyb3VwXFxpZ25v cmUvCitpZnNldAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGlmc2V0e1xcYmVnaW5ncm91 cFxcaWdub3Jlc2VjdGlvbnNcXHBhcnNlYXJnXFxpZnMvCitpZnNldGZhaWwJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxpZnNldGZhaWx7XFxiZWdpbmdyb3VwXFxpZ25vcmVzZWN0aW9uc1xc aWZzZXRmYWkvCitpZnNldGZhaWx4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbG9uZ1xcZGVm XFxpZnNldGZhaWx4eHggIzFcXGVuZCBpZnNldHtcXGVuZGdyb3VwXFxpZ25vLworaWZzZXR4eHgJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpZnNldHh4eCAjMXtcXGVuZGdyb3VwJC8KK2lm dGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaWZ0ZXh7fSQvCitpZnVzaW5ndHQJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpZnVzaW5ndHQjMSMye1xcaWZkaW0gXFxmb250ZGlt ZW4zXFx0aGVcXGZvbnQ9MHB0LworaWdub3JlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc aWdub3Jle1xcYmVnaW5ncm91cFxcaWdub3Jlc2VjdGlvbnMkLwogaWdub3JlX2Nhc2UJYy1zcmMv ZXRhZ3MuYwkyNjYKIGlnbm9yZV9tb3VzZV9kcmFnX3AJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJk LmMJMTI1NgotaWxsPVxyZWxheAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHJlZmlsbD1c XHJlbGF4JC8KK2lnbm9yZXNlY3Rpb25zCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaWdu b3Jlc2VjdGlvbnN7JSQvCitpZ25vcmV4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbG9uZ1xc ZGVmXFxpZ25vcmV4eHggIzFcXGVuZCBpZ25vcmV7XFxlbmRncm91cFxcaWdub3JlLworaWkJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpaSMxe3tcXGl0ICMxfX0JCSUgaXRhbGljIGZvbnQk LwogaW1tZWRpYXRlX3F1aXQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJMTc0CiBpbXBhdHRv CWh0bWwtc3JjL3NvZnR3YXJlbGliZXJvLmh0bWwJL15JbXBhdHRvIHByYXRpY28gZGVsIHNvZnR3 YXJlIGxpYmVybyQvCiBpbXBsZW1lbnRhdGlvbgltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0g aW1wbGVtZW50YXRpb24uJC8KK2ltcGxpY2l0bWF0aAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxs ZXRcXGltcGxpY2l0bWF0aCA9ICQkLworaW5FTlYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbmV3 aWZcXGlmRU5WIFxcRU5WZmFsc2UgXFxkZWZcXGluRU5We1xcaWZFTlZcXHJlbGF4XFxlbHMvCiBp bl93b3JkX3NldAljLXNyYy9ldGFncy5jCS9eaW5fd29yZF9zZXQgKHJlZ2lzdGVyIGNvbnN0IGNo YXIgKnN0ciwgcmVnaXN0ZXIgdW4vCiBpbmF0dHJpYnV0ZQljLXNyYy9ldGFncy5jCTI0MDAKIGlu YwljcC1zcmMvUmFuZ2UuaAkvXiAgZG91YmxlIGluYyAodm9pZCkgY29uc3QgeyByZXR1cm4gcm5n X2luYzsgICB9JC8KK2luY2x1ZGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmNsdWRl e1xccGFyc2VhcmdcXGluY2x1ZGV6enp9JC8KK2luY2x1ZGV6enoJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxpbmNsdWRlenp6ICMxe3tcXGRlZlxcdGhpc2ZpbGV7IzF9XFxpbnB1dCAjMSQv CitpbmRiZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGluZGJmPVxcaW5kcm0kLwogaW5k ZXgJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxODU2CitpbmRleGJhY2tzbGFzaAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eICBcXGRlZlxcaW5kZXhiYWNrc2xhc2h7XFxyYXdiYWNrc2xhc2h4eH0kLwor aW5kZXhiYWNrc2xhc2gJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxpbmRleGJhY2tzbGFz aD0wICAlb3ZlcnJpZGRlbiBkdXJpbmcgXFxwcmludGluLworaW5kZXhkb3RmaWxsCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcaW5kZXhkb3RmaWxse1xcY2xlYWRlcnMkLworaW5kZXhkdW1t aWVzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5kZXhkdW1taWVzeyUkLworaW5kZXhk dW1teWRvdHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmRleGR1bW15ZG90c3suLi59 JC8KK2luZGV4ZHVtbXlmb250CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5kZXhkdW1t eWZvbnQjMXsjMX0kLworaW5kZXhkdW1teXRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGluZGV4ZHVtbXl0ZXh7VGVYfSQvCitpbmRleGZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcaW5kZXhmb250c3slJC8KK2luZGV4bmFtZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGRvY29kZWluZGV4IzF7XFxlZGVmXFxpbmRleG5hbWV7IzF9XFxwYXJzZWFyZ1xcc2kvCitp bmRleG5hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb2luZGV4IzF7XFxlZGVmXFxp bmRleG5hbWV7IzF9XFxwYXJzZWFyZ1xcc2luZ2xlLworaW5kZXhub2ZvbnRzCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcaW5kZXhub2ZvbnRzeyUkLworaW5kc2MJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcbGV0XFxpbmRzYz1cXGluZHJtJC8KK2luZHNmCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGxldFxcaW5kc2Y9XFxpbmRybSQvCitpbmRzbAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxs ZXRcXGluZHNsPVxcaW5kaXQkLworaW5kdHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxp bmR0dD1cXG5pbmV0dCQvCiBpbmZhYnNkaXIJYy1zcmMvZXRhZ3MuYwkyMDYKIGluZmFic25hbWUJ Yy1zcmMvZXRhZ3MuYwkyMDUKIGluZmlsZXMJbWFrZS1zcmMvTWFrZWZpbGUJL15pbmZpbGVzID0g JChmaWx0ZXItb3V0ICR7Tk9OU1JDU30sJHtTUkNTfSkgc3JjbGlzdC8KIGluZm5hbWUJYy1zcmMv ZXRhZ3MuYwkyMDQKIGluZm8JYy1zcmMvZW1hY3Mvc3JjL2dtYWxsb2MuYwkxNTcKIGluZm9QYW5l bAlvYmpjcHAtc3JjL1NpbXBsZUNhbGMuTQkvXi0gaW5mb1BhbmVsOnNlbmRlciQvCitpbmZvYXBw ZW5kaXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvYXBwZW5kaXh7XFxwYXJzZWFy Z1xcYXBwZW5kaXh6enp9JC8KK2luZm9hcHBlbmRpeHNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGluZm9hcHBlbmRpeHNlY3tcXHBhcnNlYXJnXFxhcHBlbmRpeHNlY3p6en0kLworaW5m b2FwcGVuZGl4c3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5mb2FwcGVuZGl4 c3Vic2Vje1xccGFyc2VhcmdcXGFwcGVuZGl4c3Vic2VjenovCitpbmZvYXBwZW5kaXhzdWJzdWJz ZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvYXBwZW5kaXhzdWJzdWJzZWN7XFxw YXJzZWFyZ1xcYXBwZW5kaXhzdWJzdS8KK2luZm9jaGFwdGVyCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcaW5mb2NoYXB0ZXJ7XFxwYXJzZWFyZ1xcY2hhcHRlcnp6en0kLworaW5mb3JlZgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm9yZWYgIzF7XFxpbmZvcmVmenp6ICMxLCws LCoqfSQvCitpbmZvcmVmenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5mb3JlZnp6 eiAjMSwjMiwjMywjNCoqe1NlZSBJbmZvIGZpbGUgXFxmaWxley8KK2luZm9zZWN0aW9uCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5mb3NlY3Rpb257XFxwYXJzZWFyZ1xcc2VjdGlvbnp6 en0kLworaW5mb3N1YnNlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvc3Vi c2VjdGlvbntcXHBhcnNlYXJnXFxzdWJzZWN0aW9uenp6fSQvCitpbmZvc3Vic3Vic2VjdGlvbgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm9zdWJzdWJzZWN0aW9ue1xccGFyc2Vhcmdc XHN1YnN1YnNlY3Rpb256enp9LworaW5mb3RvcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGluZm90b3B7XFxwYXJzZWFyZ1xcdW5udW1iZXJlZHp6en0kLworaW5mb3VubnVtYmVyZWQJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvdW5udW1iZXJlZHtcXHBhcnNlYXJnXFx1bm51 bWJlcmVkenp6fSQvCitpbmZvdW5udW1iZXJlZHNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGluZm91bm51bWJlcmVkc2Vje1xccGFyc2VhcmdcXHVubnVtYmVyZWRzZWN6enp9LworaW5m b3VubnVtYmVyZWRzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvdW5udW1i ZXJlZHN1YnNlY3tcXHBhcnNlYXJnXFx1bm51bWJlcmVkc3Vicy8KK2luZm91bm51bWJlcmVkc3Vi c3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5mb3VubnVtYmVyZWRzdWJzdWJz ZWN7XFxwYXJzZWFyZ1xcdW5udW1iZXJlZHMvCiBpbml0CWMtc3JjL2V0YWdzLmMJL15pbml0ICh2 b2lkKSQvCiBpbml0CW9iamMtc3JjL1N1YnByb2Nlc3MubQkvXiAgICBhbmRTdGRFcnI6KEJPT0wp d2FudHNTdGRFcnIkLwogaW5pdAlvYmpjLXNyYy9TdWJwcm9jZXNzLm0JL14tIGluaXQ6KGNvbnN0 IGNoYXIgKilzdWJwcm9jZXNzU3RyaW5nJC8KQEAgLTMxMDcsNiArMjk3NCw3IEBAIGluaXRfcmVn aXN0cnkJY3Atc3JjL2NsaGVpci5jcHAJL152b2lkIGluaXRfcmVnaXN0cnkodm9pZCkkLwogaW5p dF90b29sX2Jhcl9pdGVtcwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmluaXRfdG9vbF9i YXJfaXRlbXMgKExpc3BfT2JqZWN0IHJldXNlKSQvCiBpbml0YQljLmMJL15zdGF0aWMgdm9pZCBp bml0YSAoKSB7fSQvCiBpbml0YgljLmMJL15zdGF0aWMgdm9pZCBpbml0YiAoKSB7fSQvCitpbml0 aWFsCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5pdGlhbCAjMXslJC8KIGluaXRpYWxf a2JvYXJkCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTg0CiBpbml0aWFsaXplLW5ldy10YWdz LXRhYmxlCWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihkZWZ1biBpbml0 aWFsaXplLW5ldy10YWdzLXRhYmxlICgpJC8KIGluaXRpYWxpemVfZ29hbF9zdG9yZQltZXJjLXNy Yy9hY2N1bXVsYXRvci5tCS9eOi0gZnVuYyBpbml0aWFsaXplX2dvYWxfc3RvcmUobGlzdChobGRz X2dvYWwpLCBpbnMvCkBAIC0zMTM4LDcgKzMwMDYsMTQgQEAgaW50ZXJmYWNlCW1lcmMtc3JjL2Fj Y3VtdWxhdG9yLm0JL146LSBpbnRlcmZhY2UuJC8KIGludGVyZmFjZV9sb2NhdGUJYy1zcmMvYy5j CS9eaW50ZXJmYWNlX2xvY2F0ZSh2b2lkKSQvCiBpbnRlcm4JYy1zcmMvZW1hY3Mvc3JjL2xpc3Au aAkvXmludGVybiAoY29uc3QgY2hhciAqc3RyKSQvCiBpbnRlcm5fY19zdHJpbmcJYy1zcmMvZW1h Y3Mvc3JjL2xpc3AuaAkvXmludGVybl9jX3N0cmluZyAoY29uc3QgY2hhciAqc3RyKSQvCitpbnRl cm5hbEJpdGVtCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW50ZXJuYWxCaXRlbXtcXHNt YWxsYnJlYWsgXFxwYXJzZWFyZ1xcaXRlbXp6en0kLworaW50ZXJuYWxCaXRlbXgJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxpbnRlcm5hbEJpdGVteHtcXHBhciBcXHBhcnNlYXJnXFxpdGVt enp6fSQvCitpbnRlcm5hbEJraXRlbQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGludGVy bmFsQmtpdGVte1xcc21hbGxicmVhayBcXHBhcnNlYXJnXFxraXRlbXp6ei8KK2ludGVybmFsQmtp dGVteAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGludGVybmFsQmtpdGVteHtcXHBhciBc XHBhcnNlYXJnXFxraXRlbXp6en0kLworaW50ZXJuYWxCeGl0ZW0JdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxpbnRlcm5hbEJ4aXRlbSAiIzEie1xcZGVmXFx4aXRlbXN1YnRvcGl4eyMxfSBc XHMvCitpbnRlcm5hbEJ4aXRlbXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbnRlcm5h bEJ4aXRlbXggIiMxIntcXGRlZlxceGl0ZW1zdWJ0b3BpeHsjMX0gXFwvCiBpbnRlcm5hbF9sYXN0 X2V2ZW50X2ZyYW1lCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTIyOAoraW50ZXJuYWxzZXRx CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW50ZXJuYWxzZXRxICMxIzJ7J3hyZGVmIHsj MX17XFxjc25hbWUgIzJcXGVuZGMvCiBpbnRlcm5lZAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTY3 MgogaW50ZXJwcmV0ZXJzCWMtc3JjL2V0YWdzLmMJMTk3CiBpbnRlcnJ1cHRfaW5wdXQJYy1zcmMv ZW1hY3Mvc3JjL2tleWJvYXJkLmMJMzI4CkBAIC0zMTczLDkgKzMwNDgsMjggQEAgaXNvX2xpc3B5 X2Z1bmN0aW9uX2tleXMJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJNTE1MQogaXNvcGVyYXRv cglwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9eaXNvcGVyYXRvcihDaGFyKTotJC8KIGlzb3B0YWIJ cHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmlzb3B0YWIoJyUnKS4kLwogaXN3aGl0ZQljLXNyYy9l dGFncy5jCS9eI2RlZmluZQlpc3doaXRlKGMpCShfd2h0W0NIQVIgKGMpXSkgXC8qIGMgaXMgd2hp dGUgLworaXRlbQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGl0ZW17XFxlcnJtZXNzYWdl e0BpdGVtIHdoaWxlIG5vdCBpbiBhIHRhYmxlfX0vCitpdGVtCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGxldFxcaXRlbSA9IFxcaW50ZXJuYWxCaXRlbSAlJC8KK2l0ZW0JdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcbGV0XFxpdGVtPVxcaXRlbWl6ZWl0ZW19JC8KIGl0ZW1fcHJvcGVydGllcwljLXNy Yy9lbWFjcy9zcmMva2V5Ym9hcmQuYwk3NTY4CitpdGVtY29udGVudHMJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxpdGVtY29udGVudHN7IzF9JSQvCitpdGVtZm9udAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGl0ZW1mb250eyMyfSUkLworaXRlbWluZGV4CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGxldFxcaXRlbWluZGV4PSMxJSQvCitpdGVtaXplCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcaXRlbWl6ZXtcXHBhcnNlYXJnXFxpdGVtaXplenp6fSQvCitpdGVtaXplaXRl bQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGl0ZW1pemVpdGVteyUkLworaXRlbWl6ZXkJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpdGVtaXpleSAjMSMyeyUkLworaXRlbWl6ZXp6 egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGl0ZW1pemV6enogIzF7JSQvCitpdGVteAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGl0ZW14e1xcZXJybWVzc2FnZXtAaXRlbXggd2hp bGUgbm90IGluIGEgdGFibGUvCitpdGVteAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGl0 ZW14ID0gXFxpbnRlcm5hbEJpdGVteCAlJC8KK2l0ZW16enoJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxpdGVtenp6ICMxe1xcYmVnaW5ncm91cCAlJC8KK2l2YXJoZWFkZXIJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZpdmFye1xcZGVmdnJwYXJzZWJvZHlcXEVkZWZpdmFyXFxk ZWZpdmFyeFxcZGVmLworaXZhcnhcZGVmaXZhcmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGRlZml2YXJ7XFxkZWZ2cnBhcnNlYm9keVxcRWRlZml2YXJcXGRlZml2YXJ4XFxkZWYv CiBqbXAJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkzMDQ0CiBqdXN0X3JlYWRfZmlsZQljLXNyYy9l dGFncy5jCS9eanVzdF9yZWFkX2ZpbGUgKEZJTEUgKmluZikkLwora2JkCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxca2JkIyMxe1xccmVhbGJhY2tzbGFzaCBrYmQgeyMjMX19JC8KK2tiZAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtiZCMjMXtcXHJlYWxiYWNrc2xhc2gga2JkIHsj IzF9fSUkLwora2JkCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxca2JkIzF7XFxkZWZcXGxv b2t7IzF9XFxleHBhbmRhZnRlclxca2JkZm9vXFxsb29rPz8vCitrYmQJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcbGV0XFxrYmQ9XFxpbmRleGR1bW15Zm9udCQvCiBrYmRfYnVmZmVyCWMtc3JjL2Vt YWNzL3NyYy9rZXlib2FyZC5jCTI5MQoga2JkX2J1ZmZlcl9ldmVudHNfd2FpdGluZwljLXNyYy9l bWFjcy9zcmMva2V5Ym9hcmQuYwkvXmtiZF9idWZmZXJfZXZlbnRzX3dhaXRpbmcgKHZvaWQpJC8K IGtiZF9idWZmZXJfZ2V0X2V2ZW50CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ea2JkX2J1 ZmZlcl9nZXRfZXZlbnQgKEtCT0FSRCAqKmticCwkLwpAQCAtMzE4Niw5ICszMDgwLDE0IEBAIGti ZF9idWZmZXJfc3RvcmVfaGVscF9ldmVudAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmti ZF9idWZmZXJfc3RvcmVfaGVscF9lCiBrYmRfYnVmZmVyX3VuZ2V0X2V2ZW50CWMtc3JjL2VtYWNz L3NyYy9rZXlib2FyZC5jCS9ea2JkX2J1ZmZlcl91bmdldF9ldmVudCAocmVnaXN0ZXIgc3RydWN0 IGlucHV0X2V2ZW4vCiBrYmRfZmV0Y2hfcHRyCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTI5 Nwoga2JkX3N0b3JlX3B0cgljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkzMDIKK2tiZGZvbwl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtiZGZvbyMxIzIjM1xccGFye1xcZGVmXFxvbmV7 IzF9XFxkZWZcXHRocmVleyMzfVxcZC8KIGtib2FyZAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQu Ywk4NjAKIGtib2FyZF9zdGFjawljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwk4NTgKIGtib2Fy ZF9zdGFjawljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwk4NjQKK2tleQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGtleSAjMXt7XFx0dCBcXGV4aHlwaGVucGVuYWx0eT0xMDAwMFxcdXBw ZXJjYXNley8KK2tleQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtleSMjMXtcXHJlYWxi YWNrc2xhc2gga2V5IHsjIzF9fSQvCitrZXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxr ZXkjIzF7XFxyZWFsYmFja3NsYXNoIGtleSB7IyMxfX0lJC8KK2tleQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxsZXRcXGtleT1cXGluZGV4ZHVtbXlmb250JC8KIGtleV9hbmRfdmFsdWUJYy1zcmMv ZW1hY3Mvc3JjL2xpc3AuaAkxODY4CiBrZXlyZW1hcAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQu Ywk4NzQyCiBrZXlyZW1hcAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwk4NzU0CkBAIC0zMjAz LDYgKzMxMDIsMTIgQEAga2V5d29yZHMJeS1zcmMvY2NjcC55CTExNAoga2V5d29yZHMJeS1zcmMv Y2NjcC55CTMwNgoga2luZAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkxMTAyNAoga2luZAlj LXNyYy9oLmgJNDYKK2tpbmRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtpbmRleCB7 XFxreWluZGV4fSQvCitraXRlbQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtpdGVte1xc ZXJybWVzc2FnZXtAa2l0ZW0gd2hpbGUgbm90IGluIGEgdGFibGUvCitraXRlbQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxsZXRcXGtpdGVtID0gXFxpbnRlcm5hbEJraXRlbSAlJC8KK2tpdGVteAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtpdGVteHtcXGVycm1lc3NhZ2V7QGtpdGVteCB3 aGlsZSBub3QgaW4gYSB0YWIvCitraXRlbXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxr aXRlbXggPSBcXGludGVybmFsQmtpdGVteCAlJC8KK2tpdGVtenp6CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxca2l0ZW16enogIzF7XFxkb3N1YmluZCB7a3d9e1xcY29kZXsjMX19e2ZvciB7 XFxiLwoga3NldF9lY2hvX3N0cmluZwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmtzZXRf ZWNob19zdHJpbmcgKHN0cnVjdCBrYm9hcmQgKmtiLCBMaXNwX09iamVjdCB2Lwoga3NldF9rYmRf cXVldWUJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15rc2V0X2tiZF9xdWV1ZSAoc3RydWN0 IGtib2FyZCAqa2IsIExpc3BfT2JqZWN0IHZhbC8KIGtzZXRfa2V5Ym9hcmRfdHJhbnNsYXRlX3Rh YmxlCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ea3NldF9rZXlib2FyZF90cmFuc2xhdGVf dGFibGUgKHN0cnVjdCBrYm9hcmQgKmtiLCAvCkBAIC0zMjEyLDYgKzMxMTcsOSBAQCBrc2V0X2xv Y2FsX2Z1bmN0aW9uX2tleV9tYXAJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15rc2V0X2xv Y2FsX2Z1bmN0aW9uX2tleQoga3NldF9vdmVycmlkaW5nX3Rlcm1pbmFsX2xvY2FsX21hcAljLXNy Yy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmtzZXRfb3ZlcnJpZGluZ190ZXJtaW5hbF9sb2NhbF9t YXAgKHN0cnVjdCBrYm9hcmQgLwoga3NldF9yZWFsX2xhc3RfY29tbWFuZAljLXNyYy9lbWFjcy9z cmMva2V5Ym9hcmQuYwkvXmtzZXRfcmVhbF9sYXN0X2NvbW1hbmQgKHN0cnVjdCBrYm9hcmQgKmti LCBMaXNwX09iLwoga3NldF9zeXN0ZW1fa2V5X3N5bXMJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJk LmMJL15rc2V0X3N5c3RlbV9rZXlfc3ltcyAoc3RydWN0IGtib2FyZCAqa2IsIExpc3BfT2JqZS8K K2wJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxsIzF7e1xcbGkgIzF9XFxudWxsfQkJJSAk LworbAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGI9XFxwdGV4YiBcXGxldFxcYz1cXHB0 ZXhjIFxcbGV0XFxpPVxccHRleGkgXFxsZXRcXHQ9XFwvCitsYWJlbHNwYWNlCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcbGFiZWxzcGFjZXtcXGhza2lwMWVtIFxccmVsYXh9JC8KIGxhbmcJ Yy1zcmMvZXRhZ3MuYwkyMDgKIGxhbmcJYy1zcmMvZXRhZ3MuYwkyNTEKIGxhbmcJYy1zcmMvZXRh Z3MuYwkyNTkKQEAgLTMyMzIsNyArMzE0MCwxMSBAQCBsYXN0YQljLmMJMjcyCiBsYXN0YXJnbWFy Z2luCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG5ld3NraXBcXGRlZmxhc3RhcmdtYXJnaW4gXFxk ZWZsYXN0YXJnbWFyZ2luPTE4cHQkLwogbGFzdGFyZ21hcmdpbgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxzZXRib3gwPVxcaGJveHtcXGhza2lwIFxcZGVmbGFzdGFyZ21hcmdpbntcXHJtICMyfVxc aHMvCiBsYXN0YgljLmMJMjc4CitsYXN0bm9kZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XG5vZGV4eHhbIzEsIzJde1xcZ2RlZlxcbGFzdG5vZGV7IzF9fSQvCitsYXN0bm9kZQl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxsZXRcXGxhc3Rub2RlPVxccmVsYXgkLworbGFzdG5vZGUJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcbGV0XFxsYXN0bm9kZT1cXHJlbGF4fSQvCiBsYgljLXNyYy9ldGFn cy5jCTI5MjMKK2xicmIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxsYnJie3tcXGJmXFxj aGFyYFxcW319IFxcZGVmXFxyYnJie3tcXGJmXFxjaGFyYFxcXX19JC8KIGxicwljLXNyYy9ldGFn cy5jCTI5MjQKIGxjZQlwaHAtc3JjL2xjZV9mdW5jdGlvbnMucGhwCS9eICAgICAgZnVuY3Rpb24g bGNlKCkkLwogbGNlX2JpbmR0ZXh0ZG9tYWluCXBocC1zcmMvbGNlX2Z1bmN0aW9ucy5waHAJL14g ICAgICBmdW5jdGlvbiBsY2VfYmluZHRleHRkb21haW4oJGRfbmFtZSwgJGRfcGF0aC8KQEAgLTMy NDgsMTIgKzMxNjAsMTUgQEAgbGVuCWMtc3JjL2V0YWdzLmMJMjM3CiBsZW5ndGgJYy1zcmMvZXRh Z3MuYwkyNDk1CiBsZW5ndGgJeS1zcmMvY2NjcC55CTExMwogbGVuZ3RoCXktc3JjL2NjY3AueQk0 NAorbGVzcwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGxlc3N7XFxyZWFsYmFja3NsYXNo IGxlc3N9JC8KK2xlc3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxsZXNze1xccmVhbGJh Y2tzbGFzaCBsZXNzfSUkLwogbGV0CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMjk4MQogbGV0dGVy CXRleC1zcmMvdGV4aW5mby50ZXgJL14gIHsjMX17QXBwZW5kaXggXFxhcHBlbmRpeGxldHRlcn17 XFxub2V4cGFuZFxcZm9saW99fS8KIGxldHRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICB7XFxh cHBlbmRpeGxldHRlcn0kLwogbGV0dGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIHtcXGFwcGVu ZGl4bGV0dGVyfXtcXHRoZVxcc2Vjbm99e1xcdGhlXFxzdWJzZWNub317XFx0aC8KIGxldHRlcgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxjaGFwbWFjcm8geyMxfXtBcHBlbmRpeCBcXGFwcGVuZGl4 bGV0dGVyfSUkLwogbGV0dGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXHRoaXNzZWN0 aW9ueyMxfVxcc2VjaGVhZGluZyB7IzF9e1xcYXBwZW5kaXhsZXQvCitsZXR0ZXIJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxhZHZhbmNlIFxcYXBwZW5kaXhubyBieSAxIFxcbWVzc2Fn ZXtBcHBlbmRpeC8KIGxldHRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxzdWJzZWNoZWFkaW5n IHsjMX17XFxhcHBlbmRpeGxldHRlcn17XFx0aGVcXHNlY25vfXtcXC8KIGxldHRlcgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eeyMxfXtcXGFwcGVuZGl4bGV0dGVyfXtcXHRoZVxcc2Vjbm99e1xcbm9l eHBhbmRcXGZvbGlvfS8KIGxldHRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eeyMxfXtcXGFwcGVu ZGl4bGV0dGVyfXtcXHRoZVxcc2Vjbm99e1xcdGhlXFxzdWJzZWNub317XFwvCkBAIC0zMjYxLDYg KzMxNzYsNyBAQCBsZXR0ZXI6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXHhkZWZcXHRoaXNjaGFw dGVye0FwcGVuZGl4IFxcYXBwZW5kaXhsZXR0ZXI6IFxcbgogbGV2ZWwJYy1zcmMvZW1hY3Mvc3Jj L2xpc3AuaAkzMTUzCiBsZXgJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmxleChXLFN5bk91dCxT ZW0pOi0kLwogbGV4cHRyCXktc3JjL2NjY3AueQkzMzIKK2xpCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGxldFxcbGkgPSBcXHNmICUgU29tZXRpbWVzIHdlIGNhbGwgaXQgXFxsaSwgbm90IFxcc2Yu LwogbGlicwltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gaW1wb3J0X21vZHVsZSBsaWJzLiQv CiBsaWNlbnplCWh0bWwtc3JjL3NvZnR3YXJlbGliZXJvLmh0bWwJL15MaWNlbnplIGQndXNvIGRp IHVuIHByb2dyYW1tYSQvCiBsaW1pdAljcC1zcmMvUmFuZ2UuaAkvXiAgZG91YmxlIGxpbWl0ICh2 b2lkKSBjb25zdCB7IHJldHVybiBybmdfbGltaXQ7IH0kLwpAQCAtMzI3Myw5ICszMTg5LDEyIEBA IGxpbmVidWZmZXJfaW5pdAljLXNyYy9ldGFncy5jCS9ebGluZWJ1ZmZlcl9pbml0IChsaW5lYnVm ZmVyICpsYnApJC8KIGxpbmVidWZmZXJfc2V0bGVuCWMtc3JjL2V0YWdzLmMJL15saW5lYnVmZmVy X3NldGxlbiAobGluZWJ1ZmZlciAqbGJwLCBpbnQgdG9rc2l6ZSkkLwogbGluZW5vCWMtc3JjL2Vt YWNzL3NyYy9saXNwLmgJMzE0NwogbGluZW5vCWMtc3JjL2V0YWdzLmMJMjUwNgorbGluZW51bWJl cgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGRlZlxcbGluZW51bWJlcntcXHRoZVxcaW5wdXRs aW5lbm86XFxzcGFjZX0kLworbGluZW51bWJlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxl dFxcbGluZW51bWJlciA9IFxcZW1wdHkgJSBOb24tMy4wLiQvCiBsaW5lcG9zCWMtc3JjL2V0YWdz LmMJMjUwNwogbGluZXBvcwljLXNyYy9ldGFncy5jCTI5MjIKIGxpbmtzCWh0bWwtc3JjL3NvZnR3 YXJlLmh0bWwJL15MaW5rcyB0byBpbnRlcmVzdGluZyBzb2Z0d2FyZSQvCitsaXNwCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcbGlzcHtcXGFib3ZlZW52YnJlYWskLwogbGlzcF9ldmFsX2Rl cHRoCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMzA0NQogbGlzcF9oX0NIRUNLX0xJU1RfQ09OUwlj LXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eI2RlZmluZSBsaXNwX2hfQ0hFQ0tfTElTVF9DT05TKHgs IHkpIENIRUNLX1RZUEUgKEMvCiBsaXNwX2hfQ0hFQ0tfTlVNQkVSCWMtc3JjL2VtYWNzL3NyYy9s aXNwLmgJL14jZGVmaW5lIGxpc3BfaF9DSEVDS19OVU1CRVIoeCkgQ0hFQ0tfVFlQRSAoSU5URUdF Ui8KQEAgLTMzMDksNiArMzIyOCw3IEBAIGxpc3BfaF9YVFlQRQljLXNyYy9lbWFjcy9zcmMvbGlz cC5oCS9eIyBkZWZpbmUgbGlzcF9oX1hUWVBFKGEpICgoZW51bSBMaXNwX1R5cGUpCiBsaXNwX2hf WFVOVEFHCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL14jIGRlZmluZSBsaXNwX2hfWFVOVEFHKGEs IHR5cGUpICgodm9pZCAqKSAoaW50cHRyXy8KIGxpc3BfaF9jaGVja19jb25zX2xpc3QJYy1zcmMv ZW1hY3Mvc3JjL2xpc3AuaAkvXiMgZGVmaW5lIGxpc3BfaF9jaGVja19jb25zX2xpc3QoKSAoKHZv aWQpIDApJC8KIGxpc3BfaF9tYWtlX251bWJlcgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eIyBk ZWZpbmUgbGlzcF9oX21ha2VfbnVtYmVyKG4pIFxcJC8KK2xpc3BwYXIJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZ2RlZlxcbGlzcHBhcntcXG51bGxcXGVuZGdyYWZ9fSQvCiBsaXNweV9hY2NlbnRf Y29kZXMJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJNDYzNAogbGlzcHlfYWNjZW50X2tleXMJ Yy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJNDc0MQogbGlzcHlfZHJhZ19uX2Ryb3BfbmFtZXMJ Yy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJNTE4MQpAQCAtMzMzNSwxOCArMzI1NSwyOSBAQCBs b2FkUE9STWFuYWdlcglwaHAtc3JjL2xjZV9mdW5jdGlvbnMucGhwCS9eICBmdW5jdGlvbiAmbG9h ZFBPUk1hbmFnZXIoKSQvCiBsb2NhbF9pZl9zZXQJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyMzM4 CiBsb2NhdGlvbgljcC1zcmMvY2xoZWlyLmhwcAkvXiAgICBsb2NhdGlvbigpIHsgfSQvCiBsb2Nh dGlvbgljcC1zcmMvY2xoZWlyLmhwcAkzMworbG9nZ2luZ2FsbAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGxvZ2dpbmdhbGx7XFx0cmFjaW5nY29tbWFuZHMyIFxcdHJhY2luZ3N0YXRzMiAk LworbG9vawl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtiZCMxe1xcZGVmXFxsb29reyMx fVxcZXhwYW5kYWZ0ZXJcXGtiZGZvb1xcbG9vaz8/LwogbG9va3VwCXktc3JjL2NjY3AueQkvXmxv b2t1cCAobmFtZSwgbGVuLCBoYXNoKSQvCiBsb29rdXBfY2FsbAltZXJjLXNyYy9hY2N1bXVsYXRv ci5tCS9eOi0gcHJlZCBsb29rdXBfY2FsbChhY2N1X2dvYWxfc3RvcmU6OmluLCBhY2N1X2dvYWwv Citsb3Nlc3BhY2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxsb3Nlc3BhY2UgIzF7IzF9 JC8KIGxvd2Nhc2UJYy1zcmMvZXRhZ3MuYwkvXiNkZWZpbmUgbG93Y2FzZShjKQl0b2xvd2VyIChD SEFSIChjKSkkLworbG93ZXJjYXNlZW51bWVyYXRlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcbG93ZXJjYXNlZW51bWVyYXRleyUkLwogbHVjaWRfZXZlbnRfdHlwZV9saXN0X3AJYy1zcmMv ZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15sdWNpZF9ldmVudF90eXBlX2xpc3RfcCAoTGlzcF9PYmpl Y3Qgb2JqZWN0KSQvCitsdnZtb2RlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbHZ2bW9k ZXtcXHZib3ggdG8gMHB0e319JC8KIG1hYm9ydAljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCS9e bWFib3J0IChlbnVtIG1jaGVja19zdGF0dXMgc3RhdHVzKSQvCiBtYWNoX2hvc3Rfc2VsZgljLXNy Yy9tYWNoc3lzY2FsbHMuaAkvXlNZU0NBTEwgKG1hY2hfaG9zdF9zZWxmLCAtMjksJC8KIG1hY2hf bXNnX3RyYXAJYy1zcmMvbWFjaHN5c2NhbGxzLmgJL15TWVNDQUxMIChtYWNoX21zZ190cmFwLCAt MjUsJC8KIG1hY2hfcmVwbHlfcG9ydAljLXNyYy9tYWNoc3lzY2FsbHMuaAkvXlNZU0NBTEwgKG1h Y2hfcmVwbHlfcG9ydCwgLTI2LCQvCiBtYWNoX3Rhc2tfc2VsZgljLXNyYy9tYWNoc3lzY2FsbHMu aAkvXlNZU0NBTEwgKG1hY2hfdGFza19zZWxmLCAtMjgsJC8KIG1hY2hfdGhyZWFkX3NlbGYJYy1z cmMvbWFjaHN5c2NhbGxzLmgJL15TWVNDQUxMIChtYWNoX3RocmVhZF9zZWxmLCAtMjcsJC8KK21h Y2hlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm1hY3tcXGRlZnBhcnNlYm9k eVxcRWRlZm1hY1xcZGVmbWFjeFxcZGVmbWFjaGUvCittYWN4XGRlZm1hY2hlYWRlcgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm1hY3tcXGRlZnBhcnNlYm9keVxcRWRlZm1hY1xcZGVm bWFjeFxcZGVmbWFjaGUvCiBtYWdpYwljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCTE4NjMKK21h aW5tYWdzdGVwCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcbWFpbm1hZ3N0ZXA9XFxtYWdz dGVwMSQvCittYWlubWFnc3RlcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXG1haW5tYWdz dGVwPVxcbWFnc3RlcGhhbGYkLwogbWFpbnRhaW5pbmcuaW5mbwltYWtlLXNyYy9NYWtlZmlsZQkv Xm1haW50YWluaW5nLmluZm86IG1haW50YWluaW5nLnRleGkkLworbWFqb3JoZWFkaW5nCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbWFqb3JoZWFkaW5ne1xccGFyc2VhcmdcXG1ham9yaGVh ZGluZ3p6en0kLworbWFqb3JoZWFkaW5nenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc bWFqb3JoZWFkaW5nenp6ICMxeyUkLwogbWFrZS1hYmJyZXYtdGFibGUJYy1zcmMvYWJicmV2LmMJ L15ERUZVTiAoIm1ha2UtYWJicmV2LXRhYmxlIiwgRm1ha2VfYWJicmV2X3RhYmxlLCBTbS8KIG1h a2VfQ190YWcJYy1zcmMvZXRhZ3MuYwkvXm1ha2VfQ190YWcgKGJvb2wgaXNmdW4pJC8KIG1ha2Vf Y29vcglwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9ebWFrZV9jb29yKHMoXyksQWxwaGEsU2VtMSxT ZW0yLEFscGhhQFNlbTFAU2VtMikuJC8KQEAgLTMzODcsNiArMzMxOCw3IEBAIG1hcF93b3JkCXBy b2wtc3JjL25hdGRlZC5wcm9sb2cJL15tYXBfd29yZChbW19dfFdzXSxFeHApOi0kLwogbWFwcGlu ZwlodG1sLXNyYy9hbGdydGhtcy5odG1sCS9eTWFwcGluZyB0aGUgQ2hhbm5lbCBTeW1ib2xzJC8K IG1hcHN5bglwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9ebWFwc3luKEFcL0IsQU1cL0JNKTotJC8K IG1hcmtfa2JvYXJkcwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXm1hcmtfa2JvYXJkcyAo dm9pZCkkLworbWF0aAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG1hdGgjMXtcXGltcGxp Y2l0bWF0aCAjMVxcaW1wbGljaXRtYXRofSQvCiBtYXgJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkv XiNkZWZpbmUgbWF4KGEsIGIpICgoYSkgPiAoYikgPyAoYSkgOiAoYikpJC8KIG1heAljLXNyYy9l bWFjcy9zcmMvbGlzcC5oCTU4CiBtYXgJYy5jCS9eX19hdHRyaWJ1dGVfXyAoKGFsd2F5c19pbmxp bmUpKSBtYXggKGludCBhLCBpbnQgYikvCkBAIC0zNDA5LDYgKzMzNDEsNyBAQCBtZW1hbGlnbglj LXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCS9ebWVtYWxpZ24gKHNpemVfdCBhbGlnbm1lbnQsIHNp emVfdCBzaXplKSQvCiBtZW1iZXIJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXm1lbWJlcihYLFtY fF9dKS4kLwogbWVtYmVyX2xlc3N0aGFuX2dvYWxpZAltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9e Oi0gcHJlZCBtZW1iZXJfbGVzc3RoYW5fZ29hbGlkKGFjY3VfZ29hbF9zdG9yZTo6aW4vCiBtZW1j bGVhcgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9ebWVtY2xlYXIgKHZvaWQgKnAsIHB0cmRpZmZf dCBuYnl0ZXMpJC8KK21lbnUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbG9uZ1xcZGVmXFxtZW51 ICMxXFxlbmQgbWVudXt9JC8KIG1lbnVfYmFyX2l0ZW0JYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJk LmMJL15tZW51X2Jhcl9pdGVtIChMaXNwX09iamVjdCBrZXksIExpc3BfT2JqZWN0IGl0ZW0sIC8K IG1lbnVfYmFyX2l0ZW1zCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ebWVudV9iYXJfaXRl bXMgKExpc3BfT2JqZWN0IG9sZCkkLwogbWVudV9iYXJfaXRlbXNfaW5kZXgJYy1zcmMvZW1hY3Mv c3JjL2tleWJvYXJkLmMJNzM2OQpAQCAtMzQxOCw2ICszMzUxLDExIEBAIG1lbnVfaXRlbV9ldmFs X3Byb3BlcnR5CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ebWVudV9pdGVtX2V2YWxfcHJv cGVydHkgKExpCiBtZW51X2l0ZW1fZXZhbF9wcm9wZXJ0eV8xCWMtc3JjL2VtYWNzL3NyYy9rZXli b2FyZC5jCS9ebWVudV9pdGVtX2V2YWxfcHJvcGVydHlfMSAoTGlzcF9PYmplY3QgYXJnKSQvCiBt ZW51X3NlcGFyYXRvcl9uYW1lX3AJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15tZW51X3Nl cGFyYXRvcl9uYW1lX3AgKGNvbnN0IGNoYXIgKmxhYmVsKSQvCiBtZXRhc291cmNlCWMtc3JjL2V0 YWdzLmMJMTk4CittZXRob2RoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZt ZXRob2R7XFxkZWZtZXRocGFyc2Vib2R5XFxFZGVmbWV0aG9kXFxkZWZtZXQvCittZXRob2R4XGRl Zm1ldGhvZGhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm1ldGhvZHtcXGRl Zm1ldGhwYXJzZWJvZHlcXEVkZWZtZXRob2RcXGRlZm1ldC8KK21ldGhwYXJzZWJvZHlcRWRlZmZu CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmZm57XFxkZWZtZXRocGFyc2Vib2R5XFxF ZGVmZm5cXGRlZmZueFxcZGVmZm5oZS8KK21ldGhwYXJzZWJvZHlcRWRlZm1ldGhvZAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm1ldGhvZHtcXGRlZm1ldGhwYXJzZWJvZHlcXEVkZWZt ZXRob2RcXGRlZm1ldC8KK21ldGhwYXJzZWJvZHlcRWRlZnR5cGVmbgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGRlZnR5cGVmbntcXGRlZm1ldGhwYXJzZWJvZHlcXEVkZWZ0eXBlZm5cXGRl ZnR5cC8KIG1pbgljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCS9eI2RlZmluZSBtaW4oYSwgYikg KChhKSA8IChiKSA/IChhKSA6IChiKSkkLwogbWluCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL14j ZGVmaW5lIG1pbihhLCBiKSAoKGEpIDwgKGIpID8gKGEpIDogKGIpKSQvCiBtaW4JYy1zcmMvZW1h Y3Mvc3JjL2xpc3AuaAk1NwpAQCAtMzQyNSw2ICszMzYzLDcgQEAgbWluCWNwLXNyYy9jb253YXku Y3BwCS9eI2RlZmluZSBtaW4oeCx5KSAgKCh4ID4geSkgPyB5IDogeCkkLwogbWluX2FyZ3MJYy1z cmMvZW1hY3Mvc3JjL2xpc3AuaAkxNjg2CiBtaW5fY2hhcgljLXNyYy9lbWFjcy9zcmMvbGlzcC5o CTE2MjEKIG1pbnVzCWNwLXNyYy9mdW5jdGlvbnMuY3BwCS9edm9pZCBEYXRlOjptaW51cyAoIGlu dCBkYXlzICwgaW50IG1vbnRoICwgaW50IHllYXIvCittaW51cwl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXG1pbnVzeyQtJH0kLwogbWl0aQlodG1sLXNyYy9zb2Z0d2FyZWxpYmVyby5odG1s CS9eU2ZhdGlhbW8gYWxjdW5pIG1pdGkkLwogbW9kaWZpZXJfbmFtZXMJYy1zcmMvZW1hY3Mvc3Jj L2tleWJvYXJkLmMJNjMxOQogbW9kaWZpZXJfc3ltYm9scwljLXNyYy9lbWFjcy9zcmMva2V5Ym9h cmQuYwk2MzI3CkBAIC0zNDUwLDcgKzMzODksOSBAQCBteV9zdHJ1Y3QJYy1zcmMvaC5oCTkxCiBt eV9zdHJ1Y3QJYy5jCTIyNgogbXlfdHlwZWRlZgljLXNyYy9oLmgJOTMKIG15X3R5cGVkZWYJYy5j CTIyOAorbXlsYnJhY2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxteWxicmFjZSB7e1xc dHQgXFxjaGFyICcxNzN9fSQvCiBteXBpCWZvcnRoLXNyYy90ZXN0LWZvcnRoLmZ0aAkvXnN5bm9u eW0gbXlwaSBmY29uc3QkLworbXlyYnJhY2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxt eXJicmFjZSB7e1xcdHQgXFxjaGFyICcxNzV9fSQvCiBuCWMtc3JjL2V4aXQuYwkyOAogbgljLXNy Yy9leGl0LnN0cmFuZ2Vfc3VmZml4CTI4CiBuYW1lCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5j CTcyNDEKQEAgLTM0ODAsMjEgKzM0MjEsMjggQEAgbmFtZQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxiZWdpbmdyb3VwXFxkZWZuYW1lIHtcXGNvZGV7IzF9ICMyfXtGdW5jdGlvbn0lJC8KIG5hbWUJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcYmVnaW5ncm91cFxcZGVmbmFtZSB7XFxjb2RleyMxfSAj Mn17VmFyaWFibGV9JSQvCiBuYW1lCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGJlZ2luZ3JvdXBc XGRlZm5hbWUge1xcY29kZXsjMn0gIzN9eyMxfSQvCiBuYW1lCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGJlZ2luZ3JvdXBcXGRlZm5hbWUge1xcY29kZXsjMn0gIzN9eyMxfSUkLworbmFtZQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNpbmdsZWNvZGVpbmRleGVyICMxe1xcZG9pbmR7XFxp bmRleG5hbWV9e1xcY29kZS8KK25hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzaW5n bGVpbmRleGVyICMxe1xcZG9pbmR7XFxpbmRleG5hbWV9eyMxfX0kLwogbmFtZQl5LXNyYy9jY2Nw LnkJMTEzCiBuYW1lCXktc3JjL2NjY3AueQk0MwogbmFtZWQJYy1zcmMvZXRhZ3MuYwkyNTA1CiBu YW1lc3RyaW5nZXF1YWwJcGFzLXNyYy9jb21tb24ucGFzCS9eZnVuY3Rpb24gbmFtZXN0cmluZ2Vx dWFsOygqKHZhciBOYW1lMSxOYW1lMiA6IE5hbWUvCiBuYXJncwljLXNyYy9lbWFjcy9zcmMvbGlz cC5oCTI5ODcKK25lZWQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxuZWVke1xccGFyc2Vh cmdcXG5lZWR4fSQvCiBuZWVkX2FkanVzdG1lbnQJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxOTg2 CituZWVkeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5lZWR4IzF7JSQvCiBuZWlnaGJv cnMJY3Atc3JjL2NsaGVpci5ocHAJNTkKIG5lbGVtCWNwLXNyYy9SYW5nZS5oCS9eICBpbnQgbmVs ZW0gKHZvaWQpIGNvbnN0IHsgcmV0dXJuIHJuZ19uZWxlbTsgfSQvCiBuZXN0bGV2CWMtc3JjL2V0 YWdzLmMJMjUyNQogbmV3CW9iamMtc3JjL1BhY2tJbnNwLm0JL14rbmV3JC8KIG5ldwlwZXJsLXNy Yy9odGxtaWZ5LWN5c3RpYwkxNjMKIG5ld190YWcJcGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJMTgK K25ld2NvZGVpbmRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5ld2NvZGVpbmRleCAj MXskLworbmV3aW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxuZXdpbmRleCAjMXsk LwogbmV3bGIJYy1zcmMvZXRhZ3MuYwkyOTMwCiBuZXdsaW5lcG9zCWMtc3JjL2V0YWdzLmMJMjkz MgogbmV3dGV4dHN0cmluZwlwYXMtc3JjL2NvbW1vbi5wYXMJL15mdW5jdGlvbiBuZXd0ZXh0c3Ry aW5nOyAoKjogVGV4dFN0cmluZzsqKSQvCituZXd3cml0ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxnZGVmXFxuZXd3cml0ZXtcXGFsbG9jQDdcXHdyaXRlXFxjaGFyZGVmXFxzaXh0QEBufX0kLwog bmV4dAljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCTE2NAogbmV4dAljLXNyYy9lbWFjcy9zcmMv Z21hbGxvYy5jCTE4OAogbmV4dAljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCTE5OApAQCAtMzUw OSw2ICszNDU3LDEwIEBAIG5leHQJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkzMTM0CiBuZXh0CWMt c3JjL2VtYWNzL3NyYy9saXNwLmgJNzAwCiBuZXh0CWMtc3JjL2V0YWdzLmMJMjAzCiBuZXh0CWMu YwkxNzQKK25leHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxmbHVzaGNye1xcaWZ4XFxw YXJcXGxpc3BwYXIgXFxkZWZcXG5leHQjIzF7fVxcZWxzZSAvCituZXh0CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcbmV4dCMjMXt9XFxuZXh0fSQvCituZXh0CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxccGFyc2VhcmcgIzF7XFxsZXRcXG5leHQ9IzFcXGJlZ2luZ3JvdXBcXG9iZXls aW5lcy8KK25leHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZWRlZlxcbmV4dHtcXHdyaXRlXFxh dXhmaWxle1xcaW50ZXJuYWxzZXRxIHsjMX17IzJ9fX0vCiBuZXh0CXktc3JjL2NjY3AueQk0Mgog bmV4dC1maWxlCWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihkZWZ1biBu ZXh0LWZpbGUgKCZvcHRpb25hbCBpbml0aWFsaXplIG5vdmlzaXQpJC8KIG5leHQtZmlsZS1saXN0 CWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihkZWZ2YXIgbmV4dC1maWxl LWxpc3QgbmlsJC8KQEAgLTM1MTksMjYgKzM0NzEsNDQgQEAgbmV4dF93ZWFrCWMtc3JjL2VtYWNz L3NyYy9saXNwLmgJMTg3NQogbmV4dGZyZWUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkzMDI5CiBu ZnJlZQljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCTE1MAogbmwJYy1zcmMvZXRhZ3MuYwkyNTIx CitubQl0ZXgtc3JjL3Rlc3RlbnYudGV4CS9eXFxuZXdjb21tYW5ke1xcbm19WzJde1xcbm9tZW5j bGF0dXJleyMxfXsjMn19JC8KK25vCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYXBwZW5k aXhsZXR0ZXJ7XFxjaGFyXFx0aGVcXGFwcGVuZGl4bm99JC8KIG5vCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGdsb2JhbFxcYWR2YW5jZSBcXGFwcGVuZGl4bm8gYnkgMSBcXG1lc3NhZ2V7QXBwZW5k aXgvCiBubwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxpZm51bVxcc2Vjbm89MCBBcHBlbmRpeFxc eHJlZnRpZSdjaGFyXFx0aGVcXGFwcGVuZGl4bi8KIG5vCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XG5ld2NvdW50IFxcYXBwZW5kaXhubyAgXFxhcHBlbmRpeG5vID0gYFxcQCQvCi1uby5cdGhlXHNl Y25vCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGVsc2UgXFxpZm51bSBcXHN1YnNlY25vPTAgU2Vj dGlvblxceHJlZnRpZSdjaGFyXFx0aGVcXC8KLW5vLlx0aGVcc2Vjbm8uXHRoZVxzdWJzZWNubwl0 ZXgtc3JjL3RleGluZm8udGV4CS9eU2VjdGlvblxceHJlZnRpZSdjaGFyXFx0aGVcXGFwcGVuZGl4 bm8uXFx0aGVcXHNlY25vLlxcdGgvCi1uby5cdGhlXHNlY25vLlx0aGVcc3Vic2Vjbm8uXHRoZVxz dWJzdWJzZWNubwl0ZXgtc3JjL3RleGluZm8udGV4CS9eU2VjdGlvblxceHJlZnRpZSdjaGFyXFx0 aGVcXGFwcGVuZGl4bm8uXFx0aGVcXHNlY25vLlxcdGgvCituby5cdGhlCXRleC1zcmMvdGV4aW5m by50ZXgJL15TZWN0aW9uXFx4cmVmdGllJ2NoYXJcXHRoZVxcYXBwZW5kaXhuby5cXHRoZVxcc2Vj bm8uXFx0aC8KK25vLlx0aGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZWxzZSBcXGlmbnVtIFxc c3Vic2Vjbm89MCBTZWN0aW9uXFx4cmVmdGllJ2NoYXJcXHRoZVxcLwogbm9fYXJndW1lbnQJYy1z cmMvZ2V0b3B0LmgJODkKIG5vX2xhbmdfaGVscAljLXNyYy9ldGFncy5jCTcwNwogbm9fc3ViCWMt c3JjL2VtYWNzL3NyYy9yZWdleC5oCTM4Nwogbm9jYXNlX3RhaWwJYy1zcmMvZXRhZ3MuYwkvXm5v Y2FzZV90YWlsIChjb25zdCBjaGFyICpjcCkkLwogbm9kZQljLXNyYy9ldGFncy5jCTIyNQorbm9k ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5vZGV7XFxFTlZjaGVja1xccGFyc2Vhcmdc XG5vZGV6enp9JC8KIG5vZGVfc3QJYy1zcmMvZXRhZ3MuYwkyMTQKIG5vZGVyZWYJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcYXBwZW5kaXhub2RlcmVmICUkLworbm9kZXh4eAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXG5vZGV4eHhbIzEsIzJde1xcZ2RlZlxcbGFzdG5vZGV7IzF9fSQvCitu b2Rlenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbm9kZXp6eiMxe1xcbm9kZXh4eCBb IzEsXX0kLworbm9maWxsZXhkZW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbm9maWxs ZXhkZW50e1xccGFyc2VhcmdcXG5vZmlsbGV4ZGVudHl5eX0kLworbm9maWxsZXhkZW50eXl5CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbm9maWxsZXhkZW50eXl5ICMxe3tcXGFkdmFuY2Ug XFxsZWZ0c2tpcCBieSAtXFxlLworbm9mb250cwl0ZXgtc3JjL3RleGluZm8udGV4CS9ee1xcY2hh cHRlcm5vZm9udHMlJC8KIG5vZm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXntcXGluZGV4bm9m b250cyQvCi1ub2ZvbnRzJQl0ZXgtc3JjL3RleGluZm8udGV4CS9ee1xcY2hhcHRlcm5vZm9udHMl JC8KK25vbmFycm93aW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL14JXFxsZXRcXG5vbmFycm93aW5n PVxcY29tbWVudCQvCitub25hcnJvd2luZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXG5v bmFycm93aW5nPVxccmVsYXgkLwogbm9uZV9oZWxwCWMtc3JjL2V0YWdzLmMJNzAzCitub3JtYWxi YWNrc2xhc2gJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxub3JtYWxiYWNrc2xhc2h7e1xc dHRcXHJhd2JhY2tzbGFzaHh4fX0kLworbm9ybWFsY2FyZXQJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxub3JtYWxjYXJldHtefSQvCitub3JtYWxkb3VibGVxdW90ZQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXG5vcm1hbGRvdWJsZXF1b3RleyJ9JC8KK25vcm1hbGdyZWF0ZXIJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxub3JtYWxncmVhdGVyez59JC8KIG5vcm1hbGl6ZQlw cm9sLXNyYy9uYXRkZWQucHJvbG9nCS9ebm9ybWFsaXplKE0sTU5vcm0pOi0kLwogbm9ybWFsaXpl X2ZyZXNoCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15ub3JtYWxpemVfZnJlc2goTSxOKTotJC8K IG5vcm1hbGl6ZV90cmVlCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15ub3JtYWxpemVfdHJlZSh0 cmVlKFJ1bGUsU3luOlNlbSxUcmVlcyksJC8KIG5vcm1hbGl6ZV90cmVlcwlwcm9sLXNyYy9uYXRk ZWQucHJvbG9nCS9ebm9ybWFsaXplX3RyZWVzKFtdLFtdKS4kLworbm9ybWFsbGVzcwl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXG5vcm1hbGxlc3N7PH0kLworbm9ybWFscGFyZW5zCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXG5vcm1hbHBhcmVuc3tcXGJvbGRicmF4XFxsZXQmPVxc YW1wbnJ9JC8KK25vcm1hbHBsdXMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxub3JtYWxw bHVzeyt9JC8KK25vcm1hbHRpbGRlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbm9ybWFs dGlsZGV7fn0kLworbm9ybWFsdW5kZXJzY29yZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XG5vcm1hbHVuZGVyc2NvcmV7X30kLworbm9ybWFsdmVydGljYWxiYXIJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxub3JtYWx2ZXJ0aWNhbGJhcnt8fSQvCiBub3NhdmUJcHl0LXNyYy9zZXJ2 ZXIucHkJL14gICAgZGVmIG5vc2F2ZShzZWxmKTokLwogbm90X2JvbAljLXNyYy9lbWFjcy9zcmMv cmVnZXguaAkzOTEKIG5vdF9lb2wJYy1zcmMvZW1hY3Mvc3JjL3JlZ2V4LmgJMzk0CkBAIC0zNTQ5 LDYgKzM1MTksOCBAQCBub3RhZzQJYy1zcmMvZG9zdG9ydHVyZS5jCTQ1CiBub3RhZzQJYy1zcmMv dG9ydHVyZS5jCTQ1CiBub3Rpbm5hbWUJYy1zcmMvZXRhZ3MuYwkvXiNkZWZpbmUgbm90aW5uYW1l KGMpCShfbmluW0NIQVIgKGMpXSkgXC8qIGMgaXMgbm90IC8KIG5wZW5kaW5nCWMtc3JjL2VtYWNz L3NyYy9rZXlib2FyZC5jCTcyNDQKK25zYm90CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc bnNib3R7XFx2Ym94JC8KK25zdG9wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbnN0b3B7 XFx2Ym94JC8KIG50b29sX2Jhcl9pdGVtcwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwk3OTc0 CiBudW1PZkNoYW5uZWxzCWNwLXNyYy9jLkMJMQogbnVtX2NvbHVtbnMJY3Atc3JjL2NvbndheS5j cHAJMTYKQEAgLTM1NTcsOCArMzUyOSwxNSBAQCBudW1fcmVncwljLXNyYy9lbWFjcy9zcmMvcmVn ZXguaAk0MzAKIG51bV9yb3dzCWNwLXNyYy9jb253YXkuY3BwCTE1CiBudW1iZXJLZXlzCW9iamNw cC1zcmMvU2ltcGxlQ2FsYy5NCS9eLSBudW1iZXJLZXlzOnNlbmRlciQvCiBudW1iZXJfbGVuCWMt c3JjL2V0YWdzLmMJL15zdGF0aWMgaW50IG51bWJlcl9sZW4gKGxvbmcpIEFUVFJJQlVURV9DT05T VDskLworbnVtYmVyZWRzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRlZlxcbnVt YmVyZWRzZWN7XFxwYXJzZWFyZ1xcc2Vjenp6fSQvCitudW1iZXJlZHN1YnNlYwl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxudW1iZXJlZHN1YnNlY3tcXHBhcnNlYXJnXFxudW1i ZXJlZHN1YnNlYy8KK251bWJlcmVkc3Vic2Vjenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcbnVtYmVyZWRzdWJzZWN6enogIzF7XFxzZWNjaGVja3tzdWJzZWN0aW9ufSUkLworbnVtYmVy ZWRzdWJzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRlZlxcbnVtYmVyZWRz dWJzdWJzZWN7XFxwYXJzZWFyZ1xcbnVtYmVyZWRzdWIvCitudW1iZXJlZHN1YnN1YnNlY3p6egl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG51bWJlcmVkc3Vic3Vic2Vjenp6ICMxe1xcc2Vj Y2hlY2t7c3Vic3Vic2VjdGkvCiBudW1iZXJ2YXJzCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15u dW1iZXJ2YXJzKFgpOi0kLworbnVtZXJpY2VudW1lcmF0ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXG51bWVyaWNlbnVtZXJhdGV7JSQvCiBudmFycwljLXNyYy9lbWFjcy9zcmMvbGlzcC5o CTMxNDAKK29iZXllZHNwYWNlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXG9iZXllZHNw YWNle1xcIH0kLwogb2JqZGVmCWMtc3JjL2V0YWdzLmMJMjQ4NAogb2JqZWN0CWMtc3JjL2VtYWNz L3NyYy9saXNwLmgJMjEyOAogb2JqZWN0X3JlZ2lzdHJ5CWNwLXNyYy9jbGhlaXIuY3BwCTEwCkBA IC0zNTY5LDYgKzM1NDgsMTIgQEAgb2JzdGFja19jaHVua19mcmVlCXktc3JjL3BhcnNlLnkJNDgK IG9jYXRzZWVuCWMtc3JjL2V0YWdzLmMJMjQ3Nwogb2N0YXZlX01EaWFnQXJyYXkyX2gJY3Atc3Jj L01EaWFnQXJyYXkyLmgJMjkKIG9jdGF2ZV9SYW5nZV9oCWNwLXNyYy9SYW5nZS5oCTI0CitvZGRm b290aW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcb2RkZm9vdGluZ3tcXHBhcnNlYXJn XFxvZGRmb290aW5neHh4fSQvCitvZGRmb290aW5neHh4CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGdkZWZcXG9kZGZvb3Rpbmd4eHggIzF7XFxvZGRmb290aW5neXl5ICMxQHxAfEB8QHxcXGYvCitv ZGRmb290aW5neXl5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXG9kZGZvb3Rpbmd5eXkg IzFAfCMyQHwjM0B8IzRcXGZpbmlzaHslJC8KK29kZGhlYWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxvZGRoZWFkaW5ne1xccGFyc2VhcmdcXG9kZGhlYWRpbmd4eHh9JC8KK29kZGhl YWRpbmd4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcb2RkaGVhZGluZ3h4eCAjMXtc XG9kZGhlYWRpbmd5eXkgIzFAfEB8QHxAfFxcZi8KK29kZGhlYWRpbmd5eXkJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZ2RlZlxcb2RkaGVhZGluZ3l5eSAjMUB8IzJAfCMzQHwjNFxcZmluaXNoeyUk Lwogb2VkaWZmCW1ha2Utc3JjL01ha2VmaWxlCS9eb2VkaWZmOiBPVEFHUyBFVEFHUyAke2luZmls ZXN9JC8KIG9mZnNldAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTIzMDUKIG9mZnNldAljLXNyYy9l bWFjcy9zcmMvbGlzcC5oCTIzNjUKQEAgLTM1NzksMTUgKzM1NjQsMjEgQEAgb2luYm9keQljLXNy Yy9ldGFncy5jCTI0NzgKIG9rCW9iamMtc3JjL1BhY2tJbnNwLm0JL14tb2s6c2VuZGVyJC8KIG9r X3RvX2VjaG9fYXRfbmV4dF9wYXVzZQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkxNTkKIG9s ZF92YWx1ZQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTI5ODAKK29sZHBhZ2UJdGV4LXNyYy90ZXhp bmZvLnRleAkvXiAgIFxcbGV0XFxvbGRwYWdlID0gXFxwYWdlJC8KIG9tZXRob2Rjb2xvbgljLXNy Yy9ldGFncy5jCTI0ODEKIG9tZXRob2RwYXJtCWMtc3JjL2V0YWdzLmMJMjQ4Mgogb21ldGhvZHNp Z24JYy1zcmMvZXRhZ3MuYwkyNDc5CiBvbWV0aG9kdGFnCWMtc3JjL2V0YWdzLmMJMjQ4MAorb25l CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxca2JkZm9vIzEjMiMzXFxwYXJ7XFxkZWZcXG9u ZXsjMX1cXGRlZlxcdGhyZWV7IzN9XFxkLworb25lcGFnZW91dAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGNyb3BtYXJrc3tcXGxldFxcb25lcGFnZW91dD1cXGNyb3BwYWdlb3V0IH0kLwor b25lcGFnZW91dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG9uZXBhZ2VvdXQjMXtcXGhv ZmZzZXQ9XFxub3JtYWxvZmZzZXQkLwogb25vbmUJYy1zcmMvZXRhZ3MuYwkyNDcyCiBvcGFyZW5z ZWVuCWMtc3JjL2V0YWdzLmMJMjQ3Ngogb3BlbglvYmpjLXNyYy9QYWNrSW5zcC5tCS9eLW9wZW46 c2VuZGVyJC8KIG9wZW4tZHJpYmJsZS1maWxlCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9e REVGVU4gKCJvcGVuLWRyaWJibGUtZmlsZSIsIEZvcGVuX2RyaWJibGVfZmlsZSwgU28vCiBvcGVu SW5Xb3Jrc3BhY2UJb2JqYy1zcmMvUGFja0luc3AubQkvXnN0YXRpYyB2b2lkIG9wZW5Jbldvcmtz cGFjZShjb25zdCBjaGFyICpmaWxlbmFtZSkkLworb3BlbmNvbnRlbnRzCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcb3BlbmNvbnRlbnRze1xcb3Blbm91dCBcXGNvbnRlbnRzZmlsZSA9IFxc am9ibmFtLworb3BlbmluZGljZXMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxvcGVuaW5k aWNlc3slJC8KIG9wZXJhdGlvbktleXMJb2JqY3BwLXNyYy9TaW1wbGVDYWxjLk0JL14tIG9wZXJh dGlvbktleXM6c2VuZGVyJC8KIG9wZXJhdG9yCXktc3JjL2NjY3AueQk0MzgKIG9wZXJhdG9yICsr CWNwLXNyYy9mdW5jdGlvbnMuY3BwCS9eRGF0ZSAmIERhdGU6Om9wZXJhdG9yICsrICggdm9pZCAp eyQvCkBAIC0zNjA5LDExICszNjAwLDIwIEBAIG9wZXJhdG9yIGludAljcC1zcmMvZmFpbC5DCS9e CQkJICAgb3BlcmF0b3IgaW50KCkgY29uc3Qge3JldHVybiB4O30kLwogb3BlcmF0b3IrCWNwLXNy Yy9jLkMJL14gIEEgb3BlcmF0b3IrKEEmIGEpIHt9OyQvCiBvcGVyYXRvcisJY3Atc3JjL2MuQwkv XmNvbnN0IEEmIEE6Om9wZXJhdG9yKyhjb25zdCBBJikgeyB9JC8KIG9wZXJhdG9yKwljcC1zcmMv Yy5DCS9edm9pZCBvcGVyYXRvcisoaW50LCBpbnQpIHt9JC8KLW9wcGFyc2Vib2R5XEVkZWZvcFxk ZWZvcHhcZGVmb3BoZWFkZXJcZGVmb3B0eXBlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZm9w cGFyc2Vib2R5XFxFZGVmb3BcXGRlZm9weFxcZGVmb3BoZWFkZXJcXGRlZm9wdHlwLworb3BoZWFk ZXJcZGVmb3B0eXBlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZm9wcGFyc2Vib2R5XFxFZGVm b3BcXGRlZm9weFxcZGVmb3BoZWFkZXJcXGRlZm9wdHlwLworb3BuZXN0ZWQJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZ2RlZlxcb3BuZXN0ZWR7XFxjaGFyYFxcKFxcZ2xvYmFsXFxhZHZhbmNlXFxw YXJlbmNvdW50IC8KK29wbnIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxvcG5ye3tcXHNm XFxjaGFyYFxcKH19IFxcZGVmXFxjbG5ye3tcXHNmXFxjaGFyYFxcKX19IC8KK29wcGFyc2Vib2R5 XEVkZWZvcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZvcHBhcnNlYm9keVxcRWRlZm9wXFxk ZWZvcHhcXGRlZm9waGVhZGVyXFxkZWZvcHR5cC8KK29wcm0JdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZ2RlZlxcb3BybSMxIHt7XFxybVxcY2hhcmBcXCh9IzEgXFxiZiBcXGxldCg9XFxvcG5lc3Rl ZCAvCiBvcHJvdG9jb2wJYy1zcmMvZXRhZ3MuYwkyNDczCitvcHRoZWFkZXIJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxkZWZvcHR7XFxkZWZ2YXJwYXJzZWJvZHlcXEVkZWZvcHRcXGRlZm9w dHhcXGRlZm9wLwogb3B0aW9uCWMtc3JjL2dldG9wdC5oCTczCiBvcHRpb25hbF9hcmd1bWVudAlj LXNyYy9nZXRvcHQuaAk5MQotb3B2YXJwYXJzZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZjdmFyaGVh ZGVyXGRlZmN2dHlwZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZvcHZhcnBhcnNlYm9keVxc RWRlZmN2XFxkZWZjdnhcXGRlZmN2YXJoZWFkZXJcXGRlZi8KK29wdHhcZGVmb3B0aGVhZGVyCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmb3B0e1xcZGVmdmFycGFyc2Vib2R5XFxFZGVm b3B0XFxkZWZvcHR4XFxkZWZvcC8KK29wdHlwZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxiZWdp bmdyb3VwXFxkZWZuYW1lIHsjMn17XFxkZWZvcHR5cGV7fSBvbiAjMX0lJC8KK29wdHlwZQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZvcHBhcnNlYm9keVxcRWRlZm9wXFxkZWZvcHhcXGRlZm9w aGVhZGVyXFxkZWZvcHR5cC8KK29wdmFycGFyc2Vib2R5XEVkZWZjdgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZvcHZhcnBhcnNlYm9keVxcRWRlZmN2XFxkZWZjdnhcXGRlZmN2YXJoZWFkZXJc XGRlZi8KK29weFxkZWZvcGhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZvcHBhcnNl Ym9keVxcRWRlZm9wXFxkZWZvcHhcXGRlZm9waGVhZGVyXFxkZWZvcHR5cC8KIG9yZF9hZGRfZWxl bWVudAlwcm9sLXNyYy9vcmRzZXRzLnByb2xvZwkvXm9yZF9hZGRfZWxlbWVudChbXSwgRWxlbWVu dCwgW0VsZW1lbnRdKS4kLwogb3JkX2RlbF9lbGVtZW50CXByb2wtc3JjL29yZHNldHMucHJvbG9n CS9eb3JkX2RlbF9lbGVtZW50KFtdLCBfLCBbXSkuJC8KIG9yZF9kaXNqb2ludAlwcm9sLXNyYy9v cmRzZXRzLnByb2xvZwkvXm9yZF9kaXNqb2ludChTZXQxLCBTZXQyKSA6LSQvCkBAIC0zNjU5LDgg KzM2NTksMjAgQEAgcE1kCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTU1CiBwTXUJYy1zcmMvZW1h Y3Mvc3JjL2xpc3AuaAkxNTEKIHBNdQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE1NgogcF9uZXh0 CWMtc3JjL2V0YWdzLmMJMjU4CitwYWdlCXRleC1zcmMvdGV4aW5mby50ZXgJL14gICAgICBcXGxl dFxccGFnZSA9IFxcb2xkcGFnZSQvCitwYWdlCXRleC1zcmMvdGV4aW5mby50ZXgJL14gICBcXGRl ZlxccGFnZXslJC8KK3BhZ2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwYWdle1xccGFy XFx2ZmlsbFxcc3VwZXJlamVjdH0kLworcGFnZWFsaWdubWFjcm8JdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZ2xvYmFsXFxsZXRcXHBhZ2VhbGlnbm1hY3JvPVxcY2hhcG9kZHBhZ2UkLworcGFnZWFs aWdubWFjcm8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHBhZ2VhbGlnbm1h Y3JvPVxcY2hhcHBhZ2VyJC8KK3BhZ2VhbGlnbm1hY3JvCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGdsb2JhbFxcbGV0XFxwYWdlYWxpZ25tYWNybz1cXGNoYXBwYWdlcn0kLworcGFnZWJvZHkJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwYWdlYm9keSMxe1xcdmJveCB0b1xccGFnZWhlaWdo dHtcXGJveG1heGRlcHRoPVxcLworcGFnZWNvbnRlbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGdkZWZcXHBhZ2Vjb250ZW50cyMxe1xcaWZ2b2lkXFx0b3BpbnNcXGVsc2VcXHVudmJveFxcdG8v CiBwYWdlc2l6ZQljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCTE3MDMKK3BhZ2Vzb2Zhcgl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHBhZ2Vzb2ZhcntcXHVudmJveFxccGFydGlhbHBhZ2Ug JSQvCiBwYWlyCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBpbXBvcnRfbW9kdWxlIHBhaXIu JC8KK3Bhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHBhcj1cXGxpc3BwYXIkLworcGFy CXRleC1zcmMvdGV4aW5mby50ZXgJL157XFxsZXRcXHBhcj1cXGVuZGdyYWYgXFxzbWFsbGJyZWFr fSUkLworcGFyYWdyYXBoaW5kZW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxccGFyYWdy YXBoaW5kZW50PVxcY29tbWVudCQvCiBwYXJlbnQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJ ODc0NQogcGFyZW50CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTU5MAogcGFyc2UJcHJvbC1zcmMv bmF0ZGVkLnByb2xvZwkvXnBhcnNlKFdzLENhdCk6LSQvCkBAIC0zNjc5LDggKzM2OTEsMjAgQEAg cGFyc2VfcmV0dXJuX2Vycm9yCXktc3JjL2NjY3AueQk3MAogcGFyc2Vfc29saXRhcnlfbW9kaWZp ZXIJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15wYXJzZV9zb2xpdGFyeV9tb2RpZmllciAo TGlzcF9PYmplY3Qgc3ltYm9sKSQvCiBwYXJzZV90b29sX2Jhcl9pdGVtCWMtc3JjL2VtYWNzL3Ny Yy9rZXlib2FyZC5jCS9ecGFyc2VfdG9vbF9iYXJfaXRlbSAoTGlzcF9PYmplY3Qga2V5LCBMaXNw X09iamVjdCAvCiBwYXJzZV90cmVlCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBpbXBvcnRf bW9kdWxlIHBhcnNlX3RyZWUuJC8KK3BhcnNlYXJnCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxccGFyc2VhcmcgIzF7XFxsZXRcXG5leHQ9IzFcXGJlZ2luZ3JvdXBcXG9iZXlsaW5lcy8KK3Bh cnNlYXJnZGlzY2FyZHNwYWNlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXHBhcnNlYXJn ZGlzY2FyZHNwYWNlIHtcXGJlZ2luZ3JvdXBcXG9iZXlsaW5lc1xcLworcGFyc2VhcmdsaW5lCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccGFyc2VhcmdsaW5le1xcYmVnaW5ncm91cCBcXG9i ZXlsaW5lcyBcXHBhcnNlYXJnLworcGFyc2VhcmdsaW5leAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxnZGVmXFxwYXJzZWFyZ2xpbmV4ICMxXl5Ne1xcZW5kZ3JvdXAgXFxuZXh0IHsjMX19fSQvCitw YXJzZWFyZ3gJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwYXJzZWFyZ3h7JSQvCitwYXJz ZWJvZHlcRWRlZm1hYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm1hY3tcXGRlZnBh cnNlYm9keVxcRWRlZm1hY1xcZGVmbWFjeFxcZGVmbWFjaGUvCitwYXJzZWJvZHlcRWRlZnNwZWMJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZzcGVje1xcZGVmcGFyc2Vib2R5XFxFZGVm c3BlY1xcZGVmc3BlY3hcXGRlZnNwLworcGFyc2Vib2R5XEVkZWZ0eXBlZnVuCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZ1bntcXGRlZnBhcnNlYm9keVxcRWRlZnR5cGVmdW5c XGRlZnR5cGVmLworcGFyc2Vib2R5XEVkZWZ1bgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGRlZnVue1xcZGVmcGFyc2Vib2R5XFxFZGVmdW5cXGRlZnVueFxcZGVmdW5oZWFkZXIvCiBwYXQJ Yy1zcmMvZXRhZ3MuYwkyNjIKIHBhdHRlcm4JYy1zcmMvZXRhZ3MuYwkyNjAKK3BjaGFwc2VwbWFj cm8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHBjaGFwc2VwbWFjcm89XFxj aGFwYnJlYWskLworcGNoYXBzZXBtYWNybwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxc XGxldFxccGNoYXBzZXBtYWNybz1cXGNoYXBvZGRwYWdlJC8KK3BjaGFwc2VwbWFjcm8JdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHBjaGFwc2VwbWFjcm89XFxjaGFwcGFnZXIk LwogcGRsY291bnQJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkzMDQ2CiBwZW5kaW5nLWRlbGV0ZS1t b2RlCWVsLXNyYy9UQUdURVNULkVMCS9eKGRlZmFsaWFzICdwZW5kaW5nLWRlbGV0ZS1tb2RlICdk ZWxldGUtc2VsZWN0aW9uLW0vCiBwZW5kaW5nX2Z1bmNhbGxzCWMtc3JjL2VtYWNzL3NyYy9rZXli b2FyZC5jCTQzNzcKQEAgLTM2ODgsMTYgKzM3MTIsMTkgQEAgcGVuZGluZ19zaWduYWxzCWMtc3Jj L2VtYWNzL3NyYy9rZXlib2FyZC5jCTgwCiBwZmF0YWwJYy1zcmMvZXRhZ3MuYwkvXnBmYXRhbCAo Y29uc3QgY2hhciAqczEpJC8KIHBmZHNldAljLXNyYy9oLmgJNTcKIHBmbm90ZQljLXNyYy9ldGFn cy5jCS9ecGZub3RlIChjaGFyICpuYW1lLCBib29sIGlzX2Z1bmMsIGNoYXIgKmxpbmVzdGFydCwv CitwaW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwaW5kZXgge1xccGdpbmRleH0k LwogcGlubmVkCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJNjc5CiBwbGFpbl9DX2VudHJpZXMJYy1z cmMvZXRhZ3MuYwkvXnBsYWluX0NfZW50cmllcyAoRklMRSAqaW5mKSQvCiBwbGFpbl9DX3N1ZmZp eGVzCWMtc3JjL2V0YWdzLmMJNjQzCiBwbGFpbmMJYy1zcmMvZXRhZ3MuYwkyOTM0CitwbGFpbnNl Y2hlYWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwbGFpbnNlY2hlYWRpbmcgIzF7 XFxzZWNoZWFkaW5naSB7IzF9fSQvCiBwbGlzdAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTIwNDAK IHBsaXN0CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJNjk3CiBwbHVzCWNwLXNyYy9mdW5jdGlvbnMu Y3BwCS9edm9pZCBEYXRlOjpwbHVzICggaW50IGRheXMgLCBpbnQgbW9udGggLCBpbnQgeWVhciAv CiBwbHVzCWdvLXNyYy90ZXN0MS5nbwk1CiBwbHVzdmFsc2VxCXByb2wtc3JjL25hdGRlZC5wcm9s b2cJL15wbHVzdmFsc2VxKFtdKSAtLT4gW10uJC8KIHBvaW50CWZvcnRoLXNyYy90ZXN0LWZvcnRo LmZ0aAkvXkJFR0lOLVNUUlVDVFVSRSBwb2ludCBcXCBjcmVhdGUgdGhlIG5hbWVkIHN0cnVjdHVy ZS8KK3BvaW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccG9pbnR7JFxcc3RhciR9JC8K IHBvaW50ZXIJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyMTI1CiBwb2xsX2Zvcl9pbnB1dAljLXNy Yy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnBvbGxfZm9yX2lucHV0IChzdHJ1Y3QgYXRpbWVyICp0 aW1lcikkLwogcG9sbF9mb3JfaW5wdXRfMQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnBv bGxfZm9yX2lucHV0XzEgKHZvaWQpJC8KQEAgLTM3NDcsMTAgKzM3NzQsMTggQEAgcHJldgljLXNy Yy9lbWFjcy9zcmMvZ21hbGxvYy5jCTE2NQogcHJldgljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5j CTE4OQogcHJldgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTIxOTEKIHByZXYJYy5jCTE3NQorcHJp bWFyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHByaW1hcnkgIzF7XFxsaW5leyMxXFxo ZmlsfX0kLworcHJpbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwcmludHtcXGxlYXZl dm1vZGVcXGxvd2VyLjFleFxcaGJveCB0byAxZW17XFxoZmlsLworcHJpbnQJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxwcmludHtcXHJlYWxiYWNrc2xhc2ggcHJpbnR9JC8KIHByaW50Q2xh c3NpZmljYXRpb24JcGhwLXNyYy9sY2VfZnVuY3Rpb25zLnBocAkvXiAgICAgIGZ1bmN0aW9uIHBy aW50Q2xhc3NpZmljYXRpb24oKSQvCiBwcmludF9oZWxwCWMtc3JjL2V0YWdzLmMJL15wcmludF9o ZWxwIChhcmd1bWVudCAqYXJnYnVmZmVyKSQvCiBwcmludF9sYW5ndWFnZV9uYW1lcwljLXNyYy9l dGFncy5jCS9ecHJpbnRfbGFuZ3VhZ2VfbmFtZXMgKHZvaWQpJC8KIHByaW50X3ZlcnNpb24JYy1z cmMvZXRhZ3MuYwkvXnByaW50X3ZlcnNpb24gKHZvaWQpJC8KK3ByaW50ZWRtYW51YWwJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwcmludGVkbWFudWFse1xcaWdub3Jlc3BhY2VzICM1fSUk LworcHJpbnRlZG1hbnVhbAl0ZXgtc3JjL3RleGluZm8udGV4CS9ec2VjdGlvbiBgYFxccHJpbnRl ZG5vZGVuYW1lJycgaW4gXFxjaXRle1xccHJpbnRlZG1hbnUvCitwcmludGVkbm9kZW5hbWUJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwcmludGVkbm9kZW5hbWV7XFxpZ25vcmVzcGFjZXMg IzF9JSQvCitwcmludGVkbm9kZW5hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwcmlu dGVkbm9kZW5hbWV7XFxpZ25vcmVzcGFjZXMgIzN9JSQvCitwcmludGluZGV4CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxccHJpbnRpbmRleHtcXHBhcnNlYXJnXFxkb3ByaW50aW5kZXh9JC8K IHByaW50bWF4X3QJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxNDgKIHByaW50bWF4X3QJYy1zcmMv ZW1hY3Mvc3JjL2xpc3AuaAkxNTMKIHByb2MJYy1zcmMvaC5oCTg3CkBAIC0zNzY1LDYgKzM4MDAs MjEgQEAgcHJvbG9nX3ByCWMtc3JjL2V0YWdzLmMJL15wcm9sb2dfcHIgKGNoYXIgKnMsIGNoYXIg Kmxhc3QpJC8KIHByb2xvZ19za2lwX2NvbW1lbnQJYy1zcmMvZXRhZ3MuYwkvXnByb2xvZ19za2lw X2NvbW1lbnQgKGxpbmVidWZmZXIgKnBsYiwgRklMRSAqaW5mKSQvCiBwcm9wCWMtc3JjL2V0YWdz LmMJMjA5CiBwcm90ZWN0X21hbGxvY19zdGF0ZQljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCS9e cHJvdGVjdF9tYWxsb2Nfc3RhdGUgKGludCBwcm90ZWN0X3ApJC8KK3B0ZXhMCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGxldFxccHRleEw9XFxMJC8KK3B0ZXhiCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGxldFxccHRleGI9XFxiJC8KK3B0ZXhidWxsZXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc bGV0XFxwdGV4YnVsbGV0PVxcYnVsbGV0JC8KK3B0ZXhjCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGxldFxccHRleGM9XFxjJC8KK3B0ZXhkb3QJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxw dGV4ZG90PVxcLiQvCitwdGV4ZG90cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHB0ZXhk b3RzPVxcZG90cyQvCitwdGV4ZW5kCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxccHRleGVu ZD1cXGVuZCQvCitwdGV4ZXF1aXYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxwdGV4ZXF1 aXYgPSBcXGVxdWl2JC8KK3B0ZXhmb290bm90ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRc XHB0ZXhmb290bm90ZT1cXGZvb3Rub3RlJC8KK3B0ZXhpCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGxldFxccHRleGk9XFxpJC8KK3B0ZXhsCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxccHRl eGw9XFxsJC8KK3B0ZXhsYnJhY2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxwdGV4bGJy YWNlPVxceyQvCitwdGV4cmJyYWNlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxccHRleHJi cmFjZT1cXH0kLworcHRleHN0YXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxwdGV4c3Rh cj1cXCokLworcHRleHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxwdGV4dD1cXHQkLwog cHRocmVhZF9tdXRleGF0dHJfc2V0cHJpb19jZWlsaW5nL2YJYWRhLXNyYy8yYXRhc3ByaS5hZGIJ L14gICBmdW5jdGlvbiBwdGhyZWFkX211dGV4YXR0cl9zZXRwcmlvX2NlaWxpbmckLwogcHRocmVh ZF9tdXRleGF0dHJfc2V0cHJvdG9jb2wvZglhZGEtc3JjLzJhdGFzcHJpLmFkYgkvXiAgIGZ1bmN0 aW9uIHB0aHJlYWRfbXV0ZXhhdHRyX3NldHByb3RvY29sJC8KIHB1cnBvc2UJYy1zcmMvZW1hY3Mv c3JjL2xpc3AuaAkxNTk0CkBAIC0zNzcyLDE0ICszODIyLDIwIEBAIHB1c2hfa2JvYXJkCWMtc3Jj L2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ecHVzaF9rYm9hcmQgKHN0cnVjdCBrYm9hcmQgKmspJC8K IHB1c2hjbGFzc19hYm92ZQljLXNyYy9ldGFncy5jCS9ecHVzaGNsYXNzX2Fib3ZlIChpbnQgYnJh Y2VsZXYsIGNoYXIgKnN0ciwgaW50IGxlbikvCiBwdXRfZW50cmllcwljLXNyYy9ldGFncy5jCS9e cHV0X2VudHJpZXMgKHJlZ2lzdGVyIG5vZGUgKm5wKSQvCiBwdmVjX3R5cGUJYy1zcmMvZW1hY3Mv c3JjL2xpc3AuaAk3ODAKK3B4cmVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccHhyZWYj MXtzZWUgXFx4cmVmWFsjMSwsLCwsLCxdfSQvCiBxdWFudGl6aW5nCWh0bWwtc3JjL2FsZ3J0aG1z Lmh0bWwJL15RdWFudGl6aW5nIHRoZSBSZWNlaXZlZCQvCiBxdWVzdG8JLi4vYy9jLndlYgkzNAog cXVpZXR0ZXN0CW1ha2Utc3JjL01ha2VmaWxlCS9ecXVpZXR0ZXN0OiQvCiBxdWl0X2NoYXIJYy1z cmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJMTkyCiBxdWl0X3Rocm93X3RvX3JlYWRfY2hhcgljLXNy Yy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnF1aXRfdGhyb3dfdG9fcmVhZF9jaGFyIChib29sIGZy b21fc2lnbmFsKSQvCitxdW90YXRpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxxdW90 YXRpb257JSQvCiBxdXgJcnVieS1zcmMvdGVzdDEucnUJL14gICAgYWxpYXNfbWV0aG9kIDpxdXgs IDp0ZWUsIGF0dHJfYWNjZXNzb3IoOmJvZ3VzKS8KIHF1eDEJcnVieS1zcmMvdGVzdDEucnUJL14g ICAgICAgICAgICAgICAgOnF1eDEpJC8KIHF1eD0JcnVieS1zcmMvdGVzdDEucnUJL14gICAgICBk ZWYgcXV4PSh0ZWUpJC8KK3IJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxyIyMxe1xccmVh bGJhY2tzbGFzaCByIHsjIzF9fSQvCityCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcciMj MXtcXHJlYWxiYWNrc2xhc2ggciB7IyMxfX0lJC8KK3IJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxyIzF7e1xccm0gIzF9fQkJJSByb21hbiBmb250JC8KK3IJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcbGV0XFxyPVxcaW5kZXhkdW1teWZvbnQkLwogcjAJYy1zcmMvc3lzZGVwLmgJNTQKIHIx CWMtc3JjL3N5c2RlcC5oCTU1CiByX2FsbG9jCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL15leHRl cm4gdm9pZCAqcl9hbGxvYyAodm9pZCAqKiwgc2l6ZV90KSBBVFRSSUJVVEVfQS8KQEAgLTM3ODcs NiArMzg0MywxMCBAQCByYW5nZV9leHAJeS1zcmMvcGFyc2UueQkyNjkKIHJhbmdlX2V4cF9saXN0 CXktc3JjL3BhcnNlLnkJMjczCiByYXdfa2V5YnVmCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5j CTExNgogcmF3X2tleWJ1Zl9jb3VudAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkxMTcKK3Jh d2JhY2tzbGFzaAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHJhd2JhY2tzbGFzaD1cXHJl bGF4JSQvCityYXdiYWNrc2xhc2h4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHJhd2Jh Y2tzbGFzaHh4e1xcaW5kZXhiYWNrc2xhc2h9JSBcXGluZGV4YmFja3NsLworcmF3YmFja3NsYXNo eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxyYXdiYWNrc2xhc2h4eHtcXGluZGV4YmFj a3NsYXNofSUkLworcmJyYgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGxicmJ7e1xcYmZc XGNoYXJgXFxbfX0gXFxkZWZcXHJicmJ7e1xcYmZcXGNoYXJgXFxdfX0kLwogcmJ0cAljLmMJMjQw CiByZV9pc3djdHlwZQljLXNyYy9lbWFjcy9zcmMvcmVnZXguaAk2MDIKIHJlX25zdWIJYy1zcmMv ZW1hY3Mvc3JjL3JlZ2V4LmgJMzY0CkBAIC0zODE4LDYgKzM4NzgsNyBAQCByZWFkX2tleV9zZXF1 ZW5jZV92cwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnJlYWRfa2V5X3NlcXVlbmNlX3Zz IChMaXNwX09iagogcmVhZF9tZW51X2NvbW1hbmQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJ L15yZWFkX21lbnVfY29tbWFuZCAodm9pZCkkLwogcmVhZF90b2MJcGVybC1zcmMvaHRsbWlmeS1j eXN0aWMJL15zdWIgcmVhZF90b2MgKCkkLwogcmVhZGFibGVfZXZlbnRzCWMtc3JjL2VtYWNzL3Ny Yy9rZXlib2FyZC5jCS9ecmVhZGFibGVfZXZlbnRzIChpbnQgZmxhZ3MpJC8KK3JlYWRhdXhmaWxl CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccmVhZGF1eGZpbGV7JSQvCiByZWFkbGluZQlj LXNyYy9ldGFncy5jCS9ecmVhZGxpbmUgKGxpbmVidWZmZXIgKmxicCwgRklMRSAqc3RyZWFtKSQv CiByZWFkbGluZV9pbnRlcm5hbAljLXNyYy9ldGFncy5jCS9ecmVhZGxpbmVfaW50ZXJuYWwgKGxp bmVidWZmZXIgKmxicCwgcmVnaXN0ZXIgRklMRSAvCiByZWFsbG9jCWMtc3JjL2VtYWNzL3NyYy9n bWFsbG9jLmMJL15yZWFsbG9jICh2b2lkICpwdHIsIHNpemVfdCBzaXplKSQvCkBAIC0zODQyLDcg KzM5MDMsMTAgQEAgcmVjdXJzaXZlX2VkaXRfdW53aW5kCWMtc3JjL2VtYWNzL3NyYy9rZXlib2Fy ZC5jCS9ecmVjdXJzaXZlX2VkaXRfdW53aW5kIChMaXNwX08KIHJlZGlyZWN0CWMtc3JjL2VtYWNz L3NyYy9saXNwLmgJNjYzCiByZWR1Y2UJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXnJlZHVjZSgo WF5NKUBOLEwpOi0gICAgICUgYmV0YSByZWR1Y3Rpb24kLwogcmVkdWNlX3N1YnRlcm0JcHJvbC1z cmMvbmF0ZGVkLnByb2xvZwkvXnJlZHVjZV9zdWJ0ZXJtKE0sTTIpOi0kLworcmVmCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxccmVmIzF7XFx4cmVmWFsjMSwsLCwsLCxdfSQvCityZWZpbGwJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxyZWZpbGw9XFxyZWxheCQvCiByZWZyZXNoUG9y dAlweXQtc3JjL3NlcnZlci5weQkvXiAgICBkZWYgcmVmcmVzaFBvcnQoc2VsZik6JC8KK3JlZngJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxyZWZ4IzEjMnslJC8KIHJlZ19lcnJjb2RlX3QJ Yy1zcmMvZW1hY3Mvc3JjL3JlZ2V4LmgJMzIzCiByZWdfZXJyY29kZV90CWMuYwkyNzkKIHJlZ19z eW50YXhfdAljLXNyYy9lbWFjcy9zcmMvcmVnZXguaAk0MwpAQCAtMzg3Myw4ICszOTM3LDEyIEBA IHJlcXVldWVkX2V2ZW50c19wZW5kaW5nX3AJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15y ZXF1ZXVlZF9ldmVudHNfcGVuZGluZ19wCiByZXF1aXJlCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0J L146LSBpbXBvcnRfbW9kdWxlIHJlcXVpcmUuJC8KIHJlcXVpcmVkX2FyZ3VtZW50CWMtc3JjL2dl dG9wdC5oCTkwCiByZXNldC10aGlzLWNvbW1hbmQtbGVuZ3RocwljLXNyYy9lbWFjcy9zcmMva2V5 Ym9hcmQuYwkvXkRFRlVOICgicmVzZXQtdGhpcy1jb21tYW5kLWxlbmd0aHMiLCBGcmVzZXRfdGhp c19jLworcmVzZXRtYXRoZm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxyZXNldG1h dGhmb250c3slJC8KK3Jlc3QJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzcGxpdG9mZiMx IzJcXGVuZG1hcmt7XFxkZWZcXGZpcnN0eyMxfVxcZGVmXFxyZXN0ey8KIHJlc3RvcmVfZ2V0Y2pt cAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnJlc3RvcmVfZ2V0Y2ptcCAoc3lzX2ptcF9i dWYgdGVtcCkkLwogcmVzdG9yZV9rYm9hcmRfY29uZmlndXJhdGlvbgljLXNyYy9lbWFjcy9zcmMv a2V5Ym9hcmQuYwkvXnJlc3RvcmVfa2JvYXJkX2NvbmZpZ3VyYXRpb24gKGludCB3YXNfbG9ja2Vk KSQvCityZXN1bHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxyZXN1bHR7XFxsZWF2ZXZt b2RlXFxyYWlzZS4xNWV4XFxoYm94IHRvIDFlbXtcXGhmLworcmVzdWx0CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxccmVzdWx0e1xccmVhbGJhY2tzbGFzaCByZXN1bHR9JC8KIHJldHVybl90 b19jb21tYW5kX2xvb3AJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJMTM1CiByZXZlcnNlCXBy b2wtc3JjL25hdGRlZC5wcm9sb2cJL15yZXZlcnNlKFtdLFdzLFdzKS4kLwogcmV2ZXJ0CW9iamMt c3JjL1BhY2tJbnNwLm0JL14tcmV2ZXJ0OnNlbmRlciQvCkBAIC0zODgyLDYgKzM5NTAsOCBAQCBy aWdodAljLXNyYy9ldGFncy5jCTIxNgogcmlnaHRfc2hpZnQJeS1zcmMvY2NjcC55CS9ecmlnaHRf c2hpZnQgKGEsIGIpJC8KIHJpbmcxCWMuYwkyNDEKIHJpbmcyCWMuYwkyNDIKK3JtCXRleC1zcmMv dGV4aW5mby50ZXgJL14gICAgICBcXGxldFxccm09XFxzaG9ydGNvbnRybSBcXGxldFxcYmY9XFxz aG9ydGNvbnRiZiBcXGwvCitybQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHJte1xccmVh bGJhY2tzbGFzaCBybSB9JSQvCiBybV9lbwljLXNyYy9lbWFjcy9zcmMvcmVnZXguaAk0NTAKIHJt X3NvCWMtc3JjL2VtYWNzL3NyYy9yZWdleC5oCTQ0OQogcm5nX2Jhc2UJY3Atc3JjL1JhbmdlLmgJ NzkKQEAgLTM5MDgsMTkgKzM5NzgsMzcgQEAgc2FmZV9ydW5faG9va19mdW5jYWxsCWMtc3JjL2Vt YWNzL3NyYy9rZXlib2FyZC5jCS9ec2FmZV9ydW5faG9va19mdW5jYWxsIChwdHJkaWYKIHNhZmVf cnVuX2hvb2tzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ec2FmZV9ydW5faG9va3MgKExp c3BfT2JqZWN0IGhvb2spJC8KIHNhZmVfcnVuX2hvb2tzXzEJYy1zcmMvZW1hY3Mvc3JjL2tleWJv YXJkLmMJL15zYWZlX3J1bl9ob29rc18xIChwdHJkaWZmX3QgbmFyZ3MsIExpc3BfT2JqZWN0ICph ci8KIHNhZmVfcnVuX2hvb2tzX2Vycm9yCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ec2Fm ZV9ydW5faG9va3NfZXJyb3IgKExpc3BfT2JqZWN0IGVycm9yLCBwdHJkaWZmX3QvCitzYW1wCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2FtcCAjMXtgXFx0Y2xvc2V7IzF9J1xcbnVsbH0k Lworc2FtcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNhbXAjIzF7XFxyZWFsYmFja3Ns YXNoIHNhbXAgeyMjMX19JC8KK3NhbXAJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzYW1w IyMxe1xccmVhbGJhY2tzbGFzaCBzYW1wIHsjIzF9fSUkLworc2FtcAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxsZXRcXHNhbXA9XFxpbmRleGR1bW15Zm9udCQvCiBzYXZlCXB5dC1zcmMvc2VydmVy LnB5CS9eICAgIGRlZiBzYXZlKHNlbGYpOiQvCiBzYXZlX2dldGNqbXAJYy1zcmMvZW1hY3Mvc3Jj L2tleWJvYXJkLmMJL15zYXZlX2dldGNqbXAgKHN5c19qbXBfYnVmIHRlbXApJC8KIHNhdmVfdHlw ZQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9ec2F2ZV90eXBlIChzdHJ1Y3QgTGlzcF9TYXZlX1Zh bHVlICp2LCBpbnQgbikkLwogc2F2ZW5zdHIJYy1zcmMvZXRhZ3MuYwkvXnNhdmVuc3RyIChjb25z dCBjaGFyICpjcCwgaW50IGxlbikkLwogc2F2ZXN0cgljLXNyYy9ldGFncy5jCS9ec2F2ZXN0ciAo Y29uc3QgY2hhciAqY3ApJC8KIHNheQlnby1zcmMvdGVzdC5nbwkvXmZ1bmMgc2F5KG1zZyBzdHJp bmcpIHskLworc2MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzYyMxe3tcXHNtYWxsY2Fw cyMxfX0JJSBzbWFsbGNhcHMgZm9udCQvCitzYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRc XHNjPVxcaW5kZXhkdW1teWZvbnQkLwogc2Nhbl9zZXBhcmF0b3JzCWMtc3JjL2V0YWdzLmMJL15z Y2FuX3NlcGFyYXRvcnMgKGNoYXIgKm5hbWUpJC8KIHNjb2xvbnNlZW4JYy1zcmMvZXRhZ3MuYwky NDQ3CiBzY3JhdGNoCWMtc3JjL3N5c2RlcC5oCTU2CiBzY3JvbGxfYmFyX3BhcnRzCWMtc3JjL2Vt YWNzL3NyYy9rZXlib2FyZC5jCTUxODkKLXNlYz1ccmVsYXgJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcbGV0XFxhcHBlbmRpeHNlYz1cXHJlbGF4JC8KK3NlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxnbG9iYWxcXGxldFxcc2VjdGlvbiA9IFxcYXBwZW5kaXhzZWMkLworc2VjY2hlY2sJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZWNjaGVjayMxe1xcaWYgXFxwYWdlbm88MCAlJC8KK3Nl Y2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL14gICAgICBcXGRlZlxcc2VjZW50cnkgIyMxIyMy IyMzIyM0e30kLworc2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZWNlbnRy eSMxIzIjMyM0e1xcZG9zZWNlbnRyeXsjMi4jM1xcbGFiZWxzcGFjZS8KK3NlY2VudHJ5Zm9udHMJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZWNlbnRyeWZvbnRze1xcdGV4dGZvbnRzfSQv CitzZWNmb250cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNlY2ZvbnRzeyUkLworc2Vj aGVhZGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNlY2hlYWRpbmcgIzEjMiMze1xc c2VjaGVhZGluZ2kgeyMyLiMzXFxlbnNwYWNlLworc2VjaGVhZGluZ2JyZWFrCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcc2VjaGVhZGluZ2JyZWFre1xcZG9icmVhayBcXHNlY2hlYWRpbmdz a2lwIHstMTAvCitzZWNoZWFkaW5naQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNlY2hl YWRpbmdpICMxe3tcXGFkdmFuY2UgXFxzZWNoZWFkaW5nc2tpcCBieSBcXC8KK3NlY29uZGFyeQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNlY29uZGFyeSAjMSMyeyQvCiBzZWN0aW9uCXBl cmwtc3JjL2h0bG1pZnktY3lzdGljCTI1Ci1zZWN0aW9uPVxyZWxheAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxsZXRcXGFwcGVuZGl4c2VjdGlvbj1cXHJlbGF4JC8KK3NlY3Rpb24JdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHNlY3Rpb24gPSBcXGFwcGVuZGl4c2VjJC8KK3Nl Y3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHNlY3Rpb24gPSBcXG51 bWJlcmVkc2VjJC8KK3NlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRc XHNlY3Rpb24gPSBcXHVubnVtYmVyZWRzZWMkLworc2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxsZXRcXHNlY3Rpb249XFxyZWxheCQvCiBzZWN0aW9uX2hyZWYJcGVybC1zcmMvaHRsbWlm eS1jeXN0aWMJL15zdWIgc2VjdGlvbl9ocmVmICgkKSQvCiBzZWN0aW9uX25hbWUJcGVybC1zcmMv aHRsbWlmeS1jeXN0aWMJL15zdWIgc2VjdGlvbl9uYW1lICgkKSQvCiBzZWN0aW9uX25hbWUJcGVy bC1zcmMvaHRsbWlmeS1jeXN0aWMJMTIKQEAgLTM5MjgsNiArNDAxNiwxMCBAQCBzZWN0aW9uX3Rv YwlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkxNQogc2VjdGlvbl91cmwJcGVybC1zcmMvaHRsbWlm eS1jeXN0aWMJL15zdWIgc2VjdGlvbl91cmwgKCkkLwogc2VjdGlvbl91cmxfYmFzZQlwZXJsLXNy Yy9odGxtaWZ5LWN5c3RpYwkvXnN1YiBzZWN0aW9uX3VybF9iYXNlICgpJC8KIHNlY3Rpb25fdXJs X25hbWUJcGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJL15zdWIgc2VjdGlvbl91cmxfbmFtZSAoKSQv CitzZWN0aW9uenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXGFwcGVuZGl4 c2VjdGlvbntcXHBhcnNlYXJnXFxhcHBlbmRpeHNlY3RpLworc2VjdGlvbnp6egl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxhcHBlbmRpeHNlY3tcXHBhcnNlYXJnXFxhcHBlbmRp eHNlY3Rpb256ei8KK3NlY3p6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm9hcHBl bmRpeHNlY3tcXHBhcnNlYXJnXFxhcHBlbmRpeHNlY3p6en0kLworc2Vjenp6CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcc2Vjenp6ICMxe1xcc2VjY2hlY2t7c2VjdGlvbn0lJC8KIHNlbGVj dAlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9ec2VsZWN0KFgsW1h8WHNdLFhzKS4kLwogc2VsZWN0 LXRhZ3MtdGFibGUJZWwtc3JjL2VtYWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRlZnVu IHNlbGVjdC10YWdzLXRhYmxlICgpJC8KIHNlbGVjdC10YWdzLXRhYmxlLW1vZGUJZWwtc3JjL2Vt YWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRlZmluZS1kZXJpdmVkLW1vZGUgc2VsZWN0 LXRhZ3MtdGFibGUtbW9kZSBzcGVjaWEvCkBAIC0zOTM4LDkgKzQwMzAsMTEgQEAgc2VsZWN0X2xh c3QJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXnNlbGVjdF9sYXN0KFtYXSxYLFtdKS4kLwogc2Vu ZAlvYmpjLXNyYy9TdWJwcm9jZXNzLm0JL14tIHNlbmQ6KGNvbnN0IGNoYXIgKilzdHJpbmcgd2l0 aE5ld2xpbmU6KEJPT0wpd2FudC8KIHNlbmQJb2JqYy1zcmMvU3VicHJvY2Vzcy5tCS9eLSBzZW5k Oihjb25zdCBjaGFyICopc3RyaW5nJC8KIHNlcGFyYXRvcl9uYW1lcwljLXNyYy9lbWFjcy9zcmMv a2V5Ym9hcmQuYwk3MzcyCitzZXBzcGFjZXMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxc c2Vwc3BhY2Vze1xcZGVmIHtcXCB9fX0kLwogc2VyaWFsaXplVG9WYXJzCXBocC1zcmMvbGNlX2Z1 bmN0aW9ucy5waHAJL14gICAgICBmdW5jdGlvbiBzZXJpYWxpemVUb1ZhcnMoJHByZWZpeCkkLwog c2V0CWNwLXNyYy9jb253YXkuaHBwCS9eICAgIHZvaWQgc2V0KHZvaWQpIHsgYWxpdmUgPSAxOyB9 JC8KIHNldAltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gaW1wb3J0X21vZHVsZSBzZXQuJC8K K3NldAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNldHtcXHBhcnNlYXJnXFxzZXR4eHh9 JC8KIHNldC1pbnB1dC1pbnRlcnJ1cHQtbW9kZQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkv XkRFRlVOICgic2V0LWlucHV0LWludGVycnVwdC1tb2RlIiwgRnNldF9pbnB1dF9pbnRlLwogc2V0 LWlucHV0LW1ldGEtbW9kZQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXkRFRlVOICgic2V0 LWlucHV0LW1ldGEtbW9kZSIsIEZzZXRfaW5wdXRfbWV0YV9tb2RlLwogc2V0LWlucHV0LW1vZGUJ Yy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15ERUZVTiAoInNldC1pbnB1dC1tb2RlIiwgRnNl dF9pbnB1dF9tb2RlLCBTc2V0X2lucC8KQEAgLTM5NzAsOSArNDA2NCwyNCBAQCBzZXRfc3ltYm9s X25leHQJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXnNldF9zeW1ib2xfbmV4dCAoTGlzcF9PYmpl Y3Qgc3ltLCBzdHJ1Ywogc2V0X3N5bWJvbF9wbGlzdAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9e c2V0X3N5bWJvbF9wbGlzdCAoTGlzcF9PYmplY3Qgc3ltLCBMaXNwX09iamVjdCBwbGkvCiBzZXRf dXB0bwltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gZnVuYyBzZXRfdXB0byhhY2N1X2Nhc2Us IGludCkgPSBzZXQoYWNjdV9nb2FsX2kvCiBzZXRfd2FpdGluZ19mb3JfaW5wdXQJYy1zcmMvZW1h Y3Mvc3JjL2tleWJvYXJkLmMJL15zZXRfd2FpdGluZ19mb3JfaW5wdXQgKHN0cnVjdCB0aW1lc3Bl YyAqdGltZV90b19jbC8KK3NldGNoYXB0ZXJuZXdwYWdlCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcc2V0Y2hhcHRlcm5ld3BhZ2UgIzEge1xcY3NuYW1lIENIQVBQQUcjMVxcZW5kY3MvCitz ZXRjaGFwdGVyc3R5bGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZXRjaGFwdGVyc3R5 bGUgIzEge1xcY3NuYW1lIENIQVBGIzFcXGVuZGNzbmFtZS8KK3NldGRlZmZvbnQJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxzZXRkZWZmb250ICMxIHtcXGNzbmFtZSBERUYjMVxcZW5kY3Nu YW1lfSQvCitzZXRmaWxlbmFtZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFxnbG9iYWxcXGxl dFxcc2V0ZmlsZW5hbWU9XFxjb21tZW50ICUgSWdub3JlIGV4dHJhLworc2V0ZmlsZW5hbWUJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZXRmaWxlbmFtZXslJC8KK3NldHJlZgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXHNldHJlZiMxeyUkLwogc2V0cmVmCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGV4cGFuZGFmdGVyXFxleHBhbmRhZnRlclxcZXhwYW5kYWZ0ZXJcXGFwcGVuZGl4 c2V0cmUvCitzZXR0aXRsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNldHRpdGxle1xc cGFyc2VhcmdcXHNldHRpdGxlenp6fSQvCitzZXR0aXRsZXp6egl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXHNldHRpdGxlenp6ICMxe1xcZ2RlZlxcdGhpc3RpdGxleyMxfX0kLwogc2V0dXAJ Y3Atc3JjL2MuQwk1CitzZXR4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZXR4eHgg IzF7JC8KK3NmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2Z7XFxmYW09XFxzZmZhbSBc XHRlbnNmfSQvCitzZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNme1xccmVhbGJhY2tz bGFzaCBzZn0lJC8KK3NmCXRleC1zcmMvdGV4aW5mby50ZXgJL157XFxsZXRcXHRlbnR0PVxcc2Vj dHQgXFxsZXRcXHR0PVxcc2VjdHQgXFxsZXRcXHNmPVxcc2VjdHQkLwogc2hpZnQJY3Atc3JjL2Z1 bmN0aW9ucy5jcHAJL152b2lkIERhdGU6OnNoaWZ0ICggdm9pZCApe1wvXC9TaGlmdCB0aGlzIGRh dGUgdG8gcHJlLworc2hvcnRjaGFwZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxz aG9ydGNoYXBlbnRyeSMxIzIjM3slJC8KK3Nob3J0Y29udGVudHMJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcbGV0XFxzaG9ydGNvbnRlbnRzID0gXFxzdW1tYXJ5Y29udGVudHMkLworc2hvcnR1bm51 bWJlcmVkZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzaG9ydHVubnVtYmVyZWRl bnRyeSMxIzJ7JSQvCiBzaG91bGRMb2FkCW9iamMtc3JjL1BhY2tJbnNwLm0JL14tKEJPT0wpc2hv dWxkTG9hZCQvCiBzaG91bGRfYXR0ZW1wdF9hY2N1X3RyYW5zZm9ybQltZXJjLXNyYy9hY2N1bXVs YXRvci5tCS9eOi0gcHJlZCBzaG91bGRfYXR0ZW1wdF9hY2N1X3RyYW5zZm9ybShtb2R1bGVfaW5m bzovCiBzaG91bGRfYXR0ZW1wdF9hY2N1X3RyYW5zZm9ybV8yCW1lcmMtc3JjL2FjY3VtdWxhdG9y Lm0JL146LSBwcmVkIHNob3VsZF9hdHRlbXB0X2FjY3VfdHJhbnNmb3JtXzIobW9kdWxlX2luZi8K QEAgLTM5OTAsNiArNDA5OSw5IEBAIHNpZ25hbF9oYW5kbGVyX3QJYy1zcmMvaC5oCTk0CiBzaW11 bGF0aW9uCWh0bWwtc3JjL3NvZnR3YXJlLmh0bWwJL15Tb2Z0d2FyZSB0aGF0IEkgd3JvdGUgZm9y IHN1cHBvcnRpbmcgbXkgcmVzZWFyY2ggYS8KIHNpbmdsZV9rYm9hcmQJYy1zcmMvZW1hY3Mvc3Jj L2tleWJvYXJkLmMJODkKIHNpbmdsZV9rYm9hcmRfc3RhdGUJYy1zcmMvZW1hY3Mvc3JjL2tleWJv YXJkLmMJL15zaW5nbGVfa2JvYXJkX3N0YXRlICgpJC8KK3NpbmdsZWNvZGVpbmRleGVyCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2luZ2xlY29kZWluZGV4ZXIgIzF7XFxkb2luZHtcXGlu ZGV4bmFtZX17XFxjb2RlLworc2luZ2xlaW5kZXhlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXHNpbmdsZWluZGV4ZXIgIzF7XFxkb2luZHtcXGluZGV4bmFtZX17IzF9fSQvCitzaW5nbGVz cGFjZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNpbmdsZXNwYWNleyUkLwogc2l0ZQlj cC1zcmMvY29ud2F5LmhwcAkvXiAgICBzaXRlKGludCB4aSwgaW50IHlpKTogeCh4aSksIHkoeWkp LCBhbGl2ZSgwKSB7Lwogc2l0ZQljcC1zcmMvY29ud2F5LmhwcAk1CiBzaXplCWMtc3JjL2VtYWNz L3NyYy9nbWFsbG9jLmMJMTU2CkBAIC00MDAzLDIwICs0MTE1LDQ1IEBAIHNrZXlzZWVuCWMtc3Jj L2V0YWdzLmMJMjQ0NQogc2tpcF9uYW1lCWMtc3JjL2V0YWdzLmMJL15za2lwX25hbWUgKGNoYXIg KmNwKSQvCiBza2lwX25vbl9zcGFjZXMJYy1zcmMvZXRhZ3MuYwkvXnNraXBfbm9uX3NwYWNlcyAo Y2hhciAqY3ApJC8KIHNraXBfc3BhY2VzCWMtc3JjL2V0YWdzLmMJL15za2lwX3NwYWNlcyAoY2hh ciAqY3ApJC8KK3NsCXRleC1zcmMvdGV4aW5mby50ZXgJL14gICAgICBcXGxldFxccm09XFxzaG9y dGNvbnRybSBcXGxldFxcYmY9XFxzaG9ydGNvbnRiZiBcXGwvCitzbAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXHNse1xccmVhbGJhY2tzbGFzaCBzbCB9JSQvCitzbWFsbGJvb2sJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzbWFsbGJvb2t7JC8KK3NtYWxsYm9vawl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxsZXRcXHNtYWxsYm9vaz1cXHJlbGF4JC8KK3NtYWxsY2Fwcwl0ZXgtc3Jj L3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuYmY9XFxjaGFwYmYgXFxsZXRcXHRlbnR0PVxcY2hh cHR0IFxcbGV0XFxzbWFsbC8KK3NtYWxsY2Fwcwl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxl dFxcdGVuYmY9XFxpbmRiZiBcXGxldFxcdGVudHQ9XFxpbmR0dCBcXGxldFxcc21hbGxjYS8KK3Nt YWxsY2Fwcwl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuYmY9XFxzZWNiZiBcXGxl dFxcdGVudHQ9XFxzZWN0dCBcXGxldFxcc21hbGxjYS8KK3NtYWxsY2Fwcwl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eICBcXGxldFxcdGVuYmY9XFxzc2VjYmYgXFxsZXRcXHRlbnR0PVxcc3NlY3R0IFxc bGV0XFxzbWFsbC8KK3NtYWxsY2Fwcwl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVu YmY9XFx0ZXh0YmYgXFxsZXRcXHRlbnR0PVxcdGV4dHR0IFxcbGV0XFxzbWFsbC8KK3NtYWxsZXhh bXBsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc21hbGxleGFtcGxlPVxc c21hbGxsaXNweCQvCitzbWFsbGV4YW1wbGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxz bWFsbGV4YW1wbGU9XFxsaXNwJC8KK3NtYWxsbGlzcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxn bG9iYWxcXGxldFxcc21hbGxsaXNwPVxcc21hbGxsaXNweCQvCitzbWFsbGxpc3B4CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcc21hbGxsaXNweHtcXGFib3ZlZW52YnJlYWtcXGJlZ2luZ3Jv dXBcXGluRU5WJC8KK3NtYXJ0aXRhbGljCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc21h cnRpdGFsaWMjMXt7XFxzbCAjMX1cXGZ1dHVyZWxldFxcbmV4dFxcc21hcnRpdC8KK3NtYXJ0aXRh bGljeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNtYXJ0aXRhbGljeHtcXGlmeFxcbmV4 dCxcXGVsc2VcXGlmeFxcbmV4dC1cXGVsc2VcXGkvCiBzbmFyZi10YWctZnVuY3Rpb24JZWwtc3Jj L2VtYWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRlZnZhciBzbmFyZi10YWctZnVuY3Rp b24gbmlsJC8KIHNub25lCWMtc3JjL2V0YWdzLmMJMjQ0Mwogc29sdXRpb25zCW1lcmMtc3JjL2Fj Y3VtdWxhdG9yLm0JL146LSBpbXBvcnRfbW9kdWxlIHNvbHV0aW9ucy4kLwogc29tZV9tb3VzZV9t b3ZlZAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnNvbWVfbW91c2VfbW92ZWQgKHZvaWQp JC8KK3NwCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3B7XFxwYXJzZWFyZ1xcc3B4eHh9 JC8KIHNwYWNlCXRleC1zcmMvdGV4aW5mby50ZXgJL14gICAgeyMyXFxsYWJlbHNwYWNlICMxfVxc ZG90ZmlsbFxcZG9zaG9ydHBhZ2Vub3sjM319JS8KIHNwYWNlCXRleC1zcmMvdGV4aW5mby50ZXgJ L14gIFxcZG9zdWJzdWJzZWNlbnRyeXsjMi4jMy4jNC4jNVxcbGFiZWxzcGFjZSMxfXsjNn19Lwor c3BhY2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwZW50cnkjMSMyIzN7XFxkb2No YXBlbnRyeXsjMlxcbGFiZWxzcGFjZSMxfS8KK3NwYWNlCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcc2VjZW50cnkjMSMyIzMjNHtcXGRvc2VjZW50cnl7IzIuIzNcXGxhYmVsc3BhY2UvCitz cGFjZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHN1YnNlY2VudHJ5IzEjMiMzIzQjNXtc XGRvc3Vic2VjZW50cnl7IzIuIzMuIzQvCiBzcGFjZXIJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkx OTc1CiBzcGFjZXIJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxOTgyCiBzcGFjZXIJYy1zcmMvZW1h Y3Mvc3JjL2xpc3AuaAkyMDM2CiBzcGFjZXIJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyMjA1Citz cGFjZXNwbGl0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXHNwYWNlc3BsaXQjMSMyXl5N e1xcZW5kZ3JvdXBcXHNwYWNlc3BsaXRmb297IzEvCitzcGFjZXNwbGl0Zm9vCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGxvbmdcXGdkZWZcXHNwYWNlc3BsaXRmb28jMSMyICMzIzRcXHNwYWNlc3Bs aXRmb297JSQvCiBzcGVjYmluZF90YWcJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyOTQzCiBzcGVj YmluZGluZwljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTI5NTUKK3NwZWNoZWFkZXIJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZzcGVje1xcZGVmcGFyc2Vib2R5XFxFZGVmc3BlY1xcZGVm c3BlY3hcXGRlZnNwLwogc3BlY2lhbHN5bWJvbAlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9ec3Bl Y2lhbHN5bWJvbChDMSxDMixTKTotJC8KK3NwZWN4XGRlZnNwZWNoZWFkZXIJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxkZWZzcGVje1xcZGVmcGFyc2Vib2R5XFxFZGVmc3BlY1xcZGVmc3Bl Y3hcXGRlZnNwLwogc3BsaXRleHAJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXnNwbGl0ZXhwKEUs RSwoJ05JTCcsJ05JTCcpKTotIS4kLworc3BsaXRvZmYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxzcGxpdG9mZiMxIzJcXGVuZG1hcmt7XFxkZWZcXGZpcnN0eyMxfVxcZGVmXFxyZXN0ey8K K3NweHh4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3B4eHggIzF7XFxwYXIgXFx2c2tp cCAjMVxcYmFzZWxpbmVza2lwfSQvCiBzcmNsaXN0CW1ha2Utc3JjL01ha2VmaWxlCS9ec3JjbGlz dDogTWFrZWZpbGUkLwogc3MzCWMuYwkyNTUKIHNzczEJYy5jCTI1MgpAQCAtNDA0OCw2ICs0MTg1 LDggQEAgc3RhcnQJcGhwLXNyYy9sY2VfZnVuY3Rpb25zLnBocAkvXiAgICAgIGZ1bmN0aW9uIHN0 YXJ0KCRsaW5lLCAkY2xhc3MpJC8KIHN0YXJ0CXktc3JjL2NjY3AueQkxNDMKIHN0YXJ0X3BvbGxp bmcJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15zdGFydF9wb2xsaW5nICh2b2lkKSQvCiBz dGFydF91cAlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9ec3RhcnRfdXA6LSQvCitzdGFydGNvbnRl bnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3RhcnRjb250ZW50cyMxeyUkLworc3Rh cnRlbnVtZXJhdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHN0YXJ0ZW51bWVyYXRp b24jMXslJC8KIHN0YXRlX3Byb3RlY3RlZF9wCWMtc3JjL2VtYWNzL3NyYy9nbWFsbG9jLmMJNDAw CiBzdGF0ZXRhYmxlCWh0bWwtc3JjL2FsZ3J0aG1zLmh0bWwJL15OZXh0JC8KIHN0YXRpY2V0YWdz CW1ha2Utc3JjL01ha2VmaWxlCS9ec3RhdGljZXRhZ3M6JC8KQEAgLTQwNjcsMjQgKzQyMDYsNTkg QEAgc3RyaXBMaW5lCXBocC1zcmMvbGNlX2Z1bmN0aW9ucy5waHAJL14gICAgICBmdW5jdGlvbiBz dHJpcExpbmUoJGxpbmUsICRjbGFzcykkLwogc3RyaXBuYW1lCXBhcy1zcmMvY29tbW9uLnBhcwkv XmZ1bmN0aW9uIHN0cmlwbmFtZTsgKCogKCQvCiBzdHJuY2FzZWVxCWMtc3JjL2V0YWdzLmMJL14j ZGVmaW5lIHN0cm5jYXNlZXEocyx0LG4pIChhc3NlcnQgKChzKSE9TlVMTCAmJiAodC8KIHN0cm5l cQljLXNyYy9ldGFncy5jCS9eI2RlZmluZSBzdHJuZXEocyx0LG4pCShhc3NlcnQgKChzKSE9TlVM TCB8fCAodCkhPU4vCitzdHJvbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxzdHJvbmc9 XFxiJC8KK3N0cm9uZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHN0cm9uZz1cXGluZGV4 ZHVtbXlmb250JC8KIHN0cnVjdGRlZgljLXNyYy9ldGFncy5jCTI0NDgKIHN0dWZmX2J1ZmZlcmVk X2lucHV0CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ec3R1ZmZfYnVmZmVyZWRfaW5wdXQg KExpc3BfT2JqZWN0IHN0dWZmc3RyaW5nKSQvCitzdWJoZWFkaW5nCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcc3ViaGVhZGluZ3tcXHBhcnNlYXJnXFxzdWJzZWNoZWFkaW5naX0kLwogc3Vi cHJvY2VzcwlvYmpjLXNyYy9QYWNrSW5zcC5tCS9eLXN1YnByb2Nlc3M6KFN1YnByb2Nlc3MgKilz ZW5kZXIgb3V0cHV0OihjaGFyICopYnUvCiBzdWJwcm9jZXNzRG9uZQlvYmpjLXNyYy9QYWNrSW5z cC5tCS9eLXN1YnByb2Nlc3NEb25lOihTdWJwcm9jZXNzICopc2VuZGVyJC8KLXN1YnNlYz1ccmVs YXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxhcHBlbmRpeHN1YnNlYz1cXHJlbGF4JC8K K3N1YnNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vic2VjdGlvbiA9 IFxcYXBwZW5kaXhzdWJzZWMkLworc3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxc c3Vic2VjPVxccmVsYXgkLworc3Vic2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgICAg IFxcZGVmXFxzdWJzZWNlbnRyeSAjIzEjIzIjIzMjIzQjIzV7fSQvCitzdWJzZWNlbnRyeQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHN1YnNlY2VudHJ5IzEjMiMzIzQjNXtcXGRvc3Vic2Vj ZW50cnl7IzIuIzMuIzQvCitzdWJzZWNlbnRyeWZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGxldFxcc3Vic2VjZW50cnlmb250cyA9IFxcdGV4dGZvbnRzJC8KK3N1YnNlY2ZvbnRzCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3Vic2VjZm9udHN7JSQvCitzdWJzZWNoZWFkaW5nCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3Vic2VjaGVhZGluZyAjMSMyIzMjNHtcXHN1YnNl Y2hlYWRpbmdpIHsjMi4jMy8KK3N1YnNlY2hlYWRpbmdicmVhawl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXHN1YnNlY2hlYWRpbmdicmVha3tcXGRvYnJlYWsgXFxzdWJzZWNoZWFkaW5nc2tp Lworc3Vic2VjaGVhZGluZ2kJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzdWJzZWNoZWFk aW5naSAjMXt7XFxhZHZhbmNlIFxcc3Vic2VjaGVhZGluZ3NraS8KIHN1YnNlY3Rpb24JcGVybC1z cmMvaHRsbWlmeS1jeXN0aWMJMjYKLXN1YnNlY3Rpb249XHJlbGF4CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGxldFxcYXBwZW5kaXhzdWJzZWN0aW9uPVxccmVsYXgkLworc3Vic2VjdGlvbgl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vic2VjdGlvbiA9IFxcYXBwZW5kaXhz dWJzZWMkLworc3Vic2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxc c3Vic2VjdGlvbiA9IFxcbnVtYmVyZWRzdWJzZWMkLworc3Vic2VjdGlvbgl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vic2VjdGlvbiA9IFxcdW5udW1iZXJlZHN1YnNlYyQv CitzdWJzZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcc3Vic2VjdGlvbj1cXHJl bGF4JC8KIHN1YnNlY3Rpb25fbWFya2VyCXBlcmwtc3JjL2h0bG1pZnktY3lzdGljCTE2MQorc3Vi c2Vjenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5mb2FwcGVuZGl4c3Vic2Vje1xc cGFyc2VhcmdcXGFwcGVuZGl4c3Vic2VjenovCitzdWJzZWN6enoJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcb3V0ZXJcXGRlZlxcYXBwZW5kaXhzdWJzZWN7XFxwYXJzZWFyZ1xcYXBwZW5kaXhzdWJz ZWMvCiBzdWJzdAlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9ec3Vic3QodmFyKFkpLHZhcihYKSxN LE4pOi0kLwogc3Vic3RpdHV0ZQljLXNyYy9ldGFncy5jCS9ec3Vic3RpdHV0ZSAoY2hhciAqaW4s IGNoYXIgKm91dCwgc3RydWN0IHJlX3JlZ2lzdGUvCi1zdWJzdWJzZWM9XHJlbGF4CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGxldFxcYXBwZW5kaXhzdWJzdWJzZWM9XFxyZWxheCQvCitzdWJzdWJo ZWFkaW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3Vic3ViaGVhZGluZ3tcXHBhcnNl YXJnXFxzdWJzdWJzZWNoZWFkaW5naX0kLworc3Vic3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGdsb2JhbFxcbGV0XFxzdWJzdWJzZWN0aW9uID0gXFxhcHBlbmRpeHN1YnN1YnNlYyQvCitz dWJzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxzdWJzdWJzZWM9XFxyZWxheCQv CitzdWJzdWJzZWNlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgICAgXFxkZWZcXHN1YnN1 YnNlY2VudHJ5ICMjMSMjMiMjMyMjNCMjNSMjNnt9JC8KK3N1YnN1YnNlY2VudHJ5CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcc3Vic3Vic2VjZW50cnkjMSMyIzMjNCM1IzZ7JSQvCitzdWJz dWJzZWNlbnRyeWZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcc3Vic3Vic2VjZW50 cnlmb250cyA9IFxcdGV4dGZvbnRzJC8KK3N1YnN1YnNlY2ZvbnRzCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcc3Vic3Vic2VjZm9udHN7XFxzdWJzZWNmb250c30gJSBNYXliZSB0aGlzIHNo by8KK3N1YnN1YnNlY2hlYWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzdWJzdWJz ZWNoZWFkaW5nICMxIzIjMyM0IzV7XFxzdWJzdWJzZWNoZWFkaW5nLworc3Vic3Vic2VjaGVhZGlu Z2kJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzdWJzdWJzZWNoZWFkaW5naSAjMXt7XFxh ZHZhbmNlIFxcc3Vic2VjaGVhZGluZy8KIHN1YnN1YnNlY3Rpb24JcGVybC1zcmMvaHRsbWlmeS1j eXN0aWMJMjcKLXN1YnN1YnNlY3Rpb249XHJlbGF4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxl dFxcYXBwZW5kaXhzdWJzdWJzZWN0aW9uPVxccmVsYXgkLworc3Vic3Vic2VjdGlvbgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vic3Vic2VjdGlvbiA9IFxcYXBwZW5kaXhz dWJzdWJzZWMkLworc3Vic3Vic2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxc XGxldFxcc3Vic3Vic2VjdGlvbiA9IFxcbnVtYmVyZWRzdWJzdWJzZWMkLworc3Vic3Vic2VjdGlv bgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vic3Vic2VjdGlvbiA9IFxc dW5udW1iZXJlZHN1YnN1YnNlYyQvCitzdWJzdWJzZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGxldFxcc3Vic3Vic2VjdGlvbj1cXHJlbGF4JC8KK3N1YnN1YnNlY3p6egl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGluZm9hcHBlbmRpeHN1YnN1YnNlY3tcXHBhcnNlYXJnXFxhcHBl bmRpeHN1YnN1Lworc3Vic3Vic2Vjenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxk ZWZcXGFwcGVuZGl4c3Vic3Vic2Vje1xccGFyc2VhcmdcXGFwcGVuZGl4c3ViLworc3VidGl0bGUJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgIFxcZGVmXFxzdWJ0aXRsZXtcXHBhcnNlYXJnXFxzdWJ0 aXRsZXp6en0lJC8KK3N1YnRpdGxlZm9udAl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFxkZWZc XHN1YnRpdGxlZm9udHtcXHN1YnRpdGxlcm0gXFxub3JtYWxiYXNlbGluZXNrLworc3VidGl0bGVy bQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFxsZXRcXHN1YnRpdGxlcm09XFx0ZW5ybSQvCitz dWJ0aXRsZXp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFxkZWZcXHN1YnRpdGxlenp6IyMx e3tcXHN1YnRpdGxlZm9udCBcXHJpZ2h0bGluZXsjLwogc3VidGxlCXJ1Ynktc3JjL3Rlc3QxLnJ1 CS9eICAgICAgICAgICAgICAgICA6dGVlIDsgYXR0cl9yZWFkZXIgOnN1YnRsZSQvCiBzdWJ0cmVl CXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15zdWJ0cmVlKFQsVCkuJC8KIHN1ZmZpeAljLXNyYy9l dGFncy5jCTE4Ngogc3VmZml4ZXMJYy1zcmMvZXRhZ3MuYwkxOTUKIHN1Z2dlc3RfYXNraW5nX2Zv cl9oZWxwCWMtc3JjL2V0YWdzLmMJL15zdWdnZXN0X2Fza2luZ19mb3JfaGVscCAodm9pZCkkLwor c3VtbWFyeWNvbnRlbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXHN1bW1h cnljb250ZW50c3slJC8KK3N1cGVyZWplY3QJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxz dXBlcmVqZWN0e1xccGFyXFxwZW5hbHR5IC0yMDAwMFxcZm9vdG5vdGVubyA9MCAvCiBzdXNwZW5k LWVtYWNzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eREVGVU4gKCJzdXNwZW5kLWVtYWNz IiwgRnN1c3BlbmRfZW1hY3MsIFNzdXNwZW5kX2UvCiBzdmFsCXktc3JjL2NjY3AueQkxMTYKIHN3 YWxsb3dfZXZlbnRzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ec3dhbGxvd19ldmVudHMg KGJvb2wgZG9fZGlzcGxheSkkLwpAQCAtNDA5OSw2ICs0MjczLDggQEAgc3ltc19vZl9hYmJyZXYJ Yy1zcmMvYWJicmV2LmMJL15zeW1zX29mX2FiYnJldiAoKSQvCiBzeW1zX29mX2tleWJvYXJkCWMt c3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ec3ltc19vZl9rZXlib2FyZCAodm9pZCkkLwogc3lu Y2hyb25pemVfc3lzdGVtX21lc3NhZ2VzX2xvY2FsZQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9e SU5MSU5FIHZvaWQgc3luY2hyb25pemVfc3lzdGVtX21lc3NhZ2VzX2xvY2FsZSAodm8vCiBzeW5j aHJvbml6ZV9zeXN0ZW1fdGltZV9sb2NhbGUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXklOTElO RSB2b2lkIHN5bmNocm9uaXplX3N5c3RlbV90aW1lX2xvY2FsZSAodm9pZCkgLworc3luY29kZWlu ZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3luY29kZWluZGV4ICMxICMyIHslJC8K K3N5bmluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3luaW5kZXggIzEgIzIgeyUk Lwogc3ludGF4CWMtc3JjL2VtYWNzL3NyYy9yZWdleC5oCTM1MAogc3lzX2ptcF9idWYJYy1zcmMv ZW1hY3Mvc3JjL2xpc3AuaAkyOTA2CiBzeXNfam1wX2J1ZgljLXNyYy9lbWFjcy9zcmMvbGlzcC5o CTI5MTAKQEAgLTQxMTEsMTIgKzQyODcsMjAgQEAgc3lzX3NldGptcAljLXNyYy9lbWFjcy9zcmMv bGlzcC5oCS9eIyBkZWZpbmUgc3lzX3NldGptcChqKSBzZXRqbXAgKGopJC8KIHN5c19zZXRqbXAJ Yy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXiMgZGVmaW5lIHN5c19zZXRqbXAoaikgc2lnc2V0am1w IChqLCAwKSQvCiBzeXNjYWxsX2Vycm9yCWMtc3JjL3N5c2RlcC5oCTM0CiB0CWNwLXNyYy9jLkMJ NTIKK3QJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0IyMxe1xccmVhbGJhY2tzbGFzaCBy IHsjIzF9fSUkLwordAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHQjMXt7XFx0dCBcXGV4 aHlwaGVucGVuYWx0eT0xMDAwMFxccmF3YmFja3NsYXNoIC8KK3QJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcbGV0XFxiPVxccHRleGIgXFxsZXRcXGM9XFxwdGV4YyBcXGxldFxcaT1cXHB0ZXhpIFxc bGV0XFx0PVxcLwordAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHQ9XFxpbmRleGR1bW15 Zm9udCQvCiB0MQljcC1zcmMvYy5DCTM0CiB0MgljcC1zcmMvYy5DCTM4CiB0YWJfY291bnRfd29y ZHMJYy1zcmMvdGFiLmMJL15pbnQJCQl0YWJfY291bnRfd29yZHMoY2hhciAqKnRhYikkLwogdGFi X2RlbGV0ZV9maXJzdAljLXNyYy90YWIuYwkvXmludAkJCXRhYl9kZWxldGVfZmlyc3QoY2hhciAq KnRhYikkLwogdGFiX2ZpbGwJYy1zcmMvdGFiLmMJL15jaGFyCQkJKip0YWJfZmlsbChjaGFyICpz dHIsIGNoYXIgZGVsaW0pJC8KIHRhYl9mcmVlCWMtc3JjL3RhYi5jCS9edm9pZAkJCXRhYl9mcmVl KGNoYXIgKip0YWIpJC8KK3RhYmxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdGFibGV7 XFxiZWdpbmdyb3VwXFxpbkVOVlxcb2JleWxpbmVzXFxvYmV5c3BhY2VzXFwvCit0YWJsZXgJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcdGFibGV4ICMxXl5NeyUkLwordGFibGV5CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXHRhYmxleSMxIzIgIzMgIzQgIzUgIzYgIzdcXGVuZHRh YmxleXtcXGVuZGdyb3UvCit0YWJsZXoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0YWJs ZXogIzEjMiMzIzQjNSM2eyUkLwogdGFnLWFueS1tYXRjaC1wCWVsLXNyYy9lbWFjcy9saXNwL3By b2dtb2Rlcy9ldGFncy5lbAkvXihkZWZ1biB0YWctYW55LW1hdGNoLXAgKF90YWcpJC8KIHRhZy1l eGFjdC1maWxlLW5hbWUtbWF0Y2gtcAllbC1zcmMvZW1hY3MvbGlzcC9wcm9nbW9kZXMvZXRhZ3Mu ZWwJL14oZGVmdW4gdGFnLWV4YWN0LWZpbGUtbmFtZS1tYXRjaC1wICh0YWcpJC8KIHRhZy1leGFj dC1tYXRjaC1wCWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihkZWZ1biB0 YWctZXhhY3QtbWF0Y2gtcCAodGFnKSQvCkBAIC00MTk1LDEyICs0Mzc5LDc1IEBAIHRhZ3MtdGFn LWZhY2UJZWwtc3JjL2VtYWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRlZmN1c3RvbSB0 YWdzLXRhZy1mYWNlICdkCiB0YWdzLXZlcmlmeS10YWJsZQllbC1zcmMvZW1hY3MvbGlzcC9wcm9n bW9kZXMvZXRhZ3MuZWwJL14oZGVmdW4gdGFncy12ZXJpZnktdGFibGUgKGZpbGUpJC8KIHRhZ3Mt d2l0aC1mYWNlCWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihkZWZtYWNy byB0YWdzLXdpdGgtZmFjZSAoZmFjZSAmcmVzdCBib2R5KSQvCiB0YXJnZXRfbXVsdGlieXRlCWMt c3JjL2VtYWNzL3NyYy9yZWdleC5oCTQwNwordGNsb3NlCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcdGNsb3NlIyMxe1xccmVhbGJhY2tzbGFzaCB0Y2xvc2UgeyMjMX19JC8KK3RjbG9zZQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHRjbG9zZSMjMXtcXHJlYWxiYWNrc2xhc2ggdGNs b3NlIHsjIzF9fSUkLwordGNsb3NlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdGNsb3Nl IzF7e1xccm0gXFx0Y2xvc2VybT1cXGZvbnRkaW1lbjJcXGZvbnQgXFx0dCAvCit0Y2xvc2UJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFx0Y2xvc2U9XFxpbmRleGR1bW15Zm9udCQvCiB0Y3Bk dW1wCWh0bWwtc3JjL3NvZnR3YXJlLmh0bWwJL150Y3BkdW1wJC8KIHRlYXRzCWNwLXNyYy9jLkMJ MTI3CiB0ZWUJcnVieS1zcmMvdGVzdDEucnUJL14gICAgYXR0cl9hY2Nlc3NvciA6dGVlJC8KIHRl ZT0JcnVieS1zcmMvdGVzdDEucnUJL14gICAgYXR0cl9hY2Nlc3NvciA6dGVlJC8KK3RlbXAJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZWRlZlxcdGVtcHslJC8KK3RlbXAJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZWRlZlxcdGVtcHt7XFxyZWFsYmFja3NsYXNoIGNoYXBlbnRyeSAkLwordGVtcAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxlZGVmXFx0ZW1we3tcXHJlYWxiYWNrc2xhc2ggY2hhcGVu dHJ5IHsjMX17XFx0aGVcXGNoYS8KK3RlbXAJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZWRlZlxc dGVtcHt7XFxyZWFsYmFja3NsYXNoIHNlY2VudHJ5ICUkLwordGVtcAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxlZGVmXFx0ZW1we3tcXHJlYWxiYWNrc2xhc2ggc3Vic2VjZW50cnkgJSQvCit0ZW1w CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGVkZWZcXHRlbXB7e1xccmVhbGJhY2tzbGFzaCBzdWJz dWJzZWNlbnRyeSAlJC8KK3RlbXAJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZWRlZlxcdGVtcHt7 XFxyZWFsYmFja3NsYXNoIHN1YnN1YnNlY2VudHJ5eyMxfSUkLwordGVtcAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxlZGVmXFx0ZW1we3tcXHJlYWxiYWNrc2xhc2ggdW5udW1iY2hhcGVudHJ5IHsj MX17XFxuLwordGVtcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxlZGVmXFx0ZW1we3tcXHJlYWxi YWNrc2xhc2ggdW5udW1ic2VjZW50cnl7IzF9e1xcbm9lLwordGVtcAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxlZGVmXFx0ZW1we3tcXHJlYWxiYWNrc2xhc2ggdW5udW1ic3Vic2VjZW50cnl7IzF9 e1xcLwordGVtcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxlZGVmXFx0ZW1we3tcXHJlYWxiYWNr c2xhc2ggdW5udW1ic3Vic3Vic2VjZW50cnl7IzEvCit0ZW1wCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGVsc2UgXFxsZXRcXHRlbXA9XFxpZmNsZWFyZmFpbCBcXGZpJC8KK3RlbXAJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZWxzZSBcXGxldFxcdGVtcD1cXHJlbGF4IFxcZmkkLwordGVtcAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxleHBhbmRhZnRlclxcaWZ4XFxjc25hbWUgSUYjMVxcZW5kY3Nu YW1lXFxyZWxheCBcXGxldFxcLwordGVtcDEJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxceGRlZlxc dGVtcDF7IzIgIzN9JSQvCit0ZW1wMQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFx4ZGVmXFx0ZW1w MXsjMn0lJC8KIHRlbXBvcmFyaWx5X3N3aXRjaF90b19zaW5nbGVfa2JvYXJkCWMtc3JjL2VtYWNz L3NyYy9rZXlib2FyZC5jCS9edGVtcG9yYXJpbHlfc3dpdGNoX3RvX3NpbmdsZV9rYm9hcmQgKHN0 cnVjdCBmcmFtZSAvCit0ZW5iZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuYmY9 XFxjaGFwYmYgXFxsZXRcXHRlbnR0PVxcY2hhcHR0IFxcbGV0XFxzbWFsbC8KK3RlbmJmCXRleC1z cmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5iZj1cXGluZGJmIFxcbGV0XFx0ZW50dD1cXGlu ZHR0IFxcbGV0XFxzbWFsbGNhLwordGVuYmYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxsZXRc XHRlbmJmPVxcc2VjYmYgXFxsZXRcXHRlbnR0PVxcc2VjdHQgXFxsZXRcXHNtYWxsY2EvCit0ZW5i Zgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuYmY9XFxzc2VjYmYgXFxsZXRcXHRl bnR0PVxcc3NlY3R0IFxcbGV0XFxzbWFsbC8KK3RlbmJmCXRleC1zcmMvdGV4aW5mby50ZXgJL14g IFxcbGV0XFx0ZW5iZj1cXHRleHRiZiBcXGxldFxcdGVudHQ9XFx0ZXh0dHQgXFxsZXRcXHNtYWxs LwordGVuYmYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZntcXGxldFxcdGVudHQ9XFxk ZWZ0dCBcXGxldFxcdGVuYmYgPSBcXGRlZmJmIFxcYmZ9LwogdGVuZAljLXNyYy9ldGFncy5jCTI0 MzIKK3RlbmkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxsZXRcXHRlbnNmPVxcY2hhcHNmIFxc bGV0XFx0ZW5pPVxcY2hhcGkgXFxsZXRcXHRlbnN5PVxcLwordGVuaQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eICBcXGxldFxcdGVuc2Y9XFxpbmRzZiBcXGxldFxcdGVuaT1cXGluZGkgXFxsZXRcXHRl bnN5PVxcaW4vCit0ZW5pCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5zZj1cXHNl Y3NmIFxcbGV0XFx0ZW5pPVxcc2VjaSBcXGxldFxcdGVuc3k9XFxzZS8KK3RlbmkJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXiAgXFxsZXRcXHRlbnNmPVxcc3NlY3NmIFxcbGV0XFx0ZW5pPVxcc3NlY2kg XFxsZXRcXHRlbnN5PVxcLwordGVuaQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVu c2Y9XFx0ZXh0c2YgXFxsZXRcXHRlbmk9XFx0ZXh0aSBcXGxldFxcdGVuc3k9XFwvCit0ZW5pdAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVucm09XFxjaGFwcm0gXFxsZXRcXHRlbml0 PVxcY2hhcGl0IFxcbGV0XFx0ZW5zbC8KK3Rlbml0CXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxc bGV0XFx0ZW5ybT1cXGluZHJtIFxcbGV0XFx0ZW5pdD1cXGluZGl0IFxcbGV0XFx0ZW5zbD1cXC8K K3Rlbml0CXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5ybT1cXHNlY3JtIFxcbGV0 XFx0ZW5pdD1cXHNlY2l0IFxcbGV0XFx0ZW5zbD1cXC8KK3Rlbml0CXRleC1zcmMvdGV4aW5mby50 ZXgJL14gIFxcbGV0XFx0ZW5ybT1cXHNzZWNybSBcXGxldFxcdGVuaXQ9XFxzc2VjaXQgXFxsZXRc XHRlbnNsLwordGVuaXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxsZXRcXHRlbnJtPVxcdGV4 dHJtIFxcbGV0XFx0ZW5pdD1cXHRleHRpdCBcXGxldFxcdGVuc2wvCit0ZW5ybQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eICBcXGxldFxcdGVucm09XFxjaGFwcm0gXFxsZXRcXHRlbml0PVxcY2hhcGl0 IFxcbGV0XFx0ZW5zbC8KK3RlbnJtCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5y bT1cXGluZHJtIFxcbGV0XFx0ZW5pdD1cXGluZGl0IFxcbGV0XFx0ZW5zbD1cXC8KK3RlbnJtCXRl eC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5ybT1cXHNlY3JtIFxcbGV0XFx0ZW5pdD1c XHNlY2l0IFxcbGV0XFx0ZW5zbD1cXC8KK3RlbnJtCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxc bGV0XFx0ZW5ybT1cXHNzZWNybSBcXGxldFxcdGVuaXQ9XFxzc2VjaXQgXFxsZXRcXHRlbnNsLwor dGVucm0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxsZXRcXHRlbnJtPVxcdGV4dHJtIFxcbGV0 XFx0ZW5pdD1cXHRleHRpdCBcXGxldFxcdGVuc2wvCit0ZW5zZgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eICBcXGxldFxcdGVuc2Y9XFxjaGFwc2YgXFxsZXRcXHRlbmk9XFxjaGFwaSBcXGxldFxcdGVu c3k9XFwvCit0ZW5zZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9XFxpbmRz ZiBcXGxldFxcdGVuaT1cXGluZGkgXFxsZXRcXHRlbnN5PVxcaW4vCit0ZW5zZgl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9XFxzZWNzZiBcXGxldFxcdGVuaT1cXHNlY2kgXFxs ZXRcXHRlbnN5PVxcc2UvCit0ZW5zZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVu c2Y9XFxzc2Vjc2YgXFxsZXRcXHRlbmk9XFxzc2VjaSBcXGxldFxcdGVuc3k9XFwvCit0ZW5zZgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9XFx0ZXh0c2YgXFxsZXRcXHRlbmk9 XFx0ZXh0aSBcXGxldFxcdGVuc3k9XFwvCit0ZW5zbAl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBc XGxldFxcdGVucm09XFxjaGFwcm0gXFxsZXRcXHRlbml0PVxcY2hhcGl0IFxcbGV0XFx0ZW5zbC8K K3RlbnNsCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5ybT1cXGluZHJtIFxcbGV0 XFx0ZW5pdD1cXGluZGl0IFxcbGV0XFx0ZW5zbD1cXC8KK3RlbnNsCXRleC1zcmMvdGV4aW5mby50 ZXgJL14gIFxcbGV0XFx0ZW5ybT1cXHNlY3JtIFxcbGV0XFx0ZW5pdD1cXHNlY2l0IFxcbGV0XFx0 ZW5zbD1cXC8KK3RlbnNsCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5ybT1cXHNz ZWNybSBcXGxldFxcdGVuaXQ9XFxzc2VjaXQgXFxsZXRcXHRlbnNsLwordGVuc2wJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXiAgXFxsZXRcXHRlbnJtPVxcdGV4dHJtIFxcbGV0XFx0ZW5pdD1cXHRleHRp dCBcXGxldFxcdGVuc2wvCit0ZW5zeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVu c2Y9XFxjaGFwc2YgXFxsZXRcXHRlbmk9XFxjaGFwaSBcXGxldFxcdGVuc3k9XFwvCit0ZW5zeQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9XFxpbmRzZiBcXGxldFxcdGVuaT1c XGluZGkgXFxsZXRcXHRlbnN5PVxcaW4vCit0ZW5zeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBc XGxldFxcdGVuc2Y9XFxzZWNzZiBcXGxldFxcdGVuaT1cXHNlY2kgXFxsZXRcXHRlbnN5PVxcc2Uv Cit0ZW5zeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9XFxzc2Vjc2YgXFxs ZXRcXHRlbmk9XFxzc2VjaSBcXGxldFxcdGVuc3k9XFwvCit0ZW5zeQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eICBcXGxldFxcdGVuc2Y9XFx0ZXh0c2YgXFxsZXRcXHRlbmk9XFx0ZXh0aSBcXGxldFxc dGVuc3k9XFwvCit0ZW50dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuYmY9XFxj aGFwYmYgXFxsZXRcXHRlbnR0PVxcY2hhcHR0IFxcbGV0XFxzbWFsbC8KK3RlbnR0CXRleC1zcmMv dGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5iZj1cXGluZGJmIFxcbGV0XFx0ZW50dD1cXGluZHR0 IFxcbGV0XFxzbWFsbGNhLwordGVudHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxsZXRcXHRl bmJmPVxcc2VjYmYgXFxsZXRcXHRlbnR0PVxcc2VjdHQgXFxsZXRcXHNtYWxsY2EvCit0ZW50dAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuYmY9XFxzc2VjYmYgXFxsZXRcXHRlbnR0 PVxcc3NlY3R0IFxcbGV0XFxzbWFsbC8KK3RlbnR0CXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxc bGV0XFx0ZW5iZj1cXHRleHRiZiBcXGxldFxcdGVudHQ9XFx0ZXh0dHQgXFxsZXRcXHNtYWxsLwor dGVudHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZntcXGxldFxcdGVudHQ9XFxkZWZ0 dCBcXGxldFxcdGVuYmYgPSBcXGRlZmJmIFxcYmZ9LwordGVudHQJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXntcXGxldFxcdGVudHQ9XFxzZWN0dCBcXGxldFxcdHQ9XFxzZWN0dCBcXGxldFxcc2Y9XFxz ZWN0dCQvCiB0ZXJtCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBpbXBvcnRfbW9kdWxlIHRl cm0uJC8KIHRlcm1pbmF0ZQlvYmpjLXNyYy9TdWJwcm9jZXNzLm0JL14tIHRlcm1pbmF0ZTpzZW5k ZXIkLwogdGVybWluYXRlSW5wdXQJb2JqYy1zcmMvU3VicHJvY2Vzcy5tCS9eLSB0ZXJtaW5hdGVJ bnB1dCQvCkBAIC00MjE3LDcgKzQ0NjQsMTIgQEAgdGVzdDEJcnMtc3JjL3Rlc3QucnMJL15mbiB0 ZXN0MSgpIHskLwogdGVzdF9jcmxmMQl0ZXN0X2NybGYuYwkvXnZvaWQgdGVzdF9jcmxmMSgpJC8K IHRlc3RfY3JsZjIJdHNldF9jcmxmLmMJL152b2lkIHRlc3RfY3JsZjIoKSQvCiB0ZXN0X3VuZGVm aW5lZAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnRlc3RfdW5kZWZpbmVkIChMaXNwX09i amVjdCBiaW5kaW5nKSQvCit0ZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0ZXh7XFxi ZWdpbmdyb3VwJC8KK3RleGluZm92ZXJzaW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc dGV4aW5mb3ZlcnNpb257Mi43M30kLwordGV4dGZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcdGV4dGZvbnRzeyUkLwogdGV4dHRyZWVsaXN0CXByb2wtc3JjL25hdGRlZC5wcm9sb2cJ L150ZXh0dHJlZWxpc3QoW10pLiQvCit0aGVhcmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxk ZWZcXHRoZWFyZ3sjMX0lJC8KK3RoZWFyZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGlmeFxc dGhlYXJnXFxlbXB0eSBcXGRlZlxcdGhlYXJnezF9XFxmaSQvCiB0aGVyZS1pcy1hLT0taW4tdGhl LW1pZGRsZSEJc2NtLXNyYy90ZXN0LnNjbQkvXihkZWZpbmUgKHRoZXJlLWlzLWEtPS1pbi10aGUt bWlkZGxlISkgI3QpJC8KIHRoaXMJYy1zcmMvYS9iL2IuYwkxCiB0aGlzLWNvbW1hbmQta2V5cwlj LXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXkRFRlVOICgidGhpcy1jb21tYW5kLWtleXMiLCBG dGhpc19jb21tYW5kX2tleXMsIFN0LwpAQCAtNDIyOSw2ICs0NDgxLDMwIEBAIHRoaXNfY29tbWFu ZF9rZXlfY291bnRfcmVzZXQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJMTEyCiB0aGlzX2Nv bW1hbmRfa2V5cwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkxMDcKIHRoaXNfZmlsZV90b2MJ cGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJMjkKIHRoaXNfc2luZ2xlX2NvbW1hbmRfa2V5X3N0YXJ0 CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTEyNQordGhpc2NoYXB0ZXIJdGV4LXNyYy90ZXhp bmZvLnRleAkvXiAgIFxcdW5udW1iY2hhcG1hY3JveyMxfVxcZGVmXFx0aGlzY2hhcHRlcnt9JSQv Cit0aGlzY2hhcHRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHRoaXNjaGFwdGVye30g XFxkZWZcXHRoaXNzZWN0aW9ue30kLwordGhpc2NoYXB0ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZ2RlZlxcdGhpc2NoYXB0ZXJ7IzF9XFxnZGVmXFx0aGlzc2VjdGlvbnsjMX0lJC8KK3RoaXNj aGFwdGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXHhkZWZcXHRoaXNjaGFwdGVye0FwcGVuZGl4 IFxcYXBwZW5kaXhsZXR0ZXI6IFxcbm9leHAvCit0aGlzY2hhcHRlcgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFx4ZGVmXFx0aGlzY2hhcHRlcntDaGFwdGVyIFxcdGhlXFxjaGFwbm86IFxcbm9leHBh bmRcXHQvCit0aGlzY2hhcHRlcm5hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0aGlz Y2hhcHRlcm5hbWV7Tm8gQ2hhcHRlciBUaXRsZX0kLwordGhpc2NoYXB0ZXJuYW1lCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGdkZWZcXHRoaXNjaGFwdGVybmFtZXsjMX0lJC8KK3RoaXNmaWxlCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5jbHVkZXp6eiAjMXt7XFxkZWZcXHRoaXNmaWxl eyMxfVxcaW5wdXQgIzEkLwordGhpc2ZpbGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0 aGlzZmlsZXt9JC8KK3RoaXNmb290bm8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZWRlZlxcdGhp c2Zvb3Rub3skXntcXHRoZVxcZm9vdG5vdGVub30kfSUkLwordGhpc3BhZ2UJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcbGV0XFx0aGlzcGFnZT1cXGZvbGlvJC8KK3RoaXNzZWN0aW9uCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcdGhpc2NoYXB0ZXJ7fSBcXGRlZlxcdGhpc3NlY3Rpb257fSQv Cit0aGlzc2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFx0aGlzY2hhcHRlcnsj MX1cXGdkZWZcXHRoaXNzZWN0aW9ueyMxfSUkLwordGhpc3NlY3Rpb24JdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZ2RlZlxcdGhpc3NlY3Rpb257IzF9JSQvCit0aGlzc2VjdGlvbgl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxnZGVmXFx0aGlzc2VjdGlvbnsjMX1cXGdsb2JhbFxcYWR2YW5jZSBcXHN1 YnN1YnNlY25vIC8KK3RoaXNzZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXHRo aXNzZWN0aW9ueyMxfVxcc2VjaGVhZGluZyB7IzF9e1xcYXBwZW5kaXhsZXQvCit0aGlzc2VjdGlv bgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFx0aGlzc2VjdGlvbnsjMX1cXHNlY2hlYWRp bmcgeyMxfXtcXHRoZVxcY2hhcG5vfS8KK3RoaXNzZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGdkZWZcXHRoaXNzZWN0aW9ueyMxfVxcc3Vic3Vic2Vjbm89MCBcXGdsb2JhbFxcYWR2YW5j LwordGhpc3NlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxccGxhaW5zZWNoZWFkaW5nIHsj MX1cXGdkZWZcXHRoaXNzZWN0aW9ueyMxfSUkLwordGhpc3RpdGxlCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcc2V0dGl0bGV6enogIzF7XFxnZGVmXFx0aGlzdGl0bGV7IzF9fSQvCit0aGlz dGl0bGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0aGlzdGl0bGV7Tm8gVGl0bGV9JC8K K3RocmVlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxca2JkZm9vIzEjMiMzXFxwYXJ7XFxk ZWZcXG9uZXsjMX1cXGRlZlxcdGhyZWV7IzN9XFxkLwordGhyZWV4CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxca2JkZm9vIzEjMiMzXFxwYXJ7XFxkZWZcXG9uZXsjMX1cXGRlZlxcdGhyZWV7 IzN9XFxkLwordGllCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdGlle1xccGVuYWx0eSAx MDAwMFxcIH0gICAgICUgU2F2ZSBwbGFpbiB0ZXggZGUvCiB0aWdub3JlCWMtc3JjL2V0YWdzLmMJ MjQzMwogdGltZXJfY2hlY2sJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL150aW1lcl9jaGVj ayAodm9pZCkkLwogdGltZXJfY2hlY2tfMgljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnRp bWVyX2NoZWNrXzIgKExpc3BfT2JqZWN0IHRpbWVycywgTGlzcF9PYmplY3QgaWRsLwpAQCAtNDIz OSw5ICs0NTE1LDE2IEBAIHRpbWVyX3N0YXJ0X2lkbGUJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJk LmMJL150aW1lcl9zdGFydF9pZGxlICh2b2lkKSQvCiB0aW1lcl9zdG9wX2lkbGUJYy1zcmMvZW1h Y3Mvc3JjL2tleWJvYXJkLmMJL150aW1lcl9zdG9wX2lkbGUgKHZvaWQpJC8KIHRpbWVyc19ydW4J Yy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJMzIwCiB0aW5ib2R5CWMtc3JjL2V0YWdzLmMJMjQz MQordGluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdGluZGV4IHtcXHRwaW5kZXh9 JC8KK3RpdGxlCXRleC1zcmMvdGV4aW5mby50ZXgJL14gICBcXGRlZlxcdGl0bGV7XFxwYXJzZWFy Z1xcdGl0bGV6enp9JSQvCit0aXRsZWZvbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0 aXRsZWZvbnQjMXt7XFx0aXRsZXJtICMxfX0kLwordGl0bGVwYWdlCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcdGl0bGVwYWdle1xcYmVnaW5ncm91cCBcXHBhcmluZGVudD0wcHQgXFx0ZXh0 Zm9uLwordGl0bGVwYWdlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcdGl0bGVwYWdlPVxc cmVsYXgkLwordGl0bGV6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgIFxcZGVmXFx0aXRsZXp6 eiMjMXtcXGxlZnRsaW5le1xcdGl0bGVmb250eyMjMX19JC8KIHRrZXlzZWVuCWMtc3JjL2V0YWdz LmMJMjQyOQogdG5vbmUJYy1zcmMvZXRhZ3MuYwkyNDI4CiB0b2NfbGluZQlwZXJsLXNyYy9odGxt aWZ5LWN5c3RpYwkvXnN1YiB0b2NfbGluZSAoJCkkLwordG9kYXkJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFx0b2RheXtcXG51bWJlclxcZGF5XFxzcGFjZSQvCiB0b2dnbGVEZXNjcmlwdGlv bglvYmpjLXNyYy9QYWNrSW5zcC5tCS9eLXRvZ2dsZURlc2NyaXB0aW9uJC8KIHRvawljLXNyYy9l dGFncy5jCTI0OTEKIHRva2VuCWMtc3JjL2V0YWdzLmMJMjUwOApAQCAtNDI1NCw2ICs0NTM3LDgg QEAgdG9vbF9iYXJfaXRlbV9wcm9wZXJ0aWVzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTc5 NzAKIHRvb2xfYmFyX2l0ZW1zCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9edG9vbF9iYXJf aXRlbXMgKExpc3BfT2JqZWN0IHJldXNlLCBpbnQgKm5pdGVtcykkLwogdG9vbF9iYXJfaXRlbXNf dmVjdG9yCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTc5NjUKIHRvb2xraXRfbWVudWJhcl9p bl91c2UJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL150b29sa2l0X21lbnViYXJfaW5fdXNl IChzdHJ1Y3QgZnJhbWUgKmYpJC8KK3RvcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHRv cD1cXHJlbGF4JC8KK3RvcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFx0b3B7 XFxwYXJzZWFyZ1xcdW5udW1iZXJlZHp6en0kLwogdG9wLWxldmVsCWMtc3JjL2VtYWNzL3NyYy9r ZXlib2FyZC5jCS9eREVGVU4gKCJ0b3AtbGV2ZWwiLCBGdG9wX2xldmVsLCBTdG9wX2xldmVsLCAw LCAwLCAvCiB0b3BfbGV2ZWwJbWVyYy1zcmMvYWNjdW11bGF0b3IubQkvXjotIHR5cGUgdG9wX2xl dmVsJC8KIHRvcF9sZXZlbF8xCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9edG9wX2xldmVs XzEgKExpc3BfT2JqZWN0IGlnbm9yZSkkLwpAQCAtNDI2MiwxNyArNDU0NywyNiBAQCB0b3RhbF9r ZXlzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTk3CiB0b3RhbF9zaXplX29mX2VudHJpZXMJ Yy1zcmMvZXRhZ3MuYwkvXnRvdGFsX3NpemVfb2ZfZW50cmllcyAocmVnaXN0ZXIgbm9kZSAqbnAp JC8KIHRvdGFsX3N1cnJvdW5kaW5nCWNwLXNyYy9jb253YXkuY3BwCS9eaW50IHNpdGU6OnRvdGFs X3N1cnJvdW5kaW5nKHZvaWQpJC8KIHRvdGFsbHlfdW5ibG9ja19pbnB1dAljLXNyYy9lbWFjcy9z cmMva2V5Ym9hcmQuYwkvXnRvdGFsbHlfdW5ibG9ja19pbnB1dCAodm9pZCkkLwordHBhcmdzCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGJlZ2luZ3JvdXBcXGRlZm5hbWUgeyMyfXsjMX1cXGRlZnRw YXJnc3sjM31cXGVuZGdyb3UvCiB0cGNtZAljLXNyYy9oLmgJMTUKIHRwY21kCWMtc3JjL2guaAk4 Cit0cGhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnRwe1xcZGVmdnJwYXJz ZWJvZHlcXEVkZWZ0cFxcZGVmdHB4XFxkZWZ0cGhlYWQvCit0cHhcZGVmdHBoZWFkZXIJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0cHtcXGRlZnZycGFyc2Vib2R5XFxFZGVmdHBcXGRl ZnRweFxcZGVmdHBoZWFkLwogdHJhY2stbW91c2UJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJ L15ERUZVTiAoImludGVybmFsLS10cmFjay1tb3VzZSIsIEZ0cmFja19tb3VzZSwgU3RyYS8KIHRy YWNraW5nX29mZgljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnRyYWNraW5nX29mZiAoTGlz cF9PYmplY3Qgb2xkX3ZhbHVlKSQvCiB0cmFmZmljX2xpZ2h0CWNwLXNyYy9jb253YXkuY3BwCS9e dm9pZCB0cmFmZmljX2xpZ2h0KGludCB4LCBpbnQgeSkkLwogdHJhbnNsYXRlCWMtc3JjL2VtYWNz L3NyYy9yZWdleC5oCTM2MQogdHJlYXRzCWNwLXNyYy9jLkMJMTMxCiB0dAlwcm9sLXNyYy9uYXRk ZWQucHJvbG9nCS9edHQ6LSQvCi10dD1jbXR0MTAJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZm9u dFxcZGVmdHQ9Y210dDEwIHNjYWxlZCBcXG1hZ3N0ZXAxJC8KK3R0CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZGZ7XFxsZXRcXHRlbnR0PVxcZGVmdHQgXFxsZXRcXHRlbmJmID0gXFxkZWZi ZiBcXGJmfS8KK3R0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdHR7XFxyZWFsYmFja3Ns YXNoIHR0fSQvCit0dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHR0e1xccmVhbGJhY2tz bGFzaCB0dH0lJC8KK3R0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGZvbnRcXGRlZnR0PWNtdHQx MCBzY2FsZWQgXFxtYWdzdGVwMSQvCit0dAl0ZXgtc3JjL3RleGluZm8udGV4CS9ee1xcbGV0XFx0 ZW50dD1cXHNlY3R0IFxcbGV0XFx0dD1cXHNlY3R0IFxcbGV0XFxzZj1cXHNlY3R0JC8KK3R0Zm9u dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHR0Zm9udCA9IFxcdCQvCiB0dHlfcmVhZF9h dmFpbF9pbnB1dAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnR0eV9yZWFkX2F2YWlsX2lu cHV0IChzdHJ1Y3QgdGVybWluYWwgKnRlcm1pbmFsLCQvCiB0dHlwZXNlZW4JYy1zcmMvZXRhZ3Mu YwkyNDMwCit0dXJub2ZmYWN0aXZlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdHVybm9m ZmFjdGl2ZXtcXGxldCI9XFxub3JtYWxkb3VibGVxdW90ZSQvCiB0eXBkZWYJYy1zcmMvZXRhZ3Mu YwkyNDM0CiB0eXBlCWMtc3JjL2VtYWNzL3NyYy9nbWFsbG9jLmMJMTQ1CiB0eXBlCWMtc3JjL2Vt YWNzL3NyYy9saXNwLmgJMTk3MwpAQCAtNDI4NywxMCArNDU4MSwyMSBAQCB0eXBlCWMtc3JjL2Vt YWNzL3NyYy9saXNwLmgJMjMwNAogdHlwZQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTIzNjQKIHR5 cGUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkzMDI1CiB0eXBlCWMtc3JjL2V0YWdzLmMJMjI3MQor dHlwZWZuaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZue1xcZGVm bWV0aHBhcnNlYm9keVxcRWRlZnR5cGVmblxcZGVmdHlwLwordHlwZWZuaGVhZGVyeAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGVmbmhlYWRlciAjMSMyIzN7XFxkZWZ0eXBlZm5o ZWFkZXJ4eyMxfXsvCit0eXBlZm54XGRlZnR5cGVmbmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGRlZnR5cGVmbntcXGRlZm1ldGhwYXJzZWJvZHlcXEVkZWZ0eXBlZm5cXGRlZnR5 cC8KIHR5cGVmdW5hcmdzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZnR5cGVmdW5hcmdzIHsj M31cXGVuZGdyb3VwICUkLwogdHlwZWZ1bmFyZ3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm dHlwZWZ1bmFyZ3MgeyM0fVxcZW5kZ3JvdXAgJSQvCit0eXBlZnVuaGVhZGVyCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZ1bntcXGRlZnBhcnNlYm9keVxcRWRlZnR5cGVmdW5c XGRlZnR5cGVmLwordHlwZWZ1bmhlYWRlcngJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxk ZWZ0eXBlZnVuaGVhZGVyICMxIzJ7XFxkZWZ0eXBlZnVuaGVhZGVyeHsjMX0jLwordHlwZWZ1bnhc ZGVmdHlwZWZ1bmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGVmdW57 XFxkZWZwYXJzZWJvZHlcXEVkZWZ0eXBlZnVuXFxkZWZ0eXBlZi8KIHR5cGVtYXJnaW4JdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcbmV3c2tpcFxcZGVmdHlwZW1hcmdpbiBcXGRlZnR5cGVtYXJnaW49 MTJwdCQvCiB0eXBlbWFyZ2luCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXHJsYXB7XFxyaWdodGxp bmV7e1xccm0gIzJ9XFxoc2tpcCBcXGRlZnR5cGVtYXJnaW59fX0lLwordHlwZW1hcmdpbgl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxzZXRib3gwPVxcaGJveHtcXGhza2lwIFxcZGVmbGFzdGFyZ21h cmdpbntcXHJtICMyfVxcaHMvCit0eXBldmFyaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcZGVmdHlwZXZhcntcXGRlZnZhcnBhcnNlYm9keVxcRWRlZnR5cGV2YXJcXGRlZnR5Lwor dHlwZXZhcnhcZGVmdHlwZXZhcmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRl ZnR5cGV2YXJ7XFxkZWZ2YXJwYXJzZWJvZHlcXEVkZWZ0eXBldmFyXFxkZWZ0eS8KK3R5cGV2cmhl YWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGV2cntcXGRlZnZycGFyc2Vi b2R5XFxFZGVmdHlwZXZyXFxkZWZ0eXBldi8KK3R5cGV2cnhcZGVmdHlwZXZyaGVhZGVyCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZXZye1xcZGVmdnJwYXJzZWJvZHlcXEVkZWZ0 eXBldnJcXGRlZnR5cGV2LwogdQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTIzOTcKIHVfYW55CWMt c3JjL2VtYWNzL3NyYy9saXNwLmgJMjIxNAogdV9ib29sZndkCWMtc3JjL2VtYWNzL3NyYy9saXNw LmgJMjM3MQpAQCAtNDMwMywxMyArNDYwOCw0NCBAQCB1X21hcmtlcgljLXNyYy9lbWFjcy9zcmMv bGlzcC5oCTIyMTYKIHVfb2JqZndkCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMjM3MgogdV9vdmVy bGF5CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMjIxNwogdV9zYXZlX3ZhbHVlCWMtc3JjL2VtYWNz L3NyYy9saXNwLmgJMjIxOAordW5hcmdzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGJlZ2luZ3Jv dXBcXGRlZm5hbWUgeyMyfXsjMX1cXGRlZnVuYXJnc3sjM31cXGVuZGdyb3UvCiB1bmFyZ3MJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmdW5hcmdzIHsjMn1cXGVuZGdyb3VwICUkLwogdW5hcmdz CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZnVuYXJncyB7IzN9XFxlbmRncm91cCAlJC8KIHVu YmxvY2tfaW5wdXQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL151bmJsb2NrX2lucHV0ICh2 b2lkKSQvCiB1bmJsb2NrX2lucHV0X3RvCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9edW5i bG9ja19pbnB1dF90byAoaW50IGxldmVsKSQvCiB1bmNoYXIJYy1zcmMvaC5oCTk5CiB1bmV4cGFu ZC1hYmJyZXYJYy1zcmMvYWJicmV2LmMJL15ERUZVTiAoInVuZXhwYW5kLWFiYnJldiIsIEZ1bmV4 cGFuZF9hYmJyZXYsIFN1bmV4cC8KK3VuaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcZGVmdW57XFxkZWZwYXJzZWJvZHlcXEVkZWZ1blxcZGVmdW54XFxkZWZ1bmhlYWRlci8KIHVu aXYJbWVyYy1zcmMvYWNjdW11bGF0b3IubQkvXjotIGltcG9ydF9tb2R1bGUgdW5pdi4kLwordW5u Y2hmb3Blbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHVubmNoZm9wZW4gIzF7JSQvCit1 bm5jaGZwbGFpbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHVubmNoZnBsYWluICMxeyUk LwordW5udW1iY2hhcGVudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL14gICAgICBcXGxldFxcdW5u dW1iY2hhcGVudHJ5ID0gXFxzaG9ydHVubnVtYmVyZWRlbnRyeS8KK3VubnVtYmNoYXBlbnRyeQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHVubnVtYmNoYXBlbnRyeSMxIzJ7XFxkb2NoYXBl bnRyeXsjMX17IzJ9fSQvCit1bm51bWJjaGFwbWFjcm8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc Z2xvYmFsXFxsZXRcXHVubnVtYmNoYXBtYWNybz1cXHVubmNoZm9wZW59JC8KK3VubnVtYmNoYXBt YWNybwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcdW5udW1iY2hhcG1hY3Jv PVxcdW5uY2hmcGxhaW59JC8KK3VubnVtYmVyZWQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0 XFx1bm51bWJlcmVkPVxccmVsYXgkLwordW5udW1iZXJlZAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxvdXRlclxcZGVmXFx1bm51bWJlcmVke1xccGFyc2VhcmdcXHVubnVtYmVyZWR6enp9JC8KK3Vu bnVtYmVyZWRzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFx1bm51bWJlcmVkc2VjPVxc cmVsYXgkLwordW5udW1iZXJlZHNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVm XFx1bm51bWJlcmVkc2Vje1xccGFyc2VhcmdcXHVubnVtYmVyZWRzZWN6ei8KK3VubnVtYmVyZWRz ZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcdW5udW1iZXJlZHNlY3Rpb249XFxy ZWxheCQvCit1bm51bWJlcmVkc2Vjenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdW5u dW1iZXJlZHNlY3p6eiAjMXtcXHNlY2NoZWNre3VubnVtYmVyZWRzZWN9JS8KK3VubnVtYmVyZWRz dWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFx1bm51bWJlcmVkc3Vic2VjPVxccmVs YXgkLwordW5udW1iZXJlZHN1YnNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVm XFx1bm51bWJlcmVkc3Vic2Vje1xccGFyc2VhcmdcXHVubnVtYmVyZWRzdS8KK3VubnVtYmVyZWRz dWJzZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcdW5udW1iZXJlZHN1YnNlY3Rp b249XFxyZWxheCQvCit1bm51bWJlcmVkc3Vic2Vjenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcdW5udW1iZXJlZHN1YnNlY3p6eiAjMXtcXHNlY2NoZWNre3VubnVtYmVyZWRzdS8KK3Vu bnVtYmVyZWRzdWJzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFx1bm51bWJlcmVk c3Vic3Vic2VjPVxccmVsYXgkLwordW5udW1iZXJlZHN1YnN1YnNlYwl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxvdXRlclxcZGVmXFx1bm51bWJlcmVkc3Vic3Vic2Vje1xccGFyc2VhcmdcXHVubnVt YmVyZS8KK3VubnVtYmVyZWRzdWJzdWJzZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxl dFxcdW5udW1iZXJlZHN1YnN1YnNlY3Rpb249XFxyZWxheCQvCit1bm51bWJlcmVkc3Vic3Vic2Vj enp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdW5udW1iZXJlZHN1YnN1YnNlY3p6eiAj MXtcXHNlY2NoZWNre3VubnVtYmVyZS8KK3VubnVtYmVyZWR6enoJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFx1bm51bWJlcmVkenp6ICMxe1xcc2VjY2hlY2t7dW5udW1iZXJlZH0lJC8KK3Vu bnVtYm5vZGVyZWYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx1bm51bWJub2RlcmVme1xc aWZ4XFxsYXN0bm9kZVxccmVsYXhcXGVsc2UkLwordW5udW1ic2VjZW50cnkJdGV4LXNyYy90ZXhp bmZvLnRleAkvXiAgICAgIFxcZGVmXFx1bm51bWJzZWNlbnRyeSAjIzEjIzJ7fSQvCit1bm51bWJz ZWNlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHVubnVtYnNlY2VudHJ5IzEjMntc XGRvc2VjZW50cnl7IzF9eyMyfX0kLwordW5udW1ic2V0cmVmCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcdW5udW1ic2V0cmVmIzF7JSQvCit1bm51bWJzdWJzZWNlbnRyeQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eICAgICAgXFxkZWZcXHVubnVtYnN1YnNlY2VudHJ5ICMjMSMjMnt9JC8KK3Vu bnVtYnN1YnNlY2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdW5udW1ic3Vic2Vj ZW50cnkjMSMye1xcZG9zdWJzZWNlbnRyeXsjMX17IzJ9fS8KK3VubnVtYnN1YnN1YnNlY2VudHJ5 CXRleC1zcmMvdGV4aW5mby50ZXgJL14gICAgICBcXGRlZlxcdW5udW1ic3Vic3Vic2VjZW50cnkg IyMxIyMye30kLwordW5udW1ic3Vic3Vic2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFx1bm51bWJzdWJzdWJzZWNlbnRyeSMxIzJ7XFxkb3N1YnN1YnNlY2VudHJ5eyMxLwogdW5y YXZlbF91bml2CW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBzb21lIFtUXSBwcmVkIHVucmF2 ZWxfdW5pdih1bml2OjppbiwgVDo6b3V0KSBpcy8KIHVucmVhZF9zd2l0Y2hfZnJhbWUJYy1zcmMv ZW1hY3Mvc3JjL2tleWJvYXJkLmMJMjA0CiB1bnNpZ25lZHAJeS1zcmMvY2NjcC55CTExMgpAQCAt NDMxNyw3ICs0NjUzLDkgQEAgdW53aW5kCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMjk2MgogdW53 aW5kX2ludAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTI5NzIKIHVud2luZF9wdHIJYy1zcmMvZW1h Y3Mvc3JjL2xpc3AuaAkyOTY3CiB1bndpbmRfdm9pZAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTI5 NzYKK3VueFxkZWZ1bmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnVue1xc ZGVmcGFyc2Vib2R5XFxFZGVmdW5cXGRlZnVueFxcZGVmdW5oZWFkZXIvCiB1cGRhdGVfYWNjdW11 bGF0b3JfcHJlZAltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gcHJlZCB1cGRhdGVfYWNjdW11 bGF0b3JfcHJlZChwcmVkX2lkOjppbiwgcHJvY18vCit1cHBlcmNhc2VlbnVtZXJhdGUJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFx1cHBlcmNhc2VlbnVtZXJhdGV7JSQvCiB1cHJpbnRtYXhf dAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE0OQogdXByaW50bWF4X3QJYy1zcmMvZW1hY3Mvc3Jj L2xpc3AuaAkxNTQKIHVzYWdlCXBlcmwtc3JjL3lhZ3JpcC5wbAkvXnN1YiB1c2FnZSB7JC8KQEAg LTQzNDQsMjAgKzQ2ODIsNDUgQEAgdmFsdWUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAk2ODcKIHZh bHVlCXktc3JjL2NjY3AueQkxMTIKIHZhcgljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkxMTAy MwogdmFyCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMzEzNwordmFyCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcdmFyIyMxe1xccmVhbGJhY2tzbGFzaCB2YXIgeyMjMX19JC8KK3Zhcgl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHZhciMjMXtcXHJlYWxiYWNrc2xhc2ggdmFyIHsjIzF9 fSUkLwordmFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcdmFyPVxcaW5kZXhkdW1teWZv bnQkLwordmFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcdmFyPVxcc21hcnRpdGFsaWMk LwordmFyYXJncwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxiZWdpbmdyb3VwXFxkZWZuYW1lIHsj Mn17IzF9XFxkZWZ2YXJhcmdzeyMzfVxcZW5kZ3JvLwordmFyYXJncwl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGRlZnRwYXJncyAjMXtcXGJmIFxcZGVmdmFyYXJnc3sjMX19JC8KIHZhcmFy Z3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmdmFyYXJncyB7IzJ9XFxlbmRncm91cCAlJC8K IHZhcmFyZ3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmdmFyYXJncyB7IzN9XFxlbmRncm91 cCAlJC8KK3ZhcmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnZhcntcXGRl ZnZhcnBhcnNlYm9keVxcRWRlZnZhclxcZGVmdmFyeFxcZGVmdmEvCit2YXJwYXJzZWJvZHlcRWRl Zm9wdAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm9wdHtcXGRlZnZhcnBhcnNlYm9k eVxcRWRlZm9wdFxcZGVmb3B0eFxcZGVmb3AvCit2YXJwYXJzZWJvZHlcRWRlZnR5cGV2YXIJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBldmFye1xcZGVmdmFycGFyc2Vib2R5XFxF ZGVmdHlwZXZhclxcZGVmdHkvCit2YXJwYXJzZWJvZHlcRWRlZnZhcgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGRlZnZhcntcXGRlZnZhcnBhcnNlYm9keVxcRWRlZnZhclxcZGVmdmFyeFxc ZGVmdmEvCiB2YXJzZXQJbWVyYy1zcmMvYWNjdW11bGF0b3IubQkvXjotIGltcG9ydF9tb2R1bGUg dmFyc2V0LiQvCit2YXJ4XGRlZnZhcmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGRlZnZhcntcXGRlZnZhcnBhcnNlYm9keVxcRWRlZnZhclxcZGVmdmFyeFxcZGVmdmEvCiB2Y29w eQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9edmNvcHkgKExpc3BfT2JqZWN0IHYsIHB0cmRpZmZf dCBvZmZzZXQsIExpc3BfT2JqZWMvCiB2ZWN0b3JsaWtlX2hlYWRlcgljLXNyYy9lbWFjcy9zcmMv bGlzcC5oCTEzNDMKIHZlcmRlCWNwLXNyYy9jLkMJNDAKIHZlcmlmeS10YWdzLXRhYmxlLWZ1bmN0 aW9uCWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihkZWZ2YXIgdmVyaWZ5 LXRhZ3MtdGFibGUtZnVuY3Rpb24gbmlsJC8KIHZlcmlmeV9hc2NpaQljLXNyYy9lbWFjcy9zcmMv bGlzcC5oCS9eIyBkZWZpbmUgdmVyaWZ5X2FzY2lpKHN0cikgKHN0cikkLwogdmlnbm9yZQljLXNy Yy9ldGFncy5jCTI0MTcKK3ZpbmRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHZpbmRl eCB7XFx2cmluZGV4fSQvCiB2aXNpdC10YWdzLXRhYmxlCWVsLXNyYy9lbWFjcy9saXNwL3Byb2dt b2Rlcy9ldGFncy5lbAkvXihkZWZ1biB2aXNpdC10YWdzLXRhYmxlIChmaWxlICZvcHRpb25hbCBs b2NhbCkkLwogdmlzaXQtdGFncy10YWJsZS1idWZmZXIJZWwtc3JjL2VtYWNzL2xpc3AvcHJvZ21v ZGVzL2V0YWdzLmVsCS9eKGRlZnVuIHZpc2l0LXRhZ3MtdGFibGUtYnVmZmVyICgmb3B0aW9uYWwg Y29udCkkLwogdm9pZAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eSU5MSU5FIHZvaWQgKGNoZWNr X2NvbnNfbGlzdCkgKHZvaWQpIHsgbGlzcF9oX2NoZWMvCiB2b2lkZnVuY3B0cgljLXNyYy9lbWFj cy9zcmMvbGlzcC5oCTIxMDgKIHZvaWR2YWwJeS1zcmMvY2NjcC55CTExNQordnJoZWFkZXIJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ2cntcXGRlZnZycGFyc2Vib2R5XFxFZGVmdnJc XGRlZnZyeFxcZGVmdnJoZWFkLwordnJpdGVtaW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFx2cml0ZW1pbmRleCAjMXtcXGRvaW5kIHt2cn17XFxjb2RleyMxfX19JSQvCit2cnBhcnNl Ym9keVxFZGVmaXZhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZml2YXJ7XFxkZWZ2 cnBhcnNlYm9keVxcRWRlZml2YXJcXGRlZml2YXJ4XFxkZWYvCit2cnBhcnNlYm9keVxFZGVmdHAJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0cHtcXGRlZnZycGFyc2Vib2R5XFxFZGVm dHBcXGRlZnRweFxcZGVmdHBoZWFkLwordnJwYXJzZWJvZHlcRWRlZnR5cGV2cgl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGV2cntcXGRlZnZycGFyc2Vib2R5XFxFZGVmdHlwZXZy XFxkZWZ0eXBldi8KK3ZycGFyc2Vib2R5XEVkZWZ2cgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGRlZnZye1xcZGVmdnJwYXJzZWJvZHlcXEVkZWZ2clxcZGVmdnJ4XFxkZWZ2cmhlYWQvCit2 cnhcZGVmdnJoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ2cntcXGRlZnZy cGFyc2Vib2R5XFxFZGVmdnJcXGRlZnZyeFxcZGVmdnJoZWFkLwordnRhYmxlCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcdnRhYmxle1xcYmVnaW5ncm91cFxcaW5FTlZcXG9iZXlsaW5lc1xc b2JleXNwYWNlcy8KK3Z0YWJsZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcdnRhYmxl eCAjMV5eTXslJC8KK3cJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx3IzF7XFxsZWF2ZXZt b2RlXFxoYm94eyMxfX0kLwordwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHd7XFxyZWFs YmFja3NsYXNoIHcgfSUkLwordwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHd7XFxyZWFs YmFja3NsYXNoIHd9JC8KK3cJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFx3PVxcaW5kZXhk dW1teWZvbnQkLwogd2FpdF9zdGF0dXNfcHRyX3QJYy5jCTE2MQogd2FpdGluZ19mb3JfaW5wdXQJ Yy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJMTUwCiB3YXJuaW5nCXktc3JjL2NjY3AueQkvXndh cm5pbmcgKG1zZykkLwpAQCAtNDQxMCwxMyArNDc3MywyNSBAQCB4LWdldC1zZWxlY3Rpb24taW50 ZXJuYWwJYy5jCS9eREVGVU4gKCJ4LWdldC1zZWxlY3Rpb24taW50ZXJuYWwiLCBGeF9nZXRfc2Vs ZWN0aQogeGNhcl9hZGRyCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL154Y2FyX2FkZHIgKExpc3Bf T2JqZWN0IGMpJC8KIHhjZHJfYWRkcgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eeGNkcl9hZGRy IChMaXNwX09iamVjdCBjKSQvCiB4ZGlmZgltYWtlLXNyYy9NYWtlZmlsZQkvXnhkaWZmOiBFVEFH UyBFWFRBR1MgJHtpbmZpbGVzfSQvCit4aXRlbQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHhpdGVte1xcZXJybWVzc2FnZXtAeGl0ZW0gd2hpbGUgbm90IGluIGEgdGFibGUvCit4aXRlbQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHhpdGVtID0gXFxpbnRlcm5hbEJ4aXRlbSAlJC8K K3hpdGVtc3VidG9waXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbnRlcm5hbEJ4aXRl bSAiIzEie1xcZGVmXFx4aXRlbXN1YnRvcGl4eyMxfSBcXHMvCit4aXRlbXN1YnRvcGl4CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW50ZXJuYWxCeGl0ZW14ICIjMSJ7XFxkZWZcXHhpdGVt c3VidG9waXh7IzF9IFxcLworeGl0ZW14CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxceGl0 ZW14e1xcZXJybWVzc2FnZXtAeGl0ZW14IHdoaWxlIG5vdCBpbiBhIHRhYi8KK3hpdGVteAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHhpdGVteCA9IFxcaW50ZXJuYWxCeGl0ZW14ICUkLwor eGl0ZW16enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx4aXRlbXp6eiAjMXtcXGRvc3Vi aW5kIHtrd317XFxjb2RleyMxfX17Zm9yIHtcXGIvCit4a2V5CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxceGtleXtcXGtleX0kLwogeG1hbGxvYwljLXNyYy9ldGFncy5jCS9eeG1hbGxvYyAo c2l6ZV90IHNpemUpJC8KIHhuZXcJYy1zcmMvZXRhZ3MuYwkvXiNkZWZpbmUgeG5ldyhuLCBUeXBl KSAgICAgICgoVHlwZSAqKSB4bWFsbG9jICgobikgLworeHJkZWYJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFx4cmRlZiAjMSMyeyQvCiB4cmVhbGxvYwljLXNyYy9ldGFncy5jCS9eeHJlYWxs b2MgKHZvaWQgKnB0ciwgc2l6ZV90IHNpemUpJC8KK3hyZWYJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFx4cmVmIzF7U2VlIFxceHJlZlhbIzEsLCwsLCwsXX0kLwogeHJlZi1ldGFncy1sb2Nh dGlvbgllbC1zcmMvZW1hY3MvbGlzcC9wcm9nbW9kZXMvZXRhZ3MuZWwJL14oZGVmY2xhc3MgeHJl Zi1ldGFncy1sb2NhdGlvbiAoeHJlZi1sb2NhdGlvbikkLwogeHJlZi1sb2NhdGlvbi1saW5lCWVs LXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihjbC1kZWZtZXRob2QgeHJlZi1s b2NhdGlvbi1saW5lICgobCB4cmVmLWV0YWdzLWxvLwogeHJlZi1sb2NhdGlvbi1tYXJrZXIJZWwt c3JjL2VtYWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGNsLWRlZm1ldGhvZCB4cmVmLWxv Y2F0aW9uLW1hcmtlciAoKGwgeHJlZi1ldGFncy0vCiB4cmVmLW1ha2UtZXRhZ3MtbG9jYXRpb24J ZWwtc3JjL2VtYWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRlZnVuIHhyZWYtbWFrZS1l dGFncy1sb2NhdGlvbiAodGFnLWluZm8gZmlsZSkkLworeHJlZlgJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFx4cmVmWFsjMSwjMiwjMywjNCwjNSwjNl17XFxiZWdpbmdyb3VwJSQvCit4cmVm dGllCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXHhyZWZ0aWV7J3RpZX0kLwogeHJuZXcJ Yy1zcmMvZXRhZ3MuYwkvXiNkZWZpbmUgeHJuZXcob3AsIG4sIFR5cGUpICgob3ApID0gKFR5cGUg KikgeHJlYWxsLwogeHgJbWFrZS1zcmMvTWFrZWZpbGUJL154eD0idGhpcyBsaW5lIGlzIGhlcmUg YmVjYXVzZSBvZiBhIGZvbnRsb2NrIGJ1ZyQvCiB4eXoJcnVieS1zcmMvdGVzdDEucnUJL14gICAg YWxpYXNfbWV0aG9kIDp4eXosJC8KQEAgLTQ0NzYsOCArNDg1MSwyMiBAQCB6CWMuYwkxNDQKIHoJ Yy5jCTE2NAogegljcC1zcmMvY2xoZWlyLmhwcAk0OQogegljcC1zcmMvY2xoZWlyLmhwcAk1OAor enp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5mb2FwcGVuZGl4e1xccGFyc2Vhcmdc XGFwcGVuZGl4enp6fSQvCit6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvY2hh cHRlcntcXHBhcnNlYXJnXFxjaGFwdGVyenp6fSQvCit6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxpbmZvc2VjdGlvbntcXHBhcnNlYXJnXFxzZWN0aW9uenp6fSQvCit6enoJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvc3Vic2VjdGlvbntcXHBhcnNlYXJnXFxzdWJzZWN0 aW9uenp6fSQvCit6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvc3Vic3Vic2Vj dGlvbntcXHBhcnNlYXJnXFxzdWJzdWJzZWN0aW9uenp6fS8KK3p6egl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxvdXRlclxcZGVmXFxhcHBlbmRpeHtcXHBhcnNlYXJnXFxhcHBlbmRpeHp6en0kLwor enp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXGNoYXB0ZXJ7XFxwYXJzZWFy Z1xcY2hhcHRlcnp6en0kLworewl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHs9XFxteWxi cmFjZSQvCit7CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcez1cXHB0ZXhsYnJhY2UkLwog fAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZ8e3tcXHR0IFxcY2hhciAnMTc0fX0kLworfAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXR8PVxcbm9ybWFsdmVydGljYWxiYXIkLworfQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxsZXRcXH09XFxteXJicmFjZSQvCit9CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGxldFxcfT1cXHB0ZXhyYnJhY2UkLworfgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxjYXRjb2RlIGBcXF49NyBcXGNhdGNvZGUgYFxcXz04IFxcY2F0Y29kZSBgXFx+PTEzIFxcbGV0 Lwogfgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZ+e3tcXHR0IFxcY2hhciAnMTc2fX0kLwor fgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXR+PVxcbm9ybWFsdGlsZGUkLwogfkEJY3Atc3Jj L2MuQwkvXkE6On5BKCkge30kLwogfkIJY3Atc3JjL2MuQwkvXiAgICB+QigpIHt9OyQvCiB+TURp YWdBcnJheTIJY3Atc3JjL01EaWFnQXJyYXkyLmgJL14gIH5NRGlhZ0FycmF5MiAodm9pZCkgeyB9 JC8KZGlmZiAtLWdpdCBhL3Rlc3QvbWFudWFsL2V0YWdzL0NUQUdTLmdvb2RfdXBkYXRlIGIvdGVz dC9tYW51YWwvZXRhZ3MvQ1RBR1MuZ29vZF91cGRhdGUKaW5kZXggYzYxOGI5NTgyZGEuLjY0ZjAx ZjJjOWU0IDEwMDY0NAotLS0gYS90ZXN0L21hbnVhbC9ldGFncy9DVEFHUy5nb29kX3VwZGF0ZQor KysgYi90ZXN0L21hbnVhbC9ldGFncy9DVEFHUy5nb29kX3VwZGF0ZQpAQCAtMSw0ICsxLDYgQEAK IAorIgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHR1cm5vZmZhY3RpdmV7XFxsZXQiPVxc bm9ybWFsZG91YmxlcXVvdGUkLworIgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXQiPVxcYWN0 aXZlZG91YmxlcXVvdGUkLwogI2EtZGVmZXItd29yZAlmb3J0aC1zcmMvdGVzdC1mb3J0aC5mdGgJ L15kZWZlciAjYS1kZWZlci13b3JkJC8KICNzb21lLXN0b3JhZ2UJZm9ydGgtc3JjL3Rlc3QtZm9y dGguZnRoCS9eMjAwMCBidWZmZXI6ICNzb21lLXN0b3JhZ2UkLwogJDB4ODAJYy1zcmMvc3lzZGVw LmgJMzIKQEAgLTMzLDE0ICszNSwyOCBAQCAkdXNlcl9jb21tZW50X2xjCXBocC1zcmMvbGNlX2Z1 bmN0aW9ucy5waHAJMTE1CiAke0NIRUNLT0JKU30JbWFrZS1zcmMvTWFrZWZpbGUJL14ke0NIRUNL T0JKU306IENGTEFHUz0tZzMgLUROVUxMRlJFRUNIRUNLPTAkLwogJWNkaWZmCW1ha2Utc3JjL01h a2VmaWxlCS9eJWNkaWZmOiBDVEFHUyUgQ1RBR1MgJHtpbmZpbGVzfSQvCiAlZWRpZmYJbWFrZS1z cmMvTWFrZWZpbGUJL14lZWRpZmY6IEVUQUdTJSBFVEFHUyAke2luZmlsZXN9JC8KKyYJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcZnVuY3Rpb25wYXJlbnN7XFxib2xkYnJheFxcbGV0Jj1c XGFtcHJtXFxwYXJlbmNvLworJgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxub3JtYWxw YXJlbnN7XFxib2xkYnJheFxcbGV0Jj1cXGFtcG5yfSQvCisnCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcJ3t7J319JC8KKygJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcYW1wcm0j MSB7e1xccm1cXCYjMX1cXGxldCg9XFxvcHJtIFxcbGV0KT1cXGNscm1cXCB9LworKAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxnZGVmXFxib2xkYnJheHtcXGxldCg9XFxvcG5yXFxsZXQpPVxcY2xu clxcbGV0Wz1cXGxicmJcXGwvCisoCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXG9wcm0j MSB7e1xccm1cXGNoYXJgXFwofSMxIFxcYmYgXFxsZXQoPVxcb3BuZXN0ZWQgLworKAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxpZm51bSBcXHBhcmVuY291bnQ9MSB7XFxybSBcXGNoYXIgYFxcKX1c XHNsIFxcbGV0KD1cXG9wci8KICgkXywkZmxhZywkb3B0LCRmLCRyLEB0ZW1wCXBlcmwtc3JjL3lh Z3JpcC5wbAk4CiAoJHByb2csJF8sQGxpc3QJcGVybC1zcmMveWFncmlwLnBsCTM5CiAoJHN0cmlu ZywkZmxhZyxAc3RyaW5nLEB0ZW1wLEBsYXN0CXBlcmwtc3JjL3lhZ3JpcC5wbAk0MAogKGEtZm9y dGgtY29uc3RhbnQJZm9ydGgtc3JjL3Rlc3QtZm9ydGguZnRoCS9eY29uc3RhbnQgKGEtZm9ydGgt Y29uc3RhbnQkLwogKGFub3RoZXItZm9ydGgtd29yZCkJZm9ydGgtc3JjL3Rlc3QtZm9ydGguZnRo CS9eOiAoYW5vdGhlci1mb3J0aC13b3JkKSAoIC0tICkkLwogKGZvbykJZm9ydGgtc3JjL3Rlc3Qt Zm9ydGguZnRoCS9eOiAoZm9vKSAxIDskLworKQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVm XFxhbXBybSMxIHt7XFxybVxcJiMxfVxcbGV0KD1cXG9wcm0gXFxsZXQpPVxcY2xybVxcIH0vCisp CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXGJvbGRicmF4e1xcbGV0KD1cXG9wbnJcXGxl dCk9XFxjbG5yXFxsZXRbPVxcbGJyYlxcbC8KKyoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFwqe1xcaGZpbFxcYnJlYWtcXGhib3h7fVxcaWdub3Jlc3BhY2VzfSQvCisqCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGxldFxcKj1cXHB0ZXhzdGFyJC8KICsJcnVieS1zcmMvdGVzdC5yYgkvXiAg ICAgICAgZGVmICsoeSkkLwogKwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWYre3tcXHR0IFxc Y2hhciA0M319JC8KKysJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0Kz1cXG5vcm1hbHBsdXN9 JC8KKy4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFwuey5cXHNwYWNlZmFjdG9yPTMwMDAg fSQvCisuCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcLj1cXHB0ZXhkb3QkLwogLlBSRUNJ T1VTCW1ha2Utc3JjL01ha2VmaWxlCS9eLlBSRUNJT1VTOiBFVEFHUyBDVEFHUyBFVEFHUzE2IENU QUdTMTYgRVRBR1MxNyBDVEEvCiAvLm5vdGRlZglwcy1zcmMvcmZjMTI0NS5wcwkvXlwvLm5vdGRl ZiBcLy5ub3RkZWYgXC8ubm90ZGVmIFwvLm5vdGRlZiBcLy5ub3RkZWYgXC8ubm90LwogLy5ub3Rk ZWYJcHMtc3JjL3JmYzEyNDUucHMJL15cLy5ub3RkZWYgXC8ubm90ZGVmIFwvLm5vdGRlZiBcLy5u b3RkZWYgXC9zcGFjZSBcL2V4Y2xhbS8KQEAgLTE3MiwzNSArMTg4LDI2IEBAICR7Q0hFQ0tPQkpT fQltYWtlLXNyYy9NYWtlZmlsZQkvXiR7Q0hFQ0tPQkpTfTogQ0ZMQUdTPS1nMyAtRE5VTExGUkVF Q0hFQ0s9MCQvCiAyY29uc3QJZm9ydGgtc3JjL3Rlc3QtZm9ydGguZnRoCS9eMyA0IDJjb25zdGFu dCAyY29uc3QkLwogMnZhbAlmb3J0aC1zcmMvdGVzdC1mb3J0aC5mdGgJL14yY29uc3QgMnZhbHVl IDJ2YWwkLwogMnZhcglmb3J0aC1zcmMvdGVzdC1mb3J0aC5mdGgJL14ydmFyaWFibGUgMnZhciQv Cis6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcOntcXHNwYWNlZmFjdG9yPTEwMDAgfSQv CiA6YS1mb3J0aC1kaWN0aW9uYXJ5LWVudHJ5CWZvcnRoLXNyYy90ZXN0LWZvcnRoLmZ0aAkvXmNy ZWF0ZSA6YS1mb3J0aC1kaWN0aW9uYXJ5LWVudHJ5JC8KIDwJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmPHt7XFx0dCBcXGxlc3N9fSQvCis8CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldDw9 XFxub3JtYWxsZXNzJC8KIDw8CXJ1Ynktc3JjL3Rlc3QucmIJL14gICAgICAgIGRlZiA8PCh5KSQv CiA8PQlydWJ5LXNyYy90ZXN0LnJiCS9eICAgICAgICBkZWYgPD0oeSkkLwogPD0+CXJ1Ynktc3Jj L3Rlc3QucmIJL14gICAgICAgIGRlZiA8PT4oeSkkLwogPQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxnbG9iYWxcXGRlZj17e1xcdHQgXFxjaGFyIDYxfX19JC8KLT0JdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZ2xvYmFsXFxsZXRcXHNlY3Rpb24gPSBcXGFwcGVuZGl4c2VjJC8KLT0JdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHNlY3Rpb24gPSBcXG51bWJlcmVkc2VjJC8KLT0J dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHNlY3Rpb24gPSBcXHVubnVtYmVy ZWRzZWMkLwotPQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vic2VjdGlv biA9IFxcYXBwZW5kaXhzdWJzZWMkLwotPQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxc XGxldFxcc3Vic2VjdGlvbiA9IFxcbnVtYmVyZWRzdWJzZWMkLwotPQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vic2VjdGlvbiA9IFxcdW5udW1iZXJlZHN1YnNlYyQvCi09 CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdsb2JhbFxcbGV0XFxzdWJzdWJzZWN0aW9uID0gXFxh cHBlbmRpeHN1YnN1YnNlYyQvCi09CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdsb2JhbFxcbGV0 XFxzdWJzdWJzZWN0aW9uID0gXFxudW1iZXJlZHN1YnN1YnNlYyQvCi09CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGdsb2JhbFxcbGV0XFxzdWJzdWJzZWN0aW9uID0gXFx1bm51bWJlcmVkc3Vic3Vi c2VjJC8KID0vZglhZGEtc3JjL2V0YWdzLXRlc3QtZm9yLmFkYQkvXiAgIGZ1bmN0aW9uICI9IiAo TCwgUiA6IFN5c3RlbS5BZGRyZXNzKSByZXR1cm4gQm9vLwogPT0JcnVieS1zcmMvdGVzdC5yYgkv XiAgICAgICAgZGVmID09KHkpJC8KID09PQlydWJ5LXNyYy90ZXN0LnJiCS9eICAgICAgICBkZWYg PT09KHkpJC8KLT1caW5kZXhkdW1teWZvbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxj aXRlPVxcaW5kZXhkdW1teWZvbnQkLwotPVxyZWxheAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxs ZXRcXGFwcGVuZGl4PVxccmVsYXgkLwotPVxyZWxheAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxs ZXRcXGNoYXB0ZXI9XFxyZWxheCQvCi09XHJlbGF4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxl dFxcc2VjdGlvbj1cXHJlbGF4JC8KLT1ccmVsYXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0 XFxzdWJzZWN0aW9uPVxccmVsYXgkLwotPVxyZWxheAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxs ZXRcXHN1YnN1YnNlY3Rpb249XFxyZWxheCQvCi09XHNtYXJ0aXRhbGljCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGxldFxcY2l0ZT1cXHNtYXJ0aXRhbGljJC8KID1zdGFydHMtd2l0aC1lcXVhbHMh CXNjbS1zcmMvdGVzdC5zY20JL14oZGVmaW5lID1zdGFydHMtd2l0aC1lcXVhbHMhICN0KSQvCiA+ CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZj57e1xcdHQgXFxndHJ9fSQvCis+CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGxldD49XFxub3JtYWxncmVhdGVyJC8KID5maWVsZDEJZm9ydGgtc3Jj L3Rlc3QtZm9ydGguZnRoCS9eICAgOSAgIGZpZWxkICAgPmZpZWxkMSQvCiA+ZmllbGQyCWZvcnRo LXNyYy90ZXN0LWZvcnRoLmZ0aAkvXiAgIDUgICBmaWVsZCAgID5maWVsZDIkLworQAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXEB7QH0lJC8KK0AJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxAe3tcXHR0IFxcY2hhciAnMTAwfX0kLworQHNmCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGlmaG1vZGVcXGVkZWZcXEBzZntcXHNwYWNlZmFjdG9yXFx0aGVcXHNwYWNlZmFjdG9yfVxcXC9c XC8KK0BzZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXEBzZlxcZW1wdHkkLwogQQljLmMJ MTYyCiBBCWNwLXNyYy9jLkMJL152b2lkIEE6OkEoKSB7fSQvCiBBCWNwLXNyYy9jLkMJMTE3CkBA IC0zMjUsNiArMzMyLDExIEBAIENBVENIRVIJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkzMDIxCiBD RFIJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXkNEUiAoTGlzcF9PYmplY3QgYykkLwogQ0RSX1NB RkUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXkNEUl9TQUZFIChMaXNwX09iamVjdCBjKSQvCiBD RkxBR1MJbWFrZS1zcmMvTWFrZWZpbGUJL15DRkxBR1M9JHtXQVJOSU5HU30gLWFuc2kgLWczICMg LXBnIC1PJC8KK0NIQVBGb3Blbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXENIQVBGb3Bl bnskLworQ0hBUEZwbGFpbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXENIQVBGcGxhaW57 JC8KK0NIQVBQQUdvZGQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxDSEFQUEFHb2RkeyQv CitDSEFQUEFHb2ZmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcQ0hBUFBBR29mZnskLwor Q0hBUFBBR29uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcQ0hBUFBBR29ueyQvCiBDSEFS CWMtc3JjL2V0YWdzLmMJL14jZGVmaW5lIENIQVIoeCkJCSgodW5zaWduZWQgaW50KSh4KSAmIChD SEFSUyAtIDEpKS8KIENIQVIJeS1zcmMvY2NjcC5jCTcKIENIQVJBQ1RFUkJJVFMJYy1zcmMvZW1h Y3Mvc3JjL2xpc3AuaAkyNDU3CkBAIC01MzAsNiArNTQyLDcgQEAgRU1BQ1NfVUlOVAljLXNyYy9l bWFjcy9zcmMvbGlzcC5oCTk3CiBFTlRSWQljLXNyYy9zeXNkZXAuaAkvXiNkZWZpbmUJRU5UUlko bmFtZSkJCQkJCQkJICAgICAgXFwkLwogRU5VTV9CRgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9e I2RlZmluZSBFTlVNX0JGKFRZUEUpIGVudW0gVFlQRSQvCiBFTlVNX0JGCWMtc3JjL2VtYWNzL3Ny Yy9saXNwLmgJL14jZGVmaW5lIEVOVU1fQkYoVFlQRSkgdW5zaWduZWQgaW50JC8KK0VOVmNoZWNr CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRU5WY2hlY2t7JSQvCiBFUQljLXNyYy9lbWFj cy9zcmMvbGlzcC5oCS9eIyBkZWZpbmUgRVEoeCwgeSkgbGlzcF9oX0VRICh4LCB5KSQvCiBFUVVB TAl5LXNyYy9jY2NwLmMJMTIKIEVSTFNSQwltYWtlLXNyYy9NYWtlZmlsZQkvXkVSTFNSQz1nc19k aWFsb2cuZXJsIGxpbmVzLmVybCBsaXN0cy5lcmwkLwpAQCAtNTQzLDEzICs1NTYsMzcgQEAgRVhG VU4JYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXiNkZWZpbmUgRVhGVU4oZm5uYW1lLCBtYXhhcmdz KSBcXCQvCiBFWFRBR1MJbWFrZS1zcmMvTWFrZWZpbGUJL15FWFRBR1M6IGV4dGFncyAke2luZmls ZXN9IE1ha2VmaWxlJC8KIEVYVEVSTkFMTFlfVklTSUJMRQljLXNyYy9lbWFjcy9zcmMva2V5Ym9h cmQuYwkzNDk3CiBFWFRFUk5BTExZX1ZJU0lCTEUJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJ NDM3MgorRWFscGhhZW51bWVyYXRlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRWFscGhh ZW51bWVyYXRle1xcRWVudW1lcmF0ZX0kLworRWNhcHNlbnVtZXJhdGUJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxFY2Fwc2VudW1lcmF0ZXtcXEVlbnVtZXJhdGV9JC8KK0VjYXJ0b3VjaGUJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFY2FydG91Y2hleyUkLworRWRlc2NyaXB0aW9u CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRWRlc2NyaXB0aW9ue1xcRXRhYmxlfSUgTmVj ZXNzYXJ5IGtsdWRnZS4kLworRWRpc3BsYXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxF ZGlzcGxheXtcXGVuZGdyb3VwXFxhZnRlcmVudmJyZWFrfSUkLworRWV4YW1wbGUJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxFZXhhbXBsZXtcXEVsaXNwfSQvCitFZmx1c2hsZWZ0CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRWZsdXNobGVmdHtcXGVuZGdyb3VwXFxhZnRlcmVudmJy ZWFrfSUkLworRWZsdXNocmlnaHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFZmx1c2hy aWdodHtcXGVuZGdyb3VwXFxhZnRlcmVudmJyZWFrfSUkLworRWZvcm1hdAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXEVmb3JtYXR7XFxlbmRncm91cFxcYWZ0ZXJlbnZicmVha30kLworRWZ0 YWJsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVmdGFibGV7XFxlbmRncmFmXFxlbmRn cm91cFxcYWZ0ZXJlbnZicmVha30lJC8KK0Vncm91cAl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBc XGRlZlxcRWdyb3Vwe1xcZWdyb3VwXFxlbmRncm91cH0lJC8KK0VpZmNsZWFyCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcRWlmY2xlYXJ7fSQvCitFaWZzZXQJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxFaWZzZXR7fSQvCitFaWZ0ZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxFaWZ0ZXh7fSQvCitFbGlzcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVsaXNwe1xc ZW5kZ3JvdXBcXGFmdGVyZW52YnJlYWt9JSQvCiBFbXB0eU5tU3RyCXBhcy1zcmMvY29tbW9uLnBh cwkvXmZ1bmN0aW9uIEVtcHR5Tm1TdHIoKiA6IE5hbWVTdHJpbmcqKTskLwogRW52aXJvbm1lbnQJ dGV4LXNyYy9nemlwLnRleGkJL15Abm9kZSBFbnZpcm9ubWVudCwgVGFwZXMsIEFkdmFuY2VkIHVz YWdlLCBUb3AkLworRXF1b3RhdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVxdW90 YXRpb257XFxwYXJcXGVuZGdyb3VwXFxhZnRlcmVudmJyZWFrfSUkLwogRXJsYW5nX2Z1bmN0aW9u cwljLXNyYy9ldGFncy5jCS9eRXJsYW5nX2Z1bmN0aW9ucyAoRklMRSAqaW5mKSQvCiBFcmxhbmdf aGVscAljLXNyYy9ldGFncy5jCTU2NwogRXJsYW5nX3N1ZmZpeGVzCWMtc3JjL2V0YWdzLmMJNTY1 CiBFcnJTdHJUb05tU3RyCXBhcy1zcmMvY29tbW9uLnBhcwkvXmZ1bmN0aW9uIEVyclN0clRvTm1T dHI7KCooJC8KIEVycm9yX0luZm9ybWF0aW9uL3QJYWRhLXNyYy8yYXRhc3ByaS5hZHMJL14gICB0 eXBlIEVycm9yX0luZm9ybWF0aW9uIGlzIG5ldyBJbnRlcmZhY2VzLkMuUE9TSS8KK0VzbWFsbGV4 YW1wbGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFc21hbGxleGFtcGxle1xcRWxpc3B9 JC8KK0VzbWFsbGV4YW1wbGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxkZWZcXEVz bWFsbGV4YW1wbGV7XFxFc21hbGxsaXNwfSQvCitFc21hbGxsaXNwCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcRXNtYWxsbGlzcHtcXGVuZGdyb3VwXFxhZnRlcmVudmJyZWFrfSUkLworRXRh YmxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRXRhYmxle1xcZW5kZ3JhZlxcZW5kZ3Jv dXBcXGFmdGVyZW52YnJlYWt9JSQvCitFdGFibGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0 XFxFdGFibGU9XFxyZWxheH19JC8KK0V0ZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxF dGV4PVxcZW5kZ3JvdXB9JC8KK0V0aXRsZXBhZ2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxFdGl0bGVwYWdleyUkLworRXZ0YWJsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEV2 dGFibGV7XFxlbmRncmFmXFxlbmRncm91cFxcYWZ0ZXJlbnZicmVha30lJC8KIEV4aXRfTExfVGFz ay9wCWFkYS1zcmMvMmF0YXNwcmkuYWRiCS9eICAgcHJvY2VkdXJlIEV4aXRfTExfVGFzayBpcyQv CiBFeGl0X0xMX1Rhc2svcAlhZGEtc3JjLzJhdGFzcHJpLmFkcwkvXiAgIHByb2NlZHVyZSBFeGl0 X0xMX1Rhc2s7JC8KIEV4dHJhY3RDb21tZW50SW5mbwlwYXMtc3JjL2NvbW1vbi5wYXMJL15wcm9j ZWR1cmUgRXh0cmFjdENvbW1lbnRJbmZvOyAoKigkLwpAQCAtNjkwLDYgKzcyNywyMCBAQCBIQVNI X1RBQkxFX1AJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXkhBU0hfVEFCTEVfUCAoTGlzcF9PYmpl Y3QgYSkkLwogSEFTSF9UQUJMRV9TSVpFCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL15IQVNIX1RB QkxFX1NJWkUgKHN0cnVjdCBMaXNwX0hhc2hfVGFibGUgKmgpJC8KIEhBU0hfVkFMVUUJYy1zcmMv ZW1hY3Mvc3JjL2xpc3AuaAkvXkhBU0hfVkFMVUUgKHN0cnVjdCBMaXNwX0hhc2hfVGFibGUgKmgs IHB0cmRpZmZfdCBpLwogSEFWRV9OVEdVSQljLXNyYy9ldGFncy5jCTExNgorSEVBRElOR1NhZnRl cgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEhFQURJTkdTYWZ0ZXJ7XFxsZXRcXEhFQURJ TkdTaG9vaz1cXEhFQURJTkdTZG91Yi8KK0hFQURJTkdTZG91YmxlCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcSEVBRElOR1Nkb3VibGV7JC8KK0hFQURJTkdTZG91YmxlYWZ0ZXIJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcbGV0XFxIRUFESU5HU2RvdWJsZWFmdGVyPVxcSEVBRElOR1NhZnRl ciQvCitIRUFESU5HU2RvdWJsZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxIRUFESU5H U2RvdWJsZXh7JSQvCitIRUFESU5HU2hvb2sJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxI RUFESU5HU2FmdGVye1xcbGV0XFxIRUFESU5HU2hvb2s9XFxIRUFESU5HU2RvdWIvCitIRUFESU5H U2hvb2sJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxIRUFESU5HU3NpbmdsZWFmdGVye1xc bGV0XFxIRUFESU5HU2hvb2s9XFxIRUFESU4vCitIRUFESU5HU2hvb2sJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcbGV0XFxIRUFESU5HU2hvb2s9XFxyZWxheCQvCitIRUFESU5HU29mZgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXEhFQURJTkdTb2ZmeyQvCitIRUFESU5HU29uCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcSEVBRElOR1NvbntcXEhFQURJTkdTZG91YmxlfSQvCitIRUFE SU5HU29uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdsb2JhbFxcZGVmXFxIRUFESU5HU29ue1xc SEVBRElOR1Nkb3VibGV9fSQvCitIRUFESU5HU29uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGds b2JhbFxcZGVmXFxIRUFESU5HU29ue1xcSEVBRElOR1NzaW5nbGV9fSQvCitIRUFESU5HU3Npbmds ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEhFQURJTkdTc2luZ2xleyQvCitIRUFESU5H U3NpbmdsZWFmdGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcSEVBRElOR1NzaW5nbGVh ZnRlcntcXGxldFxcSEVBRElOR1Nob29rPVxcSEVBRElOLworSEVBRElOR1NzaW5nbGV4CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcSEVBRElOR1NzaW5nbGV4eyUkLwogSEVBUAljLXNyYy9l bWFjcy9zcmMvZ21hbGxvYy5jCTEzMQogSFRNTFNSQwltYWtlLXNyYy9NYWtlZmlsZQkvXkhUTUxT UkM9c29mdHdhcmVsaWJlcm8uaHRtbCBpbmRleC5zaHRtbCBhbGdydGhtcy5oLwogSFRNTF9oZWxw CWMtc3JjL2V0YWdzLmMJNTg0CkBAIC03NTEsNiArODAyLDcgQEAgSkFWQVNSQwltYWtlLXNyYy9N YWtlZmlsZQkvXkpBVkFTUkM9QVdURU11bC5qYXZhIEtleUV2ZS5qYXZhIFNNYW4uamF2YSBTeXND b2wuLwogS0JEX0JVRkZFUl9TSVpFCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTgyCiBLQllU RVMJb2JqYy1zcmMvUGFja0luc3AubQk1OAogS0VZX1RPX0NIQVIJYy1zcmMvZW1hY3Mvc3JjL2tl eWJvYXJkLmMJL14jZGVmaW5lIEtFWV9UT19DSEFSKGspIChYSU5UIChrKSAmICgoMSA8PCBDSEFS QUNURS8KK0wJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxMPVxccHRleEwkLwogTEFURVNU CW1ha2Utc3JjL01ha2VmaWxlCS9eTEFURVNUPTE3JC8KIExDRV9DT01NRU5UCXBocC1zcmMvbGNl X2Z1bmN0aW9ucy5waHAJMTMKIExDRV9DT01NRU5UX1RPT0wJcGhwLXNyYy9sY2VfZnVuY3Rpb25z LnBocAkxNwpAQCAtMTQwOCw2ICsxNDYwLDkgQEAgVGFza19UeXBlL2IJYWRhLXNyYy9ldGFncy10 ZXN0LWZvci5hZGEJL14gIHRhc2sgYm9keSBUYXNrX1R5cGUgaXMkLwogVGFza19UeXBlL2IJYWRh LXNyYy93YXJvcXVpZXJzLmFkYQkvXiAgdGFzayBib2R5IFRhc2tfVHlwZSBpcyQvCiBUYXNrX1R5 cGUvawlhZGEtc3JjL2V0YWdzLXRlc3QtZm9yLmFkYQkvXiAgdGFzayB0eXBlIFRhc2tfVHlwZSBp cyQvCiBUYXNrX1R5cGUvawlhZGEtc3JjL3dhcm9xdWllcnMuYWRhCS9eICB0YXNrIHR5cGUgVGFz a19UeXBlIGlzJC8KK1RlWAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXFRlWHtcXHJlYWxi YWNrc2xhc2ggVGVYfSQvCitUZVgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxUZVh7XFxy ZWFsYmFja3NsYXNoIFRlWH0lJC8KK1RlWAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXFRl WD1cXGluZGV4ZHVtbXl0ZXgkLwogVGVYX2NvbW1hbmRzCWMtc3JjL2V0YWdzLmMJL15UZVhfY29t bWFuZHMgKEZJTEUgKmluZikkLwogVGVYX2hlbHAJYy1zcmMvZXRhZ3MuYwk2NzQKIFRlWF9zdWZm aXhlcwljLXNyYy9ldGFncy5jCTY3MgpAQCAtMTY2Nyw1NTEgKzE3MjIsMjIgQEAgWVlfREVDTF9W QVJJQUJMRVMJL3Vzci9zaGFyZS9iaXNvbi9iaXNvbi5zaW1wbGUJMzkxCiBZYWNjX2VudHJpZXMJ Yy1zcmMvZXRhZ3MuYwkvXllhY2NfZW50cmllcyAoRklMRSAqaW5mKSQvCiBZYWNjX2hlbHAJYy1z cmMvZXRhZ3MuYwk2OTMKIFlhY2Nfc3VmZml4ZXMJYy1zcmMvZXRhZ3MuYwk2OTEKK1lhcHBlbmRp eGxldHRlcmFuZHR5cGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxZYXBwZW5kaXhsZXR0 ZXJhbmR0eXBleyUkLworWW5vdGhpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxZbm90 aGluZ3t9JC8KK1lwYWdlbnVtYmVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcWXBhZ2Vu dW1iZXJ7XFxmb2xpb30kLworWXNlY3Rpb25udW1iZXJhbmR0eXBlCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcWXNlY3Rpb25udW1iZXJhbmR0eXBleyUkLworWXRpdGxlCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcWXRpdGxle1xcdGhpc2NoYXB0ZXJ9JC8KIFoJYy1zcmMvaC5oCTEw MAorWwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxib2xkYnJheHtcXGxldCg9XFxvcG5y XFxsZXQpPVxcY2xuclxcbGV0Wz1cXGxicmJcXGwvCiBbXQlydWJ5LXNyYy90ZXN0LnJiCS9eICAg ICAgICBkZWYgW10oeSkkLwogW109CXJ1Ynktc3JjL3Rlc3QucmIJL14gICAgICAgIGRlZiBbXT0o eSwgdmFsKSQvCi1cCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcIHt7XFxmb250ZGltZW4y XFxmb250PVxcdGNsb3Nlc2F2ZXt9IH19JSQvCi1cCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdk ZWZcXHNlcHNwYWNlc3tcXGRlZiB7XFwgfX19JC8KLVwnCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcJ3t7J319JC8KLVwqCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcKntcXGhmaWxc XGJyZWFrXFxoYm94e31cXGlnbm9yZXNwYWNlc30kLwotXC4JdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFwuey5cXHNwYWNlZmFjdG9yPTMwMDAgfSQvCi1cOgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXDp7XFxzcGFjZWZhY3Rvcj0xMDAwIH0kLwotXEAJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxAe0B9JSQvCi1cQAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEB7e1xc dHQgXFxjaGFyICcxMDB9fSQvCi1cQ0hBUEZvcGVuCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcQ0hBUEZvcGVueyQvCi1cQ0hBUEZwbGFpbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XENIQVBGcGxhaW57JC8KLVxDSEFQUEFHb2RkCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc Q0hBUFBBR29kZHskLwotXENIQVBQQUdvZmYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxD SEFQUEFHb2ZmeyQvCi1cQ0hBUFBBR29uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcQ0hB UFBBR29ueyQvCi1cRU5WY2hlY2sJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFTlZjaGVj a3slJC8KLVxFYWxwaGFlbnVtZXJhdGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFYWxw aGFlbnVtZXJhdGV7XFxFZW51bWVyYXRlfSQvCi1cRWNhcHNlbnVtZXJhdGUJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxFY2Fwc2VudW1lcmF0ZXtcXEVlbnVtZXJhdGV9JC8KLVxFY2FydG91 Y2hlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRWNhcnRvdWNoZXslJC8KLVxFZGVzY3Jp cHRpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFZGVzY3JpcHRpb257XFxFdGFibGV9 JSBOZWNlc3Nhcnkga2x1ZGdlLiQvCi1cRWRpc3BsYXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxFZGlzcGxheXtcXGVuZGdyb3VwXFxhZnRlcmVudmJyZWFrfSUkLwotXEVleGFtcGxlCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRWV4YW1wbGV7XFxFbGlzcH0kLwotXEVmbHVzaGxl ZnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFZmx1c2hsZWZ0e1xcZW5kZ3JvdXBcXGFm dGVyZW52YnJlYWt9JSQvCi1cRWZsdXNocmlnaHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxFZmx1c2hyaWdodHtcXGVuZGdyb3VwXFxhZnRlcmVudmJyZWFrfSUkLwotXEVmb3JtYXQJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFZm9ybWF0e1xcZW5kZ3JvdXBcXGFmdGVyZW52YnJl YWt9JC8KLVxFZnRhYmxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRWZ0YWJsZXtcXGVu ZGdyYWZcXGVuZGdyb3VwXFxhZnRlcmVudmJyZWFrfSUkLwotXEVncm91cAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eICBcXGRlZlxcRWdyb3Vwe1xcZWdyb3VwXFxlbmRncm91cH0lJC8KLVxFaWZjbGVh cgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVpZmNsZWFye30kLwotXEVpZnNldAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEVpZnNldHt9JC8KLVxFaWZ0ZXgJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxFaWZ0ZXh7fSQvCi1cRWxpc3AJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxFbGlzcHtcXGVuZGdyb3VwXFxhZnRlcmVudmJyZWFrfSUkLwotXEVxdW90YXRpb24J dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFcXVvdGF0aW9ue1xccGFyXFxlbmRncm91cFxc YWZ0ZXJlbnZicmVha30lJC8KLVxFc21hbGxleGFtcGxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcRXNtYWxsZXhhbXBsZXtcXEVsaXNwfSQvCi1cRXNtYWxsZXhhbXBsZQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxnbG9iYWxcXGRlZlxcRXNtYWxsZXhhbXBsZXtcXEVzbWFsbGxpc3B9JC8K LVxFc21hbGxsaXNwCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcRXNtYWxsbGlzcHtcXGVu ZGdyb3VwXFxhZnRlcmVudmJyZWFrfSUkLwotXEV0YWJsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXEV0YWJsZXtcXGVuZGdyYWZcXGVuZGdyb3VwXFxhZnRlcmVudmJyZWFrfSUkLwotXEV0 aXRsZXBhZ2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFdGl0bGVwYWdleyUkLwotXEV2 dGFibGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxFdnRhYmxle1xcZW5kZ3JhZlxcZW5k Z3JvdXBcXGFmdGVyZW52YnJlYWt9JSQvCi1cSEVBRElOR1NhZnRlcgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXEhFQURJTkdTYWZ0ZXJ7XFxsZXRcXEhFQURJTkdTaG9vaz1cXEhFQURJTkdT ZG91Yi8KLVxIRUFESU5HU2RvdWJsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEhFQURJ TkdTZG91YmxleyQvCi1cSEVBRElOR1Nkb3VibGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcSEVBRElOR1Nkb3VibGV4eyUkLwotXEhFQURJTkdTb2ZmCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcSEVBRElOR1NvZmZ7JC8KLVxIRUFESU5HU29uCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcSEVBRElOR1NvbntcXEhFQURJTkdTZG91YmxlfSQvCi1cSEVBRElOR1Nvbgl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGRlZlxcSEVBRElOR1NvbntcXEhFQURJTkdTZG91 YmxlfX0kLwotXEhFQURJTkdTb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxkZWZc XEhFQURJTkdTb257XFxIRUFESU5HU3NpbmdsZX19JC8KLVxIRUFESU5HU3NpbmdsZQl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXEhFQURJTkdTc2luZ2xleyQvCi1cSEVBRElOR1NzaW5nbGVh ZnRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXEhFQURJTkdTc2luZ2xlYWZ0ZXJ7XFxs ZXRcXEhFQURJTkdTaG9vaz1cXEhFQURJTi8KLVxIRUFESU5HU3NpbmdsZXgJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxIRUFESU5HU3NpbmdsZXh7JSQvCi1cVGVYCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcVGVYe1xccmVhbGJhY2tzbGFzaCBUZVh9JC8KLVxUZVgJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxUZVh7XFxyZWFsYmFja3NsYXNoIFRlWH0lJC8KLVxZYXBwZW5k aXhsZXR0ZXJhbmR0eXBlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcWWFwcGVuZGl4bGV0 dGVyYW5kdHlwZXslJC8KLVxZbm90aGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXFlu b3RoaW5ne30kLwotXFlwYWdlbnVtYmVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcWXBh Z2VudW1iZXJ7XFxmb2xpb30kLwotXFlzZWN0aW9ubnVtYmVyYW5kdHlwZQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXFlzZWN0aW9ubnVtYmVyYW5kdHlwZXslJC8KLVxZdGl0bGUJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxZdGl0bGV7XFx0aGlzY2hhcHRlcn0kLwotXF8JdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxfe1xcbHZ2bW9kZSBcXGtlcm4uMDZlbSBcXHZib3h7XFxo cnVsZSB3aWR0aC4zZW0gLwotXF8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxfe3tcXHJl YWxiYWNrc2xhc2ggX319JSQvCi1cYAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGB7e2B9 fSQvCi1cYWJvdmVlbnZicmVhawl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFib3ZlZW52 YnJlYWt7e1xcYWR2YW5jZVxcYWJvdmVlbnZza2lwYW1vdW50IGJ5LwotXGFjdGl2ZWRvdWJsZXF1 b3RlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYWN0aXZlZG91YmxlcXVvdGV7e1xcdHQg XFxjaGFyICcwNDJ9fSQvCi1cYWN0aXZlcGFyZW5zCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcYWN0aXZlcGFyZW5zeyUkLwotXGFmb3VycGFwZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxhZm91cnBhcGVyeyQvCi1cYWZ0ZXJlbnZicmVhawl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGFmdGVyZW52YnJlYWt7XFxlbmRncmFmIFxcaWZkaW1cXGxhc3Rza2lwPFxcYWJvdmUv Ci1cYWxwaGFlbnVtZXJhdGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxhbHBoYWVudW1l cmF0ZXtcXGVudW1lcmF0ZXthfX0kLwotXGFwcGVuZGl4CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XG91dGVyXFxkZWZcXGFwcGVuZGl4e1xccGFyc2VhcmdcXGFwcGVuZGl4enp6fSQvCi1cYXBwZW5k aXhsZXR0ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxhcHBlbmRpeGxldHRlcntcXGNo YXJcXHRoZVxcYXBwZW5kaXhub30kLwotXGFwcGVuZGl4bm9kZXJlZgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGFwcGVuZGl4bm9kZXJlZntcXGlmeFxcbGFzdG5vZGVcXHJlbGF4XFxlbHNl JC8KLVxhcHBlbmRpeHNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxhcHBl bmRpeHNlY3tcXHBhcnNlYXJnXFxhcHBlbmRpeHNlY3Rpb256ei8KLVxhcHBlbmRpeHNlY3Rpb24J dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRlZlxcYXBwZW5kaXhzZWN0aW9ue1xccGFy c2VhcmdcXGFwcGVuZGl4c2VjdGkvCi1cYXBwZW5kaXhzZWN0aW9uenp6CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcYXBwZW5kaXhzZWN0aW9uenp6ICMxe1xcc2VjY2hlY2t7YXBwZW5kaXhz ZWN0aS8KLVxhcHBlbmRpeHNldHJlZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFwcGVu ZGl4c2V0cmVmIzF7JSQvCi1cYXBwZW5kaXhzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc b3V0ZXJcXGRlZlxcYXBwZW5kaXhzdWJzZWN7XFxwYXJzZWFyZ1xcYXBwZW5kaXhzdWJzZWMvCi1c YXBwZW5kaXhzdWJzZWN6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxhcHBlbmRpeHN1 YnNlY3p6eiAjMXtcXHNlY2NoZWNre2FwcGVuZGl4c3Vic2VjLwotXGFwcGVuZGl4c3Vic3Vic2Vj CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXGFwcGVuZGl4c3Vic3Vic2Vje1xc cGFyc2VhcmdcXGFwcGVuZGl4c3ViLwotXGFwcGVuZGl4c3Vic3Vic2Vjenp6CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcYXBwZW5kaXhzdWJzdWJzZWN6enogIzF7XFxzZWNjaGVja3thcHBl bmRpeHN1Yi8KLVxhcHBlbmRpeHp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFwcGVu ZGl4enp6ICMxe1xcc2VjY2hlY2t7YXBwZW5kaXh9JSQvCi1cYXNpcwl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGFzaXMjMXsjMX0kLwotXGF1dGhvcgl0ZXgtc3JjL3RleGluZm8udGV4CS9e ICAgXFxkZWZcXGF1dGhvcntcXHBhcnNlYXJnXFxhdXRob3J6enp9JSQvCi1cYXV0aG9yZm9udAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFxkZWZcXGF1dGhvcmZvbnR7XFxhdXRob3JybSBcXG5v cm1hbGJhc2VsaW5lc2tpcCA9LwotXGF1dGhvcnp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAg XFxkZWZcXGF1dGhvcnp6eiMjMXtcXGlmc2VlbmF1dGhvclxcZWxzZVxcdnNraXAgMHB0IC8KLVxi CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYiMjMXtcXHJlYWxiYWNrc2xhc2ggYiB7IyMx fX0kLwotXGIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxiIyMxe1xccmVhbGJhY2tzbGFz aCBiIHsjIzF9fSUkLwotXGIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxiIzF7e1xcYmYg IzF9fSQvCi1cYmFsYW5jZWNvbHVtbnMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxiYWxh bmNlY29sdW1uc3slJC8KLVxiZWdpbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVm XFxiZWdpbntcXHBhcnNlYXJnXFxiZWdpbnh4eH0kLwotXGJlZ2luZG91YmxlY29sdW1ucwl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGJlZ2luZG91YmxlY29sdW1uc3tcXGJlZ2luZ3JvdXAk LwotXGJlZ2lueHh4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYmVnaW54eHggIzF7JSQv Ci1cYmYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxiZntcXHJlYWxiYWNrc2xhc2ggYmYg fSQvCi1cYmYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxiZntcXHJlYWxiYWNrc2xhc2gg YmYgfSUkLwotXGJ1bGxldAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGJ1bGxldHskXFxw dGV4YnVsbGV0JH0kLwotXGJ5ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxi eWV7XFxwYWdlYWxpZ25tYWNyb1xcdHJhY2luZ3N0YXRzPTFcXHB0ZXgvCi1cY2Fwc2VudW1lcmF0 ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNhcHNlbnVtZXJhdGV7XFxlbnVtZXJhdGV7 QX19JC8KLVxjYXJ0Ym90CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2FydGJvdHtcXGhi b3ggdG8gXFxjYXJ0b3V0ZXJ7XFxoc2tpcFxcbHNraXAkLwotXGNhcnRvdWNoZQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxsb25nXFxkZWZcXGNhcnRvdWNoZXslJC8KLVxjYXJ0dG9wCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcY2FydHRvcHtcXGhib3ggdG8gXFxjYXJ0b3V0ZXJ7XFxoc2tp cFxcbHNraXAkLwotXGNibAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNibHt7XFxjaXJj bGVcXGNoYXInMDEyXFxoc2tpcCAtNnB0fX0kLwotXGNicgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGNicnt7XFxoc2tpcCA2cHRcXGNpcmNsZVxcY2hhcicwMTF9fSQvCi1cY2VudGVyCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2VudGVye1xccGFyc2VhcmdcXGNlbnRlcnp6en0k LwotXGNlbnRlcnp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNlbnRlcnp6eiAjMXt7 XFxhZHZhbmNlXFxoc2l6ZSBieSAtXFxsZWZ0c2tpcCQvCi1cY2hhcGJyZWFrCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcY2hhcGJyZWFre1xcZG9icmVhayBcXGNoYXBoZWFkaW5nc2tpcCB7 LTQwMDB9fSQvCi1cY2hhcGVudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2hhcGVu dHJ5IzEjMiMze1xcZG9jaGFwZW50cnl7IzJcXGxhYmVsc3BhY2UjMX0vCi1cY2hhcGVudHJ5Zm9u dHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwZW50cnlmb250c3tcXHNlY2ZvbnRz IFxccm19JC8KLVxjaGFwZm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwZm9u dHN7JSQvCi1cY2hhcGhlYWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwaGVh ZGluZ3tcXHBhcnNlYXJnXFxjaGFwaGVhZGluZ3p6en0kLwotXGNoYXBoZWFkaW5nenp6CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2hhcGhlYWRpbmd6enogIzF7XFxjaGFwYnJlYWsgJSQv Ci1cY2hhcG9kZHBhZ2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwb2RkcGFnZXtc XGNoYXBwYWdlciBcXGlmb2RkXFxwYWdlbm8gXFxlbHNlIFxcaC8KLVxjaGFwcGFnZXIJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwcGFnZXJ7XFxwYXJcXHZmaWxsXFxzdXBlcmVqZWN0 fSQvCi1cY2hhcHRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxjaGFwdGVy e1xccGFyc2VhcmdcXGNoYXB0ZXJ6enp9JC8KLVxjaGFwdGVybm9mb250cwl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGNoYXB0ZXJub2ZvbnRzeyUkLwotXGNoYXB0ZXJ6enoJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwdGVyenp6ICMxe1xcc2VjY2hlY2t7Y2hhcHRlcn0lJC8K LVxjaGFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2hhcntcXHJlYWxiYWNrc2xhc2gg Y2hhcn0kLwotXGNoYXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFye1xccmVhbGJh Y2tzbGFzaCBjaGFyfSUkLwotXGNoZm9wZW4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxj aGZvcGVuICMxIzJ7XFxjaGFwb2RkcGFnZSB7XFxjaGFwZm9udHMkLwotXGNoZnBsYWluCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2hmcGxhaW4gIzEjMnslJC8KLVxjaW5kZXgJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaW5kZXgge1xcY3BpbmRleH0kLwotXGNpbmRleHN1Ygl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNpbmRleHN1YiB7XFxiZWdpbmdyb3VwXFxvYmV5 bGluZXNcXGNpbmRleHN1Yn0kLwotXGNpdGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxj aXRlIyMxe1xccmVhbGJhY2tzbGFzaCBjaXRlIHsjIzF9fSQvCi1cY2l0ZQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGNpdGUjIzF7XFxyZWFsYmFja3NsYXNoIGNpdGUgeyMjMX19JSQvCi1c Y2xlYXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjbGVhcntcXHBhcnNlYXJnXFxjbGVh cnh4eH0kLwotXGNsZWFyeHh4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2xlYXJ4eHgg IzF7JC8KLVxjb2RlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY29kZSMjMXtcXHJlYWxi YWNrc2xhc2ggY29kZSB7IyMxfX0kLwotXGNvZGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxjb2RlIyMxe1xccmVhbGJhY2tzbGFzaCBjb2RlIHsjIzF9fSUkLwotXGNvbW1lbnQJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjb21tZW50e1xcY2F0Y29kZSA2ND1cXG90aGVyIFxcY2F0 Y29kZSAxMjM9XFxvdGhlLwotXGNvbW1lbnR4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxjb21tZW50eHh4ICMxe1xcY2F0Y29kZSA2ND0wIFxcY2F0Y29kZSAxMjM9MSBcXGMvCi1cY29u dGVudHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRlZlxcY29udGVudHN7JSQvCi1c Y29weXJpZ2h0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY29weXJpZ2h0e1xccmVhbGJh Y2tzbGFzaCBjb3B5cmlnaHQgfSUkLwotXGNvcHlyaWdodAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGNvcHlyaWdodHtcXHJlYWxiYWNrc2xhc2ggY29weXJpZ2h0fSQvCi1cY3JvcG1hcmtz CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY3JvcG1hcmtze1xcbGV0XFxvbmVwYWdlb3V0 PVxcY3JvcHBhZ2VvdXQgfSQvCi1cY3JvcHBhZ2VvdXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxjcm9wcGFnZW91dCMxe1xcaG9mZnNldD0wcHQgJSBtYWtlIHN1cmUgdGhpcyBkLwotXGN0 bAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGN0bHt7XFxjaXJjbGVcXGNoYXInMDEzXFxo c2tpcCAtNnB0fX0lIDZwdCBmcm9tIC8KLVxjdHIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxjdHJ7e1xcaHNraXAgNnB0XFxjaXJjbGVcXGNoYXInMDEwfX0kLwotXGN0cmwJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxjdHJsICMxe3tcXHR0IFxccmF3YmFja3NsYXNoIFxcaGF0fSMx fSQvCi1cZGVmY29kZWluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmY29kZWlu ZGV4e1xccGFyc2VhcmdcXG5ld2NvZGVpbmRleH0kLwotXGRlZmN2CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZGVmY3YgIzEge1xcZGVmXFxkZWZjdnR5cGV7IzF9JSQvCi1cZGVmY3Zhcmhl YWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZmN2YXJoZWFkZXIgIzEjMiMzeyUk LwotXGRlZmN2eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZmN2eCAjMSB7XFxlcnJt ZXNzYWdle0BkZWZjdnggaW4gaW52YWxpZCBjb24vCi1cZGVmZm4JdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxkZWZmbntcXGRlZm1ldGhwYXJzZWJvZHlcXEVkZWZmblxcZGVmZm54XFxkZWZm bmhlLwotXGRlZmZuaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmZm5oZWFk ZXIgIzEjMiMze1xcZG9pbmQge2ZufXtcXGNvZGV7IzJ9fSUkLwotXGRlZmZueAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGRlZmZueCAjMSB7XFxlcnJtZXNzYWdle0BkZWZmbnggaW4gaW52 YWxpZCBjb24vCi1cZGVmaW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZpbmRl eHtcXHBhcnNlYXJnXFxuZXdpbmRleH0kLwotXGRlZml2YXIJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxkZWZpdmFye1xcZGVmdnJwYXJzZWJvZHlcXEVkZWZpdmFyXFxkZWZpdmFyeFxcZGVm LwotXGRlZml2YXJoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZpdmFyaGVh ZGVyICMxIzIjM3slJC8KLVxkZWZpdmFyeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRl Zml2YXJ4ICMxIHtcXGVycm1lc3NhZ2V7QGRlZml2YXJ4IGluIGludmFsaWQvCi1cZGVmbWFjCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmbWFje1xcZGVmcGFyc2Vib2R5XFxFZGVmbWFj XFxkZWZtYWN4XFxkZWZtYWNoZS8KLVxkZWZtYWNoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxkZWZtYWNoZWFkZXIgIzEjMntcXGRvaW5kIHtmbn17XFxjb2RleyMxfX0lIE1hay8K LVxkZWZtYWN4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmbWFjeCAjMSB7XFxlcnJt ZXNzYWdle0BkZWZtYWN4IGluIGludmFsaWQgYy8KLVxkZWZtZXRob2QJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxkZWZtZXRob2R7XFxkZWZtZXRocGFyc2Vib2R5XFxFZGVmbWV0aG9kXFxk ZWZtZXQvCi1cZGVmbWV0aG9kaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVm bWV0aG9kaGVhZGVyICMxIzIjM3slJC8KLVxkZWZtZXRob2R4CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcZGVmbWV0aG9keCAjMSB7XFxlcnJtZXNzYWdle0BkZWZtZXRob2R4IGluIGludi8K LVxkZWZtZXRocGFyc2Vib2R5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmbWV0aHBh cnNlYm9keSAjMSMyIzMjNCB7XFxiZWdpbmdyb3VwXFxpbkVOViAvCi1cZGVmbmFtZQl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm5hbWUgIzEjMnslJC8KLVxkZWZvcAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGRlZm9wICMxIHtcXGRlZlxcZGVmb3B0eXBleyMxfSUkLwotXGRl Zm9waGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmb3BoZWFkZXIgIzEjMiMz eyUkLwotXGRlZm9wcGFyc2Vib2R5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmb3Bw YXJzZWJvZHkgIzEjMiMzIzQjNSB7XFxiZWdpbmdyb3VwXFxpbkVOViAvCi1cZGVmb3B0CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmb3B0e1xcZGVmdmFycGFyc2Vib2R5XFxFZGVmb3B0 XFxkZWZvcHR4XFxkZWZvcC8KLVxkZWZvcHRoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxkZWZvcHRoZWFkZXIgIzEjMntcXGRvaW5kIHt2cn17XFxjb2RleyMxfX0lIE1hay8KLVxk ZWZvcHR4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmb3B0eCAjMSB7XFxlcnJtZXNz YWdle0BkZWZvcHR4IGluIGludmFsaWQgYy8KLVxkZWZvcHZhcnBhcnNlYm9keQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGRlZm9wdmFycGFyc2Vib2R5ICMxIzIjMyM0IzUge1xcYmVnaW5n cm91cFxcaW5FLwotXGRlZm9weAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm9weCAj MSB7XFxlcnJtZXNzYWdle0BkZWZvcHggaW4gaW52YWxpZCBjb24vCi1cZGVmcGFyc2Vib2R5CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmcGFyc2Vib2R5ICMxIzIjM3tcXGJlZ2luZ3Jv dXBcXGluRU5WJSBFbnZpcm8vCi1cZGVmc3BlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGRlZnNwZWN7XFxkZWZwYXJzZWJvZHlcXEVkZWZzcGVjXFxkZWZzcGVjeFxcZGVmc3AvCi1cZGVm c3BlY2hlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnNwZWNoZWFkZXIgIzEj MntcXGRvaW5kIHtmbn17XFxjb2RleyMxfX0lIE1hLwotXGRlZnNwZWN4CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcZGVmc3BlY3ggIzEge1xcZXJybWVzc2FnZXtAZGVmc3BlY3ggaW4gaW52 YWxpZC8KLVxkZWZ0cAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnRwe1xcZGVmdnJw YXJzZWJvZHlcXEVkZWZ0cFxcZGVmdHB4XFxkZWZ0cGhlYWQvCi1cZGVmdHBhcmdzCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHBhcmdzICMxe1xcYmYgXFxkZWZ2YXJhcmdzeyMxfX0k LwotXGRlZnRwaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHBoZWFkZXIg IzEjMiMze1xcZG9pbmQge3RwfXtcXGNvZGV7IzJ9fSUkLwotXGRlZnRweAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGRlZnRweCAjMSB7XFxlcnJtZXNzYWdle0BkZWZ0cHggaW4gaW52YWxp ZCBjb24vCi1cZGVmdHlwZWZuCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZu e1xcZGVmbWV0aHBhcnNlYm9keVxcRWRlZnR5cGVmblxcZGVmdHlwLwotXGRlZnR5cGVmbmhlYWRl cgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGVmbmhlYWRlciAjMSMyIzN7XFxk ZWZ0eXBlZm5oZWFkZXJ4eyMxfXsvCi1cZGVmdHlwZWZuaGVhZGVyeAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGRlZnR5cGVmbmhlYWRlcnggIzEjMiMzICM0XFxyZWxheHslJC8KLVxkZWZ0 eXBlZm54CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZueCAjMSB7XFxlcnJt ZXNzYWdle0BkZWZ0eXBlZm54IGluIGludi8KLVxkZWZ0eXBlZnVuCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZGVmdHlwZWZ1bntcXGRlZnBhcnNlYm9keVxcRWRlZnR5cGVmdW5cXGRlZnR5 cGVmLwotXGRlZnR5cGVmdW5hcmdzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlw ZWZ1bmFyZ3MgIzF7JSQvCi1cZGVmdHlwZWZ1bmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGRlZnR5cGVmdW5oZWFkZXIgIzEjMntcXGRlZnR5cGVmdW5oZWFkZXJ4eyMxfSMvCi1c ZGVmdHlwZWZ1bmhlYWRlcngJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBlZnVu aGVhZGVyeCAjMSMyICMzXFxyZWxheHslJC8KLVxkZWZ0eXBldW54CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZGVmdHlwZXVueCAjMSB7XFxlcnJtZXNzYWdle0BkZWZ0eXBldW54IGluIGlu di8KLVxkZWZ0eXBldmFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZXZhcntc XGRlZnZhcnBhcnNlYm9keVxcRWRlZnR5cGV2YXJcXGRlZnR5LwotXGRlZnR5cGV2YXJoZWFkZXIJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBldmFyaGVhZGVyICMxIzJ7JSQvCi1c ZGVmdHlwZXZhcngJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBldmFyeCAjMSB7 XFxlcnJtZXNzYWdle0BkZWZ0eXBldmFyeCBpbiBpLwotXGRlZnR5cGV2cgl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGRlZnR5cGV2cntcXGRlZnZycGFyc2Vib2R5XFxFZGVmdHlwZXZyXFxk ZWZ0eXBldi8KLVxkZWZ0eXBldnJoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxk ZWZ0eXBldnJoZWFkZXIgIzEjMiMze1xcZG9pbmQge3ZyfXtcXGNvZGV7IzN9fS8KLVxkZWZ0eXBl dnJ4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZXZyeCAjMSB7XFxlcnJtZXNz YWdle0BkZWZ0eXBldnJ4IGluIGludi8KLVxkZWZ1bgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGRlZnVue1xcZGVmcGFyc2Vib2R5XFxFZGVmdW5cXGRlZnVueFxcZGVmdW5oZWFkZXIvCi1c ZGVmdW5hcmdzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdW5hcmdzICMxe1xcZnVu Y3Rpb25wYXJlbnMgXFxzbCQvCi1cZGVmdW5oZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxkZWZ1bmhlYWRlciAjMSMye1xcZG9pbmQge2ZufXtcXGNvZGV7IzF9fSUgTWFrZS8KLVxk ZWZ1bngJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ1bnggIzEge1xcZXJybWVzc2Fn ZXtAZGVmdW54IGluIGludmFsaWQgY29uLwotXGRlZnZhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGRlZnZhcntcXGRlZnZhcnBhcnNlYm9keVxcRWRlZnZhclxcZGVmdmFyeFxcZGVmdmEv Ci1cZGVmdmFyYXJncwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnZhcmFyZ3MgIzF7 XFxub3JtYWxwYXJlbnMgIzElJC8KLVxkZWZ2YXJoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxkZWZ2YXJoZWFkZXIgIzEjMntcXGRvaW5kIHt2cn17XFxjb2RleyMxfX0lIE1hay8K LVxkZWZ2YXJwYXJzZWJvZHkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ2YXJwYXJz ZWJvZHkgIzEjMiMze1xcYmVnaW5ncm91cFxcaW5FTlYlIEVudi8KLVxkZWZ2YXJ4CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdmFyeCAjMSB7XFxlcnJtZXNzYWdle0BkZWZ2YXJ4IGlu IGludmFsaWQgYy8KLVxkZWZ2cgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnZye1xc ZGVmdnJwYXJzZWJvZHlcXEVkZWZ2clxcZGVmdnJ4XFxkZWZ2cmhlYWQvCi1cZGVmdnJoZWFkZXIJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ2cmhlYWRlciAjMSMyIzN7XFxkb2luZCB7 dnJ9e1xcY29kZXsjMn19JSQvCi1cZGVmdnJwYXJzZWJvZHkJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxkZWZ2cnBhcnNlYm9keSAjMSMyIzMjNCB7XFxiZWdpbmdyb3VwXFxpbkVOViAlJC8K LVxkZWZ2cngJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ2cnggIzEge1xcZXJybWVz c2FnZXtAZGVmdnJ4IGluIGludmFsaWQgY29uLwotXGRlc2NyaXB0aW9uCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcZGVzY3JpcHRpb257XFx0YWJsZXp7XFxkb250aW5kZXh9ezF9e317fXt9 e319JC8KLVxkZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRme1xcbGV0XFx0ZW50dD1c XGRlZnR0IFxcbGV0XFx0ZW5iZiA9IFxcZGVmYmYgXFxiZn0vCi1cZGZuCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcZGZuIyMxe1xccmVhbGJhY2tzbGFzaCBkZm4geyMjMX19JC8KLVxkaXJl bnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRpcmVudHJ5e1xcYmVnaW5ncm91cFxc ZGlyZW50cnl4eHh9JC8KLVxkaXJlbnRyeXh4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsb25n XFxkZWZcXGRpcmVudHJ5eHh4ICMxXFxlbmQgZGlyZW50cnl7XFxlbmRncm91cFxcaWcvCi1cZGlz cGxheQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRpc3BsYXl7XFxiZWdpbmdyb3VwXFxp bkVOViAlVGhpcyBncm91cCBlbmRzIGF0LwotXGRtbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGRtbiMxe1xcdGhpbnNwYWNlICMxfSQvCi1cZG9icmVhawl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGRvYnJlYWsjMSMye1xccGFyXFxpZmRpbVxcbGFzdHNraXA8IzFcXHJlbW92ZWxh c3QvCi1cZG9jaGFwZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb2NoYXBlbnRy eSMxIzJ7JSQvCi1cZG9jb2RlaW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb2Nv ZGVpbmRleCMxe1xcZWRlZlxcaW5kZXhuYW1leyMxfVxccGFyc2VhcmdcXHNpLwotXGRvaW5kCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9pbmQgIzEjMnslJC8KLVxkb2luZGV4CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9pbmRleCMxe1xcZWRlZlxcaW5kZXhuYW1leyMxfVxc cGFyc2VhcmdcXHNpbmdsZS8KLVxkb25vZGVyZWYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxkb25vZGVyZWZ7XFxpZnhcXGxhc3Rub2RlXFxyZWxheFxcZWxzZSQvCi1cZG9udGluZGV4CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9udGluZGV4ICMxe30kLwotXGRvcGFnZW5vCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9wYWdlbm8jMXt7XFxybSAjMX19JC8KLVxkb3By aW50aW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3ByaW50aW5kZXgjMXslJC8K LVxkb3NlY2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9zZWNlbnRyeSMxIzJ7 JSQvCi1cZG9zZXRxCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9zZXRxICMxIzJ7e1xc bGV0XFxmb2xpbz0wIFxcdHVybm9mZmFjdGl2ZSUkLwotXGRvc2hvcnRwYWdlbm8JdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3Nob3J0cGFnZW5vIzF7e1xccm0gIzF9fSQvCi1cZG9zdWJp bmQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3N1YmluZCAjMSMyIzN7JSQvCi1cZG9z dWJzZWNlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRvc3Vic2VjZW50cnkjMSMy eyUkLwotXGRvc3Vic3Vic2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3N1 YnN1YnNlY2VudHJ5IzEjMnslJC8KLVxkb3RzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc ZG90c3skXFxsZG90cyR9JC8KLVxkb3RzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG90 c3tcXHJlYWxiYWNrc2xhc2ggZG90cyB9JSQvCi1cZG90cwl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGRvdHN7XFxyZWFsYmFja3NsYXNoIGRvdHN9JC8KLVxkb3VibGVjb2x1bW5vdXQJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3VibGVjb2x1bW5vdXR7XFxzcGxpdHRvcHNraXA9 XFx0b3Bza2lwIFxcc3BsaXQvCi1cZW1waAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGVt cGgjIzF7XFxyZWFsYmFja3NsYXNoIGVtcGggeyMjMX19JC8KLVxlbmQJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxlbmR7XFxwYXJzZWFyZ1xcZW5keHh4fSQvCi1cZW5kZG91YmxlY29sdW1u cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGVuZGRvdWJsZWNvbHVtbnN7XFxvdXRwdXQ9 e1xcYmFsYW5jZWNvbHVtbnN9XFxlai8KLVxlbmR4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxlbmR4eHggIzF7JSQvCi1cZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxl bnRyeSAjMSMye1xcYmVnaW5ncm91cCQvCi1cZW51bWVyYXRlCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcZW51bWVyYXRle1xccGFyc2VhcmdcXGVudW1lcmF0ZXp6en0kLwotXGVudW1lcmF0 ZXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxlbnVtZXJhdGV5ICMxICMyXFxlbmRlbnVt ZXJhdGV5eyUkLwotXGVudW1lcmF0ZXp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGVu dW1lcmF0ZXp6eiAjMXtcXGVudW1lcmF0ZXkgIzEgIFxcZW5kZW51bWVyYXRlLwotXGVxdWl2CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZXF1aXZ7XFxsZWF2ZXZtb2RlXFxsb3dlci4xZXhc XGhib3ggdG8gMWVte1xcaGZpbC8KLVxlcXVpdgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGVxdWl2e1xccmVhbGJhY2tzbGFzaCBlcXVpdn0kLwotXGVycm9yCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZXJyb3J7XFxsZWF2ZXZtb2RlXFxsb3dlci43ZXhcXGNvcHlcXGVycm9yYm94 fSQvCi1cZXJyb3JFCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZXJyb3JFIzF7JC8KLVxl dmVuZm9vdGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGV2ZW5mb290aW5ne1xccGFy c2VhcmdcXGV2ZW5mb290aW5neHh4fSQvCi1cZXZlbmhlYWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxldmVuaGVhZGluZ3tcXHBhcnNlYXJnXFxldmVuaGVhZGluZ3h4eH0kLwotXGV2 ZXJ5Zm9vdGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGV2ZXJ5Zm9vdGluZ3tcXHBh cnNlYXJnXFxldmVyeWZvb3Rpbmd4eHh9JC8KLVxldmVyeWhlYWRpbmcJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxldmVyeWhlYWRpbmd7XFxwYXJzZWFyZ1xcZXZlcnloZWFkaW5neHh4fSQv Ci1cZXdib3QJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxld2JvdHtcXHZydWxlIGhlaWdo dDBwdCBkZXB0aFxcY29ybmVydGhpY2sgd2lkdC8KLVxld3RvcAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGV3dG9we1xcdnJ1bGUgaGVpZ2h0XFxjb3JuZXJ0aGljayBkZXB0aDBwdCB3aWR0 LwotXGV4ZGVudAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGV4ZGVudHtcXHBhcnNlYXJn XFxleGRlbnR5eXl9JC8KLVxleGRlbnR5eXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxl eGRlbnR5eXkgIzF7e1xcaGZpbFxcYnJlYWtcXGhib3h7XFxrZXJuIC1cXGV4ZGVudC8KLVxleHBh bnNpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxleHBhbnNpb257XFxsZWF2ZXZtb2Rl XFxyYWlzZS4xZXhcXGhib3ggdG8gMWVte1xcLwotXGV4cGFuc2lvbgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGV4cGFuc2lvbntcXHJlYWxiYWNrc2xhc2ggZXhwYW5zaW9ufSQvCi1cZmls ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGZpbGUjIzF7XFxyZWFsYmFja3NsYXNoIGZp bGUgeyMjMX19JC8KLVxmaWxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZmlsZSMjMXtc XHJlYWxiYWNrc2xhc2ggZmlsZSB7IyMxfX0lJC8KLVxmaW5hbG91dAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGZpbmFsb3V0e1xcb3ZlcmZ1bGxydWxlPTBwdH0kLwotXGZpbmRleAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGZpbmRleCB7XFxmbmluZGV4fSQvCi1cZmluaXNodGl0 bGVwYWdlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZmluaXNodGl0bGVwYWdleyUkLwot XGZsdXNoY3IJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxmbHVzaGNye1xcaWZ4XFxwYXJc XGxpc3BwYXIgXFxkZWZcXG5leHQjIzF7fVxcZWxzZSAvCi1cZmx1c2hsZWZ0CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcZmx1c2hsZWZ0eyUkLwotXGZsdXNocmlnaHQJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxmbHVzaHJpZ2h0eyUkLwotXGZuaXRlbWluZGV4CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcZm5pdGVtaW5kZXggIzF7XFxkb2luZCB7Zm59e1xcY29kZXsjMX19 fSUkLwotXGZvcm1hdAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGZvcm1hdHtcXGJlZ2lu Z3JvdXBcXGluRU5WICVUaGlzIGdyb3VwIGVuZHMgYXQgLwotXGZyZW5jaHNwYWNpbmcJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxmcmVuY2hzcGFjaW5ne1xcc2Zjb2RlNDY9MTAwMCBcXHNm Y29kZTYzPTEwMDAgXFwvCi1cZnRhYmxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZnRh Ymxle1xcYmVnaW5ncm91cFxcaW5FTlZcXG9iZXlsaW5lc1xcb2JleXNwYWNlcy8KLVxnbG9nZ2lu Z2FsbAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGdsb2dnaW5nYWxse1xcYmVnaW5ncm91 cCBcXGdsb2JhbGRlZnMgPSAxIFxcbG9nZy8KLVxncm91cAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGdyb3Vwe1xcYmVnaW5ncm91cCQvCi1cZ3RyCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcZ3Rye1xccmVhbGJhY2tzbGFzaCBndHJ9JC8KLVxndHIJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxndHJ7XFxyZWFsYmFja3NsYXNoIGd0cn0lJC8KLVxoYXQJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxoYXR7XFxyZWFsYmFja3NsYXNoIGhhdH0kLwotXGhhdAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGhhdHtcXHJlYWxiYWNrc2xhc2ggaGF0fSUkLwotXGhlYWRp bmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxoZWFkaW5ne1xccGFyc2VhcmdcXHNlY2hl YWRpbmdpfSQvCi1caGVhZGluZ3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxoZWFkaW5n cyAjMSB7XFxjc25hbWUgSEVBRElOR1MjMVxcZW5kY3NuYW1lfSQvCi1caQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGkjIzF7XFxyZWFsYmFja3NsYXNoIGkgeyMjMX19JC8KLVxpCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaSMjMXtcXHJlYWxiYWNrc2xhc2ggaSB7IyMxfX0lJC8K LVxpZmNsZWFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaWZjbGVhcntcXGJlZ2luZ3Jv dXBcXGlnbm9yZXNlY3Rpb25zXFxwYXJzZWFyZ1xcaS8KLVxpZmNsZWFyZmFpbAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGlmY2xlYXJmYWlse1xcYmVnaW5ncm91cFxcaWdub3Jlc2VjdGlv bnNcXGlmY2xlYS8KLVxpZmNsZWFyZmFpbHh4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsb25n XFxkZWZcXGlmY2xlYXJmYWlseHh4ICMxXFxlbmQgaWZjbGVhcntcXGVuZGdyb3VwXFwvCi1caWZj bGVhcnh4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGlmY2xlYXJ4eHggIzF7XFxlbmRn cm91cCQvCi1caWZpbmZvCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaWZpbmZve1xcYmVn aW5ncm91cFxcaWdub3Jlc2VjdGlvbnNcXGlmaW5mb3h4eH0kLwotXGlmaW5mb3h4eAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxsb25nXFxkZWZcXGlmaW5mb3h4eCAjMVxcZW5kIGlmaW5mb3tcXGVu ZGdyb3VwXFxpZ25vcmUvCi1caWZzZXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpZnNl dHtcXGJlZ2luZ3JvdXBcXGlnbm9yZXNlY3Rpb25zXFxwYXJzZWFyZ1xcaWZzLwotXGlmc2V0ZmFp bAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGlmc2V0ZmFpbHtcXGJlZ2luZ3JvdXBcXGln bm9yZXNlY3Rpb25zXFxpZnNldGZhaS8KLVxpZnNldGZhaWx4eHgJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcbG9uZ1xcZGVmXFxpZnNldGZhaWx4eHggIzFcXGVuZCBpZnNldHtcXGVuZGdyb3VwXFxp Z25vLwotXGlmc2V0eHh4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaWZzZXR4eHggIzF7 XFxlbmRncm91cCQvCi1caWZ0ZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpZnRleHt9 JC8KLVxpZnVzaW5ndHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpZnVzaW5ndHQjMSMy e1xcaWZkaW0gXFxmb250ZGltZW4zXFx0aGVcXGZvbnQ9MHB0LwotXGlnbm9yZQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGlnbm9yZXtcXGJlZ2luZ3JvdXBcXGlnbm9yZXNlY3Rpb25zJC8K LVxpZ25vcmVzZWN0aW9ucwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGlnbm9yZXNlY3Rp b25zeyUkLwotXGlnbm9yZXh4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsb25nXFxkZWZcXGln bm9yZXh4eCAjMVxcZW5kIGlnbm9yZXtcXGVuZGdyb3VwXFxpZ25vcmUvCi1caWkJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxpaSMxe3tcXGl0ICMxfX0JCSUgaXRhbGljIGZvbnQkLwotXGlu RU5WCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG5ld2lmXFxpZkVOViBcXEVOVmZhbHNlIFxcZGVm XFxpbkVOVntcXGlmRU5WXFxyZWxheFxcZWxzLwotXGluY2x1ZGUJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxpbmNsdWRle1xccGFyc2VhcmdcXGluY2x1ZGV6enp9JC8KLVxpbmNsdWRlenp6 CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5jbHVkZXp6eiAjMXt7XFxkZWZcXHRoaXNm aWxleyMxfVxcaW5wdXQgIzEkLwotXGluZGV4YmFja3NsYXNoCXRleC1zcmMvdGV4aW5mby50ZXgJ L14gIFxcZGVmXFxpbmRleGJhY2tzbGFzaHtcXHJhd2JhY2tzbGFzaHh4fSQvCi1caW5kZXhkb3Rm aWxsCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5kZXhkb3RmaWxse1xcY2xlYWRlcnMk LwotXGluZGV4ZHVtbWllcwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZGV4ZHVtbWll c3slJC8KLVxpbmRleGR1bW15ZG90cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZGV4 ZHVtbXlkb3Rzey4uLn0kLwotXGluZGV4ZHVtbXlmb250CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcaW5kZXhkdW1teWZvbnQjMXsjMX0kLwotXGluZGV4ZHVtbXl0ZXgJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxpbmRleGR1bW15dGV4e1RlWH0kLwotXGluZGV4Zm9udHMJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmRleGZvbnRzeyUkLwotXGluZGV4bm9mb250cwl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZGV4bm9mb250c3slJC8KLVxpbmZvYXBwZW5kaXgJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvYXBwZW5kaXh7XFxwYXJzZWFyZ1xcYXBw ZW5kaXh6enp9JC8KLVxpbmZvYXBwZW5kaXhzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxpbmZvYXBwZW5kaXhzZWN7XFxwYXJzZWFyZ1xcYXBwZW5kaXhzZWN6enp9JC8KLVxpbmZvYXBw ZW5kaXhzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvYXBwZW5kaXhzdWJz ZWN7XFxwYXJzZWFyZ1xcYXBwZW5kaXhzdWJzZWN6ei8KLVxpbmZvYXBwZW5kaXhzdWJzdWJzZWMJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvYXBwZW5kaXhzdWJzdWJzZWN7XFxwYXJz ZWFyZ1xcYXBwZW5kaXhzdWJzdS8KLVxpbmZvY2hhcHRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGluZm9jaGFwdGVye1xccGFyc2VhcmdcXGNoYXB0ZXJ6enp9JC8KLVxpbmZvcmVmCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5mb3JlZiAjMXtcXGluZm9yZWZ6enogIzEsLCws Kip9JC8KLVxpbmZvcmVmenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5mb3JlZnp6 eiAjMSwjMiwjMywjNCoqe1NlZSBJbmZvIGZpbGUgXFxmaWxley8KLVxpbmZvc2VjdGlvbgl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm9zZWN0aW9ue1xccGFyc2VhcmdcXHNlY3Rpb256 enp9JC8KLVxpbmZvc3Vic2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm9z dWJzZWN0aW9ue1xccGFyc2VhcmdcXHN1YnNlY3Rpb256enp9JC8KLVxpbmZvc3Vic3Vic2VjdGlv bgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm9zdWJzdWJzZWN0aW9ue1xccGFyc2Vh cmdcXHN1YnN1YnNlY3Rpb256enp9LwotXGluZm90b3AJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxpbmZvdG9we1xccGFyc2VhcmdcXHVubnVtYmVyZWR6enp9JC8KLVxpbmZvdW5udW1iZXJl ZAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm91bm51bWJlcmVke1xccGFyc2Vhcmdc XHVubnVtYmVyZWR6enp9JC8KLVxpbmZvdW5udW1iZXJlZHNlYwl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGluZm91bm51bWJlcmVkc2Vje1xccGFyc2VhcmdcXHVubnVtYmVyZWRzZWN6enp9 LwotXGluZm91bm51bWJlcmVkc3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5m b3VubnVtYmVyZWRzdWJzZWN7XFxwYXJzZWFyZ1xcdW5udW1iZXJlZHN1YnMvCi1caW5mb3VubnVt YmVyZWRzdWJzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvdW5udW1iZXJl ZHN1YnN1YnNlY3tcXHBhcnNlYXJnXFx1bm51bWJlcmVkcy8KLVxpbml0aWFsCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcaW5pdGlhbCAjMXslJC8KLVxpbnRlcm5hbEJpdGVtCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcaW50ZXJuYWxCaXRlbXtcXHNtYWxsYnJlYWsgXFxwYXJzZWFy Z1xcaXRlbXp6en0kLwotXGludGVybmFsQml0ZW14CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcaW50ZXJuYWxCaXRlbXh7XFxwYXIgXFxwYXJzZWFyZ1xcaXRlbXp6en0kLwotXGludGVybmFs QmtpdGVtCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW50ZXJuYWxCa2l0ZW17XFxzbWFs bGJyZWFrIFxccGFyc2VhcmdcXGtpdGVtenp6LwotXGludGVybmFsQmtpdGVteAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGludGVybmFsQmtpdGVteHtcXHBhciBcXHBhcnNlYXJnXFxraXRl bXp6en0kLwotXGludGVybmFsQnhpdGVtCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW50 ZXJuYWxCeGl0ZW0gIiMxIntcXGRlZlxceGl0ZW1zdWJ0b3BpeHsjMX0gXFxzLwotXGludGVybmFs QnhpdGVteAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGludGVybmFsQnhpdGVteCAiIzEi e1xcZGVmXFx4aXRlbXN1YnRvcGl4eyMxfSBcXC8KLVxpbnRlcm5hbHNldHEJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxpbnRlcm5hbHNldHEgIzEjMnsneHJkZWYgeyMxfXtcXGNzbmFtZSAj MlxcZW5kYy8KLVxpdGVtCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaXRlbXtcXGVycm1l c3NhZ2V7QGl0ZW0gd2hpbGUgbm90IGluIGEgdGFibGV9fS8KLVxpdGVtY29udGVudHMJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpdGVtY29udGVudHN7IzF9JSQvCi1caXRlbWZvbnQJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpdGVtZm9udHsjMn0lJC8KLVxpdGVtaXplCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaXRlbWl6ZXtcXHBhcnNlYXJnXFxpdGVtaXplenp6fSQv Ci1caXRlbWl6ZWl0ZW0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpdGVtaXplaXRlbXsl JC8KLVxpdGVtaXpleQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGl0ZW1pemV5ICMxIzJ7 JSQvCi1caXRlbWl6ZXp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGl0ZW1pemV6enog IzF7JSQvCi1caXRlbXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpdGVteHtcXGVycm1l c3NhZ2V7QGl0ZW14IHdoaWxlIG5vdCBpbiBhIHRhYmxlLwotXGl0ZW16enoJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxpdGVtenp6ICMxe1xcYmVnaW5ncm91cCAlJC8KLVxrYmQJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxrYmQjIzF7XFxyZWFsYmFja3NsYXNoIGtiZCB7IyMxfX0k LwotXGtiZAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtiZCMjMXtcXHJlYWxiYWNrc2xh c2gga2JkIHsjIzF9fSUkLwotXGtiZAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtiZCMx e1xcZGVmXFxsb29reyMxfVxcZXhwYW5kYWZ0ZXJcXGtiZGZvb1xcbG9vaz8/LwotXGtiZGZvbwl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtiZGZvbyMxIzIjM1xccGFye1xcZGVmXFxvbmV7 IzF9XFxkZWZcXHRocmVleyMzfVxcZC8KLVxrZXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxrZXkgIzF7e1xcdHQgXFxleGh5cGhlbnBlbmFsdHk9MTAwMDBcXHVwcGVyY2FzZXsvCi1ca2V5 CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxca2V5IyMxe1xccmVhbGJhY2tzbGFzaCBrZXkg eyMjMX19JC8KLVxrZXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxrZXkjIzF7XFxyZWFs YmFja3NsYXNoIGtleSB7IyMxfX0lJC8KLVxraW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxraW5kZXgge1xca3lpbmRleH0kLwotXGtpdGVtCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxca2l0ZW17XFxlcnJtZXNzYWdle0BraXRlbSB3aGlsZSBub3QgaW4gYSB0YWJsZS8KLVxr aXRlbXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxraXRlbXh7XFxlcnJtZXNzYWdle0Br aXRlbXggd2hpbGUgbm90IGluIGEgdGFiLwotXGtpdGVtenp6CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxca2l0ZW16enogIzF7XFxkb3N1YmluZCB7a3d9e1xcY29kZXsjMX19e2ZvciB7XFxi LwotXGwJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxsIzF7e1xcbGkgIzF9XFxudWxsfQkJ JSAkLwotXGxhYmVsc3BhY2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxsYWJlbHNwYWNl e1xcaHNraXAxZW0gXFxyZWxheH0kLwotXGxicmIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxsYnJie3tcXGJmXFxjaGFyYFxcW319IFxcZGVmXFxyYnJie3tcXGJmXFxjaGFyYFxcXX19JC8K LVxsZXNzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbGVzc3tcXHJlYWxiYWNrc2xhc2gg bGVzc30kLwotXGxlc3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxsZXNze1xccmVhbGJh Y2tzbGFzaCBsZXNzfSUkLwotXGxpbmVudW1iZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxk ZWZcXGxpbmVudW1iZXJ7XFx0aGVcXGlucHV0bGluZW5vOlxcc3BhY2V9JC8KLVxsaXNwCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbGlzcHtcXGFib3ZlZW52YnJlYWskLwotXGxvZ2dpbmdh bGwJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxsb2dnaW5nYWxse1xcdHJhY2luZ2NvbW1h bmRzMiBcXHRyYWNpbmdzdGF0czIgJC8KLVxsb3Nlc3BhY2UJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxsb3Nlc3BhY2UgIzF7IzF9JC8KLVxsb3dlcmNhc2VlbnVtZXJhdGUJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxsb3dlcmNhc2VlbnVtZXJhdGV7JSQvCi1cbHZ2bW9kZQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGx2dm1vZGV7XFx2Ym94IHRvIDBwdHt9fSQvCi1cbWFq b3JoZWFkaW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbWFqb3JoZWFkaW5ne1xccGFy c2VhcmdcXG1ham9yaGVhZGluZ3p6en0kLwotXG1ham9yaGVhZGluZ3p6egl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXG1ham9yaGVhZGluZ3p6eiAjMXslJC8KLVxtYXRoCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcbWF0aCMxe1xcaW1wbGljaXRtYXRoICMxXFxpbXBsaWNpdG1hdGh9 JC8KLVxtZW51CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxvbmdcXGRlZlxcbWVudSAjMVxcZW5k IG1lbnV7fSQvCi1cbWludXMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxtaW51c3skLSR9 JC8KLVxteWxicmFjZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG15bGJyYWNlIHt7XFx0 dCBcXGNoYXIgJzE3M319JC8KLVxteXJicmFjZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XG15cmJyYWNlIHt7XFx0dCBcXGNoYXIgJzE3NX19JC8KLVxuZWVkCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcbmVlZHtcXHBhcnNlYXJnXFxuZWVkeH0kLwotXG5lZWR4CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcbmVlZHgjMXslJC8KLVxuZXdjb2RlaW5kZXgJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxuZXdjb2RlaW5kZXggIzF7JC8KLVxuZXdpbmRleAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXG5ld2luZGV4ICMxeyQvCi1cbmV4dAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXG5leHQjIzF7fVxcbmV4dH0kLwotXG5tCXRleC1zcmMvdGVzdGVudi50ZXgJ L15cXG5ld2NvbW1hbmR7XFxubX1bMl17XFxub21lbmNsYXR1cmV7IzF9eyMyfX0kLwotXG5vZGUJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxub2Rle1xcRU5WY2hlY2tcXHBhcnNlYXJnXFxu b2Rlenp6fSQvCi1cbm9kZXh4eFsJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxub2RleHh4 WyMxLCMyXXtcXGdkZWZcXGxhc3Rub2RleyMxfX0kLwotXG5vZGV6enoJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxub2Rlenp6IzF7XFxub2RleHh4IFsjMSxdfSQvCi1cbm9maWxsZXhkZW50 CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbm9maWxsZXhkZW50e1xccGFyc2VhcmdcXG5v ZmlsbGV4ZGVudHl5eX0kLwotXG5vZmlsbGV4ZGVudHl5eQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXG5vZmlsbGV4ZGVudHl5eSAjMXt7XFxhZHZhbmNlIFxcbGVmdHNraXAgYnkgLVxcZS8K LVxub3JtYWxiYWNrc2xhc2gJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxub3JtYWxiYWNr c2xhc2h7e1xcdHRcXHJhd2JhY2tzbGFzaHh4fX0kLwotXG5vcm1hbGNhcmV0CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcbm9ybWFsY2FyZXR7Xn0kLwotXG5vcm1hbGRvdWJsZXF1b3RlCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbm9ybWFsZG91YmxlcXVvdGV7In0kLwotXG5vcm1h bGdyZWF0ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxub3JtYWxncmVhdGVyez59JC8K LVxub3JtYWxsZXNzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbm9ybWFsbGVzc3s8fSQv Ci1cbm9ybWFscGx1cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5vcm1hbHBsdXN7K30k LwotXG5vcm1hbHRpbGRlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbm9ybWFsdGlsZGV7 fn0kLwotXG5vcm1hbHVuZGVyc2NvcmUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxub3Jt YWx1bmRlcnNjb3Jle199JC8KLVxub3JtYWx2ZXJ0aWNhbGJhcgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXG5vcm1hbHZlcnRpY2FsYmFye3x9JC8KLVxuc2JvdAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXG5zYm90e1xcdmJveCQvCi1cbnN0b3AJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxuc3RvcHtcXHZib3gkLwotXG51bWJlcmVkc2VjCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXG91dGVyXFxkZWZcXG51bWJlcmVkc2Vje1xccGFyc2VhcmdcXHNlY3p6en0kLwotXG51bWJl cmVkc3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXG51bWJlcmVkc3Vi c2Vje1xccGFyc2VhcmdcXG51bWJlcmVkc3Vic2VjLwotXG51bWJlcmVkc3Vic2Vjenp6CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbnVtYmVyZWRzdWJzZWN6enogIzF7XFxzZWNjaGVja3tz dWJzZWN0aW9ufSUkLwotXG51bWJlcmVkc3Vic3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XG91dGVyXFxkZWZcXG51bWJlcmVkc3Vic3Vic2Vje1xccGFyc2VhcmdcXG51bWJlcmVkc3ViLwot XG51bWJlcmVkc3Vic3Vic2Vjenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbnVtYmVy ZWRzdWJzdWJzZWN6enogIzF7XFxzZWNjaGVja3tzdWJzdWJzZWN0aS8KLVxudW1lcmljZW51bWVy YXRlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbnVtZXJpY2VudW1lcmF0ZXslJC8KLVxv ZGRmb290aW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcb2RkZm9vdGluZ3tcXHBhcnNl YXJnXFxvZGRmb290aW5neHh4fSQvCi1cb2RkaGVhZGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXG9kZGhlYWRpbmd7XFxwYXJzZWFyZ1xcb2RkaGVhZGluZ3h4eH0kLwotXG9uZXBhZ2Vv dXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxvbmVwYWdlb3V0IzF7XFxob2Zmc2V0PVxc bm9ybWFsb2Zmc2V0JC8KLVxvcGVuY29udGVudHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxvcGVuY29udGVudHN7XFxvcGVub3V0IFxcY29udGVudHNmaWxlID0gXFxqb2JuYW0vCi1cb3Bl bmluZGljZXMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxvcGVuaW5kaWNlc3slJC8KLVxv cG5yCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcb3Bucnt7XFxzZlxcY2hhcmBcXCh9fSBc XGRlZlxcY2xucnt7XFxzZlxcY2hhcmBcXCl9fSAvCi1ccGFnZQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eICAgXFxkZWZcXHBhZ2V7JSQvCi1ccGFnZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHBhZ2V7XFxwYXJcXHZmaWxsXFxzdXBlcmVqZWN0fSQvCi1ccGFnZWJvZHkJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxwYWdlYm9keSMxe1xcdmJveCB0b1xccGFnZWhlaWdodHtcXGJveG1h eGRlcHRoPVxcLwotXHBhZ2Vzb2Zhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHBhZ2Vz b2ZhcntcXHVudmJveFxccGFydGlhbHBhZ2UgJSQvCi1ccGFyc2VhcmcJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxwYXJzZWFyZyAjMXtcXGxldFxcbmV4dD0jMVxcYmVnaW5ncm91cFxcb2Jl eWxpbmVzLwotXHBhcnNlYXJnbGluZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHBhcnNl YXJnbGluZXtcXGJlZ2luZ3JvdXAgXFxvYmV5bGluZXMgXFxwYXJzZWFyZy8KLVxwYXJzZWFyZ3gJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwYXJzZWFyZ3h7JSQvCi1ccGluZGV4CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxccGluZGV4IHtcXHBnaW5kZXh9JC8KLVxwbGFpbnNlY2hl YWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwbGFpbnNlY2hlYWRpbmcgIzF7XFxz ZWNoZWFkaW5naSB7IzF9fSQvCi1ccG9pbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxw b2ludHskXFxzdGFyJH0kLwotXHByaW1hcnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxw cmltYXJ5ICMxe1xcbGluZXsjMVxcaGZpbH19JC8KLVxwcmludAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXHByaW50e1xcbGVhdmV2bW9kZVxcbG93ZXIuMWV4XFxoYm94IHRvIDFlbXtcXGhm aWwvCi1ccHJpbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwcmludHtcXHJlYWxiYWNr c2xhc2ggcHJpbnR9JC8KLVxwcmludGVkbWFudWFsCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxccHJpbnRlZG1hbnVhbHtcXGlnbm9yZXNwYWNlcyAjNX0lJC8KLVxwcmludGVkbWFudWFsCXRl eC1zcmMvdGV4aW5mby50ZXgJL15zZWN0aW9uIGBgXFxwcmludGVkbm9kZW5hbWUnJyBpbiBcXGNp dGV7XFxwcmludGVkbWFudS8KLVxwcmludGVkbm9kZW5hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxwcmludGVkbm9kZW5hbWV7XFxpZ25vcmVzcGFjZXMgIzF9JSQvCi1ccHJpbnRlZG5v ZGVuYW1lCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccHJpbnRlZG5vZGVuYW1le1xcaWdu b3Jlc3BhY2VzICMzfSUkLwotXHByaW50aW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxwcmludGluZGV4e1xccGFyc2VhcmdcXGRvcHJpbnRpbmRleH0kLwotXHB4cmVmCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxccHhyZWYjMXtzZWUgXFx4cmVmWFsjMSwsLCwsLCxdfSQvCi1c cXVvdGF0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccXVvdGF0aW9ueyUkLwotXHIJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxyIyMxe1xccmVhbGJhY2tzbGFzaCByIHsjIzF9 fSQvCi1ccgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHIjIzF7XFxyZWFsYmFja3NsYXNo IHIgeyMjMX19JSQvCi1ccgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHIjMXt7XFxybSAj MX19CQklIHJvbWFuIGZvbnQkLwotXHJhd2JhY2tzbGFzaHh4CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxccmF3YmFja3NsYXNoeHh7XFxpbmRleGJhY2tzbGFzaH0lIFxcaW5kZXhiYWNrc2wv Ci1ccmF3YmFja3NsYXNoeHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxyYXdiYWNrc2xh c2h4eHtcXGluZGV4YmFja3NsYXNofSUkLwotXHJlYWRhdXhmaWxlCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxccmVhZGF1eGZpbGV7JSQvCi1ccmVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxccmVmIzF7XFx4cmVmWFsjMSwsLCwsLCxdfSQvCi1ccmVmeAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXHJlZngjMSMyeyUkLwotXHJlc2V0bWF0aGZvbnRzCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxccmVzZXRtYXRoZm9udHN7JSQvCi1ccmVzdWx0CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxccmVzdWx0e1xcbGVhdmV2bW9kZVxccmFpc2UuMTVleFxcaGJveCB0byAx ZW17XFxoZi8KLVxyZXN1bHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxyZXN1bHR7XFxy ZWFsYmFja3NsYXNoIHJlc3VsdH0kLwotXHJtCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc cm17XFxyZWFsYmFja3NsYXNoIHJtIH0lJC8KLVxzYW1wCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcc2FtcCAjMXtgXFx0Y2xvc2V7IzF9J1xcbnVsbH0kLwotXHNhbXAJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxzYW1wIyMxe1xccmVhbGJhY2tzbGFzaCBzYW1wIHsjIzF9fSQvCi1c c2FtcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNhbXAjIzF7XFxyZWFsYmFja3NsYXNo IHNhbXAgeyMjMX19JSQvCi1cc2MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzYyMxe3tc XHNtYWxsY2FwcyMxfX0JJSBzbWFsbGNhcHMgZm9udCQvCi1cc2VjY2hlY2sJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxzZWNjaGVjayMxe1xcaWYgXFxwYWdlbm88MCAlJC8KLVxzZWNlbnRy eQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgICAgXFxkZWZcXHNlY2VudHJ5ICMjMSMjMiMjMyMj NHt9JC8KLVxzZWNlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNlY2VudHJ5IzEj MiMzIzR7XFxkb3NlY2VudHJ5eyMyLiMzXFxsYWJlbHNwYWNlLwotXHNlY2VudHJ5Zm9udHMJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZWNlbnRyeWZvbnRze1xcdGV4dGZvbnRzfSQvCi1c c2VjZm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZWNmb250c3slJC8KLVxzZWNo ZWFkaW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2VjaGVhZGluZyAjMSMyIzN7XFxz ZWNoZWFkaW5naSB7IzIuIzNcXGVuc3BhY2UvCi1cc2VjaGVhZGluZ2JyZWFrCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcc2VjaGVhZGluZ2JyZWFre1xcZG9icmVhayBcXHNlY2hlYWRpbmdz a2lwIHstMTAvCi1cc2VjaGVhZGluZ2kJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZWNo ZWFkaW5naSAjMXt7XFxhZHZhbmNlIFxcc2VjaGVhZGluZ3NraXAgYnkgXFwvCi1cc2Vjb25kYXJ5 CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2Vjb25kYXJ5ICMxIzJ7JC8KLVxzZWN6enoJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZWN6enogIzF7XFxzZWNjaGVja3tzZWN0aW9u fSUkLwotXHNldAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNldHtcXHBhcnNlYXJnXFxz ZXR4eHh9JC8KLVxzZXRjaGFwdGVybmV3cGFnZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHNldGNoYXB0ZXJuZXdwYWdlICMxIHtcXGNzbmFtZSBDSEFQUEFHIzFcXGVuZGNzLwotXHNldGNo YXB0ZXJzdHlsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNldGNoYXB0ZXJzdHlsZSAj MSB7XFxjc25hbWUgQ0hBUEYjMVxcZW5kY3NuYW1lLwotXHNldGRlZmZvbnQJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxzZXRkZWZmb250ICMxIHtcXGNzbmFtZSBERUYjMVxcZW5kY3NuYW1l fSQvCi1cc2V0ZmlsZW5hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZXRmaWxlbmFt ZXslJC8KLVxzZXRyZWYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZXRyZWYjMXslJC8K LVxzZXR0aXRsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNldHRpdGxle1xccGFyc2Vh cmdcXHNldHRpdGxlenp6fSQvCi1cc2V0dGl0bGV6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxzZXR0aXRsZXp6eiAjMXtcXGdkZWZcXHRoaXN0aXRsZXsjMX19JC8KLVxzZXR4eHgJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZXR4eHggIzF7JC8KLVxzZgl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXHNme1xcZmFtPVxcc2ZmYW0gXFx0ZW5zZn0kLwotXHNmCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcc2Z7XFxyZWFsYmFja3NsYXNoIHNmfSUkLwotXHNob3J0Y2hh cGVudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2hvcnRjaGFwZW50cnkjMSMyIzN7 JSQvCi1cc2hvcnR1bm51bWJlcmVkZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxz aG9ydHVubnVtYmVyZWRlbnRyeSMxIzJ7JSQvCi1cc2luZ2xlY29kZWluZGV4ZXIJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxzaW5nbGVjb2RlaW5kZXhlciAjMXtcXGRvaW5ke1xcaW5kZXhu YW1lfXtcXGNvZGUvCi1cc2luZ2xlaW5kZXhlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHNpbmdsZWluZGV4ZXIgIzF7XFxkb2luZHtcXGluZGV4bmFtZX17IzF9fSQvCi1cc2luZ2xlc3Bh Y2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzaW5nbGVzcGFjZXslJC8KLVxzbAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNse1xccmVhbGJhY2tzbGFzaCBzbCB9JSQvCi1cc21h bGxib29rCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc21hbGxib29reyQvCi1cc21hbGxs aXNweAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNtYWxsbGlzcHh7XFxhYm92ZWVudmJy ZWFrXFxiZWdpbmdyb3VwXFxpbkVOViQvCi1cc21hcnRpdGFsaWMJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxzbWFydGl0YWxpYyMxe3tcXHNsICMxfVxcZnV0dXJlbGV0XFxuZXh0XFxzbWFy dGl0LwotXHNtYXJ0aXRhbGljeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNtYXJ0aXRh bGljeHtcXGlmeFxcbmV4dCxcXGVsc2VcXGlmeFxcbmV4dC1cXGVsc2VcXGkvCi1cc3AJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzcHtcXHBhcnNlYXJnXFxzcHh4eH0kLwotXHNwbGl0b2Zm CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3BsaXRvZmYjMSMyXFxlbmRtYXJre1xcZGVm XFxmaXJzdHsjMX1cXGRlZlxccmVzdHsvCi1cc3B4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxzcHh4eCAjMXtcXHBhciBcXHZza2lwICMxXFxiYXNlbGluZXNraXB9JC8KLVxzdGFydGNv bnRlbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3RhcnRjb250ZW50cyMxeyUkLwot XHN0YXJ0ZW51bWVyYXRpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzdGFydGVudW1l cmF0aW9uIzF7JSQvCi1cc3ViaGVhZGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHN1 YmhlYWRpbmd7XFxwYXJzZWFyZ1xcc3Vic2VjaGVhZGluZ2l9JC8KLVxzdWJzZWNlbnRyeQl0ZXgt c3JjL3RleGluZm8udGV4CS9eICAgICAgXFxkZWZcXHN1YnNlY2VudHJ5ICMjMSMjMiMjMyMjNCMj NXt9JC8KLVxzdWJzZWNlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHN1YnNlY2Vu dHJ5IzEjMiMzIzQjNXtcXGRvc3Vic2VjZW50cnl7IzIuIzMuIzQvCi1cc3Vic2VjZm9udHMJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzdWJzZWNmb250c3slJC8KLVxzdWJzZWNoZWFkaW5n CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3Vic2VjaGVhZGluZyAjMSMyIzMjNHtcXHN1 YnNlY2hlYWRpbmdpIHsjMi4jMy8KLVxzdWJzZWNoZWFkaW5nYnJlYWsJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxzdWJzZWNoZWFkaW5nYnJlYWt7XFxkb2JyZWFrIFxcc3Vic2VjaGVhZGlu Z3NraS8KLVxzdWJzZWNoZWFkaW5naQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHN1YnNl Y2hlYWRpbmdpICMxe3tcXGFkdmFuY2UgXFxzdWJzZWNoZWFkaW5nc2tpLwotXHN1YnN1YmhlYWRp bmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzdWJzdWJoZWFkaW5ne1xccGFyc2Vhcmdc XHN1YnN1YnNlY2hlYWRpbmdpfSQvCi1cc3Vic3Vic2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXiAgICAgIFxcZGVmXFxzdWJzdWJzZWNlbnRyeSAjIzEjIzIjIzMjIzQjIzUjIzZ7fSQvCi1c c3Vic3Vic2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzdWJzdWJzZWNlbnRy eSMxIzIjMyM0IzUjNnslJC8KLVxzdWJzdWJzZWNmb250cwl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXHN1YnN1YnNlY2ZvbnRze1xcc3Vic2VjZm9udHN9ICUgTWF5YmUgdGhpcyBzaG8vCi1c c3Vic3Vic2VjaGVhZGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHN1YnN1YnNlY2hl YWRpbmcgIzEjMiMzIzQjNXtcXHN1YnN1YnNlY2hlYWRpbmcvCi1cc3Vic3Vic2VjaGVhZGluZ2kJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzdWJzdWJzZWNoZWFkaW5naSAjMXt7XFxhZHZh bmNlIFxcc3Vic2VjaGVhZGluZy8KLVxzdWJ0aXRsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAg XFxkZWZcXHN1YnRpdGxle1xccGFyc2VhcmdcXHN1YnRpdGxlenp6fSUkLwotXHN1YnRpdGxlZm9u dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFxkZWZcXHN1YnRpdGxlZm9udHtcXHN1YnRpdGxl cm0gXFxub3JtYWxiYXNlbGluZXNrLwotXHN1YnRpdGxlenp6CXRleC1zcmMvdGV4aW5mby50ZXgJ L14gICBcXGRlZlxcc3VidGl0bGV6enojIzF7e1xcc3VidGl0bGVmb250IFxccmlnaHRsaW5leyMv Ci1cc3VtbWFyeWNvbnRlbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXHN1 bW1hcnljb250ZW50c3slJC8KLVxzdXBlcmVqZWN0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl Zlxcc3VwZXJlamVjdHtcXHBhclxccGVuYWx0eSAtMjAwMDBcXGZvb3Rub3Rlbm8gPTAgLwotXHN5 bmNvZGVpbmRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHN5bmNvZGVpbmRleCAjMSAj MiB7JSQvCi1cc3luaW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzeW5pbmRleCAj MSAjMiB7JSQvCi1cdAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHQjIzF7XFxyZWFsYmFj a3NsYXNoIHIgeyMjMX19JSQvCi1cdAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHQjMXt7 XFx0dCBcXGV4aHlwaGVucGVuYWx0eT0xMDAwMFxccmF3YmFja3NsYXNoIC8KLVx0YWJsZQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHRhYmxle1xcYmVnaW5ncm91cFxcaW5FTlZcXG9iZXls aW5lc1xcb2JleXNwYWNlc1xcLwotXHRhYmxlegl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHRhYmxleiAjMSMyIzMjNCM1IzZ7JSQvCi1cdGNsb3NlCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcdGNsb3NlIyMxe1xccmVhbGJhY2tzbGFzaCB0Y2xvc2UgeyMjMX19JC8KLVx0Y2xvc2UJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0Y2xvc2UjIzF7XFxyZWFsYmFja3NsYXNoIHRj bG9zZSB7IyMxfX0lJC8KLVx0Y2xvc2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0Y2xv c2UjMXt7XFxybSBcXHRjbG9zZXJtPVxcZm9udGRpbWVuMlxcZm9udCBcXHR0IC8KLVx0ZXgJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0ZXh7XFxiZWdpbmdyb3VwJC8KLVx0ZXhpbmZvdmVy c2lvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHRleGluZm92ZXJzaW9uezIuNzN9JC8K LVx0ZXh0Zm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0ZXh0Zm9udHN7JSQvCi1c dGhlYXJnCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcZGVmXFx0aGVhcmd7IzF9JSQvCi1cdGhl YXJnCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcaWZ4XFx0aGVhcmdcXGVtcHR5IFxcZGVmXFx0 aGVhcmd7MX1cXGZpJC8KLVx0aGlzY2hhcHRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFx1 bm51bWJjaGFwbWFjcm97IzF9XFxkZWZcXHRoaXNjaGFwdGVye30lJC8KLVx0aGlzY2hhcHRlcgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHRoaXNjaGFwdGVye30gXFxkZWZcXHRoaXNzZWN0 aW9ue30kLwotXHRoaXNjaGFwdGVybmFtZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHRo aXNjaGFwdGVybmFtZXtObyBDaGFwdGVyIFRpdGxlfSQvCi1cdGhpc2ZpbGUJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFx0aGlzZmlsZXt9JC8KLVx0aGlzdGl0bGUJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFx0aGlzdGl0bGV7Tm8gVGl0bGV9JC8KLVx0aWUJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFx0aWV7XFxwZW5hbHR5IDEwMDAwXFwgfSAgICAgJSBTYXZlIHBsYWluIHRl eCBkZS8KLVx0aW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0aW5kZXgge1xcdHBp bmRleH0kLwotXHRpdGxlCXRleC1zcmMvdGV4aW5mby50ZXgJL14gICBcXGRlZlxcdGl0bGV7XFxw YXJzZWFyZ1xcdGl0bGV6enp9JSQvCi1cdGl0bGVmb250CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcdGl0bGVmb250IzF7e1xcdGl0bGVybSAjMX19JC8KLVx0aXRsZXBhZ2UJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFx0aXRsZXBhZ2V7XFxiZWdpbmdyb3VwIFxccGFyaW5kZW50PTBw dCBcXHRleHRmb24vCi1cdGl0bGV6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgIFxcZGVmXFx0 aXRsZXp6eiMjMXtcXGxlZnRsaW5le1xcdGl0bGVmb250eyMjMX19JC8KLVx0b2RheQl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXHRvZGF5e1xcbnVtYmVyXFxkYXlcXHNwYWNlJC8KLVx0b3AJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRlZlxcdG9we1xccGFyc2VhcmdcXHVubnVt YmVyZWR6enp9JC8KLVx0dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHR0e1xccmVhbGJh Y2tzbGFzaCB0dH0kLwotXHR0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdHR7XFxyZWFs YmFja3NsYXNoIHR0fSUkLwotXHR1cm5vZmZhY3RpdmUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFx0dXJub2ZmYWN0aXZle1xcbGV0Ij1cXG5vcm1hbGRvdWJsZXF1b3RlJC8KLVx1bm5jaGZv cGVuCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdW5uY2hmb3BlbiAjMXslJC8KLVx1bm5j aGZwbGFpbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHVubmNoZnBsYWluICMxeyUkLwot XHVubnVtYmNoYXBlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHVubnVtYmNoYXBl bnRyeSMxIzJ7XFxkb2NoYXBlbnRyeXsjMX17IzJ9fSQvCi1cdW5udW1iZXJlZAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFx1bm51bWJlcmVke1xccGFyc2VhcmdcXHVubnVtYmVy ZWR6enp9JC8KLVx1bm51bWJlcmVkc2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxk ZWZcXHVubnVtYmVyZWRzZWN7XFxwYXJzZWFyZ1xcdW5udW1iZXJlZHNlY3p6LwotXHVubnVtYmVy ZWRzZWN6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx1bm51bWJlcmVkc2Vjenp6ICMx e1xcc2VjY2hlY2t7dW5udW1iZXJlZHNlY30lLwotXHVubnVtYmVyZWRzdWJzZWMJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRlZlxcdW5udW1iZXJlZHN1YnNlY3tcXHBhcnNlYXJnXFx1 bm51bWJlcmVkc3UvCi1cdW5udW1iZXJlZHN1YnNlY3p6egl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXHVubnVtYmVyZWRzdWJzZWN6enogIzF7XFxzZWNjaGVja3t1bm51bWJlcmVkc3UvCi1c dW5udW1iZXJlZHN1YnN1YnNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFx1 bm51bWJlcmVkc3Vic3Vic2Vje1xccGFyc2VhcmdcXHVubnVtYmVyZS8KLVx1bm51bWJlcmVkc3Vi c3Vic2Vjenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdW5udW1iZXJlZHN1YnN1YnNl Y3p6eiAjMXtcXHNlY2NoZWNre3VubnVtYmVyZS8KLVx1bm51bWJlcmVkenp6CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcdW5udW1iZXJlZHp6eiAjMXtcXHNlY2NoZWNre3VubnVtYmVyZWR9 JSQvCi1cdW5udW1ibm9kZXJlZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHVubnVtYm5v ZGVyZWZ7XFxpZnhcXGxhc3Rub2RlXFxyZWxheFxcZWxzZSQvCi1cdW5udW1ic2VjZW50cnkJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXiAgICAgIFxcZGVmXFx1bm51bWJzZWNlbnRyeSAjIzEjIzJ7fSQv Ci1cdW5udW1ic2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx1bm51bWJzZWNl bnRyeSMxIzJ7XFxkb3NlY2VudHJ5eyMxfXsjMn19JC8KLVx1bm51bWJzZXRyZWYJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFx1bm51bWJzZXRyZWYjMXslJC8KLVx1bm51bWJzdWJzZWNlbnRy eQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgICAgXFxkZWZcXHVubnVtYnN1YnNlY2VudHJ5ICMj MSMjMnt9JC8KLVx1bm51bWJzdWJzZWNlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHVubnVtYnN1YnNlY2VudHJ5IzEjMntcXGRvc3Vic2VjZW50cnl7IzF9eyMyfX0vCi1cdW5udW1i c3Vic3Vic2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgICAgIFxcZGVmXFx1bm51bWJz dWJzdWJzZWNlbnRyeSAjIzEjIzJ7fSQvCi1cdW5udW1ic3Vic3Vic2VjZW50cnkJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFx1bm51bWJzdWJzdWJzZWNlbnRyeSMxIzJ7XFxkb3N1YnN1YnNl Y2VudHJ5eyMxLwotXHVwcGVyY2FzZWVudW1lcmF0ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXHVwcGVyY2FzZWVudW1lcmF0ZXslJC8KLVx2YXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFx2YXIjIzF7XFxyZWFsYmFja3NsYXNoIHZhciB7IyMxfX0kLwotXHZhcgl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXHZhciMjMXtcXHJlYWxiYWNrc2xhc2ggdmFyIHsjIzF9fSUkLwot XHZpbmRleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHZpbmRleCB7XFx2cmluZGV4fSQv Ci1cdnJpdGVtaW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx2cml0ZW1pbmRleCAj MXtcXGRvaW5kIHt2cn17XFxjb2RleyMxfX19JSQvCi1cdnRhYmxlCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcdnRhYmxle1xcYmVnaW5ncm91cFxcaW5FTlZcXG9iZXlsaW5lc1xcb2JleXNw YWNlcy8KLVx3CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdyMxe1xcbGVhdmV2bW9kZVxc aGJveHsjMX19JC8KLVx3CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcd3tcXHJlYWxiYWNr c2xhc2ggdyB9JSQvCi1cdwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHd7XFxyZWFsYmFj a3NsYXNoIHd9JC8KLVx4aXRlbQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHhpdGVte1xc ZXJybWVzc2FnZXtAeGl0ZW0gd2hpbGUgbm90IGluIGEgdGFibGUvCi1ceGl0ZW14CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxceGl0ZW14e1xcZXJybWVzc2FnZXtAeGl0ZW14IHdoaWxlIG5v dCBpbiBhIHRhYi8KLVx4aXRlbXp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHhpdGVt enp6ICMxe1xcZG9zdWJpbmQge2t3fXtcXGNvZGV7IzF9fXtmb3Ige1xcYi8KLVx4a2V5CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxceGtleXtcXGtleX0kLwotXHhyZGVmCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxceHJkZWYgIzEjMnskLwotXHhyZWYJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFx4cmVmIzF7U2VlIFxceHJlZlhbIzEsLCwsLCwsXX0kLwotXHhyZWZYWwl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHhyZWZYWyMxLCMyLCMzLCM0LCM1LCM2XXtcXGJlZ2lu Z3JvdXAlJC8KK10JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcYm9sZGJyYXh7XFxsZXQo PVxcb3BuclxcbGV0KT1cXGNsbnJcXGxldFs9XFxsYnJiXFxsLwogXgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZee3tcXHR0IFxcaGF0fX0kLworXgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxs ZXRePVxcbm9ybWFsY2FyZXQkLworXwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXF97XFxs dnZtb2RlIFxca2Vybi4wNmVtIFxcdmJveHtcXGhydWxlIHdpZHRoLjNlbSAvCitfCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcX3t7XFxyZWFsYmFja3NsYXNoIF99fSUkLwogXwl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZfe1xcaWZ1c2luZ3R0XFxub3JtYWx1bmRlcnNjb3JlXFxffSQv CitfCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldF89XFxub3JtYWx1bmRlcnNjb3JlJC8KIF9H RVRPUFRfSAljLXNyYy9nZXRvcHQuaAkxOQogX0dOVV9TT1VSQ0UJYy1zcmMvZXRhZ3MuYwk5NAog X1JFR0VYX0gJYy1zcmMvZW1hY3Mvc3JjL3JlZ2V4LmgJMjEKQEAgLTIyNjQsNiArMTc5MCw3IEBA IF9yZWFsbG9jCWMtc3JjL2VtYWNzL3NyYy9nbWFsbG9jLmMJL15fcmVhbGxvYyAodm9pZCAqcHRy LCBzaXplX3Qgc2l6ZSkkLwogX3JlYWxsb2NfaW50ZXJuYWwJYy1zcmMvZW1hY3Mvc3JjL2dtYWxs b2MuYwkvXl9yZWFsbG9jX2ludGVybmFsICh2b2lkICpwdHIsIHNpemVfdCBzaXplKSQvCiBfcmVh bGxvY19pbnRlcm5hbF9ub2xvY2sJYy1zcmMvZW1hY3Mvc3JjL2dtYWxsb2MuYwkvXl9yZWFsbG9j X2ludGVybmFsX25vbG9jayAodm9pZCAqcHRyLCBzaXplX3Qgc2l6ZSkkLwogYAlydWJ5LXNyYy90 ZXN0LnJiCS9eICAgICAgICBkZWYgYChjb21tYW5kKSQvCitgCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcYHt7YH19JC8KIGEJYy1zcmMvaC5oCTEwMwogYQljLXNyYy9oLmgJNDAKIGEJYy5j CS9eYSAoKSQvCkBAIC0yMjk5LDYgKzE4MjYsNyBAQCBhYmJyZXZzX2NoYW5nZWQJYy1zcmMvYWJi cmV2LmMJNTYKIGFiYwljLXNyYy9oLmgJMzMKIGFiYwljLXNyYy9oLmgJMzcKIGFib3J0LXJlY3Vy c2l2ZS1lZGl0CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eREVGVU4gKCJhYm9ydC1yZWN1 cnNpdmUtZWRpdCIsIEZhYm9ydF9yZWN1cnNpdmVfZWQvCithYm92ZWVudmJyZWFrCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcYWJvdmVlbnZicmVha3t7XFxhZHZhbmNlXFxhYm92ZWVudnNr aXBhbW91bnQgYnkvCiBhYnMvZglhZGEtc3JjL2V0YWdzLXRlc3QtZm9yLmFkYQkvXiAgIGZ1bmN0 aW9uICJhYnMiICAgKFJpZ2h0IDogQ29tcGxleCkgcmV0dXJuIFJlYWwnLwogYWJzb2x1dGVfZGly bmFtZQljLXNyYy9ldGFncy5jCS9eYWJzb2x1dGVfZGlybmFtZSAoY2hhciAqZmlsZSwgY2hhciAq ZGlyKSQvCiBhYnNvbHV0ZV9maWxlbmFtZQljLXNyYy9ldGFncy5jCS9eYWJzb2x1dGVfZmlsZW5h bWUgKGNoYXIgKmZpbGUsIGNoYXIgKmRpcikkLwpAQCAtMjM0Nyw2ICsxODc1LDggQEAgYWNjdV93 YXJuaW5nCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSB0eXBlIGFjY3Vfd2FybmluZyQvCiBh Y3QJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmFjdChPdXRGb3JtLE91dFN5bixXcyk6LSQvCiBh Y3Rpb24JcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmFjdGlvbihLZXlWYWxzKTotJC8KIGFjdGl2 ZV9tYXBzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eYWN0aXZlX21hcHMgKExpc3BfT2Jq ZWN0IGZpcnN0X2V2ZW50KSQvCithY3RpdmVkb3VibGVxdW90ZQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGFjdGl2ZWRvdWJsZXF1b3Rle3tcXHR0IFxcY2hhciAnMDQyfX0kLworYWN0aXZl cGFyZW5zCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYWN0aXZlcGFyZW5zeyUkLwogYWN0 b3V0CXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15hY3RvdXQoJ1RleHQnLFRyZWVzKTotJC8KIGFk ZEFyY2hzCW9iamMtc3JjL1BhY2tJbnNwLm0JL14tKHZvaWQpYWRkQXJjaHM6KGNvbnN0IGNoYXIg KilzdHJpbmckLwogYWRkUE9SZWFkZXIJcGhwLXNyYy9sY2VfZnVuY3Rpb25zLnBocAkvXiAgICAg IGZ1bmN0aW9uIGFkZFBPUmVhZGVyKCRkX25hbWUsICYkcG9yKSQvCkBAIC0yMzU5LDYgKzE4ODks OCBAQCBhZGRfdXNlcl9zaWduYWwJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15hZGRfdXNl cl9zaWduYWwgKGludCBzaWcsIGNvbnN0IGNoYQogYWRkbm9pc2UJaHRtbC1zcmMvYWxncnRobXMu aHRtbAkvXkFkZGluZyBOb2lzZSB0byB0aGUkLwogYWRkcmVzcwl5LXNyYy9jY2NwLnkJMTEzCiBh ZGp1c3RfcG9pbnRfZm9yX3Byb3BlcnR5CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eYWRq dXN0X3BvaW50X2Zvcl9wcm9wZXJ0eSAocHRyZGlmZl90IGxhc3RfcHQsIGJvb2wvCithZm91cnBh cGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYWZvdXJwYXBlcnskLworYWZ0ZXJlbnZi cmVhawl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFmdGVyZW52YnJlYWt7XFxlbmRncmFm IFxcaWZkaW1cXGxhc3Rza2lwPFxcYWJvdmUvCiBhZ2VudAljcC1zcmMvY2xoZWlyLmhwcAk3NQog YWxnb3JpdGhtcwlodG1sLXNyYy9hbGdydGhtcy5odG1sCS9eRGVzY3JpcHRpb24kLwogYWxpYXMJ Yy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAk2ODgKQEAgLTIzNzMsNiArMTkwNSw5IEBAIGFsaXZlCWNw LXNyYy9jb253YXkuaHBwCTcKIGFsbF9rYm9hcmRzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5j CTg2CiBhbGxvY2F0ZV9rYm9hcmQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15hbGxvY2F0 ZV9rYm9hcmQgKExpc3BfT2JqZWN0IHR5cGUpJC8KIGFsbG9jYXRlZAljLXNyYy9lbWFjcy9zcmMv cmVnZXguaAkzNDQKK2FscGhhZW51bWVyYXRlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc YWxwaGFlbnVtZXJhdGV7XFxlbnVtZXJhdGV7YX19JC8KK2FtcG5yCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcb3Bucnt7XFxzZlxcY2hhcmBcXCh9fSBcXGRlZlxcY2xucnt7XFxzZlxcY2hh cmBcXCl9fSAvCithbXBybQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxhbXBybSMxIHt7 XFxybVxcJiMxfVxcbGV0KD1cXG9wcm0gXFxsZXQpPVxcY2xybVxcIH0vCiBhbl9leHRlcm5fbGlu a2FnZQljLXNyYy9oLmgJNDQKIGFuX2V4dGVybl9saW5rYWdlCWMtc3JjL2guaAk1NgogYW5fZXh0 ZXJuX2xpbmthZ2VfcHRyCWMtc3JjL2guaAk0MwpAQCAtMjM4OSw4ICsxOTI0LDI3IEBAIGFwcGVu ZF9saXN0CXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15hcHBlbmRfbGlzdChbXSxbXSkuJC8KIGFw cGVuZF9zdHJpbmcJcGFzLXNyYy9jb21tb24ucGFzCS9ecHJvY2VkdXJlIGFwcGVuZF9zdHJpbmc7 KCooJC8KIGFwcGVuZF90b29sX2Jhcl9pdGVtCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9e YXBwZW5kX3Rvb2xfYmFyX2l0ZW0gKHZvaWQpJC8KIGFwcGVuZGl4CXBlcmwtc3JjL2h0bG1pZnkt Y3lzdGljCTI0CithcHBlbmRpeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGFwcGVuZGl4 PVxccmVsYXgkLworYXBwZW5kaXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRlZlxc YXBwZW5kaXh7XFxwYXJzZWFyZ1xcYXBwZW5kaXh6enp9JC8KIGFwcGVuZGl4X25hbWUJcGVybC1z cmMvaHRsbWlmeS1jeXN0aWMJMTMKIGFwcGVuZGl4X3RvYwlwZXJsLXNyYy9odGxtaWZ5LWN5c3Rp YwkxNgorYXBwZW5kaXhsZXR0ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxhcHBlbmRp eGxldHRlcntcXGNoYXJcXHRoZVxcYXBwZW5kaXhub30kLworYXBwZW5kaXhub2RlcmVmCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYXBwZW5kaXhub2RlcmVme1xcaWZ4XFxsYXN0bm9kZVxc cmVsYXhcXGVsc2UkLworYXBwZW5kaXhzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxh cHBlbmRpeHNlYz1cXHJlbGF4JC8KK2FwcGVuZGl4c2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XG91dGVyXFxkZWZcXGFwcGVuZGl4c2Vje1xccGFyc2VhcmdcXGFwcGVuZGl4c2VjdGlvbnp6Lwor YXBwZW5kaXhzZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcYXBwZW5kaXhzZWN0 aW9uPVxccmVsYXgkLworYXBwZW5kaXhzZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91 dGVyXFxkZWZcXGFwcGVuZGl4c2VjdGlvbntcXHBhcnNlYXJnXFxhcHBlbmRpeHNlY3RpLworYXBw ZW5kaXhzZWN0aW9uenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYXBwZW5kaXhzZWN0 aW9uenp6ICMxe1xcc2VjY2hlY2t7YXBwZW5kaXhzZWN0aS8KK2FwcGVuZGl4c2V0cmVmCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYXBwZW5kaXhzZXRyZWYjMXslJC8KK2FwcGVuZGl4c3Vi c2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcYXBwZW5kaXhzdWJzZWM9XFxyZWxheCQv CithcHBlbmRpeHN1YnNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxhcHBl bmRpeHN1YnNlY3tcXHBhcnNlYXJnXFxhcHBlbmRpeHN1YnNlYy8KK2FwcGVuZGl4c3Vic2VjdGlv bgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGFwcGVuZGl4c3Vic2VjdGlvbj1cXHJlbGF4 JC8KK2FwcGVuZGl4c3Vic2Vjenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYXBwZW5k aXhzdWJzZWN6enogIzF7XFxzZWNjaGVja3thcHBlbmRpeHN1YnNlYy8KK2FwcGVuZGl4c3Vic3Vi c2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcYXBwZW5kaXhzdWJzdWJzZWM9XFxyZWxh eCQvCithcHBlbmRpeHN1YnN1YnNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVm XFxhcHBlbmRpeHN1YnN1YnNlY3tcXHBhcnNlYXJnXFxhcHBlbmRpeHN1Yi8KK2FwcGVuZGl4c3Vi c3Vic2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGFwcGVuZGl4c3Vic3Vic2Vj dGlvbj1cXHJlbGF4JC8KK2FwcGVuZGl4c3Vic3Vic2Vjenp6CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcYXBwZW5kaXhzdWJzdWJzZWN6enogIzF7XFxzZWNjaGVja3thcHBlbmRpeHN1Yi8K K2FwcGVuZGl4enp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYXBwZW5kaXh6enogIzF7 XFxzZWNjaGVja3thcHBlbmRpeH0lJC8KIGFwcGx5X21vZGlmaWVycwljLXNyYy9lbWFjcy9zcmMv a2V5Ym9hcmQuYwkvXmFwcGx5X21vZGlmaWVycyAoaW50IG1vZGlmaWVycywgTGlzcF9PYmplY3Qg YmFzZSkkLwogYXBwbHlfbW9kaWZpZXJzX3VuY2FjaGVkCWMtc3JjL2VtYWNzL3NyYy9rZXlib2Fy ZC5jCS9eYXBwbHlfbW9kaWZpZXJzX3VuY2FjaGVkIChpbnQgbW9kaWZpZXJzLCBjaGFyICpiYXMv CiBhcmVmX2FkZHIJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXmFyZWZfYWRkciAoTGlzcF9PYmpl Y3QgYXJyYXksIHB0cmRpZmZfdCBpZHgpJC8KQEAgLTI0MTAsNiArMTk2NCw3IEBAIGFyZ3VtZW50 CWMtc3JjL2V0YWdzLmMJMjUzCiBhcmd2YWxzCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15hcmd2 YWxzKFtdKSAtLT4gW10uJC8KIGFycmF5CWMuYwkxOTAKIGFzY2lpCWMtc3JjL2VtYWNzL3NyYy9s aXNwLmgJMTU5OAorYXNpcwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGFzaXMjMXsjMX0k LwogYXNvcnQJY3Atc3JjL2Z1bmN0aW9ucy5jcHAJL152b2lkIGFzb3J0KGludCAqYSwgaW50IG51 bSl7JC8KIGFzc2VtYnktY29kZS13b3JkCWZvcnRoLXNyYy90ZXN0LWZvcnRoLmZ0aAkvXmNvZGUg YXNzZW1ieS1jb2RlLXdvcmQgKCBkdW5ubyB3aGF0IGl0IGRvZXMgKSQvCiBhc3NlcnQJYy1zcmMv ZXRhZ3MuYwkvXiMgZGVmaW5lIGFzc2VydCh4KSAoKHZvaWQpIDApJC8KQEAgLTI0MjcsNyArMTk4 MiwxMSBAQCBhdG9tCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15hdG9tKFgpIC0tPiBbWF0sIHth dG9taWMoWCl9LiQvCiBhdG9tdmFsCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15hdG9tdmFsKFgp IC0tPiBhdG9tKFgpLiQvCiBhdWx0cGFyaW5kZW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG5l d2RpbWVuXFxkZWZhdWx0cGFyaW5kZW50IFxcZGVmYXVsdHBhcmluZGVudCA9IDE1cC8KIGF1bHRw YXJpbmRlbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxccGFyaW5kZW50ID0gXFxkZWZhdWx0cGFy aW5kZW50JC8KLWF1bHRwYXJpbmRlbnRcaGFuZ1x0ZXh0aW5kZW50CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGZvb3RzdHJ1dFxccGFyaW5kZW50PVxcZGVmYXVsdHBhcmluZGVudFxcaGFuZ1xcdGV4 dGluLworYXVsdHBhcmluZGVudFxoYW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGZvb3RzdHJ1 dFxccGFyaW5kZW50PVxcZGVmYXVsdHBhcmluZGVudFxcaGFuZ1xcdGV4dGluLworYXV0aG9yCXRl eC1zcmMvdGV4aW5mby50ZXgJL14gICBcXGRlZlxcYXV0aG9ye1xccGFyc2VhcmdcXGF1dGhvcnp6 en0lJC8KK2F1dGhvcmZvbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgIFxcZGVmXFxhdXRob3Jm b250e1xcYXV0aG9ycm0gXFxub3JtYWxiYXNlbGluZXNraXAgPS8KK2F1dGhvcnJtCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGxldFxcYXV0aG9ycm0gPSBcXHNlY3JtJC8KK2F1dGhvcnp6egl0ZXgt c3JjL3RleGluZm8udGV4CS9eICAgXFxkZWZcXGF1dGhvcnp6eiMjMXtcXGlmc2VlbmF1dGhvclxc ZWxzZVxcdnNraXAgMHB0IC8KIGF1dG9faGVscAljLXNyYy9ldGFncy5jCTY5OQogYgljLXNyYy9o LmgJMTAzCiBiCWMtc3JjL2guaAkxMDQKQEAgLTI0MzksNyArMTk5OCwxNCBAQCBiCWMuYwkyNjAK IGIJYy5jCTI2MgogYgljcC1zcmMvYy5DCTEzMgogYglydWJ5LXNyYy90ZXN0MS5ydQkvXiBkZWYg YigpJC8KLWJhY2tzbGFzaD0wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcaW5kZXhiYWNr c2xhc2g9MCAgJW92ZXJyaWRkZW4gZHVyaW5nIFxccHJpbnRpbi8KK2IJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxiIyMxe1xccmVhbGJhY2tzbGFzaCBiIHsjIzF9fSQvCitiCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcYiMjMXtcXHJlYWxiYWNrc2xhc2ggYiB7IyMxfX0lJC8KK2IJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxiIzF7e1xcYmYgIzF9fSQvCitiCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGxldFxcYj1cXGluZGV4ZHVtbXlmb250JC8KK2IJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcbGV0XFxiPVxccHRleGIgXFxsZXRcXGM9XFxwdGV4YyBcXGxldFxcaT1cXHB0 ZXhpIFxcbGV0XFx0PVxcLworYmFja3NsYXNoCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc cmF3YmFja3NsYXNoeHh7XFxpbmRleGJhY2tzbGFzaH0lIFxcaW5kZXhiYWNrc2wvCitiYWNrc2xh c2gJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxyYXdiYWNrc2xhc2h4eHtcXGluZGV4YmFj a3NsYXNofSUkLworYmFsYW5jZWNvbHVtbnMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxi YWxhbmNlY29sdW1uc3slJC8KIGJhcgljLXNyYy9jLmMJL152b2lkIGJhcigpIHt3aGlsZSgwKSB7 fX0kLwogYmFyCWMtc3JjL2guaAkxOQogYmFyCWMuYwkxNDMKQEAgLTI0NTksOSArMjAyNSwxNiBA QCBiYmJiYmIJYy1zcmMvaC5oCTExMwogYmVlbl93YXJuZWQJYy1zcmMvZXRhZ3MuYwkyMjIKIGJl Zm9yZV9jb21tYW5kX2VjaG9fbGVuZ3RoCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTEzMAog YmVmb3JlX2NvbW1hbmRfa2V5X2NvdW50CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTEyOQor YmVnaW4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRlZlxcYmVnaW57XFxwYXJzZWFy Z1xcYmVnaW54eHh9JC8KK2JlZ2luZG91YmxlY29sdW1ucwl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGJlZ2luZG91YmxlY29sdW1uc3tcXGJlZ2luZ3JvdXAkLworYmVnaW54eHgJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxiZWdpbnh4eCAjMXslJC8KIGJlZ3Rva2VuCWMtc3JjL2V0 YWdzLmMJL14jZGVmaW5lCWJlZ3Rva2VuKGMpCShfYnRrW0NIQVIgKGMpXSkgXC8qIGMgY2FuIHN0 YXIvCiBiZWhhdmlvdXJfaW5mbwllcmwtc3JjL2dzX2RpYWxvZy5lcmwJL15iZWhhdmlvdXJfaW5m byhjYWxsYmFja3MpIC0+JC8KLWJmPWNtYngxMAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxmb250 XFxkZWZiZj1jbWJ4MTAgc2NhbGVkIFxcbWFnc3RlcDEgJXdhcyAxMzE0JC8KK2JmCXRleC1zcmMv dGV4aW5mby50ZXgJL14gICAgICBcXGxldFxccm09XFxzaG9ydGNvbnRybSBcXGxldFxcYmY9XFxz aG9ydGNvbnRiZiBcXGwvCitiZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGJme1xccmVh bGJhY2tzbGFzaCBiZiB9JC8KK2JmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcYmZ7XFxy ZWFsYmFja3NsYXNoIGJmIH0lJC8KK2JmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGZ7 XFxsZXRcXHRlbnR0PVxcZGVmdHQgXFxsZXRcXHRlbmJmID0gXFxkZWZiZiBcXGJmfS8KK2JmCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGZvbnRcXGRlZmJmPWNtYngxMCBzY2FsZWQgXFxtYWdzdGVw MSAld2FzIDEzMTQkLwogYmluZAlweXQtc3JjL3NlcnZlci5weQkvXiAgICBkZWYgYmluZChzZWxm LCBrZXksIGFjdGlvbik6JC8KIGJpbmRfcG9sbGluZ19wZXJpb2QJYy1zcmMvZW1hY3Mvc3JjL2tl eWJvYXJkLmMJL15iaW5kX3BvbGxpbmdfcGVyaW9kIChpbnQgbikkLwogYml0c193b3JkCWMtc3Jj L2VtYWNzL3NyYy9saXNwLmgJMTIzCkBAIC0yNDc3LDYgKzIwNTAsNyBAQCBib2R5aW5kZW50CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGFkdmFuY2VcXGxlZnRza2lwIGJ5IC1cXGRlZmJvZHlpbmRl bnQkLwogYm9keWluZGVudAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxhZHZhbmNlXFxsZWZ0c2tp cCBieSBcXGRlZmJvZHlpbmRlbnQgXFxhZHZhbmNlIFxccmlnaC8KIGJvZHlpbmRlbnQJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZXhkZW50YW1vdW50PVxcZGVmYm9keWluZGVudCQvCiBib2R5aW5k ZW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG5ld3NraXBcXGRlZmJvZHlpbmRlbnQgXFxkZWZi b2R5aW5kZW50PS40aW4kLworYm9sZGJyYXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxc Ym9sZGJyYXh7XFxsZXQoPVxcb3BuclxcbGV0KT1cXGNsbnJcXGxldFs9XFxsYnJiXFxsLwogYm9v bAljLmMJMjIyCiBib29sCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBpbXBvcnRfbW9kdWxl IGJvb2wuJC8KIGJvb2xfaGVhZGVyX3NpemUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxNDcyCkBA IC0yNDg5LDYgKzIwNjMsNyBAQCBib29sX3ZlY3Rvcl9zaXplCWMtc3JjL2VtYWNzL3NyYy9saXNw LmgJL15ib29sX3ZlY3Rvcl9zaXplIChMaXNwX09iamVjdCBhKSQvCiBib29sX3ZlY3Rvcl91Y2hh cl9kYXRhCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL15ib29sX3ZlY3Rvcl91Y2hhcl9kYXRhIChM aXNwX09iamVjdCBhKSQvCiBib29sX3ZlY3Rvcl93b3JkcwljLXNyYy9lbWFjcy9zcmMvbGlzcC5o CS9eYm9vbF92ZWN0b3Jfd29yZHMgKEVNQUNTX0lOVCBzaXplKSQvCiBib29sdmFyCWMtc3JjL2Vt YWNzL3NyYy9saXNwLmgJMjI4NworYnIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxiciA9 IFxccGFyJC8KIGJyYWNlbGV2CWMtc3JjL2V0YWdzLmMJMjUyMAogYnNwX0RldklkCWMtc3JjL2gu aAkyNQogYnQJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyOTg4CkBAIC0yNTAyLDEwICsyMDc3LDEz IEBAIGJ1aWxkX3B1cmVfY19zdHJpbmcJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXmJ1aWxkX3B1 cmVfY19zdHJpbmcgKGNvbnN0IGNoYXIgKnN0CiBidWlsZF9zdHJpbmcJYy1zcmMvZW1hY3Mvc3Jj L2xpc3AuaAkvXmJ1aWxkX3N0cmluZyAoY29uc3QgY2hhciAqc3RyKSQvCiBidWlsZGFjdAlwcm9s LXNyYy9uYXRkZWQucHJvbG9nCS9eYnVpbGRhY3QoW1N5bkluXSxSaWdodCxSaWdodFBsdXMxKTot JC8KIGJ1aWx0aW5fbGlzcF9zeW1ib2wJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXmJ1aWx0aW5f bGlzcF9zeW1ib2wgKGludCBpbmRleCkkLworYnVsbGV0CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcYnVsbGV0eyRcXHB0ZXhidWxsZXQkfSQvCitidWxsZXQJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcbGV0XFxidWxsZXQ9XFxwdGV4YnVsbGV0JC8KIGJ1cnN0CWMtc3JjL2guaAkyOAogYnVz eQljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCTE1OAogYnV0dG9uX2Rvd25fbG9jYXRpb24JYy1z cmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJNTIxMAogYnV0dG9uX2Rvd25fdGltZQljLXNyYy9lbWFj cy9zcmMva2V5Ym9hcmQuYwk1MjE4CitieWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJc XGRlZlxcYnlle1xccGFnZWFsaWdubWFjcm9cXHRyYWNpbmdzdGF0cz0xXFxwdGV4LwogYnl0ZV9z dGFjawljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTMwNDkKIGJ5dGVjb2RlX2Rlc3QJYy1zcmMvZW1h Y3Mvc3JjL2xpc3AuaAkzMDM3CiBieXRlY29kZV90b3AJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkz MDM2CkBAIC0yNTE2LDYgKzIwOTQsOCBAQCBieXRlc191c2VkCWMtc3JjL2VtYWNzL3NyYy9nbWFs bG9jLmMJMzEyCiBjCWMtc3JjL2guaAkvXiNkZWZpbmUgYygpIGQkLwogYwljLXNyYy9oLmgJMTA2 CiBjCWMuYwkxODAKK2MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxiPVxccHRleGIgXFxs ZXRcXGM9XFxwdGV4YyBcXGxldFxcaT1cXHB0ZXhpIFxcbGV0XFx0PVxcLworYwl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxsZXRcXGM9XFxjb21tZW50JC8KIGNfZXh0CWMtc3JjL2V0YWdzLmMJMjI3 MQogY2FjY2FjYWNjYQljLmMJL15jYWNjYWNhY2NhIChhLGIsYyxkLGUsZixnKSQvCiBjYWNoZUxS VUVudHJ5X3MJYy5jCTE3MgpAQCAtMjUyOCwyMSArMjEwOCw0NyBAQCBjYWxsb2MJYy1zcmMvZW1h Y3Mvc3JjL2dtYWxsb2MuYwk3MAogY2FuX2JlX251bGwJYy1zcmMvZW1hY3Mvc3JjL3JlZ2V4LmgJ MzcwCiBjYW5jZWxfZWNob2luZwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmNhbmNlbF9l Y2hvaW5nICh2b2lkKSQvCiBjYW5vbmljYWxpemVfZmlsZW5hbWUJYy1zcmMvZXRhZ3MuYwkvXmNh bm9uaWNhbGl6ZV9maWxlbmFtZSAocmVnaXN0ZXIgY2hhciAqZm4pJC8KK2NhcHNlbnVtZXJhdGUJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjYXBzZW51bWVyYXRle1xcZW51bWVyYXRle0F9 fSQvCitjYXJ0Ym90CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2FydGJvdHtcXGhib3gg dG8gXFxjYXJ0b3V0ZXJ7XFxoc2tpcFxcbHNraXAkLworY2FydG91Y2hlCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGxvbmdcXGRlZlxcY2FydG91Y2hleyUkLworY2FydHRvcAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGNhcnR0b3B7XFxoYm94IHRvIFxcY2FydG91dGVye1xcaHNraXBcXGxz a2lwJC8KIGNhc2VfTGlzcF9JbnQJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAk0MzgKIGNhdAljLXNy Yy9oLmgJODEKIGNhdAljcC1zcmMvYy5DCTEyNgogY2F0CWNwLXNyYy9jLkMJMTMwCiBjYXQJcHJv bC1zcmMvbmF0ZGVkLnByb2xvZwkvXmNhdChBLCBBbHBoYUBCZXRhLCBBc3MzLCBRczMsIHRyZWUo ZmUsQTpBbHBoYUBCZXRhLwogY2F0X2F0b21zCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15jYXRf YXRvbXMoQTEsQTIsQTMpOi0kLworY2JsCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2Js e3tcXGNpcmNsZVxcY2hhcicwMTJcXGhza2lwIC02cHR9fSQvCitjYnIJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxjYnJ7e1xcaHNraXAgNnB0XFxjaXJjbGVcXGNoYXInMDExfX0kLwogY2Nj Y2NjY2NjYwljLXNyYy9oLmgJMTE1CiBjZHIJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxMTU5CiBj ZWxsCXktc3JjL3BhcnNlLnkJMjc5CitjZW50ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxjZW50ZXJ7XFxwYXJzZWFyZ1xcY2VudGVyenp6fSQvCitjZW50ZXJ6enoJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxjZW50ZXJ6enogIzF7e1xcYWR2YW5jZVxcaHNpemUgYnkgLVxcbGVm dHNraXAkLwogY2dyZXAJaHRtbC1zcmMvc29mdHdhcmUuaHRtbAkvXmNncmVwJC8KIGNoYWluCWMt c3JjL2VtYWNzL3NyYy9saXNwLmgJMTE2MgogY2hhaW4JYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAky MjA2CiBjaGFpbgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTIzOTYKIGNoYWluX3N1YnN0CW1lcmMt c3JjL2FjY3VtdWxhdG9yLm0JL146LSBmdW5jIGNoYWluX3N1YnN0KGFjY3Vfc3Vic3QsIGFjY3Vf c3Vic3QpID0gYWNjdS8KIGNoYWluX3N1YnN0XzIJbWVyYy1zcmMvYWNjdW11bGF0b3IubQkvXjot IHByZWQgY2hhaW5fc3Vic3RfMihsaXN0KEEpOjppbiwgbWFwKEEsIEIpOjppbiwgLworY2hhcGJm CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcY2hhcGJmPVxcY2hhcHJtJC8KK2NoYXBicmVh awl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNoYXBicmVha3tcXGRvYnJlYWsgXFxjaGFw aGVhZGluZ3NraXAgey00MDAwfX0kLworY2hhcGVudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL14g ICAgICBcXGxldFxcY2hhcGVudHJ5ID0gXFxzaG9ydGNoYXBlbnRyeSQvCitjaGFwZW50cnkJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwZW50cnkjMSMyIzN7XFxkb2NoYXBlbnRyeXsj MlxcbGFiZWxzcGFjZSMxfS8KK2NoYXBlbnRyeWZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcY2hhcGVudHJ5Zm9udHN7XFxzZWNmb250cyBcXHJtfSQvCitjaGFwZm9udHMJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwZm9udHN7JSQvCitjaGFwaGVhZGluZwl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGNoYXBoZWFkaW5ne1xccGFyc2VhcmdcXGNoYXBoZWFkaW5n enp6fSQvCitjaGFwaGVhZGluZ3p6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNoYXBo ZWFkaW5nenp6ICMxe1xcY2hhcGJyZWFrICUkLworY2hhcG1hY3JvCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGdsb2JhbFxcbGV0XFxjaGFwbWFjcm89XFxjaGZvcGVuJC8KK2NoYXBtYWNybwl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcY2hhcG1hY3JvPVxcY2hmcGxhaW4kLwor Y2hhcG9kZHBhZ2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGFwb2RkcGFnZXtcXGNo YXBwYWdlciBcXGlmb2RkXFxwYWdlbm8gXFxlbHNlIFxcaC8KK2NoYXBwYWdlcgl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGNoYXBwYWdlcntcXHBhclxcdmZpbGxcXHN1cGVyZWplY3R9JC8K K2NoYXB0ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxjaGFwdGVyPVxccmVsYXgkLwor Y2hhcHRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxjaGFwdGVye1xccGFy c2VhcmdcXGNoYXB0ZXJ6enp9JC8KK2NoYXB0ZXJub2ZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcY2hhcHRlcm5vZm9udHN7JSQvCitjaGFwdGVyenp6CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcY2hhcHRlcnp6eiAjMXtcXHNlY2NoZWNre2NoYXB0ZXJ9JSQvCitjaGFyCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2hhcntcXHJlYWxiYWNrc2xhc2ggY2hhcn0kLwor Y2hhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNoYXJ7XFxyZWFsYmFja3NsYXNoIGNo YXJ9JSQvCiBjaGFyX2JpdHMJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyNDQzCiBjaGFyX3RhYmxl X3NwZWNpYWxzCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTY5MgogY2hhcnBvcwljLXNyYy9lbWFj cy9zcmMvbGlzcC5oCTIwMTEKQEAgLTI1NTMsMTQgKzIxNTksMjQgQEAgY2hlY2tfY29uc19saXN0 CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL14jICBkZWZpbmUgY2hlY2tfY29uc19saXN0KCkgbGlz cF9oX2NoZWMKIGNoZWNrZXIJbWFrZS1zcmMvTWFrZWZpbGUJL15jaGVja2VyOiQvCiBjaGVja2hk cgljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCS9eY2hlY2toZHIgKGNvbnN0IHN0cnVjdCBoZHIg KmhkcikkLwogY2hlY2tpc28JaHRtbC1zcmMvc29mdHdhcmUuaHRtbAkvXmNoZWNraXNvJC8KK2No Zm9wZW4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjaGZvcGVuICMxIzJ7XFxjaGFwb2Rk cGFnZSB7XFxjaGFwZm9udHMkLworY2hmcGxhaW4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxjaGZwbGFpbiAjMSMyeyUkLwogY2hpbGREaWRFeGl0CW9iamMtc3JjL1N1YnByb2Nlc3MubQkv Xi0gY2hpbGREaWRFeGl0JC8KIGNodW5rc19mcmVlCWMtc3JjL2VtYWNzL3NyYy9nbWFsbG9jLmMJ MzEzCiBjaHVua3NfdXNlZAljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCTMxMQorY2luZGV4CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY2luZGV4IHtcXGNwaW5kZXh9JC8KK2NpbmRleHN1 Ygl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNpbmRleHN1YiB7XFxiZWdpbmdyb3VwXFxv YmV5bGluZXNcXGNpbmRleHN1Yn0kLworY2luZGV4c3ViCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGdkZWZcXGNpbmRleHN1YiAiIzEiICMyXl5Ne1xcZW5kZ3JvdXAgJSQvCitjaXRlCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcY2l0ZSMjMXtcXHJlYWxiYWNrc2xhc2ggY2l0ZSB7IyMxfX0k LworY2l0ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNpdGUjIzF7XFxyZWFsYmFja3Ns YXNoIGNpdGUgeyMjMX19JSQvCitjaXRlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcY2l0 ZT1cXGluZGV4ZHVtbXlmb250JC8KK2NpdGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxj aXRlPVxcc21hcnRpdGFsaWMkLwogY2phdmEJYy1zcmMvZXRhZ3MuYwkyOTM2CiBjbGFzc19tZXRo b2QJcnVieS1zcmMvdGVzdC5yYgkvXiAgICAgICAgZGVmIENsYXNzRXhhbXBsZS5jbGFzc19tZXRo b2QkLwogY2xhc3NpZnlMaW5lCXBocC1zcmMvbGNlX2Z1bmN0aW9ucy5waHAJL14gICAgICBmdW5j dGlvbiBjbGFzc2lmeUxpbmUoJGxpbmUpJC8KIGNsZWFuCW1ha2Utc3JjL01ha2VmaWxlCS9eY2xl YW46JC8KIGNsZWFyCWNwLXNyYy9jb253YXkuaHBwCS9eICAgIHZvaWQgY2xlYXIodm9pZCkgeyBh bGl2ZSA9IDA7IH0kLworY2xlYXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjbGVhcntc XHBhcnNlYXJnXFxjbGVhcnh4eH0kLwogY2xlYXItYWJicmV2LXRhYmxlCWMtc3JjL2FiYnJldi5j CS9eREVGVU4gKCJjbGVhci1hYmJyZXYtdGFibGUiLCBGY2xlYXJfYWJicmV2X3RhYmxlLCAvCiBj bGVhci10aGlzLWNvbW1hbmQta2V5cwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXkRFRlVO ICgiY2xlYXItdGhpcy1jb21tYW5kLWtleXMiLCBGY2xlYXJfdGhpc19jb21tLwogY2xlYXJBbGxL ZXkJb2JqY3BwLXNyYy9TaW1wbGVDYWxjLk0JL14tIGNsZWFyQWxsS2V5OnNlbmRlciQvCkBAIC0y NTcwLDEyICsyMTg2LDE5IEBAIGNsZWFyX2lucHV0X3BlbmRpbmcJYy1zcmMvZW1hY3Mvc3JjL2tl eWJvYXJkLmMJL15jbGVhcl9pbnB1dF9wZW5kaW5nICh2b2lkKSQvCiBjbGVhcl9uZWlnaGJvcnMJ Y3Atc3JjL2NsaGVpci5jcHAJL152b2lkIGRpc2NyZXRlX2xvY2F0aW9uOjpjbGVhcl9uZWlnaGJv cnModm9pZCkkLwogY2xlYXJfc2NyZWVuCWNwLXNyYy9zY3JlZW4uY3BwCS9edm9pZCBjbGVhcl9z Y3JlZW4odm9pZCkkLwogY2xlYXJfd2FpdGluZ19mb3JfaW5wdXQJYy1zcmMvZW1hY3Mvc3JjL2tl eWJvYXJkLmMJL15jbGVhcl93YWl0aW5nX2Zvcl9pbnB1dCAodm9pZCkkLworY2xlYXJ4eHgJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjbGVhcnh4eCAjMXskLworY2xucgl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXG9wbnJ7e1xcc2ZcXGNoYXJgXFwofX0gXFxkZWZcXGNsbnJ7e1xc c2ZcXGNoYXJgXFwpfX0gLworY2xybQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxjbHJt eyUgUHJpbnQgYSBwYXJlbiBpbiByb21hbiBpZiBpdCBpcyB0YWtpbi8KIGNtZF9lcnJvcgljLXNy Yy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmNtZF9lcnJvciAoTGlzcF9PYmplY3QgZGF0YSkkLwog Y21kX2Vycm9yX2ludGVybmFsCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eY21kX2Vycm9y X2ludGVybmFsIChMaXNwX09iamVjdCBkYXRhLCBjb25zdCBjaGFyICovCiBjbXBmbgljLXNyYy9l bWFjcy9zcmMvbGlzcC5oCS9eICBib29sICgqY21wZm4pIChzdHJ1Y3QgaGFzaF90YWJsZV90ZXN0 ICp0LCBMaXNwX08vCiBjbXQJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmNtdDotJC8KIGNuYW1l CWMtc3JjL2V0YWdzLmMJMjUxOQogY25vCWMtc3JjL2V0YWdzLmMJMjI0Citjb2RlCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcY29kZSMjMXtcXHJlYWxiYWNrc2xhc2ggY29kZSB7IyMxfX0k LworY29kZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNvZGUjIzF7XFxyZWFsYmFja3Ns YXNoIGNvZGUgeyMjMX19JSQvCitjb2RlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcY29k ZT1cXGluZGV4ZHVtbXlmb250JC8KK2NvZGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxj b2RlPVxcdGNsb3NlJC8KIGNvbG9yaQljcC1zcmMvYy5DCTQwCiBjb21tYWFyZ3ZhbHMJcHJvbC1z cmMvbmF0ZGVkLnByb2xvZwkvXmNvbW1hYXJndmFscyhBcmdzKSAtLT4kLwogY29tbWFuZAljLXNy Yy9ldGFncy5jCTE4NwpAQCAtMjU4NSw2ICsyMjA4LDggQEAgY29tbWFuZF9sb29wXzEJYy1zcmMv ZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15jb21tYW5kX2xvb3BfMSAodm9pZCkkLwogY29tbWFuZF9s b29wXzIJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15jb21tYW5kX2xvb3BfMiAoTGlzcF9P YmplY3QgaWdub3JlKSQvCiBjb21tYW5kX2xvb3BfbGV2ZWwJYy1zcmMvZW1hY3Mvc3JjL2tleWJv YXJkLmMJMTk1CiBjb21tZW50CXBocC1zcmMvbGNlX2Z1bmN0aW9ucy5waHAJL14gICAgICBmdW5j dGlvbiBjb21tZW50KCRsaW5lLCAkY2xhc3MpJC8KK2NvbW1lbnQJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxjb21tZW50e1xcY2F0Y29kZSA2ND1cXG90aGVyIFxcY2F0Y29kZSAxMjM9XFxv dGhlLworY29tbWVudHh4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNvbW1lbnR4eHgg IzF7XFxjYXRjb2RlIDY0PTAgXFxjYXRjb2RlIDEyMz0xIFxcYy8KIGNvbW11dGF0aXZpdHlfYXNz ZXJ0aW9uCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBwcmVkIGNvbW11dGF0aXZpdHlfYXNz ZXJ0aW9uKG1vZHVsZV9pbmZvOjppbixsaS8KIGNvbXBpbGVfZW1wdHkJcHJvbC1zcmMvbmF0ZGVk LnByb2xvZwkvXmNvbXBpbGVfZW1wdHk6LSQvCiBjb21waWxlX2xleAlwcm9sLXNyYy9uYXRkZWQu cHJvbG9nCS9eY29tcGlsZV9sZXgoRmlsZSk6LSQvCkBAIC0yNjA3LDYgKzIyMzIsMTAgQEAgY29u c3VsdF9sZXgJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmNvbnN1bHRfbGV4Oi0kLwogY29udGVu dHMJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxMzcyCiBjb250ZW50cwljLXNyYy9lbWFjcy9zcmMv bGlzcC5oCTE2MDAKIGNvbnRlbnRzCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTYyNAorY29udGVu dHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxjb250ZW50cz1cXHJlbGF4JC8KK2NvbnRl bnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXGNvbnRlbnRzeyUkLworY29w eXJpZ2h0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcY29weXJpZ2h0e1xccmVhbGJhY2tz bGFzaCBjb3B5cmlnaHQgfSUkLworY29weXJpZ2h0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcY29weXJpZ2h0e1xccmVhbGJhY2tzbGFzaCBjb3B5cmlnaHR9JC8KIGNvdW50CWMtc3JjL2Vt YWNzL3NyYy9saXNwLmgJMTg2MwogY291bnRfbGF5ZXJzCWx1YS1zcmMvYWxsZWdyby5sdWEJL15s b2NhbCBmdW5jdGlvbiBjb3VudF9sYXllcnMgKGxheWVyKSQvCiBjb3VudF93b3JkcwljLXNyYy90 YWIuYwkvXnN0YXRpYyBpbnQJCWNvdW50X3dvcmRzKGNoYXIgKnN0ciwgY2hhciBkZWxpbSkkLwpA QCAtMjYyNiwxMCArMjI1NSwyMCBAQCBjcmVhdGVfbmV3X29yaWdfcmVjdXJzaXZlX2dvYWxzCW1l cmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBmdW5jIGNyZWF0ZV9uZXdfb3JpZwogY3JlYXRlX25l d19yZWN1cnNpdmVfZ29hbHMJbWVyYy1zcmMvYWNjdW11bGF0b3IubQkvXjotIGZ1bmMgY3JlYXRl X25ld19yZWN1cnNpdmVfZ29hbHMoc2V0KGFjY3VfZ29hbF9pLwogY3JlYXRlX25ld192YXIJbWVy Yy1zcmMvYWNjdW11bGF0b3IubQkvXjotIHByZWQgY3JlYXRlX25ld192YXIocHJvZ192YXI6Omlu LCBzdHJpbmc6OmluLCBwLwogY3JlYXRlX29yaWdfZ29hbAltZXJjLXNyYy9hY2N1bXVsYXRvci5t CS9eOi0gcHJlZCBjcmVhdGVfb3JpZ19nb2FsKGhsZHNfZ29hbDo6aW4sIGFjY3Vfc3Vic3QvCitj cm9wbWFya3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxjcm9wbWFya3N7XFxsZXRcXG9u ZXBhZ2VvdXQ9XFxjcm9wcGFnZW91dCB9JC8KK2Nyb3BwYWdlb3V0CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcY3JvcHBhZ2VvdXQjMXtcXGhvZmZzZXQ9MHB0ICUgbWFrZSBzdXJlIHRoaXMg ZC8KIGNzY0luaXRUaW1lCWNwLXNyYy9jLkMJNwogY3NjU2VnbWVudGF0aW9uVGltZQljcC1zcmMv Yy5DCTgKK2NzbmFtZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxleHBhbmRhZnRlclxcbGV0XFxj c25hbWUgSUYjMVxcZW5kY3NuYW1lPVxccmVsYXh9JC8KK2NzbmFtZQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxleHBhbmRhZnRlclxcbGV0XFxjc25hbWUgSUYjMVxcZW5kY3NuYW1lPVxcc2V0fSQv Citjc25hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZXhwYW5kYWZ0ZXJcXGxldFxcY3NuYW1l IzFpbmRmaWxlXFxlbmRjc25hbWU9XFxzeW5pbmQvCitjc25hbWUJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZXhwYW5kYWZ0ZXJcXHhkZWZcXGNzbmFtZSMxaW5kZXhcXGVuZGNzbmFtZXslCSUgRGVm aS8KK2NzbmFtZQl0ZXgtc3JjL3RleGluZm8udGV4CS9ee1xcY2F0Y29kZWBcXCc9XFxvdGhlclxc ZXhwYW5kYWZ0ZXIgXFxnZGVmIFxcY3NuYW1lIFgjMVxcLwogY3N0YWNrCWMtc3JjL2V0YWdzLmMJ MjUyMwogY3RhZ3MJbWFrZS1zcmMvTWFrZWZpbGUJL15jdGFnczogZXRhZ3MuYyAke09CSlN9JC8K K2N0bAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGN0bHt7XFxjaXJjbGVcXGNoYXInMDEz XFxoc2tpcCAtNnB0fX0lIDZwdCBmcm9tIC8KK2N0cgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGN0cnt7XFxoc2tpcCA2cHRcXGNpcmNsZVxcY2hhcicwMTB9fSQvCitjdHJsCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcY3RybCAjMXt7XFx0dCBcXHJhd2JhY2tzbGFzaCBcXGhhdH0j MX0kLwogY3VybGIJYy1zcmMvZXRhZ3MuYwkyOTI5CiBjdXJsaW5lcG9zCWMtc3JjL2V0YWdzLmMJ MjkzMQogY3VycmVudC1pZGxlLXRpbWUJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15ERUZV TiAoImN1cnJlbnQtaWRsZS10aW1lIiwgRmN1cnJlbnRfaWRsZV90aW1lLCBTYy8KQEAgLTI2NDAs NiArMjI3OSwxMCBAQCBjdXJyeS10ZXN0CXNjbS1zcmMvdGVzdC5zY20JL14oZGVmaW5lICgoKCgo Y3VycnktdGVzdCBhKSBiKSBjKSBkKSBlKSQvCiBjdXJzb3JfcG9zaXRpb24JY3Atc3JjL3NjcmVl bi5jcHAJL152b2lkIGN1cnNvcl9wb3NpdGlvbih2b2lkKSQvCiBjdXJzb3JfeAljcC1zcmMvc2Ny ZWVuLmNwcAkxNQogY3Vyc29yX3kJY3Atc3JjL3NjcmVlbi5jcHAJMTUKK2N2YXJoZWFkZXJcZGVm Y3Z0eXBlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZm9wdmFycGFyc2Vib2R5XFxFZGVmY3Zc XGRlZmN2eFxcZGVmY3ZhcmhlYWRlclxcZGVmLworY3Z0eXBlCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGJlZ2luZ3JvdXBcXGRlZm5hbWUgeyMyfXtcXGRlZmN2dHlwZXt9IG9mICMxfSUkLworY3Z0 eXBlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZm9wdmFycGFyc2Vib2R5XFxFZGVmY3ZcXGRl ZmN2eFxcZGVmY3ZhcmhlYWRlclxcZGVmLworY3Z4XGRlZmN2YXJoZWFkZXIJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmb3B2YXJwYXJzZWJvZHlcXEVkZWZjdlxcZGVmY3Z4XFxkZWZjdmFyaGVh ZGVyXFxkZWYvCiBkCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJNDY3MwogZAljLXNyYy9lbWFjcy9z cmMvbGlzcC5oCTQ2NzkKIGQJYy5jCTE4MApAQCAtMjY2MSw2ICsyMzA0LDE1IEBAIGRlZmF1bHRf Q19oZWxwCWMtc3JjL2V0YWdzLmMJNTE1CiBkZWZhdWx0X0NfaGVscAljLXNyYy9ldGFncy5jCTUy MwogZGVmYXVsdF9DX3N1ZmZpeGVzCWMtc3JjL2V0YWdzLmMJNTEyCiBkZWZjZWxsCWMtc3JjL2Vt YWNzL3NyYy9saXNwLmgJMjM1MQorZGVmY29kZWluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcZGVmY29kZWluZGV4e1xccGFyc2VhcmdcXG5ld2NvZGVpbmRleH0kLworZGVmY3YJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZjdiAjMSB7XFxkZWZcXGRlZmN2dHlwZXsjMX0l JC8KK2RlZmN2YXJoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZjdmFyaGVh ZGVyICMxIzIjM3slJC8KK2RlZmN2dHlwZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRl ZmN2ICMxIHtcXGRlZlxcZGVmY3Z0eXBleyMxfSUkLworZGVmY3Z4CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZGVmY3Z4ICMxIHtcXGVycm1lc3NhZ2V7QGRlZmN2eCBpbiBpbnZhbGlkIGNv bi8KK2RlZmZuCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmZm57XFxkZWZtZXRocGFy c2Vib2R5XFxFZGVmZm5cXGRlZmZueFxcZGVmZm5oZS8KK2RlZmZuaGVhZGVyCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcZGVmZm5oZWFkZXIgIzEjMiMze1xcZG9pbmQge2ZufXtcXGNvZGV7 IzJ9fSUkLworZGVmZm54CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmZm54ICMxIHtc XGVycm1lc3NhZ2V7QGRlZmZueCBpbiBpbnZhbGlkIGNvbi8KK2RlZmluZGV4CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcZGVmaW5kZXh7XFxwYXJzZWFyZ1xcbmV3aW5kZXh9JC8KIGRlZmlu ZS1hYmJyZXYJYy1zcmMvYWJicmV2LmMJL15ERUZVTiAoImRlZmluZS1hYmJyZXYiLCBGZGVmaW5l X2FiYnJldiwgU2RlZmluZV9hYi8KIGRlZmluZS1hYmJyZXYtdGFibGUJYy1zcmMvYWJicmV2LmMJ L15ERUZVTiAoImRlZmluZS1hYmJyZXYtdGFibGUiLCBGZGVmaW5lX2FiYnJldl90YWJsZS8KIGRl ZmluZS1nbG9iYWwtYWJicmV2CWMtc3JjL2FiYnJldi5jCS9eREVGVU4gKCJkZWZpbmUtZ2xvYmFs LWFiYnJldiIsIEZkZWZpbmVfZ2xvYmFsX2FiYnIvCkBAIC0yNjY4LDcgKzIzMjAsNjMgQEAgZGVm aW5lLW1vZGUtYWJicmV2CWMtc3JjL2FiYnJldi5jCS9eREVGVU4gKCJkZWZpbmUtbW9kZS1hYmJy ZXYiLCBGZGVmaW5lX21vZGVfYWIKIGRlZmluZWRfR0NfQ0hFQ0tfU1RSSU5HX0JZVEVTCWMtc3Jj L2VtYWNzL3NyYy9saXNwLmgJNDY2MwogZGVmaW5lZF9HQ19DSEVDS19TVFJJTkdfQllURVMJYy1z cmMvZW1hY3Mvc3JjL2xpc3AuaAk0NjY1CiBkZWZpbmVkZWYJYy1zcmMvZXRhZ3MuYwkyNDY0Citk ZWZpdmFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmaXZhcntcXGRlZnZycGFyc2Vi b2R5XFxFZGVmaXZhclxcZGVmaXZhcnhcXGRlZi8KK2RlZml2YXJoZWFkZXIJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxkZWZpdmFyaGVhZGVyICMxIzIjM3slJC8KK2RlZml2YXJ4CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmaXZhcnggIzEge1xcZXJybWVzc2FnZXtAZGVmaXZh cnggaW4gaW52YWxpZC8KK2RlZm1hYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm1h Y3tcXGRlZnBhcnNlYm9keVxcRWRlZm1hY1xcZGVmbWFjeFxcZGVmbWFjaGUvCitkZWZtYWNoZWFk ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZtYWNoZWFkZXIgIzEjMntcXGRvaW5k IHtmbn17XFxjb2RleyMxfX0lIE1hay8KK2RlZm1hY3gJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxkZWZtYWN4ICMxIHtcXGVycm1lc3NhZ2V7QGRlZm1hY3ggaW4gaW52YWxpZCBjLworZGVm bWV0aG9kCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmbWV0aG9ke1xcZGVmbWV0aHBh cnNlYm9keVxcRWRlZm1ldGhvZFxcZGVmbWV0LworZGVmbWV0aG9kaGVhZGVyCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcZGVmbWV0aG9kaGVhZGVyICMxIzIjM3slJC8KK2RlZm1ldGhvZHgJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZtZXRob2R4ICMxIHtcXGVycm1lc3NhZ2V7 QGRlZm1ldGhvZHggaW4gaW52LworZGVmbWV0aHBhcnNlYm9keQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGRlZm1ldGhwYXJzZWJvZHkgIzEjMiMzIzQge1xcYmVnaW5ncm91cFxcaW5FTlYg LworZGVmbmFtZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm5hbWUgIzEjMnslJC8K K2RlZm9wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmb3AgIzEge1xcZGVmXFxkZWZv cHR5cGV7IzF9JSQvCitkZWZvcGhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRl Zm9waGVhZGVyICMxIzIjM3slJC8KK2RlZm9wcGFyc2Vib2R5CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcZGVmb3BwYXJzZWJvZHkgIzEjMiMzIzQjNSB7XFxiZWdpbmdyb3VwXFxpbkVOViAv CitkZWZvcHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZvcHR7XFxkZWZ2YXJwYXJz ZWJvZHlcXEVkZWZvcHRcXGRlZm9wdHhcXGRlZm9wLworZGVmb3B0aGVhZGVyCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcZGVmb3B0aGVhZGVyICMxIzJ7XFxkb2luZCB7dnJ9e1xcY29kZXsj MX19JSBNYWsvCitkZWZvcHR4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmb3B0eCAj MSB7XFxlcnJtZXNzYWdle0BkZWZvcHR4IGluIGludmFsaWQgYy8KK2RlZm9wdHlwZQl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm9wICMxIHtcXGRlZlxcZGVmb3B0eXBleyMxfSUkLwor ZGVmb3B2YXJwYXJzZWJvZHkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZvcHZhcnBh cnNlYm9keSAjMSMyIzMjNCM1IHtcXGJlZ2luZ3JvdXBcXGluRS8KK2RlZm9weAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGRlZm9weCAjMSB7XFxlcnJtZXNzYWdle0BkZWZvcHggaW4gaW52 YWxpZCBjb24vCitkZWZwYXJzZWJvZHkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZw YXJzZWJvZHkgIzEjMiMze1xcYmVnaW5ncm91cFxcaW5FTlYlIEVudmlyby8KK2RlZnNwZWMJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZzcGVje1xcZGVmcGFyc2Vib2R5XFxFZGVmc3Bl Y1xcZGVmc3BlY3hcXGRlZnNwLworZGVmc3BlY2hlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGRlZnNwZWNoZWFkZXIgIzEjMntcXGRvaW5kIHtmbn17XFxjb2RleyMxfX0lIE1hLwor ZGVmc3BlY3gJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZzcGVjeCAjMSB7XFxlcnJt ZXNzYWdle0BkZWZzcGVjeCBpbiBpbnZhbGlkLworZGVmdHAJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxkZWZ0cHtcXGRlZnZycGFyc2Vib2R5XFxFZGVmdHBcXGRlZnRweFxcZGVmdHBoZWFk LworZGVmdHBhcmdzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHBhcmdzICMxe1xc YmYgXFxkZWZ2YXJhcmdzeyMxfX0kLworZGVmdHBoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxkZWZ0cGhlYWRlciAjMSMyIzN7XFxkb2luZCB7dHB9e1xcY29kZXsjMn19JSQvCitk ZWZ0cHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0cHggIzEge1xcZXJybWVzc2Fn ZXtAZGVmdHB4IGluIGludmFsaWQgY29uLworZGVmdHlwZWZuCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcZGVmdHlwZWZue1xcZGVmbWV0aHBhcnNlYm9keVxcRWRlZnR5cGVmblxcZGVmdHlw LworZGVmdHlwZWZuaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZu aGVhZGVyICMxIzIjM3tcXGRlZnR5cGVmbmhlYWRlcnh7IzF9ey8KK2RlZnR5cGVmbmhlYWRlcngJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBlZm5oZWFkZXJ4ICMxIzIjMyAjNFxc cmVsYXh7JSQvCitkZWZ0eXBlZm54CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlw ZWZueCAjMSB7XFxlcnJtZXNzYWdle0BkZWZ0eXBlZm54IGluIGludi8KK2RlZnR5cGVmdW4JdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBlZnVue1xcZGVmcGFyc2Vib2R5XFxFZGVm dHlwZWZ1blxcZGVmdHlwZWYvCitkZWZ0eXBlZnVuYXJncwl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGRlZnR5cGVmdW5hcmdzICMxeyUkLworZGVmdHlwZWZ1bmhlYWRlcgl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGVmdW5oZWFkZXIgIzEjMntcXGRlZnR5cGVmdW5oZWFk ZXJ4eyMxfSMvCitkZWZ0eXBlZnVuaGVhZGVyeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGRlZnR5cGVmdW5oZWFkZXJ4ICMxIzIgIzNcXHJlbGF4eyUkLworZGVmdHlwZXVueAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGV1bnggIzEge1xcZXJybWVzc2FnZXtAZGVmdHlw ZXVueCBpbiBpbnYvCitkZWZ0eXBldmFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVm dHlwZXZhcntcXGRlZnZhcnBhcnNlYm9keVxcRWRlZnR5cGV2YXJcXGRlZnR5LworZGVmdHlwZXZh cmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGV2YXJoZWFkZXIgIzEj MnslJC8KK2RlZnR5cGV2YXJ4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZXZh cnggIzEge1xcZXJybWVzc2FnZXtAZGVmdHlwZXZhcnggaW4gaS8KK2RlZnR5cGV2cgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGV2cntcXGRlZnZycGFyc2Vib2R5XFxFZGVmdHlw ZXZyXFxkZWZ0eXBldi8KK2RlZnR5cGV2cmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGRlZnR5cGV2cmhlYWRlciAjMSMyIzN7XFxkb2luZCB7dnJ9e1xcY29kZXsjM319LworZGVm dHlwZXZyeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGV2cnggIzEge1xcZXJy bWVzc2FnZXtAZGVmdHlwZXZyeCBpbiBpbnYvCitkZWZ1bgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGRlZnVue1xcZGVmcGFyc2Vib2R5XFxFZGVmdW5cXGRlZnVueFxcZGVmdW5oZWFkZXIv CiBkZWZ1bl9mdW5jMQljLmMJL15kZWZ1bl9mdW5jMSgpJC8KK2RlZnVuYXJncwl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGRlZnVuYXJncyAjMXtcXGZ1bmN0aW9ucGFyZW5zIFxcc2wkLwor ZGVmdW5oZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ1bmhlYWRlciAjMSMy e1xcZG9pbmQge2ZufXtcXGNvZGV7IzF9fSUgTWFrZS8KK2RlZnVueAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGRlZnVueCAjMSB7XFxlcnJtZXNzYWdle0BkZWZ1bnggaW4gaW52YWxpZCBj b24vCitkZWZ2YXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ2YXJ7XFxkZWZ2YXJw YXJzZWJvZHlcXEVkZWZ2YXJcXGRlZnZhcnhcXGRlZnZhLworZGVmdmFyYXJncwl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGRlZnZhcmFyZ3MgIzF7XFxub3JtYWxwYXJlbnMgIzElJC8KK2Rl ZnZhcmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnZhcmhlYWRlciAjMSMy e1xcZG9pbmQge3ZyfXtcXGNvZGV7IzF9fSUgTWFrLworZGVmdmFycGFyc2Vib2R5CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdmFycGFyc2Vib2R5ICMxIzIjM3tcXGJlZ2luZ3JvdXBc XGluRU5WJSBFbnYvCitkZWZ2YXJ4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdmFy eCAjMSB7XFxlcnJtZXNzYWdle0BkZWZ2YXJ4IGluIGludmFsaWQgYy8KK2RlZnZyCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdnJ7XFxkZWZ2cnBhcnNlYm9keVxcRWRlZnZyXFxkZWZ2 cnhcXGRlZnZyaGVhZC8KK2RlZnZyaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc ZGVmdnJoZWFkZXIgIzEjMiMze1xcZG9pbmQge3ZyfXtcXGNvZGV7IzJ9fSUkLworZGVmdnJwYXJz ZWJvZHkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ2cnBhcnNlYm9keSAjMSMyIzMj NCB7XFxiZWdpbmdyb3VwXFxpbkVOViAlJC8KK2RlZnZyeAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGRlZnZyeCAjMSB7XFxlcnJtZXNzYWdle0BkZWZ2cnggaW4gaW52YWxpZCBjb24vCiBk ZWxlZ2F0ZQlvYmpjLXNyYy9TdWJwcm9jZXNzLm0JL14tIGRlbGVnYXRlJC8KIGRlbGV0ZUl0ZW0J cHl0LXNyYy9zZXJ2ZXIucHkJL14gICAgZGVmIGRlbGV0ZUl0ZW0oc2VsZik6JC8KIGRlbGV0ZV9r Ym9hcmQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15kZWxldGVfa2JvYXJkIChLQk9BUkQg KmtiKSQvCkBAIC0yNjc4LDI1ICsyMzg2LDU0IEBAIGRlbGl2ZXJfdXNlcl9zaWduYWwJYy1zcmMv ZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15kZWxpdmVyX3VzZXJfc2lnbmFsIChpbnQgc2lnKSQvCiBk ZXB0aAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE2MTgKIGRlcml2ZWRfYW5hbHlzZXMJcHJvbC1z cmMvbmF0ZGVkLnByb2xvZwkvXmRlcml2ZWRfYW5hbHlzZXMoW10sW10pLiQvCiBkZXNjcmliZV9h YmJyZXYJYy1zcmMvYWJicmV2LmMJL15kZXNjcmliZV9hYmJyZXYgKHN5bSwgc3RyZWFtKSQvCitk ZXNjcmlwdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlc2NyaXB0aW9ue1xcdGFi bGV6e1xcZG9udGluZGV4fXsxfXt9e317fXt9fSQvCiBkZXRlY3RfaW5wdXRfcGVuZGluZwljLXNy Yy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmRldGVjdF9pbnB1dF9wZW5kaW5nICh2b2lkKSQvCiBk ZXRlY3RfaW5wdXRfcGVuZGluZ19pZ25vcmVfc3F1ZWV6YWJsZXMJYy1zcmMvZW1hY3Mvc3JjL2tl eWJvYXJkLmMJL15kZXRlY3RfaW5wdXRfcGVuZGluZ19pZ25vcmVfc3F1ZWV6YWJsZXMgKHZvaWQp JC8KIGRldGVjdF9pbnB1dF9wZW5kaW5nX3J1bl90aW1lcnMJYy1zcmMvZW1hY3Mvc3JjL2tleWJv YXJkLmMJL15kZXRlY3RfaW5wdXRfcGVuZGluZ19ydW5fdGltZXJzIChib29sIGRvX2Rpc3BsYXkp JC8KK2RmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGZ7XFxsZXRcXHRlbnR0PVxcZGVm dHQgXFxsZXRcXHRlbmJmID0gXFxkZWZiZiBcXGJmfS8KK2Rmbgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGRmbiMjMXtcXHJlYWxiYWNrc2xhc2ggZGZuIHsjIzF9fSQvCitkZm4JdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcbGV0XFxkZm49XFxzbWFydGl0YWxpYyQvCiBkaWFsb2dfbG9vcAll cmwtc3JjL2dzX2RpYWxvZy5lcmwJL15kaWFsb2dfbG9vcChNb2R1bGUsIFdpbmRvdywgRnJhbWUs IEV4dHJhLCBBcmdzKSAtPi8KIGRpZ25vcmVyZXN0CWMtc3JjL2V0YWdzLmMJMjQ2MworZGlyZW50 cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkaXJlbnRyeXtcXGJlZ2luZ3JvdXBcXGRp cmVudHJ5eHh4fSQvCitkaXJlbnRyeXh4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsb25nXFxk ZWZcXGRpcmVudHJ5eHh4ICMxXFxlbmQgZGlyZW50cnl7XFxlbmRncm91cFxcaWcvCiBkaXNjYXJk LWlucHV0CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eREVGVU4gKCJkaXNjYXJkLWlucHV0 IiwgRmRpc2NhcmRfaW5wdXQsIFNkaXNjYXJkX2kvCiBkaXNjYXJkX21vdXNlX2V2ZW50cwljLXNy Yy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmRpc2NhcmRfbW91c2VfZXZlbnRzICh2b2lkKSQvCiBk aXNjcmV0ZV9sb2NhdGlvbgljcC1zcmMvY2xoZWlyLmhwcAkvXiAgICBkaXNjcmV0ZV9sb2NhdGlv bihpbnQgeGksIGludCB5aSwgaW50IHppKTokLwogZGlzY3JldGVfbG9jYXRpb24JY3Atc3JjL2Ns aGVpci5ocHAJNTYKIGRpc3BsYXkJY3Atc3JjL2NvbndheS5jcHAJL152b2lkIGRpc3BsYXkodm9p ZCkkLworZGlzcGxheQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRpc3BsYXl7XFxiZWdp bmdyb3VwXFxpbkVOViAlVGhpcyBncm91cCBlbmRzIGF0LwogZGlzcG9zZXRleHRzdHJpbmcJcGFz LXNyYy9jb21tb24ucGFzCS9ecHJvY2VkdXJlIGRpc3Bvc2V0ZXh0c3RyaW5nOygqKCQvCitkbW4J dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkbW4jMXtcXHRoaW5zcGFjZSAjMX0kLwogZG5v bmUJYy1zcmMvZXRhZ3MuYwkyNDYwCitkb2JyZWFrCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcZG9icmVhayMxIzJ7XFxwYXJcXGlmZGltXFxsYXN0c2tpcDwjMVxccmVtb3ZlbGFzdC8KIGRv YwljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE2ODkKK2RvY2hhcGVudHJ5CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcZG9jaGFwZW50cnkjMSMyeyUkLworZG9jb2RlaW5kZXgJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxkb2NvZGVpbmRleCMxe1xcZWRlZlxcaW5kZXhuYW1leyMxfVxc cGFyc2VhcmdcXHNpLwogZG9nCWMtc3JjL2guaAk4MQogZG9nCWNwLXNyYy9jLkMJMTI2CiBkb2cJ Y3Atc3JjL2MuQwkxMzAKK2RvaW5kCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9pbmQg IzEjMnslJC8KK2RvaW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb2luZGV4IzF7 XFxlZGVmXFxpbmRleG5hbWV7IzF9XFxwYXJzZWFyZ1xcc2luZ2xlLworZG9ub2RlcmVmCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9ub2RlcmVme1xcaWZ4XFxsYXN0bm9kZVxccmVsYXhc XGVsc2UkLworZG9udGluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9udGluZGV4 ICMxe30kLworZG9wYWdlbm8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3BhZ2VubyMx e3tcXHJtICMxfX0kLworZG9wcmludGluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc ZG9wcmludGluZGV4IzF7JSQvCitkb3NlY2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcZG9zZWNlbnRyeSMxIzJ7JSQvCitkb3NldHEJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxkb3NldHEgIzEjMnt7XFxsZXRcXGZvbGlvPTAgXFx0dXJub2ZmYWN0aXZlJSQvCitkb3Nob3J0 cGFnZW5vCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9zaG9ydHBhZ2VubyMxe3tcXHJt ICMxfX0kLworZG9zdWJpbmQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3N1YmluZCAj MSMyIzN7JSQvCitkb3N1YnNlY2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZG9z dWJzZWNlbnRyeSMxIzJ7JSQvCitkb3N1YnN1YnNlY2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcZG9zdWJzdWJzZWNlbnRyeSMxIzJ7JSQvCiBkb3RmaWxsCXRleC1zcmMvdGV4aW5m by50ZXgJL14gIFxcbnVsbFxcbm9icmVha1xcaW5kZXhkb3RmaWxsICUgSGF2ZSBsZWFkZXJzIGJl Zm9yZS8KIGRvdGZpbGwJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbm9pbmRlbnRcXGhza2lwXFxz ZWNvbmRhcnlpbmRlbnRcXGhib3h7IzF9XFxpbmRleGRvdGYvCitkb3RzCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcZG90c3skXFxsZG90cyR9JC8KK2RvdHMJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxkb3Rze1xccmVhbGJhY2tzbGFzaCBkb3RzIH0lJC8KK2RvdHMJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxkb3Rze1xccmVhbGJhY2tzbGFzaCBkb3RzfSQvCitkb3RzCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcZG90cz1cXGluZGV4ZHVtbXlkb3RzJC8KK2RvdHMJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxkb3RzPVxccHRleGRvdHMkLwogZG91YmxlX2Ns aWNrX2NvdW50CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTUyMjIKK2RvdWJsZWNvbHVtbm91 dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRvdWJsZWNvbHVtbm91dHtcXHNwbGl0dG9w c2tpcD1cXHRvcHNraXAgXFxzcGxpdC8KIGRyYWdfbl9kcm9wX3N5bXMJYy1zcmMvZW1hY3Mvc3Jj L2tleWJvYXJkLmMJNDYyOQogZHJpYmJsZQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkyMzYK IGRzaGFycHNlZW4JYy1zcmMvZXRhZ3MuYwkyNDYxCkBAIC0yNzA2LDYgKzI0NDMsNyBAQCBkdW1t eTIJY3Atc3JjL2J1cnRvbi5jcHAJL146OmR1bW15OjpkdW1teSB0ZXN0OjpkdW1teTIoOjpDT1JC QTo6TG9uZyBkdW1teSkkLwogZHVtbXkzCWNwLXNyYy9idXJ0b24uY3BwCS9eOjpkdW1teTo6ZHVt bXkgdGVzdDo6ZHVtbXkzKGNoYXIqIG5hbWUsIDo6Q09SQkE6OkwvCiBkdW1teWRvdHMJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcbGV0XFxkb3RzPVxcaW5kZXhkdW1teWRvdHMkLwogZHVtbXlmb250 CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcYj1cXGluZGV4ZHVtbXlmb250JC8KK2R1bW15 Zm9udAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGNpdGU9XFxpbmRleGR1bW15Zm9udCQv CiBkdW1teWZvbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxjb2RlPVxcaW5kZXhkdW1t eWZvbnQkLwogZHVtbXlmb250CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcZW1waD1cXGlu ZGV4ZHVtbXlmb250JC8KIGR1bW15Zm9udAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGZp bGU9XFxpbmRleGR1bW15Zm9udCQvCkBAIC0yNzQ0LDEwICsyNDgyLDE2IEBAIGVkaXRzaXRlCXB5 dC1zcmMvc2VydmVyLnB5CS9eICAgIGRlZiBlZGl0c2l0ZShzZWxmLCBzaXRlKTokLwogZWRpdHVz ZXIJcHl0LXNyYy9zZXJ2ZXIucHkJL14gICAgZGVmIGVkaXR1c2VyKHNlbGYsIHVzZXIpOiQvCiBl Z2V0ZW52CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL15lZ2V0ZW52IChjb25zdCBjaGFyICp2YXIp JC8KIGVtYWNzX2Fib3J0CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL15leHRlcm4gX05vcmV0dXJu IHZvaWQgZW1hY3NfYWJvcnQgKHZvaWQpIE5PX0lOTElORS8KK2VtcGgJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxlbXBoIyMxe1xccmVhbGJhY2tzbGFzaCBlbXBoIHsjIzF9fSQvCitlbXBo CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcZW1waD1cXGluZGV4ZHVtbXlmb250JC8KK2Vt cGgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxlbXBoPVxcc21hcnRpdGFsaWMkLwogZW5k CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTg3NTMKIGVuZAljLXNyYy9lbWFjcy9zcmMvbGlz cC5oCTIwMzkKIGVuZAljLXNyYy9lbWFjcy9zcmMvcmVnZXguaAk0MzIKK2VuZAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGVuZHtcXHBhcnNlYXJnXFxlbmR4eHh9JC8KK2VuZGRvdWJsZWNv bHVtbnMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxlbmRkb3VibGVjb2x1bW5ze1xcb3V0 cHV0PXtcXGJhbGFuY2Vjb2x1bW5zfVxcZWovCiBlbmR0b2tlbgljLXNyYy9ldGFncy5jCS9eI2Rl ZmluZQllbmR0b2tlbihjKQkoX2V0a1tDSEFSIChjKV0pIFwvKiBjIGVuZHMgdG9rLworZW5keHh4 CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZW5keHh4ICMxeyUkLwogZW50ZXJfY3JpdGlj YWxfc2VjdGlvbgljLXNyYy9oLmgJMTE2CiBlbnRyeQlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwky MTgKIGVudHJ5CXBlcmwtc3JjL2h0bG1pZnktY3lzdGljCTIzNApAQCAtMjc1NywxNCArMjUwMSwy MiBAQCBlbnRyeQlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkyNjgKIGVudHJ5CXBlcmwtc3JjL2h0 bG1pZnktY3lzdGljCTI3NgogZW50cnkJcGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJMjgxCiBlbnRy eQlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkyOTYKK2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcZW50cnkgIzEjMntcXGJlZ2luZ3JvdXAkLworZW51bWVyYXRlCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcZW51bWVyYXRle1xccGFyc2VhcmdcXGVudW1lcmF0ZXp6en0kLwor ZW51bWVyYXRleQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGVudW1lcmF0ZXkgIzEgIzJc XGVuZGVudW1lcmF0ZXl7JSQvCitlbnVtZXJhdGV6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxlbnVtZXJhdGV6enogIzF7XFxlbnVtZXJhdGV5ICMxICBcXGVuZGVudW1lcmF0ZS8KIGVx dWFsc0tleQlvYmpjcHAtc3JjL1NpbXBsZUNhbGMuTQkvXi0gZXF1YWxzS2V5OnNlbmRlciQvCitl cXVpdgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGVxdWl2e1xcbGVhdmV2bW9kZVxcbG93 ZXIuMWV4XFxoYm94IHRvIDFlbXtcXGhmaWwvCitlcXVpdgl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGVxdWl2e1xccmVhbGJhY2tzbGFzaCBlcXVpdn0kLwogZXJsYW5nX2F0b20JYy1zcmMv ZXRhZ3MuYwkvXmVybGFuZ19hdG9tIChjaGFyICpzKSQvCiBlcmxhbmdfYXR0cmlidXRlCWMtc3Jj L2V0YWdzLmMJL15lcmxhbmdfYXR0cmlidXRlIChjaGFyICpzKSQvCiBlcmxhbmdfZnVuYwljLXNy Yy9ldGFncy5jCS9eZXJsYW5nX2Z1bmMgKGNoYXIgKnMsIGNoYXIgKmxhc3QpJC8KIGVycm9yCWMt c3JjL2VtYWNzL3NyYy9saXNwLmgJL15leHRlcm4gX05vcmV0dXJuIHZvaWQgZXJyb3IgKGNvbnN0 IGNoYXIgKiwgLi4uKSBBVC8KIGVycm9yCWMtc3JjL2V0YWdzLmMJL15lcnJvciAoY29uc3QgY2hh ciAqZm9ybWF0LCAuLi4pJC8KIGVycm9yCWMtc3JjL2V0YWdzLmMJL15zdGF0aWMgdm9pZCBlcnJv ciAoY29uc3QgY2hhciAqLCAuLi4pIEFUVFJJQlVURV9GTy8KK2Vycm9yCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcZXJyb3J7XFxsZWF2ZXZtb2RlXFxsb3dlci43ZXhcXGNvcHlcXGVycm9y Ym94fSQvCiBlcnJvcgl5LXNyYy9jY2NwLnkJL15lcnJvciAobXNnKSQvCitlcnJvckUJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxlcnJvckUjMXskLwogZXJyb3Jfc2lnbmFsZWQJYy1zcmMv ZXRhZ3MuYwkyNjQKIGV0YWdzCWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkv XihkZWZncm91cCBldGFncyBuaWwgIlRhZ3MgdGFibGVzLiIkLwogZXRhZ3MJaHRtbC1zcmMvc29m dHdhcmUuaHRtbAkvXkV0YWdzJC8KQEAgLTI3ODcsMTEgKzI1MzksMjkgQEAgZXRhZ3MteHJlZi1m aW5kLWRlZmluaXRpb25zLXRhZy1vcmRlcgllbC1zcmMvZW1hY3MvbGlzcC9wcm9nbW9kZXMvZXRh Z3MuZWwJL14oZGUKIGV0YWdzLjEubWFuCW1ha2Utc3JjL01ha2VmaWxlCS9eZXRhZ3MuMS5tYW46 IGV0YWdzLjEkLwogZXRhZ3NfZ2V0Y3dkCWMtc3JjL2V0YWdzLmMJL15ldGFnc19nZXRjd2QgKHZv aWQpJC8KIGV2YWxfZHluCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eZXZhbF9keW4gKExp c3BfT2JqZWN0IGZvcm0pJC8KK2V2ZW5mb290aW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcZXZlbmZvb3Rpbmd7XFxwYXJzZWFyZ1xcZXZlbmZvb3Rpbmd4eHh9JC8KK2V2ZW5mb290aW5n eHh4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXGV2ZW5mb290aW5neHh4ICMxe1xcZXZl bmZvb3Rpbmd5eXkgIzFAfEB8QHxAfC8KK2V2ZW5mb290aW5neXl5CXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGdkZWZcXGV2ZW5mb290aW5neXl5ICMxQHwjMkB8IzNAfCM0XFxmaW5pc2h7JSQvCitl dmVuaGVhZGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGV2ZW5oZWFkaW5ne1xccGFy c2VhcmdcXGV2ZW5oZWFkaW5neHh4fSQvCitldmVuaGVhZGluZ3h4eAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxnZGVmXFxldmVuaGVhZGluZ3h4eCAjMXtcXGV2ZW5oZWFkaW5neXl5ICMxQHxAfEB8 QHwvCitldmVuaGVhZGluZ3l5eQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxldmVuaGVh ZGluZ3l5eSAjMUB8IzJAfCMzQHwjNFxcZmluaXNoeyUkLwogZXZlbnQtY29udmVydC1saXN0CWMt c3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eREVGVU4gKCJldmVudC1jb252ZXJ0LWxpc3QiLCBG ZXZlbnRfY29udmVydF9saXN0LCAvCiBldmVudC1zeW1ib2wtcGFyc2UtbW9kaWZpZXJzCWMtc3Jj L2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eREVGVU4gKCJpbnRlcm5hbC1ldmVudC1zeW1ib2wtcGFy c2UtbW9kaWZpZXJzIiwgRmUvCiBldmVudF9oZWFkCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5j CTExMDIxCiBldmVudF90b19rYm9hcmQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15ldmVu dF90b19rYm9hcmQgKHN0cnVjdCBpbnB1dF9ldmVudCAqZXZlbnQpJC8KK2V2ZXJ5Zm9vdGluZwl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGV2ZXJ5Zm9vdGluZ3tcXHBhcnNlYXJnXFxldmVy eWZvb3Rpbmd4eHh9JC8KK2V2ZXJ5Zm9vdGluZ3h4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxn ZGVmXFxldmVyeWZvb3Rpbmd4eHggIzF7XFxldmVyeWZvb3Rpbmd5eXkgIzFAfEB8QHwvCitldmVy eWZvb3Rpbmd5eXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcZXZlcnlmb290aW5neXl5 ICMxQHwjMkB8IzNAfCM0XFxmaW5pc2h7JSQvCitldmVyeWhlYWRpbmcJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxldmVyeWhlYWRpbmd7XFxwYXJzZWFyZ1xcZXZlcnloZWFkaW5neHh4fSQv CitldmVyeWhlYWRpbmd4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcZXZlcnloZWFk aW5neHh4ICMxe1xcZXZlcnloZWFkaW5neXl5ICMxQHxAfEB8LworZXZlcnloZWFkaW5neXl5CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXGV2ZXJ5aGVhZGluZ3l5eSAjMUB8IzJAfCMzQHwj NFxcZmluaXNoeyUkLworZXdib3QJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxld2JvdHtc XHZydWxlIGhlaWdodDBwdCBkZXB0aFxcY29ybmVydGhpY2sgd2lkdC8KK2V3dG9wCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcZXd0b3B7XFx2cnVsZSBoZWlnaHRcXGNvcm5lcnRoaWNrIGRl cHRoMHB0IHdpZHQvCiBleGFjdAljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCTIwMAorZXhhbXBs ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGV4YW1wbGU9XFxsaXNwJC8KK2V4ZGVudAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGV4ZGVudHtcXHBhcnNlYXJnXFxleGRlbnR5eXl9 JC8KK2V4ZGVudAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGV4ZGVudD1cXG5vZmlsbGV4 ZGVudCQvCitleGRlbnR5eXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxleGRlbnR5eXkg IzF7e1xcaGZpbFxcYnJlYWtcXGhib3h7XFxrZXJuIC1cXGV4ZGVudC8KIGV4ZWN1dGUJY3Atc3Jj L2MuQwkvXiAgICAgICAgdm9pZCBleGVjdXRlKENQbHVnaW5DU0NTdGF0ZSYgcCwgaW50IHcsIGlu LwogZXhpdAljLXNyYy9leGl0LmMJL15ERUZVTihleGl0LCAoc3RhdHVzKSwgaW50IHN0YXR1cykk LwogZXhpdAljLXNyYy9leGl0LnN0cmFuZ2Vfc3VmZml4CS9eREVGVU4oZXhpdCwgKHN0YXR1cyks IGludCBzdGF0dXMpJC8KQEAgLTI4MDQsMTAgKzI1NzQsMTMgQEAgZXhwCXktc3JjL3BhcnNlLnkJ OTUKIGV4cDEJeS1zcmMvY2NjcC55CTE0OAogZXhwX2xpc3QJeS1zcmMvcGFyc2UueQkyNjMKIGV4 cGFuZC1hYmJyZXYJYy1zcmMvYWJicmV2LmMJL15ERUZVTiAoImV4cGFuZC1hYmJyZXYiLCBGZXhw YW5kX2FiYnJldiwgU2V4cGFuZF9hYi8KK2V4cGFuZGFmdGVyCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGV4cGFuZGFmdGVyXFxsZXRcXGV4cGFuZGFmdGVyXFxzeW5pbmRleGZvb1xcZXhwYW5kYWZ0 LwogZXhwYW5kbW5nCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15leHBhbmRtbmcodmFyKFYpLHZh cihWKSkuJC8KIGV4cGFuZG1uZ190cmVlCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15leHBhbmRt bmdfdHJlZSh0cmVlKFJ1bGUsU3luOlNlbSxUcmVlcyksJC8KIGV4cGFuZG1uZ190cmVlcwlwcm9s LXNyYy9uYXRkZWQucHJvbG9nCS9eZXhwYW5kbW5nX3RyZWVzKFtdLFtdKS4kLwogZXhwYW5kc3lu CXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15leHBhbmRzeW4oU3luLFN5bik6LSQvCitleHBhbnNp b24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxleHBhbnNpb257XFxsZWF2ZXZtb2RlXFxy YWlzZS4xZXhcXGhib3ggdG8gMWVte1xcLworZXhwYW5zaW9uCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcZXhwYW5zaW9ue1xccmVhbGJhY2tzbGFzaCBleHBhbnNpb259JC8KIGV4cGxpY2l0 bHktcXVvdGVkLXBlbmRpbmctZGVsZXRlLW1vZGUJZWwtc3JjL1RBR1RFU1QuRUwJL14oZGVmYWxp YXMgKHF1b3RlIGV4cGxpY2l0bHktcXVvdGVkLXBlbmRpbmctZGVsZXRlLS8KIGV4cHJlc3Npb25f dmFsdWUJeS1zcmMvY2NjcC55CTY4CiBleHRyYXMJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxNjAz CkBAIC0yODU0LDYgKzI2MjcsMTAgQEAgZmRwCWMtc3JjL2V0YWdzLmMJMjE3CiBmZgljcC1zcmMv Yy5DCS9eICBpbnQgZmYoKXtyZXR1cm4gMTt9OyQvCiBmaWVsZF9vZl9wbGF5CWNwLXNyYy9jb253 YXkuY3BwCTE4CiBmaWdub3JlCWMtc3JjL2V0YWdzLmMJMjQxNgorZmlsZQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGZpbGUjIzF7XFxyZWFsYmFja3NsYXNoIGZpbGUgeyMjMX19JC8KK2Zp bGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxmaWxlIyMxe1xccmVhbGJhY2tzbGFzaCBm aWxlIHsjIzF9fSUkLworZmlsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGZpbGU9XFxp bmRleGR1bW15Zm9udCQvCitmaWxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcZmlsZT1c XHNhbXAkLwogZmlsZS1vZi10YWcJZWwtc3JjL2VtYWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVs CS9eKGRlZnVuIGZpbGUtb2YtdGFnICgmb3B0aW9uYWwgcmVsYXRpdmUpJC8KIGZpbGUtb2YtdGFn LWZ1bmN0aW9uCWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihkZWZ2YXIg ZmlsZS1vZi10YWctZnVuY3Rpb24gbmlsJC8KIGZpbGVKb2luCXBocC1zcmMvbGNlX2Z1bmN0aW9u cy5waHAJL14gIGZ1bmN0aW9uIGZpbGVKb2luKCkkLwpAQCAtMjg2Miw2ICsyNjM5LDcgQEAgZmls ZV9pbmRleAlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkzMwogZmlsZV90b2NzCXBlcmwtc3JjL2h0 bG1pZnktY3lzdGljCTMwCiBmaWxlbmFtZV9pc19hYnNvbHV0ZQljLXNyYy9ldGFncy5jCS9eZmls ZW5hbWVfaXNfYWJzb2x1dGUgKGNoYXIgKmZuKSQvCiBmaWxlbmFtZXMJYy1zcmMvZXRhZ3MuYwkx OTYKK2ZpbmFsb3V0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZmluYWxvdXR7XFxvdmVy ZnVsbHJ1bGU9MHB0fSQvCiBmaW5kLXRhZwllbC1zcmMvZW1hY3MvbGlzcC9wcm9nbW9kZXMvZXRh Z3MuZWwJL14oZGVmdW4gZmluZC10YWcgKHRhZ25hbWUgJm9wdGlvbmFsIG5leHQtcCByZWdleHAt cC8KIGZpbmQtdGFnLWRlZmF1bHQtZnVuY3Rpb24JZWwtc3JjL2VtYWNzL2xpc3AvcHJvZ21vZGVz L2V0YWdzLmVsCS9eKGRlZmN1c3RvbSBmaW5kLXRhZy1kZWZhdWx0LWZ1bmN0aW9uIG5pbCQvCiBm aW5kLXRhZy1oaXN0b3J5CWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihk ZWZ2YXIgZmluZC10YWctaGlzdG9yeSBuaWwpIDsgRG9jIHN0cmluZz8kLwpAQCAtMjg4NCwyMSAr MjY2MiwzMyBAQCBmaW5kLXRhZy10YWctb3JkZXIJZWwtc3JjL2VtYWNzL2xpc3AvcHJvZ21vZGVz L2V0YWdzLmVsCS9eKGRlZnZhciBmaW5kLXRhZy10YWctbwogZmluZF9lbnRyaWVzCWMtc3JjL2V0 YWdzLmMJL15maW5kX2VudHJpZXMgKEZJTEUgKmluZikkLwogZmluZF91c2VyX3NpZ25hbF9uYW1l CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eZmluZF91c2VyX3NpZ25hbF9uYW1lIChpbnQg c2lnKSQvCiBmaW5kY2F0cwlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9eZmluZGNhdHMoW10sTGVm dCxMZWZ0KS4kLworZmluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZmluZGV4IHtc XGZuaW5kZXh9JC8KIGZpbmlzaF9hcHBlbmRpY2VzCXBlcmwtc3JjL2h0bG1pZnktY3lzdGljCS9e c3ViIGZpbmlzaF9hcHBlbmRpY2VzICgpJC8KIGZpbmlzaF9zZWN0aW9ucwlwZXJsLXNyYy9odGxt aWZ5LWN5c3RpYwkvXnN1YiBmaW5pc2hfc2VjdGlvbnMgKCkkLwogZmluaXNoX3N1YnNlY3Rpb25z CXBlcmwtc3JjL2h0bG1pZnktY3lzdGljCS9ec3ViIGZpbmlzaF9zdWJzZWN0aW9ucyAoKSQvCiBm aW5pc2hfc3Vic3Vic2VjdGlvbnMJcGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJL15zdWIgZmluaXNo X3N1YnN1YnNlY3Rpb25zICgpJC8KK2ZpbmlzaHRpdGxlcGFnZQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGZpbmlzaHRpdGxlcGFnZXslJC8KIGZpbmxpc3QJYy1zcmMvZXRhZ3MuYwkyNDE0 CiBmaXJzdAljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCTE1MQorZmlyc3QJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxzcGxpdG9mZiMxIzJcXGVuZG1hcmt7XFxkZWZcXGZpcnN0eyMxfVxc ZGVmXFxyZXN0ey8KIGZpdGNodHJlZWxpc3QJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmZpdGNo dHJlZWxpc3QoW10pLiQvCiBmaXh1cF9sb2NhbGUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXklO TElORSB2b2lkIGZpeHVwX2xvY2FsZSAodm9pZCkge30kLwogZmxhZwljLXNyYy9nZXRvcHQuaAk4 MwogZmxhZzJzdHIJcHl0LXNyYy9zZXJ2ZXIucHkJL15kZWYgZmxhZzJzdHIodmFsdWUsIHN0cmlu Zyk6JC8KIGZsaXN0c2VlbgljLXNyYy9ldGFncy5jCTI0MTUKK2ZsdXNoY3IJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxmbHVzaGNye1xcaWZ4XFxwYXJcXGxpc3BwYXIgXFxkZWZcXG5leHQj IzF7fVxcZWxzZSAvCitmbHVzaGxlZnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxmbHVz aGxlZnR7JSQvCitmbHVzaHJpZ2h0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZmx1c2hy aWdodHslJC8KIGZuCWMtc3JjL2V4aXQuYwkvXiAgICB2b2lkIEVYRlVOKCgqZm5bMV0pLCAoTk9B UkdTKSk7JC8KIGZuCWMtc3JjL2V4aXQuc3RyYW5nZV9zdWZmaXgJL14gICAgdm9pZCBFWEZVTigo KmZuWzFdKSwgKE5PQVJHUykpOyQvCitmbmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGRlZmZue1xcZGVmbWV0aHBhcnNlYm9keVxcRWRlZmZuXFxkZWZmbnhcXGRlZmZuaGUvCiBm bmluCXktc3JjL3BhcnNlLnkJNjgKK2ZuaXRlbWluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcZm5pdGVtaW5kZXggIzF7XFxkb2luZCB7Zm59e1xcY29kZXsjMX19fSUkLworZm54XGRl ZmZuaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmZm57XFxkZWZtZXRocGFy c2Vib2R5XFxFZGVmZm5cXGRlZmZueFxcZGVmZm5oZS8KIGZvY3VzX3NldAlweXQtc3JjL3NlcnZl ci5weQkvXiAgICBkZWYgZm9jdXNfc2V0KHNlbGYpOiQvCitmb2xpbwl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGRvc2V0cSAjMSMye3tcXGxldFxcZm9saW89MCBcXHR1cm5vZmZhY3RpdmUl JC8KK2ZvbGlvCXRleC1zcmMvdGV4aW5mby50ZXgJL157XFxsZXRcXGZvbGlvPTAlIEV4cGFuZCBh bGwgbWFjcm9zIG5vdyBFWENFUFQgXFxmb2xpby8KK2ZvbGlvCXRleC1zcmMvdGV4aW5mby50ZXgJ L157XFxsZXRcXGZvbGlvPTAlJC8KIGZvbGxvd19rZXkJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJk LmMJL15mb2xsb3dfa2V5IChMaXNwX09iamVjdCBrZXltYXAsIExpc3BfT2JqZWN0IGtleSkkLwog Zm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb2JleXNwYWNlcyBcXG9iZXlsaW5lcyBcXG5p bmV0dCBcXGluZGV4Zm9udHMgXFxyYXdiYWMvCiBmb250c1xybQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eICBcXGluZGV4Zm9udHNcXHJtIFxcdG9sZXJhbmNlPTk1MDAgXFxhZHZhbmNlXFxiYXNlbGlu ZS8KQEAgLTI5MjYsMTEgKzI3MTYsMTUgQEAgZm9vYmFyCWMtc3JjL2MuYwkvXmludCBmb29iYXIo KSB7O30kLwogZm9vYmFyCWMuYwkvXmV4dGVybiB2b2lkIGZvb2JhciAodm9pZCkgX19hdHRyaWJ1 dGVfXyAoKHNlY3Rpb24gLwogZm9vYmFyMgljLXNyYy9oLmgJMjAKIGZvb2JhcjJfCWMtc3JjL2gu aAkxNgorZm9vdG5vdGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbG9uZ1xcZ2RlZlxcZm9vdG5v dGUgIzF7XFxnbG9iYWxcXGFkdmFuY2UgXFxmb290bm90ZW5vLworZm9vdG5vdGVzdHlsZQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGZvb3Rub3Rlc3R5bGU9XFxjb21tZW50JC8KK2Zvb3Ru b3Rlenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxvbmdcXGdkZWZcXGZvb3Rub3Rlenp6ICMx e1xcaW5zZXJ0XFxmb290aW5zeyQvCiBmb3BlcmF0b3IJYy1zcmMvZXRhZ3MuYwkyNDExCiBmb3Jj ZV9hdXRvX3NhdmVfc29vbgljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmZvcmNlX2F1dG9f c2F2ZV9zb29uICh2b2lkKSQvCiBmb3JjZV9leHBsaWNpdF9uYW1lCWMtc3JjL2V0YWdzLmMJMjY1 CiBmb3JjZV9xdWl0X2NvdW50CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTEwMzg3CiBmb3Jl aWduX2V4cG9ydAltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gcHJhZ21hIGZvcmVpZ25fZXhw b3J0KCJDIiwgdW5yYXZlbF91bml2KGluLCBvdXQvCitmb3JtYXQJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxmb3JtYXR7XFxiZWdpbmdyb3VwXFxpbkVOViAlVGhpcyBncm91cCBlbmRzIGF0 IC8KIGZvcm1hdFNpemUJb2JqYy1zcmMvUGFja0luc3AubQkvXi0oY29uc3QgY2hhciAqKWZvcm1h dFNpemU6KGNvbnN0IGNoYXIgKilzaXplIGluQnVmLwogZm91bmQJYy1zcmMvZW1hY3Mvc3JjL2xp c3AuaAkyMzQ0CiBmcmFjYXMJaHRtbC1zcmMvc29mdHdhcmUuaHRtbAkvXkZyYWNhcyQvCkBAIC0y OTQ3LDggKzI3NDEsMTIgQEAgZnJlZV9yZWdleHBzCWMtc3JjL2V0YWdzLmMJL15mcmVlX3JlZ2V4 cHMgKHZvaWQpJC8KIGZyZWVfdHJlZQljLXNyYy9ldGFncy5jCS9eZnJlZV90cmVlIChyZWdpc3Rl ciBub2RlICpucCkkLwogZnJlZV92YXIJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmZyZWVfdmFy KHZhcihWKSx2YXIoVikpLiQvCiBmcmVlaG9vawljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCS9e ZnJlZWhvb2sgKHZvaWQgKnB0cikkLworZnJlbmNoc3BhY2luZwl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGZyZW5jaHNwYWNpbmd7XFxzZmNvZGU0Nj0xMDAwIFxcc2Zjb2RlNjM9MTAwMCBc XC8KK2ZyZW5jaHNwYWNpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxmcmVuY2hzcGFj aW5nPVxccmVsYXglJC8KIGZyZXNoX3ZhcnMJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmZyZXNo X3ZhcnModmFyKFYpLHZhcihWKSkuJC8KIGZzdGFydGxpc3QJYy1zcmMvZXRhZ3MuYwkyNDEzCitm dGFibGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxmdGFibGV7XFxiZWdpbmdyb3VwXFxp bkVOVlxcb2JleWxpbmVzXFxvYmV5c3BhY2VzLworZnRhYmxleAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxnZGVmXFxmdGFibGV4ICMxXl5NeyUkLwogZnVuYwljLXNyYy9lbWFjcy9zcmMvbGlzcC5o CS9eICAgICAgdm9pZCAoKmZ1bmMpIChMaXNwX09iamVjdCk7JC8KIGZ1bmMJYy1zcmMvZW1hY3Mv c3JjL2xpc3AuaAkvXiAgICAgIHZvaWQgKCpmdW5jKSAoaW50KTskLwogZnVuYwljLXNyYy9lbWFj cy9zcmMvbGlzcC5oCS9eICAgICAgdm9pZCAoKmZ1bmMpICh2b2lkICopOyQvCkBAIC0yOTY1LDYg KzI3NjMsNyBAQCBmdW5jdGlvbgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTI5ODUKIGZ1bmN0aW9u CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJNjk0CiBmdW5jdGlvbgljLXNyYy9ldGFncy5jCTE5NAog ZnVuY3Rpb25wCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL15mdW5jdGlvbnAgKExpc3BfT2JqZWN0 IG9iamVjdCkkLworZnVuY3Rpb25wYXJlbnMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxc ZnVuY3Rpb25wYXJlbnN7XFxib2xkYnJheFxcbGV0Jj1cXGFtcHJtXFxwYXJlbmNvLwogZnZhbAlm b3J0aC1zcmMvdGVzdC1mb3J0aC5mdGgJL15mY29uc3QgZnZhbHVlIGZ2YWwkLwogZnZhcglmb3J0 aC1zcmMvdGVzdC1mb3J0aC5mdGgJL15mdmFyaWFibGUgZnZhciQvCiBmdmRlZgljLXNyYy9ldGFn cy5jCTI0MTgKQEAgLTMwMjAsMTAgKzI4MTksMTQgQEAgZ2hpMQljLXNyYy9oLmgJMzYKIGdoaTIJ Yy1zcmMvaC5oCTM5CiBnaWFsbG8JY3Atc3JjL2MuQwk0MAogZ2xpZGVyCWNwLXNyYy9jb253YXku Y3BwCS9edm9pZCBnbGlkZXIoaW50IHgsIGludCB5KSQvCitnbG9nZ2luZ2FsbAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGdsb2dnaW5nYWxse1xcYmVnaW5ncm91cCBcXGdsb2JhbGRlZnMg PSAxIFxcbG9nZy8KIGdudQlodG1sLXNyYy9zb2Z0d2FyZS5odG1sCS9eRnJlZSBzb2Z0d2FyZSB0 aGF0IEkgd3JvdGUgZm9yIHRoZSBHTlUgcHJvamVjdCBvciAvCiBnb2JibGVfaW5wdXQJYy1zcmMv ZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15nb2JibGVfaW5wdXQgKHZvaWQpJC8KIGdvdG8tdGFnLWxv Y2F0aW9uLWZ1bmN0aW9uCWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihk ZWZ2YXIgZ290by10YWctbG9jYXRpb24tZnVuY3Rpb24gbmlsJC8KIGdvdG9feHkJY3Atc3JjL3Nj cmVlbi5jcHAJL152b2lkIGdvdG9feHkodW5zaWduZWQgY2hhciB4LCB1bnNpZ25lZCBjaGFyIHkp JC8KK2dyb3VwCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZ3JvdXB7XFxiZWdpbmdyb3Vw JC8KK2d0cgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGd0cntcXHJlYWxiYWNrc2xhc2gg Z3RyfSQvCitndHIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxndHJ7XFxyZWFsYmFja3Ns YXNoIGd0cn0lJC8KIGhhbmRsZUxpc3QJcHl0LXNyYy9zZXJ2ZXIucHkJL14gICAgZGVmIGhhbmRs ZUxpc3Qoc2VsZiwgZXZlbnQpOiQvCiBoYW5kbGVOZXcJcHl0LXNyYy9zZXJ2ZXIucHkJL14gICAg ZGVmIGhhbmRsZU5ldyhzZWxmLCBldmVudCk6JC8KIGhhbmRsZV9hc3luY19pbnB1dAljLXNyYy9l bWFjcy9zcmMva2V5Ym9hcmQuYwkvXmhhbmRsZV9hc3luY19pbnB1dCAodm9pZCkkLwpAQCAtMzAz OCw2ICsyODQxLDggQEAgaGFzaAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE4NDMKIGhhc2gJYy1z cmMvZXRhZ3MuYwkvXmhhc2ggKGNvbnN0IGNoYXIgKnN0ciwgaW50IGxlbikkLwogaGFzaF90YWJs ZV90ZXN0CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTgwNQogaGFzaGZuCWMtc3JjL2VtYWNzL3Ny Yy9saXNwLmgJL14gIEVNQUNTX1VJTlQgKCpoYXNoZm4pIChzdHJ1Y3QgaGFzaF90YWJsZV90ZXN0 ICp0LC8KK2hhdAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGhhdHtcXHJlYWxiYWNrc2xh c2ggaGF0fSQvCitoYXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxoYXR7XFxyZWFsYmFj a3NsYXNoIGhhdH0lJC8KIGhkcgljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCTE4NjAKIGhlYWRf dGFibGUJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJMTEwMjcKIGhlYWRlcgljLXNyYy9lbWFj cy9zcmMvbGlzcC5oCTEzNzEKQEAgLTMwNDcsNiArMjg1Miw4IEBAIGhlYWRlcgljLXNyYy9lbWFj cy9zcmMvbGlzcC5oCTE2MTAKIGhlYWRlcgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE2NzIKIGhl YWRlcgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE4MjYKIGhlYWRlcl9zaXplCWMtc3JjL2VtYWNz L3NyYy9saXNwLmgJMTQ3MQoraGVhZGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGhl YWRpbmd7XFxwYXJzZWFyZ1xcc2VjaGVhZGluZ2l9JC8KK2hlYWRpbmdzCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcaGVhZGluZ3MgIzEge1xcY3NuYW1lIEhFQURJTkdTIzFcXGVuZGNzbmFt ZX0kLwogaGVhcHNpemUJYy1zcmMvZW1hY3Mvc3JjL2dtYWxsb2MuYwkzNjEKIGhlbGxvCXNjbS1z cmMvdGVzdC5zY20JL14oZGVmaW5lIGhlbGxvICJIZWxsbywgRW1hY3MhIikkLwogaGVsbG8Jc2Nt LXNyYy90ZXN0LnNjbQkvXihzZXQhIGhlbGxvICJIZWxsbywgd29ybGQhIikkLwpAQCAtMzA1OCw2 ICsyODY1LDEwIEBAIGhlbHBfZm9ybV9zYXZlZF93aW5kb3dfY29uZmlncwljLXNyYy9lbWFjcy9z cmMva2V5Ym9hcmQuYwkyMTU2CiBoZWxwd2luCXB5dC1zcmMvc2VydmVyLnB5CS9eZGVmIGhlbHB3 aW4oaGVscGRpY3QpOiQvCiBoaWRlX2N1cnNvcgljcC1zcmMvc2NyZWVuLmNwcAkvXnZvaWQgaGlk ZV9jdXJzb3Iodm9pZCkkLwogaGxkcwltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gaW1wb3J0 X21vZHVsZSBobGRzLiQvCitoc2l6ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eCQkJe1xcbGV0XFxo c2l6ZT1cXHBhZ2V3aWR0aCBcXG1ha2Vmb290bGluZX19JC8KK2hzaXplCXRleC1zcmMvdGV4aW5m by50ZXgJL14JCQl7XFxsZXRcXGhzaXplPVxccGFnZXdpZHRoIFxcbWFrZWhlYWRsaW5lfSQvCito c2l6ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxzaGlwb3V0XFx2Ym94e3tcXGxldFxcaHNpemU9 XFxwYWdld2lkdGggXFxtYWtlaGVhZGxpbmUvCitoc2l6ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9e e1xcbGV0XFxoc2l6ZT1cXHBhZ2V3aWR0aCBcXG1ha2Vmb290bGluZX19fSUkLwogaHRtbHRyZWVs aXN0CXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15odG1sdHJlZWxpc3QoW10pLiQvCiBoeWJyaWRf YWxpZ25lZF9hbGxvYwljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCS9eaHlicmlkX2FsaWduZWRf YWxsb2MgKHNpemVfdCBhbGlnbm1lbnQsIHNpemVfdCBzaXovCiBoeWJyaWRfY2FsbG9jCWMtc3Jj L2VtYWNzL3NyYy9nbWFsbG9jLmMJL15oeWJyaWRfY2FsbG9jIChzaXplX3Qgbm1lbWIsIHNpemVf dCBzaXplKSQvCkBAIC0zMDcyLDMxICsyODgzLDg3IEBAIGkJYy1zcmMvZW1hY3Mvc3JjL2xpc3Au aAk0Njc5CiBpCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJNTY3CiBpCWMuYwkxNjkKIGkJY3Atc3Jj L2MuQwkxMzIKK2kJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpIyMxe1xccmVhbGJhY2tz bGFzaCBpIHsjIzF9fSQvCitpCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaSMjMXtcXHJl YWxiYWNrc2xhc2ggaSB7IyMxfX0lJC8KK2kJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxi PVxccHRleGIgXFxsZXRcXGM9XFxwdGV4YyBcXGxldFxcaT1cXHB0ZXhpIFxcbGV0XFx0PVxcLwor aQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGk9XFxpbmRleGR1bW15Zm9udCQvCitpCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcaT1cXHNtYXJ0aXRhbGljJC8KIGlhbHBhZ2UJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXiAgICAgXFxkaW1lbkA9XFxwYWdlaGVpZ2h0IFxcYWR2YW5jZVxc ZGltZW5AIGJ5LVxcaHRcXHBhLwogaWFscGFnZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGF2 YWlsZGltZW5APVxccGFnZWhlaWdodCBcXGFkdmFuY2VcXGF2YWlsZGltZW5AIGJ5LwogaWFscGFn ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGRpbWVuQD1cXHBhZ2VoZWlnaHQgXFxhZHZhbmNl XFxkaW1lbkAgYnktXFxodFxccGFydGkvCitpYWxwYWdlCXRleC1zcmMvdGV4aW5mby50ZXgJL14g IFxcb3V0cHV0PXtcXGdsb2JhbFxcc2V0Ym94XFxwYXJ0aWFscGFnZT0kLworaWFscGFnZQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHBhZ2Vzb2ZhcntcXHVudmJveFxccGFydGlhbHBhZ2Ug JSQvCiBpYWxwYWdlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG5ld2JveFxccGFydGlhbHBhZ2Uk LwotaWFscGFnZT0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxvdXRwdXQ9e1xcZ2xvYmFsXFxz ZXRib3hcXHBhcnRpYWxwYWdlPSQvCiBpZGVudGlmeV9nb2FsX3R5cGUJbWVyYy1zcmMvYWNjdW11 bGF0b3IubQkvXjotIHByZWQgaWRlbnRpZnlfZ29hbF90eXBlKHByZWRfaWQ6OmluLCBwcm9jX2lk OjppLwogaWRlbnRpZnlfb3V0X2FuZF9vdXRfcHJpbWUJbWVyYy1zcmMvYWNjdW11bGF0b3IubQkv XjotIHByZWQgaWRlbnRpZnlfb3V0X2FuZF9vdXRfcHJpbWUobW9kdWxlX2luZm86OmluLwogaWRl bnRpZnlfcmVjdXJzaXZlX2NhbGxzCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBwcmVkIGlk ZW50aWZ5X3JlY3Vyc2l2ZV9jYWxscyhwcmVkX2lkOjppbiwgcHJvYy8KIGlkeAljLXNyYy9lbWFj cy9zcmMvbGlzcC5oCTMxNTAKK2lmY2xlYXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxp ZmNsZWFye1xcYmVnaW5ncm91cFxcaWdub3Jlc2VjdGlvbnNcXHBhcnNlYXJnXFxpLworaWZjbGVh cmZhaWwJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpZmNsZWFyZmFpbHtcXGJlZ2luZ3Jv dXBcXGlnbm9yZXNlY3Rpb25zXFxpZmNsZWEvCitpZmNsZWFyZmFpbHh4eAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxsb25nXFxkZWZcXGlmY2xlYXJmYWlseHh4ICMxXFxlbmQgaWZjbGVhcntcXGVu ZGdyb3VwXFwvCitpZmNsZWFyeHh4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaWZjbGVh cnh4eCAjMXtcXGVuZGdyb3VwJC8KK2lmaW5mbwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGlmaW5mb3tcXGJlZ2luZ3JvdXBcXGlnbm9yZXNlY3Rpb25zXFxpZmluZm94eHh9JC8KK2lmaW5m b3h4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsb25nXFxkZWZcXGlmaW5mb3h4eCAjMVxcZW5k IGlmaW5mb3tcXGVuZGdyb3VwXFxpZ25vcmUvCitpZnNldAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGlmc2V0e1xcYmVnaW5ncm91cFxcaWdub3Jlc2VjdGlvbnNcXHBhcnNlYXJnXFxpZnMv CitpZnNldGZhaWwJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpZnNldGZhaWx7XFxiZWdp bmdyb3VwXFxpZ25vcmVzZWN0aW9uc1xcaWZzZXRmYWkvCitpZnNldGZhaWx4eHgJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcbG9uZ1xcZGVmXFxpZnNldGZhaWx4eHggIzFcXGVuZCBpZnNldHtcXGVu ZGdyb3VwXFxpZ25vLworaWZzZXR4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpZnNl dHh4eCAjMXtcXGVuZGdyb3VwJC8KK2lmdGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc aWZ0ZXh7fSQvCitpZnVzaW5ndHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpZnVzaW5n dHQjMSMye1xcaWZkaW0gXFxmb250ZGltZW4zXFx0aGVcXGZvbnQ9MHB0LworaWdub3JlCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaWdub3Jle1xcYmVnaW5ncm91cFxcaWdub3Jlc2VjdGlv bnMkLwogaWdub3JlX2Nhc2UJYy1zcmMvZXRhZ3MuYwkyNjYKIGlnbm9yZV9tb3VzZV9kcmFnX3AJ Yy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJMTI1NgotaWxsPVxyZWxheAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxsZXRcXHJlZmlsbD1cXHJlbGF4JC8KK2lnbm9yZXNlY3Rpb25zCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcaWdub3Jlc2VjdGlvbnN7JSQvCitpZ25vcmV4eHgJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcbG9uZ1xcZGVmXFxpZ25vcmV4eHggIzFcXGVuZCBpZ25vcmV7XFxl bmRncm91cFxcaWdub3JlLworaWkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpaSMxe3tc XGl0ICMxfX0JCSUgaXRhbGljIGZvbnQkLwogaW1tZWRpYXRlX3F1aXQJYy1zcmMvZW1hY3Mvc3Jj L2tleWJvYXJkLmMJMTc0CiBpbXBhdHRvCWh0bWwtc3JjL3NvZnR3YXJlbGliZXJvLmh0bWwJL15J bXBhdHRvIHByYXRpY28gZGVsIHNvZnR3YXJlIGxpYmVybyQvCiBpbXBsZW1lbnRhdGlvbgltZXJj LXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gaW1wbGVtZW50YXRpb24uJC8KK2ltcGxpY2l0bWF0aAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGltcGxpY2l0bWF0aCA9ICQkLworaW5FTlYJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcbmV3aWZcXGlmRU5WIFxcRU5WZmFsc2UgXFxkZWZcXGluRU5W e1xcaWZFTlZcXHJlbGF4XFxlbHMvCiBpbl93b3JkX3NldAljLXNyYy9ldGFncy5jCS9eaW5fd29y ZF9zZXQgKHJlZ2lzdGVyIGNvbnN0IGNoYXIgKnN0ciwgcmVnaXN0ZXIgdW4vCiBpbmF0dHJpYnV0 ZQljLXNyYy9ldGFncy5jCTI0MDAKIGluYwljcC1zcmMvUmFuZ2UuaAkvXiAgZG91YmxlIGluYyAo dm9pZCkgY29uc3QgeyByZXR1cm4gcm5nX2luYzsgICB9JC8KK2luY2x1ZGUJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxpbmNsdWRle1xccGFyc2VhcmdcXGluY2x1ZGV6enp9JC8KK2luY2x1 ZGV6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmNsdWRlenp6ICMxe3tcXGRlZlxc dGhpc2ZpbGV7IzF9XFxpbnB1dCAjMSQvCitpbmRiZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxs ZXRcXGluZGJmPVxcaW5kcm0kLwogaW5kZXgJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxODU2Citp bmRleGJhY2tzbGFzaAl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGRlZlxcaW5kZXhiYWNrc2xh c2h7XFxyYXdiYWNrc2xhc2h4eH0kLworaW5kZXhiYWNrc2xhc2gJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcbGV0XFxpbmRleGJhY2tzbGFzaD0wICAlb3ZlcnJpZGRlbiBkdXJpbmcgXFxwcmludGlu LworaW5kZXhkb3RmaWxsCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5kZXhkb3RmaWxs e1xcY2xlYWRlcnMkLworaW5kZXhkdW1taWVzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc aW5kZXhkdW1taWVzeyUkLworaW5kZXhkdW1teWRvdHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxpbmRleGR1bW15ZG90c3suLi59JC8KK2luZGV4ZHVtbXlmb250CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcaW5kZXhkdW1teWZvbnQjMXsjMX0kLworaW5kZXhkdW1teXRleAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZGV4ZHVtbXl0ZXh7VGVYfSQvCitpbmRleGZvbnRz CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5kZXhmb250c3slJC8KK2luZGV4bmFtZQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRvY29kZWluZGV4IzF7XFxlZGVmXFxpbmRleG5h bWV7IzF9XFxwYXJzZWFyZ1xcc2kvCitpbmRleG5hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxkb2luZGV4IzF7XFxlZGVmXFxpbmRleG5hbWV7IzF9XFxwYXJzZWFyZ1xcc2luZ2xlLwor aW5kZXhub2ZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5kZXhub2ZvbnRzeyUk LworaW5kc2MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxpbmRzYz1cXGluZHJtJC8KK2lu ZHNmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcaW5kc2Y9XFxpbmRybSQvCitpbmRzbAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGluZHNsPVxcaW5kaXQkLworaW5kdHQJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcbGV0XFxpbmR0dD1cXG5pbmV0dCQvCiBpbmZhYnNkaXIJYy1zcmMv ZXRhZ3MuYwkyMDYKIGluZmFic25hbWUJYy1zcmMvZXRhZ3MuYwkyMDUKIGluZmlsZXMJbWFrZS1z cmMvTWFrZWZpbGUJL15pbmZpbGVzID0gJChmaWx0ZXItb3V0ICR7Tk9OU1JDU30sJHtTUkNTfSkg c3JjbGlzdC8KIGluZm5hbWUJYy1zcmMvZXRhZ3MuYwkyMDQKIGluZm8JYy1zcmMvZW1hY3Mvc3Jj L2dtYWxsb2MuYwkxNTcKIGluZm9QYW5lbAlvYmpjcHAtc3JjL1NpbXBsZUNhbGMuTQkvXi0gaW5m b1BhbmVsOnNlbmRlciQvCitpbmZvYXBwZW5kaXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxpbmZvYXBwZW5kaXh7XFxwYXJzZWFyZ1xcYXBwZW5kaXh6enp9JC8KK2luZm9hcHBlbmRpeHNl Ywl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm9hcHBlbmRpeHNlY3tcXHBhcnNlYXJn XFxhcHBlbmRpeHNlY3p6en0kLworaW5mb2FwcGVuZGl4c3Vic2VjCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcaW5mb2FwcGVuZGl4c3Vic2Vje1xccGFyc2VhcmdcXGFwcGVuZGl4c3Vic2Vj enovCitpbmZvYXBwZW5kaXhzdWJzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxp bmZvYXBwZW5kaXhzdWJzdWJzZWN7XFxwYXJzZWFyZ1xcYXBwZW5kaXhzdWJzdS8KK2luZm9jaGFw dGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5mb2NoYXB0ZXJ7XFxwYXJzZWFyZ1xc Y2hhcHRlcnp6en0kLworaW5mb3JlZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm9y ZWYgIzF7XFxpbmZvcmVmenp6ICMxLCwsLCoqfSQvCitpbmZvcmVmenp6CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcaW5mb3JlZnp6eiAjMSwjMiwjMywjNCoqe1NlZSBJbmZvIGZpbGUgXFxm aWxley8KK2luZm9zZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW5mb3NlY3Rp b257XFxwYXJzZWFyZ1xcc2VjdGlvbnp6en0kLworaW5mb3N1YnNlY3Rpb24JdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxpbmZvc3Vic2VjdGlvbntcXHBhcnNlYXJnXFxzdWJzZWN0aW9uenp6 fSQvCitpbmZvc3Vic3Vic2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm9z dWJzdWJzZWN0aW9ue1xccGFyc2VhcmdcXHN1YnN1YnNlY3Rpb256enp9LworaW5mb3RvcAl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm90b3B7XFxwYXJzZWFyZ1xcdW5udW1iZXJlZHp6 en0kLworaW5mb3VubnVtYmVyZWQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvdW5u dW1iZXJlZHtcXHBhcnNlYXJnXFx1bm51bWJlcmVkenp6fSQvCitpbmZvdW5udW1iZXJlZHNlYwl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm91bm51bWJlcmVkc2Vje1xccGFyc2Vhcmdc XHVubnVtYmVyZWRzZWN6enp9LworaW5mb3VubnVtYmVyZWRzdWJzZWMJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxpbmZvdW5udW1iZXJlZHN1YnNlY3tcXHBhcnNlYXJnXFx1bm51bWJlcmVk c3Vicy8KK2luZm91bm51bWJlcmVkc3Vic3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcaW5mb3VubnVtYmVyZWRzdWJzdWJzZWN7XFxwYXJzZWFyZ1xcdW5udW1iZXJlZHMvCiBpbml0 CWMtc3JjL2V0YWdzLmMJL15pbml0ICh2b2lkKSQvCiBpbml0CW9iamMtc3JjL1N1YnByb2Nlc3Mu bQkvXiAgICBhbmRTdGRFcnI6KEJPT0wpd2FudHNTdGRFcnIkLwogaW5pdAlvYmpjLXNyYy9TdWJw cm9jZXNzLm0JL14tIGluaXQ6KGNvbnN0IGNoYXIgKilzdWJwcm9jZXNzU3RyaW5nJC8KQEAgLTMx MDgsNiArMjk3NSw3IEBAIGluaXRfcmVnaXN0cnkJY3Atc3JjL2NsaGVpci5jcHAJL152b2lkIGlu aXRfcmVnaXN0cnkodm9pZCkkLwogaW5pdF90b29sX2Jhcl9pdGVtcwljLXNyYy9lbWFjcy9zcmMv a2V5Ym9hcmQuYwkvXmluaXRfdG9vbF9iYXJfaXRlbXMgKExpc3BfT2JqZWN0IHJldXNlKSQvCiBp bml0YQljLmMJL15zdGF0aWMgdm9pZCBpbml0YSAoKSB7fSQvCiBpbml0YgljLmMJL15zdGF0aWMg dm9pZCBpbml0YiAoKSB7fSQvCitpbml0aWFsCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc aW5pdGlhbCAjMXslJC8KIGluaXRpYWxfa2JvYXJkCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5j CTg0CiBpbml0aWFsaXplLW5ldy10YWdzLXRhYmxlCWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rl cy9ldGFncy5lbAkvXihkZWZ1biBpbml0aWFsaXplLW5ldy10YWdzLXRhYmxlICgpJC8KIGluaXRp YWxpemVfZ29hbF9zdG9yZQltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gZnVuYyBpbml0aWFs aXplX2dvYWxfc3RvcmUobGlzdChobGRzX2dvYWwpLCBpbnMvCkBAIC0zMTM5LDcgKzMwMDcsMTQg QEAgaW50ZXJmYWNlCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBpbnRlcmZhY2UuJC8KIGlu dGVyZmFjZV9sb2NhdGUJYy1zcmMvYy5jCS9eaW50ZXJmYWNlX2xvY2F0ZSh2b2lkKSQvCiBpbnRl cm4JYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXmludGVybiAoY29uc3QgY2hhciAqc3RyKSQvCiBp bnRlcm5fY19zdHJpbmcJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXmludGVybl9jX3N0cmluZyAo Y29uc3QgY2hhciAqc3RyKSQvCitpbnRlcm5hbEJpdGVtCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcaW50ZXJuYWxCaXRlbXtcXHNtYWxsYnJlYWsgXFxwYXJzZWFyZ1xcaXRlbXp6en0kLwor aW50ZXJuYWxCaXRlbXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbnRlcm5hbEJpdGVt eHtcXHBhciBcXHBhcnNlYXJnXFxpdGVtenp6fSQvCitpbnRlcm5hbEJraXRlbQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGludGVybmFsQmtpdGVte1xcc21hbGxicmVhayBcXHBhcnNlYXJn XFxraXRlbXp6ei8KK2ludGVybmFsQmtpdGVteAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XGludGVybmFsQmtpdGVteHtcXHBhciBcXHBhcnNlYXJnXFxraXRlbXp6en0kLworaW50ZXJuYWxC eGl0ZW0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbnRlcm5hbEJ4aXRlbSAiIzEie1xc ZGVmXFx4aXRlbXN1YnRvcGl4eyMxfSBcXHMvCitpbnRlcm5hbEJ4aXRlbXgJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxpbnRlcm5hbEJ4aXRlbXggIiMxIntcXGRlZlxceGl0ZW1zdWJ0b3Bp eHsjMX0gXFwvCiBpbnRlcm5hbF9sYXN0X2V2ZW50X2ZyYW1lCWMtc3JjL2VtYWNzL3NyYy9rZXli b2FyZC5jCTIyOAoraW50ZXJuYWxzZXRxCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaW50 ZXJuYWxzZXRxICMxIzJ7J3hyZGVmIHsjMX17XFxjc25hbWUgIzJcXGVuZGMvCiBpbnRlcm5lZAlj LXNyYy9lbWFjcy9zcmMvbGlzcC5oCTY3MgogaW50ZXJwcmV0ZXJzCWMtc3JjL2V0YWdzLmMJMTk3 CiBpbnRlcnJ1cHRfaW5wdXQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJMzI4CkBAIC0zMTc0 LDkgKzMwNDksMjggQEAgaXNvX2xpc3B5X2Z1bmN0aW9uX2tleXMJYy1zcmMvZW1hY3Mvc3JjL2tl eWJvYXJkLmMJNTE1MQogaXNvcGVyYXRvcglwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9eaXNvcGVy YXRvcihDaGFyKTotJC8KIGlzb3B0YWIJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXmlzb3B0YWIo JyUnKS4kLwogaXN3aGl0ZQljLXNyYy9ldGFncy5jCS9eI2RlZmluZQlpc3doaXRlKGMpCShfd2h0 W0NIQVIgKGMpXSkgXC8qIGMgaXMgd2hpdGUgLworaXRlbQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXGl0ZW17XFxlcnJtZXNzYWdle0BpdGVtIHdoaWxlIG5vdCBpbiBhIHRhYmxlfX0vCitp dGVtCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcaXRlbSA9IFxcaW50ZXJuYWxCaXRlbSAl JC8KK2l0ZW0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxpdGVtPVxcaXRlbWl6ZWl0ZW19 JC8KIGl0ZW1fcHJvcGVydGllcwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwk3NTY4CitpdGVt Y29udGVudHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpdGVtY29udGVudHN7IzF9JSQv CitpdGVtZm9udAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGl0ZW1mb250eyMyfSUkLwor aXRlbWluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcaXRlbWluZGV4PSMxJSQvCitp dGVtaXplCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcaXRlbWl6ZXtcXHBhcnNlYXJnXFxp dGVtaXplenp6fSQvCitpdGVtaXplaXRlbQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGl0 ZW1pemVpdGVteyUkLworaXRlbWl6ZXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpdGVt aXpleSAjMSMyeyUkLworaXRlbWl6ZXp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGl0 ZW1pemV6enogIzF7JSQvCitpdGVteAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGl0ZW14 e1xcZXJybWVzc2FnZXtAaXRlbXggd2hpbGUgbm90IGluIGEgdGFibGUvCitpdGVteAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxsZXRcXGl0ZW14ID0gXFxpbnRlcm5hbEJpdGVteCAlJC8KK2l0ZW16 enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpdGVtenp6ICMxe1xcYmVnaW5ncm91cCAl JC8KK2l2YXJoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZpdmFye1xcZGVm dnJwYXJzZWJvZHlcXEVkZWZpdmFyXFxkZWZpdmFyeFxcZGVmLworaXZhcnhcZGVmaXZhcmhlYWRl cgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZml2YXJ7XFxkZWZ2cnBhcnNlYm9keVxc RWRlZml2YXJcXGRlZml2YXJ4XFxkZWYvCiBqbXAJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkzMDQ0 CiBqdXN0X3JlYWRfZmlsZQljLXNyYy9ldGFncy5jCS9eanVzdF9yZWFkX2ZpbGUgKEZJTEUgKmlu ZikkLwora2JkCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxca2JkIyMxe1xccmVhbGJhY2tz bGFzaCBrYmQgeyMjMX19JC8KK2tiZAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtiZCMj MXtcXHJlYWxiYWNrc2xhc2gga2JkIHsjIzF9fSUkLwora2JkCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxca2JkIzF7XFxkZWZcXGxvb2t7IzF9XFxleHBhbmRhZnRlclxca2JkZm9vXFxsb29r Pz8vCitrYmQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxrYmQ9XFxpbmRleGR1bW15Zm9u dCQvCiBrYmRfYnVmZmVyCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTI5MQoga2JkX2J1ZmZl cl9ldmVudHNfd2FpdGluZwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmtiZF9idWZmZXJf ZXZlbnRzX3dhaXRpbmcgKHZvaWQpJC8KIGtiZF9idWZmZXJfZ2V0X2V2ZW50CWMtc3JjL2VtYWNz L3NyYy9rZXlib2FyZC5jCS9ea2JkX2J1ZmZlcl9nZXRfZXZlbnQgKEtCT0FSRCAqKmticCwkLwpA QCAtMzE4Nyw5ICszMDgxLDE0IEBAIGtiZF9idWZmZXJfc3RvcmVfaGVscF9ldmVudAljLXNyYy9l bWFjcy9zcmMva2V5Ym9hcmQuYwkvXmtiZF9idWZmZXJfc3RvcmVfaGVscF9lCiBrYmRfYnVmZmVy X3VuZ2V0X2V2ZW50CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ea2JkX2J1ZmZlcl91bmdl dF9ldmVudCAocmVnaXN0ZXIgc3RydWN0IGlucHV0X2V2ZW4vCiBrYmRfZmV0Y2hfcHRyCWMtc3Jj L2VtYWNzL3NyYy9rZXlib2FyZC5jCTI5Nwoga2JkX3N0b3JlX3B0cgljLXNyYy9lbWFjcy9zcmMv a2V5Ym9hcmQuYwkzMDIKK2tiZGZvbwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtiZGZv byMxIzIjM1xccGFye1xcZGVmXFxvbmV7IzF9XFxkZWZcXHRocmVleyMzfVxcZC8KIGtib2FyZAlj LXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwk4NjAKIGtib2FyZF9zdGFjawljLXNyYy9lbWFjcy9z cmMva2V5Ym9hcmQuYwk4NTgKIGtib2FyZF9zdGFjawljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQu Ywk4NjQKK2tleQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtleSAjMXt7XFx0dCBcXGV4 aHlwaGVucGVuYWx0eT0xMDAwMFxcdXBwZXJjYXNley8KK2tleQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGtleSMjMXtcXHJlYWxiYWNrc2xhc2gga2V5IHsjIzF9fSQvCitrZXkJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxrZXkjIzF7XFxyZWFsYmFja3NsYXNoIGtleSB7IyMxfX0l JC8KK2tleQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGtleT1cXGluZGV4ZHVtbXlmb250 JC8KIGtleV9hbmRfdmFsdWUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxODY4CiBrZXlyZW1hcAlj LXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwk4NzQyCiBrZXlyZW1hcAljLXNyYy9lbWFjcy9zcmMv a2V5Ym9hcmQuYwk4NzU0CkBAIC0zMjA0LDYgKzMxMDMsMTIgQEAga2V5d29yZHMJeS1zcmMvY2Nj cC55CTExNAoga2V5d29yZHMJeS1zcmMvY2NjcC55CTMwNgoga2luZAljLXNyYy9lbWFjcy9zcmMv a2V5Ym9hcmQuYwkxMTAyNAoga2luZAljLXNyYy9oLmgJNDYKK2tpbmRleAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGtpbmRleCB7XFxreWluZGV4fSQvCitraXRlbQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGtpdGVte1xcZXJybWVzc2FnZXtAa2l0ZW0gd2hpbGUgbm90IGluIGEg dGFibGUvCitraXRlbQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGtpdGVtID0gXFxpbnRl cm5hbEJraXRlbSAlJC8KK2tpdGVteAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGtpdGVt eHtcXGVycm1lc3NhZ2V7QGtpdGVteCB3aGlsZSBub3QgaW4gYSB0YWIvCitraXRlbXgJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcbGV0XFxraXRlbXggPSBcXGludGVybmFsQmtpdGVteCAlJC8KK2tp dGVtenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxca2l0ZW16enogIzF7XFxkb3N1Ymlu ZCB7a3d9e1xcY29kZXsjMX19e2ZvciB7XFxiLwoga3NldF9lY2hvX3N0cmluZwljLXNyYy9lbWFj cy9zcmMva2V5Ym9hcmQuYwkvXmtzZXRfZWNob19zdHJpbmcgKHN0cnVjdCBrYm9hcmQgKmtiLCBM aXNwX09iamVjdCB2Lwoga3NldF9rYmRfcXVldWUJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJ L15rc2V0X2tiZF9xdWV1ZSAoc3RydWN0IGtib2FyZCAqa2IsIExpc3BfT2JqZWN0IHZhbC8KIGtz ZXRfa2V5Ym9hcmRfdHJhbnNsYXRlX3RhYmxlCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9e a3NldF9rZXlib2FyZF90cmFuc2xhdGVfdGFibGUgKHN0cnVjdCBrYm9hcmQgKmtiLCAvCkBAIC0z MjEzLDYgKzMxMTgsOSBAQCBrc2V0X2xvY2FsX2Z1bmN0aW9uX2tleV9tYXAJYy1zcmMvZW1hY3Mv c3JjL2tleWJvYXJkLmMJL15rc2V0X2xvY2FsX2Z1bmN0aW9uX2tleQoga3NldF9vdmVycmlkaW5n X3Rlcm1pbmFsX2xvY2FsX21hcAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmtzZXRfb3Zl cnJpZGluZ190ZXJtaW5hbF9sb2NhbF9tYXAgKHN0cnVjdCBrYm9hcmQgLwoga3NldF9yZWFsX2xh c3RfY29tbWFuZAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXmtzZXRfcmVhbF9sYXN0X2Nv bW1hbmQgKHN0cnVjdCBrYm9hcmQgKmtiLCBMaXNwX09iLwoga3NldF9zeXN0ZW1fa2V5X3N5bXMJ Yy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15rc2V0X3N5c3RlbV9rZXlfc3ltcyAoc3RydWN0 IGtib2FyZCAqa2IsIExpc3BfT2JqZS8KK2wJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxs IzF7e1xcbGkgIzF9XFxudWxsfQkJJSAkLworbAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRc XGI9XFxwdGV4YiBcXGxldFxcYz1cXHB0ZXhjIFxcbGV0XFxpPVxccHRleGkgXFxsZXRcXHQ9XFwv CitsYWJlbHNwYWNlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbGFiZWxzcGFjZXtcXGhz a2lwMWVtIFxccmVsYXh9JC8KIGxhbmcJYy1zcmMvZXRhZ3MuYwkyMDgKIGxhbmcJYy1zcmMvZXRh Z3MuYwkyNTEKIGxhbmcJYy1zcmMvZXRhZ3MuYwkyNTkKQEAgLTMyMzMsNyArMzE0MSwxMSBAQCBs YXN0YQljLmMJMjcyCiBsYXN0YXJnbWFyZ2luCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG5ld3Nr aXBcXGRlZmxhc3RhcmdtYXJnaW4gXFxkZWZsYXN0YXJnbWFyZ2luPTE4cHQkLwogbGFzdGFyZ21h cmdpbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxzZXRib3gwPVxcaGJveHtcXGhza2lwIFxcZGVm bGFzdGFyZ21hcmdpbntcXHJtICMyfVxcaHMvCiBsYXN0YgljLmMJMjc4CitsYXN0bm9kZQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5vZGV4eHhbIzEsIzJde1xcZ2RlZlxcbGFzdG5vZGV7 IzF9fSQvCitsYXN0bm9kZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGxhc3Rub2RlPVxc cmVsYXgkLworbGFzdG5vZGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxsYXN0bm9kZT1c XHJlbGF4fSQvCiBsYgljLXNyYy9ldGFncy5jCTI5MjMKK2xicmIJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxsYnJie3tcXGJmXFxjaGFyYFxcW319IFxcZGVmXFxyYnJie3tcXGJmXFxjaGFy YFxcXX19JC8KIGxicwljLXNyYy9ldGFncy5jCTI5MjQKIGxjZQlwaHAtc3JjL2xjZV9mdW5jdGlv bnMucGhwCS9eICAgICAgZnVuY3Rpb24gbGNlKCkkLwogbGNlX2JpbmR0ZXh0ZG9tYWluCXBocC1z cmMvbGNlX2Z1bmN0aW9ucy5waHAJL14gICAgICBmdW5jdGlvbiBsY2VfYmluZHRleHRkb21haW4o JGRfbmFtZSwgJGRfcGF0aC8KQEAgLTMyNDksMTIgKzMxNjEsMTUgQEAgbGVuCWMtc3JjL2V0YWdz LmMJMjM3CiBsZW5ndGgJYy1zcmMvZXRhZ3MuYwkyNDk1CiBsZW5ndGgJeS1zcmMvY2NjcC55CTEx MwogbGVuZ3RoCXktc3JjL2NjY3AueQk0NAorbGVzcwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGxlc3N7XFxyZWFsYmFja3NsYXNoIGxlc3N9JC8KK2xlc3MJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxsZXNze1xccmVhbGJhY2tzbGFzaCBsZXNzfSUkLwogbGV0CWMtc3JjL2VtYWNz L3NyYy9saXNwLmgJMjk4MQogbGV0dGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIHsjMX17QXBw ZW5kaXggXFxhcHBlbmRpeGxldHRlcn17XFxub2V4cGFuZFxcZm9saW99fS8KIGxldHRlcgl0ZXgt c3JjL3RleGluZm8udGV4CS9eICB7XFxhcHBlbmRpeGxldHRlcn0kLwogbGV0dGVyCXRleC1zcmMv dGV4aW5mby50ZXgJL14gIHtcXGFwcGVuZGl4bGV0dGVyfXtcXHRoZVxcc2Vjbm99e1xcdGhlXFxz dWJzZWNub317XFx0aC8KIGxldHRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxjaGFwbWFjcm8g eyMxfXtBcHBlbmRpeCBcXGFwcGVuZGl4bGV0dGVyfSUkLwogbGV0dGVyCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGdkZWZcXHRoaXNzZWN0aW9ueyMxfVxcc2VjaGVhZGluZyB7IzF9e1xcYXBwZW5k aXhsZXQvCitsZXR0ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxhZHZhbmNlIFxc YXBwZW5kaXhubyBieSAxIFxcbWVzc2FnZXtBcHBlbmRpeC8KIGxldHRlcgl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxzdWJzZWNoZWFkaW5nIHsjMX17XFxhcHBlbmRpeGxldHRlcn17XFx0aGVcXHNl Y25vfXtcXC8KIGxldHRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eeyMxfXtcXGFwcGVuZGl4bGV0 dGVyfXtcXHRoZVxcc2Vjbm99e1xcbm9leHBhbmRcXGZvbGlvfS8KIGxldHRlcgl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eeyMxfXtcXGFwcGVuZGl4bGV0dGVyfXtcXHRoZVxcc2Vjbm99e1xcdGhlXFxz dWJzZWNub317XFwvCkBAIC0zMjYyLDYgKzMxNzcsNyBAQCBsZXR0ZXI6CXRleC1zcmMvdGV4aW5m by50ZXgJL15cXHhkZWZcXHRoaXNjaGFwdGVye0FwcGVuZGl4IFxcYXBwZW5kaXhsZXR0ZXI6IFxc bgogbGV2ZWwJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkzMTUzCiBsZXgJcHJvbC1zcmMvbmF0ZGVk LnByb2xvZwkvXmxleChXLFN5bk91dCxTZW0pOi0kLwogbGV4cHRyCXktc3JjL2NjY3AueQkzMzIK K2xpCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcbGkgPSBcXHNmICUgU29tZXRpbWVzIHdl IGNhbGwgaXQgXFxsaSwgbm90IFxcc2YuLwogbGlicwltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9e Oi0gaW1wb3J0X21vZHVsZSBsaWJzLiQvCiBsaWNlbnplCWh0bWwtc3JjL3NvZnR3YXJlbGliZXJv Lmh0bWwJL15MaWNlbnplIGQndXNvIGRpIHVuIHByb2dyYW1tYSQvCiBsaW1pdAljcC1zcmMvUmFu Z2UuaAkvXiAgZG91YmxlIGxpbWl0ICh2b2lkKSBjb25zdCB7IHJldHVybiBybmdfbGltaXQ7IH0k LwpAQCAtMzI3NCw5ICszMTkwLDEyIEBAIGxpbmVidWZmZXJfaW5pdAljLXNyYy9ldGFncy5jCS9e bGluZWJ1ZmZlcl9pbml0IChsaW5lYnVmZmVyICpsYnApJC8KIGxpbmVidWZmZXJfc2V0bGVuCWMt c3JjL2V0YWdzLmMJL15saW5lYnVmZmVyX3NldGxlbiAobGluZWJ1ZmZlciAqbGJwLCBpbnQgdG9r c2l6ZSkkLwogbGluZW5vCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMzE0NwogbGluZW5vCWMtc3Jj L2V0YWdzLmMJMjUwNgorbGluZW51bWJlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGRlZlxc bGluZW51bWJlcntcXHRoZVxcaW5wdXRsaW5lbm86XFxzcGFjZX0kLworbGluZW51bWJlcgl0ZXgt c3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcbGluZW51bWJlciA9IFxcZW1wdHkgJSBOb24tMy4w LiQvCiBsaW5lcG9zCWMtc3JjL2V0YWdzLmMJMjUwNwogbGluZXBvcwljLXNyYy9ldGFncy5jCTI5 MjIKIGxpbmtzCWh0bWwtc3JjL3NvZnR3YXJlLmh0bWwJL15MaW5rcyB0byBpbnRlcmVzdGluZyBz b2Z0d2FyZSQvCitsaXNwCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbGlzcHtcXGFib3Zl ZW52YnJlYWskLwogbGlzcF9ldmFsX2RlcHRoCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMzA0NQog bGlzcF9oX0NIRUNLX0xJU1RfQ09OUwljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eI2RlZmluZSBs aXNwX2hfQ0hFQ0tfTElTVF9DT05TKHgsIHkpIENIRUNLX1RZUEUgKEMvCiBsaXNwX2hfQ0hFQ0tf TlVNQkVSCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL14jZGVmaW5lIGxpc3BfaF9DSEVDS19OVU1C RVIoeCkgQ0hFQ0tfVFlQRSAoSU5URUdFUi8KQEAgLTMzMTAsNiArMzIyOSw3IEBAIGxpc3BfaF9Y VFlQRQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eIyBkZWZpbmUgbGlzcF9oX1hUWVBFKGEpICgo ZW51bSBMaXNwX1R5cGUpCiBsaXNwX2hfWFVOVEFHCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL14j IGRlZmluZSBsaXNwX2hfWFVOVEFHKGEsIHR5cGUpICgodm9pZCAqKSAoaW50cHRyXy8KIGxpc3Bf aF9jaGVja19jb25zX2xpc3QJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXiMgZGVmaW5lIGxpc3Bf aF9jaGVja19jb25zX2xpc3QoKSAoKHZvaWQpIDApJC8KIGxpc3BfaF9tYWtlX251bWJlcgljLXNy Yy9lbWFjcy9zcmMvbGlzcC5oCS9eIyBkZWZpbmUgbGlzcF9oX21ha2VfbnVtYmVyKG4pIFxcJC8K K2xpc3BwYXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcbGlzcHBhcntcXG51bGxcXGVu ZGdyYWZ9fSQvCiBsaXNweV9hY2NlbnRfY29kZXMJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJ NDYzNAogbGlzcHlfYWNjZW50X2tleXMJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJNDc0MQog bGlzcHlfZHJhZ19uX2Ryb3BfbmFtZXMJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJNTE4MQpA QCAtMzMzNiwxOCArMzI1NiwyOSBAQCBsb2FkUE9STWFuYWdlcglwaHAtc3JjL2xjZV9mdW5jdGlv bnMucGhwCS9eICBmdW5jdGlvbiAmbG9hZFBPUk1hbmFnZXIoKSQvCiBsb2NhbF9pZl9zZXQJYy1z cmMvZW1hY3Mvc3JjL2xpc3AuaAkyMzM4CiBsb2NhdGlvbgljcC1zcmMvY2xoZWlyLmhwcAkvXiAg ICBsb2NhdGlvbigpIHsgfSQvCiBsb2NhdGlvbgljcC1zcmMvY2xoZWlyLmhwcAkzMworbG9nZ2lu Z2FsbAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGxvZ2dpbmdhbGx7XFx0cmFjaW5nY29t bWFuZHMyIFxcdHJhY2luZ3N0YXRzMiAkLworbG9vawl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGtiZCMxe1xcZGVmXFxsb29reyMxfVxcZXhwYW5kYWZ0ZXJcXGtiZGZvb1xcbG9vaz8/Lwog bG9va3VwCXktc3JjL2NjY3AueQkvXmxvb2t1cCAobmFtZSwgbGVuLCBoYXNoKSQvCiBsb29rdXBf Y2FsbAltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gcHJlZCBsb29rdXBfY2FsbChhY2N1X2dv YWxfc3RvcmU6OmluLCBhY2N1X2dvYWwvCitsb3Nlc3BhY2UJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxsb3Nlc3BhY2UgIzF7IzF9JC8KIGxvd2Nhc2UJYy1zcmMvZXRhZ3MuYwkvXiNkZWZp bmUgbG93Y2FzZShjKQl0b2xvd2VyIChDSEFSIChjKSkkLworbG93ZXJjYXNlZW51bWVyYXRlCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbG93ZXJjYXNlZW51bWVyYXRleyUkLwogbHVjaWRf ZXZlbnRfdHlwZV9saXN0X3AJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15sdWNpZF9ldmVu dF90eXBlX2xpc3RfcCAoTGlzcF9PYmplY3Qgb2JqZWN0KSQvCitsdnZtb2RlCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcbHZ2bW9kZXtcXHZib3ggdG8gMHB0e319JC8KIG1hYm9ydAljLXNy Yy9lbWFjcy9zcmMvZ21hbGxvYy5jCS9ebWFib3J0IChlbnVtIG1jaGVja19zdGF0dXMgc3RhdHVz KSQvCiBtYWNoX2hvc3Rfc2VsZgljLXNyYy9tYWNoc3lzY2FsbHMuaAkvXlNZU0NBTEwgKG1hY2hf aG9zdF9zZWxmLCAtMjksJC8KIG1hY2hfbXNnX3RyYXAJYy1zcmMvbWFjaHN5c2NhbGxzLmgJL15T WVNDQUxMIChtYWNoX21zZ190cmFwLCAtMjUsJC8KIG1hY2hfcmVwbHlfcG9ydAljLXNyYy9tYWNo c3lzY2FsbHMuaAkvXlNZU0NBTEwgKG1hY2hfcmVwbHlfcG9ydCwgLTI2LCQvCiBtYWNoX3Rhc2tf c2VsZgljLXNyYy9tYWNoc3lzY2FsbHMuaAkvXlNZU0NBTEwgKG1hY2hfdGFza19zZWxmLCAtMjgs JC8KIG1hY2hfdGhyZWFkX3NlbGYJYy1zcmMvbWFjaHN5c2NhbGxzLmgJL15TWVNDQUxMIChtYWNo X3RocmVhZF9zZWxmLCAtMjcsJC8KK21hY2hlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGRlZm1hY3tcXGRlZnBhcnNlYm9keVxcRWRlZm1hY1xcZGVmbWFjeFxcZGVmbWFjaGUvCitt YWN4XGRlZm1hY2hlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm1hY3tcXGRl ZnBhcnNlYm9keVxcRWRlZm1hY1xcZGVmbWFjeFxcZGVmbWFjaGUvCiBtYWdpYwljLXNyYy9lbWFj cy9zcmMvZ21hbGxvYy5jCTE4NjMKK21haW5tYWdzdGVwCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGxldFxcbWFpbm1hZ3N0ZXA9XFxtYWdzdGVwMSQvCittYWlubWFnc3RlcAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxsZXRcXG1haW5tYWdzdGVwPVxcbWFnc3RlcGhhbGYkLwogbWFpbnRhaW5pbmcu aW5mbwltYWtlLXNyYy9NYWtlZmlsZQkvXm1haW50YWluaW5nLmluZm86IG1haW50YWluaW5nLnRl eGkkLworbWFqb3JoZWFkaW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbWFqb3JoZWFk aW5ne1xccGFyc2VhcmdcXG1ham9yaGVhZGluZ3p6en0kLworbWFqb3JoZWFkaW5nenp6CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbWFqb3JoZWFkaW5nenp6ICMxeyUkLwogbWFrZS1hYmJy ZXYtdGFibGUJYy1zcmMvYWJicmV2LmMJL15ERUZVTiAoIm1ha2UtYWJicmV2LXRhYmxlIiwgRm1h a2VfYWJicmV2X3RhYmxlLCBTbS8KIG1ha2VfQ190YWcJYy1zcmMvZXRhZ3MuYwkvXm1ha2VfQ190 YWcgKGJvb2wgaXNmdW4pJC8KIG1ha2VfY29vcglwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9ebWFr ZV9jb29yKHMoXyksQWxwaGEsU2VtMSxTZW0yLEFscGhhQFNlbTFAU2VtMikuJC8KQEAgLTMzODgs NiArMzMxOSw3IEBAIG1hcF93b3JkCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15tYXBfd29yZChb W19dfFdzXSxFeHApOi0kLwogbWFwcGluZwlodG1sLXNyYy9hbGdydGhtcy5odG1sCS9eTWFwcGlu ZyB0aGUgQ2hhbm5lbCBTeW1ib2xzJC8KIG1hcHN5bglwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9e bWFwc3luKEFcL0IsQU1cL0JNKTotJC8KIG1hcmtfa2JvYXJkcwljLXNyYy9lbWFjcy9zcmMva2V5 Ym9hcmQuYwkvXm1hcmtfa2JvYXJkcyAodm9pZCkkLworbWF0aAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXG1hdGgjMXtcXGltcGxpY2l0bWF0aCAjMVxcaW1wbGljaXRtYXRofSQvCiBtYXgJ Yy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXiNkZWZpbmUgbWF4KGEsIGIpICgoYSkgPiAoYikgPyAo YSkgOiAoYikpJC8KIG1heAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTU4CiBtYXgJYy5jCS9eX19h dHRyaWJ1dGVfXyAoKGFsd2F5c19pbmxpbmUpKSBtYXggKGludCBhLCBpbnQgYikvCkBAIC0zNDEw LDYgKzMzNDIsNyBAQCBtZW1hbGlnbgljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCS9ebWVtYWxp Z24gKHNpemVfdCBhbGlnbm1lbnQsIHNpemVfdCBzaXplKSQvCiBtZW1iZXIJcHJvbC1zcmMvbmF0 ZGVkLnByb2xvZwkvXm1lbWJlcihYLFtYfF9dKS4kLwogbWVtYmVyX2xlc3N0aGFuX2dvYWxpZAlt ZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gcHJlZCBtZW1iZXJfbGVzc3RoYW5fZ29hbGlkKGFj Y3VfZ29hbF9zdG9yZTo6aW4vCiBtZW1jbGVhcgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9ebWVt Y2xlYXIgKHZvaWQgKnAsIHB0cmRpZmZfdCBuYnl0ZXMpJC8KK21lbnUJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcbG9uZ1xcZGVmXFxtZW51ICMxXFxlbmQgbWVudXt9JC8KIG1lbnVfYmFyX2l0ZW0J Yy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15tZW51X2Jhcl9pdGVtIChMaXNwX09iamVjdCBr ZXksIExpc3BfT2JqZWN0IGl0ZW0sIC8KIG1lbnVfYmFyX2l0ZW1zCWMtc3JjL2VtYWNzL3NyYy9r ZXlib2FyZC5jCS9ebWVudV9iYXJfaXRlbXMgKExpc3BfT2JqZWN0IG9sZCkkLwogbWVudV9iYXJf aXRlbXNfaW5kZXgJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJNzM2OQpAQCAtMzQxOSw2ICsz MzUyLDExIEBAIG1lbnVfaXRlbV9ldmFsX3Byb3BlcnR5CWMtc3JjL2VtYWNzL3NyYy9rZXlib2Fy ZC5jCS9ebWVudV9pdGVtX2V2YWxfcHJvcGVydHkgKExpCiBtZW51X2l0ZW1fZXZhbF9wcm9wZXJ0 eV8xCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ebWVudV9pdGVtX2V2YWxfcHJvcGVydHlf MSAoTGlzcF9PYmplY3QgYXJnKSQvCiBtZW51X3NlcGFyYXRvcl9uYW1lX3AJYy1zcmMvZW1hY3Mv c3JjL2tleWJvYXJkLmMJL15tZW51X3NlcGFyYXRvcl9uYW1lX3AgKGNvbnN0IGNoYXIgKmxhYmVs KSQvCiBtZXRhc291cmNlCWMtc3JjL2V0YWdzLmMJMTk4CittZXRob2RoZWFkZXIJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZtZXRob2R7XFxkZWZtZXRocGFyc2Vib2R5XFxFZGVmbWV0 aG9kXFxkZWZtZXQvCittZXRob2R4XGRlZm1ldGhvZGhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGRlZm1ldGhvZHtcXGRlZm1ldGhwYXJzZWJvZHlcXEVkZWZtZXRob2RcXGRlZm1l dC8KK21ldGhwYXJzZWJvZHlcRWRlZmZuCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVm Zm57XFxkZWZtZXRocGFyc2Vib2R5XFxFZGVmZm5cXGRlZmZueFxcZGVmZm5oZS8KK21ldGhwYXJz ZWJvZHlcRWRlZm1ldGhvZAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZm1ldGhvZHtc XGRlZm1ldGhwYXJzZWJvZHlcXEVkZWZtZXRob2RcXGRlZm1ldC8KK21ldGhwYXJzZWJvZHlcRWRl ZnR5cGVmbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGVmbntcXGRlZm1ldGhw YXJzZWJvZHlcXEVkZWZ0eXBlZm5cXGRlZnR5cC8KIG1pbgljLXNyYy9lbWFjcy9zcmMvZ21hbGxv Yy5jCS9eI2RlZmluZSBtaW4oYSwgYikgKChhKSA8IChiKSA/IChhKSA6IChiKSkkLwogbWluCWMt c3JjL2VtYWNzL3NyYy9saXNwLmgJL14jZGVmaW5lIG1pbihhLCBiKSAoKGEpIDwgKGIpID8gKGEp IDogKGIpKSQvCiBtaW4JYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAk1NwpAQCAtMzQyNiw2ICszMzY0 LDcgQEAgbWluCWNwLXNyYy9jb253YXkuY3BwCS9eI2RlZmluZSBtaW4oeCx5KSAgKCh4ID4geSkg PyB5IDogeCkkLwogbWluX2FyZ3MJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxNjg2CiBtaW5fY2hh cgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTE2MjEKIG1pbnVzCWNwLXNyYy9mdW5jdGlvbnMuY3Bw CS9edm9pZCBEYXRlOjptaW51cyAoIGludCBkYXlzICwgaW50IG1vbnRoICwgaW50IHllYXIvCitt aW51cwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG1pbnVzeyQtJH0kLwogbWl0aQlodG1s LXNyYy9zb2Z0d2FyZWxpYmVyby5odG1sCS9eU2ZhdGlhbW8gYWxjdW5pIG1pdGkkLwogbW9kaWZp ZXJfbmFtZXMJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJNjMxOQogbW9kaWZpZXJfc3ltYm9s cwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwk2MzI3CkBAIC0zNDUxLDcgKzMzOTAsOSBAQCBt eV9zdHJ1Y3QJYy1zcmMvaC5oCTkxCiBteV9zdHJ1Y3QJYy5jCTIyNgogbXlfdHlwZWRlZgljLXNy Yy9oLmgJOTMKIG15X3R5cGVkZWYJYy5jCTIyOAorbXlsYnJhY2UJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxteWxicmFjZSB7e1xcdHQgXFxjaGFyICcxNzN9fSQvCiBteXBpCWZvcnRoLXNy Yy90ZXN0LWZvcnRoLmZ0aAkvXnN5bm9ueW0gbXlwaSBmY29uc3QkLworbXlyYnJhY2UJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxteXJicmFjZSB7e1xcdHQgXFxjaGFyICcxNzV9fSQvCiBu CWMtc3JjL2V4aXQuYwkyOAogbgljLXNyYy9leGl0LnN0cmFuZ2Vfc3VmZml4CTI4CiBuYW1lCWMt c3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTcyNDEKQEAgLTM0ODEsMjEgKzM0MjIsMjggQEAgbmFt ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxiZWdpbmdyb3VwXFxkZWZuYW1lIHtcXGNvZGV7IzF9 ICMyfXtGdW5jdGlvbn0lJC8KIG5hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcYmVnaW5ncm91 cFxcZGVmbmFtZSB7XFxjb2RleyMxfSAjMn17VmFyaWFibGV9JSQvCiBuYW1lCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGJlZ2luZ3JvdXBcXGRlZm5hbWUge1xcY29kZXsjMn0gIzN9eyMxfSQvCiBu YW1lCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGJlZ2luZ3JvdXBcXGRlZm5hbWUge1xcY29kZXsj Mn0gIzN9eyMxfSUkLworbmFtZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNpbmdsZWNv ZGVpbmRleGVyICMxe1xcZG9pbmR7XFxpbmRleG5hbWV9e1xcY29kZS8KK25hbWUJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxzaW5nbGVpbmRleGVyICMxe1xcZG9pbmR7XFxpbmRleG5hbWV9 eyMxfX0kLwogbmFtZQl5LXNyYy9jY2NwLnkJMTEzCiBuYW1lCXktc3JjL2NjY3AueQk0MwogbmFt ZWQJYy1zcmMvZXRhZ3MuYwkyNTA1CiBuYW1lc3RyaW5nZXF1YWwJcGFzLXNyYy9jb21tb24ucGFz CS9eZnVuY3Rpb24gbmFtZXN0cmluZ2VxdWFsOygqKHZhciBOYW1lMSxOYW1lMiA6IE5hbWUvCiBu YXJncwljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTI5ODcKK25lZWQJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxuZWVke1xccGFyc2VhcmdcXG5lZWR4fSQvCiBuZWVkX2FkanVzdG1lbnQJYy1z cmMvZW1hY3Mvc3JjL2xpc3AuaAkxOTg2CituZWVkeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXG5lZWR4IzF7JSQvCiBuZWlnaGJvcnMJY3Atc3JjL2NsaGVpci5ocHAJNTkKIG5lbGVtCWNw LXNyYy9SYW5nZS5oCS9eICBpbnQgbmVsZW0gKHZvaWQpIGNvbnN0IHsgcmV0dXJuIHJuZ19uZWxl bTsgfSQvCiBuZXN0bGV2CWMtc3JjL2V0YWdzLmMJMjUyNQogbmV3CW9iamMtc3JjL1BhY2tJbnNw Lm0JL14rbmV3JC8KIG5ldwlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkxNjMKIG5ld190YWcJcGVy bC1zcmMvaHRsbWlmeS1jeXN0aWMJMTgKK25ld2NvZGVpbmRleAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXG5ld2NvZGVpbmRleCAjMXskLworbmV3aW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxuZXdpbmRleCAjMXskLwogbmV3bGIJYy1zcmMvZXRhZ3MuYwkyOTMwCiBuZXds aW5lcG9zCWMtc3JjL2V0YWdzLmMJMjkzMgogbmV3dGV4dHN0cmluZwlwYXMtc3JjL2NvbW1vbi5w YXMJL15mdW5jdGlvbiBuZXd0ZXh0c3RyaW5nOyAoKjogVGV4dFN0cmluZzsqKSQvCituZXd3cml0 ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxuZXd3cml0ZXtcXGFsbG9jQDdcXHdyaXRl XFxjaGFyZGVmXFxzaXh0QEBufX0kLwogbmV4dAljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCTE2 NAogbmV4dAljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCTE4OAogbmV4dAljLXNyYy9lbWFjcy9z cmMvZ21hbGxvYy5jCTE5OApAQCAtMzUxMCw2ICszNDU4LDEwIEBAIG5leHQJYy1zcmMvZW1hY3Mv c3JjL2xpc3AuaAkzMTM0CiBuZXh0CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJNzAwCiBuZXh0CWMt c3JjL2V0YWdzLmMJMjAzCiBuZXh0CWMuYwkxNzQKK25leHQJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxmbHVzaGNye1xcaWZ4XFxwYXJcXGxpc3BwYXIgXFxkZWZcXG5leHQjIzF7fVxcZWxz ZSAvCituZXh0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbmV4dCMjMXt9XFxuZXh0fSQv CituZXh0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccGFyc2VhcmcgIzF7XFxsZXRcXG5l eHQ9IzFcXGJlZ2luZ3JvdXBcXG9iZXlsaW5lcy8KK25leHQJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZWRlZlxcbmV4dHtcXHdyaXRlXFxhdXhmaWxle1xcaW50ZXJuYWxzZXRxIHsjMX17IzJ9fX0v CiBuZXh0CXktc3JjL2NjY3AueQk0MgogbmV4dC1maWxlCWVsLXNyYy9lbWFjcy9saXNwL3Byb2dt b2Rlcy9ldGFncy5lbAkvXihkZWZ1biBuZXh0LWZpbGUgKCZvcHRpb25hbCBpbml0aWFsaXplIG5v dmlzaXQpJC8KIG5leHQtZmlsZS1saXN0CWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFn cy5lbAkvXihkZWZ2YXIgbmV4dC1maWxlLWxpc3QgbmlsJC8KQEAgLTM1MjAsMjYgKzM0NzIsNDQg QEAgbmV4dF93ZWFrCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTg3NQogbmV4dGZyZWUJYy1zcmMv ZW1hY3Mvc3JjL2xpc3AuaAkzMDI5CiBuZnJlZQljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCTE1 MAogbmwJYy1zcmMvZXRhZ3MuYwkyNTIxCitubQl0ZXgtc3JjL3Rlc3RlbnYudGV4CS9eXFxuZXdj b21tYW5ke1xcbm19WzJde1xcbm9tZW5jbGF0dXJleyMxfXsjMn19JC8KK25vCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcYXBwZW5kaXhsZXR0ZXJ7XFxjaGFyXFx0aGVcXGFwcGVuZGl4bm99 JC8KIG5vCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdsb2JhbFxcYWR2YW5jZSBcXGFwcGVuZGl4 bm8gYnkgMSBcXG1lc3NhZ2V7QXBwZW5kaXgvCiBubwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxp Zm51bVxcc2Vjbm89MCBBcHBlbmRpeFxceHJlZnRpZSdjaGFyXFx0aGVcXGFwcGVuZGl4bi8KIG5v CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG5ld2NvdW50IFxcYXBwZW5kaXhubyAgXFxhcHBlbmRp eG5vID0gYFxcQCQvCi1uby5cdGhlXHNlY25vCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGVsc2Ug XFxpZm51bSBcXHN1YnNlY25vPTAgU2VjdGlvblxceHJlZnRpZSdjaGFyXFx0aGVcXC8KLW5vLlx0 aGVcc2Vjbm8uXHRoZVxzdWJzZWNubwl0ZXgtc3JjL3RleGluZm8udGV4CS9eU2VjdGlvblxceHJl ZnRpZSdjaGFyXFx0aGVcXGFwcGVuZGl4bm8uXFx0aGVcXHNlY25vLlxcdGgvCi1uby5cdGhlXHNl Y25vLlx0aGVcc3Vic2Vjbm8uXHRoZVxzdWJzdWJzZWNubwl0ZXgtc3JjL3RleGluZm8udGV4CS9e U2VjdGlvblxceHJlZnRpZSdjaGFyXFx0aGVcXGFwcGVuZGl4bm8uXFx0aGVcXHNlY25vLlxcdGgv Cituby5cdGhlCXRleC1zcmMvdGV4aW5mby50ZXgJL15TZWN0aW9uXFx4cmVmdGllJ2NoYXJcXHRo ZVxcYXBwZW5kaXhuby5cXHRoZVxcc2Vjbm8uXFx0aC8KK25vLlx0aGUJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZWxzZSBcXGlmbnVtIFxcc3Vic2Vjbm89MCBTZWN0aW9uXFx4cmVmdGllJ2NoYXJc XHRoZVxcLwogbm9fYXJndW1lbnQJYy1zcmMvZ2V0b3B0LmgJODkKIG5vX2xhbmdfaGVscAljLXNy Yy9ldGFncy5jCTcwNwogbm9fc3ViCWMtc3JjL2VtYWNzL3NyYy9yZWdleC5oCTM4Nwogbm9jYXNl X3RhaWwJYy1zcmMvZXRhZ3MuYwkvXm5vY2FzZV90YWlsIChjb25zdCBjaGFyICpjcCkkLwogbm9k ZQljLXNyYy9ldGFncy5jCTIyNQorbm9kZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5v ZGV7XFxFTlZjaGVja1xccGFyc2VhcmdcXG5vZGV6enp9JC8KIG5vZGVfc3QJYy1zcmMvZXRhZ3Mu YwkyMTQKIG5vZGVyZWYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcYXBwZW5kaXhub2RlcmVmICUk Lworbm9kZXh4eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5vZGV4eHhbIzEsIzJde1xc Z2RlZlxcbGFzdG5vZGV7IzF9fSQvCitub2Rlenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl Zlxcbm9kZXp6eiMxe1xcbm9kZXh4eCBbIzEsXX0kLworbm9maWxsZXhkZW50CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcbm9maWxsZXhkZW50e1xccGFyc2VhcmdcXG5vZmlsbGV4ZGVudHl5 eX0kLworbm9maWxsZXhkZW50eXl5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbm9maWxs ZXhkZW50eXl5ICMxe3tcXGFkdmFuY2UgXFxsZWZ0c2tpcCBieSAtXFxlLworbm9mb250cwl0ZXgt c3JjL3RleGluZm8udGV4CS9ee1xcY2hhcHRlcm5vZm9udHMlJC8KIG5vZm9udHMJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXntcXGluZGV4bm9mb250cyQvCi1ub2ZvbnRzJQl0ZXgtc3JjL3RleGluZm8u dGV4CS9ee1xcY2hhcHRlcm5vZm9udHMlJC8KK25vbmFycm93aW5nCXRleC1zcmMvdGV4aW5mby50 ZXgJL14JXFxsZXRcXG5vbmFycm93aW5nPVxcY29tbWVudCQvCitub25hcnJvd2luZwl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxsZXRcXG5vbmFycm93aW5nPVxccmVsYXgkLwogbm9uZV9oZWxwCWMt c3JjL2V0YWdzLmMJNzAzCitub3JtYWxiYWNrc2xhc2gJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxub3JtYWxiYWNrc2xhc2h7e1xcdHRcXHJhd2JhY2tzbGFzaHh4fX0kLworbm9ybWFsY2Fy ZXQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxub3JtYWxjYXJldHtefSQvCitub3JtYWxk b3VibGVxdW90ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5vcm1hbGRvdWJsZXF1b3Rl eyJ9JC8KK25vcm1hbGdyZWF0ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxub3JtYWxn cmVhdGVyez59JC8KIG5vcm1hbGl6ZQlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9ebm9ybWFsaXpl KE0sTU5vcm0pOi0kLwogbm9ybWFsaXplX2ZyZXNoCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15u b3JtYWxpemVfZnJlc2goTSxOKTotJC8KIG5vcm1hbGl6ZV90cmVlCXByb2wtc3JjL25hdGRlZC5w cm9sb2cJL15ub3JtYWxpemVfdHJlZSh0cmVlKFJ1bGUsU3luOlNlbSxUcmVlcyksJC8KIG5vcm1h bGl6ZV90cmVlcwlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9ebm9ybWFsaXplX3RyZWVzKFtdLFtd KS4kLworbm9ybWFsbGVzcwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5vcm1hbGxlc3N7 PH0kLworbm9ybWFscGFyZW5zCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXG5vcm1hbHBh cmVuc3tcXGJvbGRicmF4XFxsZXQmPVxcYW1wbnJ9JC8KK25vcm1hbHBsdXMJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxub3JtYWxwbHVzeyt9JC8KK25vcm1hbHRpbGRlCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcbm9ybWFsdGlsZGV7fn0kLworbm9ybWFsdW5kZXJzY29yZQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG5vcm1hbHVuZGVyc2NvcmV7X30kLworbm9ybWFsdmVy dGljYWxiYXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxub3JtYWx2ZXJ0aWNhbGJhcnt8 fSQvCiBub3NhdmUJcHl0LXNyYy9zZXJ2ZXIucHkJL14gICAgZGVmIG5vc2F2ZShzZWxmKTokLwog bm90X2JvbAljLXNyYy9lbWFjcy9zcmMvcmVnZXguaAkzOTEKIG5vdF9lb2wJYy1zcmMvZW1hY3Mv c3JjL3JlZ2V4LmgJMzk0CkBAIC0zNTUwLDYgKzM1MjAsOCBAQCBub3RhZzQJYy1zcmMvZG9zdG9y dHVyZS5jCTQ1CiBub3RhZzQJYy1zcmMvdG9ydHVyZS5jCTQ1CiBub3Rpbm5hbWUJYy1zcmMvZXRh Z3MuYwkvXiNkZWZpbmUgbm90aW5uYW1lKGMpCShfbmluW0NIQVIgKGMpXSkgXC8qIGMgaXMgbm90 IC8KIG5wZW5kaW5nCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTcyNDQKK25zYm90CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbnNib3R7XFx2Ym94JC8KK25zdG9wCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcbnN0b3B7XFx2Ym94JC8KIG50b29sX2Jhcl9pdGVtcwljLXNyYy9l bWFjcy9zcmMva2V5Ym9hcmQuYwk3OTc0CiBudW1PZkNoYW5uZWxzCWNwLXNyYy9jLkMJMQogbnVt X2NvbHVtbnMJY3Atc3JjL2NvbndheS5jcHAJMTYKQEAgLTM1NTgsOCArMzUzMCwxNSBAQCBudW1f cmVncwljLXNyYy9lbWFjcy9zcmMvcmVnZXguaAk0MzAKIG51bV9yb3dzCWNwLXNyYy9jb253YXku Y3BwCTE1CiBudW1iZXJLZXlzCW9iamNwcC1zcmMvU2ltcGxlQ2FsYy5NCS9eLSBudW1iZXJLZXlz OnNlbmRlciQvCiBudW1iZXJfbGVuCWMtc3JjL2V0YWdzLmMJL15zdGF0aWMgaW50IG51bWJlcl9s ZW4gKGxvbmcpIEFUVFJJQlVURV9DT05TVDskLworbnVtYmVyZWRzZWMJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcb3V0ZXJcXGRlZlxcbnVtYmVyZWRzZWN7XFxwYXJzZWFyZ1xcc2Vjenp6fSQvCitu dW1iZXJlZHN1YnNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxudW1iZXJl ZHN1YnNlY3tcXHBhcnNlYXJnXFxudW1iZXJlZHN1YnNlYy8KK251bWJlcmVkc3Vic2Vjenp6CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcbnVtYmVyZWRzdWJzZWN6enogIzF7XFxzZWNjaGVj a3tzdWJzZWN0aW9ufSUkLworbnVtYmVyZWRzdWJzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkv Xlxcb3V0ZXJcXGRlZlxcbnVtYmVyZWRzdWJzdWJzZWN7XFxwYXJzZWFyZ1xcbnVtYmVyZWRzdWIv CitudW1iZXJlZHN1YnN1YnNlY3p6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG51bWJl cmVkc3Vic3Vic2Vjenp6ICMxe1xcc2VjY2hlY2t7c3Vic3Vic2VjdGkvCiBudW1iZXJ2YXJzCXBy b2wtc3JjL25hdGRlZC5wcm9sb2cJL15udW1iZXJ2YXJzKFgpOi0kLworbnVtZXJpY2VudW1lcmF0 ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXG51bWVyaWNlbnVtZXJhdGV7JSQvCiBudmFy cwljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTMxNDAKK29iZXllZHNwYWNlCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGdkZWZcXG9iZXllZHNwYWNle1xcIH0kLwogb2JqZGVmCWMtc3JjL2V0YWdzLmMJ MjQ4NAogb2JqZWN0CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMjEyOAogb2JqZWN0X3JlZ2lzdHJ5 CWNwLXNyYy9jbGhlaXIuY3BwCTEwCkBAIC0zNTcwLDYgKzM1NDksMTIgQEAgb2JzdGFja19jaHVu a19mcmVlCXktc3JjL3BhcnNlLnkJNDgKIG9jYXRzZWVuCWMtc3JjL2V0YWdzLmMJMjQ3Nwogb2N0 YXZlX01EaWFnQXJyYXkyX2gJY3Atc3JjL01EaWFnQXJyYXkyLmgJMjkKIG9jdGF2ZV9SYW5nZV9o CWNwLXNyYy9SYW5nZS5oCTI0CitvZGRmb290aW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl Zlxcb2RkZm9vdGluZ3tcXHBhcnNlYXJnXFxvZGRmb290aW5neHh4fSQvCitvZGRmb290aW5neHh4 CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXG9kZGZvb3Rpbmd4eHggIzF7XFxvZGRmb290 aW5neXl5ICMxQHxAfEB8QHxcXGYvCitvZGRmb290aW5neXl5CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGdkZWZcXG9kZGZvb3Rpbmd5eXkgIzFAfCMyQHwjM0B8IzRcXGZpbmlzaHslJC8KK29kZGhl YWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxvZGRoZWFkaW5ne1xccGFyc2Vhcmdc XG9kZGhlYWRpbmd4eHh9JC8KK29kZGhlYWRpbmd4eHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc Z2RlZlxcb2RkaGVhZGluZ3h4eCAjMXtcXG9kZGhlYWRpbmd5eXkgIzFAfEB8QHxAfFxcZi8KK29k ZGhlYWRpbmd5eXkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcb2RkaGVhZGluZ3l5eSAj MUB8IzJAfCMzQHwjNFxcZmluaXNoeyUkLwogb2VkaWZmCW1ha2Utc3JjL01ha2VmaWxlCS9eb2Vk aWZmOiBPVEFHUyBFVEFHUyAke2luZmlsZXN9JC8KIG9mZnNldAljLXNyYy9lbWFjcy9zcmMvbGlz cC5oCTIzMDUKIG9mZnNldAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTIzNjUKQEAgLTM1ODAsMTUg KzM1NjUsMjEgQEAgb2luYm9keQljLXNyYy9ldGFncy5jCTI0NzgKIG9rCW9iamMtc3JjL1BhY2tJ bnNwLm0JL14tb2s6c2VuZGVyJC8KIG9rX3RvX2VjaG9fYXRfbmV4dF9wYXVzZQljLXNyYy9lbWFj cy9zcmMva2V5Ym9hcmQuYwkxNTkKIG9sZF92YWx1ZQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTI5 ODAKK29sZHBhZ2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgIFxcbGV0XFxvbGRwYWdlID0gXFxw YWdlJC8KIG9tZXRob2Rjb2xvbgljLXNyYy9ldGFncy5jCTI0ODEKIG9tZXRob2RwYXJtCWMtc3Jj L2V0YWdzLmMJMjQ4Mgogb21ldGhvZHNpZ24JYy1zcmMvZXRhZ3MuYwkyNDc5CiBvbWV0aG9kdGFn CWMtc3JjL2V0YWdzLmMJMjQ4MAorb25lCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxca2Jk Zm9vIzEjMiMzXFxwYXJ7XFxkZWZcXG9uZXsjMX1cXGRlZlxcdGhyZWV7IzN9XFxkLworb25lcGFn ZW91dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGNyb3BtYXJrc3tcXGxldFxcb25lcGFn ZW91dD1cXGNyb3BwYWdlb3V0IH0kLworb25lcGFnZW91dAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXG9uZXBhZ2VvdXQjMXtcXGhvZmZzZXQ9XFxub3JtYWxvZmZzZXQkLwogb25vbmUJYy1z cmMvZXRhZ3MuYwkyNDcyCiBvcGFyZW5zZWVuCWMtc3JjL2V0YWdzLmMJMjQ3Ngogb3BlbglvYmpj LXNyYy9QYWNrSW5zcC5tCS9eLW9wZW46c2VuZGVyJC8KIG9wZW4tZHJpYmJsZS1maWxlCWMtc3Jj L2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eREVGVU4gKCJvcGVuLWRyaWJibGUtZmlsZSIsIEZvcGVu X2RyaWJibGVfZmlsZSwgU28vCiBvcGVuSW5Xb3Jrc3BhY2UJb2JqYy1zcmMvUGFja0luc3AubQkv XnN0YXRpYyB2b2lkIG9wZW5JbldvcmtzcGFjZShjb25zdCBjaGFyICpmaWxlbmFtZSkkLworb3Bl bmNvbnRlbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcb3BlbmNvbnRlbnRze1xcb3Bl bm91dCBcXGNvbnRlbnRzZmlsZSA9IFxcam9ibmFtLworb3BlbmluZGljZXMJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxvcGVuaW5kaWNlc3slJC8KIG9wZXJhdGlvbktleXMJb2JqY3BwLXNy Yy9TaW1wbGVDYWxjLk0JL14tIG9wZXJhdGlvbktleXM6c2VuZGVyJC8KIG9wZXJhdG9yCXktc3Jj L2NjY3AueQk0MzgKIG9wZXJhdG9yICsrCWNwLXNyYy9mdW5jdGlvbnMuY3BwCS9eRGF0ZSAmIERh dGU6Om9wZXJhdG9yICsrICggdm9pZCApeyQvCkBAIC0zNjEwLDExICszNjAxLDIwIEBAIG9wZXJh dG9yIGludAljcC1zcmMvZmFpbC5DCS9eCQkJICAgb3BlcmF0b3IgaW50KCkgY29uc3Qge3JldHVy biB4O30kLwogb3BlcmF0b3IrCWNwLXNyYy9jLkMJL14gIEEgb3BlcmF0b3IrKEEmIGEpIHt9OyQv CiBvcGVyYXRvcisJY3Atc3JjL2MuQwkvXmNvbnN0IEEmIEE6Om9wZXJhdG9yKyhjb25zdCBBJikg eyB9JC8KIG9wZXJhdG9yKwljcC1zcmMvYy5DCS9edm9pZCBvcGVyYXRvcisoaW50LCBpbnQpIHt9 JC8KLW9wcGFyc2Vib2R5XEVkZWZvcFxkZWZvcHhcZGVmb3BoZWFkZXJcZGVmb3B0eXBlCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZm9wcGFyc2Vib2R5XFxFZGVmb3BcXGRlZm9weFxcZGVmb3Bo ZWFkZXJcXGRlZm9wdHlwLworb3BoZWFkZXJcZGVmb3B0eXBlCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZm9wcGFyc2Vib2R5XFxFZGVmb3BcXGRlZm9weFxcZGVmb3BoZWFkZXJcXGRlZm9wdHlw Lworb3BuZXN0ZWQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcb3BuZXN0ZWR7XFxjaGFy YFxcKFxcZ2xvYmFsXFxhZHZhbmNlXFxwYXJlbmNvdW50IC8KK29wbnIJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxvcG5ye3tcXHNmXFxjaGFyYFxcKH19IFxcZGVmXFxjbG5ye3tcXHNmXFxj aGFyYFxcKX19IC8KK29wcGFyc2Vib2R5XEVkZWZvcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZvcHBhcnNlYm9keVxcRWRlZm9wXFxkZWZvcHhcXGRlZm9waGVhZGVyXFxkZWZvcHR5cC8KK29w cm0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcb3BybSMxIHt7XFxybVxcY2hhcmBcXCh9 IzEgXFxiZiBcXGxldCg9XFxvcG5lc3RlZCAvCiBvcHJvdG9jb2wJYy1zcmMvZXRhZ3MuYwkyNDcz CitvcHRoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZvcHR7XFxkZWZ2YXJw YXJzZWJvZHlcXEVkZWZvcHRcXGRlZm9wdHhcXGRlZm9wLwogb3B0aW9uCWMtc3JjL2dldG9wdC5o CTczCiBvcHRpb25hbF9hcmd1bWVudAljLXNyYy9nZXRvcHQuaAk5MQotb3B2YXJwYXJzZWJvZHlc RWRlZmN2XGRlZmN2eFxkZWZjdmFyaGVhZGVyXGRlZmN2dHlwZQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZvcHZhcnBhcnNlYm9keVxcRWRlZmN2XFxkZWZjdnhcXGRlZmN2YXJoZWFkZXJcXGRl Zi8KK29wdHhcZGVmb3B0aGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmb3B0 e1xcZGVmdmFycGFyc2Vib2R5XFxFZGVmb3B0XFxkZWZvcHR4XFxkZWZvcC8KK29wdHlwZQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxiZWdpbmdyb3VwXFxkZWZuYW1lIHsjMn17XFxkZWZvcHR5cGV7 fSBvbiAjMX0lJC8KK29wdHlwZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZvcHBhcnNlYm9k eVxcRWRlZm9wXFxkZWZvcHhcXGRlZm9waGVhZGVyXFxkZWZvcHR5cC8KK29wdmFycGFyc2Vib2R5 XEVkZWZjdgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZvcHZhcnBhcnNlYm9keVxcRWRlZmN2 XFxkZWZjdnhcXGRlZmN2YXJoZWFkZXJcXGRlZi8KK29weFxkZWZvcGhlYWRlcgl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZvcHBhcnNlYm9keVxcRWRlZm9wXFxkZWZvcHhcXGRlZm9waGVhZGVy XFxkZWZvcHR5cC8KIG9yZF9hZGRfZWxlbWVudAlwcm9sLXNyYy9vcmRzZXRzLnByb2xvZwkvXm9y ZF9hZGRfZWxlbWVudChbXSwgRWxlbWVudCwgW0VsZW1lbnRdKS4kLwogb3JkX2RlbF9lbGVtZW50 CXByb2wtc3JjL29yZHNldHMucHJvbG9nCS9eb3JkX2RlbF9lbGVtZW50KFtdLCBfLCBbXSkuJC8K IG9yZF9kaXNqb2ludAlwcm9sLXNyYy9vcmRzZXRzLnByb2xvZwkvXm9yZF9kaXNqb2ludChTZXQx LCBTZXQyKSA6LSQvCkBAIC0zNjYwLDggKzM2NjAsMjAgQEAgcE1kCWMtc3JjL2VtYWNzL3NyYy9s aXNwLmgJMTU1CiBwTXUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxNTEKIHBNdQljLXNyYy9lbWFj cy9zcmMvbGlzcC5oCTE1NgogcF9uZXh0CWMtc3JjL2V0YWdzLmMJMjU4CitwYWdlCXRleC1zcmMv dGV4aW5mby50ZXgJL14gICAgICBcXGxldFxccGFnZSA9IFxcb2xkcGFnZSQvCitwYWdlCXRleC1z cmMvdGV4aW5mby50ZXgJL14gICBcXGRlZlxccGFnZXslJC8KK3BhZ2UJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxwYWdle1xccGFyXFx2ZmlsbFxcc3VwZXJlamVjdH0kLworcGFnZWFsaWdu bWFjcm8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHBhZ2VhbGlnbm1hY3Jv PVxcY2hhcG9kZHBhZ2UkLworcGFnZWFsaWdubWFjcm8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc Z2xvYmFsXFxsZXRcXHBhZ2VhbGlnbm1hY3JvPVxcY2hhcHBhZ2VyJC8KK3BhZ2VhbGlnbm1hY3Jv CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdsb2JhbFxcbGV0XFxwYWdlYWxpZ25tYWNybz1cXGNo YXBwYWdlcn0kLworcGFnZWJvZHkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwYWdlYm9k eSMxe1xcdmJveCB0b1xccGFnZWhlaWdodHtcXGJveG1heGRlcHRoPVxcLworcGFnZWNvbnRlbnRz CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXHBhZ2Vjb250ZW50cyMxe1xcaWZ2b2lkXFx0 b3BpbnNcXGVsc2VcXHVudmJveFxcdG8vCiBwYWdlc2l6ZQljLXNyYy9lbWFjcy9zcmMvZ21hbGxv Yy5jCTE3MDMKK3BhZ2Vzb2Zhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHBhZ2Vzb2Zh cntcXHVudmJveFxccGFydGlhbHBhZ2UgJSQvCiBwYWlyCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0J L146LSBpbXBvcnRfbW9kdWxlIHBhaXIuJC8KK3Bhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxs ZXRcXHBhcj1cXGxpc3BwYXIkLworcGFyCXRleC1zcmMvdGV4aW5mby50ZXgJL157XFxsZXRcXHBh cj1cXGVuZGdyYWYgXFxzbWFsbGJyZWFrfSUkLworcGFyYWdyYXBoaW5kZW50CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGxldFxccGFyYWdyYXBoaW5kZW50PVxcY29tbWVudCQvCiBwYXJlbnQJYy1z cmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJODc0NQogcGFyZW50CWMtc3JjL2VtYWNzL3NyYy9saXNw LmgJMTU5MAogcGFyc2UJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXnBhcnNlKFdzLENhdCk6LSQv CkBAIC0zNjgwLDggKzM2OTIsMjAgQEAgcGFyc2VfcmV0dXJuX2Vycm9yCXktc3JjL2NjY3AueQk3 MAogcGFyc2Vfc29saXRhcnlfbW9kaWZpZXIJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15w YXJzZV9zb2xpdGFyeV9tb2RpZmllciAoTGlzcF9PYmplY3Qgc3ltYm9sKSQvCiBwYXJzZV90b29s X2Jhcl9pdGVtCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ecGFyc2VfdG9vbF9iYXJfaXRl bSAoTGlzcF9PYmplY3Qga2V5LCBMaXNwX09iamVjdCAvCiBwYXJzZV90cmVlCW1lcmMtc3JjL2Fj Y3VtdWxhdG9yLm0JL146LSBpbXBvcnRfbW9kdWxlIHBhcnNlX3RyZWUuJC8KK3BhcnNlYXJnCXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccGFyc2VhcmcgIzF7XFxsZXRcXG5leHQ9IzFcXGJl Z2luZ3JvdXBcXG9iZXlsaW5lcy8KK3BhcnNlYXJnZGlzY2FyZHNwYWNlCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGdkZWZcXHBhcnNlYXJnZGlzY2FyZHNwYWNlIHtcXGJlZ2luZ3JvdXBcXG9iZXls aW5lc1xcLworcGFyc2VhcmdsaW5lCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccGFyc2Vh cmdsaW5le1xcYmVnaW5ncm91cCBcXG9iZXlsaW5lcyBcXHBhcnNlYXJnLworcGFyc2VhcmdsaW5l eAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFxwYXJzZWFyZ2xpbmV4ICMxXl5Ne1xcZW5k Z3JvdXAgXFxuZXh0IHsjMX19fSQvCitwYXJzZWFyZ3gJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxwYXJzZWFyZ3h7JSQvCitwYXJzZWJvZHlcRWRlZm1hYwl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGRlZm1hY3tcXGRlZnBhcnNlYm9keVxcRWRlZm1hY1xcZGVmbWFjeFxcZGVmbWFj aGUvCitwYXJzZWJvZHlcRWRlZnNwZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZz cGVje1xcZGVmcGFyc2Vib2R5XFxFZGVmc3BlY1xcZGVmc3BlY3hcXGRlZnNwLworcGFyc2Vib2R5 XEVkZWZ0eXBlZnVuCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZ1bntcXGRl ZnBhcnNlYm9keVxcRWRlZnR5cGVmdW5cXGRlZnR5cGVmLworcGFyc2Vib2R5XEVkZWZ1bgl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnVue1xcZGVmcGFyc2Vib2R5XFxFZGVmdW5cXGRl ZnVueFxcZGVmdW5oZWFkZXIvCiBwYXQJYy1zcmMvZXRhZ3MuYwkyNjIKIHBhdHRlcm4JYy1zcmMv ZXRhZ3MuYwkyNjAKK3BjaGFwc2VwbWFjcm8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFs XFxsZXRcXHBjaGFwc2VwbWFjcm89XFxjaGFwYnJlYWskLworcGNoYXBzZXBtYWNybwl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxccGNoYXBzZXBtYWNybz1cXGNoYXBvZGRwYWdl JC8KK3BjaGFwc2VwbWFjcm8JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHBj aGFwc2VwbWFjcm89XFxjaGFwcGFnZXIkLwogcGRsY291bnQJYy1zcmMvZW1hY3Mvc3JjL2xpc3Au aAkzMDQ2CiBwZW5kaW5nLWRlbGV0ZS1tb2RlCWVsLXNyYy9UQUdURVNULkVMCS9eKGRlZmFsaWFz ICdwZW5kaW5nLWRlbGV0ZS1tb2RlICdkZWxldGUtc2VsZWN0aW9uLW0vCiBwZW5kaW5nX2Z1bmNh bGxzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTQzNzcKQEAgLTM2ODksMTYgKzM3MTMsMTkg QEAgcGVuZGluZ19zaWduYWxzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTgwCiBwZmF0YWwJ Yy1zcmMvZXRhZ3MuYwkvXnBmYXRhbCAoY29uc3QgY2hhciAqczEpJC8KIHBmZHNldAljLXNyYy9o LmgJNTcKIHBmbm90ZQljLXNyYy9ldGFncy5jCS9ecGZub3RlIChjaGFyICpuYW1lLCBib29sIGlz X2Z1bmMsIGNoYXIgKmxpbmVzdGFydCwvCitwaW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxwaW5kZXgge1xccGdpbmRleH0kLwogcGlubmVkCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJ Njc5CiBwbGFpbl9DX2VudHJpZXMJYy1zcmMvZXRhZ3MuYwkvXnBsYWluX0NfZW50cmllcyAoRklM RSAqaW5mKSQvCiBwbGFpbl9DX3N1ZmZpeGVzCWMtc3JjL2V0YWdzLmMJNjQzCiBwbGFpbmMJYy1z cmMvZXRhZ3MuYwkyOTM0CitwbGFpbnNlY2hlYWRpbmcJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxwbGFpbnNlY2hlYWRpbmcgIzF7XFxzZWNoZWFkaW5naSB7IzF9fSQvCiBwbGlzdAljLXNy Yy9lbWFjcy9zcmMvbGlzcC5oCTIwNDAKIHBsaXN0CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJNjk3 CiBwbHVzCWNwLXNyYy9mdW5jdGlvbnMuY3BwCS9edm9pZCBEYXRlOjpwbHVzICggaW50IGRheXMg LCBpbnQgbW9udGggLCBpbnQgeWVhciAvCiBwbHVzCWdvLXNyYy90ZXN0MS5nbwk1CiBwbHVzdmFs c2VxCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15wbHVzdmFsc2VxKFtdKSAtLT4gW10uJC8KIHBv aW50CWZvcnRoLXNyYy90ZXN0LWZvcnRoLmZ0aAkvXkJFR0lOLVNUUlVDVFVSRSBwb2ludCBcXCBj cmVhdGUgdGhlIG5hbWVkIHN0cnVjdHVyZS8KK3BvaW50CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxccG9pbnR7JFxcc3RhciR9JC8KIHBvaW50ZXIJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAky MTI1CiBwb2xsX2Zvcl9pbnB1dAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnBvbGxfZm9y X2lucHV0IChzdHJ1Y3QgYXRpbWVyICp0aW1lcikkLwogcG9sbF9mb3JfaW5wdXRfMQljLXNyYy9l bWFjcy9zcmMva2V5Ym9hcmQuYwkvXnBvbGxfZm9yX2lucHV0XzEgKHZvaWQpJC8KQEAgLTM3NDgs MTAgKzM3NzUsMTggQEAgcHJldgljLXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCTE2NQogcHJldglj LXNyYy9lbWFjcy9zcmMvZ21hbGxvYy5jCTE4OQogcHJldgljLXNyYy9lbWFjcy9zcmMvbGlzcC5o CTIxOTEKIHByZXYJYy5jCTE3NQorcHJpbWFyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHByaW1hcnkgIzF7XFxsaW5leyMxXFxoZmlsfX0kLworcHJpbnQJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxwcmludHtcXGxlYXZldm1vZGVcXGxvd2VyLjFleFxcaGJveCB0byAxZW17XFxo ZmlsLworcHJpbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwcmludHtcXHJlYWxiYWNr c2xhc2ggcHJpbnR9JC8KIHByaW50Q2xhc3NpZmljYXRpb24JcGhwLXNyYy9sY2VfZnVuY3Rpb25z LnBocAkvXiAgICAgIGZ1bmN0aW9uIHByaW50Q2xhc3NpZmljYXRpb24oKSQvCiBwcmludF9oZWxw CWMtc3JjL2V0YWdzLmMJL15wcmludF9oZWxwIChhcmd1bWVudCAqYXJnYnVmZmVyKSQvCiBwcmlu dF9sYW5ndWFnZV9uYW1lcwljLXNyYy9ldGFncy5jCS9ecHJpbnRfbGFuZ3VhZ2VfbmFtZXMgKHZv aWQpJC8KIHByaW50X3ZlcnNpb24JYy1zcmMvZXRhZ3MuYwkvXnByaW50X3ZlcnNpb24gKHZvaWQp JC8KK3ByaW50ZWRtYW51YWwJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwcmludGVkbWFu dWFse1xcaWdub3Jlc3BhY2VzICM1fSUkLworcHJpbnRlZG1hbnVhbAl0ZXgtc3JjL3RleGluZm8u dGV4CS9ec2VjdGlvbiBgYFxccHJpbnRlZG5vZGVuYW1lJycgaW4gXFxjaXRle1xccHJpbnRlZG1h bnUvCitwcmludGVkbm9kZW5hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxwcmludGVk bm9kZW5hbWV7XFxpZ25vcmVzcGFjZXMgIzF9JSQvCitwcmludGVkbm9kZW5hbWUJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxwcmludGVkbm9kZW5hbWV7XFxpZ25vcmVzcGFjZXMgIzN9JSQv CitwcmludGluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccHJpbnRpbmRleHtcXHBh cnNlYXJnXFxkb3ByaW50aW5kZXh9JC8KIHByaW50bWF4X3QJYy1zcmMvZW1hY3Mvc3JjL2xpc3Au aAkxNDgKIHByaW50bWF4X3QJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxNTMKIHByb2MJYy1zcmMv aC5oCTg3CkBAIC0zNzY2LDYgKzM4MDEsMjEgQEAgcHJvbG9nX3ByCWMtc3JjL2V0YWdzLmMJL15w cm9sb2dfcHIgKGNoYXIgKnMsIGNoYXIgKmxhc3QpJC8KIHByb2xvZ19za2lwX2NvbW1lbnQJYy1z cmMvZXRhZ3MuYwkvXnByb2xvZ19za2lwX2NvbW1lbnQgKGxpbmVidWZmZXIgKnBsYiwgRklMRSAq aW5mKSQvCiBwcm9wCWMtc3JjL2V0YWdzLmMJMjA5CiBwcm90ZWN0X21hbGxvY19zdGF0ZQljLXNy Yy9lbWFjcy9zcmMvZ21hbGxvYy5jCS9ecHJvdGVjdF9tYWxsb2Nfc3RhdGUgKGludCBwcm90ZWN0 X3ApJC8KK3B0ZXhMCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxccHRleEw9XFxMJC8KK3B0 ZXhiCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxccHRleGI9XFxiJC8KK3B0ZXhidWxsZXQJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxwdGV4YnVsbGV0PVxcYnVsbGV0JC8KK3B0ZXhj CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxccHRleGM9XFxjJC8KK3B0ZXhkb3QJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcbGV0XFxwdGV4ZG90PVxcLiQvCitwdGV4ZG90cwl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxsZXRcXHB0ZXhkb3RzPVxcZG90cyQvCitwdGV4ZW5kCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGxldFxccHRleGVuZD1cXGVuZCQvCitwdGV4ZXF1aXYJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcbGV0XFxwdGV4ZXF1aXYgPSBcXGVxdWl2JC8KK3B0ZXhmb290bm90ZQl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHB0ZXhmb290bm90ZT1cXGZvb3Rub3RlJC8KK3B0ZXhp CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxccHRleGk9XFxpJC8KK3B0ZXhsCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGxldFxccHRleGw9XFxsJC8KK3B0ZXhsYnJhY2UJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcbGV0XFxwdGV4bGJyYWNlPVxceyQvCitwdGV4cmJyYWNlCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGxldFxccHRleHJicmFjZT1cXH0kLworcHRleHN0YXIJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcbGV0XFxwdGV4c3Rhcj1cXCokLworcHRleHQJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcbGV0XFxwdGV4dD1cXHQkLwogcHRocmVhZF9tdXRleGF0dHJfc2V0cHJpb19jZWlsaW5n L2YJYWRhLXNyYy8yYXRhc3ByaS5hZGIJL14gICBmdW5jdGlvbiBwdGhyZWFkX211dGV4YXR0cl9z ZXRwcmlvX2NlaWxpbmckLwogcHRocmVhZF9tdXRleGF0dHJfc2V0cHJvdG9jb2wvZglhZGEtc3Jj LzJhdGFzcHJpLmFkYgkvXiAgIGZ1bmN0aW9uIHB0aHJlYWRfbXV0ZXhhdHRyX3NldHByb3RvY29s JC8KIHB1cnBvc2UJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxNTk0CkBAIC0zNzczLDE0ICszODIz LDIwIEBAIHB1c2hfa2JvYXJkCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ecHVzaF9rYm9h cmQgKHN0cnVjdCBrYm9hcmQgKmspJC8KIHB1c2hjbGFzc19hYm92ZQljLXNyYy9ldGFncy5jCS9e cHVzaGNsYXNzX2Fib3ZlIChpbnQgYnJhY2VsZXYsIGNoYXIgKnN0ciwgaW50IGxlbikvCiBwdXRf ZW50cmllcwljLXNyYy9ldGFncy5jCS9ecHV0X2VudHJpZXMgKHJlZ2lzdGVyIG5vZGUgKm5wKSQv CiBwdmVjX3R5cGUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAk3ODAKK3B4cmVmCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxccHhyZWYjMXtzZWUgXFx4cmVmWFsjMSwsLCwsLCxdfSQvCiBxdWFu dGl6aW5nCWh0bWwtc3JjL2FsZ3J0aG1zLmh0bWwJL15RdWFudGl6aW5nIHRoZSBSZWNlaXZlZCQv CiBxdWVzdG8JLi4vYy9jLndlYgkzNAogcXVpZXR0ZXN0CW1ha2Utc3JjL01ha2VmaWxlCS9ecXVp ZXR0ZXN0OiQvCiBxdWl0X2NoYXIJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJMTkyCiBxdWl0 X3Rocm93X3RvX3JlYWRfY2hhcgljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnF1aXRfdGhy b3dfdG9fcmVhZF9jaGFyIChib29sIGZyb21fc2lnbmFsKSQvCitxdW90YXRpb24JdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxxdW90YXRpb257JSQvCiBxdXgJcnVieS1zcmMvdGVzdDEucnUJ L14gICAgYWxpYXNfbWV0aG9kIDpxdXgsIDp0ZWUsIGF0dHJfYWNjZXNzb3IoOmJvZ3VzKS8KIHF1 eDEJcnVieS1zcmMvdGVzdDEucnUJL14gICAgICAgICAgICAgICAgOnF1eDEpJC8KIHF1eD0JcnVi eS1zcmMvdGVzdDEucnUJL14gICAgICBkZWYgcXV4PSh0ZWUpJC8KK3IJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxyIyMxe1xccmVhbGJhY2tzbGFzaCByIHsjIzF9fSQvCityCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcciMjMXtcXHJlYWxiYWNrc2xhc2ggciB7IyMxfX0lJC8KK3IJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxyIzF7e1xccm0gIzF9fQkJJSByb21hbiBmb250 JC8KK3IJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxyPVxcaW5kZXhkdW1teWZvbnQkLwog cjAJYy1zcmMvc3lzZGVwLmgJNTQKIHIxCWMtc3JjL3N5c2RlcC5oCTU1CiByX2FsbG9jCWMtc3Jj L2VtYWNzL3NyYy9saXNwLmgJL15leHRlcm4gdm9pZCAqcl9hbGxvYyAodm9pZCAqKiwgc2l6ZV90 KSBBVFRSSUJVVEVfQS8KQEAgLTM3ODgsNiArMzg0NCwxMCBAQCByYW5nZV9leHAJeS1zcmMvcGFy c2UueQkyNjkKIHJhbmdlX2V4cF9saXN0CXktc3JjL3BhcnNlLnkJMjczCiByYXdfa2V5YnVmCWMt c3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTExNgogcmF3X2tleWJ1Zl9jb3VudAljLXNyYy9lbWFj cy9zcmMva2V5Ym9hcmQuYwkxMTcKK3Jhd2JhY2tzbGFzaAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxsZXRcXHJhd2JhY2tzbGFzaD1cXHJlbGF4JSQvCityYXdiYWNrc2xhc2h4eAl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXHJhd2JhY2tzbGFzaHh4e1xcaW5kZXhiYWNrc2xhc2h9JSBcXGlu ZGV4YmFja3NsLworcmF3YmFja3NsYXNoeHgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxy YXdiYWNrc2xhc2h4eHtcXGluZGV4YmFja3NsYXNofSUkLworcmJyYgl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXGxicmJ7e1xcYmZcXGNoYXJgXFxbfX0gXFxkZWZcXHJicmJ7e1xcYmZcXGNo YXJgXFxdfX0kLwogcmJ0cAljLmMJMjQwCiByZV9pc3djdHlwZQljLXNyYy9lbWFjcy9zcmMvcmVn ZXguaAk2MDIKIHJlX25zdWIJYy1zcmMvZW1hY3Mvc3JjL3JlZ2V4LmgJMzY0CkBAIC0zODE5LDYg KzM4NzksNyBAQCByZWFkX2tleV9zZXF1ZW5jZV92cwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQu YwkvXnJlYWRfa2V5X3NlcXVlbmNlX3ZzIChMaXNwX09iagogcmVhZF9tZW51X2NvbW1hbmQJYy1z cmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15yZWFkX21lbnVfY29tbWFuZCAodm9pZCkkLwogcmVh ZF90b2MJcGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJL15zdWIgcmVhZF90b2MgKCkkLwogcmVhZGFi bGVfZXZlbnRzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ecmVhZGFibGVfZXZlbnRzIChp bnQgZmxhZ3MpJC8KK3JlYWRhdXhmaWxlCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccmVh ZGF1eGZpbGV7JSQvCiByZWFkbGluZQljLXNyYy9ldGFncy5jCS9ecmVhZGxpbmUgKGxpbmVidWZm ZXIgKmxicCwgRklMRSAqc3RyZWFtKSQvCiByZWFkbGluZV9pbnRlcm5hbAljLXNyYy9ldGFncy5j CS9ecmVhZGxpbmVfaW50ZXJuYWwgKGxpbmVidWZmZXIgKmxicCwgcmVnaXN0ZXIgRklMRSAvCiBy ZWFsbG9jCWMtc3JjL2VtYWNzL3NyYy9nbWFsbG9jLmMJL15yZWFsbG9jICh2b2lkICpwdHIsIHNp emVfdCBzaXplKSQvCkBAIC0zODQzLDcgKzM5MDQsMTAgQEAgcmVjdXJzaXZlX2VkaXRfdW53aW5k CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ecmVjdXJzaXZlX2VkaXRfdW53aW5kIChMaXNw X08KIHJlZGlyZWN0CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJNjYzCiByZWR1Y2UJcHJvbC1zcmMv bmF0ZGVkLnByb2xvZwkvXnJlZHVjZSgoWF5NKUBOLEwpOi0gICAgICUgYmV0YSByZWR1Y3Rpb24k LwogcmVkdWNlX3N1YnRlcm0JcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXnJlZHVjZV9zdWJ0ZXJt KE0sTTIpOi0kLworcmVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccmVmIzF7XFx4cmVm WFsjMSwsLCwsLCxdfSQvCityZWZpbGwJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxyZWZp bGw9XFxyZWxheCQvCiByZWZyZXNoUG9ydAlweXQtc3JjL3NlcnZlci5weQkvXiAgICBkZWYgcmVm cmVzaFBvcnQoc2VsZik6JC8KK3JlZngJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxyZWZ4 IzEjMnslJC8KIHJlZ19lcnJjb2RlX3QJYy1zcmMvZW1hY3Mvc3JjL3JlZ2V4LmgJMzIzCiByZWdf ZXJyY29kZV90CWMuYwkyNzkKIHJlZ19zeW50YXhfdAljLXNyYy9lbWFjcy9zcmMvcmVnZXguaAk0 MwpAQCAtMzg3NCw4ICszOTM4LDEyIEBAIHJlcXVldWVkX2V2ZW50c19wZW5kaW5nX3AJYy1zcmMv ZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15yZXF1ZXVlZF9ldmVudHNfcGVuZGluZ19wCiByZXF1aXJl CW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBpbXBvcnRfbW9kdWxlIHJlcXVpcmUuJC8KIHJl cXVpcmVkX2FyZ3VtZW50CWMtc3JjL2dldG9wdC5oCTkwCiByZXNldC10aGlzLWNvbW1hbmQtbGVu Z3RocwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXkRFRlVOICgicmVzZXQtdGhpcy1jb21t YW5kLWxlbmd0aHMiLCBGcmVzZXRfdGhpc19jLworcmVzZXRtYXRoZm9udHMJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxyZXNldG1hdGhmb250c3slJC8KK3Jlc3QJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxzcGxpdG9mZiMxIzJcXGVuZG1hcmt7XFxkZWZcXGZpcnN0eyMxfVxcZGVm XFxyZXN0ey8KIHJlc3RvcmVfZ2V0Y2ptcAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnJl c3RvcmVfZ2V0Y2ptcCAoc3lzX2ptcF9idWYgdGVtcCkkLwogcmVzdG9yZV9rYm9hcmRfY29uZmln dXJhdGlvbgljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnJlc3RvcmVfa2JvYXJkX2NvbmZp Z3VyYXRpb24gKGludCB3YXNfbG9ja2VkKSQvCityZXN1bHQJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxyZXN1bHR7XFxsZWF2ZXZtb2RlXFxyYWlzZS4xNWV4XFxoYm94IHRvIDFlbXtcXGhm LworcmVzdWx0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxccmVzdWx0e1xccmVhbGJhY2tz bGFzaCByZXN1bHR9JC8KIHJldHVybl90b19jb21tYW5kX2xvb3AJYy1zcmMvZW1hY3Mvc3JjL2tl eWJvYXJkLmMJMTM1CiByZXZlcnNlCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15yZXZlcnNlKFtd LFdzLFdzKS4kLwogcmV2ZXJ0CW9iamMtc3JjL1BhY2tJbnNwLm0JL14tcmV2ZXJ0OnNlbmRlciQv CkBAIC0zODgzLDYgKzM5NTEsOCBAQCByaWdodAljLXNyYy9ldGFncy5jCTIxNgogcmlnaHRfc2hp ZnQJeS1zcmMvY2NjcC55CS9ecmlnaHRfc2hpZnQgKGEsIGIpJC8KIHJpbmcxCWMuYwkyNDEKIHJp bmcyCWMuYwkyNDIKK3JtCXRleC1zcmMvdGV4aW5mby50ZXgJL14gICAgICBcXGxldFxccm09XFxz aG9ydGNvbnRybSBcXGxldFxcYmY9XFxzaG9ydGNvbnRiZiBcXGwvCitybQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXHJte1xccmVhbGJhY2tzbGFzaCBybSB9JSQvCiBybV9lbwljLXNyYy9l bWFjcy9zcmMvcmVnZXguaAk0NTAKIHJtX3NvCWMtc3JjL2VtYWNzL3NyYy9yZWdleC5oCTQ0OQog cm5nX2Jhc2UJY3Atc3JjL1JhbmdlLmgJNzkKQEAgLTM5MDksMTkgKzM5NzksMzcgQEAgc2FmZV9y dW5faG9va19mdW5jYWxsCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ec2FmZV9ydW5faG9v a19mdW5jYWxsIChwdHJkaWYKIHNhZmVfcnVuX2hvb2tzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2Fy ZC5jCS9ec2FmZV9ydW5faG9va3MgKExpc3BfT2JqZWN0IGhvb2spJC8KIHNhZmVfcnVuX2hvb2tz XzEJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15zYWZlX3J1bl9ob29rc18xIChwdHJkaWZm X3QgbmFyZ3MsIExpc3BfT2JqZWN0ICphci8KIHNhZmVfcnVuX2hvb2tzX2Vycm9yCWMtc3JjL2Vt YWNzL3NyYy9rZXlib2FyZC5jCS9ec2FmZV9ydW5faG9va3NfZXJyb3IgKExpc3BfT2JqZWN0IGVy cm9yLCBwdHJkaWZmX3QvCitzYW1wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2FtcCAj MXtgXFx0Y2xvc2V7IzF9J1xcbnVsbH0kLworc2FtcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXHNhbXAjIzF7XFxyZWFsYmFja3NsYXNoIHNhbXAgeyMjMX19JC8KK3NhbXAJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFxzYW1wIyMxe1xccmVhbGJhY2tzbGFzaCBzYW1wIHsjIzF9fSUk Lworc2FtcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHNhbXA9XFxpbmRleGR1bW15Zm9u dCQvCiBzYXZlCXB5dC1zcmMvc2VydmVyLnB5CS9eICAgIGRlZiBzYXZlKHNlbGYpOiQvCiBzYXZl X2dldGNqbXAJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15zYXZlX2dldGNqbXAgKHN5c19q bXBfYnVmIHRlbXApJC8KIHNhdmVfdHlwZQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9ec2F2ZV90 eXBlIChzdHJ1Y3QgTGlzcF9TYXZlX1ZhbHVlICp2LCBpbnQgbikkLwogc2F2ZW5zdHIJYy1zcmMv ZXRhZ3MuYwkvXnNhdmVuc3RyIChjb25zdCBjaGFyICpjcCwgaW50IGxlbikkLwogc2F2ZXN0cglj LXNyYy9ldGFncy5jCS9ec2F2ZXN0ciAoY29uc3QgY2hhciAqY3ApJC8KIHNheQlnby1zcmMvdGVz dC5nbwkvXmZ1bmMgc2F5KG1zZyBzdHJpbmcpIHskLworc2MJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxzYyMxe3tcXHNtYWxsY2FwcyMxfX0JJSBzbWFsbGNhcHMgZm9udCQvCitzYwl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHNjPVxcaW5kZXhkdW1teWZvbnQkLwogc2Nhbl9zZXBh cmF0b3JzCWMtc3JjL2V0YWdzLmMJL15zY2FuX3NlcGFyYXRvcnMgKGNoYXIgKm5hbWUpJC8KIHNj b2xvbnNlZW4JYy1zcmMvZXRhZ3MuYwkyNDQ3CiBzY3JhdGNoCWMtc3JjL3N5c2RlcC5oCTU2CiBz Y3JvbGxfYmFyX3BhcnRzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTUxODkKLXNlYz1ccmVs YXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxhcHBlbmRpeHNlYz1cXHJlbGF4JC8KK3Nl Ywl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc2VjdGlvbiA9IFxcYXBwZW5k aXhzZWMkLworc2VjY2hlY2sJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZWNjaGVjayMx e1xcaWYgXFxwYWdlbm88MCAlJC8KK3NlY2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL14gICAg ICBcXGRlZlxcc2VjZW50cnkgIyMxIyMyIyMzIyM0e30kLworc2VjZW50cnkJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxzZWNlbnRyeSMxIzIjMyM0e1xcZG9zZWNlbnRyeXsjMi4jM1xcbGFi ZWxzcGFjZS8KK3NlY2VudHJ5Zm9udHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZWNl bnRyeWZvbnRze1xcdGV4dGZvbnRzfSQvCitzZWNmb250cwl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXHNlY2ZvbnRzeyUkLworc2VjaGVhZGluZwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXHNlY2hlYWRpbmcgIzEjMiMze1xcc2VjaGVhZGluZ2kgeyMyLiMzXFxlbnNwYWNlLworc2Vj aGVhZGluZ2JyZWFrCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2VjaGVhZGluZ2JyZWFr e1xcZG9icmVhayBcXHNlY2hlYWRpbmdza2lwIHstMTAvCitzZWNoZWFkaW5naQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXHNlY2hlYWRpbmdpICMxe3tcXGFkdmFuY2UgXFxzZWNoZWFkaW5n c2tpcCBieSBcXC8KK3NlY29uZGFyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNlY29u ZGFyeSAjMSMyeyQvCiBzZWN0aW9uCXBlcmwtc3JjL2h0bG1pZnktY3lzdGljCTI1Ci1zZWN0aW9u PVxyZWxheAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXGFwcGVuZGl4c2VjdGlvbj1cXHJl bGF4JC8KK3NlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHNlY3Rp b24gPSBcXGFwcGVuZGl4c2VjJC8KK3NlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2xv YmFsXFxsZXRcXHNlY3Rpb24gPSBcXG51bWJlcmVkc2VjJC8KK3NlY3Rpb24JdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZ2xvYmFsXFxsZXRcXHNlY3Rpb24gPSBcXHVubnVtYmVyZWRzZWMkLworc2Vj dGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHNlY3Rpb249XFxyZWxheCQvCiBzZWN0 aW9uX2hyZWYJcGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJL15zdWIgc2VjdGlvbl9ocmVmICgkKSQv CiBzZWN0aW9uX25hbWUJcGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJL15zdWIgc2VjdGlvbl9uYW1l ICgkKSQvCiBzZWN0aW9uX25hbWUJcGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJMTIKQEAgLTM5Mjks NiArNDAxNywxMCBAQCBzZWN0aW9uX3RvYwlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkxNQogc2Vj dGlvbl91cmwJcGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJL15zdWIgc2VjdGlvbl91cmwgKCkkLwog c2VjdGlvbl91cmxfYmFzZQlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkvXnN1YiBzZWN0aW9uX3Vy bF9iYXNlICgpJC8KIHNlY3Rpb25fdXJsX25hbWUJcGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJL15z dWIgc2VjdGlvbl91cmxfbmFtZSAoKSQvCitzZWN0aW9uenp6CXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXG91dGVyXFxkZWZcXGFwcGVuZGl4c2VjdGlvbntcXHBhcnNlYXJnXFxhcHBlbmRpeHNlY3Rp Lworc2VjdGlvbnp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxvdXRlclxcZGVmXFxhcHBlbmRp eHNlY3tcXHBhcnNlYXJnXFxhcHBlbmRpeHNlY3Rpb256ei8KK3NlY3p6egl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXGluZm9hcHBlbmRpeHNlY3tcXHBhcnNlYXJnXFxhcHBlbmRpeHNlY3p6 en0kLworc2Vjenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2Vjenp6ICMxe1xcc2Vj Y2hlY2t7c2VjdGlvbn0lJC8KIHNlbGVjdAlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9ec2VsZWN0 KFgsW1h8WHNdLFhzKS4kLwogc2VsZWN0LXRhZ3MtdGFibGUJZWwtc3JjL2VtYWNzL2xpc3AvcHJv Z21vZGVzL2V0YWdzLmVsCS9eKGRlZnVuIHNlbGVjdC10YWdzLXRhYmxlICgpJC8KIHNlbGVjdC10 YWdzLXRhYmxlLW1vZGUJZWwtc3JjL2VtYWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRl ZmluZS1kZXJpdmVkLW1vZGUgc2VsZWN0LXRhZ3MtdGFibGUtbW9kZSBzcGVjaWEvCkBAIC0zOTM5 LDkgKzQwMzEsMTEgQEAgc2VsZWN0X2xhc3QJcHJvbC1zcmMvbmF0ZGVkLnByb2xvZwkvXnNlbGVj dF9sYXN0KFtYXSxYLFtdKS4kLwogc2VuZAlvYmpjLXNyYy9TdWJwcm9jZXNzLm0JL14tIHNlbmQ6 KGNvbnN0IGNoYXIgKilzdHJpbmcgd2l0aE5ld2xpbmU6KEJPT0wpd2FudC8KIHNlbmQJb2JqYy1z cmMvU3VicHJvY2Vzcy5tCS9eLSBzZW5kOihjb25zdCBjaGFyICopc3RyaW5nJC8KIHNlcGFyYXRv cl9uYW1lcwljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwk3MzcyCitzZXBzcGFjZXMJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcc2Vwc3BhY2Vze1xcZGVmIHtcXCB9fX0kLwogc2VyaWFs aXplVG9WYXJzCXBocC1zcmMvbGNlX2Z1bmN0aW9ucy5waHAJL14gICAgICBmdW5jdGlvbiBzZXJp YWxpemVUb1ZhcnMoJHByZWZpeCkkLwogc2V0CWNwLXNyYy9jb253YXkuaHBwCS9eICAgIHZvaWQg c2V0KHZvaWQpIHsgYWxpdmUgPSAxOyB9JC8KIHNldAltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9e Oi0gaW1wb3J0X21vZHVsZSBzZXQuJC8KK3NldAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHNldHtcXHBhcnNlYXJnXFxzZXR4eHh9JC8KIHNldC1pbnB1dC1pbnRlcnJ1cHQtbW9kZQljLXNy Yy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXkRFRlVOICgic2V0LWlucHV0LWludGVycnVwdC1tb2Rl IiwgRnNldF9pbnB1dF9pbnRlLwogc2V0LWlucHV0LW1ldGEtbW9kZQljLXNyYy9lbWFjcy9zcmMv a2V5Ym9hcmQuYwkvXkRFRlVOICgic2V0LWlucHV0LW1ldGEtbW9kZSIsIEZzZXRfaW5wdXRfbWV0 YV9tb2RlLwogc2V0LWlucHV0LW1vZGUJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15ERUZV TiAoInNldC1pbnB1dC1tb2RlIiwgRnNldF9pbnB1dF9tb2RlLCBTc2V0X2lucC8KQEAgLTM5NzEs OSArNDA2NSwyNCBAQCBzZXRfc3ltYm9sX25leHQJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXnNl dF9zeW1ib2xfbmV4dCAoTGlzcF9PYmplY3Qgc3ltLCBzdHJ1Ywogc2V0X3N5bWJvbF9wbGlzdAlj LXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9ec2V0X3N5bWJvbF9wbGlzdCAoTGlzcF9PYmplY3Qgc3lt LCBMaXNwX09iamVjdCBwbGkvCiBzZXRfdXB0bwltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0g ZnVuYyBzZXRfdXB0byhhY2N1X2Nhc2UsIGludCkgPSBzZXQoYWNjdV9nb2FsX2kvCiBzZXRfd2Fp dGluZ19mb3JfaW5wdXQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15zZXRfd2FpdGluZ19m b3JfaW5wdXQgKHN0cnVjdCB0aW1lc3BlYyAqdGltZV90b19jbC8KK3NldGNoYXB0ZXJuZXdwYWdl CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2V0Y2hhcHRlcm5ld3BhZ2UgIzEge1xcY3Nu YW1lIENIQVBQQUcjMVxcZW5kY3MvCitzZXRjaGFwdGVyc3R5bGUJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFxzZXRjaGFwdGVyc3R5bGUgIzEge1xcY3NuYW1lIENIQVBGIzFcXGVuZGNzbmFt ZS8KK3NldGRlZmZvbnQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZXRkZWZmb250ICMx IHtcXGNzbmFtZSBERUYjMVxcZW5kY3NuYW1lfSQvCitzZXRmaWxlbmFtZQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eICAgXFxnbG9iYWxcXGxldFxcc2V0ZmlsZW5hbWU9XFxjb21tZW50ICUgSWdub3Jl IGV4dHJhLworc2V0ZmlsZW5hbWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZXRmaWxl bmFtZXslJC8KK3NldHJlZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNldHJlZiMxeyUk Lwogc2V0cmVmCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGV4cGFuZGFmdGVyXFxleHBhbmRhZnRl clxcZXhwYW5kYWZ0ZXJcXGFwcGVuZGl4c2V0cmUvCitzZXR0aXRsZQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZcXHNldHRpdGxle1xccGFyc2VhcmdcXHNldHRpdGxlenp6fSQvCitzZXR0aXRs ZXp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNldHRpdGxlenp6ICMxe1xcZ2RlZlxc dGhpc3RpdGxleyMxfX0kLwogc2V0dXAJY3Atc3JjL2MuQwk1CitzZXR4eHgJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxzZXR4eHggIzF7JC8KK3NmCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcc2Z7XFxmYW09XFxzZmZhbSBcXHRlbnNmfSQvCitzZgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXHNme1xccmVhbGJhY2tzbGFzaCBzZn0lJC8KK3NmCXRleC1zcmMvdGV4aW5mby50 ZXgJL157XFxsZXRcXHRlbnR0PVxcc2VjdHQgXFxsZXRcXHR0PVxcc2VjdHQgXFxsZXRcXHNmPVxc c2VjdHQkLwogc2hpZnQJY3Atc3JjL2Z1bmN0aW9ucy5jcHAJL152b2lkIERhdGU6OnNoaWZ0ICgg dm9pZCApe1wvXC9TaGlmdCB0aGlzIGRhdGUgdG8gcHJlLworc2hvcnRjaGFwZW50cnkJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzaG9ydGNoYXBlbnRyeSMxIzIjM3slJC8KK3Nob3J0Y29u dGVudHMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxzaG9ydGNvbnRlbnRzID0gXFxzdW1t YXJ5Y29udGVudHMkLworc2hvcnR1bm51bWJlcmVkZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFxzaG9ydHVubnVtYmVyZWRlbnRyeSMxIzJ7JSQvCiBzaG91bGRMb2FkCW9iamMtc3Jj L1BhY2tJbnNwLm0JL14tKEJPT0wpc2hvdWxkTG9hZCQvCiBzaG91bGRfYXR0ZW1wdF9hY2N1X3Ry YW5zZm9ybQltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gcHJlZCBzaG91bGRfYXR0ZW1wdF9h Y2N1X3RyYW5zZm9ybShtb2R1bGVfaW5mbzovCiBzaG91bGRfYXR0ZW1wdF9hY2N1X3RyYW5zZm9y bV8yCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBwcmVkIHNob3VsZF9hdHRlbXB0X2FjY3Vf dHJhbnNmb3JtXzIobW9kdWxlX2luZi8KQEAgLTM5OTEsNiArNDEwMCw5IEBAIHNpZ25hbF9oYW5k bGVyX3QJYy1zcmMvaC5oCTk0CiBzaW11bGF0aW9uCWh0bWwtc3JjL3NvZnR3YXJlLmh0bWwJL15T b2Z0d2FyZSB0aGF0IEkgd3JvdGUgZm9yIHN1cHBvcnRpbmcgbXkgcmVzZWFyY2ggYS8KIHNpbmds ZV9rYm9hcmQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJODkKIHNpbmdsZV9rYm9hcmRfc3Rh dGUJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15zaW5nbGVfa2JvYXJkX3N0YXRlICgpJC8K K3NpbmdsZWNvZGVpbmRleGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2luZ2xlY29k ZWluZGV4ZXIgIzF7XFxkb2luZHtcXGluZGV4bmFtZX17XFxjb2RlLworc2luZ2xlaW5kZXhlcgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNpbmdsZWluZGV4ZXIgIzF7XFxkb2luZHtcXGlu ZGV4bmFtZX17IzF9fSQvCitzaW5nbGVzcGFjZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHNpbmdsZXNwYWNleyUkLwogc2l0ZQljcC1zcmMvY29ud2F5LmhwcAkvXiAgICBzaXRlKGludCB4 aSwgaW50IHlpKTogeCh4aSksIHkoeWkpLCBhbGl2ZSgwKSB7Lwogc2l0ZQljcC1zcmMvY29ud2F5 LmhwcAk1CiBzaXplCWMtc3JjL2VtYWNzL3NyYy9nbWFsbG9jLmMJMTU2CkBAIC00MDA0LDIwICs0 MTE2LDQ1IEBAIHNrZXlzZWVuCWMtc3JjL2V0YWdzLmMJMjQ0NQogc2tpcF9uYW1lCWMtc3JjL2V0 YWdzLmMJL15za2lwX25hbWUgKGNoYXIgKmNwKSQvCiBza2lwX25vbl9zcGFjZXMJYy1zcmMvZXRh Z3MuYwkvXnNraXBfbm9uX3NwYWNlcyAoY2hhciAqY3ApJC8KIHNraXBfc3BhY2VzCWMtc3JjL2V0 YWdzLmMJL15za2lwX3NwYWNlcyAoY2hhciAqY3ApJC8KK3NsCXRleC1zcmMvdGV4aW5mby50ZXgJ L14gICAgICBcXGxldFxccm09XFxzaG9ydGNvbnRybSBcXGxldFxcYmY9XFxzaG9ydGNvbnRiZiBc XGwvCitzbAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHNse1xccmVhbGJhY2tzbGFzaCBz bCB9JSQvCitzbWFsbGJvb2sJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzbWFsbGJvb2t7 JC8KK3NtYWxsYm9vawl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHNtYWxsYm9vaz1cXHJl bGF4JC8KK3NtYWxsY2Fwcwl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuYmY9XFxj aGFwYmYgXFxsZXRcXHRlbnR0PVxcY2hhcHR0IFxcbGV0XFxzbWFsbC8KK3NtYWxsY2Fwcwl0ZXgt c3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuYmY9XFxpbmRiZiBcXGxldFxcdGVudHQ9XFxp bmR0dCBcXGxldFxcc21hbGxjYS8KK3NtYWxsY2Fwcwl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBc XGxldFxcdGVuYmY9XFxzZWNiZiBcXGxldFxcdGVudHQ9XFxzZWN0dCBcXGxldFxcc21hbGxjYS8K K3NtYWxsY2Fwcwl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuYmY9XFxzc2VjYmYg XFxsZXRcXHRlbnR0PVxcc3NlY3R0IFxcbGV0XFxzbWFsbC8KK3NtYWxsY2Fwcwl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eICBcXGxldFxcdGVuYmY9XFx0ZXh0YmYgXFxsZXRcXHRlbnR0PVxcdGV4dHR0 IFxcbGV0XFxzbWFsbC8KK3NtYWxsZXhhbXBsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9i YWxcXGxldFxcc21hbGxleGFtcGxlPVxcc21hbGxsaXNweCQvCitzbWFsbGV4YW1wbGUJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcbGV0XFxzbWFsbGV4YW1wbGU9XFxsaXNwJC8KK3NtYWxsbGlzcAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc21hbGxsaXNwPVxcc21hbGxsaXNw eCQvCitzbWFsbGxpc3B4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc21hbGxsaXNweHtc XGFib3ZlZW52YnJlYWtcXGJlZ2luZ3JvdXBcXGluRU5WJC8KK3NtYXJ0aXRhbGljCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcc21hcnRpdGFsaWMjMXt7XFxzbCAjMX1cXGZ1dHVyZWxldFxc bmV4dFxcc21hcnRpdC8KK3NtYXJ0aXRhbGljeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHNtYXJ0aXRhbGljeHtcXGlmeFxcbmV4dCxcXGVsc2VcXGlmeFxcbmV4dC1cXGVsc2VcXGkvCiBz bmFyZi10YWctZnVuY3Rpb24JZWwtc3JjL2VtYWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9e KGRlZnZhciBzbmFyZi10YWctZnVuY3Rpb24gbmlsJC8KIHNub25lCWMtc3JjL2V0YWdzLmMJMjQ0 Mwogc29sdXRpb25zCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBpbXBvcnRfbW9kdWxlIHNv bHV0aW9ucy4kLwogc29tZV9tb3VzZV9tb3ZlZAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkv XnNvbWVfbW91c2VfbW92ZWQgKHZvaWQpJC8KK3NwCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl Zlxcc3B7XFxwYXJzZWFyZ1xcc3B4eHh9JC8KIHNwYWNlCXRleC1zcmMvdGV4aW5mby50ZXgJL14g ICAgeyMyXFxsYWJlbHNwYWNlICMxfVxcZG90ZmlsbFxcZG9zaG9ydHBhZ2Vub3sjM319JS8KIHNw YWNlCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcZG9zdWJzdWJzZWNlbnRyeXsjMi4jMy4jNC4j NVxcbGFiZWxzcGFjZSMxfXsjNn19Lworc3BhY2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxjaGFwZW50cnkjMSMyIzN7XFxkb2NoYXBlbnRyeXsjMlxcbGFiZWxzcGFjZSMxfS8KK3NwYWNl CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc2VjZW50cnkjMSMyIzMjNHtcXGRvc2VjZW50 cnl7IzIuIzNcXGxhYmVsc3BhY2UvCitzcGFjZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZc XHN1YnNlY2VudHJ5IzEjMiMzIzQjNXtcXGRvc3Vic2VjZW50cnl7IzIuIzMuIzQvCiBzcGFjZXIJ Yy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxOTc1CiBzcGFjZXIJYy1zcmMvZW1hY3Mvc3JjL2xpc3Au aAkxOTgyCiBzcGFjZXIJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyMDM2CiBzcGFjZXIJYy1zcmMv ZW1hY3Mvc3JjL2xpc3AuaAkyMjA1CitzcGFjZXNwbGl0CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGdkZWZcXHNwYWNlc3BsaXQjMSMyXl5Ne1xcZW5kZ3JvdXBcXHNwYWNlc3BsaXRmb297IzEvCitz cGFjZXNwbGl0Zm9vCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxvbmdcXGdkZWZcXHNwYWNlc3Bs aXRmb28jMSMyICMzIzRcXHNwYWNlc3BsaXRmb297JSQvCiBzcGVjYmluZF90YWcJYy1zcmMvZW1h Y3Mvc3JjL2xpc3AuaAkyOTQzCiBzcGVjYmluZGluZwljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTI5 NTUKK3NwZWNoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZzcGVje1xcZGVm cGFyc2Vib2R5XFxFZGVmc3BlY1xcZGVmc3BlY3hcXGRlZnNwLwogc3BlY2lhbHN5bWJvbAlwcm9s LXNyYy9uYXRkZWQucHJvbG9nCS9ec3BlY2lhbHN5bWJvbChDMSxDMixTKTotJC8KK3NwZWN4XGRl ZnNwZWNoZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZzcGVje1xcZGVmcGFy c2Vib2R5XFxFZGVmc3BlY1xcZGVmc3BlY3hcXGRlZnNwLwogc3BsaXRleHAJcHJvbC1zcmMvbmF0 ZGVkLnByb2xvZwkvXnNwbGl0ZXhwKEUsRSwoJ05JTCcsJ05JTCcpKTotIS4kLworc3BsaXRvZmYJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzcGxpdG9mZiMxIzJcXGVuZG1hcmt7XFxkZWZc XGZpcnN0eyMxfVxcZGVmXFxyZXN0ey8KK3NweHh4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl Zlxcc3B4eHggIzF7XFxwYXIgXFx2c2tpcCAjMVxcYmFzZWxpbmVza2lwfSQvCiBzcmNsaXN0CW1h a2Utc3JjL01ha2VmaWxlCS9ec3JjbGlzdDogTWFrZWZpbGUkLwogc3MzCWMuYwkyNTUKIHNzczEJ Yy5jCTI1MgpAQCAtNDA0OSw2ICs0MTg2LDggQEAgc3RhcnQJcGhwLXNyYy9sY2VfZnVuY3Rpb25z LnBocAkvXiAgICAgIGZ1bmN0aW9uIHN0YXJ0KCRsaW5lLCAkY2xhc3MpJC8KIHN0YXJ0CXktc3Jj L2NjY3AueQkxNDMKIHN0YXJ0X3BvbGxpbmcJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15z dGFydF9wb2xsaW5nICh2b2lkKSQvCiBzdGFydF91cAlwcm9sLXNyYy9uYXRkZWQucHJvbG9nCS9e c3RhcnRfdXA6LSQvCitzdGFydGNvbnRlbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc c3RhcnRjb250ZW50cyMxeyUkLworc3RhcnRlbnVtZXJhdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXHN0YXJ0ZW51bWVyYXRpb24jMXslJC8KIHN0YXRlX3Byb3RlY3RlZF9wCWMtc3Jj L2VtYWNzL3NyYy9nbWFsbG9jLmMJNDAwCiBzdGF0ZXRhYmxlCWh0bWwtc3JjL2FsZ3J0aG1zLmh0 bWwJL15OZXh0JC8KIHN0YXRpY2V0YWdzCW1ha2Utc3JjL01ha2VmaWxlCS9ec3RhdGljZXRhZ3M6 JC8KQEAgLTQwNjgsMjQgKzQyMDcsNTkgQEAgc3RyaXBMaW5lCXBocC1zcmMvbGNlX2Z1bmN0aW9u cy5waHAJL14gICAgICBmdW5jdGlvbiBzdHJpcExpbmUoJGxpbmUsICRjbGFzcykkLwogc3RyaXBu YW1lCXBhcy1zcmMvY29tbW9uLnBhcwkvXmZ1bmN0aW9uIHN0cmlwbmFtZTsgKCogKCQvCiBzdHJu Y2FzZWVxCWMtc3JjL2V0YWdzLmMJL14jZGVmaW5lIHN0cm5jYXNlZXEocyx0LG4pIChhc3NlcnQg KChzKSE9TlVMTCAmJiAodC8KIHN0cm5lcQljLXNyYy9ldGFncy5jCS9eI2RlZmluZSBzdHJuZXEo cyx0LG4pCShhc3NlcnQgKChzKSE9TlVMTCB8fCAodCkhPU4vCitzdHJvbmcJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcbGV0XFxzdHJvbmc9XFxiJC8KK3N0cm9uZwl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxsZXRcXHN0cm9uZz1cXGluZGV4ZHVtbXlmb250JC8KIHN0cnVjdGRlZgljLXNyYy9ldGFn cy5jCTI0NDgKIHN0dWZmX2J1ZmZlcmVkX2lucHV0CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5j CS9ec3R1ZmZfYnVmZmVyZWRfaW5wdXQgKExpc3BfT2JqZWN0IHN0dWZmc3RyaW5nKSQvCitzdWJo ZWFkaW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3ViaGVhZGluZ3tcXHBhcnNlYXJn XFxzdWJzZWNoZWFkaW5naX0kLwogc3VicHJvY2VzcwlvYmpjLXNyYy9QYWNrSW5zcC5tCS9eLXN1 YnByb2Nlc3M6KFN1YnByb2Nlc3MgKilzZW5kZXIgb3V0cHV0OihjaGFyICopYnUvCiBzdWJwcm9j ZXNzRG9uZQlvYmpjLXNyYy9QYWNrSW5zcC5tCS9eLXN1YnByb2Nlc3NEb25lOihTdWJwcm9jZXNz ICopc2VuZGVyJC8KLXN1YnNlYz1ccmVsYXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxh cHBlbmRpeHN1YnNlYz1cXHJlbGF4JC8KK3N1YnNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxn bG9iYWxcXGxldFxcc3Vic2VjdGlvbiA9IFxcYXBwZW5kaXhzdWJzZWMkLworc3Vic2VjCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGxldFxcc3Vic2VjPVxccmVsYXgkLworc3Vic2VjZW50cnkJdGV4 LXNyYy90ZXhpbmZvLnRleAkvXiAgICAgIFxcZGVmXFxzdWJzZWNlbnRyeSAjIzEjIzIjIzMjIzQj IzV7fSQvCitzdWJzZWNlbnRyeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHN1YnNlY2Vu dHJ5IzEjMiMzIzQjNXtcXGRvc3Vic2VjZW50cnl7IzIuIzMuIzQvCitzdWJzZWNlbnRyeWZvbnRz CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcc3Vic2VjZW50cnlmb250cyA9IFxcdGV4dGZv bnRzJC8KK3N1YnNlY2ZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3Vic2VjZm9u dHN7JSQvCitzdWJzZWNoZWFkaW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3Vic2Vj aGVhZGluZyAjMSMyIzMjNHtcXHN1YnNlY2hlYWRpbmdpIHsjMi4jMy8KK3N1YnNlY2hlYWRpbmdi cmVhawl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHN1YnNlY2hlYWRpbmdicmVha3tcXGRv YnJlYWsgXFxzdWJzZWNoZWFkaW5nc2tpLworc3Vic2VjaGVhZGluZ2kJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxzdWJzZWNoZWFkaW5naSAjMXt7XFxhZHZhbmNlIFxcc3Vic2VjaGVhZGlu Z3NraS8KIHN1YnNlY3Rpb24JcGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJMjYKLXN1YnNlY3Rpb249 XHJlbGF4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcYXBwZW5kaXhzdWJzZWN0aW9uPVxc cmVsYXgkLworc3Vic2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxc c3Vic2VjdGlvbiA9IFxcYXBwZW5kaXhzdWJzZWMkLworc3Vic2VjdGlvbgl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vic2VjdGlvbiA9IFxcbnVtYmVyZWRzdWJzZWMkLwor c3Vic2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vic2VjdGlv biA9IFxcdW5udW1iZXJlZHN1YnNlYyQvCitzdWJzZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGxldFxcc3Vic2VjdGlvbj1cXHJlbGF4JC8KIHN1YnNlY3Rpb25fbWFya2VyCXBlcmwtc3Jj L2h0bG1pZnktY3lzdGljCTE2MQorc3Vic2Vjenp6CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcaW5mb2FwcGVuZGl4c3Vic2Vje1xccGFyc2VhcmdcXGFwcGVuZGl4c3Vic2VjenovCitzdWJz ZWN6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRlZlxcYXBwZW5kaXhzdWJzZWN7 XFxwYXJzZWFyZ1xcYXBwZW5kaXhzdWJzZWMvCiBzdWJzdAlwcm9sLXNyYy9uYXRkZWQucHJvbG9n CS9ec3Vic3QodmFyKFkpLHZhcihYKSxNLE4pOi0kLwogc3Vic3RpdHV0ZQljLXNyYy9ldGFncy5j CS9ec3Vic3RpdHV0ZSAoY2hhciAqaW4sIGNoYXIgKm91dCwgc3RydWN0IHJlX3JlZ2lzdGUvCi1z dWJzdWJzZWM9XHJlbGF4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcYXBwZW5kaXhzdWJz dWJzZWM9XFxyZWxheCQvCitzdWJzdWJoZWFkaW5nCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl Zlxcc3Vic3ViaGVhZGluZ3tcXHBhcnNlYXJnXFxzdWJzdWJzZWNoZWFkaW5naX0kLworc3Vic3Vi c2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdsb2JhbFxcbGV0XFxzdWJzdWJzZWN0aW9uID0g XFxhcHBlbmRpeHN1YnN1YnNlYyQvCitzdWJzdWJzZWMJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc bGV0XFxzdWJzdWJzZWM9XFxyZWxheCQvCitzdWJzdWJzZWNlbnRyeQl0ZXgtc3JjL3RleGluZm8u dGV4CS9eICAgICAgXFxkZWZcXHN1YnN1YnNlY2VudHJ5ICMjMSMjMiMjMyMjNCMjNSMjNnt9JC8K K3N1YnN1YnNlY2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3Vic3Vic2VjZW50 cnkjMSMyIzMjNCM1IzZ7JSQvCitzdWJzdWJzZWNlbnRyeWZvbnRzCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGxldFxcc3Vic3Vic2VjZW50cnlmb250cyA9IFxcdGV4dGZvbnRzJC8KK3N1YnN1YnNl Y2ZvbnRzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcc3Vic3Vic2VjZm9udHN7XFxzdWJz ZWNmb250c30gJSBNYXliZSB0aGlzIHNoby8KK3N1YnN1YnNlY2hlYWRpbmcJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxzdWJzdWJzZWNoZWFkaW5nICMxIzIjMyM0IzV7XFxzdWJzdWJzZWNo ZWFkaW5nLworc3Vic3Vic2VjaGVhZGluZ2kJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxz dWJzdWJzZWNoZWFkaW5naSAjMXt7XFxhZHZhbmNlIFxcc3Vic2VjaGVhZGluZy8KIHN1YnN1YnNl Y3Rpb24JcGVybC1zcmMvaHRsbWlmeS1jeXN0aWMJMjcKLXN1YnN1YnNlY3Rpb249XHJlbGF4CXRl eC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcYXBwZW5kaXhzdWJzdWJzZWN0aW9uPVxccmVsYXgk Lworc3Vic3Vic2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vi c3Vic2VjdGlvbiA9IFxcYXBwZW5kaXhzdWJzdWJzZWMkLworc3Vic3Vic2VjdGlvbgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxnbG9iYWxcXGxldFxcc3Vic3Vic2VjdGlvbiA9IFxcbnVtYmVyZWRz dWJzdWJzZWMkLworc3Vic3Vic2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxnbG9iYWxc XGxldFxcc3Vic3Vic2VjdGlvbiA9IFxcdW5udW1iZXJlZHN1YnN1YnNlYyQvCitzdWJzdWJzZWN0 aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcc3Vic3Vic2VjdGlvbj1cXHJlbGF4JC8K K3N1YnN1YnNlY3p6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm9hcHBlbmRpeHN1 YnN1YnNlY3tcXHBhcnNlYXJnXFxhcHBlbmRpeHN1YnN1Lworc3Vic3Vic2Vjenp6CXRleC1zcmMv dGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXGFwcGVuZGl4c3Vic3Vic2Vje1xccGFyc2Vhcmdc XGFwcGVuZGl4c3ViLworc3VidGl0bGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgIFxcZGVmXFxz dWJ0aXRsZXtcXHBhcnNlYXJnXFxzdWJ0aXRsZXp6en0lJC8KK3N1YnRpdGxlZm9udAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eICAgXFxkZWZcXHN1YnRpdGxlZm9udHtcXHN1YnRpdGxlcm0gXFxub3Jt YWxiYXNlbGluZXNrLworc3VidGl0bGVybQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFxsZXRc XHN1YnRpdGxlcm09XFx0ZW5ybSQvCitzdWJ0aXRsZXp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9e ICAgXFxkZWZcXHN1YnRpdGxlenp6IyMxe3tcXHN1YnRpdGxlZm9udCBcXHJpZ2h0bGluZXsjLwog c3VidGxlCXJ1Ynktc3JjL3Rlc3QxLnJ1CS9eICAgICAgICAgICAgICAgICA6dGVlIDsgYXR0cl9y ZWFkZXIgOnN1YnRsZSQvCiBzdWJ0cmVlCXByb2wtc3JjL25hdGRlZC5wcm9sb2cJL15zdWJ0cmVl KFQsVCkuJC8KIHN1ZmZpeAljLXNyYy9ldGFncy5jCTE4Ngogc3VmZml4ZXMJYy1zcmMvZXRhZ3Mu YwkxOTUKIHN1Z2dlc3RfYXNraW5nX2Zvcl9oZWxwCWMtc3JjL2V0YWdzLmMJL15zdWdnZXN0X2Fz a2luZ19mb3JfaGVscCAodm9pZCkkLworc3VtbWFyeWNvbnRlbnRzCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXG91dGVyXFxkZWZcXHN1bW1hcnljb250ZW50c3slJC8KK3N1cGVyZWplY3QJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzdXBlcmVqZWN0e1xccGFyXFxwZW5hbHR5IC0yMDAwMFxc Zm9vdG5vdGVubyA9MCAvCiBzdXNwZW5kLWVtYWNzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5j CS9eREVGVU4gKCJzdXNwZW5kLWVtYWNzIiwgRnN1c3BlbmRfZW1hY3MsIFNzdXNwZW5kX2UvCiBz dmFsCXktc3JjL2NjY3AueQkxMTYKIHN3YWxsb3dfZXZlbnRzCWMtc3JjL2VtYWNzL3NyYy9rZXli b2FyZC5jCS9ec3dhbGxvd19ldmVudHMgKGJvb2wgZG9fZGlzcGxheSkkLwpAQCAtNDEwMCw2ICs0 Mjc0LDggQEAgc3ltc19vZl9hYmJyZXYJYy1zcmMvYWJicmV2LmMJL15zeW1zX29mX2FiYnJldiAo KSQvCiBzeW1zX29mX2tleWJvYXJkCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9ec3ltc19v Zl9rZXlib2FyZCAodm9pZCkkLwogc3luY2hyb25pemVfc3lzdGVtX21lc3NhZ2VzX2xvY2FsZQlj LXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eSU5MSU5FIHZvaWQgc3luY2hyb25pemVfc3lzdGVtX21l c3NhZ2VzX2xvY2FsZSAodm8vCiBzeW5jaHJvbml6ZV9zeXN0ZW1fdGltZV9sb2NhbGUJYy1zcmMv ZW1hY3Mvc3JjL2xpc3AuaAkvXklOTElORSB2b2lkIHN5bmNocm9uaXplX3N5c3RlbV90aW1lX2xv Y2FsZSAodm9pZCkgLworc3luY29kZWluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc c3luY29kZWluZGV4ICMxICMyIHslJC8KK3N5bmluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcc3luaW5kZXggIzEgIzIgeyUkLwogc3ludGF4CWMtc3JjL2VtYWNzL3NyYy9yZWdleC5o CTM1MAogc3lzX2ptcF9idWYJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyOTA2CiBzeXNfam1wX2J1 ZgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTI5MTAKQEAgLTQxMTIsMTIgKzQyODgsMjAgQEAgc3lz X3NldGptcAljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCS9eIyBkZWZpbmUgc3lzX3NldGptcChqKSBz ZXRqbXAgKGopJC8KIHN5c19zZXRqbXAJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXiMgZGVmaW5l IHN5c19zZXRqbXAoaikgc2lnc2V0am1wIChqLCAwKSQvCiBzeXNjYWxsX2Vycm9yCWMtc3JjL3N5 c2RlcC5oCTM0CiB0CWNwLXNyYy9jLkMJNTIKK3QJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFx0IyMxe1xccmVhbGJhY2tzbGFzaCByIHsjIzF9fSUkLwordAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXHQjMXt7XFx0dCBcXGV4aHlwaGVucGVuYWx0eT0xMDAwMFxccmF3YmFja3NsYXNo IC8KK3QJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFxiPVxccHRleGIgXFxsZXRcXGM9XFxw dGV4YyBcXGxldFxcaT1cXHB0ZXhpIFxcbGV0XFx0PVxcLwordAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxsZXRcXHQ9XFxpbmRleGR1bW15Zm9udCQvCiB0MQljcC1zcmMvYy5DCTM0CiB0MgljcC1z cmMvYy5DCTM4CiB0YWJfY291bnRfd29yZHMJYy1zcmMvdGFiLmMJL15pbnQJCQl0YWJfY291bnRf d29yZHMoY2hhciAqKnRhYikkLwogdGFiX2RlbGV0ZV9maXJzdAljLXNyYy90YWIuYwkvXmludAkJ CXRhYl9kZWxldGVfZmlyc3QoY2hhciAqKnRhYikkLwogdGFiX2ZpbGwJYy1zcmMvdGFiLmMJL15j aGFyCQkJKip0YWJfZmlsbChjaGFyICpzdHIsIGNoYXIgZGVsaW0pJC8KIHRhYl9mcmVlCWMtc3Jj L3RhYi5jCS9edm9pZAkJCXRhYl9mcmVlKGNoYXIgKip0YWIpJC8KK3RhYmxlCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcdGFibGV7XFxiZWdpbmdyb3VwXFxpbkVOVlxcb2JleWxpbmVzXFxv YmV5c3BhY2VzXFwvCit0YWJsZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcdGFibGV4 ICMxXl5NeyUkLwordGFibGV5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXHRhYmxleSMx IzIgIzMgIzQgIzUgIzYgIzdcXGVuZHRhYmxleXtcXGVuZGdyb3UvCit0YWJsZXoJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFx0YWJsZXogIzEjMiMzIzQjNSM2eyUkLwogdGFnLWFueS1tYXRj aC1wCWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihkZWZ1biB0YWctYW55 LW1hdGNoLXAgKF90YWcpJC8KIHRhZy1leGFjdC1maWxlLW5hbWUtbWF0Y2gtcAllbC1zcmMvZW1h Y3MvbGlzcC9wcm9nbW9kZXMvZXRhZ3MuZWwJL14oZGVmdW4gdGFnLWV4YWN0LWZpbGUtbmFtZS1t YXRjaC1wICh0YWcpJC8KIHRhZy1leGFjdC1tYXRjaC1wCWVsLXNyYy9lbWFjcy9saXNwL3Byb2dt b2Rlcy9ldGFncy5lbAkvXihkZWZ1biB0YWctZXhhY3QtbWF0Y2gtcCAodGFnKSQvCkBAIC00MTk2 LDEyICs0MzgwLDc1IEBAIHRhZ3MtdGFnLWZhY2UJZWwtc3JjL2VtYWNzL2xpc3AvcHJvZ21vZGVz L2V0YWdzLmVsCS9eKGRlZmN1c3RvbSB0YWdzLXRhZy1mYWNlICdkCiB0YWdzLXZlcmlmeS10YWJs ZQllbC1zcmMvZW1hY3MvbGlzcC9wcm9nbW9kZXMvZXRhZ3MuZWwJL14oZGVmdW4gdGFncy12ZXJp ZnktdGFibGUgKGZpbGUpJC8KIHRhZ3Mtd2l0aC1mYWNlCWVsLXNyYy9lbWFjcy9saXNwL3Byb2dt b2Rlcy9ldGFncy5lbAkvXihkZWZtYWNybyB0YWdzLXdpdGgtZmFjZSAoZmFjZSAmcmVzdCBib2R5 KSQvCiB0YXJnZXRfbXVsdGlieXRlCWMtc3JjL2VtYWNzL3NyYy9yZWdleC5oCTQwNwordGNsb3Nl CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdGNsb3NlIyMxe1xccmVhbGJhY2tzbGFzaCB0 Y2xvc2UgeyMjMX19JC8KK3RjbG9zZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHRjbG9z ZSMjMXtcXHJlYWxiYWNrc2xhc2ggdGNsb3NlIHsjIzF9fSUkLwordGNsb3NlCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGRlZlxcdGNsb3NlIzF7e1xccm0gXFx0Y2xvc2VybT1cXGZvbnRkaW1lbjJc XGZvbnQgXFx0dCAvCit0Y2xvc2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFx0Y2xvc2U9 XFxpbmRleGR1bW15Zm9udCQvCiB0Y3BkdW1wCWh0bWwtc3JjL3NvZnR3YXJlLmh0bWwJL150Y3Bk dW1wJC8KIHRlYXRzCWNwLXNyYy9jLkMJMTI3CiB0ZWUJcnVieS1zcmMvdGVzdDEucnUJL14gICAg YXR0cl9hY2Nlc3NvciA6dGVlJC8KIHRlZT0JcnVieS1zcmMvdGVzdDEucnUJL14gICAgYXR0cl9h Y2Nlc3NvciA6dGVlJC8KK3RlbXAJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZWRlZlxcdGVtcHsl JC8KK3RlbXAJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZWRlZlxcdGVtcHt7XFxyZWFsYmFja3Ns YXNoIGNoYXBlbnRyeSAkLwordGVtcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxlZGVmXFx0ZW1w e3tcXHJlYWxiYWNrc2xhc2ggY2hhcGVudHJ5IHsjMX17XFx0aGVcXGNoYS8KK3RlbXAJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZWRlZlxcdGVtcHt7XFxyZWFsYmFja3NsYXNoIHNlY2VudHJ5ICUk LwordGVtcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxlZGVmXFx0ZW1we3tcXHJlYWxiYWNrc2xh c2ggc3Vic2VjZW50cnkgJSQvCit0ZW1wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGVkZWZcXHRl bXB7e1xccmVhbGJhY2tzbGFzaCBzdWJzdWJzZWNlbnRyeSAlJC8KK3RlbXAJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZWRlZlxcdGVtcHt7XFxyZWFsYmFja3NsYXNoIHN1YnN1YnNlY2VudHJ5eyMx fSUkLwordGVtcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxlZGVmXFx0ZW1we3tcXHJlYWxiYWNr c2xhc2ggdW5udW1iY2hhcGVudHJ5IHsjMX17XFxuLwordGVtcAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxlZGVmXFx0ZW1we3tcXHJlYWxiYWNrc2xhc2ggdW5udW1ic2VjZW50cnl7IzF9e1xcbm9l LwordGVtcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxlZGVmXFx0ZW1we3tcXHJlYWxiYWNrc2xh c2ggdW5udW1ic3Vic2VjZW50cnl7IzF9e1xcLwordGVtcAl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxlZGVmXFx0ZW1we3tcXHJlYWxiYWNrc2xhc2ggdW5udW1ic3Vic3Vic2VjZW50cnl7IzEvCit0 ZW1wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGVsc2UgXFxsZXRcXHRlbXA9XFxpZmNsZWFyZmFp bCBcXGZpJC8KK3RlbXAJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZWxzZSBcXGxldFxcdGVtcD1c XHJlbGF4IFxcZmkkLwordGVtcAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxleHBhbmRhZnRlclxc aWZ4XFxjc25hbWUgSUYjMVxcZW5kY3NuYW1lXFxyZWxheCBcXGxldFxcLwordGVtcDEJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxceGRlZlxcdGVtcDF7IzIgIzN9JSQvCit0ZW1wMQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFx4ZGVmXFx0ZW1wMXsjMn0lJC8KIHRlbXBvcmFyaWx5X3N3aXRjaF90b19z aW5nbGVfa2JvYXJkCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9edGVtcG9yYXJpbHlfc3dp dGNoX3RvX3NpbmdsZV9rYm9hcmQgKHN0cnVjdCBmcmFtZSAvCit0ZW5iZgl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eICBcXGxldFxcdGVuYmY9XFxjaGFwYmYgXFxsZXRcXHRlbnR0PVxcY2hhcHR0IFxc bGV0XFxzbWFsbC8KK3RlbmJmCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5iZj1c XGluZGJmIFxcbGV0XFx0ZW50dD1cXGluZHR0IFxcbGV0XFxzbWFsbGNhLwordGVuYmYJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXiAgXFxsZXRcXHRlbmJmPVxcc2VjYmYgXFxsZXRcXHRlbnR0PVxcc2Vj dHQgXFxsZXRcXHNtYWxsY2EvCit0ZW5iZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxc dGVuYmY9XFxzc2VjYmYgXFxsZXRcXHRlbnR0PVxcc3NlY3R0IFxcbGV0XFxzbWFsbC8KK3RlbmJm CXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5iZj1cXHRleHRiZiBcXGxldFxcdGVu dHQ9XFx0ZXh0dHQgXFxsZXRcXHNtYWxsLwordGVuYmYJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFxkZntcXGxldFxcdGVudHQ9XFxkZWZ0dCBcXGxldFxcdGVuYmYgPSBcXGRlZmJmIFxcYmZ9 LwogdGVuZAljLXNyYy9ldGFncy5jCTI0MzIKK3RlbmkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAg XFxsZXRcXHRlbnNmPVxcY2hhcHNmIFxcbGV0XFx0ZW5pPVxcY2hhcGkgXFxsZXRcXHRlbnN5PVxc LwordGVuaQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9XFxpbmRzZiBcXGxl dFxcdGVuaT1cXGluZGkgXFxsZXRcXHRlbnN5PVxcaW4vCit0ZW5pCXRleC1zcmMvdGV4aW5mby50 ZXgJL14gIFxcbGV0XFx0ZW5zZj1cXHNlY3NmIFxcbGV0XFx0ZW5pPVxcc2VjaSBcXGxldFxcdGVu c3k9XFxzZS8KK3RlbmkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxsZXRcXHRlbnNmPVxcc3Nl Y3NmIFxcbGV0XFx0ZW5pPVxcc3NlY2kgXFxsZXRcXHRlbnN5PVxcLwordGVuaQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9XFx0ZXh0c2YgXFxsZXRcXHRlbmk9XFx0ZXh0aSBc XGxldFxcdGVuc3k9XFwvCit0ZW5pdAl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVu cm09XFxjaGFwcm0gXFxsZXRcXHRlbml0PVxcY2hhcGl0IFxcbGV0XFx0ZW5zbC8KK3Rlbml0CXRl eC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5ybT1cXGluZHJtIFxcbGV0XFx0ZW5pdD1c XGluZGl0IFxcbGV0XFx0ZW5zbD1cXC8KK3Rlbml0CXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxc bGV0XFx0ZW5ybT1cXHNlY3JtIFxcbGV0XFx0ZW5pdD1cXHNlY2l0IFxcbGV0XFx0ZW5zbD1cXC8K K3Rlbml0CXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5ybT1cXHNzZWNybSBcXGxl dFxcdGVuaXQ9XFxzc2VjaXQgXFxsZXRcXHRlbnNsLwordGVuaXQJdGV4LXNyYy90ZXhpbmZvLnRl eAkvXiAgXFxsZXRcXHRlbnJtPVxcdGV4dHJtIFxcbGV0XFx0ZW5pdD1cXHRleHRpdCBcXGxldFxc dGVuc2wvCit0ZW5ybQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVucm09XFxjaGFw cm0gXFxsZXRcXHRlbml0PVxcY2hhcGl0IFxcbGV0XFx0ZW5zbC8KK3RlbnJtCXRleC1zcmMvdGV4 aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5ybT1cXGluZHJtIFxcbGV0XFx0ZW5pdD1cXGluZGl0IFxc bGV0XFx0ZW5zbD1cXC8KK3RlbnJtCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5y bT1cXHNlY3JtIFxcbGV0XFx0ZW5pdD1cXHNlY2l0IFxcbGV0XFx0ZW5zbD1cXC8KK3RlbnJtCXRl eC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5ybT1cXHNzZWNybSBcXGxldFxcdGVuaXQ9 XFxzc2VjaXQgXFxsZXRcXHRlbnNsLwordGVucm0JdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxs ZXRcXHRlbnJtPVxcdGV4dHJtIFxcbGV0XFx0ZW5pdD1cXHRleHRpdCBcXGxldFxcdGVuc2wvCit0 ZW5zZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9XFxjaGFwc2YgXFxsZXRc XHRlbmk9XFxjaGFwaSBcXGxldFxcdGVuc3k9XFwvCit0ZW5zZgl0ZXgtc3JjL3RleGluZm8udGV4 CS9eICBcXGxldFxcdGVuc2Y9XFxpbmRzZiBcXGxldFxcdGVuaT1cXGluZGkgXFxsZXRcXHRlbnN5 PVxcaW4vCit0ZW5zZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9XFxzZWNz ZiBcXGxldFxcdGVuaT1cXHNlY2kgXFxsZXRcXHRlbnN5PVxcc2UvCit0ZW5zZgl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9XFxzc2Vjc2YgXFxsZXRcXHRlbmk9XFxzc2VjaSBc XGxldFxcdGVuc3k9XFwvCit0ZW5zZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVu c2Y9XFx0ZXh0c2YgXFxsZXRcXHRlbmk9XFx0ZXh0aSBcXGxldFxcdGVuc3k9XFwvCit0ZW5zbAl0 ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVucm09XFxjaGFwcm0gXFxsZXRcXHRlbml0 PVxcY2hhcGl0IFxcbGV0XFx0ZW5zbC8KK3RlbnNsCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxc bGV0XFx0ZW5ybT1cXGluZHJtIFxcbGV0XFx0ZW5pdD1cXGluZGl0IFxcbGV0XFx0ZW5zbD1cXC8K K3RlbnNsCXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5ybT1cXHNlY3JtIFxcbGV0 XFx0ZW5pdD1cXHNlY2l0IFxcbGV0XFx0ZW5zbD1cXC8KK3RlbnNsCXRleC1zcmMvdGV4aW5mby50 ZXgJL14gIFxcbGV0XFx0ZW5ybT1cXHNzZWNybSBcXGxldFxcdGVuaXQ9XFxzc2VjaXQgXFxsZXRc XHRlbnNsLwordGVuc2wJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgXFxsZXRcXHRlbnJtPVxcdGV4 dHJtIFxcbGV0XFx0ZW5pdD1cXHRleHRpdCBcXGxldFxcdGVuc2wvCit0ZW5zeQl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9XFxjaGFwc2YgXFxsZXRcXHRlbmk9XFxjaGFwaSBc XGxldFxcdGVuc3k9XFwvCit0ZW5zeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVu c2Y9XFxpbmRzZiBcXGxldFxcdGVuaT1cXGluZGkgXFxsZXRcXHRlbnN5PVxcaW4vCit0ZW5zeQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9XFxzZWNzZiBcXGxldFxcdGVuaT1c XHNlY2kgXFxsZXRcXHRlbnN5PVxcc2UvCit0ZW5zeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBc XGxldFxcdGVuc2Y9XFxzc2Vjc2YgXFxsZXRcXHRlbmk9XFxzc2VjaSBcXGxldFxcdGVuc3k9XFwv Cit0ZW5zeQl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVuc2Y9XFx0ZXh0c2YgXFxs ZXRcXHRlbmk9XFx0ZXh0aSBcXGxldFxcdGVuc3k9XFwvCit0ZW50dAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eICBcXGxldFxcdGVuYmY9XFxjaGFwYmYgXFxsZXRcXHRlbnR0PVxcY2hhcHR0IFxcbGV0 XFxzbWFsbC8KK3RlbnR0CXRleC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5iZj1cXGlu ZGJmIFxcbGV0XFx0ZW50dD1cXGluZHR0IFxcbGV0XFxzbWFsbGNhLwordGVudHQJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXiAgXFxsZXRcXHRlbmJmPVxcc2VjYmYgXFxsZXRcXHRlbnR0PVxcc2VjdHQg XFxsZXRcXHNtYWxsY2EvCit0ZW50dAl0ZXgtc3JjL3RleGluZm8udGV4CS9eICBcXGxldFxcdGVu YmY9XFxzc2VjYmYgXFxsZXRcXHRlbnR0PVxcc3NlY3R0IFxcbGV0XFxzbWFsbC8KK3RlbnR0CXRl eC1zcmMvdGV4aW5mby50ZXgJL14gIFxcbGV0XFx0ZW5iZj1cXHRleHRiZiBcXGxldFxcdGVudHQ9 XFx0ZXh0dHQgXFxsZXRcXHNtYWxsLwordGVudHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVm XFxkZntcXGxldFxcdGVudHQ9XFxkZWZ0dCBcXGxldFxcdGVuYmYgPSBcXGRlZmJmIFxcYmZ9Lwor dGVudHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXntcXGxldFxcdGVudHQ9XFxzZWN0dCBcXGxldFxc dHQ9XFxzZWN0dCBcXGxldFxcc2Y9XFxzZWN0dCQvCiB0ZXJtCW1lcmMtc3JjL2FjY3VtdWxhdG9y Lm0JL146LSBpbXBvcnRfbW9kdWxlIHRlcm0uJC8KIHRlcm1pbmF0ZQlvYmpjLXNyYy9TdWJwcm9j ZXNzLm0JL14tIHRlcm1pbmF0ZTpzZW5kZXIkLwogdGVybWluYXRlSW5wdXQJb2JqYy1zcmMvU3Vi cHJvY2Vzcy5tCS9eLSB0ZXJtaW5hdGVJbnB1dCQvCkBAIC00MjE2LDcgKzQ0NjMsMTIgQEAgdGVz dC5tZTIyYglsdWEtc3JjL3Rlc3QubHVhCS9eICAgbG9jYWwgZnVuY3Rpb24gdGVzdC5tZTIyYiAo b25lKSQvCiB0ZXN0Lm1lXzIyYQlsdWEtc3JjL3Rlc3QubHVhCS9eICAgZnVuY3Rpb24gdGVzdC5t ZV8yMmEob25lLCB0d28pJC8KIHRlc3QxCXJzLXNyYy90ZXN0LnJzCS9eZm4gdGVzdDEoKSB7JC8K IHRlc3RfdW5kZWZpbmVkCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9edGVzdF91bmRlZmlu ZWQgKExpc3BfT2JqZWN0IGJpbmRpbmcpJC8KK3RleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXHRleHtcXGJlZ2luZ3JvdXAkLwordGV4aW5mb3ZlcnNpb24JdGV4LXNyYy90ZXhpbmZvLnRl eAkvXlxcZGVmXFx0ZXhpbmZvdmVyc2lvbnsyLjczfSQvCit0ZXh0Zm9udHMJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFx0ZXh0Zm9udHN7JSQvCiB0ZXh0dHJlZWxpc3QJcHJvbC1zcmMvbmF0 ZGVkLnByb2xvZwkvXnRleHR0cmVlbGlzdChbXSkuJC8KK3RoZWFyZwl0ZXgtc3JjL3RleGluZm8u dGV4CS9eICBcXGRlZlxcdGhlYXJneyMxfSUkLwordGhlYXJnCXRleC1zcmMvdGV4aW5mby50ZXgJ L14gIFxcaWZ4XFx0aGVhcmdcXGVtcHR5IFxcZGVmXFx0aGVhcmd7MX1cXGZpJC8KIHRoZXJlLWlz LWEtPS1pbi10aGUtbWlkZGxlIQlzY20tc3JjL3Rlc3Quc2NtCS9eKGRlZmluZSAodGhlcmUtaXMt YS09LWluLXRoZS1taWRkbGUhKSAjdCkkLwogdGhpcwljLXNyYy9hL2IvYi5jCTEKIHRoaXMtY29t bWFuZC1rZXlzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9eREVGVU4gKCJ0aGlzLWNvbW1h bmQta2V5cyIsIEZ0aGlzX2NvbW1hbmRfa2V5cywgU3QvCkBAIC00MjI4LDYgKzQ0ODAsMzAgQEAg dGhpc19jb21tYW5kX2tleV9jb3VudF9yZXNldAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkx MTIKIHRoaXNfY29tbWFuZF9rZXlzCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCTEwNwogdGhp c19maWxlX3RvYwlwZXJsLXNyYy9odGxtaWZ5LWN5c3RpYwkyOQogdGhpc19zaW5nbGVfY29tbWFu ZF9rZXlfc3RhcnQJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJMTI1Cit0aGlzY2hhcHRlcgl0 ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFx1bm51bWJjaGFwbWFjcm97IzF9XFxkZWZcXHRoaXNj aGFwdGVye30lJC8KK3RoaXNjaGFwdGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdGhp c2NoYXB0ZXJ7fSBcXGRlZlxcdGhpc3NlY3Rpb257fSQvCit0aGlzY2hhcHRlcgl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxnZGVmXFx0aGlzY2hhcHRlcnsjMX1cXGdkZWZcXHRoaXNzZWN0aW9ueyMx fSUkLwordGhpc2NoYXB0ZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxceGRlZlxcdGhpc2NoYXB0 ZXJ7QXBwZW5kaXggXFxhcHBlbmRpeGxldHRlcjogXFxub2V4cC8KK3RoaXNjaGFwdGVyCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXHhkZWZcXHRoaXNjaGFwdGVye0NoYXB0ZXIgXFx0aGVcXGNoYXBu bzogXFxub2V4cGFuZFxcdC8KK3RoaXNjaGFwdGVybmFtZQl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxkZWZcXHRoaXNjaGFwdGVybmFtZXtObyBDaGFwdGVyIFRpdGxlfSQvCit0aGlzY2hhcHRlcm5h bWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxcdGhpc2NoYXB0ZXJuYW1leyMxfSUkLwor dGhpc2ZpbGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmNsdWRlenp6ICMxe3tcXGRl ZlxcdGhpc2ZpbGV7IzF9XFxpbnB1dCAjMSQvCit0aGlzZmlsZQl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXHRoaXNmaWxle30kLwordGhpc2Zvb3Rubwl0ZXgtc3JjL3RleGluZm8udGV4CS9e XFxlZGVmXFx0aGlzZm9vdG5veyRee1xcdGhlXFxmb290bm90ZW5vfSR9JSQvCit0aGlzcGFnZQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHRoaXNwYWdlPVxcZm9saW8kLwordGhpc3NlY3Rp b24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0aGlzY2hhcHRlcnt9IFxcZGVmXFx0aGlz c2VjdGlvbnt9JC8KK3RoaXNzZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXHRo aXNjaGFwdGVyeyMxfVxcZ2RlZlxcdGhpc3NlY3Rpb257IzF9JSQvCit0aGlzc2VjdGlvbgl0ZXgt c3JjL3RleGluZm8udGV4CS9eXFxnZGVmXFx0aGlzc2VjdGlvbnsjMX0lJC8KK3RoaXNzZWN0aW9u CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXHRoaXNzZWN0aW9ueyMxfVxcZ2xvYmFsXFxh ZHZhbmNlIFxcc3Vic3Vic2Vjbm8gLwordGhpc3NlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZ2RlZlxcdGhpc3NlY3Rpb257IzF9XFxzZWNoZWFkaW5nIHsjMX17XFxhcHBlbmRpeGxldC8K K3RoaXNzZWN0aW9uCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdkZWZcXHRoaXNzZWN0aW9ueyMx fVxcc2VjaGVhZGluZyB7IzF9e1xcdGhlXFxjaGFwbm99LwordGhpc3NlY3Rpb24JdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZ2RlZlxcdGhpc3NlY3Rpb257IzF9XFxzdWJzdWJzZWNubz0wIFxcZ2xv YmFsXFxhZHZhbmMvCit0aGlzc2VjdGlvbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxwbGFpbnNl Y2hlYWRpbmcgeyMxfVxcZ2RlZlxcdGhpc3NlY3Rpb257IzF9JSQvCit0aGlzdGl0bGUJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxzZXR0aXRsZXp6eiAjMXtcXGdkZWZcXHRoaXN0aXRsZXsj MX19JC8KK3RoaXN0aXRsZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHRoaXN0aXRsZXtO byBUaXRsZX0kLwordGhyZWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxrYmRmb28jMSMy IzNcXHBhcntcXGRlZlxcb25leyMxfVxcZGVmXFx0aHJlZXsjM31cXGQvCit0aHJlZXgJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxrYmRmb28jMSMyIzNcXHBhcntcXGRlZlxcb25leyMxfVxc ZGVmXFx0aHJlZXsjM31cXGQvCit0aWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0aWV7 XFxwZW5hbHR5IDEwMDAwXFwgfSAgICAgJSBTYXZlIHBsYWluIHRleCBkZS8KIHRpZ25vcmUJYy1z cmMvZXRhZ3MuYwkyNDMzCiB0aW1lcl9jaGVjawljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkv XnRpbWVyX2NoZWNrICh2b2lkKSQvCiB0aW1lcl9jaGVja18yCWMtc3JjL2VtYWNzL3NyYy9rZXli b2FyZC5jCS9edGltZXJfY2hlY2tfMiAoTGlzcF9PYmplY3QgdGltZXJzLCBMaXNwX09iamVjdCBp ZGwvCkBAIC00MjM4LDkgKzQ1MTQsMTYgQEAgdGltZXJfc3RhcnRfaWRsZQljLXNyYy9lbWFjcy9z cmMva2V5Ym9hcmQuYwkvXnRpbWVyX3N0YXJ0X2lkbGUgKHZvaWQpJC8KIHRpbWVyX3N0b3BfaWRs ZQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnRpbWVyX3N0b3BfaWRsZSAodm9pZCkkLwog dGltZXJzX3J1bgljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkzMjAKIHRpbmJvZHkJYy1zcmMv ZXRhZ3MuYwkyNDMxCit0aW5kZXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0aW5kZXgg e1xcdHBpbmRleH0kLwordGl0bGUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgIFxcZGVmXFx0aXRs ZXtcXHBhcnNlYXJnXFx0aXRsZXp6en0lJC8KK3RpdGxlZm9udAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXHRpdGxlZm9udCMxe3tcXHRpdGxlcm0gIzF9fSQvCit0aXRsZXBhZ2UJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0aXRsZXBhZ2V7XFxiZWdpbmdyb3VwIFxccGFyaW5kZW50 PTBwdCBcXHRleHRmb24vCit0aXRsZXBhZ2UJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFx0 aXRsZXBhZ2U9XFxyZWxheCQvCit0aXRsZXp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eICAgXFxk ZWZcXHRpdGxlenp6IyMxe1xcbGVmdGxpbmV7XFx0aXRsZWZvbnR7IyMxfX0kLwogdGtleXNlZW4J Yy1zcmMvZXRhZ3MuYwkyNDI5CiB0bm9uZQljLXNyYy9ldGFncy5jCTI0MjgKIHRvY19saW5lCXBl cmwtc3JjL2h0bG1pZnktY3lzdGljCS9ec3ViIHRvY19saW5lICgkKSQvCit0b2RheQl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXHRvZGF5e1xcbnVtYmVyXFxkYXlcXHNwYWNlJC8KIHRvZ2ds ZURlc2NyaXB0aW9uCW9iamMtc3JjL1BhY2tJbnNwLm0JL14tdG9nZ2xlRGVzY3JpcHRpb24kLwog dG9rCWMtc3JjL2V0YWdzLmMJMjQ5MQogdG9rZW4JYy1zcmMvZXRhZ3MuYwkyNTA4CkBAIC00MjUz LDYgKzQ1MzYsOCBAQCB0b29sX2Jhcl9pdGVtX3Byb3BlcnRpZXMJYy1zcmMvZW1hY3Mvc3JjL2tl eWJvYXJkLmMJNzk3MAogdG9vbF9iYXJfaXRlbXMJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJ L150b29sX2Jhcl9pdGVtcyAoTGlzcF9PYmplY3QgcmV1c2UsIGludCAqbml0ZW1zKSQvCiB0b29s X2Jhcl9pdGVtc192ZWN0b3IJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJNzk2NQogdG9vbGtp dF9tZW51YmFyX2luX3VzZQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnRvb2xraXRfbWVu dWJhcl9pbl91c2UgKHN0cnVjdCBmcmFtZSAqZikkLwordG9wCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGxldFxcdG9wPVxccmVsYXgkLwordG9wCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXG91dGVy XFxkZWZcXHRvcHtcXHBhcnNlYXJnXFx1bm51bWJlcmVkenp6fSQvCiB0b3AtbGV2ZWwJYy1zcmMv ZW1hY3Mvc3JjL2tleWJvYXJkLmMJL15ERUZVTiAoInRvcC1sZXZlbCIsIEZ0b3BfbGV2ZWwsIFN0 b3BfbGV2ZWwsIDAsIDAsIC8KIHRvcF9sZXZlbAltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0g dHlwZSB0b3BfbGV2ZWwkLwogdG9wX2xldmVsXzEJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJ L150b3BfbGV2ZWxfMSAoTGlzcF9PYmplY3QgaWdub3JlKSQvCkBAIC00MjYxLDE3ICs0NTQ2LDI2 IEBAIHRvdGFsX2tleXMJYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMJOTcKIHRvdGFsX3NpemVf b2ZfZW50cmllcwljLXNyYy9ldGFncy5jCS9edG90YWxfc2l6ZV9vZl9lbnRyaWVzIChyZWdpc3Rl ciBub2RlICpucCkkLwogdG90YWxfc3Vycm91bmRpbmcJY3Atc3JjL2NvbndheS5jcHAJL15pbnQg c2l0ZTo6dG90YWxfc3Vycm91bmRpbmcodm9pZCkkLwogdG90YWxseV91bmJsb2NrX2lucHV0CWMt c3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9edG90YWxseV91bmJsb2NrX2lucHV0ICh2b2lkKSQv Cit0cGFyZ3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcYmVnaW5ncm91cFxcZGVmbmFtZSB7IzJ9 eyMxfVxcZGVmdHBhcmdzeyMzfVxcZW5kZ3JvdS8KIHRwY21kCWMtc3JjL2guaAkxNQogdHBjbWQJ Yy1zcmMvaC5oCTgKK3RwaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHB7 XFxkZWZ2cnBhcnNlYm9keVxcRWRlZnRwXFxkZWZ0cHhcXGRlZnRwaGVhZC8KK3RweFxkZWZ0cGhl YWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnRwe1xcZGVmdnJwYXJzZWJvZHlc XEVkZWZ0cFxcZGVmdHB4XFxkZWZ0cGhlYWQvCiB0cmFjay1tb3VzZQljLXNyYy9lbWFjcy9zcmMv a2V5Ym9hcmQuYwkvXkRFRlVOICgiaW50ZXJuYWwtLXRyYWNrLW1vdXNlIiwgRnRyYWNrX21vdXNl LCBTdHJhLwogdHJhY2tpbmdfb2ZmCWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9edHJhY2tp bmdfb2ZmIChMaXNwX09iamVjdCBvbGRfdmFsdWUpJC8KIHRyYWZmaWNfbGlnaHQJY3Atc3JjL2Nv bndheS5jcHAJL152b2lkIHRyYWZmaWNfbGlnaHQoaW50IHgsIGludCB5KSQvCiB0cmFuc2xhdGUJ Yy1zcmMvZW1hY3Mvc3JjL3JlZ2V4LmgJMzYxCiB0cmVhdHMJY3Atc3JjL2MuQwkxMzEKIHR0CXBy b2wtc3JjL25hdGRlZC5wcm9sb2cJL150dDotJC8KLXR0PWNtdHQxMAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxmb250XFxkZWZ0dD1jbXR0MTAgc2NhbGVkIFxcbWFnc3RlcDEkLwordHQJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZntcXGxldFxcdGVudHQ9XFxkZWZ0dCBcXGxldFxcdGVu YmYgPSBcXGRlZmJmIFxcYmZ9LwordHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx0dHtc XHJlYWxiYWNrc2xhc2ggdHR9JC8KK3R0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdHR7 XFxyZWFsYmFja3NsYXNoIHR0fSUkLwordHQJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZm9udFxc ZGVmdHQ9Y210dDEwIHNjYWxlZCBcXG1hZ3N0ZXAxJC8KK3R0CXRleC1zcmMvdGV4aW5mby50ZXgJ L157XFxsZXRcXHRlbnR0PVxcc2VjdHQgXFxsZXRcXHR0PVxcc2VjdHQgXFxsZXRcXHNmPVxcc2Vj dHQkLwordHRmb250CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcdHRmb250ID0gXFx0JC8K IHR0eV9yZWFkX2F2YWlsX2lucHV0CWMtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCS9edHR5X3Jl YWRfYXZhaWxfaW5wdXQgKHN0cnVjdCB0ZXJtaW5hbCAqdGVybWluYWwsJC8KIHR0eXBlc2Vlbglj LXNyYy9ldGFncy5jCTI0MzAKK3R1cm5vZmZhY3RpdmUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxc ZGVmXFx0dXJub2ZmYWN0aXZle1xcbGV0Ij1cXG5vcm1hbGRvdWJsZXF1b3RlJC8KIHR5cGRlZglj LXNyYy9ldGFncy5jCTI0MzQKIHR5cGUJYy1zcmMvZW1hY3Mvc3JjL2dtYWxsb2MuYwkxNDUKIHR5 cGUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkxOTczCkBAIC00Mjg2LDEwICs0NTgwLDIxIEBAIHR5 cGUJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyMzA0CiB0eXBlCWMtc3JjL2VtYWNzL3NyYy9saXNw LmgJMjM2NAogdHlwZQljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTMwMjUKIHR5cGUJYy1zcmMvZXRh Z3MuYwkyMjcxCit0eXBlZm5oZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0 eXBlZm57XFxkZWZtZXRocGFyc2Vib2R5XFxFZGVmdHlwZWZuXFxkZWZ0eXAvCit0eXBlZm5oZWFk ZXJ4CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZuaGVhZGVyICMxIzIjM3tc XGRlZnR5cGVmbmhlYWRlcnh7IzF9ey8KK3R5cGVmbnhcZGVmdHlwZWZuaGVhZGVyCXRleC1zcmMv dGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZWZue1xcZGVmbWV0aHBhcnNlYm9keVxcRWRlZnR5 cGVmblxcZGVmdHlwLwogdHlwZWZ1bmFyZ3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmdHlw ZWZ1bmFyZ3MgeyMzfVxcZW5kZ3JvdXAgJSQvCiB0eXBlZnVuYXJncwl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxkZWZ0eXBlZnVuYXJncyB7IzR9XFxlbmRncm91cCAlJC8KK3R5cGVmdW5oZWFkZXIJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBlZnVue1xcZGVmcGFyc2Vib2R5XFxF ZGVmdHlwZWZ1blxcZGVmdHlwZWYvCit0eXBlZnVuaGVhZGVyeAl0ZXgtc3JjL3RleGluZm8udGV4 CS9eXFxkZWZcXGRlZnR5cGVmdW5oZWFkZXIgIzEjMntcXGRlZnR5cGVmdW5oZWFkZXJ4eyMxfSMv Cit0eXBlZnVueFxkZWZ0eXBlZnVuaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc ZGVmdHlwZWZ1bntcXGRlZnBhcnNlYm9keVxcRWRlZnR5cGVmdW5cXGRlZnR5cGVmLwogdHlwZW1h cmdpbgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxuZXdza2lwXFxkZWZ0eXBlbWFyZ2luIFxcZGVm dHlwZW1hcmdpbj0xMnB0JC8KIHR5cGVtYXJnaW4JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxccmxh cHtcXHJpZ2h0bGluZXt7XFxybSAjMn1cXGhza2lwIFxcZGVmdHlwZW1hcmdpbn19fSUvCit0eXBl bWFyZ2luCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXHNldGJveDA9XFxoYm94e1xcaHNraXAgXFxk ZWZsYXN0YXJnbWFyZ2lue1xccm0gIzJ9XFxocy8KK3R5cGV2YXJoZWFkZXIJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBldmFye1xcZGVmdmFycGFyc2Vib2R5XFxFZGVmdHlwZXZh clxcZGVmdHkvCit0eXBldmFyeFxkZWZ0eXBldmFyaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJ L15cXGRlZlxcZGVmdHlwZXZhcntcXGRlZnZhcnBhcnNlYm9keVxcRWRlZnR5cGV2YXJcXGRlZnR5 LwordHlwZXZyaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZXZye1xc ZGVmdnJwYXJzZWJvZHlcXEVkZWZ0eXBldnJcXGRlZnR5cGV2LwordHlwZXZyeFxkZWZ0eXBldnJo ZWFkZXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxkZWZ0eXBldnJ7XFxkZWZ2cnBhcnNl Ym9keVxcRWRlZnR5cGV2clxcZGVmdHlwZXYvCiB1CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMjM5 NwogdV9hbnkJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyMjE0CiB1X2Jvb2xmd2QJYy1zcmMvZW1h Y3Mvc3JjL2xpc3AuaAkyMzcxCkBAIC00MzAyLDEzICs0NjA3LDQ0IEBAIHVfbWFya2VyCWMtc3Jj L2VtYWNzL3NyYy9saXNwLmgJMjIxNgogdV9vYmpmd2QJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAky MzcyCiB1X292ZXJsYXkJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyMjE3CiB1X3NhdmVfdmFsdWUJ Yy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkyMjE4Cit1bmFyZ3MJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcYmVnaW5ncm91cFxcZGVmbmFtZSB7IzJ9eyMxfVxcZGVmdW5hcmdzeyMzfVxcZW5kZ3JvdS8K IHVuYXJncwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZ1bmFyZ3MgeyMyfVxcZW5kZ3JvdXAg JSQvCiB1bmFyZ3MJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmdW5hcmdzIHsjM31cXGVuZGdy b3VwICUkLwogdW5ibG9ja19pbnB1dAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkvXnVuYmxv Y2tfaW5wdXQgKHZvaWQpJC8KIHVuYmxvY2tfaW5wdXRfdG8JYy1zcmMvZW1hY3Mvc3JjL2tleWJv YXJkLmMJL151bmJsb2NrX2lucHV0X3RvIChpbnQgbGV2ZWwpJC8KIHVuY2hhcgljLXNyYy9oLmgJ OTkKIHVuZXhwYW5kLWFiYnJldgljLXNyYy9hYmJyZXYuYwkvXkRFRlVOICgidW5leHBhbmQtYWJi cmV2IiwgRnVuZXhwYW5kX2FiYnJldiwgU3VuZXhwLwordW5oZWFkZXIJdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcZGVmXFxkZWZ1bntcXGRlZnBhcnNlYm9keVxcRWRlZnVuXFxkZWZ1bnhcXGRlZnVu aGVhZGVyLwogdW5pdgltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gaW1wb3J0X21vZHVsZSB1 bml2LiQvCit1bm5jaGZvcGVuCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdW5uY2hmb3Bl biAjMXslJC8KK3VubmNoZnBsYWluCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdW5uY2hm cGxhaW4gIzF7JSQvCit1bm51bWJjaGFwZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgICAg IFxcbGV0XFx1bm51bWJjaGFwZW50cnkgPSBcXHNob3J0dW5udW1iZXJlZGVudHJ5LwordW5udW1i Y2hhcGVudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdW5udW1iY2hhcGVudHJ5IzEj MntcXGRvY2hhcGVudHJ5eyMxfXsjMn19JC8KK3VubnVtYmNoYXBtYWNybwl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxnbG9iYWxcXGxldFxcdW5udW1iY2hhcG1hY3JvPVxcdW5uY2hmb3Blbn0kLwor dW5udW1iY2hhcG1hY3JvCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGdsb2JhbFxcbGV0XFx1bm51 bWJjaGFwbWFjcm89XFx1bm5jaGZwbGFpbn0kLwordW5udW1iZXJlZAl0ZXgtc3JjL3RleGluZm8u dGV4CS9eXFxsZXRcXHVubnVtYmVyZWQ9XFxyZWxheCQvCit1bm51bWJlcmVkCXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXHVubnVtYmVyZWR7XFxwYXJzZWFyZ1xcdW5udW1iZXJl ZHp6en0kLwordW5udW1iZXJlZHNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHVubnVt YmVyZWRzZWM9XFxyZWxheCQvCit1bm51bWJlcmVkc2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XG91dGVyXFxkZWZcXHVubnVtYmVyZWRzZWN7XFxwYXJzZWFyZ1xcdW5udW1iZXJlZHNlY3p6Lwor dW5udW1iZXJlZHNlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFx1bm51bWJlcmVk c2VjdGlvbj1cXHJlbGF4JC8KK3VubnVtYmVyZWRzZWN6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFx1bm51bWJlcmVkc2Vjenp6ICMxe1xcc2VjY2hlY2t7dW5udW1iZXJlZHNlY30lLwor dW5udW1iZXJlZHN1YnNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRcXHVubnVtYmVyZWRz dWJzZWM9XFxyZWxheCQvCit1bm51bWJlcmVkc3Vic2VjCXRleC1zcmMvdGV4aW5mby50ZXgJL15c XG91dGVyXFxkZWZcXHVubnVtYmVyZWRzdWJzZWN7XFxwYXJzZWFyZ1xcdW5udW1iZXJlZHN1Lwor dW5udW1iZXJlZHN1YnNlY3Rpb24JdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFx1bm51bWJl cmVkc3Vic2VjdGlvbj1cXHJlbGF4JC8KK3VubnVtYmVyZWRzdWJzZWN6enoJdGV4LXNyYy90ZXhp bmZvLnRleAkvXlxcZGVmXFx1bm51bWJlcmVkc3Vic2Vjenp6ICMxe1xcc2VjY2hlY2t7dW5udW1i ZXJlZHN1LwordW5udW1iZXJlZHN1YnN1YnNlYwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRc XHVubnVtYmVyZWRzdWJzdWJzZWM9XFxyZWxheCQvCit1bm51bWJlcmVkc3Vic3Vic2VjCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXHVubnVtYmVyZWRzdWJzdWJzZWN7XFxwYXJz ZWFyZ1xcdW5udW1iZXJlLwordW5udW1iZXJlZHN1YnN1YnNlY3Rpb24JdGV4LXNyYy90ZXhpbmZv LnRleAkvXlxcbGV0XFx1bm51bWJlcmVkc3Vic3Vic2VjdGlvbj1cXHJlbGF4JC8KK3VubnVtYmVy ZWRzdWJzdWJzZWN6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx1bm51bWJlcmVkc3Vi c3Vic2Vjenp6ICMxe1xcc2VjY2hlY2t7dW5udW1iZXJlLwordW5udW1iZXJlZHp6egl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXHVubnVtYmVyZWR6enogIzF7XFxzZWNjaGVja3t1bm51bWJl cmVkfSUkLwordW5udW1ibm9kZXJlZgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHVubnVt Ym5vZGVyZWZ7XFxpZnhcXGxhc3Rub2RlXFxyZWxheFxcZWxzZSQvCit1bm51bWJzZWNlbnRyeQl0 ZXgtc3JjL3RleGluZm8udGV4CS9eICAgICAgXFxkZWZcXHVubnVtYnNlY2VudHJ5ICMjMSMjMnt9 JC8KK3VubnVtYnNlY2VudHJ5CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdW5udW1ic2Vj ZW50cnkjMSMye1xcZG9zZWNlbnRyeXsjMX17IzJ9fSQvCit1bm51bWJzZXRyZWYJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFx1bm51bWJzZXRyZWYjMXslJC8KK3VubnVtYnN1YnNlY2VudHJ5 CXRleC1zcmMvdGV4aW5mby50ZXgJL14gICAgICBcXGRlZlxcdW5udW1ic3Vic2VjZW50cnkgIyMx IyMye30kLwordW5udW1ic3Vic2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx1 bm51bWJzdWJzZWNlbnRyeSMxIzJ7XFxkb3N1YnNlY2VudHJ5eyMxfXsjMn19LwordW5udW1ic3Vi c3Vic2VjZW50cnkJdGV4LXNyYy90ZXhpbmZvLnRleAkvXiAgICAgIFxcZGVmXFx1bm51bWJzdWJz dWJzZWNlbnRyeSAjIzEjIzJ7fSQvCit1bm51bWJzdWJzdWJzZWNlbnRyeQl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXHVubnVtYnN1YnN1YnNlY2VudHJ5IzEjMntcXGRvc3Vic3Vic2VjZW50 cnl7IzEvCiB1bnJhdmVsX3VuaXYJbWVyYy1zcmMvYWNjdW11bGF0b3IubQkvXjotIHNvbWUgW1Rd IHByZWQgdW5yYXZlbF91bml2KHVuaXY6OmluLCBUOjpvdXQpIGlzLwogdW5yZWFkX3N3aXRjaF9m cmFtZQljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkyMDQKIHVuc2lnbmVkcAl5LXNyYy9jY2Nw LnkJMTEyCkBAIC00MzE2LDcgKzQ2NTIsOSBAQCB1bndpbmQJYy1zcmMvZW1hY3Mvc3JjL2xpc3Au aAkyOTYyCiB1bndpbmRfaW50CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMjk3MgogdW53aW5kX3B0 cgljLXNyYy9lbWFjcy9zcmMvbGlzcC5oCTI5NjcKIHVud2luZF92b2lkCWMtc3JjL2VtYWNzL3Ny Yy9saXNwLmgJMjk3NgordW54XGRlZnVuaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl ZlxcZGVmdW57XFxkZWZwYXJzZWJvZHlcXEVkZWZ1blxcZGVmdW54XFxkZWZ1bmhlYWRlci8KIHVw ZGF0ZV9hY2N1bXVsYXRvcl9wcmVkCW1lcmMtc3JjL2FjY3VtdWxhdG9yLm0JL146LSBwcmVkIHVw ZGF0ZV9hY2N1bXVsYXRvcl9wcmVkKHByZWRfaWQ6OmluLCBwcm9jXy8KK3VwcGVyY2FzZWVudW1l cmF0ZQl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHVwcGVyY2FzZWVudW1lcmF0ZXslJC8K IHVwcmludG1heF90CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMTQ5CiB1cHJpbnRtYXhfdAljLXNy Yy9lbWFjcy9zcmMvbGlzcC5oCTE1NAogdXNhZ2UJcGVybC1zcmMveWFncmlwLnBsCS9ec3ViIHVz YWdlIHskLwpAQCAtNDM0MywyMCArNDY4MSw0NSBAQCB2YWx1ZQljLXNyYy9lbWFjcy9zcmMvbGlz cC5oCTY4NwogdmFsdWUJeS1zcmMvY2NjcC55CTExMgogdmFyCWMtc3JjL2VtYWNzL3NyYy9rZXli b2FyZC5jCTExMDIzCiB2YXIJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkzMTM3Cit2YXIJdGV4LXNy Yy90ZXhpbmZvLnRleAkvXlxcZGVmXFx2YXIjIzF7XFxyZWFsYmFja3NsYXNoIHZhciB7IyMxfX0k LwordmFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcdmFyIyMxe1xccmVhbGJhY2tzbGFz aCB2YXIgeyMjMX19JSQvCit2YXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFx2YXI9XFxp bmRleGR1bW15Zm9udCQvCit2YXIJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFx2YXI9XFxz bWFydGl0YWxpYyQvCit2YXJhcmdzCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGJlZ2luZ3JvdXBc XGRlZm5hbWUgeyMyfXsjMX1cXGRlZnZhcmFyZ3N7IzN9XFxlbmRncm8vCit2YXJhcmdzCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHBhcmdzICMxe1xcYmYgXFxkZWZ2YXJhcmdzeyMx fX0kLwogdmFyYXJncwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZ2YXJhcmdzIHsjMn1cXGVu ZGdyb3VwICUkLwogdmFyYXJncwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZ2YXJhcmdzIHsj M31cXGVuZGdyb3VwICUkLwordmFyaGVhZGVyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxc ZGVmdmFye1xcZGVmdmFycGFyc2Vib2R5XFxFZGVmdmFyXFxkZWZ2YXJ4XFxkZWZ2YS8KK3ZhcnBh cnNlYm9keVxFZGVmb3B0CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmb3B0e1xcZGVm dmFycGFyc2Vib2R5XFxFZGVmb3B0XFxkZWZvcHR4XFxkZWZvcC8KK3ZhcnBhcnNlYm9keVxFZGVm dHlwZXZhcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnR5cGV2YXJ7XFxkZWZ2YXJw YXJzZWJvZHlcXEVkZWZ0eXBldmFyXFxkZWZ0eS8KK3ZhcnBhcnNlYm9keVxFZGVmdmFyCXRleC1z cmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdmFye1xcZGVmdmFycGFyc2Vib2R5XFxFZGVmdmFy XFxkZWZ2YXJ4XFxkZWZ2YS8KIHZhcnNldAltZXJjLXNyYy9hY2N1bXVsYXRvci5tCS9eOi0gaW1w b3J0X21vZHVsZSB2YXJzZXQuJC8KK3ZhcnhcZGVmdmFyaGVhZGVyCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxcZGVmdmFye1xcZGVmdmFycGFyc2Vib2R5XFxFZGVmdmFyXFxkZWZ2YXJ4XFxk ZWZ2YS8KIHZjb3B5CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL152Y29weSAoTGlzcF9PYmplY3Qg diwgcHRyZGlmZl90IG9mZnNldCwgTGlzcF9PYmplYy8KIHZlY3Rvcmxpa2VfaGVhZGVyCWMtc3Jj L2VtYWNzL3NyYy9saXNwLmgJMTM0MwogdmVyZGUJY3Atc3JjL2MuQwk0MAogdmVyaWZ5LXRhZ3Mt dGFibGUtZnVuY3Rpb24JZWwtc3JjL2VtYWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRl ZnZhciB2ZXJpZnktdGFncy10YWJsZS1mdW5jdGlvbiBuaWwkLwogdmVyaWZ5X2FzY2lpCWMtc3Jj L2VtYWNzL3NyYy9saXNwLmgJL14jIGRlZmluZSB2ZXJpZnlfYXNjaWkoc3RyKSAoc3RyKSQvCiB2 aWdub3JlCWMtc3JjL2V0YWdzLmMJMjQxNwordmluZGV4CXRleC1zcmMvdGV4aW5mby50ZXgJL15c XGRlZlxcdmluZGV4IHtcXHZyaW5kZXh9JC8KIHZpc2l0LXRhZ3MtdGFibGUJZWwtc3JjL2VtYWNz L2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGRlZnVuIHZpc2l0LXRhZ3MtdGFibGUgKGZpbGUg Jm9wdGlvbmFsIGxvY2FsKSQvCiB2aXNpdC10YWdzLXRhYmxlLWJ1ZmZlcgllbC1zcmMvZW1hY3Mv bGlzcC9wcm9nbW9kZXMvZXRhZ3MuZWwJL14oZGVmdW4gdmlzaXQtdGFncy10YWJsZS1idWZmZXIg KCZvcHRpb25hbCBjb250KSQvCiB2b2lkCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJL15JTkxJTkUg dm9pZCAoY2hlY2tfY29uc19saXN0KSAodm9pZCkgeyBsaXNwX2hfY2hlYy8KIHZvaWRmdW5jcHRy CWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJMjEwOAogdm9pZHZhbAl5LXNyYy9jY2NwLnkJMTE1Cit2 cmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnZye1xcZGVmdnJwYXJzZWJv ZHlcXEVkZWZ2clxcZGVmdnJ4XFxkZWZ2cmhlYWQvCit2cml0ZW1pbmRleAl0ZXgtc3JjL3RleGlu Zm8udGV4CS9eXFxkZWZcXHZyaXRlbWluZGV4ICMxe1xcZG9pbmQge3ZyfXtcXGNvZGV7IzF9fX0l JC8KK3ZycGFyc2Vib2R5XEVkZWZpdmFyCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVm aXZhcntcXGRlZnZycGFyc2Vib2R5XFxFZGVmaXZhclxcZGVmaXZhcnhcXGRlZi8KK3ZycGFyc2Vi b2R5XEVkZWZ0cAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRlZnRwe1xcZGVmdnJwYXJz ZWJvZHlcXEVkZWZ0cFxcZGVmdHB4XFxkZWZ0cGhlYWQvCit2cnBhcnNlYm9keVxFZGVmdHlwZXZy CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZlxcZGVmdHlwZXZye1xcZGVmdnJwYXJzZWJvZHlc XEVkZWZ0eXBldnJcXGRlZnR5cGV2LwordnJwYXJzZWJvZHlcRWRlZnZyCXRleC1zcmMvdGV4aW5m by50ZXgJL15cXGRlZlxcZGVmdnJ7XFxkZWZ2cnBhcnNlYm9keVxcRWRlZnZyXFxkZWZ2cnhcXGRl ZnZyaGVhZC8KK3ZyeFxkZWZ2cmhlYWRlcgl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGRl ZnZye1xcZGVmdnJwYXJzZWJvZHlcXEVkZWZ2clxcZGVmdnJ4XFxkZWZ2cmhlYWQvCit2dGFibGUJ dGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFx2dGFibGV7XFxiZWdpbmdyb3VwXFxpbkVOVlxc b2JleWxpbmVzXFxvYmV5c3BhY2VzLwordnRhYmxleAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxn ZGVmXFx2dGFibGV4ICMxXl5NeyUkLwordwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHcj MXtcXGxlYXZldm1vZGVcXGhib3h7IzF9fSQvCit3CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl Zlxcd3tcXHJlYWxiYWNrc2xhc2ggdyB9JSQvCit3CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRl Zlxcd3tcXHJlYWxiYWNrc2xhc2ggd30kLwordwl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxsZXRc XHc9XFxpbmRleGR1bW15Zm9udCQvCiB3YWl0X3N0YXR1c19wdHJfdAljLmMJMTYxCiB3YWl0aW5n X2Zvcl9pbnB1dAljLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwkxNTAKIHdhcm5pbmcJeS1zcmMv Y2NjcC55CS9ed2FybmluZyAobXNnKSQvCkBAIC00NDA5LDEzICs0NzcyLDI1IEBAIHgtZ2V0LXNl bGVjdGlvbi1pbnRlcm5hbAljLmMJL15ERUZVTiAoIngtZ2V0LXNlbGVjdGlvbi1pbnRlcm5hbCIs IEZ4X2dldF9zZWxlY3RpCiB4Y2FyX2FkZHIJYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaAkvXnhjYXJf YWRkciAoTGlzcF9PYmplY3QgYykkLwogeGNkcl9hZGRyCWMtc3JjL2VtYWNzL3NyYy9saXNwLmgJ L154Y2RyX2FkZHIgKExpc3BfT2JqZWN0IGMpJC8KIHhkaWZmCW1ha2Utc3JjL01ha2VmaWxlCS9e eGRpZmY6IEVUQUdTIEVYVEFHUyAke2luZmlsZXN9JC8KK3hpdGVtCXRleC1zcmMvdGV4aW5mby50 ZXgJL15cXGRlZlxceGl0ZW17XFxlcnJtZXNzYWdle0B4aXRlbSB3aGlsZSBub3QgaW4gYSB0YWJs ZS8KK3hpdGVtCXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxceGl0ZW0gPSBcXGludGVybmFs QnhpdGVtICUkLworeGl0ZW1zdWJ0b3BpeAl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGlu dGVybmFsQnhpdGVtICIjMSJ7XFxkZWZcXHhpdGVtc3VidG9waXh7IzF9IFxccy8KK3hpdGVtc3Vi dG9waXgJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbnRlcm5hbEJ4aXRlbXggIiMxIntc XGRlZlxceGl0ZW1zdWJ0b3BpeHsjMX0gXFwvCit4aXRlbXgJdGV4LXNyYy90ZXhpbmZvLnRleAkv XlxcZGVmXFx4aXRlbXh7XFxlcnJtZXNzYWdle0B4aXRlbXggd2hpbGUgbm90IGluIGEgdGFiLwor eGl0ZW14CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxceGl0ZW14ID0gXFxpbnRlcm5hbEJ4 aXRlbXggJSQvCit4aXRlbXp6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXHhpdGVtenp6 ICMxe1xcZG9zdWJpbmQge2t3fXtcXGNvZGV7IzF9fXtmb3Ige1xcYi8KK3hrZXkJdGV4LXNyYy90 ZXhpbmZvLnRleAkvXlxcZGVmXFx4a2V5e1xca2V5fSQvCiB4bWFsbG9jCWMtc3JjL2V0YWdzLmMJ L154bWFsbG9jIChzaXplX3Qgc2l6ZSkkLwogeG5ldwljLXNyYy9ldGFncy5jCS9eI2RlZmluZSB4 bmV3KG4sIFR5cGUpICAgICAgKChUeXBlICopIHhtYWxsb2MgKChuKSAvCit4cmRlZgl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXHhyZGVmICMxIzJ7JC8KIHhyZWFsbG9jCWMtc3JjL2V0YWdz LmMJL154cmVhbGxvYyAodm9pZCAqcHRyLCBzaXplX3Qgc2l6ZSkkLworeHJlZgl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXHhyZWYjMXtTZWUgXFx4cmVmWFsjMSwsLCwsLCxdfSQvCiB4cmVm LWV0YWdzLWxvY2F0aW9uCWVsLXNyYy9lbWFjcy9saXNwL3Byb2dtb2Rlcy9ldGFncy5lbAkvXihk ZWZjbGFzcyB4cmVmLWV0YWdzLWxvY2F0aW9uICh4cmVmLWxvY2F0aW9uKSQvCiB4cmVmLWxvY2F0 aW9uLWxpbmUJZWwtc3JjL2VtYWNzL2xpc3AvcHJvZ21vZGVzL2V0YWdzLmVsCS9eKGNsLWRlZm1l dGhvZCB4cmVmLWxvY2F0aW9uLWxpbmUgKChsIHhyZWYtZXRhZ3MtbG8vCiB4cmVmLWxvY2F0aW9u LW1hcmtlcgllbC1zcmMvZW1hY3MvbGlzcC9wcm9nbW9kZXMvZXRhZ3MuZWwJL14oY2wtZGVmbWV0 aG9kIHhyZWYtbG9jYXRpb24tbWFya2VyICgobCB4cmVmLWV0YWdzLS8KIHhyZWYtbWFrZS1ldGFn cy1sb2NhdGlvbgllbC1zcmMvZW1hY3MvbGlzcC9wcm9nbW9kZXMvZXRhZ3MuZWwJL14oZGVmdW4g eHJlZi1tYWtlLWV0YWdzLWxvY2F0aW9uICh0YWctaW5mbyBmaWxlKSQvCit4cmVmWAl0ZXgtc3Jj L3RleGluZm8udGV4CS9eXFxkZWZcXHhyZWZYWyMxLCMyLCMzLCM0LCM1LCM2XXtcXGJlZ2luZ3Jv dXAlJC8KK3hyZWZ0aWUJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZ2RlZlxceHJlZnRpZXsndGll fSQvCiB4cm5ldwljLXNyYy9ldGFncy5jCS9eI2RlZmluZSB4cm5ldyhvcCwgbiwgVHlwZSkgKChv cCkgPSAoVHlwZSAqKSB4cmVhbGwvCiB4eAltYWtlLXNyYy9NYWtlZmlsZQkvXnh4PSJ0aGlzIGxp bmUgaXMgaGVyZSBiZWNhdXNlIG9mIGEgZm9udGxvY2sgYnVnJC8KIHh5eglydWJ5LXNyYy90ZXN0 MS5ydQkvXiAgICBhbGlhc19tZXRob2QgOnh5eiwkLwpAQCAtNDQ3NSw4ICs0ODUwLDIyIEBAIHoJ Yy5jCTE0NAogegljLmMJMTY0CiB6CWNwLXNyYy9jbGhlaXIuaHBwCTQ5CiB6CWNwLXNyYy9jbGhl aXIuaHBwCTU4Cit6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcZGVmXFxpbmZvYXBwZW5kaXh7 XFxwYXJzZWFyZ1xcYXBwZW5kaXh6enp9JC8KK3p6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxk ZWZcXGluZm9jaGFwdGVye1xccGFyc2VhcmdcXGNoYXB0ZXJ6enp9JC8KK3p6egl0ZXgtc3JjL3Rl eGluZm8udGV4CS9eXFxkZWZcXGluZm9zZWN0aW9ue1xccGFyc2VhcmdcXHNlY3Rpb256enp9JC8K K3p6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGluZm9zdWJzZWN0aW9ue1xccGFyc2Vh cmdcXHN1YnNlY3Rpb256enp9JC8KK3p6egl0ZXgtc3JjL3RleGluZm8udGV4CS9eXFxkZWZcXGlu Zm9zdWJzdWJzZWN0aW9ue1xccGFyc2VhcmdcXHN1YnN1YnNlY3Rpb256enp9Lworenp6CXRleC1z cmMvdGV4aW5mby50ZXgJL15cXG91dGVyXFxkZWZcXGFwcGVuZGl4e1xccGFyc2VhcmdcXGFwcGVu ZGl4enp6fSQvCit6enoJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcb3V0ZXJcXGRlZlxcY2hhcHRl cntcXHBhcnNlYXJnXFxjaGFwdGVyenp6fSQvCit7CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxl dFxcez1cXG15bGJyYWNlJC8KK3sJdGV4LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFx7PVxccHRl eGxicmFjZSQvCiB8CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZnx7e1xcdHQgXFxjaGFyICcx NzR9fSQvCit8CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldHw9XFxub3JtYWx2ZXJ0aWNhbGJh ciQvCit9CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldFxcfT1cXG15cmJyYWNlJC8KK30JdGV4 LXNyYy90ZXhpbmZvLnRleAkvXlxcbGV0XFx9PVxccHRleHJicmFjZSQvCit+CXRleC1zcmMvdGV4 aW5mby50ZXgJL15cXGNhdGNvZGUgYFxcXj03IFxcY2F0Y29kZSBgXFxfPTggXFxjYXRjb2RlIGBc XH49MTMgXFxsZXQvCiB+CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGRlZn57e1xcdHQgXFxjaGFy ICcxNzZ9fSQvCit+CXRleC1zcmMvdGV4aW5mby50ZXgJL15cXGxldH49XFxub3JtYWx0aWxkZSQv CiB+QQljcC1zcmMvYy5DCS9eQTo6fkEoKSB7fSQvCiB+QgljcC1zcmMvYy5DCS9eICAgIH5CKCkg e307JC8KIH5NRGlhZ0FycmF5MgljcC1zcmMvTURpYWdBcnJheTIuaAkvXiAgfk1EaWFnQXJyYXky ICh2b2lkKSB7IH0kLwpkaWZmIC0tZ2l0IGEvdGVzdC9tYW51YWwvZXRhZ3MvRVRBR1MuZ29vZF8x IGIvdGVzdC9tYW51YWwvZXRhZ3MvRVRBR1MuZ29vZF8xCmluZGV4IDRiYWFmZjRjNDI1Li4wMjY0 MTk4MDQ1NSAxMDA2NDQKLS0tIGEvdGVzdC9tYW51YWwvZXRhZ3MvRVRBR1MuZ29vZF8xCisrKyBi L3Rlc3QvbWFudWFsL2V0YWdzL0VUQUdTLmdvb2RfMQpAQCAtMzE0OCw4ICszMTQ4LDggQEAgc2Nt LXNyYy90ZXN0LnNjbSwyNjAKIChkZWZpbmUgKCgoKChjdXJyeS10ZXN0IH8xNCwyMDUKIChkZWZp bmUtc3ludGF4IHRlc3QtYmVnaW5/MTcsMjY1CiAMCi10ZXgtc3JjL3Rlc3RlbnYudGV4LDUyCi1c bmV3Y29tbWFuZHtcbm19f1xubQE0LDc3Cit0ZXgtc3JjL3Rlc3RlbnYudGV4LDUxCitcbmV3Y29t bWFuZHtcbm19f25tATQsNzcKIFxzZWN0aW9ue2JsYWh9f2JsYWgBOCwxMzkKIAwKIHRleC1zcmMv Z3ppcC50ZXhpLDMwMwpAQCAtMzE2NCw3MjIgKzMxNjQsMTE0MiBAQCB0ZXgtc3JjL2d6aXAudGV4 aSwzMDMKIEBub2RlIFByb2JsZW1zLH80NjAsMTY3NjkKIEBub2RlIENvbmNlcHQgSW5kZXgsf0Nv bmNlcHQgSW5kZXgBNDczLDE3Mjg5CiAMCi10ZXgtc3JjL3RleGluZm8udGV4LDMwNjI3Ci1cZGVm XHRleGluZm92ZXJzaW9ue39cdGV4aW5mb3ZlcnNpb24BMjYsMTAzNQotXGRlZlx0aWV7f1x0aWUB NDksMTUyNgotXGRlZlxnbG9nZ2luZ2FsbHt/XGdsb2dnaW5nYWxsATcyLDIyNzYKLVxkZWZcbG9n Z2luZ2FsbHt/XGxvZ2dpbmdhbGwBNzMsMjM0NQotXGRlZlxvbmVwYWdlb3V0IzF7f1xvbmVwYWdl b3V0ATk5LDMyODIKLVxkZWZcY3JvcHBhZ2VvdXQjMXt/XGNyb3BwYWdlb3V0ATExNSw0MDMyCi1c ZGVmXGNyb3BtYXJrc3t/XGNyb3BtYXJrcwExNDIsNTA5MgotXGRlZlxwYWdlYm9keSMxe39ccGFn ZWJvZHkBMTQ0LDUxMzkKLVxkZWZcZXd0b3B7f1xld3RvcAExNTcsNTU5NAotXGRlZlxuc3RvcHt/ XG5zdG9wATE1OCw1NjU4Ci1cZGVmXGV3Ym90e39cZXdib3QBMTYwLDU3NDEKLVxkZWZcbnNib3R7 f1xuc2JvdAExNjEsNTgwNQotXGRlZlxwYXJzZWFyZyAjMXt/XHBhcnNlYXJnATE3MCw2MTA0Ci1c ZGVmXHBhcnNlYXJneHt/XHBhcnNlYXJneAExNzIsNjE4MgotXGRlZlxwYXJzZWFyZ2xpbmV7f1xw YXJzZWFyZ2xpbmUBMTgyLDY0MjIKLVxkZWZcZmx1c2hjcnt/XGZsdXNoY3IBMTg2LDY1NDMKLVxu ZXdpZlxpZkVOViBcRU5WZmFsc2UgXGRlZlxpbkVOVnt/XGluRU5WATE5MCw2NzQyCi1cZGVmXEVO VmNoZWNre39cRU5WY2hlY2sBMTkxLDY4MDYKLVxvdXRlclxkZWZcYmVnaW57f1xiZWdpbgExOTgs NzA1MwotXGRlZlxiZWdpbnh4eCAjMXt/XGJlZ2lueHh4ATIwMCw3MDkxCi1cZGVmXGVuZHt/XGVu ZAEyMDgsNzM0NgotXGRlZlxlbmR4eHggIzF7f1xlbmR4eHgBMjEwLDczNzQKLVxkZWZcZXJyb3JF IzF7f1xlcnJvckUBMjE2LDc1NjMKLVxkZWZcc2luZ2xlc3BhY2V7f1xzaW5nbGVzcGFjZQEyMjIs Nzc1NwotXGRlZlxAe39cQAEyMzIsNzk4MAotXGRlZlxge39cYAEyMzYsODA4MAotXGRlZlwne39c JwEyMzcsODA5MgotXGRlZlxteWxicmFjZSB7f1xteWxicmFjZQEyNDEsODE0MAotXGRlZlxteXJi cmFjZSB7f1xteXJicmFjZQEyNDIsODE3MwotXGRlZlw6e39cOgEyNDcsODI4NwotXGRlZlwqe39c KgEyNTAsODM0MQotXGRlZlwue39cLgEyNTMsODQxNwotXGRlZlx3IzF7f1x3ATI1OCw4NjQ4Ci1c ZGVmXGdyb3Vwe39cZ3JvdXABMjY4LDkxMzEKLSAgXGRlZlxFZ3JvdXB7f1xFZ3JvdXABMjczLDky OTUKLVxkZWZcbmVlZHt/XG5lZWQBMjg5LDk3MzcKLVxkZWZcbmVlZHgjMXt/XG5lZWR4ATMwMCwx MDAxNAotXGRlZlxkb3Rze39cZG90cwEzMzksMTE0MDAKLVxkZWZccGFnZXt/XHBhZ2UBMzQzLDEx NDY0Ci1cZGVmXGV4ZGVudHt/XGV4ZGVudAEzNTMsMTE3OTEKLVxkZWZcZXhkZW50eXl5ICMxe39c ZXhkZW50eXl5ATM1NCwxMTgyNAotXGRlZlxub2ZpbGxleGRlbnR7f1xub2ZpbGxleGRlbnQBMzU3 LDExOTY4Ci1cZGVmXG5vZmlsbGV4ZGVudHl5eSAjMXt/XG5vZmlsbGV4ZGVudHl5eQEzNTgsMTIw MTMKLVxkZWZcaW5jbHVkZXt/XGluY2x1ZGUBMzY1LDEyMTk3Ci1cZGVmXGluY2x1ZGV6enogIzF7 f1xpbmNsdWRlenp6ATM2NiwxMjIzMgotXGRlZlx0aGlzZmlsZXt/XHRoaXNmaWxlATM2OSwxMjI4 MwotXGRlZlxjZW50ZXJ7f1xjZW50ZXIBMzczLDEyMzQ2Ci1cZGVmXGNlbnRlcnp6eiAjMXt/XGNl bnRlcnp6egEzNzQsMTIzNzkKLVxkZWZcc3B7f1xzcAEzODAsMTI1MjEKLVxkZWZcc3B4eHggIzF7 f1xzcHh4eAEzODEsMTI1NDYKLVxkZWZcY29tbWVudHt/XGNvbW1lbnQBMzg3LDEyNzIwCi1cZGVm XGNvbW1lbnR4eHggIzF7f1xjb21tZW50eHh4ATM5MCwxMjgxNwotXGRlZlxpZ25vcmVzZWN0aW9u c3t/XGlnbm9yZXNlY3Rpb25zATM5NiwxMjk4NgotXGxldFxjaGFwdGVyPVxyZWxheH89XHJlbGF4 ATM5NywxMzAwOAotXGxldFxzZWN0aW9uPVxyZWxheH89XHJlbGF4ATQwNiwxMzI1MwotXGxldFxz dWJzZWN0aW9uPVxyZWxheH89XHJlbGF4ATQwOSwxMzMxNAotXGxldFxzdWJzdWJzZWN0aW9uPVxy ZWxheH89XHJlbGF4ATQxMCwxMzMzNwotXGxldFxhcHBlbmRpeD1ccmVsYXh/PVxyZWxheAE0MTEs MTMzNjMKLVxsZXRcYXBwZW5kaXhzZWM9XHJlbGF4f3NlYz1ccmVsYXgBNDEyLDEzMzg0Ci1cbGV0 XGFwcGVuZGl4c2VjdGlvbj1ccmVsYXh/c2VjdGlvbj1ccmVsYXgBNDEzLDEzNDA4Ci1cbGV0XGFw cGVuZGl4c3Vic2VjPVxyZWxheH9zdWJzZWM9XHJlbGF4ATQxNCwxMzQzNgotXGxldFxhcHBlbmRp eHN1YnNlY3Rpb249XHJlbGF4f3N1YnNlY3Rpb249XHJlbGF4ATQxNSwxMzQ2MwotXGxldFxhcHBl bmRpeHN1YnN1YnNlYz1ccmVsYXh/c3Vic3Vic2VjPVxyZWxheAE0MTYsMTM0OTQKLVxsZXRcYXBw ZW5kaXhzdWJzdWJzZWN0aW9uPVxyZWxheH9zdWJzdWJzZWN0aW9uPVxyZWxheAE0MTcsMTM1MjQK LVxkZWZcaWdub3Jle39caWdub3JlATQyMywxMzYyNgotXGxvbmdcZGVmXGlnbm9yZXh4eCAjMVxl bmQgaWdub3Jle39caWdub3JleHh4ATQyNywxMzc2NgotXGRlZlxkaXJlbnRyeXt/XGRpcmVudHJ5 ATQyOSwxMzgyNQotXGxvbmdcZGVmXGRpcmVudHJ5eHh4ICMxXGVuZCBkaXJlbnRyeXt/XGRpcmVu dHJ5eHh4ATQzMCwxMzg2NAotXGRlZlxpZnNldHt/XGlmc2V0ATQzNCwxMzk3NAotXGRlZlxpZnNl dHh4eCAjMXt/XGlmc2V0eHh4ATQzNiwxNDAzMgotXGRlZlxFaWZzZXR7f1xFaWZzZXQBNDQwLDE0 MTU5Ci1cZGVmXGlmc2V0ZmFpbHt/XGlmc2V0ZmFpbAE0NDEsMTQxNzMKLVxsb25nXGRlZlxpZnNl dGZhaWx4eHggIzFcZW5kIGlmc2V0e39caWZzZXRmYWlseHh4ATQ0MiwxNDIyOQotXGRlZlxpZmNs ZWFye39caWZjbGVhcgE0NDQsMTQyOTAKLVxkZWZcaWZjbGVhcnh4eCAjMXt/XGlmY2xlYXJ4eHgB NDQ2LDE0MzUyCi1cZGVmXEVpZmNsZWFye39cRWlmY2xlYXIBNDUwLDE0NDgzCi1cZGVmXGlmY2xl YXJmYWlse39caWZjbGVhcmZhaWwBNDUxLDE0NDk5Ci1cbG9uZ1xkZWZcaWZjbGVhcmZhaWx4eHgg IzFcZW5kIGlmY2xlYXJ7f1xpZmNsZWFyZmFpbHh4eAE0NTIsMTQ1NTkKLVxkZWZcc2V0e39cc2V0 ATQ1NiwxNDcxMAotXGRlZlxzZXR4eHggIzF7f1xzZXR4eHgBNDU3LDE0NzM3Ci1cZGVmXGNsZWFy e39cY2xlYXIBNDYwLDE0Nzk5Ci1cZGVmXGNsZWFyeHh4ICMxe39cY2xlYXJ4eHgBNDYxLDE0ODMw Ci1cZGVmXGlmdGV4e39caWZ0ZXgBNDY2LDE0OTQ3Ci1cZGVmXEVpZnRleHt/XEVpZnRleAE0Njcs MTQ5NjAKLVxkZWZcaWZpbmZve39caWZpbmZvATQ2OCwxNDk3NAotXGxvbmdcZGVmXGlmaW5mb3h4 eCAjMVxlbmQgaWZpbmZve39caWZpbmZveHh4ATQ2OSwxNTAyNAotXGxvbmdcZGVmXG1lbnUgIzFc ZW5kIG1lbnV7f1xtZW51ATQ3MSwxNTA4MwotXGRlZlxhc2lzIzF7f1xhc2lzATQ3MiwxNTExMgot XGRlZlxtYXRoIzF7f1xtYXRoATQ4NSwxNTY1NQotXGRlZlxub2Rle39cbm9kZQE0ODcsMTU2OTkK LVxkZWZcbm9kZXp6eiMxe39cbm9kZXp6egE0ODgsMTU3MzcKLVxkZWZcbm9kZXh4eFsjMSwjMl17 f1xub2RleHh4WwE0ODksMTU3NjgKLVxkZWZcZG9ub2RlcmVme39cZG9ub2RlcmVmATQ5MiwxNTgz MAotXGRlZlx1bm51bWJub2RlcmVme39cdW5udW1ibm9kZXJlZgE0OTYsMTU5NTEKLVxkZWZcYXBw ZW5kaXhub2RlcmVme39cYXBwZW5kaXhub2RlcmVmATUwMCwxNjA4MgordGV4LXNyYy90ZXhpbmZv LnRleCw1NTIzNgorXGRlZlx0ZXhpbmZvdmVyc2lvbnt/dGV4aW5mb3ZlcnNpb24BMjYsMTAzNQor XGxldFxwdGV4bGJyYWNlPVx7f3B0ZXhsYnJhY2UBMzUsMTMwOAorXGxldFxwdGV4cmJyYWNlPVx9 f3B0ZXhyYnJhY2UBMzYsMTMyNworXGxldFxwdGV4ZG90cz1cZG90c39wdGV4ZG90cwEzNywxMzQ2 CitcbGV0XHB0ZXhkb3Q9XC5/cHRleGRvdAEzOCwxMzY2CitcbGV0XHB0ZXhzdGFyPVwqf3B0ZXhz dGFyATM5LDEzODIKK1xsZXRccHRleGVuZD1cZW5kf3B0ZXhlbmQBNDAsMTM5OQorXGxldFxwdGV4 YnVsbGV0PVxidWxsZXR/cHRleGJ1bGxldAE0MSwxNDE3CitcbGV0XHB0ZXhiPVxif3B0ZXhiATQy LDE0NDEKK1xsZXRccHRleGM9XGN/cHRleGMBNDMsMTQ1NQorXGxldFxwdGV4aT1caX9wdGV4aQE0 NCwxNDY5CitcbGV0XHB0ZXh0PVx0f3B0ZXh0ATQ1LDE0ODMKK1xsZXRccHRleGw9XGx/cHRleGwB NDYsMTQ5NworXGxldFxwdGV4TD1cTH9wdGV4TAE0NywxNTExCitcZGVmXHRpZXt/dGllATQ5LDE1 MjYKK1xkZWZcZ2xvZ2dpbmdhbGx7f2dsb2dnaW5nYWxsATcyLDIyNzYKK1xkZWZcbG9nZ2luZ2Fs bHt/bG9nZ2luZ2FsbAE3MywyMzQ1CitcZGVmXG9uZXBhZ2VvdXQjMXt/b25lcGFnZW91dAE5OSwz MjgyCitcc2hpcG91dFx2Ym94e3tcbGV0XGhzaXplPVxwYWdld2lkdGggXG1ha2VoZWFkbGluZX1/ aHNpemUBMTAzLDM0ODkKK3tcbGV0XGhzaXplPVxwYWdld2lkdGggXG1ha2Vmb290bGluZX1/aHNp emUBMTA0LDM1NTYKK1xkZWZcY3JvcHBhZ2VvdXQjMXt/Y3JvcHBhZ2VvdXQBMTE1LDQwMzIKKwkJ CXtcbGV0XGhzaXplPVxwYWdld2lkdGggXG1ha2VoZWFkbGluZX1/aHNpemUBMTI2LDQ1MTEKKwkJ CXtcbGV0XGhzaXplPVxwYWdld2lkdGggXG1ha2Vmb290bGluZX1/aHNpemUBMTI4LDQ1NjkKK1xk ZWZcY3JvcG1hcmtze39jcm9wbWFya3MBMTQyLDUwOTIKK1xkZWZcY3JvcG1hcmtze1xsZXRcb25l cGFnZW91dD1cY3JvcHBhZ2VvdXQgfX9vbmVwYWdlb3V0ATE0Miw1MDkyCitcZGVmXHBhZ2Vib2R5 IzF7f3BhZ2Vib2R5ATE0NCw1MTM5CitcZ2RlZlxwYWdlY29udGVudHMjMXt/cGFnZWNvbnRlbnRz ATE0Niw1MjIwCitcZGVmXGV3dG9we39ld3RvcAExNTcsNTU5NAorXGRlZlxuc3RvcHt/bnN0b3AB MTU4LDU2NTgKK1xkZWZcZXdib3R7f2V3Ym90ATE2MCw1NzQxCitcZGVmXG5zYm90e39uc2JvdAEx NjEsNTgwNQorXGRlZlxwYXJzZWFyZyAjMXt/cGFyc2VhcmcBMTcwLDYxMDQKK1xkZWZccGFyc2Vh cmcgIzF7XGxldFxuZXh0PSMxXGJlZ2luZ3JvdXBcb2JleWxpbmVzXGZ1dHVyZWxldFx0ZW1wXHBh cnNlYXJneH1/bmV4dAExNzAsNjEwNAorXGRlZlxwYXJzZWFyZ3h7f3BhcnNlYXJneAExNzIsNjE4 MgorXGdkZWZccGFyc2VhcmdkaXNjYXJkc3BhY2Uge39wYXJzZWFyZ2Rpc2NhcmRzcGFjZQExNzgs NjMyMQorXGdkZWZcb2JleWVkc3BhY2V7f29iZXllZHNwYWNlATE4MCw2Mzk5CitcZGVmXHBhcnNl YXJnbGluZXt/cGFyc2VhcmdsaW5lATE4Miw2NDIyCitcZ2RlZlxwYXJzZWFyZ2xpbmV4ICMxXl5N e39wYXJzZWFyZ2xpbmV4ATE4NCw2NDkzCitcZGVmXGZsdXNoY3J7f2ZsdXNoY3IBMTg2LDY1NDMK K1xkZWZcZmx1c2hjcntcaWZ4XHBhclxsaXNwcGFyIFxkZWZcbmV4dCMjMXt/bmV4dAExODYsNjU0 MworXGRlZlxmbHVzaGNye1xpZnhccGFyXGxpc3BwYXIgXGRlZlxuZXh0IyMxe31cZWxzZSBcbGV0 XG5leHQ9XHJlbGF4IFxmaSBcbmV4dH1/bmV4dAExODYsNjU0MworXG5ld2lmXGlmRU5WIFxFTlZm YWxzZSBcZGVmXGluRU5We39pbkVOVgExOTAsNjc0MgorXGRlZlxFTlZjaGVja3t/RU5WY2hlY2sB MTkxLDY4MDYKK1xvdXRlclxkZWZcYmVnaW57f2JlZ2luATE5OCw3MDUzCitcZGVmXGJlZ2lueHh4 ICMxe39iZWdpbnh4eAEyMDAsNzA5MQorXGRlZlxlbmR7f2VuZAEyMDgsNzM0NgorXGRlZlxlbmR4 eHggIzF7f2VuZHh4eAEyMTAsNzM3NAorXGRlZlxlcnJvckUjMXt/ZXJyb3JFATIxNiw3NTYzCitc ZGVmXHNpbmdsZXNwYWNle39zaW5nbGVzcGFjZQEyMjIsNzc1NworXGRlZlxAe39AATIzMiw3OTgw CitcZGVmXGB7f2ABMjM2LDgwODAKK1xkZWZcJ3t/JwEyMzcsODA5MgorXGRlZlxteWxicmFjZSB7 f215bGJyYWNlATI0MSw4MTQwCitcZGVmXG15cmJyYWNlIHt/bXlyYnJhY2UBMjQyLDgxNzMKK1xs ZXRcez1cbXlsYnJhY2V/ewEyNDMsODIwNgorXGxldFx9PVxteXJicmFjZX99ATI0NCw4MjIzCitc ZGVmXDp7fzoBMjQ3LDgyODcKK1xkZWZcKnt/KgEyNTAsODM0MQorXGRlZlwue38uATI1Myw4NDE3 CitcZGVmXHcjMXt/dwEyNTgsODY0OAorXGRlZlxncm91cHt/Z3JvdXABMjY4LDkxMzEKKyAgXGRl ZlxFZ3JvdXB7f0Vncm91cAEyNzMsOTI5NQorXGRlZlxuZWVke39uZWVkATI4OSw5NzM3CitcZGVm XG5lZWR4IzF7f25lZWR4ATMwMCwxMDAxNAorXGxldFxiciA9IFxwYXJ/YnIBMzM1LDExMzU1Citc ZGVmXGRvdHN7f2RvdHMBMzM5LDExNDAwCitcZGVmXHBhZ2V7f3BhZ2UBMzQzLDExNDY0CitcZGVm XGV4ZGVudHt/ZXhkZW50ATM1MywxMTc5MQorXGRlZlxleGRlbnR5eXkgIzF7f2V4ZGVudHl5eQEz NTQsMTE4MjQKK1xkZWZcbm9maWxsZXhkZW50e39ub2ZpbGxleGRlbnQBMzU3LDExOTY4CitcZGVm XG5vZmlsbGV4ZGVudHl5eSAjMXt/bm9maWxsZXhkZW50eXl5ATM1OCwxMjAxMworXGRlZlxpbmNs dWRle39pbmNsdWRlATM2NSwxMjE5NworXGRlZlxpbmNsdWRlenp6ICMxe39pbmNsdWRlenp6ATM2 NiwxMjIzMgorXGRlZlxpbmNsdWRlenp6ICMxe3tcZGVmXHRoaXNmaWxle390aGlzZmlsZQEzNjYs MTIyMzIKK1xkZWZcdGhpc2ZpbGV7f3RoaXNmaWxlATM2OSwxMjI4MworXGRlZlxjZW50ZXJ7f2Nl bnRlcgEzNzMsMTIzNDYKK1xkZWZcY2VudGVyenp6ICMxe39jZW50ZXJ6enoBMzc0LDEyMzc5Citc ZGVmXHNwe39zcAEzODAsMTI1MjEKK1xkZWZcc3B4eHggIzF7f3NweHh4ATM4MSwxMjU0NgorXGRl Zlxjb21tZW50e39jb21tZW50ATM4NywxMjcyMAorXGRlZlxjb21tZW50eHh4ICMxe39jb21tZW50 eHh4ATM5MCwxMjgxNworXGxldFxjPVxjb21tZW50f2MBMzkyLDEyODgzCitcZGVmXGlnbm9yZXNl Y3Rpb25ze39pZ25vcmVzZWN0aW9ucwEzOTYsMTI5ODYKK1xsZXRcY2hhcHRlcj1ccmVsYXh/Y2hh cHRlcgEzOTcsMTMwMDgKK1xsZXRcdW5udW1iZXJlZD1ccmVsYXh/dW5udW1iZXJlZAEzOTgsMTMw MjgKK1xsZXRcdG9wPVxyZWxheH90b3ABMzk5LDEzMDUxCitcbGV0XHVubnVtYmVyZWRzZWM9XHJl bGF4f3VubnVtYmVyZWRzZWMBNDAwLDEzMDY3CitcbGV0XHVubnVtYmVyZWRzZWN0aW9uPVxyZWxh eH91bm51bWJlcmVkc2VjdGlvbgE0MDEsMTMwOTMKK1xsZXRcdW5udW1iZXJlZHN1YnNlYz1ccmVs YXh/dW5udW1iZXJlZHN1YnNlYwE0MDIsMTMxMjMKK1xsZXRcdW5udW1iZXJlZHN1YnNlY3Rpb249 XHJlbGF4f3VubnVtYmVyZWRzdWJzZWN0aW9uATQwMywxMzE1MgorXGxldFx1bm51bWJlcmVkc3Vi c3Vic2VjPVxyZWxheH91bm51bWJlcmVkc3Vic3Vic2VjATQwNCwxMzE4NQorXGxldFx1bm51bWJl cmVkc3Vic3Vic2VjdGlvbj1ccmVsYXh/dW5udW1iZXJlZHN1YnN1YnNlY3Rpb24BNDA1LDEzMjE3 CitcbGV0XHNlY3Rpb249XHJlbGF4f3NlY3Rpb24BNDA2LDEzMjUzCitcbGV0XHN1YnNlYz1ccmVs YXh/c3Vic2VjATQwNywxMzI3MworXGxldFxzdWJzdWJzZWM9XHJlbGF4f3N1YnN1YnNlYwE0MDgs MTMyOTIKK1xsZXRcc3Vic2VjdGlvbj1ccmVsYXh/c3Vic2VjdGlvbgE0MDksMTMzMTQKK1xsZXRc c3Vic3Vic2VjdGlvbj1ccmVsYXh/c3Vic3Vic2VjdGlvbgE0MTAsMTMzMzcKK1xsZXRcYXBwZW5k aXg9XHJlbGF4f2FwcGVuZGl4ATQxMSwxMzM2MworXGxldFxhcHBlbmRpeHNlYz1ccmVsYXh/YXBw ZW5kaXhzZWMBNDEyLDEzMzg0CitcbGV0XGFwcGVuZGl4c2VjdGlvbj1ccmVsYXh/YXBwZW5kaXhz ZWN0aW9uATQxMywxMzQwOAorXGxldFxhcHBlbmRpeHN1YnNlYz1ccmVsYXh/YXBwZW5kaXhzdWJz ZWMBNDE0LDEzNDM2CitcbGV0XGFwcGVuZGl4c3Vic2VjdGlvbj1ccmVsYXh/YXBwZW5kaXhzdWJz ZWN0aW9uATQxNSwxMzQ2MworXGxldFxhcHBlbmRpeHN1YnN1YnNlYz1ccmVsYXh/YXBwZW5kaXhz dWJzdWJzZWMBNDE2LDEzNDk0CitcbGV0XGFwcGVuZGl4c3Vic3Vic2VjdGlvbj1ccmVsYXh/YXBw ZW5kaXhzdWJzdWJzZWN0aW9uATQxNywxMzUyNAorXGxldFxjb250ZW50cz1ccmVsYXh/Y29udGVu dHMBNDE4LDEzNTU4CitcbGV0XHNtYWxsYm9vaz1ccmVsYXh/c21hbGxib29rATQxOSwxMzU3OQor XGxldFx0aXRsZXBhZ2U9XHJlbGF4f3RpdGxlcGFnZQE0MjAsMTM2MDEKK1xkZWZcaWdub3Jle39p Z25vcmUBNDIzLDEzNjI2CitcbG9uZ1xkZWZcaWdub3JleHh4ICMxXGVuZCBpZ25vcmV7f2lnbm9y ZXh4eAE0MjcsMTM3NjYKK1xkZWZcZGlyZW50cnl7f2RpcmVudHJ5ATQyOSwxMzgyNQorXGxvbmdc ZGVmXGRpcmVudHJ5eHh4ICMxXGVuZCBkaXJlbnRyeXt/ZGlyZW50cnl4eHgBNDMwLDEzODY0Citc ZGVmXGlmc2V0e39pZnNldAE0MzQsMTM5NzQKK1xkZWZcaWZzZXR4eHggIzF7f2lmc2V0eHh4ATQz NiwxNDAzMgorXGV4cGFuZGFmdGVyXGlmeFxjc25hbWUgSUYjMVxlbmRjc25hbWVccmVsYXggXGxl dFx0ZW1wPVxpZnNldGZhaWx/dGVtcAE0MzcsMTQwNTkKK1xlbHNlIFxsZXRcdGVtcD1ccmVsYXgg XGZpf3RlbXABNDM4LDE0MTI1CitcZGVmXEVpZnNldHt/RWlmc2V0ATQ0MCwxNDE1OQorXGRlZlxp ZnNldGZhaWx7f2lmc2V0ZmFpbAE0NDEsMTQxNzMKK1xsb25nXGRlZlxpZnNldGZhaWx4eHggIzFc ZW5kIGlmc2V0e39pZnNldGZhaWx4eHgBNDQyLDE0MjI5CitcZGVmXGlmY2xlYXJ7f2lmY2xlYXIB NDQ0LDE0MjkwCitcZGVmXGlmY2xlYXJ4eHggIzF7f2lmY2xlYXJ4eHgBNDQ2LDE0MzUyCitcZXhw YW5kYWZ0ZXJcaWZ4XGNzbmFtZSBJRiMxXGVuZGNzbmFtZVxyZWxheCBcbGV0XHRlbXA9XHJlbGF4 f3RlbXABNDQ3LDE0MzgxCitcZWxzZSBcbGV0XHRlbXA9XGlmY2xlYXJmYWlsIFxmaX90ZW1wATQ0 OCwxNDQ0MworXGRlZlxFaWZjbGVhcnt/RWlmY2xlYXIBNDUwLDE0NDgzCitcZGVmXGlmY2xlYXJm YWlse39pZmNsZWFyZmFpbAE0NTEsMTQ0OTkKK1xsb25nXGRlZlxpZmNsZWFyZmFpbHh4eCAjMVxl bmQgaWZjbGVhcnt/aWZjbGVhcmZhaWx4eHgBNDUyLDE0NTU5CitcZGVmXHNldHt/c2V0ATQ1Niwx NDcxMAorXGRlZlxzZXR4eHggIzF7f3NldHh4eAE0NTcsMTQ3MzcKK1xleHBhbmRhZnRlclxsZXRc Y3NuYW1lIElGIzFcZW5kY3NuYW1lPVxzZXR9f2NzbmFtZQE0NTgsMTQ3NTMKK1xkZWZcY2xlYXJ7 f2NsZWFyATQ2MCwxNDc5OQorXGRlZlxjbGVhcnh4eCAjMXt/Y2xlYXJ4eHgBNDYxLDE0ODMwCitc ZXhwYW5kYWZ0ZXJcbGV0XGNzbmFtZSBJRiMxXGVuZGNzbmFtZT1ccmVsYXh9f2NzbmFtZQE0NjIs MTQ4NDgKK1xkZWZcaWZ0ZXh7f2lmdGV4ATQ2NiwxNDk0NworXGRlZlxFaWZ0ZXh7f0VpZnRleAE0 NjcsMTQ5NjAKK1xkZWZcaWZpbmZve39pZmluZm8BNDY4LDE0OTc0CitcbG9uZ1xkZWZcaWZpbmZv eHh4ICMxXGVuZCBpZmluZm97f2lmaW5mb3h4eAE0NjksMTUwMjQKK1xsb25nXGRlZlxtZW51ICMx XGVuZCBtZW51e39tZW51ATQ3MSwxNTA4MworXGRlZlxhc2lzIzF7f2FzaXMBNDcyLDE1MTEyCitc bGV0XGltcGxpY2l0bWF0aCA9ICR/aW1wbGljaXRtYXRoATQ4NCwxNTYzMworXGRlZlxtYXRoIzF7 f21hdGgBNDg1LDE1NjU1CitcZGVmXG5vZGV7f25vZGUBNDg3LDE1Njk5CitcZGVmXG5vZGV6enoj MXt/bm9kZXp6egE0ODgsMTU3MzcKK1xkZWZcbm9kZXh4eFsjMSwjMl17f25vZGV4eHgBNDg5LDE1 NzY4CitcZGVmXG5vZGV4eHhbIzEsIzJde1xnZGVmXGxhc3Rub2Rle39sYXN0bm9kZQE0ODksMTU3 NjgKK1xsZXRcbGFzdG5vZGU9XHJlbGF4f2xhc3Rub2RlATQ5MCwxNTgwOAorXGRlZlxkb25vZGVy ZWZ7f2Rvbm9kZXJlZgE0OTIsMTU4MzAKK1xsZXRcbGFzdG5vZGU9XHJlbGF4fX9sYXN0bm9kZQE0 OTQsMTU5MjgKK1xkZWZcdW5udW1ibm9kZXJlZnt/dW5udW1ibm9kZXJlZgE0OTYsMTU5NTEKK1xs ZXRcbGFzdG5vZGU9XHJlbGF4fX9sYXN0bm9kZQE0OTgsMTYwNTkKK1xkZWZcYXBwZW5kaXhub2Rl cmVme39hcHBlbmRpeG5vZGVyZWYBNTAwLDE2MDgyCiBcZXhwYW5kYWZ0ZXJcZXhwYW5kYWZ0ZXJc ZXhwYW5kYWZ0ZXJcYXBwZW5kaXhzZXRyZWZ7f3NldHJlZgE1MDEsMTYxMjgKLVxsZXRccmVmaWxs PVxyZWxheH9pbGw9XHJlbGF4ATUwNCwxNjIxNwotXGRlZlxzZXRmaWxlbmFtZXt/XHNldGZpbGVu YW1lATUwOSwxNjQzMQotXG91dGVyXGRlZlxieWV7f1xieWUBNTE4LDE2Njc3Ci1cZGVmXGluZm9y ZWYgIzF7f1xpbmZvcmVmATUyMCwxNjczMwotXGRlZlxpbmZvcmVmenp6ICMxLCMyLCMzLCM0Kip7 f1xpbmZvcmVmenp6ATUyMSwxNjc3MQotXGRlZlxsb3Nlc3BhY2UgIzF7f1xsb3Nlc3BhY2UBNTIz LDE2ODY4Ci1cZGVmXHNme39cc2YBNTMyLDE3MDcyCi1cZm9udFxkZWZiZj1jbWJ4MTAgc2NhbGVk IFxtYWdzdGVwMSAld2FzIDEzMTR/YmY9Y21ieDEwATU1OCwxNzg2NwotXGZvbnRcZGVmdHQ9Y210 dDEwIHNjYWxlZCBcbWFnc3RlcDF/dHQ9Y210dDEwATU1OSwxNzkxMwotXGRlZlxkZnt/XGRmATU2 MCwxNzk0OQotXGRlZlxyZXNldG1hdGhmb250c3t/XHJlc2V0bWF0aGZvbnRzATYzNSwyMDU0Mwot XGRlZlx0ZXh0Zm9udHN7f1x0ZXh0Zm9udHMBNjQ4LDIxMTMyCi1cZGVmXGNoYXBmb250c3t/XGNo YXBmb250cwE2NTMsMjEzNDcKLVxkZWZcc2VjZm9udHN7f1xzZWNmb250cwE2NTgsMjE1NjMKLVxk ZWZcc3Vic2VjZm9udHN7f1xzdWJzZWNmb250cwE2NjMsMjE3NjgKLVxkZWZcaW5kZXhmb250c3t/ XGluZGV4Zm9udHMBNjY4LDIxOTg1Ci1cZGVmXHNtYXJ0aXRhbGljeHt/XHNtYXJ0aXRhbGljeAE2 OTEsMjI3MTcKLVxkZWZcc21hcnRpdGFsaWMjMXt/XHNtYXJ0aXRhbGljATY5MiwyMjc5MwotXGxl dFxjaXRlPVxzbWFydGl0YWxpY389XHNtYXJ0aXRhbGljATY5OCwyMjkzOAotXGRlZlxiIzF7f1xi ATcwMCwyMjk2MgotXGRlZlx0IzF7f1x0ATcwMywyMjk5NwotXGRlZlxzYW1wICMxe39cc2FtcAE3 MDYsMjMxNDkKLVxkZWZca2V5ICMxe39ca2V5ATcwNywyMzE4MgotXGRlZlxjdHJsICMxe39cY3Ry bAE3MDgsMjMyNDMKLVxkZWZcdGNsb3NlIzF7f1x0Y2xvc2UBNzE2LDIzNDQ1Ci1cZGVmXCB7f1wB NzIwLDIzNjExCi1cZGVmXHhrZXl7f1x4a2V5ATcyOCwyMzg4MAotXGRlZlxrYmRmb28jMSMyIzNc cGFye39ca2JkZm9vATcyOSwyMzg5NgotXGRlZlxkbW4jMXt/XGRtbgE3MzgsMjQxOTcKLVxkZWZc a2JkIzF7f1xrYmQBNzQwLDI0MjI0Ci1cZGVmXGwjMXt/XGwBNzQyLDI0MjgxCi1cZGVmXHIjMXt/ XHIBNzQ0LDI0MzEwCi1cZGVmXHNjIzF7f1xzYwE3NDYsMjQzNzgKLVxkZWZcaWkjMXt/XGlpATc0 NywyNDQyMQotXGRlZlx0aXRsZWZvbnQjMXt/XHRpdGxlZm9udAE3NTUsMjQ2NTQKLVxkZWZcdGl0 bGVwYWdle39cdGl0bGVwYWdlATc2MSwyNDc1NwotICAgXGRlZlxzdWJ0aXRsZWZvbnR7f1xzdWJ0 aXRsZWZvbnQBNzY2LDI0OTg0Ci0gICBcZGVmXGF1dGhvcmZvbnR7f1xhdXRob3Jmb250ATc2OCwy NTA2OAotICAgXGRlZlx0aXRsZXt/XHRpdGxlATc3NCwyNTI3OAotICAgXGRlZlx0aXRsZXp6eiMj MXt/XHRpdGxlenp6ATc3NSwyNTMxMwotICAgXGRlZlxzdWJ0aXRsZXt/XHN1YnRpdGxlATc4Mywy NTYyOAotICAgXGRlZlxzdWJ0aXRsZXp6eiMjMXt/XHN1YnRpdGxlenp6ATc4NCwyNTY2OQotICAg XGRlZlxhdXRob3J7f1xhdXRob3IBNzg3LDI1Nzg3Ci0gICBcZGVmXGF1dGhvcnp6eiMjMXt/XGF1 dGhvcnp6egE3ODgsMjU4MjQKLSAgIFxkZWZccGFnZXt/XHBhZ2UBNzk0LDI2MTE1Ci1cZGVmXEV0 aXRsZXBhZ2V7f1xFdGl0bGVwYWdlATgwNCwyNjI4NAotXGRlZlxmaW5pc2h0aXRsZXBhZ2V7f1xm aW5pc2h0aXRsZXBhZ2UBODE3LDI2NjcyCi1cZGVmXGV2ZW5oZWFkaW5ne39cZXZlbmhlYWRpbmcB ODQ2LDI3NjgwCi1cZGVmXG9kZGhlYWRpbmd7f1xvZGRoZWFkaW5nATg0NywyNzcyMwotXGRlZlxl dmVyeWhlYWRpbmd7f1xldmVyeWhlYWRpbmcBODQ4LDI3NzY0Ci1cZGVmXGV2ZW5mb290aW5ne39c ZXZlbmZvb3RpbmcBODUwLDI3ODEwCi1cZGVmXG9kZGZvb3Rpbmd7f1xvZGRmb290aW5nATg1MSwy Nzg1MwotXGRlZlxldmVyeWZvb3Rpbmd7f1xldmVyeWZvb3RpbmcBODUyLDI3ODk0Ci1cZGVmXGhl YWRpbmdzICMxIHt/XGhlYWRpbmdzATg5MywyOTU4NgotXGRlZlxIRUFESU5HU29mZnt/XEhFQURJ TkdTb2ZmATg5NSwyOTYzNQotXGRlZlxIRUFESU5HU2RvdWJsZXt/XEhFQURJTkdTZG91YmxlATkw NCwzMDA2MgotXGRlZlxIRUFESU5HU3NpbmdsZXt/XEhFQURJTkdTc2luZ2xlATkxNCwzMDM4Mgot XGRlZlxIRUFESU5HU29ue39cSEVBRElOR1NvbgE5MjIsMzA2MDMKLVxkZWZcSEVBRElOR1NhZnRl cnt/XEhFQURJTkdTYWZ0ZXIBOTI0LDMwNjM3Ci1cZGVmXEhFQURJTkdTZG91YmxleHt/XEhFQURJ TkdTZG91YmxleAE5MjYsMzA3MzIKLVxkZWZcSEVBRElOR1NzaW5nbGVhZnRlcnt/XEhFQURJTkdT c2luZ2xlYWZ0ZXIBOTMzLDMwOTIwCi1cZGVmXEhFQURJTkdTc2luZ2xleHt/XEhFQURJTkdTc2lu Z2xleAE5MzQsMzA5ODEKLVxkZWZcdG9kYXl7f1x0b2RheQE5NDMsMzEyNTYKLVxkZWZcdGhpc3Rp dGxle39cdGhpc3RpdGxlATk1OCwzMTgwMQotXGRlZlxzZXR0aXRsZXt/XHNldHRpdGxlATk1OSwz MTgyNgotXGRlZlxzZXR0aXRsZXp6eiAjMXt/XHNldHRpdGxlenp6ATk2MCwzMTg2MwotXGRlZlxp bnRlcm5hbEJpdGVte39caW50ZXJuYWxCaXRlbQE5OTIsMzI3OTMKLVxkZWZcaW50ZXJuYWxCaXRl bXh7f1xpbnRlcm5hbEJpdGVteAE5OTMsMzI4NDMKLVxkZWZcaW50ZXJuYWxCeGl0ZW0gIiMxInt/ XGludGVybmFsQnhpdGVtATk5NSwzMjg4OAotXGRlZlxpbnRlcm5hbEJ4aXRlbXggIiMxInt/XGlu dGVybmFsQnhpdGVteAE5OTYsMzI5NjgKLVxkZWZcaW50ZXJuYWxCa2l0ZW17f1xpbnRlcm5hbEJr aXRlbQE5OTgsMzMwNDMKLVxkZWZcaW50ZXJuYWxCa2l0ZW14e39caW50ZXJuYWxCa2l0ZW14ATk5 OSwzMzA5NQotXGRlZlxraXRlbXp6eiAjMXt/XGtpdGVtenp6ATEwMDEsMzMxNDIKLVxkZWZceGl0 ZW16enogIzF7f1x4aXRlbXp6egExMDA0LDMzMjQ0Ci1cZGVmXGl0ZW16enogIzF7f1xpdGVtenp6 ATEwMDcsMzMzNDcKLVxkZWZcaXRlbXt/XGl0ZW0BMTAzNywzNDQxOAotXGRlZlxpdGVteHt/XGl0 ZW14ATEwMzgsMzQ0NjkKLVxkZWZca2l0ZW17f1xraXRlbQExMDM5LDM0NTIyCi1cZGVmXGtpdGVt eHt/XGtpdGVteAExMDQwLDM0NTc1Ci1cZGVmXHhpdGVte39ceGl0ZW0BMTA0MSwzNDYzMAotXGRl Zlx4aXRlbXh7f1x4aXRlbXgBMTA0MiwzNDY4MwotXGRlZlxkZXNjcmlwdGlvbnt/XGRlc2NyaXB0 aW9uATEwNDUsMzQ3OTMKLVxkZWZcdGFibGV7f1x0YWJsZQExMDQ3LDM0ODQzCi1cZGVmXGZ0YWJs ZXt/XGZ0YWJsZQExMDUyLDM0OTg3Ci1cZGVmXEVmdGFibGV7f1xFZnRhYmxlATEwNTYsMzUxMzMK LVxkZWZcdnRhYmxle39cdnRhYmxlATEwNTksMzUyMDIKLVxkZWZcRXZ0YWJsZXt/XEV2dGFibGUB MTA2MywzNTM0OAotXGRlZlxkb250aW5kZXggIzF7f1xkb250aW5kZXgBMTA2NiwzNTQxNwotXGRl Zlxmbml0ZW1pbmRleCAjMXt/XGZuaXRlbWluZGV4ATEwNjcsMzU0MzcKLVxkZWZcdnJpdGVtaW5k ZXggIzF7f1x2cml0ZW1pbmRleAExMDY4LDM1NDgyCi1cZGVmXHRhYmxleiAjMSMyIzMjNCM1IzZ7 f1x0YWJsZXoBMTA3NCwzNTYzMQotXGRlZlxFZGVzY3JpcHRpb257f1xFZGVzY3JpcHRpb24BMTA3 NywzNTY4OQotXGRlZlxpdGVtZm9udHt/XGl0ZW1mb250ATEwODIsMzU4OTAKLVxkZWZcRXRhYmxl e39cRXRhYmxlATEwOTAsMzYxMTYKLVxkZWZcaXRlbWl6ZXt/XGl0ZW1pemUBMTEwMywzNjQ0MAot XGRlZlxpdGVtaXplenp6ICMxe39caXRlbWl6ZXp6egExMTA1LDM2NDc2Ci1cZGVmXGl0ZW1pemV5 ICMxIzJ7f1xpdGVtaXpleQExMTEwLDM2NTcxCi1cZGVmIzJ7fzExMTksMzY4MTcKLVxkZWZcaXRl bWNvbnRlbnRze39caXRlbWNvbnRlbnRzATExMjAsMzY4NTgKLVxkZWZcYnVsbGV0e39cYnVsbGV0 ATExMjMsMzY5MDYKLVxkZWZcbWludXN7f1xtaW51cwExMTI0LDM2OTMzCi1cZGVmXGZyZW5jaHNw YWNpbmd7f1xmcmVuY2hzcGFjaW5nATExMjgsMzcwNDEKLVxkZWZcc3BsaXRvZmYjMSMyXGVuZG1h cmt7f1xzcGxpdG9mZgExMTM0LDM3MjY2Ci1cZGVmXGVudW1lcmF0ZXt/XGVudW1lcmF0ZQExMTQw LDM3NDk2Ci1cZGVmXGVudW1lcmF0ZXp6eiAjMXt/XGVudW1lcmF0ZXp6egExMTQxLDM3NTM1Ci1c ZGVmXGVudW1lcmF0ZXkgIzEgIzJcZW5kZW51bWVyYXRleXt/XGVudW1lcmF0ZXkBMTE0MiwzNzU4 OAotICBcZGVmXHRoZWFyZ3t/XHRoZWFyZwExMTQ2LDM3NzM1Ci0gIFxpZnhcdGhlYXJnXGVtcHR5 IFxkZWZcdGhlYXJne39cdGhlYXJnATExNDcsMzc3NTQKLVxkZWZcbnVtZXJpY2VudW1lcmF0ZXt/ XG51bWVyaWNlbnVtZXJhdGUBMTE4NCwzOTA4OAotXGRlZlxsb3dlcmNhc2VlbnVtZXJhdGV7f1xs b3dlcmNhc2VlbnVtZXJhdGUBMTE5MCwzOTIxOAotXGRlZlx1cHBlcmNhc2VlbnVtZXJhdGV7f1x1 cHBlcmNhc2VlbnVtZXJhdGUBMTIwMywzOTU2NQotXGRlZlxzdGFydGVudW1lcmF0aW9uIzF7f1xz dGFydGVudW1lcmF0aW9uATEyMTksNDAwNTUKLVxkZWZcYWxwaGFlbnVtZXJhdGV7f1xhbHBoYWVu dW1lcmF0ZQExMjI3LDQwMjM3Ci1cZGVmXGNhcHNlbnVtZXJhdGV7f1xjYXBzZW51bWVyYXRlATEy MjgsNDAyNzIKLVxkZWZcRWFscGhhZW51bWVyYXRle39cRWFscGhhZW51bWVyYXRlATEyMjksNDAz MDYKLVxkZWZcRWNhcHNlbnVtZXJhdGV7f1xFY2Fwc2VudW1lcmF0ZQExMjMwLDQwMzQwCi1cZGVm XGl0ZW1pemVpdGVte39caXRlbWl6ZWl0ZW0BMTIzNCw0MDQyMAotXGRlZlxuZXdpbmRleCAjMXt/ XG5ld2luZGV4ATEyNTksNDEyNzcKLVxkZWZcZGVmaW5kZXh7f1xkZWZpbmRleAExMjY4LDQxNTY2 Ci1cZGVmXG5ld2NvZGVpbmRleCAjMXt/XG5ld2NvZGVpbmRleAExMjcyLDQxNjc0Ci1cZGVmXGRl ZmNvZGVpbmRleHt/XGRlZmNvZGVpbmRleAExMjc5LDQxOTM0Ci1cZGVmXHN5bmluZGV4ICMxICMy IHt/XHN5bmluZGV4ATEyODMsNDIxMTQKLVxkZWZcc3luY29kZWluZGV4ICMxICMyIHt/XHN5bmNv ZGVpbmRleAExMjkyLDQyNDU0Ci1cZGVmXGRvaW5kZXgjMXt/XGRvaW5kZXgBMTMwOSw0MzEzMwot XGRlZlxzaW5nbGVpbmRleGVyICMxe39cc2luZ2xlaW5kZXhlcgExMzEwLDQzMTkyCi1cZGVmXGRv Y29kZWluZGV4IzF7f1xkb2NvZGVpbmRleAExMzEzLDQzMzA0Ci1cZGVmXHNpbmdsZWNvZGVpbmRl eGVyICMxe39cc2luZ2xlY29kZWluZGV4ZXIBMTMxNCw0MzM3MQotXGRlZlxpbmRleGR1bW1pZXN7 f1xpbmRleGR1bW1pZXMBMTMxNiw0MzQyOQotXGRlZlxfe39cXwExMzE3LDQzNDQ5Ci1cZGVmXHd7 f1x3ATEzMTgsNDM0NzcKLVxkZWZcYmZ7f1xiZgExMzE5LDQzNTA0Ci1cZGVmXHJte39ccm0BMTMy MCw0MzUzMwotXGRlZlxzbHt/XHNsATEzMjEsNDM1NjIKLVxkZWZcc2Z7f1xzZgExMzIyLDQzNTkx Ci1cZGVmXHR0e39cdHQBMTMyMyw0MzYxOQotXGRlZlxndHJ7f1xndHIBMTMyNCw0MzY0NwotXGRl ZlxsZXNze39cbGVzcwExMzI1LDQzNjc3Ci1cZGVmXGhhdHt/XGhhdAExMzI2LDQzNzA5Ci1cZGVm XGNoYXJ7f1xjaGFyATEzMjcsNDM3MzkKLVxkZWZcVGVYe39cVGVYATEzMjgsNDM3NzEKLVxkZWZc ZG90c3t/XGRvdHMBMTMyOSw0MzgwMQotXGRlZlxjb3B5cmlnaHR7f1xjb3B5cmlnaHQBMTMzMCw0 MzgzNAotXGRlZlx0Y2xvc2UjIzF7f1x0Y2xvc2UBMTMzMSw0Mzg3NwotXGRlZlxjb2RlIyMxe39c Y29kZQExMzMyLDQzOTIyCi1cZGVmXHNhbXAjIzF7f1xzYW1wATEzMzMsNDM5NjMKLVxkZWZcdCMj MXt/XHQBMTMzNCw0NDAwNAotXGRlZlxyIyMxe39ccgExMzM1LDQ0MDM5Ci1cZGVmXGkjIzF7f1xp ATEzMzYsNDQwNzQKLVxkZWZcYiMjMXt/XGIBMTMzNyw0NDEwOQotXGRlZlxjaXRlIyMxe39cY2l0 ZQExMzM4LDQ0MTQ0Ci1cZGVmXGtleSMjMXt/XGtleQExMzM5LDQ0MTg1Ci1cZGVmXGZpbGUjIzF7 f1xmaWxlATEzNDAsNDQyMjQKLVxkZWZcdmFyIyMxe39cdmFyATEzNDEsNDQyNjUKLVxkZWZca2Jk IyMxe39ca2JkATEzNDIsNDQzMDQKLVxkZWZcaW5kZXhkdW1teWZvbnQjMXt/XGluZGV4ZHVtbXlm b250ATEzNDcsNDQ0NjAKLVxkZWZcaW5kZXhkdW1teXRleHt/XGluZGV4ZHVtbXl0ZXgBMTM0OCw0 NDQ4NgotXGRlZlxpbmRleGR1bW15ZG90c3t/XGluZGV4ZHVtbXlkb3RzATEzNDksNDQ1MTAKLVxk ZWZcaW5kZXhub2ZvbnRze39caW5kZXhub2ZvbnRzATEzNTEsNDQ1MzYKK1xsZXRcbGFzdG5vZGU9 XHJlbGF4fX9sYXN0bm9kZQE1MDIsMTYxOTQKK1xsZXRccmVmaWxsPVxyZWxheH9yZWZpbGwBNTA0 LDE2MjE3CitcZGVmXHNldGZpbGVuYW1le39zZXRmaWxlbmFtZQE1MDksMTY0MzEKKyAgIFxnbG9i YWxcbGV0XHNldGZpbGVuYW1lPVxjb21tZW50ICUgSWdub3JlIGV4dHJhIEBzZXRmaWxlbmFtZSBj bWRzLn9zZXRmaWxlbmFtZQE1MTQsMTY1NjIKK1xvdXRlclxkZWZcYnlle39ieWUBNTE4LDE2Njc3 CitcZGVmXGluZm9yZWYgIzF7f2luZm9yZWYBNTIwLDE2NzMzCitcZGVmXGluZm9yZWZ6enogIzEs IzIsIzMsIzQqKnt/aW5mb3JlZnp6egE1MjEsMTY3NzEKK1xkZWZcbG9zZXNwYWNlICMxe39sb3Nl c3BhY2UBNTIzLDE2ODY4CitcZGVmXHNme39zZgE1MzIsMTcwNzIKK1xsZXRcbGkgPSBcc2YgJSBT b21ldGltZXMgd2UgY2FsbCBpdCBcbGksIG5vdCBcc2Yuf2xpATUzMywxNzEwMAorXGxldFxtYWlu bWFnc3RlcD1cbWFnc3RlcGhhbGZ/bWFpbm1hZ3N0ZXABNTM2LDE3MjAxCitcbGV0XG1haW5tYWdz dGVwPVxtYWdzdGVwMX9tYWlubWFnc3RlcAE1MzksMTcyNTAKK1xmb250XGRlZmJmPWNtYngxMCBz Y2FsZWQgXG1hZ3N0ZXAxICV3YXMgMTMxNH9iZgE1NTgsMTc4NjcKK1xmb250XGRlZnR0PWNtdHQx MCBzY2FsZWQgXG1hZ3N0ZXAxf3R0ATU1OSwxNzkxMworXGRlZlxkZnt/ZGYBNTYwLDE3OTQ5Citc ZGVmXGRme1xsZXRcdGVudHQ9XGRlZnR0IFxsZXRcdGVuYmYgPSBcZGVmYmYgXGJmfX90ZW50dAE1 NjAsMTc5NDkKK1xkZWZcZGZ7XGxldFx0ZW50dD1cZGVmdHQgXGxldFx0ZW5iZiA9IFxkZWZiZiBc YmZ9f3R0ATU2MCwxNzk0OQorXGRlZlxkZntcbGV0XHRlbnR0PVxkZWZ0dCBcbGV0XHRlbmJmID0g XGRlZmJmIFxiZn1/dGVuYmYBNTYwLDE3OTQ5CitcZGVmXGRme1xsZXRcdGVudHQ9XGRlZnR0IFxs ZXRcdGVuYmYgPSBcZGVmYmYgXGJmfX9iZgE1NjAsMTc5NDkKK1xsZXRcaW5kc2w9XGluZGl0f2lu ZHNsATU3MCwxODMxMAorXGxldFxpbmR0dD1cbmluZXR0f2luZHR0ATU3MSwxODMyOAorXGxldFxp bmRzZj1caW5kcm1/aW5kc2YBNTcyLDE4MzQ3CitcbGV0XGluZGJmPVxpbmRybX9pbmRiZgE1NzMs MTgzNjUKK1xsZXRcaW5kc2M9XGluZHJtf2luZHNjATU3NCwxODM4MworXGxldFxjaGFwYmY9XGNo YXBybX9jaGFwYmYBNTg0LDE4NjQzCitcbGV0XGF1dGhvcnJtID0gXHNlY3Jtf2F1dGhvcnJtATYy NywyMDE5MworXGRlZlxyZXNldG1hdGhmb250c3t/cmVzZXRtYXRoZm9udHMBNjM1LDIwNTQzCitc ZGVmXHRleHRmb250c3t/dGV4dGZvbnRzATY0OCwyMTEzMgorICBcbGV0XHRlbnJtPVx0ZXh0cm0g XGxldFx0ZW5pdD1cdGV4dGl0IFxsZXRcdGVuc2w9XHRleHRzbH90ZW5ybQE2NDksMjExNDkKKyAg XGxldFx0ZW5ybT1cdGV4dHJtIFxsZXRcdGVuaXQ9XHRleHRpdCBcbGV0XHRlbnNsPVx0ZXh0c2x/ dGVuaXQBNjQ5LDIxMTQ5CisgIFxsZXRcdGVucm09XHRleHRybSBcbGV0XHRlbml0PVx0ZXh0aXQg XGxldFx0ZW5zbD1cdGV4dHNsf3RlbnNsATY0OSwyMTE0OQorICBcbGV0XHRlbmJmPVx0ZXh0YmYg XGxldFx0ZW50dD1cdGV4dHR0IFxsZXRcc21hbGxjYXBzPVx0ZXh0c2N/dGVuYmYBNjUwLDIxMjA4 CisgIFxsZXRcdGVuYmY9XHRleHRiZiBcbGV0XHRlbnR0PVx0ZXh0dHQgXGxldFxzbWFsbGNhcHM9 XHRleHRzY390ZW50dAE2NTAsMjEyMDgKKyAgXGxldFx0ZW5iZj1cdGV4dGJmIFxsZXRcdGVudHQ9 XHRleHR0dCBcbGV0XHNtYWxsY2Fwcz1cdGV4dHNjf3NtYWxsY2FwcwE2NTAsMjEyMDgKKyAgXGxl dFx0ZW5zZj1cdGV4dHNmIFxsZXRcdGVuaT1cdGV4dGkgXGxldFx0ZW5zeT1cdGV4dHN5f3RlbnNm ATY1MSwyMTI3MQorICBcbGV0XHRlbnNmPVx0ZXh0c2YgXGxldFx0ZW5pPVx0ZXh0aSBcbGV0XHRl bnN5PVx0ZXh0c3l/dGVuaQE2NTEsMjEyNzEKKyAgXGxldFx0ZW5zZj1cdGV4dHNmIFxsZXRcdGVu aT1cdGV4dGkgXGxldFx0ZW5zeT1cdGV4dHN5f3RlbnN5ATY1MSwyMTI3MQorXGRlZlxjaGFwZm9u dHN7f2NoYXBmb250cwE2NTMsMjEzNDcKKyAgXGxldFx0ZW5ybT1cY2hhcHJtIFxsZXRcdGVuaXQ9 XGNoYXBpdCBcbGV0XHRlbnNsPVxjaGFwc2wgf3RlbnJtATY1NCwyMTM2NAorICBcbGV0XHRlbnJt PVxjaGFwcm0gXGxldFx0ZW5pdD1cY2hhcGl0IFxsZXRcdGVuc2w9XGNoYXBzbCB/dGVuaXQBNjU0 LDIxMzY0CisgIFxsZXRcdGVucm09XGNoYXBybSBcbGV0XHRlbml0PVxjaGFwaXQgXGxldFx0ZW5z bD1cY2hhcHNsIH90ZW5zbAE2NTQsMjEzNjQKKyAgXGxldFx0ZW5iZj1cY2hhcGJmIFxsZXRcdGVu dHQ9XGNoYXB0dCBcbGV0XHNtYWxsY2Fwcz1cY2hhcHNjf3RlbmJmATY1NSwyMTQyNAorICBcbGV0 XHRlbmJmPVxjaGFwYmYgXGxldFx0ZW50dD1cY2hhcHR0IFxsZXRcc21hbGxjYXBzPVxjaGFwc2N/ dGVudHQBNjU1LDIxNDI0CisgIFxsZXRcdGVuYmY9XGNoYXBiZiBcbGV0XHRlbnR0PVxjaGFwdHQg XGxldFxzbWFsbGNhcHM9XGNoYXBzY39zbWFsbGNhcHMBNjU1LDIxNDI0CisgIFxsZXRcdGVuc2Y9 XGNoYXBzZiBcbGV0XHRlbmk9XGNoYXBpIFxsZXRcdGVuc3k9XGNoYXBzeX90ZW5zZgE2NTYsMjE0 ODcKKyAgXGxldFx0ZW5zZj1cY2hhcHNmIFxsZXRcdGVuaT1cY2hhcGkgXGxldFx0ZW5zeT1cY2hh cHN5f3RlbmkBNjU2LDIxNDg3CisgIFxsZXRcdGVuc2Y9XGNoYXBzZiBcbGV0XHRlbmk9XGNoYXBp IFxsZXRcdGVuc3k9XGNoYXBzeX90ZW5zeQE2NTYsMjE0ODcKK1xkZWZcc2VjZm9udHN7f3NlY2Zv bnRzATY1OCwyMTU2MworICBcbGV0XHRlbnJtPVxzZWNybSBcbGV0XHRlbml0PVxzZWNpdCBcbGV0 XHRlbnNsPVxzZWNzbH90ZW5ybQE2NTksMjE1NzkKKyAgXGxldFx0ZW5ybT1cc2Vjcm0gXGxldFx0 ZW5pdD1cc2VjaXQgXGxldFx0ZW5zbD1cc2Vjc2x/dGVuaXQBNjU5LDIxNTc5CisgIFxsZXRcdGVu cm09XHNlY3JtIFxsZXRcdGVuaXQ9XHNlY2l0IFxsZXRcdGVuc2w9XHNlY3Nsf3RlbnNsATY1OSwy MTU3OQorICBcbGV0XHRlbmJmPVxzZWNiZiBcbGV0XHRlbnR0PVxzZWN0dCBcbGV0XHNtYWxsY2Fw cz1cc2Vjc2N/dGVuYmYBNjYwLDIxNjM1CisgIFxsZXRcdGVuYmY9XHNlY2JmIFxsZXRcdGVudHQ9 XHNlY3R0IFxsZXRcc21hbGxjYXBzPVxzZWNzY390ZW50dAE2NjAsMjE2MzUKKyAgXGxldFx0ZW5i Zj1cc2VjYmYgXGxldFx0ZW50dD1cc2VjdHQgXGxldFxzbWFsbGNhcHM9XHNlY3Njf3NtYWxsY2Fw cwE2NjAsMjE2MzUKKyAgXGxldFx0ZW5zZj1cc2Vjc2YgXGxldFx0ZW5pPVxzZWNpIFxsZXRcdGVu c3k9XHNlY3N5f3RlbnNmATY2MSwyMTY5NQorICBcbGV0XHRlbnNmPVxzZWNzZiBcbGV0XHRlbmk9 XHNlY2kgXGxldFx0ZW5zeT1cc2Vjc3l/dGVuaQE2NjEsMjE2OTUKKyAgXGxldFx0ZW5zZj1cc2Vj c2YgXGxldFx0ZW5pPVxzZWNpIFxsZXRcdGVuc3k9XHNlY3N5f3RlbnN5ATY2MSwyMTY5NQorXGRl ZlxzdWJzZWNmb250c3t/c3Vic2VjZm9udHMBNjYzLDIxNzY4CisgIFxsZXRcdGVucm09XHNzZWNy bSBcbGV0XHRlbml0PVxzc2VjaXQgXGxldFx0ZW5zbD1cc3NlY3Nsf3RlbnJtATY2NCwyMTc4Nwor ICBcbGV0XHRlbnJtPVxzc2Vjcm0gXGxldFx0ZW5pdD1cc3NlY2l0IFxsZXRcdGVuc2w9XHNzZWNz bH90ZW5pdAE2NjQsMjE3ODcKKyAgXGxldFx0ZW5ybT1cc3NlY3JtIFxsZXRcdGVuaXQ9XHNzZWNp dCBcbGV0XHRlbnNsPVxzc2Vjc2x/dGVuc2wBNjY0LDIxNzg3CisgIFxsZXRcdGVuYmY9XHNzZWNi ZiBcbGV0XHRlbnR0PVxzc2VjdHQgXGxldFxzbWFsbGNhcHM9XHNzZWNzY390ZW5iZgE2NjUsMjE4 NDYKKyAgXGxldFx0ZW5iZj1cc3NlY2JmIFxsZXRcdGVudHQ9XHNzZWN0dCBcbGV0XHNtYWxsY2Fw cz1cc3NlY3Njf3RlbnR0ATY2NSwyMTg0NgorICBcbGV0XHRlbmJmPVxzc2VjYmYgXGxldFx0ZW50 dD1cc3NlY3R0IFxsZXRcc21hbGxjYXBzPVxzc2Vjc2N/c21hbGxjYXBzATY2NSwyMTg0NgorICBc bGV0XHRlbnNmPVxzc2Vjc2YgXGxldFx0ZW5pPVxzc2VjaSBcbGV0XHRlbnN5PVxzc2Vjc3l/dGVu c2YBNjY2LDIxOTA5CisgIFxsZXRcdGVuc2Y9XHNzZWNzZiBcbGV0XHRlbmk9XHNzZWNpIFxsZXRc dGVuc3k9XHNzZWNzeX90ZW5pATY2NiwyMTkwOQorICBcbGV0XHRlbnNmPVxzc2Vjc2YgXGxldFx0 ZW5pPVxzc2VjaSBcbGV0XHRlbnN5PVxzc2Vjc3l/dGVuc3kBNjY2LDIxOTA5CitcZGVmXGluZGV4 Zm9udHN7f2luZGV4Zm9udHMBNjY4LDIxOTg1CisgIFxsZXRcdGVucm09XGluZHJtIFxsZXRcdGVu aXQ9XGluZGl0IFxsZXRcdGVuc2w9XGluZHNsf3RlbnJtATY2OSwyMjAwMworICBcbGV0XHRlbnJt PVxpbmRybSBcbGV0XHRlbml0PVxpbmRpdCBcbGV0XHRlbnNsPVxpbmRzbH90ZW5pdAE2NjksMjIw MDMKKyAgXGxldFx0ZW5ybT1caW5kcm0gXGxldFx0ZW5pdD1caW5kaXQgXGxldFx0ZW5zbD1caW5k c2x/dGVuc2wBNjY5LDIyMDAzCisgIFxsZXRcdGVuYmY9XGluZGJmIFxsZXRcdGVudHQ9XGluZHR0 IFxsZXRcc21hbGxjYXBzPVxpbmRzY390ZW5iZgE2NzAsMjIwNTkKKyAgXGxldFx0ZW5iZj1caW5k YmYgXGxldFx0ZW50dD1caW5kdHQgXGxldFxzbWFsbGNhcHM9XGluZHNjf3RlbnR0ATY3MCwyMjA1 OQorICBcbGV0XHRlbmJmPVxpbmRiZiBcbGV0XHRlbnR0PVxpbmR0dCBcbGV0XHNtYWxsY2Fwcz1c aW5kc2N/c21hbGxjYXBzATY3MCwyMjA1OQorICBcbGV0XHRlbnNmPVxpbmRzZiBcbGV0XHRlbmk9 XGluZGkgXGxldFx0ZW5zeT1caW5kc3l/dGVuc2YBNjcxLDIyMTE5CisgIFxsZXRcdGVuc2Y9XGlu ZHNmIFxsZXRcdGVuaT1caW5kaSBcbGV0XHRlbnN5PVxpbmRzeX90ZW5pATY3MSwyMjExOQorICBc bGV0XHRlbnNmPVxpbmRzZiBcbGV0XHRlbmk9XGluZGkgXGxldFx0ZW5zeT1caW5kc3l/dGVuc3kB NjcxLDIyMTE5CitcZGVmXHNtYXJ0aXRhbGljeHt/c21hcnRpdGFsaWN4ATY5MSwyMjcxNworXGRl ZlxzbWFydGl0YWxpYyMxe39zbWFydGl0YWxpYwE2OTIsMjI3OTMKK1xsZXRcaT1cc21hcnRpdGFs aWN/aQE2OTQsMjI4NTEKK1xsZXRcdmFyPVxzbWFydGl0YWxpY392YXIBNjk1LDIyODcxCitcbGV0 XGRmbj1cc21hcnRpdGFsaWN/ZGZuATY5NiwyMjg5MworXGxldFxlbXBoPVxzbWFydGl0YWxpY39l bXBoATY5NywyMjkxNQorXGxldFxjaXRlPVxzbWFydGl0YWxpY39jaXRlATY5OCwyMjkzOAorXGRl ZlxiIzF7f2IBNzAwLDIyOTYyCitcbGV0XHN0cm9uZz1cYn9zdHJvbmcBNzAxLDIyOTgxCitcZGVm XHQjMXt/dAE3MDMsMjI5OTcKK1xsZXRcdHRmb250ID0gXHR/dHRmb250ATcwNCwyMzA3MgorXGRl ZlxzYW1wICMxe39zYW1wATcwNiwyMzE0OQorXGRlZlxrZXkgIzF7f2tleQE3MDcsMjMxODIKK1xk ZWZcY3RybCAjMXt/Y3RybAE3MDgsMjMyNDMKK1xsZXRcZmlsZT1cc2FtcH9maWxlATcxMCwyMzI4 NQorXGRlZlx0Y2xvc2UjMXt/dGNsb3NlATcxNiwyMzQ0NQorXGxldFxjb2RlPVx0Y2xvc2V/Y29k ZQE3MjIsMjM3MjIKK1xkZWZceGtleXt/eGtleQE3MjgsMjM4ODAKK1xkZWZca2JkZm9vIzEjMiMz XHBhcnt/a2JkZm9vATcyOSwyMzg5NgorXGRlZlxrYmRmb28jMSMyIzNccGFye1xkZWZcb25le39v bmUBNzI5LDIzODk2CitcZGVmXGtiZGZvbyMxIzIjM1xwYXJ7XGRlZlxvbmV7IzF9XGRlZlx0aHJl ZXt/dGhyZWUBNzI5LDIzODk2CitcZGVmXGtiZGZvbyMxIzIjM1xwYXJ7XGRlZlxvbmV7IzF9XGRl Zlx0aHJlZXsjM31cZGVmXHRocmVleHt/dGhyZWV4ATcyOSwyMzg5NgorXGRlZlxkbW4jMXt/ZG1u ATczOCwyNDE5NworXGRlZlxrYmQjMXt/a2JkATc0MCwyNDIyNAorXGRlZlxrYmQjMXtcZGVmXGxv b2t7f2xvb2sBNzQwLDI0MjI0CitcZGVmXGwjMXt/bAE3NDIsMjQyODEKK1xkZWZcciMxe39yATc0 NCwyNDMxMAorXGRlZlxzYyMxe39zYwE3NDYsMjQzNzgKK1xkZWZcaWkjMXt/aWkBNzQ3LDI0NDIx CitcZGVmXHRpdGxlZm9udCMxe390aXRsZWZvbnQBNzU1LDI0NjU0CitcZGVmXHRpdGxlcGFnZXt/ dGl0bGVwYWdlATc2MSwyNDc1NworICAgXGxldFxzdWJ0aXRsZXJtPVx0ZW5ybX9zdWJ0aXRsZXJt ATc2MiwyNDgxMAorICAgXGRlZlxzdWJ0aXRsZWZvbnR7f3N1YnRpdGxlZm9udAE3NjYsMjQ5ODQK KyAgIFxkZWZcYXV0aG9yZm9udHt/YXV0aG9yZm9udAE3NjgsMjUwNjgKKyAgIFxkZWZcdGl0bGV7 f3RpdGxlATc3NCwyNTI3OAorICAgXGRlZlx0aXRsZXp6eiMjMXt/dGl0bGV6enoBNzc1LDI1MzEz CisgICBcZGVmXHN1YnRpdGxle39zdWJ0aXRsZQE3ODMsMjU2MjgKKyAgIFxkZWZcc3VidGl0bGV6 enojIzF7f3N1YnRpdGxlenp6ATc4NCwyNTY2OQorICAgXGRlZlxhdXRob3J7f2F1dGhvcgE3ODcs MjU3ODcKKyAgIFxkZWZcYXV0aG9yenp6IyMxe39hdXRob3J6enoBNzg4LDI1ODI0CisgICBcbGV0 XG9sZHBhZ2UgPSBccGFnZX9vbGRwYWdlATc5MywyNjA5MQorICAgXGRlZlxwYWdle39wYWdlATc5 NCwyNjExNQorICAgICAgXGxldFxwYWdlID0gXG9sZHBhZ2V/cGFnZQE3OTksMjYyMDYKK1xkZWZc RXRpdGxlcGFnZXt/RXRpdGxlcGFnZQE4MDQsMjYyODQKK1xkZWZcZmluaXNodGl0bGVwYWdle39m aW5pc2h0aXRsZXBhZ2UBODE3LDI2NjcyCitcbGV0XHRoaXNwYWdlPVxmb2xpb390aGlzcGFnZQE4 MjUsMjY4MjUKK1xsZXRcSEVBRElOR1Nob29rPVxyZWxheH9IRUFESU5HU2hvb2sBODM3LDI3NDIw CitcZGVmXGV2ZW5oZWFkaW5ne39ldmVuaGVhZGluZwE4NDYsMjc2ODAKK1xkZWZcb2RkaGVhZGlu Z3t/b2RkaGVhZGluZwE4NDcsMjc3MjMKK1xkZWZcZXZlcnloZWFkaW5ne39ldmVyeWhlYWRpbmcB ODQ4LDI3NzY0CitcZGVmXGV2ZW5mb290aW5ne39ldmVuZm9vdGluZwE4NTAsMjc4MTAKK1xkZWZc b2RkZm9vdGluZ3t/b2RkZm9vdGluZwE4NTEsMjc4NTMKK1xkZWZcZXZlcnlmb290aW5ne39ldmVy eWZvb3RpbmcBODUyLDI3ODk0CitcZ2RlZlxldmVuaGVhZGluZ3h4eCAjMXt/ZXZlbmhlYWRpbmd4 eHgBODU2LDI3OTU4CitcZ2RlZlxldmVuaGVhZGluZ3l5eSAjMUB8IzJAfCMzQHwjNFxmaW5pc2h7 f2V2ZW5oZWFkaW5neXl5ATg1NywyODAxNworXGdkZWZcb2RkaGVhZGluZ3h4eCAjMXt/b2RkaGVh ZGluZ3h4eAE4NjAsMjgxMjYKK1xnZGVmXG9kZGhlYWRpbmd5eXkgIzFAfCMyQHwjM0B8IzRcZmlu aXNoe39vZGRoZWFkaW5neXl5ATg2MSwyODE4MworXGdkZWZcZXZlcnloZWFkaW5neHh4ICMxe39l dmVyeWhlYWRpbmd4eHgBODY0LDI4MjkwCitcZ2RlZlxldmVyeWhlYWRpbmd5eXkgIzFAfCMyQHwj M0B8IzRcZmluaXNoe39ldmVyeWhlYWRpbmd5eXkBODY1LDI4MzUxCitcZ2RlZlxldmVuZm9vdGlu Z3h4eCAjMXt/ZXZlbmZvb3Rpbmd4eHgBODY5LDI4NTIyCitcZ2RlZlxldmVuZm9vdGluZ3l5eSAj MUB8IzJAfCMzQHwjNFxmaW5pc2h7f2V2ZW5mb290aW5neXl5ATg3MCwyODU4MQorXGdkZWZcb2Rk Zm9vdGluZ3h4eCAjMXt/b2RkZm9vdGluZ3h4eAE4NzMsMjg2OTAKK1xnZGVmXG9kZGZvb3Rpbmd5 eXkgIzFAfCMyQHwjM0B8IzRcZmluaXNoe39vZGRmb290aW5neXl5ATg3NCwyODc0NworXGdkZWZc ZXZlcnlmb290aW5neHh4ICMxe39ldmVyeWZvb3Rpbmd4eHgBODc3LDI4ODU0CitcZ2RlZlxldmVy eWZvb3Rpbmd5eXkgIzFAfCMyQHwjM0B8IzRcZmluaXNoe39ldmVyeWZvb3Rpbmd5eXkBODc4LDI4 OTE1CitcZGVmXGhlYWRpbmdzICMxIHt/aGVhZGluZ3MBODkzLDI5NTg2CitcZGVmXEhFQURJTkdT b2Zme39IRUFESU5HU29mZgE4OTUsMjk2MzUKK1xkZWZcSEVBRElOR1Nkb3VibGV7f0hFQURJTkdT ZG91YmxlATkwNCwzMDA2MgorXGRlZlxIRUFESU5HU3NpbmdsZXt/SEVBRElOR1NzaW5nbGUBOTE0 LDMwMzgyCitcZGVmXEhFQURJTkdTb257f0hFQURJTkdTb24BOTIyLDMwNjAzCitcZGVmXEhFQURJ TkdTYWZ0ZXJ7f0hFQURJTkdTYWZ0ZXIBOTI0LDMwNjM3CitcZGVmXEhFQURJTkdTYWZ0ZXJ7XGxl dFxIRUFESU5HU2hvb2s9XEhFQURJTkdTZG91YmxleH1/SEVBRElOR1Nob29rATkyNCwzMDYzNwor XGxldFxIRUFESU5HU2RvdWJsZWFmdGVyPVxIRUFESU5HU2FmdGVyf0hFQURJTkdTZG91YmxlYWZ0 ZXIBOTI1LDMwNjkyCitcZGVmXEhFQURJTkdTZG91YmxleHt/SEVBRElOR1Nkb3VibGV4ATkyNiwz MDczMgorXGRlZlxIRUFESU5HU3NpbmdsZWFmdGVye39IRUFESU5HU3NpbmdsZWFmdGVyATkzMywz MDkyMAorXGRlZlxIRUFESU5HU3NpbmdsZWFmdGVye1xsZXRcSEVBRElOR1Nob29rPVxIRUFESU5H U3NpbmdsZXh9f0hFQURJTkdTaG9vawE5MzMsMzA5MjAKK1xkZWZcSEVBRElOR1NzaW5nbGV4e39I RUFESU5HU3NpbmdsZXgBOTM0LDMwOTgxCitcZGVmXHRvZGF5e390b2RheQE5NDMsMzEyNTYKK1xk ZWZcdGhpc3RpdGxle390aGlzdGl0bGUBOTU4LDMxODAxCitcZGVmXHNldHRpdGxle39zZXR0aXRs ZQE5NTksMzE4MjYKK1xkZWZcc2V0dGl0bGV6enogIzF7f3NldHRpdGxlenp6ATk2MCwzMTg2Mwor XGRlZlxzZXR0aXRsZXp6eiAjMXtcZ2RlZlx0aGlzdGl0bGV7f3RoaXN0aXRsZQE5NjAsMzE4NjMK K1xkZWZcaW50ZXJuYWxCaXRlbXt/aW50ZXJuYWxCaXRlbQE5OTIsMzI3OTMKK1xkZWZcaW50ZXJu YWxCaXRlbXh7f2ludGVybmFsQml0ZW14ATk5MywzMjg0MworXGRlZlxpbnRlcm5hbEJ4aXRlbSAi IzEie39pbnRlcm5hbEJ4aXRlbQE5OTUsMzI4ODgKK1xkZWZcaW50ZXJuYWxCeGl0ZW0gIiMxIntc ZGVmXHhpdGVtc3VidG9waXh7f3hpdGVtc3VidG9waXgBOTk1LDMyODg4CitcZGVmXGludGVybmFs QnhpdGVteCAiIzEie39pbnRlcm5hbEJ4aXRlbXgBOTk2LDMyOTY4CitcZGVmXGludGVybmFsQnhp dGVteCAiIzEie1xkZWZceGl0ZW1zdWJ0b3BpeHt/eGl0ZW1zdWJ0b3BpeAE5OTYsMzI5NjgKK1xk ZWZcaW50ZXJuYWxCa2l0ZW17f2ludGVybmFsQmtpdGVtATk5OCwzMzA0MworXGRlZlxpbnRlcm5h bEJraXRlbXh7f2ludGVybmFsQmtpdGVteAE5OTksMzMwOTUKK1xkZWZca2l0ZW16enogIzF7f2tp dGVtenp6ATEwMDEsMzMxNDIKK1xkZWZceGl0ZW16enogIzF7f3hpdGVtenp6ATEwMDQsMzMyNDQK K1xkZWZcaXRlbXp6eiAjMXt/aXRlbXp6egExMDA3LDMzMzQ3CitcZGVmXGl0ZW17f2l0ZW0BMTAz NywzNDQxOAorXGRlZlxpdGVteHt/aXRlbXgBMTAzOCwzNDQ2OQorXGRlZlxraXRlbXt/a2l0ZW0B MTAzOSwzNDUyMgorXGRlZlxraXRlbXh7f2tpdGVteAExMDQwLDM0NTc1CitcZGVmXHhpdGVte394 aXRlbQExMDQxLDM0NjMwCitcZGVmXHhpdGVteHt/eGl0ZW14ATEwNDIsMzQ2ODMKK1xkZWZcZGVz Y3JpcHRpb257f2Rlc2NyaXB0aW9uATEwNDUsMzQ3OTMKK1xkZWZcdGFibGV7f3RhYmxlATEwNDcs MzQ4NDMKK1xnZGVmXHRhYmxleCAjMV5eTXt/dGFibGV4ATEwNDksMzQ5MjUKK1xkZWZcZnRhYmxl e39mdGFibGUBMTA1MiwzNDk4NworXGdkZWZcZnRhYmxleCAjMV5eTXt/ZnRhYmxleAExMDU0LDM1 MDcxCitcZGVmXEVmdGFibGV7f0VmdGFibGUBMTA1NiwzNTEzMworXGxldFxFdGFibGU9XHJlbGF4 fX9FdGFibGUBMTA1NywzNTE4MAorXGRlZlx2dGFibGV7f3Z0YWJsZQExMDU5LDM1MjAyCitcZ2Rl Zlx2dGFibGV4ICMxXl5Ne392dGFibGV4ATEwNjEsMzUyODYKK1xkZWZcRXZ0YWJsZXt/RXZ0YWJs ZQExMDYzLDM1MzQ4CitcbGV0XEV0YWJsZT1ccmVsYXh9f0V0YWJsZQExMDY0LDM1Mzk1CitcZGVm XGRvbnRpbmRleCAjMXt/ZG9udGluZGV4ATEwNjYsMzU0MTcKK1xkZWZcZm5pdGVtaW5kZXggIzF7 f2ZuaXRlbWluZGV4ATEwNjcsMzU0MzcKK1xkZWZcdnJpdGVtaW5kZXggIzF7f3ZyaXRlbWluZGV4 ATEwNjgsMzU0ODIKK1xnZGVmXHRhYmxleSMxIzIgIzMgIzQgIzUgIzYgIzdcZW5kdGFibGV5e390 YWJsZXkBMTA3MSwzNTU0MworXGRlZlx0YWJsZXogIzEjMiMzIzQjNSM2e390YWJsZXoBMTA3NCwz NTYzMQorXGRlZlxFZGVzY3JpcHRpb257f0VkZXNjcmlwdGlvbgExMDc3LDM1Njg5CitcbGV0XGl0 ZW1pbmRleD0jMSV/aXRlbWluZGV4ATEwNzgsMzU3MzUKK1xkZWZcaXRlbWZvbnR7f2l0ZW1mb250 ATEwODIsMzU4OTAKK1xkZWZcRXRhYmxle39FdGFibGUBMTA5MCwzNjExNgorXGxldFxpdGVtID0g XGludGVybmFsQml0ZW0gJX9pdGVtATEwOTEsMzYxNjIKK1xsZXRcaXRlbXggPSBcaW50ZXJuYWxC aXRlbXggJX9pdGVteAExMDkyLDM2MTkxCitcbGV0XGtpdGVtID0gXGludGVybmFsQmtpdGVtICV/ a2l0ZW0BMTA5MywzNjIyMgorXGxldFxraXRlbXggPSBcaW50ZXJuYWxCa2l0ZW14ICV/a2l0ZW14 ATEwOTQsMzYyNTMKK1xsZXRceGl0ZW0gPSBcaW50ZXJuYWxCeGl0ZW0gJX94aXRlbQExMDk1LDM2 Mjg2CitcbGV0XHhpdGVteCA9IFxpbnRlcm5hbEJ4aXRlbXggJX94aXRlbXgBMTA5NiwzNjMxNwor XGRlZlxpdGVtaXple39pdGVtaXplATExMDMsMzY0NDAKK1xkZWZcaXRlbWl6ZXp6eiAjMXt/aXRl bWl6ZXp6egExMTA1LDM2NDc2CitcZGVmXGl0ZW1pemV5ICMxIzJ7f2l0ZW1pemV5ATExMTAsMzY1 NzEKK1xkZWZcaXRlbWNvbnRlbnRze39pdGVtY29udGVudHMBMTEyMCwzNjg1OAorXGxldFxpdGVt PVxpdGVtaXplaXRlbX1/aXRlbQExMTIxLDM2ODgxCitcZGVmXGJ1bGxldHt/YnVsbGV0ATExMjMs MzY5MDYKK1xkZWZcbWludXN7f21pbnVzATExMjQsMzY5MzMKK1xkZWZcZnJlbmNoc3BhY2luZ3t/ ZnJlbmNoc3BhY2luZwExMTI4LDM3MDQxCitcZGVmXHNwbGl0b2ZmIzEjMlxlbmRtYXJre39zcGxp dG9mZgExMTM0LDM3MjY2CitcZGVmXHNwbGl0b2ZmIzEjMlxlbmRtYXJre1xkZWZcZmlyc3R7f2Zp cnN0ATExMzQsMzcyNjYKK1xkZWZcc3BsaXRvZmYjMSMyXGVuZG1hcmt7XGRlZlxmaXJzdHsjMX1c ZGVmXHJlc3R7f3Jlc3QBMTEzNCwzNzI2NgorXGRlZlxlbnVtZXJhdGV7f2VudW1lcmF0ZQExMTQw LDM3NDk2CitcZGVmXGVudW1lcmF0ZXp6eiAjMXt/ZW51bWVyYXRlenp6ATExNDEsMzc1MzUKK1xk ZWZcZW51bWVyYXRleSAjMSAjMlxlbmRlbnVtZXJhdGV5e39lbnVtZXJhdGV5ATExNDIsMzc1ODgK KyAgXGRlZlx0aGVhcmd7f3RoZWFyZwExMTQ2LDM3NzM1CisgIFxpZnhcdGhlYXJnXGVtcHR5IFxk ZWZcdGhlYXJne390aGVhcmcBMTE0NywzNzc1NAorXGRlZlxudW1lcmljZW51bWVyYXRle39udW1l cmljZW51bWVyYXRlATExODQsMzkwODgKK1xkZWZcbG93ZXJjYXNlZW51bWVyYXRle39sb3dlcmNh c2VlbnVtZXJhdGUBMTE5MCwzOTIxOAorXGRlZlx1cHBlcmNhc2VlbnVtZXJhdGV7f3VwcGVyY2Fz ZWVudW1lcmF0ZQExMjAzLDM5NTY1CitcZGVmXHN0YXJ0ZW51bWVyYXRpb24jMXt/c3RhcnRlbnVt ZXJhdGlvbgExMjE5LDQwMDU1CitcZGVmXGFscGhhZW51bWVyYXRle39hbHBoYWVudW1lcmF0ZQEx MjI3LDQwMjM3CitcZGVmXGNhcHNlbnVtZXJhdGV7f2NhcHNlbnVtZXJhdGUBMTIyOCw0MDI3Mgor XGRlZlxFYWxwaGFlbnVtZXJhdGV7f0VhbHBoYWVudW1lcmF0ZQExMjI5LDQwMzA2CitcZGVmXEVj YXBzZW51bWVyYXRle39FY2Fwc2VudW1lcmF0ZQExMjMwLDQwMzQwCitcZGVmXGl0ZW1pemVpdGVt e39pdGVtaXplaXRlbQExMjM0LDQwNDIwCit7XGxldFxwYXI9XGVuZGdyYWYgXHNtYWxsYnJlYWt9 f3BhcgExMjM2LDQwNDYwCitcZ2RlZlxuZXd3cml0ZXt/bmV3d3JpdGUBMTI0OSw0MDg0MQorXGRl ZlxuZXdpbmRleCAjMXt/bmV3aW5kZXgBMTI1OSw0MTI3NworXGV4cGFuZGFmdGVyXHhkZWZcY3Nu YW1lIzFpbmRleFxlbmRjc25hbWV7f2NzbmFtZQExMjYyLDQxNDM5CitcZGVmXGRlZmluZGV4e39k ZWZpbmRleAExMjY4LDQxNTY2CitcZGVmXG5ld2NvZGVpbmRleCAjMXt/bmV3Y29kZWluZGV4ATEy NzIsNDE2NzQKK1xleHBhbmRhZnRlclx4ZGVmXGNzbmFtZSMxaW5kZXhcZW5kY3NuYW1le39jc25h bWUBMTI3NSw0MTg0MAorXGRlZlxkZWZjb2RlaW5kZXh7f2RlZmNvZGVpbmRleAExMjc5LDQxOTM0 CitcZGVmXHN5bmluZGV4ICMxICMyIHt/c3luaW5kZXgBMTI4Myw0MjExNAorXGV4cGFuZGFmdGVy XGxldFxleHBhbmRhZnRlclxzeW5pbmRleGZvb1xleHBhbmRhZnRlcj1cY3NuYW1lIzJpbmRmaWxl XGVuZGNzbmFtZX9leHBhbmRhZnRlcgExMjg0LDQyMTM3CitcZXhwYW5kYWZ0ZXJcbGV0XGNzbmFt ZSMxaW5kZmlsZVxlbmRjc25hbWU9XHN5bmluZGV4Zm9vf2NzbmFtZQExMjg1LDQyMjE3CitcZXhw YW5kYWZ0ZXJceGRlZlxjc25hbWUjMWluZGV4XGVuZGNzbmFtZXt/Y3NuYW1lATEyODYsNDIyNzMK K1xkZWZcc3luY29kZWluZGV4ICMxICMyIHt/c3luY29kZWluZGV4ATEyOTIsNDI0NTQKK1xleHBh bmRhZnRlclxsZXRcZXhwYW5kYWZ0ZXJcc3luaW5kZXhmb29cZXhwYW5kYWZ0ZXI9XGNzbmFtZSMy aW5kZmlsZVxlbmRjc25hbWV/ZXhwYW5kYWZ0ZXIBMTI5Myw0MjQ4MQorXGV4cGFuZGFmdGVyXGxl dFxjc25hbWUjMWluZGZpbGVcZW5kY3NuYW1lPVxzeW5pbmRleGZvb39jc25hbWUBMTI5NCw0MjU2 MQorXGV4cGFuZGFmdGVyXHhkZWZcY3NuYW1lIzFpbmRleFxlbmRjc25hbWV7f2NzbmFtZQExMjk1 LDQyNjE3CitcZGVmXGRvaW5kZXgjMXt/ZG9pbmRleAExMzA5LDQzMTMzCitcZGVmXGRvaW5kZXgj MXtcZWRlZlxpbmRleG5hbWV7f2luZGV4bmFtZQExMzA5LDQzMTMzCitcZGVmXHNpbmdsZWluZGV4 ZXIgIzF7f3NpbmdsZWluZGV4ZXIBMTMxMCw0MzE5MgorXGRlZlxzaW5nbGVpbmRleGVyICMxe1xk b2luZHtcaW5kZXhuYW1lfX9uYW1lATEzMTAsNDMxOTIKK1xkZWZcZG9jb2RlaW5kZXgjMXt/ZG9j b2RlaW5kZXgBMTMxMyw0MzMwNAorXGRlZlxkb2NvZGVpbmRleCMxe1xlZGVmXGluZGV4bmFtZXt/ aW5kZXhuYW1lATEzMTMsNDMzMDQKK1xkZWZcc2luZ2xlY29kZWluZGV4ZXIgIzF7f3NpbmdsZWNv ZGVpbmRleGVyATEzMTQsNDMzNzEKK1xkZWZcc2luZ2xlY29kZWluZGV4ZXIgIzF7XGRvaW5ke1xp bmRleG5hbWV9f25hbWUBMTMxNCw0MzM3MQorXGRlZlxpbmRleGR1bW1pZXN7f2luZGV4ZHVtbWll cwExMzE2LDQzNDI5CitcZGVmXF97f18BMTMxNyw0MzQ0OQorXGRlZlx3e393ATEzMTgsNDM0NzcK K1xkZWZcYmZ7f2JmATEzMTksNDM1MDQKK1xkZWZccm17f3JtATEzMjAsNDM1MzMKK1xkZWZcc2x7 f3NsATEzMjEsNDM1NjIKK1xkZWZcc2Z7f3NmATEzMjIsNDM1OTEKK1xkZWZcdHR7f3R0ATEzMjMs NDM2MTkKK1xkZWZcZ3Rye39ndHIBMTMyNCw0MzY0NworXGRlZlxsZXNze39sZXNzATEzMjUsNDM2 NzcKK1xkZWZcaGF0e39oYXQBMTMyNiw0MzcwOQorXGRlZlxjaGFye39jaGFyATEzMjcsNDM3MzkK K1xkZWZcVGVYe39UZVgBMTMyOCw0Mzc3MQorXGRlZlxkb3Rze39kb3RzATEzMjksNDM4MDEKK1xk ZWZcY29weXJpZ2h0e39jb3B5cmlnaHQBMTMzMCw0MzgzNAorXGRlZlx0Y2xvc2UjIzF7f3RjbG9z ZQExMzMxLDQzODc3CitcZGVmXGNvZGUjIzF7f2NvZGUBMTMzMiw0MzkyMgorXGRlZlxzYW1wIyMx e39zYW1wATEzMzMsNDM5NjMKK1xkZWZcdCMjMXt/dAExMzM0LDQ0MDA0CitcZGVmXHIjIzF7f3IB MTMzNSw0NDAzOQorXGRlZlxpIyMxe39pATEzMzYsNDQwNzQKK1xkZWZcYiMjMXt/YgExMzM3LDQ0 MTA5CitcZGVmXGNpdGUjIzF7f2NpdGUBMTMzOCw0NDE0NAorXGRlZlxrZXkjIzF7f2tleQExMzM5 LDQ0MTg1CitcZGVmXGZpbGUjIzF7f2ZpbGUBMTM0MCw0NDIyNAorXGRlZlx2YXIjIzF7f3ZhcgEx MzQxLDQ0MjY1CitcZGVmXGtiZCMjMXt/a2JkATEzNDIsNDQzMDQKK1xkZWZcaW5kZXhkdW1teWZv bnQjMXt/aW5kZXhkdW1teWZvbnQBMTM0Nyw0NDQ2MAorXGRlZlxpbmRleGR1bW15dGV4e39pbmRl eGR1bW15dGV4ATEzNDgsNDQ0ODYKK1xkZWZcaW5kZXhkdW1teWRvdHN7f2luZGV4ZHVtbXlkb3Rz ATEzNDksNDQ1MTAKK1xkZWZcaW5kZXhub2ZvbnRze39pbmRleG5vZm9udHMBMTM1MSw0NDUzNgor XGxldFx3PVxpbmRleGR1bW15Zm9udH93ATEzNTIsNDQ1NTYKIFxsZXRcdz1caW5kZXhkdW1teWZv bnR/ZHVtbXlmb250ATEzNTIsNDQ1NTYKK1xsZXRcdD1caW5kZXhkdW1teWZvbnR/dAExMzUzLDQ0 NTc5CiBcbGV0XHQ9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9udAExMzUzLDQ0NTc5CitcbGV0XHI9 XGluZGV4ZHVtbXlmb250f3IBMTM1NCw0NDYwMgogXGxldFxyPVxpbmRleGR1bW15Zm9udH9kdW1t eWZvbnQBMTM1NCw0NDYwMgorXGxldFxpPVxpbmRleGR1bW15Zm9udH9pATEzNTUsNDQ2MjUKIFxs ZXRcaT1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNTUsNDQ2MjUKK1xsZXRcYj1caW5kZXhk dW1teWZvbnR/YgExMzU2LDQ0NjQ4CiBcbGV0XGI9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9udAEx MzU2LDQ0NjQ4CitcbGV0XGVtcGg9XGluZGV4ZHVtbXlmb250f2VtcGgBMTM1Nyw0NDY3MQogXGxl dFxlbXBoPVxpbmRleGR1bW15Zm9udH9kdW1teWZvbnQBMTM1Nyw0NDY3MQorXGxldFxzdHJvbmc9 XGluZGV4ZHVtbXlmb250f3N0cm9uZwExMzU4LDQ0Njk3CiBcbGV0XHN0cm9uZz1caW5kZXhkdW1t eWZvbnR/ZHVtbXlmb250ATEzNTgsNDQ2OTcKLVxsZXRcY2l0ZT1caW5kZXhkdW1teWZvbnR/PVxp bmRleGR1bW15Zm9udAExMzU5LDQ0NzI1CitcbGV0XGNpdGU9XGluZGV4ZHVtbXlmb250f2NpdGUB MTM1OSw0NDcyNQorXGxldFxjaXRlPVxpbmRleGR1bW15Zm9udH9kdW1teWZvbnQBMTM1OSw0NDcy NQorXGxldFxzYz1caW5kZXhkdW1teWZvbnR/c2MBMTM2MCw0NDc1MQogXGxldFxzYz1caW5kZXhk dW1teWZvbnR/ZHVtbXlmb250ATEzNjAsNDQ3NTEKK1xsZXRcdGNsb3NlPVxpbmRleGR1bW15Zm9u dH90Y2xvc2UBMTM2NCw0NDkyMwogXGxldFx0Y2xvc2U9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9u dAExMzY0LDQ0OTIzCitcbGV0XGNvZGU9XGluZGV4ZHVtbXlmb250f2NvZGUBMTM2NSw0NDk1MQog XGxldFxjb2RlPVxpbmRleGR1bW15Zm9udH9kdW1teWZvbnQBMTM2NSw0NDk1MQorXGxldFxmaWxl PVxpbmRleGR1bW15Zm9udH9maWxlATEzNjYsNDQ5NzcKIFxsZXRcZmlsZT1caW5kZXhkdW1teWZv bnR/ZHVtbXlmb250ATEzNjYsNDQ5NzcKK1xsZXRcc2FtcD1caW5kZXhkdW1teWZvbnR/c2FtcAEx MzY3LDQ1MDAzCiBcbGV0XHNhbXA9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9udAExMzY3LDQ1MDAz CitcbGV0XGtiZD1caW5kZXhkdW1teWZvbnR/a2JkATEzNjgsNDUwMjkKIFxsZXRca2JkPVxpbmRl eGR1bW15Zm9udH9kdW1teWZvbnQBMTM2OCw0NTAyOQorXGxldFxrZXk9XGluZGV4ZHVtbXlmb250 f2tleQExMzY5LDQ1MDU0CiBcbGV0XGtleT1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNjks NDUwNTQKK1xsZXRcdmFyPVxpbmRleGR1bW15Zm9udH92YXIBMTM3MCw0NTA3OQogXGxldFx2YXI9 XGluZGV4ZHVtbXlmb250f2R1bW15Zm9udAExMzcwLDQ1MDc5CitcbGV0XFRlWD1caW5kZXhkdW1t eXRleH9UZVgBMTM3MSw0NTEwNAogXGxldFxUZVg9XGluZGV4ZHVtbXl0ZXh/ZHVtbXl0ZXgBMTM3 MSw0NTEwNAorXGxldFxkb3RzPVxpbmRleGR1bW15ZG90c39kb3RzATEzNzIsNDUxMjgKIFxsZXRc ZG90cz1caW5kZXhkdW1teWRvdHN/ZHVtbXlkb3RzATEzNzIsNDUxMjgKLVxsZXRcaW5kZXhiYWNr c2xhc2g9MCAgJW92ZXJyaWRkZW4gZHVyaW5nIFxwcmludGluZGV4Ln9iYWNrc2xhc2g9MAExMzgy LDQ1MzgwCi1cZGVmXGRvaW5kICMxIzJ7f1xkb2luZAExMzg0LDQ1NDM2CitcbGV0XGluZGV4YmFj a3NsYXNoPTAgICVvdmVycmlkZGVuIGR1cmluZyBccHJpbnRpbmRleC5/aW5kZXhiYWNrc2xhc2gB MTM4Miw0NTM4MAorXGRlZlxkb2luZCAjMSMye39kb2luZAExMzg0LDQ1NDM2CiB7XGluZGV4ZHVt bWllcyAlIE11c3QgZG8gdGhpcyBoZXJlLCBzaW5jZSBcYmYsIGV0YyBleHBhbmQgYXQgdGhpcyBz dGFnZX9kdW1taWVzATEzODYsNDU0NzkKLVxkZWZccmF3YmFja3NsYXNoeHh7f1xyYXdiYWNrc2xh c2h4eAExMzg5LDQ1NjE5Cit7XGxldFxmb2xpbz0wJSBFeHBhbmQgYWxsIG1hY3JvcyBub3cgRVhD RVBUIFxmb2xpb39mb2xpbwExMzg4LDQ1NTY4CitcZGVmXHJhd2JhY2tzbGFzaHh4e39yYXdiYWNr c2xhc2h4eAExMzg5LDQ1NjE5CitcZGVmXHJhd2JhY2tzbGFzaHh4e1xpbmRleGJhY2tzbGFzaH1/ YmFja3NsYXNoATEzODksNDU2MTkKIHtcaW5kZXhub2ZvbnRzf25vZm9udHMBMTM5NCw0NTg4MQot XGRlZlxkb3N1YmluZCAjMSMyIzN7f1xkb3N1YmluZAExNDA1LDQ2MTkyCitceGRlZlx0ZW1wMXt/ dGVtcDEBMTM5NSw0NTg5NgorXGVkZWZcdGVtcHt/dGVtcAExMzk5LDQ2MDY4CitcZGVmXGRvc3Vi aW5kICMxIzIjM3t/ZG9zdWJpbmQBMTQwNSw0NjE5Mgoge1xpbmRleGR1bW1pZXMgJSBNdXN0IGRv IHRoaXMgaGVyZSwgc2luY2UgXGJmLCBldGMgZXhwYW5kIGF0IHRoaXMgc3RhZ2V/ZHVtbWllcwEx NDA3LDQ2MjQwCi1cZGVmXHJhd2JhY2tzbGFzaHh4e39ccmF3YmFja3NsYXNoeHgBMTQxMCw0NjM0 NAore1xsZXRcZm9saW89MCV/Zm9saW8BMTQwOSw0NjMyOQorXGRlZlxyYXdiYWNrc2xhc2h4eHt/ cmF3YmFja3NsYXNoeHgBMTQxMCw0NjM0NAorXGRlZlxyYXdiYWNrc2xhc2h4eHtcaW5kZXhiYWNr c2xhc2h9f2JhY2tzbGFzaAExNDEwLDQ2MzQ0CiB7XGluZGV4bm9mb250c39ub2ZvbnRzATE0MTQs NDY0OTgKLVxkZWZcZmluZGV4IHt/XGZpbmRleAExNDQzLDQ3NDI5Ci1cZGVmXGtpbmRleCB7f1xr aW5kZXgBMTQ0NCw0NzQ1MgotXGRlZlxjaW5kZXgge39cY2luZGV4ATE0NDUsNDc0NzUKLVxkZWZc dmluZGV4IHt/XHZpbmRleAExNDQ2LDQ3NDk4Ci1cZGVmXHRpbmRleCB7f1x0aW5kZXgBMTQ0Nyw0 NzUyMQotXGRlZlxwaW5kZXgge39ccGluZGV4ATE0NDgsNDc1NDQKLVxkZWZcY2luZGV4c3ViIHt/ XGNpbmRleHN1YgExNDUwLDQ3NTY4Ci1cZGVmXHByaW50aW5kZXh7f1xwcmludGluZGV4ATE0NjIs NDc4OTUKLVxkZWZcZG9wcmludGluZGV4IzF7f1xkb3ByaW50aW5kZXgBMTQ2NCw0NzkzNgotICBc ZGVmXGluZGV4YmFja3NsYXNoe39caW5kZXhiYWNrc2xhc2gBMTQ4MSw0ODQyMQorXHhkZWZcdGVt cDF7f3RlbXAxATE0MTUsNDY1MTMKK1xlZGVmXHRlbXB7f3RlbXABMTQxOSw0NjY4OAorXGRlZlxm aW5kZXgge39maW5kZXgBMTQ0Myw0NzQyOQorXGRlZlxraW5kZXgge39raW5kZXgBMTQ0NCw0NzQ1 MgorXGRlZlxjaW5kZXgge39jaW5kZXgBMTQ0NSw0NzQ3NQorXGRlZlx2aW5kZXgge392aW5kZXgB MTQ0Niw0NzQ5OAorXGRlZlx0aW5kZXgge390aW5kZXgBMTQ0Nyw0NzUyMQorXGRlZlxwaW5kZXgg e39waW5kZXgBMTQ0OCw0NzU0NAorXGRlZlxjaW5kZXhzdWIge39jaW5kZXhzdWIBMTQ1MCw0NzU2 OAorXGdkZWZcY2luZGV4c3ViICIjMSIgIzJeXk17f2NpbmRleHN1YgExNDUyLDQ3NjMxCitcZGVm XHByaW50aW5kZXh7f3ByaW50aW5kZXgBMTQ2Miw0Nzg5NQorXGRlZlxkb3ByaW50aW5kZXgjMXt/ ZG9wcmludGluZGV4ATE0NjQsNDc5MzYKKyAgXGRlZlxpbmRleGJhY2tzbGFzaHt/aW5kZXhiYWNr c2xhc2gBMTQ4MSw0ODQyMQogICBcaW5kZXhmb250c1xybSBcdG9sZXJhbmNlPTk1MDAgXGFkdmFu Y2VcYmFzZWxpbmVza2lwIC0xcHR/Zm9udHNccm0BMTQ4Miw0ODQ2MAotXGRlZlxpbml0aWFsICMx e39caW5pdGlhbAExNTE3LDQ5NTMyCi1cZGVmXGVudHJ5ICMxIzJ7f1xlbnRyeQExNTIzLDQ5NzM5 CitcZGVmXGluaXRpYWwgIzF7f2luaXRpYWwBMTUxNyw0OTUzMgore1xsZXRcdGVudHQ9XHNlY3R0 IFxsZXRcdHQ9XHNlY3R0IFxsZXRcc2Y9XHNlY3R0f3RlbnR0ATE1MTgsNDk1NTAKK3tcbGV0XHRl bnR0PVxzZWN0dCBcbGV0XHR0PVxzZWN0dCBcbGV0XHNmPVxzZWN0dH90dAExNTE4LDQ5NTUwCit7 XGxldFx0ZW50dD1cc2VjdHQgXGxldFx0dD1cc2VjdHQgXGxldFxzZj1cc2VjdHR/c2YBMTUxOCw0 OTU1MAorXGRlZlxlbnRyeSAjMSMye39lbnRyeQExNTIzLDQ5NzM5CiAgIFxudWxsXG5vYnJlYWtc aW5kZXhkb3RmaWxsICUgSGF2ZSBsZWFkZXJzIGJlZm9yZSB0aGUgcGFnZSBudW1iZXIuf2RvdGZp bGwBMTU0MCw1MDM4NgotXGRlZlxpbmRleGRvdGZpbGx7f1xpbmRleGRvdGZpbGwBMTU0OSw1MDcx NAotXGRlZlxwcmltYXJ5ICMxe39ccHJpbWFyeQExNTUyLDUwODIwCi1cZGVmXHNlY29uZGFyeSAj MSMye39cc2Vjb25kYXJ5ATE1NTYsNTA5MDIKK1xkZWZcaW5kZXhkb3RmaWxse39pbmRleGRvdGZp bGwBMTU0OSw1MDcxNAorXGRlZlxwcmltYXJ5ICMxe39wcmltYXJ5ATE1NTIsNTA4MjAKK1xkZWZc c2Vjb25kYXJ5ICMxIzJ7f3NlY29uZGFyeQExNTU2LDUwOTAyCiBcbm9pbmRlbnRcaHNraXBcc2Vj b25kYXJ5aW5kZW50XGhib3h7IzF9XGluZGV4ZG90ZmlsbCAjMlxwYXJ/ZG90ZmlsbAExNTU5LDUw OTg0CiBcbmV3Ym94XHBhcnRpYWxwYWdlf2lhbHBhZ2UBMTU2Niw1MTE1NwotXGRlZlxiZWdpbmRv dWJsZWNvbHVtbnN7f1xiZWdpbmRvdWJsZWNvbHVtbnMBMTU3Miw1MTMxNQotICBcb3V0cHV0PXtc Z2xvYmFsXHNldGJveFxwYXJ0aWFscGFnZT1/aWFscGFnZT0BMTU3Myw1MTM1MQotXGRlZlxlbmRk b3VibGVjb2x1bW5ze39cZW5kZG91YmxlY29sdW1ucwExNTc3LDUxNTM5Ci1cZGVmXGRvdWJsZWNv bHVtbm91dHt/XGRvdWJsZWNvbHVtbm91dAExNTgwLDUxNjI0CitcZGVmXGJlZ2luZG91YmxlY29s dW1uc3t/YmVnaW5kb3VibGVjb2x1bW5zATE1NzIsNTEzMTUKKyAgXG91dHB1dD17XGdsb2JhbFxz ZXRib3hccGFydGlhbHBhZ2U9f2lhbHBhZ2UBMTU3Myw1MTM1MQorXGRlZlxlbmRkb3VibGVjb2x1 bW5ze39lbmRkb3VibGVjb2x1bW5zATE1NzcsNTE1MzkKK1xkZWZcZG91YmxlY29sdW1ub3V0e39k b3VibGVjb2x1bW5vdXQBMTU4MCw1MTYyNAogICBcZGltZW5APVxwYWdlaGVpZ2h0IFxhZHZhbmNl XGRpbWVuQCBieS1caHRccGFydGlhbHBhZ2V/aWFscGFnZQExNTgxLDUxNjkzCi1cZGVmXHBhZ2Vz b2Zhcnt/XHBhZ2Vzb2ZhcgExNTg0LDUxODcxCi1cZGVmXGJhbGFuY2Vjb2x1bW5ze39cYmFsYW5j ZWNvbHVtbnMBMTU4OCw1MjEwOAorXGRlZlxwYWdlc29mYXJ7f3BhZ2Vzb2ZhcgExNTg0LDUxODcx CitcZGVmXHBhZ2Vzb2ZhcntcdW52Ym94XHBhcnRpYWxwYWdlICV/aWFscGFnZQExNTg0LDUxODcx CitcZGVmXGJhbGFuY2Vjb2x1bW5ze39iYWxhbmNlY29sdW1ucwExNTg4LDUyMTA4CiAgIFxhdmFp bGRpbWVuQD1ccGFnZWhlaWdodCBcYWR2YW5jZVxhdmFpbGRpbWVuQCBieS1caHRccGFydGlhbHBh Z2V/aWFscGFnZQExNTk0LDUyMjc5CiAgICAgIFxkaW1lbkA9XHBhZ2VoZWlnaHQgXGFkdmFuY2Vc ZGltZW5AIGJ5LVxodFxwYXJ0aWFscGFnZX9pYWxwYWdlATE2MDAsNTI1NDAKIFxuZXdjb3VudCBc YXBwZW5kaXhubyAgXGFwcGVuZGl4bm8gPSBgXEB/bm8BMTYyNyw1MzQ0NQotXGRlZlxhcHBlbmRp eGxldHRlcnt/XGFwcGVuZGl4bGV0dGVyATE2MjgsNTM0ODYKLVxkZWZcb3BlbmNvbnRlbnRze39c b3BlbmNvbnRlbnRzATE2MzIsNTM1ODkKLVxkZWZcdGhpc2NoYXB0ZXJ7f1x0aGlzY2hhcHRlcgEx NjM3LDUzNzcwCi1cZGVmXHNlY2NoZWNrIzF7f1xzZWNjaGVjawExNjM4LDUzODA4Ci1cZGVmXGNo YXB0ZXJub2ZvbnRze39cY2hhcHRlcm5vZm9udHMBMTY0Myw1MzkxMgotXGRlZlxyZXN1bHR7f1xy ZXN1bHQBMTY0Niw1Mzk4NwotXGRlZlxlcXVpdnt/XGVxdWl2ATE2NDcsNTQwMjIKLVxkZWZcZXhw YW5zaW9ue39cZXhwYW5zaW9uATE2NDgsNTQwNTUKLVxkZWZccHJpbnR7f1xwcmludAExNjQ5LDU0 MDk2Ci1cZGVmXFRlWHt/XFRlWAExNjUwLDU0MTI5Ci1cZGVmXGRvdHN7f1xkb3RzATE2NTEsNTQx NTgKLVxkZWZcY29weXJpZ2h0e39cY29weXJpZ2h0ATE2NTIsNTQxODkKLVxkZWZcdHR7f1x0dAEx NjUzLDU0MjMwCi1cZGVmXGJme39cYmYBMTY1NCw1NDI1NwotXGRlZlx3e39cdwExNjU1LDU0Mjg1 Ci1cZGVmXGxlc3N7f1xsZXNzATE2NTYsNTQzMTAKLVxkZWZcZ3Rye39cZ3RyATE2NTcsNTQzNDEK LVxkZWZcaGF0e39caGF0ATE2NTgsNTQzNzAKLVxkZWZcY2hhcnt/XGNoYXIBMTY1OSw1NDM5OQot XGRlZlx0Y2xvc2UjIzF7f1x0Y2xvc2UBMTY2MCw1NDQzMAotXGRlZlxjb2RlIyMxe39cY29kZQEx NjYxLDU0NDc0Ci1cZGVmXHNhbXAjIzF7f1xzYW1wATE2NjIsNTQ1MTQKLVxkZWZcciMjMXt/XHIB MTY2Myw1NDU1NAotXGRlZlxiIyMxe39cYgExNjY0LDU0NTg4Ci1cZGVmXGtleSMjMXt/XGtleQEx NjY1LDU0NjIyCi1cZGVmXGZpbGUjIzF7f1xmaWxlATE2NjYsNTQ2NjAKLVxkZWZca2JkIyMxe39c a2JkATE2NjcsNTQ3MDAKLVxkZWZcaSMjMXt/XGkBMTY2OSw1NDgwOAotXGRlZlxjaXRlIyMxe39c Y2l0ZQExNjcwLDU0ODQyCi1cZGVmXHZhciMjMXt/XHZhcgExNjcxLDU0ODgyCi1cZGVmXGVtcGgj IzF7f1xlbXBoATE2NzIsNTQ5MjAKLVxkZWZcZGZuIyMxe39cZGZuATE2NzMsNTQ5NjAKLVxkZWZc dGhpc2NoYXB0ZXJuYW1le39cdGhpc2NoYXB0ZXJuYW1lATE2NzYsNTUwMDEKLVxvdXRlclxkZWZc Y2hhcHRlcnt/XGNoYXB0ZXIBMTY3Nyw1NTA0MAotXGRlZlxjaGFwdGVyenp6ICMxe39cY2hhcHRl cnp6egExNjc4LDU1MDgxCi17XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzJQExNjg3LDU1NDc3Ci1c Z2xvYmFsXGxldFxzZWN0aW9uID0gXG51bWJlcmVkc2Vjfz0BMTY5Miw1NTYzMAotXGdsb2JhbFxs ZXRcc3Vic2VjdGlvbiA9IFxudW1iZXJlZHN1YnNlY389ATE2OTMsNTU2NjUKLVxnbG9iYWxcbGV0 XHN1YnN1YnNlY3Rpb24gPSBcbnVtYmVyZWRzdWJzdWJzZWN/PQExNjk0LDU1NzA2Ci1cb3V0ZXJc ZGVmXGFwcGVuZGl4e39cYXBwZW5kaXgBMTY5Nyw1NTc1NwotXGRlZlxhcHBlbmRpeHp6eiAjMXt/ XGFwcGVuZGl4enp6ATE2OTgsNTU4MDAKK1xuZXdjb3VudCBcYXBwZW5kaXhubyAgXGFwcGVuZGl4 bm8gPSBgXEB/bm8BMTYyNyw1MzQ0NQorXGRlZlxhcHBlbmRpeGxldHRlcnt/YXBwZW5kaXhsZXR0 ZXIBMTYyOCw1MzQ4NgorXGRlZlxhcHBlbmRpeGxldHRlcntcY2hhclx0aGVcYXBwZW5kaXhub31/ bm8BMTYyOCw1MzQ4NgorXGRlZlxvcGVuY29udGVudHN7f29wZW5jb250ZW50cwExNjMyLDUzNTg5 CitcZGVmXHRoaXNjaGFwdGVye390aGlzY2hhcHRlcgExNjM3LDUzNzcwCitcZGVmXHRoaXNjaGFw dGVye30gXGRlZlx0aGlzc2VjdGlvbnt/dGhpc3NlY3Rpb24BMTYzNyw1Mzc3MAorXGRlZlxzZWNj aGVjayMxe39zZWNjaGVjawExNjM4LDUzODA4CitcZGVmXGNoYXB0ZXJub2ZvbnRze39jaGFwdGVy bm9mb250cwExNjQzLDUzOTEyCitcbGV0XHJhd2JhY2tzbGFzaD1ccmVsYXglf3Jhd2JhY2tzbGFz aAExNjQ0LDUzOTM0CitcbGV0XGZyZW5jaHNwYWNpbmc9XHJlbGF4JX9mcmVuY2hzcGFjaW5nATE2 NDUsNTM5NjAKK1xkZWZccmVzdWx0e39yZXN1bHQBMTY0Niw1Mzk4NworXGRlZlxlcXVpdnt/ZXF1 aXYBMTY0Nyw1NDAyMgorXGRlZlxleHBhbnNpb257f2V4cGFuc2lvbgExNjQ4LDU0MDU1CitcZGVm XHByaW50e39wcmludAExNjQ5LDU0MDk2CitcZGVmXFRlWHt/VGVYATE2NTAsNTQxMjkKK1xkZWZc ZG90c3t/ZG90cwExNjUxLDU0MTU4CitcZGVmXGNvcHlyaWdodHt/Y29weXJpZ2h0ATE2NTIsNTQx ODkKK1xkZWZcdHR7f3R0ATE2NTMsNTQyMzAKK1xkZWZcYmZ7f2JmATE2NTQsNTQyNTcKK1xkZWZc d3t/dwExNjU1LDU0Mjg1CitcZGVmXGxlc3N7f2xlc3MBMTY1Niw1NDMxMAorXGRlZlxndHJ7f2d0 cgExNjU3LDU0MzQxCitcZGVmXGhhdHt/aGF0ATE2NTgsNTQzNzAKK1xkZWZcY2hhcnt/Y2hhcgEx NjU5LDU0Mzk5CitcZGVmXHRjbG9zZSMjMXt/dGNsb3NlATE2NjAsNTQ0MzAKK1xkZWZcY29kZSMj MXt/Y29kZQExNjYxLDU0NDc0CitcZGVmXHNhbXAjIzF7f3NhbXABMTY2Miw1NDUxNAorXGRlZlxy IyMxe39yATE2NjMsNTQ1NTQKK1xkZWZcYiMjMXt/YgExNjY0LDU0NTg4CitcZGVmXGtleSMjMXt/ a2V5ATE2NjUsNTQ2MjIKK1xkZWZcZmlsZSMjMXt/ZmlsZQExNjY2LDU0NjYwCitcZGVmXGtiZCMj MXt/a2JkATE2NjcsNTQ3MDAKK1xkZWZcaSMjMXt/aQExNjY5LDU0ODA4CitcZGVmXGNpdGUjIzF7 f2NpdGUBMTY3MCw1NDg0MgorXGRlZlx2YXIjIzF7f3ZhcgExNjcxLDU0ODgyCitcZGVmXGVtcGgj IzF7f2VtcGgBMTY3Miw1NDkyMAorXGRlZlxkZm4jIzF7f2RmbgExNjczLDU0OTYwCitcZGVmXHRo aXNjaGFwdGVybmFtZXt/dGhpc2NoYXB0ZXJuYW1lATE2NzYsNTUwMDEKK1xvdXRlclxkZWZcY2hh cHRlcnt/Y2hhcHRlcgExNjc3LDU1MDQwCitcb3V0ZXJcZGVmXGNoYXB0ZXJ7XHBhcnNlYXJnXGNo YXB0ZXJ6enp9f3p6egExNjc3LDU1MDQwCitcZGVmXGNoYXB0ZXJ6enogIzF7f2NoYXB0ZXJ6enoB MTY3OCw1NTA4MQorXGdkZWZcdGhpc3NlY3Rpb257f3RoaXNzZWN0aW9uATE2ODIsNTUyNDYKK1xn ZGVmXHRoaXNjaGFwdGVybmFtZXt/dGhpc2NoYXB0ZXJuYW1lATE2ODMsNTUyNjkKK1x4ZGVmXHRo aXNjaGFwdGVye390aGlzY2hhcHRlcgExNjg2LDU1NDEwCit7XGNoYXB0ZXJub2ZvbnRzJX9ub2Zv bnRzATE2ODcsNTU0NzcKK1xlZGVmXHRlbXB7f3RlbXABMTY4OCw1NTQ5NQorXGdsb2JhbFxsZXRc c2VjdGlvbiA9IFxudW1iZXJlZHNlY39zZWN0aW9uATE2OTIsNTU2MzAKK1xnbG9iYWxcbGV0XHN1 YnNlY3Rpb24gPSBcbnVtYmVyZWRzdWJzZWN/c3Vic2VjdGlvbgExNjkzLDU1NjY1CitcZ2xvYmFs XGxldFxzdWJzdWJzZWN0aW9uID0gXG51bWJlcmVkc3Vic3Vic2Vjf3N1YnN1YnNlY3Rpb24BMTY5 NCw1NTcwNgorXG91dGVyXGRlZlxhcHBlbmRpeHt/YXBwZW5kaXgBMTY5Nyw1NTc1NworXG91dGVy XGRlZlxhcHBlbmRpeHtccGFyc2VhcmdcYXBwZW5kaXh6enp9f3p6egExNjk3LDU1NzU3CitcZGVm XGFwcGVuZGl4enp6ICMxe39hcHBlbmRpeHp6egExNjk4LDU1ODAwCiBcZ2xvYmFsXGFkdmFuY2Ug XGFwcGVuZGl4bm8gYnkgMSBcbWVzc2FnZXt/bm8BMTcwMCw1NTg3NworXGdsb2JhbFxhZHZhbmNl IFxhcHBlbmRpeG5vIGJ5IDEgXG1lc3NhZ2V7QXBwZW5kaXggXGFwcGVuZGl4bGV0dGVyfX9sZXR0 ZXIBMTcwMCw1NTg3NwogXGNoYXBtYWNybyB7IzF9e0FwcGVuZGl4IFxhcHBlbmRpeGxldHRlcn1/ bGV0dGVyATE3MDEsNTU5NDYKK1xnZGVmXHRoaXNzZWN0aW9ue390aGlzc2VjdGlvbgExNzAyLDU1 OTg5CitcZ2RlZlx0aGlzY2hhcHRlcm5hbWV7f3RoaXNjaGFwdGVybmFtZQExNzAzLDU2MDEyCitc eGRlZlx0aGlzY2hhcHRlcnt/dGhpc2NoYXB0ZXIBMTcwNCw1NjAzOQogXHhkZWZcdGhpc2NoYXB0 ZXJ7QXBwZW5kaXggXGFwcGVuZGl4bGV0dGVyOiBcbm9leHBhbmRcdGhpc2NoYXB0ZXJuYW1lfX9s ZXR0ZXI6ATE3MDQsNTYwMzkKLXtcY2hhcHRlcm5vZm9udHMlf25vZm9udHMlATE3MDUsNTYxMTEK K3tcY2hhcHRlcm5vZm9udHMlf25vZm9udHMBMTcwNSw1NjExMQorXGVkZWZcdGVtcHt/dGVtcAEx NzA2LDU2MTI5CiAgIHsjMX17QXBwZW5kaXggXGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIBMTcwNyw1 NjE2NwogXGFwcGVuZGl4bm9kZXJlZiAlf25vZGVyZWYBMTcxMCw1NjI2NwotXGdsb2JhbFxsZXRc c2VjdGlvbiA9IFxhcHBlbmRpeHNlY389ATE3MTEsNTYyODYKLVxnbG9iYWxcbGV0XHN1YnNlY3Rp b24gPSBcYXBwZW5kaXhzdWJzZWN/PQExNzEyLDU2MzIxCi1cZ2xvYmFsXGxldFxzdWJzdWJzZWN0 aW9uID0gXGFwcGVuZGl4c3Vic3Vic2Vjfz0BMTcxMyw1NjM2MgotXG91dGVyXGRlZlx0b3B7f1x0 b3ABMTcxNiw1NjQxMwotXG91dGVyXGRlZlx1bm51bWJlcmVke39cdW5udW1iZXJlZAExNzE3LDU2 NDUzCi1cZGVmXHVubnVtYmVyZWR6enogIzF7f1x1bm51bWJlcmVkenp6ATE3MTgsNTY1MDAKLXtc Y2hhcHRlcm5vZm9udHMlf25vZm9udHMlATE3MjIsNTY2NjMKLVxnbG9iYWxcbGV0XHNlY3Rpb24g PSBcdW5udW1iZXJlZHNlY389ATE3MjcsNTY4MTMKLVxnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBc dW5udW1iZXJlZHN1YnNlY389ATE3MjgsNTY4NTAKLVxnbG9iYWxcbGV0XHN1YnN1YnNlY3Rpb24g PSBcdW5udW1iZXJlZHN1YnN1YnNlY389ATE3MjksNTY4OTMKLVxvdXRlclxkZWZcbnVtYmVyZWRz ZWN7f1xudW1iZXJlZHNlYwExNzMyLDU2OTQ2Ci1cZGVmXHNlY3p6eiAjMXt/XHNlY3p6egExNzMz LDU2OTg3Ci17XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzJQExNzM2LDU3MTQzCi1cb3V0ZXJcZGVm XGFwcGVuZGl4c2VjdGlvbnt/XGFwcGVuZGl4c2VjdGlvbgExNzQ1LDU3MzI5Ci1cb3V0ZXJcZGVm XGFwcGVuZGl4c2Vje39cYXBwZW5kaXhzZWMBMTc0Niw1NzM4NgotXGRlZlxhcHBlbmRpeHNlY3Rp b256enogIzF7f1xhcHBlbmRpeHNlY3Rpb256enoBMTc0Nyw1NzQzOQorXGdsb2JhbFxsZXRcc2Vj dGlvbiA9IFxhcHBlbmRpeHNlY39zZWN0aW9uATE3MTEsNTYyODYKK1xnbG9iYWxcbGV0XHNlY3Rp b24gPSBcYXBwZW5kaXhzZWN/c2VjATE3MTEsNTYyODYKK1xnbG9iYWxcbGV0XHN1YnNlY3Rpb24g PSBcYXBwZW5kaXhzdWJzZWN/c3Vic2VjdGlvbgExNzEyLDU2MzIxCitcZ2xvYmFsXGxldFxzdWJz ZWN0aW9uID0gXGFwcGVuZGl4c3Vic2Vjf3N1YnNlYwExNzEyLDU2MzIxCitcZ2xvYmFsXGxldFxz dWJzdWJzZWN0aW9uID0gXGFwcGVuZGl4c3Vic3Vic2Vjf3N1YnN1YnNlY3Rpb24BMTcxMyw1NjM2 MgorXGdsb2JhbFxsZXRcc3Vic3Vic2VjdGlvbiA9IFxhcHBlbmRpeHN1YnN1YnNlY39zdWJzdWJz ZWMBMTcxMyw1NjM2MgorXG91dGVyXGRlZlx0b3B7f3RvcAExNzE2LDU2NDEzCitcb3V0ZXJcZGVm XHVubnVtYmVyZWR7f3VubnVtYmVyZWQBMTcxNyw1NjQ1MworXGRlZlx1bm51bWJlcmVkenp6ICMx e391bm51bWJlcmVkenp6ATE3MTgsNTY1MDAKK1xnZGVmXHRoaXNjaGFwdGVye390aGlzY2hhcHRl cgExNzIxLDU2NjE5CitcZ2RlZlx0aGlzY2hhcHRlcnsjMX1cZ2RlZlx0aGlzc2VjdGlvbnt/dGhp c3NlY3Rpb24BMTcyMSw1NjYxOQore1xjaGFwdGVybm9mb250cyV/bm9mb250cwExNzIyLDU2NjYz CitcZWRlZlx0ZW1we390ZW1wATE3MjMsNTY2ODEKK1xnbG9iYWxcbGV0XHNlY3Rpb24gPSBcdW5u dW1iZXJlZHNlY39zZWN0aW9uATE3MjcsNTY4MTMKK1xnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBc dW5udW1iZXJlZHN1YnNlY39zdWJzZWN0aW9uATE3MjgsNTY4NTAKK1xnbG9iYWxcbGV0XHN1YnN1 YnNlY3Rpb24gPSBcdW5udW1iZXJlZHN1YnN1YnNlY39zdWJzdWJzZWN0aW9uATE3MjksNTY4OTMK K1xvdXRlclxkZWZcbnVtYmVyZWRzZWN7f251bWJlcmVkc2VjATE3MzIsNTY5NDYKK1xkZWZcc2Vj enp6ICMxe39zZWN6enoBMTczMyw1Njk4NworXGdkZWZcdGhpc3NlY3Rpb257f3RoaXNzZWN0aW9u ATE3MzUsNTcwNzkKK3tcY2hhcHRlcm5vZm9udHMlf25vZm9udHMBMTczNiw1NzE0MworXGVkZWZc dGVtcHt/dGVtcAExNzM3LDU3MTYxCitcb3V0ZXJcZGVmXGFwcGVuZGl4c2VjdGlvbnt/YXBwZW5k aXhzZWN0aW9uATE3NDUsNTczMjkKK1xvdXRlclxkZWZcYXBwZW5kaXhzZWN0aW9ue1xwYXJzZWFy Z1xhcHBlbmRpeHNlY3Rpb256enp9f3NlY3Rpb256enoBMTc0NSw1NzMyOQorXG91dGVyXGRlZlxh cHBlbmRpeHNlY3t/YXBwZW5kaXhzZWMBMTc0Niw1NzM4NgorXG91dGVyXGRlZlxhcHBlbmRpeHNl Y3tccGFyc2VhcmdcYXBwZW5kaXhzZWN0aW9uenp6fX9zZWN0aW9uenp6ATE3NDYsNTczODYKK1xk ZWZcYXBwZW5kaXhzZWN0aW9uenp6ICMxe39hcHBlbmRpeHNlY3Rpb256enoBMTc0Nyw1NzQzOQor XGdkZWZcdGhpc3NlY3Rpb257f3RoaXNzZWN0aW9uATE3NDksNTc1NTEKIFxnZGVmXHRoaXNzZWN0 aW9ueyMxfVxzZWNoZWFkaW5nIHsjMX17XGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIBMTc0OSw1NzU1 MQote1xjaGFwdGVybm9mb250cyV/bm9mb250cyUBMTc1MCw1NzYxOQore1xjaGFwdGVybm9mb250 cyV/bm9mb250cwExNzUwLDU3NjE5CitcZWRlZlx0ZW1we390ZW1wATE3NTEsNTc2MzcKIHsjMX17 XGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIBMTc1Miw1NzY3NQogXGFwcGVuZGl4bm9kZXJlZiAlf25v ZGVyZWYBMTc1NSw1Nzc3NQotXG91dGVyXGRlZlx1bm51bWJlcmVkc2Vje39cdW5udW1iZXJlZHNl YwExNzU5LDU3ODE1Ci1cZGVmXHVubnVtYmVyZWRzZWN6enogIzF7f1x1bm51bWJlcmVkc2Vjenp6 ATE3NjAsNTc4NjgKLXtcY2hhcHRlcm5vZm9udHMlf25vZm9udHMlATE3NjIsNTc5NjMKLVxvdXRl clxkZWZcbnVtYmVyZWRzdWJzZWN7f1xudW1iZXJlZHN1YnNlYwExNzcwLDU4MTMxCi1cZGVmXG51 bWJlcmVkc3Vic2Vjenp6ICMxe39cbnVtYmVyZWRzdWJzZWN6enoBMTc3MSw1ODE4Ngote1xjaGFw dGVybm9mb250cyV/bm9mb250cyUBMTc3NCw1ODM2NQotXG91dGVyXGRlZlxhcHBlbmRpeHN1YnNl Y3t/XGFwcGVuZGl4c3Vic2VjATE3ODMsNTg1NjkKLVxkZWZcYXBwZW5kaXhzdWJzZWN6enogIzF7 f1xhcHBlbmRpeHN1YnNlY3p6egExNzg0LDU4NjI0Citcb3V0ZXJcZGVmXHVubnVtYmVyZWRzZWN7 f3VubnVtYmVyZWRzZWMBMTc1OSw1NzgxNQorXGRlZlx1bm51bWJlcmVkc2Vjenp6ICMxe391bm51 bWJlcmVkc2Vjenp6ATE3NjAsNTc4NjgKK1xwbGFpbnNlY2hlYWRpbmcgeyMxfVxnZGVmXHRoaXNz ZWN0aW9ue390aGlzc2VjdGlvbgExNzYxLDU3OTE5Cit7XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRz ATE3NjIsNTc5NjMKK1xlZGVmXHRlbXB7f3RlbXABMTc2Myw1Nzk4MQorXG91dGVyXGRlZlxudW1i ZXJlZHN1YnNlY3t/bnVtYmVyZWRzdWJzZWMBMTc3MCw1ODEzMQorXGRlZlxudW1iZXJlZHN1YnNl Y3p6eiAjMXt/bnVtYmVyZWRzdWJzZWN6enoBMTc3MSw1ODE4NgorXGdkZWZcdGhpc3NlY3Rpb257 f3RoaXNzZWN0aW9uATE3NzIsNTgyMzUKK3tcY2hhcHRlcm5vZm9udHMlf25vZm9udHMBMTc3NCw1 ODM2NQorXGVkZWZcdGVtcHt/dGVtcAExNzc1LDU4MzgzCitcb3V0ZXJcZGVmXGFwcGVuZGl4c3Vi c2Vje39hcHBlbmRpeHN1YnNlYwExNzgzLDU4NTY5Citcb3V0ZXJcZGVmXGFwcGVuZGl4c3Vic2Vj e1xwYXJzZWFyZ1xhcHBlbmRpeHN1YnNlY3p6en1/c3Vic2Vjenp6ATE3ODMsNTg1NjkKK1xkZWZc YXBwZW5kaXhzdWJzZWN6enogIzF7f2FwcGVuZGl4c3Vic2Vjenp6ATE3ODQsNTg2MjQKK1xnZGVm XHRoaXNzZWN0aW9ue390aGlzc2VjdGlvbgExNzg1LDU4Njc3CiBcc3Vic2VjaGVhZGluZyB7IzF9 e1xhcHBlbmRpeGxldHRlcn1/bGV0dGVyATE3ODYsNTg3NDYKLXtcY2hhcHRlcm5vZm9udHMlf25v Zm9udHMlATE3ODcsNTg4MTEKK3tcY2hhcHRlcm5vZm9udHMlf25vZm9udHMBMTc4Nyw1ODgxMQor XGVkZWZcdGVtcHt/dGVtcAExNzg4LDU4ODI5CiB7IzF9e1xhcHBlbmRpeGxldHRlcn1/bGV0dGVy ATE3ODksNTg4NzAKIFxhcHBlbmRpeG5vZGVyZWYgJX9ub2RlcmVmATE3OTIsNTg5ODUKLVxvdXRl clxkZWZcdW5udW1iZXJlZHN1YnNlY3t/XHVubnVtYmVyZWRzdWJzZWMBMTc5Niw1OTAyNQotXGRl Zlx1bm51bWJlcmVkc3Vic2Vjenp6ICMxe39cdW5udW1iZXJlZHN1YnNlY3p6egExNzk3LDU5MDg0 Ci17XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzJQExNzk5LDU5MTg1Ci1cb3V0ZXJcZGVmXG51bWJl cmVkc3Vic3Vic2Vje39cbnVtYmVyZWRzdWJzdWJzZWMBMTgwNyw1OTM1NgotXGRlZlxudW1iZXJl ZHN1YnN1YnNlY3p6eiAjMXt/XG51bWJlcmVkc3Vic3Vic2Vjenp6ATE4MDgsNTk0MTcKLXtcY2hh cHRlcm5vZm9udHMlf25vZm9udHMlATE4MTIsNTk2MTQKLVxvdXRlclxkZWZcYXBwZW5kaXhzdWJz dWJzZWN7f1xhcHBlbmRpeHN1YnN1YnNlYwExODIzLDU5ODQ3Ci1cZGVmXGFwcGVuZGl4c3Vic3Vi c2Vjenp6ICMxe39cYXBwZW5kaXhzdWJzdWJzZWN6enoBMTgyNCw1OTkwOAorXG91dGVyXGRlZlx1 bm51bWJlcmVkc3Vic2Vje391bm51bWJlcmVkc3Vic2VjATE3OTYsNTkwMjUKK1xkZWZcdW5udW1i ZXJlZHN1YnNlY3p6eiAjMXt/dW5udW1iZXJlZHN1YnNlY3p6egExNzk3LDU5MDg0CitccGxhaW5z ZWNoZWFkaW5nIHsjMX1cZ2RlZlx0aGlzc2VjdGlvbnt/dGhpc3NlY3Rpb24BMTc5OCw1OTE0MQor e1xjaGFwdGVybm9mb250cyV/bm9mb250cwExNzk5LDU5MTg1CitcZWRlZlx0ZW1we390ZW1wATE4 MDAsNTkyMDMKK1xvdXRlclxkZWZcbnVtYmVyZWRzdWJzdWJzZWN7f251bWJlcmVkc3Vic3Vic2Vj ATE4MDcsNTkzNTYKK1xkZWZcbnVtYmVyZWRzdWJzdWJzZWN6enogIzF7f251bWJlcmVkc3Vic3Vi c2Vjenp6ATE4MDgsNTk0MTcKK1xnZGVmXHRoaXNzZWN0aW9ue390aGlzc2VjdGlvbgExODA5LDU5 NDcyCit7XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzATE4MTIsNTk2MTQKK1xlZGVmXHRlbXB7f3Rl bXABMTgxMyw1OTYzMgorXG91dGVyXGRlZlxhcHBlbmRpeHN1YnN1YnNlY3t/YXBwZW5kaXhzdWJz dWJzZWMBMTgyMyw1OTg0NworXG91dGVyXGRlZlxhcHBlbmRpeHN1YnN1YnNlY3tccGFyc2Vhcmdc YXBwZW5kaXhzdWJzdWJzZWN6enp9f3N1YnN1YnNlY3p6egExODIzLDU5ODQ3CitcZGVmXGFwcGVu ZGl4c3Vic3Vic2Vjenp6ICMxe39hcHBlbmRpeHN1YnN1YnNlY3p6egExODI0LDU5OTA4CitcZ2Rl Zlx0aGlzc2VjdGlvbnt/dGhpc3NlY3Rpb24BMTgyNSw1OTk2NwogICB7XGFwcGVuZGl4bGV0dGVy fX9sZXR0ZXIBMTgyNyw2MDA0Nwote1xjaGFwdGVybm9mb250cyV/bm9mb250cyUBMTgyOCw2MDEx Mwore1xjaGFwdGVybm9mb250cyV/bm9mb250cwExODI4LDYwMTEzCitcZWRlZlx0ZW1we390ZW1w ATE4MjksNjAxMzEKICAge1xhcHBlbmRpeGxldHRlcn1/bGV0dGVyATE4MzAsNjAxNzgKIFxhcHBl bmRpeG5vZGVyZWYgJX9ub2RlcmVmATE4MzQsNjAzMTIKLVxvdXRlclxkZWZcdW5udW1iZXJlZHN1 YnN1YnNlY3t/XHVubnVtYmVyZWRzdWJzdWJzZWMBMTgzOCw2MDM1MgotXGRlZlx1bm51bWJlcmVk c3Vic3Vic2Vjenp6ICMxe39cdW5udW1iZXJlZHN1YnN1YnNlY3p6egExODM5LDYwNDE3Ci17XGNo YXB0ZXJub2ZvbnRzJX9ub2ZvbnRzJQExODQxLDYwNTI0Ci1cZGVmXGluZm90b3B7f1xpbmZvdG9w ATE4NTEsNjA4NTMKLVxkZWZcaW5mb3VubnVtYmVyZWR7f1xpbmZvdW5udW1iZXJlZAExODUyLDYw ODkxCi1cZGVmXGluZm91bm51bWJlcmVkc2Vje39caW5mb3VubnVtYmVyZWRzZWMBMTg1Myw2MDkz NgotXGRlZlxpbmZvdW5udW1iZXJlZHN1YnNlY3t/XGluZm91bm51bWJlcmVkc3Vic2VjATE4NTQs NjA5ODcKLVxkZWZcaW5mb3VubnVtYmVyZWRzdWJzdWJzZWN7f1xpbmZvdW5udW1iZXJlZHN1YnN1 YnNlYwExODU1LDYxMDQ0Ci1cZGVmXGluZm9hcHBlbmRpeHt/XGluZm9hcHBlbmRpeAExODU3LDYx MTA4Ci1cZGVmXGluZm9hcHBlbmRpeHNlY3t/XGluZm9hcHBlbmRpeHNlYwExODU4LDYxMTQ5Ci1c ZGVmXGluZm9hcHBlbmRpeHN1YnNlY3t/XGluZm9hcHBlbmRpeHN1YnNlYwExODU5LDYxMTk2Ci1c ZGVmXGluZm9hcHBlbmRpeHN1YnN1YnNlY3t/XGluZm9hcHBlbmRpeHN1YnN1YnNlYwExODYwLDYx MjQ5Ci1cZGVmXGluZm9jaGFwdGVye39caW5mb2NoYXB0ZXIBMTg2Miw2MTMwOQotXGRlZlxpbmZv c2VjdGlvbnt/XGluZm9zZWN0aW9uATE4NjMsNjEzNDgKLVxkZWZcaW5mb3N1YnNlY3Rpb257f1xp bmZvc3Vic2VjdGlvbgExODY0LDYxMzg3Ci1cZGVmXGluZm9zdWJzdWJzZWN0aW9ue39caW5mb3N1 YnN1YnNlY3Rpb24BMTg2NSw2MTQzMgotXGdsb2JhbFxsZXRcc2VjdGlvbiA9IFxudW1iZXJlZHNl Y389ATE4NzAsNjE2NjkKLVxnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcbnVtYmVyZWRzdWJzZWN/ PQExODcxLDYxNzA0Ci1cZ2xvYmFsXGxldFxzdWJzdWJzZWN0aW9uID0gXG51bWJlcmVkc3Vic3Vi c2Vjfz0BMTg3Miw2MTc0NQotXGRlZlxtYWpvcmhlYWRpbmd7f1xtYWpvcmhlYWRpbmcBMTg4Niw2 MjI1MgotXGRlZlxtYWpvcmhlYWRpbmd6enogIzF7f1xtYWpvcmhlYWRpbmd6enoBMTg4Nyw2MjI5 NwotXGRlZlxjaGFwaGVhZGluZ3t/XGNoYXBoZWFkaW5nATE4OTMsNjI1MzAKLVxkZWZcY2hhcGhl YWRpbmd6enogIzF7f1xjaGFwaGVhZGluZ3p6egExODk0LDYyNTczCi1cZGVmXGhlYWRpbmd7f1xo ZWFkaW5nATE4OTksNjI3NjgKLVxkZWZcc3ViaGVhZGluZ3t/XHN1YmhlYWRpbmcBMTkwMSw2Mjgw NQotXGRlZlxzdWJzdWJoZWFkaW5ne39cc3Vic3ViaGVhZGluZwExOTAzLDYyODQ4Ci1cZGVmXGRv YnJlYWsjMSMye39cZG9icmVhawExOTEwLDYzMTI1Ci1cZGVmXHNldGNoYXB0ZXJzdHlsZSAjMSB7 f1xzZXRjaGFwdGVyc3R5bGUBMTkxMiw2MzIwMwotXGRlZlxjaGFwYnJlYWt7f1xjaGFwYnJlYWsB MTkxOSw2MzQ1OAotXGRlZlxjaGFwcGFnZXJ7f1xjaGFwcGFnZXIBMTkyMCw2MzUwOAotXGRlZlxj aGFwb2RkcGFnZXt/XGNoYXBvZGRwYWdlATE5MjEsNjM1NDYKLVxkZWZcc2V0Y2hhcHRlcm5ld3Bh Z2UgIzEge39cc2V0Y2hhcHRlcm5ld3BhZ2UBMTkyMyw2MzYyNQotXGRlZlxDSEFQUEFHb2Zme39c Q0hBUFBBR29mZgExOTI1LDYzNjgyCi1cZGVmXENIQVBQQUdvbnt/XENIQVBQQUdvbgExOTI5LDYz Nzc2Ci1cZ2xvYmFsXGRlZlxIRUFESU5HU29ue39cSEVBRElOR1NvbgExOTMyLDYzODY3Ci1cZGVm XENIQVBQQUdvZGR7f1xDSEFQUEFHb2RkATE5MzQsNjM5MDkKLVxnbG9iYWxcZGVmXEhFQURJTkdT b257f1xIRUFESU5HU29uATE5MzcsNjQwMDUKLVxkZWZcQ0hBUEZwbGFpbnt/XENIQVBGcGxhaW4B MTk0MSw2NDA1OQotXGRlZlxjaGZwbGFpbiAjMSMye39cY2hmcGxhaW4BMTk0NSw2NDE1MQotXGRl Zlx1bm5jaGZwbGFpbiAjMXt/XHVubmNoZnBsYWluATE5NTYsNjQzNzQKLVxkZWZcdW5uY2hmb3Bl biAjMXt/XHVubmNoZm9wZW4BMTk2NCw2NDYwMwotXGRlZlxjaGZvcGVuICMxIzJ7f1xjaGZvcGVu ATE5NzAsNjQ4MTEKLVxkZWZcQ0hBUEZvcGVue39cQ0hBUEZvcGVuATE5NzUsNjQ5NTUKLVxkZWZc c3Vic2VjaGVhZGluZ2JyZWFre39cc3Vic2VjaGVhZGluZ2JyZWFrATE5ODIsNjUxNzMKLVxkZWZc c2VjaGVhZGluZ2JyZWFre39cc2VjaGVhZGluZ2JyZWFrATE5ODUsNjUzMDIKLVxkZWZcc2VjaGVh ZGluZyAjMSMyIzN7f1xzZWNoZWFkaW5nATE5OTMsNjU1ODQKLVxkZWZccGxhaW5zZWNoZWFkaW5n ICMxe39ccGxhaW5zZWNoZWFkaW5nATE5OTQsNjU2NDAKLVxkZWZcc2VjaGVhZGluZ2kgIzF7f1xz ZWNoZWFkaW5naQExOTk1LDY1NjgzCi1cZGVmXHN1YnNlY2hlYWRpbmcgIzEjMiMzIzR7f1xzdWJz ZWNoZWFkaW5nATIwMDYsNjYwNTEKLVxkZWZcc3Vic2VjaGVhZGluZ2kgIzF7f1xzdWJzZWNoZWFk aW5naQEyMDA3LDY2MTE4Ci1cZGVmXHN1YnN1YnNlY2ZvbnRze39cc3Vic3Vic2VjZm9udHMBMjAx NCw2NjQxNQotXGRlZlxzdWJzdWJzZWNoZWFkaW5nICMxIzIjMyM0IzV7f1xzdWJzdWJzZWNoZWFk aW5nATIwMTcsNjY1MzgKLVxkZWZcc3Vic3Vic2VjaGVhZGluZ2kgIzF7f1xzdWJzdWJzZWNoZWFk aW5naQEyMDE4LDY2NjE2Ci1cZGVmXHN0YXJ0Y29udGVudHMjMXt/XHN0YXJ0Y29udGVudHMBMjAz Miw2NzA4OAotICAgXHVubnVtYmNoYXBtYWNyb3sjMX1cZGVmXHRoaXNjaGFwdGVye39cdGhpc2No YXB0ZXIBMjA0MCw2NzM2MQotXG91dGVyXGRlZlxjb250ZW50c3t/XGNvbnRlbnRzATIwNDksNjc3 MjAKLVxvdXRlclxkZWZcc3VtbWFyeWNvbnRlbnRze39cc3VtbWFyeWNvbnRlbnRzATIwNTcsNjc4 NjQKLSAgICAgIFxkZWZcc2VjZW50cnkgIyMxIyMyIyMzIyM0e39cc2VjZW50cnkBMjA2Nyw2ODIz NQotICAgICAgXGRlZlx1bm51bWJzZWNlbnRyeSAjIzEjIzJ7f1x1bm51bWJzZWNlbnRyeQEyMDY4 LDY4MjcwCi0gICAgICBcZGVmXHN1YnNlY2VudHJ5ICMjMSMjMiMjMyMjNCMjNXt/XHN1YnNlY2Vu dHJ5ATIwNjksNjgzMDUKLSAgICAgIFxkZWZcdW5udW1ic3Vic2VjZW50cnkgIyMxIyMye39cdW5u dW1ic3Vic2VjZW50cnkBMjA3MCw2ODM0NgotICAgICAgXGRlZlxzdWJzdWJzZWNlbnRyeSAjIzEj IzIjIzMjIzQjIzUjIzZ7f1xzdWJzdWJzZWNlbnRyeQEyMDcxLDY4Mzg0Ci0gICAgICBcZGVmXHVu bnVtYnN1YnN1YnNlY2VudHJ5ICMjMSMjMnt/XHVubnVtYnN1YnN1YnNlY2VudHJ5ATIwNzIsNjg0 MzEKLVxkZWZcY2hhcGVudHJ5IzEjMiMze39cY2hhcGVudHJ5ATIwODUsNjg4NjUKLVxkZWZcc2hv cnRjaGFwZW50cnkjMSMyIzN7f1xzaG9ydGNoYXBlbnRyeQEyMDg4LDY4OTgyCitcb3V0ZXJcZGVm XHVubnVtYmVyZWRzdWJzdWJzZWN7f3VubnVtYmVyZWRzdWJzdWJzZWMBMTgzOCw2MDM1MgorXGRl Zlx1bm51bWJlcmVkc3Vic3Vic2Vjenp6ICMxe391bm51bWJlcmVkc3Vic3Vic2Vjenp6ATE4Mzks NjA0MTcKK1xwbGFpbnNlY2hlYWRpbmcgeyMxfVxnZGVmXHRoaXNzZWN0aW9ue390aGlzc2VjdGlv bgExODQwLDYwNDgwCit7XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzATE4NDEsNjA1MjQKK1xlZGVm XHRlbXB7f3RlbXABMTg0Miw2MDU0MgorXGRlZlxpbmZvdG9we39pbmZvdG9wATE4NTEsNjA4NTMK K1xkZWZcaW5mb3VubnVtYmVyZWR7f2luZm91bm51bWJlcmVkATE4NTIsNjA4OTEKK1xkZWZcaW5m b3VubnVtYmVyZWRzZWN7f2luZm91bm51bWJlcmVkc2VjATE4NTMsNjA5MzYKK1xkZWZcaW5mb3Vu bnVtYmVyZWRzdWJzZWN7f2luZm91bm51bWJlcmVkc3Vic2VjATE4NTQsNjA5ODcKK1xkZWZcaW5m b3VubnVtYmVyZWRzdWJzdWJzZWN7f2luZm91bm51bWJlcmVkc3Vic3Vic2VjATE4NTUsNjEwNDQK K1xkZWZcaW5mb2FwcGVuZGl4e39pbmZvYXBwZW5kaXgBMTg1Nyw2MTEwOAorXGRlZlxpbmZvYXBw ZW5kaXh7XHBhcnNlYXJnXGFwcGVuZGl4enp6fX96enoBMTg1Nyw2MTEwOAorXGRlZlxpbmZvYXBw ZW5kaXhzZWN7f2luZm9hcHBlbmRpeHNlYwExODU4LDYxMTQ5CitcZGVmXGluZm9hcHBlbmRpeHNl Y3tccGFyc2VhcmdcYXBwZW5kaXhzZWN6enp9f3NlY3p6egExODU4LDYxMTQ5CitcZGVmXGluZm9h cHBlbmRpeHN1YnNlY3t/aW5mb2FwcGVuZGl4c3Vic2VjATE4NTksNjExOTYKK1xkZWZcaW5mb2Fw cGVuZGl4c3Vic2Vje1xwYXJzZWFyZ1xhcHBlbmRpeHN1YnNlY3p6en1/c3Vic2Vjenp6ATE4NTks NjExOTYKK1xkZWZcaW5mb2FwcGVuZGl4c3Vic3Vic2Vje39pbmZvYXBwZW5kaXhzdWJzdWJzZWMB MTg2MCw2MTI0OQorXGRlZlxpbmZvYXBwZW5kaXhzdWJzdWJzZWN7XHBhcnNlYXJnXGFwcGVuZGl4 c3Vic3Vic2Vjenp6fX9zdWJzdWJzZWN6enoBMTg2MCw2MTI0OQorXGRlZlxpbmZvY2hhcHRlcnt/ aW5mb2NoYXB0ZXIBMTg2Miw2MTMwOQorXGRlZlxpbmZvY2hhcHRlcntccGFyc2VhcmdcY2hhcHRl cnp6en1/enp6ATE4NjIsNjEzMDkKK1xkZWZcaW5mb3NlY3Rpb257f2luZm9zZWN0aW9uATE4NjMs NjEzNDgKK1xkZWZcaW5mb3NlY3Rpb257XHBhcnNlYXJnXHNlY3Rpb256enp9f3p6egExODYzLDYx MzQ4CitcZGVmXGluZm9zdWJzZWN0aW9ue39pbmZvc3Vic2VjdGlvbgExODY0LDYxMzg3CitcZGVm XGluZm9zdWJzZWN0aW9ue1xwYXJzZWFyZ1xzdWJzZWN0aW9uenp6fX96enoBMTg2NCw2MTM4Nwor XGRlZlxpbmZvc3Vic3Vic2VjdGlvbnt/aW5mb3N1YnN1YnNlY3Rpb24BMTg2NSw2MTQzMgorXGRl ZlxpbmZvc3Vic3Vic2VjdGlvbntccGFyc2Vhcmdcc3Vic3Vic2VjdGlvbnp6en1/enp6ATE4NjUs NjE0MzIKK1xnbG9iYWxcbGV0XHNlY3Rpb24gPSBcbnVtYmVyZWRzZWN/c2VjdGlvbgExODcwLDYx NjY5CitcZ2xvYmFsXGxldFxzdWJzZWN0aW9uID0gXG51bWJlcmVkc3Vic2Vjf3N1YnNlY3Rpb24B MTg3MSw2MTcwNAorXGdsb2JhbFxsZXRcc3Vic3Vic2VjdGlvbiA9IFxudW1iZXJlZHN1YnN1YnNl Y39zdWJzdWJzZWN0aW9uATE4NzIsNjE3NDUKK1xkZWZcbWFqb3JoZWFkaW5ne39tYWpvcmhlYWRp bmcBMTg4Niw2MjI1MgorXGRlZlxtYWpvcmhlYWRpbmd6enogIzF7f21ham9yaGVhZGluZ3p6egEx ODg3LDYyMjk3CitcZGVmXGNoYXBoZWFkaW5ne39jaGFwaGVhZGluZwExODkzLDYyNTMwCitcZGVm XGNoYXBoZWFkaW5nenp6ICMxe39jaGFwaGVhZGluZ3p6egExODk0LDYyNTczCitcZGVmXGhlYWRp bmd7f2hlYWRpbmcBMTg5OSw2Mjc2OAorXGRlZlxzdWJoZWFkaW5ne39zdWJoZWFkaW5nATE5MDEs NjI4MDUKK1xkZWZcc3Vic3ViaGVhZGluZ3t/c3Vic3ViaGVhZGluZwExOTAzLDYyODQ4CitcZGVm XGRvYnJlYWsjMSMye39kb2JyZWFrATE5MTAsNjMxMjUKK1xkZWZcc2V0Y2hhcHRlcnN0eWxlICMx IHt/c2V0Y2hhcHRlcnN0eWxlATE5MTIsNjMyMDMKK1xkZWZcY2hhcGJyZWFre39jaGFwYnJlYWsB MTkxOSw2MzQ1OAorXGRlZlxjaGFwcGFnZXJ7f2NoYXBwYWdlcgExOTIwLDYzNTA4CitcZGVmXGNo YXBvZGRwYWdle39jaGFwb2RkcGFnZQExOTIxLDYzNTQ2CitcZGVmXHNldGNoYXB0ZXJuZXdwYWdl ICMxIHt/c2V0Y2hhcHRlcm5ld3BhZ2UBMTkyMyw2MzYyNQorXGRlZlxDSEFQUEFHb2Zme39DSEFQ UEFHb2ZmATE5MjUsNjM2ODIKK1xnbG9iYWxcbGV0XHBjaGFwc2VwbWFjcm89XGNoYXBicmVha39w Y2hhcHNlcG1hY3JvATE5MjYsNjM2OTkKK1xnbG9iYWxcbGV0XHBhZ2VhbGlnbm1hY3JvPVxjaGFw cGFnZXJ9f3BhZ2VhbGlnbm1hY3JvATE5MjcsNjM3MzYKK1xkZWZcQ0hBUFBBR29ue39DSEFQUEFH b24BMTkyOSw2Mzc3NgorXGdsb2JhbFxsZXRccGNoYXBzZXBtYWNybz1cY2hhcHBhZ2Vyf3BjaGFw c2VwbWFjcm8BMTkzMCw2Mzc5MgorXGdsb2JhbFxsZXRccGFnZWFsaWdubWFjcm89XGNoYXBwYWdl cn9wYWdlYWxpZ25tYWNybwExOTMxLDYzODI5CitcZ2xvYmFsXGRlZlxIRUFESU5HU29ue39IRUFE SU5HU29uATE5MzIsNjM4NjcKK1xkZWZcQ0hBUFBBR29kZHt/Q0hBUFBBR29kZAExOTM0LDYzOTA5 CitcZ2xvYmFsXGxldFxwY2hhcHNlcG1hY3JvPVxjaGFwb2RkcGFnZX9wY2hhcHNlcG1hY3JvATE5 MzUsNjM5MjYKK1xnbG9iYWxcbGV0XHBhZ2VhbGlnbm1hY3JvPVxjaGFwb2RkcGFnZX9wYWdlYWxp Z25tYWNybwExOTM2LDYzOTY1CitcZ2xvYmFsXGRlZlxIRUFESU5HU29ue39IRUFESU5HU29uATE5 MzcsNjQwMDUKK1xkZWZcQ0hBUEZwbGFpbnt/Q0hBUEZwbGFpbgExOTQxLDY0MDU5CitcZ2xvYmFs XGxldFxjaGFwbWFjcm89XGNoZnBsYWluf2NoYXBtYWNybwExOTQyLDY0MDc2CitcZ2xvYmFsXGxl dFx1bm51bWJjaGFwbWFjcm89XHVubmNoZnBsYWlufX91bm51bWJjaGFwbWFjcm8BMTk0Myw2NDEw OAorXGRlZlxjaGZwbGFpbiAjMSMye39jaGZwbGFpbgExOTQ1LDY0MTUxCitcZGVmXHVubmNoZnBs YWluICMxe391bm5jaGZwbGFpbgExOTU2LDY0Mzc0CitcZGVmXHVubmNoZm9wZW4gIzF7f3VubmNo Zm9wZW4BMTk2NCw2NDYwMworXGRlZlxjaGZvcGVuICMxIzJ7f2NoZm9wZW4BMTk3MCw2NDgxMQor XGRlZlxDSEFQRm9wZW57f0NIQVBGb3BlbgExOTc1LDY0OTU1CitcZ2xvYmFsXGxldFxjaGFwbWFj cm89XGNoZm9wZW5/Y2hhcG1hY3JvATE5NzYsNjQ5NzEKK1xnbG9iYWxcbGV0XHVubnVtYmNoYXBt YWNybz1cdW5uY2hmb3Blbn1/dW5udW1iY2hhcG1hY3JvATE5NzcsNjUwMDIKK1xkZWZcc3Vic2Vj aGVhZGluZ2JyZWFre39zdWJzZWNoZWFkaW5nYnJlYWsBMTk4Miw2NTE3MworXGRlZlxzZWNoZWFk aW5nYnJlYWt7f3NlY2hlYWRpbmdicmVhawExOTg1LDY1MzAyCitcbGV0XHBhcmFncmFwaGluZGVu dD1cY29tbWVudH9wYXJhZ3JhcGhpbmRlbnQBMTk4OCw2NTQyOAorXGRlZlxzZWNoZWFkaW5nICMx IzIjM3t/c2VjaGVhZGluZwExOTkzLDY1NTg0CitcZGVmXHBsYWluc2VjaGVhZGluZyAjMXt/cGxh aW5zZWNoZWFkaW5nATE5OTQsNjU2NDAKK1xkZWZcc2VjaGVhZGluZ2kgIzF7f3NlY2hlYWRpbmdp ATE5OTUsNjU2ODMKK1xkZWZcc3Vic2VjaGVhZGluZyAjMSMyIzMjNHt/c3Vic2VjaGVhZGluZwEy MDA2LDY2MDUxCitcZGVmXHN1YnNlY2hlYWRpbmdpICMxe39zdWJzZWNoZWFkaW5naQEyMDA3LDY2 MTE4CitcZGVmXHN1YnN1YnNlY2ZvbnRze39zdWJzdWJzZWNmb250cwEyMDE0LDY2NDE1CitcZGVm XHN1YnN1YnNlY2hlYWRpbmcgIzEjMiMzIzQjNXt/c3Vic3Vic2VjaGVhZGluZwEyMDE3LDY2NTM4 CitcZGVmXHN1YnN1YnNlY2hlYWRpbmdpICMxe39zdWJzdWJzZWNoZWFkaW5naQEyMDE4LDY2NjE2 CitcZGVmXHN0YXJ0Y29udGVudHMjMXt/c3RhcnRjb250ZW50cwEyMDMyLDY3MDg4CisgICBcdW5u dW1iY2hhcG1hY3JveyMxfVxkZWZcdGhpc2NoYXB0ZXJ7f3RoaXNjaGFwdGVyATIwNDAsNjczNjEK K1xvdXRlclxkZWZcY29udGVudHN7f2NvbnRlbnRzATIwNDksNjc3MjAKK1xvdXRlclxkZWZcc3Vt bWFyeWNvbnRlbnRze39zdW1tYXJ5Y29udGVudHMBMjA1Nyw2Nzg2NAorICAgICAgXGxldFxjaGFw ZW50cnkgPSBcc2hvcnRjaGFwZW50cnl/Y2hhcGVudHJ5ATIwNjAsNjc5MzYKKyAgICAgIFxsZXRc dW5udW1iY2hhcGVudHJ5ID0gXHNob3J0dW5udW1iZXJlZGVudHJ5f3VubnVtYmNoYXBlbnRyeQEy MDYxLDY3OTc1CisgICAgICBcbGV0XHJtPVxzaG9ydGNvbnRybSBcbGV0XGJmPVxzaG9ydGNvbnRi ZiBcbGV0XHNsPVxzaG9ydGNvbnRzbH9ybQEyMDY0LDY4MDk4CisgICAgICBcbGV0XHJtPVxzaG9y dGNvbnRybSBcbGV0XGJmPVxzaG9ydGNvbnRiZiBcbGV0XHNsPVxzaG9ydGNvbnRzbH9iZgEyMDY0 LDY4MDk4CisgICAgICBcbGV0XHJtPVxzaG9ydGNvbnRybSBcbGV0XGJmPVxzaG9ydGNvbnRiZiBc bGV0XHNsPVxzaG9ydGNvbnRzbH9zbAEyMDY0LDY4MDk4CisgICAgICBcZGVmXHNlY2VudHJ5ICMj MSMjMiMjMyMjNHt/c2VjZW50cnkBMjA2Nyw2ODIzNQorICAgICAgXGRlZlx1bm51bWJzZWNlbnRy eSAjIzEjIzJ7f3VubnVtYnNlY2VudHJ5ATIwNjgsNjgyNzAKKyAgICAgIFxkZWZcc3Vic2VjZW50 cnkgIyMxIyMyIyMzIyM0IyM1e39zdWJzZWNlbnRyeQEyMDY5LDY4MzA1CisgICAgICBcZGVmXHVu bnVtYnN1YnNlY2VudHJ5ICMjMSMjMnt/dW5udW1ic3Vic2VjZW50cnkBMjA3MCw2ODM0NgorICAg ICAgXGRlZlxzdWJzdWJzZWNlbnRyeSAjIzEjIzIjIzMjIzQjIzUjIzZ7f3N1YnN1YnNlY2VudHJ5 ATIwNzEsNjgzODQKKyAgICAgIFxkZWZcdW5udW1ic3Vic3Vic2VjZW50cnkgIyMxIyMye391bm51 bWJzdWJzdWJzZWNlbnRyeQEyMDcyLDY4NDMxCitcbGV0XHNob3J0Y29udGVudHMgPSBcc3VtbWFy eWNvbnRlbnRzf3Nob3J0Y29udGVudHMBMjA3Nyw2ODUzMAorXGRlZlxjaGFwZW50cnkjMSMyIzN7 f2NoYXBlbnRyeQEyMDg1LDY4ODY1CitcZGVmXGNoYXBlbnRyeSMxIzIjM3tcZG9jaGFwZW50cnl7 IzJcbGFiZWxzcGFjZSMxfX9zcGFjZQEyMDg1LDY4ODY1CitcZGVmXHNob3J0Y2hhcGVudHJ5IzEj MiMze39zaG9ydGNoYXBlbnRyeQEyMDg4LDY4OTgyCiAgICAgeyMyXGxhYmVsc3BhY2UgIzF9f3Nw YWNlATIwOTEsNjkwOTIKLVxkZWZcdW5udW1iY2hhcGVudHJ5IzEjMnt/XHVubnVtYmNoYXBlbnRy eQEyMDk0LDY5MTQ2Ci1cZGVmXHNob3J0dW5udW1iZXJlZGVudHJ5IzEjMnt/XHNob3J0dW5udW1i ZXJlZGVudHJ5ATIwOTUsNjkxOTMKLVxkZWZcc2VjZW50cnkjMSMyIzMjNHt/XHNlY2VudHJ5ATIx MDIsNjkzNTcKLVxkZWZcdW5udW1ic2VjZW50cnkjMSMye39cdW5udW1ic2VjZW50cnkBMjEwMyw2 OTQxNgotXGRlZlxzdWJzZWNlbnRyeSMxIzIjMyM0IzV7f1xzdWJzZWNlbnRyeQEyMTA2LDY5NDc3 Ci1cZGVmXHVubnVtYnN1YnNlY2VudHJ5IzEjMnt/XHVubnVtYnN1YnNlY2VudHJ5ATIxMDcsNjk1 NDcKLVxkZWZcc3Vic3Vic2VjZW50cnkjMSMyIzMjNCM1IzZ7f1xzdWJzdWJzZWNlbnRyeQEyMTEw LDY5NjIxCitcZGVmXHVubnVtYmNoYXBlbnRyeSMxIzJ7f3VubnVtYmNoYXBlbnRyeQEyMDk0LDY5 MTQ2CitcZGVmXHNob3J0dW5udW1iZXJlZGVudHJ5IzEjMnt/c2hvcnR1bm51bWJlcmVkZW50cnkB MjA5NSw2OTE5MworXGRlZlxzZWNlbnRyeSMxIzIjMyM0e39zZWNlbnRyeQEyMTAyLDY5MzU3Citc ZGVmXHNlY2VudHJ5IzEjMiMzIzR7XGRvc2VjZW50cnl7IzIuIzNcbGFiZWxzcGFjZSMxfX9zcGFj ZQEyMTAyLDY5MzU3CitcZGVmXHVubnVtYnNlY2VudHJ5IzEjMnt/dW5udW1ic2VjZW50cnkBMjEw Myw2OTQxNgorXGRlZlxzdWJzZWNlbnRyeSMxIzIjMyM0IzV7f3N1YnNlY2VudHJ5ATIxMDYsNjk0 NzcKK1xkZWZcc3Vic2VjZW50cnkjMSMyIzMjNCM1e1xkb3N1YnNlY2VudHJ5eyMyLiMzLiM0XGxh YmVsc3BhY2UjMX1/c3BhY2UBMjEwNiw2OTQ3NworXGRlZlx1bm51bWJzdWJzZWNlbnRyeSMxIzJ7 f3VubnVtYnN1YnNlY2VudHJ5ATIxMDcsNjk1NDcKK1xkZWZcc3Vic3Vic2VjZW50cnkjMSMyIzMj NCM1IzZ7f3N1YnN1YnNlY2VudHJ5ATIxMTAsNjk2MjEKICAgXGRvc3Vic3Vic2VjZW50cnl7IzIu IzMuIzQuIzVcbGFiZWxzcGFjZSMxfX9zcGFjZQEyMTExLDY5NjU1Ci1cZGVmXHVubnVtYnN1YnN1 YnNlY2VudHJ5IzEjMnt/XHVubnVtYnN1YnN1YnNlY2VudHJ5ATIxMTIsNjk3MDYKLVxkZWZcZG9j aGFwZW50cnkjMSMye39cZG9jaGFwZW50cnkBMjEyMyw3MDA4MAotXGRlZlxkb3NlY2VudHJ5IzEj Mnt/XGRvc2VjZW50cnkBMjEzOCw3MDY4NQotXGRlZlxkb3N1YnNlY2VudHJ5IzEjMnt/XGRvc3Vi c2VjZW50cnkBMjE0NSw3MDg2MwotXGRlZlxkb3N1YnN1YnNlY2VudHJ5IzEjMnt/XGRvc3Vic3Vi c2VjZW50cnkBMjE1Miw3MTA0OAotXGRlZlxsYWJlbHNwYWNle39cbGFiZWxzcGFjZQEyMTYwLDcx Mjk5Ci1cZGVmXGRvcGFnZW5vIzF7f1xkb3BhZ2VubwEyMTYyLDcxMzM0Ci1cZGVmXGRvc2hvcnRw YWdlbm8jMXt/XGRvc2hvcnRwYWdlbm8BMjE2Myw3MTM2MAotXGRlZlxjaGFwZW50cnlmb250c3t/ XGNoYXBlbnRyeWZvbnRzATIxNjUsNzEzOTIKLVxkZWZcc2VjZW50cnlmb250c3t/XHNlY2VudHJ5 Zm9udHMBMjE2Niw3MTQyNwotXGRlZlxwb2ludHt/XHBvaW50ATIxOTIsNzIzODYKLVxkZWZccmVz dWx0e39ccmVzdWx0ATIxOTQsNzI0MDcKLVxkZWZcZXhwYW5zaW9ue39cZXhwYW5zaW9uATIxOTUs NzI0ODAKLVxkZWZccHJpbnR7f1xwcmludAEyMTk2LDcyNTUxCi1cZGVmXGVxdWl2e39cZXF1aXYB MjE5OCw3MjYxOAotXGRlZlxlcnJvcnt/XGVycm9yATIyMTgsNzMzOTEKLVxkZWZcdGV4e39cdGV4 ATIyMjQsNzM2MjAKLVxkZWZcQHt/XEABMjI0Miw3NDAwMwotXGdkZWZcc2Vwc3BhY2Vze1xkZWYg e1wgfX19f1wBMjI2NSw3NDczNQotXGRlZlxhYm92ZWVudmJyZWFre39cYWJvdmVlbnZicmVhawEy MjY4LDc0ODE3Ci1cZGVmXGFmdGVyZW52YnJlYWt7f1xhZnRlcmVudmJyZWFrATIyNzIsNzQ5ODMK LVxkZWZcY3Rse39cY3RsATIyODYsNzU0OTQKLVxkZWZcY3Rye39cY3RyATIyODcsNzU1NjYKLVxk ZWZcY2Jse39cY2JsATIyODgsNzU2MDUKLVxkZWZcY2Jye39cY2JyATIyODksNzU2NDUKLVxkZWZc Y2FydHRvcHt/XGNhcnR0b3ABMjI5MCw3NTY4NAotXGRlZlxjYXJ0Ym90e39cY2FydGJvdAEyMjkz LDc1NzkyCi1cbG9uZ1xkZWZcY2FydG91Y2hle39cY2FydG91Y2hlATIyOTksNzU5MzIKLVxkZWZc RWNhcnRvdWNoZXt/XEVjYXJ0b3VjaGUBMjMyNiw3NjcyMAotXGRlZlxsaXNwe39cbGlzcAEyMzM4 LDc2ODU1Ci1cZGVmXEVsaXNwe39cRWxpc3ABMjM0OCw3NzIwMgotXGRlZlxuZXh0IyMxe39cbmV4 dAEyMzYwLDc3NTI4Ci1cZGVmXEVleGFtcGxle39cRWV4YW1wbGUBMjM2NCw3NzU3MAotXGRlZlxF c21hbGxleGFtcGxle39cRXNtYWxsZXhhbXBsZQEyMzY3LDc3NjE3Ci1cZGVmXHNtYWxsbGlzcHh7 f1xzbWFsbGxpc3B4ATIzNzMsNzc3OTUKLVxkZWZcRXNtYWxsbGlzcHt/XEVzbWFsbGxpc3ABMjM4 Myw3ODE0OQorXGRlZlx1bm51bWJzdWJzdWJzZWNlbnRyeSMxIzJ7f3VubnVtYnN1YnN1YnNlY2Vu dHJ5ATIxMTIsNjk3MDYKK1xkZWZcZG9jaGFwZW50cnkjMSMye39kb2NoYXBlbnRyeQEyMTIzLDcw MDgwCitcZGVmXGRvc2VjZW50cnkjMSMye39kb3NlY2VudHJ5ATIxMzgsNzA2ODUKK1xkZWZcZG9z dWJzZWNlbnRyeSMxIzJ7f2Rvc3Vic2VjZW50cnkBMjE0NSw3MDg2MworXGRlZlxkb3N1YnN1YnNl Y2VudHJ5IzEjMnt/ZG9zdWJzdWJzZWNlbnRyeQEyMTUyLDcxMDQ4CitcZGVmXGxhYmVsc3BhY2V7 f2xhYmVsc3BhY2UBMjE2MCw3MTI5OQorXGRlZlxkb3BhZ2VubyMxe39kb3BhZ2VubwEyMTYyLDcx MzM0CitcZGVmXGRvc2hvcnRwYWdlbm8jMXt/ZG9zaG9ydHBhZ2VubwEyMTYzLDcxMzYwCitcZGVm XGNoYXBlbnRyeWZvbnRze39jaGFwZW50cnlmb250cwEyMTY1LDcxMzkyCitcZGVmXHNlY2VudHJ5 Zm9udHN7f3NlY2VudHJ5Zm9udHMBMjE2Niw3MTQyNworXGxldFxzdWJzZWNlbnRyeWZvbnRzID0g XHRleHRmb250c39zdWJzZWNlbnRyeWZvbnRzATIxNjcsNzE0NTgKK1xsZXRcc3Vic3Vic2VjZW50 cnlmb250cyA9IFx0ZXh0Zm9udHN/c3Vic3Vic2VjZW50cnlmb250cwEyMTY4LDcxNDkzCitcbGV0 XHB0ZXhlcXVpdiA9IFxlcXVpdn9wdGV4ZXF1aXYBMjE4MCw3MTg5NgorXGRlZlxwb2ludHt/cG9p bnQBMjE5Miw3MjM4NgorXGRlZlxyZXN1bHR7f3Jlc3VsdAEyMTk0LDcyNDA3CitcZGVmXGV4cGFu c2lvbnt/ZXhwYW5zaW9uATIxOTUsNzI0ODAKK1xkZWZccHJpbnR7f3ByaW50ATIxOTYsNzI1NTEK K1xkZWZcZXF1aXZ7f2VxdWl2ATIxOTgsNzI2MTgKK1xkZWZcZXJyb3J7f2Vycm9yATIyMTgsNzMz OTEKK1xkZWZcdGV4e390ZXgBMjIyNCw3MzYyMAorXGNhdGNvZGUgYFxePTcgXGNhdGNvZGUgYFxf PTggXGNhdGNvZGUgYFx+PTEzIFxsZXR+PVx0aWV/fgEyMjI3LDczNzMxCitcbGV0XHs9XHB0ZXhs YnJhY2V/ewEyMjM3LDczOTEyCitcbGV0XH09XHB0ZXhyYnJhY2V/fQEyMjM4LDczOTMxCitcbGV0 XC49XHB0ZXhkb3R/LgEyMjM5LDczOTUwCitcbGV0XCo9XHB0ZXhzdGFyfyoBMjI0MCw3Mzk2Ngor XGxldFxkb3RzPVxwdGV4ZG90c39kb3RzATIyNDEsNzM5ODMKK1xkZWZcQHt/QAEyMjQyLDc0MDAz CitcbGV0XGJ1bGxldD1ccHRleGJ1bGxldH9idWxsZXQBMjI0Myw3NDAxNAorXGxldFxiPVxwdGV4 YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhs f2IBMjI0NCw3NDAzOAorXGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkg XGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhsf2MBMjI0NCw3NDAzOAorXGxldFxiPVxwdGV4YiBc bGV0XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhsf2kB MjI0NCw3NDAzOAorXGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkgXGxl dFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhsf3QBMjI0NCw3NDAzOAorXGxldFxiPVxwdGV4YiBcbGV0 XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhsf2wBMjI0 NCw3NDAzOAorXGxldFxMPVxwdGV4TH9MATIyNDUsNzQxMDgKK1xsZXRcRXRleD1cZW5kZ3JvdXB9 f0V0ZXgBMjI0Nyw3NDEyNAorXGdkZWZcbGlzcHBhcnt/bGlzcHBhcgEyMjU5LDc0NTE3CitcZ2Rl ZlxzZXBzcGFjZXN7f3NlcHNwYWNlcwEyMjY1LDc0NzM1CitcZGVmXGFib3ZlZW52YnJlYWt7f2Fi b3ZlZW52YnJlYWsBMjI2OCw3NDgxNworXGRlZlxhZnRlcmVudmJyZWFre39hZnRlcmVudmJyZWFr ATIyNzIsNzQ5ODMKK1xsZXRcbm9uYXJyb3dpbmc9XHJlbGF4f25vbmFycm93aW5nATIyNzYsNzUx NzYKK1xkZWZcY3Rse39jdGwBMjI4Niw3NTQ5NAorXGRlZlxjdHJ7f2N0cgEyMjg3LDc1NTY2Citc ZGVmXGNibHt/Y2JsATIyODgsNzU2MDUKK1xkZWZcY2Jye39jYnIBMjI4OSw3NTY0NQorXGRlZlxj YXJ0dG9we39jYXJ0dG9wATIyOTAsNzU2ODQKK1xkZWZcY2FydGJvdHt/Y2FydGJvdAEyMjkzLDc1 NzkyCitcbG9uZ1xkZWZcY2FydG91Y2hle39jYXJ0b3VjaGUBMjI5OSw3NTkzMgorCVxsZXRcbm9u YXJyb3dpbmc9XGNvbW1lbnR/bm9uYXJyb3dpbmcBMjMxMSw3NjQwNAorXGRlZlxFY2FydG91Y2hl e39FY2FydG91Y2hlATIzMjYsNzY3MjAKK1xkZWZcbGlzcHt/bGlzcAEyMzM4LDc2ODU1CitcbGV0 XHBhcj1cbGlzcHBhcn9wYXIBMjM0Nyw3NzE4NAorXGRlZlxFbGlzcHt/RWxpc3ABMjM0OCw3NzIw MgorXGxldFxleGRlbnQ9XG5vZmlsbGV4ZGVudH9leGRlbnQBMjM1NSw3NzQxOAorXGxldFxub25h cnJvd2luZz1ccmVsYXh/bm9uYXJyb3dpbmcBMjM1Niw3NzQ0NAorXGRlZlxuZXh0IyMxe39uZXh0 ATIzNjAsNzc1MjgKK1xsZXRcZXhhbXBsZT1cbGlzcH9leGFtcGxlATIzNjMsNzc1NTEKK1xkZWZc RWV4YW1wbGV7f0VleGFtcGxlATIzNjQsNzc1NzAKK1xsZXRcc21hbGxleGFtcGxlPVxsaXNwf3Nt YWxsZXhhbXBsZQEyMzY2LDc3NTkzCitcZGVmXEVzbWFsbGV4YW1wbGV7f0VzbWFsbGV4YW1wbGUB MjM2Nyw3NzYxNworXGRlZlxzbWFsbGxpc3B4e39zbWFsbGxpc3B4ATIzNzMsNzc3OTUKK1xsZXRc cGFyPVxsaXNwcGFyf3BhcgEyMzgyLDc4MTMxCitcZGVmXEVzbWFsbGxpc3B7f0VzbWFsbGxpc3AB MjM4Myw3ODE0OQorXGxldFxleGRlbnQ9XG5vZmlsbGV4ZGVudH9leGRlbnQBMjM5Miw3ODQzNgor XGxldFxub25hcnJvd2luZz1ccmVsYXh/bm9uYXJyb3dpbmcBMjM5Myw3ODQ2MgogXG9iZXlzcGFj ZXMgXG9iZXlsaW5lcyBcbmluZXR0IFxpbmRleGZvbnRzIFxyYXdiYWNrc2xhc2h/Zm9udHMBMjM5 Niw3ODUwNQotXGRlZlxuZXh0IyMxe39cbmV4dAEyMzk3LDc4NTYyCi1cZGVmXGRpc3BsYXl7f1xk aXNwbGF5ATI0MDEsNzg2NDIKLVxkZWZcRWRpc3BsYXl7f1xFZGlzcGxheQEyNDEwLDc4OTYxCi1c ZGVmXG5leHQjIzF7f1xuZXh0ATI0MjIsNzkyNzIKLVxkZWZcZm9ybWF0e39cZm9ybWF0ATI0MjYs NzkzNzUKLVxkZWZcRWZvcm1hdHt/XEVmb3JtYXQBMjQzNCw3OTY3MQotXGRlZlxuZXh0IyMxe39c bmV4dAEyNDM3LDc5NzYwCi1cZGVmXGZsdXNobGVmdHt/XGZsdXNobGVmdAEyNDQxLDc5ODEyCi1c ZGVmXEVmbHVzaGxlZnR7f1xFZmx1c2hsZWZ0ATI0NTEsODAxODMKLVxkZWZcbmV4dCMjMXt/XG5l eHQBMjQ1NCw4MDI3NgotXGRlZlxmbHVzaHJpZ2h0e39cZmx1c2hyaWdodAEyNDU2LDgwMjk4Ci1c ZGVmXEVmbHVzaHJpZ2h0e39cRWZsdXNocmlnaHQBMjQ2Niw4MDY3MAotXGRlZlxuZXh0IyMxe39c bmV4dAEyNDcwLDgwODAxCi1cZGVmXHF1b3RhdGlvbnt/XHF1b3RhdGlvbgEyNDc0LDgwODU5Ci1c ZGVmXEVxdW90YXRpb257f1xFcXVvdGF0aW9uATI0ODAsODEwNTEKLVxkZWZcc2V0ZGVmZm9udCAj MSB7f1xzZXRkZWZmb250ATI0OTMsODE0NDkKK1xkZWZcbmV4dCMjMXt/bmV4dAEyMzk3LDc4NTYy CitcZGVmXGRpc3BsYXl7f2Rpc3BsYXkBMjQwMSw3ODY0MgorXGxldFxwYXI9XGxpc3BwYXJ/cGFy ATI0MDksNzg5NDMKK1xkZWZcRWRpc3BsYXl7f0VkaXNwbGF5ATI0MTAsNzg5NjEKK1xsZXRcZXhk ZW50PVxub2ZpbGxleGRlbnR/ZXhkZW50ATI0MTcsNzkxODAKK1xsZXRcbm9uYXJyb3dpbmc9XHJl bGF4f25vbmFycm93aW5nATI0MTgsNzkyMDYKK1xkZWZcbmV4dCMjMXt/bmV4dAEyNDIyLDc5Mjcy CitcZGVmXGZvcm1hdHt/Zm9ybWF0ATI0MjYsNzkzNzUKK1xsZXRccGFyPVxsaXNwcGFyf3BhcgEy NDMzLDc5NjUzCitcZGVmXEVmb3JtYXR7f0Vmb3JtYXQBMjQzNCw3OTY3MQorXGRlZlxuZXh0IyMx e39uZXh0ATI0MzcsNzk3NjAKK1xkZWZcZmx1c2hsZWZ0e39mbHVzaGxlZnQBMjQ0MSw3OTgxMgor XGxldFxwYXI9XGxpc3BwYXJ/cGFyATI0NTAsODAxNjUKK1xkZWZcRWZsdXNobGVmdHt/RWZsdXNo bGVmdAEyNDUxLDgwMTgzCitcZGVmXG5leHQjIzF7f25leHQBMjQ1NCw4MDI3NgorXGRlZlxmbHVz aHJpZ2h0e39mbHVzaHJpZ2h0ATI0NTYsODAyOTgKK1xsZXRccGFyPVxsaXNwcGFyf3BhcgEyNDY1 LDgwNjUyCitcZGVmXEVmbHVzaHJpZ2h0e39FZmx1c2hyaWdodAEyNDY2LDgwNjcwCitcZGVmXG5l eHQjIzF7f25leHQBMjQ3MCw4MDgwMQorXGRlZlxxdW90YXRpb257f3F1b3RhdGlvbgEyNDc0LDgw ODU5CitcZGVmXEVxdW90YXRpb257f0VxdW90YXRpb24BMjQ4MCw4MTA1MQorXGxldFxub25hcnJv d2luZz1ccmVsYXh/bm9uYXJyb3dpbmcBMjQ4Nyw4MTMwMQorXGRlZlxzZXRkZWZmb250ICMxIHt/ c2V0ZGVmZm9udAEyNDkzLDgxNDQ5CitcbmV3c2tpcFxkZWZib2R5aW5kZW50IFxkZWZib2R5aW5k ZW50PS40aW5/Ym9keWluZGVudAEyNDk1LDgxNDk1CiBcbmV3c2tpcFxkZWZib2R5aW5kZW50IFxk ZWZib2R5aW5kZW50PS40aW5/Ym9keWluZGVudAEyNDk1LDgxNDk1CiBcbmV3c2tpcFxkZWZhcmdz aW5kZW50IFxkZWZhcmdzaW5kZW50PTUwcHR/YXJnc2luZGVudAEyNDk2LDgxNTM4CitcbmV3c2tp cFxkZWZhcmdzaW5kZW50IFxkZWZhcmdzaW5kZW50PTUwcHR/YXJnc2luZGVudAEyNDk2LDgxNTM4 CiBcbmV3c2tpcFxkZWZ0eXBlbWFyZ2luIFxkZWZ0eXBlbWFyZ2luPTEycHR/dHlwZW1hcmdpbgEy NDk3LDgxNTgxCitcbmV3c2tpcFxkZWZ0eXBlbWFyZ2luIFxkZWZ0eXBlbWFyZ2luPTEycHR/dHlw ZW1hcmdpbgEyNDk3LDgxNTgxCitcbmV3c2tpcFxkZWZsYXN0YXJnbWFyZ2luIFxkZWZsYXN0YXJn bWFyZ2luPTE4cHR/bGFzdGFyZ21hcmdpbgEyNDk4LDgxNjI0CiBcbmV3c2tpcFxkZWZsYXN0YXJn bWFyZ2luIFxkZWZsYXN0YXJnbWFyZ2luPTE4cHR/bGFzdGFyZ21hcmdpbgEyNDk4LDgxNjI0Ci1c ZGVmXGFjdGl2ZXBhcmVuc3t/XGFjdGl2ZXBhcmVucwEyNTAzLDgxODIyCi1cZGVmXG9wbnJ7f1xv cG5yATI1MjksODMwMzQKLVxkZWZcbGJyYnt/XGxicmIBMjUzMCw4MzA5OQotXGRlZlxkZWZuYW1l ICMxIzJ7f1xkZWZuYW1lATI1MzYsODMzMDAKK1xkZWZcYWN0aXZlcGFyZW5ze39hY3RpdmVwYXJl bnMBMjUwMyw4MTgyMgorXGdkZWZcZnVuY3Rpb25wYXJlbnN7f2Z1bmN0aW9ucGFyZW5zATI1MDcs ODIwMTYKK1xnZGVmXGZ1bmN0aW9ucGFyZW5ze1xib2xkYnJheFxsZXQmPVxhbXBybVxwYXJlbmNv dW50PTAgfX8mATI1MDcsODIwMTYKK1xnZGVmXGJvbGRicmF4e39ib2xkYnJheAEyNTA4LDgyMDc0 CitcZ2RlZlxib2xkYnJheHtcbGV0KD1cb3BuclxsZXQpPVxjbG5yXGxldFs9XGxicmJcbGV0XT1c cmJyYn1/KAEyNTA4LDgyMDc0CitcZ2RlZlxib2xkYnJheHtcbGV0KD1cb3BuclxsZXQpPVxjbG5y XGxldFs9XGxicmJcbGV0XT1ccmJyYn1/KQEyNTA4LDgyMDc0CitcZ2RlZlxib2xkYnJheHtcbGV0 KD1cb3BuclxsZXQpPVxjbG5yXGxldFs9XGxicmJcbGV0XT1ccmJyYn1/WwEyNTA4LDgyMDc0Citc Z2RlZlxib2xkYnJheHtcbGV0KD1cb3BuclxsZXQpPVxjbG5yXGxldFs9XGxicmJcbGV0XT1ccmJy Yn1/XQEyNTA4LDgyMDc0CitcZ2RlZlxvcHJtIzEge39vcHJtATI1MTIsODIyNTAKK1xnZGVmXG9w cm0jMSB7e1xybVxjaGFyYFwofSMxIFxiZiBcbGV0KD1cb3BuZXN0ZWQgJX8oATI1MTIsODIyNTAK K1xnZGVmXG9wbmVzdGVke39vcG5lc3RlZAEyNTE2LDgyNDA3CitcZ2RlZlxjbHJte39jbHJtATI1 MTgsODI0NjYKK1xpZm51bSBccGFyZW5jb3VudD0xIHtccm0gXGNoYXIgYFwpfVxzbCBcbGV0KD1c b3BybSBcZWxzZSBcY2hhciBgXCkgXGZpfygBMjUyMCw4MjYwMgorXGdkZWZcYW1wcm0jMSB7f2Ft cHJtATI1MjMsODI3NjkKK1xnZGVmXGFtcHJtIzEge3tccm1cJiMxfVxsZXQoPVxvcHJtIFxsZXQp PVxjbHJtXCB9fygBMjUyMyw4Mjc2OQorXGdkZWZcYW1wcm0jMSB7e1xybVwmIzF9XGxldCg9XG9w cm0gXGxldCk9XGNscm1cIH1/KQEyNTIzLDgyNzY5CitcZ2RlZlxub3JtYWxwYXJlbnN7f25vcm1h bHBhcmVucwEyNTI1LDgyODIyCitcZ2RlZlxub3JtYWxwYXJlbnN7XGJvbGRicmF4XGxldCY9XGFt cG5yfX8mATI1MjUsODI4MjIKK1xkZWZcb3Bucnt/b3BucgEyNTI5LDgzMDM0CitcZGVmXG9wbnJ7 e1xzZlxjaGFyYFwofX0gXGRlZlxjbG5ye39jbG5yATI1MjksODMwMzQKK1xkZWZcb3Bucnt7XHNm XGNoYXJgXCh9fSBcZGVmXGNsbnJ7e1xzZlxjaGFyYFwpfX0gXGRlZlxhbXBucnt/YW1wbnIBMjUy OSw4MzAzNAorXGRlZlxsYnJie39sYnJiATI1MzAsODMwOTkKK1xkZWZcbGJyYnt7XGJmXGNoYXJg XFt9fSBcZGVmXHJicmJ7f3JicmIBMjUzMCw4MzA5OQorXGRlZlxkZWZuYW1lICMxIzJ7f2RlZm5h bWUBMjUzNiw4MzMwMAogXGFkdmFuY2VcZGltZW4yIGJ5IC1cZGVmYm9keWluZGVudH9ib2R5aW5k ZW50ATI1NDAsODM0MTgKIFxhZHZhbmNlXGRpbWVuMyBieSAtXGRlZmJvZHlpbmRlbnR/Ym9keWlu ZGVudAEyNTQyLDgzNDcyCiBcc2V0Ym94MD1caGJveHtcaHNraXAgXGRlZmxhc3RhcmdtYXJnaW57 f2xhc3RhcmdtYXJnaW4BMjU0NCw4MzUyNgorXHNldGJveDA9XGhib3h7XGhza2lwIFxkZWZsYXN0 YXJnbWFyZ2lue1xybSAjMn1caHNraXAgXGRlZnR5cGVtYXJnaW59f3R5cGVtYXJnaW4BMjU0NCw4 MzUyNgogXGRpbWVuMT1caHNpemUgXGFkdmFuY2UgXGRpbWVuMSBieSAtXGRlZmFyZ3NpbmRlbnQg JXNpemUgZm9yIGNvbnRpbnVhdGlvbnN/YXJnc2luZGVudAEyNTQ2LDgzNjY4CiBccGFyc2hhcGUg MiAwaW4gXGRpbWVuMCBcZGVmYXJnc2luZGVudCBcZGltZW4xICAgICAlf2FyZ3NpbmRlbnQBMjU0 Nyw4Mzc0MwogXHJsYXB7XHJpZ2h0bGluZXt7XHJtICMyfVxoc2tpcCBcZGVmdHlwZW1hcmdpbn1/ dHlwZW1hcmdpbgEyNTU0LDg0MTEyCiBcYWR2YW5jZVxsZWZ0c2tpcCBieSAtXGRlZmJvZHlpbmRl bnR/Ym9keWluZGVudAEyNTU3LDg0MjQ2CiBcZXhkZW50YW1vdW50PVxkZWZib2R5aW5kZW50f2Jv ZHlpbmRlbnQBMjU1OCw4NDI4MwotXGRlZlxkZWZwYXJzZWJvZHkgIzEjMiMze39cZGVmcGFyc2Vi b2R5ATI1NjgsODQ2NDIKLVxkZWYjMXt/MjU3Miw4NDgyNgotXGRlZiMye38yNTczLDg0ODYyCitc ZGVmXGRlZnBhcnNlYm9keSAjMSMyIzN7f2RlZnBhcnNlYm9keQEyNTY4LDg0NjQyCitcYWR2YW5j ZVxsZWZ0c2tpcCBieSBcZGVmYm9keWluZGVudCBcYWR2YW5jZSBccmlnaHRza2lwIGJ5IFxkZWZi b2R5aW5kZW50f2JvZHlpbmRlbnQBMjU3NSw4NDkzNAogXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRl ZmJvZHlpbmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5k ZW50ATI1NzUsODQ5MzQKIFxleGRlbnRhbW91bnQ9XGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEy NTc2LDg1MDA4Ci1cZGVmXGRlZm1ldGhwYXJzZWJvZHkgIzEjMiMzIzQge39cZGVmbWV0aHBhcnNl Ym9keQEyNTgxLDg1MTEyCi1cZGVmIzF7fzI1ODUsODUyNzMKLVxkZWYjMiMjMSB7fzI1ODYsODUz MDkKK1xkZWZcZGVmbWV0aHBhcnNlYm9keSAjMSMyIzMjNCB7f2RlZm1ldGhwYXJzZWJvZHkBMjU4 MSw4NTExMgorXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFkdmFuY2UgXHJp Z2h0c2tpcCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI1ODgsODUzOTIKIFxhZHZhbmNl XGxlZnRza2lwIGJ5IFxkZWZib2R5aW5kZW50IFxhZHZhbmNlIFxyaWdodHNraXAgYnkgXGRlZmJv ZHlpbmRlbnR/Ym9keWluZGVudAEyNTg4LDg1MzkyCiBcZXhkZW50YW1vdW50PVxkZWZib2R5aW5k ZW50f2JvZHlpbmRlbnQBMjU4OSw4NTQ2NgotXGRlZlxkZWZvcHBhcnNlYm9keSAjMSMyIzMjNCM1 IHt/XGRlZm9wcGFyc2Vib2R5ATI1OTIsODU1NTEKLVxkZWYjMXt/MjU5Niw4NTcxMgotXGRlZiMy IyMxICMjMiB7fzI1OTcsODU3NDgKK1xkZWZcZGVmb3BwYXJzZWJvZHkgIzEjMiMzIzQjNSB7f2Rl Zm9wcGFyc2Vib2R5ATI1OTIsODU1NTEKK1xhZHZhbmNlXGxlZnRza2lwIGJ5IFxkZWZib2R5aW5k ZW50IFxhZHZhbmNlIFxyaWdodHNraXAgYnkgXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNjAw LDg1ODQ4CiBcYWR2YW5jZVxsZWZ0c2tpcCBieSBcZGVmYm9keWluZGVudCBcYWR2YW5jZSBccmln aHRza2lwIGJ5IFxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjYwMCw4NTg0OAogXGV4ZGVudGFt b3VudD1cZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI2MDEsODU5MjIKLVxkZWZcZGVmdmFycGFy c2Vib2R5ICMxIzIjM3t/XGRlZnZhcnBhcnNlYm9keQEyNjA4LDg2MTkzCi1cZGVmIzF7fzI2MTIs ODYzODAKLVxkZWYjMnt/MjYxMyw4NjQxNgorXGRlZlxkZWZ2YXJwYXJzZWJvZHkgIzEjMiMze39k ZWZ2YXJwYXJzZWJvZHkBMjYwOCw4NjE5MworXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlp bmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI2 MTUsODY0NzUKIFxhZHZhbmNlXGxlZnRza2lwIGJ5IFxkZWZib2R5aW5kZW50IFxhZHZhbmNlIFxy aWdodHNraXAgYnkgXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNjE1LDg2NDc1CiBcZXhkZW50 YW1vdW50PVxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjYxNiw4NjU0OQotXGRlZlxkZWZ2cnBh cnNlYm9keSAjMSMyIzMjNCB7f1xkZWZ2cnBhcnNlYm9keQEyNjIxLDg2NjQwCi1cZGVmIzF7fzI2 MjUsODY3OTkKLVxkZWYjMiMjMSB7fzI2MjYsODY4MzUKK1xkZWZcZGVmdnJwYXJzZWJvZHkgIzEj MiMzIzQge39kZWZ2cnBhcnNlYm9keQEyNjIxLDg2NjQwCitcYWR2YW5jZVxsZWZ0c2tpcCBieSBc ZGVmYm9keWluZGVudCBcYWR2YW5jZSBccmlnaHRza2lwIGJ5IFxkZWZib2R5aW5kZW50f2JvZHlp bmRlbnQBMjYyOCw4NjkwNQogXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFk dmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI2MjgsODY5MDUK IFxleGRlbnRhbW91bnQ9XGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNjI5LDg2OTc5Ci1cZGVm XGRlZm9wdmFycGFyc2Vib2R5ICMxIzIjMyM0IzUge39cZGVmb3B2YXJwYXJzZWJvZHkBMjYzMiw4 NzA1MQotXGRlZiMxe38yNjM2LDg3MjE1Ci1cZGVmIzIjIzEgIyMyIHt/MjYzNyw4NzI1MQorXGRl ZlxkZWZvcHZhcnBhcnNlYm9keSAjMSMyIzMjNCM1IHt/ZGVmb3B2YXJwYXJzZWJvZHkBMjYzMiw4 NzA1MQorXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFkdmFuY2UgXHJpZ2h0 c2tpcCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI2NDAsODczMzgKIFxhZHZhbmNlXGxl ZnRza2lwIGJ5IFxkZWZib2R5aW5kZW50IFxhZHZhbmNlIFxyaWdodHNraXAgYnkgXGRlZmJvZHlp bmRlbnR/Ym9keWluZGVudAEyNjQwLDg3MzM4CiBcZXhkZW50YW1vdW50PVxkZWZib2R5aW5kZW50 f2JvZHlpbmRlbnQBMjY0MSw4NzQxMgotXGRlZlxkZWZ1bmFyZ3MgIzF7f1xkZWZ1bmFyZ3MBMjY2 NCw4ODE3MgotXGRlZlxkZWZ0eXBlZnVuYXJncyAjMXt/XGRlZnR5cGVmdW5hcmdzATI2NzYsODg1 NTQKLVxkZWZcZGVmZm57f1xkZWZmbgEyNjkwLDg4OTM2Ci1cZGVmXGRlZmZuaGVhZGVyICMxIzIj M3t/XGRlZmZuaGVhZGVyATI2OTIsODg5OTMKK1xnZGVmXHNwYWNlc3BsaXQjMSMyXl5Ne39zcGFj ZXNwbGl0ATI2NTIsODc3NzUKK1xsb25nXGdkZWZcc3BhY2VzcGxpdGZvbyMxIzIgIzMjNFxzcGFj ZXNwbGl0Zm9ve39zcGFjZXNwbGl0Zm9vATI2NTMsODc4NTIKK1xkZWZcZGVmdW5hcmdzICMxe39k ZWZ1bmFyZ3MBMjY2NCw4ODE3MgorXGRlZlxkZWZ0eXBlZnVuYXJncyAjMXt/ZGVmdHlwZWZ1bmFy Z3MBMjY3Niw4ODU1NAorXGRlZlxkZWZmbnt/ZGVmZm4BMjY5MCw4ODkzNgorXGRlZlxkZWZmbntc ZGVmbWV0aHBhcnNlYm9keVxFZGVmZm5cZGVmZm54XGRlZmZuaGVhZGVyfX9tZXRocGFyc2Vib2R5 XEVkZWZmbgEyNjkwLDg4OTM2CitcZGVmXGRlZmZue1xkZWZtZXRocGFyc2Vib2R5XEVkZWZmblxk ZWZmbnhcZGVmZm5oZWFkZXJ9f2ZueFxkZWZmbmhlYWRlcgEyNjkwLDg4OTM2CitcZGVmXGRlZmZu e1xkZWZtZXRocGFyc2Vib2R5XEVkZWZmblxkZWZmbnhcZGVmZm5oZWFkZXJ9f2ZuaGVhZGVyATI2 OTAsODg5MzYKK1xkZWZcZGVmZm5oZWFkZXIgIzEjMiMze39kZWZmbmhlYWRlcgEyNjkyLDg4OTkz CiBcYmVnaW5ncm91cFxkZWZuYW1lIHt/bmFtZQEyNjkzLDg5MDQxCi1cZGVmXGRlZnVue39cZGVm dW4BMjY5OSw4OTE4NgotXGRlZlxkZWZ1bmhlYWRlciAjMSMye39cZGVmdW5oZWFkZXIBMjcwMSw4 OTIzOQorXGJlZ2luZ3JvdXBcZGVmbmFtZSB7IzJ9eyMxfVxkZWZ1bmFyZ3N7f3VuYXJncwEyNjkz LDg5MDQxCitcZGVmXGRlZnVue39kZWZ1bgEyNjk5LDg5MTg2CitcZGVmXGRlZnVue1xkZWZwYXJz ZWJvZHlcRWRlZnVuXGRlZnVueFxkZWZ1bmhlYWRlcn1/cGFyc2Vib2R5XEVkZWZ1bgEyNjk5LDg5 MTg2CitcZGVmXGRlZnVue1xkZWZwYXJzZWJvZHlcRWRlZnVuXGRlZnVueFxkZWZ1bmhlYWRlcn1/ dW54XGRlZnVuaGVhZGVyATI2OTksODkxODYKK1xkZWZcZGVmdW57XGRlZnBhcnNlYm9keVxFZGVm dW5cZGVmdW54XGRlZnVuaGVhZGVyfX91bmhlYWRlcgEyNjk5LDg5MTg2CitcZGVmXGRlZnVuaGVh ZGVyICMxIzJ7f2RlZnVuaGVhZGVyATI3MDEsODkyMzkKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39u YW1lATI3MDIsODkzMTQKIFxkZWZ1bmFyZ3Mge391bmFyZ3MBMjcwMyw4OTM1MAotXGRlZlxkZWZ0 eXBlZnVue39cZGVmdHlwZWZ1bgEyNzA5LDg5NDk4Ci1cZGVmXGRlZnR5cGVmdW5oZWFkZXIgIzEj Mnt/XGRlZnR5cGVmdW5oZWFkZXIBMjcxMiw4OTYyMAotXGRlZlxkZWZ0eXBlZnVuaGVhZGVyeCAj MSMyICMzXHJlbGF4e39cZGVmdHlwZWZ1bmhlYWRlcngBMjcxNCw4OTcyOQorXGRlZlxkZWZ0eXBl ZnVue39kZWZ0eXBlZnVuATI3MDksODk0OTgKK1xkZWZcZGVmdHlwZWZ1bntcZGVmcGFyc2Vib2R5 XEVkZWZ0eXBlZnVuXGRlZnR5cGVmdW54XGRlZnR5cGVmdW5oZWFkZXJ9f3BhcnNlYm9keVxFZGVm dHlwZWZ1bgEyNzA5LDg5NDk4CitcZGVmXGRlZnR5cGVmdW57XGRlZnBhcnNlYm9keVxFZGVmdHlw ZWZ1blxkZWZ0eXBlZnVueFxkZWZ0eXBlZnVuaGVhZGVyfX90eXBlZnVueFxkZWZ0eXBlZnVuaGVh ZGVyATI3MDksODk0OTgKK1xkZWZcZGVmdHlwZWZ1bntcZGVmcGFyc2Vib2R5XEVkZWZ0eXBlZnVu XGRlZnR5cGVmdW54XGRlZnR5cGVmdW5oZWFkZXJ9f3R5cGVmdW5oZWFkZXIBMjcwOSw4OTQ5OAor XGRlZlxkZWZ0eXBlZnVuaGVhZGVyICMxIzJ7f2RlZnR5cGVmdW5oZWFkZXIBMjcxMiw4OTYyMAor XGRlZlxkZWZ0eXBlZnVuaGVhZGVyICMxIzJ7XGRlZnR5cGVmdW5oZWFkZXJ4e390eXBlZnVuaGVh ZGVyeAEyNzEyLDg5NjIwCitcZGVmXGRlZnR5cGVmdW5oZWFkZXJ4ICMxIzIgIzNccmVsYXh7f2Rl ZnR5cGVmdW5oZWFkZXJ4ATI3MTQsODk3MjkKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI3 MTYsODk4MjEKIFxkZWZ0eXBlZnVuYXJncyB7f3R5cGVmdW5hcmdzATI3MTcsODk4NjcKLVxkZWZc ZGVmdHlwZWZue39cZGVmdHlwZWZuATI3MjMsOTAwMzgKLVxkZWZcZGVmdHlwZWZuaGVhZGVyICMx IzIjM3t/XGRlZnR5cGVmbmhlYWRlcgEyNzI2LDkwMTg3Ci1cZGVmXGRlZnR5cGVmbmhlYWRlcngg IzEjMiMzICM0XHJlbGF4e39cZGVmdHlwZWZuaGVhZGVyeAEyNzI4LDkwMzIzCitcZGVmXGRlZnR5 cGVmbnt/ZGVmdHlwZWZuATI3MjMsOTAwMzgKK1xkZWZcZGVmdHlwZWZue1xkZWZtZXRocGFyc2Vi b2R5XEVkZWZ0eXBlZm5cZGVmdHlwZWZueFxkZWZ0eXBlZm5oZWFkZXJ9f21ldGhwYXJzZWJvZHlc RWRlZnR5cGVmbgEyNzIzLDkwMDM4CitcZGVmXGRlZnR5cGVmbntcZGVmbWV0aHBhcnNlYm9keVxF ZGVmdHlwZWZuXGRlZnR5cGVmbnhcZGVmdHlwZWZuaGVhZGVyfX90eXBlZm54XGRlZnR5cGVmbmhl YWRlcgEyNzIzLDkwMDM4CitcZGVmXGRlZnR5cGVmbntcZGVmbWV0aHBhcnNlYm9keVxFZGVmdHlw ZWZuXGRlZnR5cGVmbnhcZGVmdHlwZWZuaGVhZGVyfX90eXBlZm5oZWFkZXIBMjcyMyw5MDAzOAor XGRlZlxkZWZ0eXBlZm5oZWFkZXIgIzEjMiMze39kZWZ0eXBlZm5oZWFkZXIBMjcyNiw5MDE4Nwor XGRlZlxkZWZ0eXBlZm5oZWFkZXIgIzEjMiMze1xkZWZ0eXBlZm5oZWFkZXJ4e390eXBlZm5oZWFk ZXJ4ATI3MjYsOTAxODcKK1xkZWZcZGVmdHlwZWZuaGVhZGVyeCAjMSMyIzMgIzRccmVsYXh7f2Rl ZnR5cGVmbmhlYWRlcngBMjcyOCw5MDMyMwogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjcz MCw5MDQxNgogXGRlZnR5cGVmdW5hcmdzIHt/dHlwZWZ1bmFyZ3MBMjczMSw5MDQ1NgotXGRlZlxk ZWZtYWN7f1xkZWZtYWMBMjczNyw5MDU3NwotXGRlZlxkZWZtYWNoZWFkZXIgIzEjMnt/XGRlZm1h Y2hlYWRlcgEyNzM5LDkwNjM0CitcZGVmXGRlZm1hY3t/ZGVmbWFjATI3MzcsOTA1NzcKK1xkZWZc ZGVmbWFje1xkZWZwYXJzZWJvZHlcRWRlZm1hY1xkZWZtYWN4XGRlZm1hY2hlYWRlcn1/cGFyc2Vi b2R5XEVkZWZtYWMBMjczNyw5MDU3NworXGRlZlxkZWZtYWN7XGRlZnBhcnNlYm9keVxFZGVmbWFj XGRlZm1hY3hcZGVmbWFjaGVhZGVyfX9tYWN4XGRlZm1hY2hlYWRlcgEyNzM3LDkwNTc3CitcZGVm XGRlZm1hY3tcZGVmcGFyc2Vib2R5XEVkZWZtYWNcZGVmbWFjeFxkZWZtYWNoZWFkZXJ9f21hY2hl YWRlcgEyNzM3LDkwNTc3CitcZGVmXGRlZm1hY2hlYWRlciAjMSMye39kZWZtYWNoZWFkZXIBMjcz OSw5MDYzNAogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjc0MCw5MDcxMAogXGRlZnVuYXJn cyB7f3VuYXJncwEyNzQxLDkwNzQzCi1cZGVmXGRlZnNwZWN7f1xkZWZzcGVjATI3NDcsOTA4NjcK LVxkZWZcZGVmc3BlY2hlYWRlciAjMSMye39cZGVmc3BlY2hlYWRlcgEyNzQ5LDkwOTI4CitcZGVm XGRlZnNwZWN7f2RlZnNwZWMBMjc0Nyw5MDg2NworXGRlZlxkZWZzcGVje1xkZWZwYXJzZWJvZHlc RWRlZnNwZWNcZGVmc3BlY3hcZGVmc3BlY2hlYWRlcn1/cGFyc2Vib2R5XEVkZWZzcGVjATI3NDcs OTA4NjcKK1xkZWZcZGVmc3BlY3tcZGVmcGFyc2Vib2R5XEVkZWZzcGVjXGRlZnNwZWN4XGRlZnNw ZWNoZWFkZXJ9f3NwZWN4XGRlZnNwZWNoZWFkZXIBMjc0Nyw5MDg2NworXGRlZlxkZWZzcGVje1xk ZWZwYXJzZWJvZHlcRWRlZnNwZWNcZGVmc3BlY3hcZGVmc3BlY2hlYWRlcn1/c3BlY2hlYWRlcgEy NzQ3LDkwODY3CitcZGVmXGRlZnNwZWNoZWFkZXIgIzEjMnt/ZGVmc3BlY2hlYWRlcgEyNzQ5LDkw OTI4CiBcYmVnaW5ncm91cFxkZWZuYW1lIHt/bmFtZQEyNzUwLDkxMDA1CiBcZGVmdW5hcmdzIHt/ dW5hcmdzATI3NTEsOTEwNDUKLVxkZWZcZGVmZm54ICMxIHt/XGRlZmZueAEyNzU4LDkxMjQwCi1c ZGVmXGRlZnVueCAjMSB7f1xkZWZ1bngBMjc1OSw5MTI5NwotXGRlZlxkZWZtYWN4ICMxIHt/XGRl Zm1hY3gBMjc2MCw5MTM1NAotXGRlZlxkZWZzcGVjeCAjMSB7f1xkZWZzcGVjeAEyNzYxLDkxNDEz Ci1cZGVmXGRlZnR5cGVmbnggIzEge39cZGVmdHlwZWZueAEyNzYyLDkxNDc0Ci1cZGVmXGRlZnR5 cGV1bnggIzEge39cZGVmdHlwZXVueAEyNzYzLDkxNTM5Ci1cZGVmXGRlZm9wICMxIHt/XGRlZm9w ATI3NjksOTE2ODUKLVxkZWZvcHBhcnNlYm9keVxFZGVmb3BcZGVmb3B4XGRlZm9waGVhZGVyXGRl Zm9wdHlwZX1/b3BwYXJzZWJvZHlcRWRlZm9wXGRlZm9weFxkZWZvcGhlYWRlclxkZWZvcHR5cGUB Mjc3MCw5MTcyMAotXGRlZlxkZWZvcGhlYWRlciAjMSMyIzN7f1xkZWZvcGhlYWRlcgEyNzcyLDkx Nzc0CitcZGVmXGRlZmZueCAjMSB7f2RlZmZueAEyNzU4LDkxMjQwCitcZGVmXGRlZnVueCAjMSB7 f2RlZnVueAEyNzU5LDkxMjk3CitcZGVmXGRlZm1hY3ggIzEge39kZWZtYWN4ATI3NjAsOTEzNTQK K1xkZWZcZGVmc3BlY3ggIzEge39kZWZzcGVjeAEyNzYxLDkxNDEzCitcZGVmXGRlZnR5cGVmbngg IzEge39kZWZ0eXBlZm54ATI3NjIsOTE0NzQKK1xkZWZcZGVmdHlwZXVueCAjMSB7f2RlZnR5cGV1 bngBMjc2Myw5MTUzOQorXGRlZlxkZWZvcCAjMSB7f2RlZm9wATI3NjksOTE2ODUKK1xkZWZcZGVm b3AgIzEge1xkZWZcZGVmb3B0eXBle39kZWZvcHR5cGUBMjc2OSw5MTY4NQorXGRlZm9wcGFyc2Vi b2R5XEVkZWZvcFxkZWZvcHhcZGVmb3BoZWFkZXJcZGVmb3B0eXBlfX9vcHBhcnNlYm9keVxFZGVm b3ABMjc3MCw5MTcyMAorXGRlZm9wcGFyc2Vib2R5XEVkZWZvcFxkZWZvcHhcZGVmb3BoZWFkZXJc ZGVmb3B0eXBlfX9vcHhcZGVmb3BoZWFkZXIBMjc3MCw5MTcyMAorXGRlZm9wcGFyc2Vib2R5XEVk ZWZvcFxkZWZvcHhcZGVmb3BoZWFkZXJcZGVmb3B0eXBlfX9vcGhlYWRlclxkZWZvcHR5cGUBMjc3 MCw5MTcyMAorXGRlZm9wcGFyc2Vib2R5XEVkZWZvcFxkZWZvcHhcZGVmb3BoZWFkZXJcZGVmb3B0 eXBlfX9vcHR5cGUBMjc3MCw5MTcyMAorXGRlZlxkZWZvcGhlYWRlciAjMSMyIzN7f2RlZm9waGVh ZGVyATI3NzIsOTE3NzQKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI3NzQsOTE4NjMKK1xi ZWdpbmdyb3VwXGRlZm5hbWUgeyMyfXtcZGVmb3B0eXBle39vcHR5cGUBMjc3NCw5MTg2MwogXGRl ZnVuYXJncyB7f3VuYXJncwEyNzc1LDkxOTA5Ci1cZGVmXGRlZm1ldGhvZHt/XGRlZm1ldGhvZAEy NzgwLDkxOTcwCi1cZGVmXGRlZm1ldGhvZGhlYWRlciAjMSMyIzN7f1xkZWZtZXRob2RoZWFkZXIB Mjc4Miw5MjA0MworXGRlZlxkZWZtZXRob2R7f2RlZm1ldGhvZAEyNzgwLDkxOTcwCitcZGVmXGRl Zm1ldGhvZHtcZGVmbWV0aHBhcnNlYm9keVxFZGVmbWV0aG9kXGRlZm1ldGhvZHhcZGVmbWV0aG9k aGVhZGVyfX9tZXRocGFyc2Vib2R5XEVkZWZtZXRob2QBMjc4MCw5MTk3MAorXGRlZlxkZWZtZXRo b2R7XGRlZm1ldGhwYXJzZWJvZHlcRWRlZm1ldGhvZFxkZWZtZXRob2R4XGRlZm1ldGhvZGhlYWRl cn1/bWV0aG9keFxkZWZtZXRob2RoZWFkZXIBMjc4MCw5MTk3MAorXGRlZlxkZWZtZXRob2R7XGRl Zm1ldGhwYXJzZWJvZHlcRWRlZm1ldGhvZFxkZWZtZXRob2R4XGRlZm1ldGhvZGhlYWRlcn1/bWV0 aG9kaGVhZGVyATI3ODAsOTE5NzAKK1xkZWZcZGVmbWV0aG9kaGVhZGVyICMxIzIjM3t/ZGVmbWV0 aG9kaGVhZGVyATI3ODIsOTIwNDMKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI3ODQsOTIx MzEKIFxkZWZ1bmFyZ3Mge391bmFyZ3MBMjc4NSw5MjE3MQotXGRlZlxkZWZjdiAjMSB7f1xkZWZj dgEyNzkwLDkyMjQ1Ci1cZGVmb3B2YXJwYXJzZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZjdmFyaGVh ZGVyXGRlZmN2dHlwZX1/b3B2YXJwYXJzZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZjdmFyaGVhZGVy XGRlZmN2dHlwZQEyNzkxLDkyMjgwCi1cZGVmXGRlZmN2YXJoZWFkZXIgIzEjMiMze39cZGVmY3Zh cmhlYWRlcgEyNzkzLDkyMzM5CitcZGVmXGRlZmN2ICMxIHt/ZGVmY3YBMjc5MCw5MjI0NQorXGRl ZlxkZWZjdiAjMSB7XGRlZlxkZWZjdnR5cGV7f2RlZmN2dHlwZQEyNzkwLDkyMjQ1CitcZGVmb3B2 YXJwYXJzZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZjdmFyaGVhZGVyXGRlZmN2dHlwZX1/b3B2YXJw YXJzZWJvZHlcRWRlZmN2ATI3OTEsOTIyODAKK1xkZWZvcHZhcnBhcnNlYm9keVxFZGVmY3ZcZGVm Y3Z4XGRlZmN2YXJoZWFkZXJcZGVmY3Z0eXBlfX9jdnhcZGVmY3ZhcmhlYWRlcgEyNzkxLDkyMjgw CitcZGVmb3B2YXJwYXJzZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZjdmFyaGVhZGVyXGRlZmN2dHlw ZX1/Y3ZhcmhlYWRlclxkZWZjdnR5cGUBMjc5MSw5MjI4MAorXGRlZm9wdmFycGFyc2Vib2R5XEVk ZWZjdlxkZWZjdnhcZGVmY3ZhcmhlYWRlclxkZWZjdnR5cGV9f2N2dHlwZQEyNzkxLDkyMjgwCitc ZGVmXGRlZmN2YXJoZWFkZXIgIzEjMiMze39kZWZjdmFyaGVhZGVyATI3OTMsOTIzMzkKIFxiZWdp bmdyb3VwXGRlZm5hbWUge39uYW1lATI3OTUsOTI0MjUKK1xiZWdpbmdyb3VwXGRlZm5hbWUgeyMy fXtcZGVmY3Z0eXBle39jdnR5cGUBMjc5NSw5MjQyNQogXGRlZnZhcmFyZ3Mge392YXJhcmdzATI3 OTYsOTI0NzEKLVxkZWZcZGVmaXZhcnt/XGRlZml2YXIBMjgwMSw5MjU0NAotXGRlZlxkZWZpdmFy aGVhZGVyICMxIzIjM3t/XGRlZml2YXJoZWFkZXIBMjgwMyw5MjYwNworXGRlZlxkZWZpdmFye39k ZWZpdmFyATI4MDEsOTI1NDQKK1xkZWZcZGVmaXZhcntcZGVmdnJwYXJzZWJvZHlcRWRlZml2YXJc ZGVmaXZhcnhcZGVmaXZhcmhlYWRlcn1/dnJwYXJzZWJvZHlcRWRlZml2YXIBMjgwMSw5MjU0NAor XGRlZlxkZWZpdmFye1xkZWZ2cnBhcnNlYm9keVxFZGVmaXZhclxkZWZpdmFyeFxkZWZpdmFyaGVh ZGVyfX9pdmFyeFxkZWZpdmFyaGVhZGVyATI4MDEsOTI1NDQKK1xkZWZcZGVmaXZhcntcZGVmdnJw YXJzZWJvZHlcRWRlZml2YXJcZGVmaXZhcnhcZGVmaXZhcmhlYWRlcn1/aXZhcmhlYWRlcgEyODAx LDkyNTQ0CitcZGVmXGRlZml2YXJoZWFkZXIgIzEjMiMze39kZWZpdmFyaGVhZGVyATI4MDMsOTI2 MDcKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI4MDUsOTI2OTMKIFxkZWZ2YXJhcmdzIHt/ dmFyYXJncwEyODA2LDkyNzQ0Ci1cZGVmXGRlZm9weCAjMSB7f1xkZWZvcHgBMjgxMiw5Mjg5Mwot XGRlZlxkZWZtZXRob2R4ICMxIHt/XGRlZm1ldGhvZHgBMjgxMyw5Mjk1MAotXGRlZlxkZWZjdngg IzEge39cZGVmY3Z4ATI4MTQsOTMwMTUKLVxkZWZcZGVmaXZhcnggIzEge39cZGVmaXZhcngBMjgx NSw5MzA3MgotXGRlZlxkZWZ2YXJhcmdzICMxe39cZGVmdmFyYXJncwEyODIyLDkzMzQzCi1cZGVm XGRlZnZye39cZGVmdnIBMjgyOCw5MzQ4NwotXGRlZlxkZWZ2cmhlYWRlciAjMSMyIzN7f1xkZWZ2 cmhlYWRlcgEyODMwLDkzNTQyCitcZGVmXGRlZm9weCAjMSB7f2RlZm9weAEyODEyLDkyODkzCitc ZGVmXGRlZm1ldGhvZHggIzEge39kZWZtZXRob2R4ATI4MTMsOTI5NTAKK1xkZWZcZGVmY3Z4ICMx IHt/ZGVmY3Z4ATI4MTQsOTMwMTUKK1xkZWZcZGVmaXZhcnggIzEge39kZWZpdmFyeAEyODE1LDkz MDcyCitcZGVmXGRlZnZhcmFyZ3MgIzF7f2RlZnZhcmFyZ3MBMjgyMiw5MzM0MworXGRlZlxkZWZ2 cnt/ZGVmdnIBMjgyOCw5MzQ4NworXGRlZlxkZWZ2cntcZGVmdnJwYXJzZWJvZHlcRWRlZnZyXGRl ZnZyeFxkZWZ2cmhlYWRlcn1/dnJwYXJzZWJvZHlcRWRlZnZyATI4MjgsOTM0ODcKK1xkZWZcZGVm dnJ7XGRlZnZycGFyc2Vib2R5XEVkZWZ2clxkZWZ2cnhcZGVmdnJoZWFkZXJ9f3ZyeFxkZWZ2cmhl YWRlcgEyODI4LDkzNDg3CitcZGVmXGRlZnZye1xkZWZ2cnBhcnNlYm9keVxFZGVmdnJcZGVmdnJ4 XGRlZnZyaGVhZGVyfX92cmhlYWRlcgEyODI4LDkzNDg3CitcZGVmXGRlZnZyaGVhZGVyICMxIzIj M3t/ZGVmdnJoZWFkZXIBMjgzMCw5MzU0MgogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjgz MSw5MzU5MAotXGRlZlxkZWZ2YXJ7f1xkZWZ2YXIBMjgzNSw5MzY3NQotXGRlZlxkZWZ2YXJoZWFk ZXIgIzEjMnt/XGRlZnZhcmhlYWRlcgEyODM3LDkzNzM1CitcYmVnaW5ncm91cFxkZWZuYW1lIHsj Mn17IzF9XGRlZnZhcmFyZ3N7f3ZhcmFyZ3MBMjgzMSw5MzU5MAorXGRlZlxkZWZ2YXJ7f2RlZnZh cgEyODM1LDkzNjc1CitcZGVmXGRlZnZhcntcZGVmdmFycGFyc2Vib2R5XEVkZWZ2YXJcZGVmdmFy eFxkZWZ2YXJoZWFkZXJ9f3ZhcnBhcnNlYm9keVxFZGVmdmFyATI4MzUsOTM2NzUKK1xkZWZcZGVm dmFye1xkZWZ2YXJwYXJzZWJvZHlcRWRlZnZhclxkZWZ2YXJ4XGRlZnZhcmhlYWRlcn1/dmFyeFxk ZWZ2YXJoZWFkZXIBMjgzNSw5MzY3NQorXGRlZlxkZWZ2YXJ7XGRlZnZhcnBhcnNlYm9keVxFZGVm dmFyXGRlZnZhcnhcZGVmdmFyaGVhZGVyfX92YXJoZWFkZXIBMjgzNSw5MzY3NQorXGRlZlxkZWZ2 YXJoZWFkZXIgIzEjMnt/ZGVmdmFyaGVhZGVyATI4MzcsOTM3MzUKIFxiZWdpbmdyb3VwXGRlZm5h bWUge39uYW1lATI4MzgsOTM4MDYKIFxkZWZ2YXJhcmdzIHt/dmFyYXJncwEyODM5LDkzODQyCi1c ZGVmXGRlZm9wdHt/XGRlZm9wdAEyODQ0LDkzOTA4Ci1cZGVmXGRlZm9wdGhlYWRlciAjMSMye39c ZGVmb3B0aGVhZGVyATI4NDYsOTM5NjgKK1xkZWZcZGVmb3B0e39kZWZvcHQBMjg0NCw5MzkwOAor XGRlZlxkZWZvcHR7XGRlZnZhcnBhcnNlYm9keVxFZGVmb3B0XGRlZm9wdHhcZGVmb3B0aGVhZGVy fX92YXJwYXJzZWJvZHlcRWRlZm9wdAEyODQ0LDkzOTA4CitcZGVmXGRlZm9wdHtcZGVmdmFycGFy c2Vib2R5XEVkZWZvcHRcZGVmb3B0eFxkZWZvcHRoZWFkZXJ9f29wdHhcZGVmb3B0aGVhZGVyATI4 NDQsOTM5MDgKK1xkZWZcZGVmb3B0e1xkZWZ2YXJwYXJzZWJvZHlcRWRlZm9wdFxkZWZvcHR4XGRl Zm9wdGhlYWRlcn1/b3B0aGVhZGVyATI4NDQsOTM5MDgKK1xkZWZcZGVmb3B0aGVhZGVyICMxIzJ7 f2RlZm9wdGhlYWRlcgEyODQ2LDkzOTY4CiBcYmVnaW5ncm91cFxkZWZuYW1lIHt/bmFtZQEyODQ3 LDk0MDM5CiBcZGVmdmFyYXJncyB7f3ZhcmFyZ3MBMjg0OCw5NDA3OAotXGRlZlxkZWZ0eXBldmFy e39cZGVmdHlwZXZhcgEyODUzLDk0MTM1Ci1cZGVmXGRlZnR5cGV2YXJoZWFkZXIgIzEjMnt/XGRl ZnR5cGV2YXJoZWFkZXIBMjg1Niw5NDI1MQorXGRlZlxkZWZ0eXBldmFye39kZWZ0eXBldmFyATI4 NTMsOTQxMzUKK1xkZWZcZGVmdHlwZXZhcntcZGVmdmFycGFyc2Vib2R5XEVkZWZ0eXBldmFyXGRl ZnR5cGV2YXJ4XGRlZnR5cGV2YXJoZWFkZXJ9f3ZhcnBhcnNlYm9keVxFZGVmdHlwZXZhcgEyODUz LDk0MTM1CitcZGVmXGRlZnR5cGV2YXJ7XGRlZnZhcnBhcnNlYm9keVxFZGVmdHlwZXZhclxkZWZ0 eXBldmFyeFxkZWZ0eXBldmFyaGVhZGVyfX90eXBldmFyeFxkZWZ0eXBldmFyaGVhZGVyATI4NTMs OTQxMzUKK1xkZWZcZGVmdHlwZXZhcntcZGVmdmFycGFyc2Vib2R5XEVkZWZ0eXBldmFyXGRlZnR5 cGV2YXJ4XGRlZnR5cGV2YXJoZWFkZXJ9f3R5cGV2YXJoZWFkZXIBMjg1Myw5NDEzNQorXGRlZlxk ZWZ0eXBldmFyaGVhZGVyICMxIzJ7f2RlZnR5cGV2YXJoZWFkZXIBMjg1Niw5NDI1MQogXGJlZ2lu Z3JvdXBcZGVmbmFtZSB7f25hbWUBMjg1OCw5NDMzNAotXGRlZlxkZWZ0eXBldnJ7f1xkZWZ0eXBl dnIBMjg2NSw5NDUwOAotXGRlZlxkZWZ0eXBldnJoZWFkZXIgIzEjMiMze39cZGVmdHlwZXZyaGVh ZGVyATI4NjcsOTQ1NzkKK1xkZWZcZGVmdHlwZXZye39kZWZ0eXBldnIBMjg2NSw5NDUwOAorXGRl ZlxkZWZ0eXBldnJ7XGRlZnZycGFyc2Vib2R5XEVkZWZ0eXBldnJcZGVmdHlwZXZyeFxkZWZ0eXBl dnJoZWFkZXJ9f3ZycGFyc2Vib2R5XEVkZWZ0eXBldnIBMjg2NSw5NDUwOAorXGRlZlxkZWZ0eXBl dnJ7XGRlZnZycGFyc2Vib2R5XEVkZWZ0eXBldnJcZGVmdHlwZXZyeFxkZWZ0eXBldnJoZWFkZXJ9 f3R5cGV2cnhcZGVmdHlwZXZyaGVhZGVyATI4NjUsOTQ1MDgKK1xkZWZcZGVmdHlwZXZye1xkZWZ2 cnBhcnNlYm9keVxFZGVmdHlwZXZyXGRlZnR5cGV2cnhcZGVmdHlwZXZyaGVhZGVyfX90eXBldnJo ZWFkZXIBMjg2NSw5NDUwOAorXGRlZlxkZWZ0eXBldnJoZWFkZXIgIzEjMiMze39kZWZ0eXBldnJo ZWFkZXIBMjg2Nyw5NDU3OQogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjg2OCw5NDYzMQot XGRlZlxkZWZ2cnggIzEge39cZGVmdnJ4ATI4NzYsOTQ4NjgKLVxkZWZcZGVmdmFyeCAjMSB7f1xk ZWZ2YXJ4ATI4NzcsOTQ5MjUKLVxkZWZcZGVmb3B0eCAjMSB7f1xkZWZvcHR4ATI4NzgsOTQ5ODQK LVxkZWZcZGVmdHlwZXZhcnggIzEge39cZGVmdHlwZXZhcngBMjg3OSw5NTA0MwotXGRlZlxkZWZ0 eXBldnJ4ICMxIHt/XGRlZnR5cGV2cngBMjg4MCw5NTExMAotXGRlZlxkZWZ0cGFyZ3MgIzF7f1xk ZWZ0cGFyZ3MBMjg4NSw5NTI1OQotXGRlZlxkZWZ0cHt/XGRlZnRwATI4ODksOTUzMzkKLVxkZWZc ZGVmdHBoZWFkZXIgIzEjMiMze39cZGVmdHBoZWFkZXIBMjg5MSw5NTM5NAorXGRlZlxkZWZ2cngg IzEge39kZWZ2cngBMjg3Niw5NDg2OAorXGRlZlxkZWZ2YXJ4ICMxIHt/ZGVmdmFyeAEyODc3LDk0 OTI1CitcZGVmXGRlZm9wdHggIzEge39kZWZvcHR4ATI4NzgsOTQ5ODQKK1xkZWZcZGVmdHlwZXZh cnggIzEge39kZWZ0eXBldmFyeAEyODc5LDk1MDQzCitcZGVmXGRlZnR5cGV2cnggIzEge39kZWZ0 eXBldnJ4ATI4ODAsOTUxMTAKK1xkZWZcZGVmdHBhcmdzICMxe39kZWZ0cGFyZ3MBMjg4NSw5NTI1 OQorXGRlZlxkZWZ0cGFyZ3MgIzF7XGJmIFxkZWZ2YXJhcmdze392YXJhcmdzATI4ODUsOTUyNTkK K1xkZWZcZGVmdHB7f2RlZnRwATI4ODksOTUzMzkKK1xkZWZcZGVmdHB7XGRlZnZycGFyc2Vib2R5 XEVkZWZ0cFxkZWZ0cHhcZGVmdHBoZWFkZXJ9f3ZycGFyc2Vib2R5XEVkZWZ0cAEyODg5LDk1MzM5 CitcZGVmXGRlZnRwe1xkZWZ2cnBhcnNlYm9keVxFZGVmdHBcZGVmdHB4XGRlZnRwaGVhZGVyfX90 cHhcZGVmdHBoZWFkZXIBMjg4OSw5NTMzOQorXGRlZlxkZWZ0cHtcZGVmdnJwYXJzZWJvZHlcRWRl ZnRwXGRlZnRweFxkZWZ0cGhlYWRlcn1/dHBoZWFkZXIBMjg4OSw5NTMzOQorXGRlZlxkZWZ0cGhl YWRlciAjMSMyIzN7f2RlZnRwaGVhZGVyATI4OTEsOTUzOTQKIFxiZWdpbmdyb3VwXGRlZm5hbWUg e39uYW1lATI4OTIsOTU0NDIKLVxkZWZcZGVmdHB4ICMxIHt/XGRlZnRweAEyODk3LDk1NjAxCi1c ZGVmXHNldHJlZiMxe39cc2V0cmVmATI5MDgsOTU5MjIKLVxkZWZcdW5udW1ic2V0cmVmIzF7f1x1 bm51bWJzZXRyZWYBMjkxMyw5NjAzNgotXGRlZlxhcHBlbmRpeHNldHJlZiMxe39cYXBwZW5kaXhz ZXRyZWYBMjkxOCw5NjE0MwotXGRlZlxweHJlZiMxe39ccHhyZWYBMjkyOSw5NjU1NAotXGRlZlx4 cmVmIzF7f1x4cmVmATI5MzAsOTY1OTAKLVxkZWZccmVmIzF7f1xyZWYBMjkzMSw5NjYyNQotXGRl Zlx4cmVmWFsjMSwjMiwjMywjNCwjNSwjNl17f1x4cmVmWFsBMjkzMiw5NjY1NQotXGRlZlxwcmlu dGVkbWFudWFse39ccHJpbnRlZG1hbnVhbAEyOTMzLDk2Njk4Ci1cZGVmXHByaW50ZWRub2RlbmFt ZXt/XHByaW50ZWRub2RlbmFtZQEyOTM0LDk2NzM2Ci1cZGVmXHByaW50ZWRub2RlbmFtZXt/XHBy aW50ZWRub2RlbmFtZQEyOTM5LDk2ODYxCi1zZWN0aW9uIGBgXHByaW50ZWRub2RlbmFtZScnIGlu IFxjaXRle1xwcmludGVkbWFudWFsfX9ccHJpbnRlZG1hbnVhbAEyOTU0LDk3NDkzCitcYmVnaW5n cm91cFxkZWZuYW1lIHsjMn17IzF9XGRlZnRwYXJnc3t/dHBhcmdzATI4OTIsOTU0NDIKK1xkZWZc ZGVmdHB4ICMxIHt/ZGVmdHB4ATI4OTcsOTU2MDEKK1xkZWZcc2V0cmVmIzF7f3NldHJlZgEyOTA4 LDk1OTIyCitcZGVmXHVubnVtYnNldHJlZiMxe391bm51bWJzZXRyZWYBMjkxMyw5NjAzNgorXGRl ZlxhcHBlbmRpeHNldHJlZiMxe39hcHBlbmRpeHNldHJlZgEyOTE4LDk2MTQzCitcZGVmXHB4cmVm IzF7f3B4cmVmATI5MjksOTY1NTQKK1xkZWZceHJlZiMxe394cmVmATI5MzAsOTY1OTAKK1xkZWZc cmVmIzF7f3JlZgEyOTMxLDk2NjI1CitcZGVmXHhyZWZYWyMxLCMyLCMzLCM0LCM1LCM2XXt/eHJl ZlgBMjkzMiw5NjY1NQorXGRlZlxwcmludGVkbWFudWFse39wcmludGVkbWFudWFsATI5MzMsOTY2 OTgKK1xkZWZccHJpbnRlZG5vZGVuYW1le39wcmludGVkbm9kZW5hbWUBMjkzNCw5NjczNgorXGRl ZlxwcmludGVkbm9kZW5hbWV7f3ByaW50ZWRub2RlbmFtZQEyOTM5LDk2ODYxCitzZWN0aW9uIGBg XHByaW50ZWRub2RlbmFtZScnIGluIFxjaXRle1xwcmludGVkbWFudWFsfX9wcmludGVkbWFudWFs ATI5NTQsOTc0OTMKIFxyZWZ4e394ATI5NTcsOTc1NzEKLVxkZWZcZG9zZXRxICMxIzJ7f1xkb3Nl dHEBMjk2NSw5Nzc5MQotXGRlZlxpbnRlcm5hbHNldHEgIzEjMnt/XGludGVybmFsc2V0cQEyOTcz LDk4MDQ5Ci1cZGVmXFlwYWdlbnVtYmVye39cWXBhZ2VudW1iZXIBMjk3Nyw5ODE1MAotXGRlZlxZ dGl0bGV7f1xZdGl0bGUBMjk3OSw5ODE3NgotXGRlZlxZbm90aGluZ3t/XFlub3RoaW5nATI5ODEs OTgyMDMKLVxkZWZcWXNlY3Rpb25udW1iZXJhbmR0eXBle39cWXNlY3Rpb25udW1iZXJhbmR0eXBl ATI5ODMsOTgyMjAKLVxkZWZcWWFwcGVuZGl4bGV0dGVyYW5kdHlwZXt/XFlhcHBlbmRpeGxldHRl cmFuZHR5cGUBMjk5Miw5ODUzNgorXHJlZnh7IzEtc250fXt9IFtccHJpbnRlZG5vZGVuYW1lXSwg cGFnZVx0aWVccmVmeHt/eAEyOTU3LDk3NTcxCitcZGVmXGRvc2V0cSAjMSMye39kb3NldHEBMjk2 NSw5Nzc5MQorXGRlZlxkb3NldHEgIzEjMnt7XGxldFxmb2xpbz0wIFx0dXJub2ZmYWN0aXZlJX9m b2xpbwEyOTY1LDk3NzkxCitcZWRlZlxuZXh0e39uZXh0ATI5NjYsOTc4MzgKK1xkZWZcaW50ZXJu YWxzZXRxICMxIzJ7f2ludGVybmFsc2V0cQEyOTczLDk4MDQ5CitcZGVmXFlwYWdlbnVtYmVye39Z cGFnZW51bWJlcgEyOTc3LDk4MTUwCitcZGVmXFl0aXRsZXt/WXRpdGxlATI5NzksOTgxNzYKK1xk ZWZcWW5vdGhpbmd7f1lub3RoaW5nATI5ODEsOTgyMDMKK1xkZWZcWXNlY3Rpb25udW1iZXJhbmR0 eXBle39Zc2VjdGlvbm51bWJlcmFuZHR5cGUBMjk4Myw5ODIyMAorXGRlZlxZYXBwZW5kaXhsZXR0 ZXJhbmR0eXBle39ZYXBwZW5kaXhsZXR0ZXJhbmR0eXBlATI5OTIsOTg1MzYKIFxpZm51bVxzZWNu bz0wIEFwcGVuZGl4XHhyZWZ0aWUnY2hhclx0aGVcYXBwZW5kaXhub3t/bm8BMjk5Myw5ODU2Ngot XGVsc2UgXGlmbnVtIFxzdWJzZWNubz0wIFNlY3Rpb25ceHJlZnRpZSdjaGFyXHRoZVxhcHBlbmRp eG5vLlx0aGVcc2Vjbm8gJX9uby5cdGhlXHNlY25vATI5OTQsOTg2MjEKLVNlY3Rpb25ceHJlZnRp ZSdjaGFyXHRoZVxhcHBlbmRpeG5vLlx0aGVcc2Vjbm8uXHRoZVxzdWJzZWNubyAlf25vLlx0aGVc c2Vjbm8uXHRoZVxzdWJzZWNubwEyOTk2LDk4NzI1Ci1TZWN0aW9uXHhyZWZ0aWUnY2hhclx0aGVc YXBwZW5kaXhuby5cdGhlXHNlY25vLlx0aGVcc3Vic2Vjbm8uXHRoZVxzdWJzdWJzZWNubyAlf25v Llx0aGVcc2Vjbm8uXHRoZVxzdWJzZWNuby5cdGhlXHN1YnN1YnNlY25vATI5OTgsOTg3OTYKLSAg XGRlZlxsaW5lbnVtYmVye39cbGluZW51bWJlcgEzMDA5LDk5MTM1Ci1cZGVmXHJlZngjMSMye39c cmVmeAEzMDE1LDk5MzE5Ci1cZGVmXHhyZGVmICMxIzJ7f1x4cmRlZgEzMDM3LDk5OTQ1Ci1cZGVm XHJlYWRhdXhmaWxle39ccmVhZGF1eGZpbGUBMzA0MCwxMDAwMzAKLVxkZWZcc3VwZXJlamVjdHt/ XHN1cGVyZWplY3QBMzExMCwxMDE4MTEKLVxmb290c3RydXRccGFyaW5kZW50PVxkZWZhdWx0cGFy aW5kZW50XGhhbmdcdGV4dGluZGVudHt/YXVsdHBhcmluZGVudFxoYW5nXHRleHRpbmRlbnQBMzEz MSwxMDI0OTYKLVxkZWZcb3BlbmluZGljZXN7f1xvcGVuaW5kaWNlcwEzMTM5LDEwMjY4MgorXGVs c2UgXGlmbnVtIFxzdWJzZWNubz0wIFNlY3Rpb25ceHJlZnRpZSdjaGFyXHRoZVxhcHBlbmRpeG5v Llx0aGVcc2Vjbm8gJX9uby5cdGhlATI5OTQsOTg2MjEKK1NlY3Rpb25ceHJlZnRpZSdjaGFyXHRo ZVxhcHBlbmRpeG5vLlx0aGVcc2Vjbm8uXHRoZVxzdWJzZWNubyAlf25vLlx0aGUBMjk5Niw5ODcy NQorU2VjdGlvblx4cmVmdGllJ2NoYXJcdGhlXGFwcGVuZGl4bm8uXHRoZVxzZWNuby5cdGhlXHN1 YnNlY25vLlx0aGVcc3Vic3Vic2Vjbm8gJX9uby5cdGhlATI5OTgsOTg3OTYKK1xnZGVmXHhyZWZ0 aWV7f3hyZWZ0aWUBMzAwMSw5ODg5MQorICBcbGV0XGxpbmVudW1iZXIgPSBcZW1wdHkgJSBOb24t My4wLn9saW5lbnVtYmVyATMwMDcsOTkwOTEKKyAgXGRlZlxsaW5lbnVtYmVye39saW5lbnVtYmVy ATMwMDksOTkxMzUKK1xkZWZccmVmeCMxIzJ7f3JlZngBMzAxNSw5OTMxOQorXGRlZlx4cmRlZiAj MSMye394cmRlZgEzMDM3LDk5OTQ1Cit7XGNhdGNvZGVgXCc9XG90aGVyXGV4cGFuZGFmdGVyIFxn ZGVmIFxjc25hbWUgWCMxXGVuZGNzbmFtZSB7f2NzbmFtZQEzMDM4LDk5OTYyCitcZGVmXHJlYWRh dXhmaWxle39yZWFkYXV4ZmlsZQEzMDQwLDEwMDAzMAorXGRlZlxzdXBlcmVqZWN0e39zdXBlcmVq ZWN0ATMxMTAsMTAxODExCitcbGV0XGZvb3Rub3Rlc3R5bGU9XGNvbW1lbnR/Zm9vdG5vdGVzdHls ZQEzMTEzLDEwMTkxOAorXGxldFxwdGV4Zm9vdG5vdGU9XGZvb3Rub3Rlf3B0ZXhmb290bm90ZQEz MTE1LDEwMTk0NworXGxvbmdcZ2RlZlxmb290bm90ZSAjMXt/Zm9vdG5vdGUBMzExOCwxMDE5OTMK K1xlZGVmXHRoaXNmb290bm97f3RoaXNmb290bm8BMzEyMCwxMDIwNjAKK1xsZXRcQHNmXGVtcHR5 f0BzZgEzMTIxLDEwMjEwMAorXGlmaG1vZGVcZWRlZlxAc2Z7f0BzZgEzMTIyLDEwMjExNQorXGxv bmdcZ2RlZlxmb290bm90ZXp6eiAjMXt/Zm9vdG5vdGV6enoBMzEyNiwxMDIyMjgKK1xmb290c3Ry dXRccGFyaW5kZW50PVxkZWZhdWx0cGFyaW5kZW50XGhhbmdcdGV4dGluZGVudHt/YXVsdHBhcmlu ZGVudFxoYW5nATMxMzEsMTAyNDk2CitcZGVmXG9wZW5pbmRpY2Vze39vcGVuaW5kaWNlcwEzMTM5 LDEwMjY4MgorXG5ld2RpbWVuXGRlZmF1bHRwYXJpbmRlbnQgXGRlZmF1bHRwYXJpbmRlbnQgPSAx NXB0f2F1bHRwYXJpbmRlbnQBMzE1MSwxMDI5MDcKIFxuZXdkaW1lblxkZWZhdWx0cGFyaW5kZW50 IFxkZWZhdWx0cGFyaW5kZW50ID0gMTVwdH9hdWx0cGFyaW5kZW50ATMxNTEsMTAyOTA3CiBccGFy aW5kZW50ID0gXGRlZmF1bHRwYXJpbmRlbnR/YXVsdHBhcmluZGVudAEzMTUyLDEwMjk1OQotXGRl ZlxzbWFsbGJvb2t7f1xzbWFsbGJvb2sBMzE3NSwxMDM2ODMKLVxnbG9iYWxcZGVmXEVzbWFsbGV4 YW1wbGV7f1xFc21hbGxleGFtcGxlATMxOTIsMTA0MTEwCi1cZGVmXGFmb3VycGFwZXJ7f1xhZm91 cnBhcGVyATMxOTYsMTA0MjAxCi1cZGVmXGZpbmFsb3V0e39cZmluYWxvdXQBMzIyNCwxMDUwMDkK LVxkZWZcbm9ybWFsZG91YmxlcXVvdGV7f1xub3JtYWxkb3VibGVxdW90ZQEzMjM1LDEwNTI3MAot XGRlZlxub3JtYWx0aWxkZXt/XG5vcm1hbHRpbGRlATMyMzYsMTA1Mjk2Ci1cZGVmXG5vcm1hbGNh cmV0e39cbm9ybWFsY2FyZXQBMzIzNywxMDUzMTYKLVxkZWZcbm9ybWFsdW5kZXJzY29yZXt/XG5v cm1hbHVuZGVyc2NvcmUBMzIzOCwxMDUzMzYKLVxkZWZcbm9ybWFsdmVydGljYWxiYXJ7f1xub3Jt YWx2ZXJ0aWNhbGJhcgEzMjM5LDEwNTM2MQotXGRlZlxub3JtYWxsZXNze39cbm9ybWFsbGVzcwEz MjQwLDEwNTM4NwotXGRlZlxub3JtYWxncmVhdGVye39cbm9ybWFsZ3JlYXRlcgEzMjQxLDEwNTQw NgotXGRlZlxub3JtYWxwbHVze39cbm9ybWFscGx1cwEzMjQyLDEwNTQyOAotXGRlZlxpZnVzaW5n dHQjMSMye39caWZ1c2luZ3R0ATMyNTMsMTA1OTIwCi1cZGVmXGFjdGl2ZWRvdWJsZXF1b3Rle39c YWN0aXZlZG91YmxlcXVvdGUBMzI2MSwxMDYyNDgKK1xkZWZcc21hbGxib29re39zbWFsbGJvb2sB MzE3NSwxMDM2ODMKK1xnbG9iYWxcbGV0XHNtYWxsbGlzcD1cc21hbGxsaXNweH9zbWFsbGxpc3AB MzE5MCwxMDQwMzkKK1xnbG9iYWxcbGV0XHNtYWxsZXhhbXBsZT1cc21hbGxsaXNweH9zbWFsbGV4 YW1wbGUBMzE5MSwxMDQwNzMKK1xnbG9iYWxcZGVmXEVzbWFsbGV4YW1wbGV7f0VzbWFsbGV4YW1w bGUBMzE5MiwxMDQxMTAKK1xkZWZcYWZvdXJwYXBlcnt/YWZvdXJwYXBlcgEzMTk2LDEwNDIwMQor XGRlZlxmaW5hbG91dHt/ZmluYWxvdXQBMzIyNCwxMDUwMDkKK1xkZWZcbm9ybWFsZG91YmxlcXVv dGV7f25vcm1hbGRvdWJsZXF1b3RlATMyMzUsMTA1MjcwCitcZGVmXG5vcm1hbHRpbGRle39ub3Jt YWx0aWxkZQEzMjM2LDEwNTI5NgorXGRlZlxub3JtYWxjYXJldHt/bm9ybWFsY2FyZXQBMzIzNywx MDUzMTYKK1xkZWZcbm9ybWFsdW5kZXJzY29yZXt/bm9ybWFsdW5kZXJzY29yZQEzMjM4LDEwNTMz NgorXGRlZlxub3JtYWx2ZXJ0aWNhbGJhcnt/bm9ybWFsdmVydGljYWxiYXIBMzIzOSwxMDUzNjEK K1xkZWZcbm9ybWFsbGVzc3t/bm9ybWFsbGVzcwEzMjQwLDEwNTM4NworXGRlZlxub3JtYWxncmVh dGVye39ub3JtYWxncmVhdGVyATMyNDEsMTA1NDA2CitcZGVmXG5vcm1hbHBsdXN7f25vcm1hbHBs dXMBMzI0MiwxMDU0MjgKK1xkZWZcaWZ1c2luZ3R0IzEjMnt/aWZ1c2luZ3R0ATMyNTMsMTA1OTIw CitcZGVmXGFjdGl2ZWRvdWJsZXF1b3Rle39hY3RpdmVkb3VibGVxdW90ZQEzMjYxLDEwNjI0OAor XGxldCI9XGFjdGl2ZWRvdWJsZXF1b3RlfyIBMzI2MiwxMDYyODkKIFxkZWZ+e39+ATMyNjQsMTA2 MzM0CiBcZGVmXnt/XgEzMjY3LDEwNjM5NQogXGRlZl97f18BMzI3MCwxMDY0MzQKLVxkZWZcX3t/ XF8BMzI3MiwxMDY1MDgKLVxkZWZcbHZ2bW9kZXt/XGx2dm1vZGUBMzI3OSwxMDY4NDUKK1xkZWZc X3t/XwEzMjcyLDEwNjUwOAorXGRlZlxsdnZtb2Rle39sdnZtb2RlATMyNzksMTA2ODQ1CiBcZGVm fHt/fAEzMjgyLDEwNjg5NQogXGRlZjx7fzwBMzI4NSwxMDY5NTgKIFxkZWY+e38+ATMyODgsMTA3 MDE1CiBcZGVmK3t/KwEzMjkwLDEwNzA1MwotXGRlZlx0dXJub2ZmYWN0aXZle39cdHVybm9mZmFj dGl2ZQEzMjk2LDEwNzIxNAorXGRlZlx0dXJub2ZmYWN0aXZle390dXJub2ZmYWN0aXZlATMyOTYs MTA3MjE0CitcZGVmXHR1cm5vZmZhY3RpdmV7XGxldCI9XG5vcm1hbGRvdWJsZXF1b3RlfyIBMzI5 NiwxMDcyMTQKK1xsZXR+PVxub3JtYWx0aWxkZX9+ATMyOTcsMTA3MjU4CitcbGV0Xj1cbm9ybWFs Y2FyZXR/XgEzMjk4LDEwNzI3NworXGxldF89XG5vcm1hbHVuZGVyc2NvcmV/XwEzMjk5LDEwNzI5 NgorXGxldHw9XG5vcm1hbHZlcnRpY2FsYmFyf3wBMzMwMCwxMDczMjAKK1xsZXQ8PVxub3JtYWxs ZXNzfzwBMzMwMSwxMDczNDUKK1xsZXQ+PVxub3JtYWxncmVhdGVyfz4BMzMwMiwxMDczNjMKK1xs ZXQrPVxub3JtYWxwbHVzfX8rATMzMDMsMTA3Mzg0CiBcZ2xvYmFsXGRlZj17fz0BMzMwNywxMDc1 MDAKLVxkZWZcbm9ybWFsYmFja3NsYXNoe39cbm9ybWFsYmFja3NsYXNoATMzMjEsMTA3ODgyCitc ZGVmXG5vcm1hbGJhY2tzbGFzaHt/bm9ybWFsYmFja3NsYXNoATMzMjEsMTA3ODgyCiAMCiBtZXJj LXNyYy9hY2N1bXVsYXRvci5tLDMyMjgKIDotIGludGVyZmFjZX8xNDYsNTM3MQpkaWZmIC0tZ2l0 IGEvdGVzdC9tYW51YWwvZXRhZ3MvRVRBR1MuZ29vZF8yIGIvdGVzdC9tYW51YWwvZXRhZ3MvRVRB R1MuZ29vZF8yCmluZGV4IDZlOTBmMWU4ZTA1Li4zYjRkMDRmOWEzZiAxMDA2NDQKLS0tIGEvdGVz dC9tYW51YWwvZXRhZ3MvRVRBR1MuZ29vZF8yCisrKyBiL3Rlc3QvbWFudWFsL2V0YWdzL0VUQUdT Lmdvb2RfMgpAQCAtMzcyMSw4ICszNzIxLDggQEAgc2NtLXNyYy90ZXN0LnNjbSwyNjAKIChkZWZp bmUgKCgoKChjdXJyeS10ZXN0IH8xNCwyMDUKIChkZWZpbmUtc3ludGF4IHRlc3QtYmVnaW5/MTcs MjY1CiAMCi10ZXgtc3JjL3Rlc3RlbnYudGV4LDUyCi1cbmV3Y29tbWFuZHtcbm19f1xubQE0LDc3 Cit0ZXgtc3JjL3Rlc3RlbnYudGV4LDUxCitcbmV3Y29tbWFuZHtcbm19f25tATQsNzcKIFxzZWN0 aW9ue2JsYWh9f2JsYWgBOCwxMzkKIAwKIHRleC1zcmMvZ3ppcC50ZXhpLDMwMwpAQCAtMzczNyw3 MjIgKzM3MzcsMTE0MiBAQCB0ZXgtc3JjL2d6aXAudGV4aSwzMDMKIEBub2RlIFByb2JsZW1zLH80 NjAsMTY3NjkKIEBub2RlIENvbmNlcHQgSW5kZXgsf0NvbmNlcHQgSW5kZXgBNDczLDE3Mjg5CiAM Ci10ZXgtc3JjL3RleGluZm8udGV4LDMwNjI3Ci1cZGVmXHRleGluZm92ZXJzaW9ue39cdGV4aW5m b3ZlcnNpb24BMjYsMTAzNQotXGRlZlx0aWV7f1x0aWUBNDksMTUyNgotXGRlZlxnbG9nZ2luZ2Fs bHt/XGdsb2dnaW5nYWxsATcyLDIyNzYKLVxkZWZcbG9nZ2luZ2FsbHt/XGxvZ2dpbmdhbGwBNzMs MjM0NQotXGRlZlxvbmVwYWdlb3V0IzF7f1xvbmVwYWdlb3V0ATk5LDMyODIKLVxkZWZcY3JvcHBh Z2VvdXQjMXt/XGNyb3BwYWdlb3V0ATExNSw0MDMyCi1cZGVmXGNyb3BtYXJrc3t/XGNyb3BtYXJr cwExNDIsNTA5MgotXGRlZlxwYWdlYm9keSMxe39ccGFnZWJvZHkBMTQ0LDUxMzkKLVxkZWZcZXd0 b3B7f1xld3RvcAExNTcsNTU5NAotXGRlZlxuc3RvcHt/XG5zdG9wATE1OCw1NjU4Ci1cZGVmXGV3 Ym90e39cZXdib3QBMTYwLDU3NDEKLVxkZWZcbnNib3R7f1xuc2JvdAExNjEsNTgwNQotXGRlZlxw YXJzZWFyZyAjMXt/XHBhcnNlYXJnATE3MCw2MTA0Ci1cZGVmXHBhcnNlYXJneHt/XHBhcnNlYXJn eAExNzIsNjE4MgotXGRlZlxwYXJzZWFyZ2xpbmV7f1xwYXJzZWFyZ2xpbmUBMTgyLDY0MjIKLVxk ZWZcZmx1c2hjcnt/XGZsdXNoY3IBMTg2LDY1NDMKLVxuZXdpZlxpZkVOViBcRU5WZmFsc2UgXGRl ZlxpbkVOVnt/XGluRU5WATE5MCw2NzQyCi1cZGVmXEVOVmNoZWNre39cRU5WY2hlY2sBMTkxLDY4 MDYKLVxvdXRlclxkZWZcYmVnaW57f1xiZWdpbgExOTgsNzA1MwotXGRlZlxiZWdpbnh4eCAjMXt/ XGJlZ2lueHh4ATIwMCw3MDkxCi1cZGVmXGVuZHt/XGVuZAEyMDgsNzM0NgotXGRlZlxlbmR4eHgg IzF7f1xlbmR4eHgBMjEwLDczNzQKLVxkZWZcZXJyb3JFIzF7f1xlcnJvckUBMjE2LDc1NjMKLVxk ZWZcc2luZ2xlc3BhY2V7f1xzaW5nbGVzcGFjZQEyMjIsNzc1NwotXGRlZlxAe39cQAEyMzIsNzk4 MAotXGRlZlxge39cYAEyMzYsODA4MAotXGRlZlwne39cJwEyMzcsODA5MgotXGRlZlxteWxicmFj ZSB7f1xteWxicmFjZQEyNDEsODE0MAotXGRlZlxteXJicmFjZSB7f1xteXJicmFjZQEyNDIsODE3 MwotXGRlZlw6e39cOgEyNDcsODI4NwotXGRlZlwqe39cKgEyNTAsODM0MQotXGRlZlwue39cLgEy NTMsODQxNwotXGRlZlx3IzF7f1x3ATI1OCw4NjQ4Ci1cZGVmXGdyb3Vwe39cZ3JvdXABMjY4LDkx MzEKLSAgXGRlZlxFZ3JvdXB7f1xFZ3JvdXABMjczLDkyOTUKLVxkZWZcbmVlZHt/XG5lZWQBMjg5 LDk3MzcKLVxkZWZcbmVlZHgjMXt/XG5lZWR4ATMwMCwxMDAxNAotXGRlZlxkb3Rze39cZG90cwEz MzksMTE0MDAKLVxkZWZccGFnZXt/XHBhZ2UBMzQzLDExNDY0Ci1cZGVmXGV4ZGVudHt/XGV4ZGVu dAEzNTMsMTE3OTEKLVxkZWZcZXhkZW50eXl5ICMxe39cZXhkZW50eXl5ATM1NCwxMTgyNAotXGRl Zlxub2ZpbGxleGRlbnR7f1xub2ZpbGxleGRlbnQBMzU3LDExOTY4Ci1cZGVmXG5vZmlsbGV4ZGVu dHl5eSAjMXt/XG5vZmlsbGV4ZGVudHl5eQEzNTgsMTIwMTMKLVxkZWZcaW5jbHVkZXt/XGluY2x1 ZGUBMzY1LDEyMTk3Ci1cZGVmXGluY2x1ZGV6enogIzF7f1xpbmNsdWRlenp6ATM2NiwxMjIzMgot XGRlZlx0aGlzZmlsZXt/XHRoaXNmaWxlATM2OSwxMjI4MwotXGRlZlxjZW50ZXJ7f1xjZW50ZXIB MzczLDEyMzQ2Ci1cZGVmXGNlbnRlcnp6eiAjMXt/XGNlbnRlcnp6egEzNzQsMTIzNzkKLVxkZWZc c3B7f1xzcAEzODAsMTI1MjEKLVxkZWZcc3B4eHggIzF7f1xzcHh4eAEzODEsMTI1NDYKLVxkZWZc Y29tbWVudHt/XGNvbW1lbnQBMzg3LDEyNzIwCi1cZGVmXGNvbW1lbnR4eHggIzF7f1xjb21tZW50 eHh4ATM5MCwxMjgxNwotXGRlZlxpZ25vcmVzZWN0aW9uc3t/XGlnbm9yZXNlY3Rpb25zATM5Niwx Mjk4NgotXGxldFxjaGFwdGVyPVxyZWxheH89XHJlbGF4ATM5NywxMzAwOAotXGxldFxzZWN0aW9u PVxyZWxheH89XHJlbGF4ATQwNiwxMzI1MwotXGxldFxzdWJzZWN0aW9uPVxyZWxheH89XHJlbGF4 ATQwOSwxMzMxNAotXGxldFxzdWJzdWJzZWN0aW9uPVxyZWxheH89XHJlbGF4ATQxMCwxMzMzNwot XGxldFxhcHBlbmRpeD1ccmVsYXh/PVxyZWxheAE0MTEsMTMzNjMKLVxsZXRcYXBwZW5kaXhzZWM9 XHJlbGF4f3NlYz1ccmVsYXgBNDEyLDEzMzg0Ci1cbGV0XGFwcGVuZGl4c2VjdGlvbj1ccmVsYXh/ c2VjdGlvbj1ccmVsYXgBNDEzLDEzNDA4Ci1cbGV0XGFwcGVuZGl4c3Vic2VjPVxyZWxheH9zdWJz ZWM9XHJlbGF4ATQxNCwxMzQzNgotXGxldFxhcHBlbmRpeHN1YnNlY3Rpb249XHJlbGF4f3N1YnNl Y3Rpb249XHJlbGF4ATQxNSwxMzQ2MwotXGxldFxhcHBlbmRpeHN1YnN1YnNlYz1ccmVsYXh/c3Vi c3Vic2VjPVxyZWxheAE0MTYsMTM0OTQKLVxsZXRcYXBwZW5kaXhzdWJzdWJzZWN0aW9uPVxyZWxh eH9zdWJzdWJzZWN0aW9uPVxyZWxheAE0MTcsMTM1MjQKLVxkZWZcaWdub3Jle39caWdub3JlATQy MywxMzYyNgotXGxvbmdcZGVmXGlnbm9yZXh4eCAjMVxlbmQgaWdub3Jle39caWdub3JleHh4ATQy NywxMzc2NgotXGRlZlxkaXJlbnRyeXt/XGRpcmVudHJ5ATQyOSwxMzgyNQotXGxvbmdcZGVmXGRp cmVudHJ5eHh4ICMxXGVuZCBkaXJlbnRyeXt/XGRpcmVudHJ5eHh4ATQzMCwxMzg2NAotXGRlZlxp ZnNldHt/XGlmc2V0ATQzNCwxMzk3NAotXGRlZlxpZnNldHh4eCAjMXt/XGlmc2V0eHh4ATQzNiwx NDAzMgotXGRlZlxFaWZzZXR7f1xFaWZzZXQBNDQwLDE0MTU5Ci1cZGVmXGlmc2V0ZmFpbHt/XGlm c2V0ZmFpbAE0NDEsMTQxNzMKLVxsb25nXGRlZlxpZnNldGZhaWx4eHggIzFcZW5kIGlmc2V0e39c aWZzZXRmYWlseHh4ATQ0MiwxNDIyOQotXGRlZlxpZmNsZWFye39caWZjbGVhcgE0NDQsMTQyOTAK LVxkZWZcaWZjbGVhcnh4eCAjMXt/XGlmY2xlYXJ4eHgBNDQ2LDE0MzUyCi1cZGVmXEVpZmNsZWFy e39cRWlmY2xlYXIBNDUwLDE0NDgzCi1cZGVmXGlmY2xlYXJmYWlse39caWZjbGVhcmZhaWwBNDUx LDE0NDk5Ci1cbG9uZ1xkZWZcaWZjbGVhcmZhaWx4eHggIzFcZW5kIGlmY2xlYXJ7f1xpZmNsZWFy ZmFpbHh4eAE0NTIsMTQ1NTkKLVxkZWZcc2V0e39cc2V0ATQ1NiwxNDcxMAotXGRlZlxzZXR4eHgg IzF7f1xzZXR4eHgBNDU3LDE0NzM3Ci1cZGVmXGNsZWFye39cY2xlYXIBNDYwLDE0Nzk5Ci1cZGVm XGNsZWFyeHh4ICMxe39cY2xlYXJ4eHgBNDYxLDE0ODMwCi1cZGVmXGlmdGV4e39caWZ0ZXgBNDY2 LDE0OTQ3Ci1cZGVmXEVpZnRleHt/XEVpZnRleAE0NjcsMTQ5NjAKLVxkZWZcaWZpbmZve39caWZp bmZvATQ2OCwxNDk3NAotXGxvbmdcZGVmXGlmaW5mb3h4eCAjMVxlbmQgaWZpbmZve39caWZpbmZv eHh4ATQ2OSwxNTAyNAotXGxvbmdcZGVmXG1lbnUgIzFcZW5kIG1lbnV7f1xtZW51ATQ3MSwxNTA4 MwotXGRlZlxhc2lzIzF7f1xhc2lzATQ3MiwxNTExMgotXGRlZlxtYXRoIzF7f1xtYXRoATQ4NSwx NTY1NQotXGRlZlxub2Rle39cbm9kZQE0ODcsMTU2OTkKLVxkZWZcbm9kZXp6eiMxe39cbm9kZXp6 egE0ODgsMTU3MzcKLVxkZWZcbm9kZXh4eFsjMSwjMl17f1xub2RleHh4WwE0ODksMTU3NjgKLVxk ZWZcZG9ub2RlcmVme39cZG9ub2RlcmVmATQ5MiwxNTgzMAotXGRlZlx1bm51bWJub2RlcmVme39c dW5udW1ibm9kZXJlZgE0OTYsMTU5NTEKLVxkZWZcYXBwZW5kaXhub2RlcmVme39cYXBwZW5kaXhu b2RlcmVmATUwMCwxNjA4MgordGV4LXNyYy90ZXhpbmZvLnRleCw1NTIzNgorXGRlZlx0ZXhpbmZv dmVyc2lvbnt/dGV4aW5mb3ZlcnNpb24BMjYsMTAzNQorXGxldFxwdGV4bGJyYWNlPVx7f3B0ZXhs YnJhY2UBMzUsMTMwOAorXGxldFxwdGV4cmJyYWNlPVx9f3B0ZXhyYnJhY2UBMzYsMTMyNworXGxl dFxwdGV4ZG90cz1cZG90c39wdGV4ZG90cwEzNywxMzQ2CitcbGV0XHB0ZXhkb3Q9XC5/cHRleGRv dAEzOCwxMzY2CitcbGV0XHB0ZXhzdGFyPVwqf3B0ZXhzdGFyATM5LDEzODIKK1xsZXRccHRleGVu ZD1cZW5kf3B0ZXhlbmQBNDAsMTM5OQorXGxldFxwdGV4YnVsbGV0PVxidWxsZXR/cHRleGJ1bGxl dAE0MSwxNDE3CitcbGV0XHB0ZXhiPVxif3B0ZXhiATQyLDE0NDEKK1xsZXRccHRleGM9XGN/cHRl eGMBNDMsMTQ1NQorXGxldFxwdGV4aT1caX9wdGV4aQE0NCwxNDY5CitcbGV0XHB0ZXh0PVx0f3B0 ZXh0ATQ1LDE0ODMKK1xsZXRccHRleGw9XGx/cHRleGwBNDYsMTQ5NworXGxldFxwdGV4TD1cTH9w dGV4TAE0NywxNTExCitcZGVmXHRpZXt/dGllATQ5LDE1MjYKK1xkZWZcZ2xvZ2dpbmdhbGx7f2ds b2dnaW5nYWxsATcyLDIyNzYKK1xkZWZcbG9nZ2luZ2FsbHt/bG9nZ2luZ2FsbAE3MywyMzQ1Citc ZGVmXG9uZXBhZ2VvdXQjMXt/b25lcGFnZW91dAE5OSwzMjgyCitcc2hpcG91dFx2Ym94e3tcbGV0 XGhzaXplPVxwYWdld2lkdGggXG1ha2VoZWFkbGluZX1/aHNpemUBMTAzLDM0ODkKK3tcbGV0XGhz aXplPVxwYWdld2lkdGggXG1ha2Vmb290bGluZX1/aHNpemUBMTA0LDM1NTYKK1xkZWZcY3JvcHBh Z2VvdXQjMXt/Y3JvcHBhZ2VvdXQBMTE1LDQwMzIKKwkJCXtcbGV0XGhzaXplPVxwYWdld2lkdGgg XG1ha2VoZWFkbGluZX1/aHNpemUBMTI2LDQ1MTEKKwkJCXtcbGV0XGhzaXplPVxwYWdld2lkdGgg XG1ha2Vmb290bGluZX1/aHNpemUBMTI4LDQ1NjkKK1xkZWZcY3JvcG1hcmtze39jcm9wbWFya3MB MTQyLDUwOTIKK1xkZWZcY3JvcG1hcmtze1xsZXRcb25lcGFnZW91dD1cY3JvcHBhZ2VvdXQgfX9v bmVwYWdlb3V0ATE0Miw1MDkyCitcZGVmXHBhZ2Vib2R5IzF7f3BhZ2Vib2R5ATE0NCw1MTM5Citc Z2RlZlxwYWdlY29udGVudHMjMXt/cGFnZWNvbnRlbnRzATE0Niw1MjIwCitcZGVmXGV3dG9we39l d3RvcAExNTcsNTU5NAorXGRlZlxuc3RvcHt/bnN0b3ABMTU4LDU2NTgKK1xkZWZcZXdib3R7f2V3 Ym90ATE2MCw1NzQxCitcZGVmXG5zYm90e39uc2JvdAExNjEsNTgwNQorXGRlZlxwYXJzZWFyZyAj MXt/cGFyc2VhcmcBMTcwLDYxMDQKK1xkZWZccGFyc2VhcmcgIzF7XGxldFxuZXh0PSMxXGJlZ2lu Z3JvdXBcb2JleWxpbmVzXGZ1dHVyZWxldFx0ZW1wXHBhcnNlYXJneH1/bmV4dAExNzAsNjEwNAor XGRlZlxwYXJzZWFyZ3h7f3BhcnNlYXJneAExNzIsNjE4MgorXGdkZWZccGFyc2VhcmdkaXNjYXJk c3BhY2Uge39wYXJzZWFyZ2Rpc2NhcmRzcGFjZQExNzgsNjMyMQorXGdkZWZcb2JleWVkc3BhY2V7 f29iZXllZHNwYWNlATE4MCw2Mzk5CitcZGVmXHBhcnNlYXJnbGluZXt/cGFyc2VhcmdsaW5lATE4 Miw2NDIyCitcZ2RlZlxwYXJzZWFyZ2xpbmV4ICMxXl5Ne39wYXJzZWFyZ2xpbmV4ATE4NCw2NDkz CitcZGVmXGZsdXNoY3J7f2ZsdXNoY3IBMTg2LDY1NDMKK1xkZWZcZmx1c2hjcntcaWZ4XHBhclxs aXNwcGFyIFxkZWZcbmV4dCMjMXt/bmV4dAExODYsNjU0MworXGRlZlxmbHVzaGNye1xpZnhccGFy XGxpc3BwYXIgXGRlZlxuZXh0IyMxe31cZWxzZSBcbGV0XG5leHQ9XHJlbGF4IFxmaSBcbmV4dH1/ bmV4dAExODYsNjU0MworXG5ld2lmXGlmRU5WIFxFTlZmYWxzZSBcZGVmXGluRU5We39pbkVOVgEx OTAsNjc0MgorXGRlZlxFTlZjaGVja3t/RU5WY2hlY2sBMTkxLDY4MDYKK1xvdXRlclxkZWZcYmVn aW57f2JlZ2luATE5OCw3MDUzCitcZGVmXGJlZ2lueHh4ICMxe39iZWdpbnh4eAEyMDAsNzA5MQor XGRlZlxlbmR7f2VuZAEyMDgsNzM0NgorXGRlZlxlbmR4eHggIzF7f2VuZHh4eAEyMTAsNzM3NAor XGRlZlxlcnJvckUjMXt/ZXJyb3JFATIxNiw3NTYzCitcZGVmXHNpbmdsZXNwYWNle39zaW5nbGVz cGFjZQEyMjIsNzc1NworXGRlZlxAe39AATIzMiw3OTgwCitcZGVmXGB7f2ABMjM2LDgwODAKK1xk ZWZcJ3t/JwEyMzcsODA5MgorXGRlZlxteWxicmFjZSB7f215bGJyYWNlATI0MSw4MTQwCitcZGVm XG15cmJyYWNlIHt/bXlyYnJhY2UBMjQyLDgxNzMKK1xsZXRcez1cbXlsYnJhY2V/ewEyNDMsODIw NgorXGxldFx9PVxteXJicmFjZX99ATI0NCw4MjIzCitcZGVmXDp7fzoBMjQ3LDgyODcKK1xkZWZc Knt/KgEyNTAsODM0MQorXGRlZlwue38uATI1Myw4NDE3CitcZGVmXHcjMXt/dwEyNTgsODY0OAor XGRlZlxncm91cHt/Z3JvdXABMjY4LDkxMzEKKyAgXGRlZlxFZ3JvdXB7f0Vncm91cAEyNzMsOTI5 NQorXGRlZlxuZWVke39uZWVkATI4OSw5NzM3CitcZGVmXG5lZWR4IzF7f25lZWR4ATMwMCwxMDAx NAorXGxldFxiciA9IFxwYXJ/YnIBMzM1LDExMzU1CitcZGVmXGRvdHN7f2RvdHMBMzM5LDExNDAw CitcZGVmXHBhZ2V7f3BhZ2UBMzQzLDExNDY0CitcZGVmXGV4ZGVudHt/ZXhkZW50ATM1MywxMTc5 MQorXGRlZlxleGRlbnR5eXkgIzF7f2V4ZGVudHl5eQEzNTQsMTE4MjQKK1xkZWZcbm9maWxsZXhk ZW50e39ub2ZpbGxleGRlbnQBMzU3LDExOTY4CitcZGVmXG5vZmlsbGV4ZGVudHl5eSAjMXt/bm9m aWxsZXhkZW50eXl5ATM1OCwxMjAxMworXGRlZlxpbmNsdWRle39pbmNsdWRlATM2NSwxMjE5Nwor XGRlZlxpbmNsdWRlenp6ICMxe39pbmNsdWRlenp6ATM2NiwxMjIzMgorXGRlZlxpbmNsdWRlenp6 ICMxe3tcZGVmXHRoaXNmaWxle390aGlzZmlsZQEzNjYsMTIyMzIKK1xkZWZcdGhpc2ZpbGV7f3Ro aXNmaWxlATM2OSwxMjI4MworXGRlZlxjZW50ZXJ7f2NlbnRlcgEzNzMsMTIzNDYKK1xkZWZcY2Vu dGVyenp6ICMxe39jZW50ZXJ6enoBMzc0LDEyMzc5CitcZGVmXHNwe39zcAEzODAsMTI1MjEKK1xk ZWZcc3B4eHggIzF7f3NweHh4ATM4MSwxMjU0NgorXGRlZlxjb21tZW50e39jb21tZW50ATM4Nywx MjcyMAorXGRlZlxjb21tZW50eHh4ICMxe39jb21tZW50eHh4ATM5MCwxMjgxNworXGxldFxjPVxj b21tZW50f2MBMzkyLDEyODgzCitcZGVmXGlnbm9yZXNlY3Rpb25ze39pZ25vcmVzZWN0aW9ucwEz OTYsMTI5ODYKK1xsZXRcY2hhcHRlcj1ccmVsYXh/Y2hhcHRlcgEzOTcsMTMwMDgKK1xsZXRcdW5u dW1iZXJlZD1ccmVsYXh/dW5udW1iZXJlZAEzOTgsMTMwMjgKK1xsZXRcdG9wPVxyZWxheH90b3AB Mzk5LDEzMDUxCitcbGV0XHVubnVtYmVyZWRzZWM9XHJlbGF4f3VubnVtYmVyZWRzZWMBNDAwLDEz MDY3CitcbGV0XHVubnVtYmVyZWRzZWN0aW9uPVxyZWxheH91bm51bWJlcmVkc2VjdGlvbgE0MDEs MTMwOTMKK1xsZXRcdW5udW1iZXJlZHN1YnNlYz1ccmVsYXh/dW5udW1iZXJlZHN1YnNlYwE0MDIs MTMxMjMKK1xsZXRcdW5udW1iZXJlZHN1YnNlY3Rpb249XHJlbGF4f3VubnVtYmVyZWRzdWJzZWN0 aW9uATQwMywxMzE1MgorXGxldFx1bm51bWJlcmVkc3Vic3Vic2VjPVxyZWxheH91bm51bWJlcmVk c3Vic3Vic2VjATQwNCwxMzE4NQorXGxldFx1bm51bWJlcmVkc3Vic3Vic2VjdGlvbj1ccmVsYXh/ dW5udW1iZXJlZHN1YnN1YnNlY3Rpb24BNDA1LDEzMjE3CitcbGV0XHNlY3Rpb249XHJlbGF4f3Nl Y3Rpb24BNDA2LDEzMjUzCitcbGV0XHN1YnNlYz1ccmVsYXh/c3Vic2VjATQwNywxMzI3MworXGxl dFxzdWJzdWJzZWM9XHJlbGF4f3N1YnN1YnNlYwE0MDgsMTMyOTIKK1xsZXRcc3Vic2VjdGlvbj1c cmVsYXh/c3Vic2VjdGlvbgE0MDksMTMzMTQKK1xsZXRcc3Vic3Vic2VjdGlvbj1ccmVsYXh/c3Vi c3Vic2VjdGlvbgE0MTAsMTMzMzcKK1xsZXRcYXBwZW5kaXg9XHJlbGF4f2FwcGVuZGl4ATQxMSwx MzM2MworXGxldFxhcHBlbmRpeHNlYz1ccmVsYXh/YXBwZW5kaXhzZWMBNDEyLDEzMzg0CitcbGV0 XGFwcGVuZGl4c2VjdGlvbj1ccmVsYXh/YXBwZW5kaXhzZWN0aW9uATQxMywxMzQwOAorXGxldFxh cHBlbmRpeHN1YnNlYz1ccmVsYXh/YXBwZW5kaXhzdWJzZWMBNDE0LDEzNDM2CitcbGV0XGFwcGVu ZGl4c3Vic2VjdGlvbj1ccmVsYXh/YXBwZW5kaXhzdWJzZWN0aW9uATQxNSwxMzQ2MworXGxldFxh cHBlbmRpeHN1YnN1YnNlYz1ccmVsYXh/YXBwZW5kaXhzdWJzdWJzZWMBNDE2LDEzNDk0CitcbGV0 XGFwcGVuZGl4c3Vic3Vic2VjdGlvbj1ccmVsYXh/YXBwZW5kaXhzdWJzdWJzZWN0aW9uATQxNywx MzUyNAorXGxldFxjb250ZW50cz1ccmVsYXh/Y29udGVudHMBNDE4LDEzNTU4CitcbGV0XHNtYWxs Ym9vaz1ccmVsYXh/c21hbGxib29rATQxOSwxMzU3OQorXGxldFx0aXRsZXBhZ2U9XHJlbGF4f3Rp dGxlcGFnZQE0MjAsMTM2MDEKK1xkZWZcaWdub3Jle39pZ25vcmUBNDIzLDEzNjI2CitcbG9uZ1xk ZWZcaWdub3JleHh4ICMxXGVuZCBpZ25vcmV7f2lnbm9yZXh4eAE0MjcsMTM3NjYKK1xkZWZcZGly ZW50cnl7f2RpcmVudHJ5ATQyOSwxMzgyNQorXGxvbmdcZGVmXGRpcmVudHJ5eHh4ICMxXGVuZCBk aXJlbnRyeXt/ZGlyZW50cnl4eHgBNDMwLDEzODY0CitcZGVmXGlmc2V0e39pZnNldAE0MzQsMTM5 NzQKK1xkZWZcaWZzZXR4eHggIzF7f2lmc2V0eHh4ATQzNiwxNDAzMgorXGV4cGFuZGFmdGVyXGlm eFxjc25hbWUgSUYjMVxlbmRjc25hbWVccmVsYXggXGxldFx0ZW1wPVxpZnNldGZhaWx/dGVtcAE0 MzcsMTQwNTkKK1xlbHNlIFxsZXRcdGVtcD1ccmVsYXggXGZpf3RlbXABNDM4LDE0MTI1CitcZGVm XEVpZnNldHt/RWlmc2V0ATQ0MCwxNDE1OQorXGRlZlxpZnNldGZhaWx7f2lmc2V0ZmFpbAE0NDEs MTQxNzMKK1xsb25nXGRlZlxpZnNldGZhaWx4eHggIzFcZW5kIGlmc2V0e39pZnNldGZhaWx4eHgB NDQyLDE0MjI5CitcZGVmXGlmY2xlYXJ7f2lmY2xlYXIBNDQ0LDE0MjkwCitcZGVmXGlmY2xlYXJ4 eHggIzF7f2lmY2xlYXJ4eHgBNDQ2LDE0MzUyCitcZXhwYW5kYWZ0ZXJcaWZ4XGNzbmFtZSBJRiMx XGVuZGNzbmFtZVxyZWxheCBcbGV0XHRlbXA9XHJlbGF4f3RlbXABNDQ3LDE0MzgxCitcZWxzZSBc bGV0XHRlbXA9XGlmY2xlYXJmYWlsIFxmaX90ZW1wATQ0OCwxNDQ0MworXGRlZlxFaWZjbGVhcnt/ RWlmY2xlYXIBNDUwLDE0NDgzCitcZGVmXGlmY2xlYXJmYWlse39pZmNsZWFyZmFpbAE0NTEsMTQ0 OTkKK1xsb25nXGRlZlxpZmNsZWFyZmFpbHh4eCAjMVxlbmQgaWZjbGVhcnt/aWZjbGVhcmZhaWx4 eHgBNDUyLDE0NTU5CitcZGVmXHNldHt/c2V0ATQ1NiwxNDcxMAorXGRlZlxzZXR4eHggIzF7f3Nl dHh4eAE0NTcsMTQ3MzcKK1xleHBhbmRhZnRlclxsZXRcY3NuYW1lIElGIzFcZW5kY3NuYW1lPVxz ZXR9f2NzbmFtZQE0NTgsMTQ3NTMKK1xkZWZcY2xlYXJ7f2NsZWFyATQ2MCwxNDc5OQorXGRlZlxj bGVhcnh4eCAjMXt/Y2xlYXJ4eHgBNDYxLDE0ODMwCitcZXhwYW5kYWZ0ZXJcbGV0XGNzbmFtZSBJ RiMxXGVuZGNzbmFtZT1ccmVsYXh9f2NzbmFtZQE0NjIsMTQ4NDgKK1xkZWZcaWZ0ZXh7f2lmdGV4 ATQ2NiwxNDk0NworXGRlZlxFaWZ0ZXh7f0VpZnRleAE0NjcsMTQ5NjAKK1xkZWZcaWZpbmZve39p ZmluZm8BNDY4LDE0OTc0CitcbG9uZ1xkZWZcaWZpbmZveHh4ICMxXGVuZCBpZmluZm97f2lmaW5m b3h4eAE0NjksMTUwMjQKK1xsb25nXGRlZlxtZW51ICMxXGVuZCBtZW51e39tZW51ATQ3MSwxNTA4 MworXGRlZlxhc2lzIzF7f2FzaXMBNDcyLDE1MTEyCitcbGV0XGltcGxpY2l0bWF0aCA9ICR/aW1w bGljaXRtYXRoATQ4NCwxNTYzMworXGRlZlxtYXRoIzF7f21hdGgBNDg1LDE1NjU1CitcZGVmXG5v ZGV7f25vZGUBNDg3LDE1Njk5CitcZGVmXG5vZGV6enojMXt/bm9kZXp6egE0ODgsMTU3MzcKK1xk ZWZcbm9kZXh4eFsjMSwjMl17f25vZGV4eHgBNDg5LDE1NzY4CitcZGVmXG5vZGV4eHhbIzEsIzJd e1xnZGVmXGxhc3Rub2Rle39sYXN0bm9kZQE0ODksMTU3NjgKK1xsZXRcbGFzdG5vZGU9XHJlbGF4 f2xhc3Rub2RlATQ5MCwxNTgwOAorXGRlZlxkb25vZGVyZWZ7f2Rvbm9kZXJlZgE0OTIsMTU4MzAK K1xsZXRcbGFzdG5vZGU9XHJlbGF4fX9sYXN0bm9kZQE0OTQsMTU5MjgKK1xkZWZcdW5udW1ibm9k ZXJlZnt/dW5udW1ibm9kZXJlZgE0OTYsMTU5NTEKK1xsZXRcbGFzdG5vZGU9XHJlbGF4fX9sYXN0 bm9kZQE0OTgsMTYwNTkKK1xkZWZcYXBwZW5kaXhub2RlcmVme39hcHBlbmRpeG5vZGVyZWYBNTAw LDE2MDgyCiBcZXhwYW5kYWZ0ZXJcZXhwYW5kYWZ0ZXJcZXhwYW5kYWZ0ZXJcYXBwZW5kaXhzZXRy ZWZ7f3NldHJlZgE1MDEsMTYxMjgKLVxsZXRccmVmaWxsPVxyZWxheH9pbGw9XHJlbGF4ATUwNCwx NjIxNwotXGRlZlxzZXRmaWxlbmFtZXt/XHNldGZpbGVuYW1lATUwOSwxNjQzMQotXG91dGVyXGRl ZlxieWV7f1xieWUBNTE4LDE2Njc3Ci1cZGVmXGluZm9yZWYgIzF7f1xpbmZvcmVmATUyMCwxNjcz MwotXGRlZlxpbmZvcmVmenp6ICMxLCMyLCMzLCM0Kip7f1xpbmZvcmVmenp6ATUyMSwxNjc3MQot XGRlZlxsb3Nlc3BhY2UgIzF7f1xsb3Nlc3BhY2UBNTIzLDE2ODY4Ci1cZGVmXHNme39cc2YBNTMy LDE3MDcyCi1cZm9udFxkZWZiZj1jbWJ4MTAgc2NhbGVkIFxtYWdzdGVwMSAld2FzIDEzMTR/YmY9 Y21ieDEwATU1OCwxNzg2NwotXGZvbnRcZGVmdHQ9Y210dDEwIHNjYWxlZCBcbWFnc3RlcDF/dHQ9 Y210dDEwATU1OSwxNzkxMwotXGRlZlxkZnt/XGRmATU2MCwxNzk0OQotXGRlZlxyZXNldG1hdGhm b250c3t/XHJlc2V0bWF0aGZvbnRzATYzNSwyMDU0MwotXGRlZlx0ZXh0Zm9udHN7f1x0ZXh0Zm9u dHMBNjQ4LDIxMTMyCi1cZGVmXGNoYXBmb250c3t/XGNoYXBmb250cwE2NTMsMjEzNDcKLVxkZWZc c2VjZm9udHN7f1xzZWNmb250cwE2NTgsMjE1NjMKLVxkZWZcc3Vic2VjZm9udHN7f1xzdWJzZWNm b250cwE2NjMsMjE3NjgKLVxkZWZcaW5kZXhmb250c3t/XGluZGV4Zm9udHMBNjY4LDIxOTg1Ci1c ZGVmXHNtYXJ0aXRhbGljeHt/XHNtYXJ0aXRhbGljeAE2OTEsMjI3MTcKLVxkZWZcc21hcnRpdGFs aWMjMXt/XHNtYXJ0aXRhbGljATY5MiwyMjc5MwotXGxldFxjaXRlPVxzbWFydGl0YWxpY389XHNt YXJ0aXRhbGljATY5OCwyMjkzOAotXGRlZlxiIzF7f1xiATcwMCwyMjk2MgotXGRlZlx0IzF7f1x0 ATcwMywyMjk5NwotXGRlZlxzYW1wICMxe39cc2FtcAE3MDYsMjMxNDkKLVxkZWZca2V5ICMxe39c a2V5ATcwNywyMzE4MgotXGRlZlxjdHJsICMxe39cY3RybAE3MDgsMjMyNDMKLVxkZWZcdGNsb3Nl IzF7f1x0Y2xvc2UBNzE2LDIzNDQ1Ci1cZGVmXCB7f1wBNzIwLDIzNjExCi1cZGVmXHhrZXl7f1x4 a2V5ATcyOCwyMzg4MAotXGRlZlxrYmRmb28jMSMyIzNccGFye39ca2JkZm9vATcyOSwyMzg5Ngot XGRlZlxkbW4jMXt/XGRtbgE3MzgsMjQxOTcKLVxkZWZca2JkIzF7f1xrYmQBNzQwLDI0MjI0Ci1c ZGVmXGwjMXt/XGwBNzQyLDI0MjgxCi1cZGVmXHIjMXt/XHIBNzQ0LDI0MzEwCi1cZGVmXHNjIzF7 f1xzYwE3NDYsMjQzNzgKLVxkZWZcaWkjMXt/XGlpATc0NywyNDQyMQotXGRlZlx0aXRsZWZvbnQj MXt/XHRpdGxlZm9udAE3NTUsMjQ2NTQKLVxkZWZcdGl0bGVwYWdle39cdGl0bGVwYWdlATc2MSwy NDc1NwotICAgXGRlZlxzdWJ0aXRsZWZvbnR7f1xzdWJ0aXRsZWZvbnQBNzY2LDI0OTg0Ci0gICBc ZGVmXGF1dGhvcmZvbnR7f1xhdXRob3Jmb250ATc2OCwyNTA2OAotICAgXGRlZlx0aXRsZXt/XHRp dGxlATc3NCwyNTI3OAotICAgXGRlZlx0aXRsZXp6eiMjMXt/XHRpdGxlenp6ATc3NSwyNTMxMwot ICAgXGRlZlxzdWJ0aXRsZXt/XHN1YnRpdGxlATc4MywyNTYyOAotICAgXGRlZlxzdWJ0aXRsZXp6 eiMjMXt/XHN1YnRpdGxlenp6ATc4NCwyNTY2OQotICAgXGRlZlxhdXRob3J7f1xhdXRob3IBNzg3 LDI1Nzg3Ci0gICBcZGVmXGF1dGhvcnp6eiMjMXt/XGF1dGhvcnp6egE3ODgsMjU4MjQKLSAgIFxk ZWZccGFnZXt/XHBhZ2UBNzk0LDI2MTE1Ci1cZGVmXEV0aXRsZXBhZ2V7f1xFdGl0bGVwYWdlATgw NCwyNjI4NAotXGRlZlxmaW5pc2h0aXRsZXBhZ2V7f1xmaW5pc2h0aXRsZXBhZ2UBODE3LDI2Njcy Ci1cZGVmXGV2ZW5oZWFkaW5ne39cZXZlbmhlYWRpbmcBODQ2LDI3NjgwCi1cZGVmXG9kZGhlYWRp bmd7f1xvZGRoZWFkaW5nATg0NywyNzcyMwotXGRlZlxldmVyeWhlYWRpbmd7f1xldmVyeWhlYWRp bmcBODQ4LDI3NzY0Ci1cZGVmXGV2ZW5mb290aW5ne39cZXZlbmZvb3RpbmcBODUwLDI3ODEwCi1c ZGVmXG9kZGZvb3Rpbmd7f1xvZGRmb290aW5nATg1MSwyNzg1MwotXGRlZlxldmVyeWZvb3Rpbmd7 f1xldmVyeWZvb3RpbmcBODUyLDI3ODk0Ci1cZGVmXGhlYWRpbmdzICMxIHt/XGhlYWRpbmdzATg5 MywyOTU4NgotXGRlZlxIRUFESU5HU29mZnt/XEhFQURJTkdTb2ZmATg5NSwyOTYzNQotXGRlZlxI RUFESU5HU2RvdWJsZXt/XEhFQURJTkdTZG91YmxlATkwNCwzMDA2MgotXGRlZlxIRUFESU5HU3Np bmdsZXt/XEhFQURJTkdTc2luZ2xlATkxNCwzMDM4MgotXGRlZlxIRUFESU5HU29ue39cSEVBRElO R1NvbgE5MjIsMzA2MDMKLVxkZWZcSEVBRElOR1NhZnRlcnt/XEhFQURJTkdTYWZ0ZXIBOTI0LDMw NjM3Ci1cZGVmXEhFQURJTkdTZG91YmxleHt/XEhFQURJTkdTZG91YmxleAE5MjYsMzA3MzIKLVxk ZWZcSEVBRElOR1NzaW5nbGVhZnRlcnt/XEhFQURJTkdTc2luZ2xlYWZ0ZXIBOTMzLDMwOTIwCi1c ZGVmXEhFQURJTkdTc2luZ2xleHt/XEhFQURJTkdTc2luZ2xleAE5MzQsMzA5ODEKLVxkZWZcdG9k YXl7f1x0b2RheQE5NDMsMzEyNTYKLVxkZWZcdGhpc3RpdGxle39cdGhpc3RpdGxlATk1OCwzMTgw MQotXGRlZlxzZXR0aXRsZXt/XHNldHRpdGxlATk1OSwzMTgyNgotXGRlZlxzZXR0aXRsZXp6eiAj MXt/XHNldHRpdGxlenp6ATk2MCwzMTg2MwotXGRlZlxpbnRlcm5hbEJpdGVte39caW50ZXJuYWxC aXRlbQE5OTIsMzI3OTMKLVxkZWZcaW50ZXJuYWxCaXRlbXh7f1xpbnRlcm5hbEJpdGVteAE5OTMs MzI4NDMKLVxkZWZcaW50ZXJuYWxCeGl0ZW0gIiMxInt/XGludGVybmFsQnhpdGVtATk5NSwzMjg4 OAotXGRlZlxpbnRlcm5hbEJ4aXRlbXggIiMxInt/XGludGVybmFsQnhpdGVteAE5OTYsMzI5NjgK LVxkZWZcaW50ZXJuYWxCa2l0ZW17f1xpbnRlcm5hbEJraXRlbQE5OTgsMzMwNDMKLVxkZWZcaW50 ZXJuYWxCa2l0ZW14e39caW50ZXJuYWxCa2l0ZW14ATk5OSwzMzA5NQotXGRlZlxraXRlbXp6eiAj MXt/XGtpdGVtenp6ATEwMDEsMzMxNDIKLVxkZWZceGl0ZW16enogIzF7f1x4aXRlbXp6egExMDA0 LDMzMjQ0Ci1cZGVmXGl0ZW16enogIzF7f1xpdGVtenp6ATEwMDcsMzMzNDcKLVxkZWZcaXRlbXt/ XGl0ZW0BMTAzNywzNDQxOAotXGRlZlxpdGVteHt/XGl0ZW14ATEwMzgsMzQ0NjkKLVxkZWZca2l0 ZW17f1xraXRlbQExMDM5LDM0NTIyCi1cZGVmXGtpdGVteHt/XGtpdGVteAExMDQwLDM0NTc1Ci1c ZGVmXHhpdGVte39ceGl0ZW0BMTA0MSwzNDYzMAotXGRlZlx4aXRlbXh7f1x4aXRlbXgBMTA0Miwz NDY4MwotXGRlZlxkZXNjcmlwdGlvbnt/XGRlc2NyaXB0aW9uATEwNDUsMzQ3OTMKLVxkZWZcdGFi bGV7f1x0YWJsZQExMDQ3LDM0ODQzCi1cZGVmXGZ0YWJsZXt/XGZ0YWJsZQExMDUyLDM0OTg3Ci1c ZGVmXEVmdGFibGV7f1xFZnRhYmxlATEwNTYsMzUxMzMKLVxkZWZcdnRhYmxle39cdnRhYmxlATEw NTksMzUyMDIKLVxkZWZcRXZ0YWJsZXt/XEV2dGFibGUBMTA2MywzNTM0OAotXGRlZlxkb250aW5k ZXggIzF7f1xkb250aW5kZXgBMTA2NiwzNTQxNwotXGRlZlxmbml0ZW1pbmRleCAjMXt/XGZuaXRl bWluZGV4ATEwNjcsMzU0MzcKLVxkZWZcdnJpdGVtaW5kZXggIzF7f1x2cml0ZW1pbmRleAExMDY4 LDM1NDgyCi1cZGVmXHRhYmxleiAjMSMyIzMjNCM1IzZ7f1x0YWJsZXoBMTA3NCwzNTYzMQotXGRl ZlxFZGVzY3JpcHRpb257f1xFZGVzY3JpcHRpb24BMTA3NywzNTY4OQotXGRlZlxpdGVtZm9udHt/ XGl0ZW1mb250ATEwODIsMzU4OTAKLVxkZWZcRXRhYmxle39cRXRhYmxlATEwOTAsMzYxMTYKLVxk ZWZcaXRlbWl6ZXt/XGl0ZW1pemUBMTEwMywzNjQ0MAotXGRlZlxpdGVtaXplenp6ICMxe39caXRl bWl6ZXp6egExMTA1LDM2NDc2Ci1cZGVmXGl0ZW1pemV5ICMxIzJ7f1xpdGVtaXpleQExMTEwLDM2 NTcxCi1cZGVmIzJ7fzExMTksMzY4MTcKLVxkZWZcaXRlbWNvbnRlbnRze39caXRlbWNvbnRlbnRz ATExMjAsMzY4NTgKLVxkZWZcYnVsbGV0e39cYnVsbGV0ATExMjMsMzY5MDYKLVxkZWZcbWludXN7 f1xtaW51cwExMTI0LDM2OTMzCi1cZGVmXGZyZW5jaHNwYWNpbmd7f1xmcmVuY2hzcGFjaW5nATEx MjgsMzcwNDEKLVxkZWZcc3BsaXRvZmYjMSMyXGVuZG1hcmt7f1xzcGxpdG9mZgExMTM0LDM3MjY2 Ci1cZGVmXGVudW1lcmF0ZXt/XGVudW1lcmF0ZQExMTQwLDM3NDk2Ci1cZGVmXGVudW1lcmF0ZXp6 eiAjMXt/XGVudW1lcmF0ZXp6egExMTQxLDM3NTM1Ci1cZGVmXGVudW1lcmF0ZXkgIzEgIzJcZW5k ZW51bWVyYXRleXt/XGVudW1lcmF0ZXkBMTE0MiwzNzU4OAotICBcZGVmXHRoZWFyZ3t/XHRoZWFy ZwExMTQ2LDM3NzM1Ci0gIFxpZnhcdGhlYXJnXGVtcHR5IFxkZWZcdGhlYXJne39cdGhlYXJnATEx NDcsMzc3NTQKLVxkZWZcbnVtZXJpY2VudW1lcmF0ZXt/XG51bWVyaWNlbnVtZXJhdGUBMTE4NCwz OTA4OAotXGRlZlxsb3dlcmNhc2VlbnVtZXJhdGV7f1xsb3dlcmNhc2VlbnVtZXJhdGUBMTE5MCwz OTIxOAotXGRlZlx1cHBlcmNhc2VlbnVtZXJhdGV7f1x1cHBlcmNhc2VlbnVtZXJhdGUBMTIwMywz OTU2NQotXGRlZlxzdGFydGVudW1lcmF0aW9uIzF7f1xzdGFydGVudW1lcmF0aW9uATEyMTksNDAw NTUKLVxkZWZcYWxwaGFlbnVtZXJhdGV7f1xhbHBoYWVudW1lcmF0ZQExMjI3LDQwMjM3Ci1cZGVm XGNhcHNlbnVtZXJhdGV7f1xjYXBzZW51bWVyYXRlATEyMjgsNDAyNzIKLVxkZWZcRWFscGhhZW51 bWVyYXRle39cRWFscGhhZW51bWVyYXRlATEyMjksNDAzMDYKLVxkZWZcRWNhcHNlbnVtZXJhdGV7 f1xFY2Fwc2VudW1lcmF0ZQExMjMwLDQwMzQwCi1cZGVmXGl0ZW1pemVpdGVte39caXRlbWl6ZWl0 ZW0BMTIzNCw0MDQyMAotXGRlZlxuZXdpbmRleCAjMXt/XG5ld2luZGV4ATEyNTksNDEyNzcKLVxk ZWZcZGVmaW5kZXh7f1xkZWZpbmRleAExMjY4LDQxNTY2Ci1cZGVmXG5ld2NvZGVpbmRleCAjMXt/ XG5ld2NvZGVpbmRleAExMjcyLDQxNjc0Ci1cZGVmXGRlZmNvZGVpbmRleHt/XGRlZmNvZGVpbmRl eAExMjc5LDQxOTM0Ci1cZGVmXHN5bmluZGV4ICMxICMyIHt/XHN5bmluZGV4ATEyODMsNDIxMTQK LVxkZWZcc3luY29kZWluZGV4ICMxICMyIHt/XHN5bmNvZGVpbmRleAExMjkyLDQyNDU0Ci1cZGVm XGRvaW5kZXgjMXt/XGRvaW5kZXgBMTMwOSw0MzEzMwotXGRlZlxzaW5nbGVpbmRleGVyICMxe39c c2luZ2xlaW5kZXhlcgExMzEwLDQzMTkyCi1cZGVmXGRvY29kZWluZGV4IzF7f1xkb2NvZGVpbmRl eAExMzEzLDQzMzA0Ci1cZGVmXHNpbmdsZWNvZGVpbmRleGVyICMxe39cc2luZ2xlY29kZWluZGV4 ZXIBMTMxNCw0MzM3MQotXGRlZlxpbmRleGR1bW1pZXN7f1xpbmRleGR1bW1pZXMBMTMxNiw0MzQy OQotXGRlZlxfe39cXwExMzE3LDQzNDQ5Ci1cZGVmXHd7f1x3ATEzMTgsNDM0NzcKLVxkZWZcYmZ7 f1xiZgExMzE5LDQzNTA0Ci1cZGVmXHJte39ccm0BMTMyMCw0MzUzMwotXGRlZlxzbHt/XHNsATEz MjEsNDM1NjIKLVxkZWZcc2Z7f1xzZgExMzIyLDQzNTkxCi1cZGVmXHR0e39cdHQBMTMyMyw0MzYx OQotXGRlZlxndHJ7f1xndHIBMTMyNCw0MzY0NwotXGRlZlxsZXNze39cbGVzcwExMzI1LDQzNjc3 Ci1cZGVmXGhhdHt/XGhhdAExMzI2LDQzNzA5Ci1cZGVmXGNoYXJ7f1xjaGFyATEzMjcsNDM3MzkK LVxkZWZcVGVYe39cVGVYATEzMjgsNDM3NzEKLVxkZWZcZG90c3t/XGRvdHMBMTMyOSw0MzgwMQot XGRlZlxjb3B5cmlnaHR7f1xjb3B5cmlnaHQBMTMzMCw0MzgzNAotXGRlZlx0Y2xvc2UjIzF7f1x0 Y2xvc2UBMTMzMSw0Mzg3NwotXGRlZlxjb2RlIyMxe39cY29kZQExMzMyLDQzOTIyCi1cZGVmXHNh bXAjIzF7f1xzYW1wATEzMzMsNDM5NjMKLVxkZWZcdCMjMXt/XHQBMTMzNCw0NDAwNAotXGRlZlxy IyMxe39ccgExMzM1LDQ0MDM5Ci1cZGVmXGkjIzF7f1xpATEzMzYsNDQwNzQKLVxkZWZcYiMjMXt/ XGIBMTMzNyw0NDEwOQotXGRlZlxjaXRlIyMxe39cY2l0ZQExMzM4LDQ0MTQ0Ci1cZGVmXGtleSMj MXt/XGtleQExMzM5LDQ0MTg1Ci1cZGVmXGZpbGUjIzF7f1xmaWxlATEzNDAsNDQyMjQKLVxkZWZc dmFyIyMxe39cdmFyATEzNDEsNDQyNjUKLVxkZWZca2JkIyMxe39ca2JkATEzNDIsNDQzMDQKLVxk ZWZcaW5kZXhkdW1teWZvbnQjMXt/XGluZGV4ZHVtbXlmb250ATEzNDcsNDQ0NjAKLVxkZWZcaW5k ZXhkdW1teXRleHt/XGluZGV4ZHVtbXl0ZXgBMTM0OCw0NDQ4NgotXGRlZlxpbmRleGR1bW15ZG90 c3t/XGluZGV4ZHVtbXlkb3RzATEzNDksNDQ1MTAKLVxkZWZcaW5kZXhub2ZvbnRze39caW5kZXhu b2ZvbnRzATEzNTEsNDQ1MzYKK1xsZXRcbGFzdG5vZGU9XHJlbGF4fX9sYXN0bm9kZQE1MDIsMTYx OTQKK1xsZXRccmVmaWxsPVxyZWxheH9yZWZpbGwBNTA0LDE2MjE3CitcZGVmXHNldGZpbGVuYW1l e39zZXRmaWxlbmFtZQE1MDksMTY0MzEKKyAgIFxnbG9iYWxcbGV0XHNldGZpbGVuYW1lPVxjb21t ZW50ICUgSWdub3JlIGV4dHJhIEBzZXRmaWxlbmFtZSBjbWRzLn9zZXRmaWxlbmFtZQE1MTQsMTY1 NjIKK1xvdXRlclxkZWZcYnlle39ieWUBNTE4LDE2Njc3CitcZGVmXGluZm9yZWYgIzF7f2luZm9y ZWYBNTIwLDE2NzMzCitcZGVmXGluZm9yZWZ6enogIzEsIzIsIzMsIzQqKnt/aW5mb3JlZnp6egE1 MjEsMTY3NzEKK1xkZWZcbG9zZXNwYWNlICMxe39sb3Nlc3BhY2UBNTIzLDE2ODY4CitcZGVmXHNm e39zZgE1MzIsMTcwNzIKK1xsZXRcbGkgPSBcc2YgJSBTb21ldGltZXMgd2UgY2FsbCBpdCBcbGks IG5vdCBcc2Yuf2xpATUzMywxNzEwMAorXGxldFxtYWlubWFnc3RlcD1cbWFnc3RlcGhhbGZ/bWFp bm1hZ3N0ZXABNTM2LDE3MjAxCitcbGV0XG1haW5tYWdzdGVwPVxtYWdzdGVwMX9tYWlubWFnc3Rl cAE1MzksMTcyNTAKK1xmb250XGRlZmJmPWNtYngxMCBzY2FsZWQgXG1hZ3N0ZXAxICV3YXMgMTMx NH9iZgE1NTgsMTc4NjcKK1xmb250XGRlZnR0PWNtdHQxMCBzY2FsZWQgXG1hZ3N0ZXAxf3R0ATU1 OSwxNzkxMworXGRlZlxkZnt/ZGYBNTYwLDE3OTQ5CitcZGVmXGRme1xsZXRcdGVudHQ9XGRlZnR0 IFxsZXRcdGVuYmYgPSBcZGVmYmYgXGJmfX90ZW50dAE1NjAsMTc5NDkKK1xkZWZcZGZ7XGxldFx0 ZW50dD1cZGVmdHQgXGxldFx0ZW5iZiA9IFxkZWZiZiBcYmZ9f3R0ATU2MCwxNzk0OQorXGRlZlxk ZntcbGV0XHRlbnR0PVxkZWZ0dCBcbGV0XHRlbmJmID0gXGRlZmJmIFxiZn1/dGVuYmYBNTYwLDE3 OTQ5CitcZGVmXGRme1xsZXRcdGVudHQ9XGRlZnR0IFxsZXRcdGVuYmYgPSBcZGVmYmYgXGJmfX9i ZgE1NjAsMTc5NDkKK1xsZXRcaW5kc2w9XGluZGl0f2luZHNsATU3MCwxODMxMAorXGxldFxpbmR0 dD1cbmluZXR0f2luZHR0ATU3MSwxODMyOAorXGxldFxpbmRzZj1caW5kcm1/aW5kc2YBNTcyLDE4 MzQ3CitcbGV0XGluZGJmPVxpbmRybX9pbmRiZgE1NzMsMTgzNjUKK1xsZXRcaW5kc2M9XGluZHJt f2luZHNjATU3NCwxODM4MworXGxldFxjaGFwYmY9XGNoYXBybX9jaGFwYmYBNTg0LDE4NjQzCitc bGV0XGF1dGhvcnJtID0gXHNlY3Jtf2F1dGhvcnJtATYyNywyMDE5MworXGRlZlxyZXNldG1hdGhm b250c3t/cmVzZXRtYXRoZm9udHMBNjM1LDIwNTQzCitcZGVmXHRleHRmb250c3t/dGV4dGZvbnRz ATY0OCwyMTEzMgorICBcbGV0XHRlbnJtPVx0ZXh0cm0gXGxldFx0ZW5pdD1cdGV4dGl0IFxsZXRc dGVuc2w9XHRleHRzbH90ZW5ybQE2NDksMjExNDkKKyAgXGxldFx0ZW5ybT1cdGV4dHJtIFxsZXRc dGVuaXQ9XHRleHRpdCBcbGV0XHRlbnNsPVx0ZXh0c2x/dGVuaXQBNjQ5LDIxMTQ5CisgIFxsZXRc dGVucm09XHRleHRybSBcbGV0XHRlbml0PVx0ZXh0aXQgXGxldFx0ZW5zbD1cdGV4dHNsf3RlbnNs ATY0OSwyMTE0OQorICBcbGV0XHRlbmJmPVx0ZXh0YmYgXGxldFx0ZW50dD1cdGV4dHR0IFxsZXRc c21hbGxjYXBzPVx0ZXh0c2N/dGVuYmYBNjUwLDIxMjA4CisgIFxsZXRcdGVuYmY9XHRleHRiZiBc bGV0XHRlbnR0PVx0ZXh0dHQgXGxldFxzbWFsbGNhcHM9XHRleHRzY390ZW50dAE2NTAsMjEyMDgK KyAgXGxldFx0ZW5iZj1cdGV4dGJmIFxsZXRcdGVudHQ9XHRleHR0dCBcbGV0XHNtYWxsY2Fwcz1c dGV4dHNjf3NtYWxsY2FwcwE2NTAsMjEyMDgKKyAgXGxldFx0ZW5zZj1cdGV4dHNmIFxsZXRcdGVu aT1cdGV4dGkgXGxldFx0ZW5zeT1cdGV4dHN5f3RlbnNmATY1MSwyMTI3MQorICBcbGV0XHRlbnNm PVx0ZXh0c2YgXGxldFx0ZW5pPVx0ZXh0aSBcbGV0XHRlbnN5PVx0ZXh0c3l/dGVuaQE2NTEsMjEy NzEKKyAgXGxldFx0ZW5zZj1cdGV4dHNmIFxsZXRcdGVuaT1cdGV4dGkgXGxldFx0ZW5zeT1cdGV4 dHN5f3RlbnN5ATY1MSwyMTI3MQorXGRlZlxjaGFwZm9udHN7f2NoYXBmb250cwE2NTMsMjEzNDcK KyAgXGxldFx0ZW5ybT1cY2hhcHJtIFxsZXRcdGVuaXQ9XGNoYXBpdCBcbGV0XHRlbnNsPVxjaGFw c2wgf3RlbnJtATY1NCwyMTM2NAorICBcbGV0XHRlbnJtPVxjaGFwcm0gXGxldFx0ZW5pdD1cY2hh cGl0IFxsZXRcdGVuc2w9XGNoYXBzbCB/dGVuaXQBNjU0LDIxMzY0CisgIFxsZXRcdGVucm09XGNo YXBybSBcbGV0XHRlbml0PVxjaGFwaXQgXGxldFx0ZW5zbD1cY2hhcHNsIH90ZW5zbAE2NTQsMjEz NjQKKyAgXGxldFx0ZW5iZj1cY2hhcGJmIFxsZXRcdGVudHQ9XGNoYXB0dCBcbGV0XHNtYWxsY2Fw cz1cY2hhcHNjf3RlbmJmATY1NSwyMTQyNAorICBcbGV0XHRlbmJmPVxjaGFwYmYgXGxldFx0ZW50 dD1cY2hhcHR0IFxsZXRcc21hbGxjYXBzPVxjaGFwc2N/dGVudHQBNjU1LDIxNDI0CisgIFxsZXRc dGVuYmY9XGNoYXBiZiBcbGV0XHRlbnR0PVxjaGFwdHQgXGxldFxzbWFsbGNhcHM9XGNoYXBzY39z bWFsbGNhcHMBNjU1LDIxNDI0CisgIFxsZXRcdGVuc2Y9XGNoYXBzZiBcbGV0XHRlbmk9XGNoYXBp IFxsZXRcdGVuc3k9XGNoYXBzeX90ZW5zZgE2NTYsMjE0ODcKKyAgXGxldFx0ZW5zZj1cY2hhcHNm IFxsZXRcdGVuaT1cY2hhcGkgXGxldFx0ZW5zeT1cY2hhcHN5f3RlbmkBNjU2LDIxNDg3CisgIFxs ZXRcdGVuc2Y9XGNoYXBzZiBcbGV0XHRlbmk9XGNoYXBpIFxsZXRcdGVuc3k9XGNoYXBzeX90ZW5z eQE2NTYsMjE0ODcKK1xkZWZcc2VjZm9udHN7f3NlY2ZvbnRzATY1OCwyMTU2MworICBcbGV0XHRl bnJtPVxzZWNybSBcbGV0XHRlbml0PVxzZWNpdCBcbGV0XHRlbnNsPVxzZWNzbH90ZW5ybQE2NTks MjE1NzkKKyAgXGxldFx0ZW5ybT1cc2Vjcm0gXGxldFx0ZW5pdD1cc2VjaXQgXGxldFx0ZW5zbD1c c2Vjc2x/dGVuaXQBNjU5LDIxNTc5CisgIFxsZXRcdGVucm09XHNlY3JtIFxsZXRcdGVuaXQ9XHNl Y2l0IFxsZXRcdGVuc2w9XHNlY3Nsf3RlbnNsATY1OSwyMTU3OQorICBcbGV0XHRlbmJmPVxzZWNi ZiBcbGV0XHRlbnR0PVxzZWN0dCBcbGV0XHNtYWxsY2Fwcz1cc2Vjc2N/dGVuYmYBNjYwLDIxNjM1 CisgIFxsZXRcdGVuYmY9XHNlY2JmIFxsZXRcdGVudHQ9XHNlY3R0IFxsZXRcc21hbGxjYXBzPVxz ZWNzY390ZW50dAE2NjAsMjE2MzUKKyAgXGxldFx0ZW5iZj1cc2VjYmYgXGxldFx0ZW50dD1cc2Vj dHQgXGxldFxzbWFsbGNhcHM9XHNlY3Njf3NtYWxsY2FwcwE2NjAsMjE2MzUKKyAgXGxldFx0ZW5z Zj1cc2Vjc2YgXGxldFx0ZW5pPVxzZWNpIFxsZXRcdGVuc3k9XHNlY3N5f3RlbnNmATY2MSwyMTY5 NQorICBcbGV0XHRlbnNmPVxzZWNzZiBcbGV0XHRlbmk9XHNlY2kgXGxldFx0ZW5zeT1cc2Vjc3l/ dGVuaQE2NjEsMjE2OTUKKyAgXGxldFx0ZW5zZj1cc2Vjc2YgXGxldFx0ZW5pPVxzZWNpIFxsZXRc dGVuc3k9XHNlY3N5f3RlbnN5ATY2MSwyMTY5NQorXGRlZlxzdWJzZWNmb250c3t/c3Vic2VjZm9u dHMBNjYzLDIxNzY4CisgIFxsZXRcdGVucm09XHNzZWNybSBcbGV0XHRlbml0PVxzc2VjaXQgXGxl dFx0ZW5zbD1cc3NlY3Nsf3RlbnJtATY2NCwyMTc4NworICBcbGV0XHRlbnJtPVxzc2Vjcm0gXGxl dFx0ZW5pdD1cc3NlY2l0IFxsZXRcdGVuc2w9XHNzZWNzbH90ZW5pdAE2NjQsMjE3ODcKKyAgXGxl dFx0ZW5ybT1cc3NlY3JtIFxsZXRcdGVuaXQ9XHNzZWNpdCBcbGV0XHRlbnNsPVxzc2Vjc2x/dGVu c2wBNjY0LDIxNzg3CisgIFxsZXRcdGVuYmY9XHNzZWNiZiBcbGV0XHRlbnR0PVxzc2VjdHQgXGxl dFxzbWFsbGNhcHM9XHNzZWNzY390ZW5iZgE2NjUsMjE4NDYKKyAgXGxldFx0ZW5iZj1cc3NlY2Jm IFxsZXRcdGVudHQ9XHNzZWN0dCBcbGV0XHNtYWxsY2Fwcz1cc3NlY3Njf3RlbnR0ATY2NSwyMTg0 NgorICBcbGV0XHRlbmJmPVxzc2VjYmYgXGxldFx0ZW50dD1cc3NlY3R0IFxsZXRcc21hbGxjYXBz PVxzc2Vjc2N/c21hbGxjYXBzATY2NSwyMTg0NgorICBcbGV0XHRlbnNmPVxzc2Vjc2YgXGxldFx0 ZW5pPVxzc2VjaSBcbGV0XHRlbnN5PVxzc2Vjc3l/dGVuc2YBNjY2LDIxOTA5CisgIFxsZXRcdGVu c2Y9XHNzZWNzZiBcbGV0XHRlbmk9XHNzZWNpIFxsZXRcdGVuc3k9XHNzZWNzeX90ZW5pATY2Niwy MTkwOQorICBcbGV0XHRlbnNmPVxzc2Vjc2YgXGxldFx0ZW5pPVxzc2VjaSBcbGV0XHRlbnN5PVxz c2Vjc3l/dGVuc3kBNjY2LDIxOTA5CitcZGVmXGluZGV4Zm9udHN7f2luZGV4Zm9udHMBNjY4LDIx OTg1CisgIFxsZXRcdGVucm09XGluZHJtIFxsZXRcdGVuaXQ9XGluZGl0IFxsZXRcdGVuc2w9XGlu ZHNsf3RlbnJtATY2OSwyMjAwMworICBcbGV0XHRlbnJtPVxpbmRybSBcbGV0XHRlbml0PVxpbmRp dCBcbGV0XHRlbnNsPVxpbmRzbH90ZW5pdAE2NjksMjIwMDMKKyAgXGxldFx0ZW5ybT1caW5kcm0g XGxldFx0ZW5pdD1caW5kaXQgXGxldFx0ZW5zbD1caW5kc2x/dGVuc2wBNjY5LDIyMDAzCisgIFxs ZXRcdGVuYmY9XGluZGJmIFxsZXRcdGVudHQ9XGluZHR0IFxsZXRcc21hbGxjYXBzPVxpbmRzY390 ZW5iZgE2NzAsMjIwNTkKKyAgXGxldFx0ZW5iZj1caW5kYmYgXGxldFx0ZW50dD1caW5kdHQgXGxl dFxzbWFsbGNhcHM9XGluZHNjf3RlbnR0ATY3MCwyMjA1OQorICBcbGV0XHRlbmJmPVxpbmRiZiBc bGV0XHRlbnR0PVxpbmR0dCBcbGV0XHNtYWxsY2Fwcz1caW5kc2N/c21hbGxjYXBzATY3MCwyMjA1 OQorICBcbGV0XHRlbnNmPVxpbmRzZiBcbGV0XHRlbmk9XGluZGkgXGxldFx0ZW5zeT1caW5kc3l/ dGVuc2YBNjcxLDIyMTE5CisgIFxsZXRcdGVuc2Y9XGluZHNmIFxsZXRcdGVuaT1caW5kaSBcbGV0 XHRlbnN5PVxpbmRzeX90ZW5pATY3MSwyMjExOQorICBcbGV0XHRlbnNmPVxpbmRzZiBcbGV0XHRl bmk9XGluZGkgXGxldFx0ZW5zeT1caW5kc3l/dGVuc3kBNjcxLDIyMTE5CitcZGVmXHNtYXJ0aXRh bGljeHt/c21hcnRpdGFsaWN4ATY5MSwyMjcxNworXGRlZlxzbWFydGl0YWxpYyMxe39zbWFydGl0 YWxpYwE2OTIsMjI3OTMKK1xsZXRcaT1cc21hcnRpdGFsaWN/aQE2OTQsMjI4NTEKK1xsZXRcdmFy PVxzbWFydGl0YWxpY392YXIBNjk1LDIyODcxCitcbGV0XGRmbj1cc21hcnRpdGFsaWN/ZGZuATY5 NiwyMjg5MworXGxldFxlbXBoPVxzbWFydGl0YWxpY39lbXBoATY5NywyMjkxNQorXGxldFxjaXRl PVxzbWFydGl0YWxpY39jaXRlATY5OCwyMjkzOAorXGRlZlxiIzF7f2IBNzAwLDIyOTYyCitcbGV0 XHN0cm9uZz1cYn9zdHJvbmcBNzAxLDIyOTgxCitcZGVmXHQjMXt/dAE3MDMsMjI5OTcKK1xsZXRc dHRmb250ID0gXHR/dHRmb250ATcwNCwyMzA3MgorXGRlZlxzYW1wICMxe39zYW1wATcwNiwyMzE0 OQorXGRlZlxrZXkgIzF7f2tleQE3MDcsMjMxODIKK1xkZWZcY3RybCAjMXt/Y3RybAE3MDgsMjMy NDMKK1xsZXRcZmlsZT1cc2FtcH9maWxlATcxMCwyMzI4NQorXGRlZlx0Y2xvc2UjMXt/dGNsb3Nl ATcxNiwyMzQ0NQorXGxldFxjb2RlPVx0Y2xvc2V/Y29kZQE3MjIsMjM3MjIKK1xkZWZceGtleXt/ eGtleQE3MjgsMjM4ODAKK1xkZWZca2JkZm9vIzEjMiMzXHBhcnt/a2JkZm9vATcyOSwyMzg5Ngor XGRlZlxrYmRmb28jMSMyIzNccGFye1xkZWZcb25le39vbmUBNzI5LDIzODk2CitcZGVmXGtiZGZv byMxIzIjM1xwYXJ7XGRlZlxvbmV7IzF9XGRlZlx0aHJlZXt/dGhyZWUBNzI5LDIzODk2CitcZGVm XGtiZGZvbyMxIzIjM1xwYXJ7XGRlZlxvbmV7IzF9XGRlZlx0aHJlZXsjM31cZGVmXHRocmVleHt/ dGhyZWV4ATcyOSwyMzg5NgorXGRlZlxkbW4jMXt/ZG1uATczOCwyNDE5NworXGRlZlxrYmQjMXt/ a2JkATc0MCwyNDIyNAorXGRlZlxrYmQjMXtcZGVmXGxvb2t7f2xvb2sBNzQwLDI0MjI0CitcZGVm XGwjMXt/bAE3NDIsMjQyODEKK1xkZWZcciMxe39yATc0NCwyNDMxMAorXGRlZlxzYyMxe39zYwE3 NDYsMjQzNzgKK1xkZWZcaWkjMXt/aWkBNzQ3LDI0NDIxCitcZGVmXHRpdGxlZm9udCMxe390aXRs ZWZvbnQBNzU1LDI0NjU0CitcZGVmXHRpdGxlcGFnZXt/dGl0bGVwYWdlATc2MSwyNDc1NworICAg XGxldFxzdWJ0aXRsZXJtPVx0ZW5ybX9zdWJ0aXRsZXJtATc2MiwyNDgxMAorICAgXGRlZlxzdWJ0 aXRsZWZvbnR7f3N1YnRpdGxlZm9udAE3NjYsMjQ5ODQKKyAgIFxkZWZcYXV0aG9yZm9udHt/YXV0 aG9yZm9udAE3NjgsMjUwNjgKKyAgIFxkZWZcdGl0bGV7f3RpdGxlATc3NCwyNTI3OAorICAgXGRl Zlx0aXRsZXp6eiMjMXt/dGl0bGV6enoBNzc1LDI1MzEzCisgICBcZGVmXHN1YnRpdGxle39zdWJ0 aXRsZQE3ODMsMjU2MjgKKyAgIFxkZWZcc3VidGl0bGV6enojIzF7f3N1YnRpdGxlenp6ATc4NCwy NTY2OQorICAgXGRlZlxhdXRob3J7f2F1dGhvcgE3ODcsMjU3ODcKKyAgIFxkZWZcYXV0aG9yenp6 IyMxe39hdXRob3J6enoBNzg4LDI1ODI0CisgICBcbGV0XG9sZHBhZ2UgPSBccGFnZX9vbGRwYWdl ATc5MywyNjA5MQorICAgXGRlZlxwYWdle39wYWdlATc5NCwyNjExNQorICAgICAgXGxldFxwYWdl ID0gXG9sZHBhZ2V/cGFnZQE3OTksMjYyMDYKK1xkZWZcRXRpdGxlcGFnZXt/RXRpdGxlcGFnZQE4 MDQsMjYyODQKK1xkZWZcZmluaXNodGl0bGVwYWdle39maW5pc2h0aXRsZXBhZ2UBODE3LDI2Njcy CitcbGV0XHRoaXNwYWdlPVxmb2xpb390aGlzcGFnZQE4MjUsMjY4MjUKK1xsZXRcSEVBRElOR1No b29rPVxyZWxheH9IRUFESU5HU2hvb2sBODM3LDI3NDIwCitcZGVmXGV2ZW5oZWFkaW5ne39ldmVu aGVhZGluZwE4NDYsMjc2ODAKK1xkZWZcb2RkaGVhZGluZ3t/b2RkaGVhZGluZwE4NDcsMjc3MjMK K1xkZWZcZXZlcnloZWFkaW5ne39ldmVyeWhlYWRpbmcBODQ4LDI3NzY0CitcZGVmXGV2ZW5mb290 aW5ne39ldmVuZm9vdGluZwE4NTAsMjc4MTAKK1xkZWZcb2RkZm9vdGluZ3t/b2RkZm9vdGluZwE4 NTEsMjc4NTMKK1xkZWZcZXZlcnlmb290aW5ne39ldmVyeWZvb3RpbmcBODUyLDI3ODk0CitcZ2Rl ZlxldmVuaGVhZGluZ3h4eCAjMXt/ZXZlbmhlYWRpbmd4eHgBODU2LDI3OTU4CitcZ2RlZlxldmVu aGVhZGluZ3l5eSAjMUB8IzJAfCMzQHwjNFxmaW5pc2h7f2V2ZW5oZWFkaW5neXl5ATg1NywyODAx NworXGdkZWZcb2RkaGVhZGluZ3h4eCAjMXt/b2RkaGVhZGluZ3h4eAE4NjAsMjgxMjYKK1xnZGVm XG9kZGhlYWRpbmd5eXkgIzFAfCMyQHwjM0B8IzRcZmluaXNoe39vZGRoZWFkaW5neXl5ATg2MSwy ODE4MworXGdkZWZcZXZlcnloZWFkaW5neHh4ICMxe39ldmVyeWhlYWRpbmd4eHgBODY0LDI4Mjkw CitcZ2RlZlxldmVyeWhlYWRpbmd5eXkgIzFAfCMyQHwjM0B8IzRcZmluaXNoe39ldmVyeWhlYWRp bmd5eXkBODY1LDI4MzUxCitcZ2RlZlxldmVuZm9vdGluZ3h4eCAjMXt/ZXZlbmZvb3Rpbmd4eHgB ODY5LDI4NTIyCitcZ2RlZlxldmVuZm9vdGluZ3l5eSAjMUB8IzJAfCMzQHwjNFxmaW5pc2h7f2V2 ZW5mb290aW5neXl5ATg3MCwyODU4MQorXGdkZWZcb2RkZm9vdGluZ3h4eCAjMXt/b2RkZm9vdGlu Z3h4eAE4NzMsMjg2OTAKK1xnZGVmXG9kZGZvb3Rpbmd5eXkgIzFAfCMyQHwjM0B8IzRcZmluaXNo e39vZGRmb290aW5neXl5ATg3NCwyODc0NworXGdkZWZcZXZlcnlmb290aW5neHh4ICMxe39ldmVy eWZvb3Rpbmd4eHgBODc3LDI4ODU0CitcZ2RlZlxldmVyeWZvb3Rpbmd5eXkgIzFAfCMyQHwjM0B8 IzRcZmluaXNoe39ldmVyeWZvb3Rpbmd5eXkBODc4LDI4OTE1CitcZGVmXGhlYWRpbmdzICMxIHt/ aGVhZGluZ3MBODkzLDI5NTg2CitcZGVmXEhFQURJTkdTb2Zme39IRUFESU5HU29mZgE4OTUsMjk2 MzUKK1xkZWZcSEVBRElOR1Nkb3VibGV7f0hFQURJTkdTZG91YmxlATkwNCwzMDA2MgorXGRlZlxI RUFESU5HU3NpbmdsZXt/SEVBRElOR1NzaW5nbGUBOTE0LDMwMzgyCitcZGVmXEhFQURJTkdTb257 f0hFQURJTkdTb24BOTIyLDMwNjAzCitcZGVmXEhFQURJTkdTYWZ0ZXJ7f0hFQURJTkdTYWZ0ZXIB OTI0LDMwNjM3CitcZGVmXEhFQURJTkdTYWZ0ZXJ7XGxldFxIRUFESU5HU2hvb2s9XEhFQURJTkdT ZG91YmxleH1/SEVBRElOR1Nob29rATkyNCwzMDYzNworXGxldFxIRUFESU5HU2RvdWJsZWFmdGVy PVxIRUFESU5HU2FmdGVyf0hFQURJTkdTZG91YmxlYWZ0ZXIBOTI1LDMwNjkyCitcZGVmXEhFQURJ TkdTZG91YmxleHt/SEVBRElOR1Nkb3VibGV4ATkyNiwzMDczMgorXGRlZlxIRUFESU5HU3Npbmds ZWFmdGVye39IRUFESU5HU3NpbmdsZWFmdGVyATkzMywzMDkyMAorXGRlZlxIRUFESU5HU3Npbmds ZWFmdGVye1xsZXRcSEVBRElOR1Nob29rPVxIRUFESU5HU3NpbmdsZXh9f0hFQURJTkdTaG9vawE5 MzMsMzA5MjAKK1xkZWZcSEVBRElOR1NzaW5nbGV4e39IRUFESU5HU3NpbmdsZXgBOTM0LDMwOTgx CitcZGVmXHRvZGF5e390b2RheQE5NDMsMzEyNTYKK1xkZWZcdGhpc3RpdGxle390aGlzdGl0bGUB OTU4LDMxODAxCitcZGVmXHNldHRpdGxle39zZXR0aXRsZQE5NTksMzE4MjYKK1xkZWZcc2V0dGl0 bGV6enogIzF7f3NldHRpdGxlenp6ATk2MCwzMTg2MworXGRlZlxzZXR0aXRsZXp6eiAjMXtcZ2Rl Zlx0aGlzdGl0bGV7f3RoaXN0aXRsZQE5NjAsMzE4NjMKK1xkZWZcaW50ZXJuYWxCaXRlbXt/aW50 ZXJuYWxCaXRlbQE5OTIsMzI3OTMKK1xkZWZcaW50ZXJuYWxCaXRlbXh7f2ludGVybmFsQml0ZW14 ATk5MywzMjg0MworXGRlZlxpbnRlcm5hbEJ4aXRlbSAiIzEie39pbnRlcm5hbEJ4aXRlbQE5OTUs MzI4ODgKK1xkZWZcaW50ZXJuYWxCeGl0ZW0gIiMxIntcZGVmXHhpdGVtc3VidG9waXh7f3hpdGVt c3VidG9waXgBOTk1LDMyODg4CitcZGVmXGludGVybmFsQnhpdGVteCAiIzEie39pbnRlcm5hbEJ4 aXRlbXgBOTk2LDMyOTY4CitcZGVmXGludGVybmFsQnhpdGVteCAiIzEie1xkZWZceGl0ZW1zdWJ0 b3BpeHt/eGl0ZW1zdWJ0b3BpeAE5OTYsMzI5NjgKK1xkZWZcaW50ZXJuYWxCa2l0ZW17f2ludGVy bmFsQmtpdGVtATk5OCwzMzA0MworXGRlZlxpbnRlcm5hbEJraXRlbXh7f2ludGVybmFsQmtpdGVt eAE5OTksMzMwOTUKK1xkZWZca2l0ZW16enogIzF7f2tpdGVtenp6ATEwMDEsMzMxNDIKK1xkZWZc eGl0ZW16enogIzF7f3hpdGVtenp6ATEwMDQsMzMyNDQKK1xkZWZcaXRlbXp6eiAjMXt/aXRlbXp6 egExMDA3LDMzMzQ3CitcZGVmXGl0ZW17f2l0ZW0BMTAzNywzNDQxOAorXGRlZlxpdGVteHt/aXRl bXgBMTAzOCwzNDQ2OQorXGRlZlxraXRlbXt/a2l0ZW0BMTAzOSwzNDUyMgorXGRlZlxraXRlbXh7 f2tpdGVteAExMDQwLDM0NTc1CitcZGVmXHhpdGVte394aXRlbQExMDQxLDM0NjMwCitcZGVmXHhp dGVteHt/eGl0ZW14ATEwNDIsMzQ2ODMKK1xkZWZcZGVzY3JpcHRpb257f2Rlc2NyaXB0aW9uATEw NDUsMzQ3OTMKK1xkZWZcdGFibGV7f3RhYmxlATEwNDcsMzQ4NDMKK1xnZGVmXHRhYmxleCAjMV5e TXt/dGFibGV4ATEwNDksMzQ5MjUKK1xkZWZcZnRhYmxle39mdGFibGUBMTA1MiwzNDk4NworXGdk ZWZcZnRhYmxleCAjMV5eTXt/ZnRhYmxleAExMDU0LDM1MDcxCitcZGVmXEVmdGFibGV7f0VmdGFi bGUBMTA1NiwzNTEzMworXGxldFxFdGFibGU9XHJlbGF4fX9FdGFibGUBMTA1NywzNTE4MAorXGRl Zlx2dGFibGV7f3Z0YWJsZQExMDU5LDM1MjAyCitcZ2RlZlx2dGFibGV4ICMxXl5Ne392dGFibGV4 ATEwNjEsMzUyODYKK1xkZWZcRXZ0YWJsZXt/RXZ0YWJsZQExMDYzLDM1MzQ4CitcbGV0XEV0YWJs ZT1ccmVsYXh9f0V0YWJsZQExMDY0LDM1Mzk1CitcZGVmXGRvbnRpbmRleCAjMXt/ZG9udGluZGV4 ATEwNjYsMzU0MTcKK1xkZWZcZm5pdGVtaW5kZXggIzF7f2ZuaXRlbWluZGV4ATEwNjcsMzU0MzcK K1xkZWZcdnJpdGVtaW5kZXggIzF7f3ZyaXRlbWluZGV4ATEwNjgsMzU0ODIKK1xnZGVmXHRhYmxl eSMxIzIgIzMgIzQgIzUgIzYgIzdcZW5kdGFibGV5e390YWJsZXkBMTA3MSwzNTU0MworXGRlZlx0 YWJsZXogIzEjMiMzIzQjNSM2e390YWJsZXoBMTA3NCwzNTYzMQorXGRlZlxFZGVzY3JpcHRpb257 f0VkZXNjcmlwdGlvbgExMDc3LDM1Njg5CitcbGV0XGl0ZW1pbmRleD0jMSV/aXRlbWluZGV4ATEw NzgsMzU3MzUKK1xkZWZcaXRlbWZvbnR7f2l0ZW1mb250ATEwODIsMzU4OTAKK1xkZWZcRXRhYmxl e39FdGFibGUBMTA5MCwzNjExNgorXGxldFxpdGVtID0gXGludGVybmFsQml0ZW0gJX9pdGVtATEw OTEsMzYxNjIKK1xsZXRcaXRlbXggPSBcaW50ZXJuYWxCaXRlbXggJX9pdGVteAExMDkyLDM2MTkx CitcbGV0XGtpdGVtID0gXGludGVybmFsQmtpdGVtICV/a2l0ZW0BMTA5MywzNjIyMgorXGxldFxr aXRlbXggPSBcaW50ZXJuYWxCa2l0ZW14ICV/a2l0ZW14ATEwOTQsMzYyNTMKK1xsZXRceGl0ZW0g PSBcaW50ZXJuYWxCeGl0ZW0gJX94aXRlbQExMDk1LDM2Mjg2CitcbGV0XHhpdGVteCA9IFxpbnRl cm5hbEJ4aXRlbXggJX94aXRlbXgBMTA5NiwzNjMxNworXGRlZlxpdGVtaXple39pdGVtaXplATEx MDMsMzY0NDAKK1xkZWZcaXRlbWl6ZXp6eiAjMXt/aXRlbWl6ZXp6egExMTA1LDM2NDc2CitcZGVm XGl0ZW1pemV5ICMxIzJ7f2l0ZW1pemV5ATExMTAsMzY1NzEKK1xkZWZcaXRlbWNvbnRlbnRze39p dGVtY29udGVudHMBMTEyMCwzNjg1OAorXGxldFxpdGVtPVxpdGVtaXplaXRlbX1/aXRlbQExMTIx LDM2ODgxCitcZGVmXGJ1bGxldHt/YnVsbGV0ATExMjMsMzY5MDYKK1xkZWZcbWludXN7f21pbnVz ATExMjQsMzY5MzMKK1xkZWZcZnJlbmNoc3BhY2luZ3t/ZnJlbmNoc3BhY2luZwExMTI4LDM3MDQx CitcZGVmXHNwbGl0b2ZmIzEjMlxlbmRtYXJre39zcGxpdG9mZgExMTM0LDM3MjY2CitcZGVmXHNw bGl0b2ZmIzEjMlxlbmRtYXJre1xkZWZcZmlyc3R7f2ZpcnN0ATExMzQsMzcyNjYKK1xkZWZcc3Bs aXRvZmYjMSMyXGVuZG1hcmt7XGRlZlxmaXJzdHsjMX1cZGVmXHJlc3R7f3Jlc3QBMTEzNCwzNzI2 NgorXGRlZlxlbnVtZXJhdGV7f2VudW1lcmF0ZQExMTQwLDM3NDk2CitcZGVmXGVudW1lcmF0ZXp6 eiAjMXt/ZW51bWVyYXRlenp6ATExNDEsMzc1MzUKK1xkZWZcZW51bWVyYXRleSAjMSAjMlxlbmRl bnVtZXJhdGV5e39lbnVtZXJhdGV5ATExNDIsMzc1ODgKKyAgXGRlZlx0aGVhcmd7f3RoZWFyZwEx MTQ2LDM3NzM1CisgIFxpZnhcdGhlYXJnXGVtcHR5IFxkZWZcdGhlYXJne390aGVhcmcBMTE0Nywz Nzc1NAorXGRlZlxudW1lcmljZW51bWVyYXRle39udW1lcmljZW51bWVyYXRlATExODQsMzkwODgK K1xkZWZcbG93ZXJjYXNlZW51bWVyYXRle39sb3dlcmNhc2VlbnVtZXJhdGUBMTE5MCwzOTIxOAor XGRlZlx1cHBlcmNhc2VlbnVtZXJhdGV7f3VwcGVyY2FzZWVudW1lcmF0ZQExMjAzLDM5NTY1Citc ZGVmXHN0YXJ0ZW51bWVyYXRpb24jMXt/c3RhcnRlbnVtZXJhdGlvbgExMjE5LDQwMDU1CitcZGVm XGFscGhhZW51bWVyYXRle39hbHBoYWVudW1lcmF0ZQExMjI3LDQwMjM3CitcZGVmXGNhcHNlbnVt ZXJhdGV7f2NhcHNlbnVtZXJhdGUBMTIyOCw0MDI3MgorXGRlZlxFYWxwaGFlbnVtZXJhdGV7f0Vh bHBoYWVudW1lcmF0ZQExMjI5LDQwMzA2CitcZGVmXEVjYXBzZW51bWVyYXRle39FY2Fwc2VudW1l cmF0ZQExMjMwLDQwMzQwCitcZGVmXGl0ZW1pemVpdGVte39pdGVtaXplaXRlbQExMjM0LDQwNDIw Cit7XGxldFxwYXI9XGVuZGdyYWYgXHNtYWxsYnJlYWt9f3BhcgExMjM2LDQwNDYwCitcZ2RlZlxu ZXd3cml0ZXt/bmV3d3JpdGUBMTI0OSw0MDg0MQorXGRlZlxuZXdpbmRleCAjMXt/bmV3aW5kZXgB MTI1OSw0MTI3NworXGV4cGFuZGFmdGVyXHhkZWZcY3NuYW1lIzFpbmRleFxlbmRjc25hbWV7f2Nz bmFtZQExMjYyLDQxNDM5CitcZGVmXGRlZmluZGV4e39kZWZpbmRleAExMjY4LDQxNTY2CitcZGVm XG5ld2NvZGVpbmRleCAjMXt/bmV3Y29kZWluZGV4ATEyNzIsNDE2NzQKK1xleHBhbmRhZnRlclx4 ZGVmXGNzbmFtZSMxaW5kZXhcZW5kY3NuYW1le39jc25hbWUBMTI3NSw0MTg0MAorXGRlZlxkZWZj b2RlaW5kZXh7f2RlZmNvZGVpbmRleAExMjc5LDQxOTM0CitcZGVmXHN5bmluZGV4ICMxICMyIHt/ c3luaW5kZXgBMTI4Myw0MjExNAorXGV4cGFuZGFmdGVyXGxldFxleHBhbmRhZnRlclxzeW5pbmRl eGZvb1xleHBhbmRhZnRlcj1cY3NuYW1lIzJpbmRmaWxlXGVuZGNzbmFtZX9leHBhbmRhZnRlcgEx Mjg0LDQyMTM3CitcZXhwYW5kYWZ0ZXJcbGV0XGNzbmFtZSMxaW5kZmlsZVxlbmRjc25hbWU9XHN5 bmluZGV4Zm9vf2NzbmFtZQExMjg1LDQyMjE3CitcZXhwYW5kYWZ0ZXJceGRlZlxjc25hbWUjMWlu ZGV4XGVuZGNzbmFtZXt/Y3NuYW1lATEyODYsNDIyNzMKK1xkZWZcc3luY29kZWluZGV4ICMxICMy IHt/c3luY29kZWluZGV4ATEyOTIsNDI0NTQKK1xleHBhbmRhZnRlclxsZXRcZXhwYW5kYWZ0ZXJc c3luaW5kZXhmb29cZXhwYW5kYWZ0ZXI9XGNzbmFtZSMyaW5kZmlsZVxlbmRjc25hbWV/ZXhwYW5k YWZ0ZXIBMTI5Myw0MjQ4MQorXGV4cGFuZGFmdGVyXGxldFxjc25hbWUjMWluZGZpbGVcZW5kY3Nu YW1lPVxzeW5pbmRleGZvb39jc25hbWUBMTI5NCw0MjU2MQorXGV4cGFuZGFmdGVyXHhkZWZcY3Nu YW1lIzFpbmRleFxlbmRjc25hbWV7f2NzbmFtZQExMjk1LDQyNjE3CitcZGVmXGRvaW5kZXgjMXt/ ZG9pbmRleAExMzA5LDQzMTMzCitcZGVmXGRvaW5kZXgjMXtcZWRlZlxpbmRleG5hbWV7f2luZGV4 bmFtZQExMzA5LDQzMTMzCitcZGVmXHNpbmdsZWluZGV4ZXIgIzF7f3NpbmdsZWluZGV4ZXIBMTMx MCw0MzE5MgorXGRlZlxzaW5nbGVpbmRleGVyICMxe1xkb2luZHtcaW5kZXhuYW1lfX9uYW1lATEz MTAsNDMxOTIKK1xkZWZcZG9jb2RlaW5kZXgjMXt/ZG9jb2RlaW5kZXgBMTMxMyw0MzMwNAorXGRl Zlxkb2NvZGVpbmRleCMxe1xlZGVmXGluZGV4bmFtZXt/aW5kZXhuYW1lATEzMTMsNDMzMDQKK1xk ZWZcc2luZ2xlY29kZWluZGV4ZXIgIzF7f3NpbmdsZWNvZGVpbmRleGVyATEzMTQsNDMzNzEKK1xk ZWZcc2luZ2xlY29kZWluZGV4ZXIgIzF7XGRvaW5ke1xpbmRleG5hbWV9f25hbWUBMTMxNCw0MzM3 MQorXGRlZlxpbmRleGR1bW1pZXN7f2luZGV4ZHVtbWllcwExMzE2LDQzNDI5CitcZGVmXF97f18B MTMxNyw0MzQ0OQorXGRlZlx3e393ATEzMTgsNDM0NzcKK1xkZWZcYmZ7f2JmATEzMTksNDM1MDQK K1xkZWZccm17f3JtATEzMjAsNDM1MzMKK1xkZWZcc2x7f3NsATEzMjEsNDM1NjIKK1xkZWZcc2Z7 f3NmATEzMjIsNDM1OTEKK1xkZWZcdHR7f3R0ATEzMjMsNDM2MTkKK1xkZWZcZ3Rye39ndHIBMTMy NCw0MzY0NworXGRlZlxsZXNze39sZXNzATEzMjUsNDM2NzcKK1xkZWZcaGF0e39oYXQBMTMyNiw0 MzcwOQorXGRlZlxjaGFye39jaGFyATEzMjcsNDM3MzkKK1xkZWZcVGVYe39UZVgBMTMyOCw0Mzc3 MQorXGRlZlxkb3Rze39kb3RzATEzMjksNDM4MDEKK1xkZWZcY29weXJpZ2h0e39jb3B5cmlnaHQB MTMzMCw0MzgzNAorXGRlZlx0Y2xvc2UjIzF7f3RjbG9zZQExMzMxLDQzODc3CitcZGVmXGNvZGUj IzF7f2NvZGUBMTMzMiw0MzkyMgorXGRlZlxzYW1wIyMxe39zYW1wATEzMzMsNDM5NjMKK1xkZWZc dCMjMXt/dAExMzM0LDQ0MDA0CitcZGVmXHIjIzF7f3IBMTMzNSw0NDAzOQorXGRlZlxpIyMxe39p ATEzMzYsNDQwNzQKK1xkZWZcYiMjMXt/YgExMzM3LDQ0MTA5CitcZGVmXGNpdGUjIzF7f2NpdGUB MTMzOCw0NDE0NAorXGRlZlxrZXkjIzF7f2tleQExMzM5LDQ0MTg1CitcZGVmXGZpbGUjIzF7f2Zp bGUBMTM0MCw0NDIyNAorXGRlZlx2YXIjIzF7f3ZhcgExMzQxLDQ0MjY1CitcZGVmXGtiZCMjMXt/ a2JkATEzNDIsNDQzMDQKK1xkZWZcaW5kZXhkdW1teWZvbnQjMXt/aW5kZXhkdW1teWZvbnQBMTM0 Nyw0NDQ2MAorXGRlZlxpbmRleGR1bW15dGV4e39pbmRleGR1bW15dGV4ATEzNDgsNDQ0ODYKK1xk ZWZcaW5kZXhkdW1teWRvdHN7f2luZGV4ZHVtbXlkb3RzATEzNDksNDQ1MTAKK1xkZWZcaW5kZXhu b2ZvbnRze39pbmRleG5vZm9udHMBMTM1MSw0NDUzNgorXGxldFx3PVxpbmRleGR1bW15Zm9udH93 ATEzNTIsNDQ1NTYKIFxsZXRcdz1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNTIsNDQ1NTYK K1xsZXRcdD1caW5kZXhkdW1teWZvbnR/dAExMzUzLDQ0NTc5CiBcbGV0XHQ9XGluZGV4ZHVtbXlm b250f2R1bW15Zm9udAExMzUzLDQ0NTc5CitcbGV0XHI9XGluZGV4ZHVtbXlmb250f3IBMTM1NCw0 NDYwMgogXGxldFxyPVxpbmRleGR1bW15Zm9udH9kdW1teWZvbnQBMTM1NCw0NDYwMgorXGxldFxp PVxpbmRleGR1bW15Zm9udH9pATEzNTUsNDQ2MjUKIFxsZXRcaT1caW5kZXhkdW1teWZvbnR/ZHVt bXlmb250ATEzNTUsNDQ2MjUKK1xsZXRcYj1caW5kZXhkdW1teWZvbnR/YgExMzU2LDQ0NjQ4CiBc bGV0XGI9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9udAExMzU2LDQ0NjQ4CitcbGV0XGVtcGg9XGlu ZGV4ZHVtbXlmb250f2VtcGgBMTM1Nyw0NDY3MQogXGxldFxlbXBoPVxpbmRleGR1bW15Zm9udH9k dW1teWZvbnQBMTM1Nyw0NDY3MQorXGxldFxzdHJvbmc9XGluZGV4ZHVtbXlmb250f3N0cm9uZwEx MzU4LDQ0Njk3CiBcbGV0XHN0cm9uZz1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNTgsNDQ2 OTcKLVxsZXRcY2l0ZT1caW5kZXhkdW1teWZvbnR/PVxpbmRleGR1bW15Zm9udAExMzU5LDQ0NzI1 CitcbGV0XGNpdGU9XGluZGV4ZHVtbXlmb250f2NpdGUBMTM1OSw0NDcyNQorXGxldFxjaXRlPVxp bmRleGR1bW15Zm9udH9kdW1teWZvbnQBMTM1OSw0NDcyNQorXGxldFxzYz1caW5kZXhkdW1teWZv bnR/c2MBMTM2MCw0NDc1MQogXGxldFxzYz1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNjAs NDQ3NTEKK1xsZXRcdGNsb3NlPVxpbmRleGR1bW15Zm9udH90Y2xvc2UBMTM2NCw0NDkyMwogXGxl dFx0Y2xvc2U9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9udAExMzY0LDQ0OTIzCitcbGV0XGNvZGU9 XGluZGV4ZHVtbXlmb250f2NvZGUBMTM2NSw0NDk1MQogXGxldFxjb2RlPVxpbmRleGR1bW15Zm9u dH9kdW1teWZvbnQBMTM2NSw0NDk1MQorXGxldFxmaWxlPVxpbmRleGR1bW15Zm9udH9maWxlATEz NjYsNDQ5NzcKIFxsZXRcZmlsZT1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNjYsNDQ5NzcK K1xsZXRcc2FtcD1caW5kZXhkdW1teWZvbnR/c2FtcAExMzY3LDQ1MDAzCiBcbGV0XHNhbXA9XGlu ZGV4ZHVtbXlmb250f2R1bW15Zm9udAExMzY3LDQ1MDAzCitcbGV0XGtiZD1caW5kZXhkdW1teWZv bnR/a2JkATEzNjgsNDUwMjkKIFxsZXRca2JkPVxpbmRleGR1bW15Zm9udH9kdW1teWZvbnQBMTM2 OCw0NTAyOQorXGxldFxrZXk9XGluZGV4ZHVtbXlmb250f2tleQExMzY5LDQ1MDU0CiBcbGV0XGtl eT1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNjksNDUwNTQKK1xsZXRcdmFyPVxpbmRleGR1 bW15Zm9udH92YXIBMTM3MCw0NTA3OQogXGxldFx2YXI9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9u dAExMzcwLDQ1MDc5CitcbGV0XFRlWD1caW5kZXhkdW1teXRleH9UZVgBMTM3MSw0NTEwNAogXGxl dFxUZVg9XGluZGV4ZHVtbXl0ZXh/ZHVtbXl0ZXgBMTM3MSw0NTEwNAorXGxldFxkb3RzPVxpbmRl eGR1bW15ZG90c39kb3RzATEzNzIsNDUxMjgKIFxsZXRcZG90cz1caW5kZXhkdW1teWRvdHN/ZHVt bXlkb3RzATEzNzIsNDUxMjgKLVxsZXRcaW5kZXhiYWNrc2xhc2g9MCAgJW92ZXJyaWRkZW4gZHVy aW5nIFxwcmludGluZGV4Ln9iYWNrc2xhc2g9MAExMzgyLDQ1MzgwCi1cZGVmXGRvaW5kICMxIzJ7 f1xkb2luZAExMzg0LDQ1NDM2CitcbGV0XGluZGV4YmFja3NsYXNoPTAgICVvdmVycmlkZGVuIGR1 cmluZyBccHJpbnRpbmRleC5/aW5kZXhiYWNrc2xhc2gBMTM4Miw0NTM4MAorXGRlZlxkb2luZCAj MSMye39kb2luZAExMzg0LDQ1NDM2CiB7XGluZGV4ZHVtbWllcyAlIE11c3QgZG8gdGhpcyBoZXJl LCBzaW5jZSBcYmYsIGV0YyBleHBhbmQgYXQgdGhpcyBzdGFnZX9kdW1taWVzATEzODYsNDU0NzkK LVxkZWZccmF3YmFja3NsYXNoeHh7f1xyYXdiYWNrc2xhc2h4eAExMzg5LDQ1NjE5Cit7XGxldFxm b2xpbz0wJSBFeHBhbmQgYWxsIG1hY3JvcyBub3cgRVhDRVBUIFxmb2xpb39mb2xpbwExMzg4LDQ1 NTY4CitcZGVmXHJhd2JhY2tzbGFzaHh4e39yYXdiYWNrc2xhc2h4eAExMzg5LDQ1NjE5CitcZGVm XHJhd2JhY2tzbGFzaHh4e1xpbmRleGJhY2tzbGFzaH1/YmFja3NsYXNoATEzODksNDU2MTkKIHtc aW5kZXhub2ZvbnRzf25vZm9udHMBMTM5NCw0NTg4MQotXGRlZlxkb3N1YmluZCAjMSMyIzN7f1xk b3N1YmluZAExNDA1LDQ2MTkyCitceGRlZlx0ZW1wMXt/dGVtcDEBMTM5NSw0NTg5NgorXGVkZWZc dGVtcHt/dGVtcAExMzk5LDQ2MDY4CitcZGVmXGRvc3ViaW5kICMxIzIjM3t/ZG9zdWJpbmQBMTQw NSw0NjE5Mgoge1xpbmRleGR1bW1pZXMgJSBNdXN0IGRvIHRoaXMgaGVyZSwgc2luY2UgXGJmLCBl dGMgZXhwYW5kIGF0IHRoaXMgc3RhZ2V/ZHVtbWllcwExNDA3LDQ2MjQwCi1cZGVmXHJhd2JhY2tz bGFzaHh4e39ccmF3YmFja3NsYXNoeHgBMTQxMCw0NjM0NAore1xsZXRcZm9saW89MCV/Zm9saW8B MTQwOSw0NjMyOQorXGRlZlxyYXdiYWNrc2xhc2h4eHt/cmF3YmFja3NsYXNoeHgBMTQxMCw0NjM0 NAorXGRlZlxyYXdiYWNrc2xhc2h4eHtcaW5kZXhiYWNrc2xhc2h9f2JhY2tzbGFzaAExNDEwLDQ2 MzQ0CiB7XGluZGV4bm9mb250c39ub2ZvbnRzATE0MTQsNDY0OTgKLVxkZWZcZmluZGV4IHt/XGZp bmRleAExNDQzLDQ3NDI5Ci1cZGVmXGtpbmRleCB7f1xraW5kZXgBMTQ0NCw0NzQ1MgotXGRlZlxj aW5kZXgge39cY2luZGV4ATE0NDUsNDc0NzUKLVxkZWZcdmluZGV4IHt/XHZpbmRleAExNDQ2LDQ3 NDk4Ci1cZGVmXHRpbmRleCB7f1x0aW5kZXgBMTQ0Nyw0NzUyMQotXGRlZlxwaW5kZXgge39ccGlu ZGV4ATE0NDgsNDc1NDQKLVxkZWZcY2luZGV4c3ViIHt/XGNpbmRleHN1YgExNDUwLDQ3NTY4Ci1c ZGVmXHByaW50aW5kZXh7f1xwcmludGluZGV4ATE0NjIsNDc4OTUKLVxkZWZcZG9wcmludGluZGV4 IzF7f1xkb3ByaW50aW5kZXgBMTQ2NCw0NzkzNgotICBcZGVmXGluZGV4YmFja3NsYXNoe39caW5k ZXhiYWNrc2xhc2gBMTQ4MSw0ODQyMQorXHhkZWZcdGVtcDF7f3RlbXAxATE0MTUsNDY1MTMKK1xl ZGVmXHRlbXB7f3RlbXABMTQxOSw0NjY4OAorXGRlZlxmaW5kZXgge39maW5kZXgBMTQ0Myw0NzQy OQorXGRlZlxraW5kZXgge39raW5kZXgBMTQ0NCw0NzQ1MgorXGRlZlxjaW5kZXgge39jaW5kZXgB MTQ0NSw0NzQ3NQorXGRlZlx2aW5kZXgge392aW5kZXgBMTQ0Niw0NzQ5OAorXGRlZlx0aW5kZXgg e390aW5kZXgBMTQ0Nyw0NzUyMQorXGRlZlxwaW5kZXgge39waW5kZXgBMTQ0OCw0NzU0NAorXGRl ZlxjaW5kZXhzdWIge39jaW5kZXhzdWIBMTQ1MCw0NzU2OAorXGdkZWZcY2luZGV4c3ViICIjMSIg IzJeXk17f2NpbmRleHN1YgExNDUyLDQ3NjMxCitcZGVmXHByaW50aW5kZXh7f3ByaW50aW5kZXgB MTQ2Miw0Nzg5NQorXGRlZlxkb3ByaW50aW5kZXgjMXt/ZG9wcmludGluZGV4ATE0NjQsNDc5MzYK KyAgXGRlZlxpbmRleGJhY2tzbGFzaHt/aW5kZXhiYWNrc2xhc2gBMTQ4MSw0ODQyMQogICBcaW5k ZXhmb250c1xybSBcdG9sZXJhbmNlPTk1MDAgXGFkdmFuY2VcYmFzZWxpbmVza2lwIC0xcHR/Zm9u dHNccm0BMTQ4Miw0ODQ2MAotXGRlZlxpbml0aWFsICMxe39caW5pdGlhbAExNTE3LDQ5NTMyCi1c ZGVmXGVudHJ5ICMxIzJ7f1xlbnRyeQExNTIzLDQ5NzM5CitcZGVmXGluaXRpYWwgIzF7f2luaXRp YWwBMTUxNyw0OTUzMgore1xsZXRcdGVudHQ9XHNlY3R0IFxsZXRcdHQ9XHNlY3R0IFxsZXRcc2Y9 XHNlY3R0f3RlbnR0ATE1MTgsNDk1NTAKK3tcbGV0XHRlbnR0PVxzZWN0dCBcbGV0XHR0PVxzZWN0 dCBcbGV0XHNmPVxzZWN0dH90dAExNTE4LDQ5NTUwCit7XGxldFx0ZW50dD1cc2VjdHQgXGxldFx0 dD1cc2VjdHQgXGxldFxzZj1cc2VjdHR/c2YBMTUxOCw0OTU1MAorXGRlZlxlbnRyeSAjMSMye39l bnRyeQExNTIzLDQ5NzM5CiAgIFxudWxsXG5vYnJlYWtcaW5kZXhkb3RmaWxsICUgSGF2ZSBsZWFk ZXJzIGJlZm9yZSB0aGUgcGFnZSBudW1iZXIuf2RvdGZpbGwBMTU0MCw1MDM4NgotXGRlZlxpbmRl eGRvdGZpbGx7f1xpbmRleGRvdGZpbGwBMTU0OSw1MDcxNAotXGRlZlxwcmltYXJ5ICMxe39ccHJp bWFyeQExNTUyLDUwODIwCi1cZGVmXHNlY29uZGFyeSAjMSMye39cc2Vjb25kYXJ5ATE1NTYsNTA5 MDIKK1xkZWZcaW5kZXhkb3RmaWxse39pbmRleGRvdGZpbGwBMTU0OSw1MDcxNAorXGRlZlxwcmlt YXJ5ICMxe39wcmltYXJ5ATE1NTIsNTA4MjAKK1xkZWZcc2Vjb25kYXJ5ICMxIzJ7f3NlY29uZGFy eQExNTU2LDUwOTAyCiBcbm9pbmRlbnRcaHNraXBcc2Vjb25kYXJ5aW5kZW50XGhib3h7IzF9XGlu ZGV4ZG90ZmlsbCAjMlxwYXJ/ZG90ZmlsbAExNTU5LDUwOTg0CiBcbmV3Ym94XHBhcnRpYWxwYWdl f2lhbHBhZ2UBMTU2Niw1MTE1NwotXGRlZlxiZWdpbmRvdWJsZWNvbHVtbnN7f1xiZWdpbmRvdWJs ZWNvbHVtbnMBMTU3Miw1MTMxNQotICBcb3V0cHV0PXtcZ2xvYmFsXHNldGJveFxwYXJ0aWFscGFn ZT1/aWFscGFnZT0BMTU3Myw1MTM1MQotXGRlZlxlbmRkb3VibGVjb2x1bW5ze39cZW5kZG91Ymxl Y29sdW1ucwExNTc3LDUxNTM5Ci1cZGVmXGRvdWJsZWNvbHVtbm91dHt/XGRvdWJsZWNvbHVtbm91 dAExNTgwLDUxNjI0CitcZGVmXGJlZ2luZG91YmxlY29sdW1uc3t/YmVnaW5kb3VibGVjb2x1bW5z ATE1NzIsNTEzMTUKKyAgXG91dHB1dD17XGdsb2JhbFxzZXRib3hccGFydGlhbHBhZ2U9f2lhbHBh Z2UBMTU3Myw1MTM1MQorXGRlZlxlbmRkb3VibGVjb2x1bW5ze39lbmRkb3VibGVjb2x1bW5zATE1 NzcsNTE1MzkKK1xkZWZcZG91YmxlY29sdW1ub3V0e39kb3VibGVjb2x1bW5vdXQBMTU4MCw1MTYy NAogICBcZGltZW5APVxwYWdlaGVpZ2h0IFxhZHZhbmNlXGRpbWVuQCBieS1caHRccGFydGlhbHBh Z2V/aWFscGFnZQExNTgxLDUxNjkzCi1cZGVmXHBhZ2Vzb2Zhcnt/XHBhZ2Vzb2ZhcgExNTg0LDUx ODcxCi1cZGVmXGJhbGFuY2Vjb2x1bW5ze39cYmFsYW5jZWNvbHVtbnMBMTU4OCw1MjEwOAorXGRl ZlxwYWdlc29mYXJ7f3BhZ2Vzb2ZhcgExNTg0LDUxODcxCitcZGVmXHBhZ2Vzb2ZhcntcdW52Ym94 XHBhcnRpYWxwYWdlICV/aWFscGFnZQExNTg0LDUxODcxCitcZGVmXGJhbGFuY2Vjb2x1bW5ze39i YWxhbmNlY29sdW1ucwExNTg4LDUyMTA4CiAgIFxhdmFpbGRpbWVuQD1ccGFnZWhlaWdodCBcYWR2 YW5jZVxhdmFpbGRpbWVuQCBieS1caHRccGFydGlhbHBhZ2V/aWFscGFnZQExNTk0LDUyMjc5CiAg ICAgIFxkaW1lbkA9XHBhZ2VoZWlnaHQgXGFkdmFuY2VcZGltZW5AIGJ5LVxodFxwYXJ0aWFscGFn ZX9pYWxwYWdlATE2MDAsNTI1NDAKIFxuZXdjb3VudCBcYXBwZW5kaXhubyAgXGFwcGVuZGl4bm8g PSBgXEB/bm8BMTYyNyw1MzQ0NQotXGRlZlxhcHBlbmRpeGxldHRlcnt/XGFwcGVuZGl4bGV0dGVy ATE2MjgsNTM0ODYKLVxkZWZcb3BlbmNvbnRlbnRze39cb3BlbmNvbnRlbnRzATE2MzIsNTM1ODkK LVxkZWZcdGhpc2NoYXB0ZXJ7f1x0aGlzY2hhcHRlcgExNjM3LDUzNzcwCi1cZGVmXHNlY2NoZWNr IzF7f1xzZWNjaGVjawExNjM4LDUzODA4Ci1cZGVmXGNoYXB0ZXJub2ZvbnRze39cY2hhcHRlcm5v Zm9udHMBMTY0Myw1MzkxMgotXGRlZlxyZXN1bHR7f1xyZXN1bHQBMTY0Niw1Mzk4NwotXGRlZlxl cXVpdnt/XGVxdWl2ATE2NDcsNTQwMjIKLVxkZWZcZXhwYW5zaW9ue39cZXhwYW5zaW9uATE2NDgs NTQwNTUKLVxkZWZccHJpbnR7f1xwcmludAExNjQ5LDU0MDk2Ci1cZGVmXFRlWHt/XFRlWAExNjUw LDU0MTI5Ci1cZGVmXGRvdHN7f1xkb3RzATE2NTEsNTQxNTgKLVxkZWZcY29weXJpZ2h0e39cY29w eXJpZ2h0ATE2NTIsNTQxODkKLVxkZWZcdHR7f1x0dAExNjUzLDU0MjMwCi1cZGVmXGJme39cYmYB MTY1NCw1NDI1NwotXGRlZlx3e39cdwExNjU1LDU0Mjg1Ci1cZGVmXGxlc3N7f1xsZXNzATE2NTYs NTQzMTAKLVxkZWZcZ3Rye39cZ3RyATE2NTcsNTQzNDEKLVxkZWZcaGF0e39caGF0ATE2NTgsNTQz NzAKLVxkZWZcY2hhcnt/XGNoYXIBMTY1OSw1NDM5OQotXGRlZlx0Y2xvc2UjIzF7f1x0Y2xvc2UB MTY2MCw1NDQzMAotXGRlZlxjb2RlIyMxe39cY29kZQExNjYxLDU0NDc0Ci1cZGVmXHNhbXAjIzF7 f1xzYW1wATE2NjIsNTQ1MTQKLVxkZWZcciMjMXt/XHIBMTY2Myw1NDU1NAotXGRlZlxiIyMxe39c YgExNjY0LDU0NTg4Ci1cZGVmXGtleSMjMXt/XGtleQExNjY1LDU0NjIyCi1cZGVmXGZpbGUjIzF7 f1xmaWxlATE2NjYsNTQ2NjAKLVxkZWZca2JkIyMxe39ca2JkATE2NjcsNTQ3MDAKLVxkZWZcaSMj MXt/XGkBMTY2OSw1NDgwOAotXGRlZlxjaXRlIyMxe39cY2l0ZQExNjcwLDU0ODQyCi1cZGVmXHZh ciMjMXt/XHZhcgExNjcxLDU0ODgyCi1cZGVmXGVtcGgjIzF7f1xlbXBoATE2NzIsNTQ5MjAKLVxk ZWZcZGZuIyMxe39cZGZuATE2NzMsNTQ5NjAKLVxkZWZcdGhpc2NoYXB0ZXJuYW1le39cdGhpc2No YXB0ZXJuYW1lATE2NzYsNTUwMDEKLVxvdXRlclxkZWZcY2hhcHRlcnt/XGNoYXB0ZXIBMTY3Nyw1 NTA0MAotXGRlZlxjaGFwdGVyenp6ICMxe39cY2hhcHRlcnp6egExNjc4LDU1MDgxCi17XGNoYXB0 ZXJub2ZvbnRzJX9ub2ZvbnRzJQExNjg3LDU1NDc3Ci1cZ2xvYmFsXGxldFxzZWN0aW9uID0gXG51 bWJlcmVkc2Vjfz0BMTY5Miw1NTYzMAotXGdsb2JhbFxsZXRcc3Vic2VjdGlvbiA9IFxudW1iZXJl ZHN1YnNlY389ATE2OTMsNTU2NjUKLVxnbG9iYWxcbGV0XHN1YnN1YnNlY3Rpb24gPSBcbnVtYmVy ZWRzdWJzdWJzZWN/PQExNjk0LDU1NzA2Ci1cb3V0ZXJcZGVmXGFwcGVuZGl4e39cYXBwZW5kaXgB MTY5Nyw1NTc1NwotXGRlZlxhcHBlbmRpeHp6eiAjMXt/XGFwcGVuZGl4enp6ATE2OTgsNTU4MDAK K1xuZXdjb3VudCBcYXBwZW5kaXhubyAgXGFwcGVuZGl4bm8gPSBgXEB/bm8BMTYyNyw1MzQ0NQor XGRlZlxhcHBlbmRpeGxldHRlcnt/YXBwZW5kaXhsZXR0ZXIBMTYyOCw1MzQ4NgorXGRlZlxhcHBl bmRpeGxldHRlcntcY2hhclx0aGVcYXBwZW5kaXhub31/bm8BMTYyOCw1MzQ4NgorXGRlZlxvcGVu Y29udGVudHN7f29wZW5jb250ZW50cwExNjMyLDUzNTg5CitcZGVmXHRoaXNjaGFwdGVye390aGlz Y2hhcHRlcgExNjM3LDUzNzcwCitcZGVmXHRoaXNjaGFwdGVye30gXGRlZlx0aGlzc2VjdGlvbnt/ dGhpc3NlY3Rpb24BMTYzNyw1Mzc3MAorXGRlZlxzZWNjaGVjayMxe39zZWNjaGVjawExNjM4LDUz ODA4CitcZGVmXGNoYXB0ZXJub2ZvbnRze39jaGFwdGVybm9mb250cwExNjQzLDUzOTEyCitcbGV0 XHJhd2JhY2tzbGFzaD1ccmVsYXglf3Jhd2JhY2tzbGFzaAExNjQ0LDUzOTM0CitcbGV0XGZyZW5j aHNwYWNpbmc9XHJlbGF4JX9mcmVuY2hzcGFjaW5nATE2NDUsNTM5NjAKK1xkZWZccmVzdWx0e39y ZXN1bHQBMTY0Niw1Mzk4NworXGRlZlxlcXVpdnt/ZXF1aXYBMTY0Nyw1NDAyMgorXGRlZlxleHBh bnNpb257f2V4cGFuc2lvbgExNjQ4LDU0MDU1CitcZGVmXHByaW50e39wcmludAExNjQ5LDU0MDk2 CitcZGVmXFRlWHt/VGVYATE2NTAsNTQxMjkKK1xkZWZcZG90c3t/ZG90cwExNjUxLDU0MTU4Citc ZGVmXGNvcHlyaWdodHt/Y29weXJpZ2h0ATE2NTIsNTQxODkKK1xkZWZcdHR7f3R0ATE2NTMsNTQy MzAKK1xkZWZcYmZ7f2JmATE2NTQsNTQyNTcKK1xkZWZcd3t/dwExNjU1LDU0Mjg1CitcZGVmXGxl c3N7f2xlc3MBMTY1Niw1NDMxMAorXGRlZlxndHJ7f2d0cgExNjU3LDU0MzQxCitcZGVmXGhhdHt/ aGF0ATE2NTgsNTQzNzAKK1xkZWZcY2hhcnt/Y2hhcgExNjU5LDU0Mzk5CitcZGVmXHRjbG9zZSMj MXt/dGNsb3NlATE2NjAsNTQ0MzAKK1xkZWZcY29kZSMjMXt/Y29kZQExNjYxLDU0NDc0CitcZGVm XHNhbXAjIzF7f3NhbXABMTY2Miw1NDUxNAorXGRlZlxyIyMxe39yATE2NjMsNTQ1NTQKK1xkZWZc YiMjMXt/YgExNjY0LDU0NTg4CitcZGVmXGtleSMjMXt/a2V5ATE2NjUsNTQ2MjIKK1xkZWZcZmls ZSMjMXt/ZmlsZQExNjY2LDU0NjYwCitcZGVmXGtiZCMjMXt/a2JkATE2NjcsNTQ3MDAKK1xkZWZc aSMjMXt/aQExNjY5LDU0ODA4CitcZGVmXGNpdGUjIzF7f2NpdGUBMTY3MCw1NDg0MgorXGRlZlx2 YXIjIzF7f3ZhcgExNjcxLDU0ODgyCitcZGVmXGVtcGgjIzF7f2VtcGgBMTY3Miw1NDkyMAorXGRl ZlxkZm4jIzF7f2RmbgExNjczLDU0OTYwCitcZGVmXHRoaXNjaGFwdGVybmFtZXt/dGhpc2NoYXB0 ZXJuYW1lATE2NzYsNTUwMDEKK1xvdXRlclxkZWZcY2hhcHRlcnt/Y2hhcHRlcgExNjc3LDU1MDQw Citcb3V0ZXJcZGVmXGNoYXB0ZXJ7XHBhcnNlYXJnXGNoYXB0ZXJ6enp9f3p6egExNjc3LDU1MDQw CitcZGVmXGNoYXB0ZXJ6enogIzF7f2NoYXB0ZXJ6enoBMTY3OCw1NTA4MQorXGdkZWZcdGhpc3Nl Y3Rpb257f3RoaXNzZWN0aW9uATE2ODIsNTUyNDYKK1xnZGVmXHRoaXNjaGFwdGVybmFtZXt/dGhp c2NoYXB0ZXJuYW1lATE2ODMsNTUyNjkKK1x4ZGVmXHRoaXNjaGFwdGVye390aGlzY2hhcHRlcgEx Njg2LDU1NDEwCit7XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzATE2ODcsNTU0NzcKK1xlZGVmXHRl bXB7f3RlbXABMTY4OCw1NTQ5NQorXGdsb2JhbFxsZXRcc2VjdGlvbiA9IFxudW1iZXJlZHNlY39z ZWN0aW9uATE2OTIsNTU2MzAKK1xnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcbnVtYmVyZWRzdWJz ZWN/c3Vic2VjdGlvbgExNjkzLDU1NjY1CitcZ2xvYmFsXGxldFxzdWJzdWJzZWN0aW9uID0gXG51 bWJlcmVkc3Vic3Vic2Vjf3N1YnN1YnNlY3Rpb24BMTY5NCw1NTcwNgorXG91dGVyXGRlZlxhcHBl bmRpeHt/YXBwZW5kaXgBMTY5Nyw1NTc1NworXG91dGVyXGRlZlxhcHBlbmRpeHtccGFyc2Vhcmdc YXBwZW5kaXh6enp9f3p6egExNjk3LDU1NzU3CitcZGVmXGFwcGVuZGl4enp6ICMxe39hcHBlbmRp eHp6egExNjk4LDU1ODAwCiBcZ2xvYmFsXGFkdmFuY2UgXGFwcGVuZGl4bm8gYnkgMSBcbWVzc2Fn ZXt/bm8BMTcwMCw1NTg3NworXGdsb2JhbFxhZHZhbmNlIFxhcHBlbmRpeG5vIGJ5IDEgXG1lc3Nh Z2V7QXBwZW5kaXggXGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIBMTcwMCw1NTg3NwogXGNoYXBtYWNy byB7IzF9e0FwcGVuZGl4IFxhcHBlbmRpeGxldHRlcn1/bGV0dGVyATE3MDEsNTU5NDYKK1xnZGVm XHRoaXNzZWN0aW9ue390aGlzc2VjdGlvbgExNzAyLDU1OTg5CitcZ2RlZlx0aGlzY2hhcHRlcm5h bWV7f3RoaXNjaGFwdGVybmFtZQExNzAzLDU2MDEyCitceGRlZlx0aGlzY2hhcHRlcnt/dGhpc2No YXB0ZXIBMTcwNCw1NjAzOQogXHhkZWZcdGhpc2NoYXB0ZXJ7QXBwZW5kaXggXGFwcGVuZGl4bGV0 dGVyOiBcbm9leHBhbmRcdGhpc2NoYXB0ZXJuYW1lfX9sZXR0ZXI6ATE3MDQsNTYwMzkKLXtcY2hh cHRlcm5vZm9udHMlf25vZm9udHMlATE3MDUsNTYxMTEKK3tcY2hhcHRlcm5vZm9udHMlf25vZm9u dHMBMTcwNSw1NjExMQorXGVkZWZcdGVtcHt/dGVtcAExNzA2LDU2MTI5CiAgIHsjMX17QXBwZW5k aXggXGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIBMTcwNyw1NjE2NwogXGFwcGVuZGl4bm9kZXJlZiAl f25vZGVyZWYBMTcxMCw1NjI2NwotXGdsb2JhbFxsZXRcc2VjdGlvbiA9IFxhcHBlbmRpeHNlY389 ATE3MTEsNTYyODYKLVxnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcYXBwZW5kaXhzdWJzZWN/PQEx NzEyLDU2MzIxCi1cZ2xvYmFsXGxldFxzdWJzdWJzZWN0aW9uID0gXGFwcGVuZGl4c3Vic3Vic2Vj fz0BMTcxMyw1NjM2MgotXG91dGVyXGRlZlx0b3B7f1x0b3ABMTcxNiw1NjQxMwotXG91dGVyXGRl Zlx1bm51bWJlcmVke39cdW5udW1iZXJlZAExNzE3LDU2NDUzCi1cZGVmXHVubnVtYmVyZWR6enog IzF7f1x1bm51bWJlcmVkenp6ATE3MTgsNTY1MDAKLXtcY2hhcHRlcm5vZm9udHMlf25vZm9udHMl ATE3MjIsNTY2NjMKLVxnbG9iYWxcbGV0XHNlY3Rpb24gPSBcdW5udW1iZXJlZHNlY389ATE3Mjcs NTY4MTMKLVxnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcdW5udW1iZXJlZHN1YnNlY389ATE3Mjgs NTY4NTAKLVxnbG9iYWxcbGV0XHN1YnN1YnNlY3Rpb24gPSBcdW5udW1iZXJlZHN1YnN1YnNlY389 ATE3MjksNTY4OTMKLVxvdXRlclxkZWZcbnVtYmVyZWRzZWN7f1xudW1iZXJlZHNlYwExNzMyLDU2 OTQ2Ci1cZGVmXHNlY3p6eiAjMXt/XHNlY3p6egExNzMzLDU2OTg3Ci17XGNoYXB0ZXJub2ZvbnRz JX9ub2ZvbnRzJQExNzM2LDU3MTQzCi1cb3V0ZXJcZGVmXGFwcGVuZGl4c2VjdGlvbnt/XGFwcGVu ZGl4c2VjdGlvbgExNzQ1LDU3MzI5Ci1cb3V0ZXJcZGVmXGFwcGVuZGl4c2Vje39cYXBwZW5kaXhz ZWMBMTc0Niw1NzM4NgotXGRlZlxhcHBlbmRpeHNlY3Rpb256enogIzF7f1xhcHBlbmRpeHNlY3Rp b256enoBMTc0Nyw1NzQzOQorXGdsb2JhbFxsZXRcc2VjdGlvbiA9IFxhcHBlbmRpeHNlY39zZWN0 aW9uATE3MTEsNTYyODYKK1xnbG9iYWxcbGV0XHNlY3Rpb24gPSBcYXBwZW5kaXhzZWN/c2VjATE3 MTEsNTYyODYKK1xnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcYXBwZW5kaXhzdWJzZWN/c3Vic2Vj dGlvbgExNzEyLDU2MzIxCitcZ2xvYmFsXGxldFxzdWJzZWN0aW9uID0gXGFwcGVuZGl4c3Vic2Vj f3N1YnNlYwExNzEyLDU2MzIxCitcZ2xvYmFsXGxldFxzdWJzdWJzZWN0aW9uID0gXGFwcGVuZGl4 c3Vic3Vic2Vjf3N1YnN1YnNlY3Rpb24BMTcxMyw1NjM2MgorXGdsb2JhbFxsZXRcc3Vic3Vic2Vj dGlvbiA9IFxhcHBlbmRpeHN1YnN1YnNlY39zdWJzdWJzZWMBMTcxMyw1NjM2MgorXG91dGVyXGRl Zlx0b3B7f3RvcAExNzE2LDU2NDEzCitcb3V0ZXJcZGVmXHVubnVtYmVyZWR7f3VubnVtYmVyZWQB MTcxNyw1NjQ1MworXGRlZlx1bm51bWJlcmVkenp6ICMxe391bm51bWJlcmVkenp6ATE3MTgsNTY1 MDAKK1xnZGVmXHRoaXNjaGFwdGVye390aGlzY2hhcHRlcgExNzIxLDU2NjE5CitcZ2RlZlx0aGlz Y2hhcHRlcnsjMX1cZ2RlZlx0aGlzc2VjdGlvbnt/dGhpc3NlY3Rpb24BMTcyMSw1NjYxOQore1xj aGFwdGVybm9mb250cyV/bm9mb250cwExNzIyLDU2NjYzCitcZWRlZlx0ZW1we390ZW1wATE3MjMs NTY2ODEKK1xnbG9iYWxcbGV0XHNlY3Rpb24gPSBcdW5udW1iZXJlZHNlY39zZWN0aW9uATE3Mjcs NTY4MTMKK1xnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcdW5udW1iZXJlZHN1YnNlY39zdWJzZWN0 aW9uATE3MjgsNTY4NTAKK1xnbG9iYWxcbGV0XHN1YnN1YnNlY3Rpb24gPSBcdW5udW1iZXJlZHN1 YnN1YnNlY39zdWJzdWJzZWN0aW9uATE3MjksNTY4OTMKK1xvdXRlclxkZWZcbnVtYmVyZWRzZWN7 f251bWJlcmVkc2VjATE3MzIsNTY5NDYKK1xkZWZcc2Vjenp6ICMxe39zZWN6enoBMTczMyw1Njk4 NworXGdkZWZcdGhpc3NlY3Rpb257f3RoaXNzZWN0aW9uATE3MzUsNTcwNzkKK3tcY2hhcHRlcm5v Zm9udHMlf25vZm9udHMBMTczNiw1NzE0MworXGVkZWZcdGVtcHt/dGVtcAExNzM3LDU3MTYxCitc b3V0ZXJcZGVmXGFwcGVuZGl4c2VjdGlvbnt/YXBwZW5kaXhzZWN0aW9uATE3NDUsNTczMjkKK1xv dXRlclxkZWZcYXBwZW5kaXhzZWN0aW9ue1xwYXJzZWFyZ1xhcHBlbmRpeHNlY3Rpb256enp9f3Nl Y3Rpb256enoBMTc0NSw1NzMyOQorXG91dGVyXGRlZlxhcHBlbmRpeHNlY3t/YXBwZW5kaXhzZWMB MTc0Niw1NzM4NgorXG91dGVyXGRlZlxhcHBlbmRpeHNlY3tccGFyc2VhcmdcYXBwZW5kaXhzZWN0 aW9uenp6fX9zZWN0aW9uenp6ATE3NDYsNTczODYKK1xkZWZcYXBwZW5kaXhzZWN0aW9uenp6ICMx e39hcHBlbmRpeHNlY3Rpb256enoBMTc0Nyw1NzQzOQorXGdkZWZcdGhpc3NlY3Rpb257f3RoaXNz ZWN0aW9uATE3NDksNTc1NTEKIFxnZGVmXHRoaXNzZWN0aW9ueyMxfVxzZWNoZWFkaW5nIHsjMX17 XGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIBMTc0OSw1NzU1MQote1xjaGFwdGVybm9mb250cyV/bm9m b250cyUBMTc1MCw1NzYxOQore1xjaGFwdGVybm9mb250cyV/bm9mb250cwExNzUwLDU3NjE5Citc ZWRlZlx0ZW1we390ZW1wATE3NTEsNTc2MzcKIHsjMX17XGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIB MTc1Miw1NzY3NQogXGFwcGVuZGl4bm9kZXJlZiAlf25vZGVyZWYBMTc1NSw1Nzc3NQotXG91dGVy XGRlZlx1bm51bWJlcmVkc2Vje39cdW5udW1iZXJlZHNlYwExNzU5LDU3ODE1Ci1cZGVmXHVubnVt YmVyZWRzZWN6enogIzF7f1x1bm51bWJlcmVkc2Vjenp6ATE3NjAsNTc4NjgKLXtcY2hhcHRlcm5v Zm9udHMlf25vZm9udHMlATE3NjIsNTc5NjMKLVxvdXRlclxkZWZcbnVtYmVyZWRzdWJzZWN7f1xu dW1iZXJlZHN1YnNlYwExNzcwLDU4MTMxCi1cZGVmXG51bWJlcmVkc3Vic2Vjenp6ICMxe39cbnVt YmVyZWRzdWJzZWN6enoBMTc3MSw1ODE4Ngote1xjaGFwdGVybm9mb250cyV/bm9mb250cyUBMTc3 NCw1ODM2NQotXG91dGVyXGRlZlxhcHBlbmRpeHN1YnNlY3t/XGFwcGVuZGl4c3Vic2VjATE3ODMs NTg1NjkKLVxkZWZcYXBwZW5kaXhzdWJzZWN6enogIzF7f1xhcHBlbmRpeHN1YnNlY3p6egExNzg0 LDU4NjI0Citcb3V0ZXJcZGVmXHVubnVtYmVyZWRzZWN7f3VubnVtYmVyZWRzZWMBMTc1OSw1Nzgx NQorXGRlZlx1bm51bWJlcmVkc2Vjenp6ICMxe391bm51bWJlcmVkc2Vjenp6ATE3NjAsNTc4NjgK K1xwbGFpbnNlY2hlYWRpbmcgeyMxfVxnZGVmXHRoaXNzZWN0aW9ue390aGlzc2VjdGlvbgExNzYx LDU3OTE5Cit7XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzATE3NjIsNTc5NjMKK1xlZGVmXHRlbXB7 f3RlbXABMTc2Myw1Nzk4MQorXG91dGVyXGRlZlxudW1iZXJlZHN1YnNlY3t/bnVtYmVyZWRzdWJz ZWMBMTc3MCw1ODEzMQorXGRlZlxudW1iZXJlZHN1YnNlY3p6eiAjMXt/bnVtYmVyZWRzdWJzZWN6 enoBMTc3MSw1ODE4NgorXGdkZWZcdGhpc3NlY3Rpb257f3RoaXNzZWN0aW9uATE3NzIsNTgyMzUK K3tcY2hhcHRlcm5vZm9udHMlf25vZm9udHMBMTc3NCw1ODM2NQorXGVkZWZcdGVtcHt/dGVtcAEx Nzc1LDU4MzgzCitcb3V0ZXJcZGVmXGFwcGVuZGl4c3Vic2Vje39hcHBlbmRpeHN1YnNlYwExNzgz LDU4NTY5Citcb3V0ZXJcZGVmXGFwcGVuZGl4c3Vic2Vje1xwYXJzZWFyZ1xhcHBlbmRpeHN1YnNl Y3p6en1/c3Vic2Vjenp6ATE3ODMsNTg1NjkKK1xkZWZcYXBwZW5kaXhzdWJzZWN6enogIzF7f2Fw cGVuZGl4c3Vic2Vjenp6ATE3ODQsNTg2MjQKK1xnZGVmXHRoaXNzZWN0aW9ue390aGlzc2VjdGlv bgExNzg1LDU4Njc3CiBcc3Vic2VjaGVhZGluZyB7IzF9e1xhcHBlbmRpeGxldHRlcn1/bGV0dGVy ATE3ODYsNTg3NDYKLXtcY2hhcHRlcm5vZm9udHMlf25vZm9udHMlATE3ODcsNTg4MTEKK3tcY2hh cHRlcm5vZm9udHMlf25vZm9udHMBMTc4Nyw1ODgxMQorXGVkZWZcdGVtcHt/dGVtcAExNzg4LDU4 ODI5CiB7IzF9e1xhcHBlbmRpeGxldHRlcn1/bGV0dGVyATE3ODksNTg4NzAKIFxhcHBlbmRpeG5v ZGVyZWYgJX9ub2RlcmVmATE3OTIsNTg5ODUKLVxvdXRlclxkZWZcdW5udW1iZXJlZHN1YnNlY3t/ XHVubnVtYmVyZWRzdWJzZWMBMTc5Niw1OTAyNQotXGRlZlx1bm51bWJlcmVkc3Vic2Vjenp6ICMx e39cdW5udW1iZXJlZHN1YnNlY3p6egExNzk3LDU5MDg0Ci17XGNoYXB0ZXJub2ZvbnRzJX9ub2Zv bnRzJQExNzk5LDU5MTg1Ci1cb3V0ZXJcZGVmXG51bWJlcmVkc3Vic3Vic2Vje39cbnVtYmVyZWRz dWJzdWJzZWMBMTgwNyw1OTM1NgotXGRlZlxudW1iZXJlZHN1YnN1YnNlY3p6eiAjMXt/XG51bWJl cmVkc3Vic3Vic2Vjenp6ATE4MDgsNTk0MTcKLXtcY2hhcHRlcm5vZm9udHMlf25vZm9udHMlATE4 MTIsNTk2MTQKLVxvdXRlclxkZWZcYXBwZW5kaXhzdWJzdWJzZWN7f1xhcHBlbmRpeHN1YnN1YnNl YwExODIzLDU5ODQ3Ci1cZGVmXGFwcGVuZGl4c3Vic3Vic2Vjenp6ICMxe39cYXBwZW5kaXhzdWJz dWJzZWN6enoBMTgyNCw1OTkwOAorXG91dGVyXGRlZlx1bm51bWJlcmVkc3Vic2Vje391bm51bWJl cmVkc3Vic2VjATE3OTYsNTkwMjUKK1xkZWZcdW5udW1iZXJlZHN1YnNlY3p6eiAjMXt/dW5udW1i ZXJlZHN1YnNlY3p6egExNzk3LDU5MDg0CitccGxhaW5zZWNoZWFkaW5nIHsjMX1cZ2RlZlx0aGlz c2VjdGlvbnt/dGhpc3NlY3Rpb24BMTc5OCw1OTE0MQore1xjaGFwdGVybm9mb250cyV/bm9mb250 cwExNzk5LDU5MTg1CitcZWRlZlx0ZW1we390ZW1wATE4MDAsNTkyMDMKK1xvdXRlclxkZWZcbnVt YmVyZWRzdWJzdWJzZWN7f251bWJlcmVkc3Vic3Vic2VjATE4MDcsNTkzNTYKK1xkZWZcbnVtYmVy ZWRzdWJzdWJzZWN6enogIzF7f251bWJlcmVkc3Vic3Vic2Vjenp6ATE4MDgsNTk0MTcKK1xnZGVm XHRoaXNzZWN0aW9ue390aGlzc2VjdGlvbgExODA5LDU5NDcyCit7XGNoYXB0ZXJub2ZvbnRzJX9u b2ZvbnRzATE4MTIsNTk2MTQKK1xlZGVmXHRlbXB7f3RlbXABMTgxMyw1OTYzMgorXG91dGVyXGRl ZlxhcHBlbmRpeHN1YnN1YnNlY3t/YXBwZW5kaXhzdWJzdWJzZWMBMTgyMyw1OTg0NworXG91dGVy XGRlZlxhcHBlbmRpeHN1YnN1YnNlY3tccGFyc2VhcmdcYXBwZW5kaXhzdWJzdWJzZWN6enp9f3N1 YnN1YnNlY3p6egExODIzLDU5ODQ3CitcZGVmXGFwcGVuZGl4c3Vic3Vic2Vjenp6ICMxe39hcHBl bmRpeHN1YnN1YnNlY3p6egExODI0LDU5OTA4CitcZ2RlZlx0aGlzc2VjdGlvbnt/dGhpc3NlY3Rp b24BMTgyNSw1OTk2NwogICB7XGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIBMTgyNyw2MDA0Nwote1xj aGFwdGVybm9mb250cyV/bm9mb250cyUBMTgyOCw2MDExMwore1xjaGFwdGVybm9mb250cyV/bm9m b250cwExODI4LDYwMTEzCitcZWRlZlx0ZW1we390ZW1wATE4MjksNjAxMzEKICAge1xhcHBlbmRp eGxldHRlcn1/bGV0dGVyATE4MzAsNjAxNzgKIFxhcHBlbmRpeG5vZGVyZWYgJX9ub2RlcmVmATE4 MzQsNjAzMTIKLVxvdXRlclxkZWZcdW5udW1iZXJlZHN1YnN1YnNlY3t/XHVubnVtYmVyZWRzdWJz dWJzZWMBMTgzOCw2MDM1MgotXGRlZlx1bm51bWJlcmVkc3Vic3Vic2Vjenp6ICMxe39cdW5udW1i ZXJlZHN1YnN1YnNlY3p6egExODM5LDYwNDE3Ci17XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzJQEx ODQxLDYwNTI0Ci1cZGVmXGluZm90b3B7f1xpbmZvdG9wATE4NTEsNjA4NTMKLVxkZWZcaW5mb3Vu bnVtYmVyZWR7f1xpbmZvdW5udW1iZXJlZAExODUyLDYwODkxCi1cZGVmXGluZm91bm51bWJlcmVk c2Vje39caW5mb3VubnVtYmVyZWRzZWMBMTg1Myw2MDkzNgotXGRlZlxpbmZvdW5udW1iZXJlZHN1 YnNlY3t/XGluZm91bm51bWJlcmVkc3Vic2VjATE4NTQsNjA5ODcKLVxkZWZcaW5mb3VubnVtYmVy ZWRzdWJzdWJzZWN7f1xpbmZvdW5udW1iZXJlZHN1YnN1YnNlYwExODU1LDYxMDQ0Ci1cZGVmXGlu Zm9hcHBlbmRpeHt/XGluZm9hcHBlbmRpeAExODU3LDYxMTA4Ci1cZGVmXGluZm9hcHBlbmRpeHNl Y3t/XGluZm9hcHBlbmRpeHNlYwExODU4LDYxMTQ5Ci1cZGVmXGluZm9hcHBlbmRpeHN1YnNlY3t/ XGluZm9hcHBlbmRpeHN1YnNlYwExODU5LDYxMTk2Ci1cZGVmXGluZm9hcHBlbmRpeHN1YnN1YnNl Y3t/XGluZm9hcHBlbmRpeHN1YnN1YnNlYwExODYwLDYxMjQ5Ci1cZGVmXGluZm9jaGFwdGVye39c aW5mb2NoYXB0ZXIBMTg2Miw2MTMwOQotXGRlZlxpbmZvc2VjdGlvbnt/XGluZm9zZWN0aW9uATE4 NjMsNjEzNDgKLVxkZWZcaW5mb3N1YnNlY3Rpb257f1xpbmZvc3Vic2VjdGlvbgExODY0LDYxMzg3 Ci1cZGVmXGluZm9zdWJzdWJzZWN0aW9ue39caW5mb3N1YnN1YnNlY3Rpb24BMTg2NSw2MTQzMgot XGdsb2JhbFxsZXRcc2VjdGlvbiA9IFxudW1iZXJlZHNlY389ATE4NzAsNjE2NjkKLVxnbG9iYWxc bGV0XHN1YnNlY3Rpb24gPSBcbnVtYmVyZWRzdWJzZWN/PQExODcxLDYxNzA0Ci1cZ2xvYmFsXGxl dFxzdWJzdWJzZWN0aW9uID0gXG51bWJlcmVkc3Vic3Vic2Vjfz0BMTg3Miw2MTc0NQotXGRlZlxt YWpvcmhlYWRpbmd7f1xtYWpvcmhlYWRpbmcBMTg4Niw2MjI1MgotXGRlZlxtYWpvcmhlYWRpbmd6 enogIzF7f1xtYWpvcmhlYWRpbmd6enoBMTg4Nyw2MjI5NwotXGRlZlxjaGFwaGVhZGluZ3t/XGNo YXBoZWFkaW5nATE4OTMsNjI1MzAKLVxkZWZcY2hhcGhlYWRpbmd6enogIzF7f1xjaGFwaGVhZGlu Z3p6egExODk0LDYyNTczCi1cZGVmXGhlYWRpbmd7f1xoZWFkaW5nATE4OTksNjI3NjgKLVxkZWZc c3ViaGVhZGluZ3t/XHN1YmhlYWRpbmcBMTkwMSw2MjgwNQotXGRlZlxzdWJzdWJoZWFkaW5ne39c c3Vic3ViaGVhZGluZwExOTAzLDYyODQ4Ci1cZGVmXGRvYnJlYWsjMSMye39cZG9icmVhawExOTEw LDYzMTI1Ci1cZGVmXHNldGNoYXB0ZXJzdHlsZSAjMSB7f1xzZXRjaGFwdGVyc3R5bGUBMTkxMiw2 MzIwMwotXGRlZlxjaGFwYnJlYWt7f1xjaGFwYnJlYWsBMTkxOSw2MzQ1OAotXGRlZlxjaGFwcGFn ZXJ7f1xjaGFwcGFnZXIBMTkyMCw2MzUwOAotXGRlZlxjaGFwb2RkcGFnZXt/XGNoYXBvZGRwYWdl ATE5MjEsNjM1NDYKLVxkZWZcc2V0Y2hhcHRlcm5ld3BhZ2UgIzEge39cc2V0Y2hhcHRlcm5ld3Bh Z2UBMTkyMyw2MzYyNQotXGRlZlxDSEFQUEFHb2Zme39cQ0hBUFBBR29mZgExOTI1LDYzNjgyCi1c ZGVmXENIQVBQQUdvbnt/XENIQVBQQUdvbgExOTI5LDYzNzc2Ci1cZ2xvYmFsXGRlZlxIRUFESU5H U29ue39cSEVBRElOR1NvbgExOTMyLDYzODY3Ci1cZGVmXENIQVBQQUdvZGR7f1xDSEFQUEFHb2Rk ATE5MzQsNjM5MDkKLVxnbG9iYWxcZGVmXEhFQURJTkdTb257f1xIRUFESU5HU29uATE5MzcsNjQw MDUKLVxkZWZcQ0hBUEZwbGFpbnt/XENIQVBGcGxhaW4BMTk0MSw2NDA1OQotXGRlZlxjaGZwbGFp biAjMSMye39cY2hmcGxhaW4BMTk0NSw2NDE1MQotXGRlZlx1bm5jaGZwbGFpbiAjMXt/XHVubmNo ZnBsYWluATE5NTYsNjQzNzQKLVxkZWZcdW5uY2hmb3BlbiAjMXt/XHVubmNoZm9wZW4BMTk2NCw2 NDYwMwotXGRlZlxjaGZvcGVuICMxIzJ7f1xjaGZvcGVuATE5NzAsNjQ4MTEKLVxkZWZcQ0hBUEZv cGVue39cQ0hBUEZvcGVuATE5NzUsNjQ5NTUKLVxkZWZcc3Vic2VjaGVhZGluZ2JyZWFre39cc3Vi c2VjaGVhZGluZ2JyZWFrATE5ODIsNjUxNzMKLVxkZWZcc2VjaGVhZGluZ2JyZWFre39cc2VjaGVh ZGluZ2JyZWFrATE5ODUsNjUzMDIKLVxkZWZcc2VjaGVhZGluZyAjMSMyIzN7f1xzZWNoZWFkaW5n ATE5OTMsNjU1ODQKLVxkZWZccGxhaW5zZWNoZWFkaW5nICMxe39ccGxhaW5zZWNoZWFkaW5nATE5 OTQsNjU2NDAKLVxkZWZcc2VjaGVhZGluZ2kgIzF7f1xzZWNoZWFkaW5naQExOTk1LDY1NjgzCi1c ZGVmXHN1YnNlY2hlYWRpbmcgIzEjMiMzIzR7f1xzdWJzZWNoZWFkaW5nATIwMDYsNjYwNTEKLVxk ZWZcc3Vic2VjaGVhZGluZ2kgIzF7f1xzdWJzZWNoZWFkaW5naQEyMDA3LDY2MTE4Ci1cZGVmXHN1 YnN1YnNlY2ZvbnRze39cc3Vic3Vic2VjZm9udHMBMjAxNCw2NjQxNQotXGRlZlxzdWJzdWJzZWNo ZWFkaW5nICMxIzIjMyM0IzV7f1xzdWJzdWJzZWNoZWFkaW5nATIwMTcsNjY1MzgKLVxkZWZcc3Vi c3Vic2VjaGVhZGluZ2kgIzF7f1xzdWJzdWJzZWNoZWFkaW5naQEyMDE4LDY2NjE2Ci1cZGVmXHN0 YXJ0Y29udGVudHMjMXt/XHN0YXJ0Y29udGVudHMBMjAzMiw2NzA4OAotICAgXHVubnVtYmNoYXBt YWNyb3sjMX1cZGVmXHRoaXNjaGFwdGVye39cdGhpc2NoYXB0ZXIBMjA0MCw2NzM2MQotXG91dGVy XGRlZlxjb250ZW50c3t/XGNvbnRlbnRzATIwNDksNjc3MjAKLVxvdXRlclxkZWZcc3VtbWFyeWNv bnRlbnRze39cc3VtbWFyeWNvbnRlbnRzATIwNTcsNjc4NjQKLSAgICAgIFxkZWZcc2VjZW50cnkg IyMxIyMyIyMzIyM0e39cc2VjZW50cnkBMjA2Nyw2ODIzNQotICAgICAgXGRlZlx1bm51bWJzZWNl bnRyeSAjIzEjIzJ7f1x1bm51bWJzZWNlbnRyeQEyMDY4LDY4MjcwCi0gICAgICBcZGVmXHN1YnNl Y2VudHJ5ICMjMSMjMiMjMyMjNCMjNXt/XHN1YnNlY2VudHJ5ATIwNjksNjgzMDUKLSAgICAgIFxk ZWZcdW5udW1ic3Vic2VjZW50cnkgIyMxIyMye39cdW5udW1ic3Vic2VjZW50cnkBMjA3MCw2ODM0 NgotICAgICAgXGRlZlxzdWJzdWJzZWNlbnRyeSAjIzEjIzIjIzMjIzQjIzUjIzZ7f1xzdWJzdWJz ZWNlbnRyeQEyMDcxLDY4Mzg0Ci0gICAgICBcZGVmXHVubnVtYnN1YnN1YnNlY2VudHJ5ICMjMSMj Mnt/XHVubnVtYnN1YnN1YnNlY2VudHJ5ATIwNzIsNjg0MzEKLVxkZWZcY2hhcGVudHJ5IzEjMiMz e39cY2hhcGVudHJ5ATIwODUsNjg4NjUKLVxkZWZcc2hvcnRjaGFwZW50cnkjMSMyIzN7f1xzaG9y dGNoYXBlbnRyeQEyMDg4LDY4OTgyCitcb3V0ZXJcZGVmXHVubnVtYmVyZWRzdWJzdWJzZWN7f3Vu bnVtYmVyZWRzdWJzdWJzZWMBMTgzOCw2MDM1MgorXGRlZlx1bm51bWJlcmVkc3Vic3Vic2Vjenp6 ICMxe391bm51bWJlcmVkc3Vic3Vic2Vjenp6ATE4MzksNjA0MTcKK1xwbGFpbnNlY2hlYWRpbmcg eyMxfVxnZGVmXHRoaXNzZWN0aW9ue390aGlzc2VjdGlvbgExODQwLDYwNDgwCit7XGNoYXB0ZXJu b2ZvbnRzJX9ub2ZvbnRzATE4NDEsNjA1MjQKK1xlZGVmXHRlbXB7f3RlbXABMTg0Miw2MDU0Mgor XGRlZlxpbmZvdG9we39pbmZvdG9wATE4NTEsNjA4NTMKK1xkZWZcaW5mb3VubnVtYmVyZWR7f2lu Zm91bm51bWJlcmVkATE4NTIsNjA4OTEKK1xkZWZcaW5mb3VubnVtYmVyZWRzZWN7f2luZm91bm51 bWJlcmVkc2VjATE4NTMsNjA5MzYKK1xkZWZcaW5mb3VubnVtYmVyZWRzdWJzZWN7f2luZm91bm51 bWJlcmVkc3Vic2VjATE4NTQsNjA5ODcKK1xkZWZcaW5mb3VubnVtYmVyZWRzdWJzdWJzZWN7f2lu Zm91bm51bWJlcmVkc3Vic3Vic2VjATE4NTUsNjEwNDQKK1xkZWZcaW5mb2FwcGVuZGl4e39pbmZv YXBwZW5kaXgBMTg1Nyw2MTEwOAorXGRlZlxpbmZvYXBwZW5kaXh7XHBhcnNlYXJnXGFwcGVuZGl4 enp6fX96enoBMTg1Nyw2MTEwOAorXGRlZlxpbmZvYXBwZW5kaXhzZWN7f2luZm9hcHBlbmRpeHNl YwExODU4LDYxMTQ5CitcZGVmXGluZm9hcHBlbmRpeHNlY3tccGFyc2VhcmdcYXBwZW5kaXhzZWN6 enp9f3NlY3p6egExODU4LDYxMTQ5CitcZGVmXGluZm9hcHBlbmRpeHN1YnNlY3t/aW5mb2FwcGVu ZGl4c3Vic2VjATE4NTksNjExOTYKK1xkZWZcaW5mb2FwcGVuZGl4c3Vic2Vje1xwYXJzZWFyZ1xh cHBlbmRpeHN1YnNlY3p6en1/c3Vic2Vjenp6ATE4NTksNjExOTYKK1xkZWZcaW5mb2FwcGVuZGl4 c3Vic3Vic2Vje39pbmZvYXBwZW5kaXhzdWJzdWJzZWMBMTg2MCw2MTI0OQorXGRlZlxpbmZvYXBw ZW5kaXhzdWJzdWJzZWN7XHBhcnNlYXJnXGFwcGVuZGl4c3Vic3Vic2Vjenp6fX9zdWJzdWJzZWN6 enoBMTg2MCw2MTI0OQorXGRlZlxpbmZvY2hhcHRlcnt/aW5mb2NoYXB0ZXIBMTg2Miw2MTMwOQor XGRlZlxpbmZvY2hhcHRlcntccGFyc2VhcmdcY2hhcHRlcnp6en1/enp6ATE4NjIsNjEzMDkKK1xk ZWZcaW5mb3NlY3Rpb257f2luZm9zZWN0aW9uATE4NjMsNjEzNDgKK1xkZWZcaW5mb3NlY3Rpb257 XHBhcnNlYXJnXHNlY3Rpb256enp9f3p6egExODYzLDYxMzQ4CitcZGVmXGluZm9zdWJzZWN0aW9u e39pbmZvc3Vic2VjdGlvbgExODY0LDYxMzg3CitcZGVmXGluZm9zdWJzZWN0aW9ue1xwYXJzZWFy Z1xzdWJzZWN0aW9uenp6fX96enoBMTg2NCw2MTM4NworXGRlZlxpbmZvc3Vic3Vic2VjdGlvbnt/ aW5mb3N1YnN1YnNlY3Rpb24BMTg2NSw2MTQzMgorXGRlZlxpbmZvc3Vic3Vic2VjdGlvbntccGFy c2Vhcmdcc3Vic3Vic2VjdGlvbnp6en1/enp6ATE4NjUsNjE0MzIKK1xnbG9iYWxcbGV0XHNlY3Rp b24gPSBcbnVtYmVyZWRzZWN/c2VjdGlvbgExODcwLDYxNjY5CitcZ2xvYmFsXGxldFxzdWJzZWN0 aW9uID0gXG51bWJlcmVkc3Vic2Vjf3N1YnNlY3Rpb24BMTg3MSw2MTcwNAorXGdsb2JhbFxsZXRc c3Vic3Vic2VjdGlvbiA9IFxudW1iZXJlZHN1YnN1YnNlY39zdWJzdWJzZWN0aW9uATE4NzIsNjE3 NDUKK1xkZWZcbWFqb3JoZWFkaW5ne39tYWpvcmhlYWRpbmcBMTg4Niw2MjI1MgorXGRlZlxtYWpv cmhlYWRpbmd6enogIzF7f21ham9yaGVhZGluZ3p6egExODg3LDYyMjk3CitcZGVmXGNoYXBoZWFk aW5ne39jaGFwaGVhZGluZwExODkzLDYyNTMwCitcZGVmXGNoYXBoZWFkaW5nenp6ICMxe39jaGFw aGVhZGluZ3p6egExODk0LDYyNTczCitcZGVmXGhlYWRpbmd7f2hlYWRpbmcBMTg5OSw2Mjc2OAor XGRlZlxzdWJoZWFkaW5ne39zdWJoZWFkaW5nATE5MDEsNjI4MDUKK1xkZWZcc3Vic3ViaGVhZGlu Z3t/c3Vic3ViaGVhZGluZwExOTAzLDYyODQ4CitcZGVmXGRvYnJlYWsjMSMye39kb2JyZWFrATE5 MTAsNjMxMjUKK1xkZWZcc2V0Y2hhcHRlcnN0eWxlICMxIHt/c2V0Y2hhcHRlcnN0eWxlATE5MTIs NjMyMDMKK1xkZWZcY2hhcGJyZWFre39jaGFwYnJlYWsBMTkxOSw2MzQ1OAorXGRlZlxjaGFwcGFn ZXJ7f2NoYXBwYWdlcgExOTIwLDYzNTA4CitcZGVmXGNoYXBvZGRwYWdle39jaGFwb2RkcGFnZQEx OTIxLDYzNTQ2CitcZGVmXHNldGNoYXB0ZXJuZXdwYWdlICMxIHt/c2V0Y2hhcHRlcm5ld3BhZ2UB MTkyMyw2MzYyNQorXGRlZlxDSEFQUEFHb2Zme39DSEFQUEFHb2ZmATE5MjUsNjM2ODIKK1xnbG9i YWxcbGV0XHBjaGFwc2VwbWFjcm89XGNoYXBicmVha39wY2hhcHNlcG1hY3JvATE5MjYsNjM2OTkK K1xnbG9iYWxcbGV0XHBhZ2VhbGlnbm1hY3JvPVxjaGFwcGFnZXJ9f3BhZ2VhbGlnbm1hY3JvATE5 MjcsNjM3MzYKK1xkZWZcQ0hBUFBBR29ue39DSEFQUEFHb24BMTkyOSw2Mzc3NgorXGdsb2JhbFxs ZXRccGNoYXBzZXBtYWNybz1cY2hhcHBhZ2Vyf3BjaGFwc2VwbWFjcm8BMTkzMCw2Mzc5MgorXGds b2JhbFxsZXRccGFnZWFsaWdubWFjcm89XGNoYXBwYWdlcn9wYWdlYWxpZ25tYWNybwExOTMxLDYz ODI5CitcZ2xvYmFsXGRlZlxIRUFESU5HU29ue39IRUFESU5HU29uATE5MzIsNjM4NjcKK1xkZWZc Q0hBUFBBR29kZHt/Q0hBUFBBR29kZAExOTM0LDYzOTA5CitcZ2xvYmFsXGxldFxwY2hhcHNlcG1h Y3JvPVxjaGFwb2RkcGFnZX9wY2hhcHNlcG1hY3JvATE5MzUsNjM5MjYKK1xnbG9iYWxcbGV0XHBh Z2VhbGlnbm1hY3JvPVxjaGFwb2RkcGFnZX9wYWdlYWxpZ25tYWNybwExOTM2LDYzOTY1CitcZ2xv YmFsXGRlZlxIRUFESU5HU29ue39IRUFESU5HU29uATE5MzcsNjQwMDUKK1xkZWZcQ0hBUEZwbGFp bnt/Q0hBUEZwbGFpbgExOTQxLDY0MDU5CitcZ2xvYmFsXGxldFxjaGFwbWFjcm89XGNoZnBsYWlu f2NoYXBtYWNybwExOTQyLDY0MDc2CitcZ2xvYmFsXGxldFx1bm51bWJjaGFwbWFjcm89XHVubmNo ZnBsYWlufX91bm51bWJjaGFwbWFjcm8BMTk0Myw2NDEwOAorXGRlZlxjaGZwbGFpbiAjMSMye39j aGZwbGFpbgExOTQ1LDY0MTUxCitcZGVmXHVubmNoZnBsYWluICMxe391bm5jaGZwbGFpbgExOTU2 LDY0Mzc0CitcZGVmXHVubmNoZm9wZW4gIzF7f3VubmNoZm9wZW4BMTk2NCw2NDYwMworXGRlZlxj aGZvcGVuICMxIzJ7f2NoZm9wZW4BMTk3MCw2NDgxMQorXGRlZlxDSEFQRm9wZW57f0NIQVBGb3Bl bgExOTc1LDY0OTU1CitcZ2xvYmFsXGxldFxjaGFwbWFjcm89XGNoZm9wZW5/Y2hhcG1hY3JvATE5 NzYsNjQ5NzEKK1xnbG9iYWxcbGV0XHVubnVtYmNoYXBtYWNybz1cdW5uY2hmb3Blbn1/dW5udW1i Y2hhcG1hY3JvATE5NzcsNjUwMDIKK1xkZWZcc3Vic2VjaGVhZGluZ2JyZWFre39zdWJzZWNoZWFk aW5nYnJlYWsBMTk4Miw2NTE3MworXGRlZlxzZWNoZWFkaW5nYnJlYWt7f3NlY2hlYWRpbmdicmVh awExOTg1LDY1MzAyCitcbGV0XHBhcmFncmFwaGluZGVudD1cY29tbWVudH9wYXJhZ3JhcGhpbmRl bnQBMTk4OCw2NTQyOAorXGRlZlxzZWNoZWFkaW5nICMxIzIjM3t/c2VjaGVhZGluZwExOTkzLDY1 NTg0CitcZGVmXHBsYWluc2VjaGVhZGluZyAjMXt/cGxhaW5zZWNoZWFkaW5nATE5OTQsNjU2NDAK K1xkZWZcc2VjaGVhZGluZ2kgIzF7f3NlY2hlYWRpbmdpATE5OTUsNjU2ODMKK1xkZWZcc3Vic2Vj aGVhZGluZyAjMSMyIzMjNHt/c3Vic2VjaGVhZGluZwEyMDA2LDY2MDUxCitcZGVmXHN1YnNlY2hl YWRpbmdpICMxe39zdWJzZWNoZWFkaW5naQEyMDA3LDY2MTE4CitcZGVmXHN1YnN1YnNlY2ZvbnRz e39zdWJzdWJzZWNmb250cwEyMDE0LDY2NDE1CitcZGVmXHN1YnN1YnNlY2hlYWRpbmcgIzEjMiMz IzQjNXt/c3Vic3Vic2VjaGVhZGluZwEyMDE3LDY2NTM4CitcZGVmXHN1YnN1YnNlY2hlYWRpbmdp ICMxe39zdWJzdWJzZWNoZWFkaW5naQEyMDE4LDY2NjE2CitcZGVmXHN0YXJ0Y29udGVudHMjMXt/ c3RhcnRjb250ZW50cwEyMDMyLDY3MDg4CisgICBcdW5udW1iY2hhcG1hY3JveyMxfVxkZWZcdGhp c2NoYXB0ZXJ7f3RoaXNjaGFwdGVyATIwNDAsNjczNjEKK1xvdXRlclxkZWZcY29udGVudHN7f2Nv bnRlbnRzATIwNDksNjc3MjAKK1xvdXRlclxkZWZcc3VtbWFyeWNvbnRlbnRze39zdW1tYXJ5Y29u dGVudHMBMjA1Nyw2Nzg2NAorICAgICAgXGxldFxjaGFwZW50cnkgPSBcc2hvcnRjaGFwZW50cnl/ Y2hhcGVudHJ5ATIwNjAsNjc5MzYKKyAgICAgIFxsZXRcdW5udW1iY2hhcGVudHJ5ID0gXHNob3J0 dW5udW1iZXJlZGVudHJ5f3VubnVtYmNoYXBlbnRyeQEyMDYxLDY3OTc1CisgICAgICBcbGV0XHJt PVxzaG9ydGNvbnRybSBcbGV0XGJmPVxzaG9ydGNvbnRiZiBcbGV0XHNsPVxzaG9ydGNvbnRzbH9y bQEyMDY0LDY4MDk4CisgICAgICBcbGV0XHJtPVxzaG9ydGNvbnRybSBcbGV0XGJmPVxzaG9ydGNv bnRiZiBcbGV0XHNsPVxzaG9ydGNvbnRzbH9iZgEyMDY0LDY4MDk4CisgICAgICBcbGV0XHJtPVxz aG9ydGNvbnRybSBcbGV0XGJmPVxzaG9ydGNvbnRiZiBcbGV0XHNsPVxzaG9ydGNvbnRzbH9zbAEy MDY0LDY4MDk4CisgICAgICBcZGVmXHNlY2VudHJ5ICMjMSMjMiMjMyMjNHt/c2VjZW50cnkBMjA2 Nyw2ODIzNQorICAgICAgXGRlZlx1bm51bWJzZWNlbnRyeSAjIzEjIzJ7f3VubnVtYnNlY2VudHJ5 ATIwNjgsNjgyNzAKKyAgICAgIFxkZWZcc3Vic2VjZW50cnkgIyMxIyMyIyMzIyM0IyM1e39zdWJz ZWNlbnRyeQEyMDY5LDY4MzA1CisgICAgICBcZGVmXHVubnVtYnN1YnNlY2VudHJ5ICMjMSMjMnt/ dW5udW1ic3Vic2VjZW50cnkBMjA3MCw2ODM0NgorICAgICAgXGRlZlxzdWJzdWJzZWNlbnRyeSAj IzEjIzIjIzMjIzQjIzUjIzZ7f3N1YnN1YnNlY2VudHJ5ATIwNzEsNjgzODQKKyAgICAgIFxkZWZc dW5udW1ic3Vic3Vic2VjZW50cnkgIyMxIyMye391bm51bWJzdWJzdWJzZWNlbnRyeQEyMDcyLDY4 NDMxCitcbGV0XHNob3J0Y29udGVudHMgPSBcc3VtbWFyeWNvbnRlbnRzf3Nob3J0Y29udGVudHMB MjA3Nyw2ODUzMAorXGRlZlxjaGFwZW50cnkjMSMyIzN7f2NoYXBlbnRyeQEyMDg1LDY4ODY1Citc ZGVmXGNoYXBlbnRyeSMxIzIjM3tcZG9jaGFwZW50cnl7IzJcbGFiZWxzcGFjZSMxfX9zcGFjZQEy MDg1LDY4ODY1CitcZGVmXHNob3J0Y2hhcGVudHJ5IzEjMiMze39zaG9ydGNoYXBlbnRyeQEyMDg4 LDY4OTgyCiAgICAgeyMyXGxhYmVsc3BhY2UgIzF9f3NwYWNlATIwOTEsNjkwOTIKLVxkZWZcdW5u dW1iY2hhcGVudHJ5IzEjMnt/XHVubnVtYmNoYXBlbnRyeQEyMDk0LDY5MTQ2Ci1cZGVmXHNob3J0 dW5udW1iZXJlZGVudHJ5IzEjMnt/XHNob3J0dW5udW1iZXJlZGVudHJ5ATIwOTUsNjkxOTMKLVxk ZWZcc2VjZW50cnkjMSMyIzMjNHt/XHNlY2VudHJ5ATIxMDIsNjkzNTcKLVxkZWZcdW5udW1ic2Vj ZW50cnkjMSMye39cdW5udW1ic2VjZW50cnkBMjEwMyw2OTQxNgotXGRlZlxzdWJzZWNlbnRyeSMx IzIjMyM0IzV7f1xzdWJzZWNlbnRyeQEyMTA2LDY5NDc3Ci1cZGVmXHVubnVtYnN1YnNlY2VudHJ5 IzEjMnt/XHVubnVtYnN1YnNlY2VudHJ5ATIxMDcsNjk1NDcKLVxkZWZcc3Vic3Vic2VjZW50cnkj MSMyIzMjNCM1IzZ7f1xzdWJzdWJzZWNlbnRyeQEyMTEwLDY5NjIxCitcZGVmXHVubnVtYmNoYXBl bnRyeSMxIzJ7f3VubnVtYmNoYXBlbnRyeQEyMDk0LDY5MTQ2CitcZGVmXHNob3J0dW5udW1iZXJl ZGVudHJ5IzEjMnt/c2hvcnR1bm51bWJlcmVkZW50cnkBMjA5NSw2OTE5MworXGRlZlxzZWNlbnRy eSMxIzIjMyM0e39zZWNlbnRyeQEyMTAyLDY5MzU3CitcZGVmXHNlY2VudHJ5IzEjMiMzIzR7XGRv c2VjZW50cnl7IzIuIzNcbGFiZWxzcGFjZSMxfX9zcGFjZQEyMTAyLDY5MzU3CitcZGVmXHVubnVt YnNlY2VudHJ5IzEjMnt/dW5udW1ic2VjZW50cnkBMjEwMyw2OTQxNgorXGRlZlxzdWJzZWNlbnRy eSMxIzIjMyM0IzV7f3N1YnNlY2VudHJ5ATIxMDYsNjk0NzcKK1xkZWZcc3Vic2VjZW50cnkjMSMy IzMjNCM1e1xkb3N1YnNlY2VudHJ5eyMyLiMzLiM0XGxhYmVsc3BhY2UjMX1/c3BhY2UBMjEwNiw2 OTQ3NworXGRlZlx1bm51bWJzdWJzZWNlbnRyeSMxIzJ7f3VubnVtYnN1YnNlY2VudHJ5ATIxMDcs Njk1NDcKK1xkZWZcc3Vic3Vic2VjZW50cnkjMSMyIzMjNCM1IzZ7f3N1YnN1YnNlY2VudHJ5ATIx MTAsNjk2MjEKICAgXGRvc3Vic3Vic2VjZW50cnl7IzIuIzMuIzQuIzVcbGFiZWxzcGFjZSMxfX9z cGFjZQEyMTExLDY5NjU1Ci1cZGVmXHVubnVtYnN1YnN1YnNlY2VudHJ5IzEjMnt/XHVubnVtYnN1 YnN1YnNlY2VudHJ5ATIxMTIsNjk3MDYKLVxkZWZcZG9jaGFwZW50cnkjMSMye39cZG9jaGFwZW50 cnkBMjEyMyw3MDA4MAotXGRlZlxkb3NlY2VudHJ5IzEjMnt/XGRvc2VjZW50cnkBMjEzOCw3MDY4 NQotXGRlZlxkb3N1YnNlY2VudHJ5IzEjMnt/XGRvc3Vic2VjZW50cnkBMjE0NSw3MDg2MwotXGRl Zlxkb3N1YnN1YnNlY2VudHJ5IzEjMnt/XGRvc3Vic3Vic2VjZW50cnkBMjE1Miw3MTA0OAotXGRl ZlxsYWJlbHNwYWNle39cbGFiZWxzcGFjZQEyMTYwLDcxMjk5Ci1cZGVmXGRvcGFnZW5vIzF7f1xk b3BhZ2VubwEyMTYyLDcxMzM0Ci1cZGVmXGRvc2hvcnRwYWdlbm8jMXt/XGRvc2hvcnRwYWdlbm8B MjE2Myw3MTM2MAotXGRlZlxjaGFwZW50cnlmb250c3t/XGNoYXBlbnRyeWZvbnRzATIxNjUsNzEz OTIKLVxkZWZcc2VjZW50cnlmb250c3t/XHNlY2VudHJ5Zm9udHMBMjE2Niw3MTQyNwotXGRlZlxw b2ludHt/XHBvaW50ATIxOTIsNzIzODYKLVxkZWZccmVzdWx0e39ccmVzdWx0ATIxOTQsNzI0MDcK LVxkZWZcZXhwYW5zaW9ue39cZXhwYW5zaW9uATIxOTUsNzI0ODAKLVxkZWZccHJpbnR7f1xwcmlu dAEyMTk2LDcyNTUxCi1cZGVmXGVxdWl2e39cZXF1aXYBMjE5OCw3MjYxOAotXGRlZlxlcnJvcnt/ XGVycm9yATIyMTgsNzMzOTEKLVxkZWZcdGV4e39cdGV4ATIyMjQsNzM2MjAKLVxkZWZcQHt/XEAB MjI0Miw3NDAwMwotXGdkZWZcc2Vwc3BhY2Vze1xkZWYge1wgfX19f1wBMjI2NSw3NDczNQotXGRl ZlxhYm92ZWVudmJyZWFre39cYWJvdmVlbnZicmVhawEyMjY4LDc0ODE3Ci1cZGVmXGFmdGVyZW52 YnJlYWt7f1xhZnRlcmVudmJyZWFrATIyNzIsNzQ5ODMKLVxkZWZcY3Rse39cY3RsATIyODYsNzU0 OTQKLVxkZWZcY3Rye39cY3RyATIyODcsNzU1NjYKLVxkZWZcY2Jse39cY2JsATIyODgsNzU2MDUK LVxkZWZcY2Jye39cY2JyATIyODksNzU2NDUKLVxkZWZcY2FydHRvcHt/XGNhcnR0b3ABMjI5MCw3 NTY4NAotXGRlZlxjYXJ0Ym90e39cY2FydGJvdAEyMjkzLDc1NzkyCi1cbG9uZ1xkZWZcY2FydG91 Y2hle39cY2FydG91Y2hlATIyOTksNzU5MzIKLVxkZWZcRWNhcnRvdWNoZXt/XEVjYXJ0b3VjaGUB MjMyNiw3NjcyMAotXGRlZlxsaXNwe39cbGlzcAEyMzM4LDc2ODU1Ci1cZGVmXEVsaXNwe39cRWxp c3ABMjM0OCw3NzIwMgotXGRlZlxuZXh0IyMxe39cbmV4dAEyMzYwLDc3NTI4Ci1cZGVmXEVleGFt cGxle39cRWV4YW1wbGUBMjM2NCw3NzU3MAotXGRlZlxFc21hbGxleGFtcGxle39cRXNtYWxsZXhh bXBsZQEyMzY3LDc3NjE3Ci1cZGVmXHNtYWxsbGlzcHh7f1xzbWFsbGxpc3B4ATIzNzMsNzc3OTUK LVxkZWZcRXNtYWxsbGlzcHt/XEVzbWFsbGxpc3ABMjM4Myw3ODE0OQorXGRlZlx1bm51bWJzdWJz dWJzZWNlbnRyeSMxIzJ7f3VubnVtYnN1YnN1YnNlY2VudHJ5ATIxMTIsNjk3MDYKK1xkZWZcZG9j aGFwZW50cnkjMSMye39kb2NoYXBlbnRyeQEyMTIzLDcwMDgwCitcZGVmXGRvc2VjZW50cnkjMSMy e39kb3NlY2VudHJ5ATIxMzgsNzA2ODUKK1xkZWZcZG9zdWJzZWNlbnRyeSMxIzJ7f2Rvc3Vic2Vj ZW50cnkBMjE0NSw3MDg2MworXGRlZlxkb3N1YnN1YnNlY2VudHJ5IzEjMnt/ZG9zdWJzdWJzZWNl bnRyeQEyMTUyLDcxMDQ4CitcZGVmXGxhYmVsc3BhY2V7f2xhYmVsc3BhY2UBMjE2MCw3MTI5OQor XGRlZlxkb3BhZ2VubyMxe39kb3BhZ2VubwEyMTYyLDcxMzM0CitcZGVmXGRvc2hvcnRwYWdlbm8j MXt/ZG9zaG9ydHBhZ2VubwEyMTYzLDcxMzYwCitcZGVmXGNoYXBlbnRyeWZvbnRze39jaGFwZW50 cnlmb250cwEyMTY1LDcxMzkyCitcZGVmXHNlY2VudHJ5Zm9udHN7f3NlY2VudHJ5Zm9udHMBMjE2 Niw3MTQyNworXGxldFxzdWJzZWNlbnRyeWZvbnRzID0gXHRleHRmb250c39zdWJzZWNlbnRyeWZv bnRzATIxNjcsNzE0NTgKK1xsZXRcc3Vic3Vic2VjZW50cnlmb250cyA9IFx0ZXh0Zm9udHN/c3Vi c3Vic2VjZW50cnlmb250cwEyMTY4LDcxNDkzCitcbGV0XHB0ZXhlcXVpdiA9IFxlcXVpdn9wdGV4 ZXF1aXYBMjE4MCw3MTg5NgorXGRlZlxwb2ludHt/cG9pbnQBMjE5Miw3MjM4NgorXGRlZlxyZXN1 bHR7f3Jlc3VsdAEyMTk0LDcyNDA3CitcZGVmXGV4cGFuc2lvbnt/ZXhwYW5zaW9uATIxOTUsNzI0 ODAKK1xkZWZccHJpbnR7f3ByaW50ATIxOTYsNzI1NTEKK1xkZWZcZXF1aXZ7f2VxdWl2ATIxOTgs NzI2MTgKK1xkZWZcZXJyb3J7f2Vycm9yATIyMTgsNzMzOTEKK1xkZWZcdGV4e390ZXgBMjIyNCw3 MzYyMAorXGNhdGNvZGUgYFxePTcgXGNhdGNvZGUgYFxfPTggXGNhdGNvZGUgYFx+PTEzIFxsZXR+ PVx0aWV/fgEyMjI3LDczNzMxCitcbGV0XHs9XHB0ZXhsYnJhY2V/ewEyMjM3LDczOTEyCitcbGV0 XH09XHB0ZXhyYnJhY2V/fQEyMjM4LDczOTMxCitcbGV0XC49XHB0ZXhkb3R/LgEyMjM5LDczOTUw CitcbGV0XCo9XHB0ZXhzdGFyfyoBMjI0MCw3Mzk2NgorXGxldFxkb3RzPVxwdGV4ZG90c39kb3Rz ATIyNDEsNzM5ODMKK1xkZWZcQHt/QAEyMjQyLDc0MDAzCitcbGV0XGJ1bGxldD1ccHRleGJ1bGxl dH9idWxsZXQBMjI0Myw3NDAxNAorXGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1c cHRleGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhsf2IBMjI0NCw3NDAzOAorXGxldFxiPVxw dGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0 ZXhsf2MBMjI0NCw3NDAzOAorXGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1ccHRl eGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhsf2kBMjI0NCw3NDAzOAorXGxldFxiPVxwdGV4 YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhs f3QBMjI0NCw3NDAzOAorXGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkg XGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhsf2wBMjI0NCw3NDAzOAorXGxldFxMPVxwdGV4TH9M ATIyNDUsNzQxMDgKK1xsZXRcRXRleD1cZW5kZ3JvdXB9f0V0ZXgBMjI0Nyw3NDEyNAorXGdkZWZc bGlzcHBhcnt/bGlzcHBhcgEyMjU5LDc0NTE3CitcZ2RlZlxzZXBzcGFjZXN7f3NlcHNwYWNlcwEy MjY1LDc0NzM1CitcZGVmXGFib3ZlZW52YnJlYWt7f2Fib3ZlZW52YnJlYWsBMjI2OCw3NDgxNwor XGRlZlxhZnRlcmVudmJyZWFre39hZnRlcmVudmJyZWFrATIyNzIsNzQ5ODMKK1xsZXRcbm9uYXJy b3dpbmc9XHJlbGF4f25vbmFycm93aW5nATIyNzYsNzUxNzYKK1xkZWZcY3Rse39jdGwBMjI4Niw3 NTQ5NAorXGRlZlxjdHJ7f2N0cgEyMjg3LDc1NTY2CitcZGVmXGNibHt/Y2JsATIyODgsNzU2MDUK K1xkZWZcY2Jye39jYnIBMjI4OSw3NTY0NQorXGRlZlxjYXJ0dG9we39jYXJ0dG9wATIyOTAsNzU2 ODQKK1xkZWZcY2FydGJvdHt/Y2FydGJvdAEyMjkzLDc1NzkyCitcbG9uZ1xkZWZcY2FydG91Y2hl e39jYXJ0b3VjaGUBMjI5OSw3NTkzMgorCVxsZXRcbm9uYXJyb3dpbmc9XGNvbW1lbnR/bm9uYXJy b3dpbmcBMjMxMSw3NjQwNAorXGRlZlxFY2FydG91Y2hle39FY2FydG91Y2hlATIzMjYsNzY3MjAK K1xkZWZcbGlzcHt/bGlzcAEyMzM4LDc2ODU1CitcbGV0XHBhcj1cbGlzcHBhcn9wYXIBMjM0Nyw3 NzE4NAorXGRlZlxFbGlzcHt/RWxpc3ABMjM0OCw3NzIwMgorXGxldFxleGRlbnQ9XG5vZmlsbGV4 ZGVudH9leGRlbnQBMjM1NSw3NzQxOAorXGxldFxub25hcnJvd2luZz1ccmVsYXh/bm9uYXJyb3dp bmcBMjM1Niw3NzQ0NAorXGRlZlxuZXh0IyMxe39uZXh0ATIzNjAsNzc1MjgKK1xsZXRcZXhhbXBs ZT1cbGlzcH9leGFtcGxlATIzNjMsNzc1NTEKK1xkZWZcRWV4YW1wbGV7f0VleGFtcGxlATIzNjQs Nzc1NzAKK1xsZXRcc21hbGxleGFtcGxlPVxsaXNwf3NtYWxsZXhhbXBsZQEyMzY2LDc3NTkzCitc ZGVmXEVzbWFsbGV4YW1wbGV7f0VzbWFsbGV4YW1wbGUBMjM2Nyw3NzYxNworXGRlZlxzbWFsbGxp c3B4e39zbWFsbGxpc3B4ATIzNzMsNzc3OTUKK1xsZXRccGFyPVxsaXNwcGFyf3BhcgEyMzgyLDc4 MTMxCitcZGVmXEVzbWFsbGxpc3B7f0VzbWFsbGxpc3ABMjM4Myw3ODE0OQorXGxldFxleGRlbnQ9 XG5vZmlsbGV4ZGVudH9leGRlbnQBMjM5Miw3ODQzNgorXGxldFxub25hcnJvd2luZz1ccmVsYXh/ bm9uYXJyb3dpbmcBMjM5Myw3ODQ2MgogXG9iZXlzcGFjZXMgXG9iZXlsaW5lcyBcbmluZXR0IFxp bmRleGZvbnRzIFxyYXdiYWNrc2xhc2h/Zm9udHMBMjM5Niw3ODUwNQotXGRlZlxuZXh0IyMxe39c bmV4dAEyMzk3LDc4NTYyCi1cZGVmXGRpc3BsYXl7f1xkaXNwbGF5ATI0MDEsNzg2NDIKLVxkZWZc RWRpc3BsYXl7f1xFZGlzcGxheQEyNDEwLDc4OTYxCi1cZGVmXG5leHQjIzF7f1xuZXh0ATI0MjIs NzkyNzIKLVxkZWZcZm9ybWF0e39cZm9ybWF0ATI0MjYsNzkzNzUKLVxkZWZcRWZvcm1hdHt/XEVm b3JtYXQBMjQzNCw3OTY3MQotXGRlZlxuZXh0IyMxe39cbmV4dAEyNDM3LDc5NzYwCi1cZGVmXGZs dXNobGVmdHt/XGZsdXNobGVmdAEyNDQxLDc5ODEyCi1cZGVmXEVmbHVzaGxlZnR7f1xFZmx1c2hs ZWZ0ATI0NTEsODAxODMKLVxkZWZcbmV4dCMjMXt/XG5leHQBMjQ1NCw4MDI3NgotXGRlZlxmbHVz aHJpZ2h0e39cZmx1c2hyaWdodAEyNDU2LDgwMjk4Ci1cZGVmXEVmbHVzaHJpZ2h0e39cRWZsdXNo cmlnaHQBMjQ2Niw4MDY3MAotXGRlZlxuZXh0IyMxe39cbmV4dAEyNDcwLDgwODAxCi1cZGVmXHF1 b3RhdGlvbnt/XHF1b3RhdGlvbgEyNDc0LDgwODU5Ci1cZGVmXEVxdW90YXRpb257f1xFcXVvdGF0 aW9uATI0ODAsODEwNTEKLVxkZWZcc2V0ZGVmZm9udCAjMSB7f1xzZXRkZWZmb250ATI0OTMsODE0 NDkKK1xkZWZcbmV4dCMjMXt/bmV4dAEyMzk3LDc4NTYyCitcZGVmXGRpc3BsYXl7f2Rpc3BsYXkB MjQwMSw3ODY0MgorXGxldFxwYXI9XGxpc3BwYXJ/cGFyATI0MDksNzg5NDMKK1xkZWZcRWRpc3Bs YXl7f0VkaXNwbGF5ATI0MTAsNzg5NjEKK1xsZXRcZXhkZW50PVxub2ZpbGxleGRlbnR/ZXhkZW50 ATI0MTcsNzkxODAKK1xsZXRcbm9uYXJyb3dpbmc9XHJlbGF4f25vbmFycm93aW5nATI0MTgsNzky MDYKK1xkZWZcbmV4dCMjMXt/bmV4dAEyNDIyLDc5MjcyCitcZGVmXGZvcm1hdHt/Zm9ybWF0ATI0 MjYsNzkzNzUKK1xsZXRccGFyPVxsaXNwcGFyf3BhcgEyNDMzLDc5NjUzCitcZGVmXEVmb3JtYXR7 f0Vmb3JtYXQBMjQzNCw3OTY3MQorXGRlZlxuZXh0IyMxe39uZXh0ATI0MzcsNzk3NjAKK1xkZWZc Zmx1c2hsZWZ0e39mbHVzaGxlZnQBMjQ0MSw3OTgxMgorXGxldFxwYXI9XGxpc3BwYXJ/cGFyATI0 NTAsODAxNjUKK1xkZWZcRWZsdXNobGVmdHt/RWZsdXNobGVmdAEyNDUxLDgwMTgzCitcZGVmXG5l eHQjIzF7f25leHQBMjQ1NCw4MDI3NgorXGRlZlxmbHVzaHJpZ2h0e39mbHVzaHJpZ2h0ATI0NTYs ODAyOTgKK1xsZXRccGFyPVxsaXNwcGFyf3BhcgEyNDY1LDgwNjUyCitcZGVmXEVmbHVzaHJpZ2h0 e39FZmx1c2hyaWdodAEyNDY2LDgwNjcwCitcZGVmXG5leHQjIzF7f25leHQBMjQ3MCw4MDgwMQor XGRlZlxxdW90YXRpb257f3F1b3RhdGlvbgEyNDc0LDgwODU5CitcZGVmXEVxdW90YXRpb257f0Vx dW90YXRpb24BMjQ4MCw4MTA1MQorXGxldFxub25hcnJvd2luZz1ccmVsYXh/bm9uYXJyb3dpbmcB MjQ4Nyw4MTMwMQorXGRlZlxzZXRkZWZmb250ICMxIHt/c2V0ZGVmZm9udAEyNDkzLDgxNDQ5Citc bmV3c2tpcFxkZWZib2R5aW5kZW50IFxkZWZib2R5aW5kZW50PS40aW5/Ym9keWluZGVudAEyNDk1 LDgxNDk1CiBcbmV3c2tpcFxkZWZib2R5aW5kZW50IFxkZWZib2R5aW5kZW50PS40aW5/Ym9keWlu ZGVudAEyNDk1LDgxNDk1CiBcbmV3c2tpcFxkZWZhcmdzaW5kZW50IFxkZWZhcmdzaW5kZW50PTUw cHR/YXJnc2luZGVudAEyNDk2LDgxNTM4CitcbmV3c2tpcFxkZWZhcmdzaW5kZW50IFxkZWZhcmdz aW5kZW50PTUwcHR/YXJnc2luZGVudAEyNDk2LDgxNTM4CiBcbmV3c2tpcFxkZWZ0eXBlbWFyZ2lu IFxkZWZ0eXBlbWFyZ2luPTEycHR/dHlwZW1hcmdpbgEyNDk3LDgxNTgxCitcbmV3c2tpcFxkZWZ0 eXBlbWFyZ2luIFxkZWZ0eXBlbWFyZ2luPTEycHR/dHlwZW1hcmdpbgEyNDk3LDgxNTgxCitcbmV3 c2tpcFxkZWZsYXN0YXJnbWFyZ2luIFxkZWZsYXN0YXJnbWFyZ2luPTE4cHR/bGFzdGFyZ21hcmdp bgEyNDk4LDgxNjI0CiBcbmV3c2tpcFxkZWZsYXN0YXJnbWFyZ2luIFxkZWZsYXN0YXJnbWFyZ2lu PTE4cHR/bGFzdGFyZ21hcmdpbgEyNDk4LDgxNjI0Ci1cZGVmXGFjdGl2ZXBhcmVuc3t/XGFjdGl2 ZXBhcmVucwEyNTAzLDgxODIyCi1cZGVmXG9wbnJ7f1xvcG5yATI1MjksODMwMzQKLVxkZWZcbGJy Ynt/XGxicmIBMjUzMCw4MzA5OQotXGRlZlxkZWZuYW1lICMxIzJ7f1xkZWZuYW1lATI1MzYsODMz MDAKK1xkZWZcYWN0aXZlcGFyZW5ze39hY3RpdmVwYXJlbnMBMjUwMyw4MTgyMgorXGdkZWZcZnVu Y3Rpb25wYXJlbnN7f2Z1bmN0aW9ucGFyZW5zATI1MDcsODIwMTYKK1xnZGVmXGZ1bmN0aW9ucGFy ZW5ze1xib2xkYnJheFxsZXQmPVxhbXBybVxwYXJlbmNvdW50PTAgfX8mATI1MDcsODIwMTYKK1xn ZGVmXGJvbGRicmF4e39ib2xkYnJheAEyNTA4LDgyMDc0CitcZ2RlZlxib2xkYnJheHtcbGV0KD1c b3BuclxsZXQpPVxjbG5yXGxldFs9XGxicmJcbGV0XT1ccmJyYn1/KAEyNTA4LDgyMDc0CitcZ2Rl Zlxib2xkYnJheHtcbGV0KD1cb3BuclxsZXQpPVxjbG5yXGxldFs9XGxicmJcbGV0XT1ccmJyYn1/ KQEyNTA4LDgyMDc0CitcZ2RlZlxib2xkYnJheHtcbGV0KD1cb3BuclxsZXQpPVxjbG5yXGxldFs9 XGxicmJcbGV0XT1ccmJyYn1/WwEyNTA4LDgyMDc0CitcZ2RlZlxib2xkYnJheHtcbGV0KD1cb3Bu clxsZXQpPVxjbG5yXGxldFs9XGxicmJcbGV0XT1ccmJyYn1/XQEyNTA4LDgyMDc0CitcZ2RlZlxv cHJtIzEge39vcHJtATI1MTIsODIyNTAKK1xnZGVmXG9wcm0jMSB7e1xybVxjaGFyYFwofSMxIFxi ZiBcbGV0KD1cb3BuZXN0ZWQgJX8oATI1MTIsODIyNTAKK1xnZGVmXG9wbmVzdGVke39vcG5lc3Rl ZAEyNTE2LDgyNDA3CitcZ2RlZlxjbHJte39jbHJtATI1MTgsODI0NjYKK1xpZm51bSBccGFyZW5j b3VudD0xIHtccm0gXGNoYXIgYFwpfVxzbCBcbGV0KD1cb3BybSBcZWxzZSBcY2hhciBgXCkgXGZp fygBMjUyMCw4MjYwMgorXGdkZWZcYW1wcm0jMSB7f2FtcHJtATI1MjMsODI3NjkKK1xnZGVmXGFt cHJtIzEge3tccm1cJiMxfVxsZXQoPVxvcHJtIFxsZXQpPVxjbHJtXCB9fygBMjUyMyw4Mjc2OQor XGdkZWZcYW1wcm0jMSB7e1xybVwmIzF9XGxldCg9XG9wcm0gXGxldCk9XGNscm1cIH1/KQEyNTIz LDgyNzY5CitcZ2RlZlxub3JtYWxwYXJlbnN7f25vcm1hbHBhcmVucwEyNTI1LDgyODIyCitcZ2Rl Zlxub3JtYWxwYXJlbnN7XGJvbGRicmF4XGxldCY9XGFtcG5yfX8mATI1MjUsODI4MjIKK1xkZWZc b3Bucnt/b3BucgEyNTI5LDgzMDM0CitcZGVmXG9wbnJ7e1xzZlxjaGFyYFwofX0gXGRlZlxjbG5y e39jbG5yATI1MjksODMwMzQKK1xkZWZcb3Bucnt7XHNmXGNoYXJgXCh9fSBcZGVmXGNsbnJ7e1xz ZlxjaGFyYFwpfX0gXGRlZlxhbXBucnt/YW1wbnIBMjUyOSw4MzAzNAorXGRlZlxsYnJie39sYnJi ATI1MzAsODMwOTkKK1xkZWZcbGJyYnt7XGJmXGNoYXJgXFt9fSBcZGVmXHJicmJ7f3JicmIBMjUz MCw4MzA5OQorXGRlZlxkZWZuYW1lICMxIzJ7f2RlZm5hbWUBMjUzNiw4MzMwMAogXGFkdmFuY2Vc ZGltZW4yIGJ5IC1cZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI1NDAsODM0MTgKIFxhZHZhbmNl XGRpbWVuMyBieSAtXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNTQyLDgzNDcyCiBcc2V0Ym94 MD1caGJveHtcaHNraXAgXGRlZmxhc3RhcmdtYXJnaW57f2xhc3RhcmdtYXJnaW4BMjU0NCw4MzUy NgorXHNldGJveDA9XGhib3h7XGhza2lwIFxkZWZsYXN0YXJnbWFyZ2lue1xybSAjMn1caHNraXAg XGRlZnR5cGVtYXJnaW59f3R5cGVtYXJnaW4BMjU0NCw4MzUyNgogXGRpbWVuMT1caHNpemUgXGFk dmFuY2UgXGRpbWVuMSBieSAtXGRlZmFyZ3NpbmRlbnQgJXNpemUgZm9yIGNvbnRpbnVhdGlvbnN/ YXJnc2luZGVudAEyNTQ2LDgzNjY4CiBccGFyc2hhcGUgMiAwaW4gXGRpbWVuMCBcZGVmYXJnc2lu ZGVudCBcZGltZW4xICAgICAlf2FyZ3NpbmRlbnQBMjU0Nyw4Mzc0MwogXHJsYXB7XHJpZ2h0bGlu ZXt7XHJtICMyfVxoc2tpcCBcZGVmdHlwZW1hcmdpbn1/dHlwZW1hcmdpbgEyNTU0LDg0MTEyCiBc YWR2YW5jZVxsZWZ0c2tpcCBieSAtXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNTU3LDg0MjQ2 CiBcZXhkZW50YW1vdW50PVxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjU1OCw4NDI4MwotXGRl ZlxkZWZwYXJzZWJvZHkgIzEjMiMze39cZGVmcGFyc2Vib2R5ATI1NjgsODQ2NDIKLVxkZWYjMXt/ MjU3Miw4NDgyNgotXGRlZiMye38yNTczLDg0ODYyCitcZGVmXGRlZnBhcnNlYm9keSAjMSMyIzN7 f2RlZnBhcnNlYm9keQEyNTY4LDg0NjQyCitcYWR2YW5jZVxsZWZ0c2tpcCBieSBcZGVmYm9keWlu ZGVudCBcYWR2YW5jZSBccmlnaHRza2lwIGJ5IFxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjU3 NSw4NDkzNAogXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFkdmFuY2UgXHJp Z2h0c2tpcCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI1NzUsODQ5MzQKIFxleGRlbnRh bW91bnQ9XGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNTc2LDg1MDA4Ci1cZGVmXGRlZm1ldGhw YXJzZWJvZHkgIzEjMiMzIzQge39cZGVmbWV0aHBhcnNlYm9keQEyNTgxLDg1MTEyCi1cZGVmIzF7 fzI1ODUsODUyNzMKLVxkZWYjMiMjMSB7fzI1ODYsODUzMDkKK1xkZWZcZGVmbWV0aHBhcnNlYm9k eSAjMSMyIzMjNCB7f2RlZm1ldGhwYXJzZWJvZHkBMjU4MSw4NTExMgorXGFkdmFuY2VcbGVmdHNr aXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVmYm9keWluZGVu dH9ib2R5aW5kZW50ATI1ODgsODUzOTIKIFxhZHZhbmNlXGxlZnRza2lwIGJ5IFxkZWZib2R5aW5k ZW50IFxhZHZhbmNlIFxyaWdodHNraXAgYnkgXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNTg4 LDg1MzkyCiBcZXhkZW50YW1vdW50PVxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjU4OSw4NTQ2 NgotXGRlZlxkZWZvcHBhcnNlYm9keSAjMSMyIzMjNCM1IHt/XGRlZm9wcGFyc2Vib2R5ATI1OTIs ODU1NTEKLVxkZWYjMXt/MjU5Niw4NTcxMgotXGRlZiMyIyMxICMjMiB7fzI1OTcsODU3NDgKK1xk ZWZcZGVmb3BwYXJzZWJvZHkgIzEjMiMzIzQjNSB7f2RlZm9wcGFyc2Vib2R5ATI1OTIsODU1NTEK K1xhZHZhbmNlXGxlZnRza2lwIGJ5IFxkZWZib2R5aW5kZW50IFxhZHZhbmNlIFxyaWdodHNraXAg YnkgXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNjAwLDg1ODQ4CiBcYWR2YW5jZVxsZWZ0c2tp cCBieSBcZGVmYm9keWluZGVudCBcYWR2YW5jZSBccmlnaHRza2lwIGJ5IFxkZWZib2R5aW5kZW50 f2JvZHlpbmRlbnQBMjYwMCw4NTg0OAogXGV4ZGVudGFtb3VudD1cZGVmYm9keWluZGVudH9ib2R5 aW5kZW50ATI2MDEsODU5MjIKLVxkZWZcZGVmdmFycGFyc2Vib2R5ICMxIzIjM3t/XGRlZnZhcnBh cnNlYm9keQEyNjA4LDg2MTkzCi1cZGVmIzF7fzI2MTIsODYzODAKLVxkZWYjMnt/MjYxMyw4NjQx NgorXGRlZlxkZWZ2YXJwYXJzZWJvZHkgIzEjMiMze39kZWZ2YXJwYXJzZWJvZHkBMjYwOCw4NjE5 MworXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tp cCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI2MTUsODY0NzUKIFxhZHZhbmNlXGxlZnRz a2lwIGJ5IFxkZWZib2R5aW5kZW50IFxhZHZhbmNlIFxyaWdodHNraXAgYnkgXGRlZmJvZHlpbmRl bnR/Ym9keWluZGVudAEyNjE1LDg2NDc1CiBcZXhkZW50YW1vdW50PVxkZWZib2R5aW5kZW50f2Jv ZHlpbmRlbnQBMjYxNiw4NjU0OQotXGRlZlxkZWZ2cnBhcnNlYm9keSAjMSMyIzMjNCB7f1xkZWZ2 cnBhcnNlYm9keQEyNjIxLDg2NjQwCi1cZGVmIzF7fzI2MjUsODY3OTkKLVxkZWYjMiMjMSB7fzI2 MjYsODY4MzUKK1xkZWZcZGVmdnJwYXJzZWJvZHkgIzEjMiMzIzQge39kZWZ2cnBhcnNlYm9keQEy NjIxLDg2NjQwCitcYWR2YW5jZVxsZWZ0c2tpcCBieSBcZGVmYm9keWluZGVudCBcYWR2YW5jZSBc cmlnaHRza2lwIGJ5IFxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjYyOCw4NjkwNQogXGFkdmFu Y2VcbGVmdHNraXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVm Ym9keWluZGVudH9ib2R5aW5kZW50ATI2MjgsODY5MDUKIFxleGRlbnRhbW91bnQ9XGRlZmJvZHlp bmRlbnR/Ym9keWluZGVudAEyNjI5LDg2OTc5Ci1cZGVmXGRlZm9wdmFycGFyc2Vib2R5ICMxIzIj MyM0IzUge39cZGVmb3B2YXJwYXJzZWJvZHkBMjYzMiw4NzA1MQotXGRlZiMxe38yNjM2LDg3MjE1 Ci1cZGVmIzIjIzEgIyMyIHt/MjYzNyw4NzI1MQorXGRlZlxkZWZvcHZhcnBhcnNlYm9keSAjMSMy IzMjNCM1IHt/ZGVmb3B2YXJwYXJzZWJvZHkBMjYzMiw4NzA1MQorXGFkdmFuY2VcbGVmdHNraXAg YnkgXGRlZmJvZHlpbmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVmYm9keWluZGVudH9i b2R5aW5kZW50ATI2NDAsODczMzgKIFxhZHZhbmNlXGxlZnRza2lwIGJ5IFxkZWZib2R5aW5kZW50 IFxhZHZhbmNlIFxyaWdodHNraXAgYnkgXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNjQwLDg3 MzM4CiBcZXhkZW50YW1vdW50PVxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjY0MSw4NzQxMgot XGRlZlxkZWZ1bmFyZ3MgIzF7f1xkZWZ1bmFyZ3MBMjY2NCw4ODE3MgotXGRlZlxkZWZ0eXBlZnVu YXJncyAjMXt/XGRlZnR5cGVmdW5hcmdzATI2NzYsODg1NTQKLVxkZWZcZGVmZm57f1xkZWZmbgEy NjkwLDg4OTM2Ci1cZGVmXGRlZmZuaGVhZGVyICMxIzIjM3t/XGRlZmZuaGVhZGVyATI2OTIsODg5 OTMKK1xnZGVmXHNwYWNlc3BsaXQjMSMyXl5Ne39zcGFjZXNwbGl0ATI2NTIsODc3NzUKK1xsb25n XGdkZWZcc3BhY2VzcGxpdGZvbyMxIzIgIzMjNFxzcGFjZXNwbGl0Zm9ve39zcGFjZXNwbGl0Zm9v ATI2NTMsODc4NTIKK1xkZWZcZGVmdW5hcmdzICMxe39kZWZ1bmFyZ3MBMjY2NCw4ODE3MgorXGRl ZlxkZWZ0eXBlZnVuYXJncyAjMXt/ZGVmdHlwZWZ1bmFyZ3MBMjY3Niw4ODU1NAorXGRlZlxkZWZm bnt/ZGVmZm4BMjY5MCw4ODkzNgorXGRlZlxkZWZmbntcZGVmbWV0aHBhcnNlYm9keVxFZGVmZm5c ZGVmZm54XGRlZmZuaGVhZGVyfX9tZXRocGFyc2Vib2R5XEVkZWZmbgEyNjkwLDg4OTM2CitcZGVm XGRlZmZue1xkZWZtZXRocGFyc2Vib2R5XEVkZWZmblxkZWZmbnhcZGVmZm5oZWFkZXJ9f2ZueFxk ZWZmbmhlYWRlcgEyNjkwLDg4OTM2CitcZGVmXGRlZmZue1xkZWZtZXRocGFyc2Vib2R5XEVkZWZm blxkZWZmbnhcZGVmZm5oZWFkZXJ9f2ZuaGVhZGVyATI2OTAsODg5MzYKK1xkZWZcZGVmZm5oZWFk ZXIgIzEjMiMze39kZWZmbmhlYWRlcgEyNjkyLDg4OTkzCiBcYmVnaW5ncm91cFxkZWZuYW1lIHt/ bmFtZQEyNjkzLDg5MDQxCi1cZGVmXGRlZnVue39cZGVmdW4BMjY5OSw4OTE4NgotXGRlZlxkZWZ1 bmhlYWRlciAjMSMye39cZGVmdW5oZWFkZXIBMjcwMSw4OTIzOQorXGJlZ2luZ3JvdXBcZGVmbmFt ZSB7IzJ9eyMxfVxkZWZ1bmFyZ3N7f3VuYXJncwEyNjkzLDg5MDQxCitcZGVmXGRlZnVue39kZWZ1 bgEyNjk5LDg5MTg2CitcZGVmXGRlZnVue1xkZWZwYXJzZWJvZHlcRWRlZnVuXGRlZnVueFxkZWZ1 bmhlYWRlcn1/cGFyc2Vib2R5XEVkZWZ1bgEyNjk5LDg5MTg2CitcZGVmXGRlZnVue1xkZWZwYXJz ZWJvZHlcRWRlZnVuXGRlZnVueFxkZWZ1bmhlYWRlcn1/dW54XGRlZnVuaGVhZGVyATI2OTksODkx ODYKK1xkZWZcZGVmdW57XGRlZnBhcnNlYm9keVxFZGVmdW5cZGVmdW54XGRlZnVuaGVhZGVyfX91 bmhlYWRlcgEyNjk5LDg5MTg2CitcZGVmXGRlZnVuaGVhZGVyICMxIzJ7f2RlZnVuaGVhZGVyATI3 MDEsODkyMzkKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI3MDIsODkzMTQKIFxkZWZ1bmFy Z3Mge391bmFyZ3MBMjcwMyw4OTM1MAotXGRlZlxkZWZ0eXBlZnVue39cZGVmdHlwZWZ1bgEyNzA5 LDg5NDk4Ci1cZGVmXGRlZnR5cGVmdW5oZWFkZXIgIzEjMnt/XGRlZnR5cGVmdW5oZWFkZXIBMjcx Miw4OTYyMAotXGRlZlxkZWZ0eXBlZnVuaGVhZGVyeCAjMSMyICMzXHJlbGF4e39cZGVmdHlwZWZ1 bmhlYWRlcngBMjcxNCw4OTcyOQorXGRlZlxkZWZ0eXBlZnVue39kZWZ0eXBlZnVuATI3MDksODk0 OTgKK1xkZWZcZGVmdHlwZWZ1bntcZGVmcGFyc2Vib2R5XEVkZWZ0eXBlZnVuXGRlZnR5cGVmdW54 XGRlZnR5cGVmdW5oZWFkZXJ9f3BhcnNlYm9keVxFZGVmdHlwZWZ1bgEyNzA5LDg5NDk4CitcZGVm XGRlZnR5cGVmdW57XGRlZnBhcnNlYm9keVxFZGVmdHlwZWZ1blxkZWZ0eXBlZnVueFxkZWZ0eXBl ZnVuaGVhZGVyfX90eXBlZnVueFxkZWZ0eXBlZnVuaGVhZGVyATI3MDksODk0OTgKK1xkZWZcZGVm dHlwZWZ1bntcZGVmcGFyc2Vib2R5XEVkZWZ0eXBlZnVuXGRlZnR5cGVmdW54XGRlZnR5cGVmdW5o ZWFkZXJ9f3R5cGVmdW5oZWFkZXIBMjcwOSw4OTQ5OAorXGRlZlxkZWZ0eXBlZnVuaGVhZGVyICMx IzJ7f2RlZnR5cGVmdW5oZWFkZXIBMjcxMiw4OTYyMAorXGRlZlxkZWZ0eXBlZnVuaGVhZGVyICMx IzJ7XGRlZnR5cGVmdW5oZWFkZXJ4e390eXBlZnVuaGVhZGVyeAEyNzEyLDg5NjIwCitcZGVmXGRl ZnR5cGVmdW5oZWFkZXJ4ICMxIzIgIzNccmVsYXh7f2RlZnR5cGVmdW5oZWFkZXJ4ATI3MTQsODk3 MjkKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI3MTYsODk4MjEKIFxkZWZ0eXBlZnVuYXJn cyB7f3R5cGVmdW5hcmdzATI3MTcsODk4NjcKLVxkZWZcZGVmdHlwZWZue39cZGVmdHlwZWZuATI3 MjMsOTAwMzgKLVxkZWZcZGVmdHlwZWZuaGVhZGVyICMxIzIjM3t/XGRlZnR5cGVmbmhlYWRlcgEy NzI2LDkwMTg3Ci1cZGVmXGRlZnR5cGVmbmhlYWRlcnggIzEjMiMzICM0XHJlbGF4e39cZGVmdHlw ZWZuaGVhZGVyeAEyNzI4LDkwMzIzCitcZGVmXGRlZnR5cGVmbnt/ZGVmdHlwZWZuATI3MjMsOTAw MzgKK1xkZWZcZGVmdHlwZWZue1xkZWZtZXRocGFyc2Vib2R5XEVkZWZ0eXBlZm5cZGVmdHlwZWZu eFxkZWZ0eXBlZm5oZWFkZXJ9f21ldGhwYXJzZWJvZHlcRWRlZnR5cGVmbgEyNzIzLDkwMDM4Citc ZGVmXGRlZnR5cGVmbntcZGVmbWV0aHBhcnNlYm9keVxFZGVmdHlwZWZuXGRlZnR5cGVmbnhcZGVm dHlwZWZuaGVhZGVyfX90eXBlZm54XGRlZnR5cGVmbmhlYWRlcgEyNzIzLDkwMDM4CitcZGVmXGRl ZnR5cGVmbntcZGVmbWV0aHBhcnNlYm9keVxFZGVmdHlwZWZuXGRlZnR5cGVmbnhcZGVmdHlwZWZu aGVhZGVyfX90eXBlZm5oZWFkZXIBMjcyMyw5MDAzOAorXGRlZlxkZWZ0eXBlZm5oZWFkZXIgIzEj MiMze39kZWZ0eXBlZm5oZWFkZXIBMjcyNiw5MDE4NworXGRlZlxkZWZ0eXBlZm5oZWFkZXIgIzEj MiMze1xkZWZ0eXBlZm5oZWFkZXJ4e390eXBlZm5oZWFkZXJ4ATI3MjYsOTAxODcKK1xkZWZcZGVm dHlwZWZuaGVhZGVyeCAjMSMyIzMgIzRccmVsYXh7f2RlZnR5cGVmbmhlYWRlcngBMjcyOCw5MDMy MwogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjczMCw5MDQxNgogXGRlZnR5cGVmdW5hcmdz IHt/dHlwZWZ1bmFyZ3MBMjczMSw5MDQ1NgotXGRlZlxkZWZtYWN7f1xkZWZtYWMBMjczNyw5MDU3 NwotXGRlZlxkZWZtYWNoZWFkZXIgIzEjMnt/XGRlZm1hY2hlYWRlcgEyNzM5LDkwNjM0CitcZGVm XGRlZm1hY3t/ZGVmbWFjATI3MzcsOTA1NzcKK1xkZWZcZGVmbWFje1xkZWZwYXJzZWJvZHlcRWRl Zm1hY1xkZWZtYWN4XGRlZm1hY2hlYWRlcn1/cGFyc2Vib2R5XEVkZWZtYWMBMjczNyw5MDU3Nwor XGRlZlxkZWZtYWN7XGRlZnBhcnNlYm9keVxFZGVmbWFjXGRlZm1hY3hcZGVmbWFjaGVhZGVyfX9t YWN4XGRlZm1hY2hlYWRlcgEyNzM3LDkwNTc3CitcZGVmXGRlZm1hY3tcZGVmcGFyc2Vib2R5XEVk ZWZtYWNcZGVmbWFjeFxkZWZtYWNoZWFkZXJ9f21hY2hlYWRlcgEyNzM3LDkwNTc3CitcZGVmXGRl Zm1hY2hlYWRlciAjMSMye39kZWZtYWNoZWFkZXIBMjczOSw5MDYzNAogXGJlZ2luZ3JvdXBcZGVm bmFtZSB7f25hbWUBMjc0MCw5MDcxMAogXGRlZnVuYXJncyB7f3VuYXJncwEyNzQxLDkwNzQzCi1c ZGVmXGRlZnNwZWN7f1xkZWZzcGVjATI3NDcsOTA4NjcKLVxkZWZcZGVmc3BlY2hlYWRlciAjMSMy e39cZGVmc3BlY2hlYWRlcgEyNzQ5LDkwOTI4CitcZGVmXGRlZnNwZWN7f2RlZnNwZWMBMjc0Nyw5 MDg2NworXGRlZlxkZWZzcGVje1xkZWZwYXJzZWJvZHlcRWRlZnNwZWNcZGVmc3BlY3hcZGVmc3Bl Y2hlYWRlcn1/cGFyc2Vib2R5XEVkZWZzcGVjATI3NDcsOTA4NjcKK1xkZWZcZGVmc3BlY3tcZGVm cGFyc2Vib2R5XEVkZWZzcGVjXGRlZnNwZWN4XGRlZnNwZWNoZWFkZXJ9f3NwZWN4XGRlZnNwZWNo ZWFkZXIBMjc0Nyw5MDg2NworXGRlZlxkZWZzcGVje1xkZWZwYXJzZWJvZHlcRWRlZnNwZWNcZGVm c3BlY3hcZGVmc3BlY2hlYWRlcn1/c3BlY2hlYWRlcgEyNzQ3LDkwODY3CitcZGVmXGRlZnNwZWNo ZWFkZXIgIzEjMnt/ZGVmc3BlY2hlYWRlcgEyNzQ5LDkwOTI4CiBcYmVnaW5ncm91cFxkZWZuYW1l IHt/bmFtZQEyNzUwLDkxMDA1CiBcZGVmdW5hcmdzIHt/dW5hcmdzATI3NTEsOTEwNDUKLVxkZWZc ZGVmZm54ICMxIHt/XGRlZmZueAEyNzU4LDkxMjQwCi1cZGVmXGRlZnVueCAjMSB7f1xkZWZ1bngB Mjc1OSw5MTI5NwotXGRlZlxkZWZtYWN4ICMxIHt/XGRlZm1hY3gBMjc2MCw5MTM1NAotXGRlZlxk ZWZzcGVjeCAjMSB7f1xkZWZzcGVjeAEyNzYxLDkxNDEzCi1cZGVmXGRlZnR5cGVmbnggIzEge39c ZGVmdHlwZWZueAEyNzYyLDkxNDc0Ci1cZGVmXGRlZnR5cGV1bnggIzEge39cZGVmdHlwZXVueAEy NzYzLDkxNTM5Ci1cZGVmXGRlZm9wICMxIHt/XGRlZm9wATI3NjksOTE2ODUKLVxkZWZvcHBhcnNl Ym9keVxFZGVmb3BcZGVmb3B4XGRlZm9waGVhZGVyXGRlZm9wdHlwZX1/b3BwYXJzZWJvZHlcRWRl Zm9wXGRlZm9weFxkZWZvcGhlYWRlclxkZWZvcHR5cGUBMjc3MCw5MTcyMAotXGRlZlxkZWZvcGhl YWRlciAjMSMyIzN7f1xkZWZvcGhlYWRlcgEyNzcyLDkxNzc0CitcZGVmXGRlZmZueCAjMSB7f2Rl ZmZueAEyNzU4LDkxMjQwCitcZGVmXGRlZnVueCAjMSB7f2RlZnVueAEyNzU5LDkxMjk3CitcZGVm XGRlZm1hY3ggIzEge39kZWZtYWN4ATI3NjAsOTEzNTQKK1xkZWZcZGVmc3BlY3ggIzEge39kZWZz cGVjeAEyNzYxLDkxNDEzCitcZGVmXGRlZnR5cGVmbnggIzEge39kZWZ0eXBlZm54ATI3NjIsOTE0 NzQKK1xkZWZcZGVmdHlwZXVueCAjMSB7f2RlZnR5cGV1bngBMjc2Myw5MTUzOQorXGRlZlxkZWZv cCAjMSB7f2RlZm9wATI3NjksOTE2ODUKK1xkZWZcZGVmb3AgIzEge1xkZWZcZGVmb3B0eXBle39k ZWZvcHR5cGUBMjc2OSw5MTY4NQorXGRlZm9wcGFyc2Vib2R5XEVkZWZvcFxkZWZvcHhcZGVmb3Bo ZWFkZXJcZGVmb3B0eXBlfX9vcHBhcnNlYm9keVxFZGVmb3ABMjc3MCw5MTcyMAorXGRlZm9wcGFy c2Vib2R5XEVkZWZvcFxkZWZvcHhcZGVmb3BoZWFkZXJcZGVmb3B0eXBlfX9vcHhcZGVmb3BoZWFk ZXIBMjc3MCw5MTcyMAorXGRlZm9wcGFyc2Vib2R5XEVkZWZvcFxkZWZvcHhcZGVmb3BoZWFkZXJc ZGVmb3B0eXBlfX9vcGhlYWRlclxkZWZvcHR5cGUBMjc3MCw5MTcyMAorXGRlZm9wcGFyc2Vib2R5 XEVkZWZvcFxkZWZvcHhcZGVmb3BoZWFkZXJcZGVmb3B0eXBlfX9vcHR5cGUBMjc3MCw5MTcyMAor XGRlZlxkZWZvcGhlYWRlciAjMSMyIzN7f2RlZm9waGVhZGVyATI3NzIsOTE3NzQKIFxiZWdpbmdy b3VwXGRlZm5hbWUge39uYW1lATI3NzQsOTE4NjMKK1xiZWdpbmdyb3VwXGRlZm5hbWUgeyMyfXtc ZGVmb3B0eXBle39vcHR5cGUBMjc3NCw5MTg2MwogXGRlZnVuYXJncyB7f3VuYXJncwEyNzc1LDkx OTA5Ci1cZGVmXGRlZm1ldGhvZHt/XGRlZm1ldGhvZAEyNzgwLDkxOTcwCi1cZGVmXGRlZm1ldGhv ZGhlYWRlciAjMSMyIzN7f1xkZWZtZXRob2RoZWFkZXIBMjc4Miw5MjA0MworXGRlZlxkZWZtZXRo b2R7f2RlZm1ldGhvZAEyNzgwLDkxOTcwCitcZGVmXGRlZm1ldGhvZHtcZGVmbWV0aHBhcnNlYm9k eVxFZGVmbWV0aG9kXGRlZm1ldGhvZHhcZGVmbWV0aG9kaGVhZGVyfX9tZXRocGFyc2Vib2R5XEVk ZWZtZXRob2QBMjc4MCw5MTk3MAorXGRlZlxkZWZtZXRob2R7XGRlZm1ldGhwYXJzZWJvZHlcRWRl Zm1ldGhvZFxkZWZtZXRob2R4XGRlZm1ldGhvZGhlYWRlcn1/bWV0aG9keFxkZWZtZXRob2RoZWFk ZXIBMjc4MCw5MTk3MAorXGRlZlxkZWZtZXRob2R7XGRlZm1ldGhwYXJzZWJvZHlcRWRlZm1ldGhv ZFxkZWZtZXRob2R4XGRlZm1ldGhvZGhlYWRlcn1/bWV0aG9kaGVhZGVyATI3ODAsOTE5NzAKK1xk ZWZcZGVmbWV0aG9kaGVhZGVyICMxIzIjM3t/ZGVmbWV0aG9kaGVhZGVyATI3ODIsOTIwNDMKIFxi ZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI3ODQsOTIxMzEKIFxkZWZ1bmFyZ3Mge391bmFyZ3MB Mjc4NSw5MjE3MQotXGRlZlxkZWZjdiAjMSB7f1xkZWZjdgEyNzkwLDkyMjQ1Ci1cZGVmb3B2YXJw YXJzZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZjdmFyaGVhZGVyXGRlZmN2dHlwZX1/b3B2YXJwYXJz ZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZjdmFyaGVhZGVyXGRlZmN2dHlwZQEyNzkxLDkyMjgwCi1c ZGVmXGRlZmN2YXJoZWFkZXIgIzEjMiMze39cZGVmY3ZhcmhlYWRlcgEyNzkzLDkyMzM5CitcZGVm XGRlZmN2ICMxIHt/ZGVmY3YBMjc5MCw5MjI0NQorXGRlZlxkZWZjdiAjMSB7XGRlZlxkZWZjdnR5 cGV7f2RlZmN2dHlwZQEyNzkwLDkyMjQ1CitcZGVmb3B2YXJwYXJzZWJvZHlcRWRlZmN2XGRlZmN2 eFxkZWZjdmFyaGVhZGVyXGRlZmN2dHlwZX1/b3B2YXJwYXJzZWJvZHlcRWRlZmN2ATI3OTEsOTIy ODAKK1xkZWZvcHZhcnBhcnNlYm9keVxFZGVmY3ZcZGVmY3Z4XGRlZmN2YXJoZWFkZXJcZGVmY3Z0 eXBlfX9jdnhcZGVmY3ZhcmhlYWRlcgEyNzkxLDkyMjgwCitcZGVmb3B2YXJwYXJzZWJvZHlcRWRl ZmN2XGRlZmN2eFxkZWZjdmFyaGVhZGVyXGRlZmN2dHlwZX1/Y3ZhcmhlYWRlclxkZWZjdnR5cGUB Mjc5MSw5MjI4MAorXGRlZm9wdmFycGFyc2Vib2R5XEVkZWZjdlxkZWZjdnhcZGVmY3ZhcmhlYWRl clxkZWZjdnR5cGV9f2N2dHlwZQEyNzkxLDkyMjgwCitcZGVmXGRlZmN2YXJoZWFkZXIgIzEjMiMz e39kZWZjdmFyaGVhZGVyATI3OTMsOTIzMzkKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI3 OTUsOTI0MjUKK1xiZWdpbmdyb3VwXGRlZm5hbWUgeyMyfXtcZGVmY3Z0eXBle39jdnR5cGUBMjc5 NSw5MjQyNQogXGRlZnZhcmFyZ3Mge392YXJhcmdzATI3OTYsOTI0NzEKLVxkZWZcZGVmaXZhcnt/ XGRlZml2YXIBMjgwMSw5MjU0NAotXGRlZlxkZWZpdmFyaGVhZGVyICMxIzIjM3t/XGRlZml2YXJo ZWFkZXIBMjgwMyw5MjYwNworXGRlZlxkZWZpdmFye39kZWZpdmFyATI4MDEsOTI1NDQKK1xkZWZc ZGVmaXZhcntcZGVmdnJwYXJzZWJvZHlcRWRlZml2YXJcZGVmaXZhcnhcZGVmaXZhcmhlYWRlcn1/ dnJwYXJzZWJvZHlcRWRlZml2YXIBMjgwMSw5MjU0NAorXGRlZlxkZWZpdmFye1xkZWZ2cnBhcnNl Ym9keVxFZGVmaXZhclxkZWZpdmFyeFxkZWZpdmFyaGVhZGVyfX9pdmFyeFxkZWZpdmFyaGVhZGVy ATI4MDEsOTI1NDQKK1xkZWZcZGVmaXZhcntcZGVmdnJwYXJzZWJvZHlcRWRlZml2YXJcZGVmaXZh cnhcZGVmaXZhcmhlYWRlcn1/aXZhcmhlYWRlcgEyODAxLDkyNTQ0CitcZGVmXGRlZml2YXJoZWFk ZXIgIzEjMiMze39kZWZpdmFyaGVhZGVyATI4MDMsOTI2MDcKIFxiZWdpbmdyb3VwXGRlZm5hbWUg e39uYW1lATI4MDUsOTI2OTMKIFxkZWZ2YXJhcmdzIHt/dmFyYXJncwEyODA2LDkyNzQ0Ci1cZGVm XGRlZm9weCAjMSB7f1xkZWZvcHgBMjgxMiw5Mjg5MwotXGRlZlxkZWZtZXRob2R4ICMxIHt/XGRl Zm1ldGhvZHgBMjgxMyw5Mjk1MAotXGRlZlxkZWZjdnggIzEge39cZGVmY3Z4ATI4MTQsOTMwMTUK LVxkZWZcZGVmaXZhcnggIzEge39cZGVmaXZhcngBMjgxNSw5MzA3MgotXGRlZlxkZWZ2YXJhcmdz ICMxe39cZGVmdmFyYXJncwEyODIyLDkzMzQzCi1cZGVmXGRlZnZye39cZGVmdnIBMjgyOCw5MzQ4 NwotXGRlZlxkZWZ2cmhlYWRlciAjMSMyIzN7f1xkZWZ2cmhlYWRlcgEyODMwLDkzNTQyCitcZGVm XGRlZm9weCAjMSB7f2RlZm9weAEyODEyLDkyODkzCitcZGVmXGRlZm1ldGhvZHggIzEge39kZWZt ZXRob2R4ATI4MTMsOTI5NTAKK1xkZWZcZGVmY3Z4ICMxIHt/ZGVmY3Z4ATI4MTQsOTMwMTUKK1xk ZWZcZGVmaXZhcnggIzEge39kZWZpdmFyeAEyODE1LDkzMDcyCitcZGVmXGRlZnZhcmFyZ3MgIzF7 f2RlZnZhcmFyZ3MBMjgyMiw5MzM0MworXGRlZlxkZWZ2cnt/ZGVmdnIBMjgyOCw5MzQ4NworXGRl ZlxkZWZ2cntcZGVmdnJwYXJzZWJvZHlcRWRlZnZyXGRlZnZyeFxkZWZ2cmhlYWRlcn1/dnJwYXJz ZWJvZHlcRWRlZnZyATI4MjgsOTM0ODcKK1xkZWZcZGVmdnJ7XGRlZnZycGFyc2Vib2R5XEVkZWZ2 clxkZWZ2cnhcZGVmdnJoZWFkZXJ9f3ZyeFxkZWZ2cmhlYWRlcgEyODI4LDkzNDg3CitcZGVmXGRl ZnZye1xkZWZ2cnBhcnNlYm9keVxFZGVmdnJcZGVmdnJ4XGRlZnZyaGVhZGVyfX92cmhlYWRlcgEy ODI4LDkzNDg3CitcZGVmXGRlZnZyaGVhZGVyICMxIzIjM3t/ZGVmdnJoZWFkZXIBMjgzMCw5MzU0 MgogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjgzMSw5MzU5MAotXGRlZlxkZWZ2YXJ7f1xk ZWZ2YXIBMjgzNSw5MzY3NQotXGRlZlxkZWZ2YXJoZWFkZXIgIzEjMnt/XGRlZnZhcmhlYWRlcgEy ODM3LDkzNzM1CitcYmVnaW5ncm91cFxkZWZuYW1lIHsjMn17IzF9XGRlZnZhcmFyZ3N7f3ZhcmFy Z3MBMjgzMSw5MzU5MAorXGRlZlxkZWZ2YXJ7f2RlZnZhcgEyODM1LDkzNjc1CitcZGVmXGRlZnZh cntcZGVmdmFycGFyc2Vib2R5XEVkZWZ2YXJcZGVmdmFyeFxkZWZ2YXJoZWFkZXJ9f3ZhcnBhcnNl Ym9keVxFZGVmdmFyATI4MzUsOTM2NzUKK1xkZWZcZGVmdmFye1xkZWZ2YXJwYXJzZWJvZHlcRWRl ZnZhclxkZWZ2YXJ4XGRlZnZhcmhlYWRlcn1/dmFyeFxkZWZ2YXJoZWFkZXIBMjgzNSw5MzY3NQor XGRlZlxkZWZ2YXJ7XGRlZnZhcnBhcnNlYm9keVxFZGVmdmFyXGRlZnZhcnhcZGVmdmFyaGVhZGVy fX92YXJoZWFkZXIBMjgzNSw5MzY3NQorXGRlZlxkZWZ2YXJoZWFkZXIgIzEjMnt/ZGVmdmFyaGVh ZGVyATI4MzcsOTM3MzUKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI4MzgsOTM4MDYKIFxk ZWZ2YXJhcmdzIHt/dmFyYXJncwEyODM5LDkzODQyCi1cZGVmXGRlZm9wdHt/XGRlZm9wdAEyODQ0 LDkzOTA4Ci1cZGVmXGRlZm9wdGhlYWRlciAjMSMye39cZGVmb3B0aGVhZGVyATI4NDYsOTM5NjgK K1xkZWZcZGVmb3B0e39kZWZvcHQBMjg0NCw5MzkwOAorXGRlZlxkZWZvcHR7XGRlZnZhcnBhcnNl Ym9keVxFZGVmb3B0XGRlZm9wdHhcZGVmb3B0aGVhZGVyfX92YXJwYXJzZWJvZHlcRWRlZm9wdAEy ODQ0LDkzOTA4CitcZGVmXGRlZm9wdHtcZGVmdmFycGFyc2Vib2R5XEVkZWZvcHRcZGVmb3B0eFxk ZWZvcHRoZWFkZXJ9f29wdHhcZGVmb3B0aGVhZGVyATI4NDQsOTM5MDgKK1xkZWZcZGVmb3B0e1xk ZWZ2YXJwYXJzZWJvZHlcRWRlZm9wdFxkZWZvcHR4XGRlZm9wdGhlYWRlcn1/b3B0aGVhZGVyATI4 NDQsOTM5MDgKK1xkZWZcZGVmb3B0aGVhZGVyICMxIzJ7f2RlZm9wdGhlYWRlcgEyODQ2LDkzOTY4 CiBcYmVnaW5ncm91cFxkZWZuYW1lIHt/bmFtZQEyODQ3LDk0MDM5CiBcZGVmdmFyYXJncyB7f3Zh cmFyZ3MBMjg0OCw5NDA3OAotXGRlZlxkZWZ0eXBldmFye39cZGVmdHlwZXZhcgEyODUzLDk0MTM1 Ci1cZGVmXGRlZnR5cGV2YXJoZWFkZXIgIzEjMnt/XGRlZnR5cGV2YXJoZWFkZXIBMjg1Niw5NDI1 MQorXGRlZlxkZWZ0eXBldmFye39kZWZ0eXBldmFyATI4NTMsOTQxMzUKK1xkZWZcZGVmdHlwZXZh cntcZGVmdmFycGFyc2Vib2R5XEVkZWZ0eXBldmFyXGRlZnR5cGV2YXJ4XGRlZnR5cGV2YXJoZWFk ZXJ9f3ZhcnBhcnNlYm9keVxFZGVmdHlwZXZhcgEyODUzLDk0MTM1CitcZGVmXGRlZnR5cGV2YXJ7 XGRlZnZhcnBhcnNlYm9keVxFZGVmdHlwZXZhclxkZWZ0eXBldmFyeFxkZWZ0eXBldmFyaGVhZGVy fX90eXBldmFyeFxkZWZ0eXBldmFyaGVhZGVyATI4NTMsOTQxMzUKK1xkZWZcZGVmdHlwZXZhcntc ZGVmdmFycGFyc2Vib2R5XEVkZWZ0eXBldmFyXGRlZnR5cGV2YXJ4XGRlZnR5cGV2YXJoZWFkZXJ9 f3R5cGV2YXJoZWFkZXIBMjg1Myw5NDEzNQorXGRlZlxkZWZ0eXBldmFyaGVhZGVyICMxIzJ7f2Rl ZnR5cGV2YXJoZWFkZXIBMjg1Niw5NDI1MQogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjg1 OCw5NDMzNAotXGRlZlxkZWZ0eXBldnJ7f1xkZWZ0eXBldnIBMjg2NSw5NDUwOAotXGRlZlxkZWZ0 eXBldnJoZWFkZXIgIzEjMiMze39cZGVmdHlwZXZyaGVhZGVyATI4NjcsOTQ1NzkKK1xkZWZcZGVm dHlwZXZye39kZWZ0eXBldnIBMjg2NSw5NDUwOAorXGRlZlxkZWZ0eXBldnJ7XGRlZnZycGFyc2Vi b2R5XEVkZWZ0eXBldnJcZGVmdHlwZXZyeFxkZWZ0eXBldnJoZWFkZXJ9f3ZycGFyc2Vib2R5XEVk ZWZ0eXBldnIBMjg2NSw5NDUwOAorXGRlZlxkZWZ0eXBldnJ7XGRlZnZycGFyc2Vib2R5XEVkZWZ0 eXBldnJcZGVmdHlwZXZyeFxkZWZ0eXBldnJoZWFkZXJ9f3R5cGV2cnhcZGVmdHlwZXZyaGVhZGVy ATI4NjUsOTQ1MDgKK1xkZWZcZGVmdHlwZXZye1xkZWZ2cnBhcnNlYm9keVxFZGVmdHlwZXZyXGRl ZnR5cGV2cnhcZGVmdHlwZXZyaGVhZGVyfX90eXBldnJoZWFkZXIBMjg2NSw5NDUwOAorXGRlZlxk ZWZ0eXBldnJoZWFkZXIgIzEjMiMze39kZWZ0eXBldnJoZWFkZXIBMjg2Nyw5NDU3OQogXGJlZ2lu Z3JvdXBcZGVmbmFtZSB7f25hbWUBMjg2OCw5NDYzMQotXGRlZlxkZWZ2cnggIzEge39cZGVmdnJ4 ATI4NzYsOTQ4NjgKLVxkZWZcZGVmdmFyeCAjMSB7f1xkZWZ2YXJ4ATI4NzcsOTQ5MjUKLVxkZWZc ZGVmb3B0eCAjMSB7f1xkZWZvcHR4ATI4NzgsOTQ5ODQKLVxkZWZcZGVmdHlwZXZhcnggIzEge39c ZGVmdHlwZXZhcngBMjg3OSw5NTA0MwotXGRlZlxkZWZ0eXBldnJ4ICMxIHt/XGRlZnR5cGV2cngB Mjg4MCw5NTExMAotXGRlZlxkZWZ0cGFyZ3MgIzF7f1xkZWZ0cGFyZ3MBMjg4NSw5NTI1OQotXGRl ZlxkZWZ0cHt/XGRlZnRwATI4ODksOTUzMzkKLVxkZWZcZGVmdHBoZWFkZXIgIzEjMiMze39cZGVm dHBoZWFkZXIBMjg5MSw5NTM5NAorXGRlZlxkZWZ2cnggIzEge39kZWZ2cngBMjg3Niw5NDg2OAor XGRlZlxkZWZ2YXJ4ICMxIHt/ZGVmdmFyeAEyODc3LDk0OTI1CitcZGVmXGRlZm9wdHggIzEge39k ZWZvcHR4ATI4NzgsOTQ5ODQKK1xkZWZcZGVmdHlwZXZhcnggIzEge39kZWZ0eXBldmFyeAEyODc5 LDk1MDQzCitcZGVmXGRlZnR5cGV2cnggIzEge39kZWZ0eXBldnJ4ATI4ODAsOTUxMTAKK1xkZWZc ZGVmdHBhcmdzICMxe39kZWZ0cGFyZ3MBMjg4NSw5NTI1OQorXGRlZlxkZWZ0cGFyZ3MgIzF7XGJm IFxkZWZ2YXJhcmdze392YXJhcmdzATI4ODUsOTUyNTkKK1xkZWZcZGVmdHB7f2RlZnRwATI4ODks OTUzMzkKK1xkZWZcZGVmdHB7XGRlZnZycGFyc2Vib2R5XEVkZWZ0cFxkZWZ0cHhcZGVmdHBoZWFk ZXJ9f3ZycGFyc2Vib2R5XEVkZWZ0cAEyODg5LDk1MzM5CitcZGVmXGRlZnRwe1xkZWZ2cnBhcnNl Ym9keVxFZGVmdHBcZGVmdHB4XGRlZnRwaGVhZGVyfX90cHhcZGVmdHBoZWFkZXIBMjg4OSw5NTMz OQorXGRlZlxkZWZ0cHtcZGVmdnJwYXJzZWJvZHlcRWRlZnRwXGRlZnRweFxkZWZ0cGhlYWRlcn1/ dHBoZWFkZXIBMjg4OSw5NTMzOQorXGRlZlxkZWZ0cGhlYWRlciAjMSMyIzN7f2RlZnRwaGVhZGVy ATI4OTEsOTUzOTQKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI4OTIsOTU0NDIKLVxkZWZc ZGVmdHB4ICMxIHt/XGRlZnRweAEyODk3LDk1NjAxCi1cZGVmXHNldHJlZiMxe39cc2V0cmVmATI5 MDgsOTU5MjIKLVxkZWZcdW5udW1ic2V0cmVmIzF7f1x1bm51bWJzZXRyZWYBMjkxMyw5NjAzNgot XGRlZlxhcHBlbmRpeHNldHJlZiMxe39cYXBwZW5kaXhzZXRyZWYBMjkxOCw5NjE0MwotXGRlZlxw eHJlZiMxe39ccHhyZWYBMjkyOSw5NjU1NAotXGRlZlx4cmVmIzF7f1x4cmVmATI5MzAsOTY1OTAK LVxkZWZccmVmIzF7f1xyZWYBMjkzMSw5NjYyNQotXGRlZlx4cmVmWFsjMSwjMiwjMywjNCwjNSwj Nl17f1x4cmVmWFsBMjkzMiw5NjY1NQotXGRlZlxwcmludGVkbWFudWFse39ccHJpbnRlZG1hbnVh bAEyOTMzLDk2Njk4Ci1cZGVmXHByaW50ZWRub2RlbmFtZXt/XHByaW50ZWRub2RlbmFtZQEyOTM0 LDk2NzM2Ci1cZGVmXHByaW50ZWRub2RlbmFtZXt/XHByaW50ZWRub2RlbmFtZQEyOTM5LDk2ODYx Ci1zZWN0aW9uIGBgXHByaW50ZWRub2RlbmFtZScnIGluIFxjaXRle1xwcmludGVkbWFudWFsfX9c cHJpbnRlZG1hbnVhbAEyOTU0LDk3NDkzCitcYmVnaW5ncm91cFxkZWZuYW1lIHsjMn17IzF9XGRl ZnRwYXJnc3t/dHBhcmdzATI4OTIsOTU0NDIKK1xkZWZcZGVmdHB4ICMxIHt/ZGVmdHB4ATI4OTcs OTU2MDEKK1xkZWZcc2V0cmVmIzF7f3NldHJlZgEyOTA4LDk1OTIyCitcZGVmXHVubnVtYnNldHJl ZiMxe391bm51bWJzZXRyZWYBMjkxMyw5NjAzNgorXGRlZlxhcHBlbmRpeHNldHJlZiMxe39hcHBl bmRpeHNldHJlZgEyOTE4LDk2MTQzCitcZGVmXHB4cmVmIzF7f3B4cmVmATI5MjksOTY1NTQKK1xk ZWZceHJlZiMxe394cmVmATI5MzAsOTY1OTAKK1xkZWZccmVmIzF7f3JlZgEyOTMxLDk2NjI1Citc ZGVmXHhyZWZYWyMxLCMyLCMzLCM0LCM1LCM2XXt/eHJlZlgBMjkzMiw5NjY1NQorXGRlZlxwcmlu dGVkbWFudWFse39wcmludGVkbWFudWFsATI5MzMsOTY2OTgKK1xkZWZccHJpbnRlZG5vZGVuYW1l e39wcmludGVkbm9kZW5hbWUBMjkzNCw5NjczNgorXGRlZlxwcmludGVkbm9kZW5hbWV7f3ByaW50 ZWRub2RlbmFtZQEyOTM5LDk2ODYxCitzZWN0aW9uIGBgXHByaW50ZWRub2RlbmFtZScnIGluIFxj aXRle1xwcmludGVkbWFudWFsfX9wcmludGVkbWFudWFsATI5NTQsOTc0OTMKIFxyZWZ4e394ATI5 NTcsOTc1NzEKLVxkZWZcZG9zZXRxICMxIzJ7f1xkb3NldHEBMjk2NSw5Nzc5MQotXGRlZlxpbnRl cm5hbHNldHEgIzEjMnt/XGludGVybmFsc2V0cQEyOTczLDk4MDQ5Ci1cZGVmXFlwYWdlbnVtYmVy e39cWXBhZ2VudW1iZXIBMjk3Nyw5ODE1MAotXGRlZlxZdGl0bGV7f1xZdGl0bGUBMjk3OSw5ODE3 NgotXGRlZlxZbm90aGluZ3t/XFlub3RoaW5nATI5ODEsOTgyMDMKLVxkZWZcWXNlY3Rpb25udW1i ZXJhbmR0eXBle39cWXNlY3Rpb25udW1iZXJhbmR0eXBlATI5ODMsOTgyMjAKLVxkZWZcWWFwcGVu ZGl4bGV0dGVyYW5kdHlwZXt/XFlhcHBlbmRpeGxldHRlcmFuZHR5cGUBMjk5Miw5ODUzNgorXHJl Znh7IzEtc250fXt9IFtccHJpbnRlZG5vZGVuYW1lXSwgcGFnZVx0aWVccmVmeHt/eAEyOTU3LDk3 NTcxCitcZGVmXGRvc2V0cSAjMSMye39kb3NldHEBMjk2NSw5Nzc5MQorXGRlZlxkb3NldHEgIzEj Mnt7XGxldFxmb2xpbz0wIFx0dXJub2ZmYWN0aXZlJX9mb2xpbwEyOTY1LDk3NzkxCitcZWRlZlxu ZXh0e39uZXh0ATI5NjYsOTc4MzgKK1xkZWZcaW50ZXJuYWxzZXRxICMxIzJ7f2ludGVybmFsc2V0 cQEyOTczLDk4MDQ5CitcZGVmXFlwYWdlbnVtYmVye39ZcGFnZW51bWJlcgEyOTc3LDk4MTUwCitc ZGVmXFl0aXRsZXt/WXRpdGxlATI5NzksOTgxNzYKK1xkZWZcWW5vdGhpbmd7f1lub3RoaW5nATI5 ODEsOTgyMDMKK1xkZWZcWXNlY3Rpb25udW1iZXJhbmR0eXBle39Zc2VjdGlvbm51bWJlcmFuZHR5 cGUBMjk4Myw5ODIyMAorXGRlZlxZYXBwZW5kaXhsZXR0ZXJhbmR0eXBle39ZYXBwZW5kaXhsZXR0 ZXJhbmR0eXBlATI5OTIsOTg1MzYKIFxpZm51bVxzZWNubz0wIEFwcGVuZGl4XHhyZWZ0aWUnY2hh clx0aGVcYXBwZW5kaXhub3t/bm8BMjk5Myw5ODU2NgotXGVsc2UgXGlmbnVtIFxzdWJzZWNubz0w IFNlY3Rpb25ceHJlZnRpZSdjaGFyXHRoZVxhcHBlbmRpeG5vLlx0aGVcc2Vjbm8gJX9uby5cdGhl XHNlY25vATI5OTQsOTg2MjEKLVNlY3Rpb25ceHJlZnRpZSdjaGFyXHRoZVxhcHBlbmRpeG5vLlx0 aGVcc2Vjbm8uXHRoZVxzdWJzZWNubyAlf25vLlx0aGVcc2Vjbm8uXHRoZVxzdWJzZWNubwEyOTk2 LDk4NzI1Ci1TZWN0aW9uXHhyZWZ0aWUnY2hhclx0aGVcYXBwZW5kaXhuby5cdGhlXHNlY25vLlx0 aGVcc3Vic2Vjbm8uXHRoZVxzdWJzdWJzZWNubyAlf25vLlx0aGVcc2Vjbm8uXHRoZVxzdWJzZWNu by5cdGhlXHN1YnN1YnNlY25vATI5OTgsOTg3OTYKLSAgXGRlZlxsaW5lbnVtYmVye39cbGluZW51 bWJlcgEzMDA5LDk5MTM1Ci1cZGVmXHJlZngjMSMye39ccmVmeAEzMDE1LDk5MzE5Ci1cZGVmXHhy ZGVmICMxIzJ7f1x4cmRlZgEzMDM3LDk5OTQ1Ci1cZGVmXHJlYWRhdXhmaWxle39ccmVhZGF1eGZp bGUBMzA0MCwxMDAwMzAKLVxkZWZcc3VwZXJlamVjdHt/XHN1cGVyZWplY3QBMzExMCwxMDE4MTEK LVxmb290c3RydXRccGFyaW5kZW50PVxkZWZhdWx0cGFyaW5kZW50XGhhbmdcdGV4dGluZGVudHt/ YXVsdHBhcmluZGVudFxoYW5nXHRleHRpbmRlbnQBMzEzMSwxMDI0OTYKLVxkZWZcb3BlbmluZGlj ZXN7f1xvcGVuaW5kaWNlcwEzMTM5LDEwMjY4MgorXGVsc2UgXGlmbnVtIFxzdWJzZWNubz0wIFNl Y3Rpb25ceHJlZnRpZSdjaGFyXHRoZVxhcHBlbmRpeG5vLlx0aGVcc2Vjbm8gJX9uby5cdGhlATI5 OTQsOTg2MjEKK1NlY3Rpb25ceHJlZnRpZSdjaGFyXHRoZVxhcHBlbmRpeG5vLlx0aGVcc2Vjbm8u XHRoZVxzdWJzZWNubyAlf25vLlx0aGUBMjk5Niw5ODcyNQorU2VjdGlvblx4cmVmdGllJ2NoYXJc dGhlXGFwcGVuZGl4bm8uXHRoZVxzZWNuby5cdGhlXHN1YnNlY25vLlx0aGVcc3Vic3Vic2Vjbm8g JX9uby5cdGhlATI5OTgsOTg3OTYKK1xnZGVmXHhyZWZ0aWV7f3hyZWZ0aWUBMzAwMSw5ODg5MQor ICBcbGV0XGxpbmVudW1iZXIgPSBcZW1wdHkgJSBOb24tMy4wLn9saW5lbnVtYmVyATMwMDcsOTkw OTEKKyAgXGRlZlxsaW5lbnVtYmVye39saW5lbnVtYmVyATMwMDksOTkxMzUKK1xkZWZccmVmeCMx IzJ7f3JlZngBMzAxNSw5OTMxOQorXGRlZlx4cmRlZiAjMSMye394cmRlZgEzMDM3LDk5OTQ1Cit7 XGNhdGNvZGVgXCc9XG90aGVyXGV4cGFuZGFmdGVyIFxnZGVmIFxjc25hbWUgWCMxXGVuZGNzbmFt ZSB7f2NzbmFtZQEzMDM4LDk5OTYyCitcZGVmXHJlYWRhdXhmaWxle39yZWFkYXV4ZmlsZQEzMDQw LDEwMDAzMAorXGRlZlxzdXBlcmVqZWN0e39zdXBlcmVqZWN0ATMxMTAsMTAxODExCitcbGV0XGZv b3Rub3Rlc3R5bGU9XGNvbW1lbnR/Zm9vdG5vdGVzdHlsZQEzMTEzLDEwMTkxOAorXGxldFxwdGV4 Zm9vdG5vdGU9XGZvb3Rub3Rlf3B0ZXhmb290bm90ZQEzMTE1LDEwMTk0NworXGxvbmdcZ2RlZlxm b290bm90ZSAjMXt/Zm9vdG5vdGUBMzExOCwxMDE5OTMKK1xlZGVmXHRoaXNmb290bm97f3RoaXNm b290bm8BMzEyMCwxMDIwNjAKK1xsZXRcQHNmXGVtcHR5f0BzZgEzMTIxLDEwMjEwMAorXGlmaG1v ZGVcZWRlZlxAc2Z7f0BzZgEzMTIyLDEwMjExNQorXGxvbmdcZ2RlZlxmb290bm90ZXp6eiAjMXt/ Zm9vdG5vdGV6enoBMzEyNiwxMDIyMjgKK1xmb290c3RydXRccGFyaW5kZW50PVxkZWZhdWx0cGFy aW5kZW50XGhhbmdcdGV4dGluZGVudHt/YXVsdHBhcmluZGVudFxoYW5nATMxMzEsMTAyNDk2Citc ZGVmXG9wZW5pbmRpY2Vze39vcGVuaW5kaWNlcwEzMTM5LDEwMjY4MgorXG5ld2RpbWVuXGRlZmF1 bHRwYXJpbmRlbnQgXGRlZmF1bHRwYXJpbmRlbnQgPSAxNXB0f2F1bHRwYXJpbmRlbnQBMzE1MSwx MDI5MDcKIFxuZXdkaW1lblxkZWZhdWx0cGFyaW5kZW50IFxkZWZhdWx0cGFyaW5kZW50ID0gMTVw dH9hdWx0cGFyaW5kZW50ATMxNTEsMTAyOTA3CiBccGFyaW5kZW50ID0gXGRlZmF1bHRwYXJpbmRl bnR/YXVsdHBhcmluZGVudAEzMTUyLDEwMjk1OQotXGRlZlxzbWFsbGJvb2t7f1xzbWFsbGJvb2sB MzE3NSwxMDM2ODMKLVxnbG9iYWxcZGVmXEVzbWFsbGV4YW1wbGV7f1xFc21hbGxleGFtcGxlATMx OTIsMTA0MTEwCi1cZGVmXGFmb3VycGFwZXJ7f1xhZm91cnBhcGVyATMxOTYsMTA0MjAxCi1cZGVm XGZpbmFsb3V0e39cZmluYWxvdXQBMzIyNCwxMDUwMDkKLVxkZWZcbm9ybWFsZG91YmxlcXVvdGV7 f1xub3JtYWxkb3VibGVxdW90ZQEzMjM1LDEwNTI3MAotXGRlZlxub3JtYWx0aWxkZXt/XG5vcm1h bHRpbGRlATMyMzYsMTA1Mjk2Ci1cZGVmXG5vcm1hbGNhcmV0e39cbm9ybWFsY2FyZXQBMzIzNywx MDUzMTYKLVxkZWZcbm9ybWFsdW5kZXJzY29yZXt/XG5vcm1hbHVuZGVyc2NvcmUBMzIzOCwxMDUz MzYKLVxkZWZcbm9ybWFsdmVydGljYWxiYXJ7f1xub3JtYWx2ZXJ0aWNhbGJhcgEzMjM5LDEwNTM2 MQotXGRlZlxub3JtYWxsZXNze39cbm9ybWFsbGVzcwEzMjQwLDEwNTM4NwotXGRlZlxub3JtYWxn cmVhdGVye39cbm9ybWFsZ3JlYXRlcgEzMjQxLDEwNTQwNgotXGRlZlxub3JtYWxwbHVze39cbm9y bWFscGx1cwEzMjQyLDEwNTQyOAotXGRlZlxpZnVzaW5ndHQjMSMye39caWZ1c2luZ3R0ATMyNTMs MTA1OTIwCi1cZGVmXGFjdGl2ZWRvdWJsZXF1b3Rle39cYWN0aXZlZG91YmxlcXVvdGUBMzI2MSwx MDYyNDgKK1xkZWZcc21hbGxib29re39zbWFsbGJvb2sBMzE3NSwxMDM2ODMKK1xnbG9iYWxcbGV0 XHNtYWxsbGlzcD1cc21hbGxsaXNweH9zbWFsbGxpc3ABMzE5MCwxMDQwMzkKK1xnbG9iYWxcbGV0 XHNtYWxsZXhhbXBsZT1cc21hbGxsaXNweH9zbWFsbGV4YW1wbGUBMzE5MSwxMDQwNzMKK1xnbG9i YWxcZGVmXEVzbWFsbGV4YW1wbGV7f0VzbWFsbGV4YW1wbGUBMzE5MiwxMDQxMTAKK1xkZWZcYWZv dXJwYXBlcnt/YWZvdXJwYXBlcgEzMTk2LDEwNDIwMQorXGRlZlxmaW5hbG91dHt/ZmluYWxvdXQB MzIyNCwxMDUwMDkKK1xkZWZcbm9ybWFsZG91YmxlcXVvdGV7f25vcm1hbGRvdWJsZXF1b3RlATMy MzUsMTA1MjcwCitcZGVmXG5vcm1hbHRpbGRle39ub3JtYWx0aWxkZQEzMjM2LDEwNTI5NgorXGRl Zlxub3JtYWxjYXJldHt/bm9ybWFsY2FyZXQBMzIzNywxMDUzMTYKK1xkZWZcbm9ybWFsdW5kZXJz Y29yZXt/bm9ybWFsdW5kZXJzY29yZQEzMjM4LDEwNTMzNgorXGRlZlxub3JtYWx2ZXJ0aWNhbGJh cnt/bm9ybWFsdmVydGljYWxiYXIBMzIzOSwxMDUzNjEKK1xkZWZcbm9ybWFsbGVzc3t/bm9ybWFs bGVzcwEzMjQwLDEwNTM4NworXGRlZlxub3JtYWxncmVhdGVye39ub3JtYWxncmVhdGVyATMyNDEs MTA1NDA2CitcZGVmXG5vcm1hbHBsdXN7f25vcm1hbHBsdXMBMzI0MiwxMDU0MjgKK1xkZWZcaWZ1 c2luZ3R0IzEjMnt/aWZ1c2luZ3R0ATMyNTMsMTA1OTIwCitcZGVmXGFjdGl2ZWRvdWJsZXF1b3Rl e39hY3RpdmVkb3VibGVxdW90ZQEzMjYxLDEwNjI0OAorXGxldCI9XGFjdGl2ZWRvdWJsZXF1b3Rl fyIBMzI2MiwxMDYyODkKIFxkZWZ+e39+ATMyNjQsMTA2MzM0CiBcZGVmXnt/XgEzMjY3LDEwNjM5 NQogXGRlZl97f18BMzI3MCwxMDY0MzQKLVxkZWZcX3t/XF8BMzI3MiwxMDY1MDgKLVxkZWZcbHZ2 bW9kZXt/XGx2dm1vZGUBMzI3OSwxMDY4NDUKK1xkZWZcX3t/XwEzMjcyLDEwNjUwOAorXGRlZlxs dnZtb2Rle39sdnZtb2RlATMyNzksMTA2ODQ1CiBcZGVmfHt/fAEzMjgyLDEwNjg5NQogXGRlZjx7 fzwBMzI4NSwxMDY5NTgKIFxkZWY+e38+ATMyODgsMTA3MDE1CiBcZGVmK3t/KwEzMjkwLDEwNzA1 MwotXGRlZlx0dXJub2ZmYWN0aXZle39cdHVybm9mZmFjdGl2ZQEzMjk2LDEwNzIxNAorXGRlZlx0 dXJub2ZmYWN0aXZle390dXJub2ZmYWN0aXZlATMyOTYsMTA3MjE0CitcZGVmXHR1cm5vZmZhY3Rp dmV7XGxldCI9XG5vcm1hbGRvdWJsZXF1b3RlfyIBMzI5NiwxMDcyMTQKK1xsZXR+PVxub3JtYWx0 aWxkZX9+ATMyOTcsMTA3MjU4CitcbGV0Xj1cbm9ybWFsY2FyZXR/XgEzMjk4LDEwNzI3NworXGxl dF89XG5vcm1hbHVuZGVyc2NvcmV/XwEzMjk5LDEwNzI5NgorXGxldHw9XG5vcm1hbHZlcnRpY2Fs YmFyf3wBMzMwMCwxMDczMjAKK1xsZXQ8PVxub3JtYWxsZXNzfzwBMzMwMSwxMDczNDUKK1xsZXQ+ PVxub3JtYWxncmVhdGVyfz4BMzMwMiwxMDczNjMKK1xsZXQrPVxub3JtYWxwbHVzfX8rATMzMDMs MTA3Mzg0CiBcZ2xvYmFsXGRlZj17fz0BMzMwNywxMDc1MDAKLVxkZWZcbm9ybWFsYmFja3NsYXNo e39cbm9ybWFsYmFja3NsYXNoATMzMjEsMTA3ODgyCitcZGVmXG5vcm1hbGJhY2tzbGFzaHt/bm9y bWFsYmFja3NsYXNoATMzMjEsMTA3ODgyCiAMCiBtZXJjLXNyYy9hY2N1bXVsYXRvci5tLDQ5MTUK IDotIGludGVyZmFjZX8xNDYsNTM3MQpkaWZmIC0tZ2l0IGEvdGVzdC9tYW51YWwvZXRhZ3MvRVRB R1MuZ29vZF8zIGIvdGVzdC9tYW51YWwvZXRhZ3MvRVRBR1MuZ29vZF8zCmluZGV4IDE1ZWQ3ODU1 YjMwLi43OWVlNzBmZDFkMCAxMDA2NDQKLS0tIGEvdGVzdC9tYW51YWwvZXRhZ3MvRVRBR1MuZ29v ZF8zCisrKyBiL3Rlc3QvbWFudWFsL2V0YWdzL0VUQUdTLmdvb2RfMwpAQCAtMzU1NSw4ICszNTU1 LDggQEAgc2NtLXNyYy90ZXN0LnNjbSwyNjAKIChkZWZpbmUgKCgoKChjdXJyeS10ZXN0IH8xNCwy MDUKIChkZWZpbmUtc3ludGF4IHRlc3QtYmVnaW5/MTcsMjY1CiAMCi10ZXgtc3JjL3Rlc3RlbnYu dGV4LDUyCi1cbmV3Y29tbWFuZHtcbm19f1xubQE0LDc3Cit0ZXgtc3JjL3Rlc3RlbnYudGV4LDUx CitcbmV3Y29tbWFuZHtcbm19f25tATQsNzcKIFxzZWN0aW9ue2JsYWh9f2JsYWgBOCwxMzkKIAwK IHRleC1zcmMvZ3ppcC50ZXhpLDMwMwpAQCAtMzU3MSw3MjIgKzM1NzEsMTE0MiBAQCB0ZXgtc3Jj L2d6aXAudGV4aSwzMDMKIEBub2RlIFByb2JsZW1zLH80NjAsMTY3NjkKIEBub2RlIENvbmNlcHQg SW5kZXgsf0NvbmNlcHQgSW5kZXgBNDczLDE3Mjg5CiAMCi10ZXgtc3JjL3RleGluZm8udGV4LDMw NjI3Ci1cZGVmXHRleGluZm92ZXJzaW9ue39cdGV4aW5mb3ZlcnNpb24BMjYsMTAzNQotXGRlZlx0 aWV7f1x0aWUBNDksMTUyNgotXGRlZlxnbG9nZ2luZ2FsbHt/XGdsb2dnaW5nYWxsATcyLDIyNzYK LVxkZWZcbG9nZ2luZ2FsbHt/XGxvZ2dpbmdhbGwBNzMsMjM0NQotXGRlZlxvbmVwYWdlb3V0IzF7 f1xvbmVwYWdlb3V0ATk5LDMyODIKLVxkZWZcY3JvcHBhZ2VvdXQjMXt/XGNyb3BwYWdlb3V0ATEx NSw0MDMyCi1cZGVmXGNyb3BtYXJrc3t/XGNyb3BtYXJrcwExNDIsNTA5MgotXGRlZlxwYWdlYm9k eSMxe39ccGFnZWJvZHkBMTQ0LDUxMzkKLVxkZWZcZXd0b3B7f1xld3RvcAExNTcsNTU5NAotXGRl Zlxuc3RvcHt/XG5zdG9wATE1OCw1NjU4Ci1cZGVmXGV3Ym90e39cZXdib3QBMTYwLDU3NDEKLVxk ZWZcbnNib3R7f1xuc2JvdAExNjEsNTgwNQotXGRlZlxwYXJzZWFyZyAjMXt/XHBhcnNlYXJnATE3 MCw2MTA0Ci1cZGVmXHBhcnNlYXJneHt/XHBhcnNlYXJneAExNzIsNjE4MgotXGRlZlxwYXJzZWFy Z2xpbmV7f1xwYXJzZWFyZ2xpbmUBMTgyLDY0MjIKLVxkZWZcZmx1c2hjcnt/XGZsdXNoY3IBMTg2 LDY1NDMKLVxuZXdpZlxpZkVOViBcRU5WZmFsc2UgXGRlZlxpbkVOVnt/XGluRU5WATE5MCw2NzQy Ci1cZGVmXEVOVmNoZWNre39cRU5WY2hlY2sBMTkxLDY4MDYKLVxvdXRlclxkZWZcYmVnaW57f1xi ZWdpbgExOTgsNzA1MwotXGRlZlxiZWdpbnh4eCAjMXt/XGJlZ2lueHh4ATIwMCw3MDkxCi1cZGVm XGVuZHt/XGVuZAEyMDgsNzM0NgotXGRlZlxlbmR4eHggIzF7f1xlbmR4eHgBMjEwLDczNzQKLVxk ZWZcZXJyb3JFIzF7f1xlcnJvckUBMjE2LDc1NjMKLVxkZWZcc2luZ2xlc3BhY2V7f1xzaW5nbGVz cGFjZQEyMjIsNzc1NwotXGRlZlxAe39cQAEyMzIsNzk4MAotXGRlZlxge39cYAEyMzYsODA4MAot XGRlZlwne39cJwEyMzcsODA5MgotXGRlZlxteWxicmFjZSB7f1xteWxicmFjZQEyNDEsODE0MAot XGRlZlxteXJicmFjZSB7f1xteXJicmFjZQEyNDIsODE3MwotXGRlZlw6e39cOgEyNDcsODI4Nwot XGRlZlwqe39cKgEyNTAsODM0MQotXGRlZlwue39cLgEyNTMsODQxNwotXGRlZlx3IzF7f1x3ATI1 OCw4NjQ4Ci1cZGVmXGdyb3Vwe39cZ3JvdXABMjY4LDkxMzEKLSAgXGRlZlxFZ3JvdXB7f1xFZ3Jv dXABMjczLDkyOTUKLVxkZWZcbmVlZHt/XG5lZWQBMjg5LDk3MzcKLVxkZWZcbmVlZHgjMXt/XG5l ZWR4ATMwMCwxMDAxNAotXGRlZlxkb3Rze39cZG90cwEzMzksMTE0MDAKLVxkZWZccGFnZXt/XHBh Z2UBMzQzLDExNDY0Ci1cZGVmXGV4ZGVudHt/XGV4ZGVudAEzNTMsMTE3OTEKLVxkZWZcZXhkZW50 eXl5ICMxe39cZXhkZW50eXl5ATM1NCwxMTgyNAotXGRlZlxub2ZpbGxleGRlbnR7f1xub2ZpbGxl eGRlbnQBMzU3LDExOTY4Ci1cZGVmXG5vZmlsbGV4ZGVudHl5eSAjMXt/XG5vZmlsbGV4ZGVudHl5 eQEzNTgsMTIwMTMKLVxkZWZcaW5jbHVkZXt/XGluY2x1ZGUBMzY1LDEyMTk3Ci1cZGVmXGluY2x1 ZGV6enogIzF7f1xpbmNsdWRlenp6ATM2NiwxMjIzMgotXGRlZlx0aGlzZmlsZXt/XHRoaXNmaWxl ATM2OSwxMjI4MwotXGRlZlxjZW50ZXJ7f1xjZW50ZXIBMzczLDEyMzQ2Ci1cZGVmXGNlbnRlcnp6 eiAjMXt/XGNlbnRlcnp6egEzNzQsMTIzNzkKLVxkZWZcc3B7f1xzcAEzODAsMTI1MjEKLVxkZWZc c3B4eHggIzF7f1xzcHh4eAEzODEsMTI1NDYKLVxkZWZcY29tbWVudHt/XGNvbW1lbnQBMzg3LDEy NzIwCi1cZGVmXGNvbW1lbnR4eHggIzF7f1xjb21tZW50eHh4ATM5MCwxMjgxNwotXGRlZlxpZ25v cmVzZWN0aW9uc3t/XGlnbm9yZXNlY3Rpb25zATM5NiwxMjk4NgotXGxldFxjaGFwdGVyPVxyZWxh eH89XHJlbGF4ATM5NywxMzAwOAotXGxldFxzZWN0aW9uPVxyZWxheH89XHJlbGF4ATQwNiwxMzI1 MwotXGxldFxzdWJzZWN0aW9uPVxyZWxheH89XHJlbGF4ATQwOSwxMzMxNAotXGxldFxzdWJzdWJz ZWN0aW9uPVxyZWxheH89XHJlbGF4ATQxMCwxMzMzNwotXGxldFxhcHBlbmRpeD1ccmVsYXh/PVxy ZWxheAE0MTEsMTMzNjMKLVxsZXRcYXBwZW5kaXhzZWM9XHJlbGF4f3NlYz1ccmVsYXgBNDEyLDEz Mzg0Ci1cbGV0XGFwcGVuZGl4c2VjdGlvbj1ccmVsYXh/c2VjdGlvbj1ccmVsYXgBNDEzLDEzNDA4 Ci1cbGV0XGFwcGVuZGl4c3Vic2VjPVxyZWxheH9zdWJzZWM9XHJlbGF4ATQxNCwxMzQzNgotXGxl dFxhcHBlbmRpeHN1YnNlY3Rpb249XHJlbGF4f3N1YnNlY3Rpb249XHJlbGF4ATQxNSwxMzQ2Mwot XGxldFxhcHBlbmRpeHN1YnN1YnNlYz1ccmVsYXh/c3Vic3Vic2VjPVxyZWxheAE0MTYsMTM0OTQK LVxsZXRcYXBwZW5kaXhzdWJzdWJzZWN0aW9uPVxyZWxheH9zdWJzdWJzZWN0aW9uPVxyZWxheAE0 MTcsMTM1MjQKLVxkZWZcaWdub3Jle39caWdub3JlATQyMywxMzYyNgotXGxvbmdcZGVmXGlnbm9y ZXh4eCAjMVxlbmQgaWdub3Jle39caWdub3JleHh4ATQyNywxMzc2NgotXGRlZlxkaXJlbnRyeXt/ XGRpcmVudHJ5ATQyOSwxMzgyNQotXGxvbmdcZGVmXGRpcmVudHJ5eHh4ICMxXGVuZCBkaXJlbnRy eXt/XGRpcmVudHJ5eHh4ATQzMCwxMzg2NAotXGRlZlxpZnNldHt/XGlmc2V0ATQzNCwxMzk3NAot XGRlZlxpZnNldHh4eCAjMXt/XGlmc2V0eHh4ATQzNiwxNDAzMgotXGRlZlxFaWZzZXR7f1xFaWZz ZXQBNDQwLDE0MTU5Ci1cZGVmXGlmc2V0ZmFpbHt/XGlmc2V0ZmFpbAE0NDEsMTQxNzMKLVxsb25n XGRlZlxpZnNldGZhaWx4eHggIzFcZW5kIGlmc2V0e39caWZzZXRmYWlseHh4ATQ0MiwxNDIyOQot XGRlZlxpZmNsZWFye39caWZjbGVhcgE0NDQsMTQyOTAKLVxkZWZcaWZjbGVhcnh4eCAjMXt/XGlm Y2xlYXJ4eHgBNDQ2LDE0MzUyCi1cZGVmXEVpZmNsZWFye39cRWlmY2xlYXIBNDUwLDE0NDgzCi1c ZGVmXGlmY2xlYXJmYWlse39caWZjbGVhcmZhaWwBNDUxLDE0NDk5Ci1cbG9uZ1xkZWZcaWZjbGVh cmZhaWx4eHggIzFcZW5kIGlmY2xlYXJ7f1xpZmNsZWFyZmFpbHh4eAE0NTIsMTQ1NTkKLVxkZWZc c2V0e39cc2V0ATQ1NiwxNDcxMAotXGRlZlxzZXR4eHggIzF7f1xzZXR4eHgBNDU3LDE0NzM3Ci1c ZGVmXGNsZWFye39cY2xlYXIBNDYwLDE0Nzk5Ci1cZGVmXGNsZWFyeHh4ICMxe39cY2xlYXJ4eHgB NDYxLDE0ODMwCi1cZGVmXGlmdGV4e39caWZ0ZXgBNDY2LDE0OTQ3Ci1cZGVmXEVpZnRleHt/XEVp ZnRleAE0NjcsMTQ5NjAKLVxkZWZcaWZpbmZve39caWZpbmZvATQ2OCwxNDk3NAotXGxvbmdcZGVm XGlmaW5mb3h4eCAjMVxlbmQgaWZpbmZve39caWZpbmZveHh4ATQ2OSwxNTAyNAotXGxvbmdcZGVm XG1lbnUgIzFcZW5kIG1lbnV7f1xtZW51ATQ3MSwxNTA4MwotXGRlZlxhc2lzIzF7f1xhc2lzATQ3 MiwxNTExMgotXGRlZlxtYXRoIzF7f1xtYXRoATQ4NSwxNTY1NQotXGRlZlxub2Rle39cbm9kZQE0 ODcsMTU2OTkKLVxkZWZcbm9kZXp6eiMxe39cbm9kZXp6egE0ODgsMTU3MzcKLVxkZWZcbm9kZXh4 eFsjMSwjMl17f1xub2RleHh4WwE0ODksMTU3NjgKLVxkZWZcZG9ub2RlcmVme39cZG9ub2RlcmVm ATQ5MiwxNTgzMAotXGRlZlx1bm51bWJub2RlcmVme39cdW5udW1ibm9kZXJlZgE0OTYsMTU5NTEK LVxkZWZcYXBwZW5kaXhub2RlcmVme39cYXBwZW5kaXhub2RlcmVmATUwMCwxNjA4MgordGV4LXNy Yy90ZXhpbmZvLnRleCw1NTIzNgorXGRlZlx0ZXhpbmZvdmVyc2lvbnt/dGV4aW5mb3ZlcnNpb24B MjYsMTAzNQorXGxldFxwdGV4bGJyYWNlPVx7f3B0ZXhsYnJhY2UBMzUsMTMwOAorXGxldFxwdGV4 cmJyYWNlPVx9f3B0ZXhyYnJhY2UBMzYsMTMyNworXGxldFxwdGV4ZG90cz1cZG90c39wdGV4ZG90 cwEzNywxMzQ2CitcbGV0XHB0ZXhkb3Q9XC5/cHRleGRvdAEzOCwxMzY2CitcbGV0XHB0ZXhzdGFy PVwqf3B0ZXhzdGFyATM5LDEzODIKK1xsZXRccHRleGVuZD1cZW5kf3B0ZXhlbmQBNDAsMTM5OQor XGxldFxwdGV4YnVsbGV0PVxidWxsZXR/cHRleGJ1bGxldAE0MSwxNDE3CitcbGV0XHB0ZXhiPVxi f3B0ZXhiATQyLDE0NDEKK1xsZXRccHRleGM9XGN/cHRleGMBNDMsMTQ1NQorXGxldFxwdGV4aT1c aX9wdGV4aQE0NCwxNDY5CitcbGV0XHB0ZXh0PVx0f3B0ZXh0ATQ1LDE0ODMKK1xsZXRccHRleGw9 XGx/cHRleGwBNDYsMTQ5NworXGxldFxwdGV4TD1cTH9wdGV4TAE0NywxNTExCitcZGVmXHRpZXt/ dGllATQ5LDE1MjYKK1xkZWZcZ2xvZ2dpbmdhbGx7f2dsb2dnaW5nYWxsATcyLDIyNzYKK1xkZWZc bG9nZ2luZ2FsbHt/bG9nZ2luZ2FsbAE3MywyMzQ1CitcZGVmXG9uZXBhZ2VvdXQjMXt/b25lcGFn ZW91dAE5OSwzMjgyCitcc2hpcG91dFx2Ym94e3tcbGV0XGhzaXplPVxwYWdld2lkdGggXG1ha2Vo ZWFkbGluZX1/aHNpemUBMTAzLDM0ODkKK3tcbGV0XGhzaXplPVxwYWdld2lkdGggXG1ha2Vmb290 bGluZX1/aHNpemUBMTA0LDM1NTYKK1xkZWZcY3JvcHBhZ2VvdXQjMXt/Y3JvcHBhZ2VvdXQBMTE1 LDQwMzIKKwkJCXtcbGV0XGhzaXplPVxwYWdld2lkdGggXG1ha2VoZWFkbGluZX1/aHNpemUBMTI2 LDQ1MTEKKwkJCXtcbGV0XGhzaXplPVxwYWdld2lkdGggXG1ha2Vmb290bGluZX1/aHNpemUBMTI4 LDQ1NjkKK1xkZWZcY3JvcG1hcmtze39jcm9wbWFya3MBMTQyLDUwOTIKK1xkZWZcY3JvcG1hcmtz e1xsZXRcb25lcGFnZW91dD1cY3JvcHBhZ2VvdXQgfX9vbmVwYWdlb3V0ATE0Miw1MDkyCitcZGVm XHBhZ2Vib2R5IzF7f3BhZ2Vib2R5ATE0NCw1MTM5CitcZ2RlZlxwYWdlY29udGVudHMjMXt/cGFn ZWNvbnRlbnRzATE0Niw1MjIwCitcZGVmXGV3dG9we39ld3RvcAExNTcsNTU5NAorXGRlZlxuc3Rv cHt/bnN0b3ABMTU4LDU2NTgKK1xkZWZcZXdib3R7f2V3Ym90ATE2MCw1NzQxCitcZGVmXG5zYm90 e39uc2JvdAExNjEsNTgwNQorXGRlZlxwYXJzZWFyZyAjMXt/cGFyc2VhcmcBMTcwLDYxMDQKK1xk ZWZccGFyc2VhcmcgIzF7XGxldFxuZXh0PSMxXGJlZ2luZ3JvdXBcb2JleWxpbmVzXGZ1dHVyZWxl dFx0ZW1wXHBhcnNlYXJneH1/bmV4dAExNzAsNjEwNAorXGRlZlxwYXJzZWFyZ3h7f3BhcnNlYXJn eAExNzIsNjE4MgorXGdkZWZccGFyc2VhcmdkaXNjYXJkc3BhY2Uge39wYXJzZWFyZ2Rpc2NhcmRz cGFjZQExNzgsNjMyMQorXGdkZWZcb2JleWVkc3BhY2V7f29iZXllZHNwYWNlATE4MCw2Mzk5Citc ZGVmXHBhcnNlYXJnbGluZXt/cGFyc2VhcmdsaW5lATE4Miw2NDIyCitcZ2RlZlxwYXJzZWFyZ2xp bmV4ICMxXl5Ne39wYXJzZWFyZ2xpbmV4ATE4NCw2NDkzCitcZGVmXGZsdXNoY3J7f2ZsdXNoY3IB MTg2LDY1NDMKK1xkZWZcZmx1c2hjcntcaWZ4XHBhclxsaXNwcGFyIFxkZWZcbmV4dCMjMXt/bmV4 dAExODYsNjU0MworXGRlZlxmbHVzaGNye1xpZnhccGFyXGxpc3BwYXIgXGRlZlxuZXh0IyMxe31c ZWxzZSBcbGV0XG5leHQ9XHJlbGF4IFxmaSBcbmV4dH1/bmV4dAExODYsNjU0MworXG5ld2lmXGlm RU5WIFxFTlZmYWxzZSBcZGVmXGluRU5We39pbkVOVgExOTAsNjc0MgorXGRlZlxFTlZjaGVja3t/ RU5WY2hlY2sBMTkxLDY4MDYKK1xvdXRlclxkZWZcYmVnaW57f2JlZ2luATE5OCw3MDUzCitcZGVm XGJlZ2lueHh4ICMxe39iZWdpbnh4eAEyMDAsNzA5MQorXGRlZlxlbmR7f2VuZAEyMDgsNzM0Ngor XGRlZlxlbmR4eHggIzF7f2VuZHh4eAEyMTAsNzM3NAorXGRlZlxlcnJvckUjMXt/ZXJyb3JFATIx Niw3NTYzCitcZGVmXHNpbmdsZXNwYWNle39zaW5nbGVzcGFjZQEyMjIsNzc1NworXGRlZlxAe39A ATIzMiw3OTgwCitcZGVmXGB7f2ABMjM2LDgwODAKK1xkZWZcJ3t/JwEyMzcsODA5MgorXGRlZlxt eWxicmFjZSB7f215bGJyYWNlATI0MSw4MTQwCitcZGVmXG15cmJyYWNlIHt/bXlyYnJhY2UBMjQy LDgxNzMKK1xsZXRcez1cbXlsYnJhY2V/ewEyNDMsODIwNgorXGxldFx9PVxteXJicmFjZX99ATI0 NCw4MjIzCitcZGVmXDp7fzoBMjQ3LDgyODcKK1xkZWZcKnt/KgEyNTAsODM0MQorXGRlZlwue38u ATI1Myw4NDE3CitcZGVmXHcjMXt/dwEyNTgsODY0OAorXGRlZlxncm91cHt/Z3JvdXABMjY4LDkx MzEKKyAgXGRlZlxFZ3JvdXB7f0Vncm91cAEyNzMsOTI5NQorXGRlZlxuZWVke39uZWVkATI4OSw5 NzM3CitcZGVmXG5lZWR4IzF7f25lZWR4ATMwMCwxMDAxNAorXGxldFxiciA9IFxwYXJ/YnIBMzM1 LDExMzU1CitcZGVmXGRvdHN7f2RvdHMBMzM5LDExNDAwCitcZGVmXHBhZ2V7f3BhZ2UBMzQzLDEx NDY0CitcZGVmXGV4ZGVudHt/ZXhkZW50ATM1MywxMTc5MQorXGRlZlxleGRlbnR5eXkgIzF7f2V4 ZGVudHl5eQEzNTQsMTE4MjQKK1xkZWZcbm9maWxsZXhkZW50e39ub2ZpbGxleGRlbnQBMzU3LDEx OTY4CitcZGVmXG5vZmlsbGV4ZGVudHl5eSAjMXt/bm9maWxsZXhkZW50eXl5ATM1OCwxMjAxMwor XGRlZlxpbmNsdWRle39pbmNsdWRlATM2NSwxMjE5NworXGRlZlxpbmNsdWRlenp6ICMxe39pbmNs dWRlenp6ATM2NiwxMjIzMgorXGRlZlxpbmNsdWRlenp6ICMxe3tcZGVmXHRoaXNmaWxle390aGlz ZmlsZQEzNjYsMTIyMzIKK1xkZWZcdGhpc2ZpbGV7f3RoaXNmaWxlATM2OSwxMjI4MworXGRlZlxj ZW50ZXJ7f2NlbnRlcgEzNzMsMTIzNDYKK1xkZWZcY2VudGVyenp6ICMxe39jZW50ZXJ6enoBMzc0 LDEyMzc5CitcZGVmXHNwe39zcAEzODAsMTI1MjEKK1xkZWZcc3B4eHggIzF7f3NweHh4ATM4MSwx MjU0NgorXGRlZlxjb21tZW50e39jb21tZW50ATM4NywxMjcyMAorXGRlZlxjb21tZW50eHh4ICMx e39jb21tZW50eHh4ATM5MCwxMjgxNworXGxldFxjPVxjb21tZW50f2MBMzkyLDEyODgzCitcZGVm XGlnbm9yZXNlY3Rpb25ze39pZ25vcmVzZWN0aW9ucwEzOTYsMTI5ODYKK1xsZXRcY2hhcHRlcj1c cmVsYXh/Y2hhcHRlcgEzOTcsMTMwMDgKK1xsZXRcdW5udW1iZXJlZD1ccmVsYXh/dW5udW1iZXJl ZAEzOTgsMTMwMjgKK1xsZXRcdG9wPVxyZWxheH90b3ABMzk5LDEzMDUxCitcbGV0XHVubnVtYmVy ZWRzZWM9XHJlbGF4f3VubnVtYmVyZWRzZWMBNDAwLDEzMDY3CitcbGV0XHVubnVtYmVyZWRzZWN0 aW9uPVxyZWxheH91bm51bWJlcmVkc2VjdGlvbgE0MDEsMTMwOTMKK1xsZXRcdW5udW1iZXJlZHN1 YnNlYz1ccmVsYXh/dW5udW1iZXJlZHN1YnNlYwE0MDIsMTMxMjMKK1xsZXRcdW5udW1iZXJlZHN1 YnNlY3Rpb249XHJlbGF4f3VubnVtYmVyZWRzdWJzZWN0aW9uATQwMywxMzE1MgorXGxldFx1bm51 bWJlcmVkc3Vic3Vic2VjPVxyZWxheH91bm51bWJlcmVkc3Vic3Vic2VjATQwNCwxMzE4NQorXGxl dFx1bm51bWJlcmVkc3Vic3Vic2VjdGlvbj1ccmVsYXh/dW5udW1iZXJlZHN1YnN1YnNlY3Rpb24B NDA1LDEzMjE3CitcbGV0XHNlY3Rpb249XHJlbGF4f3NlY3Rpb24BNDA2LDEzMjUzCitcbGV0XHN1 YnNlYz1ccmVsYXh/c3Vic2VjATQwNywxMzI3MworXGxldFxzdWJzdWJzZWM9XHJlbGF4f3N1YnN1 YnNlYwE0MDgsMTMyOTIKK1xsZXRcc3Vic2VjdGlvbj1ccmVsYXh/c3Vic2VjdGlvbgE0MDksMTMz MTQKK1xsZXRcc3Vic3Vic2VjdGlvbj1ccmVsYXh/c3Vic3Vic2VjdGlvbgE0MTAsMTMzMzcKK1xs ZXRcYXBwZW5kaXg9XHJlbGF4f2FwcGVuZGl4ATQxMSwxMzM2MworXGxldFxhcHBlbmRpeHNlYz1c cmVsYXh/YXBwZW5kaXhzZWMBNDEyLDEzMzg0CitcbGV0XGFwcGVuZGl4c2VjdGlvbj1ccmVsYXh/ YXBwZW5kaXhzZWN0aW9uATQxMywxMzQwOAorXGxldFxhcHBlbmRpeHN1YnNlYz1ccmVsYXh/YXBw ZW5kaXhzdWJzZWMBNDE0LDEzNDM2CitcbGV0XGFwcGVuZGl4c3Vic2VjdGlvbj1ccmVsYXh/YXBw ZW5kaXhzdWJzZWN0aW9uATQxNSwxMzQ2MworXGxldFxhcHBlbmRpeHN1YnN1YnNlYz1ccmVsYXh/ YXBwZW5kaXhzdWJzdWJzZWMBNDE2LDEzNDk0CitcbGV0XGFwcGVuZGl4c3Vic3Vic2VjdGlvbj1c cmVsYXh/YXBwZW5kaXhzdWJzdWJzZWN0aW9uATQxNywxMzUyNAorXGxldFxjb250ZW50cz1ccmVs YXh/Y29udGVudHMBNDE4LDEzNTU4CitcbGV0XHNtYWxsYm9vaz1ccmVsYXh/c21hbGxib29rATQx OSwxMzU3OQorXGxldFx0aXRsZXBhZ2U9XHJlbGF4f3RpdGxlcGFnZQE0MjAsMTM2MDEKK1xkZWZc aWdub3Jle39pZ25vcmUBNDIzLDEzNjI2CitcbG9uZ1xkZWZcaWdub3JleHh4ICMxXGVuZCBpZ25v cmV7f2lnbm9yZXh4eAE0MjcsMTM3NjYKK1xkZWZcZGlyZW50cnl7f2RpcmVudHJ5ATQyOSwxMzgy NQorXGxvbmdcZGVmXGRpcmVudHJ5eHh4ICMxXGVuZCBkaXJlbnRyeXt/ZGlyZW50cnl4eHgBNDMw LDEzODY0CitcZGVmXGlmc2V0e39pZnNldAE0MzQsMTM5NzQKK1xkZWZcaWZzZXR4eHggIzF7f2lm c2V0eHh4ATQzNiwxNDAzMgorXGV4cGFuZGFmdGVyXGlmeFxjc25hbWUgSUYjMVxlbmRjc25hbWVc cmVsYXggXGxldFx0ZW1wPVxpZnNldGZhaWx/dGVtcAE0MzcsMTQwNTkKK1xlbHNlIFxsZXRcdGVt cD1ccmVsYXggXGZpf3RlbXABNDM4LDE0MTI1CitcZGVmXEVpZnNldHt/RWlmc2V0ATQ0MCwxNDE1 OQorXGRlZlxpZnNldGZhaWx7f2lmc2V0ZmFpbAE0NDEsMTQxNzMKK1xsb25nXGRlZlxpZnNldGZh aWx4eHggIzFcZW5kIGlmc2V0e39pZnNldGZhaWx4eHgBNDQyLDE0MjI5CitcZGVmXGlmY2xlYXJ7 f2lmY2xlYXIBNDQ0LDE0MjkwCitcZGVmXGlmY2xlYXJ4eHggIzF7f2lmY2xlYXJ4eHgBNDQ2LDE0 MzUyCitcZXhwYW5kYWZ0ZXJcaWZ4XGNzbmFtZSBJRiMxXGVuZGNzbmFtZVxyZWxheCBcbGV0XHRl bXA9XHJlbGF4f3RlbXABNDQ3LDE0MzgxCitcZWxzZSBcbGV0XHRlbXA9XGlmY2xlYXJmYWlsIFxm aX90ZW1wATQ0OCwxNDQ0MworXGRlZlxFaWZjbGVhcnt/RWlmY2xlYXIBNDUwLDE0NDgzCitcZGVm XGlmY2xlYXJmYWlse39pZmNsZWFyZmFpbAE0NTEsMTQ0OTkKK1xsb25nXGRlZlxpZmNsZWFyZmFp bHh4eCAjMVxlbmQgaWZjbGVhcnt/aWZjbGVhcmZhaWx4eHgBNDUyLDE0NTU5CitcZGVmXHNldHt/ c2V0ATQ1NiwxNDcxMAorXGRlZlxzZXR4eHggIzF7f3NldHh4eAE0NTcsMTQ3MzcKK1xleHBhbmRh ZnRlclxsZXRcY3NuYW1lIElGIzFcZW5kY3NuYW1lPVxzZXR9f2NzbmFtZQE0NTgsMTQ3NTMKK1xk ZWZcY2xlYXJ7f2NsZWFyATQ2MCwxNDc5OQorXGRlZlxjbGVhcnh4eCAjMXt/Y2xlYXJ4eHgBNDYx LDE0ODMwCitcZXhwYW5kYWZ0ZXJcbGV0XGNzbmFtZSBJRiMxXGVuZGNzbmFtZT1ccmVsYXh9f2Nz bmFtZQE0NjIsMTQ4NDgKK1xkZWZcaWZ0ZXh7f2lmdGV4ATQ2NiwxNDk0NworXGRlZlxFaWZ0ZXh7 f0VpZnRleAE0NjcsMTQ5NjAKK1xkZWZcaWZpbmZve39pZmluZm8BNDY4LDE0OTc0CitcbG9uZ1xk ZWZcaWZpbmZveHh4ICMxXGVuZCBpZmluZm97f2lmaW5mb3h4eAE0NjksMTUwMjQKK1xsb25nXGRl ZlxtZW51ICMxXGVuZCBtZW51e39tZW51ATQ3MSwxNTA4MworXGRlZlxhc2lzIzF7f2FzaXMBNDcy LDE1MTEyCitcbGV0XGltcGxpY2l0bWF0aCA9ICR/aW1wbGljaXRtYXRoATQ4NCwxNTYzMworXGRl ZlxtYXRoIzF7f21hdGgBNDg1LDE1NjU1CitcZGVmXG5vZGV7f25vZGUBNDg3LDE1Njk5CitcZGVm XG5vZGV6enojMXt/bm9kZXp6egE0ODgsMTU3MzcKK1xkZWZcbm9kZXh4eFsjMSwjMl17f25vZGV4 eHgBNDg5LDE1NzY4CitcZGVmXG5vZGV4eHhbIzEsIzJde1xnZGVmXGxhc3Rub2Rle39sYXN0bm9k ZQE0ODksMTU3NjgKK1xsZXRcbGFzdG5vZGU9XHJlbGF4f2xhc3Rub2RlATQ5MCwxNTgwOAorXGRl Zlxkb25vZGVyZWZ7f2Rvbm9kZXJlZgE0OTIsMTU4MzAKK1xsZXRcbGFzdG5vZGU9XHJlbGF4fX9s YXN0bm9kZQE0OTQsMTU5MjgKK1xkZWZcdW5udW1ibm9kZXJlZnt/dW5udW1ibm9kZXJlZgE0OTYs MTU5NTEKK1xsZXRcbGFzdG5vZGU9XHJlbGF4fX9sYXN0bm9kZQE0OTgsMTYwNTkKK1xkZWZcYXBw ZW5kaXhub2RlcmVme39hcHBlbmRpeG5vZGVyZWYBNTAwLDE2MDgyCiBcZXhwYW5kYWZ0ZXJcZXhw YW5kYWZ0ZXJcZXhwYW5kYWZ0ZXJcYXBwZW5kaXhzZXRyZWZ7f3NldHJlZgE1MDEsMTYxMjgKLVxs ZXRccmVmaWxsPVxyZWxheH9pbGw9XHJlbGF4ATUwNCwxNjIxNwotXGRlZlxzZXRmaWxlbmFtZXt/ XHNldGZpbGVuYW1lATUwOSwxNjQzMQotXG91dGVyXGRlZlxieWV7f1xieWUBNTE4LDE2Njc3Ci1c ZGVmXGluZm9yZWYgIzF7f1xpbmZvcmVmATUyMCwxNjczMwotXGRlZlxpbmZvcmVmenp6ICMxLCMy LCMzLCM0Kip7f1xpbmZvcmVmenp6ATUyMSwxNjc3MQotXGRlZlxsb3Nlc3BhY2UgIzF7f1xsb3Nl c3BhY2UBNTIzLDE2ODY4Ci1cZGVmXHNme39cc2YBNTMyLDE3MDcyCi1cZm9udFxkZWZiZj1jbWJ4 MTAgc2NhbGVkIFxtYWdzdGVwMSAld2FzIDEzMTR/YmY9Y21ieDEwATU1OCwxNzg2NwotXGZvbnRc ZGVmdHQ9Y210dDEwIHNjYWxlZCBcbWFnc3RlcDF/dHQ9Y210dDEwATU1OSwxNzkxMwotXGRlZlxk Znt/XGRmATU2MCwxNzk0OQotXGRlZlxyZXNldG1hdGhmb250c3t/XHJlc2V0bWF0aGZvbnRzATYz NSwyMDU0MwotXGRlZlx0ZXh0Zm9udHN7f1x0ZXh0Zm9udHMBNjQ4LDIxMTMyCi1cZGVmXGNoYXBm b250c3t/XGNoYXBmb250cwE2NTMsMjEzNDcKLVxkZWZcc2VjZm9udHN7f1xzZWNmb250cwE2NTgs MjE1NjMKLVxkZWZcc3Vic2VjZm9udHN7f1xzdWJzZWNmb250cwE2NjMsMjE3NjgKLVxkZWZcaW5k ZXhmb250c3t/XGluZGV4Zm9udHMBNjY4LDIxOTg1Ci1cZGVmXHNtYXJ0aXRhbGljeHt/XHNtYXJ0 aXRhbGljeAE2OTEsMjI3MTcKLVxkZWZcc21hcnRpdGFsaWMjMXt/XHNtYXJ0aXRhbGljATY5Miwy Mjc5MwotXGxldFxjaXRlPVxzbWFydGl0YWxpY389XHNtYXJ0aXRhbGljATY5OCwyMjkzOAotXGRl ZlxiIzF7f1xiATcwMCwyMjk2MgotXGRlZlx0IzF7f1x0ATcwMywyMjk5NwotXGRlZlxzYW1wICMx e39cc2FtcAE3MDYsMjMxNDkKLVxkZWZca2V5ICMxe39ca2V5ATcwNywyMzE4MgotXGRlZlxjdHJs ICMxe39cY3RybAE3MDgsMjMyNDMKLVxkZWZcdGNsb3NlIzF7f1x0Y2xvc2UBNzE2LDIzNDQ1Ci1c ZGVmXCB7f1wBNzIwLDIzNjExCi1cZGVmXHhrZXl7f1x4a2V5ATcyOCwyMzg4MAotXGRlZlxrYmRm b28jMSMyIzNccGFye39ca2JkZm9vATcyOSwyMzg5NgotXGRlZlxkbW4jMXt/XGRtbgE3MzgsMjQx OTcKLVxkZWZca2JkIzF7f1xrYmQBNzQwLDI0MjI0Ci1cZGVmXGwjMXt/XGwBNzQyLDI0MjgxCi1c ZGVmXHIjMXt/XHIBNzQ0LDI0MzEwCi1cZGVmXHNjIzF7f1xzYwE3NDYsMjQzNzgKLVxkZWZcaWkj MXt/XGlpATc0NywyNDQyMQotXGRlZlx0aXRsZWZvbnQjMXt/XHRpdGxlZm9udAE3NTUsMjQ2NTQK LVxkZWZcdGl0bGVwYWdle39cdGl0bGVwYWdlATc2MSwyNDc1NwotICAgXGRlZlxzdWJ0aXRsZWZv bnR7f1xzdWJ0aXRsZWZvbnQBNzY2LDI0OTg0Ci0gICBcZGVmXGF1dGhvcmZvbnR7f1xhdXRob3Jm b250ATc2OCwyNTA2OAotICAgXGRlZlx0aXRsZXt/XHRpdGxlATc3NCwyNTI3OAotICAgXGRlZlx0 aXRsZXp6eiMjMXt/XHRpdGxlenp6ATc3NSwyNTMxMwotICAgXGRlZlxzdWJ0aXRsZXt/XHN1YnRp dGxlATc4MywyNTYyOAotICAgXGRlZlxzdWJ0aXRsZXp6eiMjMXt/XHN1YnRpdGxlenp6ATc4NCwy NTY2OQotICAgXGRlZlxhdXRob3J7f1xhdXRob3IBNzg3LDI1Nzg3Ci0gICBcZGVmXGF1dGhvcnp6 eiMjMXt/XGF1dGhvcnp6egE3ODgsMjU4MjQKLSAgIFxkZWZccGFnZXt/XHBhZ2UBNzk0LDI2MTE1 Ci1cZGVmXEV0aXRsZXBhZ2V7f1xFdGl0bGVwYWdlATgwNCwyNjI4NAotXGRlZlxmaW5pc2h0aXRs ZXBhZ2V7f1xmaW5pc2h0aXRsZXBhZ2UBODE3LDI2NjcyCi1cZGVmXGV2ZW5oZWFkaW5ne39cZXZl bmhlYWRpbmcBODQ2LDI3NjgwCi1cZGVmXG9kZGhlYWRpbmd7f1xvZGRoZWFkaW5nATg0NywyNzcy MwotXGRlZlxldmVyeWhlYWRpbmd7f1xldmVyeWhlYWRpbmcBODQ4LDI3NzY0Ci1cZGVmXGV2ZW5m b290aW5ne39cZXZlbmZvb3RpbmcBODUwLDI3ODEwCi1cZGVmXG9kZGZvb3Rpbmd7f1xvZGRmb290 aW5nATg1MSwyNzg1MwotXGRlZlxldmVyeWZvb3Rpbmd7f1xldmVyeWZvb3RpbmcBODUyLDI3ODk0 Ci1cZGVmXGhlYWRpbmdzICMxIHt/XGhlYWRpbmdzATg5MywyOTU4NgotXGRlZlxIRUFESU5HU29m Znt/XEhFQURJTkdTb2ZmATg5NSwyOTYzNQotXGRlZlxIRUFESU5HU2RvdWJsZXt/XEhFQURJTkdT ZG91YmxlATkwNCwzMDA2MgotXGRlZlxIRUFESU5HU3NpbmdsZXt/XEhFQURJTkdTc2luZ2xlATkx NCwzMDM4MgotXGRlZlxIRUFESU5HU29ue39cSEVBRElOR1NvbgE5MjIsMzA2MDMKLVxkZWZcSEVB RElOR1NhZnRlcnt/XEhFQURJTkdTYWZ0ZXIBOTI0LDMwNjM3Ci1cZGVmXEhFQURJTkdTZG91Ymxl eHt/XEhFQURJTkdTZG91YmxleAE5MjYsMzA3MzIKLVxkZWZcSEVBRElOR1NzaW5nbGVhZnRlcnt/ XEhFQURJTkdTc2luZ2xlYWZ0ZXIBOTMzLDMwOTIwCi1cZGVmXEhFQURJTkdTc2luZ2xleHt/XEhF QURJTkdTc2luZ2xleAE5MzQsMzA5ODEKLVxkZWZcdG9kYXl7f1x0b2RheQE5NDMsMzEyNTYKLVxk ZWZcdGhpc3RpdGxle39cdGhpc3RpdGxlATk1OCwzMTgwMQotXGRlZlxzZXR0aXRsZXt/XHNldHRp dGxlATk1OSwzMTgyNgotXGRlZlxzZXR0aXRsZXp6eiAjMXt/XHNldHRpdGxlenp6ATk2MCwzMTg2 MwotXGRlZlxpbnRlcm5hbEJpdGVte39caW50ZXJuYWxCaXRlbQE5OTIsMzI3OTMKLVxkZWZcaW50 ZXJuYWxCaXRlbXh7f1xpbnRlcm5hbEJpdGVteAE5OTMsMzI4NDMKLVxkZWZcaW50ZXJuYWxCeGl0 ZW0gIiMxInt/XGludGVybmFsQnhpdGVtATk5NSwzMjg4OAotXGRlZlxpbnRlcm5hbEJ4aXRlbXgg IiMxInt/XGludGVybmFsQnhpdGVteAE5OTYsMzI5NjgKLVxkZWZcaW50ZXJuYWxCa2l0ZW17f1xp bnRlcm5hbEJraXRlbQE5OTgsMzMwNDMKLVxkZWZcaW50ZXJuYWxCa2l0ZW14e39caW50ZXJuYWxC a2l0ZW14ATk5OSwzMzA5NQotXGRlZlxraXRlbXp6eiAjMXt/XGtpdGVtenp6ATEwMDEsMzMxNDIK LVxkZWZceGl0ZW16enogIzF7f1x4aXRlbXp6egExMDA0LDMzMjQ0Ci1cZGVmXGl0ZW16enogIzF7 f1xpdGVtenp6ATEwMDcsMzMzNDcKLVxkZWZcaXRlbXt/XGl0ZW0BMTAzNywzNDQxOAotXGRlZlxp dGVteHt/XGl0ZW14ATEwMzgsMzQ0NjkKLVxkZWZca2l0ZW17f1xraXRlbQExMDM5LDM0NTIyCi1c ZGVmXGtpdGVteHt/XGtpdGVteAExMDQwLDM0NTc1Ci1cZGVmXHhpdGVte39ceGl0ZW0BMTA0MSwz NDYzMAotXGRlZlx4aXRlbXh7f1x4aXRlbXgBMTA0MiwzNDY4MwotXGRlZlxkZXNjcmlwdGlvbnt/ XGRlc2NyaXB0aW9uATEwNDUsMzQ3OTMKLVxkZWZcdGFibGV7f1x0YWJsZQExMDQ3LDM0ODQzCi1c ZGVmXGZ0YWJsZXt/XGZ0YWJsZQExMDUyLDM0OTg3Ci1cZGVmXEVmdGFibGV7f1xFZnRhYmxlATEw NTYsMzUxMzMKLVxkZWZcdnRhYmxle39cdnRhYmxlATEwNTksMzUyMDIKLVxkZWZcRXZ0YWJsZXt/ XEV2dGFibGUBMTA2MywzNTM0OAotXGRlZlxkb250aW5kZXggIzF7f1xkb250aW5kZXgBMTA2Niwz NTQxNwotXGRlZlxmbml0ZW1pbmRleCAjMXt/XGZuaXRlbWluZGV4ATEwNjcsMzU0MzcKLVxkZWZc dnJpdGVtaW5kZXggIzF7f1x2cml0ZW1pbmRleAExMDY4LDM1NDgyCi1cZGVmXHRhYmxleiAjMSMy IzMjNCM1IzZ7f1x0YWJsZXoBMTA3NCwzNTYzMQotXGRlZlxFZGVzY3JpcHRpb257f1xFZGVzY3Jp cHRpb24BMTA3NywzNTY4OQotXGRlZlxpdGVtZm9udHt/XGl0ZW1mb250ATEwODIsMzU4OTAKLVxk ZWZcRXRhYmxle39cRXRhYmxlATEwOTAsMzYxMTYKLVxkZWZcaXRlbWl6ZXt/XGl0ZW1pemUBMTEw MywzNjQ0MAotXGRlZlxpdGVtaXplenp6ICMxe39caXRlbWl6ZXp6egExMTA1LDM2NDc2Ci1cZGVm XGl0ZW1pemV5ICMxIzJ7f1xpdGVtaXpleQExMTEwLDM2NTcxCi1cZGVmIzJ7fzExMTksMzY4MTcK LVxkZWZcaXRlbWNvbnRlbnRze39caXRlbWNvbnRlbnRzATExMjAsMzY4NTgKLVxkZWZcYnVsbGV0 e39cYnVsbGV0ATExMjMsMzY5MDYKLVxkZWZcbWludXN7f1xtaW51cwExMTI0LDM2OTMzCi1cZGVm XGZyZW5jaHNwYWNpbmd7f1xmcmVuY2hzcGFjaW5nATExMjgsMzcwNDEKLVxkZWZcc3BsaXRvZmYj MSMyXGVuZG1hcmt7f1xzcGxpdG9mZgExMTM0LDM3MjY2Ci1cZGVmXGVudW1lcmF0ZXt/XGVudW1l cmF0ZQExMTQwLDM3NDk2Ci1cZGVmXGVudW1lcmF0ZXp6eiAjMXt/XGVudW1lcmF0ZXp6egExMTQx LDM3NTM1Ci1cZGVmXGVudW1lcmF0ZXkgIzEgIzJcZW5kZW51bWVyYXRleXt/XGVudW1lcmF0ZXkB MTE0MiwzNzU4OAotICBcZGVmXHRoZWFyZ3t/XHRoZWFyZwExMTQ2LDM3NzM1Ci0gIFxpZnhcdGhl YXJnXGVtcHR5IFxkZWZcdGhlYXJne39cdGhlYXJnATExNDcsMzc3NTQKLVxkZWZcbnVtZXJpY2Vu dW1lcmF0ZXt/XG51bWVyaWNlbnVtZXJhdGUBMTE4NCwzOTA4OAotXGRlZlxsb3dlcmNhc2VlbnVt ZXJhdGV7f1xsb3dlcmNhc2VlbnVtZXJhdGUBMTE5MCwzOTIxOAotXGRlZlx1cHBlcmNhc2VlbnVt ZXJhdGV7f1x1cHBlcmNhc2VlbnVtZXJhdGUBMTIwMywzOTU2NQotXGRlZlxzdGFydGVudW1lcmF0 aW9uIzF7f1xzdGFydGVudW1lcmF0aW9uATEyMTksNDAwNTUKLVxkZWZcYWxwaGFlbnVtZXJhdGV7 f1xhbHBoYWVudW1lcmF0ZQExMjI3LDQwMjM3Ci1cZGVmXGNhcHNlbnVtZXJhdGV7f1xjYXBzZW51 bWVyYXRlATEyMjgsNDAyNzIKLVxkZWZcRWFscGhhZW51bWVyYXRle39cRWFscGhhZW51bWVyYXRl ATEyMjksNDAzMDYKLVxkZWZcRWNhcHNlbnVtZXJhdGV7f1xFY2Fwc2VudW1lcmF0ZQExMjMwLDQw MzQwCi1cZGVmXGl0ZW1pemVpdGVte39caXRlbWl6ZWl0ZW0BMTIzNCw0MDQyMAotXGRlZlxuZXdp bmRleCAjMXt/XG5ld2luZGV4ATEyNTksNDEyNzcKLVxkZWZcZGVmaW5kZXh7f1xkZWZpbmRleAEx MjY4LDQxNTY2Ci1cZGVmXG5ld2NvZGVpbmRleCAjMXt/XG5ld2NvZGVpbmRleAExMjcyLDQxNjc0 Ci1cZGVmXGRlZmNvZGVpbmRleHt/XGRlZmNvZGVpbmRleAExMjc5LDQxOTM0Ci1cZGVmXHN5bmlu ZGV4ICMxICMyIHt/XHN5bmluZGV4ATEyODMsNDIxMTQKLVxkZWZcc3luY29kZWluZGV4ICMxICMy IHt/XHN5bmNvZGVpbmRleAExMjkyLDQyNDU0Ci1cZGVmXGRvaW5kZXgjMXt/XGRvaW5kZXgBMTMw OSw0MzEzMwotXGRlZlxzaW5nbGVpbmRleGVyICMxe39cc2luZ2xlaW5kZXhlcgExMzEwLDQzMTky Ci1cZGVmXGRvY29kZWluZGV4IzF7f1xkb2NvZGVpbmRleAExMzEzLDQzMzA0Ci1cZGVmXHNpbmds ZWNvZGVpbmRleGVyICMxe39cc2luZ2xlY29kZWluZGV4ZXIBMTMxNCw0MzM3MQotXGRlZlxpbmRl eGR1bW1pZXN7f1xpbmRleGR1bW1pZXMBMTMxNiw0MzQyOQotXGRlZlxfe39cXwExMzE3LDQzNDQ5 Ci1cZGVmXHd7f1x3ATEzMTgsNDM0NzcKLVxkZWZcYmZ7f1xiZgExMzE5LDQzNTA0Ci1cZGVmXHJt e39ccm0BMTMyMCw0MzUzMwotXGRlZlxzbHt/XHNsATEzMjEsNDM1NjIKLVxkZWZcc2Z7f1xzZgEx MzIyLDQzNTkxCi1cZGVmXHR0e39cdHQBMTMyMyw0MzYxOQotXGRlZlxndHJ7f1xndHIBMTMyNCw0 MzY0NwotXGRlZlxsZXNze39cbGVzcwExMzI1LDQzNjc3Ci1cZGVmXGhhdHt/XGhhdAExMzI2LDQz NzA5Ci1cZGVmXGNoYXJ7f1xjaGFyATEzMjcsNDM3MzkKLVxkZWZcVGVYe39cVGVYATEzMjgsNDM3 NzEKLVxkZWZcZG90c3t/XGRvdHMBMTMyOSw0MzgwMQotXGRlZlxjb3B5cmlnaHR7f1xjb3B5cmln aHQBMTMzMCw0MzgzNAotXGRlZlx0Y2xvc2UjIzF7f1x0Y2xvc2UBMTMzMSw0Mzg3NwotXGRlZlxj b2RlIyMxe39cY29kZQExMzMyLDQzOTIyCi1cZGVmXHNhbXAjIzF7f1xzYW1wATEzMzMsNDM5NjMK LVxkZWZcdCMjMXt/XHQBMTMzNCw0NDAwNAotXGRlZlxyIyMxe39ccgExMzM1LDQ0MDM5Ci1cZGVm XGkjIzF7f1xpATEzMzYsNDQwNzQKLVxkZWZcYiMjMXt/XGIBMTMzNyw0NDEwOQotXGRlZlxjaXRl IyMxe39cY2l0ZQExMzM4LDQ0MTQ0Ci1cZGVmXGtleSMjMXt/XGtleQExMzM5LDQ0MTg1Ci1cZGVm XGZpbGUjIzF7f1xmaWxlATEzNDAsNDQyMjQKLVxkZWZcdmFyIyMxe39cdmFyATEzNDEsNDQyNjUK LVxkZWZca2JkIyMxe39ca2JkATEzNDIsNDQzMDQKLVxkZWZcaW5kZXhkdW1teWZvbnQjMXt/XGlu ZGV4ZHVtbXlmb250ATEzNDcsNDQ0NjAKLVxkZWZcaW5kZXhkdW1teXRleHt/XGluZGV4ZHVtbXl0 ZXgBMTM0OCw0NDQ4NgotXGRlZlxpbmRleGR1bW15ZG90c3t/XGluZGV4ZHVtbXlkb3RzATEzNDks NDQ1MTAKLVxkZWZcaW5kZXhub2ZvbnRze39caW5kZXhub2ZvbnRzATEzNTEsNDQ1MzYKK1xsZXRc bGFzdG5vZGU9XHJlbGF4fX9sYXN0bm9kZQE1MDIsMTYxOTQKK1xsZXRccmVmaWxsPVxyZWxheH9y ZWZpbGwBNTA0LDE2MjE3CitcZGVmXHNldGZpbGVuYW1le39zZXRmaWxlbmFtZQE1MDksMTY0MzEK KyAgIFxnbG9iYWxcbGV0XHNldGZpbGVuYW1lPVxjb21tZW50ICUgSWdub3JlIGV4dHJhIEBzZXRm aWxlbmFtZSBjbWRzLn9zZXRmaWxlbmFtZQE1MTQsMTY1NjIKK1xvdXRlclxkZWZcYnlle39ieWUB NTE4LDE2Njc3CitcZGVmXGluZm9yZWYgIzF7f2luZm9yZWYBNTIwLDE2NzMzCitcZGVmXGluZm9y ZWZ6enogIzEsIzIsIzMsIzQqKnt/aW5mb3JlZnp6egE1MjEsMTY3NzEKK1xkZWZcbG9zZXNwYWNl ICMxe39sb3Nlc3BhY2UBNTIzLDE2ODY4CitcZGVmXHNme39zZgE1MzIsMTcwNzIKK1xsZXRcbGkg PSBcc2YgJSBTb21ldGltZXMgd2UgY2FsbCBpdCBcbGksIG5vdCBcc2Yuf2xpATUzMywxNzEwMAor XGxldFxtYWlubWFnc3RlcD1cbWFnc3RlcGhhbGZ/bWFpbm1hZ3N0ZXABNTM2LDE3MjAxCitcbGV0 XG1haW5tYWdzdGVwPVxtYWdzdGVwMX9tYWlubWFnc3RlcAE1MzksMTcyNTAKK1xmb250XGRlZmJm PWNtYngxMCBzY2FsZWQgXG1hZ3N0ZXAxICV3YXMgMTMxNH9iZgE1NTgsMTc4NjcKK1xmb250XGRl ZnR0PWNtdHQxMCBzY2FsZWQgXG1hZ3N0ZXAxf3R0ATU1OSwxNzkxMworXGRlZlxkZnt/ZGYBNTYw LDE3OTQ5CitcZGVmXGRme1xsZXRcdGVudHQ9XGRlZnR0IFxsZXRcdGVuYmYgPSBcZGVmYmYgXGJm fX90ZW50dAE1NjAsMTc5NDkKK1xkZWZcZGZ7XGxldFx0ZW50dD1cZGVmdHQgXGxldFx0ZW5iZiA9 IFxkZWZiZiBcYmZ9f3R0ATU2MCwxNzk0OQorXGRlZlxkZntcbGV0XHRlbnR0PVxkZWZ0dCBcbGV0 XHRlbmJmID0gXGRlZmJmIFxiZn1/dGVuYmYBNTYwLDE3OTQ5CitcZGVmXGRme1xsZXRcdGVudHQ9 XGRlZnR0IFxsZXRcdGVuYmYgPSBcZGVmYmYgXGJmfX9iZgE1NjAsMTc5NDkKK1xsZXRcaW5kc2w9 XGluZGl0f2luZHNsATU3MCwxODMxMAorXGxldFxpbmR0dD1cbmluZXR0f2luZHR0ATU3MSwxODMy OAorXGxldFxpbmRzZj1caW5kcm1/aW5kc2YBNTcyLDE4MzQ3CitcbGV0XGluZGJmPVxpbmRybX9p bmRiZgE1NzMsMTgzNjUKK1xsZXRcaW5kc2M9XGluZHJtf2luZHNjATU3NCwxODM4MworXGxldFxj aGFwYmY9XGNoYXBybX9jaGFwYmYBNTg0LDE4NjQzCitcbGV0XGF1dGhvcnJtID0gXHNlY3Jtf2F1 dGhvcnJtATYyNywyMDE5MworXGRlZlxyZXNldG1hdGhmb250c3t/cmVzZXRtYXRoZm9udHMBNjM1 LDIwNTQzCitcZGVmXHRleHRmb250c3t/dGV4dGZvbnRzATY0OCwyMTEzMgorICBcbGV0XHRlbnJt PVx0ZXh0cm0gXGxldFx0ZW5pdD1cdGV4dGl0IFxsZXRcdGVuc2w9XHRleHRzbH90ZW5ybQE2NDks MjExNDkKKyAgXGxldFx0ZW5ybT1cdGV4dHJtIFxsZXRcdGVuaXQ9XHRleHRpdCBcbGV0XHRlbnNs PVx0ZXh0c2x/dGVuaXQBNjQ5LDIxMTQ5CisgIFxsZXRcdGVucm09XHRleHRybSBcbGV0XHRlbml0 PVx0ZXh0aXQgXGxldFx0ZW5zbD1cdGV4dHNsf3RlbnNsATY0OSwyMTE0OQorICBcbGV0XHRlbmJm PVx0ZXh0YmYgXGxldFx0ZW50dD1cdGV4dHR0IFxsZXRcc21hbGxjYXBzPVx0ZXh0c2N/dGVuYmYB NjUwLDIxMjA4CisgIFxsZXRcdGVuYmY9XHRleHRiZiBcbGV0XHRlbnR0PVx0ZXh0dHQgXGxldFxz bWFsbGNhcHM9XHRleHRzY390ZW50dAE2NTAsMjEyMDgKKyAgXGxldFx0ZW5iZj1cdGV4dGJmIFxs ZXRcdGVudHQ9XHRleHR0dCBcbGV0XHNtYWxsY2Fwcz1cdGV4dHNjf3NtYWxsY2FwcwE2NTAsMjEy MDgKKyAgXGxldFx0ZW5zZj1cdGV4dHNmIFxsZXRcdGVuaT1cdGV4dGkgXGxldFx0ZW5zeT1cdGV4 dHN5f3RlbnNmATY1MSwyMTI3MQorICBcbGV0XHRlbnNmPVx0ZXh0c2YgXGxldFx0ZW5pPVx0ZXh0 aSBcbGV0XHRlbnN5PVx0ZXh0c3l/dGVuaQE2NTEsMjEyNzEKKyAgXGxldFx0ZW5zZj1cdGV4dHNm IFxsZXRcdGVuaT1cdGV4dGkgXGxldFx0ZW5zeT1cdGV4dHN5f3RlbnN5ATY1MSwyMTI3MQorXGRl ZlxjaGFwZm9udHN7f2NoYXBmb250cwE2NTMsMjEzNDcKKyAgXGxldFx0ZW5ybT1cY2hhcHJtIFxs ZXRcdGVuaXQ9XGNoYXBpdCBcbGV0XHRlbnNsPVxjaGFwc2wgf3RlbnJtATY1NCwyMTM2NAorICBc bGV0XHRlbnJtPVxjaGFwcm0gXGxldFx0ZW5pdD1cY2hhcGl0IFxsZXRcdGVuc2w9XGNoYXBzbCB/ dGVuaXQBNjU0LDIxMzY0CisgIFxsZXRcdGVucm09XGNoYXBybSBcbGV0XHRlbml0PVxjaGFwaXQg XGxldFx0ZW5zbD1cY2hhcHNsIH90ZW5zbAE2NTQsMjEzNjQKKyAgXGxldFx0ZW5iZj1cY2hhcGJm IFxsZXRcdGVudHQ9XGNoYXB0dCBcbGV0XHNtYWxsY2Fwcz1cY2hhcHNjf3RlbmJmATY1NSwyMTQy NAorICBcbGV0XHRlbmJmPVxjaGFwYmYgXGxldFx0ZW50dD1cY2hhcHR0IFxsZXRcc21hbGxjYXBz PVxjaGFwc2N/dGVudHQBNjU1LDIxNDI0CisgIFxsZXRcdGVuYmY9XGNoYXBiZiBcbGV0XHRlbnR0 PVxjaGFwdHQgXGxldFxzbWFsbGNhcHM9XGNoYXBzY39zbWFsbGNhcHMBNjU1LDIxNDI0CisgIFxs ZXRcdGVuc2Y9XGNoYXBzZiBcbGV0XHRlbmk9XGNoYXBpIFxsZXRcdGVuc3k9XGNoYXBzeX90ZW5z ZgE2NTYsMjE0ODcKKyAgXGxldFx0ZW5zZj1cY2hhcHNmIFxsZXRcdGVuaT1cY2hhcGkgXGxldFx0 ZW5zeT1cY2hhcHN5f3RlbmkBNjU2LDIxNDg3CisgIFxsZXRcdGVuc2Y9XGNoYXBzZiBcbGV0XHRl bmk9XGNoYXBpIFxsZXRcdGVuc3k9XGNoYXBzeX90ZW5zeQE2NTYsMjE0ODcKK1xkZWZcc2VjZm9u dHN7f3NlY2ZvbnRzATY1OCwyMTU2MworICBcbGV0XHRlbnJtPVxzZWNybSBcbGV0XHRlbml0PVxz ZWNpdCBcbGV0XHRlbnNsPVxzZWNzbH90ZW5ybQE2NTksMjE1NzkKKyAgXGxldFx0ZW5ybT1cc2Vj cm0gXGxldFx0ZW5pdD1cc2VjaXQgXGxldFx0ZW5zbD1cc2Vjc2x/dGVuaXQBNjU5LDIxNTc5Cisg IFxsZXRcdGVucm09XHNlY3JtIFxsZXRcdGVuaXQ9XHNlY2l0IFxsZXRcdGVuc2w9XHNlY3Nsf3Rl bnNsATY1OSwyMTU3OQorICBcbGV0XHRlbmJmPVxzZWNiZiBcbGV0XHRlbnR0PVxzZWN0dCBcbGV0 XHNtYWxsY2Fwcz1cc2Vjc2N/dGVuYmYBNjYwLDIxNjM1CisgIFxsZXRcdGVuYmY9XHNlY2JmIFxs ZXRcdGVudHQ9XHNlY3R0IFxsZXRcc21hbGxjYXBzPVxzZWNzY390ZW50dAE2NjAsMjE2MzUKKyAg XGxldFx0ZW5iZj1cc2VjYmYgXGxldFx0ZW50dD1cc2VjdHQgXGxldFxzbWFsbGNhcHM9XHNlY3Nj f3NtYWxsY2FwcwE2NjAsMjE2MzUKKyAgXGxldFx0ZW5zZj1cc2Vjc2YgXGxldFx0ZW5pPVxzZWNp IFxsZXRcdGVuc3k9XHNlY3N5f3RlbnNmATY2MSwyMTY5NQorICBcbGV0XHRlbnNmPVxzZWNzZiBc bGV0XHRlbmk9XHNlY2kgXGxldFx0ZW5zeT1cc2Vjc3l/dGVuaQE2NjEsMjE2OTUKKyAgXGxldFx0 ZW5zZj1cc2Vjc2YgXGxldFx0ZW5pPVxzZWNpIFxsZXRcdGVuc3k9XHNlY3N5f3RlbnN5ATY2MSwy MTY5NQorXGRlZlxzdWJzZWNmb250c3t/c3Vic2VjZm9udHMBNjYzLDIxNzY4CisgIFxsZXRcdGVu cm09XHNzZWNybSBcbGV0XHRlbml0PVxzc2VjaXQgXGxldFx0ZW5zbD1cc3NlY3Nsf3RlbnJtATY2 NCwyMTc4NworICBcbGV0XHRlbnJtPVxzc2Vjcm0gXGxldFx0ZW5pdD1cc3NlY2l0IFxsZXRcdGVu c2w9XHNzZWNzbH90ZW5pdAE2NjQsMjE3ODcKKyAgXGxldFx0ZW5ybT1cc3NlY3JtIFxsZXRcdGVu aXQ9XHNzZWNpdCBcbGV0XHRlbnNsPVxzc2Vjc2x/dGVuc2wBNjY0LDIxNzg3CisgIFxsZXRcdGVu YmY9XHNzZWNiZiBcbGV0XHRlbnR0PVxzc2VjdHQgXGxldFxzbWFsbGNhcHM9XHNzZWNzY390ZW5i ZgE2NjUsMjE4NDYKKyAgXGxldFx0ZW5iZj1cc3NlY2JmIFxsZXRcdGVudHQ9XHNzZWN0dCBcbGV0 XHNtYWxsY2Fwcz1cc3NlY3Njf3RlbnR0ATY2NSwyMTg0NgorICBcbGV0XHRlbmJmPVxzc2VjYmYg XGxldFx0ZW50dD1cc3NlY3R0IFxsZXRcc21hbGxjYXBzPVxzc2Vjc2N/c21hbGxjYXBzATY2NSwy MTg0NgorICBcbGV0XHRlbnNmPVxzc2Vjc2YgXGxldFx0ZW5pPVxzc2VjaSBcbGV0XHRlbnN5PVxz c2Vjc3l/dGVuc2YBNjY2LDIxOTA5CisgIFxsZXRcdGVuc2Y9XHNzZWNzZiBcbGV0XHRlbmk9XHNz ZWNpIFxsZXRcdGVuc3k9XHNzZWNzeX90ZW5pATY2NiwyMTkwOQorICBcbGV0XHRlbnNmPVxzc2Vj c2YgXGxldFx0ZW5pPVxzc2VjaSBcbGV0XHRlbnN5PVxzc2Vjc3l/dGVuc3kBNjY2LDIxOTA5Citc ZGVmXGluZGV4Zm9udHN7f2luZGV4Zm9udHMBNjY4LDIxOTg1CisgIFxsZXRcdGVucm09XGluZHJt IFxsZXRcdGVuaXQ9XGluZGl0IFxsZXRcdGVuc2w9XGluZHNsf3RlbnJtATY2OSwyMjAwMworICBc bGV0XHRlbnJtPVxpbmRybSBcbGV0XHRlbml0PVxpbmRpdCBcbGV0XHRlbnNsPVxpbmRzbH90ZW5p dAE2NjksMjIwMDMKKyAgXGxldFx0ZW5ybT1caW5kcm0gXGxldFx0ZW5pdD1caW5kaXQgXGxldFx0 ZW5zbD1caW5kc2x/dGVuc2wBNjY5LDIyMDAzCisgIFxsZXRcdGVuYmY9XGluZGJmIFxsZXRcdGVu dHQ9XGluZHR0IFxsZXRcc21hbGxjYXBzPVxpbmRzY390ZW5iZgE2NzAsMjIwNTkKKyAgXGxldFx0 ZW5iZj1caW5kYmYgXGxldFx0ZW50dD1caW5kdHQgXGxldFxzbWFsbGNhcHM9XGluZHNjf3RlbnR0 ATY3MCwyMjA1OQorICBcbGV0XHRlbmJmPVxpbmRiZiBcbGV0XHRlbnR0PVxpbmR0dCBcbGV0XHNt YWxsY2Fwcz1caW5kc2N/c21hbGxjYXBzATY3MCwyMjA1OQorICBcbGV0XHRlbnNmPVxpbmRzZiBc bGV0XHRlbmk9XGluZGkgXGxldFx0ZW5zeT1caW5kc3l/dGVuc2YBNjcxLDIyMTE5CisgIFxsZXRc dGVuc2Y9XGluZHNmIFxsZXRcdGVuaT1caW5kaSBcbGV0XHRlbnN5PVxpbmRzeX90ZW5pATY3MSwy MjExOQorICBcbGV0XHRlbnNmPVxpbmRzZiBcbGV0XHRlbmk9XGluZGkgXGxldFx0ZW5zeT1caW5k c3l/dGVuc3kBNjcxLDIyMTE5CitcZGVmXHNtYXJ0aXRhbGljeHt/c21hcnRpdGFsaWN4ATY5MSwy MjcxNworXGRlZlxzbWFydGl0YWxpYyMxe39zbWFydGl0YWxpYwE2OTIsMjI3OTMKK1xsZXRcaT1c c21hcnRpdGFsaWN/aQE2OTQsMjI4NTEKK1xsZXRcdmFyPVxzbWFydGl0YWxpY392YXIBNjk1LDIy ODcxCitcbGV0XGRmbj1cc21hcnRpdGFsaWN/ZGZuATY5NiwyMjg5MworXGxldFxlbXBoPVxzbWFy dGl0YWxpY39lbXBoATY5NywyMjkxNQorXGxldFxjaXRlPVxzbWFydGl0YWxpY39jaXRlATY5OCwy MjkzOAorXGRlZlxiIzF7f2IBNzAwLDIyOTYyCitcbGV0XHN0cm9uZz1cYn9zdHJvbmcBNzAxLDIy OTgxCitcZGVmXHQjMXt/dAE3MDMsMjI5OTcKK1xsZXRcdHRmb250ID0gXHR/dHRmb250ATcwNCwy MzA3MgorXGRlZlxzYW1wICMxe39zYW1wATcwNiwyMzE0OQorXGRlZlxrZXkgIzF7f2tleQE3MDcs MjMxODIKK1xkZWZcY3RybCAjMXt/Y3RybAE3MDgsMjMyNDMKK1xsZXRcZmlsZT1cc2FtcH9maWxl ATcxMCwyMzI4NQorXGRlZlx0Y2xvc2UjMXt/dGNsb3NlATcxNiwyMzQ0NQorXGxldFxjb2RlPVx0 Y2xvc2V/Y29kZQE3MjIsMjM3MjIKK1xkZWZceGtleXt/eGtleQE3MjgsMjM4ODAKK1xkZWZca2Jk Zm9vIzEjMiMzXHBhcnt/a2JkZm9vATcyOSwyMzg5NgorXGRlZlxrYmRmb28jMSMyIzNccGFye1xk ZWZcb25le39vbmUBNzI5LDIzODk2CitcZGVmXGtiZGZvbyMxIzIjM1xwYXJ7XGRlZlxvbmV7IzF9 XGRlZlx0aHJlZXt/dGhyZWUBNzI5LDIzODk2CitcZGVmXGtiZGZvbyMxIzIjM1xwYXJ7XGRlZlxv bmV7IzF9XGRlZlx0aHJlZXsjM31cZGVmXHRocmVleHt/dGhyZWV4ATcyOSwyMzg5NgorXGRlZlxk bW4jMXt/ZG1uATczOCwyNDE5NworXGRlZlxrYmQjMXt/a2JkATc0MCwyNDIyNAorXGRlZlxrYmQj MXtcZGVmXGxvb2t7f2xvb2sBNzQwLDI0MjI0CitcZGVmXGwjMXt/bAE3NDIsMjQyODEKK1xkZWZc ciMxe39yATc0NCwyNDMxMAorXGRlZlxzYyMxe39zYwE3NDYsMjQzNzgKK1xkZWZcaWkjMXt/aWkB NzQ3LDI0NDIxCitcZGVmXHRpdGxlZm9udCMxe390aXRsZWZvbnQBNzU1LDI0NjU0CitcZGVmXHRp dGxlcGFnZXt/dGl0bGVwYWdlATc2MSwyNDc1NworICAgXGxldFxzdWJ0aXRsZXJtPVx0ZW5ybX9z dWJ0aXRsZXJtATc2MiwyNDgxMAorICAgXGRlZlxzdWJ0aXRsZWZvbnR7f3N1YnRpdGxlZm9udAE3 NjYsMjQ5ODQKKyAgIFxkZWZcYXV0aG9yZm9udHt/YXV0aG9yZm9udAE3NjgsMjUwNjgKKyAgIFxk ZWZcdGl0bGV7f3RpdGxlATc3NCwyNTI3OAorICAgXGRlZlx0aXRsZXp6eiMjMXt/dGl0bGV6enoB Nzc1LDI1MzEzCisgICBcZGVmXHN1YnRpdGxle39zdWJ0aXRsZQE3ODMsMjU2MjgKKyAgIFxkZWZc c3VidGl0bGV6enojIzF7f3N1YnRpdGxlenp6ATc4NCwyNTY2OQorICAgXGRlZlxhdXRob3J7f2F1 dGhvcgE3ODcsMjU3ODcKKyAgIFxkZWZcYXV0aG9yenp6IyMxe39hdXRob3J6enoBNzg4LDI1ODI0 CisgICBcbGV0XG9sZHBhZ2UgPSBccGFnZX9vbGRwYWdlATc5MywyNjA5MQorICAgXGRlZlxwYWdl e39wYWdlATc5NCwyNjExNQorICAgICAgXGxldFxwYWdlID0gXG9sZHBhZ2V/cGFnZQE3OTksMjYy MDYKK1xkZWZcRXRpdGxlcGFnZXt/RXRpdGxlcGFnZQE4MDQsMjYyODQKK1xkZWZcZmluaXNodGl0 bGVwYWdle39maW5pc2h0aXRsZXBhZ2UBODE3LDI2NjcyCitcbGV0XHRoaXNwYWdlPVxmb2xpb390 aGlzcGFnZQE4MjUsMjY4MjUKK1xsZXRcSEVBRElOR1Nob29rPVxyZWxheH9IRUFESU5HU2hvb2sB ODM3LDI3NDIwCitcZGVmXGV2ZW5oZWFkaW5ne39ldmVuaGVhZGluZwE4NDYsMjc2ODAKK1xkZWZc b2RkaGVhZGluZ3t/b2RkaGVhZGluZwE4NDcsMjc3MjMKK1xkZWZcZXZlcnloZWFkaW5ne39ldmVy eWhlYWRpbmcBODQ4LDI3NzY0CitcZGVmXGV2ZW5mb290aW5ne39ldmVuZm9vdGluZwE4NTAsMjc4 MTAKK1xkZWZcb2RkZm9vdGluZ3t/b2RkZm9vdGluZwE4NTEsMjc4NTMKK1xkZWZcZXZlcnlmb290 aW5ne39ldmVyeWZvb3RpbmcBODUyLDI3ODk0CitcZ2RlZlxldmVuaGVhZGluZ3h4eCAjMXt/ZXZl bmhlYWRpbmd4eHgBODU2LDI3OTU4CitcZ2RlZlxldmVuaGVhZGluZ3l5eSAjMUB8IzJAfCMzQHwj NFxmaW5pc2h7f2V2ZW5oZWFkaW5neXl5ATg1NywyODAxNworXGdkZWZcb2RkaGVhZGluZ3h4eCAj MXt/b2RkaGVhZGluZ3h4eAE4NjAsMjgxMjYKK1xnZGVmXG9kZGhlYWRpbmd5eXkgIzFAfCMyQHwj M0B8IzRcZmluaXNoe39vZGRoZWFkaW5neXl5ATg2MSwyODE4MworXGdkZWZcZXZlcnloZWFkaW5n eHh4ICMxe39ldmVyeWhlYWRpbmd4eHgBODY0LDI4MjkwCitcZ2RlZlxldmVyeWhlYWRpbmd5eXkg IzFAfCMyQHwjM0B8IzRcZmluaXNoe39ldmVyeWhlYWRpbmd5eXkBODY1LDI4MzUxCitcZ2RlZlxl dmVuZm9vdGluZ3h4eCAjMXt/ZXZlbmZvb3Rpbmd4eHgBODY5LDI4NTIyCitcZ2RlZlxldmVuZm9v dGluZ3l5eSAjMUB8IzJAfCMzQHwjNFxmaW5pc2h7f2V2ZW5mb290aW5neXl5ATg3MCwyODU4MQor XGdkZWZcb2RkZm9vdGluZ3h4eCAjMXt/b2RkZm9vdGluZ3h4eAE4NzMsMjg2OTAKK1xnZGVmXG9k ZGZvb3Rpbmd5eXkgIzFAfCMyQHwjM0B8IzRcZmluaXNoe39vZGRmb290aW5neXl5ATg3NCwyODc0 NworXGdkZWZcZXZlcnlmb290aW5neHh4ICMxe39ldmVyeWZvb3Rpbmd4eHgBODc3LDI4ODU0Citc Z2RlZlxldmVyeWZvb3Rpbmd5eXkgIzFAfCMyQHwjM0B8IzRcZmluaXNoe39ldmVyeWZvb3Rpbmd5 eXkBODc4LDI4OTE1CitcZGVmXGhlYWRpbmdzICMxIHt/aGVhZGluZ3MBODkzLDI5NTg2CitcZGVm XEhFQURJTkdTb2Zme39IRUFESU5HU29mZgE4OTUsMjk2MzUKK1xkZWZcSEVBRElOR1Nkb3VibGV7 f0hFQURJTkdTZG91YmxlATkwNCwzMDA2MgorXGRlZlxIRUFESU5HU3NpbmdsZXt/SEVBRElOR1Nz aW5nbGUBOTE0LDMwMzgyCitcZGVmXEhFQURJTkdTb257f0hFQURJTkdTb24BOTIyLDMwNjAzCitc ZGVmXEhFQURJTkdTYWZ0ZXJ7f0hFQURJTkdTYWZ0ZXIBOTI0LDMwNjM3CitcZGVmXEhFQURJTkdT YWZ0ZXJ7XGxldFxIRUFESU5HU2hvb2s9XEhFQURJTkdTZG91YmxleH1/SEVBRElOR1Nob29rATky NCwzMDYzNworXGxldFxIRUFESU5HU2RvdWJsZWFmdGVyPVxIRUFESU5HU2FmdGVyf0hFQURJTkdT ZG91YmxlYWZ0ZXIBOTI1LDMwNjkyCitcZGVmXEhFQURJTkdTZG91YmxleHt/SEVBRElOR1Nkb3Vi bGV4ATkyNiwzMDczMgorXGRlZlxIRUFESU5HU3NpbmdsZWFmdGVye39IRUFESU5HU3NpbmdsZWFm dGVyATkzMywzMDkyMAorXGRlZlxIRUFESU5HU3NpbmdsZWFmdGVye1xsZXRcSEVBRElOR1Nob29r PVxIRUFESU5HU3NpbmdsZXh9f0hFQURJTkdTaG9vawE5MzMsMzA5MjAKK1xkZWZcSEVBRElOR1Nz aW5nbGV4e39IRUFESU5HU3NpbmdsZXgBOTM0LDMwOTgxCitcZGVmXHRvZGF5e390b2RheQE5NDMs MzEyNTYKK1xkZWZcdGhpc3RpdGxle390aGlzdGl0bGUBOTU4LDMxODAxCitcZGVmXHNldHRpdGxl e39zZXR0aXRsZQE5NTksMzE4MjYKK1xkZWZcc2V0dGl0bGV6enogIzF7f3NldHRpdGxlenp6ATk2 MCwzMTg2MworXGRlZlxzZXR0aXRsZXp6eiAjMXtcZ2RlZlx0aGlzdGl0bGV7f3RoaXN0aXRsZQE5 NjAsMzE4NjMKK1xkZWZcaW50ZXJuYWxCaXRlbXt/aW50ZXJuYWxCaXRlbQE5OTIsMzI3OTMKK1xk ZWZcaW50ZXJuYWxCaXRlbXh7f2ludGVybmFsQml0ZW14ATk5MywzMjg0MworXGRlZlxpbnRlcm5h bEJ4aXRlbSAiIzEie39pbnRlcm5hbEJ4aXRlbQE5OTUsMzI4ODgKK1xkZWZcaW50ZXJuYWxCeGl0 ZW0gIiMxIntcZGVmXHhpdGVtc3VidG9waXh7f3hpdGVtc3VidG9waXgBOTk1LDMyODg4CitcZGVm XGludGVybmFsQnhpdGVteCAiIzEie39pbnRlcm5hbEJ4aXRlbXgBOTk2LDMyOTY4CitcZGVmXGlu dGVybmFsQnhpdGVteCAiIzEie1xkZWZceGl0ZW1zdWJ0b3BpeHt/eGl0ZW1zdWJ0b3BpeAE5OTYs MzI5NjgKK1xkZWZcaW50ZXJuYWxCa2l0ZW17f2ludGVybmFsQmtpdGVtATk5OCwzMzA0MworXGRl ZlxpbnRlcm5hbEJraXRlbXh7f2ludGVybmFsQmtpdGVteAE5OTksMzMwOTUKK1xkZWZca2l0ZW16 enogIzF7f2tpdGVtenp6ATEwMDEsMzMxNDIKK1xkZWZceGl0ZW16enogIzF7f3hpdGVtenp6ATEw MDQsMzMyNDQKK1xkZWZcaXRlbXp6eiAjMXt/aXRlbXp6egExMDA3LDMzMzQ3CitcZGVmXGl0ZW17 f2l0ZW0BMTAzNywzNDQxOAorXGRlZlxpdGVteHt/aXRlbXgBMTAzOCwzNDQ2OQorXGRlZlxraXRl bXt/a2l0ZW0BMTAzOSwzNDUyMgorXGRlZlxraXRlbXh7f2tpdGVteAExMDQwLDM0NTc1CitcZGVm XHhpdGVte394aXRlbQExMDQxLDM0NjMwCitcZGVmXHhpdGVteHt/eGl0ZW14ATEwNDIsMzQ2ODMK K1xkZWZcZGVzY3JpcHRpb257f2Rlc2NyaXB0aW9uATEwNDUsMzQ3OTMKK1xkZWZcdGFibGV7f3Rh YmxlATEwNDcsMzQ4NDMKK1xnZGVmXHRhYmxleCAjMV5eTXt/dGFibGV4ATEwNDksMzQ5MjUKK1xk ZWZcZnRhYmxle39mdGFibGUBMTA1MiwzNDk4NworXGdkZWZcZnRhYmxleCAjMV5eTXt/ZnRhYmxl eAExMDU0LDM1MDcxCitcZGVmXEVmdGFibGV7f0VmdGFibGUBMTA1NiwzNTEzMworXGxldFxFdGFi bGU9XHJlbGF4fX9FdGFibGUBMTA1NywzNTE4MAorXGRlZlx2dGFibGV7f3Z0YWJsZQExMDU5LDM1 MjAyCitcZ2RlZlx2dGFibGV4ICMxXl5Ne392dGFibGV4ATEwNjEsMzUyODYKK1xkZWZcRXZ0YWJs ZXt/RXZ0YWJsZQExMDYzLDM1MzQ4CitcbGV0XEV0YWJsZT1ccmVsYXh9f0V0YWJsZQExMDY0LDM1 Mzk1CitcZGVmXGRvbnRpbmRleCAjMXt/ZG9udGluZGV4ATEwNjYsMzU0MTcKK1xkZWZcZm5pdGVt aW5kZXggIzF7f2ZuaXRlbWluZGV4ATEwNjcsMzU0MzcKK1xkZWZcdnJpdGVtaW5kZXggIzF7f3Zy aXRlbWluZGV4ATEwNjgsMzU0ODIKK1xnZGVmXHRhYmxleSMxIzIgIzMgIzQgIzUgIzYgIzdcZW5k dGFibGV5e390YWJsZXkBMTA3MSwzNTU0MworXGRlZlx0YWJsZXogIzEjMiMzIzQjNSM2e390YWJs ZXoBMTA3NCwzNTYzMQorXGRlZlxFZGVzY3JpcHRpb257f0VkZXNjcmlwdGlvbgExMDc3LDM1Njg5 CitcbGV0XGl0ZW1pbmRleD0jMSV/aXRlbWluZGV4ATEwNzgsMzU3MzUKK1xkZWZcaXRlbWZvbnR7 f2l0ZW1mb250ATEwODIsMzU4OTAKK1xkZWZcRXRhYmxle39FdGFibGUBMTA5MCwzNjExNgorXGxl dFxpdGVtID0gXGludGVybmFsQml0ZW0gJX9pdGVtATEwOTEsMzYxNjIKK1xsZXRcaXRlbXggPSBc aW50ZXJuYWxCaXRlbXggJX9pdGVteAExMDkyLDM2MTkxCitcbGV0XGtpdGVtID0gXGludGVybmFs QmtpdGVtICV/a2l0ZW0BMTA5MywzNjIyMgorXGxldFxraXRlbXggPSBcaW50ZXJuYWxCa2l0ZW14 ICV/a2l0ZW14ATEwOTQsMzYyNTMKK1xsZXRceGl0ZW0gPSBcaW50ZXJuYWxCeGl0ZW0gJX94aXRl bQExMDk1LDM2Mjg2CitcbGV0XHhpdGVteCA9IFxpbnRlcm5hbEJ4aXRlbXggJX94aXRlbXgBMTA5 NiwzNjMxNworXGRlZlxpdGVtaXple39pdGVtaXplATExMDMsMzY0NDAKK1xkZWZcaXRlbWl6ZXp6 eiAjMXt/aXRlbWl6ZXp6egExMTA1LDM2NDc2CitcZGVmXGl0ZW1pemV5ICMxIzJ7f2l0ZW1pemV5 ATExMTAsMzY1NzEKK1xkZWZcaXRlbWNvbnRlbnRze39pdGVtY29udGVudHMBMTEyMCwzNjg1OAor XGxldFxpdGVtPVxpdGVtaXplaXRlbX1/aXRlbQExMTIxLDM2ODgxCitcZGVmXGJ1bGxldHt/YnVs bGV0ATExMjMsMzY5MDYKK1xkZWZcbWludXN7f21pbnVzATExMjQsMzY5MzMKK1xkZWZcZnJlbmNo c3BhY2luZ3t/ZnJlbmNoc3BhY2luZwExMTI4LDM3MDQxCitcZGVmXHNwbGl0b2ZmIzEjMlxlbmRt YXJre39zcGxpdG9mZgExMTM0LDM3MjY2CitcZGVmXHNwbGl0b2ZmIzEjMlxlbmRtYXJre1xkZWZc Zmlyc3R7f2ZpcnN0ATExMzQsMzcyNjYKK1xkZWZcc3BsaXRvZmYjMSMyXGVuZG1hcmt7XGRlZlxm aXJzdHsjMX1cZGVmXHJlc3R7f3Jlc3QBMTEzNCwzNzI2NgorXGRlZlxlbnVtZXJhdGV7f2VudW1l cmF0ZQExMTQwLDM3NDk2CitcZGVmXGVudW1lcmF0ZXp6eiAjMXt/ZW51bWVyYXRlenp6ATExNDEs Mzc1MzUKK1xkZWZcZW51bWVyYXRleSAjMSAjMlxlbmRlbnVtZXJhdGV5e39lbnVtZXJhdGV5ATEx NDIsMzc1ODgKKyAgXGRlZlx0aGVhcmd7f3RoZWFyZwExMTQ2LDM3NzM1CisgIFxpZnhcdGhlYXJn XGVtcHR5IFxkZWZcdGhlYXJne390aGVhcmcBMTE0NywzNzc1NAorXGRlZlxudW1lcmljZW51bWVy YXRle39udW1lcmljZW51bWVyYXRlATExODQsMzkwODgKK1xkZWZcbG93ZXJjYXNlZW51bWVyYXRl e39sb3dlcmNhc2VlbnVtZXJhdGUBMTE5MCwzOTIxOAorXGRlZlx1cHBlcmNhc2VlbnVtZXJhdGV7 f3VwcGVyY2FzZWVudW1lcmF0ZQExMjAzLDM5NTY1CitcZGVmXHN0YXJ0ZW51bWVyYXRpb24jMXt/ c3RhcnRlbnVtZXJhdGlvbgExMjE5LDQwMDU1CitcZGVmXGFscGhhZW51bWVyYXRle39hbHBoYWVu dW1lcmF0ZQExMjI3LDQwMjM3CitcZGVmXGNhcHNlbnVtZXJhdGV7f2NhcHNlbnVtZXJhdGUBMTIy OCw0MDI3MgorXGRlZlxFYWxwaGFlbnVtZXJhdGV7f0VhbHBoYWVudW1lcmF0ZQExMjI5LDQwMzA2 CitcZGVmXEVjYXBzZW51bWVyYXRle39FY2Fwc2VudW1lcmF0ZQExMjMwLDQwMzQwCitcZGVmXGl0 ZW1pemVpdGVte39pdGVtaXplaXRlbQExMjM0LDQwNDIwCit7XGxldFxwYXI9XGVuZGdyYWYgXHNt YWxsYnJlYWt9f3BhcgExMjM2LDQwNDYwCitcZ2RlZlxuZXd3cml0ZXt/bmV3d3JpdGUBMTI0OSw0 MDg0MQorXGRlZlxuZXdpbmRleCAjMXt/bmV3aW5kZXgBMTI1OSw0MTI3NworXGV4cGFuZGFmdGVy XHhkZWZcY3NuYW1lIzFpbmRleFxlbmRjc25hbWV7f2NzbmFtZQExMjYyLDQxNDM5CitcZGVmXGRl ZmluZGV4e39kZWZpbmRleAExMjY4LDQxNTY2CitcZGVmXG5ld2NvZGVpbmRleCAjMXt/bmV3Y29k ZWluZGV4ATEyNzIsNDE2NzQKK1xleHBhbmRhZnRlclx4ZGVmXGNzbmFtZSMxaW5kZXhcZW5kY3Nu YW1le39jc25hbWUBMTI3NSw0MTg0MAorXGRlZlxkZWZjb2RlaW5kZXh7f2RlZmNvZGVpbmRleAEx Mjc5LDQxOTM0CitcZGVmXHN5bmluZGV4ICMxICMyIHt/c3luaW5kZXgBMTI4Myw0MjExNAorXGV4 cGFuZGFmdGVyXGxldFxleHBhbmRhZnRlclxzeW5pbmRleGZvb1xleHBhbmRhZnRlcj1cY3NuYW1l IzJpbmRmaWxlXGVuZGNzbmFtZX9leHBhbmRhZnRlcgExMjg0LDQyMTM3CitcZXhwYW5kYWZ0ZXJc bGV0XGNzbmFtZSMxaW5kZmlsZVxlbmRjc25hbWU9XHN5bmluZGV4Zm9vf2NzbmFtZQExMjg1LDQy MjE3CitcZXhwYW5kYWZ0ZXJceGRlZlxjc25hbWUjMWluZGV4XGVuZGNzbmFtZXt/Y3NuYW1lATEy ODYsNDIyNzMKK1xkZWZcc3luY29kZWluZGV4ICMxICMyIHt/c3luY29kZWluZGV4ATEyOTIsNDI0 NTQKK1xleHBhbmRhZnRlclxsZXRcZXhwYW5kYWZ0ZXJcc3luaW5kZXhmb29cZXhwYW5kYWZ0ZXI9 XGNzbmFtZSMyaW5kZmlsZVxlbmRjc25hbWV/ZXhwYW5kYWZ0ZXIBMTI5Myw0MjQ4MQorXGV4cGFu ZGFmdGVyXGxldFxjc25hbWUjMWluZGZpbGVcZW5kY3NuYW1lPVxzeW5pbmRleGZvb39jc25hbWUB MTI5NCw0MjU2MQorXGV4cGFuZGFmdGVyXHhkZWZcY3NuYW1lIzFpbmRleFxlbmRjc25hbWV7f2Nz bmFtZQExMjk1LDQyNjE3CitcZGVmXGRvaW5kZXgjMXt/ZG9pbmRleAExMzA5LDQzMTMzCitcZGVm XGRvaW5kZXgjMXtcZWRlZlxpbmRleG5hbWV7f2luZGV4bmFtZQExMzA5LDQzMTMzCitcZGVmXHNp bmdsZWluZGV4ZXIgIzF7f3NpbmdsZWluZGV4ZXIBMTMxMCw0MzE5MgorXGRlZlxzaW5nbGVpbmRl eGVyICMxe1xkb2luZHtcaW5kZXhuYW1lfX9uYW1lATEzMTAsNDMxOTIKK1xkZWZcZG9jb2RlaW5k ZXgjMXt/ZG9jb2RlaW5kZXgBMTMxMyw0MzMwNAorXGRlZlxkb2NvZGVpbmRleCMxe1xlZGVmXGlu ZGV4bmFtZXt/aW5kZXhuYW1lATEzMTMsNDMzMDQKK1xkZWZcc2luZ2xlY29kZWluZGV4ZXIgIzF7 f3NpbmdsZWNvZGVpbmRleGVyATEzMTQsNDMzNzEKK1xkZWZcc2luZ2xlY29kZWluZGV4ZXIgIzF7 XGRvaW5ke1xpbmRleG5hbWV9f25hbWUBMTMxNCw0MzM3MQorXGRlZlxpbmRleGR1bW1pZXN7f2lu ZGV4ZHVtbWllcwExMzE2LDQzNDI5CitcZGVmXF97f18BMTMxNyw0MzQ0OQorXGRlZlx3e393ATEz MTgsNDM0NzcKK1xkZWZcYmZ7f2JmATEzMTksNDM1MDQKK1xkZWZccm17f3JtATEzMjAsNDM1MzMK K1xkZWZcc2x7f3NsATEzMjEsNDM1NjIKK1xkZWZcc2Z7f3NmATEzMjIsNDM1OTEKK1xkZWZcdHR7 f3R0ATEzMjMsNDM2MTkKK1xkZWZcZ3Rye39ndHIBMTMyNCw0MzY0NworXGRlZlxsZXNze39sZXNz ATEzMjUsNDM2NzcKK1xkZWZcaGF0e39oYXQBMTMyNiw0MzcwOQorXGRlZlxjaGFye39jaGFyATEz MjcsNDM3MzkKK1xkZWZcVGVYe39UZVgBMTMyOCw0Mzc3MQorXGRlZlxkb3Rze39kb3RzATEzMjks NDM4MDEKK1xkZWZcY29weXJpZ2h0e39jb3B5cmlnaHQBMTMzMCw0MzgzNAorXGRlZlx0Y2xvc2Uj IzF7f3RjbG9zZQExMzMxLDQzODc3CitcZGVmXGNvZGUjIzF7f2NvZGUBMTMzMiw0MzkyMgorXGRl ZlxzYW1wIyMxe39zYW1wATEzMzMsNDM5NjMKK1xkZWZcdCMjMXt/dAExMzM0LDQ0MDA0CitcZGVm XHIjIzF7f3IBMTMzNSw0NDAzOQorXGRlZlxpIyMxe39pATEzMzYsNDQwNzQKK1xkZWZcYiMjMXt/ YgExMzM3LDQ0MTA5CitcZGVmXGNpdGUjIzF7f2NpdGUBMTMzOCw0NDE0NAorXGRlZlxrZXkjIzF7 f2tleQExMzM5LDQ0MTg1CitcZGVmXGZpbGUjIzF7f2ZpbGUBMTM0MCw0NDIyNAorXGRlZlx2YXIj IzF7f3ZhcgExMzQxLDQ0MjY1CitcZGVmXGtiZCMjMXt/a2JkATEzNDIsNDQzMDQKK1xkZWZcaW5k ZXhkdW1teWZvbnQjMXt/aW5kZXhkdW1teWZvbnQBMTM0Nyw0NDQ2MAorXGRlZlxpbmRleGR1bW15 dGV4e39pbmRleGR1bW15dGV4ATEzNDgsNDQ0ODYKK1xkZWZcaW5kZXhkdW1teWRvdHN7f2luZGV4 ZHVtbXlkb3RzATEzNDksNDQ1MTAKK1xkZWZcaW5kZXhub2ZvbnRze39pbmRleG5vZm9udHMBMTM1 MSw0NDUzNgorXGxldFx3PVxpbmRleGR1bW15Zm9udH93ATEzNTIsNDQ1NTYKIFxsZXRcdz1caW5k ZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNTIsNDQ1NTYKK1xsZXRcdD1caW5kZXhkdW1teWZvbnR/ dAExMzUzLDQ0NTc5CiBcbGV0XHQ9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9udAExMzUzLDQ0NTc5 CitcbGV0XHI9XGluZGV4ZHVtbXlmb250f3IBMTM1NCw0NDYwMgogXGxldFxyPVxpbmRleGR1bW15 Zm9udH9kdW1teWZvbnQBMTM1NCw0NDYwMgorXGxldFxpPVxpbmRleGR1bW15Zm9udH9pATEzNTUs NDQ2MjUKIFxsZXRcaT1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNTUsNDQ2MjUKK1xsZXRc Yj1caW5kZXhkdW1teWZvbnR/YgExMzU2LDQ0NjQ4CiBcbGV0XGI9XGluZGV4ZHVtbXlmb250f2R1 bW15Zm9udAExMzU2LDQ0NjQ4CitcbGV0XGVtcGg9XGluZGV4ZHVtbXlmb250f2VtcGgBMTM1Nyw0 NDY3MQogXGxldFxlbXBoPVxpbmRleGR1bW15Zm9udH9kdW1teWZvbnQBMTM1Nyw0NDY3MQorXGxl dFxzdHJvbmc9XGluZGV4ZHVtbXlmb250f3N0cm9uZwExMzU4LDQ0Njk3CiBcbGV0XHN0cm9uZz1c aW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNTgsNDQ2OTcKLVxsZXRcY2l0ZT1caW5kZXhkdW1t eWZvbnR/PVxpbmRleGR1bW15Zm9udAExMzU5LDQ0NzI1CitcbGV0XGNpdGU9XGluZGV4ZHVtbXlm b250f2NpdGUBMTM1OSw0NDcyNQorXGxldFxjaXRlPVxpbmRleGR1bW15Zm9udH9kdW1teWZvbnQB MTM1OSw0NDcyNQorXGxldFxzYz1caW5kZXhkdW1teWZvbnR/c2MBMTM2MCw0NDc1MQogXGxldFxz Yz1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNjAsNDQ3NTEKK1xsZXRcdGNsb3NlPVxpbmRl eGR1bW15Zm9udH90Y2xvc2UBMTM2NCw0NDkyMwogXGxldFx0Y2xvc2U9XGluZGV4ZHVtbXlmb250 f2R1bW15Zm9udAExMzY0LDQ0OTIzCitcbGV0XGNvZGU9XGluZGV4ZHVtbXlmb250f2NvZGUBMTM2 NSw0NDk1MQogXGxldFxjb2RlPVxpbmRleGR1bW15Zm9udH9kdW1teWZvbnQBMTM2NSw0NDk1MQor XGxldFxmaWxlPVxpbmRleGR1bW15Zm9udH9maWxlATEzNjYsNDQ5NzcKIFxsZXRcZmlsZT1caW5k ZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNjYsNDQ5NzcKK1xsZXRcc2FtcD1caW5kZXhkdW1teWZv bnR/c2FtcAExMzY3LDQ1MDAzCiBcbGV0XHNhbXA9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9udAEx MzY3LDQ1MDAzCitcbGV0XGtiZD1caW5kZXhkdW1teWZvbnR/a2JkATEzNjgsNDUwMjkKIFxsZXRc a2JkPVxpbmRleGR1bW15Zm9udH9kdW1teWZvbnQBMTM2OCw0NTAyOQorXGxldFxrZXk9XGluZGV4 ZHVtbXlmb250f2tleQExMzY5LDQ1MDU0CiBcbGV0XGtleT1caW5kZXhkdW1teWZvbnR/ZHVtbXlm b250ATEzNjksNDUwNTQKK1xsZXRcdmFyPVxpbmRleGR1bW15Zm9udH92YXIBMTM3MCw0NTA3OQog XGxldFx2YXI9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9udAExMzcwLDQ1MDc5CitcbGV0XFRlWD1c aW5kZXhkdW1teXRleH9UZVgBMTM3MSw0NTEwNAogXGxldFxUZVg9XGluZGV4ZHVtbXl0ZXh/ZHVt bXl0ZXgBMTM3MSw0NTEwNAorXGxldFxkb3RzPVxpbmRleGR1bW15ZG90c39kb3RzATEzNzIsNDUx MjgKIFxsZXRcZG90cz1caW5kZXhkdW1teWRvdHN/ZHVtbXlkb3RzATEzNzIsNDUxMjgKLVxsZXRc aW5kZXhiYWNrc2xhc2g9MCAgJW92ZXJyaWRkZW4gZHVyaW5nIFxwcmludGluZGV4Ln9iYWNrc2xh c2g9MAExMzgyLDQ1MzgwCi1cZGVmXGRvaW5kICMxIzJ7f1xkb2luZAExMzg0LDQ1NDM2CitcbGV0 XGluZGV4YmFja3NsYXNoPTAgICVvdmVycmlkZGVuIGR1cmluZyBccHJpbnRpbmRleC5/aW5kZXhi YWNrc2xhc2gBMTM4Miw0NTM4MAorXGRlZlxkb2luZCAjMSMye39kb2luZAExMzg0LDQ1NDM2CiB7 XGluZGV4ZHVtbWllcyAlIE11c3QgZG8gdGhpcyBoZXJlLCBzaW5jZSBcYmYsIGV0YyBleHBhbmQg YXQgdGhpcyBzdGFnZX9kdW1taWVzATEzODYsNDU0NzkKLVxkZWZccmF3YmFja3NsYXNoeHh7f1xy YXdiYWNrc2xhc2h4eAExMzg5LDQ1NjE5Cit7XGxldFxmb2xpbz0wJSBFeHBhbmQgYWxsIG1hY3Jv cyBub3cgRVhDRVBUIFxmb2xpb39mb2xpbwExMzg4LDQ1NTY4CitcZGVmXHJhd2JhY2tzbGFzaHh4 e39yYXdiYWNrc2xhc2h4eAExMzg5LDQ1NjE5CitcZGVmXHJhd2JhY2tzbGFzaHh4e1xpbmRleGJh Y2tzbGFzaH1/YmFja3NsYXNoATEzODksNDU2MTkKIHtcaW5kZXhub2ZvbnRzf25vZm9udHMBMTM5 NCw0NTg4MQotXGRlZlxkb3N1YmluZCAjMSMyIzN7f1xkb3N1YmluZAExNDA1LDQ2MTkyCitceGRl Zlx0ZW1wMXt/dGVtcDEBMTM5NSw0NTg5NgorXGVkZWZcdGVtcHt/dGVtcAExMzk5LDQ2MDY4Citc ZGVmXGRvc3ViaW5kICMxIzIjM3t/ZG9zdWJpbmQBMTQwNSw0NjE5Mgoge1xpbmRleGR1bW1pZXMg JSBNdXN0IGRvIHRoaXMgaGVyZSwgc2luY2UgXGJmLCBldGMgZXhwYW5kIGF0IHRoaXMgc3RhZ2V/ ZHVtbWllcwExNDA3LDQ2MjQwCi1cZGVmXHJhd2JhY2tzbGFzaHh4e39ccmF3YmFja3NsYXNoeHgB MTQxMCw0NjM0NAore1xsZXRcZm9saW89MCV/Zm9saW8BMTQwOSw0NjMyOQorXGRlZlxyYXdiYWNr c2xhc2h4eHt/cmF3YmFja3NsYXNoeHgBMTQxMCw0NjM0NAorXGRlZlxyYXdiYWNrc2xhc2h4eHtc aW5kZXhiYWNrc2xhc2h9f2JhY2tzbGFzaAExNDEwLDQ2MzQ0CiB7XGluZGV4bm9mb250c39ub2Zv bnRzATE0MTQsNDY0OTgKLVxkZWZcZmluZGV4IHt/XGZpbmRleAExNDQzLDQ3NDI5Ci1cZGVmXGtp bmRleCB7f1xraW5kZXgBMTQ0NCw0NzQ1MgotXGRlZlxjaW5kZXgge39cY2luZGV4ATE0NDUsNDc0 NzUKLVxkZWZcdmluZGV4IHt/XHZpbmRleAExNDQ2LDQ3NDk4Ci1cZGVmXHRpbmRleCB7f1x0aW5k ZXgBMTQ0Nyw0NzUyMQotXGRlZlxwaW5kZXgge39ccGluZGV4ATE0NDgsNDc1NDQKLVxkZWZcY2lu ZGV4c3ViIHt/XGNpbmRleHN1YgExNDUwLDQ3NTY4Ci1cZGVmXHByaW50aW5kZXh7f1xwcmludGlu ZGV4ATE0NjIsNDc4OTUKLVxkZWZcZG9wcmludGluZGV4IzF7f1xkb3ByaW50aW5kZXgBMTQ2NCw0 NzkzNgotICBcZGVmXGluZGV4YmFja3NsYXNoe39caW5kZXhiYWNrc2xhc2gBMTQ4MSw0ODQyMQor XHhkZWZcdGVtcDF7f3RlbXAxATE0MTUsNDY1MTMKK1xlZGVmXHRlbXB7f3RlbXABMTQxOSw0NjY4 OAorXGRlZlxmaW5kZXgge39maW5kZXgBMTQ0Myw0NzQyOQorXGRlZlxraW5kZXgge39raW5kZXgB MTQ0NCw0NzQ1MgorXGRlZlxjaW5kZXgge39jaW5kZXgBMTQ0NSw0NzQ3NQorXGRlZlx2aW5kZXgg e392aW5kZXgBMTQ0Niw0NzQ5OAorXGRlZlx0aW5kZXgge390aW5kZXgBMTQ0Nyw0NzUyMQorXGRl ZlxwaW5kZXgge39waW5kZXgBMTQ0OCw0NzU0NAorXGRlZlxjaW5kZXhzdWIge39jaW5kZXhzdWIB MTQ1MCw0NzU2OAorXGdkZWZcY2luZGV4c3ViICIjMSIgIzJeXk17f2NpbmRleHN1YgExNDUyLDQ3 NjMxCitcZGVmXHByaW50aW5kZXh7f3ByaW50aW5kZXgBMTQ2Miw0Nzg5NQorXGRlZlxkb3ByaW50 aW5kZXgjMXt/ZG9wcmludGluZGV4ATE0NjQsNDc5MzYKKyAgXGRlZlxpbmRleGJhY2tzbGFzaHt/ aW5kZXhiYWNrc2xhc2gBMTQ4MSw0ODQyMQogICBcaW5kZXhmb250c1xybSBcdG9sZXJhbmNlPTk1 MDAgXGFkdmFuY2VcYmFzZWxpbmVza2lwIC0xcHR/Zm9udHNccm0BMTQ4Miw0ODQ2MAotXGRlZlxp bml0aWFsICMxe39caW5pdGlhbAExNTE3LDQ5NTMyCi1cZGVmXGVudHJ5ICMxIzJ7f1xlbnRyeQEx NTIzLDQ5NzM5CitcZGVmXGluaXRpYWwgIzF7f2luaXRpYWwBMTUxNyw0OTUzMgore1xsZXRcdGVu dHQ9XHNlY3R0IFxsZXRcdHQ9XHNlY3R0IFxsZXRcc2Y9XHNlY3R0f3RlbnR0ATE1MTgsNDk1NTAK K3tcbGV0XHRlbnR0PVxzZWN0dCBcbGV0XHR0PVxzZWN0dCBcbGV0XHNmPVxzZWN0dH90dAExNTE4 LDQ5NTUwCit7XGxldFx0ZW50dD1cc2VjdHQgXGxldFx0dD1cc2VjdHQgXGxldFxzZj1cc2VjdHR/ c2YBMTUxOCw0OTU1MAorXGRlZlxlbnRyeSAjMSMye39lbnRyeQExNTIzLDQ5NzM5CiAgIFxudWxs XG5vYnJlYWtcaW5kZXhkb3RmaWxsICUgSGF2ZSBsZWFkZXJzIGJlZm9yZSB0aGUgcGFnZSBudW1i ZXIuf2RvdGZpbGwBMTU0MCw1MDM4NgotXGRlZlxpbmRleGRvdGZpbGx7f1xpbmRleGRvdGZpbGwB MTU0OSw1MDcxNAotXGRlZlxwcmltYXJ5ICMxe39ccHJpbWFyeQExNTUyLDUwODIwCi1cZGVmXHNl Y29uZGFyeSAjMSMye39cc2Vjb25kYXJ5ATE1NTYsNTA5MDIKK1xkZWZcaW5kZXhkb3RmaWxse39p bmRleGRvdGZpbGwBMTU0OSw1MDcxNAorXGRlZlxwcmltYXJ5ICMxe39wcmltYXJ5ATE1NTIsNTA4 MjAKK1xkZWZcc2Vjb25kYXJ5ICMxIzJ7f3NlY29uZGFyeQExNTU2LDUwOTAyCiBcbm9pbmRlbnRc aHNraXBcc2Vjb25kYXJ5aW5kZW50XGhib3h7IzF9XGluZGV4ZG90ZmlsbCAjMlxwYXJ/ZG90Zmls bAExNTU5LDUwOTg0CiBcbmV3Ym94XHBhcnRpYWxwYWdlf2lhbHBhZ2UBMTU2Niw1MTE1NwotXGRl ZlxiZWdpbmRvdWJsZWNvbHVtbnN7f1xiZWdpbmRvdWJsZWNvbHVtbnMBMTU3Miw1MTMxNQotICBc b3V0cHV0PXtcZ2xvYmFsXHNldGJveFxwYXJ0aWFscGFnZT1/aWFscGFnZT0BMTU3Myw1MTM1MQot XGRlZlxlbmRkb3VibGVjb2x1bW5ze39cZW5kZG91YmxlY29sdW1ucwExNTc3LDUxNTM5Ci1cZGVm XGRvdWJsZWNvbHVtbm91dHt/XGRvdWJsZWNvbHVtbm91dAExNTgwLDUxNjI0CitcZGVmXGJlZ2lu ZG91YmxlY29sdW1uc3t/YmVnaW5kb3VibGVjb2x1bW5zATE1NzIsNTEzMTUKKyAgXG91dHB1dD17 XGdsb2JhbFxzZXRib3hccGFydGlhbHBhZ2U9f2lhbHBhZ2UBMTU3Myw1MTM1MQorXGRlZlxlbmRk b3VibGVjb2x1bW5ze39lbmRkb3VibGVjb2x1bW5zATE1NzcsNTE1MzkKK1xkZWZcZG91YmxlY29s dW1ub3V0e39kb3VibGVjb2x1bW5vdXQBMTU4MCw1MTYyNAogICBcZGltZW5APVxwYWdlaGVpZ2h0 IFxhZHZhbmNlXGRpbWVuQCBieS1caHRccGFydGlhbHBhZ2V/aWFscGFnZQExNTgxLDUxNjkzCi1c ZGVmXHBhZ2Vzb2Zhcnt/XHBhZ2Vzb2ZhcgExNTg0LDUxODcxCi1cZGVmXGJhbGFuY2Vjb2x1bW5z e39cYmFsYW5jZWNvbHVtbnMBMTU4OCw1MjEwOAorXGRlZlxwYWdlc29mYXJ7f3BhZ2Vzb2ZhcgEx NTg0LDUxODcxCitcZGVmXHBhZ2Vzb2ZhcntcdW52Ym94XHBhcnRpYWxwYWdlICV/aWFscGFnZQEx NTg0LDUxODcxCitcZGVmXGJhbGFuY2Vjb2x1bW5ze39iYWxhbmNlY29sdW1ucwExNTg4LDUyMTA4 CiAgIFxhdmFpbGRpbWVuQD1ccGFnZWhlaWdodCBcYWR2YW5jZVxhdmFpbGRpbWVuQCBieS1caHRc cGFydGlhbHBhZ2V/aWFscGFnZQExNTk0LDUyMjc5CiAgICAgIFxkaW1lbkA9XHBhZ2VoZWlnaHQg XGFkdmFuY2VcZGltZW5AIGJ5LVxodFxwYXJ0aWFscGFnZX9pYWxwYWdlATE2MDAsNTI1NDAKIFxu ZXdjb3VudCBcYXBwZW5kaXhubyAgXGFwcGVuZGl4bm8gPSBgXEB/bm8BMTYyNyw1MzQ0NQotXGRl ZlxhcHBlbmRpeGxldHRlcnt/XGFwcGVuZGl4bGV0dGVyATE2MjgsNTM0ODYKLVxkZWZcb3BlbmNv bnRlbnRze39cb3BlbmNvbnRlbnRzATE2MzIsNTM1ODkKLVxkZWZcdGhpc2NoYXB0ZXJ7f1x0aGlz Y2hhcHRlcgExNjM3LDUzNzcwCi1cZGVmXHNlY2NoZWNrIzF7f1xzZWNjaGVjawExNjM4LDUzODA4 Ci1cZGVmXGNoYXB0ZXJub2ZvbnRze39cY2hhcHRlcm5vZm9udHMBMTY0Myw1MzkxMgotXGRlZlxy ZXN1bHR7f1xyZXN1bHQBMTY0Niw1Mzk4NwotXGRlZlxlcXVpdnt/XGVxdWl2ATE2NDcsNTQwMjIK LVxkZWZcZXhwYW5zaW9ue39cZXhwYW5zaW9uATE2NDgsNTQwNTUKLVxkZWZccHJpbnR7f1xwcmlu dAExNjQ5LDU0MDk2Ci1cZGVmXFRlWHt/XFRlWAExNjUwLDU0MTI5Ci1cZGVmXGRvdHN7f1xkb3Rz ATE2NTEsNTQxNTgKLVxkZWZcY29weXJpZ2h0e39cY29weXJpZ2h0ATE2NTIsNTQxODkKLVxkZWZc dHR7f1x0dAExNjUzLDU0MjMwCi1cZGVmXGJme39cYmYBMTY1NCw1NDI1NwotXGRlZlx3e39cdwEx NjU1LDU0Mjg1Ci1cZGVmXGxlc3N7f1xsZXNzATE2NTYsNTQzMTAKLVxkZWZcZ3Rye39cZ3RyATE2 NTcsNTQzNDEKLVxkZWZcaGF0e39caGF0ATE2NTgsNTQzNzAKLVxkZWZcY2hhcnt/XGNoYXIBMTY1 OSw1NDM5OQotXGRlZlx0Y2xvc2UjIzF7f1x0Y2xvc2UBMTY2MCw1NDQzMAotXGRlZlxjb2RlIyMx e39cY29kZQExNjYxLDU0NDc0Ci1cZGVmXHNhbXAjIzF7f1xzYW1wATE2NjIsNTQ1MTQKLVxkZWZc ciMjMXt/XHIBMTY2Myw1NDU1NAotXGRlZlxiIyMxe39cYgExNjY0LDU0NTg4Ci1cZGVmXGtleSMj MXt/XGtleQExNjY1LDU0NjIyCi1cZGVmXGZpbGUjIzF7f1xmaWxlATE2NjYsNTQ2NjAKLVxkZWZc a2JkIyMxe39ca2JkATE2NjcsNTQ3MDAKLVxkZWZcaSMjMXt/XGkBMTY2OSw1NDgwOAotXGRlZlxj aXRlIyMxe39cY2l0ZQExNjcwLDU0ODQyCi1cZGVmXHZhciMjMXt/XHZhcgExNjcxLDU0ODgyCi1c ZGVmXGVtcGgjIzF7f1xlbXBoATE2NzIsNTQ5MjAKLVxkZWZcZGZuIyMxe39cZGZuATE2NzMsNTQ5 NjAKLVxkZWZcdGhpc2NoYXB0ZXJuYW1le39cdGhpc2NoYXB0ZXJuYW1lATE2NzYsNTUwMDEKLVxv dXRlclxkZWZcY2hhcHRlcnt/XGNoYXB0ZXIBMTY3Nyw1NTA0MAotXGRlZlxjaGFwdGVyenp6ICMx e39cY2hhcHRlcnp6egExNjc4LDU1MDgxCi17XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzJQExNjg3 LDU1NDc3Ci1cZ2xvYmFsXGxldFxzZWN0aW9uID0gXG51bWJlcmVkc2Vjfz0BMTY5Miw1NTYzMAot XGdsb2JhbFxsZXRcc3Vic2VjdGlvbiA9IFxudW1iZXJlZHN1YnNlY389ATE2OTMsNTU2NjUKLVxn bG9iYWxcbGV0XHN1YnN1YnNlY3Rpb24gPSBcbnVtYmVyZWRzdWJzdWJzZWN/PQExNjk0LDU1NzA2 Ci1cb3V0ZXJcZGVmXGFwcGVuZGl4e39cYXBwZW5kaXgBMTY5Nyw1NTc1NwotXGRlZlxhcHBlbmRp eHp6eiAjMXt/XGFwcGVuZGl4enp6ATE2OTgsNTU4MDAKK1xuZXdjb3VudCBcYXBwZW5kaXhubyAg XGFwcGVuZGl4bm8gPSBgXEB/bm8BMTYyNyw1MzQ0NQorXGRlZlxhcHBlbmRpeGxldHRlcnt/YXBw ZW5kaXhsZXR0ZXIBMTYyOCw1MzQ4NgorXGRlZlxhcHBlbmRpeGxldHRlcntcY2hhclx0aGVcYXBw ZW5kaXhub31/bm8BMTYyOCw1MzQ4NgorXGRlZlxvcGVuY29udGVudHN7f29wZW5jb250ZW50cwEx NjMyLDUzNTg5CitcZGVmXHRoaXNjaGFwdGVye390aGlzY2hhcHRlcgExNjM3LDUzNzcwCitcZGVm XHRoaXNjaGFwdGVye30gXGRlZlx0aGlzc2VjdGlvbnt/dGhpc3NlY3Rpb24BMTYzNyw1Mzc3MAor XGRlZlxzZWNjaGVjayMxe39zZWNjaGVjawExNjM4LDUzODA4CitcZGVmXGNoYXB0ZXJub2ZvbnRz e39jaGFwdGVybm9mb250cwExNjQzLDUzOTEyCitcbGV0XHJhd2JhY2tzbGFzaD1ccmVsYXglf3Jh d2JhY2tzbGFzaAExNjQ0LDUzOTM0CitcbGV0XGZyZW5jaHNwYWNpbmc9XHJlbGF4JX9mcmVuY2hz cGFjaW5nATE2NDUsNTM5NjAKK1xkZWZccmVzdWx0e39yZXN1bHQBMTY0Niw1Mzk4NworXGRlZlxl cXVpdnt/ZXF1aXYBMTY0Nyw1NDAyMgorXGRlZlxleHBhbnNpb257f2V4cGFuc2lvbgExNjQ4LDU0 MDU1CitcZGVmXHByaW50e39wcmludAExNjQ5LDU0MDk2CitcZGVmXFRlWHt/VGVYATE2NTAsNTQx MjkKK1xkZWZcZG90c3t/ZG90cwExNjUxLDU0MTU4CitcZGVmXGNvcHlyaWdodHt/Y29weXJpZ2h0 ATE2NTIsNTQxODkKK1xkZWZcdHR7f3R0ATE2NTMsNTQyMzAKK1xkZWZcYmZ7f2JmATE2NTQsNTQy NTcKK1xkZWZcd3t/dwExNjU1LDU0Mjg1CitcZGVmXGxlc3N7f2xlc3MBMTY1Niw1NDMxMAorXGRl ZlxndHJ7f2d0cgExNjU3LDU0MzQxCitcZGVmXGhhdHt/aGF0ATE2NTgsNTQzNzAKK1xkZWZcY2hh cnt/Y2hhcgExNjU5LDU0Mzk5CitcZGVmXHRjbG9zZSMjMXt/dGNsb3NlATE2NjAsNTQ0MzAKK1xk ZWZcY29kZSMjMXt/Y29kZQExNjYxLDU0NDc0CitcZGVmXHNhbXAjIzF7f3NhbXABMTY2Miw1NDUx NAorXGRlZlxyIyMxe39yATE2NjMsNTQ1NTQKK1xkZWZcYiMjMXt/YgExNjY0LDU0NTg4CitcZGVm XGtleSMjMXt/a2V5ATE2NjUsNTQ2MjIKK1xkZWZcZmlsZSMjMXt/ZmlsZQExNjY2LDU0NjYwCitc ZGVmXGtiZCMjMXt/a2JkATE2NjcsNTQ3MDAKK1xkZWZcaSMjMXt/aQExNjY5LDU0ODA4CitcZGVm XGNpdGUjIzF7f2NpdGUBMTY3MCw1NDg0MgorXGRlZlx2YXIjIzF7f3ZhcgExNjcxLDU0ODgyCitc ZGVmXGVtcGgjIzF7f2VtcGgBMTY3Miw1NDkyMAorXGRlZlxkZm4jIzF7f2RmbgExNjczLDU0OTYw CitcZGVmXHRoaXNjaGFwdGVybmFtZXt/dGhpc2NoYXB0ZXJuYW1lATE2NzYsNTUwMDEKK1xvdXRl clxkZWZcY2hhcHRlcnt/Y2hhcHRlcgExNjc3LDU1MDQwCitcb3V0ZXJcZGVmXGNoYXB0ZXJ7XHBh cnNlYXJnXGNoYXB0ZXJ6enp9f3p6egExNjc3LDU1MDQwCitcZGVmXGNoYXB0ZXJ6enogIzF7f2No YXB0ZXJ6enoBMTY3OCw1NTA4MQorXGdkZWZcdGhpc3NlY3Rpb257f3RoaXNzZWN0aW9uATE2ODIs NTUyNDYKK1xnZGVmXHRoaXNjaGFwdGVybmFtZXt/dGhpc2NoYXB0ZXJuYW1lATE2ODMsNTUyNjkK K1x4ZGVmXHRoaXNjaGFwdGVye390aGlzY2hhcHRlcgExNjg2LDU1NDEwCit7XGNoYXB0ZXJub2Zv bnRzJX9ub2ZvbnRzATE2ODcsNTU0NzcKK1xlZGVmXHRlbXB7f3RlbXABMTY4OCw1NTQ5NQorXGds b2JhbFxsZXRcc2VjdGlvbiA9IFxudW1iZXJlZHNlY39zZWN0aW9uATE2OTIsNTU2MzAKK1xnbG9i YWxcbGV0XHN1YnNlY3Rpb24gPSBcbnVtYmVyZWRzdWJzZWN/c3Vic2VjdGlvbgExNjkzLDU1NjY1 CitcZ2xvYmFsXGxldFxzdWJzdWJzZWN0aW9uID0gXG51bWJlcmVkc3Vic3Vic2Vjf3N1YnN1YnNl Y3Rpb24BMTY5NCw1NTcwNgorXG91dGVyXGRlZlxhcHBlbmRpeHt/YXBwZW5kaXgBMTY5Nyw1NTc1 NworXG91dGVyXGRlZlxhcHBlbmRpeHtccGFyc2VhcmdcYXBwZW5kaXh6enp9f3p6egExNjk3LDU1 NzU3CitcZGVmXGFwcGVuZGl4enp6ICMxe39hcHBlbmRpeHp6egExNjk4LDU1ODAwCiBcZ2xvYmFs XGFkdmFuY2UgXGFwcGVuZGl4bm8gYnkgMSBcbWVzc2FnZXt/bm8BMTcwMCw1NTg3NworXGdsb2Jh bFxhZHZhbmNlIFxhcHBlbmRpeG5vIGJ5IDEgXG1lc3NhZ2V7QXBwZW5kaXggXGFwcGVuZGl4bGV0 dGVyfX9sZXR0ZXIBMTcwMCw1NTg3NwogXGNoYXBtYWNybyB7IzF9e0FwcGVuZGl4IFxhcHBlbmRp eGxldHRlcn1/bGV0dGVyATE3MDEsNTU5NDYKK1xnZGVmXHRoaXNzZWN0aW9ue390aGlzc2VjdGlv bgExNzAyLDU1OTg5CitcZ2RlZlx0aGlzY2hhcHRlcm5hbWV7f3RoaXNjaGFwdGVybmFtZQExNzAz LDU2MDEyCitceGRlZlx0aGlzY2hhcHRlcnt/dGhpc2NoYXB0ZXIBMTcwNCw1NjAzOQogXHhkZWZc dGhpc2NoYXB0ZXJ7QXBwZW5kaXggXGFwcGVuZGl4bGV0dGVyOiBcbm9leHBhbmRcdGhpc2NoYXB0 ZXJuYW1lfX9sZXR0ZXI6ATE3MDQsNTYwMzkKLXtcY2hhcHRlcm5vZm9udHMlf25vZm9udHMlATE3 MDUsNTYxMTEKK3tcY2hhcHRlcm5vZm9udHMlf25vZm9udHMBMTcwNSw1NjExMQorXGVkZWZcdGVt cHt/dGVtcAExNzA2LDU2MTI5CiAgIHsjMX17QXBwZW5kaXggXGFwcGVuZGl4bGV0dGVyfX9sZXR0 ZXIBMTcwNyw1NjE2NwogXGFwcGVuZGl4bm9kZXJlZiAlf25vZGVyZWYBMTcxMCw1NjI2NwotXGds b2JhbFxsZXRcc2VjdGlvbiA9IFxhcHBlbmRpeHNlY389ATE3MTEsNTYyODYKLVxnbG9iYWxcbGV0 XHN1YnNlY3Rpb24gPSBcYXBwZW5kaXhzdWJzZWN/PQExNzEyLDU2MzIxCi1cZ2xvYmFsXGxldFxz dWJzdWJzZWN0aW9uID0gXGFwcGVuZGl4c3Vic3Vic2Vjfz0BMTcxMyw1NjM2MgotXG91dGVyXGRl Zlx0b3B7f1x0b3ABMTcxNiw1NjQxMwotXG91dGVyXGRlZlx1bm51bWJlcmVke39cdW5udW1iZXJl ZAExNzE3LDU2NDUzCi1cZGVmXHVubnVtYmVyZWR6enogIzF7f1x1bm51bWJlcmVkenp6ATE3MTgs NTY1MDAKLXtcY2hhcHRlcm5vZm9udHMlf25vZm9udHMlATE3MjIsNTY2NjMKLVxnbG9iYWxcbGV0 XHNlY3Rpb24gPSBcdW5udW1iZXJlZHNlY389ATE3MjcsNTY4MTMKLVxnbG9iYWxcbGV0XHN1YnNl Y3Rpb24gPSBcdW5udW1iZXJlZHN1YnNlY389ATE3MjgsNTY4NTAKLVxnbG9iYWxcbGV0XHN1YnN1 YnNlY3Rpb24gPSBcdW5udW1iZXJlZHN1YnN1YnNlY389ATE3MjksNTY4OTMKLVxvdXRlclxkZWZc bnVtYmVyZWRzZWN7f1xudW1iZXJlZHNlYwExNzMyLDU2OTQ2Ci1cZGVmXHNlY3p6eiAjMXt/XHNl Y3p6egExNzMzLDU2OTg3Ci17XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzJQExNzM2LDU3MTQzCi1c b3V0ZXJcZGVmXGFwcGVuZGl4c2VjdGlvbnt/XGFwcGVuZGl4c2VjdGlvbgExNzQ1LDU3MzI5Ci1c b3V0ZXJcZGVmXGFwcGVuZGl4c2Vje39cYXBwZW5kaXhzZWMBMTc0Niw1NzM4NgotXGRlZlxhcHBl bmRpeHNlY3Rpb256enogIzF7f1xhcHBlbmRpeHNlY3Rpb256enoBMTc0Nyw1NzQzOQorXGdsb2Jh bFxsZXRcc2VjdGlvbiA9IFxhcHBlbmRpeHNlY39zZWN0aW9uATE3MTEsNTYyODYKK1xnbG9iYWxc bGV0XHNlY3Rpb24gPSBcYXBwZW5kaXhzZWN/c2VjATE3MTEsNTYyODYKK1xnbG9iYWxcbGV0XHN1 YnNlY3Rpb24gPSBcYXBwZW5kaXhzdWJzZWN/c3Vic2VjdGlvbgExNzEyLDU2MzIxCitcZ2xvYmFs XGxldFxzdWJzZWN0aW9uID0gXGFwcGVuZGl4c3Vic2Vjf3N1YnNlYwExNzEyLDU2MzIxCitcZ2xv YmFsXGxldFxzdWJzdWJzZWN0aW9uID0gXGFwcGVuZGl4c3Vic3Vic2Vjf3N1YnN1YnNlY3Rpb24B MTcxMyw1NjM2MgorXGdsb2JhbFxsZXRcc3Vic3Vic2VjdGlvbiA9IFxhcHBlbmRpeHN1YnN1YnNl Y39zdWJzdWJzZWMBMTcxMyw1NjM2MgorXG91dGVyXGRlZlx0b3B7f3RvcAExNzE2LDU2NDEzCitc b3V0ZXJcZGVmXHVubnVtYmVyZWR7f3VubnVtYmVyZWQBMTcxNyw1NjQ1MworXGRlZlx1bm51bWJl cmVkenp6ICMxe391bm51bWJlcmVkenp6ATE3MTgsNTY1MDAKK1xnZGVmXHRoaXNjaGFwdGVye390 aGlzY2hhcHRlcgExNzIxLDU2NjE5CitcZ2RlZlx0aGlzY2hhcHRlcnsjMX1cZ2RlZlx0aGlzc2Vj dGlvbnt/dGhpc3NlY3Rpb24BMTcyMSw1NjYxOQore1xjaGFwdGVybm9mb250cyV/bm9mb250cwEx NzIyLDU2NjYzCitcZWRlZlx0ZW1we390ZW1wATE3MjMsNTY2ODEKK1xnbG9iYWxcbGV0XHNlY3Rp b24gPSBcdW5udW1iZXJlZHNlY39zZWN0aW9uATE3MjcsNTY4MTMKK1xnbG9iYWxcbGV0XHN1YnNl Y3Rpb24gPSBcdW5udW1iZXJlZHN1YnNlY39zdWJzZWN0aW9uATE3MjgsNTY4NTAKK1xnbG9iYWxc bGV0XHN1YnN1YnNlY3Rpb24gPSBcdW5udW1iZXJlZHN1YnN1YnNlY39zdWJzdWJzZWN0aW9uATE3 MjksNTY4OTMKK1xvdXRlclxkZWZcbnVtYmVyZWRzZWN7f251bWJlcmVkc2VjATE3MzIsNTY5NDYK K1xkZWZcc2Vjenp6ICMxe39zZWN6enoBMTczMyw1Njk4NworXGdkZWZcdGhpc3NlY3Rpb257f3Ro aXNzZWN0aW9uATE3MzUsNTcwNzkKK3tcY2hhcHRlcm5vZm9udHMlf25vZm9udHMBMTczNiw1NzE0 MworXGVkZWZcdGVtcHt/dGVtcAExNzM3LDU3MTYxCitcb3V0ZXJcZGVmXGFwcGVuZGl4c2VjdGlv bnt/YXBwZW5kaXhzZWN0aW9uATE3NDUsNTczMjkKK1xvdXRlclxkZWZcYXBwZW5kaXhzZWN0aW9u e1xwYXJzZWFyZ1xhcHBlbmRpeHNlY3Rpb256enp9f3NlY3Rpb256enoBMTc0NSw1NzMyOQorXG91 dGVyXGRlZlxhcHBlbmRpeHNlY3t/YXBwZW5kaXhzZWMBMTc0Niw1NzM4NgorXG91dGVyXGRlZlxh cHBlbmRpeHNlY3tccGFyc2VhcmdcYXBwZW5kaXhzZWN0aW9uenp6fX9zZWN0aW9uenp6ATE3NDYs NTczODYKK1xkZWZcYXBwZW5kaXhzZWN0aW9uenp6ICMxe39hcHBlbmRpeHNlY3Rpb256enoBMTc0 Nyw1NzQzOQorXGdkZWZcdGhpc3NlY3Rpb257f3RoaXNzZWN0aW9uATE3NDksNTc1NTEKIFxnZGVm XHRoaXNzZWN0aW9ueyMxfVxzZWNoZWFkaW5nIHsjMX17XGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIB MTc0OSw1NzU1MQote1xjaGFwdGVybm9mb250cyV/bm9mb250cyUBMTc1MCw1NzYxOQore1xjaGFw dGVybm9mb250cyV/bm9mb250cwExNzUwLDU3NjE5CitcZWRlZlx0ZW1we390ZW1wATE3NTEsNTc2 MzcKIHsjMX17XGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIBMTc1Miw1NzY3NQogXGFwcGVuZGl4bm9k ZXJlZiAlf25vZGVyZWYBMTc1NSw1Nzc3NQotXG91dGVyXGRlZlx1bm51bWJlcmVkc2Vje39cdW5u dW1iZXJlZHNlYwExNzU5LDU3ODE1Ci1cZGVmXHVubnVtYmVyZWRzZWN6enogIzF7f1x1bm51bWJl cmVkc2Vjenp6ATE3NjAsNTc4NjgKLXtcY2hhcHRlcm5vZm9udHMlf25vZm9udHMlATE3NjIsNTc5 NjMKLVxvdXRlclxkZWZcbnVtYmVyZWRzdWJzZWN7f1xudW1iZXJlZHN1YnNlYwExNzcwLDU4MTMx Ci1cZGVmXG51bWJlcmVkc3Vic2Vjenp6ICMxe39cbnVtYmVyZWRzdWJzZWN6enoBMTc3MSw1ODE4 Ngote1xjaGFwdGVybm9mb250cyV/bm9mb250cyUBMTc3NCw1ODM2NQotXG91dGVyXGRlZlxhcHBl bmRpeHN1YnNlY3t/XGFwcGVuZGl4c3Vic2VjATE3ODMsNTg1NjkKLVxkZWZcYXBwZW5kaXhzdWJz ZWN6enogIzF7f1xhcHBlbmRpeHN1YnNlY3p6egExNzg0LDU4NjI0Citcb3V0ZXJcZGVmXHVubnVt YmVyZWRzZWN7f3VubnVtYmVyZWRzZWMBMTc1OSw1NzgxNQorXGRlZlx1bm51bWJlcmVkc2Vjenp6 ICMxe391bm51bWJlcmVkc2Vjenp6ATE3NjAsNTc4NjgKK1xwbGFpbnNlY2hlYWRpbmcgeyMxfVxn ZGVmXHRoaXNzZWN0aW9ue390aGlzc2VjdGlvbgExNzYxLDU3OTE5Cit7XGNoYXB0ZXJub2ZvbnRz JX9ub2ZvbnRzATE3NjIsNTc5NjMKK1xlZGVmXHRlbXB7f3RlbXABMTc2Myw1Nzk4MQorXG91dGVy XGRlZlxudW1iZXJlZHN1YnNlY3t/bnVtYmVyZWRzdWJzZWMBMTc3MCw1ODEzMQorXGRlZlxudW1i ZXJlZHN1YnNlY3p6eiAjMXt/bnVtYmVyZWRzdWJzZWN6enoBMTc3MSw1ODE4NgorXGdkZWZcdGhp c3NlY3Rpb257f3RoaXNzZWN0aW9uATE3NzIsNTgyMzUKK3tcY2hhcHRlcm5vZm9udHMlf25vZm9u dHMBMTc3NCw1ODM2NQorXGVkZWZcdGVtcHt/dGVtcAExNzc1LDU4MzgzCitcb3V0ZXJcZGVmXGFw cGVuZGl4c3Vic2Vje39hcHBlbmRpeHN1YnNlYwExNzgzLDU4NTY5Citcb3V0ZXJcZGVmXGFwcGVu ZGl4c3Vic2Vje1xwYXJzZWFyZ1xhcHBlbmRpeHN1YnNlY3p6en1/c3Vic2Vjenp6ATE3ODMsNTg1 NjkKK1xkZWZcYXBwZW5kaXhzdWJzZWN6enogIzF7f2FwcGVuZGl4c3Vic2Vjenp6ATE3ODQsNTg2 MjQKK1xnZGVmXHRoaXNzZWN0aW9ue390aGlzc2VjdGlvbgExNzg1LDU4Njc3CiBcc3Vic2VjaGVh ZGluZyB7IzF9e1xhcHBlbmRpeGxldHRlcn1/bGV0dGVyATE3ODYsNTg3NDYKLXtcY2hhcHRlcm5v Zm9udHMlf25vZm9udHMlATE3ODcsNTg4MTEKK3tcY2hhcHRlcm5vZm9udHMlf25vZm9udHMBMTc4 Nyw1ODgxMQorXGVkZWZcdGVtcHt/dGVtcAExNzg4LDU4ODI5CiB7IzF9e1xhcHBlbmRpeGxldHRl cn1/bGV0dGVyATE3ODksNTg4NzAKIFxhcHBlbmRpeG5vZGVyZWYgJX9ub2RlcmVmATE3OTIsNTg5 ODUKLVxvdXRlclxkZWZcdW5udW1iZXJlZHN1YnNlY3t/XHVubnVtYmVyZWRzdWJzZWMBMTc5Niw1 OTAyNQotXGRlZlx1bm51bWJlcmVkc3Vic2Vjenp6ICMxe39cdW5udW1iZXJlZHN1YnNlY3p6egEx Nzk3LDU5MDg0Ci17XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzJQExNzk5LDU5MTg1Ci1cb3V0ZXJc ZGVmXG51bWJlcmVkc3Vic3Vic2Vje39cbnVtYmVyZWRzdWJzdWJzZWMBMTgwNyw1OTM1NgotXGRl ZlxudW1iZXJlZHN1YnN1YnNlY3p6eiAjMXt/XG51bWJlcmVkc3Vic3Vic2Vjenp6ATE4MDgsNTk0 MTcKLXtcY2hhcHRlcm5vZm9udHMlf25vZm9udHMlATE4MTIsNTk2MTQKLVxvdXRlclxkZWZcYXBw ZW5kaXhzdWJzdWJzZWN7f1xhcHBlbmRpeHN1YnN1YnNlYwExODIzLDU5ODQ3Ci1cZGVmXGFwcGVu ZGl4c3Vic3Vic2Vjenp6ICMxe39cYXBwZW5kaXhzdWJzdWJzZWN6enoBMTgyNCw1OTkwOAorXG91 dGVyXGRlZlx1bm51bWJlcmVkc3Vic2Vje391bm51bWJlcmVkc3Vic2VjATE3OTYsNTkwMjUKK1xk ZWZcdW5udW1iZXJlZHN1YnNlY3p6eiAjMXt/dW5udW1iZXJlZHN1YnNlY3p6egExNzk3LDU5MDg0 CitccGxhaW5zZWNoZWFkaW5nIHsjMX1cZ2RlZlx0aGlzc2VjdGlvbnt/dGhpc3NlY3Rpb24BMTc5 OCw1OTE0MQore1xjaGFwdGVybm9mb250cyV/bm9mb250cwExNzk5LDU5MTg1CitcZWRlZlx0ZW1w e390ZW1wATE4MDAsNTkyMDMKK1xvdXRlclxkZWZcbnVtYmVyZWRzdWJzdWJzZWN7f251bWJlcmVk c3Vic3Vic2VjATE4MDcsNTkzNTYKK1xkZWZcbnVtYmVyZWRzdWJzdWJzZWN6enogIzF7f251bWJl cmVkc3Vic3Vic2Vjenp6ATE4MDgsNTk0MTcKK1xnZGVmXHRoaXNzZWN0aW9ue390aGlzc2VjdGlv bgExODA5LDU5NDcyCit7XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzATE4MTIsNTk2MTQKK1xlZGVm XHRlbXB7f3RlbXABMTgxMyw1OTYzMgorXG91dGVyXGRlZlxhcHBlbmRpeHN1YnN1YnNlY3t/YXBw ZW5kaXhzdWJzdWJzZWMBMTgyMyw1OTg0NworXG91dGVyXGRlZlxhcHBlbmRpeHN1YnN1YnNlY3tc cGFyc2VhcmdcYXBwZW5kaXhzdWJzdWJzZWN6enp9f3N1YnN1YnNlY3p6egExODIzLDU5ODQ3Citc ZGVmXGFwcGVuZGl4c3Vic3Vic2Vjenp6ICMxe39hcHBlbmRpeHN1YnN1YnNlY3p6egExODI0LDU5 OTA4CitcZ2RlZlx0aGlzc2VjdGlvbnt/dGhpc3NlY3Rpb24BMTgyNSw1OTk2NwogICB7XGFwcGVu ZGl4bGV0dGVyfX9sZXR0ZXIBMTgyNyw2MDA0Nwote1xjaGFwdGVybm9mb250cyV/bm9mb250cyUB MTgyOCw2MDExMwore1xjaGFwdGVybm9mb250cyV/bm9mb250cwExODI4LDYwMTEzCitcZWRlZlx0 ZW1we390ZW1wATE4MjksNjAxMzEKICAge1xhcHBlbmRpeGxldHRlcn1/bGV0dGVyATE4MzAsNjAx NzgKIFxhcHBlbmRpeG5vZGVyZWYgJX9ub2RlcmVmATE4MzQsNjAzMTIKLVxvdXRlclxkZWZcdW5u dW1iZXJlZHN1YnN1YnNlY3t/XHVubnVtYmVyZWRzdWJzdWJzZWMBMTgzOCw2MDM1MgotXGRlZlx1 bm51bWJlcmVkc3Vic3Vic2Vjenp6ICMxe39cdW5udW1iZXJlZHN1YnN1YnNlY3p6egExODM5LDYw NDE3Ci17XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzJQExODQxLDYwNTI0Ci1cZGVmXGluZm90b3B7 f1xpbmZvdG9wATE4NTEsNjA4NTMKLVxkZWZcaW5mb3VubnVtYmVyZWR7f1xpbmZvdW5udW1iZXJl ZAExODUyLDYwODkxCi1cZGVmXGluZm91bm51bWJlcmVkc2Vje39caW5mb3VubnVtYmVyZWRzZWMB MTg1Myw2MDkzNgotXGRlZlxpbmZvdW5udW1iZXJlZHN1YnNlY3t/XGluZm91bm51bWJlcmVkc3Vi c2VjATE4NTQsNjA5ODcKLVxkZWZcaW5mb3VubnVtYmVyZWRzdWJzdWJzZWN7f1xpbmZvdW5udW1i ZXJlZHN1YnN1YnNlYwExODU1LDYxMDQ0Ci1cZGVmXGluZm9hcHBlbmRpeHt/XGluZm9hcHBlbmRp eAExODU3LDYxMTA4Ci1cZGVmXGluZm9hcHBlbmRpeHNlY3t/XGluZm9hcHBlbmRpeHNlYwExODU4 LDYxMTQ5Ci1cZGVmXGluZm9hcHBlbmRpeHN1YnNlY3t/XGluZm9hcHBlbmRpeHN1YnNlYwExODU5 LDYxMTk2Ci1cZGVmXGluZm9hcHBlbmRpeHN1YnN1YnNlY3t/XGluZm9hcHBlbmRpeHN1YnN1YnNl YwExODYwLDYxMjQ5Ci1cZGVmXGluZm9jaGFwdGVye39caW5mb2NoYXB0ZXIBMTg2Miw2MTMwOQot XGRlZlxpbmZvc2VjdGlvbnt/XGluZm9zZWN0aW9uATE4NjMsNjEzNDgKLVxkZWZcaW5mb3N1YnNl Y3Rpb257f1xpbmZvc3Vic2VjdGlvbgExODY0LDYxMzg3Ci1cZGVmXGluZm9zdWJzdWJzZWN0aW9u e39caW5mb3N1YnN1YnNlY3Rpb24BMTg2NSw2MTQzMgotXGdsb2JhbFxsZXRcc2VjdGlvbiA9IFxu dW1iZXJlZHNlY389ATE4NzAsNjE2NjkKLVxnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcbnVtYmVy ZWRzdWJzZWN/PQExODcxLDYxNzA0Ci1cZ2xvYmFsXGxldFxzdWJzdWJzZWN0aW9uID0gXG51bWJl cmVkc3Vic3Vic2Vjfz0BMTg3Miw2MTc0NQotXGRlZlxtYWpvcmhlYWRpbmd7f1xtYWpvcmhlYWRp bmcBMTg4Niw2MjI1MgotXGRlZlxtYWpvcmhlYWRpbmd6enogIzF7f1xtYWpvcmhlYWRpbmd6enoB MTg4Nyw2MjI5NwotXGRlZlxjaGFwaGVhZGluZ3t/XGNoYXBoZWFkaW5nATE4OTMsNjI1MzAKLVxk ZWZcY2hhcGhlYWRpbmd6enogIzF7f1xjaGFwaGVhZGluZ3p6egExODk0LDYyNTczCi1cZGVmXGhl YWRpbmd7f1xoZWFkaW5nATE4OTksNjI3NjgKLVxkZWZcc3ViaGVhZGluZ3t/XHN1YmhlYWRpbmcB MTkwMSw2MjgwNQotXGRlZlxzdWJzdWJoZWFkaW5ne39cc3Vic3ViaGVhZGluZwExOTAzLDYyODQ4 Ci1cZGVmXGRvYnJlYWsjMSMye39cZG9icmVhawExOTEwLDYzMTI1Ci1cZGVmXHNldGNoYXB0ZXJz dHlsZSAjMSB7f1xzZXRjaGFwdGVyc3R5bGUBMTkxMiw2MzIwMwotXGRlZlxjaGFwYnJlYWt7f1xj aGFwYnJlYWsBMTkxOSw2MzQ1OAotXGRlZlxjaGFwcGFnZXJ7f1xjaGFwcGFnZXIBMTkyMCw2MzUw OAotXGRlZlxjaGFwb2RkcGFnZXt/XGNoYXBvZGRwYWdlATE5MjEsNjM1NDYKLVxkZWZcc2V0Y2hh cHRlcm5ld3BhZ2UgIzEge39cc2V0Y2hhcHRlcm5ld3BhZ2UBMTkyMyw2MzYyNQotXGRlZlxDSEFQ UEFHb2Zme39cQ0hBUFBBR29mZgExOTI1LDYzNjgyCi1cZGVmXENIQVBQQUdvbnt/XENIQVBQQUdv bgExOTI5LDYzNzc2Ci1cZ2xvYmFsXGRlZlxIRUFESU5HU29ue39cSEVBRElOR1NvbgExOTMyLDYz ODY3Ci1cZGVmXENIQVBQQUdvZGR7f1xDSEFQUEFHb2RkATE5MzQsNjM5MDkKLVxnbG9iYWxcZGVm XEhFQURJTkdTb257f1xIRUFESU5HU29uATE5MzcsNjQwMDUKLVxkZWZcQ0hBUEZwbGFpbnt/XENI QVBGcGxhaW4BMTk0MSw2NDA1OQotXGRlZlxjaGZwbGFpbiAjMSMye39cY2hmcGxhaW4BMTk0NSw2 NDE1MQotXGRlZlx1bm5jaGZwbGFpbiAjMXt/XHVubmNoZnBsYWluATE5NTYsNjQzNzQKLVxkZWZc dW5uY2hmb3BlbiAjMXt/XHVubmNoZm9wZW4BMTk2NCw2NDYwMwotXGRlZlxjaGZvcGVuICMxIzJ7 f1xjaGZvcGVuATE5NzAsNjQ4MTEKLVxkZWZcQ0hBUEZvcGVue39cQ0hBUEZvcGVuATE5NzUsNjQ5 NTUKLVxkZWZcc3Vic2VjaGVhZGluZ2JyZWFre39cc3Vic2VjaGVhZGluZ2JyZWFrATE5ODIsNjUx NzMKLVxkZWZcc2VjaGVhZGluZ2JyZWFre39cc2VjaGVhZGluZ2JyZWFrATE5ODUsNjUzMDIKLVxk ZWZcc2VjaGVhZGluZyAjMSMyIzN7f1xzZWNoZWFkaW5nATE5OTMsNjU1ODQKLVxkZWZccGxhaW5z ZWNoZWFkaW5nICMxe39ccGxhaW5zZWNoZWFkaW5nATE5OTQsNjU2NDAKLVxkZWZcc2VjaGVhZGlu Z2kgIzF7f1xzZWNoZWFkaW5naQExOTk1LDY1NjgzCi1cZGVmXHN1YnNlY2hlYWRpbmcgIzEjMiMz IzR7f1xzdWJzZWNoZWFkaW5nATIwMDYsNjYwNTEKLVxkZWZcc3Vic2VjaGVhZGluZ2kgIzF7f1xz dWJzZWNoZWFkaW5naQEyMDA3LDY2MTE4Ci1cZGVmXHN1YnN1YnNlY2ZvbnRze39cc3Vic3Vic2Vj Zm9udHMBMjAxNCw2NjQxNQotXGRlZlxzdWJzdWJzZWNoZWFkaW5nICMxIzIjMyM0IzV7f1xzdWJz dWJzZWNoZWFkaW5nATIwMTcsNjY1MzgKLVxkZWZcc3Vic3Vic2VjaGVhZGluZ2kgIzF7f1xzdWJz dWJzZWNoZWFkaW5naQEyMDE4LDY2NjE2Ci1cZGVmXHN0YXJ0Y29udGVudHMjMXt/XHN0YXJ0Y29u dGVudHMBMjAzMiw2NzA4OAotICAgXHVubnVtYmNoYXBtYWNyb3sjMX1cZGVmXHRoaXNjaGFwdGVy e39cdGhpc2NoYXB0ZXIBMjA0MCw2NzM2MQotXG91dGVyXGRlZlxjb250ZW50c3t/XGNvbnRlbnRz ATIwNDksNjc3MjAKLVxvdXRlclxkZWZcc3VtbWFyeWNvbnRlbnRze39cc3VtbWFyeWNvbnRlbnRz ATIwNTcsNjc4NjQKLSAgICAgIFxkZWZcc2VjZW50cnkgIyMxIyMyIyMzIyM0e39cc2VjZW50cnkB MjA2Nyw2ODIzNQotICAgICAgXGRlZlx1bm51bWJzZWNlbnRyeSAjIzEjIzJ7f1x1bm51bWJzZWNl bnRyeQEyMDY4LDY4MjcwCi0gICAgICBcZGVmXHN1YnNlY2VudHJ5ICMjMSMjMiMjMyMjNCMjNXt/ XHN1YnNlY2VudHJ5ATIwNjksNjgzMDUKLSAgICAgIFxkZWZcdW5udW1ic3Vic2VjZW50cnkgIyMx IyMye39cdW5udW1ic3Vic2VjZW50cnkBMjA3MCw2ODM0NgotICAgICAgXGRlZlxzdWJzdWJzZWNl bnRyeSAjIzEjIzIjIzMjIzQjIzUjIzZ7f1xzdWJzdWJzZWNlbnRyeQEyMDcxLDY4Mzg0Ci0gICAg ICBcZGVmXHVubnVtYnN1YnN1YnNlY2VudHJ5ICMjMSMjMnt/XHVubnVtYnN1YnN1YnNlY2VudHJ5 ATIwNzIsNjg0MzEKLVxkZWZcY2hhcGVudHJ5IzEjMiMze39cY2hhcGVudHJ5ATIwODUsNjg4NjUK LVxkZWZcc2hvcnRjaGFwZW50cnkjMSMyIzN7f1xzaG9ydGNoYXBlbnRyeQEyMDg4LDY4OTgyCitc b3V0ZXJcZGVmXHVubnVtYmVyZWRzdWJzdWJzZWN7f3VubnVtYmVyZWRzdWJzdWJzZWMBMTgzOCw2 MDM1MgorXGRlZlx1bm51bWJlcmVkc3Vic3Vic2Vjenp6ICMxe391bm51bWJlcmVkc3Vic3Vic2Vj enp6ATE4MzksNjA0MTcKK1xwbGFpbnNlY2hlYWRpbmcgeyMxfVxnZGVmXHRoaXNzZWN0aW9ue390 aGlzc2VjdGlvbgExODQwLDYwNDgwCit7XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzATE4NDEsNjA1 MjQKK1xlZGVmXHRlbXB7f3RlbXABMTg0Miw2MDU0MgorXGRlZlxpbmZvdG9we39pbmZvdG9wATE4 NTEsNjA4NTMKK1xkZWZcaW5mb3VubnVtYmVyZWR7f2luZm91bm51bWJlcmVkATE4NTIsNjA4OTEK K1xkZWZcaW5mb3VubnVtYmVyZWRzZWN7f2luZm91bm51bWJlcmVkc2VjATE4NTMsNjA5MzYKK1xk ZWZcaW5mb3VubnVtYmVyZWRzdWJzZWN7f2luZm91bm51bWJlcmVkc3Vic2VjATE4NTQsNjA5ODcK K1xkZWZcaW5mb3VubnVtYmVyZWRzdWJzdWJzZWN7f2luZm91bm51bWJlcmVkc3Vic3Vic2VjATE4 NTUsNjEwNDQKK1xkZWZcaW5mb2FwcGVuZGl4e39pbmZvYXBwZW5kaXgBMTg1Nyw2MTEwOAorXGRl ZlxpbmZvYXBwZW5kaXh7XHBhcnNlYXJnXGFwcGVuZGl4enp6fX96enoBMTg1Nyw2MTEwOAorXGRl ZlxpbmZvYXBwZW5kaXhzZWN7f2luZm9hcHBlbmRpeHNlYwExODU4LDYxMTQ5CitcZGVmXGluZm9h cHBlbmRpeHNlY3tccGFyc2VhcmdcYXBwZW5kaXhzZWN6enp9f3NlY3p6egExODU4LDYxMTQ5Citc ZGVmXGluZm9hcHBlbmRpeHN1YnNlY3t/aW5mb2FwcGVuZGl4c3Vic2VjATE4NTksNjExOTYKK1xk ZWZcaW5mb2FwcGVuZGl4c3Vic2Vje1xwYXJzZWFyZ1xhcHBlbmRpeHN1YnNlY3p6en1/c3Vic2Vj enp6ATE4NTksNjExOTYKK1xkZWZcaW5mb2FwcGVuZGl4c3Vic3Vic2Vje39pbmZvYXBwZW5kaXhz dWJzdWJzZWMBMTg2MCw2MTI0OQorXGRlZlxpbmZvYXBwZW5kaXhzdWJzdWJzZWN7XHBhcnNlYXJn XGFwcGVuZGl4c3Vic3Vic2Vjenp6fX9zdWJzdWJzZWN6enoBMTg2MCw2MTI0OQorXGRlZlxpbmZv Y2hhcHRlcnt/aW5mb2NoYXB0ZXIBMTg2Miw2MTMwOQorXGRlZlxpbmZvY2hhcHRlcntccGFyc2Vh cmdcY2hhcHRlcnp6en1/enp6ATE4NjIsNjEzMDkKK1xkZWZcaW5mb3NlY3Rpb257f2luZm9zZWN0 aW9uATE4NjMsNjEzNDgKK1xkZWZcaW5mb3NlY3Rpb257XHBhcnNlYXJnXHNlY3Rpb256enp9f3p6 egExODYzLDYxMzQ4CitcZGVmXGluZm9zdWJzZWN0aW9ue39pbmZvc3Vic2VjdGlvbgExODY0LDYx Mzg3CitcZGVmXGluZm9zdWJzZWN0aW9ue1xwYXJzZWFyZ1xzdWJzZWN0aW9uenp6fX96enoBMTg2 NCw2MTM4NworXGRlZlxpbmZvc3Vic3Vic2VjdGlvbnt/aW5mb3N1YnN1YnNlY3Rpb24BMTg2NSw2 MTQzMgorXGRlZlxpbmZvc3Vic3Vic2VjdGlvbntccGFyc2Vhcmdcc3Vic3Vic2VjdGlvbnp6en1/ enp6ATE4NjUsNjE0MzIKK1xnbG9iYWxcbGV0XHNlY3Rpb24gPSBcbnVtYmVyZWRzZWN/c2VjdGlv bgExODcwLDYxNjY5CitcZ2xvYmFsXGxldFxzdWJzZWN0aW9uID0gXG51bWJlcmVkc3Vic2Vjf3N1 YnNlY3Rpb24BMTg3MSw2MTcwNAorXGdsb2JhbFxsZXRcc3Vic3Vic2VjdGlvbiA9IFxudW1iZXJl ZHN1YnN1YnNlY39zdWJzdWJzZWN0aW9uATE4NzIsNjE3NDUKK1xkZWZcbWFqb3JoZWFkaW5ne39t YWpvcmhlYWRpbmcBMTg4Niw2MjI1MgorXGRlZlxtYWpvcmhlYWRpbmd6enogIzF7f21ham9yaGVh ZGluZ3p6egExODg3LDYyMjk3CitcZGVmXGNoYXBoZWFkaW5ne39jaGFwaGVhZGluZwExODkzLDYy NTMwCitcZGVmXGNoYXBoZWFkaW5nenp6ICMxe39jaGFwaGVhZGluZ3p6egExODk0LDYyNTczCitc ZGVmXGhlYWRpbmd7f2hlYWRpbmcBMTg5OSw2Mjc2OAorXGRlZlxzdWJoZWFkaW5ne39zdWJoZWFk aW5nATE5MDEsNjI4MDUKK1xkZWZcc3Vic3ViaGVhZGluZ3t/c3Vic3ViaGVhZGluZwExOTAzLDYy ODQ4CitcZGVmXGRvYnJlYWsjMSMye39kb2JyZWFrATE5MTAsNjMxMjUKK1xkZWZcc2V0Y2hhcHRl cnN0eWxlICMxIHt/c2V0Y2hhcHRlcnN0eWxlATE5MTIsNjMyMDMKK1xkZWZcY2hhcGJyZWFre39j aGFwYnJlYWsBMTkxOSw2MzQ1OAorXGRlZlxjaGFwcGFnZXJ7f2NoYXBwYWdlcgExOTIwLDYzNTA4 CitcZGVmXGNoYXBvZGRwYWdle39jaGFwb2RkcGFnZQExOTIxLDYzNTQ2CitcZGVmXHNldGNoYXB0 ZXJuZXdwYWdlICMxIHt/c2V0Y2hhcHRlcm5ld3BhZ2UBMTkyMyw2MzYyNQorXGRlZlxDSEFQUEFH b2Zme39DSEFQUEFHb2ZmATE5MjUsNjM2ODIKK1xnbG9iYWxcbGV0XHBjaGFwc2VwbWFjcm89XGNo YXBicmVha39wY2hhcHNlcG1hY3JvATE5MjYsNjM2OTkKK1xnbG9iYWxcbGV0XHBhZ2VhbGlnbm1h Y3JvPVxjaGFwcGFnZXJ9f3BhZ2VhbGlnbm1hY3JvATE5MjcsNjM3MzYKK1xkZWZcQ0hBUFBBR29u e39DSEFQUEFHb24BMTkyOSw2Mzc3NgorXGdsb2JhbFxsZXRccGNoYXBzZXBtYWNybz1cY2hhcHBh Z2Vyf3BjaGFwc2VwbWFjcm8BMTkzMCw2Mzc5MgorXGdsb2JhbFxsZXRccGFnZWFsaWdubWFjcm89 XGNoYXBwYWdlcn9wYWdlYWxpZ25tYWNybwExOTMxLDYzODI5CitcZ2xvYmFsXGRlZlxIRUFESU5H U29ue39IRUFESU5HU29uATE5MzIsNjM4NjcKK1xkZWZcQ0hBUFBBR29kZHt/Q0hBUFBBR29kZAEx OTM0LDYzOTA5CitcZ2xvYmFsXGxldFxwY2hhcHNlcG1hY3JvPVxjaGFwb2RkcGFnZX9wY2hhcHNl cG1hY3JvATE5MzUsNjM5MjYKK1xnbG9iYWxcbGV0XHBhZ2VhbGlnbm1hY3JvPVxjaGFwb2RkcGFn ZX9wYWdlYWxpZ25tYWNybwExOTM2LDYzOTY1CitcZ2xvYmFsXGRlZlxIRUFESU5HU29ue39IRUFE SU5HU29uATE5MzcsNjQwMDUKK1xkZWZcQ0hBUEZwbGFpbnt/Q0hBUEZwbGFpbgExOTQxLDY0MDU5 CitcZ2xvYmFsXGxldFxjaGFwbWFjcm89XGNoZnBsYWluf2NoYXBtYWNybwExOTQyLDY0MDc2Citc Z2xvYmFsXGxldFx1bm51bWJjaGFwbWFjcm89XHVubmNoZnBsYWlufX91bm51bWJjaGFwbWFjcm8B MTk0Myw2NDEwOAorXGRlZlxjaGZwbGFpbiAjMSMye39jaGZwbGFpbgExOTQ1LDY0MTUxCitcZGVm XHVubmNoZnBsYWluICMxe391bm5jaGZwbGFpbgExOTU2LDY0Mzc0CitcZGVmXHVubmNoZm9wZW4g IzF7f3VubmNoZm9wZW4BMTk2NCw2NDYwMworXGRlZlxjaGZvcGVuICMxIzJ7f2NoZm9wZW4BMTk3 MCw2NDgxMQorXGRlZlxDSEFQRm9wZW57f0NIQVBGb3BlbgExOTc1LDY0OTU1CitcZ2xvYmFsXGxl dFxjaGFwbWFjcm89XGNoZm9wZW5/Y2hhcG1hY3JvATE5NzYsNjQ5NzEKK1xnbG9iYWxcbGV0XHVu bnVtYmNoYXBtYWNybz1cdW5uY2hmb3Blbn1/dW5udW1iY2hhcG1hY3JvATE5NzcsNjUwMDIKK1xk ZWZcc3Vic2VjaGVhZGluZ2JyZWFre39zdWJzZWNoZWFkaW5nYnJlYWsBMTk4Miw2NTE3MworXGRl ZlxzZWNoZWFkaW5nYnJlYWt7f3NlY2hlYWRpbmdicmVhawExOTg1LDY1MzAyCitcbGV0XHBhcmFn cmFwaGluZGVudD1cY29tbWVudH9wYXJhZ3JhcGhpbmRlbnQBMTk4OCw2NTQyOAorXGRlZlxzZWNo ZWFkaW5nICMxIzIjM3t/c2VjaGVhZGluZwExOTkzLDY1NTg0CitcZGVmXHBsYWluc2VjaGVhZGlu ZyAjMXt/cGxhaW5zZWNoZWFkaW5nATE5OTQsNjU2NDAKK1xkZWZcc2VjaGVhZGluZ2kgIzF7f3Nl Y2hlYWRpbmdpATE5OTUsNjU2ODMKK1xkZWZcc3Vic2VjaGVhZGluZyAjMSMyIzMjNHt/c3Vic2Vj aGVhZGluZwEyMDA2LDY2MDUxCitcZGVmXHN1YnNlY2hlYWRpbmdpICMxe39zdWJzZWNoZWFkaW5n aQEyMDA3LDY2MTE4CitcZGVmXHN1YnN1YnNlY2ZvbnRze39zdWJzdWJzZWNmb250cwEyMDE0LDY2 NDE1CitcZGVmXHN1YnN1YnNlY2hlYWRpbmcgIzEjMiMzIzQjNXt/c3Vic3Vic2VjaGVhZGluZwEy MDE3LDY2NTM4CitcZGVmXHN1YnN1YnNlY2hlYWRpbmdpICMxe39zdWJzdWJzZWNoZWFkaW5naQEy MDE4LDY2NjE2CitcZGVmXHN0YXJ0Y29udGVudHMjMXt/c3RhcnRjb250ZW50cwEyMDMyLDY3MDg4 CisgICBcdW5udW1iY2hhcG1hY3JveyMxfVxkZWZcdGhpc2NoYXB0ZXJ7f3RoaXNjaGFwdGVyATIw NDAsNjczNjEKK1xvdXRlclxkZWZcY29udGVudHN7f2NvbnRlbnRzATIwNDksNjc3MjAKK1xvdXRl clxkZWZcc3VtbWFyeWNvbnRlbnRze39zdW1tYXJ5Y29udGVudHMBMjA1Nyw2Nzg2NAorICAgICAg XGxldFxjaGFwZW50cnkgPSBcc2hvcnRjaGFwZW50cnl/Y2hhcGVudHJ5ATIwNjAsNjc5MzYKKyAg ICAgIFxsZXRcdW5udW1iY2hhcGVudHJ5ID0gXHNob3J0dW5udW1iZXJlZGVudHJ5f3VubnVtYmNo YXBlbnRyeQEyMDYxLDY3OTc1CisgICAgICBcbGV0XHJtPVxzaG9ydGNvbnRybSBcbGV0XGJmPVxz aG9ydGNvbnRiZiBcbGV0XHNsPVxzaG9ydGNvbnRzbH9ybQEyMDY0LDY4MDk4CisgICAgICBcbGV0 XHJtPVxzaG9ydGNvbnRybSBcbGV0XGJmPVxzaG9ydGNvbnRiZiBcbGV0XHNsPVxzaG9ydGNvbnRz bH9iZgEyMDY0LDY4MDk4CisgICAgICBcbGV0XHJtPVxzaG9ydGNvbnRybSBcbGV0XGJmPVxzaG9y dGNvbnRiZiBcbGV0XHNsPVxzaG9ydGNvbnRzbH9zbAEyMDY0LDY4MDk4CisgICAgICBcZGVmXHNl Y2VudHJ5ICMjMSMjMiMjMyMjNHt/c2VjZW50cnkBMjA2Nyw2ODIzNQorICAgICAgXGRlZlx1bm51 bWJzZWNlbnRyeSAjIzEjIzJ7f3VubnVtYnNlY2VudHJ5ATIwNjgsNjgyNzAKKyAgICAgIFxkZWZc c3Vic2VjZW50cnkgIyMxIyMyIyMzIyM0IyM1e39zdWJzZWNlbnRyeQEyMDY5LDY4MzA1CisgICAg ICBcZGVmXHVubnVtYnN1YnNlY2VudHJ5ICMjMSMjMnt/dW5udW1ic3Vic2VjZW50cnkBMjA3MCw2 ODM0NgorICAgICAgXGRlZlxzdWJzdWJzZWNlbnRyeSAjIzEjIzIjIzMjIzQjIzUjIzZ7f3N1YnN1 YnNlY2VudHJ5ATIwNzEsNjgzODQKKyAgICAgIFxkZWZcdW5udW1ic3Vic3Vic2VjZW50cnkgIyMx IyMye391bm51bWJzdWJzdWJzZWNlbnRyeQEyMDcyLDY4NDMxCitcbGV0XHNob3J0Y29udGVudHMg PSBcc3VtbWFyeWNvbnRlbnRzf3Nob3J0Y29udGVudHMBMjA3Nyw2ODUzMAorXGRlZlxjaGFwZW50 cnkjMSMyIzN7f2NoYXBlbnRyeQEyMDg1LDY4ODY1CitcZGVmXGNoYXBlbnRyeSMxIzIjM3tcZG9j aGFwZW50cnl7IzJcbGFiZWxzcGFjZSMxfX9zcGFjZQEyMDg1LDY4ODY1CitcZGVmXHNob3J0Y2hh cGVudHJ5IzEjMiMze39zaG9ydGNoYXBlbnRyeQEyMDg4LDY4OTgyCiAgICAgeyMyXGxhYmVsc3Bh Y2UgIzF9f3NwYWNlATIwOTEsNjkwOTIKLVxkZWZcdW5udW1iY2hhcGVudHJ5IzEjMnt/XHVubnVt YmNoYXBlbnRyeQEyMDk0LDY5MTQ2Ci1cZGVmXHNob3J0dW5udW1iZXJlZGVudHJ5IzEjMnt/XHNo b3J0dW5udW1iZXJlZGVudHJ5ATIwOTUsNjkxOTMKLVxkZWZcc2VjZW50cnkjMSMyIzMjNHt/XHNl Y2VudHJ5ATIxMDIsNjkzNTcKLVxkZWZcdW5udW1ic2VjZW50cnkjMSMye39cdW5udW1ic2VjZW50 cnkBMjEwMyw2OTQxNgotXGRlZlxzdWJzZWNlbnRyeSMxIzIjMyM0IzV7f1xzdWJzZWNlbnRyeQEy MTA2LDY5NDc3Ci1cZGVmXHVubnVtYnN1YnNlY2VudHJ5IzEjMnt/XHVubnVtYnN1YnNlY2VudHJ5 ATIxMDcsNjk1NDcKLVxkZWZcc3Vic3Vic2VjZW50cnkjMSMyIzMjNCM1IzZ7f1xzdWJzdWJzZWNl bnRyeQEyMTEwLDY5NjIxCitcZGVmXHVubnVtYmNoYXBlbnRyeSMxIzJ7f3VubnVtYmNoYXBlbnRy eQEyMDk0LDY5MTQ2CitcZGVmXHNob3J0dW5udW1iZXJlZGVudHJ5IzEjMnt/c2hvcnR1bm51bWJl cmVkZW50cnkBMjA5NSw2OTE5MworXGRlZlxzZWNlbnRyeSMxIzIjMyM0e39zZWNlbnRyeQEyMTAy LDY5MzU3CitcZGVmXHNlY2VudHJ5IzEjMiMzIzR7XGRvc2VjZW50cnl7IzIuIzNcbGFiZWxzcGFj ZSMxfX9zcGFjZQEyMTAyLDY5MzU3CitcZGVmXHVubnVtYnNlY2VudHJ5IzEjMnt/dW5udW1ic2Vj ZW50cnkBMjEwMyw2OTQxNgorXGRlZlxzdWJzZWNlbnRyeSMxIzIjMyM0IzV7f3N1YnNlY2VudHJ5 ATIxMDYsNjk0NzcKK1xkZWZcc3Vic2VjZW50cnkjMSMyIzMjNCM1e1xkb3N1YnNlY2VudHJ5eyMy LiMzLiM0XGxhYmVsc3BhY2UjMX1/c3BhY2UBMjEwNiw2OTQ3NworXGRlZlx1bm51bWJzdWJzZWNl bnRyeSMxIzJ7f3VubnVtYnN1YnNlY2VudHJ5ATIxMDcsNjk1NDcKK1xkZWZcc3Vic3Vic2VjZW50 cnkjMSMyIzMjNCM1IzZ7f3N1YnN1YnNlY2VudHJ5ATIxMTAsNjk2MjEKICAgXGRvc3Vic3Vic2Vj ZW50cnl7IzIuIzMuIzQuIzVcbGFiZWxzcGFjZSMxfX9zcGFjZQEyMTExLDY5NjU1Ci1cZGVmXHVu bnVtYnN1YnN1YnNlY2VudHJ5IzEjMnt/XHVubnVtYnN1YnN1YnNlY2VudHJ5ATIxMTIsNjk3MDYK LVxkZWZcZG9jaGFwZW50cnkjMSMye39cZG9jaGFwZW50cnkBMjEyMyw3MDA4MAotXGRlZlxkb3Nl Y2VudHJ5IzEjMnt/XGRvc2VjZW50cnkBMjEzOCw3MDY4NQotXGRlZlxkb3N1YnNlY2VudHJ5IzEj Mnt/XGRvc3Vic2VjZW50cnkBMjE0NSw3MDg2MwotXGRlZlxkb3N1YnN1YnNlY2VudHJ5IzEjMnt/ XGRvc3Vic3Vic2VjZW50cnkBMjE1Miw3MTA0OAotXGRlZlxsYWJlbHNwYWNle39cbGFiZWxzcGFj ZQEyMTYwLDcxMjk5Ci1cZGVmXGRvcGFnZW5vIzF7f1xkb3BhZ2VubwEyMTYyLDcxMzM0Ci1cZGVm XGRvc2hvcnRwYWdlbm8jMXt/XGRvc2hvcnRwYWdlbm8BMjE2Myw3MTM2MAotXGRlZlxjaGFwZW50 cnlmb250c3t/XGNoYXBlbnRyeWZvbnRzATIxNjUsNzEzOTIKLVxkZWZcc2VjZW50cnlmb250c3t/ XHNlY2VudHJ5Zm9udHMBMjE2Niw3MTQyNwotXGRlZlxwb2ludHt/XHBvaW50ATIxOTIsNzIzODYK LVxkZWZccmVzdWx0e39ccmVzdWx0ATIxOTQsNzI0MDcKLVxkZWZcZXhwYW5zaW9ue39cZXhwYW5z aW9uATIxOTUsNzI0ODAKLVxkZWZccHJpbnR7f1xwcmludAEyMTk2LDcyNTUxCi1cZGVmXGVxdWl2 e39cZXF1aXYBMjE5OCw3MjYxOAotXGRlZlxlcnJvcnt/XGVycm9yATIyMTgsNzMzOTEKLVxkZWZc dGV4e39cdGV4ATIyMjQsNzM2MjAKLVxkZWZcQHt/XEABMjI0Miw3NDAwMwotXGdkZWZcc2Vwc3Bh Y2Vze1xkZWYge1wgfX19f1wBMjI2NSw3NDczNQotXGRlZlxhYm92ZWVudmJyZWFre39cYWJvdmVl bnZicmVhawEyMjY4LDc0ODE3Ci1cZGVmXGFmdGVyZW52YnJlYWt7f1xhZnRlcmVudmJyZWFrATIy NzIsNzQ5ODMKLVxkZWZcY3Rse39cY3RsATIyODYsNzU0OTQKLVxkZWZcY3Rye39cY3RyATIyODcs NzU1NjYKLVxkZWZcY2Jse39cY2JsATIyODgsNzU2MDUKLVxkZWZcY2Jye39cY2JyATIyODksNzU2 NDUKLVxkZWZcY2FydHRvcHt/XGNhcnR0b3ABMjI5MCw3NTY4NAotXGRlZlxjYXJ0Ym90e39cY2Fy dGJvdAEyMjkzLDc1NzkyCi1cbG9uZ1xkZWZcY2FydG91Y2hle39cY2FydG91Y2hlATIyOTksNzU5 MzIKLVxkZWZcRWNhcnRvdWNoZXt/XEVjYXJ0b3VjaGUBMjMyNiw3NjcyMAotXGRlZlxsaXNwe39c bGlzcAEyMzM4LDc2ODU1Ci1cZGVmXEVsaXNwe39cRWxpc3ABMjM0OCw3NzIwMgotXGRlZlxuZXh0 IyMxe39cbmV4dAEyMzYwLDc3NTI4Ci1cZGVmXEVleGFtcGxle39cRWV4YW1wbGUBMjM2NCw3NzU3 MAotXGRlZlxFc21hbGxleGFtcGxle39cRXNtYWxsZXhhbXBsZQEyMzY3LDc3NjE3Ci1cZGVmXHNt YWxsbGlzcHh7f1xzbWFsbGxpc3B4ATIzNzMsNzc3OTUKLVxkZWZcRXNtYWxsbGlzcHt/XEVzbWFs bGxpc3ABMjM4Myw3ODE0OQorXGRlZlx1bm51bWJzdWJzdWJzZWNlbnRyeSMxIzJ7f3VubnVtYnN1 YnN1YnNlY2VudHJ5ATIxMTIsNjk3MDYKK1xkZWZcZG9jaGFwZW50cnkjMSMye39kb2NoYXBlbnRy eQEyMTIzLDcwMDgwCitcZGVmXGRvc2VjZW50cnkjMSMye39kb3NlY2VudHJ5ATIxMzgsNzA2ODUK K1xkZWZcZG9zdWJzZWNlbnRyeSMxIzJ7f2Rvc3Vic2VjZW50cnkBMjE0NSw3MDg2MworXGRlZlxk b3N1YnN1YnNlY2VudHJ5IzEjMnt/ZG9zdWJzdWJzZWNlbnRyeQEyMTUyLDcxMDQ4CitcZGVmXGxh YmVsc3BhY2V7f2xhYmVsc3BhY2UBMjE2MCw3MTI5OQorXGRlZlxkb3BhZ2VubyMxe39kb3BhZ2Vu bwEyMTYyLDcxMzM0CitcZGVmXGRvc2hvcnRwYWdlbm8jMXt/ZG9zaG9ydHBhZ2VubwEyMTYzLDcx MzYwCitcZGVmXGNoYXBlbnRyeWZvbnRze39jaGFwZW50cnlmb250cwEyMTY1LDcxMzkyCitcZGVm XHNlY2VudHJ5Zm9udHN7f3NlY2VudHJ5Zm9udHMBMjE2Niw3MTQyNworXGxldFxzdWJzZWNlbnRy eWZvbnRzID0gXHRleHRmb250c39zdWJzZWNlbnRyeWZvbnRzATIxNjcsNzE0NTgKK1xsZXRcc3Vi c3Vic2VjZW50cnlmb250cyA9IFx0ZXh0Zm9udHN/c3Vic3Vic2VjZW50cnlmb250cwEyMTY4LDcx NDkzCitcbGV0XHB0ZXhlcXVpdiA9IFxlcXVpdn9wdGV4ZXF1aXYBMjE4MCw3MTg5NgorXGRlZlxw b2ludHt/cG9pbnQBMjE5Miw3MjM4NgorXGRlZlxyZXN1bHR7f3Jlc3VsdAEyMTk0LDcyNDA3Citc ZGVmXGV4cGFuc2lvbnt/ZXhwYW5zaW9uATIxOTUsNzI0ODAKK1xkZWZccHJpbnR7f3ByaW50ATIx OTYsNzI1NTEKK1xkZWZcZXF1aXZ7f2VxdWl2ATIxOTgsNzI2MTgKK1xkZWZcZXJyb3J7f2Vycm9y ATIyMTgsNzMzOTEKK1xkZWZcdGV4e390ZXgBMjIyNCw3MzYyMAorXGNhdGNvZGUgYFxePTcgXGNh dGNvZGUgYFxfPTggXGNhdGNvZGUgYFx+PTEzIFxsZXR+PVx0aWV/fgEyMjI3LDczNzMxCitcbGV0 XHs9XHB0ZXhsYnJhY2V/ewEyMjM3LDczOTEyCitcbGV0XH09XHB0ZXhyYnJhY2V/fQEyMjM4LDcz OTMxCitcbGV0XC49XHB0ZXhkb3R/LgEyMjM5LDczOTUwCitcbGV0XCo9XHB0ZXhzdGFyfyoBMjI0 MCw3Mzk2NgorXGxldFxkb3RzPVxwdGV4ZG90c39kb3RzATIyNDEsNzM5ODMKK1xkZWZcQHt/QAEy MjQyLDc0MDAzCitcbGV0XGJ1bGxldD1ccHRleGJ1bGxldH9idWxsZXQBMjI0Myw3NDAxNAorXGxl dFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4dCBcbGV0 XGw9XHB0ZXhsf2IBMjI0NCw3NDAzOAorXGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRc aT1ccHRleGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhsf2MBMjI0NCw3NDAzOAorXGxldFxi PVxwdGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9 XHB0ZXhsf2kBMjI0NCw3NDAzOAorXGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1c cHRleGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhsf3QBMjI0NCw3NDAzOAorXGxldFxiPVxw dGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0 ZXhsf2wBMjI0NCw3NDAzOAorXGxldFxMPVxwdGV4TH9MATIyNDUsNzQxMDgKK1xsZXRcRXRleD1c ZW5kZ3JvdXB9f0V0ZXgBMjI0Nyw3NDEyNAorXGdkZWZcbGlzcHBhcnt/bGlzcHBhcgEyMjU5LDc0 NTE3CitcZ2RlZlxzZXBzcGFjZXN7f3NlcHNwYWNlcwEyMjY1LDc0NzM1CitcZGVmXGFib3ZlZW52 YnJlYWt7f2Fib3ZlZW52YnJlYWsBMjI2OCw3NDgxNworXGRlZlxhZnRlcmVudmJyZWFre39hZnRl cmVudmJyZWFrATIyNzIsNzQ5ODMKK1xsZXRcbm9uYXJyb3dpbmc9XHJlbGF4f25vbmFycm93aW5n ATIyNzYsNzUxNzYKK1xkZWZcY3Rse39jdGwBMjI4Niw3NTQ5NAorXGRlZlxjdHJ7f2N0cgEyMjg3 LDc1NTY2CitcZGVmXGNibHt/Y2JsATIyODgsNzU2MDUKK1xkZWZcY2Jye39jYnIBMjI4OSw3NTY0 NQorXGRlZlxjYXJ0dG9we39jYXJ0dG9wATIyOTAsNzU2ODQKK1xkZWZcY2FydGJvdHt/Y2FydGJv dAEyMjkzLDc1NzkyCitcbG9uZ1xkZWZcY2FydG91Y2hle39jYXJ0b3VjaGUBMjI5OSw3NTkzMgor CVxsZXRcbm9uYXJyb3dpbmc9XGNvbW1lbnR/bm9uYXJyb3dpbmcBMjMxMSw3NjQwNAorXGRlZlxF Y2FydG91Y2hle39FY2FydG91Y2hlATIzMjYsNzY3MjAKK1xkZWZcbGlzcHt/bGlzcAEyMzM4LDc2 ODU1CitcbGV0XHBhcj1cbGlzcHBhcn9wYXIBMjM0Nyw3NzE4NAorXGRlZlxFbGlzcHt/RWxpc3AB MjM0OCw3NzIwMgorXGxldFxleGRlbnQ9XG5vZmlsbGV4ZGVudH9leGRlbnQBMjM1NSw3NzQxOAor XGxldFxub25hcnJvd2luZz1ccmVsYXh/bm9uYXJyb3dpbmcBMjM1Niw3NzQ0NAorXGRlZlxuZXh0 IyMxe39uZXh0ATIzNjAsNzc1MjgKK1xsZXRcZXhhbXBsZT1cbGlzcH9leGFtcGxlATIzNjMsNzc1 NTEKK1xkZWZcRWV4YW1wbGV7f0VleGFtcGxlATIzNjQsNzc1NzAKK1xsZXRcc21hbGxleGFtcGxl PVxsaXNwf3NtYWxsZXhhbXBsZQEyMzY2LDc3NTkzCitcZGVmXEVzbWFsbGV4YW1wbGV7f0VzbWFs bGV4YW1wbGUBMjM2Nyw3NzYxNworXGRlZlxzbWFsbGxpc3B4e39zbWFsbGxpc3B4ATIzNzMsNzc3 OTUKK1xsZXRccGFyPVxsaXNwcGFyf3BhcgEyMzgyLDc4MTMxCitcZGVmXEVzbWFsbGxpc3B7f0Vz bWFsbGxpc3ABMjM4Myw3ODE0OQorXGxldFxleGRlbnQ9XG5vZmlsbGV4ZGVudH9leGRlbnQBMjM5 Miw3ODQzNgorXGxldFxub25hcnJvd2luZz1ccmVsYXh/bm9uYXJyb3dpbmcBMjM5Myw3ODQ2Mgog XG9iZXlzcGFjZXMgXG9iZXlsaW5lcyBcbmluZXR0IFxpbmRleGZvbnRzIFxyYXdiYWNrc2xhc2h/ Zm9udHMBMjM5Niw3ODUwNQotXGRlZlxuZXh0IyMxe39cbmV4dAEyMzk3LDc4NTYyCi1cZGVmXGRp c3BsYXl7f1xkaXNwbGF5ATI0MDEsNzg2NDIKLVxkZWZcRWRpc3BsYXl7f1xFZGlzcGxheQEyNDEw LDc4OTYxCi1cZGVmXG5leHQjIzF7f1xuZXh0ATI0MjIsNzkyNzIKLVxkZWZcZm9ybWF0e39cZm9y bWF0ATI0MjYsNzkzNzUKLVxkZWZcRWZvcm1hdHt/XEVmb3JtYXQBMjQzNCw3OTY3MQotXGRlZlxu ZXh0IyMxe39cbmV4dAEyNDM3LDc5NzYwCi1cZGVmXGZsdXNobGVmdHt/XGZsdXNobGVmdAEyNDQx LDc5ODEyCi1cZGVmXEVmbHVzaGxlZnR7f1xFZmx1c2hsZWZ0ATI0NTEsODAxODMKLVxkZWZcbmV4 dCMjMXt/XG5leHQBMjQ1NCw4MDI3NgotXGRlZlxmbHVzaHJpZ2h0e39cZmx1c2hyaWdodAEyNDU2 LDgwMjk4Ci1cZGVmXEVmbHVzaHJpZ2h0e39cRWZsdXNocmlnaHQBMjQ2Niw4MDY3MAotXGRlZlxu ZXh0IyMxe39cbmV4dAEyNDcwLDgwODAxCi1cZGVmXHF1b3RhdGlvbnt/XHF1b3RhdGlvbgEyNDc0 LDgwODU5Ci1cZGVmXEVxdW90YXRpb257f1xFcXVvdGF0aW9uATI0ODAsODEwNTEKLVxkZWZcc2V0 ZGVmZm9udCAjMSB7f1xzZXRkZWZmb250ATI0OTMsODE0NDkKK1xkZWZcbmV4dCMjMXt/bmV4dAEy Mzk3LDc4NTYyCitcZGVmXGRpc3BsYXl7f2Rpc3BsYXkBMjQwMSw3ODY0MgorXGxldFxwYXI9XGxp c3BwYXJ/cGFyATI0MDksNzg5NDMKK1xkZWZcRWRpc3BsYXl7f0VkaXNwbGF5ATI0MTAsNzg5NjEK K1xsZXRcZXhkZW50PVxub2ZpbGxleGRlbnR/ZXhkZW50ATI0MTcsNzkxODAKK1xsZXRcbm9uYXJy b3dpbmc9XHJlbGF4f25vbmFycm93aW5nATI0MTgsNzkyMDYKK1xkZWZcbmV4dCMjMXt/bmV4dAEy NDIyLDc5MjcyCitcZGVmXGZvcm1hdHt/Zm9ybWF0ATI0MjYsNzkzNzUKK1xsZXRccGFyPVxsaXNw cGFyf3BhcgEyNDMzLDc5NjUzCitcZGVmXEVmb3JtYXR7f0Vmb3JtYXQBMjQzNCw3OTY3MQorXGRl ZlxuZXh0IyMxe39uZXh0ATI0MzcsNzk3NjAKK1xkZWZcZmx1c2hsZWZ0e39mbHVzaGxlZnQBMjQ0 MSw3OTgxMgorXGxldFxwYXI9XGxpc3BwYXJ/cGFyATI0NTAsODAxNjUKK1xkZWZcRWZsdXNobGVm dHt/RWZsdXNobGVmdAEyNDUxLDgwMTgzCitcZGVmXG5leHQjIzF7f25leHQBMjQ1NCw4MDI3Ngor XGRlZlxmbHVzaHJpZ2h0e39mbHVzaHJpZ2h0ATI0NTYsODAyOTgKK1xsZXRccGFyPVxsaXNwcGFy f3BhcgEyNDY1LDgwNjUyCitcZGVmXEVmbHVzaHJpZ2h0e39FZmx1c2hyaWdodAEyNDY2LDgwNjcw CitcZGVmXG5leHQjIzF7f25leHQBMjQ3MCw4MDgwMQorXGRlZlxxdW90YXRpb257f3F1b3RhdGlv bgEyNDc0LDgwODU5CitcZGVmXEVxdW90YXRpb257f0VxdW90YXRpb24BMjQ4MCw4MTA1MQorXGxl dFxub25hcnJvd2luZz1ccmVsYXh/bm9uYXJyb3dpbmcBMjQ4Nyw4MTMwMQorXGRlZlxzZXRkZWZm b250ICMxIHt/c2V0ZGVmZm9udAEyNDkzLDgxNDQ5CitcbmV3c2tpcFxkZWZib2R5aW5kZW50IFxk ZWZib2R5aW5kZW50PS40aW5/Ym9keWluZGVudAEyNDk1LDgxNDk1CiBcbmV3c2tpcFxkZWZib2R5 aW5kZW50IFxkZWZib2R5aW5kZW50PS40aW5/Ym9keWluZGVudAEyNDk1LDgxNDk1CiBcbmV3c2tp cFxkZWZhcmdzaW5kZW50IFxkZWZhcmdzaW5kZW50PTUwcHR/YXJnc2luZGVudAEyNDk2LDgxNTM4 CitcbmV3c2tpcFxkZWZhcmdzaW5kZW50IFxkZWZhcmdzaW5kZW50PTUwcHR/YXJnc2luZGVudAEy NDk2LDgxNTM4CiBcbmV3c2tpcFxkZWZ0eXBlbWFyZ2luIFxkZWZ0eXBlbWFyZ2luPTEycHR/dHlw ZW1hcmdpbgEyNDk3LDgxNTgxCitcbmV3c2tpcFxkZWZ0eXBlbWFyZ2luIFxkZWZ0eXBlbWFyZ2lu PTEycHR/dHlwZW1hcmdpbgEyNDk3LDgxNTgxCitcbmV3c2tpcFxkZWZsYXN0YXJnbWFyZ2luIFxk ZWZsYXN0YXJnbWFyZ2luPTE4cHR/bGFzdGFyZ21hcmdpbgEyNDk4LDgxNjI0CiBcbmV3c2tpcFxk ZWZsYXN0YXJnbWFyZ2luIFxkZWZsYXN0YXJnbWFyZ2luPTE4cHR/bGFzdGFyZ21hcmdpbgEyNDk4 LDgxNjI0Ci1cZGVmXGFjdGl2ZXBhcmVuc3t/XGFjdGl2ZXBhcmVucwEyNTAzLDgxODIyCi1cZGVm XG9wbnJ7f1xvcG5yATI1MjksODMwMzQKLVxkZWZcbGJyYnt/XGxicmIBMjUzMCw4MzA5OQotXGRl ZlxkZWZuYW1lICMxIzJ7f1xkZWZuYW1lATI1MzYsODMzMDAKK1xkZWZcYWN0aXZlcGFyZW5ze39h Y3RpdmVwYXJlbnMBMjUwMyw4MTgyMgorXGdkZWZcZnVuY3Rpb25wYXJlbnN7f2Z1bmN0aW9ucGFy ZW5zATI1MDcsODIwMTYKK1xnZGVmXGZ1bmN0aW9ucGFyZW5ze1xib2xkYnJheFxsZXQmPVxhbXBy bVxwYXJlbmNvdW50PTAgfX8mATI1MDcsODIwMTYKK1xnZGVmXGJvbGRicmF4e39ib2xkYnJheAEy NTA4LDgyMDc0CitcZ2RlZlxib2xkYnJheHtcbGV0KD1cb3BuclxsZXQpPVxjbG5yXGxldFs9XGxi cmJcbGV0XT1ccmJyYn1/KAEyNTA4LDgyMDc0CitcZ2RlZlxib2xkYnJheHtcbGV0KD1cb3Buclxs ZXQpPVxjbG5yXGxldFs9XGxicmJcbGV0XT1ccmJyYn1/KQEyNTA4LDgyMDc0CitcZ2RlZlxib2xk YnJheHtcbGV0KD1cb3BuclxsZXQpPVxjbG5yXGxldFs9XGxicmJcbGV0XT1ccmJyYn1/WwEyNTA4 LDgyMDc0CitcZ2RlZlxib2xkYnJheHtcbGV0KD1cb3BuclxsZXQpPVxjbG5yXGxldFs9XGxicmJc bGV0XT1ccmJyYn1/XQEyNTA4LDgyMDc0CitcZ2RlZlxvcHJtIzEge39vcHJtATI1MTIsODIyNTAK K1xnZGVmXG9wcm0jMSB7e1xybVxjaGFyYFwofSMxIFxiZiBcbGV0KD1cb3BuZXN0ZWQgJX8oATI1 MTIsODIyNTAKK1xnZGVmXG9wbmVzdGVke39vcG5lc3RlZAEyNTE2LDgyNDA3CitcZ2RlZlxjbHJt e39jbHJtATI1MTgsODI0NjYKK1xpZm51bSBccGFyZW5jb3VudD0xIHtccm0gXGNoYXIgYFwpfVxz bCBcbGV0KD1cb3BybSBcZWxzZSBcY2hhciBgXCkgXGZpfygBMjUyMCw4MjYwMgorXGdkZWZcYW1w cm0jMSB7f2FtcHJtATI1MjMsODI3NjkKK1xnZGVmXGFtcHJtIzEge3tccm1cJiMxfVxsZXQoPVxv cHJtIFxsZXQpPVxjbHJtXCB9fygBMjUyMyw4Mjc2OQorXGdkZWZcYW1wcm0jMSB7e1xybVwmIzF9 XGxldCg9XG9wcm0gXGxldCk9XGNscm1cIH1/KQEyNTIzLDgyNzY5CitcZ2RlZlxub3JtYWxwYXJl bnN7f25vcm1hbHBhcmVucwEyNTI1LDgyODIyCitcZ2RlZlxub3JtYWxwYXJlbnN7XGJvbGRicmF4 XGxldCY9XGFtcG5yfX8mATI1MjUsODI4MjIKK1xkZWZcb3Bucnt/b3BucgEyNTI5LDgzMDM0Citc ZGVmXG9wbnJ7e1xzZlxjaGFyYFwofX0gXGRlZlxjbG5ye39jbG5yATI1MjksODMwMzQKK1xkZWZc b3Bucnt7XHNmXGNoYXJgXCh9fSBcZGVmXGNsbnJ7e1xzZlxjaGFyYFwpfX0gXGRlZlxhbXBucnt/ YW1wbnIBMjUyOSw4MzAzNAorXGRlZlxsYnJie39sYnJiATI1MzAsODMwOTkKK1xkZWZcbGJyYnt7 XGJmXGNoYXJgXFt9fSBcZGVmXHJicmJ7f3JicmIBMjUzMCw4MzA5OQorXGRlZlxkZWZuYW1lICMx IzJ7f2RlZm5hbWUBMjUzNiw4MzMwMAogXGFkdmFuY2VcZGltZW4yIGJ5IC1cZGVmYm9keWluZGVu dH9ib2R5aW5kZW50ATI1NDAsODM0MTgKIFxhZHZhbmNlXGRpbWVuMyBieSAtXGRlZmJvZHlpbmRl bnR/Ym9keWluZGVudAEyNTQyLDgzNDcyCiBcc2V0Ym94MD1caGJveHtcaHNraXAgXGRlZmxhc3Rh cmdtYXJnaW57f2xhc3RhcmdtYXJnaW4BMjU0NCw4MzUyNgorXHNldGJveDA9XGhib3h7XGhza2lw IFxkZWZsYXN0YXJnbWFyZ2lue1xybSAjMn1caHNraXAgXGRlZnR5cGVtYXJnaW59f3R5cGVtYXJn aW4BMjU0NCw4MzUyNgogXGRpbWVuMT1caHNpemUgXGFkdmFuY2UgXGRpbWVuMSBieSAtXGRlZmFy Z3NpbmRlbnQgJXNpemUgZm9yIGNvbnRpbnVhdGlvbnN/YXJnc2luZGVudAEyNTQ2LDgzNjY4CiBc cGFyc2hhcGUgMiAwaW4gXGRpbWVuMCBcZGVmYXJnc2luZGVudCBcZGltZW4xICAgICAlf2FyZ3Np bmRlbnQBMjU0Nyw4Mzc0MwogXHJsYXB7XHJpZ2h0bGluZXt7XHJtICMyfVxoc2tpcCBcZGVmdHlw ZW1hcmdpbn1/dHlwZW1hcmdpbgEyNTU0LDg0MTEyCiBcYWR2YW5jZVxsZWZ0c2tpcCBieSAtXGRl ZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNTU3LDg0MjQ2CiBcZXhkZW50YW1vdW50PVxkZWZib2R5 aW5kZW50f2JvZHlpbmRlbnQBMjU1OCw4NDI4MwotXGRlZlxkZWZwYXJzZWJvZHkgIzEjMiMze39c ZGVmcGFyc2Vib2R5ATI1NjgsODQ2NDIKLVxkZWYjMXt/MjU3Miw4NDgyNgotXGRlZiMye38yNTcz LDg0ODYyCitcZGVmXGRlZnBhcnNlYm9keSAjMSMyIzN7f2RlZnBhcnNlYm9keQEyNTY4LDg0NjQy CitcYWR2YW5jZVxsZWZ0c2tpcCBieSBcZGVmYm9keWluZGVudCBcYWR2YW5jZSBccmlnaHRza2lw IGJ5IFxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjU3NSw4NDkzNAogXGFkdmFuY2VcbGVmdHNr aXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVmYm9keWluZGVu dH9ib2R5aW5kZW50ATI1NzUsODQ5MzQKIFxleGRlbnRhbW91bnQ9XGRlZmJvZHlpbmRlbnR/Ym9k eWluZGVudAEyNTc2LDg1MDA4Ci1cZGVmXGRlZm1ldGhwYXJzZWJvZHkgIzEjMiMzIzQge39cZGVm bWV0aHBhcnNlYm9keQEyNTgxLDg1MTEyCi1cZGVmIzF7fzI1ODUsODUyNzMKLVxkZWYjMiMjMSB7 fzI1ODYsODUzMDkKK1xkZWZcZGVmbWV0aHBhcnNlYm9keSAjMSMyIzMjNCB7f2RlZm1ldGhwYXJz ZWJvZHkBMjU4MSw4NTExMgorXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFk dmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI1ODgsODUzOTIK IFxhZHZhbmNlXGxlZnRza2lwIGJ5IFxkZWZib2R5aW5kZW50IFxhZHZhbmNlIFxyaWdodHNraXAg YnkgXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNTg4LDg1MzkyCiBcZXhkZW50YW1vdW50PVxk ZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjU4OSw4NTQ2NgotXGRlZlxkZWZvcHBhcnNlYm9keSAj MSMyIzMjNCM1IHt/XGRlZm9wcGFyc2Vib2R5ATI1OTIsODU1NTEKLVxkZWYjMXt/MjU5Niw4NTcx MgotXGRlZiMyIyMxICMjMiB7fzI1OTcsODU3NDgKK1xkZWZcZGVmb3BwYXJzZWJvZHkgIzEjMiMz IzQjNSB7f2RlZm9wcGFyc2Vib2R5ATI1OTIsODU1NTEKK1xhZHZhbmNlXGxlZnRza2lwIGJ5IFxk ZWZib2R5aW5kZW50IFxhZHZhbmNlIFxyaWdodHNraXAgYnkgXGRlZmJvZHlpbmRlbnR/Ym9keWlu ZGVudAEyNjAwLDg1ODQ4CiBcYWR2YW5jZVxsZWZ0c2tpcCBieSBcZGVmYm9keWluZGVudCBcYWR2 YW5jZSBccmlnaHRza2lwIGJ5IFxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjYwMCw4NTg0OAog XGV4ZGVudGFtb3VudD1cZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI2MDEsODU5MjIKLVxkZWZc ZGVmdmFycGFyc2Vib2R5ICMxIzIjM3t/XGRlZnZhcnBhcnNlYm9keQEyNjA4LDg2MTkzCi1cZGVm IzF7fzI2MTIsODYzODAKLVxkZWYjMnt/MjYxMyw4NjQxNgorXGRlZlxkZWZ2YXJwYXJzZWJvZHkg IzEjMiMze39kZWZ2YXJwYXJzZWJvZHkBMjYwOCw4NjE5MworXGFkdmFuY2VcbGVmdHNraXAgYnkg XGRlZmJvZHlpbmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVmYm9keWluZGVudH9ib2R5 aW5kZW50ATI2MTUsODY0NzUKIFxhZHZhbmNlXGxlZnRza2lwIGJ5IFxkZWZib2R5aW5kZW50IFxh ZHZhbmNlIFxyaWdodHNraXAgYnkgXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNjE1LDg2NDc1 CiBcZXhkZW50YW1vdW50PVxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjYxNiw4NjU0OQotXGRl ZlxkZWZ2cnBhcnNlYm9keSAjMSMyIzMjNCB7f1xkZWZ2cnBhcnNlYm9keQEyNjIxLDg2NjQwCi1c ZGVmIzF7fzI2MjUsODY3OTkKLVxkZWYjMiMjMSB7fzI2MjYsODY4MzUKK1xkZWZcZGVmdnJwYXJz ZWJvZHkgIzEjMiMzIzQge39kZWZ2cnBhcnNlYm9keQEyNjIxLDg2NjQwCitcYWR2YW5jZVxsZWZ0 c2tpcCBieSBcZGVmYm9keWluZGVudCBcYWR2YW5jZSBccmlnaHRza2lwIGJ5IFxkZWZib2R5aW5k ZW50f2JvZHlpbmRlbnQBMjYyOCw4NjkwNQogXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlp bmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI2 MjgsODY5MDUKIFxleGRlbnRhbW91bnQ9XGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNjI5LDg2 OTc5Ci1cZGVmXGRlZm9wdmFycGFyc2Vib2R5ICMxIzIjMyM0IzUge39cZGVmb3B2YXJwYXJzZWJv ZHkBMjYzMiw4NzA1MQotXGRlZiMxe38yNjM2LDg3MjE1Ci1cZGVmIzIjIzEgIyMyIHt/MjYzNyw4 NzI1MQorXGRlZlxkZWZvcHZhcnBhcnNlYm9keSAjMSMyIzMjNCM1IHt/ZGVmb3B2YXJwYXJzZWJv ZHkBMjYzMiw4NzA1MQorXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFkdmFu Y2UgXHJpZ2h0c2tpcCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI2NDAsODczMzgKIFxh ZHZhbmNlXGxlZnRza2lwIGJ5IFxkZWZib2R5aW5kZW50IFxhZHZhbmNlIFxyaWdodHNraXAgYnkg XGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNjQwLDg3MzM4CiBcZXhkZW50YW1vdW50PVxkZWZi b2R5aW5kZW50f2JvZHlpbmRlbnQBMjY0MSw4NzQxMgotXGRlZlxkZWZ1bmFyZ3MgIzF7f1xkZWZ1 bmFyZ3MBMjY2NCw4ODE3MgotXGRlZlxkZWZ0eXBlZnVuYXJncyAjMXt/XGRlZnR5cGVmdW5hcmdz ATI2NzYsODg1NTQKLVxkZWZcZGVmZm57f1xkZWZmbgEyNjkwLDg4OTM2Ci1cZGVmXGRlZmZuaGVh ZGVyICMxIzIjM3t/XGRlZmZuaGVhZGVyATI2OTIsODg5OTMKK1xnZGVmXHNwYWNlc3BsaXQjMSMy Xl5Ne39zcGFjZXNwbGl0ATI2NTIsODc3NzUKK1xsb25nXGdkZWZcc3BhY2VzcGxpdGZvbyMxIzIg IzMjNFxzcGFjZXNwbGl0Zm9ve39zcGFjZXNwbGl0Zm9vATI2NTMsODc4NTIKK1xkZWZcZGVmdW5h cmdzICMxe39kZWZ1bmFyZ3MBMjY2NCw4ODE3MgorXGRlZlxkZWZ0eXBlZnVuYXJncyAjMXt/ZGVm dHlwZWZ1bmFyZ3MBMjY3Niw4ODU1NAorXGRlZlxkZWZmbnt/ZGVmZm4BMjY5MCw4ODkzNgorXGRl ZlxkZWZmbntcZGVmbWV0aHBhcnNlYm9keVxFZGVmZm5cZGVmZm54XGRlZmZuaGVhZGVyfX9tZXRo cGFyc2Vib2R5XEVkZWZmbgEyNjkwLDg4OTM2CitcZGVmXGRlZmZue1xkZWZtZXRocGFyc2Vib2R5 XEVkZWZmblxkZWZmbnhcZGVmZm5oZWFkZXJ9f2ZueFxkZWZmbmhlYWRlcgEyNjkwLDg4OTM2Citc ZGVmXGRlZmZue1xkZWZtZXRocGFyc2Vib2R5XEVkZWZmblxkZWZmbnhcZGVmZm5oZWFkZXJ9f2Zu aGVhZGVyATI2OTAsODg5MzYKK1xkZWZcZGVmZm5oZWFkZXIgIzEjMiMze39kZWZmbmhlYWRlcgEy NjkyLDg4OTkzCiBcYmVnaW5ncm91cFxkZWZuYW1lIHt/bmFtZQEyNjkzLDg5MDQxCi1cZGVmXGRl ZnVue39cZGVmdW4BMjY5OSw4OTE4NgotXGRlZlxkZWZ1bmhlYWRlciAjMSMye39cZGVmdW5oZWFk ZXIBMjcwMSw4OTIzOQorXGJlZ2luZ3JvdXBcZGVmbmFtZSB7IzJ9eyMxfVxkZWZ1bmFyZ3N7f3Vu YXJncwEyNjkzLDg5MDQxCitcZGVmXGRlZnVue39kZWZ1bgEyNjk5LDg5MTg2CitcZGVmXGRlZnVu e1xkZWZwYXJzZWJvZHlcRWRlZnVuXGRlZnVueFxkZWZ1bmhlYWRlcn1/cGFyc2Vib2R5XEVkZWZ1 bgEyNjk5LDg5MTg2CitcZGVmXGRlZnVue1xkZWZwYXJzZWJvZHlcRWRlZnVuXGRlZnVueFxkZWZ1 bmhlYWRlcn1/dW54XGRlZnVuaGVhZGVyATI2OTksODkxODYKK1xkZWZcZGVmdW57XGRlZnBhcnNl Ym9keVxFZGVmdW5cZGVmdW54XGRlZnVuaGVhZGVyfX91bmhlYWRlcgEyNjk5LDg5MTg2CitcZGVm XGRlZnVuaGVhZGVyICMxIzJ7f2RlZnVuaGVhZGVyATI3MDEsODkyMzkKIFxiZWdpbmdyb3VwXGRl Zm5hbWUge39uYW1lATI3MDIsODkzMTQKIFxkZWZ1bmFyZ3Mge391bmFyZ3MBMjcwMyw4OTM1MAot XGRlZlxkZWZ0eXBlZnVue39cZGVmdHlwZWZ1bgEyNzA5LDg5NDk4Ci1cZGVmXGRlZnR5cGVmdW5o ZWFkZXIgIzEjMnt/XGRlZnR5cGVmdW5oZWFkZXIBMjcxMiw4OTYyMAotXGRlZlxkZWZ0eXBlZnVu aGVhZGVyeCAjMSMyICMzXHJlbGF4e39cZGVmdHlwZWZ1bmhlYWRlcngBMjcxNCw4OTcyOQorXGRl ZlxkZWZ0eXBlZnVue39kZWZ0eXBlZnVuATI3MDksODk0OTgKK1xkZWZcZGVmdHlwZWZ1bntcZGVm cGFyc2Vib2R5XEVkZWZ0eXBlZnVuXGRlZnR5cGVmdW54XGRlZnR5cGVmdW5oZWFkZXJ9f3BhcnNl Ym9keVxFZGVmdHlwZWZ1bgEyNzA5LDg5NDk4CitcZGVmXGRlZnR5cGVmdW57XGRlZnBhcnNlYm9k eVxFZGVmdHlwZWZ1blxkZWZ0eXBlZnVueFxkZWZ0eXBlZnVuaGVhZGVyfX90eXBlZnVueFxkZWZ0 eXBlZnVuaGVhZGVyATI3MDksODk0OTgKK1xkZWZcZGVmdHlwZWZ1bntcZGVmcGFyc2Vib2R5XEVk ZWZ0eXBlZnVuXGRlZnR5cGVmdW54XGRlZnR5cGVmdW5oZWFkZXJ9f3R5cGVmdW5oZWFkZXIBMjcw OSw4OTQ5OAorXGRlZlxkZWZ0eXBlZnVuaGVhZGVyICMxIzJ7f2RlZnR5cGVmdW5oZWFkZXIBMjcx Miw4OTYyMAorXGRlZlxkZWZ0eXBlZnVuaGVhZGVyICMxIzJ7XGRlZnR5cGVmdW5oZWFkZXJ4e390 eXBlZnVuaGVhZGVyeAEyNzEyLDg5NjIwCitcZGVmXGRlZnR5cGVmdW5oZWFkZXJ4ICMxIzIgIzNc cmVsYXh7f2RlZnR5cGVmdW5oZWFkZXJ4ATI3MTQsODk3MjkKIFxiZWdpbmdyb3VwXGRlZm5hbWUg e39uYW1lATI3MTYsODk4MjEKIFxkZWZ0eXBlZnVuYXJncyB7f3R5cGVmdW5hcmdzATI3MTcsODk4 NjcKLVxkZWZcZGVmdHlwZWZue39cZGVmdHlwZWZuATI3MjMsOTAwMzgKLVxkZWZcZGVmdHlwZWZu aGVhZGVyICMxIzIjM3t/XGRlZnR5cGVmbmhlYWRlcgEyNzI2LDkwMTg3Ci1cZGVmXGRlZnR5cGVm bmhlYWRlcnggIzEjMiMzICM0XHJlbGF4e39cZGVmdHlwZWZuaGVhZGVyeAEyNzI4LDkwMzIzCitc ZGVmXGRlZnR5cGVmbnt/ZGVmdHlwZWZuATI3MjMsOTAwMzgKK1xkZWZcZGVmdHlwZWZue1xkZWZt ZXRocGFyc2Vib2R5XEVkZWZ0eXBlZm5cZGVmdHlwZWZueFxkZWZ0eXBlZm5oZWFkZXJ9f21ldGhw YXJzZWJvZHlcRWRlZnR5cGVmbgEyNzIzLDkwMDM4CitcZGVmXGRlZnR5cGVmbntcZGVmbWV0aHBh cnNlYm9keVxFZGVmdHlwZWZuXGRlZnR5cGVmbnhcZGVmdHlwZWZuaGVhZGVyfX90eXBlZm54XGRl ZnR5cGVmbmhlYWRlcgEyNzIzLDkwMDM4CitcZGVmXGRlZnR5cGVmbntcZGVmbWV0aHBhcnNlYm9k eVxFZGVmdHlwZWZuXGRlZnR5cGVmbnhcZGVmdHlwZWZuaGVhZGVyfX90eXBlZm5oZWFkZXIBMjcy Myw5MDAzOAorXGRlZlxkZWZ0eXBlZm5oZWFkZXIgIzEjMiMze39kZWZ0eXBlZm5oZWFkZXIBMjcy Niw5MDE4NworXGRlZlxkZWZ0eXBlZm5oZWFkZXIgIzEjMiMze1xkZWZ0eXBlZm5oZWFkZXJ4e390 eXBlZm5oZWFkZXJ4ATI3MjYsOTAxODcKK1xkZWZcZGVmdHlwZWZuaGVhZGVyeCAjMSMyIzMgIzRc cmVsYXh7f2RlZnR5cGVmbmhlYWRlcngBMjcyOCw5MDMyMwogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7 f25hbWUBMjczMCw5MDQxNgogXGRlZnR5cGVmdW5hcmdzIHt/dHlwZWZ1bmFyZ3MBMjczMSw5MDQ1 NgotXGRlZlxkZWZtYWN7f1xkZWZtYWMBMjczNyw5MDU3NwotXGRlZlxkZWZtYWNoZWFkZXIgIzEj Mnt/XGRlZm1hY2hlYWRlcgEyNzM5LDkwNjM0CitcZGVmXGRlZm1hY3t/ZGVmbWFjATI3MzcsOTA1 NzcKK1xkZWZcZGVmbWFje1xkZWZwYXJzZWJvZHlcRWRlZm1hY1xkZWZtYWN4XGRlZm1hY2hlYWRl cn1/cGFyc2Vib2R5XEVkZWZtYWMBMjczNyw5MDU3NworXGRlZlxkZWZtYWN7XGRlZnBhcnNlYm9k eVxFZGVmbWFjXGRlZm1hY3hcZGVmbWFjaGVhZGVyfX9tYWN4XGRlZm1hY2hlYWRlcgEyNzM3LDkw NTc3CitcZGVmXGRlZm1hY3tcZGVmcGFyc2Vib2R5XEVkZWZtYWNcZGVmbWFjeFxkZWZtYWNoZWFk ZXJ9f21hY2hlYWRlcgEyNzM3LDkwNTc3CitcZGVmXGRlZm1hY2hlYWRlciAjMSMye39kZWZtYWNo ZWFkZXIBMjczOSw5MDYzNAogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjc0MCw5MDcxMAog XGRlZnVuYXJncyB7f3VuYXJncwEyNzQxLDkwNzQzCi1cZGVmXGRlZnNwZWN7f1xkZWZzcGVjATI3 NDcsOTA4NjcKLVxkZWZcZGVmc3BlY2hlYWRlciAjMSMye39cZGVmc3BlY2hlYWRlcgEyNzQ5LDkw OTI4CitcZGVmXGRlZnNwZWN7f2RlZnNwZWMBMjc0Nyw5MDg2NworXGRlZlxkZWZzcGVje1xkZWZw YXJzZWJvZHlcRWRlZnNwZWNcZGVmc3BlY3hcZGVmc3BlY2hlYWRlcn1/cGFyc2Vib2R5XEVkZWZz cGVjATI3NDcsOTA4NjcKK1xkZWZcZGVmc3BlY3tcZGVmcGFyc2Vib2R5XEVkZWZzcGVjXGRlZnNw ZWN4XGRlZnNwZWNoZWFkZXJ9f3NwZWN4XGRlZnNwZWNoZWFkZXIBMjc0Nyw5MDg2NworXGRlZlxk ZWZzcGVje1xkZWZwYXJzZWJvZHlcRWRlZnNwZWNcZGVmc3BlY3hcZGVmc3BlY2hlYWRlcn1/c3Bl Y2hlYWRlcgEyNzQ3LDkwODY3CitcZGVmXGRlZnNwZWNoZWFkZXIgIzEjMnt/ZGVmc3BlY2hlYWRl cgEyNzQ5LDkwOTI4CiBcYmVnaW5ncm91cFxkZWZuYW1lIHt/bmFtZQEyNzUwLDkxMDA1CiBcZGVm dW5hcmdzIHt/dW5hcmdzATI3NTEsOTEwNDUKLVxkZWZcZGVmZm54ICMxIHt/XGRlZmZueAEyNzU4 LDkxMjQwCi1cZGVmXGRlZnVueCAjMSB7f1xkZWZ1bngBMjc1OSw5MTI5NwotXGRlZlxkZWZtYWN4 ICMxIHt/XGRlZm1hY3gBMjc2MCw5MTM1NAotXGRlZlxkZWZzcGVjeCAjMSB7f1xkZWZzcGVjeAEy NzYxLDkxNDEzCi1cZGVmXGRlZnR5cGVmbnggIzEge39cZGVmdHlwZWZueAEyNzYyLDkxNDc0Ci1c ZGVmXGRlZnR5cGV1bnggIzEge39cZGVmdHlwZXVueAEyNzYzLDkxNTM5Ci1cZGVmXGRlZm9wICMx IHt/XGRlZm9wATI3NjksOTE2ODUKLVxkZWZvcHBhcnNlYm9keVxFZGVmb3BcZGVmb3B4XGRlZm9w aGVhZGVyXGRlZm9wdHlwZX1/b3BwYXJzZWJvZHlcRWRlZm9wXGRlZm9weFxkZWZvcGhlYWRlclxk ZWZvcHR5cGUBMjc3MCw5MTcyMAotXGRlZlxkZWZvcGhlYWRlciAjMSMyIzN7f1xkZWZvcGhlYWRl cgEyNzcyLDkxNzc0CitcZGVmXGRlZmZueCAjMSB7f2RlZmZueAEyNzU4LDkxMjQwCitcZGVmXGRl ZnVueCAjMSB7f2RlZnVueAEyNzU5LDkxMjk3CitcZGVmXGRlZm1hY3ggIzEge39kZWZtYWN4ATI3 NjAsOTEzNTQKK1xkZWZcZGVmc3BlY3ggIzEge39kZWZzcGVjeAEyNzYxLDkxNDEzCitcZGVmXGRl ZnR5cGVmbnggIzEge39kZWZ0eXBlZm54ATI3NjIsOTE0NzQKK1xkZWZcZGVmdHlwZXVueCAjMSB7 f2RlZnR5cGV1bngBMjc2Myw5MTUzOQorXGRlZlxkZWZvcCAjMSB7f2RlZm9wATI3NjksOTE2ODUK K1xkZWZcZGVmb3AgIzEge1xkZWZcZGVmb3B0eXBle39kZWZvcHR5cGUBMjc2OSw5MTY4NQorXGRl Zm9wcGFyc2Vib2R5XEVkZWZvcFxkZWZvcHhcZGVmb3BoZWFkZXJcZGVmb3B0eXBlfX9vcHBhcnNl Ym9keVxFZGVmb3ABMjc3MCw5MTcyMAorXGRlZm9wcGFyc2Vib2R5XEVkZWZvcFxkZWZvcHhcZGVm b3BoZWFkZXJcZGVmb3B0eXBlfX9vcHhcZGVmb3BoZWFkZXIBMjc3MCw5MTcyMAorXGRlZm9wcGFy c2Vib2R5XEVkZWZvcFxkZWZvcHhcZGVmb3BoZWFkZXJcZGVmb3B0eXBlfX9vcGhlYWRlclxkZWZv cHR5cGUBMjc3MCw5MTcyMAorXGRlZm9wcGFyc2Vib2R5XEVkZWZvcFxkZWZvcHhcZGVmb3BoZWFk ZXJcZGVmb3B0eXBlfX9vcHR5cGUBMjc3MCw5MTcyMAorXGRlZlxkZWZvcGhlYWRlciAjMSMyIzN7 f2RlZm9waGVhZGVyATI3NzIsOTE3NzQKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI3NzQs OTE4NjMKK1xiZWdpbmdyb3VwXGRlZm5hbWUgeyMyfXtcZGVmb3B0eXBle39vcHR5cGUBMjc3NCw5 MTg2MwogXGRlZnVuYXJncyB7f3VuYXJncwEyNzc1LDkxOTA5Ci1cZGVmXGRlZm1ldGhvZHt/XGRl Zm1ldGhvZAEyNzgwLDkxOTcwCi1cZGVmXGRlZm1ldGhvZGhlYWRlciAjMSMyIzN7f1xkZWZtZXRo b2RoZWFkZXIBMjc4Miw5MjA0MworXGRlZlxkZWZtZXRob2R7f2RlZm1ldGhvZAEyNzgwLDkxOTcw CitcZGVmXGRlZm1ldGhvZHtcZGVmbWV0aHBhcnNlYm9keVxFZGVmbWV0aG9kXGRlZm1ldGhvZHhc ZGVmbWV0aG9kaGVhZGVyfX9tZXRocGFyc2Vib2R5XEVkZWZtZXRob2QBMjc4MCw5MTk3MAorXGRl ZlxkZWZtZXRob2R7XGRlZm1ldGhwYXJzZWJvZHlcRWRlZm1ldGhvZFxkZWZtZXRob2R4XGRlZm1l dGhvZGhlYWRlcn1/bWV0aG9keFxkZWZtZXRob2RoZWFkZXIBMjc4MCw5MTk3MAorXGRlZlxkZWZt ZXRob2R7XGRlZm1ldGhwYXJzZWJvZHlcRWRlZm1ldGhvZFxkZWZtZXRob2R4XGRlZm1ldGhvZGhl YWRlcn1/bWV0aG9kaGVhZGVyATI3ODAsOTE5NzAKK1xkZWZcZGVmbWV0aG9kaGVhZGVyICMxIzIj M3t/ZGVmbWV0aG9kaGVhZGVyATI3ODIsOTIwNDMKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1l ATI3ODQsOTIxMzEKIFxkZWZ1bmFyZ3Mge391bmFyZ3MBMjc4NSw5MjE3MQotXGRlZlxkZWZjdiAj MSB7f1xkZWZjdgEyNzkwLDkyMjQ1Ci1cZGVmb3B2YXJwYXJzZWJvZHlcRWRlZmN2XGRlZmN2eFxk ZWZjdmFyaGVhZGVyXGRlZmN2dHlwZX1/b3B2YXJwYXJzZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZj dmFyaGVhZGVyXGRlZmN2dHlwZQEyNzkxLDkyMjgwCi1cZGVmXGRlZmN2YXJoZWFkZXIgIzEjMiMz e39cZGVmY3ZhcmhlYWRlcgEyNzkzLDkyMzM5CitcZGVmXGRlZmN2ICMxIHt/ZGVmY3YBMjc5MCw5 MjI0NQorXGRlZlxkZWZjdiAjMSB7XGRlZlxkZWZjdnR5cGV7f2RlZmN2dHlwZQEyNzkwLDkyMjQ1 CitcZGVmb3B2YXJwYXJzZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZjdmFyaGVhZGVyXGRlZmN2dHlw ZX1/b3B2YXJwYXJzZWJvZHlcRWRlZmN2ATI3OTEsOTIyODAKK1xkZWZvcHZhcnBhcnNlYm9keVxF ZGVmY3ZcZGVmY3Z4XGRlZmN2YXJoZWFkZXJcZGVmY3Z0eXBlfX9jdnhcZGVmY3ZhcmhlYWRlcgEy NzkxLDkyMjgwCitcZGVmb3B2YXJwYXJzZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZjdmFyaGVhZGVy XGRlZmN2dHlwZX1/Y3ZhcmhlYWRlclxkZWZjdnR5cGUBMjc5MSw5MjI4MAorXGRlZm9wdmFycGFy c2Vib2R5XEVkZWZjdlxkZWZjdnhcZGVmY3ZhcmhlYWRlclxkZWZjdnR5cGV9f2N2dHlwZQEyNzkx LDkyMjgwCitcZGVmXGRlZmN2YXJoZWFkZXIgIzEjMiMze39kZWZjdmFyaGVhZGVyATI3OTMsOTIz MzkKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI3OTUsOTI0MjUKK1xiZWdpbmdyb3VwXGRl Zm5hbWUgeyMyfXtcZGVmY3Z0eXBle39jdnR5cGUBMjc5NSw5MjQyNQogXGRlZnZhcmFyZ3Mge392 YXJhcmdzATI3OTYsOTI0NzEKLVxkZWZcZGVmaXZhcnt/XGRlZml2YXIBMjgwMSw5MjU0NAotXGRl ZlxkZWZpdmFyaGVhZGVyICMxIzIjM3t/XGRlZml2YXJoZWFkZXIBMjgwMyw5MjYwNworXGRlZlxk ZWZpdmFye39kZWZpdmFyATI4MDEsOTI1NDQKK1xkZWZcZGVmaXZhcntcZGVmdnJwYXJzZWJvZHlc RWRlZml2YXJcZGVmaXZhcnhcZGVmaXZhcmhlYWRlcn1/dnJwYXJzZWJvZHlcRWRlZml2YXIBMjgw MSw5MjU0NAorXGRlZlxkZWZpdmFye1xkZWZ2cnBhcnNlYm9keVxFZGVmaXZhclxkZWZpdmFyeFxk ZWZpdmFyaGVhZGVyfX9pdmFyeFxkZWZpdmFyaGVhZGVyATI4MDEsOTI1NDQKK1xkZWZcZGVmaXZh cntcZGVmdnJwYXJzZWJvZHlcRWRlZml2YXJcZGVmaXZhcnhcZGVmaXZhcmhlYWRlcn1/aXZhcmhl YWRlcgEyODAxLDkyNTQ0CitcZGVmXGRlZml2YXJoZWFkZXIgIzEjMiMze39kZWZpdmFyaGVhZGVy ATI4MDMsOTI2MDcKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI4MDUsOTI2OTMKIFxkZWZ2 YXJhcmdzIHt/dmFyYXJncwEyODA2LDkyNzQ0Ci1cZGVmXGRlZm9weCAjMSB7f1xkZWZvcHgBMjgx Miw5Mjg5MwotXGRlZlxkZWZtZXRob2R4ICMxIHt/XGRlZm1ldGhvZHgBMjgxMyw5Mjk1MAotXGRl ZlxkZWZjdnggIzEge39cZGVmY3Z4ATI4MTQsOTMwMTUKLVxkZWZcZGVmaXZhcnggIzEge39cZGVm aXZhcngBMjgxNSw5MzA3MgotXGRlZlxkZWZ2YXJhcmdzICMxe39cZGVmdmFyYXJncwEyODIyLDkz MzQzCi1cZGVmXGRlZnZye39cZGVmdnIBMjgyOCw5MzQ4NwotXGRlZlxkZWZ2cmhlYWRlciAjMSMy IzN7f1xkZWZ2cmhlYWRlcgEyODMwLDkzNTQyCitcZGVmXGRlZm9weCAjMSB7f2RlZm9weAEyODEy LDkyODkzCitcZGVmXGRlZm1ldGhvZHggIzEge39kZWZtZXRob2R4ATI4MTMsOTI5NTAKK1xkZWZc ZGVmY3Z4ICMxIHt/ZGVmY3Z4ATI4MTQsOTMwMTUKK1xkZWZcZGVmaXZhcnggIzEge39kZWZpdmFy eAEyODE1LDkzMDcyCitcZGVmXGRlZnZhcmFyZ3MgIzF7f2RlZnZhcmFyZ3MBMjgyMiw5MzM0Mwor XGRlZlxkZWZ2cnt/ZGVmdnIBMjgyOCw5MzQ4NworXGRlZlxkZWZ2cntcZGVmdnJwYXJzZWJvZHlc RWRlZnZyXGRlZnZyeFxkZWZ2cmhlYWRlcn1/dnJwYXJzZWJvZHlcRWRlZnZyATI4MjgsOTM0ODcK K1xkZWZcZGVmdnJ7XGRlZnZycGFyc2Vib2R5XEVkZWZ2clxkZWZ2cnhcZGVmdnJoZWFkZXJ9f3Zy eFxkZWZ2cmhlYWRlcgEyODI4LDkzNDg3CitcZGVmXGRlZnZye1xkZWZ2cnBhcnNlYm9keVxFZGVm dnJcZGVmdnJ4XGRlZnZyaGVhZGVyfX92cmhlYWRlcgEyODI4LDkzNDg3CitcZGVmXGRlZnZyaGVh ZGVyICMxIzIjM3t/ZGVmdnJoZWFkZXIBMjgzMCw5MzU0MgogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7 f25hbWUBMjgzMSw5MzU5MAotXGRlZlxkZWZ2YXJ7f1xkZWZ2YXIBMjgzNSw5MzY3NQotXGRlZlxk ZWZ2YXJoZWFkZXIgIzEjMnt/XGRlZnZhcmhlYWRlcgEyODM3LDkzNzM1CitcYmVnaW5ncm91cFxk ZWZuYW1lIHsjMn17IzF9XGRlZnZhcmFyZ3N7f3ZhcmFyZ3MBMjgzMSw5MzU5MAorXGRlZlxkZWZ2 YXJ7f2RlZnZhcgEyODM1LDkzNjc1CitcZGVmXGRlZnZhcntcZGVmdmFycGFyc2Vib2R5XEVkZWZ2 YXJcZGVmdmFyeFxkZWZ2YXJoZWFkZXJ9f3ZhcnBhcnNlYm9keVxFZGVmdmFyATI4MzUsOTM2NzUK K1xkZWZcZGVmdmFye1xkZWZ2YXJwYXJzZWJvZHlcRWRlZnZhclxkZWZ2YXJ4XGRlZnZhcmhlYWRl cn1/dmFyeFxkZWZ2YXJoZWFkZXIBMjgzNSw5MzY3NQorXGRlZlxkZWZ2YXJ7XGRlZnZhcnBhcnNl Ym9keVxFZGVmdmFyXGRlZnZhcnhcZGVmdmFyaGVhZGVyfX92YXJoZWFkZXIBMjgzNSw5MzY3NQor XGRlZlxkZWZ2YXJoZWFkZXIgIzEjMnt/ZGVmdmFyaGVhZGVyATI4MzcsOTM3MzUKIFxiZWdpbmdy b3VwXGRlZm5hbWUge39uYW1lATI4MzgsOTM4MDYKIFxkZWZ2YXJhcmdzIHt/dmFyYXJncwEyODM5 LDkzODQyCi1cZGVmXGRlZm9wdHt/XGRlZm9wdAEyODQ0LDkzOTA4Ci1cZGVmXGRlZm9wdGhlYWRl ciAjMSMye39cZGVmb3B0aGVhZGVyATI4NDYsOTM5NjgKK1xkZWZcZGVmb3B0e39kZWZvcHQBMjg0 NCw5MzkwOAorXGRlZlxkZWZvcHR7XGRlZnZhcnBhcnNlYm9keVxFZGVmb3B0XGRlZm9wdHhcZGVm b3B0aGVhZGVyfX92YXJwYXJzZWJvZHlcRWRlZm9wdAEyODQ0LDkzOTA4CitcZGVmXGRlZm9wdHtc ZGVmdmFycGFyc2Vib2R5XEVkZWZvcHRcZGVmb3B0eFxkZWZvcHRoZWFkZXJ9f29wdHhcZGVmb3B0 aGVhZGVyATI4NDQsOTM5MDgKK1xkZWZcZGVmb3B0e1xkZWZ2YXJwYXJzZWJvZHlcRWRlZm9wdFxk ZWZvcHR4XGRlZm9wdGhlYWRlcn1/b3B0aGVhZGVyATI4NDQsOTM5MDgKK1xkZWZcZGVmb3B0aGVh ZGVyICMxIzJ7f2RlZm9wdGhlYWRlcgEyODQ2LDkzOTY4CiBcYmVnaW5ncm91cFxkZWZuYW1lIHt/ bmFtZQEyODQ3LDk0MDM5CiBcZGVmdmFyYXJncyB7f3ZhcmFyZ3MBMjg0OCw5NDA3OAotXGRlZlxk ZWZ0eXBldmFye39cZGVmdHlwZXZhcgEyODUzLDk0MTM1Ci1cZGVmXGRlZnR5cGV2YXJoZWFkZXIg IzEjMnt/XGRlZnR5cGV2YXJoZWFkZXIBMjg1Niw5NDI1MQorXGRlZlxkZWZ0eXBldmFye39kZWZ0 eXBldmFyATI4NTMsOTQxMzUKK1xkZWZcZGVmdHlwZXZhcntcZGVmdmFycGFyc2Vib2R5XEVkZWZ0 eXBldmFyXGRlZnR5cGV2YXJ4XGRlZnR5cGV2YXJoZWFkZXJ9f3ZhcnBhcnNlYm9keVxFZGVmdHlw ZXZhcgEyODUzLDk0MTM1CitcZGVmXGRlZnR5cGV2YXJ7XGRlZnZhcnBhcnNlYm9keVxFZGVmdHlw ZXZhclxkZWZ0eXBldmFyeFxkZWZ0eXBldmFyaGVhZGVyfX90eXBldmFyeFxkZWZ0eXBldmFyaGVh ZGVyATI4NTMsOTQxMzUKK1xkZWZcZGVmdHlwZXZhcntcZGVmdmFycGFyc2Vib2R5XEVkZWZ0eXBl dmFyXGRlZnR5cGV2YXJ4XGRlZnR5cGV2YXJoZWFkZXJ9f3R5cGV2YXJoZWFkZXIBMjg1Myw5NDEz NQorXGRlZlxkZWZ0eXBldmFyaGVhZGVyICMxIzJ7f2RlZnR5cGV2YXJoZWFkZXIBMjg1Niw5NDI1 MQogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjg1OCw5NDMzNAotXGRlZlxkZWZ0eXBldnJ7 f1xkZWZ0eXBldnIBMjg2NSw5NDUwOAotXGRlZlxkZWZ0eXBldnJoZWFkZXIgIzEjMiMze39cZGVm dHlwZXZyaGVhZGVyATI4NjcsOTQ1NzkKK1xkZWZcZGVmdHlwZXZye39kZWZ0eXBldnIBMjg2NSw5 NDUwOAorXGRlZlxkZWZ0eXBldnJ7XGRlZnZycGFyc2Vib2R5XEVkZWZ0eXBldnJcZGVmdHlwZXZy eFxkZWZ0eXBldnJoZWFkZXJ9f3ZycGFyc2Vib2R5XEVkZWZ0eXBldnIBMjg2NSw5NDUwOAorXGRl ZlxkZWZ0eXBldnJ7XGRlZnZycGFyc2Vib2R5XEVkZWZ0eXBldnJcZGVmdHlwZXZyeFxkZWZ0eXBl dnJoZWFkZXJ9f3R5cGV2cnhcZGVmdHlwZXZyaGVhZGVyATI4NjUsOTQ1MDgKK1xkZWZcZGVmdHlw ZXZye1xkZWZ2cnBhcnNlYm9keVxFZGVmdHlwZXZyXGRlZnR5cGV2cnhcZGVmdHlwZXZyaGVhZGVy fX90eXBldnJoZWFkZXIBMjg2NSw5NDUwOAorXGRlZlxkZWZ0eXBldnJoZWFkZXIgIzEjMiMze39k ZWZ0eXBldnJoZWFkZXIBMjg2Nyw5NDU3OQogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjg2 OCw5NDYzMQotXGRlZlxkZWZ2cnggIzEge39cZGVmdnJ4ATI4NzYsOTQ4NjgKLVxkZWZcZGVmdmFy eCAjMSB7f1xkZWZ2YXJ4ATI4NzcsOTQ5MjUKLVxkZWZcZGVmb3B0eCAjMSB7f1xkZWZvcHR4ATI4 NzgsOTQ5ODQKLVxkZWZcZGVmdHlwZXZhcnggIzEge39cZGVmdHlwZXZhcngBMjg3OSw5NTA0Mwot XGRlZlxkZWZ0eXBldnJ4ICMxIHt/XGRlZnR5cGV2cngBMjg4MCw5NTExMAotXGRlZlxkZWZ0cGFy Z3MgIzF7f1xkZWZ0cGFyZ3MBMjg4NSw5NTI1OQotXGRlZlxkZWZ0cHt/XGRlZnRwATI4ODksOTUz MzkKLVxkZWZcZGVmdHBoZWFkZXIgIzEjMiMze39cZGVmdHBoZWFkZXIBMjg5MSw5NTM5NAorXGRl ZlxkZWZ2cnggIzEge39kZWZ2cngBMjg3Niw5NDg2OAorXGRlZlxkZWZ2YXJ4ICMxIHt/ZGVmdmFy eAEyODc3LDk0OTI1CitcZGVmXGRlZm9wdHggIzEge39kZWZvcHR4ATI4NzgsOTQ5ODQKK1xkZWZc ZGVmdHlwZXZhcnggIzEge39kZWZ0eXBldmFyeAEyODc5LDk1MDQzCitcZGVmXGRlZnR5cGV2cngg IzEge39kZWZ0eXBldnJ4ATI4ODAsOTUxMTAKK1xkZWZcZGVmdHBhcmdzICMxe39kZWZ0cGFyZ3MB Mjg4NSw5NTI1OQorXGRlZlxkZWZ0cGFyZ3MgIzF7XGJmIFxkZWZ2YXJhcmdze392YXJhcmdzATI4 ODUsOTUyNTkKK1xkZWZcZGVmdHB7f2RlZnRwATI4ODksOTUzMzkKK1xkZWZcZGVmdHB7XGRlZnZy cGFyc2Vib2R5XEVkZWZ0cFxkZWZ0cHhcZGVmdHBoZWFkZXJ9f3ZycGFyc2Vib2R5XEVkZWZ0cAEy ODg5LDk1MzM5CitcZGVmXGRlZnRwe1xkZWZ2cnBhcnNlYm9keVxFZGVmdHBcZGVmdHB4XGRlZnRw aGVhZGVyfX90cHhcZGVmdHBoZWFkZXIBMjg4OSw5NTMzOQorXGRlZlxkZWZ0cHtcZGVmdnJwYXJz ZWJvZHlcRWRlZnRwXGRlZnRweFxkZWZ0cGhlYWRlcn1/dHBoZWFkZXIBMjg4OSw5NTMzOQorXGRl ZlxkZWZ0cGhlYWRlciAjMSMyIzN7f2RlZnRwaGVhZGVyATI4OTEsOTUzOTQKIFxiZWdpbmdyb3Vw XGRlZm5hbWUge39uYW1lATI4OTIsOTU0NDIKLVxkZWZcZGVmdHB4ICMxIHt/XGRlZnRweAEyODk3 LDk1NjAxCi1cZGVmXHNldHJlZiMxe39cc2V0cmVmATI5MDgsOTU5MjIKLVxkZWZcdW5udW1ic2V0 cmVmIzF7f1x1bm51bWJzZXRyZWYBMjkxMyw5NjAzNgotXGRlZlxhcHBlbmRpeHNldHJlZiMxe39c YXBwZW5kaXhzZXRyZWYBMjkxOCw5NjE0MwotXGRlZlxweHJlZiMxe39ccHhyZWYBMjkyOSw5NjU1 NAotXGRlZlx4cmVmIzF7f1x4cmVmATI5MzAsOTY1OTAKLVxkZWZccmVmIzF7f1xyZWYBMjkzMSw5 NjYyNQotXGRlZlx4cmVmWFsjMSwjMiwjMywjNCwjNSwjNl17f1x4cmVmWFsBMjkzMiw5NjY1NQot XGRlZlxwcmludGVkbWFudWFse39ccHJpbnRlZG1hbnVhbAEyOTMzLDk2Njk4Ci1cZGVmXHByaW50 ZWRub2RlbmFtZXt/XHByaW50ZWRub2RlbmFtZQEyOTM0LDk2NzM2Ci1cZGVmXHByaW50ZWRub2Rl bmFtZXt/XHByaW50ZWRub2RlbmFtZQEyOTM5LDk2ODYxCi1zZWN0aW9uIGBgXHByaW50ZWRub2Rl bmFtZScnIGluIFxjaXRle1xwcmludGVkbWFudWFsfX9ccHJpbnRlZG1hbnVhbAEyOTU0LDk3NDkz CitcYmVnaW5ncm91cFxkZWZuYW1lIHsjMn17IzF9XGRlZnRwYXJnc3t/dHBhcmdzATI4OTIsOTU0 NDIKK1xkZWZcZGVmdHB4ICMxIHt/ZGVmdHB4ATI4OTcsOTU2MDEKK1xkZWZcc2V0cmVmIzF7f3Nl dHJlZgEyOTA4LDk1OTIyCitcZGVmXHVubnVtYnNldHJlZiMxe391bm51bWJzZXRyZWYBMjkxMyw5 NjAzNgorXGRlZlxhcHBlbmRpeHNldHJlZiMxe39hcHBlbmRpeHNldHJlZgEyOTE4LDk2MTQzCitc ZGVmXHB4cmVmIzF7f3B4cmVmATI5MjksOTY1NTQKK1xkZWZceHJlZiMxe394cmVmATI5MzAsOTY1 OTAKK1xkZWZccmVmIzF7f3JlZgEyOTMxLDk2NjI1CitcZGVmXHhyZWZYWyMxLCMyLCMzLCM0LCM1 LCM2XXt/eHJlZlgBMjkzMiw5NjY1NQorXGRlZlxwcmludGVkbWFudWFse39wcmludGVkbWFudWFs ATI5MzMsOTY2OTgKK1xkZWZccHJpbnRlZG5vZGVuYW1le39wcmludGVkbm9kZW5hbWUBMjkzNCw5 NjczNgorXGRlZlxwcmludGVkbm9kZW5hbWV7f3ByaW50ZWRub2RlbmFtZQEyOTM5LDk2ODYxCitz ZWN0aW9uIGBgXHByaW50ZWRub2RlbmFtZScnIGluIFxjaXRle1xwcmludGVkbWFudWFsfX9wcmlu dGVkbWFudWFsATI5NTQsOTc0OTMKIFxyZWZ4e394ATI5NTcsOTc1NzEKLVxkZWZcZG9zZXRxICMx IzJ7f1xkb3NldHEBMjk2NSw5Nzc5MQotXGRlZlxpbnRlcm5hbHNldHEgIzEjMnt/XGludGVybmFs c2V0cQEyOTczLDk4MDQ5Ci1cZGVmXFlwYWdlbnVtYmVye39cWXBhZ2VudW1iZXIBMjk3Nyw5ODE1 MAotXGRlZlxZdGl0bGV7f1xZdGl0bGUBMjk3OSw5ODE3NgotXGRlZlxZbm90aGluZ3t/XFlub3Ro aW5nATI5ODEsOTgyMDMKLVxkZWZcWXNlY3Rpb25udW1iZXJhbmR0eXBle39cWXNlY3Rpb25udW1i ZXJhbmR0eXBlATI5ODMsOTgyMjAKLVxkZWZcWWFwcGVuZGl4bGV0dGVyYW5kdHlwZXt/XFlhcHBl bmRpeGxldHRlcmFuZHR5cGUBMjk5Miw5ODUzNgorXHJlZnh7IzEtc250fXt9IFtccHJpbnRlZG5v ZGVuYW1lXSwgcGFnZVx0aWVccmVmeHt/eAEyOTU3LDk3NTcxCitcZGVmXGRvc2V0cSAjMSMye39k b3NldHEBMjk2NSw5Nzc5MQorXGRlZlxkb3NldHEgIzEjMnt7XGxldFxmb2xpbz0wIFx0dXJub2Zm YWN0aXZlJX9mb2xpbwEyOTY1LDk3NzkxCitcZWRlZlxuZXh0e39uZXh0ATI5NjYsOTc4MzgKK1xk ZWZcaW50ZXJuYWxzZXRxICMxIzJ7f2ludGVybmFsc2V0cQEyOTczLDk4MDQ5CitcZGVmXFlwYWdl bnVtYmVye39ZcGFnZW51bWJlcgEyOTc3LDk4MTUwCitcZGVmXFl0aXRsZXt/WXRpdGxlATI5Nzks OTgxNzYKK1xkZWZcWW5vdGhpbmd7f1lub3RoaW5nATI5ODEsOTgyMDMKK1xkZWZcWXNlY3Rpb25u dW1iZXJhbmR0eXBle39Zc2VjdGlvbm51bWJlcmFuZHR5cGUBMjk4Myw5ODIyMAorXGRlZlxZYXBw ZW5kaXhsZXR0ZXJhbmR0eXBle39ZYXBwZW5kaXhsZXR0ZXJhbmR0eXBlATI5OTIsOTg1MzYKIFxp Zm51bVxzZWNubz0wIEFwcGVuZGl4XHhyZWZ0aWUnY2hhclx0aGVcYXBwZW5kaXhub3t/bm8BMjk5 Myw5ODU2NgotXGVsc2UgXGlmbnVtIFxzdWJzZWNubz0wIFNlY3Rpb25ceHJlZnRpZSdjaGFyXHRo ZVxhcHBlbmRpeG5vLlx0aGVcc2Vjbm8gJX9uby5cdGhlXHNlY25vATI5OTQsOTg2MjEKLVNlY3Rp b25ceHJlZnRpZSdjaGFyXHRoZVxhcHBlbmRpeG5vLlx0aGVcc2Vjbm8uXHRoZVxzdWJzZWNubyAl f25vLlx0aGVcc2Vjbm8uXHRoZVxzdWJzZWNubwEyOTk2LDk4NzI1Ci1TZWN0aW9uXHhyZWZ0aWUn Y2hhclx0aGVcYXBwZW5kaXhuby5cdGhlXHNlY25vLlx0aGVcc3Vic2Vjbm8uXHRoZVxzdWJzdWJz ZWNubyAlf25vLlx0aGVcc2Vjbm8uXHRoZVxzdWJzZWNuby5cdGhlXHN1YnN1YnNlY25vATI5OTgs OTg3OTYKLSAgXGRlZlxsaW5lbnVtYmVye39cbGluZW51bWJlcgEzMDA5LDk5MTM1Ci1cZGVmXHJl ZngjMSMye39ccmVmeAEzMDE1LDk5MzE5Ci1cZGVmXHhyZGVmICMxIzJ7f1x4cmRlZgEzMDM3LDk5 OTQ1Ci1cZGVmXHJlYWRhdXhmaWxle39ccmVhZGF1eGZpbGUBMzA0MCwxMDAwMzAKLVxkZWZcc3Vw ZXJlamVjdHt/XHN1cGVyZWplY3QBMzExMCwxMDE4MTEKLVxmb290c3RydXRccGFyaW5kZW50PVxk ZWZhdWx0cGFyaW5kZW50XGhhbmdcdGV4dGluZGVudHt/YXVsdHBhcmluZGVudFxoYW5nXHRleHRp bmRlbnQBMzEzMSwxMDI0OTYKLVxkZWZcb3BlbmluZGljZXN7f1xvcGVuaW5kaWNlcwEzMTM5LDEw MjY4MgorXGVsc2UgXGlmbnVtIFxzdWJzZWNubz0wIFNlY3Rpb25ceHJlZnRpZSdjaGFyXHRoZVxh cHBlbmRpeG5vLlx0aGVcc2Vjbm8gJX9uby5cdGhlATI5OTQsOTg2MjEKK1NlY3Rpb25ceHJlZnRp ZSdjaGFyXHRoZVxhcHBlbmRpeG5vLlx0aGVcc2Vjbm8uXHRoZVxzdWJzZWNubyAlf25vLlx0aGUB Mjk5Niw5ODcyNQorU2VjdGlvblx4cmVmdGllJ2NoYXJcdGhlXGFwcGVuZGl4bm8uXHRoZVxzZWNu by5cdGhlXHN1YnNlY25vLlx0aGVcc3Vic3Vic2Vjbm8gJX9uby5cdGhlATI5OTgsOTg3OTYKK1xn ZGVmXHhyZWZ0aWV7f3hyZWZ0aWUBMzAwMSw5ODg5MQorICBcbGV0XGxpbmVudW1iZXIgPSBcZW1w dHkgJSBOb24tMy4wLn9saW5lbnVtYmVyATMwMDcsOTkwOTEKKyAgXGRlZlxsaW5lbnVtYmVye39s aW5lbnVtYmVyATMwMDksOTkxMzUKK1xkZWZccmVmeCMxIzJ7f3JlZngBMzAxNSw5OTMxOQorXGRl Zlx4cmRlZiAjMSMye394cmRlZgEzMDM3LDk5OTQ1Cit7XGNhdGNvZGVgXCc9XG90aGVyXGV4cGFu ZGFmdGVyIFxnZGVmIFxjc25hbWUgWCMxXGVuZGNzbmFtZSB7f2NzbmFtZQEzMDM4LDk5OTYyCitc ZGVmXHJlYWRhdXhmaWxle39yZWFkYXV4ZmlsZQEzMDQwLDEwMDAzMAorXGRlZlxzdXBlcmVqZWN0 e39zdXBlcmVqZWN0ATMxMTAsMTAxODExCitcbGV0XGZvb3Rub3Rlc3R5bGU9XGNvbW1lbnR/Zm9v dG5vdGVzdHlsZQEzMTEzLDEwMTkxOAorXGxldFxwdGV4Zm9vdG5vdGU9XGZvb3Rub3Rlf3B0ZXhm b290bm90ZQEzMTE1LDEwMTk0NworXGxvbmdcZ2RlZlxmb290bm90ZSAjMXt/Zm9vdG5vdGUBMzEx OCwxMDE5OTMKK1xlZGVmXHRoaXNmb290bm97f3RoaXNmb290bm8BMzEyMCwxMDIwNjAKK1xsZXRc QHNmXGVtcHR5f0BzZgEzMTIxLDEwMjEwMAorXGlmaG1vZGVcZWRlZlxAc2Z7f0BzZgEzMTIyLDEw MjExNQorXGxvbmdcZ2RlZlxmb290bm90ZXp6eiAjMXt/Zm9vdG5vdGV6enoBMzEyNiwxMDIyMjgK K1xmb290c3RydXRccGFyaW5kZW50PVxkZWZhdWx0cGFyaW5kZW50XGhhbmdcdGV4dGluZGVudHt/ YXVsdHBhcmluZGVudFxoYW5nATMxMzEsMTAyNDk2CitcZGVmXG9wZW5pbmRpY2Vze39vcGVuaW5k aWNlcwEzMTM5LDEwMjY4MgorXG5ld2RpbWVuXGRlZmF1bHRwYXJpbmRlbnQgXGRlZmF1bHRwYXJp bmRlbnQgPSAxNXB0f2F1bHRwYXJpbmRlbnQBMzE1MSwxMDI5MDcKIFxuZXdkaW1lblxkZWZhdWx0 cGFyaW5kZW50IFxkZWZhdWx0cGFyaW5kZW50ID0gMTVwdH9hdWx0cGFyaW5kZW50ATMxNTEsMTAy OTA3CiBccGFyaW5kZW50ID0gXGRlZmF1bHRwYXJpbmRlbnR/YXVsdHBhcmluZGVudAEzMTUyLDEw Mjk1OQotXGRlZlxzbWFsbGJvb2t7f1xzbWFsbGJvb2sBMzE3NSwxMDM2ODMKLVxnbG9iYWxcZGVm XEVzbWFsbGV4YW1wbGV7f1xFc21hbGxleGFtcGxlATMxOTIsMTA0MTEwCi1cZGVmXGFmb3VycGFw ZXJ7f1xhZm91cnBhcGVyATMxOTYsMTA0MjAxCi1cZGVmXGZpbmFsb3V0e39cZmluYWxvdXQBMzIy NCwxMDUwMDkKLVxkZWZcbm9ybWFsZG91YmxlcXVvdGV7f1xub3JtYWxkb3VibGVxdW90ZQEzMjM1 LDEwNTI3MAotXGRlZlxub3JtYWx0aWxkZXt/XG5vcm1hbHRpbGRlATMyMzYsMTA1Mjk2Ci1cZGVm XG5vcm1hbGNhcmV0e39cbm9ybWFsY2FyZXQBMzIzNywxMDUzMTYKLVxkZWZcbm9ybWFsdW5kZXJz Y29yZXt/XG5vcm1hbHVuZGVyc2NvcmUBMzIzOCwxMDUzMzYKLVxkZWZcbm9ybWFsdmVydGljYWxi YXJ7f1xub3JtYWx2ZXJ0aWNhbGJhcgEzMjM5LDEwNTM2MQotXGRlZlxub3JtYWxsZXNze39cbm9y bWFsbGVzcwEzMjQwLDEwNTM4NwotXGRlZlxub3JtYWxncmVhdGVye39cbm9ybWFsZ3JlYXRlcgEz MjQxLDEwNTQwNgotXGRlZlxub3JtYWxwbHVze39cbm9ybWFscGx1cwEzMjQyLDEwNTQyOAotXGRl ZlxpZnVzaW5ndHQjMSMye39caWZ1c2luZ3R0ATMyNTMsMTA1OTIwCi1cZGVmXGFjdGl2ZWRvdWJs ZXF1b3Rle39cYWN0aXZlZG91YmxlcXVvdGUBMzI2MSwxMDYyNDgKK1xkZWZcc21hbGxib29re39z bWFsbGJvb2sBMzE3NSwxMDM2ODMKK1xnbG9iYWxcbGV0XHNtYWxsbGlzcD1cc21hbGxsaXNweH9z bWFsbGxpc3ABMzE5MCwxMDQwMzkKK1xnbG9iYWxcbGV0XHNtYWxsZXhhbXBsZT1cc21hbGxsaXNw eH9zbWFsbGV4YW1wbGUBMzE5MSwxMDQwNzMKK1xnbG9iYWxcZGVmXEVzbWFsbGV4YW1wbGV7f0Vz bWFsbGV4YW1wbGUBMzE5MiwxMDQxMTAKK1xkZWZcYWZvdXJwYXBlcnt/YWZvdXJwYXBlcgEzMTk2 LDEwNDIwMQorXGRlZlxmaW5hbG91dHt/ZmluYWxvdXQBMzIyNCwxMDUwMDkKK1xkZWZcbm9ybWFs ZG91YmxlcXVvdGV7f25vcm1hbGRvdWJsZXF1b3RlATMyMzUsMTA1MjcwCitcZGVmXG5vcm1hbHRp bGRle39ub3JtYWx0aWxkZQEzMjM2LDEwNTI5NgorXGRlZlxub3JtYWxjYXJldHt/bm9ybWFsY2Fy ZXQBMzIzNywxMDUzMTYKK1xkZWZcbm9ybWFsdW5kZXJzY29yZXt/bm9ybWFsdW5kZXJzY29yZQEz MjM4LDEwNTMzNgorXGRlZlxub3JtYWx2ZXJ0aWNhbGJhcnt/bm9ybWFsdmVydGljYWxiYXIBMzIz OSwxMDUzNjEKK1xkZWZcbm9ybWFsbGVzc3t/bm9ybWFsbGVzcwEzMjQwLDEwNTM4NworXGRlZlxu b3JtYWxncmVhdGVye39ub3JtYWxncmVhdGVyATMyNDEsMTA1NDA2CitcZGVmXG5vcm1hbHBsdXN7 f25vcm1hbHBsdXMBMzI0MiwxMDU0MjgKK1xkZWZcaWZ1c2luZ3R0IzEjMnt/aWZ1c2luZ3R0ATMy NTMsMTA1OTIwCitcZGVmXGFjdGl2ZWRvdWJsZXF1b3Rle39hY3RpdmVkb3VibGVxdW90ZQEzMjYx LDEwNjI0OAorXGxldCI9XGFjdGl2ZWRvdWJsZXF1b3RlfyIBMzI2MiwxMDYyODkKIFxkZWZ+e39+ ATMyNjQsMTA2MzM0CiBcZGVmXnt/XgEzMjY3LDEwNjM5NQogXGRlZl97f18BMzI3MCwxMDY0MzQK LVxkZWZcX3t/XF8BMzI3MiwxMDY1MDgKLVxkZWZcbHZ2bW9kZXt/XGx2dm1vZGUBMzI3OSwxMDY4 NDUKK1xkZWZcX3t/XwEzMjcyLDEwNjUwOAorXGRlZlxsdnZtb2Rle39sdnZtb2RlATMyNzksMTA2 ODQ1CiBcZGVmfHt/fAEzMjgyLDEwNjg5NQogXGRlZjx7fzwBMzI4NSwxMDY5NTgKIFxkZWY+e38+ ATMyODgsMTA3MDE1CiBcZGVmK3t/KwEzMjkwLDEwNzA1MwotXGRlZlx0dXJub2ZmYWN0aXZle39c dHVybm9mZmFjdGl2ZQEzMjk2LDEwNzIxNAorXGRlZlx0dXJub2ZmYWN0aXZle390dXJub2ZmYWN0 aXZlATMyOTYsMTA3MjE0CitcZGVmXHR1cm5vZmZhY3RpdmV7XGxldCI9XG5vcm1hbGRvdWJsZXF1 b3RlfyIBMzI5NiwxMDcyMTQKK1xsZXR+PVxub3JtYWx0aWxkZX9+ATMyOTcsMTA3MjU4CitcbGV0 Xj1cbm9ybWFsY2FyZXR/XgEzMjk4LDEwNzI3NworXGxldF89XG5vcm1hbHVuZGVyc2NvcmV/XwEz Mjk5LDEwNzI5NgorXGxldHw9XG5vcm1hbHZlcnRpY2FsYmFyf3wBMzMwMCwxMDczMjAKK1xsZXQ8 PVxub3JtYWxsZXNzfzwBMzMwMSwxMDczNDUKK1xsZXQ+PVxub3JtYWxncmVhdGVyfz4BMzMwMiwx MDczNjMKK1xsZXQrPVxub3JtYWxwbHVzfX8rATMzMDMsMTA3Mzg0CiBcZ2xvYmFsXGRlZj17fz0B MzMwNywxMDc1MDAKLVxkZWZcbm9ybWFsYmFja3NsYXNoe39cbm9ybWFsYmFja3NsYXNoATMzMjEs MTA3ODgyCitcZGVmXG5vcm1hbGJhY2tzbGFzaHt/bm9ybWFsYmFja3NsYXNoATMzMjEsMTA3ODgy CiAMCiBtZXJjLXNyYy9hY2N1bXVsYXRvci5tLDMyMjgKIDotIGludGVyZmFjZX8xNDYsNTM3MQpk aWZmIC0tZ2l0IGEvdGVzdC9tYW51YWwvZXRhZ3MvRVRBR1MuZ29vZF80IGIvdGVzdC9tYW51YWwv ZXRhZ3MvRVRBR1MuZ29vZF80CmluZGV4IGRjNjVhMDlmZGMyLi5hZmRlOTI3MDJiYiAxMDA2NDQK LS0tIGEvdGVzdC9tYW51YWwvZXRhZ3MvRVRBR1MuZ29vZF80CisrKyBiL3Rlc3QvbWFudWFsL2V0 YWdzL0VUQUdTLmdvb2RfNApAQCAtMzMxMCw4ICszMzEwLDggQEAgc2NtLXNyYy90ZXN0LnNjbSwy NjAKIChkZWZpbmUgKCgoKChjdXJyeS10ZXN0IH8xNCwyMDUKIChkZWZpbmUtc3ludGF4IHRlc3Qt YmVnaW5/MTcsMjY1CiAMCi10ZXgtc3JjL3Rlc3RlbnYudGV4LDUyCi1cbmV3Y29tbWFuZHtcbm19 f1xubQE0LDc3Cit0ZXgtc3JjL3Rlc3RlbnYudGV4LDUxCitcbmV3Y29tbWFuZHtcbm19f25tATQs NzcKIFxzZWN0aW9ue2JsYWh9f2JsYWgBOCwxMzkKIAwKIHRleC1zcmMvZ3ppcC50ZXhpLDMwMwpA QCAtMzMyNiw3MjIgKzMzMjYsMTE0MiBAQCB0ZXgtc3JjL2d6aXAudGV4aSwzMDMKIEBub2RlIFBy b2JsZW1zLH80NjAsMTY3NjkKIEBub2RlIENvbmNlcHQgSW5kZXgsf0NvbmNlcHQgSW5kZXgBNDcz LDE3Mjg5CiAMCi10ZXgtc3JjL3RleGluZm8udGV4LDMwNjI3Ci1cZGVmXHRleGluZm92ZXJzaW9u e39cdGV4aW5mb3ZlcnNpb24BMjYsMTAzNQotXGRlZlx0aWV7f1x0aWUBNDksMTUyNgotXGRlZlxn bG9nZ2luZ2FsbHt/XGdsb2dnaW5nYWxsATcyLDIyNzYKLVxkZWZcbG9nZ2luZ2FsbHt/XGxvZ2dp bmdhbGwBNzMsMjM0NQotXGRlZlxvbmVwYWdlb3V0IzF7f1xvbmVwYWdlb3V0ATk5LDMyODIKLVxk ZWZcY3JvcHBhZ2VvdXQjMXt/XGNyb3BwYWdlb3V0ATExNSw0MDMyCi1cZGVmXGNyb3BtYXJrc3t/ XGNyb3BtYXJrcwExNDIsNTA5MgotXGRlZlxwYWdlYm9keSMxe39ccGFnZWJvZHkBMTQ0LDUxMzkK LVxkZWZcZXd0b3B7f1xld3RvcAExNTcsNTU5NAotXGRlZlxuc3RvcHt/XG5zdG9wATE1OCw1NjU4 Ci1cZGVmXGV3Ym90e39cZXdib3QBMTYwLDU3NDEKLVxkZWZcbnNib3R7f1xuc2JvdAExNjEsNTgw NQotXGRlZlxwYXJzZWFyZyAjMXt/XHBhcnNlYXJnATE3MCw2MTA0Ci1cZGVmXHBhcnNlYXJneHt/ XHBhcnNlYXJneAExNzIsNjE4MgotXGRlZlxwYXJzZWFyZ2xpbmV7f1xwYXJzZWFyZ2xpbmUBMTgy LDY0MjIKLVxkZWZcZmx1c2hjcnt/XGZsdXNoY3IBMTg2LDY1NDMKLVxuZXdpZlxpZkVOViBcRU5W ZmFsc2UgXGRlZlxpbkVOVnt/XGluRU5WATE5MCw2NzQyCi1cZGVmXEVOVmNoZWNre39cRU5WY2hl Y2sBMTkxLDY4MDYKLVxvdXRlclxkZWZcYmVnaW57f1xiZWdpbgExOTgsNzA1MwotXGRlZlxiZWdp bnh4eCAjMXt/XGJlZ2lueHh4ATIwMCw3MDkxCi1cZGVmXGVuZHt/XGVuZAEyMDgsNzM0NgotXGRl ZlxlbmR4eHggIzF7f1xlbmR4eHgBMjEwLDczNzQKLVxkZWZcZXJyb3JFIzF7f1xlcnJvckUBMjE2 LDc1NjMKLVxkZWZcc2luZ2xlc3BhY2V7f1xzaW5nbGVzcGFjZQEyMjIsNzc1NwotXGRlZlxAe39c QAEyMzIsNzk4MAotXGRlZlxge39cYAEyMzYsODA4MAotXGRlZlwne39cJwEyMzcsODA5MgotXGRl ZlxteWxicmFjZSB7f1xteWxicmFjZQEyNDEsODE0MAotXGRlZlxteXJicmFjZSB7f1xteXJicmFj ZQEyNDIsODE3MwotXGRlZlw6e39cOgEyNDcsODI4NwotXGRlZlwqe39cKgEyNTAsODM0MQotXGRl Zlwue39cLgEyNTMsODQxNwotXGRlZlx3IzF7f1x3ATI1OCw4NjQ4Ci1cZGVmXGdyb3Vwe39cZ3Jv dXABMjY4LDkxMzEKLSAgXGRlZlxFZ3JvdXB7f1xFZ3JvdXABMjczLDkyOTUKLVxkZWZcbmVlZHt/ XG5lZWQBMjg5LDk3MzcKLVxkZWZcbmVlZHgjMXt/XG5lZWR4ATMwMCwxMDAxNAotXGRlZlxkb3Rz e39cZG90cwEzMzksMTE0MDAKLVxkZWZccGFnZXt/XHBhZ2UBMzQzLDExNDY0Ci1cZGVmXGV4ZGVu dHt/XGV4ZGVudAEzNTMsMTE3OTEKLVxkZWZcZXhkZW50eXl5ICMxe39cZXhkZW50eXl5ATM1NCwx MTgyNAotXGRlZlxub2ZpbGxleGRlbnR7f1xub2ZpbGxleGRlbnQBMzU3LDExOTY4Ci1cZGVmXG5v ZmlsbGV4ZGVudHl5eSAjMXt/XG5vZmlsbGV4ZGVudHl5eQEzNTgsMTIwMTMKLVxkZWZcaW5jbHVk ZXt/XGluY2x1ZGUBMzY1LDEyMTk3Ci1cZGVmXGluY2x1ZGV6enogIzF7f1xpbmNsdWRlenp6ATM2 NiwxMjIzMgotXGRlZlx0aGlzZmlsZXt/XHRoaXNmaWxlATM2OSwxMjI4MwotXGRlZlxjZW50ZXJ7 f1xjZW50ZXIBMzczLDEyMzQ2Ci1cZGVmXGNlbnRlcnp6eiAjMXt/XGNlbnRlcnp6egEzNzQsMTIz NzkKLVxkZWZcc3B7f1xzcAEzODAsMTI1MjEKLVxkZWZcc3B4eHggIzF7f1xzcHh4eAEzODEsMTI1 NDYKLVxkZWZcY29tbWVudHt/XGNvbW1lbnQBMzg3LDEyNzIwCi1cZGVmXGNvbW1lbnR4eHggIzF7 f1xjb21tZW50eHh4ATM5MCwxMjgxNwotXGRlZlxpZ25vcmVzZWN0aW9uc3t/XGlnbm9yZXNlY3Rp b25zATM5NiwxMjk4NgotXGxldFxjaGFwdGVyPVxyZWxheH89XHJlbGF4ATM5NywxMzAwOAotXGxl dFxzZWN0aW9uPVxyZWxheH89XHJlbGF4ATQwNiwxMzI1MwotXGxldFxzdWJzZWN0aW9uPVxyZWxh eH89XHJlbGF4ATQwOSwxMzMxNAotXGxldFxzdWJzdWJzZWN0aW9uPVxyZWxheH89XHJlbGF4ATQx MCwxMzMzNwotXGxldFxhcHBlbmRpeD1ccmVsYXh/PVxyZWxheAE0MTEsMTMzNjMKLVxsZXRcYXBw ZW5kaXhzZWM9XHJlbGF4f3NlYz1ccmVsYXgBNDEyLDEzMzg0Ci1cbGV0XGFwcGVuZGl4c2VjdGlv bj1ccmVsYXh/c2VjdGlvbj1ccmVsYXgBNDEzLDEzNDA4Ci1cbGV0XGFwcGVuZGl4c3Vic2VjPVxy ZWxheH9zdWJzZWM9XHJlbGF4ATQxNCwxMzQzNgotXGxldFxhcHBlbmRpeHN1YnNlY3Rpb249XHJl bGF4f3N1YnNlY3Rpb249XHJlbGF4ATQxNSwxMzQ2MwotXGxldFxhcHBlbmRpeHN1YnN1YnNlYz1c cmVsYXh/c3Vic3Vic2VjPVxyZWxheAE0MTYsMTM0OTQKLVxsZXRcYXBwZW5kaXhzdWJzdWJzZWN0 aW9uPVxyZWxheH9zdWJzdWJzZWN0aW9uPVxyZWxheAE0MTcsMTM1MjQKLVxkZWZcaWdub3Jle39c aWdub3JlATQyMywxMzYyNgotXGxvbmdcZGVmXGlnbm9yZXh4eCAjMVxlbmQgaWdub3Jle39caWdu b3JleHh4ATQyNywxMzc2NgotXGRlZlxkaXJlbnRyeXt/XGRpcmVudHJ5ATQyOSwxMzgyNQotXGxv bmdcZGVmXGRpcmVudHJ5eHh4ICMxXGVuZCBkaXJlbnRyeXt/XGRpcmVudHJ5eHh4ATQzMCwxMzg2 NAotXGRlZlxpZnNldHt/XGlmc2V0ATQzNCwxMzk3NAotXGRlZlxpZnNldHh4eCAjMXt/XGlmc2V0 eHh4ATQzNiwxNDAzMgotXGRlZlxFaWZzZXR7f1xFaWZzZXQBNDQwLDE0MTU5Ci1cZGVmXGlmc2V0 ZmFpbHt/XGlmc2V0ZmFpbAE0NDEsMTQxNzMKLVxsb25nXGRlZlxpZnNldGZhaWx4eHggIzFcZW5k IGlmc2V0e39caWZzZXRmYWlseHh4ATQ0MiwxNDIyOQotXGRlZlxpZmNsZWFye39caWZjbGVhcgE0 NDQsMTQyOTAKLVxkZWZcaWZjbGVhcnh4eCAjMXt/XGlmY2xlYXJ4eHgBNDQ2LDE0MzUyCi1cZGVm XEVpZmNsZWFye39cRWlmY2xlYXIBNDUwLDE0NDgzCi1cZGVmXGlmY2xlYXJmYWlse39caWZjbGVh cmZhaWwBNDUxLDE0NDk5Ci1cbG9uZ1xkZWZcaWZjbGVhcmZhaWx4eHggIzFcZW5kIGlmY2xlYXJ7 f1xpZmNsZWFyZmFpbHh4eAE0NTIsMTQ1NTkKLVxkZWZcc2V0e39cc2V0ATQ1NiwxNDcxMAotXGRl ZlxzZXR4eHggIzF7f1xzZXR4eHgBNDU3LDE0NzM3Ci1cZGVmXGNsZWFye39cY2xlYXIBNDYwLDE0 Nzk5Ci1cZGVmXGNsZWFyeHh4ICMxe39cY2xlYXJ4eHgBNDYxLDE0ODMwCi1cZGVmXGlmdGV4e39c aWZ0ZXgBNDY2LDE0OTQ3Ci1cZGVmXEVpZnRleHt/XEVpZnRleAE0NjcsMTQ5NjAKLVxkZWZcaWZp bmZve39caWZpbmZvATQ2OCwxNDk3NAotXGxvbmdcZGVmXGlmaW5mb3h4eCAjMVxlbmQgaWZpbmZv e39caWZpbmZveHh4ATQ2OSwxNTAyNAotXGxvbmdcZGVmXG1lbnUgIzFcZW5kIG1lbnV7f1xtZW51 ATQ3MSwxNTA4MwotXGRlZlxhc2lzIzF7f1xhc2lzATQ3MiwxNTExMgotXGRlZlxtYXRoIzF7f1xt YXRoATQ4NSwxNTY1NQotXGRlZlxub2Rle39cbm9kZQE0ODcsMTU2OTkKLVxkZWZcbm9kZXp6eiMx e39cbm9kZXp6egE0ODgsMTU3MzcKLVxkZWZcbm9kZXh4eFsjMSwjMl17f1xub2RleHh4WwE0ODks MTU3NjgKLVxkZWZcZG9ub2RlcmVme39cZG9ub2RlcmVmATQ5MiwxNTgzMAotXGRlZlx1bm51bWJu b2RlcmVme39cdW5udW1ibm9kZXJlZgE0OTYsMTU5NTEKLVxkZWZcYXBwZW5kaXhub2RlcmVme39c YXBwZW5kaXhub2RlcmVmATUwMCwxNjA4MgordGV4LXNyYy90ZXhpbmZvLnRleCw1NTIzNgorXGRl Zlx0ZXhpbmZvdmVyc2lvbnt/dGV4aW5mb3ZlcnNpb24BMjYsMTAzNQorXGxldFxwdGV4bGJyYWNl PVx7f3B0ZXhsYnJhY2UBMzUsMTMwOAorXGxldFxwdGV4cmJyYWNlPVx9f3B0ZXhyYnJhY2UBMzYs MTMyNworXGxldFxwdGV4ZG90cz1cZG90c39wdGV4ZG90cwEzNywxMzQ2CitcbGV0XHB0ZXhkb3Q9 XC5/cHRleGRvdAEzOCwxMzY2CitcbGV0XHB0ZXhzdGFyPVwqf3B0ZXhzdGFyATM5LDEzODIKK1xs ZXRccHRleGVuZD1cZW5kf3B0ZXhlbmQBNDAsMTM5OQorXGxldFxwdGV4YnVsbGV0PVxidWxsZXR/ cHRleGJ1bGxldAE0MSwxNDE3CitcbGV0XHB0ZXhiPVxif3B0ZXhiATQyLDE0NDEKK1xsZXRccHRl eGM9XGN/cHRleGMBNDMsMTQ1NQorXGxldFxwdGV4aT1caX9wdGV4aQE0NCwxNDY5CitcbGV0XHB0 ZXh0PVx0f3B0ZXh0ATQ1LDE0ODMKK1xsZXRccHRleGw9XGx/cHRleGwBNDYsMTQ5NworXGxldFxw dGV4TD1cTH9wdGV4TAE0NywxNTExCitcZGVmXHRpZXt/dGllATQ5LDE1MjYKK1xkZWZcZ2xvZ2dp bmdhbGx7f2dsb2dnaW5nYWxsATcyLDIyNzYKK1xkZWZcbG9nZ2luZ2FsbHt/bG9nZ2luZ2FsbAE3 MywyMzQ1CitcZGVmXG9uZXBhZ2VvdXQjMXt/b25lcGFnZW91dAE5OSwzMjgyCitcc2hpcG91dFx2 Ym94e3tcbGV0XGhzaXplPVxwYWdld2lkdGggXG1ha2VoZWFkbGluZX1/aHNpemUBMTAzLDM0ODkK K3tcbGV0XGhzaXplPVxwYWdld2lkdGggXG1ha2Vmb290bGluZX1/aHNpemUBMTA0LDM1NTYKK1xk ZWZcY3JvcHBhZ2VvdXQjMXt/Y3JvcHBhZ2VvdXQBMTE1LDQwMzIKKwkJCXtcbGV0XGhzaXplPVxw YWdld2lkdGggXG1ha2VoZWFkbGluZX1/aHNpemUBMTI2LDQ1MTEKKwkJCXtcbGV0XGhzaXplPVxw YWdld2lkdGggXG1ha2Vmb290bGluZX1/aHNpemUBMTI4LDQ1NjkKK1xkZWZcY3JvcG1hcmtze39j cm9wbWFya3MBMTQyLDUwOTIKK1xkZWZcY3JvcG1hcmtze1xsZXRcb25lcGFnZW91dD1cY3JvcHBh Z2VvdXQgfX9vbmVwYWdlb3V0ATE0Miw1MDkyCitcZGVmXHBhZ2Vib2R5IzF7f3BhZ2Vib2R5ATE0 NCw1MTM5CitcZ2RlZlxwYWdlY29udGVudHMjMXt/cGFnZWNvbnRlbnRzATE0Niw1MjIwCitcZGVm XGV3dG9we39ld3RvcAExNTcsNTU5NAorXGRlZlxuc3RvcHt/bnN0b3ABMTU4LDU2NTgKK1xkZWZc ZXdib3R7f2V3Ym90ATE2MCw1NzQxCitcZGVmXG5zYm90e39uc2JvdAExNjEsNTgwNQorXGRlZlxw YXJzZWFyZyAjMXt/cGFyc2VhcmcBMTcwLDYxMDQKK1xkZWZccGFyc2VhcmcgIzF7XGxldFxuZXh0 PSMxXGJlZ2luZ3JvdXBcb2JleWxpbmVzXGZ1dHVyZWxldFx0ZW1wXHBhcnNlYXJneH1/bmV4dAEx NzAsNjEwNAorXGRlZlxwYXJzZWFyZ3h7f3BhcnNlYXJneAExNzIsNjE4MgorXGdkZWZccGFyc2Vh cmdkaXNjYXJkc3BhY2Uge39wYXJzZWFyZ2Rpc2NhcmRzcGFjZQExNzgsNjMyMQorXGdkZWZcb2Jl eWVkc3BhY2V7f29iZXllZHNwYWNlATE4MCw2Mzk5CitcZGVmXHBhcnNlYXJnbGluZXt/cGFyc2Vh cmdsaW5lATE4Miw2NDIyCitcZ2RlZlxwYXJzZWFyZ2xpbmV4ICMxXl5Ne39wYXJzZWFyZ2xpbmV4 ATE4NCw2NDkzCitcZGVmXGZsdXNoY3J7f2ZsdXNoY3IBMTg2LDY1NDMKK1xkZWZcZmx1c2hjcntc aWZ4XHBhclxsaXNwcGFyIFxkZWZcbmV4dCMjMXt/bmV4dAExODYsNjU0MworXGRlZlxmbHVzaGNy e1xpZnhccGFyXGxpc3BwYXIgXGRlZlxuZXh0IyMxe31cZWxzZSBcbGV0XG5leHQ9XHJlbGF4IFxm aSBcbmV4dH1/bmV4dAExODYsNjU0MworXG5ld2lmXGlmRU5WIFxFTlZmYWxzZSBcZGVmXGluRU5W e39pbkVOVgExOTAsNjc0MgorXGRlZlxFTlZjaGVja3t/RU5WY2hlY2sBMTkxLDY4MDYKK1xvdXRl clxkZWZcYmVnaW57f2JlZ2luATE5OCw3MDUzCitcZGVmXGJlZ2lueHh4ICMxe39iZWdpbnh4eAEy MDAsNzA5MQorXGRlZlxlbmR7f2VuZAEyMDgsNzM0NgorXGRlZlxlbmR4eHggIzF7f2VuZHh4eAEy MTAsNzM3NAorXGRlZlxlcnJvckUjMXt/ZXJyb3JFATIxNiw3NTYzCitcZGVmXHNpbmdsZXNwYWNl e39zaW5nbGVzcGFjZQEyMjIsNzc1NworXGRlZlxAe39AATIzMiw3OTgwCitcZGVmXGB7f2ABMjM2 LDgwODAKK1xkZWZcJ3t/JwEyMzcsODA5MgorXGRlZlxteWxicmFjZSB7f215bGJyYWNlATI0MSw4 MTQwCitcZGVmXG15cmJyYWNlIHt/bXlyYnJhY2UBMjQyLDgxNzMKK1xsZXRcez1cbXlsYnJhY2V/ ewEyNDMsODIwNgorXGxldFx9PVxteXJicmFjZX99ATI0NCw4MjIzCitcZGVmXDp7fzoBMjQ3LDgy ODcKK1xkZWZcKnt/KgEyNTAsODM0MQorXGRlZlwue38uATI1Myw4NDE3CitcZGVmXHcjMXt/dwEy NTgsODY0OAorXGRlZlxncm91cHt/Z3JvdXABMjY4LDkxMzEKKyAgXGRlZlxFZ3JvdXB7f0Vncm91 cAEyNzMsOTI5NQorXGRlZlxuZWVke39uZWVkATI4OSw5NzM3CitcZGVmXG5lZWR4IzF7f25lZWR4 ATMwMCwxMDAxNAorXGxldFxiciA9IFxwYXJ/YnIBMzM1LDExMzU1CitcZGVmXGRvdHN7f2RvdHMB MzM5LDExNDAwCitcZGVmXHBhZ2V7f3BhZ2UBMzQzLDExNDY0CitcZGVmXGV4ZGVudHt/ZXhkZW50 ATM1MywxMTc5MQorXGRlZlxleGRlbnR5eXkgIzF7f2V4ZGVudHl5eQEzNTQsMTE4MjQKK1xkZWZc bm9maWxsZXhkZW50e39ub2ZpbGxleGRlbnQBMzU3LDExOTY4CitcZGVmXG5vZmlsbGV4ZGVudHl5 eSAjMXt/bm9maWxsZXhkZW50eXl5ATM1OCwxMjAxMworXGRlZlxpbmNsdWRle39pbmNsdWRlATM2 NSwxMjE5NworXGRlZlxpbmNsdWRlenp6ICMxe39pbmNsdWRlenp6ATM2NiwxMjIzMgorXGRlZlxp bmNsdWRlenp6ICMxe3tcZGVmXHRoaXNmaWxle390aGlzZmlsZQEzNjYsMTIyMzIKK1xkZWZcdGhp c2ZpbGV7f3RoaXNmaWxlATM2OSwxMjI4MworXGRlZlxjZW50ZXJ7f2NlbnRlcgEzNzMsMTIzNDYK K1xkZWZcY2VudGVyenp6ICMxe39jZW50ZXJ6enoBMzc0LDEyMzc5CitcZGVmXHNwe39zcAEzODAs MTI1MjEKK1xkZWZcc3B4eHggIzF7f3NweHh4ATM4MSwxMjU0NgorXGRlZlxjb21tZW50e39jb21t ZW50ATM4NywxMjcyMAorXGRlZlxjb21tZW50eHh4ICMxe39jb21tZW50eHh4ATM5MCwxMjgxNwor XGxldFxjPVxjb21tZW50f2MBMzkyLDEyODgzCitcZGVmXGlnbm9yZXNlY3Rpb25ze39pZ25vcmVz ZWN0aW9ucwEzOTYsMTI5ODYKK1xsZXRcY2hhcHRlcj1ccmVsYXh/Y2hhcHRlcgEzOTcsMTMwMDgK K1xsZXRcdW5udW1iZXJlZD1ccmVsYXh/dW5udW1iZXJlZAEzOTgsMTMwMjgKK1xsZXRcdG9wPVxy ZWxheH90b3ABMzk5LDEzMDUxCitcbGV0XHVubnVtYmVyZWRzZWM9XHJlbGF4f3VubnVtYmVyZWRz ZWMBNDAwLDEzMDY3CitcbGV0XHVubnVtYmVyZWRzZWN0aW9uPVxyZWxheH91bm51bWJlcmVkc2Vj dGlvbgE0MDEsMTMwOTMKK1xsZXRcdW5udW1iZXJlZHN1YnNlYz1ccmVsYXh/dW5udW1iZXJlZHN1 YnNlYwE0MDIsMTMxMjMKK1xsZXRcdW5udW1iZXJlZHN1YnNlY3Rpb249XHJlbGF4f3VubnVtYmVy ZWRzdWJzZWN0aW9uATQwMywxMzE1MgorXGxldFx1bm51bWJlcmVkc3Vic3Vic2VjPVxyZWxheH91 bm51bWJlcmVkc3Vic3Vic2VjATQwNCwxMzE4NQorXGxldFx1bm51bWJlcmVkc3Vic3Vic2VjdGlv bj1ccmVsYXh/dW5udW1iZXJlZHN1YnN1YnNlY3Rpb24BNDA1LDEzMjE3CitcbGV0XHNlY3Rpb249 XHJlbGF4f3NlY3Rpb24BNDA2LDEzMjUzCitcbGV0XHN1YnNlYz1ccmVsYXh/c3Vic2VjATQwNywx MzI3MworXGxldFxzdWJzdWJzZWM9XHJlbGF4f3N1YnN1YnNlYwE0MDgsMTMyOTIKK1xsZXRcc3Vi c2VjdGlvbj1ccmVsYXh/c3Vic2VjdGlvbgE0MDksMTMzMTQKK1xsZXRcc3Vic3Vic2VjdGlvbj1c cmVsYXh/c3Vic3Vic2VjdGlvbgE0MTAsMTMzMzcKK1xsZXRcYXBwZW5kaXg9XHJlbGF4f2FwcGVu ZGl4ATQxMSwxMzM2MworXGxldFxhcHBlbmRpeHNlYz1ccmVsYXh/YXBwZW5kaXhzZWMBNDEyLDEz Mzg0CitcbGV0XGFwcGVuZGl4c2VjdGlvbj1ccmVsYXh/YXBwZW5kaXhzZWN0aW9uATQxMywxMzQw OAorXGxldFxhcHBlbmRpeHN1YnNlYz1ccmVsYXh/YXBwZW5kaXhzdWJzZWMBNDE0LDEzNDM2Citc bGV0XGFwcGVuZGl4c3Vic2VjdGlvbj1ccmVsYXh/YXBwZW5kaXhzdWJzZWN0aW9uATQxNSwxMzQ2 MworXGxldFxhcHBlbmRpeHN1YnN1YnNlYz1ccmVsYXh/YXBwZW5kaXhzdWJzdWJzZWMBNDE2LDEz NDk0CitcbGV0XGFwcGVuZGl4c3Vic3Vic2VjdGlvbj1ccmVsYXh/YXBwZW5kaXhzdWJzdWJzZWN0 aW9uATQxNywxMzUyNAorXGxldFxjb250ZW50cz1ccmVsYXh/Y29udGVudHMBNDE4LDEzNTU4Citc bGV0XHNtYWxsYm9vaz1ccmVsYXh/c21hbGxib29rATQxOSwxMzU3OQorXGxldFx0aXRsZXBhZ2U9 XHJlbGF4f3RpdGxlcGFnZQE0MjAsMTM2MDEKK1xkZWZcaWdub3Jle39pZ25vcmUBNDIzLDEzNjI2 CitcbG9uZ1xkZWZcaWdub3JleHh4ICMxXGVuZCBpZ25vcmV7f2lnbm9yZXh4eAE0MjcsMTM3NjYK K1xkZWZcZGlyZW50cnl7f2RpcmVudHJ5ATQyOSwxMzgyNQorXGxvbmdcZGVmXGRpcmVudHJ5eHh4 ICMxXGVuZCBkaXJlbnRyeXt/ZGlyZW50cnl4eHgBNDMwLDEzODY0CitcZGVmXGlmc2V0e39pZnNl dAE0MzQsMTM5NzQKK1xkZWZcaWZzZXR4eHggIzF7f2lmc2V0eHh4ATQzNiwxNDAzMgorXGV4cGFu ZGFmdGVyXGlmeFxjc25hbWUgSUYjMVxlbmRjc25hbWVccmVsYXggXGxldFx0ZW1wPVxpZnNldGZh aWx/dGVtcAE0MzcsMTQwNTkKK1xlbHNlIFxsZXRcdGVtcD1ccmVsYXggXGZpf3RlbXABNDM4LDE0 MTI1CitcZGVmXEVpZnNldHt/RWlmc2V0ATQ0MCwxNDE1OQorXGRlZlxpZnNldGZhaWx7f2lmc2V0 ZmFpbAE0NDEsMTQxNzMKK1xsb25nXGRlZlxpZnNldGZhaWx4eHggIzFcZW5kIGlmc2V0e39pZnNl dGZhaWx4eHgBNDQyLDE0MjI5CitcZGVmXGlmY2xlYXJ7f2lmY2xlYXIBNDQ0LDE0MjkwCitcZGVm XGlmY2xlYXJ4eHggIzF7f2lmY2xlYXJ4eHgBNDQ2LDE0MzUyCitcZXhwYW5kYWZ0ZXJcaWZ4XGNz bmFtZSBJRiMxXGVuZGNzbmFtZVxyZWxheCBcbGV0XHRlbXA9XHJlbGF4f3RlbXABNDQ3LDE0Mzgx CitcZWxzZSBcbGV0XHRlbXA9XGlmY2xlYXJmYWlsIFxmaX90ZW1wATQ0OCwxNDQ0MworXGRlZlxF aWZjbGVhcnt/RWlmY2xlYXIBNDUwLDE0NDgzCitcZGVmXGlmY2xlYXJmYWlse39pZmNsZWFyZmFp bAE0NTEsMTQ0OTkKK1xsb25nXGRlZlxpZmNsZWFyZmFpbHh4eCAjMVxlbmQgaWZjbGVhcnt/aWZj bGVhcmZhaWx4eHgBNDUyLDE0NTU5CitcZGVmXHNldHt/c2V0ATQ1NiwxNDcxMAorXGRlZlxzZXR4 eHggIzF7f3NldHh4eAE0NTcsMTQ3MzcKK1xleHBhbmRhZnRlclxsZXRcY3NuYW1lIElGIzFcZW5k Y3NuYW1lPVxzZXR9f2NzbmFtZQE0NTgsMTQ3NTMKK1xkZWZcY2xlYXJ7f2NsZWFyATQ2MCwxNDc5 OQorXGRlZlxjbGVhcnh4eCAjMXt/Y2xlYXJ4eHgBNDYxLDE0ODMwCitcZXhwYW5kYWZ0ZXJcbGV0 XGNzbmFtZSBJRiMxXGVuZGNzbmFtZT1ccmVsYXh9f2NzbmFtZQE0NjIsMTQ4NDgKK1xkZWZcaWZ0 ZXh7f2lmdGV4ATQ2NiwxNDk0NworXGRlZlxFaWZ0ZXh7f0VpZnRleAE0NjcsMTQ5NjAKK1xkZWZc aWZpbmZve39pZmluZm8BNDY4LDE0OTc0CitcbG9uZ1xkZWZcaWZpbmZveHh4ICMxXGVuZCBpZmlu Zm97f2lmaW5mb3h4eAE0NjksMTUwMjQKK1xsb25nXGRlZlxtZW51ICMxXGVuZCBtZW51e39tZW51 ATQ3MSwxNTA4MworXGRlZlxhc2lzIzF7f2FzaXMBNDcyLDE1MTEyCitcbGV0XGltcGxpY2l0bWF0 aCA9ICR/aW1wbGljaXRtYXRoATQ4NCwxNTYzMworXGRlZlxtYXRoIzF7f21hdGgBNDg1LDE1NjU1 CitcZGVmXG5vZGV7f25vZGUBNDg3LDE1Njk5CitcZGVmXG5vZGV6enojMXt/bm9kZXp6egE0ODgs MTU3MzcKK1xkZWZcbm9kZXh4eFsjMSwjMl17f25vZGV4eHgBNDg5LDE1NzY4CitcZGVmXG5vZGV4 eHhbIzEsIzJde1xnZGVmXGxhc3Rub2Rle39sYXN0bm9kZQE0ODksMTU3NjgKK1xsZXRcbGFzdG5v ZGU9XHJlbGF4f2xhc3Rub2RlATQ5MCwxNTgwOAorXGRlZlxkb25vZGVyZWZ7f2Rvbm9kZXJlZgE0 OTIsMTU4MzAKK1xsZXRcbGFzdG5vZGU9XHJlbGF4fX9sYXN0bm9kZQE0OTQsMTU5MjgKK1xkZWZc dW5udW1ibm9kZXJlZnt/dW5udW1ibm9kZXJlZgE0OTYsMTU5NTEKK1xsZXRcbGFzdG5vZGU9XHJl bGF4fX9sYXN0bm9kZQE0OTgsMTYwNTkKK1xkZWZcYXBwZW5kaXhub2RlcmVme39hcHBlbmRpeG5v ZGVyZWYBNTAwLDE2MDgyCiBcZXhwYW5kYWZ0ZXJcZXhwYW5kYWZ0ZXJcZXhwYW5kYWZ0ZXJcYXBw ZW5kaXhzZXRyZWZ7f3NldHJlZgE1MDEsMTYxMjgKLVxsZXRccmVmaWxsPVxyZWxheH9pbGw9XHJl bGF4ATUwNCwxNjIxNwotXGRlZlxzZXRmaWxlbmFtZXt/XHNldGZpbGVuYW1lATUwOSwxNjQzMQot XG91dGVyXGRlZlxieWV7f1xieWUBNTE4LDE2Njc3Ci1cZGVmXGluZm9yZWYgIzF7f1xpbmZvcmVm ATUyMCwxNjczMwotXGRlZlxpbmZvcmVmenp6ICMxLCMyLCMzLCM0Kip7f1xpbmZvcmVmenp6ATUy MSwxNjc3MQotXGRlZlxsb3Nlc3BhY2UgIzF7f1xsb3Nlc3BhY2UBNTIzLDE2ODY4Ci1cZGVmXHNm e39cc2YBNTMyLDE3MDcyCi1cZm9udFxkZWZiZj1jbWJ4MTAgc2NhbGVkIFxtYWdzdGVwMSAld2Fz IDEzMTR/YmY9Y21ieDEwATU1OCwxNzg2NwotXGZvbnRcZGVmdHQ9Y210dDEwIHNjYWxlZCBcbWFn c3RlcDF/dHQ9Y210dDEwATU1OSwxNzkxMwotXGRlZlxkZnt/XGRmATU2MCwxNzk0OQotXGRlZlxy ZXNldG1hdGhmb250c3t/XHJlc2V0bWF0aGZvbnRzATYzNSwyMDU0MwotXGRlZlx0ZXh0Zm9udHN7 f1x0ZXh0Zm9udHMBNjQ4LDIxMTMyCi1cZGVmXGNoYXBmb250c3t/XGNoYXBmb250cwE2NTMsMjEz NDcKLVxkZWZcc2VjZm9udHN7f1xzZWNmb250cwE2NTgsMjE1NjMKLVxkZWZcc3Vic2VjZm9udHN7 f1xzdWJzZWNmb250cwE2NjMsMjE3NjgKLVxkZWZcaW5kZXhmb250c3t/XGluZGV4Zm9udHMBNjY4 LDIxOTg1Ci1cZGVmXHNtYXJ0aXRhbGljeHt/XHNtYXJ0aXRhbGljeAE2OTEsMjI3MTcKLVxkZWZc c21hcnRpdGFsaWMjMXt/XHNtYXJ0aXRhbGljATY5MiwyMjc5MwotXGxldFxjaXRlPVxzbWFydGl0 YWxpY389XHNtYXJ0aXRhbGljATY5OCwyMjkzOAotXGRlZlxiIzF7f1xiATcwMCwyMjk2MgotXGRl Zlx0IzF7f1x0ATcwMywyMjk5NwotXGRlZlxzYW1wICMxe39cc2FtcAE3MDYsMjMxNDkKLVxkZWZc a2V5ICMxe39ca2V5ATcwNywyMzE4MgotXGRlZlxjdHJsICMxe39cY3RybAE3MDgsMjMyNDMKLVxk ZWZcdGNsb3NlIzF7f1x0Y2xvc2UBNzE2LDIzNDQ1Ci1cZGVmXCB7f1wBNzIwLDIzNjExCi1cZGVm XHhrZXl7f1x4a2V5ATcyOCwyMzg4MAotXGRlZlxrYmRmb28jMSMyIzNccGFye39ca2JkZm9vATcy OSwyMzg5NgotXGRlZlxkbW4jMXt/XGRtbgE3MzgsMjQxOTcKLVxkZWZca2JkIzF7f1xrYmQBNzQw LDI0MjI0Ci1cZGVmXGwjMXt/XGwBNzQyLDI0MjgxCi1cZGVmXHIjMXt/XHIBNzQ0LDI0MzEwCi1c ZGVmXHNjIzF7f1xzYwE3NDYsMjQzNzgKLVxkZWZcaWkjMXt/XGlpATc0NywyNDQyMQotXGRlZlx0 aXRsZWZvbnQjMXt/XHRpdGxlZm9udAE3NTUsMjQ2NTQKLVxkZWZcdGl0bGVwYWdle39cdGl0bGVw YWdlATc2MSwyNDc1NwotICAgXGRlZlxzdWJ0aXRsZWZvbnR7f1xzdWJ0aXRsZWZvbnQBNzY2LDI0 OTg0Ci0gICBcZGVmXGF1dGhvcmZvbnR7f1xhdXRob3Jmb250ATc2OCwyNTA2OAotICAgXGRlZlx0 aXRsZXt/XHRpdGxlATc3NCwyNTI3OAotICAgXGRlZlx0aXRsZXp6eiMjMXt/XHRpdGxlenp6ATc3 NSwyNTMxMwotICAgXGRlZlxzdWJ0aXRsZXt/XHN1YnRpdGxlATc4MywyNTYyOAotICAgXGRlZlxz dWJ0aXRsZXp6eiMjMXt/XHN1YnRpdGxlenp6ATc4NCwyNTY2OQotICAgXGRlZlxhdXRob3J7f1xh dXRob3IBNzg3LDI1Nzg3Ci0gICBcZGVmXGF1dGhvcnp6eiMjMXt/XGF1dGhvcnp6egE3ODgsMjU4 MjQKLSAgIFxkZWZccGFnZXt/XHBhZ2UBNzk0LDI2MTE1Ci1cZGVmXEV0aXRsZXBhZ2V7f1xFdGl0 bGVwYWdlATgwNCwyNjI4NAotXGRlZlxmaW5pc2h0aXRsZXBhZ2V7f1xmaW5pc2h0aXRsZXBhZ2UB ODE3LDI2NjcyCi1cZGVmXGV2ZW5oZWFkaW5ne39cZXZlbmhlYWRpbmcBODQ2LDI3NjgwCi1cZGVm XG9kZGhlYWRpbmd7f1xvZGRoZWFkaW5nATg0NywyNzcyMwotXGRlZlxldmVyeWhlYWRpbmd7f1xl dmVyeWhlYWRpbmcBODQ4LDI3NzY0Ci1cZGVmXGV2ZW5mb290aW5ne39cZXZlbmZvb3RpbmcBODUw LDI3ODEwCi1cZGVmXG9kZGZvb3Rpbmd7f1xvZGRmb290aW5nATg1MSwyNzg1MwotXGRlZlxldmVy eWZvb3Rpbmd7f1xldmVyeWZvb3RpbmcBODUyLDI3ODk0Ci1cZGVmXGhlYWRpbmdzICMxIHt/XGhl YWRpbmdzATg5MywyOTU4NgotXGRlZlxIRUFESU5HU29mZnt/XEhFQURJTkdTb2ZmATg5NSwyOTYz NQotXGRlZlxIRUFESU5HU2RvdWJsZXt/XEhFQURJTkdTZG91YmxlATkwNCwzMDA2MgotXGRlZlxI RUFESU5HU3NpbmdsZXt/XEhFQURJTkdTc2luZ2xlATkxNCwzMDM4MgotXGRlZlxIRUFESU5HU29u e39cSEVBRElOR1NvbgE5MjIsMzA2MDMKLVxkZWZcSEVBRElOR1NhZnRlcnt/XEhFQURJTkdTYWZ0 ZXIBOTI0LDMwNjM3Ci1cZGVmXEhFQURJTkdTZG91YmxleHt/XEhFQURJTkdTZG91YmxleAE5MjYs MzA3MzIKLVxkZWZcSEVBRElOR1NzaW5nbGVhZnRlcnt/XEhFQURJTkdTc2luZ2xlYWZ0ZXIBOTMz LDMwOTIwCi1cZGVmXEhFQURJTkdTc2luZ2xleHt/XEhFQURJTkdTc2luZ2xleAE5MzQsMzA5ODEK LVxkZWZcdG9kYXl7f1x0b2RheQE5NDMsMzEyNTYKLVxkZWZcdGhpc3RpdGxle39cdGhpc3RpdGxl ATk1OCwzMTgwMQotXGRlZlxzZXR0aXRsZXt/XHNldHRpdGxlATk1OSwzMTgyNgotXGRlZlxzZXR0 aXRsZXp6eiAjMXt/XHNldHRpdGxlenp6ATk2MCwzMTg2MwotXGRlZlxpbnRlcm5hbEJpdGVte39c aW50ZXJuYWxCaXRlbQE5OTIsMzI3OTMKLVxkZWZcaW50ZXJuYWxCaXRlbXh7f1xpbnRlcm5hbEJp dGVteAE5OTMsMzI4NDMKLVxkZWZcaW50ZXJuYWxCeGl0ZW0gIiMxInt/XGludGVybmFsQnhpdGVt ATk5NSwzMjg4OAotXGRlZlxpbnRlcm5hbEJ4aXRlbXggIiMxInt/XGludGVybmFsQnhpdGVteAE5 OTYsMzI5NjgKLVxkZWZcaW50ZXJuYWxCa2l0ZW17f1xpbnRlcm5hbEJraXRlbQE5OTgsMzMwNDMK LVxkZWZcaW50ZXJuYWxCa2l0ZW14e39caW50ZXJuYWxCa2l0ZW14ATk5OSwzMzA5NQotXGRlZlxr aXRlbXp6eiAjMXt/XGtpdGVtenp6ATEwMDEsMzMxNDIKLVxkZWZceGl0ZW16enogIzF7f1x4aXRl bXp6egExMDA0LDMzMjQ0Ci1cZGVmXGl0ZW16enogIzF7f1xpdGVtenp6ATEwMDcsMzMzNDcKLVxk ZWZcaXRlbXt/XGl0ZW0BMTAzNywzNDQxOAotXGRlZlxpdGVteHt/XGl0ZW14ATEwMzgsMzQ0NjkK LVxkZWZca2l0ZW17f1xraXRlbQExMDM5LDM0NTIyCi1cZGVmXGtpdGVteHt/XGtpdGVteAExMDQw LDM0NTc1Ci1cZGVmXHhpdGVte39ceGl0ZW0BMTA0MSwzNDYzMAotXGRlZlx4aXRlbXh7f1x4aXRl bXgBMTA0MiwzNDY4MwotXGRlZlxkZXNjcmlwdGlvbnt/XGRlc2NyaXB0aW9uATEwNDUsMzQ3OTMK LVxkZWZcdGFibGV7f1x0YWJsZQExMDQ3LDM0ODQzCi1cZGVmXGZ0YWJsZXt/XGZ0YWJsZQExMDUy LDM0OTg3Ci1cZGVmXEVmdGFibGV7f1xFZnRhYmxlATEwNTYsMzUxMzMKLVxkZWZcdnRhYmxle39c dnRhYmxlATEwNTksMzUyMDIKLVxkZWZcRXZ0YWJsZXt/XEV2dGFibGUBMTA2MywzNTM0OAotXGRl Zlxkb250aW5kZXggIzF7f1xkb250aW5kZXgBMTA2NiwzNTQxNwotXGRlZlxmbml0ZW1pbmRleCAj MXt/XGZuaXRlbWluZGV4ATEwNjcsMzU0MzcKLVxkZWZcdnJpdGVtaW5kZXggIzF7f1x2cml0ZW1p bmRleAExMDY4LDM1NDgyCi1cZGVmXHRhYmxleiAjMSMyIzMjNCM1IzZ7f1x0YWJsZXoBMTA3NCwz NTYzMQotXGRlZlxFZGVzY3JpcHRpb257f1xFZGVzY3JpcHRpb24BMTA3NywzNTY4OQotXGRlZlxp dGVtZm9udHt/XGl0ZW1mb250ATEwODIsMzU4OTAKLVxkZWZcRXRhYmxle39cRXRhYmxlATEwOTAs MzYxMTYKLVxkZWZcaXRlbWl6ZXt/XGl0ZW1pemUBMTEwMywzNjQ0MAotXGRlZlxpdGVtaXplenp6 ICMxe39caXRlbWl6ZXp6egExMTA1LDM2NDc2Ci1cZGVmXGl0ZW1pemV5ICMxIzJ7f1xpdGVtaXpl eQExMTEwLDM2NTcxCi1cZGVmIzJ7fzExMTksMzY4MTcKLVxkZWZcaXRlbWNvbnRlbnRze39caXRl bWNvbnRlbnRzATExMjAsMzY4NTgKLVxkZWZcYnVsbGV0e39cYnVsbGV0ATExMjMsMzY5MDYKLVxk ZWZcbWludXN7f1xtaW51cwExMTI0LDM2OTMzCi1cZGVmXGZyZW5jaHNwYWNpbmd7f1xmcmVuY2hz cGFjaW5nATExMjgsMzcwNDEKLVxkZWZcc3BsaXRvZmYjMSMyXGVuZG1hcmt7f1xzcGxpdG9mZgEx MTM0LDM3MjY2Ci1cZGVmXGVudW1lcmF0ZXt/XGVudW1lcmF0ZQExMTQwLDM3NDk2Ci1cZGVmXGVu dW1lcmF0ZXp6eiAjMXt/XGVudW1lcmF0ZXp6egExMTQxLDM3NTM1Ci1cZGVmXGVudW1lcmF0ZXkg IzEgIzJcZW5kZW51bWVyYXRleXt/XGVudW1lcmF0ZXkBMTE0MiwzNzU4OAotICBcZGVmXHRoZWFy Z3t/XHRoZWFyZwExMTQ2LDM3NzM1Ci0gIFxpZnhcdGhlYXJnXGVtcHR5IFxkZWZcdGhlYXJne39c dGhlYXJnATExNDcsMzc3NTQKLVxkZWZcbnVtZXJpY2VudW1lcmF0ZXt/XG51bWVyaWNlbnVtZXJh dGUBMTE4NCwzOTA4OAotXGRlZlxsb3dlcmNhc2VlbnVtZXJhdGV7f1xsb3dlcmNhc2VlbnVtZXJh dGUBMTE5MCwzOTIxOAotXGRlZlx1cHBlcmNhc2VlbnVtZXJhdGV7f1x1cHBlcmNhc2VlbnVtZXJh dGUBMTIwMywzOTU2NQotXGRlZlxzdGFydGVudW1lcmF0aW9uIzF7f1xzdGFydGVudW1lcmF0aW9u ATEyMTksNDAwNTUKLVxkZWZcYWxwaGFlbnVtZXJhdGV7f1xhbHBoYWVudW1lcmF0ZQExMjI3LDQw MjM3Ci1cZGVmXGNhcHNlbnVtZXJhdGV7f1xjYXBzZW51bWVyYXRlATEyMjgsNDAyNzIKLVxkZWZc RWFscGhhZW51bWVyYXRle39cRWFscGhhZW51bWVyYXRlATEyMjksNDAzMDYKLVxkZWZcRWNhcHNl bnVtZXJhdGV7f1xFY2Fwc2VudW1lcmF0ZQExMjMwLDQwMzQwCi1cZGVmXGl0ZW1pemVpdGVte39c aXRlbWl6ZWl0ZW0BMTIzNCw0MDQyMAotXGRlZlxuZXdpbmRleCAjMXt/XG5ld2luZGV4ATEyNTks NDEyNzcKLVxkZWZcZGVmaW5kZXh7f1xkZWZpbmRleAExMjY4LDQxNTY2Ci1cZGVmXG5ld2NvZGVp bmRleCAjMXt/XG5ld2NvZGVpbmRleAExMjcyLDQxNjc0Ci1cZGVmXGRlZmNvZGVpbmRleHt/XGRl ZmNvZGVpbmRleAExMjc5LDQxOTM0Ci1cZGVmXHN5bmluZGV4ICMxICMyIHt/XHN5bmluZGV4ATEy ODMsNDIxMTQKLVxkZWZcc3luY29kZWluZGV4ICMxICMyIHt/XHN5bmNvZGVpbmRleAExMjkyLDQy NDU0Ci1cZGVmXGRvaW5kZXgjMXt/XGRvaW5kZXgBMTMwOSw0MzEzMwotXGRlZlxzaW5nbGVpbmRl eGVyICMxe39cc2luZ2xlaW5kZXhlcgExMzEwLDQzMTkyCi1cZGVmXGRvY29kZWluZGV4IzF7f1xk b2NvZGVpbmRleAExMzEzLDQzMzA0Ci1cZGVmXHNpbmdsZWNvZGVpbmRleGVyICMxe39cc2luZ2xl Y29kZWluZGV4ZXIBMTMxNCw0MzM3MQotXGRlZlxpbmRleGR1bW1pZXN7f1xpbmRleGR1bW1pZXMB MTMxNiw0MzQyOQotXGRlZlxfe39cXwExMzE3LDQzNDQ5Ci1cZGVmXHd7f1x3ATEzMTgsNDM0NzcK LVxkZWZcYmZ7f1xiZgExMzE5LDQzNTA0Ci1cZGVmXHJte39ccm0BMTMyMCw0MzUzMwotXGRlZlxz bHt/XHNsATEzMjEsNDM1NjIKLVxkZWZcc2Z7f1xzZgExMzIyLDQzNTkxCi1cZGVmXHR0e39cdHQB MTMyMyw0MzYxOQotXGRlZlxndHJ7f1xndHIBMTMyNCw0MzY0NwotXGRlZlxsZXNze39cbGVzcwEx MzI1LDQzNjc3Ci1cZGVmXGhhdHt/XGhhdAExMzI2LDQzNzA5Ci1cZGVmXGNoYXJ7f1xjaGFyATEz MjcsNDM3MzkKLVxkZWZcVGVYe39cVGVYATEzMjgsNDM3NzEKLVxkZWZcZG90c3t/XGRvdHMBMTMy OSw0MzgwMQotXGRlZlxjb3B5cmlnaHR7f1xjb3B5cmlnaHQBMTMzMCw0MzgzNAotXGRlZlx0Y2xv c2UjIzF7f1x0Y2xvc2UBMTMzMSw0Mzg3NwotXGRlZlxjb2RlIyMxe39cY29kZQExMzMyLDQzOTIy Ci1cZGVmXHNhbXAjIzF7f1xzYW1wATEzMzMsNDM5NjMKLVxkZWZcdCMjMXt/XHQBMTMzNCw0NDAw NAotXGRlZlxyIyMxe39ccgExMzM1LDQ0MDM5Ci1cZGVmXGkjIzF7f1xpATEzMzYsNDQwNzQKLVxk ZWZcYiMjMXt/XGIBMTMzNyw0NDEwOQotXGRlZlxjaXRlIyMxe39cY2l0ZQExMzM4LDQ0MTQ0Ci1c ZGVmXGtleSMjMXt/XGtleQExMzM5LDQ0MTg1Ci1cZGVmXGZpbGUjIzF7f1xmaWxlATEzNDAsNDQy MjQKLVxkZWZcdmFyIyMxe39cdmFyATEzNDEsNDQyNjUKLVxkZWZca2JkIyMxe39ca2JkATEzNDIs NDQzMDQKLVxkZWZcaW5kZXhkdW1teWZvbnQjMXt/XGluZGV4ZHVtbXlmb250ATEzNDcsNDQ0NjAK LVxkZWZcaW5kZXhkdW1teXRleHt/XGluZGV4ZHVtbXl0ZXgBMTM0OCw0NDQ4NgotXGRlZlxpbmRl eGR1bW15ZG90c3t/XGluZGV4ZHVtbXlkb3RzATEzNDksNDQ1MTAKLVxkZWZcaW5kZXhub2ZvbnRz e39caW5kZXhub2ZvbnRzATEzNTEsNDQ1MzYKK1xsZXRcbGFzdG5vZGU9XHJlbGF4fX9sYXN0bm9k ZQE1MDIsMTYxOTQKK1xsZXRccmVmaWxsPVxyZWxheH9yZWZpbGwBNTA0LDE2MjE3CitcZGVmXHNl dGZpbGVuYW1le39zZXRmaWxlbmFtZQE1MDksMTY0MzEKKyAgIFxnbG9iYWxcbGV0XHNldGZpbGVu YW1lPVxjb21tZW50ICUgSWdub3JlIGV4dHJhIEBzZXRmaWxlbmFtZSBjbWRzLn9zZXRmaWxlbmFt ZQE1MTQsMTY1NjIKK1xvdXRlclxkZWZcYnlle39ieWUBNTE4LDE2Njc3CitcZGVmXGluZm9yZWYg IzF7f2luZm9yZWYBNTIwLDE2NzMzCitcZGVmXGluZm9yZWZ6enogIzEsIzIsIzMsIzQqKnt/aW5m b3JlZnp6egE1MjEsMTY3NzEKK1xkZWZcbG9zZXNwYWNlICMxe39sb3Nlc3BhY2UBNTIzLDE2ODY4 CitcZGVmXHNme39zZgE1MzIsMTcwNzIKK1xsZXRcbGkgPSBcc2YgJSBTb21ldGltZXMgd2UgY2Fs bCBpdCBcbGksIG5vdCBcc2Yuf2xpATUzMywxNzEwMAorXGxldFxtYWlubWFnc3RlcD1cbWFnc3Rl cGhhbGZ/bWFpbm1hZ3N0ZXABNTM2LDE3MjAxCitcbGV0XG1haW5tYWdzdGVwPVxtYWdzdGVwMX9t YWlubWFnc3RlcAE1MzksMTcyNTAKK1xmb250XGRlZmJmPWNtYngxMCBzY2FsZWQgXG1hZ3N0ZXAx ICV3YXMgMTMxNH9iZgE1NTgsMTc4NjcKK1xmb250XGRlZnR0PWNtdHQxMCBzY2FsZWQgXG1hZ3N0 ZXAxf3R0ATU1OSwxNzkxMworXGRlZlxkZnt/ZGYBNTYwLDE3OTQ5CitcZGVmXGRme1xsZXRcdGVu dHQ9XGRlZnR0IFxsZXRcdGVuYmYgPSBcZGVmYmYgXGJmfX90ZW50dAE1NjAsMTc5NDkKK1xkZWZc ZGZ7XGxldFx0ZW50dD1cZGVmdHQgXGxldFx0ZW5iZiA9IFxkZWZiZiBcYmZ9f3R0ATU2MCwxNzk0 OQorXGRlZlxkZntcbGV0XHRlbnR0PVxkZWZ0dCBcbGV0XHRlbmJmID0gXGRlZmJmIFxiZn1/dGVu YmYBNTYwLDE3OTQ5CitcZGVmXGRme1xsZXRcdGVudHQ9XGRlZnR0IFxsZXRcdGVuYmYgPSBcZGVm YmYgXGJmfX9iZgE1NjAsMTc5NDkKK1xsZXRcaW5kc2w9XGluZGl0f2luZHNsATU3MCwxODMxMAor XGxldFxpbmR0dD1cbmluZXR0f2luZHR0ATU3MSwxODMyOAorXGxldFxpbmRzZj1caW5kcm1/aW5k c2YBNTcyLDE4MzQ3CitcbGV0XGluZGJmPVxpbmRybX9pbmRiZgE1NzMsMTgzNjUKK1xsZXRcaW5k c2M9XGluZHJtf2luZHNjATU3NCwxODM4MworXGxldFxjaGFwYmY9XGNoYXBybX9jaGFwYmYBNTg0 LDE4NjQzCitcbGV0XGF1dGhvcnJtID0gXHNlY3Jtf2F1dGhvcnJtATYyNywyMDE5MworXGRlZlxy ZXNldG1hdGhmb250c3t/cmVzZXRtYXRoZm9udHMBNjM1LDIwNTQzCitcZGVmXHRleHRmb250c3t/ dGV4dGZvbnRzATY0OCwyMTEzMgorICBcbGV0XHRlbnJtPVx0ZXh0cm0gXGxldFx0ZW5pdD1cdGV4 dGl0IFxsZXRcdGVuc2w9XHRleHRzbH90ZW5ybQE2NDksMjExNDkKKyAgXGxldFx0ZW5ybT1cdGV4 dHJtIFxsZXRcdGVuaXQ9XHRleHRpdCBcbGV0XHRlbnNsPVx0ZXh0c2x/dGVuaXQBNjQ5LDIxMTQ5 CisgIFxsZXRcdGVucm09XHRleHRybSBcbGV0XHRlbml0PVx0ZXh0aXQgXGxldFx0ZW5zbD1cdGV4 dHNsf3RlbnNsATY0OSwyMTE0OQorICBcbGV0XHRlbmJmPVx0ZXh0YmYgXGxldFx0ZW50dD1cdGV4 dHR0IFxsZXRcc21hbGxjYXBzPVx0ZXh0c2N/dGVuYmYBNjUwLDIxMjA4CisgIFxsZXRcdGVuYmY9 XHRleHRiZiBcbGV0XHRlbnR0PVx0ZXh0dHQgXGxldFxzbWFsbGNhcHM9XHRleHRzY390ZW50dAE2 NTAsMjEyMDgKKyAgXGxldFx0ZW5iZj1cdGV4dGJmIFxsZXRcdGVudHQ9XHRleHR0dCBcbGV0XHNt YWxsY2Fwcz1cdGV4dHNjf3NtYWxsY2FwcwE2NTAsMjEyMDgKKyAgXGxldFx0ZW5zZj1cdGV4dHNm IFxsZXRcdGVuaT1cdGV4dGkgXGxldFx0ZW5zeT1cdGV4dHN5f3RlbnNmATY1MSwyMTI3MQorICBc bGV0XHRlbnNmPVx0ZXh0c2YgXGxldFx0ZW5pPVx0ZXh0aSBcbGV0XHRlbnN5PVx0ZXh0c3l/dGVu aQE2NTEsMjEyNzEKKyAgXGxldFx0ZW5zZj1cdGV4dHNmIFxsZXRcdGVuaT1cdGV4dGkgXGxldFx0 ZW5zeT1cdGV4dHN5f3RlbnN5ATY1MSwyMTI3MQorXGRlZlxjaGFwZm9udHN7f2NoYXBmb250cwE2 NTMsMjEzNDcKKyAgXGxldFx0ZW5ybT1cY2hhcHJtIFxsZXRcdGVuaXQ9XGNoYXBpdCBcbGV0XHRl bnNsPVxjaGFwc2wgf3RlbnJtATY1NCwyMTM2NAorICBcbGV0XHRlbnJtPVxjaGFwcm0gXGxldFx0 ZW5pdD1cY2hhcGl0IFxsZXRcdGVuc2w9XGNoYXBzbCB/dGVuaXQBNjU0LDIxMzY0CisgIFxsZXRc dGVucm09XGNoYXBybSBcbGV0XHRlbml0PVxjaGFwaXQgXGxldFx0ZW5zbD1cY2hhcHNsIH90ZW5z bAE2NTQsMjEzNjQKKyAgXGxldFx0ZW5iZj1cY2hhcGJmIFxsZXRcdGVudHQ9XGNoYXB0dCBcbGV0 XHNtYWxsY2Fwcz1cY2hhcHNjf3RlbmJmATY1NSwyMTQyNAorICBcbGV0XHRlbmJmPVxjaGFwYmYg XGxldFx0ZW50dD1cY2hhcHR0IFxsZXRcc21hbGxjYXBzPVxjaGFwc2N/dGVudHQBNjU1LDIxNDI0 CisgIFxsZXRcdGVuYmY9XGNoYXBiZiBcbGV0XHRlbnR0PVxjaGFwdHQgXGxldFxzbWFsbGNhcHM9 XGNoYXBzY39zbWFsbGNhcHMBNjU1LDIxNDI0CisgIFxsZXRcdGVuc2Y9XGNoYXBzZiBcbGV0XHRl bmk9XGNoYXBpIFxsZXRcdGVuc3k9XGNoYXBzeX90ZW5zZgE2NTYsMjE0ODcKKyAgXGxldFx0ZW5z Zj1cY2hhcHNmIFxsZXRcdGVuaT1cY2hhcGkgXGxldFx0ZW5zeT1cY2hhcHN5f3RlbmkBNjU2LDIx NDg3CisgIFxsZXRcdGVuc2Y9XGNoYXBzZiBcbGV0XHRlbmk9XGNoYXBpIFxsZXRcdGVuc3k9XGNo YXBzeX90ZW5zeQE2NTYsMjE0ODcKK1xkZWZcc2VjZm9udHN7f3NlY2ZvbnRzATY1OCwyMTU2Mwor ICBcbGV0XHRlbnJtPVxzZWNybSBcbGV0XHRlbml0PVxzZWNpdCBcbGV0XHRlbnNsPVxzZWNzbH90 ZW5ybQE2NTksMjE1NzkKKyAgXGxldFx0ZW5ybT1cc2Vjcm0gXGxldFx0ZW5pdD1cc2VjaXQgXGxl dFx0ZW5zbD1cc2Vjc2x/dGVuaXQBNjU5LDIxNTc5CisgIFxsZXRcdGVucm09XHNlY3JtIFxsZXRc dGVuaXQ9XHNlY2l0IFxsZXRcdGVuc2w9XHNlY3Nsf3RlbnNsATY1OSwyMTU3OQorICBcbGV0XHRl bmJmPVxzZWNiZiBcbGV0XHRlbnR0PVxzZWN0dCBcbGV0XHNtYWxsY2Fwcz1cc2Vjc2N/dGVuYmYB NjYwLDIxNjM1CisgIFxsZXRcdGVuYmY9XHNlY2JmIFxsZXRcdGVudHQ9XHNlY3R0IFxsZXRcc21h bGxjYXBzPVxzZWNzY390ZW50dAE2NjAsMjE2MzUKKyAgXGxldFx0ZW5iZj1cc2VjYmYgXGxldFx0 ZW50dD1cc2VjdHQgXGxldFxzbWFsbGNhcHM9XHNlY3Njf3NtYWxsY2FwcwE2NjAsMjE2MzUKKyAg XGxldFx0ZW5zZj1cc2Vjc2YgXGxldFx0ZW5pPVxzZWNpIFxsZXRcdGVuc3k9XHNlY3N5f3RlbnNm ATY2MSwyMTY5NQorICBcbGV0XHRlbnNmPVxzZWNzZiBcbGV0XHRlbmk9XHNlY2kgXGxldFx0ZW5z eT1cc2Vjc3l/dGVuaQE2NjEsMjE2OTUKKyAgXGxldFx0ZW5zZj1cc2Vjc2YgXGxldFx0ZW5pPVxz ZWNpIFxsZXRcdGVuc3k9XHNlY3N5f3RlbnN5ATY2MSwyMTY5NQorXGRlZlxzdWJzZWNmb250c3t/ c3Vic2VjZm9udHMBNjYzLDIxNzY4CisgIFxsZXRcdGVucm09XHNzZWNybSBcbGV0XHRlbml0PVxz c2VjaXQgXGxldFx0ZW5zbD1cc3NlY3Nsf3RlbnJtATY2NCwyMTc4NworICBcbGV0XHRlbnJtPVxz c2Vjcm0gXGxldFx0ZW5pdD1cc3NlY2l0IFxsZXRcdGVuc2w9XHNzZWNzbH90ZW5pdAE2NjQsMjE3 ODcKKyAgXGxldFx0ZW5ybT1cc3NlY3JtIFxsZXRcdGVuaXQ9XHNzZWNpdCBcbGV0XHRlbnNsPVxz c2Vjc2x/dGVuc2wBNjY0LDIxNzg3CisgIFxsZXRcdGVuYmY9XHNzZWNiZiBcbGV0XHRlbnR0PVxz c2VjdHQgXGxldFxzbWFsbGNhcHM9XHNzZWNzY390ZW5iZgE2NjUsMjE4NDYKKyAgXGxldFx0ZW5i Zj1cc3NlY2JmIFxsZXRcdGVudHQ9XHNzZWN0dCBcbGV0XHNtYWxsY2Fwcz1cc3NlY3Njf3RlbnR0 ATY2NSwyMTg0NgorICBcbGV0XHRlbmJmPVxzc2VjYmYgXGxldFx0ZW50dD1cc3NlY3R0IFxsZXRc c21hbGxjYXBzPVxzc2Vjc2N/c21hbGxjYXBzATY2NSwyMTg0NgorICBcbGV0XHRlbnNmPVxzc2Vj c2YgXGxldFx0ZW5pPVxzc2VjaSBcbGV0XHRlbnN5PVxzc2Vjc3l/dGVuc2YBNjY2LDIxOTA5Cisg IFxsZXRcdGVuc2Y9XHNzZWNzZiBcbGV0XHRlbmk9XHNzZWNpIFxsZXRcdGVuc3k9XHNzZWNzeX90 ZW5pATY2NiwyMTkwOQorICBcbGV0XHRlbnNmPVxzc2Vjc2YgXGxldFx0ZW5pPVxzc2VjaSBcbGV0 XHRlbnN5PVxzc2Vjc3l/dGVuc3kBNjY2LDIxOTA5CitcZGVmXGluZGV4Zm9udHN7f2luZGV4Zm9u dHMBNjY4LDIxOTg1CisgIFxsZXRcdGVucm09XGluZHJtIFxsZXRcdGVuaXQ9XGluZGl0IFxsZXRc dGVuc2w9XGluZHNsf3RlbnJtATY2OSwyMjAwMworICBcbGV0XHRlbnJtPVxpbmRybSBcbGV0XHRl bml0PVxpbmRpdCBcbGV0XHRlbnNsPVxpbmRzbH90ZW5pdAE2NjksMjIwMDMKKyAgXGxldFx0ZW5y bT1caW5kcm0gXGxldFx0ZW5pdD1caW5kaXQgXGxldFx0ZW5zbD1caW5kc2x/dGVuc2wBNjY5LDIy MDAzCisgIFxsZXRcdGVuYmY9XGluZGJmIFxsZXRcdGVudHQ9XGluZHR0IFxsZXRcc21hbGxjYXBz PVxpbmRzY390ZW5iZgE2NzAsMjIwNTkKKyAgXGxldFx0ZW5iZj1caW5kYmYgXGxldFx0ZW50dD1c aW5kdHQgXGxldFxzbWFsbGNhcHM9XGluZHNjf3RlbnR0ATY3MCwyMjA1OQorICBcbGV0XHRlbmJm PVxpbmRiZiBcbGV0XHRlbnR0PVxpbmR0dCBcbGV0XHNtYWxsY2Fwcz1caW5kc2N/c21hbGxjYXBz ATY3MCwyMjA1OQorICBcbGV0XHRlbnNmPVxpbmRzZiBcbGV0XHRlbmk9XGluZGkgXGxldFx0ZW5z eT1caW5kc3l/dGVuc2YBNjcxLDIyMTE5CisgIFxsZXRcdGVuc2Y9XGluZHNmIFxsZXRcdGVuaT1c aW5kaSBcbGV0XHRlbnN5PVxpbmRzeX90ZW5pATY3MSwyMjExOQorICBcbGV0XHRlbnNmPVxpbmRz ZiBcbGV0XHRlbmk9XGluZGkgXGxldFx0ZW5zeT1caW5kc3l/dGVuc3kBNjcxLDIyMTE5CitcZGVm XHNtYXJ0aXRhbGljeHt/c21hcnRpdGFsaWN4ATY5MSwyMjcxNworXGRlZlxzbWFydGl0YWxpYyMx e39zbWFydGl0YWxpYwE2OTIsMjI3OTMKK1xsZXRcaT1cc21hcnRpdGFsaWN/aQE2OTQsMjI4NTEK K1xsZXRcdmFyPVxzbWFydGl0YWxpY392YXIBNjk1LDIyODcxCitcbGV0XGRmbj1cc21hcnRpdGFs aWN/ZGZuATY5NiwyMjg5MworXGxldFxlbXBoPVxzbWFydGl0YWxpY39lbXBoATY5NywyMjkxNQor XGxldFxjaXRlPVxzbWFydGl0YWxpY39jaXRlATY5OCwyMjkzOAorXGRlZlxiIzF7f2IBNzAwLDIy OTYyCitcbGV0XHN0cm9uZz1cYn9zdHJvbmcBNzAxLDIyOTgxCitcZGVmXHQjMXt/dAE3MDMsMjI5 OTcKK1xsZXRcdHRmb250ID0gXHR/dHRmb250ATcwNCwyMzA3MgorXGRlZlxzYW1wICMxe39zYW1w ATcwNiwyMzE0OQorXGRlZlxrZXkgIzF7f2tleQE3MDcsMjMxODIKK1xkZWZcY3RybCAjMXt/Y3Ry bAE3MDgsMjMyNDMKK1xsZXRcZmlsZT1cc2FtcH9maWxlATcxMCwyMzI4NQorXGRlZlx0Y2xvc2Uj MXt/dGNsb3NlATcxNiwyMzQ0NQorXGxldFxjb2RlPVx0Y2xvc2V/Y29kZQE3MjIsMjM3MjIKK1xk ZWZceGtleXt/eGtleQE3MjgsMjM4ODAKK1xkZWZca2JkZm9vIzEjMiMzXHBhcnt/a2JkZm9vATcy OSwyMzg5NgorXGRlZlxrYmRmb28jMSMyIzNccGFye1xkZWZcb25le39vbmUBNzI5LDIzODk2Citc ZGVmXGtiZGZvbyMxIzIjM1xwYXJ7XGRlZlxvbmV7IzF9XGRlZlx0aHJlZXt/dGhyZWUBNzI5LDIz ODk2CitcZGVmXGtiZGZvbyMxIzIjM1xwYXJ7XGRlZlxvbmV7IzF9XGRlZlx0aHJlZXsjM31cZGVm XHRocmVleHt/dGhyZWV4ATcyOSwyMzg5NgorXGRlZlxkbW4jMXt/ZG1uATczOCwyNDE5NworXGRl ZlxrYmQjMXt/a2JkATc0MCwyNDIyNAorXGRlZlxrYmQjMXtcZGVmXGxvb2t7f2xvb2sBNzQwLDI0 MjI0CitcZGVmXGwjMXt/bAE3NDIsMjQyODEKK1xkZWZcciMxe39yATc0NCwyNDMxMAorXGRlZlxz YyMxe39zYwE3NDYsMjQzNzgKK1xkZWZcaWkjMXt/aWkBNzQ3LDI0NDIxCitcZGVmXHRpdGxlZm9u dCMxe390aXRsZWZvbnQBNzU1LDI0NjU0CitcZGVmXHRpdGxlcGFnZXt/dGl0bGVwYWdlATc2MSwy NDc1NworICAgXGxldFxzdWJ0aXRsZXJtPVx0ZW5ybX9zdWJ0aXRsZXJtATc2MiwyNDgxMAorICAg XGRlZlxzdWJ0aXRsZWZvbnR7f3N1YnRpdGxlZm9udAE3NjYsMjQ5ODQKKyAgIFxkZWZcYXV0aG9y Zm9udHt/YXV0aG9yZm9udAE3NjgsMjUwNjgKKyAgIFxkZWZcdGl0bGV7f3RpdGxlATc3NCwyNTI3 OAorICAgXGRlZlx0aXRsZXp6eiMjMXt/dGl0bGV6enoBNzc1LDI1MzEzCisgICBcZGVmXHN1YnRp dGxle39zdWJ0aXRsZQE3ODMsMjU2MjgKKyAgIFxkZWZcc3VidGl0bGV6enojIzF7f3N1YnRpdGxl enp6ATc4NCwyNTY2OQorICAgXGRlZlxhdXRob3J7f2F1dGhvcgE3ODcsMjU3ODcKKyAgIFxkZWZc YXV0aG9yenp6IyMxe39hdXRob3J6enoBNzg4LDI1ODI0CisgICBcbGV0XG9sZHBhZ2UgPSBccGFn ZX9vbGRwYWdlATc5MywyNjA5MQorICAgXGRlZlxwYWdle39wYWdlATc5NCwyNjExNQorICAgICAg XGxldFxwYWdlID0gXG9sZHBhZ2V/cGFnZQE3OTksMjYyMDYKK1xkZWZcRXRpdGxlcGFnZXt/RXRp dGxlcGFnZQE4MDQsMjYyODQKK1xkZWZcZmluaXNodGl0bGVwYWdle39maW5pc2h0aXRsZXBhZ2UB ODE3LDI2NjcyCitcbGV0XHRoaXNwYWdlPVxmb2xpb390aGlzcGFnZQE4MjUsMjY4MjUKK1xsZXRc SEVBRElOR1Nob29rPVxyZWxheH9IRUFESU5HU2hvb2sBODM3LDI3NDIwCitcZGVmXGV2ZW5oZWFk aW5ne39ldmVuaGVhZGluZwE4NDYsMjc2ODAKK1xkZWZcb2RkaGVhZGluZ3t/b2RkaGVhZGluZwE4 NDcsMjc3MjMKK1xkZWZcZXZlcnloZWFkaW5ne39ldmVyeWhlYWRpbmcBODQ4LDI3NzY0CitcZGVm XGV2ZW5mb290aW5ne39ldmVuZm9vdGluZwE4NTAsMjc4MTAKK1xkZWZcb2RkZm9vdGluZ3t/b2Rk Zm9vdGluZwE4NTEsMjc4NTMKK1xkZWZcZXZlcnlmb290aW5ne39ldmVyeWZvb3RpbmcBODUyLDI3 ODk0CitcZ2RlZlxldmVuaGVhZGluZ3h4eCAjMXt/ZXZlbmhlYWRpbmd4eHgBODU2LDI3OTU4Citc Z2RlZlxldmVuaGVhZGluZ3l5eSAjMUB8IzJAfCMzQHwjNFxmaW5pc2h7f2V2ZW5oZWFkaW5neXl5 ATg1NywyODAxNworXGdkZWZcb2RkaGVhZGluZ3h4eCAjMXt/b2RkaGVhZGluZ3h4eAE4NjAsMjgx MjYKK1xnZGVmXG9kZGhlYWRpbmd5eXkgIzFAfCMyQHwjM0B8IzRcZmluaXNoe39vZGRoZWFkaW5n eXl5ATg2MSwyODE4MworXGdkZWZcZXZlcnloZWFkaW5neHh4ICMxe39ldmVyeWhlYWRpbmd4eHgB ODY0LDI4MjkwCitcZ2RlZlxldmVyeWhlYWRpbmd5eXkgIzFAfCMyQHwjM0B8IzRcZmluaXNoe39l dmVyeWhlYWRpbmd5eXkBODY1LDI4MzUxCitcZ2RlZlxldmVuZm9vdGluZ3h4eCAjMXt/ZXZlbmZv b3Rpbmd4eHgBODY5LDI4NTIyCitcZ2RlZlxldmVuZm9vdGluZ3l5eSAjMUB8IzJAfCMzQHwjNFxm aW5pc2h7f2V2ZW5mb290aW5neXl5ATg3MCwyODU4MQorXGdkZWZcb2RkZm9vdGluZ3h4eCAjMXt/ b2RkZm9vdGluZ3h4eAE4NzMsMjg2OTAKK1xnZGVmXG9kZGZvb3Rpbmd5eXkgIzFAfCMyQHwjM0B8 IzRcZmluaXNoe39vZGRmb290aW5neXl5ATg3NCwyODc0NworXGdkZWZcZXZlcnlmb290aW5neHh4 ICMxe39ldmVyeWZvb3Rpbmd4eHgBODc3LDI4ODU0CitcZ2RlZlxldmVyeWZvb3Rpbmd5eXkgIzFA fCMyQHwjM0B8IzRcZmluaXNoe39ldmVyeWZvb3Rpbmd5eXkBODc4LDI4OTE1CitcZGVmXGhlYWRp bmdzICMxIHt/aGVhZGluZ3MBODkzLDI5NTg2CitcZGVmXEhFQURJTkdTb2Zme39IRUFESU5HU29m ZgE4OTUsMjk2MzUKK1xkZWZcSEVBRElOR1Nkb3VibGV7f0hFQURJTkdTZG91YmxlATkwNCwzMDA2 MgorXGRlZlxIRUFESU5HU3NpbmdsZXt/SEVBRElOR1NzaW5nbGUBOTE0LDMwMzgyCitcZGVmXEhF QURJTkdTb257f0hFQURJTkdTb24BOTIyLDMwNjAzCitcZGVmXEhFQURJTkdTYWZ0ZXJ7f0hFQURJ TkdTYWZ0ZXIBOTI0LDMwNjM3CitcZGVmXEhFQURJTkdTYWZ0ZXJ7XGxldFxIRUFESU5HU2hvb2s9 XEhFQURJTkdTZG91YmxleH1/SEVBRElOR1Nob29rATkyNCwzMDYzNworXGxldFxIRUFESU5HU2Rv dWJsZWFmdGVyPVxIRUFESU5HU2FmdGVyf0hFQURJTkdTZG91YmxlYWZ0ZXIBOTI1LDMwNjkyCitc ZGVmXEhFQURJTkdTZG91YmxleHt/SEVBRElOR1Nkb3VibGV4ATkyNiwzMDczMgorXGRlZlxIRUFE SU5HU3NpbmdsZWFmdGVye39IRUFESU5HU3NpbmdsZWFmdGVyATkzMywzMDkyMAorXGRlZlxIRUFE SU5HU3NpbmdsZWFmdGVye1xsZXRcSEVBRElOR1Nob29rPVxIRUFESU5HU3NpbmdsZXh9f0hFQURJ TkdTaG9vawE5MzMsMzA5MjAKK1xkZWZcSEVBRElOR1NzaW5nbGV4e39IRUFESU5HU3NpbmdsZXgB OTM0LDMwOTgxCitcZGVmXHRvZGF5e390b2RheQE5NDMsMzEyNTYKK1xkZWZcdGhpc3RpdGxle390 aGlzdGl0bGUBOTU4LDMxODAxCitcZGVmXHNldHRpdGxle39zZXR0aXRsZQE5NTksMzE4MjYKK1xk ZWZcc2V0dGl0bGV6enogIzF7f3NldHRpdGxlenp6ATk2MCwzMTg2MworXGRlZlxzZXR0aXRsZXp6 eiAjMXtcZ2RlZlx0aGlzdGl0bGV7f3RoaXN0aXRsZQE5NjAsMzE4NjMKK1xkZWZcaW50ZXJuYWxC aXRlbXt/aW50ZXJuYWxCaXRlbQE5OTIsMzI3OTMKK1xkZWZcaW50ZXJuYWxCaXRlbXh7f2ludGVy bmFsQml0ZW14ATk5MywzMjg0MworXGRlZlxpbnRlcm5hbEJ4aXRlbSAiIzEie39pbnRlcm5hbEJ4 aXRlbQE5OTUsMzI4ODgKK1xkZWZcaW50ZXJuYWxCeGl0ZW0gIiMxIntcZGVmXHhpdGVtc3VidG9w aXh7f3hpdGVtc3VidG9waXgBOTk1LDMyODg4CitcZGVmXGludGVybmFsQnhpdGVteCAiIzEie39p bnRlcm5hbEJ4aXRlbXgBOTk2LDMyOTY4CitcZGVmXGludGVybmFsQnhpdGVteCAiIzEie1xkZWZc eGl0ZW1zdWJ0b3BpeHt/eGl0ZW1zdWJ0b3BpeAE5OTYsMzI5NjgKK1xkZWZcaW50ZXJuYWxCa2l0 ZW17f2ludGVybmFsQmtpdGVtATk5OCwzMzA0MworXGRlZlxpbnRlcm5hbEJraXRlbXh7f2ludGVy bmFsQmtpdGVteAE5OTksMzMwOTUKK1xkZWZca2l0ZW16enogIzF7f2tpdGVtenp6ATEwMDEsMzMx NDIKK1xkZWZceGl0ZW16enogIzF7f3hpdGVtenp6ATEwMDQsMzMyNDQKK1xkZWZcaXRlbXp6eiAj MXt/aXRlbXp6egExMDA3LDMzMzQ3CitcZGVmXGl0ZW17f2l0ZW0BMTAzNywzNDQxOAorXGRlZlxp dGVteHt/aXRlbXgBMTAzOCwzNDQ2OQorXGRlZlxraXRlbXt/a2l0ZW0BMTAzOSwzNDUyMgorXGRl ZlxraXRlbXh7f2tpdGVteAExMDQwLDM0NTc1CitcZGVmXHhpdGVte394aXRlbQExMDQxLDM0NjMw CitcZGVmXHhpdGVteHt/eGl0ZW14ATEwNDIsMzQ2ODMKK1xkZWZcZGVzY3JpcHRpb257f2Rlc2Ny aXB0aW9uATEwNDUsMzQ3OTMKK1xkZWZcdGFibGV7f3RhYmxlATEwNDcsMzQ4NDMKK1xnZGVmXHRh YmxleCAjMV5eTXt/dGFibGV4ATEwNDksMzQ5MjUKK1xkZWZcZnRhYmxle39mdGFibGUBMTA1Miwz NDk4NworXGdkZWZcZnRhYmxleCAjMV5eTXt/ZnRhYmxleAExMDU0LDM1MDcxCitcZGVmXEVmdGFi bGV7f0VmdGFibGUBMTA1NiwzNTEzMworXGxldFxFdGFibGU9XHJlbGF4fX9FdGFibGUBMTA1Nywz NTE4MAorXGRlZlx2dGFibGV7f3Z0YWJsZQExMDU5LDM1MjAyCitcZ2RlZlx2dGFibGV4ICMxXl5N e392dGFibGV4ATEwNjEsMzUyODYKK1xkZWZcRXZ0YWJsZXt/RXZ0YWJsZQExMDYzLDM1MzQ4Citc bGV0XEV0YWJsZT1ccmVsYXh9f0V0YWJsZQExMDY0LDM1Mzk1CitcZGVmXGRvbnRpbmRleCAjMXt/ ZG9udGluZGV4ATEwNjYsMzU0MTcKK1xkZWZcZm5pdGVtaW5kZXggIzF7f2ZuaXRlbWluZGV4ATEw NjcsMzU0MzcKK1xkZWZcdnJpdGVtaW5kZXggIzF7f3ZyaXRlbWluZGV4ATEwNjgsMzU0ODIKK1xn ZGVmXHRhYmxleSMxIzIgIzMgIzQgIzUgIzYgIzdcZW5kdGFibGV5e390YWJsZXkBMTA3MSwzNTU0 MworXGRlZlx0YWJsZXogIzEjMiMzIzQjNSM2e390YWJsZXoBMTA3NCwzNTYzMQorXGRlZlxFZGVz Y3JpcHRpb257f0VkZXNjcmlwdGlvbgExMDc3LDM1Njg5CitcbGV0XGl0ZW1pbmRleD0jMSV/aXRl bWluZGV4ATEwNzgsMzU3MzUKK1xkZWZcaXRlbWZvbnR7f2l0ZW1mb250ATEwODIsMzU4OTAKK1xk ZWZcRXRhYmxle39FdGFibGUBMTA5MCwzNjExNgorXGxldFxpdGVtID0gXGludGVybmFsQml0ZW0g JX9pdGVtATEwOTEsMzYxNjIKK1xsZXRcaXRlbXggPSBcaW50ZXJuYWxCaXRlbXggJX9pdGVteAEx MDkyLDM2MTkxCitcbGV0XGtpdGVtID0gXGludGVybmFsQmtpdGVtICV/a2l0ZW0BMTA5MywzNjIy MgorXGxldFxraXRlbXggPSBcaW50ZXJuYWxCa2l0ZW14ICV/a2l0ZW14ATEwOTQsMzYyNTMKK1xs ZXRceGl0ZW0gPSBcaW50ZXJuYWxCeGl0ZW0gJX94aXRlbQExMDk1LDM2Mjg2CitcbGV0XHhpdGVt eCA9IFxpbnRlcm5hbEJ4aXRlbXggJX94aXRlbXgBMTA5NiwzNjMxNworXGRlZlxpdGVtaXple39p dGVtaXplATExMDMsMzY0NDAKK1xkZWZcaXRlbWl6ZXp6eiAjMXt/aXRlbWl6ZXp6egExMTA1LDM2 NDc2CitcZGVmXGl0ZW1pemV5ICMxIzJ7f2l0ZW1pemV5ATExMTAsMzY1NzEKK1xkZWZcaXRlbWNv bnRlbnRze39pdGVtY29udGVudHMBMTEyMCwzNjg1OAorXGxldFxpdGVtPVxpdGVtaXplaXRlbX1/ aXRlbQExMTIxLDM2ODgxCitcZGVmXGJ1bGxldHt/YnVsbGV0ATExMjMsMzY5MDYKK1xkZWZcbWlu dXN7f21pbnVzATExMjQsMzY5MzMKK1xkZWZcZnJlbmNoc3BhY2luZ3t/ZnJlbmNoc3BhY2luZwEx MTI4LDM3MDQxCitcZGVmXHNwbGl0b2ZmIzEjMlxlbmRtYXJre39zcGxpdG9mZgExMTM0LDM3MjY2 CitcZGVmXHNwbGl0b2ZmIzEjMlxlbmRtYXJre1xkZWZcZmlyc3R7f2ZpcnN0ATExMzQsMzcyNjYK K1xkZWZcc3BsaXRvZmYjMSMyXGVuZG1hcmt7XGRlZlxmaXJzdHsjMX1cZGVmXHJlc3R7f3Jlc3QB MTEzNCwzNzI2NgorXGRlZlxlbnVtZXJhdGV7f2VudW1lcmF0ZQExMTQwLDM3NDk2CitcZGVmXGVu dW1lcmF0ZXp6eiAjMXt/ZW51bWVyYXRlenp6ATExNDEsMzc1MzUKK1xkZWZcZW51bWVyYXRleSAj MSAjMlxlbmRlbnVtZXJhdGV5e39lbnVtZXJhdGV5ATExNDIsMzc1ODgKKyAgXGRlZlx0aGVhcmd7 f3RoZWFyZwExMTQ2LDM3NzM1CisgIFxpZnhcdGhlYXJnXGVtcHR5IFxkZWZcdGhlYXJne390aGVh cmcBMTE0NywzNzc1NAorXGRlZlxudW1lcmljZW51bWVyYXRle39udW1lcmljZW51bWVyYXRlATEx ODQsMzkwODgKK1xkZWZcbG93ZXJjYXNlZW51bWVyYXRle39sb3dlcmNhc2VlbnVtZXJhdGUBMTE5 MCwzOTIxOAorXGRlZlx1cHBlcmNhc2VlbnVtZXJhdGV7f3VwcGVyY2FzZWVudW1lcmF0ZQExMjAz LDM5NTY1CitcZGVmXHN0YXJ0ZW51bWVyYXRpb24jMXt/c3RhcnRlbnVtZXJhdGlvbgExMjE5LDQw MDU1CitcZGVmXGFscGhhZW51bWVyYXRle39hbHBoYWVudW1lcmF0ZQExMjI3LDQwMjM3CitcZGVm XGNhcHNlbnVtZXJhdGV7f2NhcHNlbnVtZXJhdGUBMTIyOCw0MDI3MgorXGRlZlxFYWxwaGFlbnVt ZXJhdGV7f0VhbHBoYWVudW1lcmF0ZQExMjI5LDQwMzA2CitcZGVmXEVjYXBzZW51bWVyYXRle39F Y2Fwc2VudW1lcmF0ZQExMjMwLDQwMzQwCitcZGVmXGl0ZW1pemVpdGVte39pdGVtaXplaXRlbQEx MjM0LDQwNDIwCit7XGxldFxwYXI9XGVuZGdyYWYgXHNtYWxsYnJlYWt9f3BhcgExMjM2LDQwNDYw CitcZ2RlZlxuZXd3cml0ZXt/bmV3d3JpdGUBMTI0OSw0MDg0MQorXGRlZlxuZXdpbmRleCAjMXt/ bmV3aW5kZXgBMTI1OSw0MTI3NworXGV4cGFuZGFmdGVyXHhkZWZcY3NuYW1lIzFpbmRleFxlbmRj c25hbWV7f2NzbmFtZQExMjYyLDQxNDM5CitcZGVmXGRlZmluZGV4e39kZWZpbmRleAExMjY4LDQx NTY2CitcZGVmXG5ld2NvZGVpbmRleCAjMXt/bmV3Y29kZWluZGV4ATEyNzIsNDE2NzQKK1xleHBh bmRhZnRlclx4ZGVmXGNzbmFtZSMxaW5kZXhcZW5kY3NuYW1le39jc25hbWUBMTI3NSw0MTg0MAor XGRlZlxkZWZjb2RlaW5kZXh7f2RlZmNvZGVpbmRleAExMjc5LDQxOTM0CitcZGVmXHN5bmluZGV4 ICMxICMyIHt/c3luaW5kZXgBMTI4Myw0MjExNAorXGV4cGFuZGFmdGVyXGxldFxleHBhbmRhZnRl clxzeW5pbmRleGZvb1xleHBhbmRhZnRlcj1cY3NuYW1lIzJpbmRmaWxlXGVuZGNzbmFtZX9leHBh bmRhZnRlcgExMjg0LDQyMTM3CitcZXhwYW5kYWZ0ZXJcbGV0XGNzbmFtZSMxaW5kZmlsZVxlbmRj c25hbWU9XHN5bmluZGV4Zm9vf2NzbmFtZQExMjg1LDQyMjE3CitcZXhwYW5kYWZ0ZXJceGRlZlxj c25hbWUjMWluZGV4XGVuZGNzbmFtZXt/Y3NuYW1lATEyODYsNDIyNzMKK1xkZWZcc3luY29kZWlu ZGV4ICMxICMyIHt/c3luY29kZWluZGV4ATEyOTIsNDI0NTQKK1xleHBhbmRhZnRlclxsZXRcZXhw YW5kYWZ0ZXJcc3luaW5kZXhmb29cZXhwYW5kYWZ0ZXI9XGNzbmFtZSMyaW5kZmlsZVxlbmRjc25h bWV/ZXhwYW5kYWZ0ZXIBMTI5Myw0MjQ4MQorXGV4cGFuZGFmdGVyXGxldFxjc25hbWUjMWluZGZp bGVcZW5kY3NuYW1lPVxzeW5pbmRleGZvb39jc25hbWUBMTI5NCw0MjU2MQorXGV4cGFuZGFmdGVy XHhkZWZcY3NuYW1lIzFpbmRleFxlbmRjc25hbWV7f2NzbmFtZQExMjk1LDQyNjE3CitcZGVmXGRv aW5kZXgjMXt/ZG9pbmRleAExMzA5LDQzMTMzCitcZGVmXGRvaW5kZXgjMXtcZWRlZlxpbmRleG5h bWV7f2luZGV4bmFtZQExMzA5LDQzMTMzCitcZGVmXHNpbmdsZWluZGV4ZXIgIzF7f3NpbmdsZWlu ZGV4ZXIBMTMxMCw0MzE5MgorXGRlZlxzaW5nbGVpbmRleGVyICMxe1xkb2luZHtcaW5kZXhuYW1l fX9uYW1lATEzMTAsNDMxOTIKK1xkZWZcZG9jb2RlaW5kZXgjMXt/ZG9jb2RlaW5kZXgBMTMxMyw0 MzMwNAorXGRlZlxkb2NvZGVpbmRleCMxe1xlZGVmXGluZGV4bmFtZXt/aW5kZXhuYW1lATEzMTMs NDMzMDQKK1xkZWZcc2luZ2xlY29kZWluZGV4ZXIgIzF7f3NpbmdsZWNvZGVpbmRleGVyATEzMTQs NDMzNzEKK1xkZWZcc2luZ2xlY29kZWluZGV4ZXIgIzF7XGRvaW5ke1xpbmRleG5hbWV9f25hbWUB MTMxNCw0MzM3MQorXGRlZlxpbmRleGR1bW1pZXN7f2luZGV4ZHVtbWllcwExMzE2LDQzNDI5Citc ZGVmXF97f18BMTMxNyw0MzQ0OQorXGRlZlx3e393ATEzMTgsNDM0NzcKK1xkZWZcYmZ7f2JmATEz MTksNDM1MDQKK1xkZWZccm17f3JtATEzMjAsNDM1MzMKK1xkZWZcc2x7f3NsATEzMjEsNDM1NjIK K1xkZWZcc2Z7f3NmATEzMjIsNDM1OTEKK1xkZWZcdHR7f3R0ATEzMjMsNDM2MTkKK1xkZWZcZ3Ry e39ndHIBMTMyNCw0MzY0NworXGRlZlxsZXNze39sZXNzATEzMjUsNDM2NzcKK1xkZWZcaGF0e39o YXQBMTMyNiw0MzcwOQorXGRlZlxjaGFye39jaGFyATEzMjcsNDM3MzkKK1xkZWZcVGVYe39UZVgB MTMyOCw0Mzc3MQorXGRlZlxkb3Rze39kb3RzATEzMjksNDM4MDEKK1xkZWZcY29weXJpZ2h0e39j b3B5cmlnaHQBMTMzMCw0MzgzNAorXGRlZlx0Y2xvc2UjIzF7f3RjbG9zZQExMzMxLDQzODc3Citc ZGVmXGNvZGUjIzF7f2NvZGUBMTMzMiw0MzkyMgorXGRlZlxzYW1wIyMxe39zYW1wATEzMzMsNDM5 NjMKK1xkZWZcdCMjMXt/dAExMzM0LDQ0MDA0CitcZGVmXHIjIzF7f3IBMTMzNSw0NDAzOQorXGRl ZlxpIyMxe39pATEzMzYsNDQwNzQKK1xkZWZcYiMjMXt/YgExMzM3LDQ0MTA5CitcZGVmXGNpdGUj IzF7f2NpdGUBMTMzOCw0NDE0NAorXGRlZlxrZXkjIzF7f2tleQExMzM5LDQ0MTg1CitcZGVmXGZp bGUjIzF7f2ZpbGUBMTM0MCw0NDIyNAorXGRlZlx2YXIjIzF7f3ZhcgExMzQxLDQ0MjY1CitcZGVm XGtiZCMjMXt/a2JkATEzNDIsNDQzMDQKK1xkZWZcaW5kZXhkdW1teWZvbnQjMXt/aW5kZXhkdW1t eWZvbnQBMTM0Nyw0NDQ2MAorXGRlZlxpbmRleGR1bW15dGV4e39pbmRleGR1bW15dGV4ATEzNDgs NDQ0ODYKK1xkZWZcaW5kZXhkdW1teWRvdHN7f2luZGV4ZHVtbXlkb3RzATEzNDksNDQ1MTAKK1xk ZWZcaW5kZXhub2ZvbnRze39pbmRleG5vZm9udHMBMTM1MSw0NDUzNgorXGxldFx3PVxpbmRleGR1 bW15Zm9udH93ATEzNTIsNDQ1NTYKIFxsZXRcdz1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEz NTIsNDQ1NTYKK1xsZXRcdD1caW5kZXhkdW1teWZvbnR/dAExMzUzLDQ0NTc5CiBcbGV0XHQ9XGlu ZGV4ZHVtbXlmb250f2R1bW15Zm9udAExMzUzLDQ0NTc5CitcbGV0XHI9XGluZGV4ZHVtbXlmb250 f3IBMTM1NCw0NDYwMgogXGxldFxyPVxpbmRleGR1bW15Zm9udH9kdW1teWZvbnQBMTM1NCw0NDYw MgorXGxldFxpPVxpbmRleGR1bW15Zm9udH9pATEzNTUsNDQ2MjUKIFxsZXRcaT1caW5kZXhkdW1t eWZvbnR/ZHVtbXlmb250ATEzNTUsNDQ2MjUKK1xsZXRcYj1caW5kZXhkdW1teWZvbnR/YgExMzU2 LDQ0NjQ4CiBcbGV0XGI9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9udAExMzU2LDQ0NjQ4CitcbGV0 XGVtcGg9XGluZGV4ZHVtbXlmb250f2VtcGgBMTM1Nyw0NDY3MQogXGxldFxlbXBoPVxpbmRleGR1 bW15Zm9udH9kdW1teWZvbnQBMTM1Nyw0NDY3MQorXGxldFxzdHJvbmc9XGluZGV4ZHVtbXlmb250 f3N0cm9uZwExMzU4LDQ0Njk3CiBcbGV0XHN0cm9uZz1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250 ATEzNTgsNDQ2OTcKLVxsZXRcY2l0ZT1caW5kZXhkdW1teWZvbnR/PVxpbmRleGR1bW15Zm9udAEx MzU5LDQ0NzI1CitcbGV0XGNpdGU9XGluZGV4ZHVtbXlmb250f2NpdGUBMTM1OSw0NDcyNQorXGxl dFxjaXRlPVxpbmRleGR1bW15Zm9udH9kdW1teWZvbnQBMTM1OSw0NDcyNQorXGxldFxzYz1caW5k ZXhkdW1teWZvbnR/c2MBMTM2MCw0NDc1MQogXGxldFxzYz1caW5kZXhkdW1teWZvbnR/ZHVtbXlm b250ATEzNjAsNDQ3NTEKK1xsZXRcdGNsb3NlPVxpbmRleGR1bW15Zm9udH90Y2xvc2UBMTM2NCw0 NDkyMwogXGxldFx0Y2xvc2U9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9udAExMzY0LDQ0OTIzCitc bGV0XGNvZGU9XGluZGV4ZHVtbXlmb250f2NvZGUBMTM2NSw0NDk1MQogXGxldFxjb2RlPVxpbmRl eGR1bW15Zm9udH9kdW1teWZvbnQBMTM2NSw0NDk1MQorXGxldFxmaWxlPVxpbmRleGR1bW15Zm9u dH9maWxlATEzNjYsNDQ5NzcKIFxsZXRcZmlsZT1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEz NjYsNDQ5NzcKK1xsZXRcc2FtcD1caW5kZXhkdW1teWZvbnR/c2FtcAExMzY3LDQ1MDAzCiBcbGV0 XHNhbXA9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9udAExMzY3LDQ1MDAzCitcbGV0XGtiZD1caW5k ZXhkdW1teWZvbnR/a2JkATEzNjgsNDUwMjkKIFxsZXRca2JkPVxpbmRleGR1bW15Zm9udH9kdW1t eWZvbnQBMTM2OCw0NTAyOQorXGxldFxrZXk9XGluZGV4ZHVtbXlmb250f2tleQExMzY5LDQ1MDU0 CiBcbGV0XGtleT1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNjksNDUwNTQKK1xsZXRcdmFy PVxpbmRleGR1bW15Zm9udH92YXIBMTM3MCw0NTA3OQogXGxldFx2YXI9XGluZGV4ZHVtbXlmb250 f2R1bW15Zm9udAExMzcwLDQ1MDc5CitcbGV0XFRlWD1caW5kZXhkdW1teXRleH9UZVgBMTM3MSw0 NTEwNAogXGxldFxUZVg9XGluZGV4ZHVtbXl0ZXh/ZHVtbXl0ZXgBMTM3MSw0NTEwNAorXGxldFxk b3RzPVxpbmRleGR1bW15ZG90c39kb3RzATEzNzIsNDUxMjgKIFxsZXRcZG90cz1caW5kZXhkdW1t eWRvdHN/ZHVtbXlkb3RzATEzNzIsNDUxMjgKLVxsZXRcaW5kZXhiYWNrc2xhc2g9MCAgJW92ZXJy aWRkZW4gZHVyaW5nIFxwcmludGluZGV4Ln9iYWNrc2xhc2g9MAExMzgyLDQ1MzgwCi1cZGVmXGRv aW5kICMxIzJ7f1xkb2luZAExMzg0LDQ1NDM2CitcbGV0XGluZGV4YmFja3NsYXNoPTAgICVvdmVy cmlkZGVuIGR1cmluZyBccHJpbnRpbmRleC5/aW5kZXhiYWNrc2xhc2gBMTM4Miw0NTM4MAorXGRl Zlxkb2luZCAjMSMye39kb2luZAExMzg0LDQ1NDM2CiB7XGluZGV4ZHVtbWllcyAlIE11c3QgZG8g dGhpcyBoZXJlLCBzaW5jZSBcYmYsIGV0YyBleHBhbmQgYXQgdGhpcyBzdGFnZX9kdW1taWVzATEz ODYsNDU0NzkKLVxkZWZccmF3YmFja3NsYXNoeHh7f1xyYXdiYWNrc2xhc2h4eAExMzg5LDQ1NjE5 Cit7XGxldFxmb2xpbz0wJSBFeHBhbmQgYWxsIG1hY3JvcyBub3cgRVhDRVBUIFxmb2xpb39mb2xp bwExMzg4LDQ1NTY4CitcZGVmXHJhd2JhY2tzbGFzaHh4e39yYXdiYWNrc2xhc2h4eAExMzg5LDQ1 NjE5CitcZGVmXHJhd2JhY2tzbGFzaHh4e1xpbmRleGJhY2tzbGFzaH1/YmFja3NsYXNoATEzODks NDU2MTkKIHtcaW5kZXhub2ZvbnRzf25vZm9udHMBMTM5NCw0NTg4MQotXGRlZlxkb3N1YmluZCAj MSMyIzN7f1xkb3N1YmluZAExNDA1LDQ2MTkyCitceGRlZlx0ZW1wMXt/dGVtcDEBMTM5NSw0NTg5 NgorXGVkZWZcdGVtcHt/dGVtcAExMzk5LDQ2MDY4CitcZGVmXGRvc3ViaW5kICMxIzIjM3t/ZG9z dWJpbmQBMTQwNSw0NjE5Mgoge1xpbmRleGR1bW1pZXMgJSBNdXN0IGRvIHRoaXMgaGVyZSwgc2lu Y2UgXGJmLCBldGMgZXhwYW5kIGF0IHRoaXMgc3RhZ2V/ZHVtbWllcwExNDA3LDQ2MjQwCi1cZGVm XHJhd2JhY2tzbGFzaHh4e39ccmF3YmFja3NsYXNoeHgBMTQxMCw0NjM0NAore1xsZXRcZm9saW89 MCV/Zm9saW8BMTQwOSw0NjMyOQorXGRlZlxyYXdiYWNrc2xhc2h4eHt/cmF3YmFja3NsYXNoeHgB MTQxMCw0NjM0NAorXGRlZlxyYXdiYWNrc2xhc2h4eHtcaW5kZXhiYWNrc2xhc2h9f2JhY2tzbGFz aAExNDEwLDQ2MzQ0CiB7XGluZGV4bm9mb250c39ub2ZvbnRzATE0MTQsNDY0OTgKLVxkZWZcZmlu ZGV4IHt/XGZpbmRleAExNDQzLDQ3NDI5Ci1cZGVmXGtpbmRleCB7f1xraW5kZXgBMTQ0NCw0NzQ1 MgotXGRlZlxjaW5kZXgge39cY2luZGV4ATE0NDUsNDc0NzUKLVxkZWZcdmluZGV4IHt/XHZpbmRl eAExNDQ2LDQ3NDk4Ci1cZGVmXHRpbmRleCB7f1x0aW5kZXgBMTQ0Nyw0NzUyMQotXGRlZlxwaW5k ZXgge39ccGluZGV4ATE0NDgsNDc1NDQKLVxkZWZcY2luZGV4c3ViIHt/XGNpbmRleHN1YgExNDUw LDQ3NTY4Ci1cZGVmXHByaW50aW5kZXh7f1xwcmludGluZGV4ATE0NjIsNDc4OTUKLVxkZWZcZG9w cmludGluZGV4IzF7f1xkb3ByaW50aW5kZXgBMTQ2NCw0NzkzNgotICBcZGVmXGluZGV4YmFja3Ns YXNoe39caW5kZXhiYWNrc2xhc2gBMTQ4MSw0ODQyMQorXHhkZWZcdGVtcDF7f3RlbXAxATE0MTUs NDY1MTMKK1xlZGVmXHRlbXB7f3RlbXABMTQxOSw0NjY4OAorXGRlZlxmaW5kZXgge39maW5kZXgB MTQ0Myw0NzQyOQorXGRlZlxraW5kZXgge39raW5kZXgBMTQ0NCw0NzQ1MgorXGRlZlxjaW5kZXgg e39jaW5kZXgBMTQ0NSw0NzQ3NQorXGRlZlx2aW5kZXgge392aW5kZXgBMTQ0Niw0NzQ5OAorXGRl Zlx0aW5kZXgge390aW5kZXgBMTQ0Nyw0NzUyMQorXGRlZlxwaW5kZXgge39waW5kZXgBMTQ0OCw0 NzU0NAorXGRlZlxjaW5kZXhzdWIge39jaW5kZXhzdWIBMTQ1MCw0NzU2OAorXGdkZWZcY2luZGV4 c3ViICIjMSIgIzJeXk17f2NpbmRleHN1YgExNDUyLDQ3NjMxCitcZGVmXHByaW50aW5kZXh7f3By aW50aW5kZXgBMTQ2Miw0Nzg5NQorXGRlZlxkb3ByaW50aW5kZXgjMXt/ZG9wcmludGluZGV4ATE0 NjQsNDc5MzYKKyAgXGRlZlxpbmRleGJhY2tzbGFzaHt/aW5kZXhiYWNrc2xhc2gBMTQ4MSw0ODQy MQogICBcaW5kZXhmb250c1xybSBcdG9sZXJhbmNlPTk1MDAgXGFkdmFuY2VcYmFzZWxpbmVza2lw IC0xcHR/Zm9udHNccm0BMTQ4Miw0ODQ2MAotXGRlZlxpbml0aWFsICMxe39caW5pdGlhbAExNTE3 LDQ5NTMyCi1cZGVmXGVudHJ5ICMxIzJ7f1xlbnRyeQExNTIzLDQ5NzM5CitcZGVmXGluaXRpYWwg IzF7f2luaXRpYWwBMTUxNyw0OTUzMgore1xsZXRcdGVudHQ9XHNlY3R0IFxsZXRcdHQ9XHNlY3R0 IFxsZXRcc2Y9XHNlY3R0f3RlbnR0ATE1MTgsNDk1NTAKK3tcbGV0XHRlbnR0PVxzZWN0dCBcbGV0 XHR0PVxzZWN0dCBcbGV0XHNmPVxzZWN0dH90dAExNTE4LDQ5NTUwCit7XGxldFx0ZW50dD1cc2Vj dHQgXGxldFx0dD1cc2VjdHQgXGxldFxzZj1cc2VjdHR/c2YBMTUxOCw0OTU1MAorXGRlZlxlbnRy eSAjMSMye39lbnRyeQExNTIzLDQ5NzM5CiAgIFxudWxsXG5vYnJlYWtcaW5kZXhkb3RmaWxsICUg SGF2ZSBsZWFkZXJzIGJlZm9yZSB0aGUgcGFnZSBudW1iZXIuf2RvdGZpbGwBMTU0MCw1MDM4Ngot XGRlZlxpbmRleGRvdGZpbGx7f1xpbmRleGRvdGZpbGwBMTU0OSw1MDcxNAotXGRlZlxwcmltYXJ5 ICMxe39ccHJpbWFyeQExNTUyLDUwODIwCi1cZGVmXHNlY29uZGFyeSAjMSMye39cc2Vjb25kYXJ5 ATE1NTYsNTA5MDIKK1xkZWZcaW5kZXhkb3RmaWxse39pbmRleGRvdGZpbGwBMTU0OSw1MDcxNAor XGRlZlxwcmltYXJ5ICMxe39wcmltYXJ5ATE1NTIsNTA4MjAKK1xkZWZcc2Vjb25kYXJ5ICMxIzJ7 f3NlY29uZGFyeQExNTU2LDUwOTAyCiBcbm9pbmRlbnRcaHNraXBcc2Vjb25kYXJ5aW5kZW50XGhi b3h7IzF9XGluZGV4ZG90ZmlsbCAjMlxwYXJ/ZG90ZmlsbAExNTU5LDUwOTg0CiBcbmV3Ym94XHBh cnRpYWxwYWdlf2lhbHBhZ2UBMTU2Niw1MTE1NwotXGRlZlxiZWdpbmRvdWJsZWNvbHVtbnN7f1xi ZWdpbmRvdWJsZWNvbHVtbnMBMTU3Miw1MTMxNQotICBcb3V0cHV0PXtcZ2xvYmFsXHNldGJveFxw YXJ0aWFscGFnZT1/aWFscGFnZT0BMTU3Myw1MTM1MQotXGRlZlxlbmRkb3VibGVjb2x1bW5ze39c ZW5kZG91YmxlY29sdW1ucwExNTc3LDUxNTM5Ci1cZGVmXGRvdWJsZWNvbHVtbm91dHt/XGRvdWJs ZWNvbHVtbm91dAExNTgwLDUxNjI0CitcZGVmXGJlZ2luZG91YmxlY29sdW1uc3t/YmVnaW5kb3Vi bGVjb2x1bW5zATE1NzIsNTEzMTUKKyAgXG91dHB1dD17XGdsb2JhbFxzZXRib3hccGFydGlhbHBh Z2U9f2lhbHBhZ2UBMTU3Myw1MTM1MQorXGRlZlxlbmRkb3VibGVjb2x1bW5ze39lbmRkb3VibGVj b2x1bW5zATE1NzcsNTE1MzkKK1xkZWZcZG91YmxlY29sdW1ub3V0e39kb3VibGVjb2x1bW5vdXQB MTU4MCw1MTYyNAogICBcZGltZW5APVxwYWdlaGVpZ2h0IFxhZHZhbmNlXGRpbWVuQCBieS1caHRc cGFydGlhbHBhZ2V/aWFscGFnZQExNTgxLDUxNjkzCi1cZGVmXHBhZ2Vzb2Zhcnt/XHBhZ2Vzb2Zh cgExNTg0LDUxODcxCi1cZGVmXGJhbGFuY2Vjb2x1bW5ze39cYmFsYW5jZWNvbHVtbnMBMTU4OCw1 MjEwOAorXGRlZlxwYWdlc29mYXJ7f3BhZ2Vzb2ZhcgExNTg0LDUxODcxCitcZGVmXHBhZ2Vzb2Zh cntcdW52Ym94XHBhcnRpYWxwYWdlICV/aWFscGFnZQExNTg0LDUxODcxCitcZGVmXGJhbGFuY2Vj b2x1bW5ze39iYWxhbmNlY29sdW1ucwExNTg4LDUyMTA4CiAgIFxhdmFpbGRpbWVuQD1ccGFnZWhl aWdodCBcYWR2YW5jZVxhdmFpbGRpbWVuQCBieS1caHRccGFydGlhbHBhZ2V/aWFscGFnZQExNTk0 LDUyMjc5CiAgICAgIFxkaW1lbkA9XHBhZ2VoZWlnaHQgXGFkdmFuY2VcZGltZW5AIGJ5LVxodFxw YXJ0aWFscGFnZX9pYWxwYWdlATE2MDAsNTI1NDAKIFxuZXdjb3VudCBcYXBwZW5kaXhubyAgXGFw cGVuZGl4bm8gPSBgXEB/bm8BMTYyNyw1MzQ0NQotXGRlZlxhcHBlbmRpeGxldHRlcnt/XGFwcGVu ZGl4bGV0dGVyATE2MjgsNTM0ODYKLVxkZWZcb3BlbmNvbnRlbnRze39cb3BlbmNvbnRlbnRzATE2 MzIsNTM1ODkKLVxkZWZcdGhpc2NoYXB0ZXJ7f1x0aGlzY2hhcHRlcgExNjM3LDUzNzcwCi1cZGVm XHNlY2NoZWNrIzF7f1xzZWNjaGVjawExNjM4LDUzODA4Ci1cZGVmXGNoYXB0ZXJub2ZvbnRze39c Y2hhcHRlcm5vZm9udHMBMTY0Myw1MzkxMgotXGRlZlxyZXN1bHR7f1xyZXN1bHQBMTY0Niw1Mzk4 NwotXGRlZlxlcXVpdnt/XGVxdWl2ATE2NDcsNTQwMjIKLVxkZWZcZXhwYW5zaW9ue39cZXhwYW5z aW9uATE2NDgsNTQwNTUKLVxkZWZccHJpbnR7f1xwcmludAExNjQ5LDU0MDk2Ci1cZGVmXFRlWHt/ XFRlWAExNjUwLDU0MTI5Ci1cZGVmXGRvdHN7f1xkb3RzATE2NTEsNTQxNTgKLVxkZWZcY29weXJp Z2h0e39cY29weXJpZ2h0ATE2NTIsNTQxODkKLVxkZWZcdHR7f1x0dAExNjUzLDU0MjMwCi1cZGVm XGJme39cYmYBMTY1NCw1NDI1NwotXGRlZlx3e39cdwExNjU1LDU0Mjg1Ci1cZGVmXGxlc3N7f1xs ZXNzATE2NTYsNTQzMTAKLVxkZWZcZ3Rye39cZ3RyATE2NTcsNTQzNDEKLVxkZWZcaGF0e39caGF0 ATE2NTgsNTQzNzAKLVxkZWZcY2hhcnt/XGNoYXIBMTY1OSw1NDM5OQotXGRlZlx0Y2xvc2UjIzF7 f1x0Y2xvc2UBMTY2MCw1NDQzMAotXGRlZlxjb2RlIyMxe39cY29kZQExNjYxLDU0NDc0Ci1cZGVm XHNhbXAjIzF7f1xzYW1wATE2NjIsNTQ1MTQKLVxkZWZcciMjMXt/XHIBMTY2Myw1NDU1NAotXGRl ZlxiIyMxe39cYgExNjY0LDU0NTg4Ci1cZGVmXGtleSMjMXt/XGtleQExNjY1LDU0NjIyCi1cZGVm XGZpbGUjIzF7f1xmaWxlATE2NjYsNTQ2NjAKLVxkZWZca2JkIyMxe39ca2JkATE2NjcsNTQ3MDAK LVxkZWZcaSMjMXt/XGkBMTY2OSw1NDgwOAotXGRlZlxjaXRlIyMxe39cY2l0ZQExNjcwLDU0ODQy Ci1cZGVmXHZhciMjMXt/XHZhcgExNjcxLDU0ODgyCi1cZGVmXGVtcGgjIzF7f1xlbXBoATE2NzIs NTQ5MjAKLVxkZWZcZGZuIyMxe39cZGZuATE2NzMsNTQ5NjAKLVxkZWZcdGhpc2NoYXB0ZXJuYW1l e39cdGhpc2NoYXB0ZXJuYW1lATE2NzYsNTUwMDEKLVxvdXRlclxkZWZcY2hhcHRlcnt/XGNoYXB0 ZXIBMTY3Nyw1NTA0MAotXGRlZlxjaGFwdGVyenp6ICMxe39cY2hhcHRlcnp6egExNjc4LDU1MDgx Ci17XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzJQExNjg3LDU1NDc3Ci1cZ2xvYmFsXGxldFxzZWN0 aW9uID0gXG51bWJlcmVkc2Vjfz0BMTY5Miw1NTYzMAotXGdsb2JhbFxsZXRcc3Vic2VjdGlvbiA9 IFxudW1iZXJlZHN1YnNlY389ATE2OTMsNTU2NjUKLVxnbG9iYWxcbGV0XHN1YnN1YnNlY3Rpb24g PSBcbnVtYmVyZWRzdWJzdWJzZWN/PQExNjk0LDU1NzA2Ci1cb3V0ZXJcZGVmXGFwcGVuZGl4e39c YXBwZW5kaXgBMTY5Nyw1NTc1NwotXGRlZlxhcHBlbmRpeHp6eiAjMXt/XGFwcGVuZGl4enp6ATE2 OTgsNTU4MDAKK1xuZXdjb3VudCBcYXBwZW5kaXhubyAgXGFwcGVuZGl4bm8gPSBgXEB/bm8BMTYy Nyw1MzQ0NQorXGRlZlxhcHBlbmRpeGxldHRlcnt/YXBwZW5kaXhsZXR0ZXIBMTYyOCw1MzQ4Ngor XGRlZlxhcHBlbmRpeGxldHRlcntcY2hhclx0aGVcYXBwZW5kaXhub31/bm8BMTYyOCw1MzQ4Ngor XGRlZlxvcGVuY29udGVudHN7f29wZW5jb250ZW50cwExNjMyLDUzNTg5CitcZGVmXHRoaXNjaGFw dGVye390aGlzY2hhcHRlcgExNjM3LDUzNzcwCitcZGVmXHRoaXNjaGFwdGVye30gXGRlZlx0aGlz c2VjdGlvbnt/dGhpc3NlY3Rpb24BMTYzNyw1Mzc3MAorXGRlZlxzZWNjaGVjayMxe39zZWNjaGVj awExNjM4LDUzODA4CitcZGVmXGNoYXB0ZXJub2ZvbnRze39jaGFwdGVybm9mb250cwExNjQzLDUz OTEyCitcbGV0XHJhd2JhY2tzbGFzaD1ccmVsYXglf3Jhd2JhY2tzbGFzaAExNjQ0LDUzOTM0Citc bGV0XGZyZW5jaHNwYWNpbmc9XHJlbGF4JX9mcmVuY2hzcGFjaW5nATE2NDUsNTM5NjAKK1xkZWZc cmVzdWx0e39yZXN1bHQBMTY0Niw1Mzk4NworXGRlZlxlcXVpdnt/ZXF1aXYBMTY0Nyw1NDAyMgor XGRlZlxleHBhbnNpb257f2V4cGFuc2lvbgExNjQ4LDU0MDU1CitcZGVmXHByaW50e39wcmludAEx NjQ5LDU0MDk2CitcZGVmXFRlWHt/VGVYATE2NTAsNTQxMjkKK1xkZWZcZG90c3t/ZG90cwExNjUx LDU0MTU4CitcZGVmXGNvcHlyaWdodHt/Y29weXJpZ2h0ATE2NTIsNTQxODkKK1xkZWZcdHR7f3R0 ATE2NTMsNTQyMzAKK1xkZWZcYmZ7f2JmATE2NTQsNTQyNTcKK1xkZWZcd3t/dwExNjU1LDU0Mjg1 CitcZGVmXGxlc3N7f2xlc3MBMTY1Niw1NDMxMAorXGRlZlxndHJ7f2d0cgExNjU3LDU0MzQxCitc ZGVmXGhhdHt/aGF0ATE2NTgsNTQzNzAKK1xkZWZcY2hhcnt/Y2hhcgExNjU5LDU0Mzk5CitcZGVm XHRjbG9zZSMjMXt/dGNsb3NlATE2NjAsNTQ0MzAKK1xkZWZcY29kZSMjMXt/Y29kZQExNjYxLDU0 NDc0CitcZGVmXHNhbXAjIzF7f3NhbXABMTY2Miw1NDUxNAorXGRlZlxyIyMxe39yATE2NjMsNTQ1 NTQKK1xkZWZcYiMjMXt/YgExNjY0LDU0NTg4CitcZGVmXGtleSMjMXt/a2V5ATE2NjUsNTQ2MjIK K1xkZWZcZmlsZSMjMXt/ZmlsZQExNjY2LDU0NjYwCitcZGVmXGtiZCMjMXt/a2JkATE2NjcsNTQ3 MDAKK1xkZWZcaSMjMXt/aQExNjY5LDU0ODA4CitcZGVmXGNpdGUjIzF7f2NpdGUBMTY3MCw1NDg0 MgorXGRlZlx2YXIjIzF7f3ZhcgExNjcxLDU0ODgyCitcZGVmXGVtcGgjIzF7f2VtcGgBMTY3Miw1 NDkyMAorXGRlZlxkZm4jIzF7f2RmbgExNjczLDU0OTYwCitcZGVmXHRoaXNjaGFwdGVybmFtZXt/ dGhpc2NoYXB0ZXJuYW1lATE2NzYsNTUwMDEKK1xvdXRlclxkZWZcY2hhcHRlcnt/Y2hhcHRlcgEx Njc3LDU1MDQwCitcb3V0ZXJcZGVmXGNoYXB0ZXJ7XHBhcnNlYXJnXGNoYXB0ZXJ6enp9f3p6egEx Njc3LDU1MDQwCitcZGVmXGNoYXB0ZXJ6enogIzF7f2NoYXB0ZXJ6enoBMTY3OCw1NTA4MQorXGdk ZWZcdGhpc3NlY3Rpb257f3RoaXNzZWN0aW9uATE2ODIsNTUyNDYKK1xnZGVmXHRoaXNjaGFwdGVy bmFtZXt/dGhpc2NoYXB0ZXJuYW1lATE2ODMsNTUyNjkKK1x4ZGVmXHRoaXNjaGFwdGVye390aGlz Y2hhcHRlcgExNjg2LDU1NDEwCit7XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzATE2ODcsNTU0NzcK K1xlZGVmXHRlbXB7f3RlbXABMTY4OCw1NTQ5NQorXGdsb2JhbFxsZXRcc2VjdGlvbiA9IFxudW1i ZXJlZHNlY39zZWN0aW9uATE2OTIsNTU2MzAKK1xnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcbnVt YmVyZWRzdWJzZWN/c3Vic2VjdGlvbgExNjkzLDU1NjY1CitcZ2xvYmFsXGxldFxzdWJzdWJzZWN0 aW9uID0gXG51bWJlcmVkc3Vic3Vic2Vjf3N1YnN1YnNlY3Rpb24BMTY5NCw1NTcwNgorXG91dGVy XGRlZlxhcHBlbmRpeHt/YXBwZW5kaXgBMTY5Nyw1NTc1NworXG91dGVyXGRlZlxhcHBlbmRpeHtc cGFyc2VhcmdcYXBwZW5kaXh6enp9f3p6egExNjk3LDU1NzU3CitcZGVmXGFwcGVuZGl4enp6ICMx e39hcHBlbmRpeHp6egExNjk4LDU1ODAwCiBcZ2xvYmFsXGFkdmFuY2UgXGFwcGVuZGl4bm8gYnkg MSBcbWVzc2FnZXt/bm8BMTcwMCw1NTg3NworXGdsb2JhbFxhZHZhbmNlIFxhcHBlbmRpeG5vIGJ5 IDEgXG1lc3NhZ2V7QXBwZW5kaXggXGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIBMTcwMCw1NTg3Nwog XGNoYXBtYWNybyB7IzF9e0FwcGVuZGl4IFxhcHBlbmRpeGxldHRlcn1/bGV0dGVyATE3MDEsNTU5 NDYKK1xnZGVmXHRoaXNzZWN0aW9ue390aGlzc2VjdGlvbgExNzAyLDU1OTg5CitcZ2RlZlx0aGlz Y2hhcHRlcm5hbWV7f3RoaXNjaGFwdGVybmFtZQExNzAzLDU2MDEyCitceGRlZlx0aGlzY2hhcHRl cnt/dGhpc2NoYXB0ZXIBMTcwNCw1NjAzOQogXHhkZWZcdGhpc2NoYXB0ZXJ7QXBwZW5kaXggXGFw cGVuZGl4bGV0dGVyOiBcbm9leHBhbmRcdGhpc2NoYXB0ZXJuYW1lfX9sZXR0ZXI6ATE3MDQsNTYw MzkKLXtcY2hhcHRlcm5vZm9udHMlf25vZm9udHMlATE3MDUsNTYxMTEKK3tcY2hhcHRlcm5vZm9u dHMlf25vZm9udHMBMTcwNSw1NjExMQorXGVkZWZcdGVtcHt/dGVtcAExNzA2LDU2MTI5CiAgIHsj MX17QXBwZW5kaXggXGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIBMTcwNyw1NjE2NwogXGFwcGVuZGl4 bm9kZXJlZiAlf25vZGVyZWYBMTcxMCw1NjI2NwotXGdsb2JhbFxsZXRcc2VjdGlvbiA9IFxhcHBl bmRpeHNlY389ATE3MTEsNTYyODYKLVxnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcYXBwZW5kaXhz dWJzZWN/PQExNzEyLDU2MzIxCi1cZ2xvYmFsXGxldFxzdWJzdWJzZWN0aW9uID0gXGFwcGVuZGl4 c3Vic3Vic2Vjfz0BMTcxMyw1NjM2MgotXG91dGVyXGRlZlx0b3B7f1x0b3ABMTcxNiw1NjQxMwot XG91dGVyXGRlZlx1bm51bWJlcmVke39cdW5udW1iZXJlZAExNzE3LDU2NDUzCi1cZGVmXHVubnVt YmVyZWR6enogIzF7f1x1bm51bWJlcmVkenp6ATE3MTgsNTY1MDAKLXtcY2hhcHRlcm5vZm9udHMl f25vZm9udHMlATE3MjIsNTY2NjMKLVxnbG9iYWxcbGV0XHNlY3Rpb24gPSBcdW5udW1iZXJlZHNl Y389ATE3MjcsNTY4MTMKLVxnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcdW5udW1iZXJlZHN1YnNl Y389ATE3MjgsNTY4NTAKLVxnbG9iYWxcbGV0XHN1YnN1YnNlY3Rpb24gPSBcdW5udW1iZXJlZHN1 YnN1YnNlY389ATE3MjksNTY4OTMKLVxvdXRlclxkZWZcbnVtYmVyZWRzZWN7f1xudW1iZXJlZHNl YwExNzMyLDU2OTQ2Ci1cZGVmXHNlY3p6eiAjMXt/XHNlY3p6egExNzMzLDU2OTg3Ci17XGNoYXB0 ZXJub2ZvbnRzJX9ub2ZvbnRzJQExNzM2LDU3MTQzCi1cb3V0ZXJcZGVmXGFwcGVuZGl4c2VjdGlv bnt/XGFwcGVuZGl4c2VjdGlvbgExNzQ1LDU3MzI5Ci1cb3V0ZXJcZGVmXGFwcGVuZGl4c2Vje39c YXBwZW5kaXhzZWMBMTc0Niw1NzM4NgotXGRlZlxhcHBlbmRpeHNlY3Rpb256enogIzF7f1xhcHBl bmRpeHNlY3Rpb256enoBMTc0Nyw1NzQzOQorXGdsb2JhbFxsZXRcc2VjdGlvbiA9IFxhcHBlbmRp eHNlY39zZWN0aW9uATE3MTEsNTYyODYKK1xnbG9iYWxcbGV0XHNlY3Rpb24gPSBcYXBwZW5kaXhz ZWN/c2VjATE3MTEsNTYyODYKK1xnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcYXBwZW5kaXhzdWJz ZWN/c3Vic2VjdGlvbgExNzEyLDU2MzIxCitcZ2xvYmFsXGxldFxzdWJzZWN0aW9uID0gXGFwcGVu ZGl4c3Vic2Vjf3N1YnNlYwExNzEyLDU2MzIxCitcZ2xvYmFsXGxldFxzdWJzdWJzZWN0aW9uID0g XGFwcGVuZGl4c3Vic3Vic2Vjf3N1YnN1YnNlY3Rpb24BMTcxMyw1NjM2MgorXGdsb2JhbFxsZXRc c3Vic3Vic2VjdGlvbiA9IFxhcHBlbmRpeHN1YnN1YnNlY39zdWJzdWJzZWMBMTcxMyw1NjM2Mgor XG91dGVyXGRlZlx0b3B7f3RvcAExNzE2LDU2NDEzCitcb3V0ZXJcZGVmXHVubnVtYmVyZWR7f3Vu bnVtYmVyZWQBMTcxNyw1NjQ1MworXGRlZlx1bm51bWJlcmVkenp6ICMxe391bm51bWJlcmVkenp6 ATE3MTgsNTY1MDAKK1xnZGVmXHRoaXNjaGFwdGVye390aGlzY2hhcHRlcgExNzIxLDU2NjE5Citc Z2RlZlx0aGlzY2hhcHRlcnsjMX1cZ2RlZlx0aGlzc2VjdGlvbnt/dGhpc3NlY3Rpb24BMTcyMSw1 NjYxOQore1xjaGFwdGVybm9mb250cyV/bm9mb250cwExNzIyLDU2NjYzCitcZWRlZlx0ZW1we390 ZW1wATE3MjMsNTY2ODEKK1xnbG9iYWxcbGV0XHNlY3Rpb24gPSBcdW5udW1iZXJlZHNlY39zZWN0 aW9uATE3MjcsNTY4MTMKK1xnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcdW5udW1iZXJlZHN1YnNl Y39zdWJzZWN0aW9uATE3MjgsNTY4NTAKK1xnbG9iYWxcbGV0XHN1YnN1YnNlY3Rpb24gPSBcdW5u dW1iZXJlZHN1YnN1YnNlY39zdWJzdWJzZWN0aW9uATE3MjksNTY4OTMKK1xvdXRlclxkZWZcbnVt YmVyZWRzZWN7f251bWJlcmVkc2VjATE3MzIsNTY5NDYKK1xkZWZcc2Vjenp6ICMxe39zZWN6enoB MTczMyw1Njk4NworXGdkZWZcdGhpc3NlY3Rpb257f3RoaXNzZWN0aW9uATE3MzUsNTcwNzkKK3tc Y2hhcHRlcm5vZm9udHMlf25vZm9udHMBMTczNiw1NzE0MworXGVkZWZcdGVtcHt/dGVtcAExNzM3 LDU3MTYxCitcb3V0ZXJcZGVmXGFwcGVuZGl4c2VjdGlvbnt/YXBwZW5kaXhzZWN0aW9uATE3NDUs NTczMjkKK1xvdXRlclxkZWZcYXBwZW5kaXhzZWN0aW9ue1xwYXJzZWFyZ1xhcHBlbmRpeHNlY3Rp b256enp9f3NlY3Rpb256enoBMTc0NSw1NzMyOQorXG91dGVyXGRlZlxhcHBlbmRpeHNlY3t/YXBw ZW5kaXhzZWMBMTc0Niw1NzM4NgorXG91dGVyXGRlZlxhcHBlbmRpeHNlY3tccGFyc2VhcmdcYXBw ZW5kaXhzZWN0aW9uenp6fX9zZWN0aW9uenp6ATE3NDYsNTczODYKK1xkZWZcYXBwZW5kaXhzZWN0 aW9uenp6ICMxe39hcHBlbmRpeHNlY3Rpb256enoBMTc0Nyw1NzQzOQorXGdkZWZcdGhpc3NlY3Rp b257f3RoaXNzZWN0aW9uATE3NDksNTc1NTEKIFxnZGVmXHRoaXNzZWN0aW9ueyMxfVxzZWNoZWFk aW5nIHsjMX17XGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIBMTc0OSw1NzU1MQote1xjaGFwdGVybm9m b250cyV/bm9mb250cyUBMTc1MCw1NzYxOQore1xjaGFwdGVybm9mb250cyV/bm9mb250cwExNzUw LDU3NjE5CitcZWRlZlx0ZW1we390ZW1wATE3NTEsNTc2MzcKIHsjMX17XGFwcGVuZGl4bGV0dGVy fX9sZXR0ZXIBMTc1Miw1NzY3NQogXGFwcGVuZGl4bm9kZXJlZiAlf25vZGVyZWYBMTc1NSw1Nzc3 NQotXG91dGVyXGRlZlx1bm51bWJlcmVkc2Vje39cdW5udW1iZXJlZHNlYwExNzU5LDU3ODE1Ci1c ZGVmXHVubnVtYmVyZWRzZWN6enogIzF7f1x1bm51bWJlcmVkc2Vjenp6ATE3NjAsNTc4NjgKLXtc Y2hhcHRlcm5vZm9udHMlf25vZm9udHMlATE3NjIsNTc5NjMKLVxvdXRlclxkZWZcbnVtYmVyZWRz dWJzZWN7f1xudW1iZXJlZHN1YnNlYwExNzcwLDU4MTMxCi1cZGVmXG51bWJlcmVkc3Vic2Vjenp6 ICMxe39cbnVtYmVyZWRzdWJzZWN6enoBMTc3MSw1ODE4Ngote1xjaGFwdGVybm9mb250cyV/bm9m b250cyUBMTc3NCw1ODM2NQotXG91dGVyXGRlZlxhcHBlbmRpeHN1YnNlY3t/XGFwcGVuZGl4c3Vi c2VjATE3ODMsNTg1NjkKLVxkZWZcYXBwZW5kaXhzdWJzZWN6enogIzF7f1xhcHBlbmRpeHN1YnNl Y3p6egExNzg0LDU4NjI0Citcb3V0ZXJcZGVmXHVubnVtYmVyZWRzZWN7f3VubnVtYmVyZWRzZWMB MTc1OSw1NzgxNQorXGRlZlx1bm51bWJlcmVkc2Vjenp6ICMxe391bm51bWJlcmVkc2Vjenp6ATE3 NjAsNTc4NjgKK1xwbGFpbnNlY2hlYWRpbmcgeyMxfVxnZGVmXHRoaXNzZWN0aW9ue390aGlzc2Vj dGlvbgExNzYxLDU3OTE5Cit7XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzATE3NjIsNTc5NjMKK1xl ZGVmXHRlbXB7f3RlbXABMTc2Myw1Nzk4MQorXG91dGVyXGRlZlxudW1iZXJlZHN1YnNlY3t/bnVt YmVyZWRzdWJzZWMBMTc3MCw1ODEzMQorXGRlZlxudW1iZXJlZHN1YnNlY3p6eiAjMXt/bnVtYmVy ZWRzdWJzZWN6enoBMTc3MSw1ODE4NgorXGdkZWZcdGhpc3NlY3Rpb257f3RoaXNzZWN0aW9uATE3 NzIsNTgyMzUKK3tcY2hhcHRlcm5vZm9udHMlf25vZm9udHMBMTc3NCw1ODM2NQorXGVkZWZcdGVt cHt/dGVtcAExNzc1LDU4MzgzCitcb3V0ZXJcZGVmXGFwcGVuZGl4c3Vic2Vje39hcHBlbmRpeHN1 YnNlYwExNzgzLDU4NTY5Citcb3V0ZXJcZGVmXGFwcGVuZGl4c3Vic2Vje1xwYXJzZWFyZ1xhcHBl bmRpeHN1YnNlY3p6en1/c3Vic2Vjenp6ATE3ODMsNTg1NjkKK1xkZWZcYXBwZW5kaXhzdWJzZWN6 enogIzF7f2FwcGVuZGl4c3Vic2Vjenp6ATE3ODQsNTg2MjQKK1xnZGVmXHRoaXNzZWN0aW9ue390 aGlzc2VjdGlvbgExNzg1LDU4Njc3CiBcc3Vic2VjaGVhZGluZyB7IzF9e1xhcHBlbmRpeGxldHRl cn1/bGV0dGVyATE3ODYsNTg3NDYKLXtcY2hhcHRlcm5vZm9udHMlf25vZm9udHMlATE3ODcsNTg4 MTEKK3tcY2hhcHRlcm5vZm9udHMlf25vZm9udHMBMTc4Nyw1ODgxMQorXGVkZWZcdGVtcHt/dGVt cAExNzg4LDU4ODI5CiB7IzF9e1xhcHBlbmRpeGxldHRlcn1/bGV0dGVyATE3ODksNTg4NzAKIFxh cHBlbmRpeG5vZGVyZWYgJX9ub2RlcmVmATE3OTIsNTg5ODUKLVxvdXRlclxkZWZcdW5udW1iZXJl ZHN1YnNlY3t/XHVubnVtYmVyZWRzdWJzZWMBMTc5Niw1OTAyNQotXGRlZlx1bm51bWJlcmVkc3Vi c2Vjenp6ICMxe39cdW5udW1iZXJlZHN1YnNlY3p6egExNzk3LDU5MDg0Ci17XGNoYXB0ZXJub2Zv bnRzJX9ub2ZvbnRzJQExNzk5LDU5MTg1Ci1cb3V0ZXJcZGVmXG51bWJlcmVkc3Vic3Vic2Vje39c bnVtYmVyZWRzdWJzdWJzZWMBMTgwNyw1OTM1NgotXGRlZlxudW1iZXJlZHN1YnN1YnNlY3p6eiAj MXt/XG51bWJlcmVkc3Vic3Vic2Vjenp6ATE4MDgsNTk0MTcKLXtcY2hhcHRlcm5vZm9udHMlf25v Zm9udHMlATE4MTIsNTk2MTQKLVxvdXRlclxkZWZcYXBwZW5kaXhzdWJzdWJzZWN7f1xhcHBlbmRp eHN1YnN1YnNlYwExODIzLDU5ODQ3Ci1cZGVmXGFwcGVuZGl4c3Vic3Vic2Vjenp6ICMxe39cYXBw ZW5kaXhzdWJzdWJzZWN6enoBMTgyNCw1OTkwOAorXG91dGVyXGRlZlx1bm51bWJlcmVkc3Vic2Vj e391bm51bWJlcmVkc3Vic2VjATE3OTYsNTkwMjUKK1xkZWZcdW5udW1iZXJlZHN1YnNlY3p6eiAj MXt/dW5udW1iZXJlZHN1YnNlY3p6egExNzk3LDU5MDg0CitccGxhaW5zZWNoZWFkaW5nIHsjMX1c Z2RlZlx0aGlzc2VjdGlvbnt/dGhpc3NlY3Rpb24BMTc5OCw1OTE0MQore1xjaGFwdGVybm9mb250 cyV/bm9mb250cwExNzk5LDU5MTg1CitcZWRlZlx0ZW1we390ZW1wATE4MDAsNTkyMDMKK1xvdXRl clxkZWZcbnVtYmVyZWRzdWJzdWJzZWN7f251bWJlcmVkc3Vic3Vic2VjATE4MDcsNTkzNTYKK1xk ZWZcbnVtYmVyZWRzdWJzdWJzZWN6enogIzF7f251bWJlcmVkc3Vic3Vic2Vjenp6ATE4MDgsNTk0 MTcKK1xnZGVmXHRoaXNzZWN0aW9ue390aGlzc2VjdGlvbgExODA5LDU5NDcyCit7XGNoYXB0ZXJu b2ZvbnRzJX9ub2ZvbnRzATE4MTIsNTk2MTQKK1xlZGVmXHRlbXB7f3RlbXABMTgxMyw1OTYzMgor XG91dGVyXGRlZlxhcHBlbmRpeHN1YnN1YnNlY3t/YXBwZW5kaXhzdWJzdWJzZWMBMTgyMyw1OTg0 NworXG91dGVyXGRlZlxhcHBlbmRpeHN1YnN1YnNlY3tccGFyc2VhcmdcYXBwZW5kaXhzdWJzdWJz ZWN6enp9f3N1YnN1YnNlY3p6egExODIzLDU5ODQ3CitcZGVmXGFwcGVuZGl4c3Vic3Vic2Vjenp6 ICMxe39hcHBlbmRpeHN1YnN1YnNlY3p6egExODI0LDU5OTA4CitcZ2RlZlx0aGlzc2VjdGlvbnt/ dGhpc3NlY3Rpb24BMTgyNSw1OTk2NwogICB7XGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIBMTgyNyw2 MDA0Nwote1xjaGFwdGVybm9mb250cyV/bm9mb250cyUBMTgyOCw2MDExMwore1xjaGFwdGVybm9m b250cyV/bm9mb250cwExODI4LDYwMTEzCitcZWRlZlx0ZW1we390ZW1wATE4MjksNjAxMzEKICAg e1xhcHBlbmRpeGxldHRlcn1/bGV0dGVyATE4MzAsNjAxNzgKIFxhcHBlbmRpeG5vZGVyZWYgJX9u b2RlcmVmATE4MzQsNjAzMTIKLVxvdXRlclxkZWZcdW5udW1iZXJlZHN1YnN1YnNlY3t/XHVubnVt YmVyZWRzdWJzdWJzZWMBMTgzOCw2MDM1MgotXGRlZlx1bm51bWJlcmVkc3Vic3Vic2Vjenp6ICMx e39cdW5udW1iZXJlZHN1YnN1YnNlY3p6egExODM5LDYwNDE3Ci17XGNoYXB0ZXJub2ZvbnRzJX9u b2ZvbnRzJQExODQxLDYwNTI0Ci1cZGVmXGluZm90b3B7f1xpbmZvdG9wATE4NTEsNjA4NTMKLVxk ZWZcaW5mb3VubnVtYmVyZWR7f1xpbmZvdW5udW1iZXJlZAExODUyLDYwODkxCi1cZGVmXGluZm91 bm51bWJlcmVkc2Vje39caW5mb3VubnVtYmVyZWRzZWMBMTg1Myw2MDkzNgotXGRlZlxpbmZvdW5u dW1iZXJlZHN1YnNlY3t/XGluZm91bm51bWJlcmVkc3Vic2VjATE4NTQsNjA5ODcKLVxkZWZcaW5m b3VubnVtYmVyZWRzdWJzdWJzZWN7f1xpbmZvdW5udW1iZXJlZHN1YnN1YnNlYwExODU1LDYxMDQ0 Ci1cZGVmXGluZm9hcHBlbmRpeHt/XGluZm9hcHBlbmRpeAExODU3LDYxMTA4Ci1cZGVmXGluZm9h cHBlbmRpeHNlY3t/XGluZm9hcHBlbmRpeHNlYwExODU4LDYxMTQ5Ci1cZGVmXGluZm9hcHBlbmRp eHN1YnNlY3t/XGluZm9hcHBlbmRpeHN1YnNlYwExODU5LDYxMTk2Ci1cZGVmXGluZm9hcHBlbmRp eHN1YnN1YnNlY3t/XGluZm9hcHBlbmRpeHN1YnN1YnNlYwExODYwLDYxMjQ5Ci1cZGVmXGluZm9j aGFwdGVye39caW5mb2NoYXB0ZXIBMTg2Miw2MTMwOQotXGRlZlxpbmZvc2VjdGlvbnt/XGluZm9z ZWN0aW9uATE4NjMsNjEzNDgKLVxkZWZcaW5mb3N1YnNlY3Rpb257f1xpbmZvc3Vic2VjdGlvbgEx ODY0LDYxMzg3Ci1cZGVmXGluZm9zdWJzdWJzZWN0aW9ue39caW5mb3N1YnN1YnNlY3Rpb24BMTg2 NSw2MTQzMgotXGdsb2JhbFxsZXRcc2VjdGlvbiA9IFxudW1iZXJlZHNlY389ATE4NzAsNjE2NjkK LVxnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcbnVtYmVyZWRzdWJzZWN/PQExODcxLDYxNzA0Ci1c Z2xvYmFsXGxldFxzdWJzdWJzZWN0aW9uID0gXG51bWJlcmVkc3Vic3Vic2Vjfz0BMTg3Miw2MTc0 NQotXGRlZlxtYWpvcmhlYWRpbmd7f1xtYWpvcmhlYWRpbmcBMTg4Niw2MjI1MgotXGRlZlxtYWpv cmhlYWRpbmd6enogIzF7f1xtYWpvcmhlYWRpbmd6enoBMTg4Nyw2MjI5NwotXGRlZlxjaGFwaGVh ZGluZ3t/XGNoYXBoZWFkaW5nATE4OTMsNjI1MzAKLVxkZWZcY2hhcGhlYWRpbmd6enogIzF7f1xj aGFwaGVhZGluZ3p6egExODk0LDYyNTczCi1cZGVmXGhlYWRpbmd7f1xoZWFkaW5nATE4OTksNjI3 NjgKLVxkZWZcc3ViaGVhZGluZ3t/XHN1YmhlYWRpbmcBMTkwMSw2MjgwNQotXGRlZlxzdWJzdWJo ZWFkaW5ne39cc3Vic3ViaGVhZGluZwExOTAzLDYyODQ4Ci1cZGVmXGRvYnJlYWsjMSMye39cZG9i cmVhawExOTEwLDYzMTI1Ci1cZGVmXHNldGNoYXB0ZXJzdHlsZSAjMSB7f1xzZXRjaGFwdGVyc3R5 bGUBMTkxMiw2MzIwMwotXGRlZlxjaGFwYnJlYWt7f1xjaGFwYnJlYWsBMTkxOSw2MzQ1OAotXGRl ZlxjaGFwcGFnZXJ7f1xjaGFwcGFnZXIBMTkyMCw2MzUwOAotXGRlZlxjaGFwb2RkcGFnZXt/XGNo YXBvZGRwYWdlATE5MjEsNjM1NDYKLVxkZWZcc2V0Y2hhcHRlcm5ld3BhZ2UgIzEge39cc2V0Y2hh cHRlcm5ld3BhZ2UBMTkyMyw2MzYyNQotXGRlZlxDSEFQUEFHb2Zme39cQ0hBUFBBR29mZgExOTI1 LDYzNjgyCi1cZGVmXENIQVBQQUdvbnt/XENIQVBQQUdvbgExOTI5LDYzNzc2Ci1cZ2xvYmFsXGRl ZlxIRUFESU5HU29ue39cSEVBRElOR1NvbgExOTMyLDYzODY3Ci1cZGVmXENIQVBQQUdvZGR7f1xD SEFQUEFHb2RkATE5MzQsNjM5MDkKLVxnbG9iYWxcZGVmXEhFQURJTkdTb257f1xIRUFESU5HU29u ATE5MzcsNjQwMDUKLVxkZWZcQ0hBUEZwbGFpbnt/XENIQVBGcGxhaW4BMTk0MSw2NDA1OQotXGRl ZlxjaGZwbGFpbiAjMSMye39cY2hmcGxhaW4BMTk0NSw2NDE1MQotXGRlZlx1bm5jaGZwbGFpbiAj MXt/XHVubmNoZnBsYWluATE5NTYsNjQzNzQKLVxkZWZcdW5uY2hmb3BlbiAjMXt/XHVubmNoZm9w ZW4BMTk2NCw2NDYwMwotXGRlZlxjaGZvcGVuICMxIzJ7f1xjaGZvcGVuATE5NzAsNjQ4MTEKLVxk ZWZcQ0hBUEZvcGVue39cQ0hBUEZvcGVuATE5NzUsNjQ5NTUKLVxkZWZcc3Vic2VjaGVhZGluZ2Jy ZWFre39cc3Vic2VjaGVhZGluZ2JyZWFrATE5ODIsNjUxNzMKLVxkZWZcc2VjaGVhZGluZ2JyZWFr e39cc2VjaGVhZGluZ2JyZWFrATE5ODUsNjUzMDIKLVxkZWZcc2VjaGVhZGluZyAjMSMyIzN7f1xz ZWNoZWFkaW5nATE5OTMsNjU1ODQKLVxkZWZccGxhaW5zZWNoZWFkaW5nICMxe39ccGxhaW5zZWNo ZWFkaW5nATE5OTQsNjU2NDAKLVxkZWZcc2VjaGVhZGluZ2kgIzF7f1xzZWNoZWFkaW5naQExOTk1 LDY1NjgzCi1cZGVmXHN1YnNlY2hlYWRpbmcgIzEjMiMzIzR7f1xzdWJzZWNoZWFkaW5nATIwMDYs NjYwNTEKLVxkZWZcc3Vic2VjaGVhZGluZ2kgIzF7f1xzdWJzZWNoZWFkaW5naQEyMDA3LDY2MTE4 Ci1cZGVmXHN1YnN1YnNlY2ZvbnRze39cc3Vic3Vic2VjZm9udHMBMjAxNCw2NjQxNQotXGRlZlxz dWJzdWJzZWNoZWFkaW5nICMxIzIjMyM0IzV7f1xzdWJzdWJzZWNoZWFkaW5nATIwMTcsNjY1MzgK LVxkZWZcc3Vic3Vic2VjaGVhZGluZ2kgIzF7f1xzdWJzdWJzZWNoZWFkaW5naQEyMDE4LDY2NjE2 Ci1cZGVmXHN0YXJ0Y29udGVudHMjMXt/XHN0YXJ0Y29udGVudHMBMjAzMiw2NzA4OAotICAgXHVu bnVtYmNoYXBtYWNyb3sjMX1cZGVmXHRoaXNjaGFwdGVye39cdGhpc2NoYXB0ZXIBMjA0MCw2NzM2 MQotXG91dGVyXGRlZlxjb250ZW50c3t/XGNvbnRlbnRzATIwNDksNjc3MjAKLVxvdXRlclxkZWZc c3VtbWFyeWNvbnRlbnRze39cc3VtbWFyeWNvbnRlbnRzATIwNTcsNjc4NjQKLSAgICAgIFxkZWZc c2VjZW50cnkgIyMxIyMyIyMzIyM0e39cc2VjZW50cnkBMjA2Nyw2ODIzNQotICAgICAgXGRlZlx1 bm51bWJzZWNlbnRyeSAjIzEjIzJ7f1x1bm51bWJzZWNlbnRyeQEyMDY4LDY4MjcwCi0gICAgICBc ZGVmXHN1YnNlY2VudHJ5ICMjMSMjMiMjMyMjNCMjNXt/XHN1YnNlY2VudHJ5ATIwNjksNjgzMDUK LSAgICAgIFxkZWZcdW5udW1ic3Vic2VjZW50cnkgIyMxIyMye39cdW5udW1ic3Vic2VjZW50cnkB MjA3MCw2ODM0NgotICAgICAgXGRlZlxzdWJzdWJzZWNlbnRyeSAjIzEjIzIjIzMjIzQjIzUjIzZ7 f1xzdWJzdWJzZWNlbnRyeQEyMDcxLDY4Mzg0Ci0gICAgICBcZGVmXHVubnVtYnN1YnN1YnNlY2Vu dHJ5ICMjMSMjMnt/XHVubnVtYnN1YnN1YnNlY2VudHJ5ATIwNzIsNjg0MzEKLVxkZWZcY2hhcGVu dHJ5IzEjMiMze39cY2hhcGVudHJ5ATIwODUsNjg4NjUKLVxkZWZcc2hvcnRjaGFwZW50cnkjMSMy IzN7f1xzaG9ydGNoYXBlbnRyeQEyMDg4LDY4OTgyCitcb3V0ZXJcZGVmXHVubnVtYmVyZWRzdWJz dWJzZWN7f3VubnVtYmVyZWRzdWJzdWJzZWMBMTgzOCw2MDM1MgorXGRlZlx1bm51bWJlcmVkc3Vi c3Vic2Vjenp6ICMxe391bm51bWJlcmVkc3Vic3Vic2Vjenp6ATE4MzksNjA0MTcKK1xwbGFpbnNl Y2hlYWRpbmcgeyMxfVxnZGVmXHRoaXNzZWN0aW9ue390aGlzc2VjdGlvbgExODQwLDYwNDgwCit7 XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzATE4NDEsNjA1MjQKK1xlZGVmXHRlbXB7f3RlbXABMTg0 Miw2MDU0MgorXGRlZlxpbmZvdG9we39pbmZvdG9wATE4NTEsNjA4NTMKK1xkZWZcaW5mb3VubnVt YmVyZWR7f2luZm91bm51bWJlcmVkATE4NTIsNjA4OTEKK1xkZWZcaW5mb3VubnVtYmVyZWRzZWN7 f2luZm91bm51bWJlcmVkc2VjATE4NTMsNjA5MzYKK1xkZWZcaW5mb3VubnVtYmVyZWRzdWJzZWN7 f2luZm91bm51bWJlcmVkc3Vic2VjATE4NTQsNjA5ODcKK1xkZWZcaW5mb3VubnVtYmVyZWRzdWJz dWJzZWN7f2luZm91bm51bWJlcmVkc3Vic3Vic2VjATE4NTUsNjEwNDQKK1xkZWZcaW5mb2FwcGVu ZGl4e39pbmZvYXBwZW5kaXgBMTg1Nyw2MTEwOAorXGRlZlxpbmZvYXBwZW5kaXh7XHBhcnNlYXJn XGFwcGVuZGl4enp6fX96enoBMTg1Nyw2MTEwOAorXGRlZlxpbmZvYXBwZW5kaXhzZWN7f2luZm9h cHBlbmRpeHNlYwExODU4LDYxMTQ5CitcZGVmXGluZm9hcHBlbmRpeHNlY3tccGFyc2VhcmdcYXBw ZW5kaXhzZWN6enp9f3NlY3p6egExODU4LDYxMTQ5CitcZGVmXGluZm9hcHBlbmRpeHN1YnNlY3t/ aW5mb2FwcGVuZGl4c3Vic2VjATE4NTksNjExOTYKK1xkZWZcaW5mb2FwcGVuZGl4c3Vic2Vje1xw YXJzZWFyZ1xhcHBlbmRpeHN1YnNlY3p6en1/c3Vic2Vjenp6ATE4NTksNjExOTYKK1xkZWZcaW5m b2FwcGVuZGl4c3Vic3Vic2Vje39pbmZvYXBwZW5kaXhzdWJzdWJzZWMBMTg2MCw2MTI0OQorXGRl ZlxpbmZvYXBwZW5kaXhzdWJzdWJzZWN7XHBhcnNlYXJnXGFwcGVuZGl4c3Vic3Vic2Vjenp6fX9z dWJzdWJzZWN6enoBMTg2MCw2MTI0OQorXGRlZlxpbmZvY2hhcHRlcnt/aW5mb2NoYXB0ZXIBMTg2 Miw2MTMwOQorXGRlZlxpbmZvY2hhcHRlcntccGFyc2VhcmdcY2hhcHRlcnp6en1/enp6ATE4NjIs NjEzMDkKK1xkZWZcaW5mb3NlY3Rpb257f2luZm9zZWN0aW9uATE4NjMsNjEzNDgKK1xkZWZcaW5m b3NlY3Rpb257XHBhcnNlYXJnXHNlY3Rpb256enp9f3p6egExODYzLDYxMzQ4CitcZGVmXGluZm9z dWJzZWN0aW9ue39pbmZvc3Vic2VjdGlvbgExODY0LDYxMzg3CitcZGVmXGluZm9zdWJzZWN0aW9u e1xwYXJzZWFyZ1xzdWJzZWN0aW9uenp6fX96enoBMTg2NCw2MTM4NworXGRlZlxpbmZvc3Vic3Vi c2VjdGlvbnt/aW5mb3N1YnN1YnNlY3Rpb24BMTg2NSw2MTQzMgorXGRlZlxpbmZvc3Vic3Vic2Vj dGlvbntccGFyc2Vhcmdcc3Vic3Vic2VjdGlvbnp6en1/enp6ATE4NjUsNjE0MzIKK1xnbG9iYWxc bGV0XHNlY3Rpb24gPSBcbnVtYmVyZWRzZWN/c2VjdGlvbgExODcwLDYxNjY5CitcZ2xvYmFsXGxl dFxzdWJzZWN0aW9uID0gXG51bWJlcmVkc3Vic2Vjf3N1YnNlY3Rpb24BMTg3MSw2MTcwNAorXGds b2JhbFxsZXRcc3Vic3Vic2VjdGlvbiA9IFxudW1iZXJlZHN1YnN1YnNlY39zdWJzdWJzZWN0aW9u ATE4NzIsNjE3NDUKK1xkZWZcbWFqb3JoZWFkaW5ne39tYWpvcmhlYWRpbmcBMTg4Niw2MjI1Mgor XGRlZlxtYWpvcmhlYWRpbmd6enogIzF7f21ham9yaGVhZGluZ3p6egExODg3LDYyMjk3CitcZGVm XGNoYXBoZWFkaW5ne39jaGFwaGVhZGluZwExODkzLDYyNTMwCitcZGVmXGNoYXBoZWFkaW5nenp6 ICMxe39jaGFwaGVhZGluZ3p6egExODk0LDYyNTczCitcZGVmXGhlYWRpbmd7f2hlYWRpbmcBMTg5 OSw2Mjc2OAorXGRlZlxzdWJoZWFkaW5ne39zdWJoZWFkaW5nATE5MDEsNjI4MDUKK1xkZWZcc3Vi c3ViaGVhZGluZ3t/c3Vic3ViaGVhZGluZwExOTAzLDYyODQ4CitcZGVmXGRvYnJlYWsjMSMye39k b2JyZWFrATE5MTAsNjMxMjUKK1xkZWZcc2V0Y2hhcHRlcnN0eWxlICMxIHt/c2V0Y2hhcHRlcnN0 eWxlATE5MTIsNjMyMDMKK1xkZWZcY2hhcGJyZWFre39jaGFwYnJlYWsBMTkxOSw2MzQ1OAorXGRl ZlxjaGFwcGFnZXJ7f2NoYXBwYWdlcgExOTIwLDYzNTA4CitcZGVmXGNoYXBvZGRwYWdle39jaGFw b2RkcGFnZQExOTIxLDYzNTQ2CitcZGVmXHNldGNoYXB0ZXJuZXdwYWdlICMxIHt/c2V0Y2hhcHRl cm5ld3BhZ2UBMTkyMyw2MzYyNQorXGRlZlxDSEFQUEFHb2Zme39DSEFQUEFHb2ZmATE5MjUsNjM2 ODIKK1xnbG9iYWxcbGV0XHBjaGFwc2VwbWFjcm89XGNoYXBicmVha39wY2hhcHNlcG1hY3JvATE5 MjYsNjM2OTkKK1xnbG9iYWxcbGV0XHBhZ2VhbGlnbm1hY3JvPVxjaGFwcGFnZXJ9f3BhZ2VhbGln bm1hY3JvATE5MjcsNjM3MzYKK1xkZWZcQ0hBUFBBR29ue39DSEFQUEFHb24BMTkyOSw2Mzc3Ngor XGdsb2JhbFxsZXRccGNoYXBzZXBtYWNybz1cY2hhcHBhZ2Vyf3BjaGFwc2VwbWFjcm8BMTkzMCw2 Mzc5MgorXGdsb2JhbFxsZXRccGFnZWFsaWdubWFjcm89XGNoYXBwYWdlcn9wYWdlYWxpZ25tYWNy bwExOTMxLDYzODI5CitcZ2xvYmFsXGRlZlxIRUFESU5HU29ue39IRUFESU5HU29uATE5MzIsNjM4 NjcKK1xkZWZcQ0hBUFBBR29kZHt/Q0hBUFBBR29kZAExOTM0LDYzOTA5CitcZ2xvYmFsXGxldFxw Y2hhcHNlcG1hY3JvPVxjaGFwb2RkcGFnZX9wY2hhcHNlcG1hY3JvATE5MzUsNjM5MjYKK1xnbG9i YWxcbGV0XHBhZ2VhbGlnbm1hY3JvPVxjaGFwb2RkcGFnZX9wYWdlYWxpZ25tYWNybwExOTM2LDYz OTY1CitcZ2xvYmFsXGRlZlxIRUFESU5HU29ue39IRUFESU5HU29uATE5MzcsNjQwMDUKK1xkZWZc Q0hBUEZwbGFpbnt/Q0hBUEZwbGFpbgExOTQxLDY0MDU5CitcZ2xvYmFsXGxldFxjaGFwbWFjcm89 XGNoZnBsYWluf2NoYXBtYWNybwExOTQyLDY0MDc2CitcZ2xvYmFsXGxldFx1bm51bWJjaGFwbWFj cm89XHVubmNoZnBsYWlufX91bm51bWJjaGFwbWFjcm8BMTk0Myw2NDEwOAorXGRlZlxjaGZwbGFp biAjMSMye39jaGZwbGFpbgExOTQ1LDY0MTUxCitcZGVmXHVubmNoZnBsYWluICMxe391bm5jaGZw bGFpbgExOTU2LDY0Mzc0CitcZGVmXHVubmNoZm9wZW4gIzF7f3VubmNoZm9wZW4BMTk2NCw2NDYw MworXGRlZlxjaGZvcGVuICMxIzJ7f2NoZm9wZW4BMTk3MCw2NDgxMQorXGRlZlxDSEFQRm9wZW57 f0NIQVBGb3BlbgExOTc1LDY0OTU1CitcZ2xvYmFsXGxldFxjaGFwbWFjcm89XGNoZm9wZW5/Y2hh cG1hY3JvATE5NzYsNjQ5NzEKK1xnbG9iYWxcbGV0XHVubnVtYmNoYXBtYWNybz1cdW5uY2hmb3Bl bn1/dW5udW1iY2hhcG1hY3JvATE5NzcsNjUwMDIKK1xkZWZcc3Vic2VjaGVhZGluZ2JyZWFre39z dWJzZWNoZWFkaW5nYnJlYWsBMTk4Miw2NTE3MworXGRlZlxzZWNoZWFkaW5nYnJlYWt7f3NlY2hl YWRpbmdicmVhawExOTg1LDY1MzAyCitcbGV0XHBhcmFncmFwaGluZGVudD1cY29tbWVudH9wYXJh Z3JhcGhpbmRlbnQBMTk4OCw2NTQyOAorXGRlZlxzZWNoZWFkaW5nICMxIzIjM3t/c2VjaGVhZGlu ZwExOTkzLDY1NTg0CitcZGVmXHBsYWluc2VjaGVhZGluZyAjMXt/cGxhaW5zZWNoZWFkaW5nATE5 OTQsNjU2NDAKK1xkZWZcc2VjaGVhZGluZ2kgIzF7f3NlY2hlYWRpbmdpATE5OTUsNjU2ODMKK1xk ZWZcc3Vic2VjaGVhZGluZyAjMSMyIzMjNHt/c3Vic2VjaGVhZGluZwEyMDA2LDY2MDUxCitcZGVm XHN1YnNlY2hlYWRpbmdpICMxe39zdWJzZWNoZWFkaW5naQEyMDA3LDY2MTE4CitcZGVmXHN1YnN1 YnNlY2ZvbnRze39zdWJzdWJzZWNmb250cwEyMDE0LDY2NDE1CitcZGVmXHN1YnN1YnNlY2hlYWRp bmcgIzEjMiMzIzQjNXt/c3Vic3Vic2VjaGVhZGluZwEyMDE3LDY2NTM4CitcZGVmXHN1YnN1YnNl Y2hlYWRpbmdpICMxe39zdWJzdWJzZWNoZWFkaW5naQEyMDE4LDY2NjE2CitcZGVmXHN0YXJ0Y29u dGVudHMjMXt/c3RhcnRjb250ZW50cwEyMDMyLDY3MDg4CisgICBcdW5udW1iY2hhcG1hY3JveyMx fVxkZWZcdGhpc2NoYXB0ZXJ7f3RoaXNjaGFwdGVyATIwNDAsNjczNjEKK1xvdXRlclxkZWZcY29u dGVudHN7f2NvbnRlbnRzATIwNDksNjc3MjAKK1xvdXRlclxkZWZcc3VtbWFyeWNvbnRlbnRze39z dW1tYXJ5Y29udGVudHMBMjA1Nyw2Nzg2NAorICAgICAgXGxldFxjaGFwZW50cnkgPSBcc2hvcnRj aGFwZW50cnl/Y2hhcGVudHJ5ATIwNjAsNjc5MzYKKyAgICAgIFxsZXRcdW5udW1iY2hhcGVudHJ5 ID0gXHNob3J0dW5udW1iZXJlZGVudHJ5f3VubnVtYmNoYXBlbnRyeQEyMDYxLDY3OTc1CisgICAg ICBcbGV0XHJtPVxzaG9ydGNvbnRybSBcbGV0XGJmPVxzaG9ydGNvbnRiZiBcbGV0XHNsPVxzaG9y dGNvbnRzbH9ybQEyMDY0LDY4MDk4CisgICAgICBcbGV0XHJtPVxzaG9ydGNvbnRybSBcbGV0XGJm PVxzaG9ydGNvbnRiZiBcbGV0XHNsPVxzaG9ydGNvbnRzbH9iZgEyMDY0LDY4MDk4CisgICAgICBc bGV0XHJtPVxzaG9ydGNvbnRybSBcbGV0XGJmPVxzaG9ydGNvbnRiZiBcbGV0XHNsPVxzaG9ydGNv bnRzbH9zbAEyMDY0LDY4MDk4CisgICAgICBcZGVmXHNlY2VudHJ5ICMjMSMjMiMjMyMjNHt/c2Vj ZW50cnkBMjA2Nyw2ODIzNQorICAgICAgXGRlZlx1bm51bWJzZWNlbnRyeSAjIzEjIzJ7f3VubnVt YnNlY2VudHJ5ATIwNjgsNjgyNzAKKyAgICAgIFxkZWZcc3Vic2VjZW50cnkgIyMxIyMyIyMzIyM0 IyM1e39zdWJzZWNlbnRyeQEyMDY5LDY4MzA1CisgICAgICBcZGVmXHVubnVtYnN1YnNlY2VudHJ5 ICMjMSMjMnt/dW5udW1ic3Vic2VjZW50cnkBMjA3MCw2ODM0NgorICAgICAgXGRlZlxzdWJzdWJz ZWNlbnRyeSAjIzEjIzIjIzMjIzQjIzUjIzZ7f3N1YnN1YnNlY2VudHJ5ATIwNzEsNjgzODQKKyAg ICAgIFxkZWZcdW5udW1ic3Vic3Vic2VjZW50cnkgIyMxIyMye391bm51bWJzdWJzdWJzZWNlbnRy eQEyMDcyLDY4NDMxCitcbGV0XHNob3J0Y29udGVudHMgPSBcc3VtbWFyeWNvbnRlbnRzf3Nob3J0 Y29udGVudHMBMjA3Nyw2ODUzMAorXGRlZlxjaGFwZW50cnkjMSMyIzN7f2NoYXBlbnRyeQEyMDg1 LDY4ODY1CitcZGVmXGNoYXBlbnRyeSMxIzIjM3tcZG9jaGFwZW50cnl7IzJcbGFiZWxzcGFjZSMx fX9zcGFjZQEyMDg1LDY4ODY1CitcZGVmXHNob3J0Y2hhcGVudHJ5IzEjMiMze39zaG9ydGNoYXBl bnRyeQEyMDg4LDY4OTgyCiAgICAgeyMyXGxhYmVsc3BhY2UgIzF9f3NwYWNlATIwOTEsNjkwOTIK LVxkZWZcdW5udW1iY2hhcGVudHJ5IzEjMnt/XHVubnVtYmNoYXBlbnRyeQEyMDk0LDY5MTQ2Ci1c ZGVmXHNob3J0dW5udW1iZXJlZGVudHJ5IzEjMnt/XHNob3J0dW5udW1iZXJlZGVudHJ5ATIwOTUs NjkxOTMKLVxkZWZcc2VjZW50cnkjMSMyIzMjNHt/XHNlY2VudHJ5ATIxMDIsNjkzNTcKLVxkZWZc dW5udW1ic2VjZW50cnkjMSMye39cdW5udW1ic2VjZW50cnkBMjEwMyw2OTQxNgotXGRlZlxzdWJz ZWNlbnRyeSMxIzIjMyM0IzV7f1xzdWJzZWNlbnRyeQEyMTA2LDY5NDc3Ci1cZGVmXHVubnVtYnN1 YnNlY2VudHJ5IzEjMnt/XHVubnVtYnN1YnNlY2VudHJ5ATIxMDcsNjk1NDcKLVxkZWZcc3Vic3Vi c2VjZW50cnkjMSMyIzMjNCM1IzZ7f1xzdWJzdWJzZWNlbnRyeQEyMTEwLDY5NjIxCitcZGVmXHVu bnVtYmNoYXBlbnRyeSMxIzJ7f3VubnVtYmNoYXBlbnRyeQEyMDk0LDY5MTQ2CitcZGVmXHNob3J0 dW5udW1iZXJlZGVudHJ5IzEjMnt/c2hvcnR1bm51bWJlcmVkZW50cnkBMjA5NSw2OTE5MworXGRl ZlxzZWNlbnRyeSMxIzIjMyM0e39zZWNlbnRyeQEyMTAyLDY5MzU3CitcZGVmXHNlY2VudHJ5IzEj MiMzIzR7XGRvc2VjZW50cnl7IzIuIzNcbGFiZWxzcGFjZSMxfX9zcGFjZQEyMTAyLDY5MzU3Citc ZGVmXHVubnVtYnNlY2VudHJ5IzEjMnt/dW5udW1ic2VjZW50cnkBMjEwMyw2OTQxNgorXGRlZlxz dWJzZWNlbnRyeSMxIzIjMyM0IzV7f3N1YnNlY2VudHJ5ATIxMDYsNjk0NzcKK1xkZWZcc3Vic2Vj ZW50cnkjMSMyIzMjNCM1e1xkb3N1YnNlY2VudHJ5eyMyLiMzLiM0XGxhYmVsc3BhY2UjMX1/c3Bh Y2UBMjEwNiw2OTQ3NworXGRlZlx1bm51bWJzdWJzZWNlbnRyeSMxIzJ7f3VubnVtYnN1YnNlY2Vu dHJ5ATIxMDcsNjk1NDcKK1xkZWZcc3Vic3Vic2VjZW50cnkjMSMyIzMjNCM1IzZ7f3N1YnN1YnNl Y2VudHJ5ATIxMTAsNjk2MjEKICAgXGRvc3Vic3Vic2VjZW50cnl7IzIuIzMuIzQuIzVcbGFiZWxz cGFjZSMxfX9zcGFjZQEyMTExLDY5NjU1Ci1cZGVmXHVubnVtYnN1YnN1YnNlY2VudHJ5IzEjMnt/ XHVubnVtYnN1YnN1YnNlY2VudHJ5ATIxMTIsNjk3MDYKLVxkZWZcZG9jaGFwZW50cnkjMSMye39c ZG9jaGFwZW50cnkBMjEyMyw3MDA4MAotXGRlZlxkb3NlY2VudHJ5IzEjMnt/XGRvc2VjZW50cnkB MjEzOCw3MDY4NQotXGRlZlxkb3N1YnNlY2VudHJ5IzEjMnt/XGRvc3Vic2VjZW50cnkBMjE0NSw3 MDg2MwotXGRlZlxkb3N1YnN1YnNlY2VudHJ5IzEjMnt/XGRvc3Vic3Vic2VjZW50cnkBMjE1Miw3 MTA0OAotXGRlZlxsYWJlbHNwYWNle39cbGFiZWxzcGFjZQEyMTYwLDcxMjk5Ci1cZGVmXGRvcGFn ZW5vIzF7f1xkb3BhZ2VubwEyMTYyLDcxMzM0Ci1cZGVmXGRvc2hvcnRwYWdlbm8jMXt/XGRvc2hv cnRwYWdlbm8BMjE2Myw3MTM2MAotXGRlZlxjaGFwZW50cnlmb250c3t/XGNoYXBlbnRyeWZvbnRz ATIxNjUsNzEzOTIKLVxkZWZcc2VjZW50cnlmb250c3t/XHNlY2VudHJ5Zm9udHMBMjE2Niw3MTQy NwotXGRlZlxwb2ludHt/XHBvaW50ATIxOTIsNzIzODYKLVxkZWZccmVzdWx0e39ccmVzdWx0ATIx OTQsNzI0MDcKLVxkZWZcZXhwYW5zaW9ue39cZXhwYW5zaW9uATIxOTUsNzI0ODAKLVxkZWZccHJp bnR7f1xwcmludAEyMTk2LDcyNTUxCi1cZGVmXGVxdWl2e39cZXF1aXYBMjE5OCw3MjYxOAotXGRl ZlxlcnJvcnt/XGVycm9yATIyMTgsNzMzOTEKLVxkZWZcdGV4e39cdGV4ATIyMjQsNzM2MjAKLVxk ZWZcQHt/XEABMjI0Miw3NDAwMwotXGdkZWZcc2Vwc3BhY2Vze1xkZWYge1wgfX19f1wBMjI2NSw3 NDczNQotXGRlZlxhYm92ZWVudmJyZWFre39cYWJvdmVlbnZicmVhawEyMjY4LDc0ODE3Ci1cZGVm XGFmdGVyZW52YnJlYWt7f1xhZnRlcmVudmJyZWFrATIyNzIsNzQ5ODMKLVxkZWZcY3Rse39cY3Rs ATIyODYsNzU0OTQKLVxkZWZcY3Rye39cY3RyATIyODcsNzU1NjYKLVxkZWZcY2Jse39cY2JsATIy ODgsNzU2MDUKLVxkZWZcY2Jye39cY2JyATIyODksNzU2NDUKLVxkZWZcY2FydHRvcHt/XGNhcnR0 b3ABMjI5MCw3NTY4NAotXGRlZlxjYXJ0Ym90e39cY2FydGJvdAEyMjkzLDc1NzkyCi1cbG9uZ1xk ZWZcY2FydG91Y2hle39cY2FydG91Y2hlATIyOTksNzU5MzIKLVxkZWZcRWNhcnRvdWNoZXt/XEVj YXJ0b3VjaGUBMjMyNiw3NjcyMAotXGRlZlxsaXNwe39cbGlzcAEyMzM4LDc2ODU1Ci1cZGVmXEVs aXNwe39cRWxpc3ABMjM0OCw3NzIwMgotXGRlZlxuZXh0IyMxe39cbmV4dAEyMzYwLDc3NTI4Ci1c ZGVmXEVleGFtcGxle39cRWV4YW1wbGUBMjM2NCw3NzU3MAotXGRlZlxFc21hbGxleGFtcGxle39c RXNtYWxsZXhhbXBsZQEyMzY3LDc3NjE3Ci1cZGVmXHNtYWxsbGlzcHh7f1xzbWFsbGxpc3B4ATIz NzMsNzc3OTUKLVxkZWZcRXNtYWxsbGlzcHt/XEVzbWFsbGxpc3ABMjM4Myw3ODE0OQorXGRlZlx1 bm51bWJzdWJzdWJzZWNlbnRyeSMxIzJ7f3VubnVtYnN1YnN1YnNlY2VudHJ5ATIxMTIsNjk3MDYK K1xkZWZcZG9jaGFwZW50cnkjMSMye39kb2NoYXBlbnRyeQEyMTIzLDcwMDgwCitcZGVmXGRvc2Vj ZW50cnkjMSMye39kb3NlY2VudHJ5ATIxMzgsNzA2ODUKK1xkZWZcZG9zdWJzZWNlbnRyeSMxIzJ7 f2Rvc3Vic2VjZW50cnkBMjE0NSw3MDg2MworXGRlZlxkb3N1YnN1YnNlY2VudHJ5IzEjMnt/ZG9z dWJzdWJzZWNlbnRyeQEyMTUyLDcxMDQ4CitcZGVmXGxhYmVsc3BhY2V7f2xhYmVsc3BhY2UBMjE2 MCw3MTI5OQorXGRlZlxkb3BhZ2VubyMxe39kb3BhZ2VubwEyMTYyLDcxMzM0CitcZGVmXGRvc2hv cnRwYWdlbm8jMXt/ZG9zaG9ydHBhZ2VubwEyMTYzLDcxMzYwCitcZGVmXGNoYXBlbnRyeWZvbnRz e39jaGFwZW50cnlmb250cwEyMTY1LDcxMzkyCitcZGVmXHNlY2VudHJ5Zm9udHN7f3NlY2VudHJ5 Zm9udHMBMjE2Niw3MTQyNworXGxldFxzdWJzZWNlbnRyeWZvbnRzID0gXHRleHRmb250c39zdWJz ZWNlbnRyeWZvbnRzATIxNjcsNzE0NTgKK1xsZXRcc3Vic3Vic2VjZW50cnlmb250cyA9IFx0ZXh0 Zm9udHN/c3Vic3Vic2VjZW50cnlmb250cwEyMTY4LDcxNDkzCitcbGV0XHB0ZXhlcXVpdiA9IFxl cXVpdn9wdGV4ZXF1aXYBMjE4MCw3MTg5NgorXGRlZlxwb2ludHt/cG9pbnQBMjE5Miw3MjM4Ngor XGRlZlxyZXN1bHR7f3Jlc3VsdAEyMTk0LDcyNDA3CitcZGVmXGV4cGFuc2lvbnt/ZXhwYW5zaW9u ATIxOTUsNzI0ODAKK1xkZWZccHJpbnR7f3ByaW50ATIxOTYsNzI1NTEKK1xkZWZcZXF1aXZ7f2Vx dWl2ATIxOTgsNzI2MTgKK1xkZWZcZXJyb3J7f2Vycm9yATIyMTgsNzMzOTEKK1xkZWZcdGV4e390 ZXgBMjIyNCw3MzYyMAorXGNhdGNvZGUgYFxePTcgXGNhdGNvZGUgYFxfPTggXGNhdGNvZGUgYFx+ PTEzIFxsZXR+PVx0aWV/fgEyMjI3LDczNzMxCitcbGV0XHs9XHB0ZXhsYnJhY2V/ewEyMjM3LDcz OTEyCitcbGV0XH09XHB0ZXhyYnJhY2V/fQEyMjM4LDczOTMxCitcbGV0XC49XHB0ZXhkb3R/LgEy MjM5LDczOTUwCitcbGV0XCo9XHB0ZXhzdGFyfyoBMjI0MCw3Mzk2NgorXGxldFxkb3RzPVxwdGV4 ZG90c39kb3RzATIyNDEsNzM5ODMKK1xkZWZcQHt/QAEyMjQyLDc0MDAzCitcbGV0XGJ1bGxldD1c cHRleGJ1bGxldH9idWxsZXQBMjI0Myw3NDAxNAorXGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhj IFxsZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhsf2IBMjI0NCw3NDAzOAor XGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4dCBc bGV0XGw9XHB0ZXhsf2MBMjI0NCw3NDAzOAorXGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhjIFxs ZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhsf2kBMjI0NCw3NDAzOAorXGxl dFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4dCBcbGV0 XGw9XHB0ZXhsf3QBMjI0NCw3NDAzOAorXGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRc aT1ccHRleGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhsf2wBMjI0NCw3NDAzOAorXGxldFxM PVxwdGV4TH9MATIyNDUsNzQxMDgKK1xsZXRcRXRleD1cZW5kZ3JvdXB9f0V0ZXgBMjI0Nyw3NDEy NAorXGdkZWZcbGlzcHBhcnt/bGlzcHBhcgEyMjU5LDc0NTE3CitcZ2RlZlxzZXBzcGFjZXN7f3Nl cHNwYWNlcwEyMjY1LDc0NzM1CitcZGVmXGFib3ZlZW52YnJlYWt7f2Fib3ZlZW52YnJlYWsBMjI2 OCw3NDgxNworXGRlZlxhZnRlcmVudmJyZWFre39hZnRlcmVudmJyZWFrATIyNzIsNzQ5ODMKK1xs ZXRcbm9uYXJyb3dpbmc9XHJlbGF4f25vbmFycm93aW5nATIyNzYsNzUxNzYKK1xkZWZcY3Rse39j dGwBMjI4Niw3NTQ5NAorXGRlZlxjdHJ7f2N0cgEyMjg3LDc1NTY2CitcZGVmXGNibHt/Y2JsATIy ODgsNzU2MDUKK1xkZWZcY2Jye39jYnIBMjI4OSw3NTY0NQorXGRlZlxjYXJ0dG9we39jYXJ0dG9w ATIyOTAsNzU2ODQKK1xkZWZcY2FydGJvdHt/Y2FydGJvdAEyMjkzLDc1NzkyCitcbG9uZ1xkZWZc Y2FydG91Y2hle39jYXJ0b3VjaGUBMjI5OSw3NTkzMgorCVxsZXRcbm9uYXJyb3dpbmc9XGNvbW1l bnR/bm9uYXJyb3dpbmcBMjMxMSw3NjQwNAorXGRlZlxFY2FydG91Y2hle39FY2FydG91Y2hlATIz MjYsNzY3MjAKK1xkZWZcbGlzcHt/bGlzcAEyMzM4LDc2ODU1CitcbGV0XHBhcj1cbGlzcHBhcn9w YXIBMjM0Nyw3NzE4NAorXGRlZlxFbGlzcHt/RWxpc3ABMjM0OCw3NzIwMgorXGxldFxleGRlbnQ9 XG5vZmlsbGV4ZGVudH9leGRlbnQBMjM1NSw3NzQxOAorXGxldFxub25hcnJvd2luZz1ccmVsYXh/ bm9uYXJyb3dpbmcBMjM1Niw3NzQ0NAorXGRlZlxuZXh0IyMxe39uZXh0ATIzNjAsNzc1MjgKK1xs ZXRcZXhhbXBsZT1cbGlzcH9leGFtcGxlATIzNjMsNzc1NTEKK1xkZWZcRWV4YW1wbGV7f0VleGFt cGxlATIzNjQsNzc1NzAKK1xsZXRcc21hbGxleGFtcGxlPVxsaXNwf3NtYWxsZXhhbXBsZQEyMzY2 LDc3NTkzCitcZGVmXEVzbWFsbGV4YW1wbGV7f0VzbWFsbGV4YW1wbGUBMjM2Nyw3NzYxNworXGRl ZlxzbWFsbGxpc3B4e39zbWFsbGxpc3B4ATIzNzMsNzc3OTUKK1xsZXRccGFyPVxsaXNwcGFyf3Bh cgEyMzgyLDc4MTMxCitcZGVmXEVzbWFsbGxpc3B7f0VzbWFsbGxpc3ABMjM4Myw3ODE0OQorXGxl dFxleGRlbnQ9XG5vZmlsbGV4ZGVudH9leGRlbnQBMjM5Miw3ODQzNgorXGxldFxub25hcnJvd2lu Zz1ccmVsYXh/bm9uYXJyb3dpbmcBMjM5Myw3ODQ2MgogXG9iZXlzcGFjZXMgXG9iZXlsaW5lcyBc bmluZXR0IFxpbmRleGZvbnRzIFxyYXdiYWNrc2xhc2h/Zm9udHMBMjM5Niw3ODUwNQotXGRlZlxu ZXh0IyMxe39cbmV4dAEyMzk3LDc4NTYyCi1cZGVmXGRpc3BsYXl7f1xkaXNwbGF5ATI0MDEsNzg2 NDIKLVxkZWZcRWRpc3BsYXl7f1xFZGlzcGxheQEyNDEwLDc4OTYxCi1cZGVmXG5leHQjIzF7f1xu ZXh0ATI0MjIsNzkyNzIKLVxkZWZcZm9ybWF0e39cZm9ybWF0ATI0MjYsNzkzNzUKLVxkZWZcRWZv cm1hdHt/XEVmb3JtYXQBMjQzNCw3OTY3MQotXGRlZlxuZXh0IyMxe39cbmV4dAEyNDM3LDc5NzYw Ci1cZGVmXGZsdXNobGVmdHt/XGZsdXNobGVmdAEyNDQxLDc5ODEyCi1cZGVmXEVmbHVzaGxlZnR7 f1xFZmx1c2hsZWZ0ATI0NTEsODAxODMKLVxkZWZcbmV4dCMjMXt/XG5leHQBMjQ1NCw4MDI3Ngot XGRlZlxmbHVzaHJpZ2h0e39cZmx1c2hyaWdodAEyNDU2LDgwMjk4Ci1cZGVmXEVmbHVzaHJpZ2h0 e39cRWZsdXNocmlnaHQBMjQ2Niw4MDY3MAotXGRlZlxuZXh0IyMxe39cbmV4dAEyNDcwLDgwODAx Ci1cZGVmXHF1b3RhdGlvbnt/XHF1b3RhdGlvbgEyNDc0LDgwODU5Ci1cZGVmXEVxdW90YXRpb257 f1xFcXVvdGF0aW9uATI0ODAsODEwNTEKLVxkZWZcc2V0ZGVmZm9udCAjMSB7f1xzZXRkZWZmb250 ATI0OTMsODE0NDkKK1xkZWZcbmV4dCMjMXt/bmV4dAEyMzk3LDc4NTYyCitcZGVmXGRpc3BsYXl7 f2Rpc3BsYXkBMjQwMSw3ODY0MgorXGxldFxwYXI9XGxpc3BwYXJ/cGFyATI0MDksNzg5NDMKK1xk ZWZcRWRpc3BsYXl7f0VkaXNwbGF5ATI0MTAsNzg5NjEKK1xsZXRcZXhkZW50PVxub2ZpbGxleGRl bnR/ZXhkZW50ATI0MTcsNzkxODAKK1xsZXRcbm9uYXJyb3dpbmc9XHJlbGF4f25vbmFycm93aW5n ATI0MTgsNzkyMDYKK1xkZWZcbmV4dCMjMXt/bmV4dAEyNDIyLDc5MjcyCitcZGVmXGZvcm1hdHt/ Zm9ybWF0ATI0MjYsNzkzNzUKK1xsZXRccGFyPVxsaXNwcGFyf3BhcgEyNDMzLDc5NjUzCitcZGVm XEVmb3JtYXR7f0Vmb3JtYXQBMjQzNCw3OTY3MQorXGRlZlxuZXh0IyMxe39uZXh0ATI0MzcsNzk3 NjAKK1xkZWZcZmx1c2hsZWZ0e39mbHVzaGxlZnQBMjQ0MSw3OTgxMgorXGxldFxwYXI9XGxpc3Bw YXJ/cGFyATI0NTAsODAxNjUKK1xkZWZcRWZsdXNobGVmdHt/RWZsdXNobGVmdAEyNDUxLDgwMTgz CitcZGVmXG5leHQjIzF7f25leHQBMjQ1NCw4MDI3NgorXGRlZlxmbHVzaHJpZ2h0e39mbHVzaHJp Z2h0ATI0NTYsODAyOTgKK1xsZXRccGFyPVxsaXNwcGFyf3BhcgEyNDY1LDgwNjUyCitcZGVmXEVm bHVzaHJpZ2h0e39FZmx1c2hyaWdodAEyNDY2LDgwNjcwCitcZGVmXG5leHQjIzF7f25leHQBMjQ3 MCw4MDgwMQorXGRlZlxxdW90YXRpb257f3F1b3RhdGlvbgEyNDc0LDgwODU5CitcZGVmXEVxdW90 YXRpb257f0VxdW90YXRpb24BMjQ4MCw4MTA1MQorXGxldFxub25hcnJvd2luZz1ccmVsYXh/bm9u YXJyb3dpbmcBMjQ4Nyw4MTMwMQorXGRlZlxzZXRkZWZmb250ICMxIHt/c2V0ZGVmZm9udAEyNDkz LDgxNDQ5CitcbmV3c2tpcFxkZWZib2R5aW5kZW50IFxkZWZib2R5aW5kZW50PS40aW5/Ym9keWlu ZGVudAEyNDk1LDgxNDk1CiBcbmV3c2tpcFxkZWZib2R5aW5kZW50IFxkZWZib2R5aW5kZW50PS40 aW5/Ym9keWluZGVudAEyNDk1LDgxNDk1CiBcbmV3c2tpcFxkZWZhcmdzaW5kZW50IFxkZWZhcmdz aW5kZW50PTUwcHR/YXJnc2luZGVudAEyNDk2LDgxNTM4CitcbmV3c2tpcFxkZWZhcmdzaW5kZW50 IFxkZWZhcmdzaW5kZW50PTUwcHR/YXJnc2luZGVudAEyNDk2LDgxNTM4CiBcbmV3c2tpcFxkZWZ0 eXBlbWFyZ2luIFxkZWZ0eXBlbWFyZ2luPTEycHR/dHlwZW1hcmdpbgEyNDk3LDgxNTgxCitcbmV3 c2tpcFxkZWZ0eXBlbWFyZ2luIFxkZWZ0eXBlbWFyZ2luPTEycHR/dHlwZW1hcmdpbgEyNDk3LDgx NTgxCitcbmV3c2tpcFxkZWZsYXN0YXJnbWFyZ2luIFxkZWZsYXN0YXJnbWFyZ2luPTE4cHR/bGFz dGFyZ21hcmdpbgEyNDk4LDgxNjI0CiBcbmV3c2tpcFxkZWZsYXN0YXJnbWFyZ2luIFxkZWZsYXN0 YXJnbWFyZ2luPTE4cHR/bGFzdGFyZ21hcmdpbgEyNDk4LDgxNjI0Ci1cZGVmXGFjdGl2ZXBhcmVu c3t/XGFjdGl2ZXBhcmVucwEyNTAzLDgxODIyCi1cZGVmXG9wbnJ7f1xvcG5yATI1MjksODMwMzQK LVxkZWZcbGJyYnt/XGxicmIBMjUzMCw4MzA5OQotXGRlZlxkZWZuYW1lICMxIzJ7f1xkZWZuYW1l ATI1MzYsODMzMDAKK1xkZWZcYWN0aXZlcGFyZW5ze39hY3RpdmVwYXJlbnMBMjUwMyw4MTgyMgor XGdkZWZcZnVuY3Rpb25wYXJlbnN7f2Z1bmN0aW9ucGFyZW5zATI1MDcsODIwMTYKK1xnZGVmXGZ1 bmN0aW9ucGFyZW5ze1xib2xkYnJheFxsZXQmPVxhbXBybVxwYXJlbmNvdW50PTAgfX8mATI1MDcs ODIwMTYKK1xnZGVmXGJvbGRicmF4e39ib2xkYnJheAEyNTA4LDgyMDc0CitcZ2RlZlxib2xkYnJh eHtcbGV0KD1cb3BuclxsZXQpPVxjbG5yXGxldFs9XGxicmJcbGV0XT1ccmJyYn1/KAEyNTA4LDgy MDc0CitcZ2RlZlxib2xkYnJheHtcbGV0KD1cb3BuclxsZXQpPVxjbG5yXGxldFs9XGxicmJcbGV0 XT1ccmJyYn1/KQEyNTA4LDgyMDc0CitcZ2RlZlxib2xkYnJheHtcbGV0KD1cb3BuclxsZXQpPVxj bG5yXGxldFs9XGxicmJcbGV0XT1ccmJyYn1/WwEyNTA4LDgyMDc0CitcZ2RlZlxib2xkYnJheHtc bGV0KD1cb3BuclxsZXQpPVxjbG5yXGxldFs9XGxicmJcbGV0XT1ccmJyYn1/XQEyNTA4LDgyMDc0 CitcZ2RlZlxvcHJtIzEge39vcHJtATI1MTIsODIyNTAKK1xnZGVmXG9wcm0jMSB7e1xybVxjaGFy YFwofSMxIFxiZiBcbGV0KD1cb3BuZXN0ZWQgJX8oATI1MTIsODIyNTAKK1xnZGVmXG9wbmVzdGVk e39vcG5lc3RlZAEyNTE2LDgyNDA3CitcZ2RlZlxjbHJte39jbHJtATI1MTgsODI0NjYKK1xpZm51 bSBccGFyZW5jb3VudD0xIHtccm0gXGNoYXIgYFwpfVxzbCBcbGV0KD1cb3BybSBcZWxzZSBcY2hh ciBgXCkgXGZpfygBMjUyMCw4MjYwMgorXGdkZWZcYW1wcm0jMSB7f2FtcHJtATI1MjMsODI3NjkK K1xnZGVmXGFtcHJtIzEge3tccm1cJiMxfVxsZXQoPVxvcHJtIFxsZXQpPVxjbHJtXCB9fygBMjUy Myw4Mjc2OQorXGdkZWZcYW1wcm0jMSB7e1xybVwmIzF9XGxldCg9XG9wcm0gXGxldCk9XGNscm1c IH1/KQEyNTIzLDgyNzY5CitcZ2RlZlxub3JtYWxwYXJlbnN7f25vcm1hbHBhcmVucwEyNTI1LDgy ODIyCitcZ2RlZlxub3JtYWxwYXJlbnN7XGJvbGRicmF4XGxldCY9XGFtcG5yfX8mATI1MjUsODI4 MjIKK1xkZWZcb3Bucnt/b3BucgEyNTI5LDgzMDM0CitcZGVmXG9wbnJ7e1xzZlxjaGFyYFwofX0g XGRlZlxjbG5ye39jbG5yATI1MjksODMwMzQKK1xkZWZcb3Bucnt7XHNmXGNoYXJgXCh9fSBcZGVm XGNsbnJ7e1xzZlxjaGFyYFwpfX0gXGRlZlxhbXBucnt/YW1wbnIBMjUyOSw4MzAzNAorXGRlZlxs YnJie39sYnJiATI1MzAsODMwOTkKK1xkZWZcbGJyYnt7XGJmXGNoYXJgXFt9fSBcZGVmXHJicmJ7 f3JicmIBMjUzMCw4MzA5OQorXGRlZlxkZWZuYW1lICMxIzJ7f2RlZm5hbWUBMjUzNiw4MzMwMAog XGFkdmFuY2VcZGltZW4yIGJ5IC1cZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI1NDAsODM0MTgK IFxhZHZhbmNlXGRpbWVuMyBieSAtXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNTQyLDgzNDcy CiBcc2V0Ym94MD1caGJveHtcaHNraXAgXGRlZmxhc3RhcmdtYXJnaW57f2xhc3RhcmdtYXJnaW4B MjU0NCw4MzUyNgorXHNldGJveDA9XGhib3h7XGhza2lwIFxkZWZsYXN0YXJnbWFyZ2lue1xybSAj Mn1caHNraXAgXGRlZnR5cGVtYXJnaW59f3R5cGVtYXJnaW4BMjU0NCw4MzUyNgogXGRpbWVuMT1c aHNpemUgXGFkdmFuY2UgXGRpbWVuMSBieSAtXGRlZmFyZ3NpbmRlbnQgJXNpemUgZm9yIGNvbnRp bnVhdGlvbnN/YXJnc2luZGVudAEyNTQ2LDgzNjY4CiBccGFyc2hhcGUgMiAwaW4gXGRpbWVuMCBc ZGVmYXJnc2luZGVudCBcZGltZW4xICAgICAlf2FyZ3NpbmRlbnQBMjU0Nyw4Mzc0MwogXHJsYXB7 XHJpZ2h0bGluZXt7XHJtICMyfVxoc2tpcCBcZGVmdHlwZW1hcmdpbn1/dHlwZW1hcmdpbgEyNTU0 LDg0MTEyCiBcYWR2YW5jZVxsZWZ0c2tpcCBieSAtXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEy NTU3LDg0MjQ2CiBcZXhkZW50YW1vdW50PVxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjU1OCw4 NDI4MwotXGRlZlxkZWZwYXJzZWJvZHkgIzEjMiMze39cZGVmcGFyc2Vib2R5ATI1NjgsODQ2NDIK LVxkZWYjMXt/MjU3Miw4NDgyNgotXGRlZiMye38yNTczLDg0ODYyCitcZGVmXGRlZnBhcnNlYm9k eSAjMSMyIzN7f2RlZnBhcnNlYm9keQEyNTY4LDg0NjQyCitcYWR2YW5jZVxsZWZ0c2tpcCBieSBc ZGVmYm9keWluZGVudCBcYWR2YW5jZSBccmlnaHRza2lwIGJ5IFxkZWZib2R5aW5kZW50f2JvZHlp bmRlbnQBMjU3NSw4NDkzNAogXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFk dmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI1NzUsODQ5MzQK IFxleGRlbnRhbW91bnQ9XGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNTc2LDg1MDA4Ci1cZGVm XGRlZm1ldGhwYXJzZWJvZHkgIzEjMiMzIzQge39cZGVmbWV0aHBhcnNlYm9keQEyNTgxLDg1MTEy Ci1cZGVmIzF7fzI1ODUsODUyNzMKLVxkZWYjMiMjMSB7fzI1ODYsODUzMDkKK1xkZWZcZGVmbWV0 aHBhcnNlYm9keSAjMSMyIzMjNCB7f2RlZm1ldGhwYXJzZWJvZHkBMjU4MSw4NTExMgorXGFkdmFu Y2VcbGVmdHNraXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVm Ym9keWluZGVudH9ib2R5aW5kZW50ATI1ODgsODUzOTIKIFxhZHZhbmNlXGxlZnRza2lwIGJ5IFxk ZWZib2R5aW5kZW50IFxhZHZhbmNlIFxyaWdodHNraXAgYnkgXGRlZmJvZHlpbmRlbnR/Ym9keWlu ZGVudAEyNTg4LDg1MzkyCiBcZXhkZW50YW1vdW50PVxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQB MjU4OSw4NTQ2NgotXGRlZlxkZWZvcHBhcnNlYm9keSAjMSMyIzMjNCM1IHt/XGRlZm9wcGFyc2Vi b2R5ATI1OTIsODU1NTEKLVxkZWYjMXt/MjU5Niw4NTcxMgotXGRlZiMyIyMxICMjMiB7fzI1OTcs ODU3NDgKK1xkZWZcZGVmb3BwYXJzZWJvZHkgIzEjMiMzIzQjNSB7f2RlZm9wcGFyc2Vib2R5ATI1 OTIsODU1NTEKK1xhZHZhbmNlXGxlZnRza2lwIGJ5IFxkZWZib2R5aW5kZW50IFxhZHZhbmNlIFxy aWdodHNraXAgYnkgXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNjAwLDg1ODQ4CiBcYWR2YW5j ZVxsZWZ0c2tpcCBieSBcZGVmYm9keWluZGVudCBcYWR2YW5jZSBccmlnaHRza2lwIGJ5IFxkZWZi b2R5aW5kZW50f2JvZHlpbmRlbnQBMjYwMCw4NTg0OAogXGV4ZGVudGFtb3VudD1cZGVmYm9keWlu ZGVudH9ib2R5aW5kZW50ATI2MDEsODU5MjIKLVxkZWZcZGVmdmFycGFyc2Vib2R5ICMxIzIjM3t/ XGRlZnZhcnBhcnNlYm9keQEyNjA4LDg2MTkzCi1cZGVmIzF7fzI2MTIsODYzODAKLVxkZWYjMnt/ MjYxMyw4NjQxNgorXGRlZlxkZWZ2YXJwYXJzZWJvZHkgIzEjMiMze39kZWZ2YXJwYXJzZWJvZHkB MjYwOCw4NjE5MworXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFkdmFuY2Ug XHJpZ2h0c2tpcCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI2MTUsODY0NzUKIFxhZHZh bmNlXGxlZnRza2lwIGJ5IFxkZWZib2R5aW5kZW50IFxhZHZhbmNlIFxyaWdodHNraXAgYnkgXGRl ZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNjE1LDg2NDc1CiBcZXhkZW50YW1vdW50PVxkZWZib2R5 aW5kZW50f2JvZHlpbmRlbnQBMjYxNiw4NjU0OQotXGRlZlxkZWZ2cnBhcnNlYm9keSAjMSMyIzMj NCB7f1xkZWZ2cnBhcnNlYm9keQEyNjIxLDg2NjQwCi1cZGVmIzF7fzI2MjUsODY3OTkKLVxkZWYj MiMjMSB7fzI2MjYsODY4MzUKK1xkZWZcZGVmdnJwYXJzZWJvZHkgIzEjMiMzIzQge39kZWZ2cnBh cnNlYm9keQEyNjIxLDg2NjQwCitcYWR2YW5jZVxsZWZ0c2tpcCBieSBcZGVmYm9keWluZGVudCBc YWR2YW5jZSBccmlnaHRza2lwIGJ5IFxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjYyOCw4Njkw NQogXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tp cCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI2MjgsODY5MDUKIFxleGRlbnRhbW91bnQ9 XGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNjI5LDg2OTc5Ci1cZGVmXGRlZm9wdmFycGFyc2Vi b2R5ICMxIzIjMyM0IzUge39cZGVmb3B2YXJwYXJzZWJvZHkBMjYzMiw4NzA1MQotXGRlZiMxe38y NjM2LDg3MjE1Ci1cZGVmIzIjIzEgIyMyIHt/MjYzNyw4NzI1MQorXGRlZlxkZWZvcHZhcnBhcnNl Ym9keSAjMSMyIzMjNCM1IHt/ZGVmb3B2YXJwYXJzZWJvZHkBMjYzMiw4NzA1MQorXGFkdmFuY2Vc bGVmdHNraXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVmYm9k eWluZGVudH9ib2R5aW5kZW50ATI2NDAsODczMzgKIFxhZHZhbmNlXGxlZnRza2lwIGJ5IFxkZWZi b2R5aW5kZW50IFxhZHZhbmNlIFxyaWdodHNraXAgYnkgXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVu dAEyNjQwLDg3MzM4CiBcZXhkZW50YW1vdW50PVxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjY0 MSw4NzQxMgotXGRlZlxkZWZ1bmFyZ3MgIzF7f1xkZWZ1bmFyZ3MBMjY2NCw4ODE3MgotXGRlZlxk ZWZ0eXBlZnVuYXJncyAjMXt/XGRlZnR5cGVmdW5hcmdzATI2NzYsODg1NTQKLVxkZWZcZGVmZm57 f1xkZWZmbgEyNjkwLDg4OTM2Ci1cZGVmXGRlZmZuaGVhZGVyICMxIzIjM3t/XGRlZmZuaGVhZGVy ATI2OTIsODg5OTMKK1xnZGVmXHNwYWNlc3BsaXQjMSMyXl5Ne39zcGFjZXNwbGl0ATI2NTIsODc3 NzUKK1xsb25nXGdkZWZcc3BhY2VzcGxpdGZvbyMxIzIgIzMjNFxzcGFjZXNwbGl0Zm9ve39zcGFj ZXNwbGl0Zm9vATI2NTMsODc4NTIKK1xkZWZcZGVmdW5hcmdzICMxe39kZWZ1bmFyZ3MBMjY2NCw4 ODE3MgorXGRlZlxkZWZ0eXBlZnVuYXJncyAjMXt/ZGVmdHlwZWZ1bmFyZ3MBMjY3Niw4ODU1NAor XGRlZlxkZWZmbnt/ZGVmZm4BMjY5MCw4ODkzNgorXGRlZlxkZWZmbntcZGVmbWV0aHBhcnNlYm9k eVxFZGVmZm5cZGVmZm54XGRlZmZuaGVhZGVyfX9tZXRocGFyc2Vib2R5XEVkZWZmbgEyNjkwLDg4 OTM2CitcZGVmXGRlZmZue1xkZWZtZXRocGFyc2Vib2R5XEVkZWZmblxkZWZmbnhcZGVmZm5oZWFk ZXJ9f2ZueFxkZWZmbmhlYWRlcgEyNjkwLDg4OTM2CitcZGVmXGRlZmZue1xkZWZtZXRocGFyc2Vi b2R5XEVkZWZmblxkZWZmbnhcZGVmZm5oZWFkZXJ9f2ZuaGVhZGVyATI2OTAsODg5MzYKK1xkZWZc ZGVmZm5oZWFkZXIgIzEjMiMze39kZWZmbmhlYWRlcgEyNjkyLDg4OTkzCiBcYmVnaW5ncm91cFxk ZWZuYW1lIHt/bmFtZQEyNjkzLDg5MDQxCi1cZGVmXGRlZnVue39cZGVmdW4BMjY5OSw4OTE4Ngot XGRlZlxkZWZ1bmhlYWRlciAjMSMye39cZGVmdW5oZWFkZXIBMjcwMSw4OTIzOQorXGJlZ2luZ3Jv dXBcZGVmbmFtZSB7IzJ9eyMxfVxkZWZ1bmFyZ3N7f3VuYXJncwEyNjkzLDg5MDQxCitcZGVmXGRl ZnVue39kZWZ1bgEyNjk5LDg5MTg2CitcZGVmXGRlZnVue1xkZWZwYXJzZWJvZHlcRWRlZnVuXGRl ZnVueFxkZWZ1bmhlYWRlcn1/cGFyc2Vib2R5XEVkZWZ1bgEyNjk5LDg5MTg2CitcZGVmXGRlZnVu e1xkZWZwYXJzZWJvZHlcRWRlZnVuXGRlZnVueFxkZWZ1bmhlYWRlcn1/dW54XGRlZnVuaGVhZGVy ATI2OTksODkxODYKK1xkZWZcZGVmdW57XGRlZnBhcnNlYm9keVxFZGVmdW5cZGVmdW54XGRlZnVu aGVhZGVyfX91bmhlYWRlcgEyNjk5LDg5MTg2CitcZGVmXGRlZnVuaGVhZGVyICMxIzJ7f2RlZnVu aGVhZGVyATI3MDEsODkyMzkKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI3MDIsODkzMTQK IFxkZWZ1bmFyZ3Mge391bmFyZ3MBMjcwMyw4OTM1MAotXGRlZlxkZWZ0eXBlZnVue39cZGVmdHlw ZWZ1bgEyNzA5LDg5NDk4Ci1cZGVmXGRlZnR5cGVmdW5oZWFkZXIgIzEjMnt/XGRlZnR5cGVmdW5o ZWFkZXIBMjcxMiw4OTYyMAotXGRlZlxkZWZ0eXBlZnVuaGVhZGVyeCAjMSMyICMzXHJlbGF4e39c ZGVmdHlwZWZ1bmhlYWRlcngBMjcxNCw4OTcyOQorXGRlZlxkZWZ0eXBlZnVue39kZWZ0eXBlZnVu ATI3MDksODk0OTgKK1xkZWZcZGVmdHlwZWZ1bntcZGVmcGFyc2Vib2R5XEVkZWZ0eXBlZnVuXGRl ZnR5cGVmdW54XGRlZnR5cGVmdW5oZWFkZXJ9f3BhcnNlYm9keVxFZGVmdHlwZWZ1bgEyNzA5LDg5 NDk4CitcZGVmXGRlZnR5cGVmdW57XGRlZnBhcnNlYm9keVxFZGVmdHlwZWZ1blxkZWZ0eXBlZnVu eFxkZWZ0eXBlZnVuaGVhZGVyfX90eXBlZnVueFxkZWZ0eXBlZnVuaGVhZGVyATI3MDksODk0OTgK K1xkZWZcZGVmdHlwZWZ1bntcZGVmcGFyc2Vib2R5XEVkZWZ0eXBlZnVuXGRlZnR5cGVmdW54XGRl ZnR5cGVmdW5oZWFkZXJ9f3R5cGVmdW5oZWFkZXIBMjcwOSw4OTQ5OAorXGRlZlxkZWZ0eXBlZnVu aGVhZGVyICMxIzJ7f2RlZnR5cGVmdW5oZWFkZXIBMjcxMiw4OTYyMAorXGRlZlxkZWZ0eXBlZnVu aGVhZGVyICMxIzJ7XGRlZnR5cGVmdW5oZWFkZXJ4e390eXBlZnVuaGVhZGVyeAEyNzEyLDg5NjIw CitcZGVmXGRlZnR5cGVmdW5oZWFkZXJ4ICMxIzIgIzNccmVsYXh7f2RlZnR5cGVmdW5oZWFkZXJ4 ATI3MTQsODk3MjkKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI3MTYsODk4MjEKIFxkZWZ0 eXBlZnVuYXJncyB7f3R5cGVmdW5hcmdzATI3MTcsODk4NjcKLVxkZWZcZGVmdHlwZWZue39cZGVm dHlwZWZuATI3MjMsOTAwMzgKLVxkZWZcZGVmdHlwZWZuaGVhZGVyICMxIzIjM3t/XGRlZnR5cGVm bmhlYWRlcgEyNzI2LDkwMTg3Ci1cZGVmXGRlZnR5cGVmbmhlYWRlcnggIzEjMiMzICM0XHJlbGF4 e39cZGVmdHlwZWZuaGVhZGVyeAEyNzI4LDkwMzIzCitcZGVmXGRlZnR5cGVmbnt/ZGVmdHlwZWZu ATI3MjMsOTAwMzgKK1xkZWZcZGVmdHlwZWZue1xkZWZtZXRocGFyc2Vib2R5XEVkZWZ0eXBlZm5c ZGVmdHlwZWZueFxkZWZ0eXBlZm5oZWFkZXJ9f21ldGhwYXJzZWJvZHlcRWRlZnR5cGVmbgEyNzIz LDkwMDM4CitcZGVmXGRlZnR5cGVmbntcZGVmbWV0aHBhcnNlYm9keVxFZGVmdHlwZWZuXGRlZnR5 cGVmbnhcZGVmdHlwZWZuaGVhZGVyfX90eXBlZm54XGRlZnR5cGVmbmhlYWRlcgEyNzIzLDkwMDM4 CitcZGVmXGRlZnR5cGVmbntcZGVmbWV0aHBhcnNlYm9keVxFZGVmdHlwZWZuXGRlZnR5cGVmbnhc ZGVmdHlwZWZuaGVhZGVyfX90eXBlZm5oZWFkZXIBMjcyMyw5MDAzOAorXGRlZlxkZWZ0eXBlZm5o ZWFkZXIgIzEjMiMze39kZWZ0eXBlZm5oZWFkZXIBMjcyNiw5MDE4NworXGRlZlxkZWZ0eXBlZm5o ZWFkZXIgIzEjMiMze1xkZWZ0eXBlZm5oZWFkZXJ4e390eXBlZm5oZWFkZXJ4ATI3MjYsOTAxODcK K1xkZWZcZGVmdHlwZWZuaGVhZGVyeCAjMSMyIzMgIzRccmVsYXh7f2RlZnR5cGVmbmhlYWRlcngB MjcyOCw5MDMyMwogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjczMCw5MDQxNgogXGRlZnR5 cGVmdW5hcmdzIHt/dHlwZWZ1bmFyZ3MBMjczMSw5MDQ1NgotXGRlZlxkZWZtYWN7f1xkZWZtYWMB MjczNyw5MDU3NwotXGRlZlxkZWZtYWNoZWFkZXIgIzEjMnt/XGRlZm1hY2hlYWRlcgEyNzM5LDkw NjM0CitcZGVmXGRlZm1hY3t/ZGVmbWFjATI3MzcsOTA1NzcKK1xkZWZcZGVmbWFje1xkZWZwYXJz ZWJvZHlcRWRlZm1hY1xkZWZtYWN4XGRlZm1hY2hlYWRlcn1/cGFyc2Vib2R5XEVkZWZtYWMBMjcz Nyw5MDU3NworXGRlZlxkZWZtYWN7XGRlZnBhcnNlYm9keVxFZGVmbWFjXGRlZm1hY3hcZGVmbWFj aGVhZGVyfX9tYWN4XGRlZm1hY2hlYWRlcgEyNzM3LDkwNTc3CitcZGVmXGRlZm1hY3tcZGVmcGFy c2Vib2R5XEVkZWZtYWNcZGVmbWFjeFxkZWZtYWNoZWFkZXJ9f21hY2hlYWRlcgEyNzM3LDkwNTc3 CitcZGVmXGRlZm1hY2hlYWRlciAjMSMye39kZWZtYWNoZWFkZXIBMjczOSw5MDYzNAogXGJlZ2lu Z3JvdXBcZGVmbmFtZSB7f25hbWUBMjc0MCw5MDcxMAogXGRlZnVuYXJncyB7f3VuYXJncwEyNzQx LDkwNzQzCi1cZGVmXGRlZnNwZWN7f1xkZWZzcGVjATI3NDcsOTA4NjcKLVxkZWZcZGVmc3BlY2hl YWRlciAjMSMye39cZGVmc3BlY2hlYWRlcgEyNzQ5LDkwOTI4CitcZGVmXGRlZnNwZWN7f2RlZnNw ZWMBMjc0Nyw5MDg2NworXGRlZlxkZWZzcGVje1xkZWZwYXJzZWJvZHlcRWRlZnNwZWNcZGVmc3Bl Y3hcZGVmc3BlY2hlYWRlcn1/cGFyc2Vib2R5XEVkZWZzcGVjATI3NDcsOTA4NjcKK1xkZWZcZGVm c3BlY3tcZGVmcGFyc2Vib2R5XEVkZWZzcGVjXGRlZnNwZWN4XGRlZnNwZWNoZWFkZXJ9f3NwZWN4 XGRlZnNwZWNoZWFkZXIBMjc0Nyw5MDg2NworXGRlZlxkZWZzcGVje1xkZWZwYXJzZWJvZHlcRWRl ZnNwZWNcZGVmc3BlY3hcZGVmc3BlY2hlYWRlcn1/c3BlY2hlYWRlcgEyNzQ3LDkwODY3CitcZGVm XGRlZnNwZWNoZWFkZXIgIzEjMnt/ZGVmc3BlY2hlYWRlcgEyNzQ5LDkwOTI4CiBcYmVnaW5ncm91 cFxkZWZuYW1lIHt/bmFtZQEyNzUwLDkxMDA1CiBcZGVmdW5hcmdzIHt/dW5hcmdzATI3NTEsOTEw NDUKLVxkZWZcZGVmZm54ICMxIHt/XGRlZmZueAEyNzU4LDkxMjQwCi1cZGVmXGRlZnVueCAjMSB7 f1xkZWZ1bngBMjc1OSw5MTI5NwotXGRlZlxkZWZtYWN4ICMxIHt/XGRlZm1hY3gBMjc2MCw5MTM1 NAotXGRlZlxkZWZzcGVjeCAjMSB7f1xkZWZzcGVjeAEyNzYxLDkxNDEzCi1cZGVmXGRlZnR5cGVm bnggIzEge39cZGVmdHlwZWZueAEyNzYyLDkxNDc0Ci1cZGVmXGRlZnR5cGV1bnggIzEge39cZGVm dHlwZXVueAEyNzYzLDkxNTM5Ci1cZGVmXGRlZm9wICMxIHt/XGRlZm9wATI3NjksOTE2ODUKLVxk ZWZvcHBhcnNlYm9keVxFZGVmb3BcZGVmb3B4XGRlZm9waGVhZGVyXGRlZm9wdHlwZX1/b3BwYXJz ZWJvZHlcRWRlZm9wXGRlZm9weFxkZWZvcGhlYWRlclxkZWZvcHR5cGUBMjc3MCw5MTcyMAotXGRl ZlxkZWZvcGhlYWRlciAjMSMyIzN7f1xkZWZvcGhlYWRlcgEyNzcyLDkxNzc0CitcZGVmXGRlZmZu eCAjMSB7f2RlZmZueAEyNzU4LDkxMjQwCitcZGVmXGRlZnVueCAjMSB7f2RlZnVueAEyNzU5LDkx Mjk3CitcZGVmXGRlZm1hY3ggIzEge39kZWZtYWN4ATI3NjAsOTEzNTQKK1xkZWZcZGVmc3BlY3gg IzEge39kZWZzcGVjeAEyNzYxLDkxNDEzCitcZGVmXGRlZnR5cGVmbnggIzEge39kZWZ0eXBlZm54 ATI3NjIsOTE0NzQKK1xkZWZcZGVmdHlwZXVueCAjMSB7f2RlZnR5cGV1bngBMjc2Myw5MTUzOQor XGRlZlxkZWZvcCAjMSB7f2RlZm9wATI3NjksOTE2ODUKK1xkZWZcZGVmb3AgIzEge1xkZWZcZGVm b3B0eXBle39kZWZvcHR5cGUBMjc2OSw5MTY4NQorXGRlZm9wcGFyc2Vib2R5XEVkZWZvcFxkZWZv cHhcZGVmb3BoZWFkZXJcZGVmb3B0eXBlfX9vcHBhcnNlYm9keVxFZGVmb3ABMjc3MCw5MTcyMAor XGRlZm9wcGFyc2Vib2R5XEVkZWZvcFxkZWZvcHhcZGVmb3BoZWFkZXJcZGVmb3B0eXBlfX9vcHhc ZGVmb3BoZWFkZXIBMjc3MCw5MTcyMAorXGRlZm9wcGFyc2Vib2R5XEVkZWZvcFxkZWZvcHhcZGVm b3BoZWFkZXJcZGVmb3B0eXBlfX9vcGhlYWRlclxkZWZvcHR5cGUBMjc3MCw5MTcyMAorXGRlZm9w cGFyc2Vib2R5XEVkZWZvcFxkZWZvcHhcZGVmb3BoZWFkZXJcZGVmb3B0eXBlfX9vcHR5cGUBMjc3 MCw5MTcyMAorXGRlZlxkZWZvcGhlYWRlciAjMSMyIzN7f2RlZm9waGVhZGVyATI3NzIsOTE3NzQK IFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI3NzQsOTE4NjMKK1xiZWdpbmdyb3VwXGRlZm5h bWUgeyMyfXtcZGVmb3B0eXBle39vcHR5cGUBMjc3NCw5MTg2MwogXGRlZnVuYXJncyB7f3VuYXJn cwEyNzc1LDkxOTA5Ci1cZGVmXGRlZm1ldGhvZHt/XGRlZm1ldGhvZAEyNzgwLDkxOTcwCi1cZGVm XGRlZm1ldGhvZGhlYWRlciAjMSMyIzN7f1xkZWZtZXRob2RoZWFkZXIBMjc4Miw5MjA0MworXGRl ZlxkZWZtZXRob2R7f2RlZm1ldGhvZAEyNzgwLDkxOTcwCitcZGVmXGRlZm1ldGhvZHtcZGVmbWV0 aHBhcnNlYm9keVxFZGVmbWV0aG9kXGRlZm1ldGhvZHhcZGVmbWV0aG9kaGVhZGVyfX9tZXRocGFy c2Vib2R5XEVkZWZtZXRob2QBMjc4MCw5MTk3MAorXGRlZlxkZWZtZXRob2R7XGRlZm1ldGhwYXJz ZWJvZHlcRWRlZm1ldGhvZFxkZWZtZXRob2R4XGRlZm1ldGhvZGhlYWRlcn1/bWV0aG9keFxkZWZt ZXRob2RoZWFkZXIBMjc4MCw5MTk3MAorXGRlZlxkZWZtZXRob2R7XGRlZm1ldGhwYXJzZWJvZHlc RWRlZm1ldGhvZFxkZWZtZXRob2R4XGRlZm1ldGhvZGhlYWRlcn1/bWV0aG9kaGVhZGVyATI3ODAs OTE5NzAKK1xkZWZcZGVmbWV0aG9kaGVhZGVyICMxIzIjM3t/ZGVmbWV0aG9kaGVhZGVyATI3ODIs OTIwNDMKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI3ODQsOTIxMzEKIFxkZWZ1bmFyZ3Mg e391bmFyZ3MBMjc4NSw5MjE3MQotXGRlZlxkZWZjdiAjMSB7f1xkZWZjdgEyNzkwLDkyMjQ1Ci1c ZGVmb3B2YXJwYXJzZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZjdmFyaGVhZGVyXGRlZmN2dHlwZX1/ b3B2YXJwYXJzZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZjdmFyaGVhZGVyXGRlZmN2dHlwZQEyNzkx LDkyMjgwCi1cZGVmXGRlZmN2YXJoZWFkZXIgIzEjMiMze39cZGVmY3ZhcmhlYWRlcgEyNzkzLDky MzM5CitcZGVmXGRlZmN2ICMxIHt/ZGVmY3YBMjc5MCw5MjI0NQorXGRlZlxkZWZjdiAjMSB7XGRl ZlxkZWZjdnR5cGV7f2RlZmN2dHlwZQEyNzkwLDkyMjQ1CitcZGVmb3B2YXJwYXJzZWJvZHlcRWRl ZmN2XGRlZmN2eFxkZWZjdmFyaGVhZGVyXGRlZmN2dHlwZX1/b3B2YXJwYXJzZWJvZHlcRWRlZmN2 ATI3OTEsOTIyODAKK1xkZWZvcHZhcnBhcnNlYm9keVxFZGVmY3ZcZGVmY3Z4XGRlZmN2YXJoZWFk ZXJcZGVmY3Z0eXBlfX9jdnhcZGVmY3ZhcmhlYWRlcgEyNzkxLDkyMjgwCitcZGVmb3B2YXJwYXJz ZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZjdmFyaGVhZGVyXGRlZmN2dHlwZX1/Y3ZhcmhlYWRlclxk ZWZjdnR5cGUBMjc5MSw5MjI4MAorXGRlZm9wdmFycGFyc2Vib2R5XEVkZWZjdlxkZWZjdnhcZGVm Y3ZhcmhlYWRlclxkZWZjdnR5cGV9f2N2dHlwZQEyNzkxLDkyMjgwCitcZGVmXGRlZmN2YXJoZWFk ZXIgIzEjMiMze39kZWZjdmFyaGVhZGVyATI3OTMsOTIzMzkKIFxiZWdpbmdyb3VwXGRlZm5hbWUg e39uYW1lATI3OTUsOTI0MjUKK1xiZWdpbmdyb3VwXGRlZm5hbWUgeyMyfXtcZGVmY3Z0eXBle39j dnR5cGUBMjc5NSw5MjQyNQogXGRlZnZhcmFyZ3Mge392YXJhcmdzATI3OTYsOTI0NzEKLVxkZWZc ZGVmaXZhcnt/XGRlZml2YXIBMjgwMSw5MjU0NAotXGRlZlxkZWZpdmFyaGVhZGVyICMxIzIjM3t/ XGRlZml2YXJoZWFkZXIBMjgwMyw5MjYwNworXGRlZlxkZWZpdmFye39kZWZpdmFyATI4MDEsOTI1 NDQKK1xkZWZcZGVmaXZhcntcZGVmdnJwYXJzZWJvZHlcRWRlZml2YXJcZGVmaXZhcnhcZGVmaXZh cmhlYWRlcn1/dnJwYXJzZWJvZHlcRWRlZml2YXIBMjgwMSw5MjU0NAorXGRlZlxkZWZpdmFye1xk ZWZ2cnBhcnNlYm9keVxFZGVmaXZhclxkZWZpdmFyeFxkZWZpdmFyaGVhZGVyfX9pdmFyeFxkZWZp dmFyaGVhZGVyATI4MDEsOTI1NDQKK1xkZWZcZGVmaXZhcntcZGVmdnJwYXJzZWJvZHlcRWRlZml2 YXJcZGVmaXZhcnhcZGVmaXZhcmhlYWRlcn1/aXZhcmhlYWRlcgEyODAxLDkyNTQ0CitcZGVmXGRl Zml2YXJoZWFkZXIgIzEjMiMze39kZWZpdmFyaGVhZGVyATI4MDMsOTI2MDcKIFxiZWdpbmdyb3Vw XGRlZm5hbWUge39uYW1lATI4MDUsOTI2OTMKIFxkZWZ2YXJhcmdzIHt/dmFyYXJncwEyODA2LDky NzQ0Ci1cZGVmXGRlZm9weCAjMSB7f1xkZWZvcHgBMjgxMiw5Mjg5MwotXGRlZlxkZWZtZXRob2R4 ICMxIHt/XGRlZm1ldGhvZHgBMjgxMyw5Mjk1MAotXGRlZlxkZWZjdnggIzEge39cZGVmY3Z4ATI4 MTQsOTMwMTUKLVxkZWZcZGVmaXZhcnggIzEge39cZGVmaXZhcngBMjgxNSw5MzA3MgotXGRlZlxk ZWZ2YXJhcmdzICMxe39cZGVmdmFyYXJncwEyODIyLDkzMzQzCi1cZGVmXGRlZnZye39cZGVmdnIB MjgyOCw5MzQ4NwotXGRlZlxkZWZ2cmhlYWRlciAjMSMyIzN7f1xkZWZ2cmhlYWRlcgEyODMwLDkz NTQyCitcZGVmXGRlZm9weCAjMSB7f2RlZm9weAEyODEyLDkyODkzCitcZGVmXGRlZm1ldGhvZHgg IzEge39kZWZtZXRob2R4ATI4MTMsOTI5NTAKK1xkZWZcZGVmY3Z4ICMxIHt/ZGVmY3Z4ATI4MTQs OTMwMTUKK1xkZWZcZGVmaXZhcnggIzEge39kZWZpdmFyeAEyODE1LDkzMDcyCitcZGVmXGRlZnZh cmFyZ3MgIzF7f2RlZnZhcmFyZ3MBMjgyMiw5MzM0MworXGRlZlxkZWZ2cnt/ZGVmdnIBMjgyOCw5 MzQ4NworXGRlZlxkZWZ2cntcZGVmdnJwYXJzZWJvZHlcRWRlZnZyXGRlZnZyeFxkZWZ2cmhlYWRl cn1/dnJwYXJzZWJvZHlcRWRlZnZyATI4MjgsOTM0ODcKK1xkZWZcZGVmdnJ7XGRlZnZycGFyc2Vi b2R5XEVkZWZ2clxkZWZ2cnhcZGVmdnJoZWFkZXJ9f3ZyeFxkZWZ2cmhlYWRlcgEyODI4LDkzNDg3 CitcZGVmXGRlZnZye1xkZWZ2cnBhcnNlYm9keVxFZGVmdnJcZGVmdnJ4XGRlZnZyaGVhZGVyfX92 cmhlYWRlcgEyODI4LDkzNDg3CitcZGVmXGRlZnZyaGVhZGVyICMxIzIjM3t/ZGVmdnJoZWFkZXIB MjgzMCw5MzU0MgogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjgzMSw5MzU5MAotXGRlZlxk ZWZ2YXJ7f1xkZWZ2YXIBMjgzNSw5MzY3NQotXGRlZlxkZWZ2YXJoZWFkZXIgIzEjMnt/XGRlZnZh cmhlYWRlcgEyODM3LDkzNzM1CitcYmVnaW5ncm91cFxkZWZuYW1lIHsjMn17IzF9XGRlZnZhcmFy Z3N7f3ZhcmFyZ3MBMjgzMSw5MzU5MAorXGRlZlxkZWZ2YXJ7f2RlZnZhcgEyODM1LDkzNjc1Citc ZGVmXGRlZnZhcntcZGVmdmFycGFyc2Vib2R5XEVkZWZ2YXJcZGVmdmFyeFxkZWZ2YXJoZWFkZXJ9 f3ZhcnBhcnNlYm9keVxFZGVmdmFyATI4MzUsOTM2NzUKK1xkZWZcZGVmdmFye1xkZWZ2YXJwYXJz ZWJvZHlcRWRlZnZhclxkZWZ2YXJ4XGRlZnZhcmhlYWRlcn1/dmFyeFxkZWZ2YXJoZWFkZXIBMjgz NSw5MzY3NQorXGRlZlxkZWZ2YXJ7XGRlZnZhcnBhcnNlYm9keVxFZGVmdmFyXGRlZnZhcnhcZGVm dmFyaGVhZGVyfX92YXJoZWFkZXIBMjgzNSw5MzY3NQorXGRlZlxkZWZ2YXJoZWFkZXIgIzEjMnt/ ZGVmdmFyaGVhZGVyATI4MzcsOTM3MzUKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI4Mzgs OTM4MDYKIFxkZWZ2YXJhcmdzIHt/dmFyYXJncwEyODM5LDkzODQyCi1cZGVmXGRlZm9wdHt/XGRl Zm9wdAEyODQ0LDkzOTA4Ci1cZGVmXGRlZm9wdGhlYWRlciAjMSMye39cZGVmb3B0aGVhZGVyATI4 NDYsOTM5NjgKK1xkZWZcZGVmb3B0e39kZWZvcHQBMjg0NCw5MzkwOAorXGRlZlxkZWZvcHR7XGRl ZnZhcnBhcnNlYm9keVxFZGVmb3B0XGRlZm9wdHhcZGVmb3B0aGVhZGVyfX92YXJwYXJzZWJvZHlc RWRlZm9wdAEyODQ0LDkzOTA4CitcZGVmXGRlZm9wdHtcZGVmdmFycGFyc2Vib2R5XEVkZWZvcHRc ZGVmb3B0eFxkZWZvcHRoZWFkZXJ9f29wdHhcZGVmb3B0aGVhZGVyATI4NDQsOTM5MDgKK1xkZWZc ZGVmb3B0e1xkZWZ2YXJwYXJzZWJvZHlcRWRlZm9wdFxkZWZvcHR4XGRlZm9wdGhlYWRlcn1/b3B0 aGVhZGVyATI4NDQsOTM5MDgKK1xkZWZcZGVmb3B0aGVhZGVyICMxIzJ7f2RlZm9wdGhlYWRlcgEy ODQ2LDkzOTY4CiBcYmVnaW5ncm91cFxkZWZuYW1lIHt/bmFtZQEyODQ3LDk0MDM5CiBcZGVmdmFy YXJncyB7f3ZhcmFyZ3MBMjg0OCw5NDA3OAotXGRlZlxkZWZ0eXBldmFye39cZGVmdHlwZXZhcgEy ODUzLDk0MTM1Ci1cZGVmXGRlZnR5cGV2YXJoZWFkZXIgIzEjMnt/XGRlZnR5cGV2YXJoZWFkZXIB Mjg1Niw5NDI1MQorXGRlZlxkZWZ0eXBldmFye39kZWZ0eXBldmFyATI4NTMsOTQxMzUKK1xkZWZc ZGVmdHlwZXZhcntcZGVmdmFycGFyc2Vib2R5XEVkZWZ0eXBldmFyXGRlZnR5cGV2YXJ4XGRlZnR5 cGV2YXJoZWFkZXJ9f3ZhcnBhcnNlYm9keVxFZGVmdHlwZXZhcgEyODUzLDk0MTM1CitcZGVmXGRl ZnR5cGV2YXJ7XGRlZnZhcnBhcnNlYm9keVxFZGVmdHlwZXZhclxkZWZ0eXBldmFyeFxkZWZ0eXBl dmFyaGVhZGVyfX90eXBldmFyeFxkZWZ0eXBldmFyaGVhZGVyATI4NTMsOTQxMzUKK1xkZWZcZGVm dHlwZXZhcntcZGVmdmFycGFyc2Vib2R5XEVkZWZ0eXBldmFyXGRlZnR5cGV2YXJ4XGRlZnR5cGV2 YXJoZWFkZXJ9f3R5cGV2YXJoZWFkZXIBMjg1Myw5NDEzNQorXGRlZlxkZWZ0eXBldmFyaGVhZGVy ICMxIzJ7f2RlZnR5cGV2YXJoZWFkZXIBMjg1Niw5NDI1MQogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7 f25hbWUBMjg1OCw5NDMzNAotXGRlZlxkZWZ0eXBldnJ7f1xkZWZ0eXBldnIBMjg2NSw5NDUwOAot XGRlZlxkZWZ0eXBldnJoZWFkZXIgIzEjMiMze39cZGVmdHlwZXZyaGVhZGVyATI4NjcsOTQ1NzkK K1xkZWZcZGVmdHlwZXZye39kZWZ0eXBldnIBMjg2NSw5NDUwOAorXGRlZlxkZWZ0eXBldnJ7XGRl ZnZycGFyc2Vib2R5XEVkZWZ0eXBldnJcZGVmdHlwZXZyeFxkZWZ0eXBldnJoZWFkZXJ9f3ZycGFy c2Vib2R5XEVkZWZ0eXBldnIBMjg2NSw5NDUwOAorXGRlZlxkZWZ0eXBldnJ7XGRlZnZycGFyc2Vi b2R5XEVkZWZ0eXBldnJcZGVmdHlwZXZyeFxkZWZ0eXBldnJoZWFkZXJ9f3R5cGV2cnhcZGVmdHlw ZXZyaGVhZGVyATI4NjUsOTQ1MDgKK1xkZWZcZGVmdHlwZXZye1xkZWZ2cnBhcnNlYm9keVxFZGVm dHlwZXZyXGRlZnR5cGV2cnhcZGVmdHlwZXZyaGVhZGVyfX90eXBldnJoZWFkZXIBMjg2NSw5NDUw OAorXGRlZlxkZWZ0eXBldnJoZWFkZXIgIzEjMiMze39kZWZ0eXBldnJoZWFkZXIBMjg2Nyw5NDU3 OQogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjg2OCw5NDYzMQotXGRlZlxkZWZ2cnggIzEg e39cZGVmdnJ4ATI4NzYsOTQ4NjgKLVxkZWZcZGVmdmFyeCAjMSB7f1xkZWZ2YXJ4ATI4NzcsOTQ5 MjUKLVxkZWZcZGVmb3B0eCAjMSB7f1xkZWZvcHR4ATI4NzgsOTQ5ODQKLVxkZWZcZGVmdHlwZXZh cnggIzEge39cZGVmdHlwZXZhcngBMjg3OSw5NTA0MwotXGRlZlxkZWZ0eXBldnJ4ICMxIHt/XGRl ZnR5cGV2cngBMjg4MCw5NTExMAotXGRlZlxkZWZ0cGFyZ3MgIzF7f1xkZWZ0cGFyZ3MBMjg4NSw5 NTI1OQotXGRlZlxkZWZ0cHt/XGRlZnRwATI4ODksOTUzMzkKLVxkZWZcZGVmdHBoZWFkZXIgIzEj MiMze39cZGVmdHBoZWFkZXIBMjg5MSw5NTM5NAorXGRlZlxkZWZ2cnggIzEge39kZWZ2cngBMjg3 Niw5NDg2OAorXGRlZlxkZWZ2YXJ4ICMxIHt/ZGVmdmFyeAEyODc3LDk0OTI1CitcZGVmXGRlZm9w dHggIzEge39kZWZvcHR4ATI4NzgsOTQ5ODQKK1xkZWZcZGVmdHlwZXZhcnggIzEge39kZWZ0eXBl dmFyeAEyODc5LDk1MDQzCitcZGVmXGRlZnR5cGV2cnggIzEge39kZWZ0eXBldnJ4ATI4ODAsOTUx MTAKK1xkZWZcZGVmdHBhcmdzICMxe39kZWZ0cGFyZ3MBMjg4NSw5NTI1OQorXGRlZlxkZWZ0cGFy Z3MgIzF7XGJmIFxkZWZ2YXJhcmdze392YXJhcmdzATI4ODUsOTUyNTkKK1xkZWZcZGVmdHB7f2Rl ZnRwATI4ODksOTUzMzkKK1xkZWZcZGVmdHB7XGRlZnZycGFyc2Vib2R5XEVkZWZ0cFxkZWZ0cHhc ZGVmdHBoZWFkZXJ9f3ZycGFyc2Vib2R5XEVkZWZ0cAEyODg5LDk1MzM5CitcZGVmXGRlZnRwe1xk ZWZ2cnBhcnNlYm9keVxFZGVmdHBcZGVmdHB4XGRlZnRwaGVhZGVyfX90cHhcZGVmdHBoZWFkZXIB Mjg4OSw5NTMzOQorXGRlZlxkZWZ0cHtcZGVmdnJwYXJzZWJvZHlcRWRlZnRwXGRlZnRweFxkZWZ0 cGhlYWRlcn1/dHBoZWFkZXIBMjg4OSw5NTMzOQorXGRlZlxkZWZ0cGhlYWRlciAjMSMyIzN7f2Rl ZnRwaGVhZGVyATI4OTEsOTUzOTQKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI4OTIsOTU0 NDIKLVxkZWZcZGVmdHB4ICMxIHt/XGRlZnRweAEyODk3LDk1NjAxCi1cZGVmXHNldHJlZiMxe39c c2V0cmVmATI5MDgsOTU5MjIKLVxkZWZcdW5udW1ic2V0cmVmIzF7f1x1bm51bWJzZXRyZWYBMjkx Myw5NjAzNgotXGRlZlxhcHBlbmRpeHNldHJlZiMxe39cYXBwZW5kaXhzZXRyZWYBMjkxOCw5NjE0 MwotXGRlZlxweHJlZiMxe39ccHhyZWYBMjkyOSw5NjU1NAotXGRlZlx4cmVmIzF7f1x4cmVmATI5 MzAsOTY1OTAKLVxkZWZccmVmIzF7f1xyZWYBMjkzMSw5NjYyNQotXGRlZlx4cmVmWFsjMSwjMiwj MywjNCwjNSwjNl17f1x4cmVmWFsBMjkzMiw5NjY1NQotXGRlZlxwcmludGVkbWFudWFse39ccHJp bnRlZG1hbnVhbAEyOTMzLDk2Njk4Ci1cZGVmXHByaW50ZWRub2RlbmFtZXt/XHByaW50ZWRub2Rl bmFtZQEyOTM0LDk2NzM2Ci1cZGVmXHByaW50ZWRub2RlbmFtZXt/XHByaW50ZWRub2RlbmFtZQEy OTM5LDk2ODYxCi1zZWN0aW9uIGBgXHByaW50ZWRub2RlbmFtZScnIGluIFxjaXRle1xwcmludGVk bWFudWFsfX9ccHJpbnRlZG1hbnVhbAEyOTU0LDk3NDkzCitcYmVnaW5ncm91cFxkZWZuYW1lIHsj Mn17IzF9XGRlZnRwYXJnc3t/dHBhcmdzATI4OTIsOTU0NDIKK1xkZWZcZGVmdHB4ICMxIHt/ZGVm dHB4ATI4OTcsOTU2MDEKK1xkZWZcc2V0cmVmIzF7f3NldHJlZgEyOTA4LDk1OTIyCitcZGVmXHVu bnVtYnNldHJlZiMxe391bm51bWJzZXRyZWYBMjkxMyw5NjAzNgorXGRlZlxhcHBlbmRpeHNldHJl ZiMxe39hcHBlbmRpeHNldHJlZgEyOTE4LDk2MTQzCitcZGVmXHB4cmVmIzF7f3B4cmVmATI5Mjks OTY1NTQKK1xkZWZceHJlZiMxe394cmVmATI5MzAsOTY1OTAKK1xkZWZccmVmIzF7f3JlZgEyOTMx LDk2NjI1CitcZGVmXHhyZWZYWyMxLCMyLCMzLCM0LCM1LCM2XXt/eHJlZlgBMjkzMiw5NjY1NQor XGRlZlxwcmludGVkbWFudWFse39wcmludGVkbWFudWFsATI5MzMsOTY2OTgKK1xkZWZccHJpbnRl ZG5vZGVuYW1le39wcmludGVkbm9kZW5hbWUBMjkzNCw5NjczNgorXGRlZlxwcmludGVkbm9kZW5h bWV7f3ByaW50ZWRub2RlbmFtZQEyOTM5LDk2ODYxCitzZWN0aW9uIGBgXHByaW50ZWRub2RlbmFt ZScnIGluIFxjaXRle1xwcmludGVkbWFudWFsfX9wcmludGVkbWFudWFsATI5NTQsOTc0OTMKIFxy ZWZ4e394ATI5NTcsOTc1NzEKLVxkZWZcZG9zZXRxICMxIzJ7f1xkb3NldHEBMjk2NSw5Nzc5MQot XGRlZlxpbnRlcm5hbHNldHEgIzEjMnt/XGludGVybmFsc2V0cQEyOTczLDk4MDQ5Ci1cZGVmXFlw YWdlbnVtYmVye39cWXBhZ2VudW1iZXIBMjk3Nyw5ODE1MAotXGRlZlxZdGl0bGV7f1xZdGl0bGUB Mjk3OSw5ODE3NgotXGRlZlxZbm90aGluZ3t/XFlub3RoaW5nATI5ODEsOTgyMDMKLVxkZWZcWXNl Y3Rpb25udW1iZXJhbmR0eXBle39cWXNlY3Rpb25udW1iZXJhbmR0eXBlATI5ODMsOTgyMjAKLVxk ZWZcWWFwcGVuZGl4bGV0dGVyYW5kdHlwZXt/XFlhcHBlbmRpeGxldHRlcmFuZHR5cGUBMjk5Miw5 ODUzNgorXHJlZnh7IzEtc250fXt9IFtccHJpbnRlZG5vZGVuYW1lXSwgcGFnZVx0aWVccmVmeHt/ eAEyOTU3LDk3NTcxCitcZGVmXGRvc2V0cSAjMSMye39kb3NldHEBMjk2NSw5Nzc5MQorXGRlZlxk b3NldHEgIzEjMnt7XGxldFxmb2xpbz0wIFx0dXJub2ZmYWN0aXZlJX9mb2xpbwEyOTY1LDk3Nzkx CitcZWRlZlxuZXh0e39uZXh0ATI5NjYsOTc4MzgKK1xkZWZcaW50ZXJuYWxzZXRxICMxIzJ7f2lu dGVybmFsc2V0cQEyOTczLDk4MDQ5CitcZGVmXFlwYWdlbnVtYmVye39ZcGFnZW51bWJlcgEyOTc3 LDk4MTUwCitcZGVmXFl0aXRsZXt/WXRpdGxlATI5NzksOTgxNzYKK1xkZWZcWW5vdGhpbmd7f1lu b3RoaW5nATI5ODEsOTgyMDMKK1xkZWZcWXNlY3Rpb25udW1iZXJhbmR0eXBle39Zc2VjdGlvbm51 bWJlcmFuZHR5cGUBMjk4Myw5ODIyMAorXGRlZlxZYXBwZW5kaXhsZXR0ZXJhbmR0eXBle39ZYXBw ZW5kaXhsZXR0ZXJhbmR0eXBlATI5OTIsOTg1MzYKIFxpZm51bVxzZWNubz0wIEFwcGVuZGl4XHhy ZWZ0aWUnY2hhclx0aGVcYXBwZW5kaXhub3t/bm8BMjk5Myw5ODU2NgotXGVsc2UgXGlmbnVtIFxz dWJzZWNubz0wIFNlY3Rpb25ceHJlZnRpZSdjaGFyXHRoZVxhcHBlbmRpeG5vLlx0aGVcc2Vjbm8g JX9uby5cdGhlXHNlY25vATI5OTQsOTg2MjEKLVNlY3Rpb25ceHJlZnRpZSdjaGFyXHRoZVxhcHBl bmRpeG5vLlx0aGVcc2Vjbm8uXHRoZVxzdWJzZWNubyAlf25vLlx0aGVcc2Vjbm8uXHRoZVxzdWJz ZWNubwEyOTk2LDk4NzI1Ci1TZWN0aW9uXHhyZWZ0aWUnY2hhclx0aGVcYXBwZW5kaXhuby5cdGhl XHNlY25vLlx0aGVcc3Vic2Vjbm8uXHRoZVxzdWJzdWJzZWNubyAlf25vLlx0aGVcc2Vjbm8uXHRo ZVxzdWJzZWNuby5cdGhlXHN1YnN1YnNlY25vATI5OTgsOTg3OTYKLSAgXGRlZlxsaW5lbnVtYmVy e39cbGluZW51bWJlcgEzMDA5LDk5MTM1Ci1cZGVmXHJlZngjMSMye39ccmVmeAEzMDE1LDk5MzE5 Ci1cZGVmXHhyZGVmICMxIzJ7f1x4cmRlZgEzMDM3LDk5OTQ1Ci1cZGVmXHJlYWRhdXhmaWxle39c cmVhZGF1eGZpbGUBMzA0MCwxMDAwMzAKLVxkZWZcc3VwZXJlamVjdHt/XHN1cGVyZWplY3QBMzEx MCwxMDE4MTEKLVxmb290c3RydXRccGFyaW5kZW50PVxkZWZhdWx0cGFyaW5kZW50XGhhbmdcdGV4 dGluZGVudHt/YXVsdHBhcmluZGVudFxoYW5nXHRleHRpbmRlbnQBMzEzMSwxMDI0OTYKLVxkZWZc b3BlbmluZGljZXN7f1xvcGVuaW5kaWNlcwEzMTM5LDEwMjY4MgorXGVsc2UgXGlmbnVtIFxzdWJz ZWNubz0wIFNlY3Rpb25ceHJlZnRpZSdjaGFyXHRoZVxhcHBlbmRpeG5vLlx0aGVcc2Vjbm8gJX9u by5cdGhlATI5OTQsOTg2MjEKK1NlY3Rpb25ceHJlZnRpZSdjaGFyXHRoZVxhcHBlbmRpeG5vLlx0 aGVcc2Vjbm8uXHRoZVxzdWJzZWNubyAlf25vLlx0aGUBMjk5Niw5ODcyNQorU2VjdGlvblx4cmVm dGllJ2NoYXJcdGhlXGFwcGVuZGl4bm8uXHRoZVxzZWNuby5cdGhlXHN1YnNlY25vLlx0aGVcc3Vi c3Vic2Vjbm8gJX9uby5cdGhlATI5OTgsOTg3OTYKK1xnZGVmXHhyZWZ0aWV7f3hyZWZ0aWUBMzAw MSw5ODg5MQorICBcbGV0XGxpbmVudW1iZXIgPSBcZW1wdHkgJSBOb24tMy4wLn9saW5lbnVtYmVy ATMwMDcsOTkwOTEKKyAgXGRlZlxsaW5lbnVtYmVye39saW5lbnVtYmVyATMwMDksOTkxMzUKK1xk ZWZccmVmeCMxIzJ7f3JlZngBMzAxNSw5OTMxOQorXGRlZlx4cmRlZiAjMSMye394cmRlZgEzMDM3 LDk5OTQ1Cit7XGNhdGNvZGVgXCc9XG90aGVyXGV4cGFuZGFmdGVyIFxnZGVmIFxjc25hbWUgWCMx XGVuZGNzbmFtZSB7f2NzbmFtZQEzMDM4LDk5OTYyCitcZGVmXHJlYWRhdXhmaWxle39yZWFkYXV4 ZmlsZQEzMDQwLDEwMDAzMAorXGRlZlxzdXBlcmVqZWN0e39zdXBlcmVqZWN0ATMxMTAsMTAxODEx CitcbGV0XGZvb3Rub3Rlc3R5bGU9XGNvbW1lbnR/Zm9vdG5vdGVzdHlsZQEzMTEzLDEwMTkxOAor XGxldFxwdGV4Zm9vdG5vdGU9XGZvb3Rub3Rlf3B0ZXhmb290bm90ZQEzMTE1LDEwMTk0NworXGxv bmdcZ2RlZlxmb290bm90ZSAjMXt/Zm9vdG5vdGUBMzExOCwxMDE5OTMKK1xlZGVmXHRoaXNmb290 bm97f3RoaXNmb290bm8BMzEyMCwxMDIwNjAKK1xsZXRcQHNmXGVtcHR5f0BzZgEzMTIxLDEwMjEw MAorXGlmaG1vZGVcZWRlZlxAc2Z7f0BzZgEzMTIyLDEwMjExNQorXGxvbmdcZ2RlZlxmb290bm90 ZXp6eiAjMXt/Zm9vdG5vdGV6enoBMzEyNiwxMDIyMjgKK1xmb290c3RydXRccGFyaW5kZW50PVxk ZWZhdWx0cGFyaW5kZW50XGhhbmdcdGV4dGluZGVudHt/YXVsdHBhcmluZGVudFxoYW5nATMxMzEs MTAyNDk2CitcZGVmXG9wZW5pbmRpY2Vze39vcGVuaW5kaWNlcwEzMTM5LDEwMjY4MgorXG5ld2Rp bWVuXGRlZmF1bHRwYXJpbmRlbnQgXGRlZmF1bHRwYXJpbmRlbnQgPSAxNXB0f2F1bHRwYXJpbmRl bnQBMzE1MSwxMDI5MDcKIFxuZXdkaW1lblxkZWZhdWx0cGFyaW5kZW50IFxkZWZhdWx0cGFyaW5k ZW50ID0gMTVwdH9hdWx0cGFyaW5kZW50ATMxNTEsMTAyOTA3CiBccGFyaW5kZW50ID0gXGRlZmF1 bHRwYXJpbmRlbnR/YXVsdHBhcmluZGVudAEzMTUyLDEwMjk1OQotXGRlZlxzbWFsbGJvb2t7f1xz bWFsbGJvb2sBMzE3NSwxMDM2ODMKLVxnbG9iYWxcZGVmXEVzbWFsbGV4YW1wbGV7f1xFc21hbGxl eGFtcGxlATMxOTIsMTA0MTEwCi1cZGVmXGFmb3VycGFwZXJ7f1xhZm91cnBhcGVyATMxOTYsMTA0 MjAxCi1cZGVmXGZpbmFsb3V0e39cZmluYWxvdXQBMzIyNCwxMDUwMDkKLVxkZWZcbm9ybWFsZG91 YmxlcXVvdGV7f1xub3JtYWxkb3VibGVxdW90ZQEzMjM1LDEwNTI3MAotXGRlZlxub3JtYWx0aWxk ZXt/XG5vcm1hbHRpbGRlATMyMzYsMTA1Mjk2Ci1cZGVmXG5vcm1hbGNhcmV0e39cbm9ybWFsY2Fy ZXQBMzIzNywxMDUzMTYKLVxkZWZcbm9ybWFsdW5kZXJzY29yZXt/XG5vcm1hbHVuZGVyc2NvcmUB MzIzOCwxMDUzMzYKLVxkZWZcbm9ybWFsdmVydGljYWxiYXJ7f1xub3JtYWx2ZXJ0aWNhbGJhcgEz MjM5LDEwNTM2MQotXGRlZlxub3JtYWxsZXNze39cbm9ybWFsbGVzcwEzMjQwLDEwNTM4NwotXGRl Zlxub3JtYWxncmVhdGVye39cbm9ybWFsZ3JlYXRlcgEzMjQxLDEwNTQwNgotXGRlZlxub3JtYWxw bHVze39cbm9ybWFscGx1cwEzMjQyLDEwNTQyOAotXGRlZlxpZnVzaW5ndHQjMSMye39caWZ1c2lu Z3R0ATMyNTMsMTA1OTIwCi1cZGVmXGFjdGl2ZWRvdWJsZXF1b3Rle39cYWN0aXZlZG91YmxlcXVv dGUBMzI2MSwxMDYyNDgKK1xkZWZcc21hbGxib29re39zbWFsbGJvb2sBMzE3NSwxMDM2ODMKK1xn bG9iYWxcbGV0XHNtYWxsbGlzcD1cc21hbGxsaXNweH9zbWFsbGxpc3ABMzE5MCwxMDQwMzkKK1xn bG9iYWxcbGV0XHNtYWxsZXhhbXBsZT1cc21hbGxsaXNweH9zbWFsbGV4YW1wbGUBMzE5MSwxMDQw NzMKK1xnbG9iYWxcZGVmXEVzbWFsbGV4YW1wbGV7f0VzbWFsbGV4YW1wbGUBMzE5MiwxMDQxMTAK K1xkZWZcYWZvdXJwYXBlcnt/YWZvdXJwYXBlcgEzMTk2LDEwNDIwMQorXGRlZlxmaW5hbG91dHt/ ZmluYWxvdXQBMzIyNCwxMDUwMDkKK1xkZWZcbm9ybWFsZG91YmxlcXVvdGV7f25vcm1hbGRvdWJs ZXF1b3RlATMyMzUsMTA1MjcwCitcZGVmXG5vcm1hbHRpbGRle39ub3JtYWx0aWxkZQEzMjM2LDEw NTI5NgorXGRlZlxub3JtYWxjYXJldHt/bm9ybWFsY2FyZXQBMzIzNywxMDUzMTYKK1xkZWZcbm9y bWFsdW5kZXJzY29yZXt/bm9ybWFsdW5kZXJzY29yZQEzMjM4LDEwNTMzNgorXGRlZlxub3JtYWx2 ZXJ0aWNhbGJhcnt/bm9ybWFsdmVydGljYWxiYXIBMzIzOSwxMDUzNjEKK1xkZWZcbm9ybWFsbGVz c3t/bm9ybWFsbGVzcwEzMjQwLDEwNTM4NworXGRlZlxub3JtYWxncmVhdGVye39ub3JtYWxncmVh dGVyATMyNDEsMTA1NDA2CitcZGVmXG5vcm1hbHBsdXN7f25vcm1hbHBsdXMBMzI0MiwxMDU0MjgK K1xkZWZcaWZ1c2luZ3R0IzEjMnt/aWZ1c2luZ3R0ATMyNTMsMTA1OTIwCitcZGVmXGFjdGl2ZWRv dWJsZXF1b3Rle39hY3RpdmVkb3VibGVxdW90ZQEzMjYxLDEwNjI0OAorXGxldCI9XGFjdGl2ZWRv dWJsZXF1b3RlfyIBMzI2MiwxMDYyODkKIFxkZWZ+e39+ATMyNjQsMTA2MzM0CiBcZGVmXnt/XgEz MjY3LDEwNjM5NQogXGRlZl97f18BMzI3MCwxMDY0MzQKLVxkZWZcX3t/XF8BMzI3MiwxMDY1MDgK LVxkZWZcbHZ2bW9kZXt/XGx2dm1vZGUBMzI3OSwxMDY4NDUKK1xkZWZcX3t/XwEzMjcyLDEwNjUw OAorXGRlZlxsdnZtb2Rle39sdnZtb2RlATMyNzksMTA2ODQ1CiBcZGVmfHt/fAEzMjgyLDEwNjg5 NQogXGRlZjx7fzwBMzI4NSwxMDY5NTgKIFxkZWY+e38+ATMyODgsMTA3MDE1CiBcZGVmK3t/KwEz MjkwLDEwNzA1MwotXGRlZlx0dXJub2ZmYWN0aXZle39cdHVybm9mZmFjdGl2ZQEzMjk2LDEwNzIx NAorXGRlZlx0dXJub2ZmYWN0aXZle390dXJub2ZmYWN0aXZlATMyOTYsMTA3MjE0CitcZGVmXHR1 cm5vZmZhY3RpdmV7XGxldCI9XG5vcm1hbGRvdWJsZXF1b3RlfyIBMzI5NiwxMDcyMTQKK1xsZXR+ PVxub3JtYWx0aWxkZX9+ATMyOTcsMTA3MjU4CitcbGV0Xj1cbm9ybWFsY2FyZXR/XgEzMjk4LDEw NzI3NworXGxldF89XG5vcm1hbHVuZGVyc2NvcmV/XwEzMjk5LDEwNzI5NgorXGxldHw9XG5vcm1h bHZlcnRpY2FsYmFyf3wBMzMwMCwxMDczMjAKK1xsZXQ8PVxub3JtYWxsZXNzfzwBMzMwMSwxMDcz NDUKK1xsZXQ+PVxub3JtYWxncmVhdGVyfz4BMzMwMiwxMDczNjMKK1xsZXQrPVxub3JtYWxwbHVz fX8rATMzMDMsMTA3Mzg0CiBcZ2xvYmFsXGRlZj17fz0BMzMwNywxMDc1MDAKLVxkZWZcbm9ybWFs YmFja3NsYXNoe39cbm9ybWFsYmFja3NsYXNoATMzMjEsMTA3ODgyCitcZGVmXG5vcm1hbGJhY2tz bGFzaHt/bm9ybWFsYmFja3NsYXNoATMzMjEsMTA3ODgyCiAMCiBtZXJjLXNyYy9hY2N1bXVsYXRv ci5tLDMyMjgKIDotIGludGVyZmFjZX8xNDYsNTM3MQpkaWZmIC0tZ2l0IGEvdGVzdC9tYW51YWwv ZXRhZ3MvRVRBR1MuZ29vZF81IGIvdGVzdC9tYW51YWwvZXRhZ3MvRVRBR1MuZ29vZF81CmluZGV4 IDNlMjM4YTUwZjM4Li4yNjM4NTk0M2YyZCAxMDA2NDQKLS0tIGEvdGVzdC9tYW51YWwvZXRhZ3Mv RVRBR1MuZ29vZF81CisrKyBiL3Rlc3QvbWFudWFsL2V0YWdzL0VUQUdTLmdvb2RfNQpAQCAtNDI5 MCw4ICs0MjkwLDggQEAgc2NtLXNyYy90ZXN0LnNjbSwyNjAKIChkZWZpbmUgKCgoKChjdXJyeS10 ZXN0IH8xNCwyMDUKIChkZWZpbmUtc3ludGF4IHRlc3QtYmVnaW5/MTcsMjY1CiAMCi10ZXgtc3Jj L3Rlc3RlbnYudGV4LDUyCi1cbmV3Y29tbWFuZHtcbm19f1xubQE0LDc3Cit0ZXgtc3JjL3Rlc3Rl bnYudGV4LDUxCitcbmV3Y29tbWFuZHtcbm19f25tATQsNzcKIFxzZWN0aW9ue2JsYWh9f2JsYWgB OCwxMzkKIAwKIHRleC1zcmMvZ3ppcC50ZXhpLDMwMwpAQCAtNDMwNiw3MjIgKzQzMDYsMTE0MiBA QCB0ZXgtc3JjL2d6aXAudGV4aSwzMDMKIEBub2RlIFByb2JsZW1zLH80NjAsMTY3NjkKIEBub2Rl IENvbmNlcHQgSW5kZXgsf0NvbmNlcHQgSW5kZXgBNDczLDE3Mjg5CiAMCi10ZXgtc3JjL3RleGlu Zm8udGV4LDMwNjI3Ci1cZGVmXHRleGluZm92ZXJzaW9ue39cdGV4aW5mb3ZlcnNpb24BMjYsMTAz NQotXGRlZlx0aWV7f1x0aWUBNDksMTUyNgotXGRlZlxnbG9nZ2luZ2FsbHt/XGdsb2dnaW5nYWxs ATcyLDIyNzYKLVxkZWZcbG9nZ2luZ2FsbHt/XGxvZ2dpbmdhbGwBNzMsMjM0NQotXGRlZlxvbmVw YWdlb3V0IzF7f1xvbmVwYWdlb3V0ATk5LDMyODIKLVxkZWZcY3JvcHBhZ2VvdXQjMXt/XGNyb3Bw YWdlb3V0ATExNSw0MDMyCi1cZGVmXGNyb3BtYXJrc3t/XGNyb3BtYXJrcwExNDIsNTA5MgotXGRl ZlxwYWdlYm9keSMxe39ccGFnZWJvZHkBMTQ0LDUxMzkKLVxkZWZcZXd0b3B7f1xld3RvcAExNTcs NTU5NAotXGRlZlxuc3RvcHt/XG5zdG9wATE1OCw1NjU4Ci1cZGVmXGV3Ym90e39cZXdib3QBMTYw LDU3NDEKLVxkZWZcbnNib3R7f1xuc2JvdAExNjEsNTgwNQotXGRlZlxwYXJzZWFyZyAjMXt/XHBh cnNlYXJnATE3MCw2MTA0Ci1cZGVmXHBhcnNlYXJneHt/XHBhcnNlYXJneAExNzIsNjE4MgotXGRl ZlxwYXJzZWFyZ2xpbmV7f1xwYXJzZWFyZ2xpbmUBMTgyLDY0MjIKLVxkZWZcZmx1c2hjcnt/XGZs dXNoY3IBMTg2LDY1NDMKLVxuZXdpZlxpZkVOViBcRU5WZmFsc2UgXGRlZlxpbkVOVnt/XGluRU5W ATE5MCw2NzQyCi1cZGVmXEVOVmNoZWNre39cRU5WY2hlY2sBMTkxLDY4MDYKLVxvdXRlclxkZWZc YmVnaW57f1xiZWdpbgExOTgsNzA1MwotXGRlZlxiZWdpbnh4eCAjMXt/XGJlZ2lueHh4ATIwMCw3 MDkxCi1cZGVmXGVuZHt/XGVuZAEyMDgsNzM0NgotXGRlZlxlbmR4eHggIzF7f1xlbmR4eHgBMjEw LDczNzQKLVxkZWZcZXJyb3JFIzF7f1xlcnJvckUBMjE2LDc1NjMKLVxkZWZcc2luZ2xlc3BhY2V7 f1xzaW5nbGVzcGFjZQEyMjIsNzc1NwotXGRlZlxAe39cQAEyMzIsNzk4MAotXGRlZlxge39cYAEy MzYsODA4MAotXGRlZlwne39cJwEyMzcsODA5MgotXGRlZlxteWxicmFjZSB7f1xteWxicmFjZQEy NDEsODE0MAotXGRlZlxteXJicmFjZSB7f1xteXJicmFjZQEyNDIsODE3MwotXGRlZlw6e39cOgEy NDcsODI4NwotXGRlZlwqe39cKgEyNTAsODM0MQotXGRlZlwue39cLgEyNTMsODQxNwotXGRlZlx3 IzF7f1x3ATI1OCw4NjQ4Ci1cZGVmXGdyb3Vwe39cZ3JvdXABMjY4LDkxMzEKLSAgXGRlZlxFZ3Jv dXB7f1xFZ3JvdXABMjczLDkyOTUKLVxkZWZcbmVlZHt/XG5lZWQBMjg5LDk3MzcKLVxkZWZcbmVl ZHgjMXt/XG5lZWR4ATMwMCwxMDAxNAotXGRlZlxkb3Rze39cZG90cwEzMzksMTE0MDAKLVxkZWZc cGFnZXt/XHBhZ2UBMzQzLDExNDY0Ci1cZGVmXGV4ZGVudHt/XGV4ZGVudAEzNTMsMTE3OTEKLVxk ZWZcZXhkZW50eXl5ICMxe39cZXhkZW50eXl5ATM1NCwxMTgyNAotXGRlZlxub2ZpbGxleGRlbnR7 f1xub2ZpbGxleGRlbnQBMzU3LDExOTY4Ci1cZGVmXG5vZmlsbGV4ZGVudHl5eSAjMXt/XG5vZmls bGV4ZGVudHl5eQEzNTgsMTIwMTMKLVxkZWZcaW5jbHVkZXt/XGluY2x1ZGUBMzY1LDEyMTk3Ci1c ZGVmXGluY2x1ZGV6enogIzF7f1xpbmNsdWRlenp6ATM2NiwxMjIzMgotXGRlZlx0aGlzZmlsZXt/ XHRoaXNmaWxlATM2OSwxMjI4MwotXGRlZlxjZW50ZXJ7f1xjZW50ZXIBMzczLDEyMzQ2Ci1cZGVm XGNlbnRlcnp6eiAjMXt/XGNlbnRlcnp6egEzNzQsMTIzNzkKLVxkZWZcc3B7f1xzcAEzODAsMTI1 MjEKLVxkZWZcc3B4eHggIzF7f1xzcHh4eAEzODEsMTI1NDYKLVxkZWZcY29tbWVudHt/XGNvbW1l bnQBMzg3LDEyNzIwCi1cZGVmXGNvbW1lbnR4eHggIzF7f1xjb21tZW50eHh4ATM5MCwxMjgxNwot XGRlZlxpZ25vcmVzZWN0aW9uc3t/XGlnbm9yZXNlY3Rpb25zATM5NiwxMjk4NgotXGxldFxjaGFw dGVyPVxyZWxheH89XHJlbGF4ATM5NywxMzAwOAotXGxldFxzZWN0aW9uPVxyZWxheH89XHJlbGF4 ATQwNiwxMzI1MwotXGxldFxzdWJzZWN0aW9uPVxyZWxheH89XHJlbGF4ATQwOSwxMzMxNAotXGxl dFxzdWJzdWJzZWN0aW9uPVxyZWxheH89XHJlbGF4ATQxMCwxMzMzNwotXGxldFxhcHBlbmRpeD1c cmVsYXh/PVxyZWxheAE0MTEsMTMzNjMKLVxsZXRcYXBwZW5kaXhzZWM9XHJlbGF4f3NlYz1ccmVs YXgBNDEyLDEzMzg0Ci1cbGV0XGFwcGVuZGl4c2VjdGlvbj1ccmVsYXh/c2VjdGlvbj1ccmVsYXgB NDEzLDEzNDA4Ci1cbGV0XGFwcGVuZGl4c3Vic2VjPVxyZWxheH9zdWJzZWM9XHJlbGF4ATQxNCwx MzQzNgotXGxldFxhcHBlbmRpeHN1YnNlY3Rpb249XHJlbGF4f3N1YnNlY3Rpb249XHJlbGF4ATQx NSwxMzQ2MwotXGxldFxhcHBlbmRpeHN1YnN1YnNlYz1ccmVsYXh/c3Vic3Vic2VjPVxyZWxheAE0 MTYsMTM0OTQKLVxsZXRcYXBwZW5kaXhzdWJzdWJzZWN0aW9uPVxyZWxheH9zdWJzdWJzZWN0aW9u PVxyZWxheAE0MTcsMTM1MjQKLVxkZWZcaWdub3Jle39caWdub3JlATQyMywxMzYyNgotXGxvbmdc ZGVmXGlnbm9yZXh4eCAjMVxlbmQgaWdub3Jle39caWdub3JleHh4ATQyNywxMzc2NgotXGRlZlxk aXJlbnRyeXt/XGRpcmVudHJ5ATQyOSwxMzgyNQotXGxvbmdcZGVmXGRpcmVudHJ5eHh4ICMxXGVu ZCBkaXJlbnRyeXt/XGRpcmVudHJ5eHh4ATQzMCwxMzg2NAotXGRlZlxpZnNldHt/XGlmc2V0ATQz NCwxMzk3NAotXGRlZlxpZnNldHh4eCAjMXt/XGlmc2V0eHh4ATQzNiwxNDAzMgotXGRlZlxFaWZz ZXR7f1xFaWZzZXQBNDQwLDE0MTU5Ci1cZGVmXGlmc2V0ZmFpbHt/XGlmc2V0ZmFpbAE0NDEsMTQx NzMKLVxsb25nXGRlZlxpZnNldGZhaWx4eHggIzFcZW5kIGlmc2V0e39caWZzZXRmYWlseHh4ATQ0 MiwxNDIyOQotXGRlZlxpZmNsZWFye39caWZjbGVhcgE0NDQsMTQyOTAKLVxkZWZcaWZjbGVhcnh4 eCAjMXt/XGlmY2xlYXJ4eHgBNDQ2LDE0MzUyCi1cZGVmXEVpZmNsZWFye39cRWlmY2xlYXIBNDUw LDE0NDgzCi1cZGVmXGlmY2xlYXJmYWlse39caWZjbGVhcmZhaWwBNDUxLDE0NDk5Ci1cbG9uZ1xk ZWZcaWZjbGVhcmZhaWx4eHggIzFcZW5kIGlmY2xlYXJ7f1xpZmNsZWFyZmFpbHh4eAE0NTIsMTQ1 NTkKLVxkZWZcc2V0e39cc2V0ATQ1NiwxNDcxMAotXGRlZlxzZXR4eHggIzF7f1xzZXR4eHgBNDU3 LDE0NzM3Ci1cZGVmXGNsZWFye39cY2xlYXIBNDYwLDE0Nzk5Ci1cZGVmXGNsZWFyeHh4ICMxe39c Y2xlYXJ4eHgBNDYxLDE0ODMwCi1cZGVmXGlmdGV4e39caWZ0ZXgBNDY2LDE0OTQ3Ci1cZGVmXEVp ZnRleHt/XEVpZnRleAE0NjcsMTQ5NjAKLVxkZWZcaWZpbmZve39caWZpbmZvATQ2OCwxNDk3NAot XGxvbmdcZGVmXGlmaW5mb3h4eCAjMVxlbmQgaWZpbmZve39caWZpbmZveHh4ATQ2OSwxNTAyNAot XGxvbmdcZGVmXG1lbnUgIzFcZW5kIG1lbnV7f1xtZW51ATQ3MSwxNTA4MwotXGRlZlxhc2lzIzF7 f1xhc2lzATQ3MiwxNTExMgotXGRlZlxtYXRoIzF7f1xtYXRoATQ4NSwxNTY1NQotXGRlZlxub2Rl e39cbm9kZQE0ODcsMTU2OTkKLVxkZWZcbm9kZXp6eiMxe39cbm9kZXp6egE0ODgsMTU3MzcKLVxk ZWZcbm9kZXh4eFsjMSwjMl17f1xub2RleHh4WwE0ODksMTU3NjgKLVxkZWZcZG9ub2RlcmVme39c ZG9ub2RlcmVmATQ5MiwxNTgzMAotXGRlZlx1bm51bWJub2RlcmVme39cdW5udW1ibm9kZXJlZgE0 OTYsMTU5NTEKLVxkZWZcYXBwZW5kaXhub2RlcmVme39cYXBwZW5kaXhub2RlcmVmATUwMCwxNjA4 MgordGV4LXNyYy90ZXhpbmZvLnRleCw1NTIzNgorXGRlZlx0ZXhpbmZvdmVyc2lvbnt/dGV4aW5m b3ZlcnNpb24BMjYsMTAzNQorXGxldFxwdGV4bGJyYWNlPVx7f3B0ZXhsYnJhY2UBMzUsMTMwOAor XGxldFxwdGV4cmJyYWNlPVx9f3B0ZXhyYnJhY2UBMzYsMTMyNworXGxldFxwdGV4ZG90cz1cZG90 c39wdGV4ZG90cwEzNywxMzQ2CitcbGV0XHB0ZXhkb3Q9XC5/cHRleGRvdAEzOCwxMzY2CitcbGV0 XHB0ZXhzdGFyPVwqf3B0ZXhzdGFyATM5LDEzODIKK1xsZXRccHRleGVuZD1cZW5kf3B0ZXhlbmQB NDAsMTM5OQorXGxldFxwdGV4YnVsbGV0PVxidWxsZXR/cHRleGJ1bGxldAE0MSwxNDE3CitcbGV0 XHB0ZXhiPVxif3B0ZXhiATQyLDE0NDEKK1xsZXRccHRleGM9XGN/cHRleGMBNDMsMTQ1NQorXGxl dFxwdGV4aT1caX9wdGV4aQE0NCwxNDY5CitcbGV0XHB0ZXh0PVx0f3B0ZXh0ATQ1LDE0ODMKK1xs ZXRccHRleGw9XGx/cHRleGwBNDYsMTQ5NworXGxldFxwdGV4TD1cTH9wdGV4TAE0NywxNTExCitc ZGVmXHRpZXt/dGllATQ5LDE1MjYKK1xkZWZcZ2xvZ2dpbmdhbGx7f2dsb2dnaW5nYWxsATcyLDIy NzYKK1xkZWZcbG9nZ2luZ2FsbHt/bG9nZ2luZ2FsbAE3MywyMzQ1CitcZGVmXG9uZXBhZ2VvdXQj MXt/b25lcGFnZW91dAE5OSwzMjgyCitcc2hpcG91dFx2Ym94e3tcbGV0XGhzaXplPVxwYWdld2lk dGggXG1ha2VoZWFkbGluZX1/aHNpemUBMTAzLDM0ODkKK3tcbGV0XGhzaXplPVxwYWdld2lkdGgg XG1ha2Vmb290bGluZX1/aHNpemUBMTA0LDM1NTYKK1xkZWZcY3JvcHBhZ2VvdXQjMXt/Y3JvcHBh Z2VvdXQBMTE1LDQwMzIKKwkJCXtcbGV0XGhzaXplPVxwYWdld2lkdGggXG1ha2VoZWFkbGluZX1/ aHNpemUBMTI2LDQ1MTEKKwkJCXtcbGV0XGhzaXplPVxwYWdld2lkdGggXG1ha2Vmb290bGluZX1/ aHNpemUBMTI4LDQ1NjkKK1xkZWZcY3JvcG1hcmtze39jcm9wbWFya3MBMTQyLDUwOTIKK1xkZWZc Y3JvcG1hcmtze1xsZXRcb25lcGFnZW91dD1cY3JvcHBhZ2VvdXQgfX9vbmVwYWdlb3V0ATE0Miw1 MDkyCitcZGVmXHBhZ2Vib2R5IzF7f3BhZ2Vib2R5ATE0NCw1MTM5CitcZ2RlZlxwYWdlY29udGVu dHMjMXt/cGFnZWNvbnRlbnRzATE0Niw1MjIwCitcZGVmXGV3dG9we39ld3RvcAExNTcsNTU5NAor XGRlZlxuc3RvcHt/bnN0b3ABMTU4LDU2NTgKK1xkZWZcZXdib3R7f2V3Ym90ATE2MCw1NzQxCitc ZGVmXG5zYm90e39uc2JvdAExNjEsNTgwNQorXGRlZlxwYXJzZWFyZyAjMXt/cGFyc2VhcmcBMTcw LDYxMDQKK1xkZWZccGFyc2VhcmcgIzF7XGxldFxuZXh0PSMxXGJlZ2luZ3JvdXBcb2JleWxpbmVz XGZ1dHVyZWxldFx0ZW1wXHBhcnNlYXJneH1/bmV4dAExNzAsNjEwNAorXGRlZlxwYXJzZWFyZ3h7 f3BhcnNlYXJneAExNzIsNjE4MgorXGdkZWZccGFyc2VhcmdkaXNjYXJkc3BhY2Uge39wYXJzZWFy Z2Rpc2NhcmRzcGFjZQExNzgsNjMyMQorXGdkZWZcb2JleWVkc3BhY2V7f29iZXllZHNwYWNlATE4 MCw2Mzk5CitcZGVmXHBhcnNlYXJnbGluZXt/cGFyc2VhcmdsaW5lATE4Miw2NDIyCitcZ2RlZlxw YXJzZWFyZ2xpbmV4ICMxXl5Ne39wYXJzZWFyZ2xpbmV4ATE4NCw2NDkzCitcZGVmXGZsdXNoY3J7 f2ZsdXNoY3IBMTg2LDY1NDMKK1xkZWZcZmx1c2hjcntcaWZ4XHBhclxsaXNwcGFyIFxkZWZcbmV4 dCMjMXt/bmV4dAExODYsNjU0MworXGRlZlxmbHVzaGNye1xpZnhccGFyXGxpc3BwYXIgXGRlZlxu ZXh0IyMxe31cZWxzZSBcbGV0XG5leHQ9XHJlbGF4IFxmaSBcbmV4dH1/bmV4dAExODYsNjU0Mwor XG5ld2lmXGlmRU5WIFxFTlZmYWxzZSBcZGVmXGluRU5We39pbkVOVgExOTAsNjc0MgorXGRlZlxF TlZjaGVja3t/RU5WY2hlY2sBMTkxLDY4MDYKK1xvdXRlclxkZWZcYmVnaW57f2JlZ2luATE5OCw3 MDUzCitcZGVmXGJlZ2lueHh4ICMxe39iZWdpbnh4eAEyMDAsNzA5MQorXGRlZlxlbmR7f2VuZAEy MDgsNzM0NgorXGRlZlxlbmR4eHggIzF7f2VuZHh4eAEyMTAsNzM3NAorXGRlZlxlcnJvckUjMXt/ ZXJyb3JFATIxNiw3NTYzCitcZGVmXHNpbmdsZXNwYWNle39zaW5nbGVzcGFjZQEyMjIsNzc1Nwor XGRlZlxAe39AATIzMiw3OTgwCitcZGVmXGB7f2ABMjM2LDgwODAKK1xkZWZcJ3t/JwEyMzcsODA5 MgorXGRlZlxteWxicmFjZSB7f215bGJyYWNlATI0MSw4MTQwCitcZGVmXG15cmJyYWNlIHt/bXly YnJhY2UBMjQyLDgxNzMKK1xsZXRcez1cbXlsYnJhY2V/ewEyNDMsODIwNgorXGxldFx9PVxteXJi cmFjZX99ATI0NCw4MjIzCitcZGVmXDp7fzoBMjQ3LDgyODcKK1xkZWZcKnt/KgEyNTAsODM0MQor XGRlZlwue38uATI1Myw4NDE3CitcZGVmXHcjMXt/dwEyNTgsODY0OAorXGRlZlxncm91cHt/Z3Jv dXABMjY4LDkxMzEKKyAgXGRlZlxFZ3JvdXB7f0Vncm91cAEyNzMsOTI5NQorXGRlZlxuZWVke39u ZWVkATI4OSw5NzM3CitcZGVmXG5lZWR4IzF7f25lZWR4ATMwMCwxMDAxNAorXGxldFxiciA9IFxw YXJ/YnIBMzM1LDExMzU1CitcZGVmXGRvdHN7f2RvdHMBMzM5LDExNDAwCitcZGVmXHBhZ2V7f3Bh Z2UBMzQzLDExNDY0CitcZGVmXGV4ZGVudHt/ZXhkZW50ATM1MywxMTc5MQorXGRlZlxleGRlbnR5 eXkgIzF7f2V4ZGVudHl5eQEzNTQsMTE4MjQKK1xkZWZcbm9maWxsZXhkZW50e39ub2ZpbGxleGRl bnQBMzU3LDExOTY4CitcZGVmXG5vZmlsbGV4ZGVudHl5eSAjMXt/bm9maWxsZXhkZW50eXl5ATM1 OCwxMjAxMworXGRlZlxpbmNsdWRle39pbmNsdWRlATM2NSwxMjE5NworXGRlZlxpbmNsdWRlenp6 ICMxe39pbmNsdWRlenp6ATM2NiwxMjIzMgorXGRlZlxpbmNsdWRlenp6ICMxe3tcZGVmXHRoaXNm aWxle390aGlzZmlsZQEzNjYsMTIyMzIKK1xkZWZcdGhpc2ZpbGV7f3RoaXNmaWxlATM2OSwxMjI4 MworXGRlZlxjZW50ZXJ7f2NlbnRlcgEzNzMsMTIzNDYKK1xkZWZcY2VudGVyenp6ICMxe39jZW50 ZXJ6enoBMzc0LDEyMzc5CitcZGVmXHNwe39zcAEzODAsMTI1MjEKK1xkZWZcc3B4eHggIzF7f3Nw eHh4ATM4MSwxMjU0NgorXGRlZlxjb21tZW50e39jb21tZW50ATM4NywxMjcyMAorXGRlZlxjb21t ZW50eHh4ICMxe39jb21tZW50eHh4ATM5MCwxMjgxNworXGxldFxjPVxjb21tZW50f2MBMzkyLDEy ODgzCitcZGVmXGlnbm9yZXNlY3Rpb25ze39pZ25vcmVzZWN0aW9ucwEzOTYsMTI5ODYKK1xsZXRc Y2hhcHRlcj1ccmVsYXh/Y2hhcHRlcgEzOTcsMTMwMDgKK1xsZXRcdW5udW1iZXJlZD1ccmVsYXh/ dW5udW1iZXJlZAEzOTgsMTMwMjgKK1xsZXRcdG9wPVxyZWxheH90b3ABMzk5LDEzMDUxCitcbGV0 XHVubnVtYmVyZWRzZWM9XHJlbGF4f3VubnVtYmVyZWRzZWMBNDAwLDEzMDY3CitcbGV0XHVubnVt YmVyZWRzZWN0aW9uPVxyZWxheH91bm51bWJlcmVkc2VjdGlvbgE0MDEsMTMwOTMKK1xsZXRcdW5u dW1iZXJlZHN1YnNlYz1ccmVsYXh/dW5udW1iZXJlZHN1YnNlYwE0MDIsMTMxMjMKK1xsZXRcdW5u dW1iZXJlZHN1YnNlY3Rpb249XHJlbGF4f3VubnVtYmVyZWRzdWJzZWN0aW9uATQwMywxMzE1Mgor XGxldFx1bm51bWJlcmVkc3Vic3Vic2VjPVxyZWxheH91bm51bWJlcmVkc3Vic3Vic2VjATQwNCwx MzE4NQorXGxldFx1bm51bWJlcmVkc3Vic3Vic2VjdGlvbj1ccmVsYXh/dW5udW1iZXJlZHN1YnN1 YnNlY3Rpb24BNDA1LDEzMjE3CitcbGV0XHNlY3Rpb249XHJlbGF4f3NlY3Rpb24BNDA2LDEzMjUz CitcbGV0XHN1YnNlYz1ccmVsYXh/c3Vic2VjATQwNywxMzI3MworXGxldFxzdWJzdWJzZWM9XHJl bGF4f3N1YnN1YnNlYwE0MDgsMTMyOTIKK1xsZXRcc3Vic2VjdGlvbj1ccmVsYXh/c3Vic2VjdGlv bgE0MDksMTMzMTQKK1xsZXRcc3Vic3Vic2VjdGlvbj1ccmVsYXh/c3Vic3Vic2VjdGlvbgE0MTAs MTMzMzcKK1xsZXRcYXBwZW5kaXg9XHJlbGF4f2FwcGVuZGl4ATQxMSwxMzM2MworXGxldFxhcHBl bmRpeHNlYz1ccmVsYXh/YXBwZW5kaXhzZWMBNDEyLDEzMzg0CitcbGV0XGFwcGVuZGl4c2VjdGlv bj1ccmVsYXh/YXBwZW5kaXhzZWN0aW9uATQxMywxMzQwOAorXGxldFxhcHBlbmRpeHN1YnNlYz1c cmVsYXh/YXBwZW5kaXhzdWJzZWMBNDE0LDEzNDM2CitcbGV0XGFwcGVuZGl4c3Vic2VjdGlvbj1c cmVsYXh/YXBwZW5kaXhzdWJzZWN0aW9uATQxNSwxMzQ2MworXGxldFxhcHBlbmRpeHN1YnN1YnNl Yz1ccmVsYXh/YXBwZW5kaXhzdWJzdWJzZWMBNDE2LDEzNDk0CitcbGV0XGFwcGVuZGl4c3Vic3Vi c2VjdGlvbj1ccmVsYXh/YXBwZW5kaXhzdWJzdWJzZWN0aW9uATQxNywxMzUyNAorXGxldFxjb250 ZW50cz1ccmVsYXh/Y29udGVudHMBNDE4LDEzNTU4CitcbGV0XHNtYWxsYm9vaz1ccmVsYXh/c21h bGxib29rATQxOSwxMzU3OQorXGxldFx0aXRsZXBhZ2U9XHJlbGF4f3RpdGxlcGFnZQE0MjAsMTM2 MDEKK1xkZWZcaWdub3Jle39pZ25vcmUBNDIzLDEzNjI2CitcbG9uZ1xkZWZcaWdub3JleHh4ICMx XGVuZCBpZ25vcmV7f2lnbm9yZXh4eAE0MjcsMTM3NjYKK1xkZWZcZGlyZW50cnl7f2RpcmVudHJ5 ATQyOSwxMzgyNQorXGxvbmdcZGVmXGRpcmVudHJ5eHh4ICMxXGVuZCBkaXJlbnRyeXt/ZGlyZW50 cnl4eHgBNDMwLDEzODY0CitcZGVmXGlmc2V0e39pZnNldAE0MzQsMTM5NzQKK1xkZWZcaWZzZXR4 eHggIzF7f2lmc2V0eHh4ATQzNiwxNDAzMgorXGV4cGFuZGFmdGVyXGlmeFxjc25hbWUgSUYjMVxl bmRjc25hbWVccmVsYXggXGxldFx0ZW1wPVxpZnNldGZhaWx/dGVtcAE0MzcsMTQwNTkKK1xlbHNl IFxsZXRcdGVtcD1ccmVsYXggXGZpf3RlbXABNDM4LDE0MTI1CitcZGVmXEVpZnNldHt/RWlmc2V0 ATQ0MCwxNDE1OQorXGRlZlxpZnNldGZhaWx7f2lmc2V0ZmFpbAE0NDEsMTQxNzMKK1xsb25nXGRl ZlxpZnNldGZhaWx4eHggIzFcZW5kIGlmc2V0e39pZnNldGZhaWx4eHgBNDQyLDE0MjI5CitcZGVm XGlmY2xlYXJ7f2lmY2xlYXIBNDQ0LDE0MjkwCitcZGVmXGlmY2xlYXJ4eHggIzF7f2lmY2xlYXJ4 eHgBNDQ2LDE0MzUyCitcZXhwYW5kYWZ0ZXJcaWZ4XGNzbmFtZSBJRiMxXGVuZGNzbmFtZVxyZWxh eCBcbGV0XHRlbXA9XHJlbGF4f3RlbXABNDQ3LDE0MzgxCitcZWxzZSBcbGV0XHRlbXA9XGlmY2xl YXJmYWlsIFxmaX90ZW1wATQ0OCwxNDQ0MworXGRlZlxFaWZjbGVhcnt/RWlmY2xlYXIBNDUwLDE0 NDgzCitcZGVmXGlmY2xlYXJmYWlse39pZmNsZWFyZmFpbAE0NTEsMTQ0OTkKK1xsb25nXGRlZlxp ZmNsZWFyZmFpbHh4eCAjMVxlbmQgaWZjbGVhcnt/aWZjbGVhcmZhaWx4eHgBNDUyLDE0NTU5Citc ZGVmXHNldHt/c2V0ATQ1NiwxNDcxMAorXGRlZlxzZXR4eHggIzF7f3NldHh4eAE0NTcsMTQ3MzcK K1xleHBhbmRhZnRlclxsZXRcY3NuYW1lIElGIzFcZW5kY3NuYW1lPVxzZXR9f2NzbmFtZQE0NTgs MTQ3NTMKK1xkZWZcY2xlYXJ7f2NsZWFyATQ2MCwxNDc5OQorXGRlZlxjbGVhcnh4eCAjMXt/Y2xl YXJ4eHgBNDYxLDE0ODMwCitcZXhwYW5kYWZ0ZXJcbGV0XGNzbmFtZSBJRiMxXGVuZGNzbmFtZT1c cmVsYXh9f2NzbmFtZQE0NjIsMTQ4NDgKK1xkZWZcaWZ0ZXh7f2lmdGV4ATQ2NiwxNDk0NworXGRl ZlxFaWZ0ZXh7f0VpZnRleAE0NjcsMTQ5NjAKK1xkZWZcaWZpbmZve39pZmluZm8BNDY4LDE0OTc0 CitcbG9uZ1xkZWZcaWZpbmZveHh4ICMxXGVuZCBpZmluZm97f2lmaW5mb3h4eAE0NjksMTUwMjQK K1xsb25nXGRlZlxtZW51ICMxXGVuZCBtZW51e39tZW51ATQ3MSwxNTA4MworXGRlZlxhc2lzIzF7 f2FzaXMBNDcyLDE1MTEyCitcbGV0XGltcGxpY2l0bWF0aCA9ICR/aW1wbGljaXRtYXRoATQ4NCwx NTYzMworXGRlZlxtYXRoIzF7f21hdGgBNDg1LDE1NjU1CitcZGVmXG5vZGV7f25vZGUBNDg3LDE1 Njk5CitcZGVmXG5vZGV6enojMXt/bm9kZXp6egE0ODgsMTU3MzcKK1xkZWZcbm9kZXh4eFsjMSwj Ml17f25vZGV4eHgBNDg5LDE1NzY4CitcZGVmXG5vZGV4eHhbIzEsIzJde1xnZGVmXGxhc3Rub2Rl e39sYXN0bm9kZQE0ODksMTU3NjgKK1xsZXRcbGFzdG5vZGU9XHJlbGF4f2xhc3Rub2RlATQ5MCwx NTgwOAorXGRlZlxkb25vZGVyZWZ7f2Rvbm9kZXJlZgE0OTIsMTU4MzAKK1xsZXRcbGFzdG5vZGU9 XHJlbGF4fX9sYXN0bm9kZQE0OTQsMTU5MjgKK1xkZWZcdW5udW1ibm9kZXJlZnt/dW5udW1ibm9k ZXJlZgE0OTYsMTU5NTEKK1xsZXRcbGFzdG5vZGU9XHJlbGF4fX9sYXN0bm9kZQE0OTgsMTYwNTkK K1xkZWZcYXBwZW5kaXhub2RlcmVme39hcHBlbmRpeG5vZGVyZWYBNTAwLDE2MDgyCiBcZXhwYW5k YWZ0ZXJcZXhwYW5kYWZ0ZXJcZXhwYW5kYWZ0ZXJcYXBwZW5kaXhzZXRyZWZ7f3NldHJlZgE1MDEs MTYxMjgKLVxsZXRccmVmaWxsPVxyZWxheH9pbGw9XHJlbGF4ATUwNCwxNjIxNwotXGRlZlxzZXRm aWxlbmFtZXt/XHNldGZpbGVuYW1lATUwOSwxNjQzMQotXG91dGVyXGRlZlxieWV7f1xieWUBNTE4 LDE2Njc3Ci1cZGVmXGluZm9yZWYgIzF7f1xpbmZvcmVmATUyMCwxNjczMwotXGRlZlxpbmZvcmVm enp6ICMxLCMyLCMzLCM0Kip7f1xpbmZvcmVmenp6ATUyMSwxNjc3MQotXGRlZlxsb3Nlc3BhY2Ug IzF7f1xsb3Nlc3BhY2UBNTIzLDE2ODY4Ci1cZGVmXHNme39cc2YBNTMyLDE3MDcyCi1cZm9udFxk ZWZiZj1jbWJ4MTAgc2NhbGVkIFxtYWdzdGVwMSAld2FzIDEzMTR/YmY9Y21ieDEwATU1OCwxNzg2 NwotXGZvbnRcZGVmdHQ9Y210dDEwIHNjYWxlZCBcbWFnc3RlcDF/dHQ9Y210dDEwATU1OSwxNzkx MwotXGRlZlxkZnt/XGRmATU2MCwxNzk0OQotXGRlZlxyZXNldG1hdGhmb250c3t/XHJlc2V0bWF0 aGZvbnRzATYzNSwyMDU0MwotXGRlZlx0ZXh0Zm9udHN7f1x0ZXh0Zm9udHMBNjQ4LDIxMTMyCi1c ZGVmXGNoYXBmb250c3t/XGNoYXBmb250cwE2NTMsMjEzNDcKLVxkZWZcc2VjZm9udHN7f1xzZWNm b250cwE2NTgsMjE1NjMKLVxkZWZcc3Vic2VjZm9udHN7f1xzdWJzZWNmb250cwE2NjMsMjE3NjgK LVxkZWZcaW5kZXhmb250c3t/XGluZGV4Zm9udHMBNjY4LDIxOTg1Ci1cZGVmXHNtYXJ0aXRhbGlj eHt/XHNtYXJ0aXRhbGljeAE2OTEsMjI3MTcKLVxkZWZcc21hcnRpdGFsaWMjMXt/XHNtYXJ0aXRh bGljATY5MiwyMjc5MwotXGxldFxjaXRlPVxzbWFydGl0YWxpY389XHNtYXJ0aXRhbGljATY5OCwy MjkzOAotXGRlZlxiIzF7f1xiATcwMCwyMjk2MgotXGRlZlx0IzF7f1x0ATcwMywyMjk5NwotXGRl ZlxzYW1wICMxe39cc2FtcAE3MDYsMjMxNDkKLVxkZWZca2V5ICMxe39ca2V5ATcwNywyMzE4Mgot XGRlZlxjdHJsICMxe39cY3RybAE3MDgsMjMyNDMKLVxkZWZcdGNsb3NlIzF7f1x0Y2xvc2UBNzE2 LDIzNDQ1Ci1cZGVmXCB7f1wBNzIwLDIzNjExCi1cZGVmXHhrZXl7f1x4a2V5ATcyOCwyMzg4MAot XGRlZlxrYmRmb28jMSMyIzNccGFye39ca2JkZm9vATcyOSwyMzg5NgotXGRlZlxkbW4jMXt/XGRt bgE3MzgsMjQxOTcKLVxkZWZca2JkIzF7f1xrYmQBNzQwLDI0MjI0Ci1cZGVmXGwjMXt/XGwBNzQy LDI0MjgxCi1cZGVmXHIjMXt/XHIBNzQ0LDI0MzEwCi1cZGVmXHNjIzF7f1xzYwE3NDYsMjQzNzgK LVxkZWZcaWkjMXt/XGlpATc0NywyNDQyMQotXGRlZlx0aXRsZWZvbnQjMXt/XHRpdGxlZm9udAE3 NTUsMjQ2NTQKLVxkZWZcdGl0bGVwYWdle39cdGl0bGVwYWdlATc2MSwyNDc1NwotICAgXGRlZlxz dWJ0aXRsZWZvbnR7f1xzdWJ0aXRsZWZvbnQBNzY2LDI0OTg0Ci0gICBcZGVmXGF1dGhvcmZvbnR7 f1xhdXRob3Jmb250ATc2OCwyNTA2OAotICAgXGRlZlx0aXRsZXt/XHRpdGxlATc3NCwyNTI3OAot ICAgXGRlZlx0aXRsZXp6eiMjMXt/XHRpdGxlenp6ATc3NSwyNTMxMwotICAgXGRlZlxzdWJ0aXRs ZXt/XHN1YnRpdGxlATc4MywyNTYyOAotICAgXGRlZlxzdWJ0aXRsZXp6eiMjMXt/XHN1YnRpdGxl enp6ATc4NCwyNTY2OQotICAgXGRlZlxhdXRob3J7f1xhdXRob3IBNzg3LDI1Nzg3Ci0gICBcZGVm XGF1dGhvcnp6eiMjMXt/XGF1dGhvcnp6egE3ODgsMjU4MjQKLSAgIFxkZWZccGFnZXt/XHBhZ2UB Nzk0LDI2MTE1Ci1cZGVmXEV0aXRsZXBhZ2V7f1xFdGl0bGVwYWdlATgwNCwyNjI4NAotXGRlZlxm aW5pc2h0aXRsZXBhZ2V7f1xmaW5pc2h0aXRsZXBhZ2UBODE3LDI2NjcyCi1cZGVmXGV2ZW5oZWFk aW5ne39cZXZlbmhlYWRpbmcBODQ2LDI3NjgwCi1cZGVmXG9kZGhlYWRpbmd7f1xvZGRoZWFkaW5n ATg0NywyNzcyMwotXGRlZlxldmVyeWhlYWRpbmd7f1xldmVyeWhlYWRpbmcBODQ4LDI3NzY0Ci1c ZGVmXGV2ZW5mb290aW5ne39cZXZlbmZvb3RpbmcBODUwLDI3ODEwCi1cZGVmXG9kZGZvb3Rpbmd7 f1xvZGRmb290aW5nATg1MSwyNzg1MwotXGRlZlxldmVyeWZvb3Rpbmd7f1xldmVyeWZvb3RpbmcB ODUyLDI3ODk0Ci1cZGVmXGhlYWRpbmdzICMxIHt/XGhlYWRpbmdzATg5MywyOTU4NgotXGRlZlxI RUFESU5HU29mZnt/XEhFQURJTkdTb2ZmATg5NSwyOTYzNQotXGRlZlxIRUFESU5HU2RvdWJsZXt/ XEhFQURJTkdTZG91YmxlATkwNCwzMDA2MgotXGRlZlxIRUFESU5HU3NpbmdsZXt/XEhFQURJTkdT c2luZ2xlATkxNCwzMDM4MgotXGRlZlxIRUFESU5HU29ue39cSEVBRElOR1NvbgE5MjIsMzA2MDMK LVxkZWZcSEVBRElOR1NhZnRlcnt/XEhFQURJTkdTYWZ0ZXIBOTI0LDMwNjM3Ci1cZGVmXEhFQURJ TkdTZG91YmxleHt/XEhFQURJTkdTZG91YmxleAE5MjYsMzA3MzIKLVxkZWZcSEVBRElOR1NzaW5n bGVhZnRlcnt/XEhFQURJTkdTc2luZ2xlYWZ0ZXIBOTMzLDMwOTIwCi1cZGVmXEhFQURJTkdTc2lu Z2xleHt/XEhFQURJTkdTc2luZ2xleAE5MzQsMzA5ODEKLVxkZWZcdG9kYXl7f1x0b2RheQE5NDMs MzEyNTYKLVxkZWZcdGhpc3RpdGxle39cdGhpc3RpdGxlATk1OCwzMTgwMQotXGRlZlxzZXR0aXRs ZXt/XHNldHRpdGxlATk1OSwzMTgyNgotXGRlZlxzZXR0aXRsZXp6eiAjMXt/XHNldHRpdGxlenp6 ATk2MCwzMTg2MwotXGRlZlxpbnRlcm5hbEJpdGVte39caW50ZXJuYWxCaXRlbQE5OTIsMzI3OTMK LVxkZWZcaW50ZXJuYWxCaXRlbXh7f1xpbnRlcm5hbEJpdGVteAE5OTMsMzI4NDMKLVxkZWZcaW50 ZXJuYWxCeGl0ZW0gIiMxInt/XGludGVybmFsQnhpdGVtATk5NSwzMjg4OAotXGRlZlxpbnRlcm5h bEJ4aXRlbXggIiMxInt/XGludGVybmFsQnhpdGVteAE5OTYsMzI5NjgKLVxkZWZcaW50ZXJuYWxC a2l0ZW17f1xpbnRlcm5hbEJraXRlbQE5OTgsMzMwNDMKLVxkZWZcaW50ZXJuYWxCa2l0ZW14e39c aW50ZXJuYWxCa2l0ZW14ATk5OSwzMzA5NQotXGRlZlxraXRlbXp6eiAjMXt/XGtpdGVtenp6ATEw MDEsMzMxNDIKLVxkZWZceGl0ZW16enogIzF7f1x4aXRlbXp6egExMDA0LDMzMjQ0Ci1cZGVmXGl0 ZW16enogIzF7f1xpdGVtenp6ATEwMDcsMzMzNDcKLVxkZWZcaXRlbXt/XGl0ZW0BMTAzNywzNDQx OAotXGRlZlxpdGVteHt/XGl0ZW14ATEwMzgsMzQ0NjkKLVxkZWZca2l0ZW17f1xraXRlbQExMDM5 LDM0NTIyCi1cZGVmXGtpdGVteHt/XGtpdGVteAExMDQwLDM0NTc1Ci1cZGVmXHhpdGVte39ceGl0 ZW0BMTA0MSwzNDYzMAotXGRlZlx4aXRlbXh7f1x4aXRlbXgBMTA0MiwzNDY4MwotXGRlZlxkZXNj cmlwdGlvbnt/XGRlc2NyaXB0aW9uATEwNDUsMzQ3OTMKLVxkZWZcdGFibGV7f1x0YWJsZQExMDQ3 LDM0ODQzCi1cZGVmXGZ0YWJsZXt/XGZ0YWJsZQExMDUyLDM0OTg3Ci1cZGVmXEVmdGFibGV7f1xF ZnRhYmxlATEwNTYsMzUxMzMKLVxkZWZcdnRhYmxle39cdnRhYmxlATEwNTksMzUyMDIKLVxkZWZc RXZ0YWJsZXt/XEV2dGFibGUBMTA2MywzNTM0OAotXGRlZlxkb250aW5kZXggIzF7f1xkb250aW5k ZXgBMTA2NiwzNTQxNwotXGRlZlxmbml0ZW1pbmRleCAjMXt/XGZuaXRlbWluZGV4ATEwNjcsMzU0 MzcKLVxkZWZcdnJpdGVtaW5kZXggIzF7f1x2cml0ZW1pbmRleAExMDY4LDM1NDgyCi1cZGVmXHRh YmxleiAjMSMyIzMjNCM1IzZ7f1x0YWJsZXoBMTA3NCwzNTYzMQotXGRlZlxFZGVzY3JpcHRpb257 f1xFZGVzY3JpcHRpb24BMTA3NywzNTY4OQotXGRlZlxpdGVtZm9udHt/XGl0ZW1mb250ATEwODIs MzU4OTAKLVxkZWZcRXRhYmxle39cRXRhYmxlATEwOTAsMzYxMTYKLVxkZWZcaXRlbWl6ZXt/XGl0 ZW1pemUBMTEwMywzNjQ0MAotXGRlZlxpdGVtaXplenp6ICMxe39caXRlbWl6ZXp6egExMTA1LDM2 NDc2Ci1cZGVmXGl0ZW1pemV5ICMxIzJ7f1xpdGVtaXpleQExMTEwLDM2NTcxCi1cZGVmIzJ7fzEx MTksMzY4MTcKLVxkZWZcaXRlbWNvbnRlbnRze39caXRlbWNvbnRlbnRzATExMjAsMzY4NTgKLVxk ZWZcYnVsbGV0e39cYnVsbGV0ATExMjMsMzY5MDYKLVxkZWZcbWludXN7f1xtaW51cwExMTI0LDM2 OTMzCi1cZGVmXGZyZW5jaHNwYWNpbmd7f1xmcmVuY2hzcGFjaW5nATExMjgsMzcwNDEKLVxkZWZc c3BsaXRvZmYjMSMyXGVuZG1hcmt7f1xzcGxpdG9mZgExMTM0LDM3MjY2Ci1cZGVmXGVudW1lcmF0 ZXt/XGVudW1lcmF0ZQExMTQwLDM3NDk2Ci1cZGVmXGVudW1lcmF0ZXp6eiAjMXt/XGVudW1lcmF0 ZXp6egExMTQxLDM3NTM1Ci1cZGVmXGVudW1lcmF0ZXkgIzEgIzJcZW5kZW51bWVyYXRleXt/XGVu dW1lcmF0ZXkBMTE0MiwzNzU4OAotICBcZGVmXHRoZWFyZ3t/XHRoZWFyZwExMTQ2LDM3NzM1Ci0g IFxpZnhcdGhlYXJnXGVtcHR5IFxkZWZcdGhlYXJne39cdGhlYXJnATExNDcsMzc3NTQKLVxkZWZc bnVtZXJpY2VudW1lcmF0ZXt/XG51bWVyaWNlbnVtZXJhdGUBMTE4NCwzOTA4OAotXGRlZlxsb3dl cmNhc2VlbnVtZXJhdGV7f1xsb3dlcmNhc2VlbnVtZXJhdGUBMTE5MCwzOTIxOAotXGRlZlx1cHBl cmNhc2VlbnVtZXJhdGV7f1x1cHBlcmNhc2VlbnVtZXJhdGUBMTIwMywzOTU2NQotXGRlZlxzdGFy dGVudW1lcmF0aW9uIzF7f1xzdGFydGVudW1lcmF0aW9uATEyMTksNDAwNTUKLVxkZWZcYWxwaGFl bnVtZXJhdGV7f1xhbHBoYWVudW1lcmF0ZQExMjI3LDQwMjM3Ci1cZGVmXGNhcHNlbnVtZXJhdGV7 f1xjYXBzZW51bWVyYXRlATEyMjgsNDAyNzIKLVxkZWZcRWFscGhhZW51bWVyYXRle39cRWFscGhh ZW51bWVyYXRlATEyMjksNDAzMDYKLVxkZWZcRWNhcHNlbnVtZXJhdGV7f1xFY2Fwc2VudW1lcmF0 ZQExMjMwLDQwMzQwCi1cZGVmXGl0ZW1pemVpdGVte39caXRlbWl6ZWl0ZW0BMTIzNCw0MDQyMAot XGRlZlxuZXdpbmRleCAjMXt/XG5ld2luZGV4ATEyNTksNDEyNzcKLVxkZWZcZGVmaW5kZXh7f1xk ZWZpbmRleAExMjY4LDQxNTY2Ci1cZGVmXG5ld2NvZGVpbmRleCAjMXt/XG5ld2NvZGVpbmRleAEx MjcyLDQxNjc0Ci1cZGVmXGRlZmNvZGVpbmRleHt/XGRlZmNvZGVpbmRleAExMjc5LDQxOTM0Ci1c ZGVmXHN5bmluZGV4ICMxICMyIHt/XHN5bmluZGV4ATEyODMsNDIxMTQKLVxkZWZcc3luY29kZWlu ZGV4ICMxICMyIHt/XHN5bmNvZGVpbmRleAExMjkyLDQyNDU0Ci1cZGVmXGRvaW5kZXgjMXt/XGRv aW5kZXgBMTMwOSw0MzEzMwotXGRlZlxzaW5nbGVpbmRleGVyICMxe39cc2luZ2xlaW5kZXhlcgEx MzEwLDQzMTkyCi1cZGVmXGRvY29kZWluZGV4IzF7f1xkb2NvZGVpbmRleAExMzEzLDQzMzA0Ci1c ZGVmXHNpbmdsZWNvZGVpbmRleGVyICMxe39cc2luZ2xlY29kZWluZGV4ZXIBMTMxNCw0MzM3MQot XGRlZlxpbmRleGR1bW1pZXN7f1xpbmRleGR1bW1pZXMBMTMxNiw0MzQyOQotXGRlZlxfe39cXwEx MzE3LDQzNDQ5Ci1cZGVmXHd7f1x3ATEzMTgsNDM0NzcKLVxkZWZcYmZ7f1xiZgExMzE5LDQzNTA0 Ci1cZGVmXHJte39ccm0BMTMyMCw0MzUzMwotXGRlZlxzbHt/XHNsATEzMjEsNDM1NjIKLVxkZWZc c2Z7f1xzZgExMzIyLDQzNTkxCi1cZGVmXHR0e39cdHQBMTMyMyw0MzYxOQotXGRlZlxndHJ7f1xn dHIBMTMyNCw0MzY0NwotXGRlZlxsZXNze39cbGVzcwExMzI1LDQzNjc3Ci1cZGVmXGhhdHt/XGhh dAExMzI2LDQzNzA5Ci1cZGVmXGNoYXJ7f1xjaGFyATEzMjcsNDM3MzkKLVxkZWZcVGVYe39cVGVY ATEzMjgsNDM3NzEKLVxkZWZcZG90c3t/XGRvdHMBMTMyOSw0MzgwMQotXGRlZlxjb3B5cmlnaHR7 f1xjb3B5cmlnaHQBMTMzMCw0MzgzNAotXGRlZlx0Y2xvc2UjIzF7f1x0Y2xvc2UBMTMzMSw0Mzg3 NwotXGRlZlxjb2RlIyMxe39cY29kZQExMzMyLDQzOTIyCi1cZGVmXHNhbXAjIzF7f1xzYW1wATEz MzMsNDM5NjMKLVxkZWZcdCMjMXt/XHQBMTMzNCw0NDAwNAotXGRlZlxyIyMxe39ccgExMzM1LDQ0 MDM5Ci1cZGVmXGkjIzF7f1xpATEzMzYsNDQwNzQKLVxkZWZcYiMjMXt/XGIBMTMzNyw0NDEwOQot XGRlZlxjaXRlIyMxe39cY2l0ZQExMzM4LDQ0MTQ0Ci1cZGVmXGtleSMjMXt/XGtleQExMzM5LDQ0 MTg1Ci1cZGVmXGZpbGUjIzF7f1xmaWxlATEzNDAsNDQyMjQKLVxkZWZcdmFyIyMxe39cdmFyATEz NDEsNDQyNjUKLVxkZWZca2JkIyMxe39ca2JkATEzNDIsNDQzMDQKLVxkZWZcaW5kZXhkdW1teWZv bnQjMXt/XGluZGV4ZHVtbXlmb250ATEzNDcsNDQ0NjAKLVxkZWZcaW5kZXhkdW1teXRleHt/XGlu ZGV4ZHVtbXl0ZXgBMTM0OCw0NDQ4NgotXGRlZlxpbmRleGR1bW15ZG90c3t/XGluZGV4ZHVtbXlk b3RzATEzNDksNDQ1MTAKLVxkZWZcaW5kZXhub2ZvbnRze39caW5kZXhub2ZvbnRzATEzNTEsNDQ1 MzYKK1xsZXRcbGFzdG5vZGU9XHJlbGF4fX9sYXN0bm9kZQE1MDIsMTYxOTQKK1xsZXRccmVmaWxs PVxyZWxheH9yZWZpbGwBNTA0LDE2MjE3CitcZGVmXHNldGZpbGVuYW1le39zZXRmaWxlbmFtZQE1 MDksMTY0MzEKKyAgIFxnbG9iYWxcbGV0XHNldGZpbGVuYW1lPVxjb21tZW50ICUgSWdub3JlIGV4 dHJhIEBzZXRmaWxlbmFtZSBjbWRzLn9zZXRmaWxlbmFtZQE1MTQsMTY1NjIKK1xvdXRlclxkZWZc Ynlle39ieWUBNTE4LDE2Njc3CitcZGVmXGluZm9yZWYgIzF7f2luZm9yZWYBNTIwLDE2NzMzCitc ZGVmXGluZm9yZWZ6enogIzEsIzIsIzMsIzQqKnt/aW5mb3JlZnp6egE1MjEsMTY3NzEKK1xkZWZc bG9zZXNwYWNlICMxe39sb3Nlc3BhY2UBNTIzLDE2ODY4CitcZGVmXHNme39zZgE1MzIsMTcwNzIK K1xsZXRcbGkgPSBcc2YgJSBTb21ldGltZXMgd2UgY2FsbCBpdCBcbGksIG5vdCBcc2Yuf2xpATUz MywxNzEwMAorXGxldFxtYWlubWFnc3RlcD1cbWFnc3RlcGhhbGZ/bWFpbm1hZ3N0ZXABNTM2LDE3 MjAxCitcbGV0XG1haW5tYWdzdGVwPVxtYWdzdGVwMX9tYWlubWFnc3RlcAE1MzksMTcyNTAKK1xm b250XGRlZmJmPWNtYngxMCBzY2FsZWQgXG1hZ3N0ZXAxICV3YXMgMTMxNH9iZgE1NTgsMTc4NjcK K1xmb250XGRlZnR0PWNtdHQxMCBzY2FsZWQgXG1hZ3N0ZXAxf3R0ATU1OSwxNzkxMworXGRlZlxk Znt/ZGYBNTYwLDE3OTQ5CitcZGVmXGRme1xsZXRcdGVudHQ9XGRlZnR0IFxsZXRcdGVuYmYgPSBc ZGVmYmYgXGJmfX90ZW50dAE1NjAsMTc5NDkKK1xkZWZcZGZ7XGxldFx0ZW50dD1cZGVmdHQgXGxl dFx0ZW5iZiA9IFxkZWZiZiBcYmZ9f3R0ATU2MCwxNzk0OQorXGRlZlxkZntcbGV0XHRlbnR0PVxk ZWZ0dCBcbGV0XHRlbmJmID0gXGRlZmJmIFxiZn1/dGVuYmYBNTYwLDE3OTQ5CitcZGVmXGRme1xs ZXRcdGVudHQ9XGRlZnR0IFxsZXRcdGVuYmYgPSBcZGVmYmYgXGJmfX9iZgE1NjAsMTc5NDkKK1xs ZXRcaW5kc2w9XGluZGl0f2luZHNsATU3MCwxODMxMAorXGxldFxpbmR0dD1cbmluZXR0f2luZHR0 ATU3MSwxODMyOAorXGxldFxpbmRzZj1caW5kcm1/aW5kc2YBNTcyLDE4MzQ3CitcbGV0XGluZGJm PVxpbmRybX9pbmRiZgE1NzMsMTgzNjUKK1xsZXRcaW5kc2M9XGluZHJtf2luZHNjATU3NCwxODM4 MworXGxldFxjaGFwYmY9XGNoYXBybX9jaGFwYmYBNTg0LDE4NjQzCitcbGV0XGF1dGhvcnJtID0g XHNlY3Jtf2F1dGhvcnJtATYyNywyMDE5MworXGRlZlxyZXNldG1hdGhmb250c3t/cmVzZXRtYXRo Zm9udHMBNjM1LDIwNTQzCitcZGVmXHRleHRmb250c3t/dGV4dGZvbnRzATY0OCwyMTEzMgorICBc bGV0XHRlbnJtPVx0ZXh0cm0gXGxldFx0ZW5pdD1cdGV4dGl0IFxsZXRcdGVuc2w9XHRleHRzbH90 ZW5ybQE2NDksMjExNDkKKyAgXGxldFx0ZW5ybT1cdGV4dHJtIFxsZXRcdGVuaXQ9XHRleHRpdCBc bGV0XHRlbnNsPVx0ZXh0c2x/dGVuaXQBNjQ5LDIxMTQ5CisgIFxsZXRcdGVucm09XHRleHRybSBc bGV0XHRlbml0PVx0ZXh0aXQgXGxldFx0ZW5zbD1cdGV4dHNsf3RlbnNsATY0OSwyMTE0OQorICBc bGV0XHRlbmJmPVx0ZXh0YmYgXGxldFx0ZW50dD1cdGV4dHR0IFxsZXRcc21hbGxjYXBzPVx0ZXh0 c2N/dGVuYmYBNjUwLDIxMjA4CisgIFxsZXRcdGVuYmY9XHRleHRiZiBcbGV0XHRlbnR0PVx0ZXh0 dHQgXGxldFxzbWFsbGNhcHM9XHRleHRzY390ZW50dAE2NTAsMjEyMDgKKyAgXGxldFx0ZW5iZj1c dGV4dGJmIFxsZXRcdGVudHQ9XHRleHR0dCBcbGV0XHNtYWxsY2Fwcz1cdGV4dHNjf3NtYWxsY2Fw cwE2NTAsMjEyMDgKKyAgXGxldFx0ZW5zZj1cdGV4dHNmIFxsZXRcdGVuaT1cdGV4dGkgXGxldFx0 ZW5zeT1cdGV4dHN5f3RlbnNmATY1MSwyMTI3MQorICBcbGV0XHRlbnNmPVx0ZXh0c2YgXGxldFx0 ZW5pPVx0ZXh0aSBcbGV0XHRlbnN5PVx0ZXh0c3l/dGVuaQE2NTEsMjEyNzEKKyAgXGxldFx0ZW5z Zj1cdGV4dHNmIFxsZXRcdGVuaT1cdGV4dGkgXGxldFx0ZW5zeT1cdGV4dHN5f3RlbnN5ATY1MSwy MTI3MQorXGRlZlxjaGFwZm9udHN7f2NoYXBmb250cwE2NTMsMjEzNDcKKyAgXGxldFx0ZW5ybT1c Y2hhcHJtIFxsZXRcdGVuaXQ9XGNoYXBpdCBcbGV0XHRlbnNsPVxjaGFwc2wgf3RlbnJtATY1NCwy MTM2NAorICBcbGV0XHRlbnJtPVxjaGFwcm0gXGxldFx0ZW5pdD1cY2hhcGl0IFxsZXRcdGVuc2w9 XGNoYXBzbCB/dGVuaXQBNjU0LDIxMzY0CisgIFxsZXRcdGVucm09XGNoYXBybSBcbGV0XHRlbml0 PVxjaGFwaXQgXGxldFx0ZW5zbD1cY2hhcHNsIH90ZW5zbAE2NTQsMjEzNjQKKyAgXGxldFx0ZW5i Zj1cY2hhcGJmIFxsZXRcdGVudHQ9XGNoYXB0dCBcbGV0XHNtYWxsY2Fwcz1cY2hhcHNjf3RlbmJm ATY1NSwyMTQyNAorICBcbGV0XHRlbmJmPVxjaGFwYmYgXGxldFx0ZW50dD1cY2hhcHR0IFxsZXRc c21hbGxjYXBzPVxjaGFwc2N/dGVudHQBNjU1LDIxNDI0CisgIFxsZXRcdGVuYmY9XGNoYXBiZiBc bGV0XHRlbnR0PVxjaGFwdHQgXGxldFxzbWFsbGNhcHM9XGNoYXBzY39zbWFsbGNhcHMBNjU1LDIx NDI0CisgIFxsZXRcdGVuc2Y9XGNoYXBzZiBcbGV0XHRlbmk9XGNoYXBpIFxsZXRcdGVuc3k9XGNo YXBzeX90ZW5zZgE2NTYsMjE0ODcKKyAgXGxldFx0ZW5zZj1cY2hhcHNmIFxsZXRcdGVuaT1cY2hh cGkgXGxldFx0ZW5zeT1cY2hhcHN5f3RlbmkBNjU2LDIxNDg3CisgIFxsZXRcdGVuc2Y9XGNoYXBz ZiBcbGV0XHRlbmk9XGNoYXBpIFxsZXRcdGVuc3k9XGNoYXBzeX90ZW5zeQE2NTYsMjE0ODcKK1xk ZWZcc2VjZm9udHN7f3NlY2ZvbnRzATY1OCwyMTU2MworICBcbGV0XHRlbnJtPVxzZWNybSBcbGV0 XHRlbml0PVxzZWNpdCBcbGV0XHRlbnNsPVxzZWNzbH90ZW5ybQE2NTksMjE1NzkKKyAgXGxldFx0 ZW5ybT1cc2Vjcm0gXGxldFx0ZW5pdD1cc2VjaXQgXGxldFx0ZW5zbD1cc2Vjc2x/dGVuaXQBNjU5 LDIxNTc5CisgIFxsZXRcdGVucm09XHNlY3JtIFxsZXRcdGVuaXQ9XHNlY2l0IFxsZXRcdGVuc2w9 XHNlY3Nsf3RlbnNsATY1OSwyMTU3OQorICBcbGV0XHRlbmJmPVxzZWNiZiBcbGV0XHRlbnR0PVxz ZWN0dCBcbGV0XHNtYWxsY2Fwcz1cc2Vjc2N/dGVuYmYBNjYwLDIxNjM1CisgIFxsZXRcdGVuYmY9 XHNlY2JmIFxsZXRcdGVudHQ9XHNlY3R0IFxsZXRcc21hbGxjYXBzPVxzZWNzY390ZW50dAE2NjAs MjE2MzUKKyAgXGxldFx0ZW5iZj1cc2VjYmYgXGxldFx0ZW50dD1cc2VjdHQgXGxldFxzbWFsbGNh cHM9XHNlY3Njf3NtYWxsY2FwcwE2NjAsMjE2MzUKKyAgXGxldFx0ZW5zZj1cc2Vjc2YgXGxldFx0 ZW5pPVxzZWNpIFxsZXRcdGVuc3k9XHNlY3N5f3RlbnNmATY2MSwyMTY5NQorICBcbGV0XHRlbnNm PVxzZWNzZiBcbGV0XHRlbmk9XHNlY2kgXGxldFx0ZW5zeT1cc2Vjc3l/dGVuaQE2NjEsMjE2OTUK KyAgXGxldFx0ZW5zZj1cc2Vjc2YgXGxldFx0ZW5pPVxzZWNpIFxsZXRcdGVuc3k9XHNlY3N5f3Rl bnN5ATY2MSwyMTY5NQorXGRlZlxzdWJzZWNmb250c3t/c3Vic2VjZm9udHMBNjYzLDIxNzY4Cisg IFxsZXRcdGVucm09XHNzZWNybSBcbGV0XHRlbml0PVxzc2VjaXQgXGxldFx0ZW5zbD1cc3NlY3Ns f3RlbnJtATY2NCwyMTc4NworICBcbGV0XHRlbnJtPVxzc2Vjcm0gXGxldFx0ZW5pdD1cc3NlY2l0 IFxsZXRcdGVuc2w9XHNzZWNzbH90ZW5pdAE2NjQsMjE3ODcKKyAgXGxldFx0ZW5ybT1cc3NlY3Jt IFxsZXRcdGVuaXQ9XHNzZWNpdCBcbGV0XHRlbnNsPVxzc2Vjc2x/dGVuc2wBNjY0LDIxNzg3Cisg IFxsZXRcdGVuYmY9XHNzZWNiZiBcbGV0XHRlbnR0PVxzc2VjdHQgXGxldFxzbWFsbGNhcHM9XHNz ZWNzY390ZW5iZgE2NjUsMjE4NDYKKyAgXGxldFx0ZW5iZj1cc3NlY2JmIFxsZXRcdGVudHQ9XHNz ZWN0dCBcbGV0XHNtYWxsY2Fwcz1cc3NlY3Njf3RlbnR0ATY2NSwyMTg0NgorICBcbGV0XHRlbmJm PVxzc2VjYmYgXGxldFx0ZW50dD1cc3NlY3R0IFxsZXRcc21hbGxjYXBzPVxzc2Vjc2N/c21hbGxj YXBzATY2NSwyMTg0NgorICBcbGV0XHRlbnNmPVxzc2Vjc2YgXGxldFx0ZW5pPVxzc2VjaSBcbGV0 XHRlbnN5PVxzc2Vjc3l/dGVuc2YBNjY2LDIxOTA5CisgIFxsZXRcdGVuc2Y9XHNzZWNzZiBcbGV0 XHRlbmk9XHNzZWNpIFxsZXRcdGVuc3k9XHNzZWNzeX90ZW5pATY2NiwyMTkwOQorICBcbGV0XHRl bnNmPVxzc2Vjc2YgXGxldFx0ZW5pPVxzc2VjaSBcbGV0XHRlbnN5PVxzc2Vjc3l/dGVuc3kBNjY2 LDIxOTA5CitcZGVmXGluZGV4Zm9udHN7f2luZGV4Zm9udHMBNjY4LDIxOTg1CisgIFxsZXRcdGVu cm09XGluZHJtIFxsZXRcdGVuaXQ9XGluZGl0IFxsZXRcdGVuc2w9XGluZHNsf3RlbnJtATY2OSwy MjAwMworICBcbGV0XHRlbnJtPVxpbmRybSBcbGV0XHRlbml0PVxpbmRpdCBcbGV0XHRlbnNsPVxp bmRzbH90ZW5pdAE2NjksMjIwMDMKKyAgXGxldFx0ZW5ybT1caW5kcm0gXGxldFx0ZW5pdD1caW5k aXQgXGxldFx0ZW5zbD1caW5kc2x/dGVuc2wBNjY5LDIyMDAzCisgIFxsZXRcdGVuYmY9XGluZGJm IFxsZXRcdGVudHQ9XGluZHR0IFxsZXRcc21hbGxjYXBzPVxpbmRzY390ZW5iZgE2NzAsMjIwNTkK KyAgXGxldFx0ZW5iZj1caW5kYmYgXGxldFx0ZW50dD1caW5kdHQgXGxldFxzbWFsbGNhcHM9XGlu ZHNjf3RlbnR0ATY3MCwyMjA1OQorICBcbGV0XHRlbmJmPVxpbmRiZiBcbGV0XHRlbnR0PVxpbmR0 dCBcbGV0XHNtYWxsY2Fwcz1caW5kc2N/c21hbGxjYXBzATY3MCwyMjA1OQorICBcbGV0XHRlbnNm PVxpbmRzZiBcbGV0XHRlbmk9XGluZGkgXGxldFx0ZW5zeT1caW5kc3l/dGVuc2YBNjcxLDIyMTE5 CisgIFxsZXRcdGVuc2Y9XGluZHNmIFxsZXRcdGVuaT1caW5kaSBcbGV0XHRlbnN5PVxpbmRzeX90 ZW5pATY3MSwyMjExOQorICBcbGV0XHRlbnNmPVxpbmRzZiBcbGV0XHRlbmk9XGluZGkgXGxldFx0 ZW5zeT1caW5kc3l/dGVuc3kBNjcxLDIyMTE5CitcZGVmXHNtYXJ0aXRhbGljeHt/c21hcnRpdGFs aWN4ATY5MSwyMjcxNworXGRlZlxzbWFydGl0YWxpYyMxe39zbWFydGl0YWxpYwE2OTIsMjI3OTMK K1xsZXRcaT1cc21hcnRpdGFsaWN/aQE2OTQsMjI4NTEKK1xsZXRcdmFyPVxzbWFydGl0YWxpY392 YXIBNjk1LDIyODcxCitcbGV0XGRmbj1cc21hcnRpdGFsaWN/ZGZuATY5NiwyMjg5MworXGxldFxl bXBoPVxzbWFydGl0YWxpY39lbXBoATY5NywyMjkxNQorXGxldFxjaXRlPVxzbWFydGl0YWxpY39j aXRlATY5OCwyMjkzOAorXGRlZlxiIzF7f2IBNzAwLDIyOTYyCitcbGV0XHN0cm9uZz1cYn9zdHJv bmcBNzAxLDIyOTgxCitcZGVmXHQjMXt/dAE3MDMsMjI5OTcKK1xsZXRcdHRmb250ID0gXHR/dHRm b250ATcwNCwyMzA3MgorXGRlZlxzYW1wICMxe39zYW1wATcwNiwyMzE0OQorXGRlZlxrZXkgIzF7 f2tleQE3MDcsMjMxODIKK1xkZWZcY3RybCAjMXt/Y3RybAE3MDgsMjMyNDMKK1xsZXRcZmlsZT1c c2FtcH9maWxlATcxMCwyMzI4NQorXGRlZlx0Y2xvc2UjMXt/dGNsb3NlATcxNiwyMzQ0NQorXGxl dFxjb2RlPVx0Y2xvc2V/Y29kZQE3MjIsMjM3MjIKK1xkZWZceGtleXt/eGtleQE3MjgsMjM4ODAK K1xkZWZca2JkZm9vIzEjMiMzXHBhcnt/a2JkZm9vATcyOSwyMzg5NgorXGRlZlxrYmRmb28jMSMy IzNccGFye1xkZWZcb25le39vbmUBNzI5LDIzODk2CitcZGVmXGtiZGZvbyMxIzIjM1xwYXJ7XGRl ZlxvbmV7IzF9XGRlZlx0aHJlZXt/dGhyZWUBNzI5LDIzODk2CitcZGVmXGtiZGZvbyMxIzIjM1xw YXJ7XGRlZlxvbmV7IzF9XGRlZlx0aHJlZXsjM31cZGVmXHRocmVleHt/dGhyZWV4ATcyOSwyMzg5 NgorXGRlZlxkbW4jMXt/ZG1uATczOCwyNDE5NworXGRlZlxrYmQjMXt/a2JkATc0MCwyNDIyNAor XGRlZlxrYmQjMXtcZGVmXGxvb2t7f2xvb2sBNzQwLDI0MjI0CitcZGVmXGwjMXt/bAE3NDIsMjQy ODEKK1xkZWZcciMxe39yATc0NCwyNDMxMAorXGRlZlxzYyMxe39zYwE3NDYsMjQzNzgKK1xkZWZc aWkjMXt/aWkBNzQ3LDI0NDIxCitcZGVmXHRpdGxlZm9udCMxe390aXRsZWZvbnQBNzU1LDI0NjU0 CitcZGVmXHRpdGxlcGFnZXt/dGl0bGVwYWdlATc2MSwyNDc1NworICAgXGxldFxzdWJ0aXRsZXJt PVx0ZW5ybX9zdWJ0aXRsZXJtATc2MiwyNDgxMAorICAgXGRlZlxzdWJ0aXRsZWZvbnR7f3N1YnRp dGxlZm9udAE3NjYsMjQ5ODQKKyAgIFxkZWZcYXV0aG9yZm9udHt/YXV0aG9yZm9udAE3NjgsMjUw NjgKKyAgIFxkZWZcdGl0bGV7f3RpdGxlATc3NCwyNTI3OAorICAgXGRlZlx0aXRsZXp6eiMjMXt/ dGl0bGV6enoBNzc1LDI1MzEzCisgICBcZGVmXHN1YnRpdGxle39zdWJ0aXRsZQE3ODMsMjU2MjgK KyAgIFxkZWZcc3VidGl0bGV6enojIzF7f3N1YnRpdGxlenp6ATc4NCwyNTY2OQorICAgXGRlZlxh dXRob3J7f2F1dGhvcgE3ODcsMjU3ODcKKyAgIFxkZWZcYXV0aG9yenp6IyMxe39hdXRob3J6enoB Nzg4LDI1ODI0CisgICBcbGV0XG9sZHBhZ2UgPSBccGFnZX9vbGRwYWdlATc5MywyNjA5MQorICAg XGRlZlxwYWdle39wYWdlATc5NCwyNjExNQorICAgICAgXGxldFxwYWdlID0gXG9sZHBhZ2V/cGFn ZQE3OTksMjYyMDYKK1xkZWZcRXRpdGxlcGFnZXt/RXRpdGxlcGFnZQE4MDQsMjYyODQKK1xkZWZc ZmluaXNodGl0bGVwYWdle39maW5pc2h0aXRsZXBhZ2UBODE3LDI2NjcyCitcbGV0XHRoaXNwYWdl PVxmb2xpb390aGlzcGFnZQE4MjUsMjY4MjUKK1xsZXRcSEVBRElOR1Nob29rPVxyZWxheH9IRUFE SU5HU2hvb2sBODM3LDI3NDIwCitcZGVmXGV2ZW5oZWFkaW5ne39ldmVuaGVhZGluZwE4NDYsMjc2 ODAKK1xkZWZcb2RkaGVhZGluZ3t/b2RkaGVhZGluZwE4NDcsMjc3MjMKK1xkZWZcZXZlcnloZWFk aW5ne39ldmVyeWhlYWRpbmcBODQ4LDI3NzY0CitcZGVmXGV2ZW5mb290aW5ne39ldmVuZm9vdGlu ZwE4NTAsMjc4MTAKK1xkZWZcb2RkZm9vdGluZ3t/b2RkZm9vdGluZwE4NTEsMjc4NTMKK1xkZWZc ZXZlcnlmb290aW5ne39ldmVyeWZvb3RpbmcBODUyLDI3ODk0CitcZ2RlZlxldmVuaGVhZGluZ3h4 eCAjMXt/ZXZlbmhlYWRpbmd4eHgBODU2LDI3OTU4CitcZ2RlZlxldmVuaGVhZGluZ3l5eSAjMUB8 IzJAfCMzQHwjNFxmaW5pc2h7f2V2ZW5oZWFkaW5neXl5ATg1NywyODAxNworXGdkZWZcb2RkaGVh ZGluZ3h4eCAjMXt/b2RkaGVhZGluZ3h4eAE4NjAsMjgxMjYKK1xnZGVmXG9kZGhlYWRpbmd5eXkg IzFAfCMyQHwjM0B8IzRcZmluaXNoe39vZGRoZWFkaW5neXl5ATg2MSwyODE4MworXGdkZWZcZXZl cnloZWFkaW5neHh4ICMxe39ldmVyeWhlYWRpbmd4eHgBODY0LDI4MjkwCitcZ2RlZlxldmVyeWhl YWRpbmd5eXkgIzFAfCMyQHwjM0B8IzRcZmluaXNoe39ldmVyeWhlYWRpbmd5eXkBODY1LDI4MzUx CitcZ2RlZlxldmVuZm9vdGluZ3h4eCAjMXt/ZXZlbmZvb3Rpbmd4eHgBODY5LDI4NTIyCitcZ2Rl ZlxldmVuZm9vdGluZ3l5eSAjMUB8IzJAfCMzQHwjNFxmaW5pc2h7f2V2ZW5mb290aW5neXl5ATg3 MCwyODU4MQorXGdkZWZcb2RkZm9vdGluZ3h4eCAjMXt/b2RkZm9vdGluZ3h4eAE4NzMsMjg2OTAK K1xnZGVmXG9kZGZvb3Rpbmd5eXkgIzFAfCMyQHwjM0B8IzRcZmluaXNoe39vZGRmb290aW5neXl5 ATg3NCwyODc0NworXGdkZWZcZXZlcnlmb290aW5neHh4ICMxe39ldmVyeWZvb3Rpbmd4eHgBODc3 LDI4ODU0CitcZ2RlZlxldmVyeWZvb3Rpbmd5eXkgIzFAfCMyQHwjM0B8IzRcZmluaXNoe39ldmVy eWZvb3Rpbmd5eXkBODc4LDI4OTE1CitcZGVmXGhlYWRpbmdzICMxIHt/aGVhZGluZ3MBODkzLDI5 NTg2CitcZGVmXEhFQURJTkdTb2Zme39IRUFESU5HU29mZgE4OTUsMjk2MzUKK1xkZWZcSEVBRElO R1Nkb3VibGV7f0hFQURJTkdTZG91YmxlATkwNCwzMDA2MgorXGRlZlxIRUFESU5HU3NpbmdsZXt/ SEVBRElOR1NzaW5nbGUBOTE0LDMwMzgyCitcZGVmXEhFQURJTkdTb257f0hFQURJTkdTb24BOTIy LDMwNjAzCitcZGVmXEhFQURJTkdTYWZ0ZXJ7f0hFQURJTkdTYWZ0ZXIBOTI0LDMwNjM3CitcZGVm XEhFQURJTkdTYWZ0ZXJ7XGxldFxIRUFESU5HU2hvb2s9XEhFQURJTkdTZG91YmxleH1/SEVBRElO R1Nob29rATkyNCwzMDYzNworXGxldFxIRUFESU5HU2RvdWJsZWFmdGVyPVxIRUFESU5HU2FmdGVy f0hFQURJTkdTZG91YmxlYWZ0ZXIBOTI1LDMwNjkyCitcZGVmXEhFQURJTkdTZG91YmxleHt/SEVB RElOR1Nkb3VibGV4ATkyNiwzMDczMgorXGRlZlxIRUFESU5HU3NpbmdsZWFmdGVye39IRUFESU5H U3NpbmdsZWFmdGVyATkzMywzMDkyMAorXGRlZlxIRUFESU5HU3NpbmdsZWFmdGVye1xsZXRcSEVB RElOR1Nob29rPVxIRUFESU5HU3NpbmdsZXh9f0hFQURJTkdTaG9vawE5MzMsMzA5MjAKK1xkZWZc SEVBRElOR1NzaW5nbGV4e39IRUFESU5HU3NpbmdsZXgBOTM0LDMwOTgxCitcZGVmXHRvZGF5e390 b2RheQE5NDMsMzEyNTYKK1xkZWZcdGhpc3RpdGxle390aGlzdGl0bGUBOTU4LDMxODAxCitcZGVm XHNldHRpdGxle39zZXR0aXRsZQE5NTksMzE4MjYKK1xkZWZcc2V0dGl0bGV6enogIzF7f3NldHRp dGxlenp6ATk2MCwzMTg2MworXGRlZlxzZXR0aXRsZXp6eiAjMXtcZ2RlZlx0aGlzdGl0bGV7f3Ro aXN0aXRsZQE5NjAsMzE4NjMKK1xkZWZcaW50ZXJuYWxCaXRlbXt/aW50ZXJuYWxCaXRlbQE5OTIs MzI3OTMKK1xkZWZcaW50ZXJuYWxCaXRlbXh7f2ludGVybmFsQml0ZW14ATk5MywzMjg0MworXGRl ZlxpbnRlcm5hbEJ4aXRlbSAiIzEie39pbnRlcm5hbEJ4aXRlbQE5OTUsMzI4ODgKK1xkZWZcaW50 ZXJuYWxCeGl0ZW0gIiMxIntcZGVmXHhpdGVtc3VidG9waXh7f3hpdGVtc3VidG9waXgBOTk1LDMy ODg4CitcZGVmXGludGVybmFsQnhpdGVteCAiIzEie39pbnRlcm5hbEJ4aXRlbXgBOTk2LDMyOTY4 CitcZGVmXGludGVybmFsQnhpdGVteCAiIzEie1xkZWZceGl0ZW1zdWJ0b3BpeHt/eGl0ZW1zdWJ0 b3BpeAE5OTYsMzI5NjgKK1xkZWZcaW50ZXJuYWxCa2l0ZW17f2ludGVybmFsQmtpdGVtATk5OCwz MzA0MworXGRlZlxpbnRlcm5hbEJraXRlbXh7f2ludGVybmFsQmtpdGVteAE5OTksMzMwOTUKK1xk ZWZca2l0ZW16enogIzF7f2tpdGVtenp6ATEwMDEsMzMxNDIKK1xkZWZceGl0ZW16enogIzF7f3hp dGVtenp6ATEwMDQsMzMyNDQKK1xkZWZcaXRlbXp6eiAjMXt/aXRlbXp6egExMDA3LDMzMzQ3Citc ZGVmXGl0ZW17f2l0ZW0BMTAzNywzNDQxOAorXGRlZlxpdGVteHt/aXRlbXgBMTAzOCwzNDQ2OQor XGRlZlxraXRlbXt/a2l0ZW0BMTAzOSwzNDUyMgorXGRlZlxraXRlbXh7f2tpdGVteAExMDQwLDM0 NTc1CitcZGVmXHhpdGVte394aXRlbQExMDQxLDM0NjMwCitcZGVmXHhpdGVteHt/eGl0ZW14ATEw NDIsMzQ2ODMKK1xkZWZcZGVzY3JpcHRpb257f2Rlc2NyaXB0aW9uATEwNDUsMzQ3OTMKK1xkZWZc dGFibGV7f3RhYmxlATEwNDcsMzQ4NDMKK1xnZGVmXHRhYmxleCAjMV5eTXt/dGFibGV4ATEwNDks MzQ5MjUKK1xkZWZcZnRhYmxle39mdGFibGUBMTA1MiwzNDk4NworXGdkZWZcZnRhYmxleCAjMV5e TXt/ZnRhYmxleAExMDU0LDM1MDcxCitcZGVmXEVmdGFibGV7f0VmdGFibGUBMTA1NiwzNTEzMwor XGxldFxFdGFibGU9XHJlbGF4fX9FdGFibGUBMTA1NywzNTE4MAorXGRlZlx2dGFibGV7f3Z0YWJs ZQExMDU5LDM1MjAyCitcZ2RlZlx2dGFibGV4ICMxXl5Ne392dGFibGV4ATEwNjEsMzUyODYKK1xk ZWZcRXZ0YWJsZXt/RXZ0YWJsZQExMDYzLDM1MzQ4CitcbGV0XEV0YWJsZT1ccmVsYXh9f0V0YWJs ZQExMDY0LDM1Mzk1CitcZGVmXGRvbnRpbmRleCAjMXt/ZG9udGluZGV4ATEwNjYsMzU0MTcKK1xk ZWZcZm5pdGVtaW5kZXggIzF7f2ZuaXRlbWluZGV4ATEwNjcsMzU0MzcKK1xkZWZcdnJpdGVtaW5k ZXggIzF7f3ZyaXRlbWluZGV4ATEwNjgsMzU0ODIKK1xnZGVmXHRhYmxleSMxIzIgIzMgIzQgIzUg IzYgIzdcZW5kdGFibGV5e390YWJsZXkBMTA3MSwzNTU0MworXGRlZlx0YWJsZXogIzEjMiMzIzQj NSM2e390YWJsZXoBMTA3NCwzNTYzMQorXGRlZlxFZGVzY3JpcHRpb257f0VkZXNjcmlwdGlvbgEx MDc3LDM1Njg5CitcbGV0XGl0ZW1pbmRleD0jMSV/aXRlbWluZGV4ATEwNzgsMzU3MzUKK1xkZWZc aXRlbWZvbnR7f2l0ZW1mb250ATEwODIsMzU4OTAKK1xkZWZcRXRhYmxle39FdGFibGUBMTA5MCwz NjExNgorXGxldFxpdGVtID0gXGludGVybmFsQml0ZW0gJX9pdGVtATEwOTEsMzYxNjIKK1xsZXRc aXRlbXggPSBcaW50ZXJuYWxCaXRlbXggJX9pdGVteAExMDkyLDM2MTkxCitcbGV0XGtpdGVtID0g XGludGVybmFsQmtpdGVtICV/a2l0ZW0BMTA5MywzNjIyMgorXGxldFxraXRlbXggPSBcaW50ZXJu YWxCa2l0ZW14ICV/a2l0ZW14ATEwOTQsMzYyNTMKK1xsZXRceGl0ZW0gPSBcaW50ZXJuYWxCeGl0 ZW0gJX94aXRlbQExMDk1LDM2Mjg2CitcbGV0XHhpdGVteCA9IFxpbnRlcm5hbEJ4aXRlbXggJX94 aXRlbXgBMTA5NiwzNjMxNworXGRlZlxpdGVtaXple39pdGVtaXplATExMDMsMzY0NDAKK1xkZWZc aXRlbWl6ZXp6eiAjMXt/aXRlbWl6ZXp6egExMTA1LDM2NDc2CitcZGVmXGl0ZW1pemV5ICMxIzJ7 f2l0ZW1pemV5ATExMTAsMzY1NzEKK1xkZWZcaXRlbWNvbnRlbnRze39pdGVtY29udGVudHMBMTEy MCwzNjg1OAorXGxldFxpdGVtPVxpdGVtaXplaXRlbX1/aXRlbQExMTIxLDM2ODgxCitcZGVmXGJ1 bGxldHt/YnVsbGV0ATExMjMsMzY5MDYKK1xkZWZcbWludXN7f21pbnVzATExMjQsMzY5MzMKK1xk ZWZcZnJlbmNoc3BhY2luZ3t/ZnJlbmNoc3BhY2luZwExMTI4LDM3MDQxCitcZGVmXHNwbGl0b2Zm IzEjMlxlbmRtYXJre39zcGxpdG9mZgExMTM0LDM3MjY2CitcZGVmXHNwbGl0b2ZmIzEjMlxlbmRt YXJre1xkZWZcZmlyc3R7f2ZpcnN0ATExMzQsMzcyNjYKK1xkZWZcc3BsaXRvZmYjMSMyXGVuZG1h cmt7XGRlZlxmaXJzdHsjMX1cZGVmXHJlc3R7f3Jlc3QBMTEzNCwzNzI2NgorXGRlZlxlbnVtZXJh dGV7f2VudW1lcmF0ZQExMTQwLDM3NDk2CitcZGVmXGVudW1lcmF0ZXp6eiAjMXt/ZW51bWVyYXRl enp6ATExNDEsMzc1MzUKK1xkZWZcZW51bWVyYXRleSAjMSAjMlxlbmRlbnVtZXJhdGV5e39lbnVt ZXJhdGV5ATExNDIsMzc1ODgKKyAgXGRlZlx0aGVhcmd7f3RoZWFyZwExMTQ2LDM3NzM1CisgIFxp ZnhcdGhlYXJnXGVtcHR5IFxkZWZcdGhlYXJne390aGVhcmcBMTE0NywzNzc1NAorXGRlZlxudW1l cmljZW51bWVyYXRle39udW1lcmljZW51bWVyYXRlATExODQsMzkwODgKK1xkZWZcbG93ZXJjYXNl ZW51bWVyYXRle39sb3dlcmNhc2VlbnVtZXJhdGUBMTE5MCwzOTIxOAorXGRlZlx1cHBlcmNhc2Vl bnVtZXJhdGV7f3VwcGVyY2FzZWVudW1lcmF0ZQExMjAzLDM5NTY1CitcZGVmXHN0YXJ0ZW51bWVy YXRpb24jMXt/c3RhcnRlbnVtZXJhdGlvbgExMjE5LDQwMDU1CitcZGVmXGFscGhhZW51bWVyYXRl e39hbHBoYWVudW1lcmF0ZQExMjI3LDQwMjM3CitcZGVmXGNhcHNlbnVtZXJhdGV7f2NhcHNlbnVt ZXJhdGUBMTIyOCw0MDI3MgorXGRlZlxFYWxwaGFlbnVtZXJhdGV7f0VhbHBoYWVudW1lcmF0ZQEx MjI5LDQwMzA2CitcZGVmXEVjYXBzZW51bWVyYXRle39FY2Fwc2VudW1lcmF0ZQExMjMwLDQwMzQw CitcZGVmXGl0ZW1pemVpdGVte39pdGVtaXplaXRlbQExMjM0LDQwNDIwCit7XGxldFxwYXI9XGVu ZGdyYWYgXHNtYWxsYnJlYWt9f3BhcgExMjM2LDQwNDYwCitcZ2RlZlxuZXd3cml0ZXt/bmV3d3Jp dGUBMTI0OSw0MDg0MQorXGRlZlxuZXdpbmRleCAjMXt/bmV3aW5kZXgBMTI1OSw0MTI3NworXGV4 cGFuZGFmdGVyXHhkZWZcY3NuYW1lIzFpbmRleFxlbmRjc25hbWV7f2NzbmFtZQExMjYyLDQxNDM5 CitcZGVmXGRlZmluZGV4e39kZWZpbmRleAExMjY4LDQxNTY2CitcZGVmXG5ld2NvZGVpbmRleCAj MXt/bmV3Y29kZWluZGV4ATEyNzIsNDE2NzQKK1xleHBhbmRhZnRlclx4ZGVmXGNzbmFtZSMxaW5k ZXhcZW5kY3NuYW1le39jc25hbWUBMTI3NSw0MTg0MAorXGRlZlxkZWZjb2RlaW5kZXh7f2RlZmNv ZGVpbmRleAExMjc5LDQxOTM0CitcZGVmXHN5bmluZGV4ICMxICMyIHt/c3luaW5kZXgBMTI4Myw0 MjExNAorXGV4cGFuZGFmdGVyXGxldFxleHBhbmRhZnRlclxzeW5pbmRleGZvb1xleHBhbmRhZnRl cj1cY3NuYW1lIzJpbmRmaWxlXGVuZGNzbmFtZX9leHBhbmRhZnRlcgExMjg0LDQyMTM3CitcZXhw YW5kYWZ0ZXJcbGV0XGNzbmFtZSMxaW5kZmlsZVxlbmRjc25hbWU9XHN5bmluZGV4Zm9vf2NzbmFt ZQExMjg1LDQyMjE3CitcZXhwYW5kYWZ0ZXJceGRlZlxjc25hbWUjMWluZGV4XGVuZGNzbmFtZXt/ Y3NuYW1lATEyODYsNDIyNzMKK1xkZWZcc3luY29kZWluZGV4ICMxICMyIHt/c3luY29kZWluZGV4 ATEyOTIsNDI0NTQKK1xleHBhbmRhZnRlclxsZXRcZXhwYW5kYWZ0ZXJcc3luaW5kZXhmb29cZXhw YW5kYWZ0ZXI9XGNzbmFtZSMyaW5kZmlsZVxlbmRjc25hbWV/ZXhwYW5kYWZ0ZXIBMTI5Myw0MjQ4 MQorXGV4cGFuZGFmdGVyXGxldFxjc25hbWUjMWluZGZpbGVcZW5kY3NuYW1lPVxzeW5pbmRleGZv b39jc25hbWUBMTI5NCw0MjU2MQorXGV4cGFuZGFmdGVyXHhkZWZcY3NuYW1lIzFpbmRleFxlbmRj c25hbWV7f2NzbmFtZQExMjk1LDQyNjE3CitcZGVmXGRvaW5kZXgjMXt/ZG9pbmRleAExMzA5LDQz MTMzCitcZGVmXGRvaW5kZXgjMXtcZWRlZlxpbmRleG5hbWV7f2luZGV4bmFtZQExMzA5LDQzMTMz CitcZGVmXHNpbmdsZWluZGV4ZXIgIzF7f3NpbmdsZWluZGV4ZXIBMTMxMCw0MzE5MgorXGRlZlxz aW5nbGVpbmRleGVyICMxe1xkb2luZHtcaW5kZXhuYW1lfX9uYW1lATEzMTAsNDMxOTIKK1xkZWZc ZG9jb2RlaW5kZXgjMXt/ZG9jb2RlaW5kZXgBMTMxMyw0MzMwNAorXGRlZlxkb2NvZGVpbmRleCMx e1xlZGVmXGluZGV4bmFtZXt/aW5kZXhuYW1lATEzMTMsNDMzMDQKK1xkZWZcc2luZ2xlY29kZWlu ZGV4ZXIgIzF7f3NpbmdsZWNvZGVpbmRleGVyATEzMTQsNDMzNzEKK1xkZWZcc2luZ2xlY29kZWlu ZGV4ZXIgIzF7XGRvaW5ke1xpbmRleG5hbWV9f25hbWUBMTMxNCw0MzM3MQorXGRlZlxpbmRleGR1 bW1pZXN7f2luZGV4ZHVtbWllcwExMzE2LDQzNDI5CitcZGVmXF97f18BMTMxNyw0MzQ0OQorXGRl Zlx3e393ATEzMTgsNDM0NzcKK1xkZWZcYmZ7f2JmATEzMTksNDM1MDQKK1xkZWZccm17f3JtATEz MjAsNDM1MzMKK1xkZWZcc2x7f3NsATEzMjEsNDM1NjIKK1xkZWZcc2Z7f3NmATEzMjIsNDM1OTEK K1xkZWZcdHR7f3R0ATEzMjMsNDM2MTkKK1xkZWZcZ3Rye39ndHIBMTMyNCw0MzY0NworXGRlZlxs ZXNze39sZXNzATEzMjUsNDM2NzcKK1xkZWZcaGF0e39oYXQBMTMyNiw0MzcwOQorXGRlZlxjaGFy e39jaGFyATEzMjcsNDM3MzkKK1xkZWZcVGVYe39UZVgBMTMyOCw0Mzc3MQorXGRlZlxkb3Rze39k b3RzATEzMjksNDM4MDEKK1xkZWZcY29weXJpZ2h0e39jb3B5cmlnaHQBMTMzMCw0MzgzNAorXGRl Zlx0Y2xvc2UjIzF7f3RjbG9zZQExMzMxLDQzODc3CitcZGVmXGNvZGUjIzF7f2NvZGUBMTMzMiw0 MzkyMgorXGRlZlxzYW1wIyMxe39zYW1wATEzMzMsNDM5NjMKK1xkZWZcdCMjMXt/dAExMzM0LDQ0 MDA0CitcZGVmXHIjIzF7f3IBMTMzNSw0NDAzOQorXGRlZlxpIyMxe39pATEzMzYsNDQwNzQKK1xk ZWZcYiMjMXt/YgExMzM3LDQ0MTA5CitcZGVmXGNpdGUjIzF7f2NpdGUBMTMzOCw0NDE0NAorXGRl ZlxrZXkjIzF7f2tleQExMzM5LDQ0MTg1CitcZGVmXGZpbGUjIzF7f2ZpbGUBMTM0MCw0NDIyNAor XGRlZlx2YXIjIzF7f3ZhcgExMzQxLDQ0MjY1CitcZGVmXGtiZCMjMXt/a2JkATEzNDIsNDQzMDQK K1xkZWZcaW5kZXhkdW1teWZvbnQjMXt/aW5kZXhkdW1teWZvbnQBMTM0Nyw0NDQ2MAorXGRlZlxp bmRleGR1bW15dGV4e39pbmRleGR1bW15dGV4ATEzNDgsNDQ0ODYKK1xkZWZcaW5kZXhkdW1teWRv dHN7f2luZGV4ZHVtbXlkb3RzATEzNDksNDQ1MTAKK1xkZWZcaW5kZXhub2ZvbnRze39pbmRleG5v Zm9udHMBMTM1MSw0NDUzNgorXGxldFx3PVxpbmRleGR1bW15Zm9udH93ATEzNTIsNDQ1NTYKIFxs ZXRcdz1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNTIsNDQ1NTYKK1xsZXRcdD1caW5kZXhk dW1teWZvbnR/dAExMzUzLDQ0NTc5CiBcbGV0XHQ9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9udAEx MzUzLDQ0NTc5CitcbGV0XHI9XGluZGV4ZHVtbXlmb250f3IBMTM1NCw0NDYwMgogXGxldFxyPVxp bmRleGR1bW15Zm9udH9kdW1teWZvbnQBMTM1NCw0NDYwMgorXGxldFxpPVxpbmRleGR1bW15Zm9u dH9pATEzNTUsNDQ2MjUKIFxsZXRcaT1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNTUsNDQ2 MjUKK1xsZXRcYj1caW5kZXhkdW1teWZvbnR/YgExMzU2LDQ0NjQ4CiBcbGV0XGI9XGluZGV4ZHVt bXlmb250f2R1bW15Zm9udAExMzU2LDQ0NjQ4CitcbGV0XGVtcGg9XGluZGV4ZHVtbXlmb250f2Vt cGgBMTM1Nyw0NDY3MQogXGxldFxlbXBoPVxpbmRleGR1bW15Zm9udH9kdW1teWZvbnQBMTM1Nyw0 NDY3MQorXGxldFxzdHJvbmc9XGluZGV4ZHVtbXlmb250f3N0cm9uZwExMzU4LDQ0Njk3CiBcbGV0 XHN0cm9uZz1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNTgsNDQ2OTcKLVxsZXRcY2l0ZT1c aW5kZXhkdW1teWZvbnR/PVxpbmRleGR1bW15Zm9udAExMzU5LDQ0NzI1CitcbGV0XGNpdGU9XGlu ZGV4ZHVtbXlmb250f2NpdGUBMTM1OSw0NDcyNQorXGxldFxjaXRlPVxpbmRleGR1bW15Zm9udH9k dW1teWZvbnQBMTM1OSw0NDcyNQorXGxldFxzYz1caW5kZXhkdW1teWZvbnR/c2MBMTM2MCw0NDc1 MQogXGxldFxzYz1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNjAsNDQ3NTEKK1xsZXRcdGNs b3NlPVxpbmRleGR1bW15Zm9udH90Y2xvc2UBMTM2NCw0NDkyMwogXGxldFx0Y2xvc2U9XGluZGV4 ZHVtbXlmb250f2R1bW15Zm9udAExMzY0LDQ0OTIzCitcbGV0XGNvZGU9XGluZGV4ZHVtbXlmb250 f2NvZGUBMTM2NSw0NDk1MQogXGxldFxjb2RlPVxpbmRleGR1bW15Zm9udH9kdW1teWZvbnQBMTM2 NSw0NDk1MQorXGxldFxmaWxlPVxpbmRleGR1bW15Zm9udH9maWxlATEzNjYsNDQ5NzcKIFxsZXRc ZmlsZT1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNjYsNDQ5NzcKK1xsZXRcc2FtcD1caW5k ZXhkdW1teWZvbnR/c2FtcAExMzY3LDQ1MDAzCiBcbGV0XHNhbXA9XGluZGV4ZHVtbXlmb250f2R1 bW15Zm9udAExMzY3LDQ1MDAzCitcbGV0XGtiZD1caW5kZXhkdW1teWZvbnR/a2JkATEzNjgsNDUw MjkKIFxsZXRca2JkPVxpbmRleGR1bW15Zm9udH9kdW1teWZvbnQBMTM2OCw0NTAyOQorXGxldFxr ZXk9XGluZGV4ZHVtbXlmb250f2tleQExMzY5LDQ1MDU0CiBcbGV0XGtleT1caW5kZXhkdW1teWZv bnR/ZHVtbXlmb250ATEzNjksNDUwNTQKK1xsZXRcdmFyPVxpbmRleGR1bW15Zm9udH92YXIBMTM3 MCw0NTA3OQogXGxldFx2YXI9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9udAExMzcwLDQ1MDc5Citc bGV0XFRlWD1caW5kZXhkdW1teXRleH9UZVgBMTM3MSw0NTEwNAogXGxldFxUZVg9XGluZGV4ZHVt bXl0ZXh/ZHVtbXl0ZXgBMTM3MSw0NTEwNAorXGxldFxkb3RzPVxpbmRleGR1bW15ZG90c39kb3Rz ATEzNzIsNDUxMjgKIFxsZXRcZG90cz1caW5kZXhkdW1teWRvdHN/ZHVtbXlkb3RzATEzNzIsNDUx MjgKLVxsZXRcaW5kZXhiYWNrc2xhc2g9MCAgJW92ZXJyaWRkZW4gZHVyaW5nIFxwcmludGluZGV4 Ln9iYWNrc2xhc2g9MAExMzgyLDQ1MzgwCi1cZGVmXGRvaW5kICMxIzJ7f1xkb2luZAExMzg0LDQ1 NDM2CitcbGV0XGluZGV4YmFja3NsYXNoPTAgICVvdmVycmlkZGVuIGR1cmluZyBccHJpbnRpbmRl eC5/aW5kZXhiYWNrc2xhc2gBMTM4Miw0NTM4MAorXGRlZlxkb2luZCAjMSMye39kb2luZAExMzg0 LDQ1NDM2CiB7XGluZGV4ZHVtbWllcyAlIE11c3QgZG8gdGhpcyBoZXJlLCBzaW5jZSBcYmYsIGV0 YyBleHBhbmQgYXQgdGhpcyBzdGFnZX9kdW1taWVzATEzODYsNDU0NzkKLVxkZWZccmF3YmFja3Ns YXNoeHh7f1xyYXdiYWNrc2xhc2h4eAExMzg5LDQ1NjE5Cit7XGxldFxmb2xpbz0wJSBFeHBhbmQg YWxsIG1hY3JvcyBub3cgRVhDRVBUIFxmb2xpb39mb2xpbwExMzg4LDQ1NTY4CitcZGVmXHJhd2Jh Y2tzbGFzaHh4e39yYXdiYWNrc2xhc2h4eAExMzg5LDQ1NjE5CitcZGVmXHJhd2JhY2tzbGFzaHh4 e1xpbmRleGJhY2tzbGFzaH1/YmFja3NsYXNoATEzODksNDU2MTkKIHtcaW5kZXhub2ZvbnRzf25v Zm9udHMBMTM5NCw0NTg4MQotXGRlZlxkb3N1YmluZCAjMSMyIzN7f1xkb3N1YmluZAExNDA1LDQ2 MTkyCitceGRlZlx0ZW1wMXt/dGVtcDEBMTM5NSw0NTg5NgorXGVkZWZcdGVtcHt/dGVtcAExMzk5 LDQ2MDY4CitcZGVmXGRvc3ViaW5kICMxIzIjM3t/ZG9zdWJpbmQBMTQwNSw0NjE5Mgoge1xpbmRl eGR1bW1pZXMgJSBNdXN0IGRvIHRoaXMgaGVyZSwgc2luY2UgXGJmLCBldGMgZXhwYW5kIGF0IHRo aXMgc3RhZ2V/ZHVtbWllcwExNDA3LDQ2MjQwCi1cZGVmXHJhd2JhY2tzbGFzaHh4e39ccmF3YmFj a3NsYXNoeHgBMTQxMCw0NjM0NAore1xsZXRcZm9saW89MCV/Zm9saW8BMTQwOSw0NjMyOQorXGRl ZlxyYXdiYWNrc2xhc2h4eHt/cmF3YmFja3NsYXNoeHgBMTQxMCw0NjM0NAorXGRlZlxyYXdiYWNr c2xhc2h4eHtcaW5kZXhiYWNrc2xhc2h9f2JhY2tzbGFzaAExNDEwLDQ2MzQ0CiB7XGluZGV4bm9m b250c39ub2ZvbnRzATE0MTQsNDY0OTgKLVxkZWZcZmluZGV4IHt/XGZpbmRleAExNDQzLDQ3NDI5 Ci1cZGVmXGtpbmRleCB7f1xraW5kZXgBMTQ0NCw0NzQ1MgotXGRlZlxjaW5kZXgge39cY2luZGV4 ATE0NDUsNDc0NzUKLVxkZWZcdmluZGV4IHt/XHZpbmRleAExNDQ2LDQ3NDk4Ci1cZGVmXHRpbmRl eCB7f1x0aW5kZXgBMTQ0Nyw0NzUyMQotXGRlZlxwaW5kZXgge39ccGluZGV4ATE0NDgsNDc1NDQK LVxkZWZcY2luZGV4c3ViIHt/XGNpbmRleHN1YgExNDUwLDQ3NTY4Ci1cZGVmXHByaW50aW5kZXh7 f1xwcmludGluZGV4ATE0NjIsNDc4OTUKLVxkZWZcZG9wcmludGluZGV4IzF7f1xkb3ByaW50aW5k ZXgBMTQ2NCw0NzkzNgotICBcZGVmXGluZGV4YmFja3NsYXNoe39caW5kZXhiYWNrc2xhc2gBMTQ4 MSw0ODQyMQorXHhkZWZcdGVtcDF7f3RlbXAxATE0MTUsNDY1MTMKK1xlZGVmXHRlbXB7f3RlbXAB MTQxOSw0NjY4OAorXGRlZlxmaW5kZXgge39maW5kZXgBMTQ0Myw0NzQyOQorXGRlZlxraW5kZXgg e39raW5kZXgBMTQ0NCw0NzQ1MgorXGRlZlxjaW5kZXgge39jaW5kZXgBMTQ0NSw0NzQ3NQorXGRl Zlx2aW5kZXgge392aW5kZXgBMTQ0Niw0NzQ5OAorXGRlZlx0aW5kZXgge390aW5kZXgBMTQ0Nyw0 NzUyMQorXGRlZlxwaW5kZXgge39waW5kZXgBMTQ0OCw0NzU0NAorXGRlZlxjaW5kZXhzdWIge39j aW5kZXhzdWIBMTQ1MCw0NzU2OAorXGdkZWZcY2luZGV4c3ViICIjMSIgIzJeXk17f2NpbmRleHN1 YgExNDUyLDQ3NjMxCitcZGVmXHByaW50aW5kZXh7f3ByaW50aW5kZXgBMTQ2Miw0Nzg5NQorXGRl Zlxkb3ByaW50aW5kZXgjMXt/ZG9wcmludGluZGV4ATE0NjQsNDc5MzYKKyAgXGRlZlxpbmRleGJh Y2tzbGFzaHt/aW5kZXhiYWNrc2xhc2gBMTQ4MSw0ODQyMQogICBcaW5kZXhmb250c1xybSBcdG9s ZXJhbmNlPTk1MDAgXGFkdmFuY2VcYmFzZWxpbmVza2lwIC0xcHR/Zm9udHNccm0BMTQ4Miw0ODQ2 MAotXGRlZlxpbml0aWFsICMxe39caW5pdGlhbAExNTE3LDQ5NTMyCi1cZGVmXGVudHJ5ICMxIzJ7 f1xlbnRyeQExNTIzLDQ5NzM5CitcZGVmXGluaXRpYWwgIzF7f2luaXRpYWwBMTUxNyw0OTUzMgor e1xsZXRcdGVudHQ9XHNlY3R0IFxsZXRcdHQ9XHNlY3R0IFxsZXRcc2Y9XHNlY3R0f3RlbnR0ATE1 MTgsNDk1NTAKK3tcbGV0XHRlbnR0PVxzZWN0dCBcbGV0XHR0PVxzZWN0dCBcbGV0XHNmPVxzZWN0 dH90dAExNTE4LDQ5NTUwCit7XGxldFx0ZW50dD1cc2VjdHQgXGxldFx0dD1cc2VjdHQgXGxldFxz Zj1cc2VjdHR/c2YBMTUxOCw0OTU1MAorXGRlZlxlbnRyeSAjMSMye39lbnRyeQExNTIzLDQ5NzM5 CiAgIFxudWxsXG5vYnJlYWtcaW5kZXhkb3RmaWxsICUgSGF2ZSBsZWFkZXJzIGJlZm9yZSB0aGUg cGFnZSBudW1iZXIuf2RvdGZpbGwBMTU0MCw1MDM4NgotXGRlZlxpbmRleGRvdGZpbGx7f1xpbmRl eGRvdGZpbGwBMTU0OSw1MDcxNAotXGRlZlxwcmltYXJ5ICMxe39ccHJpbWFyeQExNTUyLDUwODIw Ci1cZGVmXHNlY29uZGFyeSAjMSMye39cc2Vjb25kYXJ5ATE1NTYsNTA5MDIKK1xkZWZcaW5kZXhk b3RmaWxse39pbmRleGRvdGZpbGwBMTU0OSw1MDcxNAorXGRlZlxwcmltYXJ5ICMxe39wcmltYXJ5 ATE1NTIsNTA4MjAKK1xkZWZcc2Vjb25kYXJ5ICMxIzJ7f3NlY29uZGFyeQExNTU2LDUwOTAyCiBc bm9pbmRlbnRcaHNraXBcc2Vjb25kYXJ5aW5kZW50XGhib3h7IzF9XGluZGV4ZG90ZmlsbCAjMlxw YXJ/ZG90ZmlsbAExNTU5LDUwOTg0CiBcbmV3Ym94XHBhcnRpYWxwYWdlf2lhbHBhZ2UBMTU2Niw1 MTE1NwotXGRlZlxiZWdpbmRvdWJsZWNvbHVtbnN7f1xiZWdpbmRvdWJsZWNvbHVtbnMBMTU3Miw1 MTMxNQotICBcb3V0cHV0PXtcZ2xvYmFsXHNldGJveFxwYXJ0aWFscGFnZT1/aWFscGFnZT0BMTU3 Myw1MTM1MQotXGRlZlxlbmRkb3VibGVjb2x1bW5ze39cZW5kZG91YmxlY29sdW1ucwExNTc3LDUx NTM5Ci1cZGVmXGRvdWJsZWNvbHVtbm91dHt/XGRvdWJsZWNvbHVtbm91dAExNTgwLDUxNjI0Citc ZGVmXGJlZ2luZG91YmxlY29sdW1uc3t/YmVnaW5kb3VibGVjb2x1bW5zATE1NzIsNTEzMTUKKyAg XG91dHB1dD17XGdsb2JhbFxzZXRib3hccGFydGlhbHBhZ2U9f2lhbHBhZ2UBMTU3Myw1MTM1MQor XGRlZlxlbmRkb3VibGVjb2x1bW5ze39lbmRkb3VibGVjb2x1bW5zATE1NzcsNTE1MzkKK1xkZWZc ZG91YmxlY29sdW1ub3V0e39kb3VibGVjb2x1bW5vdXQBMTU4MCw1MTYyNAogICBcZGltZW5APVxw YWdlaGVpZ2h0IFxhZHZhbmNlXGRpbWVuQCBieS1caHRccGFydGlhbHBhZ2V/aWFscGFnZQExNTgx LDUxNjkzCi1cZGVmXHBhZ2Vzb2Zhcnt/XHBhZ2Vzb2ZhcgExNTg0LDUxODcxCi1cZGVmXGJhbGFu Y2Vjb2x1bW5ze39cYmFsYW5jZWNvbHVtbnMBMTU4OCw1MjEwOAorXGRlZlxwYWdlc29mYXJ7f3Bh Z2Vzb2ZhcgExNTg0LDUxODcxCitcZGVmXHBhZ2Vzb2ZhcntcdW52Ym94XHBhcnRpYWxwYWdlICV/ aWFscGFnZQExNTg0LDUxODcxCitcZGVmXGJhbGFuY2Vjb2x1bW5ze39iYWxhbmNlY29sdW1ucwEx NTg4LDUyMTA4CiAgIFxhdmFpbGRpbWVuQD1ccGFnZWhlaWdodCBcYWR2YW5jZVxhdmFpbGRpbWVu QCBieS1caHRccGFydGlhbHBhZ2V/aWFscGFnZQExNTk0LDUyMjc5CiAgICAgIFxkaW1lbkA9XHBh Z2VoZWlnaHQgXGFkdmFuY2VcZGltZW5AIGJ5LVxodFxwYXJ0aWFscGFnZX9pYWxwYWdlATE2MDAs NTI1NDAKIFxuZXdjb3VudCBcYXBwZW5kaXhubyAgXGFwcGVuZGl4bm8gPSBgXEB/bm8BMTYyNyw1 MzQ0NQotXGRlZlxhcHBlbmRpeGxldHRlcnt/XGFwcGVuZGl4bGV0dGVyATE2MjgsNTM0ODYKLVxk ZWZcb3BlbmNvbnRlbnRze39cb3BlbmNvbnRlbnRzATE2MzIsNTM1ODkKLVxkZWZcdGhpc2NoYXB0 ZXJ7f1x0aGlzY2hhcHRlcgExNjM3LDUzNzcwCi1cZGVmXHNlY2NoZWNrIzF7f1xzZWNjaGVjawEx NjM4LDUzODA4Ci1cZGVmXGNoYXB0ZXJub2ZvbnRze39cY2hhcHRlcm5vZm9udHMBMTY0Myw1Mzkx MgotXGRlZlxyZXN1bHR7f1xyZXN1bHQBMTY0Niw1Mzk4NwotXGRlZlxlcXVpdnt/XGVxdWl2ATE2 NDcsNTQwMjIKLVxkZWZcZXhwYW5zaW9ue39cZXhwYW5zaW9uATE2NDgsNTQwNTUKLVxkZWZccHJp bnR7f1xwcmludAExNjQ5LDU0MDk2Ci1cZGVmXFRlWHt/XFRlWAExNjUwLDU0MTI5Ci1cZGVmXGRv dHN7f1xkb3RzATE2NTEsNTQxNTgKLVxkZWZcY29weXJpZ2h0e39cY29weXJpZ2h0ATE2NTIsNTQx ODkKLVxkZWZcdHR7f1x0dAExNjUzLDU0MjMwCi1cZGVmXGJme39cYmYBMTY1NCw1NDI1NwotXGRl Zlx3e39cdwExNjU1LDU0Mjg1Ci1cZGVmXGxlc3N7f1xsZXNzATE2NTYsNTQzMTAKLVxkZWZcZ3Ry e39cZ3RyATE2NTcsNTQzNDEKLVxkZWZcaGF0e39caGF0ATE2NTgsNTQzNzAKLVxkZWZcY2hhcnt/ XGNoYXIBMTY1OSw1NDM5OQotXGRlZlx0Y2xvc2UjIzF7f1x0Y2xvc2UBMTY2MCw1NDQzMAotXGRl Zlxjb2RlIyMxe39cY29kZQExNjYxLDU0NDc0Ci1cZGVmXHNhbXAjIzF7f1xzYW1wATE2NjIsNTQ1 MTQKLVxkZWZcciMjMXt/XHIBMTY2Myw1NDU1NAotXGRlZlxiIyMxe39cYgExNjY0LDU0NTg4Ci1c ZGVmXGtleSMjMXt/XGtleQExNjY1LDU0NjIyCi1cZGVmXGZpbGUjIzF7f1xmaWxlATE2NjYsNTQ2 NjAKLVxkZWZca2JkIyMxe39ca2JkATE2NjcsNTQ3MDAKLVxkZWZcaSMjMXt/XGkBMTY2OSw1NDgw OAotXGRlZlxjaXRlIyMxe39cY2l0ZQExNjcwLDU0ODQyCi1cZGVmXHZhciMjMXt/XHZhcgExNjcx LDU0ODgyCi1cZGVmXGVtcGgjIzF7f1xlbXBoATE2NzIsNTQ5MjAKLVxkZWZcZGZuIyMxe39cZGZu ATE2NzMsNTQ5NjAKLVxkZWZcdGhpc2NoYXB0ZXJuYW1le39cdGhpc2NoYXB0ZXJuYW1lATE2NzYs NTUwMDEKLVxvdXRlclxkZWZcY2hhcHRlcnt/XGNoYXB0ZXIBMTY3Nyw1NTA0MAotXGRlZlxjaGFw dGVyenp6ICMxe39cY2hhcHRlcnp6egExNjc4LDU1MDgxCi17XGNoYXB0ZXJub2ZvbnRzJX9ub2Zv bnRzJQExNjg3LDU1NDc3Ci1cZ2xvYmFsXGxldFxzZWN0aW9uID0gXG51bWJlcmVkc2Vjfz0BMTY5 Miw1NTYzMAotXGdsb2JhbFxsZXRcc3Vic2VjdGlvbiA9IFxudW1iZXJlZHN1YnNlY389ATE2OTMs NTU2NjUKLVxnbG9iYWxcbGV0XHN1YnN1YnNlY3Rpb24gPSBcbnVtYmVyZWRzdWJzdWJzZWN/PQEx Njk0LDU1NzA2Ci1cb3V0ZXJcZGVmXGFwcGVuZGl4e39cYXBwZW5kaXgBMTY5Nyw1NTc1NwotXGRl ZlxhcHBlbmRpeHp6eiAjMXt/XGFwcGVuZGl4enp6ATE2OTgsNTU4MDAKK1xuZXdjb3VudCBcYXBw ZW5kaXhubyAgXGFwcGVuZGl4bm8gPSBgXEB/bm8BMTYyNyw1MzQ0NQorXGRlZlxhcHBlbmRpeGxl dHRlcnt/YXBwZW5kaXhsZXR0ZXIBMTYyOCw1MzQ4NgorXGRlZlxhcHBlbmRpeGxldHRlcntcY2hh clx0aGVcYXBwZW5kaXhub31/bm8BMTYyOCw1MzQ4NgorXGRlZlxvcGVuY29udGVudHN7f29wZW5j b250ZW50cwExNjMyLDUzNTg5CitcZGVmXHRoaXNjaGFwdGVye390aGlzY2hhcHRlcgExNjM3LDUz NzcwCitcZGVmXHRoaXNjaGFwdGVye30gXGRlZlx0aGlzc2VjdGlvbnt/dGhpc3NlY3Rpb24BMTYz Nyw1Mzc3MAorXGRlZlxzZWNjaGVjayMxe39zZWNjaGVjawExNjM4LDUzODA4CitcZGVmXGNoYXB0 ZXJub2ZvbnRze39jaGFwdGVybm9mb250cwExNjQzLDUzOTEyCitcbGV0XHJhd2JhY2tzbGFzaD1c cmVsYXglf3Jhd2JhY2tzbGFzaAExNjQ0LDUzOTM0CitcbGV0XGZyZW5jaHNwYWNpbmc9XHJlbGF4 JX9mcmVuY2hzcGFjaW5nATE2NDUsNTM5NjAKK1xkZWZccmVzdWx0e39yZXN1bHQBMTY0Niw1Mzk4 NworXGRlZlxlcXVpdnt/ZXF1aXYBMTY0Nyw1NDAyMgorXGRlZlxleHBhbnNpb257f2V4cGFuc2lv bgExNjQ4LDU0MDU1CitcZGVmXHByaW50e39wcmludAExNjQ5LDU0MDk2CitcZGVmXFRlWHt/VGVY ATE2NTAsNTQxMjkKK1xkZWZcZG90c3t/ZG90cwExNjUxLDU0MTU4CitcZGVmXGNvcHlyaWdodHt/ Y29weXJpZ2h0ATE2NTIsNTQxODkKK1xkZWZcdHR7f3R0ATE2NTMsNTQyMzAKK1xkZWZcYmZ7f2Jm ATE2NTQsNTQyNTcKK1xkZWZcd3t/dwExNjU1LDU0Mjg1CitcZGVmXGxlc3N7f2xlc3MBMTY1Niw1 NDMxMAorXGRlZlxndHJ7f2d0cgExNjU3LDU0MzQxCitcZGVmXGhhdHt/aGF0ATE2NTgsNTQzNzAK K1xkZWZcY2hhcnt/Y2hhcgExNjU5LDU0Mzk5CitcZGVmXHRjbG9zZSMjMXt/dGNsb3NlATE2NjAs NTQ0MzAKK1xkZWZcY29kZSMjMXt/Y29kZQExNjYxLDU0NDc0CitcZGVmXHNhbXAjIzF7f3NhbXAB MTY2Miw1NDUxNAorXGRlZlxyIyMxe39yATE2NjMsNTQ1NTQKK1xkZWZcYiMjMXt/YgExNjY0LDU0 NTg4CitcZGVmXGtleSMjMXt/a2V5ATE2NjUsNTQ2MjIKK1xkZWZcZmlsZSMjMXt/ZmlsZQExNjY2 LDU0NjYwCitcZGVmXGtiZCMjMXt/a2JkATE2NjcsNTQ3MDAKK1xkZWZcaSMjMXt/aQExNjY5LDU0 ODA4CitcZGVmXGNpdGUjIzF7f2NpdGUBMTY3MCw1NDg0MgorXGRlZlx2YXIjIzF7f3ZhcgExNjcx LDU0ODgyCitcZGVmXGVtcGgjIzF7f2VtcGgBMTY3Miw1NDkyMAorXGRlZlxkZm4jIzF7f2RmbgEx NjczLDU0OTYwCitcZGVmXHRoaXNjaGFwdGVybmFtZXt/dGhpc2NoYXB0ZXJuYW1lATE2NzYsNTUw MDEKK1xvdXRlclxkZWZcY2hhcHRlcnt/Y2hhcHRlcgExNjc3LDU1MDQwCitcb3V0ZXJcZGVmXGNo YXB0ZXJ7XHBhcnNlYXJnXGNoYXB0ZXJ6enp9f3p6egExNjc3LDU1MDQwCitcZGVmXGNoYXB0ZXJ6 enogIzF7f2NoYXB0ZXJ6enoBMTY3OCw1NTA4MQorXGdkZWZcdGhpc3NlY3Rpb257f3RoaXNzZWN0 aW9uATE2ODIsNTUyNDYKK1xnZGVmXHRoaXNjaGFwdGVybmFtZXt/dGhpc2NoYXB0ZXJuYW1lATE2 ODMsNTUyNjkKK1x4ZGVmXHRoaXNjaGFwdGVye390aGlzY2hhcHRlcgExNjg2LDU1NDEwCit7XGNo YXB0ZXJub2ZvbnRzJX9ub2ZvbnRzATE2ODcsNTU0NzcKK1xlZGVmXHRlbXB7f3RlbXABMTY4OCw1 NTQ5NQorXGdsb2JhbFxsZXRcc2VjdGlvbiA9IFxudW1iZXJlZHNlY39zZWN0aW9uATE2OTIsNTU2 MzAKK1xnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcbnVtYmVyZWRzdWJzZWN/c3Vic2VjdGlvbgEx NjkzLDU1NjY1CitcZ2xvYmFsXGxldFxzdWJzdWJzZWN0aW9uID0gXG51bWJlcmVkc3Vic3Vic2Vj f3N1YnN1YnNlY3Rpb24BMTY5NCw1NTcwNgorXG91dGVyXGRlZlxhcHBlbmRpeHt/YXBwZW5kaXgB MTY5Nyw1NTc1NworXG91dGVyXGRlZlxhcHBlbmRpeHtccGFyc2VhcmdcYXBwZW5kaXh6enp9f3p6 egExNjk3LDU1NzU3CitcZGVmXGFwcGVuZGl4enp6ICMxe39hcHBlbmRpeHp6egExNjk4LDU1ODAw CiBcZ2xvYmFsXGFkdmFuY2UgXGFwcGVuZGl4bm8gYnkgMSBcbWVzc2FnZXt/bm8BMTcwMCw1NTg3 NworXGdsb2JhbFxhZHZhbmNlIFxhcHBlbmRpeG5vIGJ5IDEgXG1lc3NhZ2V7QXBwZW5kaXggXGFw cGVuZGl4bGV0dGVyfX9sZXR0ZXIBMTcwMCw1NTg3NwogXGNoYXBtYWNybyB7IzF9e0FwcGVuZGl4 IFxhcHBlbmRpeGxldHRlcn1/bGV0dGVyATE3MDEsNTU5NDYKK1xnZGVmXHRoaXNzZWN0aW9ue390 aGlzc2VjdGlvbgExNzAyLDU1OTg5CitcZ2RlZlx0aGlzY2hhcHRlcm5hbWV7f3RoaXNjaGFwdGVy bmFtZQExNzAzLDU2MDEyCitceGRlZlx0aGlzY2hhcHRlcnt/dGhpc2NoYXB0ZXIBMTcwNCw1NjAz OQogXHhkZWZcdGhpc2NoYXB0ZXJ7QXBwZW5kaXggXGFwcGVuZGl4bGV0dGVyOiBcbm9leHBhbmRc dGhpc2NoYXB0ZXJuYW1lfX9sZXR0ZXI6ATE3MDQsNTYwMzkKLXtcY2hhcHRlcm5vZm9udHMlf25v Zm9udHMlATE3MDUsNTYxMTEKK3tcY2hhcHRlcm5vZm9udHMlf25vZm9udHMBMTcwNSw1NjExMQor XGVkZWZcdGVtcHt/dGVtcAExNzA2LDU2MTI5CiAgIHsjMX17QXBwZW5kaXggXGFwcGVuZGl4bGV0 dGVyfX9sZXR0ZXIBMTcwNyw1NjE2NwogXGFwcGVuZGl4bm9kZXJlZiAlf25vZGVyZWYBMTcxMCw1 NjI2NwotXGdsb2JhbFxsZXRcc2VjdGlvbiA9IFxhcHBlbmRpeHNlY389ATE3MTEsNTYyODYKLVxn bG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcYXBwZW5kaXhzdWJzZWN/PQExNzEyLDU2MzIxCi1cZ2xv YmFsXGxldFxzdWJzdWJzZWN0aW9uID0gXGFwcGVuZGl4c3Vic3Vic2Vjfz0BMTcxMyw1NjM2Mgot XG91dGVyXGRlZlx0b3B7f1x0b3ABMTcxNiw1NjQxMwotXG91dGVyXGRlZlx1bm51bWJlcmVke39c dW5udW1iZXJlZAExNzE3LDU2NDUzCi1cZGVmXHVubnVtYmVyZWR6enogIzF7f1x1bm51bWJlcmVk enp6ATE3MTgsNTY1MDAKLXtcY2hhcHRlcm5vZm9udHMlf25vZm9udHMlATE3MjIsNTY2NjMKLVxn bG9iYWxcbGV0XHNlY3Rpb24gPSBcdW5udW1iZXJlZHNlY389ATE3MjcsNTY4MTMKLVxnbG9iYWxc bGV0XHN1YnNlY3Rpb24gPSBcdW5udW1iZXJlZHN1YnNlY389ATE3MjgsNTY4NTAKLVxnbG9iYWxc bGV0XHN1YnN1YnNlY3Rpb24gPSBcdW5udW1iZXJlZHN1YnN1YnNlY389ATE3MjksNTY4OTMKLVxv dXRlclxkZWZcbnVtYmVyZWRzZWN7f1xudW1iZXJlZHNlYwExNzMyLDU2OTQ2Ci1cZGVmXHNlY3p6 eiAjMXt/XHNlY3p6egExNzMzLDU2OTg3Ci17XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzJQExNzM2 LDU3MTQzCi1cb3V0ZXJcZGVmXGFwcGVuZGl4c2VjdGlvbnt/XGFwcGVuZGl4c2VjdGlvbgExNzQ1 LDU3MzI5Ci1cb3V0ZXJcZGVmXGFwcGVuZGl4c2Vje39cYXBwZW5kaXhzZWMBMTc0Niw1NzM4Ngot XGRlZlxhcHBlbmRpeHNlY3Rpb256enogIzF7f1xhcHBlbmRpeHNlY3Rpb256enoBMTc0Nyw1NzQz OQorXGdsb2JhbFxsZXRcc2VjdGlvbiA9IFxhcHBlbmRpeHNlY39zZWN0aW9uATE3MTEsNTYyODYK K1xnbG9iYWxcbGV0XHNlY3Rpb24gPSBcYXBwZW5kaXhzZWN/c2VjATE3MTEsNTYyODYKK1xnbG9i YWxcbGV0XHN1YnNlY3Rpb24gPSBcYXBwZW5kaXhzdWJzZWN/c3Vic2VjdGlvbgExNzEyLDU2MzIx CitcZ2xvYmFsXGxldFxzdWJzZWN0aW9uID0gXGFwcGVuZGl4c3Vic2Vjf3N1YnNlYwExNzEyLDU2 MzIxCitcZ2xvYmFsXGxldFxzdWJzdWJzZWN0aW9uID0gXGFwcGVuZGl4c3Vic3Vic2Vjf3N1YnN1 YnNlY3Rpb24BMTcxMyw1NjM2MgorXGdsb2JhbFxsZXRcc3Vic3Vic2VjdGlvbiA9IFxhcHBlbmRp eHN1YnN1YnNlY39zdWJzdWJzZWMBMTcxMyw1NjM2MgorXG91dGVyXGRlZlx0b3B7f3RvcAExNzE2 LDU2NDEzCitcb3V0ZXJcZGVmXHVubnVtYmVyZWR7f3VubnVtYmVyZWQBMTcxNyw1NjQ1MworXGRl Zlx1bm51bWJlcmVkenp6ICMxe391bm51bWJlcmVkenp6ATE3MTgsNTY1MDAKK1xnZGVmXHRoaXNj aGFwdGVye390aGlzY2hhcHRlcgExNzIxLDU2NjE5CitcZ2RlZlx0aGlzY2hhcHRlcnsjMX1cZ2Rl Zlx0aGlzc2VjdGlvbnt/dGhpc3NlY3Rpb24BMTcyMSw1NjYxOQore1xjaGFwdGVybm9mb250cyV/ bm9mb250cwExNzIyLDU2NjYzCitcZWRlZlx0ZW1we390ZW1wATE3MjMsNTY2ODEKK1xnbG9iYWxc bGV0XHNlY3Rpb24gPSBcdW5udW1iZXJlZHNlY39zZWN0aW9uATE3MjcsNTY4MTMKK1xnbG9iYWxc bGV0XHN1YnNlY3Rpb24gPSBcdW5udW1iZXJlZHN1YnNlY39zdWJzZWN0aW9uATE3MjgsNTY4NTAK K1xnbG9iYWxcbGV0XHN1YnN1YnNlY3Rpb24gPSBcdW5udW1iZXJlZHN1YnN1YnNlY39zdWJzdWJz ZWN0aW9uATE3MjksNTY4OTMKK1xvdXRlclxkZWZcbnVtYmVyZWRzZWN7f251bWJlcmVkc2VjATE3 MzIsNTY5NDYKK1xkZWZcc2Vjenp6ICMxe39zZWN6enoBMTczMyw1Njk4NworXGdkZWZcdGhpc3Nl Y3Rpb257f3RoaXNzZWN0aW9uATE3MzUsNTcwNzkKK3tcY2hhcHRlcm5vZm9udHMlf25vZm9udHMB MTczNiw1NzE0MworXGVkZWZcdGVtcHt/dGVtcAExNzM3LDU3MTYxCitcb3V0ZXJcZGVmXGFwcGVu ZGl4c2VjdGlvbnt/YXBwZW5kaXhzZWN0aW9uATE3NDUsNTczMjkKK1xvdXRlclxkZWZcYXBwZW5k aXhzZWN0aW9ue1xwYXJzZWFyZ1xhcHBlbmRpeHNlY3Rpb256enp9f3NlY3Rpb256enoBMTc0NSw1 NzMyOQorXG91dGVyXGRlZlxhcHBlbmRpeHNlY3t/YXBwZW5kaXhzZWMBMTc0Niw1NzM4NgorXG91 dGVyXGRlZlxhcHBlbmRpeHNlY3tccGFyc2VhcmdcYXBwZW5kaXhzZWN0aW9uenp6fX9zZWN0aW9u enp6ATE3NDYsNTczODYKK1xkZWZcYXBwZW5kaXhzZWN0aW9uenp6ICMxe39hcHBlbmRpeHNlY3Rp b256enoBMTc0Nyw1NzQzOQorXGdkZWZcdGhpc3NlY3Rpb257f3RoaXNzZWN0aW9uATE3NDksNTc1 NTEKIFxnZGVmXHRoaXNzZWN0aW9ueyMxfVxzZWNoZWFkaW5nIHsjMX17XGFwcGVuZGl4bGV0dGVy fX9sZXR0ZXIBMTc0OSw1NzU1MQote1xjaGFwdGVybm9mb250cyV/bm9mb250cyUBMTc1MCw1NzYx OQore1xjaGFwdGVybm9mb250cyV/bm9mb250cwExNzUwLDU3NjE5CitcZWRlZlx0ZW1we390ZW1w ATE3NTEsNTc2MzcKIHsjMX17XGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIBMTc1Miw1NzY3NQogXGFw cGVuZGl4bm9kZXJlZiAlf25vZGVyZWYBMTc1NSw1Nzc3NQotXG91dGVyXGRlZlx1bm51bWJlcmVk c2Vje39cdW5udW1iZXJlZHNlYwExNzU5LDU3ODE1Ci1cZGVmXHVubnVtYmVyZWRzZWN6enogIzF7 f1x1bm51bWJlcmVkc2Vjenp6ATE3NjAsNTc4NjgKLXtcY2hhcHRlcm5vZm9udHMlf25vZm9udHMl ATE3NjIsNTc5NjMKLVxvdXRlclxkZWZcbnVtYmVyZWRzdWJzZWN7f1xudW1iZXJlZHN1YnNlYwEx NzcwLDU4MTMxCi1cZGVmXG51bWJlcmVkc3Vic2Vjenp6ICMxe39cbnVtYmVyZWRzdWJzZWN6enoB MTc3MSw1ODE4Ngote1xjaGFwdGVybm9mb250cyV/bm9mb250cyUBMTc3NCw1ODM2NQotXG91dGVy XGRlZlxhcHBlbmRpeHN1YnNlY3t/XGFwcGVuZGl4c3Vic2VjATE3ODMsNTg1NjkKLVxkZWZcYXBw ZW5kaXhzdWJzZWN6enogIzF7f1xhcHBlbmRpeHN1YnNlY3p6egExNzg0LDU4NjI0Citcb3V0ZXJc ZGVmXHVubnVtYmVyZWRzZWN7f3VubnVtYmVyZWRzZWMBMTc1OSw1NzgxNQorXGRlZlx1bm51bWJl cmVkc2Vjenp6ICMxe391bm51bWJlcmVkc2Vjenp6ATE3NjAsNTc4NjgKK1xwbGFpbnNlY2hlYWRp bmcgeyMxfVxnZGVmXHRoaXNzZWN0aW9ue390aGlzc2VjdGlvbgExNzYxLDU3OTE5Cit7XGNoYXB0 ZXJub2ZvbnRzJX9ub2ZvbnRzATE3NjIsNTc5NjMKK1xlZGVmXHRlbXB7f3RlbXABMTc2Myw1Nzk4 MQorXG91dGVyXGRlZlxudW1iZXJlZHN1YnNlY3t/bnVtYmVyZWRzdWJzZWMBMTc3MCw1ODEzMQor XGRlZlxudW1iZXJlZHN1YnNlY3p6eiAjMXt/bnVtYmVyZWRzdWJzZWN6enoBMTc3MSw1ODE4Ngor XGdkZWZcdGhpc3NlY3Rpb257f3RoaXNzZWN0aW9uATE3NzIsNTgyMzUKK3tcY2hhcHRlcm5vZm9u dHMlf25vZm9udHMBMTc3NCw1ODM2NQorXGVkZWZcdGVtcHt/dGVtcAExNzc1LDU4MzgzCitcb3V0 ZXJcZGVmXGFwcGVuZGl4c3Vic2Vje39hcHBlbmRpeHN1YnNlYwExNzgzLDU4NTY5Citcb3V0ZXJc ZGVmXGFwcGVuZGl4c3Vic2Vje1xwYXJzZWFyZ1xhcHBlbmRpeHN1YnNlY3p6en1/c3Vic2Vjenp6 ATE3ODMsNTg1NjkKK1xkZWZcYXBwZW5kaXhzdWJzZWN6enogIzF7f2FwcGVuZGl4c3Vic2Vjenp6 ATE3ODQsNTg2MjQKK1xnZGVmXHRoaXNzZWN0aW9ue390aGlzc2VjdGlvbgExNzg1LDU4Njc3CiBc c3Vic2VjaGVhZGluZyB7IzF9e1xhcHBlbmRpeGxldHRlcn1/bGV0dGVyATE3ODYsNTg3NDYKLXtc Y2hhcHRlcm5vZm9udHMlf25vZm9udHMlATE3ODcsNTg4MTEKK3tcY2hhcHRlcm5vZm9udHMlf25v Zm9udHMBMTc4Nyw1ODgxMQorXGVkZWZcdGVtcHt/dGVtcAExNzg4LDU4ODI5CiB7IzF9e1xhcHBl bmRpeGxldHRlcn1/bGV0dGVyATE3ODksNTg4NzAKIFxhcHBlbmRpeG5vZGVyZWYgJX9ub2RlcmVm ATE3OTIsNTg5ODUKLVxvdXRlclxkZWZcdW5udW1iZXJlZHN1YnNlY3t/XHVubnVtYmVyZWRzdWJz ZWMBMTc5Niw1OTAyNQotXGRlZlx1bm51bWJlcmVkc3Vic2Vjenp6ICMxe39cdW5udW1iZXJlZHN1 YnNlY3p6egExNzk3LDU5MDg0Ci17XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzJQExNzk5LDU5MTg1 Ci1cb3V0ZXJcZGVmXG51bWJlcmVkc3Vic3Vic2Vje39cbnVtYmVyZWRzdWJzdWJzZWMBMTgwNyw1 OTM1NgotXGRlZlxudW1iZXJlZHN1YnN1YnNlY3p6eiAjMXt/XG51bWJlcmVkc3Vic3Vic2Vjenp6 ATE4MDgsNTk0MTcKLXtcY2hhcHRlcm5vZm9udHMlf25vZm9udHMlATE4MTIsNTk2MTQKLVxvdXRl clxkZWZcYXBwZW5kaXhzdWJzdWJzZWN7f1xhcHBlbmRpeHN1YnN1YnNlYwExODIzLDU5ODQ3Ci1c ZGVmXGFwcGVuZGl4c3Vic3Vic2Vjenp6ICMxe39cYXBwZW5kaXhzdWJzdWJzZWN6enoBMTgyNCw1 OTkwOAorXG91dGVyXGRlZlx1bm51bWJlcmVkc3Vic2Vje391bm51bWJlcmVkc3Vic2VjATE3OTYs NTkwMjUKK1xkZWZcdW5udW1iZXJlZHN1YnNlY3p6eiAjMXt/dW5udW1iZXJlZHN1YnNlY3p6egEx Nzk3LDU5MDg0CitccGxhaW5zZWNoZWFkaW5nIHsjMX1cZ2RlZlx0aGlzc2VjdGlvbnt/dGhpc3Nl Y3Rpb24BMTc5OCw1OTE0MQore1xjaGFwdGVybm9mb250cyV/bm9mb250cwExNzk5LDU5MTg1Citc ZWRlZlx0ZW1we390ZW1wATE4MDAsNTkyMDMKK1xvdXRlclxkZWZcbnVtYmVyZWRzdWJzdWJzZWN7 f251bWJlcmVkc3Vic3Vic2VjATE4MDcsNTkzNTYKK1xkZWZcbnVtYmVyZWRzdWJzdWJzZWN6enog IzF7f251bWJlcmVkc3Vic3Vic2Vjenp6ATE4MDgsNTk0MTcKK1xnZGVmXHRoaXNzZWN0aW9ue390 aGlzc2VjdGlvbgExODA5LDU5NDcyCit7XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzATE4MTIsNTk2 MTQKK1xlZGVmXHRlbXB7f3RlbXABMTgxMyw1OTYzMgorXG91dGVyXGRlZlxhcHBlbmRpeHN1YnN1 YnNlY3t/YXBwZW5kaXhzdWJzdWJzZWMBMTgyMyw1OTg0NworXG91dGVyXGRlZlxhcHBlbmRpeHN1 YnN1YnNlY3tccGFyc2VhcmdcYXBwZW5kaXhzdWJzdWJzZWN6enp9f3N1YnN1YnNlY3p6egExODIz LDU5ODQ3CitcZGVmXGFwcGVuZGl4c3Vic3Vic2Vjenp6ICMxe39hcHBlbmRpeHN1YnN1YnNlY3p6 egExODI0LDU5OTA4CitcZ2RlZlx0aGlzc2VjdGlvbnt/dGhpc3NlY3Rpb24BMTgyNSw1OTk2Nwog ICB7XGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIBMTgyNyw2MDA0Nwote1xjaGFwdGVybm9mb250cyV/ bm9mb250cyUBMTgyOCw2MDExMwore1xjaGFwdGVybm9mb250cyV/bm9mb250cwExODI4LDYwMTEz CitcZWRlZlx0ZW1we390ZW1wATE4MjksNjAxMzEKICAge1xhcHBlbmRpeGxldHRlcn1/bGV0dGVy ATE4MzAsNjAxNzgKIFxhcHBlbmRpeG5vZGVyZWYgJX9ub2RlcmVmATE4MzQsNjAzMTIKLVxvdXRl clxkZWZcdW5udW1iZXJlZHN1YnN1YnNlY3t/XHVubnVtYmVyZWRzdWJzdWJzZWMBMTgzOCw2MDM1 MgotXGRlZlx1bm51bWJlcmVkc3Vic3Vic2Vjenp6ICMxe39cdW5udW1iZXJlZHN1YnN1YnNlY3p6 egExODM5LDYwNDE3Ci17XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzJQExODQxLDYwNTI0Ci1cZGVm XGluZm90b3B7f1xpbmZvdG9wATE4NTEsNjA4NTMKLVxkZWZcaW5mb3VubnVtYmVyZWR7f1xpbmZv dW5udW1iZXJlZAExODUyLDYwODkxCi1cZGVmXGluZm91bm51bWJlcmVkc2Vje39caW5mb3VubnVt YmVyZWRzZWMBMTg1Myw2MDkzNgotXGRlZlxpbmZvdW5udW1iZXJlZHN1YnNlY3t/XGluZm91bm51 bWJlcmVkc3Vic2VjATE4NTQsNjA5ODcKLVxkZWZcaW5mb3VubnVtYmVyZWRzdWJzdWJzZWN7f1xp bmZvdW5udW1iZXJlZHN1YnN1YnNlYwExODU1LDYxMDQ0Ci1cZGVmXGluZm9hcHBlbmRpeHt/XGlu Zm9hcHBlbmRpeAExODU3LDYxMTA4Ci1cZGVmXGluZm9hcHBlbmRpeHNlY3t/XGluZm9hcHBlbmRp eHNlYwExODU4LDYxMTQ5Ci1cZGVmXGluZm9hcHBlbmRpeHN1YnNlY3t/XGluZm9hcHBlbmRpeHN1 YnNlYwExODU5LDYxMTk2Ci1cZGVmXGluZm9hcHBlbmRpeHN1YnN1YnNlY3t/XGluZm9hcHBlbmRp eHN1YnN1YnNlYwExODYwLDYxMjQ5Ci1cZGVmXGluZm9jaGFwdGVye39caW5mb2NoYXB0ZXIBMTg2 Miw2MTMwOQotXGRlZlxpbmZvc2VjdGlvbnt/XGluZm9zZWN0aW9uATE4NjMsNjEzNDgKLVxkZWZc aW5mb3N1YnNlY3Rpb257f1xpbmZvc3Vic2VjdGlvbgExODY0LDYxMzg3Ci1cZGVmXGluZm9zdWJz dWJzZWN0aW9ue39caW5mb3N1YnN1YnNlY3Rpb24BMTg2NSw2MTQzMgotXGdsb2JhbFxsZXRcc2Vj dGlvbiA9IFxudW1iZXJlZHNlY389ATE4NzAsNjE2NjkKLVxnbG9iYWxcbGV0XHN1YnNlY3Rpb24g PSBcbnVtYmVyZWRzdWJzZWN/PQExODcxLDYxNzA0Ci1cZ2xvYmFsXGxldFxzdWJzdWJzZWN0aW9u ID0gXG51bWJlcmVkc3Vic3Vic2Vjfz0BMTg3Miw2MTc0NQotXGRlZlxtYWpvcmhlYWRpbmd7f1xt YWpvcmhlYWRpbmcBMTg4Niw2MjI1MgotXGRlZlxtYWpvcmhlYWRpbmd6enogIzF7f1xtYWpvcmhl YWRpbmd6enoBMTg4Nyw2MjI5NwotXGRlZlxjaGFwaGVhZGluZ3t/XGNoYXBoZWFkaW5nATE4OTMs NjI1MzAKLVxkZWZcY2hhcGhlYWRpbmd6enogIzF7f1xjaGFwaGVhZGluZ3p6egExODk0LDYyNTcz Ci1cZGVmXGhlYWRpbmd7f1xoZWFkaW5nATE4OTksNjI3NjgKLVxkZWZcc3ViaGVhZGluZ3t/XHN1 YmhlYWRpbmcBMTkwMSw2MjgwNQotXGRlZlxzdWJzdWJoZWFkaW5ne39cc3Vic3ViaGVhZGluZwEx OTAzLDYyODQ4Ci1cZGVmXGRvYnJlYWsjMSMye39cZG9icmVhawExOTEwLDYzMTI1Ci1cZGVmXHNl dGNoYXB0ZXJzdHlsZSAjMSB7f1xzZXRjaGFwdGVyc3R5bGUBMTkxMiw2MzIwMwotXGRlZlxjaGFw YnJlYWt7f1xjaGFwYnJlYWsBMTkxOSw2MzQ1OAotXGRlZlxjaGFwcGFnZXJ7f1xjaGFwcGFnZXIB MTkyMCw2MzUwOAotXGRlZlxjaGFwb2RkcGFnZXt/XGNoYXBvZGRwYWdlATE5MjEsNjM1NDYKLVxk ZWZcc2V0Y2hhcHRlcm5ld3BhZ2UgIzEge39cc2V0Y2hhcHRlcm5ld3BhZ2UBMTkyMyw2MzYyNQot XGRlZlxDSEFQUEFHb2Zme39cQ0hBUFBBR29mZgExOTI1LDYzNjgyCi1cZGVmXENIQVBQQUdvbnt/ XENIQVBQQUdvbgExOTI5LDYzNzc2Ci1cZ2xvYmFsXGRlZlxIRUFESU5HU29ue39cSEVBRElOR1Nv bgExOTMyLDYzODY3Ci1cZGVmXENIQVBQQUdvZGR7f1xDSEFQUEFHb2RkATE5MzQsNjM5MDkKLVxn bG9iYWxcZGVmXEhFQURJTkdTb257f1xIRUFESU5HU29uATE5MzcsNjQwMDUKLVxkZWZcQ0hBUEZw bGFpbnt/XENIQVBGcGxhaW4BMTk0MSw2NDA1OQotXGRlZlxjaGZwbGFpbiAjMSMye39cY2hmcGxh aW4BMTk0NSw2NDE1MQotXGRlZlx1bm5jaGZwbGFpbiAjMXt/XHVubmNoZnBsYWluATE5NTYsNjQz NzQKLVxkZWZcdW5uY2hmb3BlbiAjMXt/XHVubmNoZm9wZW4BMTk2NCw2NDYwMwotXGRlZlxjaGZv cGVuICMxIzJ7f1xjaGZvcGVuATE5NzAsNjQ4MTEKLVxkZWZcQ0hBUEZvcGVue39cQ0hBUEZvcGVu ATE5NzUsNjQ5NTUKLVxkZWZcc3Vic2VjaGVhZGluZ2JyZWFre39cc3Vic2VjaGVhZGluZ2JyZWFr ATE5ODIsNjUxNzMKLVxkZWZcc2VjaGVhZGluZ2JyZWFre39cc2VjaGVhZGluZ2JyZWFrATE5ODUs NjUzMDIKLVxkZWZcc2VjaGVhZGluZyAjMSMyIzN7f1xzZWNoZWFkaW5nATE5OTMsNjU1ODQKLVxk ZWZccGxhaW5zZWNoZWFkaW5nICMxe39ccGxhaW5zZWNoZWFkaW5nATE5OTQsNjU2NDAKLVxkZWZc c2VjaGVhZGluZ2kgIzF7f1xzZWNoZWFkaW5naQExOTk1LDY1NjgzCi1cZGVmXHN1YnNlY2hlYWRp bmcgIzEjMiMzIzR7f1xzdWJzZWNoZWFkaW5nATIwMDYsNjYwNTEKLVxkZWZcc3Vic2VjaGVhZGlu Z2kgIzF7f1xzdWJzZWNoZWFkaW5naQEyMDA3LDY2MTE4Ci1cZGVmXHN1YnN1YnNlY2ZvbnRze39c c3Vic3Vic2VjZm9udHMBMjAxNCw2NjQxNQotXGRlZlxzdWJzdWJzZWNoZWFkaW5nICMxIzIjMyM0 IzV7f1xzdWJzdWJzZWNoZWFkaW5nATIwMTcsNjY1MzgKLVxkZWZcc3Vic3Vic2VjaGVhZGluZ2kg IzF7f1xzdWJzdWJzZWNoZWFkaW5naQEyMDE4LDY2NjE2Ci1cZGVmXHN0YXJ0Y29udGVudHMjMXt/ XHN0YXJ0Y29udGVudHMBMjAzMiw2NzA4OAotICAgXHVubnVtYmNoYXBtYWNyb3sjMX1cZGVmXHRo aXNjaGFwdGVye39cdGhpc2NoYXB0ZXIBMjA0MCw2NzM2MQotXG91dGVyXGRlZlxjb250ZW50c3t/ XGNvbnRlbnRzATIwNDksNjc3MjAKLVxvdXRlclxkZWZcc3VtbWFyeWNvbnRlbnRze39cc3VtbWFy eWNvbnRlbnRzATIwNTcsNjc4NjQKLSAgICAgIFxkZWZcc2VjZW50cnkgIyMxIyMyIyMzIyM0e39c c2VjZW50cnkBMjA2Nyw2ODIzNQotICAgICAgXGRlZlx1bm51bWJzZWNlbnRyeSAjIzEjIzJ7f1x1 bm51bWJzZWNlbnRyeQEyMDY4LDY4MjcwCi0gICAgICBcZGVmXHN1YnNlY2VudHJ5ICMjMSMjMiMj MyMjNCMjNXt/XHN1YnNlY2VudHJ5ATIwNjksNjgzMDUKLSAgICAgIFxkZWZcdW5udW1ic3Vic2Vj ZW50cnkgIyMxIyMye39cdW5udW1ic3Vic2VjZW50cnkBMjA3MCw2ODM0NgotICAgICAgXGRlZlxz dWJzdWJzZWNlbnRyeSAjIzEjIzIjIzMjIzQjIzUjIzZ7f1xzdWJzdWJzZWNlbnRyeQEyMDcxLDY4 Mzg0Ci0gICAgICBcZGVmXHVubnVtYnN1YnN1YnNlY2VudHJ5ICMjMSMjMnt/XHVubnVtYnN1YnN1 YnNlY2VudHJ5ATIwNzIsNjg0MzEKLVxkZWZcY2hhcGVudHJ5IzEjMiMze39cY2hhcGVudHJ5ATIw ODUsNjg4NjUKLVxkZWZcc2hvcnRjaGFwZW50cnkjMSMyIzN7f1xzaG9ydGNoYXBlbnRyeQEyMDg4 LDY4OTgyCitcb3V0ZXJcZGVmXHVubnVtYmVyZWRzdWJzdWJzZWN7f3VubnVtYmVyZWRzdWJzdWJz ZWMBMTgzOCw2MDM1MgorXGRlZlx1bm51bWJlcmVkc3Vic3Vic2Vjenp6ICMxe391bm51bWJlcmVk c3Vic3Vic2Vjenp6ATE4MzksNjA0MTcKK1xwbGFpbnNlY2hlYWRpbmcgeyMxfVxnZGVmXHRoaXNz ZWN0aW9ue390aGlzc2VjdGlvbgExODQwLDYwNDgwCit7XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRz ATE4NDEsNjA1MjQKK1xlZGVmXHRlbXB7f3RlbXABMTg0Miw2MDU0MgorXGRlZlxpbmZvdG9we39p bmZvdG9wATE4NTEsNjA4NTMKK1xkZWZcaW5mb3VubnVtYmVyZWR7f2luZm91bm51bWJlcmVkATE4 NTIsNjA4OTEKK1xkZWZcaW5mb3VubnVtYmVyZWRzZWN7f2luZm91bm51bWJlcmVkc2VjATE4NTMs NjA5MzYKK1xkZWZcaW5mb3VubnVtYmVyZWRzdWJzZWN7f2luZm91bm51bWJlcmVkc3Vic2VjATE4 NTQsNjA5ODcKK1xkZWZcaW5mb3VubnVtYmVyZWRzdWJzdWJzZWN7f2luZm91bm51bWJlcmVkc3Vi c3Vic2VjATE4NTUsNjEwNDQKK1xkZWZcaW5mb2FwcGVuZGl4e39pbmZvYXBwZW5kaXgBMTg1Nyw2 MTEwOAorXGRlZlxpbmZvYXBwZW5kaXh7XHBhcnNlYXJnXGFwcGVuZGl4enp6fX96enoBMTg1Nyw2 MTEwOAorXGRlZlxpbmZvYXBwZW5kaXhzZWN7f2luZm9hcHBlbmRpeHNlYwExODU4LDYxMTQ5Citc ZGVmXGluZm9hcHBlbmRpeHNlY3tccGFyc2VhcmdcYXBwZW5kaXhzZWN6enp9f3NlY3p6egExODU4 LDYxMTQ5CitcZGVmXGluZm9hcHBlbmRpeHN1YnNlY3t/aW5mb2FwcGVuZGl4c3Vic2VjATE4NTks NjExOTYKK1xkZWZcaW5mb2FwcGVuZGl4c3Vic2Vje1xwYXJzZWFyZ1xhcHBlbmRpeHN1YnNlY3p6 en1/c3Vic2Vjenp6ATE4NTksNjExOTYKK1xkZWZcaW5mb2FwcGVuZGl4c3Vic3Vic2Vje39pbmZv YXBwZW5kaXhzdWJzdWJzZWMBMTg2MCw2MTI0OQorXGRlZlxpbmZvYXBwZW5kaXhzdWJzdWJzZWN7 XHBhcnNlYXJnXGFwcGVuZGl4c3Vic3Vic2Vjenp6fX9zdWJzdWJzZWN6enoBMTg2MCw2MTI0OQor XGRlZlxpbmZvY2hhcHRlcnt/aW5mb2NoYXB0ZXIBMTg2Miw2MTMwOQorXGRlZlxpbmZvY2hhcHRl cntccGFyc2VhcmdcY2hhcHRlcnp6en1/enp6ATE4NjIsNjEzMDkKK1xkZWZcaW5mb3NlY3Rpb257 f2luZm9zZWN0aW9uATE4NjMsNjEzNDgKK1xkZWZcaW5mb3NlY3Rpb257XHBhcnNlYXJnXHNlY3Rp b256enp9f3p6egExODYzLDYxMzQ4CitcZGVmXGluZm9zdWJzZWN0aW9ue39pbmZvc3Vic2VjdGlv bgExODY0LDYxMzg3CitcZGVmXGluZm9zdWJzZWN0aW9ue1xwYXJzZWFyZ1xzdWJzZWN0aW9uenp6 fX96enoBMTg2NCw2MTM4NworXGRlZlxpbmZvc3Vic3Vic2VjdGlvbnt/aW5mb3N1YnN1YnNlY3Rp b24BMTg2NSw2MTQzMgorXGRlZlxpbmZvc3Vic3Vic2VjdGlvbntccGFyc2Vhcmdcc3Vic3Vic2Vj dGlvbnp6en1/enp6ATE4NjUsNjE0MzIKK1xnbG9iYWxcbGV0XHNlY3Rpb24gPSBcbnVtYmVyZWRz ZWN/c2VjdGlvbgExODcwLDYxNjY5CitcZ2xvYmFsXGxldFxzdWJzZWN0aW9uID0gXG51bWJlcmVk c3Vic2Vjf3N1YnNlY3Rpb24BMTg3MSw2MTcwNAorXGdsb2JhbFxsZXRcc3Vic3Vic2VjdGlvbiA9 IFxudW1iZXJlZHN1YnN1YnNlY39zdWJzdWJzZWN0aW9uATE4NzIsNjE3NDUKK1xkZWZcbWFqb3Jo ZWFkaW5ne39tYWpvcmhlYWRpbmcBMTg4Niw2MjI1MgorXGRlZlxtYWpvcmhlYWRpbmd6enogIzF7 f21ham9yaGVhZGluZ3p6egExODg3LDYyMjk3CitcZGVmXGNoYXBoZWFkaW5ne39jaGFwaGVhZGlu ZwExODkzLDYyNTMwCitcZGVmXGNoYXBoZWFkaW5nenp6ICMxe39jaGFwaGVhZGluZ3p6egExODk0 LDYyNTczCitcZGVmXGhlYWRpbmd7f2hlYWRpbmcBMTg5OSw2Mjc2OAorXGRlZlxzdWJoZWFkaW5n e39zdWJoZWFkaW5nATE5MDEsNjI4MDUKK1xkZWZcc3Vic3ViaGVhZGluZ3t/c3Vic3ViaGVhZGlu ZwExOTAzLDYyODQ4CitcZGVmXGRvYnJlYWsjMSMye39kb2JyZWFrATE5MTAsNjMxMjUKK1xkZWZc c2V0Y2hhcHRlcnN0eWxlICMxIHt/c2V0Y2hhcHRlcnN0eWxlATE5MTIsNjMyMDMKK1xkZWZcY2hh cGJyZWFre39jaGFwYnJlYWsBMTkxOSw2MzQ1OAorXGRlZlxjaGFwcGFnZXJ7f2NoYXBwYWdlcgEx OTIwLDYzNTA4CitcZGVmXGNoYXBvZGRwYWdle39jaGFwb2RkcGFnZQExOTIxLDYzNTQ2CitcZGVm XHNldGNoYXB0ZXJuZXdwYWdlICMxIHt/c2V0Y2hhcHRlcm5ld3BhZ2UBMTkyMyw2MzYyNQorXGRl ZlxDSEFQUEFHb2Zme39DSEFQUEFHb2ZmATE5MjUsNjM2ODIKK1xnbG9iYWxcbGV0XHBjaGFwc2Vw bWFjcm89XGNoYXBicmVha39wY2hhcHNlcG1hY3JvATE5MjYsNjM2OTkKK1xnbG9iYWxcbGV0XHBh Z2VhbGlnbm1hY3JvPVxjaGFwcGFnZXJ9f3BhZ2VhbGlnbm1hY3JvATE5MjcsNjM3MzYKK1xkZWZc Q0hBUFBBR29ue39DSEFQUEFHb24BMTkyOSw2Mzc3NgorXGdsb2JhbFxsZXRccGNoYXBzZXBtYWNy bz1cY2hhcHBhZ2Vyf3BjaGFwc2VwbWFjcm8BMTkzMCw2Mzc5MgorXGdsb2JhbFxsZXRccGFnZWFs aWdubWFjcm89XGNoYXBwYWdlcn9wYWdlYWxpZ25tYWNybwExOTMxLDYzODI5CitcZ2xvYmFsXGRl ZlxIRUFESU5HU29ue39IRUFESU5HU29uATE5MzIsNjM4NjcKK1xkZWZcQ0hBUFBBR29kZHt/Q0hB UFBBR29kZAExOTM0LDYzOTA5CitcZ2xvYmFsXGxldFxwY2hhcHNlcG1hY3JvPVxjaGFwb2RkcGFn ZX9wY2hhcHNlcG1hY3JvATE5MzUsNjM5MjYKK1xnbG9iYWxcbGV0XHBhZ2VhbGlnbm1hY3JvPVxj aGFwb2RkcGFnZX9wYWdlYWxpZ25tYWNybwExOTM2LDYzOTY1CitcZ2xvYmFsXGRlZlxIRUFESU5H U29ue39IRUFESU5HU29uATE5MzcsNjQwMDUKK1xkZWZcQ0hBUEZwbGFpbnt/Q0hBUEZwbGFpbgEx OTQxLDY0MDU5CitcZ2xvYmFsXGxldFxjaGFwbWFjcm89XGNoZnBsYWluf2NoYXBtYWNybwExOTQy LDY0MDc2CitcZ2xvYmFsXGxldFx1bm51bWJjaGFwbWFjcm89XHVubmNoZnBsYWlufX91bm51bWJj aGFwbWFjcm8BMTk0Myw2NDEwOAorXGRlZlxjaGZwbGFpbiAjMSMye39jaGZwbGFpbgExOTQ1LDY0 MTUxCitcZGVmXHVubmNoZnBsYWluICMxe391bm5jaGZwbGFpbgExOTU2LDY0Mzc0CitcZGVmXHVu bmNoZm9wZW4gIzF7f3VubmNoZm9wZW4BMTk2NCw2NDYwMworXGRlZlxjaGZvcGVuICMxIzJ7f2No Zm9wZW4BMTk3MCw2NDgxMQorXGRlZlxDSEFQRm9wZW57f0NIQVBGb3BlbgExOTc1LDY0OTU1Citc Z2xvYmFsXGxldFxjaGFwbWFjcm89XGNoZm9wZW5/Y2hhcG1hY3JvATE5NzYsNjQ5NzEKK1xnbG9i YWxcbGV0XHVubnVtYmNoYXBtYWNybz1cdW5uY2hmb3Blbn1/dW5udW1iY2hhcG1hY3JvATE5Nzcs NjUwMDIKK1xkZWZcc3Vic2VjaGVhZGluZ2JyZWFre39zdWJzZWNoZWFkaW5nYnJlYWsBMTk4Miw2 NTE3MworXGRlZlxzZWNoZWFkaW5nYnJlYWt7f3NlY2hlYWRpbmdicmVhawExOTg1LDY1MzAyCitc bGV0XHBhcmFncmFwaGluZGVudD1cY29tbWVudH9wYXJhZ3JhcGhpbmRlbnQBMTk4OCw2NTQyOAor XGRlZlxzZWNoZWFkaW5nICMxIzIjM3t/c2VjaGVhZGluZwExOTkzLDY1NTg0CitcZGVmXHBsYWlu c2VjaGVhZGluZyAjMXt/cGxhaW5zZWNoZWFkaW5nATE5OTQsNjU2NDAKK1xkZWZcc2VjaGVhZGlu Z2kgIzF7f3NlY2hlYWRpbmdpATE5OTUsNjU2ODMKK1xkZWZcc3Vic2VjaGVhZGluZyAjMSMyIzMj NHt/c3Vic2VjaGVhZGluZwEyMDA2LDY2MDUxCitcZGVmXHN1YnNlY2hlYWRpbmdpICMxe39zdWJz ZWNoZWFkaW5naQEyMDA3LDY2MTE4CitcZGVmXHN1YnN1YnNlY2ZvbnRze39zdWJzdWJzZWNmb250 cwEyMDE0LDY2NDE1CitcZGVmXHN1YnN1YnNlY2hlYWRpbmcgIzEjMiMzIzQjNXt/c3Vic3Vic2Vj aGVhZGluZwEyMDE3LDY2NTM4CitcZGVmXHN1YnN1YnNlY2hlYWRpbmdpICMxe39zdWJzdWJzZWNo ZWFkaW5naQEyMDE4LDY2NjE2CitcZGVmXHN0YXJ0Y29udGVudHMjMXt/c3RhcnRjb250ZW50cwEy MDMyLDY3MDg4CisgICBcdW5udW1iY2hhcG1hY3JveyMxfVxkZWZcdGhpc2NoYXB0ZXJ7f3RoaXNj aGFwdGVyATIwNDAsNjczNjEKK1xvdXRlclxkZWZcY29udGVudHN7f2NvbnRlbnRzATIwNDksNjc3 MjAKK1xvdXRlclxkZWZcc3VtbWFyeWNvbnRlbnRze39zdW1tYXJ5Y29udGVudHMBMjA1Nyw2Nzg2 NAorICAgICAgXGxldFxjaGFwZW50cnkgPSBcc2hvcnRjaGFwZW50cnl/Y2hhcGVudHJ5ATIwNjAs Njc5MzYKKyAgICAgIFxsZXRcdW5udW1iY2hhcGVudHJ5ID0gXHNob3J0dW5udW1iZXJlZGVudHJ5 f3VubnVtYmNoYXBlbnRyeQEyMDYxLDY3OTc1CisgICAgICBcbGV0XHJtPVxzaG9ydGNvbnRybSBc bGV0XGJmPVxzaG9ydGNvbnRiZiBcbGV0XHNsPVxzaG9ydGNvbnRzbH9ybQEyMDY0LDY4MDk4Cisg ICAgICBcbGV0XHJtPVxzaG9ydGNvbnRybSBcbGV0XGJmPVxzaG9ydGNvbnRiZiBcbGV0XHNsPVxz aG9ydGNvbnRzbH9iZgEyMDY0LDY4MDk4CisgICAgICBcbGV0XHJtPVxzaG9ydGNvbnRybSBcbGV0 XGJmPVxzaG9ydGNvbnRiZiBcbGV0XHNsPVxzaG9ydGNvbnRzbH9zbAEyMDY0LDY4MDk4CisgICAg ICBcZGVmXHNlY2VudHJ5ICMjMSMjMiMjMyMjNHt/c2VjZW50cnkBMjA2Nyw2ODIzNQorICAgICAg XGRlZlx1bm51bWJzZWNlbnRyeSAjIzEjIzJ7f3VubnVtYnNlY2VudHJ5ATIwNjgsNjgyNzAKKyAg ICAgIFxkZWZcc3Vic2VjZW50cnkgIyMxIyMyIyMzIyM0IyM1e39zdWJzZWNlbnRyeQEyMDY5LDY4 MzA1CisgICAgICBcZGVmXHVubnVtYnN1YnNlY2VudHJ5ICMjMSMjMnt/dW5udW1ic3Vic2VjZW50 cnkBMjA3MCw2ODM0NgorICAgICAgXGRlZlxzdWJzdWJzZWNlbnRyeSAjIzEjIzIjIzMjIzQjIzUj IzZ7f3N1YnN1YnNlY2VudHJ5ATIwNzEsNjgzODQKKyAgICAgIFxkZWZcdW5udW1ic3Vic3Vic2Vj ZW50cnkgIyMxIyMye391bm51bWJzdWJzdWJzZWNlbnRyeQEyMDcyLDY4NDMxCitcbGV0XHNob3J0 Y29udGVudHMgPSBcc3VtbWFyeWNvbnRlbnRzf3Nob3J0Y29udGVudHMBMjA3Nyw2ODUzMAorXGRl ZlxjaGFwZW50cnkjMSMyIzN7f2NoYXBlbnRyeQEyMDg1LDY4ODY1CitcZGVmXGNoYXBlbnRyeSMx IzIjM3tcZG9jaGFwZW50cnl7IzJcbGFiZWxzcGFjZSMxfX9zcGFjZQEyMDg1LDY4ODY1CitcZGVm XHNob3J0Y2hhcGVudHJ5IzEjMiMze39zaG9ydGNoYXBlbnRyeQEyMDg4LDY4OTgyCiAgICAgeyMy XGxhYmVsc3BhY2UgIzF9f3NwYWNlATIwOTEsNjkwOTIKLVxkZWZcdW5udW1iY2hhcGVudHJ5IzEj Mnt/XHVubnVtYmNoYXBlbnRyeQEyMDk0LDY5MTQ2Ci1cZGVmXHNob3J0dW5udW1iZXJlZGVudHJ5 IzEjMnt/XHNob3J0dW5udW1iZXJlZGVudHJ5ATIwOTUsNjkxOTMKLVxkZWZcc2VjZW50cnkjMSMy IzMjNHt/XHNlY2VudHJ5ATIxMDIsNjkzNTcKLVxkZWZcdW5udW1ic2VjZW50cnkjMSMye39cdW5u dW1ic2VjZW50cnkBMjEwMyw2OTQxNgotXGRlZlxzdWJzZWNlbnRyeSMxIzIjMyM0IzV7f1xzdWJz ZWNlbnRyeQEyMTA2LDY5NDc3Ci1cZGVmXHVubnVtYnN1YnNlY2VudHJ5IzEjMnt/XHVubnVtYnN1 YnNlY2VudHJ5ATIxMDcsNjk1NDcKLVxkZWZcc3Vic3Vic2VjZW50cnkjMSMyIzMjNCM1IzZ7f1xz dWJzdWJzZWNlbnRyeQEyMTEwLDY5NjIxCitcZGVmXHVubnVtYmNoYXBlbnRyeSMxIzJ7f3VubnVt YmNoYXBlbnRyeQEyMDk0LDY5MTQ2CitcZGVmXHNob3J0dW5udW1iZXJlZGVudHJ5IzEjMnt/c2hv cnR1bm51bWJlcmVkZW50cnkBMjA5NSw2OTE5MworXGRlZlxzZWNlbnRyeSMxIzIjMyM0e39zZWNl bnRyeQEyMTAyLDY5MzU3CitcZGVmXHNlY2VudHJ5IzEjMiMzIzR7XGRvc2VjZW50cnl7IzIuIzNc bGFiZWxzcGFjZSMxfX9zcGFjZQEyMTAyLDY5MzU3CitcZGVmXHVubnVtYnNlY2VudHJ5IzEjMnt/ dW5udW1ic2VjZW50cnkBMjEwMyw2OTQxNgorXGRlZlxzdWJzZWNlbnRyeSMxIzIjMyM0IzV7f3N1 YnNlY2VudHJ5ATIxMDYsNjk0NzcKK1xkZWZcc3Vic2VjZW50cnkjMSMyIzMjNCM1e1xkb3N1YnNl Y2VudHJ5eyMyLiMzLiM0XGxhYmVsc3BhY2UjMX1/c3BhY2UBMjEwNiw2OTQ3NworXGRlZlx1bm51 bWJzdWJzZWNlbnRyeSMxIzJ7f3VubnVtYnN1YnNlY2VudHJ5ATIxMDcsNjk1NDcKK1xkZWZcc3Vi c3Vic2VjZW50cnkjMSMyIzMjNCM1IzZ7f3N1YnN1YnNlY2VudHJ5ATIxMTAsNjk2MjEKICAgXGRv c3Vic3Vic2VjZW50cnl7IzIuIzMuIzQuIzVcbGFiZWxzcGFjZSMxfX9zcGFjZQEyMTExLDY5NjU1 Ci1cZGVmXHVubnVtYnN1YnN1YnNlY2VudHJ5IzEjMnt/XHVubnVtYnN1YnN1YnNlY2VudHJ5ATIx MTIsNjk3MDYKLVxkZWZcZG9jaGFwZW50cnkjMSMye39cZG9jaGFwZW50cnkBMjEyMyw3MDA4MAot XGRlZlxkb3NlY2VudHJ5IzEjMnt/XGRvc2VjZW50cnkBMjEzOCw3MDY4NQotXGRlZlxkb3N1YnNl Y2VudHJ5IzEjMnt/XGRvc3Vic2VjZW50cnkBMjE0NSw3MDg2MwotXGRlZlxkb3N1YnN1YnNlY2Vu dHJ5IzEjMnt/XGRvc3Vic3Vic2VjZW50cnkBMjE1Miw3MTA0OAotXGRlZlxsYWJlbHNwYWNle39c bGFiZWxzcGFjZQEyMTYwLDcxMjk5Ci1cZGVmXGRvcGFnZW5vIzF7f1xkb3BhZ2VubwEyMTYyLDcx MzM0Ci1cZGVmXGRvc2hvcnRwYWdlbm8jMXt/XGRvc2hvcnRwYWdlbm8BMjE2Myw3MTM2MAotXGRl ZlxjaGFwZW50cnlmb250c3t/XGNoYXBlbnRyeWZvbnRzATIxNjUsNzEzOTIKLVxkZWZcc2VjZW50 cnlmb250c3t/XHNlY2VudHJ5Zm9udHMBMjE2Niw3MTQyNwotXGRlZlxwb2ludHt/XHBvaW50ATIx OTIsNzIzODYKLVxkZWZccmVzdWx0e39ccmVzdWx0ATIxOTQsNzI0MDcKLVxkZWZcZXhwYW5zaW9u e39cZXhwYW5zaW9uATIxOTUsNzI0ODAKLVxkZWZccHJpbnR7f1xwcmludAEyMTk2LDcyNTUxCi1c ZGVmXGVxdWl2e39cZXF1aXYBMjE5OCw3MjYxOAotXGRlZlxlcnJvcnt/XGVycm9yATIyMTgsNzMz OTEKLVxkZWZcdGV4e39cdGV4ATIyMjQsNzM2MjAKLVxkZWZcQHt/XEABMjI0Miw3NDAwMwotXGdk ZWZcc2Vwc3BhY2Vze1xkZWYge1wgfX19f1wBMjI2NSw3NDczNQotXGRlZlxhYm92ZWVudmJyZWFr e39cYWJvdmVlbnZicmVhawEyMjY4LDc0ODE3Ci1cZGVmXGFmdGVyZW52YnJlYWt7f1xhZnRlcmVu dmJyZWFrATIyNzIsNzQ5ODMKLVxkZWZcY3Rse39cY3RsATIyODYsNzU0OTQKLVxkZWZcY3Rye39c Y3RyATIyODcsNzU1NjYKLVxkZWZcY2Jse39cY2JsATIyODgsNzU2MDUKLVxkZWZcY2Jye39cY2Jy ATIyODksNzU2NDUKLVxkZWZcY2FydHRvcHt/XGNhcnR0b3ABMjI5MCw3NTY4NAotXGRlZlxjYXJ0 Ym90e39cY2FydGJvdAEyMjkzLDc1NzkyCi1cbG9uZ1xkZWZcY2FydG91Y2hle39cY2FydG91Y2hl ATIyOTksNzU5MzIKLVxkZWZcRWNhcnRvdWNoZXt/XEVjYXJ0b3VjaGUBMjMyNiw3NjcyMAotXGRl ZlxsaXNwe39cbGlzcAEyMzM4LDc2ODU1Ci1cZGVmXEVsaXNwe39cRWxpc3ABMjM0OCw3NzIwMgot XGRlZlxuZXh0IyMxe39cbmV4dAEyMzYwLDc3NTI4Ci1cZGVmXEVleGFtcGxle39cRWV4YW1wbGUB MjM2NCw3NzU3MAotXGRlZlxFc21hbGxleGFtcGxle39cRXNtYWxsZXhhbXBsZQEyMzY3LDc3NjE3 Ci1cZGVmXHNtYWxsbGlzcHh7f1xzbWFsbGxpc3B4ATIzNzMsNzc3OTUKLVxkZWZcRXNtYWxsbGlz cHt/XEVzbWFsbGxpc3ABMjM4Myw3ODE0OQorXGRlZlx1bm51bWJzdWJzdWJzZWNlbnRyeSMxIzJ7 f3VubnVtYnN1YnN1YnNlY2VudHJ5ATIxMTIsNjk3MDYKK1xkZWZcZG9jaGFwZW50cnkjMSMye39k b2NoYXBlbnRyeQEyMTIzLDcwMDgwCitcZGVmXGRvc2VjZW50cnkjMSMye39kb3NlY2VudHJ5ATIx MzgsNzA2ODUKK1xkZWZcZG9zdWJzZWNlbnRyeSMxIzJ7f2Rvc3Vic2VjZW50cnkBMjE0NSw3MDg2 MworXGRlZlxkb3N1YnN1YnNlY2VudHJ5IzEjMnt/ZG9zdWJzdWJzZWNlbnRyeQEyMTUyLDcxMDQ4 CitcZGVmXGxhYmVsc3BhY2V7f2xhYmVsc3BhY2UBMjE2MCw3MTI5OQorXGRlZlxkb3BhZ2VubyMx e39kb3BhZ2VubwEyMTYyLDcxMzM0CitcZGVmXGRvc2hvcnRwYWdlbm8jMXt/ZG9zaG9ydHBhZ2Vu bwEyMTYzLDcxMzYwCitcZGVmXGNoYXBlbnRyeWZvbnRze39jaGFwZW50cnlmb250cwEyMTY1LDcx MzkyCitcZGVmXHNlY2VudHJ5Zm9udHN7f3NlY2VudHJ5Zm9udHMBMjE2Niw3MTQyNworXGxldFxz dWJzZWNlbnRyeWZvbnRzID0gXHRleHRmb250c39zdWJzZWNlbnRyeWZvbnRzATIxNjcsNzE0NTgK K1xsZXRcc3Vic3Vic2VjZW50cnlmb250cyA9IFx0ZXh0Zm9udHN/c3Vic3Vic2VjZW50cnlmb250 cwEyMTY4LDcxNDkzCitcbGV0XHB0ZXhlcXVpdiA9IFxlcXVpdn9wdGV4ZXF1aXYBMjE4MCw3MTg5 NgorXGRlZlxwb2ludHt/cG9pbnQBMjE5Miw3MjM4NgorXGRlZlxyZXN1bHR7f3Jlc3VsdAEyMTk0 LDcyNDA3CitcZGVmXGV4cGFuc2lvbnt/ZXhwYW5zaW9uATIxOTUsNzI0ODAKK1xkZWZccHJpbnR7 f3ByaW50ATIxOTYsNzI1NTEKK1xkZWZcZXF1aXZ7f2VxdWl2ATIxOTgsNzI2MTgKK1xkZWZcZXJy b3J7f2Vycm9yATIyMTgsNzMzOTEKK1xkZWZcdGV4e390ZXgBMjIyNCw3MzYyMAorXGNhdGNvZGUg YFxePTcgXGNhdGNvZGUgYFxfPTggXGNhdGNvZGUgYFx+PTEzIFxsZXR+PVx0aWV/fgEyMjI3LDcz NzMxCitcbGV0XHs9XHB0ZXhsYnJhY2V/ewEyMjM3LDczOTEyCitcbGV0XH09XHB0ZXhyYnJhY2V/ fQEyMjM4LDczOTMxCitcbGV0XC49XHB0ZXhkb3R/LgEyMjM5LDczOTUwCitcbGV0XCo9XHB0ZXhz dGFyfyoBMjI0MCw3Mzk2NgorXGxldFxkb3RzPVxwdGV4ZG90c39kb3RzATIyNDEsNzM5ODMKK1xk ZWZcQHt/QAEyMjQyLDc0MDAzCitcbGV0XGJ1bGxldD1ccHRleGJ1bGxldH9idWxsZXQBMjI0Myw3 NDAxNAorXGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0PVxw dGV4dCBcbGV0XGw9XHB0ZXhsf2IBMjI0NCw3NDAzOAorXGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0 ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhsf2MBMjI0NCw3NDAz OAorXGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4 dCBcbGV0XGw9XHB0ZXhsf2kBMjI0NCw3NDAzOAorXGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhj IFxsZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhsf3QBMjI0NCw3NDAzOAor XGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4dCBc bGV0XGw9XHB0ZXhsf2wBMjI0NCw3NDAzOAorXGxldFxMPVxwdGV4TH9MATIyNDUsNzQxMDgKK1xs ZXRcRXRleD1cZW5kZ3JvdXB9f0V0ZXgBMjI0Nyw3NDEyNAorXGdkZWZcbGlzcHBhcnt/bGlzcHBh cgEyMjU5LDc0NTE3CitcZ2RlZlxzZXBzcGFjZXN7f3NlcHNwYWNlcwEyMjY1LDc0NzM1CitcZGVm XGFib3ZlZW52YnJlYWt7f2Fib3ZlZW52YnJlYWsBMjI2OCw3NDgxNworXGRlZlxhZnRlcmVudmJy ZWFre39hZnRlcmVudmJyZWFrATIyNzIsNzQ5ODMKK1xsZXRcbm9uYXJyb3dpbmc9XHJlbGF4f25v bmFycm93aW5nATIyNzYsNzUxNzYKK1xkZWZcY3Rse39jdGwBMjI4Niw3NTQ5NAorXGRlZlxjdHJ7 f2N0cgEyMjg3LDc1NTY2CitcZGVmXGNibHt/Y2JsATIyODgsNzU2MDUKK1xkZWZcY2Jye39jYnIB MjI4OSw3NTY0NQorXGRlZlxjYXJ0dG9we39jYXJ0dG9wATIyOTAsNzU2ODQKK1xkZWZcY2FydGJv dHt/Y2FydGJvdAEyMjkzLDc1NzkyCitcbG9uZ1xkZWZcY2FydG91Y2hle39jYXJ0b3VjaGUBMjI5 OSw3NTkzMgorCVxsZXRcbm9uYXJyb3dpbmc9XGNvbW1lbnR/bm9uYXJyb3dpbmcBMjMxMSw3NjQw NAorXGRlZlxFY2FydG91Y2hle39FY2FydG91Y2hlATIzMjYsNzY3MjAKK1xkZWZcbGlzcHt/bGlz cAEyMzM4LDc2ODU1CitcbGV0XHBhcj1cbGlzcHBhcn9wYXIBMjM0Nyw3NzE4NAorXGRlZlxFbGlz cHt/RWxpc3ABMjM0OCw3NzIwMgorXGxldFxleGRlbnQ9XG5vZmlsbGV4ZGVudH9leGRlbnQBMjM1 NSw3NzQxOAorXGxldFxub25hcnJvd2luZz1ccmVsYXh/bm9uYXJyb3dpbmcBMjM1Niw3NzQ0NAor XGRlZlxuZXh0IyMxe39uZXh0ATIzNjAsNzc1MjgKK1xsZXRcZXhhbXBsZT1cbGlzcH9leGFtcGxl ATIzNjMsNzc1NTEKK1xkZWZcRWV4YW1wbGV7f0VleGFtcGxlATIzNjQsNzc1NzAKK1xsZXRcc21h bGxleGFtcGxlPVxsaXNwf3NtYWxsZXhhbXBsZQEyMzY2LDc3NTkzCitcZGVmXEVzbWFsbGV4YW1w bGV7f0VzbWFsbGV4YW1wbGUBMjM2Nyw3NzYxNworXGRlZlxzbWFsbGxpc3B4e39zbWFsbGxpc3B4 ATIzNzMsNzc3OTUKK1xsZXRccGFyPVxsaXNwcGFyf3BhcgEyMzgyLDc4MTMxCitcZGVmXEVzbWFs bGxpc3B7f0VzbWFsbGxpc3ABMjM4Myw3ODE0OQorXGxldFxleGRlbnQ9XG5vZmlsbGV4ZGVudH9l eGRlbnQBMjM5Miw3ODQzNgorXGxldFxub25hcnJvd2luZz1ccmVsYXh/bm9uYXJyb3dpbmcBMjM5 Myw3ODQ2MgogXG9iZXlzcGFjZXMgXG9iZXlsaW5lcyBcbmluZXR0IFxpbmRleGZvbnRzIFxyYXdi YWNrc2xhc2h/Zm9udHMBMjM5Niw3ODUwNQotXGRlZlxuZXh0IyMxe39cbmV4dAEyMzk3LDc4NTYy Ci1cZGVmXGRpc3BsYXl7f1xkaXNwbGF5ATI0MDEsNzg2NDIKLVxkZWZcRWRpc3BsYXl7f1xFZGlz cGxheQEyNDEwLDc4OTYxCi1cZGVmXG5leHQjIzF7f1xuZXh0ATI0MjIsNzkyNzIKLVxkZWZcZm9y bWF0e39cZm9ybWF0ATI0MjYsNzkzNzUKLVxkZWZcRWZvcm1hdHt/XEVmb3JtYXQBMjQzNCw3OTY3 MQotXGRlZlxuZXh0IyMxe39cbmV4dAEyNDM3LDc5NzYwCi1cZGVmXGZsdXNobGVmdHt/XGZsdXNo bGVmdAEyNDQxLDc5ODEyCi1cZGVmXEVmbHVzaGxlZnR7f1xFZmx1c2hsZWZ0ATI0NTEsODAxODMK LVxkZWZcbmV4dCMjMXt/XG5leHQBMjQ1NCw4MDI3NgotXGRlZlxmbHVzaHJpZ2h0e39cZmx1c2hy aWdodAEyNDU2LDgwMjk4Ci1cZGVmXEVmbHVzaHJpZ2h0e39cRWZsdXNocmlnaHQBMjQ2Niw4MDY3 MAotXGRlZlxuZXh0IyMxe39cbmV4dAEyNDcwLDgwODAxCi1cZGVmXHF1b3RhdGlvbnt/XHF1b3Rh dGlvbgEyNDc0LDgwODU5Ci1cZGVmXEVxdW90YXRpb257f1xFcXVvdGF0aW9uATI0ODAsODEwNTEK LVxkZWZcc2V0ZGVmZm9udCAjMSB7f1xzZXRkZWZmb250ATI0OTMsODE0NDkKK1xkZWZcbmV4dCMj MXt/bmV4dAEyMzk3LDc4NTYyCitcZGVmXGRpc3BsYXl7f2Rpc3BsYXkBMjQwMSw3ODY0MgorXGxl dFxwYXI9XGxpc3BwYXJ/cGFyATI0MDksNzg5NDMKK1xkZWZcRWRpc3BsYXl7f0VkaXNwbGF5ATI0 MTAsNzg5NjEKK1xsZXRcZXhkZW50PVxub2ZpbGxleGRlbnR/ZXhkZW50ATI0MTcsNzkxODAKK1xs ZXRcbm9uYXJyb3dpbmc9XHJlbGF4f25vbmFycm93aW5nATI0MTgsNzkyMDYKK1xkZWZcbmV4dCMj MXt/bmV4dAEyNDIyLDc5MjcyCitcZGVmXGZvcm1hdHt/Zm9ybWF0ATI0MjYsNzkzNzUKK1xsZXRc cGFyPVxsaXNwcGFyf3BhcgEyNDMzLDc5NjUzCitcZGVmXEVmb3JtYXR7f0Vmb3JtYXQBMjQzNCw3 OTY3MQorXGRlZlxuZXh0IyMxe39uZXh0ATI0MzcsNzk3NjAKK1xkZWZcZmx1c2hsZWZ0e39mbHVz aGxlZnQBMjQ0MSw3OTgxMgorXGxldFxwYXI9XGxpc3BwYXJ/cGFyATI0NTAsODAxNjUKK1xkZWZc RWZsdXNobGVmdHt/RWZsdXNobGVmdAEyNDUxLDgwMTgzCitcZGVmXG5leHQjIzF7f25leHQBMjQ1 NCw4MDI3NgorXGRlZlxmbHVzaHJpZ2h0e39mbHVzaHJpZ2h0ATI0NTYsODAyOTgKK1xsZXRccGFy PVxsaXNwcGFyf3BhcgEyNDY1LDgwNjUyCitcZGVmXEVmbHVzaHJpZ2h0e39FZmx1c2hyaWdodAEy NDY2LDgwNjcwCitcZGVmXG5leHQjIzF7f25leHQBMjQ3MCw4MDgwMQorXGRlZlxxdW90YXRpb257 f3F1b3RhdGlvbgEyNDc0LDgwODU5CitcZGVmXEVxdW90YXRpb257f0VxdW90YXRpb24BMjQ4MCw4 MTA1MQorXGxldFxub25hcnJvd2luZz1ccmVsYXh/bm9uYXJyb3dpbmcBMjQ4Nyw4MTMwMQorXGRl ZlxzZXRkZWZmb250ICMxIHt/c2V0ZGVmZm9udAEyNDkzLDgxNDQ5CitcbmV3c2tpcFxkZWZib2R5 aW5kZW50IFxkZWZib2R5aW5kZW50PS40aW5/Ym9keWluZGVudAEyNDk1LDgxNDk1CiBcbmV3c2tp cFxkZWZib2R5aW5kZW50IFxkZWZib2R5aW5kZW50PS40aW5/Ym9keWluZGVudAEyNDk1LDgxNDk1 CiBcbmV3c2tpcFxkZWZhcmdzaW5kZW50IFxkZWZhcmdzaW5kZW50PTUwcHR/YXJnc2luZGVudAEy NDk2LDgxNTM4CitcbmV3c2tpcFxkZWZhcmdzaW5kZW50IFxkZWZhcmdzaW5kZW50PTUwcHR/YXJn c2luZGVudAEyNDk2LDgxNTM4CiBcbmV3c2tpcFxkZWZ0eXBlbWFyZ2luIFxkZWZ0eXBlbWFyZ2lu PTEycHR/dHlwZW1hcmdpbgEyNDk3LDgxNTgxCitcbmV3c2tpcFxkZWZ0eXBlbWFyZ2luIFxkZWZ0 eXBlbWFyZ2luPTEycHR/dHlwZW1hcmdpbgEyNDk3LDgxNTgxCitcbmV3c2tpcFxkZWZsYXN0YXJn bWFyZ2luIFxkZWZsYXN0YXJnbWFyZ2luPTE4cHR/bGFzdGFyZ21hcmdpbgEyNDk4LDgxNjI0CiBc bmV3c2tpcFxkZWZsYXN0YXJnbWFyZ2luIFxkZWZsYXN0YXJnbWFyZ2luPTE4cHR/bGFzdGFyZ21h cmdpbgEyNDk4LDgxNjI0Ci1cZGVmXGFjdGl2ZXBhcmVuc3t/XGFjdGl2ZXBhcmVucwEyNTAzLDgx ODIyCi1cZGVmXG9wbnJ7f1xvcG5yATI1MjksODMwMzQKLVxkZWZcbGJyYnt/XGxicmIBMjUzMCw4 MzA5OQotXGRlZlxkZWZuYW1lICMxIzJ7f1xkZWZuYW1lATI1MzYsODMzMDAKK1xkZWZcYWN0aXZl cGFyZW5ze39hY3RpdmVwYXJlbnMBMjUwMyw4MTgyMgorXGdkZWZcZnVuY3Rpb25wYXJlbnN7f2Z1 bmN0aW9ucGFyZW5zATI1MDcsODIwMTYKK1xnZGVmXGZ1bmN0aW9ucGFyZW5ze1xib2xkYnJheFxs ZXQmPVxhbXBybVxwYXJlbmNvdW50PTAgfX8mATI1MDcsODIwMTYKK1xnZGVmXGJvbGRicmF4e39i b2xkYnJheAEyNTA4LDgyMDc0CitcZ2RlZlxib2xkYnJheHtcbGV0KD1cb3BuclxsZXQpPVxjbG5y XGxldFs9XGxicmJcbGV0XT1ccmJyYn1/KAEyNTA4LDgyMDc0CitcZ2RlZlxib2xkYnJheHtcbGV0 KD1cb3BuclxsZXQpPVxjbG5yXGxldFs9XGxicmJcbGV0XT1ccmJyYn1/KQEyNTA4LDgyMDc0Citc Z2RlZlxib2xkYnJheHtcbGV0KD1cb3BuclxsZXQpPVxjbG5yXGxldFs9XGxicmJcbGV0XT1ccmJy Yn1/WwEyNTA4LDgyMDc0CitcZ2RlZlxib2xkYnJheHtcbGV0KD1cb3BuclxsZXQpPVxjbG5yXGxl dFs9XGxicmJcbGV0XT1ccmJyYn1/XQEyNTA4LDgyMDc0CitcZ2RlZlxvcHJtIzEge39vcHJtATI1 MTIsODIyNTAKK1xnZGVmXG9wcm0jMSB7e1xybVxjaGFyYFwofSMxIFxiZiBcbGV0KD1cb3BuZXN0 ZWQgJX8oATI1MTIsODIyNTAKK1xnZGVmXG9wbmVzdGVke39vcG5lc3RlZAEyNTE2LDgyNDA3Citc Z2RlZlxjbHJte39jbHJtATI1MTgsODI0NjYKK1xpZm51bSBccGFyZW5jb3VudD0xIHtccm0gXGNo YXIgYFwpfVxzbCBcbGV0KD1cb3BybSBcZWxzZSBcY2hhciBgXCkgXGZpfygBMjUyMCw4MjYwMgor XGdkZWZcYW1wcm0jMSB7f2FtcHJtATI1MjMsODI3NjkKK1xnZGVmXGFtcHJtIzEge3tccm1cJiMx fVxsZXQoPVxvcHJtIFxsZXQpPVxjbHJtXCB9fygBMjUyMyw4Mjc2OQorXGdkZWZcYW1wcm0jMSB7 e1xybVwmIzF9XGxldCg9XG9wcm0gXGxldCk9XGNscm1cIH1/KQEyNTIzLDgyNzY5CitcZ2RlZlxu b3JtYWxwYXJlbnN7f25vcm1hbHBhcmVucwEyNTI1LDgyODIyCitcZ2RlZlxub3JtYWxwYXJlbnN7 XGJvbGRicmF4XGxldCY9XGFtcG5yfX8mATI1MjUsODI4MjIKK1xkZWZcb3Bucnt/b3BucgEyNTI5 LDgzMDM0CitcZGVmXG9wbnJ7e1xzZlxjaGFyYFwofX0gXGRlZlxjbG5ye39jbG5yATI1MjksODMw MzQKK1xkZWZcb3Bucnt7XHNmXGNoYXJgXCh9fSBcZGVmXGNsbnJ7e1xzZlxjaGFyYFwpfX0gXGRl ZlxhbXBucnt/YW1wbnIBMjUyOSw4MzAzNAorXGRlZlxsYnJie39sYnJiATI1MzAsODMwOTkKK1xk ZWZcbGJyYnt7XGJmXGNoYXJgXFt9fSBcZGVmXHJicmJ7f3JicmIBMjUzMCw4MzA5OQorXGRlZlxk ZWZuYW1lICMxIzJ7f2RlZm5hbWUBMjUzNiw4MzMwMAogXGFkdmFuY2VcZGltZW4yIGJ5IC1cZGVm Ym9keWluZGVudH9ib2R5aW5kZW50ATI1NDAsODM0MTgKIFxhZHZhbmNlXGRpbWVuMyBieSAtXGRl ZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNTQyLDgzNDcyCiBcc2V0Ym94MD1caGJveHtcaHNraXAg XGRlZmxhc3RhcmdtYXJnaW57f2xhc3RhcmdtYXJnaW4BMjU0NCw4MzUyNgorXHNldGJveDA9XGhi b3h7XGhza2lwIFxkZWZsYXN0YXJnbWFyZ2lue1xybSAjMn1caHNraXAgXGRlZnR5cGVtYXJnaW59 f3R5cGVtYXJnaW4BMjU0NCw4MzUyNgogXGRpbWVuMT1caHNpemUgXGFkdmFuY2UgXGRpbWVuMSBi eSAtXGRlZmFyZ3NpbmRlbnQgJXNpemUgZm9yIGNvbnRpbnVhdGlvbnN/YXJnc2luZGVudAEyNTQ2 LDgzNjY4CiBccGFyc2hhcGUgMiAwaW4gXGRpbWVuMCBcZGVmYXJnc2luZGVudCBcZGltZW4xICAg ICAlf2FyZ3NpbmRlbnQBMjU0Nyw4Mzc0MwogXHJsYXB7XHJpZ2h0bGluZXt7XHJtICMyfVxoc2tp cCBcZGVmdHlwZW1hcmdpbn1/dHlwZW1hcmdpbgEyNTU0LDg0MTEyCiBcYWR2YW5jZVxsZWZ0c2tp cCBieSAtXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNTU3LDg0MjQ2CiBcZXhkZW50YW1vdW50 PVxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjU1OCw4NDI4MwotXGRlZlxkZWZwYXJzZWJvZHkg IzEjMiMze39cZGVmcGFyc2Vib2R5ATI1NjgsODQ2NDIKLVxkZWYjMXt/MjU3Miw4NDgyNgotXGRl ZiMye38yNTczLDg0ODYyCitcZGVmXGRlZnBhcnNlYm9keSAjMSMyIzN7f2RlZnBhcnNlYm9keQEy NTY4LDg0NjQyCitcYWR2YW5jZVxsZWZ0c2tpcCBieSBcZGVmYm9keWluZGVudCBcYWR2YW5jZSBc cmlnaHRza2lwIGJ5IFxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjU3NSw4NDkzNAogXGFkdmFu Y2VcbGVmdHNraXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVm Ym9keWluZGVudH9ib2R5aW5kZW50ATI1NzUsODQ5MzQKIFxleGRlbnRhbW91bnQ9XGRlZmJvZHlp bmRlbnR/Ym9keWluZGVudAEyNTc2LDg1MDA4Ci1cZGVmXGRlZm1ldGhwYXJzZWJvZHkgIzEjMiMz IzQge39cZGVmbWV0aHBhcnNlYm9keQEyNTgxLDg1MTEyCi1cZGVmIzF7fzI1ODUsODUyNzMKLVxk ZWYjMiMjMSB7fzI1ODYsODUzMDkKK1xkZWZcZGVmbWV0aHBhcnNlYm9keSAjMSMyIzMjNCB7f2Rl Zm1ldGhwYXJzZWJvZHkBMjU4MSw4NTExMgorXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlp bmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI1 ODgsODUzOTIKIFxhZHZhbmNlXGxlZnRza2lwIGJ5IFxkZWZib2R5aW5kZW50IFxhZHZhbmNlIFxy aWdodHNraXAgYnkgXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNTg4LDg1MzkyCiBcZXhkZW50 YW1vdW50PVxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjU4OSw4NTQ2NgotXGRlZlxkZWZvcHBh cnNlYm9keSAjMSMyIzMjNCM1IHt/XGRlZm9wcGFyc2Vib2R5ATI1OTIsODU1NTEKLVxkZWYjMXt/ MjU5Niw4NTcxMgotXGRlZiMyIyMxICMjMiB7fzI1OTcsODU3NDgKK1xkZWZcZGVmb3BwYXJzZWJv ZHkgIzEjMiMzIzQjNSB7f2RlZm9wcGFyc2Vib2R5ATI1OTIsODU1NTEKK1xhZHZhbmNlXGxlZnRz a2lwIGJ5IFxkZWZib2R5aW5kZW50IFxhZHZhbmNlIFxyaWdodHNraXAgYnkgXGRlZmJvZHlpbmRl bnR/Ym9keWluZGVudAEyNjAwLDg1ODQ4CiBcYWR2YW5jZVxsZWZ0c2tpcCBieSBcZGVmYm9keWlu ZGVudCBcYWR2YW5jZSBccmlnaHRza2lwIGJ5IFxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjYw MCw4NTg0OAogXGV4ZGVudGFtb3VudD1cZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI2MDEsODU5 MjIKLVxkZWZcZGVmdmFycGFyc2Vib2R5ICMxIzIjM3t/XGRlZnZhcnBhcnNlYm9keQEyNjA4LDg2 MTkzCi1cZGVmIzF7fzI2MTIsODYzODAKLVxkZWYjMnt/MjYxMyw4NjQxNgorXGRlZlxkZWZ2YXJw YXJzZWJvZHkgIzEjMiMze39kZWZ2YXJwYXJzZWJvZHkBMjYwOCw4NjE5MworXGFkdmFuY2VcbGVm dHNraXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVmYm9keWlu ZGVudH9ib2R5aW5kZW50ATI2MTUsODY0NzUKIFxhZHZhbmNlXGxlZnRza2lwIGJ5IFxkZWZib2R5 aW5kZW50IFxhZHZhbmNlIFxyaWdodHNraXAgYnkgXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEy NjE1LDg2NDc1CiBcZXhkZW50YW1vdW50PVxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjYxNiw4 NjU0OQotXGRlZlxkZWZ2cnBhcnNlYm9keSAjMSMyIzMjNCB7f1xkZWZ2cnBhcnNlYm9keQEyNjIx LDg2NjQwCi1cZGVmIzF7fzI2MjUsODY3OTkKLVxkZWYjMiMjMSB7fzI2MjYsODY4MzUKK1xkZWZc ZGVmdnJwYXJzZWJvZHkgIzEjMiMzIzQge39kZWZ2cnBhcnNlYm9keQEyNjIxLDg2NjQwCitcYWR2 YW5jZVxsZWZ0c2tpcCBieSBcZGVmYm9keWluZGVudCBcYWR2YW5jZSBccmlnaHRza2lwIGJ5IFxk ZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjYyOCw4NjkwNQogXGFkdmFuY2VcbGVmdHNraXAgYnkg XGRlZmJvZHlpbmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVmYm9keWluZGVudH9ib2R5 aW5kZW50ATI2MjgsODY5MDUKIFxleGRlbnRhbW91bnQ9XGRlZmJvZHlpbmRlbnR/Ym9keWluZGVu dAEyNjI5LDg2OTc5Ci1cZGVmXGRlZm9wdmFycGFyc2Vib2R5ICMxIzIjMyM0IzUge39cZGVmb3B2 YXJwYXJzZWJvZHkBMjYzMiw4NzA1MQotXGRlZiMxe38yNjM2LDg3MjE1Ci1cZGVmIzIjIzEgIyMy IHt/MjYzNyw4NzI1MQorXGRlZlxkZWZvcHZhcnBhcnNlYm9keSAjMSMyIzMjNCM1IHt/ZGVmb3B2 YXJwYXJzZWJvZHkBMjYzMiw4NzA1MQorXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlpbmRl bnQgXGFkdmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI2NDAs ODczMzgKIFxhZHZhbmNlXGxlZnRza2lwIGJ5IFxkZWZib2R5aW5kZW50IFxhZHZhbmNlIFxyaWdo dHNraXAgYnkgXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNjQwLDg3MzM4CiBcZXhkZW50YW1v dW50PVxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjY0MSw4NzQxMgotXGRlZlxkZWZ1bmFyZ3Mg IzF7f1xkZWZ1bmFyZ3MBMjY2NCw4ODE3MgotXGRlZlxkZWZ0eXBlZnVuYXJncyAjMXt/XGRlZnR5 cGVmdW5hcmdzATI2NzYsODg1NTQKLVxkZWZcZGVmZm57f1xkZWZmbgEyNjkwLDg4OTM2Ci1cZGVm XGRlZmZuaGVhZGVyICMxIzIjM3t/XGRlZmZuaGVhZGVyATI2OTIsODg5OTMKK1xnZGVmXHNwYWNl c3BsaXQjMSMyXl5Ne39zcGFjZXNwbGl0ATI2NTIsODc3NzUKK1xsb25nXGdkZWZcc3BhY2VzcGxp dGZvbyMxIzIgIzMjNFxzcGFjZXNwbGl0Zm9ve39zcGFjZXNwbGl0Zm9vATI2NTMsODc4NTIKK1xk ZWZcZGVmdW5hcmdzICMxe39kZWZ1bmFyZ3MBMjY2NCw4ODE3MgorXGRlZlxkZWZ0eXBlZnVuYXJn cyAjMXt/ZGVmdHlwZWZ1bmFyZ3MBMjY3Niw4ODU1NAorXGRlZlxkZWZmbnt/ZGVmZm4BMjY5MCw4 ODkzNgorXGRlZlxkZWZmbntcZGVmbWV0aHBhcnNlYm9keVxFZGVmZm5cZGVmZm54XGRlZmZuaGVh ZGVyfX9tZXRocGFyc2Vib2R5XEVkZWZmbgEyNjkwLDg4OTM2CitcZGVmXGRlZmZue1xkZWZtZXRo cGFyc2Vib2R5XEVkZWZmblxkZWZmbnhcZGVmZm5oZWFkZXJ9f2ZueFxkZWZmbmhlYWRlcgEyNjkw LDg4OTM2CitcZGVmXGRlZmZue1xkZWZtZXRocGFyc2Vib2R5XEVkZWZmblxkZWZmbnhcZGVmZm5o ZWFkZXJ9f2ZuaGVhZGVyATI2OTAsODg5MzYKK1xkZWZcZGVmZm5oZWFkZXIgIzEjMiMze39kZWZm bmhlYWRlcgEyNjkyLDg4OTkzCiBcYmVnaW5ncm91cFxkZWZuYW1lIHt/bmFtZQEyNjkzLDg5MDQx Ci1cZGVmXGRlZnVue39cZGVmdW4BMjY5OSw4OTE4NgotXGRlZlxkZWZ1bmhlYWRlciAjMSMye39c ZGVmdW5oZWFkZXIBMjcwMSw4OTIzOQorXGJlZ2luZ3JvdXBcZGVmbmFtZSB7IzJ9eyMxfVxkZWZ1 bmFyZ3N7f3VuYXJncwEyNjkzLDg5MDQxCitcZGVmXGRlZnVue39kZWZ1bgEyNjk5LDg5MTg2Citc ZGVmXGRlZnVue1xkZWZwYXJzZWJvZHlcRWRlZnVuXGRlZnVueFxkZWZ1bmhlYWRlcn1/cGFyc2Vi b2R5XEVkZWZ1bgEyNjk5LDg5MTg2CitcZGVmXGRlZnVue1xkZWZwYXJzZWJvZHlcRWRlZnVuXGRl ZnVueFxkZWZ1bmhlYWRlcn1/dW54XGRlZnVuaGVhZGVyATI2OTksODkxODYKK1xkZWZcZGVmdW57 XGRlZnBhcnNlYm9keVxFZGVmdW5cZGVmdW54XGRlZnVuaGVhZGVyfX91bmhlYWRlcgEyNjk5LDg5 MTg2CitcZGVmXGRlZnVuaGVhZGVyICMxIzJ7f2RlZnVuaGVhZGVyATI3MDEsODkyMzkKIFxiZWdp bmdyb3VwXGRlZm5hbWUge39uYW1lATI3MDIsODkzMTQKIFxkZWZ1bmFyZ3Mge391bmFyZ3MBMjcw Myw4OTM1MAotXGRlZlxkZWZ0eXBlZnVue39cZGVmdHlwZWZ1bgEyNzA5LDg5NDk4Ci1cZGVmXGRl ZnR5cGVmdW5oZWFkZXIgIzEjMnt/XGRlZnR5cGVmdW5oZWFkZXIBMjcxMiw4OTYyMAotXGRlZlxk ZWZ0eXBlZnVuaGVhZGVyeCAjMSMyICMzXHJlbGF4e39cZGVmdHlwZWZ1bmhlYWRlcngBMjcxNCw4 OTcyOQorXGRlZlxkZWZ0eXBlZnVue39kZWZ0eXBlZnVuATI3MDksODk0OTgKK1xkZWZcZGVmdHlw ZWZ1bntcZGVmcGFyc2Vib2R5XEVkZWZ0eXBlZnVuXGRlZnR5cGVmdW54XGRlZnR5cGVmdW5oZWFk ZXJ9f3BhcnNlYm9keVxFZGVmdHlwZWZ1bgEyNzA5LDg5NDk4CitcZGVmXGRlZnR5cGVmdW57XGRl ZnBhcnNlYm9keVxFZGVmdHlwZWZ1blxkZWZ0eXBlZnVueFxkZWZ0eXBlZnVuaGVhZGVyfX90eXBl ZnVueFxkZWZ0eXBlZnVuaGVhZGVyATI3MDksODk0OTgKK1xkZWZcZGVmdHlwZWZ1bntcZGVmcGFy c2Vib2R5XEVkZWZ0eXBlZnVuXGRlZnR5cGVmdW54XGRlZnR5cGVmdW5oZWFkZXJ9f3R5cGVmdW5o ZWFkZXIBMjcwOSw4OTQ5OAorXGRlZlxkZWZ0eXBlZnVuaGVhZGVyICMxIzJ7f2RlZnR5cGVmdW5o ZWFkZXIBMjcxMiw4OTYyMAorXGRlZlxkZWZ0eXBlZnVuaGVhZGVyICMxIzJ7XGRlZnR5cGVmdW5o ZWFkZXJ4e390eXBlZnVuaGVhZGVyeAEyNzEyLDg5NjIwCitcZGVmXGRlZnR5cGVmdW5oZWFkZXJ4 ICMxIzIgIzNccmVsYXh7f2RlZnR5cGVmdW5oZWFkZXJ4ATI3MTQsODk3MjkKIFxiZWdpbmdyb3Vw XGRlZm5hbWUge39uYW1lATI3MTYsODk4MjEKIFxkZWZ0eXBlZnVuYXJncyB7f3R5cGVmdW5hcmdz ATI3MTcsODk4NjcKLVxkZWZcZGVmdHlwZWZue39cZGVmdHlwZWZuATI3MjMsOTAwMzgKLVxkZWZc ZGVmdHlwZWZuaGVhZGVyICMxIzIjM3t/XGRlZnR5cGVmbmhlYWRlcgEyNzI2LDkwMTg3Ci1cZGVm XGRlZnR5cGVmbmhlYWRlcnggIzEjMiMzICM0XHJlbGF4e39cZGVmdHlwZWZuaGVhZGVyeAEyNzI4 LDkwMzIzCitcZGVmXGRlZnR5cGVmbnt/ZGVmdHlwZWZuATI3MjMsOTAwMzgKK1xkZWZcZGVmdHlw ZWZue1xkZWZtZXRocGFyc2Vib2R5XEVkZWZ0eXBlZm5cZGVmdHlwZWZueFxkZWZ0eXBlZm5oZWFk ZXJ9f21ldGhwYXJzZWJvZHlcRWRlZnR5cGVmbgEyNzIzLDkwMDM4CitcZGVmXGRlZnR5cGVmbntc ZGVmbWV0aHBhcnNlYm9keVxFZGVmdHlwZWZuXGRlZnR5cGVmbnhcZGVmdHlwZWZuaGVhZGVyfX90 eXBlZm54XGRlZnR5cGVmbmhlYWRlcgEyNzIzLDkwMDM4CitcZGVmXGRlZnR5cGVmbntcZGVmbWV0 aHBhcnNlYm9keVxFZGVmdHlwZWZuXGRlZnR5cGVmbnhcZGVmdHlwZWZuaGVhZGVyfX90eXBlZm5o ZWFkZXIBMjcyMyw5MDAzOAorXGRlZlxkZWZ0eXBlZm5oZWFkZXIgIzEjMiMze39kZWZ0eXBlZm5o ZWFkZXIBMjcyNiw5MDE4NworXGRlZlxkZWZ0eXBlZm5oZWFkZXIgIzEjMiMze1xkZWZ0eXBlZm5o ZWFkZXJ4e390eXBlZm5oZWFkZXJ4ATI3MjYsOTAxODcKK1xkZWZcZGVmdHlwZWZuaGVhZGVyeCAj MSMyIzMgIzRccmVsYXh7f2RlZnR5cGVmbmhlYWRlcngBMjcyOCw5MDMyMwogXGJlZ2luZ3JvdXBc ZGVmbmFtZSB7f25hbWUBMjczMCw5MDQxNgogXGRlZnR5cGVmdW5hcmdzIHt/dHlwZWZ1bmFyZ3MB MjczMSw5MDQ1NgotXGRlZlxkZWZtYWN7f1xkZWZtYWMBMjczNyw5MDU3NwotXGRlZlxkZWZtYWNo ZWFkZXIgIzEjMnt/XGRlZm1hY2hlYWRlcgEyNzM5LDkwNjM0CitcZGVmXGRlZm1hY3t/ZGVmbWFj ATI3MzcsOTA1NzcKK1xkZWZcZGVmbWFje1xkZWZwYXJzZWJvZHlcRWRlZm1hY1xkZWZtYWN4XGRl Zm1hY2hlYWRlcn1/cGFyc2Vib2R5XEVkZWZtYWMBMjczNyw5MDU3NworXGRlZlxkZWZtYWN7XGRl ZnBhcnNlYm9keVxFZGVmbWFjXGRlZm1hY3hcZGVmbWFjaGVhZGVyfX9tYWN4XGRlZm1hY2hlYWRl cgEyNzM3LDkwNTc3CitcZGVmXGRlZm1hY3tcZGVmcGFyc2Vib2R5XEVkZWZtYWNcZGVmbWFjeFxk ZWZtYWNoZWFkZXJ9f21hY2hlYWRlcgEyNzM3LDkwNTc3CitcZGVmXGRlZm1hY2hlYWRlciAjMSMy e39kZWZtYWNoZWFkZXIBMjczOSw5MDYzNAogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjc0 MCw5MDcxMAogXGRlZnVuYXJncyB7f3VuYXJncwEyNzQxLDkwNzQzCi1cZGVmXGRlZnNwZWN7f1xk ZWZzcGVjATI3NDcsOTA4NjcKLVxkZWZcZGVmc3BlY2hlYWRlciAjMSMye39cZGVmc3BlY2hlYWRl cgEyNzQ5LDkwOTI4CitcZGVmXGRlZnNwZWN7f2RlZnNwZWMBMjc0Nyw5MDg2NworXGRlZlxkZWZz cGVje1xkZWZwYXJzZWJvZHlcRWRlZnNwZWNcZGVmc3BlY3hcZGVmc3BlY2hlYWRlcn1/cGFyc2Vi b2R5XEVkZWZzcGVjATI3NDcsOTA4NjcKK1xkZWZcZGVmc3BlY3tcZGVmcGFyc2Vib2R5XEVkZWZz cGVjXGRlZnNwZWN4XGRlZnNwZWNoZWFkZXJ9f3NwZWN4XGRlZnNwZWNoZWFkZXIBMjc0Nyw5MDg2 NworXGRlZlxkZWZzcGVje1xkZWZwYXJzZWJvZHlcRWRlZnNwZWNcZGVmc3BlY3hcZGVmc3BlY2hl YWRlcn1/c3BlY2hlYWRlcgEyNzQ3LDkwODY3CitcZGVmXGRlZnNwZWNoZWFkZXIgIzEjMnt/ZGVm c3BlY2hlYWRlcgEyNzQ5LDkwOTI4CiBcYmVnaW5ncm91cFxkZWZuYW1lIHt/bmFtZQEyNzUwLDkx MDA1CiBcZGVmdW5hcmdzIHt/dW5hcmdzATI3NTEsOTEwNDUKLVxkZWZcZGVmZm54ICMxIHt/XGRl ZmZueAEyNzU4LDkxMjQwCi1cZGVmXGRlZnVueCAjMSB7f1xkZWZ1bngBMjc1OSw5MTI5NwotXGRl ZlxkZWZtYWN4ICMxIHt/XGRlZm1hY3gBMjc2MCw5MTM1NAotXGRlZlxkZWZzcGVjeCAjMSB7f1xk ZWZzcGVjeAEyNzYxLDkxNDEzCi1cZGVmXGRlZnR5cGVmbnggIzEge39cZGVmdHlwZWZueAEyNzYy LDkxNDc0Ci1cZGVmXGRlZnR5cGV1bnggIzEge39cZGVmdHlwZXVueAEyNzYzLDkxNTM5Ci1cZGVm XGRlZm9wICMxIHt/XGRlZm9wATI3NjksOTE2ODUKLVxkZWZvcHBhcnNlYm9keVxFZGVmb3BcZGVm b3B4XGRlZm9waGVhZGVyXGRlZm9wdHlwZX1/b3BwYXJzZWJvZHlcRWRlZm9wXGRlZm9weFxkZWZv cGhlYWRlclxkZWZvcHR5cGUBMjc3MCw5MTcyMAotXGRlZlxkZWZvcGhlYWRlciAjMSMyIzN7f1xk ZWZvcGhlYWRlcgEyNzcyLDkxNzc0CitcZGVmXGRlZmZueCAjMSB7f2RlZmZueAEyNzU4LDkxMjQw CitcZGVmXGRlZnVueCAjMSB7f2RlZnVueAEyNzU5LDkxMjk3CitcZGVmXGRlZm1hY3ggIzEge39k ZWZtYWN4ATI3NjAsOTEzNTQKK1xkZWZcZGVmc3BlY3ggIzEge39kZWZzcGVjeAEyNzYxLDkxNDEz CitcZGVmXGRlZnR5cGVmbnggIzEge39kZWZ0eXBlZm54ATI3NjIsOTE0NzQKK1xkZWZcZGVmdHlw ZXVueCAjMSB7f2RlZnR5cGV1bngBMjc2Myw5MTUzOQorXGRlZlxkZWZvcCAjMSB7f2RlZm9wATI3 NjksOTE2ODUKK1xkZWZcZGVmb3AgIzEge1xkZWZcZGVmb3B0eXBle39kZWZvcHR5cGUBMjc2OSw5 MTY4NQorXGRlZm9wcGFyc2Vib2R5XEVkZWZvcFxkZWZvcHhcZGVmb3BoZWFkZXJcZGVmb3B0eXBl fX9vcHBhcnNlYm9keVxFZGVmb3ABMjc3MCw5MTcyMAorXGRlZm9wcGFyc2Vib2R5XEVkZWZvcFxk ZWZvcHhcZGVmb3BoZWFkZXJcZGVmb3B0eXBlfX9vcHhcZGVmb3BoZWFkZXIBMjc3MCw5MTcyMAor XGRlZm9wcGFyc2Vib2R5XEVkZWZvcFxkZWZvcHhcZGVmb3BoZWFkZXJcZGVmb3B0eXBlfX9vcGhl YWRlclxkZWZvcHR5cGUBMjc3MCw5MTcyMAorXGRlZm9wcGFyc2Vib2R5XEVkZWZvcFxkZWZvcHhc ZGVmb3BoZWFkZXJcZGVmb3B0eXBlfX9vcHR5cGUBMjc3MCw5MTcyMAorXGRlZlxkZWZvcGhlYWRl ciAjMSMyIzN7f2RlZm9waGVhZGVyATI3NzIsOTE3NzQKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39u YW1lATI3NzQsOTE4NjMKK1xiZWdpbmdyb3VwXGRlZm5hbWUgeyMyfXtcZGVmb3B0eXBle39vcHR5 cGUBMjc3NCw5MTg2MwogXGRlZnVuYXJncyB7f3VuYXJncwEyNzc1LDkxOTA5Ci1cZGVmXGRlZm1l dGhvZHt/XGRlZm1ldGhvZAEyNzgwLDkxOTcwCi1cZGVmXGRlZm1ldGhvZGhlYWRlciAjMSMyIzN7 f1xkZWZtZXRob2RoZWFkZXIBMjc4Miw5MjA0MworXGRlZlxkZWZtZXRob2R7f2RlZm1ldGhvZAEy NzgwLDkxOTcwCitcZGVmXGRlZm1ldGhvZHtcZGVmbWV0aHBhcnNlYm9keVxFZGVmbWV0aG9kXGRl Zm1ldGhvZHhcZGVmbWV0aG9kaGVhZGVyfX9tZXRocGFyc2Vib2R5XEVkZWZtZXRob2QBMjc4MCw5 MTk3MAorXGRlZlxkZWZtZXRob2R7XGRlZm1ldGhwYXJzZWJvZHlcRWRlZm1ldGhvZFxkZWZtZXRo b2R4XGRlZm1ldGhvZGhlYWRlcn1/bWV0aG9keFxkZWZtZXRob2RoZWFkZXIBMjc4MCw5MTk3MAor XGRlZlxkZWZtZXRob2R7XGRlZm1ldGhwYXJzZWJvZHlcRWRlZm1ldGhvZFxkZWZtZXRob2R4XGRl Zm1ldGhvZGhlYWRlcn1/bWV0aG9kaGVhZGVyATI3ODAsOTE5NzAKK1xkZWZcZGVmbWV0aG9kaGVh ZGVyICMxIzIjM3t/ZGVmbWV0aG9kaGVhZGVyATI3ODIsOTIwNDMKIFxiZWdpbmdyb3VwXGRlZm5h bWUge39uYW1lATI3ODQsOTIxMzEKIFxkZWZ1bmFyZ3Mge391bmFyZ3MBMjc4NSw5MjE3MQotXGRl ZlxkZWZjdiAjMSB7f1xkZWZjdgEyNzkwLDkyMjQ1Ci1cZGVmb3B2YXJwYXJzZWJvZHlcRWRlZmN2 XGRlZmN2eFxkZWZjdmFyaGVhZGVyXGRlZmN2dHlwZX1/b3B2YXJwYXJzZWJvZHlcRWRlZmN2XGRl ZmN2eFxkZWZjdmFyaGVhZGVyXGRlZmN2dHlwZQEyNzkxLDkyMjgwCi1cZGVmXGRlZmN2YXJoZWFk ZXIgIzEjMiMze39cZGVmY3ZhcmhlYWRlcgEyNzkzLDkyMzM5CitcZGVmXGRlZmN2ICMxIHt/ZGVm Y3YBMjc5MCw5MjI0NQorXGRlZlxkZWZjdiAjMSB7XGRlZlxkZWZjdnR5cGV7f2RlZmN2dHlwZQEy NzkwLDkyMjQ1CitcZGVmb3B2YXJwYXJzZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZjdmFyaGVhZGVy XGRlZmN2dHlwZX1/b3B2YXJwYXJzZWJvZHlcRWRlZmN2ATI3OTEsOTIyODAKK1xkZWZvcHZhcnBh cnNlYm9keVxFZGVmY3ZcZGVmY3Z4XGRlZmN2YXJoZWFkZXJcZGVmY3Z0eXBlfX9jdnhcZGVmY3Zh cmhlYWRlcgEyNzkxLDkyMjgwCitcZGVmb3B2YXJwYXJzZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZj dmFyaGVhZGVyXGRlZmN2dHlwZX1/Y3ZhcmhlYWRlclxkZWZjdnR5cGUBMjc5MSw5MjI4MAorXGRl Zm9wdmFycGFyc2Vib2R5XEVkZWZjdlxkZWZjdnhcZGVmY3ZhcmhlYWRlclxkZWZjdnR5cGV9f2N2 dHlwZQEyNzkxLDkyMjgwCitcZGVmXGRlZmN2YXJoZWFkZXIgIzEjMiMze39kZWZjdmFyaGVhZGVy ATI3OTMsOTIzMzkKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI3OTUsOTI0MjUKK1xiZWdp bmdyb3VwXGRlZm5hbWUgeyMyfXtcZGVmY3Z0eXBle39jdnR5cGUBMjc5NSw5MjQyNQogXGRlZnZh cmFyZ3Mge392YXJhcmdzATI3OTYsOTI0NzEKLVxkZWZcZGVmaXZhcnt/XGRlZml2YXIBMjgwMSw5 MjU0NAotXGRlZlxkZWZpdmFyaGVhZGVyICMxIzIjM3t/XGRlZml2YXJoZWFkZXIBMjgwMyw5MjYw NworXGRlZlxkZWZpdmFye39kZWZpdmFyATI4MDEsOTI1NDQKK1xkZWZcZGVmaXZhcntcZGVmdnJw YXJzZWJvZHlcRWRlZml2YXJcZGVmaXZhcnhcZGVmaXZhcmhlYWRlcn1/dnJwYXJzZWJvZHlcRWRl Zml2YXIBMjgwMSw5MjU0NAorXGRlZlxkZWZpdmFye1xkZWZ2cnBhcnNlYm9keVxFZGVmaXZhclxk ZWZpdmFyeFxkZWZpdmFyaGVhZGVyfX9pdmFyeFxkZWZpdmFyaGVhZGVyATI4MDEsOTI1NDQKK1xk ZWZcZGVmaXZhcntcZGVmdnJwYXJzZWJvZHlcRWRlZml2YXJcZGVmaXZhcnhcZGVmaXZhcmhlYWRl cn1/aXZhcmhlYWRlcgEyODAxLDkyNTQ0CitcZGVmXGRlZml2YXJoZWFkZXIgIzEjMiMze39kZWZp dmFyaGVhZGVyATI4MDMsOTI2MDcKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI4MDUsOTI2 OTMKIFxkZWZ2YXJhcmdzIHt/dmFyYXJncwEyODA2LDkyNzQ0Ci1cZGVmXGRlZm9weCAjMSB7f1xk ZWZvcHgBMjgxMiw5Mjg5MwotXGRlZlxkZWZtZXRob2R4ICMxIHt/XGRlZm1ldGhvZHgBMjgxMyw5 Mjk1MAotXGRlZlxkZWZjdnggIzEge39cZGVmY3Z4ATI4MTQsOTMwMTUKLVxkZWZcZGVmaXZhcngg IzEge39cZGVmaXZhcngBMjgxNSw5MzA3MgotXGRlZlxkZWZ2YXJhcmdzICMxe39cZGVmdmFyYXJn cwEyODIyLDkzMzQzCi1cZGVmXGRlZnZye39cZGVmdnIBMjgyOCw5MzQ4NwotXGRlZlxkZWZ2cmhl YWRlciAjMSMyIzN7f1xkZWZ2cmhlYWRlcgEyODMwLDkzNTQyCitcZGVmXGRlZm9weCAjMSB7f2Rl Zm9weAEyODEyLDkyODkzCitcZGVmXGRlZm1ldGhvZHggIzEge39kZWZtZXRob2R4ATI4MTMsOTI5 NTAKK1xkZWZcZGVmY3Z4ICMxIHt/ZGVmY3Z4ATI4MTQsOTMwMTUKK1xkZWZcZGVmaXZhcnggIzEg e39kZWZpdmFyeAEyODE1LDkzMDcyCitcZGVmXGRlZnZhcmFyZ3MgIzF7f2RlZnZhcmFyZ3MBMjgy Miw5MzM0MworXGRlZlxkZWZ2cnt/ZGVmdnIBMjgyOCw5MzQ4NworXGRlZlxkZWZ2cntcZGVmdnJw YXJzZWJvZHlcRWRlZnZyXGRlZnZyeFxkZWZ2cmhlYWRlcn1/dnJwYXJzZWJvZHlcRWRlZnZyATI4 MjgsOTM0ODcKK1xkZWZcZGVmdnJ7XGRlZnZycGFyc2Vib2R5XEVkZWZ2clxkZWZ2cnhcZGVmdnJo ZWFkZXJ9f3ZyeFxkZWZ2cmhlYWRlcgEyODI4LDkzNDg3CitcZGVmXGRlZnZye1xkZWZ2cnBhcnNl Ym9keVxFZGVmdnJcZGVmdnJ4XGRlZnZyaGVhZGVyfX92cmhlYWRlcgEyODI4LDkzNDg3CitcZGVm XGRlZnZyaGVhZGVyICMxIzIjM3t/ZGVmdnJoZWFkZXIBMjgzMCw5MzU0MgogXGJlZ2luZ3JvdXBc ZGVmbmFtZSB7f25hbWUBMjgzMSw5MzU5MAotXGRlZlxkZWZ2YXJ7f1xkZWZ2YXIBMjgzNSw5MzY3 NQotXGRlZlxkZWZ2YXJoZWFkZXIgIzEjMnt/XGRlZnZhcmhlYWRlcgEyODM3LDkzNzM1CitcYmVn aW5ncm91cFxkZWZuYW1lIHsjMn17IzF9XGRlZnZhcmFyZ3N7f3ZhcmFyZ3MBMjgzMSw5MzU5MAor XGRlZlxkZWZ2YXJ7f2RlZnZhcgEyODM1LDkzNjc1CitcZGVmXGRlZnZhcntcZGVmdmFycGFyc2Vi b2R5XEVkZWZ2YXJcZGVmdmFyeFxkZWZ2YXJoZWFkZXJ9f3ZhcnBhcnNlYm9keVxFZGVmdmFyATI4 MzUsOTM2NzUKK1xkZWZcZGVmdmFye1xkZWZ2YXJwYXJzZWJvZHlcRWRlZnZhclxkZWZ2YXJ4XGRl ZnZhcmhlYWRlcn1/dmFyeFxkZWZ2YXJoZWFkZXIBMjgzNSw5MzY3NQorXGRlZlxkZWZ2YXJ7XGRl ZnZhcnBhcnNlYm9keVxFZGVmdmFyXGRlZnZhcnhcZGVmdmFyaGVhZGVyfX92YXJoZWFkZXIBMjgz NSw5MzY3NQorXGRlZlxkZWZ2YXJoZWFkZXIgIzEjMnt/ZGVmdmFyaGVhZGVyATI4MzcsOTM3MzUK IFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI4MzgsOTM4MDYKIFxkZWZ2YXJhcmdzIHt/dmFy YXJncwEyODM5LDkzODQyCi1cZGVmXGRlZm9wdHt/XGRlZm9wdAEyODQ0LDkzOTA4Ci1cZGVmXGRl Zm9wdGhlYWRlciAjMSMye39cZGVmb3B0aGVhZGVyATI4NDYsOTM5NjgKK1xkZWZcZGVmb3B0e39k ZWZvcHQBMjg0NCw5MzkwOAorXGRlZlxkZWZvcHR7XGRlZnZhcnBhcnNlYm9keVxFZGVmb3B0XGRl Zm9wdHhcZGVmb3B0aGVhZGVyfX92YXJwYXJzZWJvZHlcRWRlZm9wdAEyODQ0LDkzOTA4CitcZGVm XGRlZm9wdHtcZGVmdmFycGFyc2Vib2R5XEVkZWZvcHRcZGVmb3B0eFxkZWZvcHRoZWFkZXJ9f29w dHhcZGVmb3B0aGVhZGVyATI4NDQsOTM5MDgKK1xkZWZcZGVmb3B0e1xkZWZ2YXJwYXJzZWJvZHlc RWRlZm9wdFxkZWZvcHR4XGRlZm9wdGhlYWRlcn1/b3B0aGVhZGVyATI4NDQsOTM5MDgKK1xkZWZc ZGVmb3B0aGVhZGVyICMxIzJ7f2RlZm9wdGhlYWRlcgEyODQ2LDkzOTY4CiBcYmVnaW5ncm91cFxk ZWZuYW1lIHt/bmFtZQEyODQ3LDk0MDM5CiBcZGVmdmFyYXJncyB7f3ZhcmFyZ3MBMjg0OCw5NDA3 OAotXGRlZlxkZWZ0eXBldmFye39cZGVmdHlwZXZhcgEyODUzLDk0MTM1Ci1cZGVmXGRlZnR5cGV2 YXJoZWFkZXIgIzEjMnt/XGRlZnR5cGV2YXJoZWFkZXIBMjg1Niw5NDI1MQorXGRlZlxkZWZ0eXBl dmFye39kZWZ0eXBldmFyATI4NTMsOTQxMzUKK1xkZWZcZGVmdHlwZXZhcntcZGVmdmFycGFyc2Vi b2R5XEVkZWZ0eXBldmFyXGRlZnR5cGV2YXJ4XGRlZnR5cGV2YXJoZWFkZXJ9f3ZhcnBhcnNlYm9k eVxFZGVmdHlwZXZhcgEyODUzLDk0MTM1CitcZGVmXGRlZnR5cGV2YXJ7XGRlZnZhcnBhcnNlYm9k eVxFZGVmdHlwZXZhclxkZWZ0eXBldmFyeFxkZWZ0eXBldmFyaGVhZGVyfX90eXBldmFyeFxkZWZ0 eXBldmFyaGVhZGVyATI4NTMsOTQxMzUKK1xkZWZcZGVmdHlwZXZhcntcZGVmdmFycGFyc2Vib2R5 XEVkZWZ0eXBldmFyXGRlZnR5cGV2YXJ4XGRlZnR5cGV2YXJoZWFkZXJ9f3R5cGV2YXJoZWFkZXIB Mjg1Myw5NDEzNQorXGRlZlxkZWZ0eXBldmFyaGVhZGVyICMxIzJ7f2RlZnR5cGV2YXJoZWFkZXIB Mjg1Niw5NDI1MQogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjg1OCw5NDMzNAotXGRlZlxk ZWZ0eXBldnJ7f1xkZWZ0eXBldnIBMjg2NSw5NDUwOAotXGRlZlxkZWZ0eXBldnJoZWFkZXIgIzEj MiMze39cZGVmdHlwZXZyaGVhZGVyATI4NjcsOTQ1NzkKK1xkZWZcZGVmdHlwZXZye39kZWZ0eXBl dnIBMjg2NSw5NDUwOAorXGRlZlxkZWZ0eXBldnJ7XGRlZnZycGFyc2Vib2R5XEVkZWZ0eXBldnJc ZGVmdHlwZXZyeFxkZWZ0eXBldnJoZWFkZXJ9f3ZycGFyc2Vib2R5XEVkZWZ0eXBldnIBMjg2NSw5 NDUwOAorXGRlZlxkZWZ0eXBldnJ7XGRlZnZycGFyc2Vib2R5XEVkZWZ0eXBldnJcZGVmdHlwZXZy eFxkZWZ0eXBldnJoZWFkZXJ9f3R5cGV2cnhcZGVmdHlwZXZyaGVhZGVyATI4NjUsOTQ1MDgKK1xk ZWZcZGVmdHlwZXZye1xkZWZ2cnBhcnNlYm9keVxFZGVmdHlwZXZyXGRlZnR5cGV2cnhcZGVmdHlw ZXZyaGVhZGVyfX90eXBldnJoZWFkZXIBMjg2NSw5NDUwOAorXGRlZlxkZWZ0eXBldnJoZWFkZXIg IzEjMiMze39kZWZ0eXBldnJoZWFkZXIBMjg2Nyw5NDU3OQogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7 f25hbWUBMjg2OCw5NDYzMQotXGRlZlxkZWZ2cnggIzEge39cZGVmdnJ4ATI4NzYsOTQ4NjgKLVxk ZWZcZGVmdmFyeCAjMSB7f1xkZWZ2YXJ4ATI4NzcsOTQ5MjUKLVxkZWZcZGVmb3B0eCAjMSB7f1xk ZWZvcHR4ATI4NzgsOTQ5ODQKLVxkZWZcZGVmdHlwZXZhcnggIzEge39cZGVmdHlwZXZhcngBMjg3 OSw5NTA0MwotXGRlZlxkZWZ0eXBldnJ4ICMxIHt/XGRlZnR5cGV2cngBMjg4MCw5NTExMAotXGRl ZlxkZWZ0cGFyZ3MgIzF7f1xkZWZ0cGFyZ3MBMjg4NSw5NTI1OQotXGRlZlxkZWZ0cHt/XGRlZnRw ATI4ODksOTUzMzkKLVxkZWZcZGVmdHBoZWFkZXIgIzEjMiMze39cZGVmdHBoZWFkZXIBMjg5MSw5 NTM5NAorXGRlZlxkZWZ2cnggIzEge39kZWZ2cngBMjg3Niw5NDg2OAorXGRlZlxkZWZ2YXJ4ICMx IHt/ZGVmdmFyeAEyODc3LDk0OTI1CitcZGVmXGRlZm9wdHggIzEge39kZWZvcHR4ATI4NzgsOTQ5 ODQKK1xkZWZcZGVmdHlwZXZhcnggIzEge39kZWZ0eXBldmFyeAEyODc5LDk1MDQzCitcZGVmXGRl ZnR5cGV2cnggIzEge39kZWZ0eXBldnJ4ATI4ODAsOTUxMTAKK1xkZWZcZGVmdHBhcmdzICMxe39k ZWZ0cGFyZ3MBMjg4NSw5NTI1OQorXGRlZlxkZWZ0cGFyZ3MgIzF7XGJmIFxkZWZ2YXJhcmdze392 YXJhcmdzATI4ODUsOTUyNTkKK1xkZWZcZGVmdHB7f2RlZnRwATI4ODksOTUzMzkKK1xkZWZcZGVm dHB7XGRlZnZycGFyc2Vib2R5XEVkZWZ0cFxkZWZ0cHhcZGVmdHBoZWFkZXJ9f3ZycGFyc2Vib2R5 XEVkZWZ0cAEyODg5LDk1MzM5CitcZGVmXGRlZnRwe1xkZWZ2cnBhcnNlYm9keVxFZGVmdHBcZGVm dHB4XGRlZnRwaGVhZGVyfX90cHhcZGVmdHBoZWFkZXIBMjg4OSw5NTMzOQorXGRlZlxkZWZ0cHtc ZGVmdnJwYXJzZWJvZHlcRWRlZnRwXGRlZnRweFxkZWZ0cGhlYWRlcn1/dHBoZWFkZXIBMjg4OSw5 NTMzOQorXGRlZlxkZWZ0cGhlYWRlciAjMSMyIzN7f2RlZnRwaGVhZGVyATI4OTEsOTUzOTQKIFxi ZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI4OTIsOTU0NDIKLVxkZWZcZGVmdHB4ICMxIHt/XGRl ZnRweAEyODk3LDk1NjAxCi1cZGVmXHNldHJlZiMxe39cc2V0cmVmATI5MDgsOTU5MjIKLVxkZWZc dW5udW1ic2V0cmVmIzF7f1x1bm51bWJzZXRyZWYBMjkxMyw5NjAzNgotXGRlZlxhcHBlbmRpeHNl dHJlZiMxe39cYXBwZW5kaXhzZXRyZWYBMjkxOCw5NjE0MwotXGRlZlxweHJlZiMxe39ccHhyZWYB MjkyOSw5NjU1NAotXGRlZlx4cmVmIzF7f1x4cmVmATI5MzAsOTY1OTAKLVxkZWZccmVmIzF7f1xy ZWYBMjkzMSw5NjYyNQotXGRlZlx4cmVmWFsjMSwjMiwjMywjNCwjNSwjNl17f1x4cmVmWFsBMjkz Miw5NjY1NQotXGRlZlxwcmludGVkbWFudWFse39ccHJpbnRlZG1hbnVhbAEyOTMzLDk2Njk4Ci1c ZGVmXHByaW50ZWRub2RlbmFtZXt/XHByaW50ZWRub2RlbmFtZQEyOTM0LDk2NzM2Ci1cZGVmXHBy aW50ZWRub2RlbmFtZXt/XHByaW50ZWRub2RlbmFtZQEyOTM5LDk2ODYxCi1zZWN0aW9uIGBgXHBy aW50ZWRub2RlbmFtZScnIGluIFxjaXRle1xwcmludGVkbWFudWFsfX9ccHJpbnRlZG1hbnVhbAEy OTU0LDk3NDkzCitcYmVnaW5ncm91cFxkZWZuYW1lIHsjMn17IzF9XGRlZnRwYXJnc3t/dHBhcmdz ATI4OTIsOTU0NDIKK1xkZWZcZGVmdHB4ICMxIHt/ZGVmdHB4ATI4OTcsOTU2MDEKK1xkZWZcc2V0 cmVmIzF7f3NldHJlZgEyOTA4LDk1OTIyCitcZGVmXHVubnVtYnNldHJlZiMxe391bm51bWJzZXRy ZWYBMjkxMyw5NjAzNgorXGRlZlxhcHBlbmRpeHNldHJlZiMxe39hcHBlbmRpeHNldHJlZgEyOTE4 LDk2MTQzCitcZGVmXHB4cmVmIzF7f3B4cmVmATI5MjksOTY1NTQKK1xkZWZceHJlZiMxe394cmVm ATI5MzAsOTY1OTAKK1xkZWZccmVmIzF7f3JlZgEyOTMxLDk2NjI1CitcZGVmXHhyZWZYWyMxLCMy LCMzLCM0LCM1LCM2XXt/eHJlZlgBMjkzMiw5NjY1NQorXGRlZlxwcmludGVkbWFudWFse39wcmlu dGVkbWFudWFsATI5MzMsOTY2OTgKK1xkZWZccHJpbnRlZG5vZGVuYW1le39wcmludGVkbm9kZW5h bWUBMjkzNCw5NjczNgorXGRlZlxwcmludGVkbm9kZW5hbWV7f3ByaW50ZWRub2RlbmFtZQEyOTM5 LDk2ODYxCitzZWN0aW9uIGBgXHByaW50ZWRub2RlbmFtZScnIGluIFxjaXRle1xwcmludGVkbWFu dWFsfX9wcmludGVkbWFudWFsATI5NTQsOTc0OTMKIFxyZWZ4e394ATI5NTcsOTc1NzEKLVxkZWZc ZG9zZXRxICMxIzJ7f1xkb3NldHEBMjk2NSw5Nzc5MQotXGRlZlxpbnRlcm5hbHNldHEgIzEjMnt/ XGludGVybmFsc2V0cQEyOTczLDk4MDQ5Ci1cZGVmXFlwYWdlbnVtYmVye39cWXBhZ2VudW1iZXIB Mjk3Nyw5ODE1MAotXGRlZlxZdGl0bGV7f1xZdGl0bGUBMjk3OSw5ODE3NgotXGRlZlxZbm90aGlu Z3t/XFlub3RoaW5nATI5ODEsOTgyMDMKLVxkZWZcWXNlY3Rpb25udW1iZXJhbmR0eXBle39cWXNl Y3Rpb25udW1iZXJhbmR0eXBlATI5ODMsOTgyMjAKLVxkZWZcWWFwcGVuZGl4bGV0dGVyYW5kdHlw ZXt/XFlhcHBlbmRpeGxldHRlcmFuZHR5cGUBMjk5Miw5ODUzNgorXHJlZnh7IzEtc250fXt9IFtc cHJpbnRlZG5vZGVuYW1lXSwgcGFnZVx0aWVccmVmeHt/eAEyOTU3LDk3NTcxCitcZGVmXGRvc2V0 cSAjMSMye39kb3NldHEBMjk2NSw5Nzc5MQorXGRlZlxkb3NldHEgIzEjMnt7XGxldFxmb2xpbz0w IFx0dXJub2ZmYWN0aXZlJX9mb2xpbwEyOTY1LDk3NzkxCitcZWRlZlxuZXh0e39uZXh0ATI5NjYs OTc4MzgKK1xkZWZcaW50ZXJuYWxzZXRxICMxIzJ7f2ludGVybmFsc2V0cQEyOTczLDk4MDQ5Citc ZGVmXFlwYWdlbnVtYmVye39ZcGFnZW51bWJlcgEyOTc3LDk4MTUwCitcZGVmXFl0aXRsZXt/WXRp dGxlATI5NzksOTgxNzYKK1xkZWZcWW5vdGhpbmd7f1lub3RoaW5nATI5ODEsOTgyMDMKK1xkZWZc WXNlY3Rpb25udW1iZXJhbmR0eXBle39Zc2VjdGlvbm51bWJlcmFuZHR5cGUBMjk4Myw5ODIyMAor XGRlZlxZYXBwZW5kaXhsZXR0ZXJhbmR0eXBle39ZYXBwZW5kaXhsZXR0ZXJhbmR0eXBlATI5OTIs OTg1MzYKIFxpZm51bVxzZWNubz0wIEFwcGVuZGl4XHhyZWZ0aWUnY2hhclx0aGVcYXBwZW5kaXhu b3t/bm8BMjk5Myw5ODU2NgotXGVsc2UgXGlmbnVtIFxzdWJzZWNubz0wIFNlY3Rpb25ceHJlZnRp ZSdjaGFyXHRoZVxhcHBlbmRpeG5vLlx0aGVcc2Vjbm8gJX9uby5cdGhlXHNlY25vATI5OTQsOTg2 MjEKLVNlY3Rpb25ceHJlZnRpZSdjaGFyXHRoZVxhcHBlbmRpeG5vLlx0aGVcc2Vjbm8uXHRoZVxz dWJzZWNubyAlf25vLlx0aGVcc2Vjbm8uXHRoZVxzdWJzZWNubwEyOTk2LDk4NzI1Ci1TZWN0aW9u XHhyZWZ0aWUnY2hhclx0aGVcYXBwZW5kaXhuby5cdGhlXHNlY25vLlx0aGVcc3Vic2Vjbm8uXHRo ZVxzdWJzdWJzZWNubyAlf25vLlx0aGVcc2Vjbm8uXHRoZVxzdWJzZWNuby5cdGhlXHN1YnN1YnNl Y25vATI5OTgsOTg3OTYKLSAgXGRlZlxsaW5lbnVtYmVye39cbGluZW51bWJlcgEzMDA5LDk5MTM1 Ci1cZGVmXHJlZngjMSMye39ccmVmeAEzMDE1LDk5MzE5Ci1cZGVmXHhyZGVmICMxIzJ7f1x4cmRl ZgEzMDM3LDk5OTQ1Ci1cZGVmXHJlYWRhdXhmaWxle39ccmVhZGF1eGZpbGUBMzA0MCwxMDAwMzAK LVxkZWZcc3VwZXJlamVjdHt/XHN1cGVyZWplY3QBMzExMCwxMDE4MTEKLVxmb290c3RydXRccGFy aW5kZW50PVxkZWZhdWx0cGFyaW5kZW50XGhhbmdcdGV4dGluZGVudHt/YXVsdHBhcmluZGVudFxo YW5nXHRleHRpbmRlbnQBMzEzMSwxMDI0OTYKLVxkZWZcb3BlbmluZGljZXN7f1xvcGVuaW5kaWNl cwEzMTM5LDEwMjY4MgorXGVsc2UgXGlmbnVtIFxzdWJzZWNubz0wIFNlY3Rpb25ceHJlZnRpZSdj aGFyXHRoZVxhcHBlbmRpeG5vLlx0aGVcc2Vjbm8gJX9uby5cdGhlATI5OTQsOTg2MjEKK1NlY3Rp b25ceHJlZnRpZSdjaGFyXHRoZVxhcHBlbmRpeG5vLlx0aGVcc2Vjbm8uXHRoZVxzdWJzZWNubyAl f25vLlx0aGUBMjk5Niw5ODcyNQorU2VjdGlvblx4cmVmdGllJ2NoYXJcdGhlXGFwcGVuZGl4bm8u XHRoZVxzZWNuby5cdGhlXHN1YnNlY25vLlx0aGVcc3Vic3Vic2Vjbm8gJX9uby5cdGhlATI5OTgs OTg3OTYKK1xnZGVmXHhyZWZ0aWV7f3hyZWZ0aWUBMzAwMSw5ODg5MQorICBcbGV0XGxpbmVudW1i ZXIgPSBcZW1wdHkgJSBOb24tMy4wLn9saW5lbnVtYmVyATMwMDcsOTkwOTEKKyAgXGRlZlxsaW5l bnVtYmVye39saW5lbnVtYmVyATMwMDksOTkxMzUKK1xkZWZccmVmeCMxIzJ7f3JlZngBMzAxNSw5 OTMxOQorXGRlZlx4cmRlZiAjMSMye394cmRlZgEzMDM3LDk5OTQ1Cit7XGNhdGNvZGVgXCc9XG90 aGVyXGV4cGFuZGFmdGVyIFxnZGVmIFxjc25hbWUgWCMxXGVuZGNzbmFtZSB7f2NzbmFtZQEzMDM4 LDk5OTYyCitcZGVmXHJlYWRhdXhmaWxle39yZWFkYXV4ZmlsZQEzMDQwLDEwMDAzMAorXGRlZlxz dXBlcmVqZWN0e39zdXBlcmVqZWN0ATMxMTAsMTAxODExCitcbGV0XGZvb3Rub3Rlc3R5bGU9XGNv bW1lbnR/Zm9vdG5vdGVzdHlsZQEzMTEzLDEwMTkxOAorXGxldFxwdGV4Zm9vdG5vdGU9XGZvb3Ru b3Rlf3B0ZXhmb290bm90ZQEzMTE1LDEwMTk0NworXGxvbmdcZ2RlZlxmb290bm90ZSAjMXt/Zm9v dG5vdGUBMzExOCwxMDE5OTMKK1xlZGVmXHRoaXNmb290bm97f3RoaXNmb290bm8BMzEyMCwxMDIw NjAKK1xsZXRcQHNmXGVtcHR5f0BzZgEzMTIxLDEwMjEwMAorXGlmaG1vZGVcZWRlZlxAc2Z7f0Bz ZgEzMTIyLDEwMjExNQorXGxvbmdcZ2RlZlxmb290bm90ZXp6eiAjMXt/Zm9vdG5vdGV6enoBMzEy NiwxMDIyMjgKK1xmb290c3RydXRccGFyaW5kZW50PVxkZWZhdWx0cGFyaW5kZW50XGhhbmdcdGV4 dGluZGVudHt/YXVsdHBhcmluZGVudFxoYW5nATMxMzEsMTAyNDk2CitcZGVmXG9wZW5pbmRpY2Vz e39vcGVuaW5kaWNlcwEzMTM5LDEwMjY4MgorXG5ld2RpbWVuXGRlZmF1bHRwYXJpbmRlbnQgXGRl ZmF1bHRwYXJpbmRlbnQgPSAxNXB0f2F1bHRwYXJpbmRlbnQBMzE1MSwxMDI5MDcKIFxuZXdkaW1l blxkZWZhdWx0cGFyaW5kZW50IFxkZWZhdWx0cGFyaW5kZW50ID0gMTVwdH9hdWx0cGFyaW5kZW50 ATMxNTEsMTAyOTA3CiBccGFyaW5kZW50ID0gXGRlZmF1bHRwYXJpbmRlbnR/YXVsdHBhcmluZGVu dAEzMTUyLDEwMjk1OQotXGRlZlxzbWFsbGJvb2t7f1xzbWFsbGJvb2sBMzE3NSwxMDM2ODMKLVxn bG9iYWxcZGVmXEVzbWFsbGV4YW1wbGV7f1xFc21hbGxleGFtcGxlATMxOTIsMTA0MTEwCi1cZGVm XGFmb3VycGFwZXJ7f1xhZm91cnBhcGVyATMxOTYsMTA0MjAxCi1cZGVmXGZpbmFsb3V0e39cZmlu YWxvdXQBMzIyNCwxMDUwMDkKLVxkZWZcbm9ybWFsZG91YmxlcXVvdGV7f1xub3JtYWxkb3VibGVx dW90ZQEzMjM1LDEwNTI3MAotXGRlZlxub3JtYWx0aWxkZXt/XG5vcm1hbHRpbGRlATMyMzYsMTA1 Mjk2Ci1cZGVmXG5vcm1hbGNhcmV0e39cbm9ybWFsY2FyZXQBMzIzNywxMDUzMTYKLVxkZWZcbm9y bWFsdW5kZXJzY29yZXt/XG5vcm1hbHVuZGVyc2NvcmUBMzIzOCwxMDUzMzYKLVxkZWZcbm9ybWFs dmVydGljYWxiYXJ7f1xub3JtYWx2ZXJ0aWNhbGJhcgEzMjM5LDEwNTM2MQotXGRlZlxub3JtYWxs ZXNze39cbm9ybWFsbGVzcwEzMjQwLDEwNTM4NwotXGRlZlxub3JtYWxncmVhdGVye39cbm9ybWFs Z3JlYXRlcgEzMjQxLDEwNTQwNgotXGRlZlxub3JtYWxwbHVze39cbm9ybWFscGx1cwEzMjQyLDEw NTQyOAotXGRlZlxpZnVzaW5ndHQjMSMye39caWZ1c2luZ3R0ATMyNTMsMTA1OTIwCi1cZGVmXGFj dGl2ZWRvdWJsZXF1b3Rle39cYWN0aXZlZG91YmxlcXVvdGUBMzI2MSwxMDYyNDgKK1xkZWZcc21h bGxib29re39zbWFsbGJvb2sBMzE3NSwxMDM2ODMKK1xnbG9iYWxcbGV0XHNtYWxsbGlzcD1cc21h bGxsaXNweH9zbWFsbGxpc3ABMzE5MCwxMDQwMzkKK1xnbG9iYWxcbGV0XHNtYWxsZXhhbXBsZT1c c21hbGxsaXNweH9zbWFsbGV4YW1wbGUBMzE5MSwxMDQwNzMKK1xnbG9iYWxcZGVmXEVzbWFsbGV4 YW1wbGV7f0VzbWFsbGV4YW1wbGUBMzE5MiwxMDQxMTAKK1xkZWZcYWZvdXJwYXBlcnt/YWZvdXJw YXBlcgEzMTk2LDEwNDIwMQorXGRlZlxmaW5hbG91dHt/ZmluYWxvdXQBMzIyNCwxMDUwMDkKK1xk ZWZcbm9ybWFsZG91YmxlcXVvdGV7f25vcm1hbGRvdWJsZXF1b3RlATMyMzUsMTA1MjcwCitcZGVm XG5vcm1hbHRpbGRle39ub3JtYWx0aWxkZQEzMjM2LDEwNTI5NgorXGRlZlxub3JtYWxjYXJldHt/ bm9ybWFsY2FyZXQBMzIzNywxMDUzMTYKK1xkZWZcbm9ybWFsdW5kZXJzY29yZXt/bm9ybWFsdW5k ZXJzY29yZQEzMjM4LDEwNTMzNgorXGRlZlxub3JtYWx2ZXJ0aWNhbGJhcnt/bm9ybWFsdmVydGlj YWxiYXIBMzIzOSwxMDUzNjEKK1xkZWZcbm9ybWFsbGVzc3t/bm9ybWFsbGVzcwEzMjQwLDEwNTM4 NworXGRlZlxub3JtYWxncmVhdGVye39ub3JtYWxncmVhdGVyATMyNDEsMTA1NDA2CitcZGVmXG5v cm1hbHBsdXN7f25vcm1hbHBsdXMBMzI0MiwxMDU0MjgKK1xkZWZcaWZ1c2luZ3R0IzEjMnt/aWZ1 c2luZ3R0ATMyNTMsMTA1OTIwCitcZGVmXGFjdGl2ZWRvdWJsZXF1b3Rle39hY3RpdmVkb3VibGVx dW90ZQEzMjYxLDEwNjI0OAorXGxldCI9XGFjdGl2ZWRvdWJsZXF1b3RlfyIBMzI2MiwxMDYyODkK IFxkZWZ+e39+ATMyNjQsMTA2MzM0CiBcZGVmXnt/XgEzMjY3LDEwNjM5NQogXGRlZl97f18BMzI3 MCwxMDY0MzQKLVxkZWZcX3t/XF8BMzI3MiwxMDY1MDgKLVxkZWZcbHZ2bW9kZXt/XGx2dm1vZGUB MzI3OSwxMDY4NDUKK1xkZWZcX3t/XwEzMjcyLDEwNjUwOAorXGRlZlxsdnZtb2Rle39sdnZtb2Rl ATMyNzksMTA2ODQ1CiBcZGVmfHt/fAEzMjgyLDEwNjg5NQogXGRlZjx7fzwBMzI4NSwxMDY5NTgK IFxkZWY+e38+ATMyODgsMTA3MDE1CiBcZGVmK3t/KwEzMjkwLDEwNzA1MwotXGRlZlx0dXJub2Zm YWN0aXZle39cdHVybm9mZmFjdGl2ZQEzMjk2LDEwNzIxNAorXGRlZlx0dXJub2ZmYWN0aXZle390 dXJub2ZmYWN0aXZlATMyOTYsMTA3MjE0CitcZGVmXHR1cm5vZmZhY3RpdmV7XGxldCI9XG5vcm1h bGRvdWJsZXF1b3RlfyIBMzI5NiwxMDcyMTQKK1xsZXR+PVxub3JtYWx0aWxkZX9+ATMyOTcsMTA3 MjU4CitcbGV0Xj1cbm9ybWFsY2FyZXR/XgEzMjk4LDEwNzI3NworXGxldF89XG5vcm1hbHVuZGVy c2NvcmV/XwEzMjk5LDEwNzI5NgorXGxldHw9XG5vcm1hbHZlcnRpY2FsYmFyf3wBMzMwMCwxMDcz MjAKK1xsZXQ8PVxub3JtYWxsZXNzfzwBMzMwMSwxMDczNDUKK1xsZXQ+PVxub3JtYWxncmVhdGVy fz4BMzMwMiwxMDczNjMKK1xsZXQrPVxub3JtYWxwbHVzfX8rATMzMDMsMTA3Mzg0CiBcZ2xvYmFs XGRlZj17fz0BMzMwNywxMDc1MDAKLVxkZWZcbm9ybWFsYmFja3NsYXNoe39cbm9ybWFsYmFja3Ns YXNoATMzMjEsMTA3ODgyCitcZGVmXG5vcm1hbGJhY2tzbGFzaHt/bm9ybWFsYmFja3NsYXNoATMz MjEsMTA3ODgyCiAMCiBtZXJjLXNyYy9hY2N1bXVsYXRvci5tLDQ5MTUKIDotIGludGVyZmFjZX8x NDYsNTM3MQpkaWZmIC0tZ2l0IGEvdGVzdC9tYW51YWwvZXRhZ3MvRVRBR1MuZ29vZF82IGIvdGVz dC9tYW51YWwvZXRhZ3MvRVRBR1MuZ29vZF82CmluZGV4IDA5YWJkZTM1YzUxLi4zNTI2NWY2MDZj MiAxMDA2NDQKLS0tIGEvdGVzdC9tYW51YWwvZXRhZ3MvRVRBR1MuZ29vZF82CisrKyBiL3Rlc3Qv bWFudWFsL2V0YWdzL0VUQUdTLmdvb2RfNgpAQCAtNDI5MCw4ICs0MjkwLDggQEAgc2NtLXNyYy90 ZXN0LnNjbSwyNjAKIChkZWZpbmUgKCgoKChjdXJyeS10ZXN0IH8xNCwyMDUKIChkZWZpbmUtc3lu dGF4IHRlc3QtYmVnaW5/MTcsMjY1CiAMCi10ZXgtc3JjL3Rlc3RlbnYudGV4LDUyCi1cbmV3Y29t bWFuZHtcbm19f1xubQE0LDc3Cit0ZXgtc3JjL3Rlc3RlbnYudGV4LDUxCitcbmV3Y29tbWFuZHtc bm19f25tATQsNzcKIFxzZWN0aW9ue2JsYWh9f2JsYWgBOCwxMzkKIAwKIHRleC1zcmMvZ3ppcC50 ZXhpLDMwMwpAQCAtNDMwNiw3MjIgKzQzMDYsMTE0MiBAQCB0ZXgtc3JjL2d6aXAudGV4aSwzMDMK IEBub2RlIFByb2JsZW1zLH80NjAsMTY3NjkKIEBub2RlIENvbmNlcHQgSW5kZXgsf0NvbmNlcHQg SW5kZXgBNDczLDE3Mjg5CiAMCi10ZXgtc3JjL3RleGluZm8udGV4LDMwNjI3Ci1cZGVmXHRleGlu Zm92ZXJzaW9ue39cdGV4aW5mb3ZlcnNpb24BMjYsMTAzNQotXGRlZlx0aWV7f1x0aWUBNDksMTUy NgotXGRlZlxnbG9nZ2luZ2FsbHt/XGdsb2dnaW5nYWxsATcyLDIyNzYKLVxkZWZcbG9nZ2luZ2Fs bHt/XGxvZ2dpbmdhbGwBNzMsMjM0NQotXGRlZlxvbmVwYWdlb3V0IzF7f1xvbmVwYWdlb3V0ATk5 LDMyODIKLVxkZWZcY3JvcHBhZ2VvdXQjMXt/XGNyb3BwYWdlb3V0ATExNSw0MDMyCi1cZGVmXGNy b3BtYXJrc3t/XGNyb3BtYXJrcwExNDIsNTA5MgotXGRlZlxwYWdlYm9keSMxe39ccGFnZWJvZHkB MTQ0LDUxMzkKLVxkZWZcZXd0b3B7f1xld3RvcAExNTcsNTU5NAotXGRlZlxuc3RvcHt/XG5zdG9w ATE1OCw1NjU4Ci1cZGVmXGV3Ym90e39cZXdib3QBMTYwLDU3NDEKLVxkZWZcbnNib3R7f1xuc2Jv dAExNjEsNTgwNQotXGRlZlxwYXJzZWFyZyAjMXt/XHBhcnNlYXJnATE3MCw2MTA0Ci1cZGVmXHBh cnNlYXJneHt/XHBhcnNlYXJneAExNzIsNjE4MgotXGRlZlxwYXJzZWFyZ2xpbmV7f1xwYXJzZWFy Z2xpbmUBMTgyLDY0MjIKLVxkZWZcZmx1c2hjcnt/XGZsdXNoY3IBMTg2LDY1NDMKLVxuZXdpZlxp ZkVOViBcRU5WZmFsc2UgXGRlZlxpbkVOVnt/XGluRU5WATE5MCw2NzQyCi1cZGVmXEVOVmNoZWNr e39cRU5WY2hlY2sBMTkxLDY4MDYKLVxvdXRlclxkZWZcYmVnaW57f1xiZWdpbgExOTgsNzA1Mwot XGRlZlxiZWdpbnh4eCAjMXt/XGJlZ2lueHh4ATIwMCw3MDkxCi1cZGVmXGVuZHt/XGVuZAEyMDgs NzM0NgotXGRlZlxlbmR4eHggIzF7f1xlbmR4eHgBMjEwLDczNzQKLVxkZWZcZXJyb3JFIzF7f1xl cnJvckUBMjE2LDc1NjMKLVxkZWZcc2luZ2xlc3BhY2V7f1xzaW5nbGVzcGFjZQEyMjIsNzc1Nwot XGRlZlxAe39cQAEyMzIsNzk4MAotXGRlZlxge39cYAEyMzYsODA4MAotXGRlZlwne39cJwEyMzcs ODA5MgotXGRlZlxteWxicmFjZSB7f1xteWxicmFjZQEyNDEsODE0MAotXGRlZlxteXJicmFjZSB7 f1xteXJicmFjZQEyNDIsODE3MwotXGRlZlw6e39cOgEyNDcsODI4NwotXGRlZlwqe39cKgEyNTAs ODM0MQotXGRlZlwue39cLgEyNTMsODQxNwotXGRlZlx3IzF7f1x3ATI1OCw4NjQ4Ci1cZGVmXGdy b3Vwe39cZ3JvdXABMjY4LDkxMzEKLSAgXGRlZlxFZ3JvdXB7f1xFZ3JvdXABMjczLDkyOTUKLVxk ZWZcbmVlZHt/XG5lZWQBMjg5LDk3MzcKLVxkZWZcbmVlZHgjMXt/XG5lZWR4ATMwMCwxMDAxNAot XGRlZlxkb3Rze39cZG90cwEzMzksMTE0MDAKLVxkZWZccGFnZXt/XHBhZ2UBMzQzLDExNDY0Ci1c ZGVmXGV4ZGVudHt/XGV4ZGVudAEzNTMsMTE3OTEKLVxkZWZcZXhkZW50eXl5ICMxe39cZXhkZW50 eXl5ATM1NCwxMTgyNAotXGRlZlxub2ZpbGxleGRlbnR7f1xub2ZpbGxleGRlbnQBMzU3LDExOTY4 Ci1cZGVmXG5vZmlsbGV4ZGVudHl5eSAjMXt/XG5vZmlsbGV4ZGVudHl5eQEzNTgsMTIwMTMKLVxk ZWZcaW5jbHVkZXt/XGluY2x1ZGUBMzY1LDEyMTk3Ci1cZGVmXGluY2x1ZGV6enogIzF7f1xpbmNs dWRlenp6ATM2NiwxMjIzMgotXGRlZlx0aGlzZmlsZXt/XHRoaXNmaWxlATM2OSwxMjI4MwotXGRl ZlxjZW50ZXJ7f1xjZW50ZXIBMzczLDEyMzQ2Ci1cZGVmXGNlbnRlcnp6eiAjMXt/XGNlbnRlcnp6 egEzNzQsMTIzNzkKLVxkZWZcc3B7f1xzcAEzODAsMTI1MjEKLVxkZWZcc3B4eHggIzF7f1xzcHh4 eAEzODEsMTI1NDYKLVxkZWZcY29tbWVudHt/XGNvbW1lbnQBMzg3LDEyNzIwCi1cZGVmXGNvbW1l bnR4eHggIzF7f1xjb21tZW50eHh4ATM5MCwxMjgxNwotXGRlZlxpZ25vcmVzZWN0aW9uc3t/XGln bm9yZXNlY3Rpb25zATM5NiwxMjk4NgotXGxldFxjaGFwdGVyPVxyZWxheH89XHJlbGF4ATM5Nywx MzAwOAotXGxldFxzZWN0aW9uPVxyZWxheH89XHJlbGF4ATQwNiwxMzI1MwotXGxldFxzdWJzZWN0 aW9uPVxyZWxheH89XHJlbGF4ATQwOSwxMzMxNAotXGxldFxzdWJzdWJzZWN0aW9uPVxyZWxheH89 XHJlbGF4ATQxMCwxMzMzNwotXGxldFxhcHBlbmRpeD1ccmVsYXh/PVxyZWxheAE0MTEsMTMzNjMK LVxsZXRcYXBwZW5kaXhzZWM9XHJlbGF4f3NlYz1ccmVsYXgBNDEyLDEzMzg0Ci1cbGV0XGFwcGVu ZGl4c2VjdGlvbj1ccmVsYXh/c2VjdGlvbj1ccmVsYXgBNDEzLDEzNDA4Ci1cbGV0XGFwcGVuZGl4 c3Vic2VjPVxyZWxheH9zdWJzZWM9XHJlbGF4ATQxNCwxMzQzNgotXGxldFxhcHBlbmRpeHN1YnNl Y3Rpb249XHJlbGF4f3N1YnNlY3Rpb249XHJlbGF4ATQxNSwxMzQ2MwotXGxldFxhcHBlbmRpeHN1 YnN1YnNlYz1ccmVsYXh/c3Vic3Vic2VjPVxyZWxheAE0MTYsMTM0OTQKLVxsZXRcYXBwZW5kaXhz dWJzdWJzZWN0aW9uPVxyZWxheH9zdWJzdWJzZWN0aW9uPVxyZWxheAE0MTcsMTM1MjQKLVxkZWZc aWdub3Jle39caWdub3JlATQyMywxMzYyNgotXGxvbmdcZGVmXGlnbm9yZXh4eCAjMVxlbmQgaWdu b3Jle39caWdub3JleHh4ATQyNywxMzc2NgotXGRlZlxkaXJlbnRyeXt/XGRpcmVudHJ5ATQyOSwx MzgyNQotXGxvbmdcZGVmXGRpcmVudHJ5eHh4ICMxXGVuZCBkaXJlbnRyeXt/XGRpcmVudHJ5eHh4 ATQzMCwxMzg2NAotXGRlZlxpZnNldHt/XGlmc2V0ATQzNCwxMzk3NAotXGRlZlxpZnNldHh4eCAj MXt/XGlmc2V0eHh4ATQzNiwxNDAzMgotXGRlZlxFaWZzZXR7f1xFaWZzZXQBNDQwLDE0MTU5Ci1c ZGVmXGlmc2V0ZmFpbHt/XGlmc2V0ZmFpbAE0NDEsMTQxNzMKLVxsb25nXGRlZlxpZnNldGZhaWx4 eHggIzFcZW5kIGlmc2V0e39caWZzZXRmYWlseHh4ATQ0MiwxNDIyOQotXGRlZlxpZmNsZWFye39c aWZjbGVhcgE0NDQsMTQyOTAKLVxkZWZcaWZjbGVhcnh4eCAjMXt/XGlmY2xlYXJ4eHgBNDQ2LDE0 MzUyCi1cZGVmXEVpZmNsZWFye39cRWlmY2xlYXIBNDUwLDE0NDgzCi1cZGVmXGlmY2xlYXJmYWls e39caWZjbGVhcmZhaWwBNDUxLDE0NDk5Ci1cbG9uZ1xkZWZcaWZjbGVhcmZhaWx4eHggIzFcZW5k IGlmY2xlYXJ7f1xpZmNsZWFyZmFpbHh4eAE0NTIsMTQ1NTkKLVxkZWZcc2V0e39cc2V0ATQ1Niwx NDcxMAotXGRlZlxzZXR4eHggIzF7f1xzZXR4eHgBNDU3LDE0NzM3Ci1cZGVmXGNsZWFye39cY2xl YXIBNDYwLDE0Nzk5Ci1cZGVmXGNsZWFyeHh4ICMxe39cY2xlYXJ4eHgBNDYxLDE0ODMwCi1cZGVm XGlmdGV4e39caWZ0ZXgBNDY2LDE0OTQ3Ci1cZGVmXEVpZnRleHt/XEVpZnRleAE0NjcsMTQ5NjAK LVxkZWZcaWZpbmZve39caWZpbmZvATQ2OCwxNDk3NAotXGxvbmdcZGVmXGlmaW5mb3h4eCAjMVxl bmQgaWZpbmZve39caWZpbmZveHh4ATQ2OSwxNTAyNAotXGxvbmdcZGVmXG1lbnUgIzFcZW5kIG1l bnV7f1xtZW51ATQ3MSwxNTA4MwotXGRlZlxhc2lzIzF7f1xhc2lzATQ3MiwxNTExMgotXGRlZlxt YXRoIzF7f1xtYXRoATQ4NSwxNTY1NQotXGRlZlxub2Rle39cbm9kZQE0ODcsMTU2OTkKLVxkZWZc bm9kZXp6eiMxe39cbm9kZXp6egE0ODgsMTU3MzcKLVxkZWZcbm9kZXh4eFsjMSwjMl17f1xub2Rl eHh4WwE0ODksMTU3NjgKLVxkZWZcZG9ub2RlcmVme39cZG9ub2RlcmVmATQ5MiwxNTgzMAotXGRl Zlx1bm51bWJub2RlcmVme39cdW5udW1ibm9kZXJlZgE0OTYsMTU5NTEKLVxkZWZcYXBwZW5kaXhu b2RlcmVme39cYXBwZW5kaXhub2RlcmVmATUwMCwxNjA4MgordGV4LXNyYy90ZXhpbmZvLnRleCw1 NTIzNgorXGRlZlx0ZXhpbmZvdmVyc2lvbnt/dGV4aW5mb3ZlcnNpb24BMjYsMTAzNQorXGxldFxw dGV4bGJyYWNlPVx7f3B0ZXhsYnJhY2UBMzUsMTMwOAorXGxldFxwdGV4cmJyYWNlPVx9f3B0ZXhy YnJhY2UBMzYsMTMyNworXGxldFxwdGV4ZG90cz1cZG90c39wdGV4ZG90cwEzNywxMzQ2CitcbGV0 XHB0ZXhkb3Q9XC5/cHRleGRvdAEzOCwxMzY2CitcbGV0XHB0ZXhzdGFyPVwqf3B0ZXhzdGFyATM5 LDEzODIKK1xsZXRccHRleGVuZD1cZW5kf3B0ZXhlbmQBNDAsMTM5OQorXGxldFxwdGV4YnVsbGV0 PVxidWxsZXR/cHRleGJ1bGxldAE0MSwxNDE3CitcbGV0XHB0ZXhiPVxif3B0ZXhiATQyLDE0NDEK K1xsZXRccHRleGM9XGN/cHRleGMBNDMsMTQ1NQorXGxldFxwdGV4aT1caX9wdGV4aQE0NCwxNDY5 CitcbGV0XHB0ZXh0PVx0f3B0ZXh0ATQ1LDE0ODMKK1xsZXRccHRleGw9XGx/cHRleGwBNDYsMTQ5 NworXGxldFxwdGV4TD1cTH9wdGV4TAE0NywxNTExCitcZGVmXHRpZXt/dGllATQ5LDE1MjYKK1xk ZWZcZ2xvZ2dpbmdhbGx7f2dsb2dnaW5nYWxsATcyLDIyNzYKK1xkZWZcbG9nZ2luZ2FsbHt/bG9n Z2luZ2FsbAE3MywyMzQ1CitcZGVmXG9uZXBhZ2VvdXQjMXt/b25lcGFnZW91dAE5OSwzMjgyCitc c2hpcG91dFx2Ym94e3tcbGV0XGhzaXplPVxwYWdld2lkdGggXG1ha2VoZWFkbGluZX1/aHNpemUB MTAzLDM0ODkKK3tcbGV0XGhzaXplPVxwYWdld2lkdGggXG1ha2Vmb290bGluZX1/aHNpemUBMTA0 LDM1NTYKK1xkZWZcY3JvcHBhZ2VvdXQjMXt/Y3JvcHBhZ2VvdXQBMTE1LDQwMzIKKwkJCXtcbGV0 XGhzaXplPVxwYWdld2lkdGggXG1ha2VoZWFkbGluZX1/aHNpemUBMTI2LDQ1MTEKKwkJCXtcbGV0 XGhzaXplPVxwYWdld2lkdGggXG1ha2Vmb290bGluZX1/aHNpemUBMTI4LDQ1NjkKK1xkZWZcY3Jv cG1hcmtze39jcm9wbWFya3MBMTQyLDUwOTIKK1xkZWZcY3JvcG1hcmtze1xsZXRcb25lcGFnZW91 dD1cY3JvcHBhZ2VvdXQgfX9vbmVwYWdlb3V0ATE0Miw1MDkyCitcZGVmXHBhZ2Vib2R5IzF7f3Bh Z2Vib2R5ATE0NCw1MTM5CitcZ2RlZlxwYWdlY29udGVudHMjMXt/cGFnZWNvbnRlbnRzATE0Niw1 MjIwCitcZGVmXGV3dG9we39ld3RvcAExNTcsNTU5NAorXGRlZlxuc3RvcHt/bnN0b3ABMTU4LDU2 NTgKK1xkZWZcZXdib3R7f2V3Ym90ATE2MCw1NzQxCitcZGVmXG5zYm90e39uc2JvdAExNjEsNTgw NQorXGRlZlxwYXJzZWFyZyAjMXt/cGFyc2VhcmcBMTcwLDYxMDQKK1xkZWZccGFyc2VhcmcgIzF7 XGxldFxuZXh0PSMxXGJlZ2luZ3JvdXBcb2JleWxpbmVzXGZ1dHVyZWxldFx0ZW1wXHBhcnNlYXJn eH1/bmV4dAExNzAsNjEwNAorXGRlZlxwYXJzZWFyZ3h7f3BhcnNlYXJneAExNzIsNjE4MgorXGdk ZWZccGFyc2VhcmdkaXNjYXJkc3BhY2Uge39wYXJzZWFyZ2Rpc2NhcmRzcGFjZQExNzgsNjMyMQor XGdkZWZcb2JleWVkc3BhY2V7f29iZXllZHNwYWNlATE4MCw2Mzk5CitcZGVmXHBhcnNlYXJnbGlu ZXt/cGFyc2VhcmdsaW5lATE4Miw2NDIyCitcZ2RlZlxwYXJzZWFyZ2xpbmV4ICMxXl5Ne39wYXJz ZWFyZ2xpbmV4ATE4NCw2NDkzCitcZGVmXGZsdXNoY3J7f2ZsdXNoY3IBMTg2LDY1NDMKK1xkZWZc Zmx1c2hjcntcaWZ4XHBhclxsaXNwcGFyIFxkZWZcbmV4dCMjMXt/bmV4dAExODYsNjU0MworXGRl ZlxmbHVzaGNye1xpZnhccGFyXGxpc3BwYXIgXGRlZlxuZXh0IyMxe31cZWxzZSBcbGV0XG5leHQ9 XHJlbGF4IFxmaSBcbmV4dH1/bmV4dAExODYsNjU0MworXG5ld2lmXGlmRU5WIFxFTlZmYWxzZSBc ZGVmXGluRU5We39pbkVOVgExOTAsNjc0MgorXGRlZlxFTlZjaGVja3t/RU5WY2hlY2sBMTkxLDY4 MDYKK1xvdXRlclxkZWZcYmVnaW57f2JlZ2luATE5OCw3MDUzCitcZGVmXGJlZ2lueHh4ICMxe39i ZWdpbnh4eAEyMDAsNzA5MQorXGRlZlxlbmR7f2VuZAEyMDgsNzM0NgorXGRlZlxlbmR4eHggIzF7 f2VuZHh4eAEyMTAsNzM3NAorXGRlZlxlcnJvckUjMXt/ZXJyb3JFATIxNiw3NTYzCitcZGVmXHNp bmdsZXNwYWNle39zaW5nbGVzcGFjZQEyMjIsNzc1NworXGRlZlxAe39AATIzMiw3OTgwCitcZGVm XGB7f2ABMjM2LDgwODAKK1xkZWZcJ3t/JwEyMzcsODA5MgorXGRlZlxteWxicmFjZSB7f215bGJy YWNlATI0MSw4MTQwCitcZGVmXG15cmJyYWNlIHt/bXlyYnJhY2UBMjQyLDgxNzMKK1xsZXRcez1c bXlsYnJhY2V/ewEyNDMsODIwNgorXGxldFx9PVxteXJicmFjZX99ATI0NCw4MjIzCitcZGVmXDp7 fzoBMjQ3LDgyODcKK1xkZWZcKnt/KgEyNTAsODM0MQorXGRlZlwue38uATI1Myw4NDE3CitcZGVm XHcjMXt/dwEyNTgsODY0OAorXGRlZlxncm91cHt/Z3JvdXABMjY4LDkxMzEKKyAgXGRlZlxFZ3Jv dXB7f0Vncm91cAEyNzMsOTI5NQorXGRlZlxuZWVke39uZWVkATI4OSw5NzM3CitcZGVmXG5lZWR4 IzF7f25lZWR4ATMwMCwxMDAxNAorXGxldFxiciA9IFxwYXJ/YnIBMzM1LDExMzU1CitcZGVmXGRv dHN7f2RvdHMBMzM5LDExNDAwCitcZGVmXHBhZ2V7f3BhZ2UBMzQzLDExNDY0CitcZGVmXGV4ZGVu dHt/ZXhkZW50ATM1MywxMTc5MQorXGRlZlxleGRlbnR5eXkgIzF7f2V4ZGVudHl5eQEzNTQsMTE4 MjQKK1xkZWZcbm9maWxsZXhkZW50e39ub2ZpbGxleGRlbnQBMzU3LDExOTY4CitcZGVmXG5vZmls bGV4ZGVudHl5eSAjMXt/bm9maWxsZXhkZW50eXl5ATM1OCwxMjAxMworXGRlZlxpbmNsdWRle39p bmNsdWRlATM2NSwxMjE5NworXGRlZlxpbmNsdWRlenp6ICMxe39pbmNsdWRlenp6ATM2NiwxMjIz MgorXGRlZlxpbmNsdWRlenp6ICMxe3tcZGVmXHRoaXNmaWxle390aGlzZmlsZQEzNjYsMTIyMzIK K1xkZWZcdGhpc2ZpbGV7f3RoaXNmaWxlATM2OSwxMjI4MworXGRlZlxjZW50ZXJ7f2NlbnRlcgEz NzMsMTIzNDYKK1xkZWZcY2VudGVyenp6ICMxe39jZW50ZXJ6enoBMzc0LDEyMzc5CitcZGVmXHNw e39zcAEzODAsMTI1MjEKK1xkZWZcc3B4eHggIzF7f3NweHh4ATM4MSwxMjU0NgorXGRlZlxjb21t ZW50e39jb21tZW50ATM4NywxMjcyMAorXGRlZlxjb21tZW50eHh4ICMxe39jb21tZW50eHh4ATM5 MCwxMjgxNworXGxldFxjPVxjb21tZW50f2MBMzkyLDEyODgzCitcZGVmXGlnbm9yZXNlY3Rpb25z e39pZ25vcmVzZWN0aW9ucwEzOTYsMTI5ODYKK1xsZXRcY2hhcHRlcj1ccmVsYXh/Y2hhcHRlcgEz OTcsMTMwMDgKK1xsZXRcdW5udW1iZXJlZD1ccmVsYXh/dW5udW1iZXJlZAEzOTgsMTMwMjgKK1xs ZXRcdG9wPVxyZWxheH90b3ABMzk5LDEzMDUxCitcbGV0XHVubnVtYmVyZWRzZWM9XHJlbGF4f3Vu bnVtYmVyZWRzZWMBNDAwLDEzMDY3CitcbGV0XHVubnVtYmVyZWRzZWN0aW9uPVxyZWxheH91bm51 bWJlcmVkc2VjdGlvbgE0MDEsMTMwOTMKK1xsZXRcdW5udW1iZXJlZHN1YnNlYz1ccmVsYXh/dW5u dW1iZXJlZHN1YnNlYwE0MDIsMTMxMjMKK1xsZXRcdW5udW1iZXJlZHN1YnNlY3Rpb249XHJlbGF4 f3VubnVtYmVyZWRzdWJzZWN0aW9uATQwMywxMzE1MgorXGxldFx1bm51bWJlcmVkc3Vic3Vic2Vj PVxyZWxheH91bm51bWJlcmVkc3Vic3Vic2VjATQwNCwxMzE4NQorXGxldFx1bm51bWJlcmVkc3Vi c3Vic2VjdGlvbj1ccmVsYXh/dW5udW1iZXJlZHN1YnN1YnNlY3Rpb24BNDA1LDEzMjE3CitcbGV0 XHNlY3Rpb249XHJlbGF4f3NlY3Rpb24BNDA2LDEzMjUzCitcbGV0XHN1YnNlYz1ccmVsYXh/c3Vi c2VjATQwNywxMzI3MworXGxldFxzdWJzdWJzZWM9XHJlbGF4f3N1YnN1YnNlYwE0MDgsMTMyOTIK K1xsZXRcc3Vic2VjdGlvbj1ccmVsYXh/c3Vic2VjdGlvbgE0MDksMTMzMTQKK1xsZXRcc3Vic3Vi c2VjdGlvbj1ccmVsYXh/c3Vic3Vic2VjdGlvbgE0MTAsMTMzMzcKK1xsZXRcYXBwZW5kaXg9XHJl bGF4f2FwcGVuZGl4ATQxMSwxMzM2MworXGxldFxhcHBlbmRpeHNlYz1ccmVsYXh/YXBwZW5kaXhz ZWMBNDEyLDEzMzg0CitcbGV0XGFwcGVuZGl4c2VjdGlvbj1ccmVsYXh/YXBwZW5kaXhzZWN0aW9u ATQxMywxMzQwOAorXGxldFxhcHBlbmRpeHN1YnNlYz1ccmVsYXh/YXBwZW5kaXhzdWJzZWMBNDE0 LDEzNDM2CitcbGV0XGFwcGVuZGl4c3Vic2VjdGlvbj1ccmVsYXh/YXBwZW5kaXhzdWJzZWN0aW9u ATQxNSwxMzQ2MworXGxldFxhcHBlbmRpeHN1YnN1YnNlYz1ccmVsYXh/YXBwZW5kaXhzdWJzdWJz ZWMBNDE2LDEzNDk0CitcbGV0XGFwcGVuZGl4c3Vic3Vic2VjdGlvbj1ccmVsYXh/YXBwZW5kaXhz dWJzdWJzZWN0aW9uATQxNywxMzUyNAorXGxldFxjb250ZW50cz1ccmVsYXh/Y29udGVudHMBNDE4 LDEzNTU4CitcbGV0XHNtYWxsYm9vaz1ccmVsYXh/c21hbGxib29rATQxOSwxMzU3OQorXGxldFx0 aXRsZXBhZ2U9XHJlbGF4f3RpdGxlcGFnZQE0MjAsMTM2MDEKK1xkZWZcaWdub3Jle39pZ25vcmUB NDIzLDEzNjI2CitcbG9uZ1xkZWZcaWdub3JleHh4ICMxXGVuZCBpZ25vcmV7f2lnbm9yZXh4eAE0 MjcsMTM3NjYKK1xkZWZcZGlyZW50cnl7f2RpcmVudHJ5ATQyOSwxMzgyNQorXGxvbmdcZGVmXGRp cmVudHJ5eHh4ICMxXGVuZCBkaXJlbnRyeXt/ZGlyZW50cnl4eHgBNDMwLDEzODY0CitcZGVmXGlm c2V0e39pZnNldAE0MzQsMTM5NzQKK1xkZWZcaWZzZXR4eHggIzF7f2lmc2V0eHh4ATQzNiwxNDAz MgorXGV4cGFuZGFmdGVyXGlmeFxjc25hbWUgSUYjMVxlbmRjc25hbWVccmVsYXggXGxldFx0ZW1w PVxpZnNldGZhaWx/dGVtcAE0MzcsMTQwNTkKK1xlbHNlIFxsZXRcdGVtcD1ccmVsYXggXGZpf3Rl bXABNDM4LDE0MTI1CitcZGVmXEVpZnNldHt/RWlmc2V0ATQ0MCwxNDE1OQorXGRlZlxpZnNldGZh aWx7f2lmc2V0ZmFpbAE0NDEsMTQxNzMKK1xsb25nXGRlZlxpZnNldGZhaWx4eHggIzFcZW5kIGlm c2V0e39pZnNldGZhaWx4eHgBNDQyLDE0MjI5CitcZGVmXGlmY2xlYXJ7f2lmY2xlYXIBNDQ0LDE0 MjkwCitcZGVmXGlmY2xlYXJ4eHggIzF7f2lmY2xlYXJ4eHgBNDQ2LDE0MzUyCitcZXhwYW5kYWZ0 ZXJcaWZ4XGNzbmFtZSBJRiMxXGVuZGNzbmFtZVxyZWxheCBcbGV0XHRlbXA9XHJlbGF4f3RlbXAB NDQ3LDE0MzgxCitcZWxzZSBcbGV0XHRlbXA9XGlmY2xlYXJmYWlsIFxmaX90ZW1wATQ0OCwxNDQ0 MworXGRlZlxFaWZjbGVhcnt/RWlmY2xlYXIBNDUwLDE0NDgzCitcZGVmXGlmY2xlYXJmYWlse39p ZmNsZWFyZmFpbAE0NTEsMTQ0OTkKK1xsb25nXGRlZlxpZmNsZWFyZmFpbHh4eCAjMVxlbmQgaWZj bGVhcnt/aWZjbGVhcmZhaWx4eHgBNDUyLDE0NTU5CitcZGVmXHNldHt/c2V0ATQ1NiwxNDcxMAor XGRlZlxzZXR4eHggIzF7f3NldHh4eAE0NTcsMTQ3MzcKK1xleHBhbmRhZnRlclxsZXRcY3NuYW1l IElGIzFcZW5kY3NuYW1lPVxzZXR9f2NzbmFtZQE0NTgsMTQ3NTMKK1xkZWZcY2xlYXJ7f2NsZWFy ATQ2MCwxNDc5OQorXGRlZlxjbGVhcnh4eCAjMXt/Y2xlYXJ4eHgBNDYxLDE0ODMwCitcZXhwYW5k YWZ0ZXJcbGV0XGNzbmFtZSBJRiMxXGVuZGNzbmFtZT1ccmVsYXh9f2NzbmFtZQE0NjIsMTQ4NDgK K1xkZWZcaWZ0ZXh7f2lmdGV4ATQ2NiwxNDk0NworXGRlZlxFaWZ0ZXh7f0VpZnRleAE0NjcsMTQ5 NjAKK1xkZWZcaWZpbmZve39pZmluZm8BNDY4LDE0OTc0CitcbG9uZ1xkZWZcaWZpbmZveHh4ICMx XGVuZCBpZmluZm97f2lmaW5mb3h4eAE0NjksMTUwMjQKK1xsb25nXGRlZlxtZW51ICMxXGVuZCBt ZW51e39tZW51ATQ3MSwxNTA4MworXGRlZlxhc2lzIzF7f2FzaXMBNDcyLDE1MTEyCitcbGV0XGlt cGxpY2l0bWF0aCA9ICR/aW1wbGljaXRtYXRoATQ4NCwxNTYzMworXGRlZlxtYXRoIzF7f21hdGgB NDg1LDE1NjU1CitcZGVmXG5vZGV7f25vZGUBNDg3LDE1Njk5CitcZGVmXG5vZGV6enojMXt/bm9k ZXp6egE0ODgsMTU3MzcKK1xkZWZcbm9kZXh4eFsjMSwjMl17f25vZGV4eHgBNDg5LDE1NzY4Citc ZGVmXG5vZGV4eHhbIzEsIzJde1xnZGVmXGxhc3Rub2Rle39sYXN0bm9kZQE0ODksMTU3NjgKK1xs ZXRcbGFzdG5vZGU9XHJlbGF4f2xhc3Rub2RlATQ5MCwxNTgwOAorXGRlZlxkb25vZGVyZWZ7f2Rv bm9kZXJlZgE0OTIsMTU4MzAKK1xsZXRcbGFzdG5vZGU9XHJlbGF4fX9sYXN0bm9kZQE0OTQsMTU5 MjgKK1xkZWZcdW5udW1ibm9kZXJlZnt/dW5udW1ibm9kZXJlZgE0OTYsMTU5NTEKK1xsZXRcbGFz dG5vZGU9XHJlbGF4fX9sYXN0bm9kZQE0OTgsMTYwNTkKK1xkZWZcYXBwZW5kaXhub2RlcmVme39h cHBlbmRpeG5vZGVyZWYBNTAwLDE2MDgyCiBcZXhwYW5kYWZ0ZXJcZXhwYW5kYWZ0ZXJcZXhwYW5k YWZ0ZXJcYXBwZW5kaXhzZXRyZWZ7f3NldHJlZgE1MDEsMTYxMjgKLVxsZXRccmVmaWxsPVxyZWxh eH9pbGw9XHJlbGF4ATUwNCwxNjIxNwotXGRlZlxzZXRmaWxlbmFtZXt/XHNldGZpbGVuYW1lATUw OSwxNjQzMQotXG91dGVyXGRlZlxieWV7f1xieWUBNTE4LDE2Njc3Ci1cZGVmXGluZm9yZWYgIzF7 f1xpbmZvcmVmATUyMCwxNjczMwotXGRlZlxpbmZvcmVmenp6ICMxLCMyLCMzLCM0Kip7f1xpbmZv cmVmenp6ATUyMSwxNjc3MQotXGRlZlxsb3Nlc3BhY2UgIzF7f1xsb3Nlc3BhY2UBNTIzLDE2ODY4 Ci1cZGVmXHNme39cc2YBNTMyLDE3MDcyCi1cZm9udFxkZWZiZj1jbWJ4MTAgc2NhbGVkIFxtYWdz dGVwMSAld2FzIDEzMTR/YmY9Y21ieDEwATU1OCwxNzg2NwotXGZvbnRcZGVmdHQ9Y210dDEwIHNj YWxlZCBcbWFnc3RlcDF/dHQ9Y210dDEwATU1OSwxNzkxMwotXGRlZlxkZnt/XGRmATU2MCwxNzk0 OQotXGRlZlxyZXNldG1hdGhmb250c3t/XHJlc2V0bWF0aGZvbnRzATYzNSwyMDU0MwotXGRlZlx0 ZXh0Zm9udHN7f1x0ZXh0Zm9udHMBNjQ4LDIxMTMyCi1cZGVmXGNoYXBmb250c3t/XGNoYXBmb250 cwE2NTMsMjEzNDcKLVxkZWZcc2VjZm9udHN7f1xzZWNmb250cwE2NTgsMjE1NjMKLVxkZWZcc3Vi c2VjZm9udHN7f1xzdWJzZWNmb250cwE2NjMsMjE3NjgKLVxkZWZcaW5kZXhmb250c3t/XGluZGV4 Zm9udHMBNjY4LDIxOTg1Ci1cZGVmXHNtYXJ0aXRhbGljeHt/XHNtYXJ0aXRhbGljeAE2OTEsMjI3 MTcKLVxkZWZcc21hcnRpdGFsaWMjMXt/XHNtYXJ0aXRhbGljATY5MiwyMjc5MwotXGxldFxjaXRl PVxzbWFydGl0YWxpY389XHNtYXJ0aXRhbGljATY5OCwyMjkzOAotXGRlZlxiIzF7f1xiATcwMCwy Mjk2MgotXGRlZlx0IzF7f1x0ATcwMywyMjk5NwotXGRlZlxzYW1wICMxe39cc2FtcAE3MDYsMjMx NDkKLVxkZWZca2V5ICMxe39ca2V5ATcwNywyMzE4MgotXGRlZlxjdHJsICMxe39cY3RybAE3MDgs MjMyNDMKLVxkZWZcdGNsb3NlIzF7f1x0Y2xvc2UBNzE2LDIzNDQ1Ci1cZGVmXCB7f1wBNzIwLDIz NjExCi1cZGVmXHhrZXl7f1x4a2V5ATcyOCwyMzg4MAotXGRlZlxrYmRmb28jMSMyIzNccGFye39c a2JkZm9vATcyOSwyMzg5NgotXGRlZlxkbW4jMXt/XGRtbgE3MzgsMjQxOTcKLVxkZWZca2JkIzF7 f1xrYmQBNzQwLDI0MjI0Ci1cZGVmXGwjMXt/XGwBNzQyLDI0MjgxCi1cZGVmXHIjMXt/XHIBNzQ0 LDI0MzEwCi1cZGVmXHNjIzF7f1xzYwE3NDYsMjQzNzgKLVxkZWZcaWkjMXt/XGlpATc0NywyNDQy MQotXGRlZlx0aXRsZWZvbnQjMXt/XHRpdGxlZm9udAE3NTUsMjQ2NTQKLVxkZWZcdGl0bGVwYWdl e39cdGl0bGVwYWdlATc2MSwyNDc1NwotICAgXGRlZlxzdWJ0aXRsZWZvbnR7f1xzdWJ0aXRsZWZv bnQBNzY2LDI0OTg0Ci0gICBcZGVmXGF1dGhvcmZvbnR7f1xhdXRob3Jmb250ATc2OCwyNTA2OAot ICAgXGRlZlx0aXRsZXt/XHRpdGxlATc3NCwyNTI3OAotICAgXGRlZlx0aXRsZXp6eiMjMXt/XHRp dGxlenp6ATc3NSwyNTMxMwotICAgXGRlZlxzdWJ0aXRsZXt/XHN1YnRpdGxlATc4MywyNTYyOAot ICAgXGRlZlxzdWJ0aXRsZXp6eiMjMXt/XHN1YnRpdGxlenp6ATc4NCwyNTY2OQotICAgXGRlZlxh dXRob3J7f1xhdXRob3IBNzg3LDI1Nzg3Ci0gICBcZGVmXGF1dGhvcnp6eiMjMXt/XGF1dGhvcnp6 egE3ODgsMjU4MjQKLSAgIFxkZWZccGFnZXt/XHBhZ2UBNzk0LDI2MTE1Ci1cZGVmXEV0aXRsZXBh Z2V7f1xFdGl0bGVwYWdlATgwNCwyNjI4NAotXGRlZlxmaW5pc2h0aXRsZXBhZ2V7f1xmaW5pc2h0 aXRsZXBhZ2UBODE3LDI2NjcyCi1cZGVmXGV2ZW5oZWFkaW5ne39cZXZlbmhlYWRpbmcBODQ2LDI3 NjgwCi1cZGVmXG9kZGhlYWRpbmd7f1xvZGRoZWFkaW5nATg0NywyNzcyMwotXGRlZlxldmVyeWhl YWRpbmd7f1xldmVyeWhlYWRpbmcBODQ4LDI3NzY0Ci1cZGVmXGV2ZW5mb290aW5ne39cZXZlbmZv b3RpbmcBODUwLDI3ODEwCi1cZGVmXG9kZGZvb3Rpbmd7f1xvZGRmb290aW5nATg1MSwyNzg1Mwot XGRlZlxldmVyeWZvb3Rpbmd7f1xldmVyeWZvb3RpbmcBODUyLDI3ODk0Ci1cZGVmXGhlYWRpbmdz ICMxIHt/XGhlYWRpbmdzATg5MywyOTU4NgotXGRlZlxIRUFESU5HU29mZnt/XEhFQURJTkdTb2Zm ATg5NSwyOTYzNQotXGRlZlxIRUFESU5HU2RvdWJsZXt/XEhFQURJTkdTZG91YmxlATkwNCwzMDA2 MgotXGRlZlxIRUFESU5HU3NpbmdsZXt/XEhFQURJTkdTc2luZ2xlATkxNCwzMDM4MgotXGRlZlxI RUFESU5HU29ue39cSEVBRElOR1NvbgE5MjIsMzA2MDMKLVxkZWZcSEVBRElOR1NhZnRlcnt/XEhF QURJTkdTYWZ0ZXIBOTI0LDMwNjM3Ci1cZGVmXEhFQURJTkdTZG91YmxleHt/XEhFQURJTkdTZG91 YmxleAE5MjYsMzA3MzIKLVxkZWZcSEVBRElOR1NzaW5nbGVhZnRlcnt/XEhFQURJTkdTc2luZ2xl YWZ0ZXIBOTMzLDMwOTIwCi1cZGVmXEhFQURJTkdTc2luZ2xleHt/XEhFQURJTkdTc2luZ2xleAE5 MzQsMzA5ODEKLVxkZWZcdG9kYXl7f1x0b2RheQE5NDMsMzEyNTYKLVxkZWZcdGhpc3RpdGxle39c dGhpc3RpdGxlATk1OCwzMTgwMQotXGRlZlxzZXR0aXRsZXt/XHNldHRpdGxlATk1OSwzMTgyNgot XGRlZlxzZXR0aXRsZXp6eiAjMXt/XHNldHRpdGxlenp6ATk2MCwzMTg2MwotXGRlZlxpbnRlcm5h bEJpdGVte39caW50ZXJuYWxCaXRlbQE5OTIsMzI3OTMKLVxkZWZcaW50ZXJuYWxCaXRlbXh7f1xp bnRlcm5hbEJpdGVteAE5OTMsMzI4NDMKLVxkZWZcaW50ZXJuYWxCeGl0ZW0gIiMxInt/XGludGVy bmFsQnhpdGVtATk5NSwzMjg4OAotXGRlZlxpbnRlcm5hbEJ4aXRlbXggIiMxInt/XGludGVybmFs QnhpdGVteAE5OTYsMzI5NjgKLVxkZWZcaW50ZXJuYWxCa2l0ZW17f1xpbnRlcm5hbEJraXRlbQE5 OTgsMzMwNDMKLVxkZWZcaW50ZXJuYWxCa2l0ZW14e39caW50ZXJuYWxCa2l0ZW14ATk5OSwzMzA5 NQotXGRlZlxraXRlbXp6eiAjMXt/XGtpdGVtenp6ATEwMDEsMzMxNDIKLVxkZWZceGl0ZW16enog IzF7f1x4aXRlbXp6egExMDA0LDMzMjQ0Ci1cZGVmXGl0ZW16enogIzF7f1xpdGVtenp6ATEwMDcs MzMzNDcKLVxkZWZcaXRlbXt/XGl0ZW0BMTAzNywzNDQxOAotXGRlZlxpdGVteHt/XGl0ZW14ATEw MzgsMzQ0NjkKLVxkZWZca2l0ZW17f1xraXRlbQExMDM5LDM0NTIyCi1cZGVmXGtpdGVteHt/XGtp dGVteAExMDQwLDM0NTc1Ci1cZGVmXHhpdGVte39ceGl0ZW0BMTA0MSwzNDYzMAotXGRlZlx4aXRl bXh7f1x4aXRlbXgBMTA0MiwzNDY4MwotXGRlZlxkZXNjcmlwdGlvbnt/XGRlc2NyaXB0aW9uATEw NDUsMzQ3OTMKLVxkZWZcdGFibGV7f1x0YWJsZQExMDQ3LDM0ODQzCi1cZGVmXGZ0YWJsZXt/XGZ0 YWJsZQExMDUyLDM0OTg3Ci1cZGVmXEVmdGFibGV7f1xFZnRhYmxlATEwNTYsMzUxMzMKLVxkZWZc dnRhYmxle39cdnRhYmxlATEwNTksMzUyMDIKLVxkZWZcRXZ0YWJsZXt/XEV2dGFibGUBMTA2Mywz NTM0OAotXGRlZlxkb250aW5kZXggIzF7f1xkb250aW5kZXgBMTA2NiwzNTQxNwotXGRlZlxmbml0 ZW1pbmRleCAjMXt/XGZuaXRlbWluZGV4ATEwNjcsMzU0MzcKLVxkZWZcdnJpdGVtaW5kZXggIzF7 f1x2cml0ZW1pbmRleAExMDY4LDM1NDgyCi1cZGVmXHRhYmxleiAjMSMyIzMjNCM1IzZ7f1x0YWJs ZXoBMTA3NCwzNTYzMQotXGRlZlxFZGVzY3JpcHRpb257f1xFZGVzY3JpcHRpb24BMTA3NywzNTY4 OQotXGRlZlxpdGVtZm9udHt/XGl0ZW1mb250ATEwODIsMzU4OTAKLVxkZWZcRXRhYmxle39cRXRh YmxlATEwOTAsMzYxMTYKLVxkZWZcaXRlbWl6ZXt/XGl0ZW1pemUBMTEwMywzNjQ0MAotXGRlZlxp dGVtaXplenp6ICMxe39caXRlbWl6ZXp6egExMTA1LDM2NDc2Ci1cZGVmXGl0ZW1pemV5ICMxIzJ7 f1xpdGVtaXpleQExMTEwLDM2NTcxCi1cZGVmIzJ7fzExMTksMzY4MTcKLVxkZWZcaXRlbWNvbnRl bnRze39caXRlbWNvbnRlbnRzATExMjAsMzY4NTgKLVxkZWZcYnVsbGV0e39cYnVsbGV0ATExMjMs MzY5MDYKLVxkZWZcbWludXN7f1xtaW51cwExMTI0LDM2OTMzCi1cZGVmXGZyZW5jaHNwYWNpbmd7 f1xmcmVuY2hzcGFjaW5nATExMjgsMzcwNDEKLVxkZWZcc3BsaXRvZmYjMSMyXGVuZG1hcmt7f1xz cGxpdG9mZgExMTM0LDM3MjY2Ci1cZGVmXGVudW1lcmF0ZXt/XGVudW1lcmF0ZQExMTQwLDM3NDk2 Ci1cZGVmXGVudW1lcmF0ZXp6eiAjMXt/XGVudW1lcmF0ZXp6egExMTQxLDM3NTM1Ci1cZGVmXGVu dW1lcmF0ZXkgIzEgIzJcZW5kZW51bWVyYXRleXt/XGVudW1lcmF0ZXkBMTE0MiwzNzU4OAotICBc ZGVmXHRoZWFyZ3t/XHRoZWFyZwExMTQ2LDM3NzM1Ci0gIFxpZnhcdGhlYXJnXGVtcHR5IFxkZWZc dGhlYXJne39cdGhlYXJnATExNDcsMzc3NTQKLVxkZWZcbnVtZXJpY2VudW1lcmF0ZXt/XG51bWVy aWNlbnVtZXJhdGUBMTE4NCwzOTA4OAotXGRlZlxsb3dlcmNhc2VlbnVtZXJhdGV7f1xsb3dlcmNh c2VlbnVtZXJhdGUBMTE5MCwzOTIxOAotXGRlZlx1cHBlcmNhc2VlbnVtZXJhdGV7f1x1cHBlcmNh c2VlbnVtZXJhdGUBMTIwMywzOTU2NQotXGRlZlxzdGFydGVudW1lcmF0aW9uIzF7f1xzdGFydGVu dW1lcmF0aW9uATEyMTksNDAwNTUKLVxkZWZcYWxwaGFlbnVtZXJhdGV7f1xhbHBoYWVudW1lcmF0 ZQExMjI3LDQwMjM3Ci1cZGVmXGNhcHNlbnVtZXJhdGV7f1xjYXBzZW51bWVyYXRlATEyMjgsNDAy NzIKLVxkZWZcRWFscGhhZW51bWVyYXRle39cRWFscGhhZW51bWVyYXRlATEyMjksNDAzMDYKLVxk ZWZcRWNhcHNlbnVtZXJhdGV7f1xFY2Fwc2VudW1lcmF0ZQExMjMwLDQwMzQwCi1cZGVmXGl0ZW1p emVpdGVte39caXRlbWl6ZWl0ZW0BMTIzNCw0MDQyMAotXGRlZlxuZXdpbmRleCAjMXt/XG5ld2lu ZGV4ATEyNTksNDEyNzcKLVxkZWZcZGVmaW5kZXh7f1xkZWZpbmRleAExMjY4LDQxNTY2Ci1cZGVm XG5ld2NvZGVpbmRleCAjMXt/XG5ld2NvZGVpbmRleAExMjcyLDQxNjc0Ci1cZGVmXGRlZmNvZGVp bmRleHt/XGRlZmNvZGVpbmRleAExMjc5LDQxOTM0Ci1cZGVmXHN5bmluZGV4ICMxICMyIHt/XHN5 bmluZGV4ATEyODMsNDIxMTQKLVxkZWZcc3luY29kZWluZGV4ICMxICMyIHt/XHN5bmNvZGVpbmRl eAExMjkyLDQyNDU0Ci1cZGVmXGRvaW5kZXgjMXt/XGRvaW5kZXgBMTMwOSw0MzEzMwotXGRlZlxz aW5nbGVpbmRleGVyICMxe39cc2luZ2xlaW5kZXhlcgExMzEwLDQzMTkyCi1cZGVmXGRvY29kZWlu ZGV4IzF7f1xkb2NvZGVpbmRleAExMzEzLDQzMzA0Ci1cZGVmXHNpbmdsZWNvZGVpbmRleGVyICMx e39cc2luZ2xlY29kZWluZGV4ZXIBMTMxNCw0MzM3MQotXGRlZlxpbmRleGR1bW1pZXN7f1xpbmRl eGR1bW1pZXMBMTMxNiw0MzQyOQotXGRlZlxfe39cXwExMzE3LDQzNDQ5Ci1cZGVmXHd7f1x3ATEz MTgsNDM0NzcKLVxkZWZcYmZ7f1xiZgExMzE5LDQzNTA0Ci1cZGVmXHJte39ccm0BMTMyMCw0MzUz MwotXGRlZlxzbHt/XHNsATEzMjEsNDM1NjIKLVxkZWZcc2Z7f1xzZgExMzIyLDQzNTkxCi1cZGVm XHR0e39cdHQBMTMyMyw0MzYxOQotXGRlZlxndHJ7f1xndHIBMTMyNCw0MzY0NwotXGRlZlxsZXNz e39cbGVzcwExMzI1LDQzNjc3Ci1cZGVmXGhhdHt/XGhhdAExMzI2LDQzNzA5Ci1cZGVmXGNoYXJ7 f1xjaGFyATEzMjcsNDM3MzkKLVxkZWZcVGVYe39cVGVYATEzMjgsNDM3NzEKLVxkZWZcZG90c3t/ XGRvdHMBMTMyOSw0MzgwMQotXGRlZlxjb3B5cmlnaHR7f1xjb3B5cmlnaHQBMTMzMCw0MzgzNAot XGRlZlx0Y2xvc2UjIzF7f1x0Y2xvc2UBMTMzMSw0Mzg3NwotXGRlZlxjb2RlIyMxe39cY29kZQEx MzMyLDQzOTIyCi1cZGVmXHNhbXAjIzF7f1xzYW1wATEzMzMsNDM5NjMKLVxkZWZcdCMjMXt/XHQB MTMzNCw0NDAwNAotXGRlZlxyIyMxe39ccgExMzM1LDQ0MDM5Ci1cZGVmXGkjIzF7f1xpATEzMzYs NDQwNzQKLVxkZWZcYiMjMXt/XGIBMTMzNyw0NDEwOQotXGRlZlxjaXRlIyMxe39cY2l0ZQExMzM4 LDQ0MTQ0Ci1cZGVmXGtleSMjMXt/XGtleQExMzM5LDQ0MTg1Ci1cZGVmXGZpbGUjIzF7f1xmaWxl ATEzNDAsNDQyMjQKLVxkZWZcdmFyIyMxe39cdmFyATEzNDEsNDQyNjUKLVxkZWZca2JkIyMxe39c a2JkATEzNDIsNDQzMDQKLVxkZWZcaW5kZXhkdW1teWZvbnQjMXt/XGluZGV4ZHVtbXlmb250ATEz NDcsNDQ0NjAKLVxkZWZcaW5kZXhkdW1teXRleHt/XGluZGV4ZHVtbXl0ZXgBMTM0OCw0NDQ4Ngot XGRlZlxpbmRleGR1bW15ZG90c3t/XGluZGV4ZHVtbXlkb3RzATEzNDksNDQ1MTAKLVxkZWZcaW5k ZXhub2ZvbnRze39caW5kZXhub2ZvbnRzATEzNTEsNDQ1MzYKK1xsZXRcbGFzdG5vZGU9XHJlbGF4 fX9sYXN0bm9kZQE1MDIsMTYxOTQKK1xsZXRccmVmaWxsPVxyZWxheH9yZWZpbGwBNTA0LDE2MjE3 CitcZGVmXHNldGZpbGVuYW1le39zZXRmaWxlbmFtZQE1MDksMTY0MzEKKyAgIFxnbG9iYWxcbGV0 XHNldGZpbGVuYW1lPVxjb21tZW50ICUgSWdub3JlIGV4dHJhIEBzZXRmaWxlbmFtZSBjbWRzLn9z ZXRmaWxlbmFtZQE1MTQsMTY1NjIKK1xvdXRlclxkZWZcYnlle39ieWUBNTE4LDE2Njc3CitcZGVm XGluZm9yZWYgIzF7f2luZm9yZWYBNTIwLDE2NzMzCitcZGVmXGluZm9yZWZ6enogIzEsIzIsIzMs IzQqKnt/aW5mb3JlZnp6egE1MjEsMTY3NzEKK1xkZWZcbG9zZXNwYWNlICMxe39sb3Nlc3BhY2UB NTIzLDE2ODY4CitcZGVmXHNme39zZgE1MzIsMTcwNzIKK1xsZXRcbGkgPSBcc2YgJSBTb21ldGlt ZXMgd2UgY2FsbCBpdCBcbGksIG5vdCBcc2Yuf2xpATUzMywxNzEwMAorXGxldFxtYWlubWFnc3Rl cD1cbWFnc3RlcGhhbGZ/bWFpbm1hZ3N0ZXABNTM2LDE3MjAxCitcbGV0XG1haW5tYWdzdGVwPVxt YWdzdGVwMX9tYWlubWFnc3RlcAE1MzksMTcyNTAKK1xmb250XGRlZmJmPWNtYngxMCBzY2FsZWQg XG1hZ3N0ZXAxICV3YXMgMTMxNH9iZgE1NTgsMTc4NjcKK1xmb250XGRlZnR0PWNtdHQxMCBzY2Fs ZWQgXG1hZ3N0ZXAxf3R0ATU1OSwxNzkxMworXGRlZlxkZnt/ZGYBNTYwLDE3OTQ5CitcZGVmXGRm e1xsZXRcdGVudHQ9XGRlZnR0IFxsZXRcdGVuYmYgPSBcZGVmYmYgXGJmfX90ZW50dAE1NjAsMTc5 NDkKK1xkZWZcZGZ7XGxldFx0ZW50dD1cZGVmdHQgXGxldFx0ZW5iZiA9IFxkZWZiZiBcYmZ9f3R0 ATU2MCwxNzk0OQorXGRlZlxkZntcbGV0XHRlbnR0PVxkZWZ0dCBcbGV0XHRlbmJmID0gXGRlZmJm IFxiZn1/dGVuYmYBNTYwLDE3OTQ5CitcZGVmXGRme1xsZXRcdGVudHQ9XGRlZnR0IFxsZXRcdGVu YmYgPSBcZGVmYmYgXGJmfX9iZgE1NjAsMTc5NDkKK1xsZXRcaW5kc2w9XGluZGl0f2luZHNsATU3 MCwxODMxMAorXGxldFxpbmR0dD1cbmluZXR0f2luZHR0ATU3MSwxODMyOAorXGxldFxpbmRzZj1c aW5kcm1/aW5kc2YBNTcyLDE4MzQ3CitcbGV0XGluZGJmPVxpbmRybX9pbmRiZgE1NzMsMTgzNjUK K1xsZXRcaW5kc2M9XGluZHJtf2luZHNjATU3NCwxODM4MworXGxldFxjaGFwYmY9XGNoYXBybX9j aGFwYmYBNTg0LDE4NjQzCitcbGV0XGF1dGhvcnJtID0gXHNlY3Jtf2F1dGhvcnJtATYyNywyMDE5 MworXGRlZlxyZXNldG1hdGhmb250c3t/cmVzZXRtYXRoZm9udHMBNjM1LDIwNTQzCitcZGVmXHRl eHRmb250c3t/dGV4dGZvbnRzATY0OCwyMTEzMgorICBcbGV0XHRlbnJtPVx0ZXh0cm0gXGxldFx0 ZW5pdD1cdGV4dGl0IFxsZXRcdGVuc2w9XHRleHRzbH90ZW5ybQE2NDksMjExNDkKKyAgXGxldFx0 ZW5ybT1cdGV4dHJtIFxsZXRcdGVuaXQ9XHRleHRpdCBcbGV0XHRlbnNsPVx0ZXh0c2x/dGVuaXQB NjQ5LDIxMTQ5CisgIFxsZXRcdGVucm09XHRleHRybSBcbGV0XHRlbml0PVx0ZXh0aXQgXGxldFx0 ZW5zbD1cdGV4dHNsf3RlbnNsATY0OSwyMTE0OQorICBcbGV0XHRlbmJmPVx0ZXh0YmYgXGxldFx0 ZW50dD1cdGV4dHR0IFxsZXRcc21hbGxjYXBzPVx0ZXh0c2N/dGVuYmYBNjUwLDIxMjA4CisgIFxs ZXRcdGVuYmY9XHRleHRiZiBcbGV0XHRlbnR0PVx0ZXh0dHQgXGxldFxzbWFsbGNhcHM9XHRleHRz Y390ZW50dAE2NTAsMjEyMDgKKyAgXGxldFx0ZW5iZj1cdGV4dGJmIFxsZXRcdGVudHQ9XHRleHR0 dCBcbGV0XHNtYWxsY2Fwcz1cdGV4dHNjf3NtYWxsY2FwcwE2NTAsMjEyMDgKKyAgXGxldFx0ZW5z Zj1cdGV4dHNmIFxsZXRcdGVuaT1cdGV4dGkgXGxldFx0ZW5zeT1cdGV4dHN5f3RlbnNmATY1MSwy MTI3MQorICBcbGV0XHRlbnNmPVx0ZXh0c2YgXGxldFx0ZW5pPVx0ZXh0aSBcbGV0XHRlbnN5PVx0 ZXh0c3l/dGVuaQE2NTEsMjEyNzEKKyAgXGxldFx0ZW5zZj1cdGV4dHNmIFxsZXRcdGVuaT1cdGV4 dGkgXGxldFx0ZW5zeT1cdGV4dHN5f3RlbnN5ATY1MSwyMTI3MQorXGRlZlxjaGFwZm9udHN7f2No YXBmb250cwE2NTMsMjEzNDcKKyAgXGxldFx0ZW5ybT1cY2hhcHJtIFxsZXRcdGVuaXQ9XGNoYXBp dCBcbGV0XHRlbnNsPVxjaGFwc2wgf3RlbnJtATY1NCwyMTM2NAorICBcbGV0XHRlbnJtPVxjaGFw cm0gXGxldFx0ZW5pdD1cY2hhcGl0IFxsZXRcdGVuc2w9XGNoYXBzbCB/dGVuaXQBNjU0LDIxMzY0 CisgIFxsZXRcdGVucm09XGNoYXBybSBcbGV0XHRlbml0PVxjaGFwaXQgXGxldFx0ZW5zbD1cY2hh cHNsIH90ZW5zbAE2NTQsMjEzNjQKKyAgXGxldFx0ZW5iZj1cY2hhcGJmIFxsZXRcdGVudHQ9XGNo YXB0dCBcbGV0XHNtYWxsY2Fwcz1cY2hhcHNjf3RlbmJmATY1NSwyMTQyNAorICBcbGV0XHRlbmJm PVxjaGFwYmYgXGxldFx0ZW50dD1cY2hhcHR0IFxsZXRcc21hbGxjYXBzPVxjaGFwc2N/dGVudHQB NjU1LDIxNDI0CisgIFxsZXRcdGVuYmY9XGNoYXBiZiBcbGV0XHRlbnR0PVxjaGFwdHQgXGxldFxz bWFsbGNhcHM9XGNoYXBzY39zbWFsbGNhcHMBNjU1LDIxNDI0CisgIFxsZXRcdGVuc2Y9XGNoYXBz ZiBcbGV0XHRlbmk9XGNoYXBpIFxsZXRcdGVuc3k9XGNoYXBzeX90ZW5zZgE2NTYsMjE0ODcKKyAg XGxldFx0ZW5zZj1cY2hhcHNmIFxsZXRcdGVuaT1cY2hhcGkgXGxldFx0ZW5zeT1cY2hhcHN5f3Rl bmkBNjU2LDIxNDg3CisgIFxsZXRcdGVuc2Y9XGNoYXBzZiBcbGV0XHRlbmk9XGNoYXBpIFxsZXRc dGVuc3k9XGNoYXBzeX90ZW5zeQE2NTYsMjE0ODcKK1xkZWZcc2VjZm9udHN7f3NlY2ZvbnRzATY1 OCwyMTU2MworICBcbGV0XHRlbnJtPVxzZWNybSBcbGV0XHRlbml0PVxzZWNpdCBcbGV0XHRlbnNs PVxzZWNzbH90ZW5ybQE2NTksMjE1NzkKKyAgXGxldFx0ZW5ybT1cc2Vjcm0gXGxldFx0ZW5pdD1c c2VjaXQgXGxldFx0ZW5zbD1cc2Vjc2x/dGVuaXQBNjU5LDIxNTc5CisgIFxsZXRcdGVucm09XHNl Y3JtIFxsZXRcdGVuaXQ9XHNlY2l0IFxsZXRcdGVuc2w9XHNlY3Nsf3RlbnNsATY1OSwyMTU3OQor ICBcbGV0XHRlbmJmPVxzZWNiZiBcbGV0XHRlbnR0PVxzZWN0dCBcbGV0XHNtYWxsY2Fwcz1cc2Vj c2N/dGVuYmYBNjYwLDIxNjM1CisgIFxsZXRcdGVuYmY9XHNlY2JmIFxsZXRcdGVudHQ9XHNlY3R0 IFxsZXRcc21hbGxjYXBzPVxzZWNzY390ZW50dAE2NjAsMjE2MzUKKyAgXGxldFx0ZW5iZj1cc2Vj YmYgXGxldFx0ZW50dD1cc2VjdHQgXGxldFxzbWFsbGNhcHM9XHNlY3Njf3NtYWxsY2FwcwE2NjAs MjE2MzUKKyAgXGxldFx0ZW5zZj1cc2Vjc2YgXGxldFx0ZW5pPVxzZWNpIFxsZXRcdGVuc3k9XHNl Y3N5f3RlbnNmATY2MSwyMTY5NQorICBcbGV0XHRlbnNmPVxzZWNzZiBcbGV0XHRlbmk9XHNlY2kg XGxldFx0ZW5zeT1cc2Vjc3l/dGVuaQE2NjEsMjE2OTUKKyAgXGxldFx0ZW5zZj1cc2Vjc2YgXGxl dFx0ZW5pPVxzZWNpIFxsZXRcdGVuc3k9XHNlY3N5f3RlbnN5ATY2MSwyMTY5NQorXGRlZlxzdWJz ZWNmb250c3t/c3Vic2VjZm9udHMBNjYzLDIxNzY4CisgIFxsZXRcdGVucm09XHNzZWNybSBcbGV0 XHRlbml0PVxzc2VjaXQgXGxldFx0ZW5zbD1cc3NlY3Nsf3RlbnJtATY2NCwyMTc4NworICBcbGV0 XHRlbnJtPVxzc2Vjcm0gXGxldFx0ZW5pdD1cc3NlY2l0IFxsZXRcdGVuc2w9XHNzZWNzbH90ZW5p dAE2NjQsMjE3ODcKKyAgXGxldFx0ZW5ybT1cc3NlY3JtIFxsZXRcdGVuaXQ9XHNzZWNpdCBcbGV0 XHRlbnNsPVxzc2Vjc2x/dGVuc2wBNjY0LDIxNzg3CisgIFxsZXRcdGVuYmY9XHNzZWNiZiBcbGV0 XHRlbnR0PVxzc2VjdHQgXGxldFxzbWFsbGNhcHM9XHNzZWNzY390ZW5iZgE2NjUsMjE4NDYKKyAg XGxldFx0ZW5iZj1cc3NlY2JmIFxsZXRcdGVudHQ9XHNzZWN0dCBcbGV0XHNtYWxsY2Fwcz1cc3Nl Y3Njf3RlbnR0ATY2NSwyMTg0NgorICBcbGV0XHRlbmJmPVxzc2VjYmYgXGxldFx0ZW50dD1cc3Nl Y3R0IFxsZXRcc21hbGxjYXBzPVxzc2Vjc2N/c21hbGxjYXBzATY2NSwyMTg0NgorICBcbGV0XHRl bnNmPVxzc2Vjc2YgXGxldFx0ZW5pPVxzc2VjaSBcbGV0XHRlbnN5PVxzc2Vjc3l/dGVuc2YBNjY2 LDIxOTA5CisgIFxsZXRcdGVuc2Y9XHNzZWNzZiBcbGV0XHRlbmk9XHNzZWNpIFxsZXRcdGVuc3k9 XHNzZWNzeX90ZW5pATY2NiwyMTkwOQorICBcbGV0XHRlbnNmPVxzc2Vjc2YgXGxldFx0ZW5pPVxz c2VjaSBcbGV0XHRlbnN5PVxzc2Vjc3l/dGVuc3kBNjY2LDIxOTA5CitcZGVmXGluZGV4Zm9udHN7 f2luZGV4Zm9udHMBNjY4LDIxOTg1CisgIFxsZXRcdGVucm09XGluZHJtIFxsZXRcdGVuaXQ9XGlu ZGl0IFxsZXRcdGVuc2w9XGluZHNsf3RlbnJtATY2OSwyMjAwMworICBcbGV0XHRlbnJtPVxpbmRy bSBcbGV0XHRlbml0PVxpbmRpdCBcbGV0XHRlbnNsPVxpbmRzbH90ZW5pdAE2NjksMjIwMDMKKyAg XGxldFx0ZW5ybT1caW5kcm0gXGxldFx0ZW5pdD1caW5kaXQgXGxldFx0ZW5zbD1caW5kc2x/dGVu c2wBNjY5LDIyMDAzCisgIFxsZXRcdGVuYmY9XGluZGJmIFxsZXRcdGVudHQ9XGluZHR0IFxsZXRc c21hbGxjYXBzPVxpbmRzY390ZW5iZgE2NzAsMjIwNTkKKyAgXGxldFx0ZW5iZj1caW5kYmYgXGxl dFx0ZW50dD1caW5kdHQgXGxldFxzbWFsbGNhcHM9XGluZHNjf3RlbnR0ATY3MCwyMjA1OQorICBc bGV0XHRlbmJmPVxpbmRiZiBcbGV0XHRlbnR0PVxpbmR0dCBcbGV0XHNtYWxsY2Fwcz1caW5kc2N/ c21hbGxjYXBzATY3MCwyMjA1OQorICBcbGV0XHRlbnNmPVxpbmRzZiBcbGV0XHRlbmk9XGluZGkg XGxldFx0ZW5zeT1caW5kc3l/dGVuc2YBNjcxLDIyMTE5CisgIFxsZXRcdGVuc2Y9XGluZHNmIFxs ZXRcdGVuaT1caW5kaSBcbGV0XHRlbnN5PVxpbmRzeX90ZW5pATY3MSwyMjExOQorICBcbGV0XHRl bnNmPVxpbmRzZiBcbGV0XHRlbmk9XGluZGkgXGxldFx0ZW5zeT1caW5kc3l/dGVuc3kBNjcxLDIy MTE5CitcZGVmXHNtYXJ0aXRhbGljeHt/c21hcnRpdGFsaWN4ATY5MSwyMjcxNworXGRlZlxzbWFy dGl0YWxpYyMxe39zbWFydGl0YWxpYwE2OTIsMjI3OTMKK1xsZXRcaT1cc21hcnRpdGFsaWN/aQE2 OTQsMjI4NTEKK1xsZXRcdmFyPVxzbWFydGl0YWxpY392YXIBNjk1LDIyODcxCitcbGV0XGRmbj1c c21hcnRpdGFsaWN/ZGZuATY5NiwyMjg5MworXGxldFxlbXBoPVxzbWFydGl0YWxpY39lbXBoATY5 NywyMjkxNQorXGxldFxjaXRlPVxzbWFydGl0YWxpY39jaXRlATY5OCwyMjkzOAorXGRlZlxiIzF7 f2IBNzAwLDIyOTYyCitcbGV0XHN0cm9uZz1cYn9zdHJvbmcBNzAxLDIyOTgxCitcZGVmXHQjMXt/ dAE3MDMsMjI5OTcKK1xsZXRcdHRmb250ID0gXHR/dHRmb250ATcwNCwyMzA3MgorXGRlZlxzYW1w ICMxe39zYW1wATcwNiwyMzE0OQorXGRlZlxrZXkgIzF7f2tleQE3MDcsMjMxODIKK1xkZWZcY3Ry bCAjMXt/Y3RybAE3MDgsMjMyNDMKK1xsZXRcZmlsZT1cc2FtcH9maWxlATcxMCwyMzI4NQorXGRl Zlx0Y2xvc2UjMXt/dGNsb3NlATcxNiwyMzQ0NQorXGxldFxjb2RlPVx0Y2xvc2V/Y29kZQE3MjIs MjM3MjIKK1xkZWZceGtleXt/eGtleQE3MjgsMjM4ODAKK1xkZWZca2JkZm9vIzEjMiMzXHBhcnt/ a2JkZm9vATcyOSwyMzg5NgorXGRlZlxrYmRmb28jMSMyIzNccGFye1xkZWZcb25le39vbmUBNzI5 LDIzODk2CitcZGVmXGtiZGZvbyMxIzIjM1xwYXJ7XGRlZlxvbmV7IzF9XGRlZlx0aHJlZXt/dGhy ZWUBNzI5LDIzODk2CitcZGVmXGtiZGZvbyMxIzIjM1xwYXJ7XGRlZlxvbmV7IzF9XGRlZlx0aHJl ZXsjM31cZGVmXHRocmVleHt/dGhyZWV4ATcyOSwyMzg5NgorXGRlZlxkbW4jMXt/ZG1uATczOCwy NDE5NworXGRlZlxrYmQjMXt/a2JkATc0MCwyNDIyNAorXGRlZlxrYmQjMXtcZGVmXGxvb2t7f2xv b2sBNzQwLDI0MjI0CitcZGVmXGwjMXt/bAE3NDIsMjQyODEKK1xkZWZcciMxe39yATc0NCwyNDMx MAorXGRlZlxzYyMxe39zYwE3NDYsMjQzNzgKK1xkZWZcaWkjMXt/aWkBNzQ3LDI0NDIxCitcZGVm XHRpdGxlZm9udCMxe390aXRsZWZvbnQBNzU1LDI0NjU0CitcZGVmXHRpdGxlcGFnZXt/dGl0bGVw YWdlATc2MSwyNDc1NworICAgXGxldFxzdWJ0aXRsZXJtPVx0ZW5ybX9zdWJ0aXRsZXJtATc2Miwy NDgxMAorICAgXGRlZlxzdWJ0aXRsZWZvbnR7f3N1YnRpdGxlZm9udAE3NjYsMjQ5ODQKKyAgIFxk ZWZcYXV0aG9yZm9udHt/YXV0aG9yZm9udAE3NjgsMjUwNjgKKyAgIFxkZWZcdGl0bGV7f3RpdGxl ATc3NCwyNTI3OAorICAgXGRlZlx0aXRsZXp6eiMjMXt/dGl0bGV6enoBNzc1LDI1MzEzCisgICBc ZGVmXHN1YnRpdGxle39zdWJ0aXRsZQE3ODMsMjU2MjgKKyAgIFxkZWZcc3VidGl0bGV6enojIzF7 f3N1YnRpdGxlenp6ATc4NCwyNTY2OQorICAgXGRlZlxhdXRob3J7f2F1dGhvcgE3ODcsMjU3ODcK KyAgIFxkZWZcYXV0aG9yenp6IyMxe39hdXRob3J6enoBNzg4LDI1ODI0CisgICBcbGV0XG9sZHBh Z2UgPSBccGFnZX9vbGRwYWdlATc5MywyNjA5MQorICAgXGRlZlxwYWdle39wYWdlATc5NCwyNjEx NQorICAgICAgXGxldFxwYWdlID0gXG9sZHBhZ2V/cGFnZQE3OTksMjYyMDYKK1xkZWZcRXRpdGxl cGFnZXt/RXRpdGxlcGFnZQE4MDQsMjYyODQKK1xkZWZcZmluaXNodGl0bGVwYWdle39maW5pc2h0 aXRsZXBhZ2UBODE3LDI2NjcyCitcbGV0XHRoaXNwYWdlPVxmb2xpb390aGlzcGFnZQE4MjUsMjY4 MjUKK1xsZXRcSEVBRElOR1Nob29rPVxyZWxheH9IRUFESU5HU2hvb2sBODM3LDI3NDIwCitcZGVm XGV2ZW5oZWFkaW5ne39ldmVuaGVhZGluZwE4NDYsMjc2ODAKK1xkZWZcb2RkaGVhZGluZ3t/b2Rk aGVhZGluZwE4NDcsMjc3MjMKK1xkZWZcZXZlcnloZWFkaW5ne39ldmVyeWhlYWRpbmcBODQ4LDI3 NzY0CitcZGVmXGV2ZW5mb290aW5ne39ldmVuZm9vdGluZwE4NTAsMjc4MTAKK1xkZWZcb2RkZm9v dGluZ3t/b2RkZm9vdGluZwE4NTEsMjc4NTMKK1xkZWZcZXZlcnlmb290aW5ne39ldmVyeWZvb3Rp bmcBODUyLDI3ODk0CitcZ2RlZlxldmVuaGVhZGluZ3h4eCAjMXt/ZXZlbmhlYWRpbmd4eHgBODU2 LDI3OTU4CitcZ2RlZlxldmVuaGVhZGluZ3l5eSAjMUB8IzJAfCMzQHwjNFxmaW5pc2h7f2V2ZW5o ZWFkaW5neXl5ATg1NywyODAxNworXGdkZWZcb2RkaGVhZGluZ3h4eCAjMXt/b2RkaGVhZGluZ3h4 eAE4NjAsMjgxMjYKK1xnZGVmXG9kZGhlYWRpbmd5eXkgIzFAfCMyQHwjM0B8IzRcZmluaXNoe39v ZGRoZWFkaW5neXl5ATg2MSwyODE4MworXGdkZWZcZXZlcnloZWFkaW5neHh4ICMxe39ldmVyeWhl YWRpbmd4eHgBODY0LDI4MjkwCitcZ2RlZlxldmVyeWhlYWRpbmd5eXkgIzFAfCMyQHwjM0B8IzRc ZmluaXNoe39ldmVyeWhlYWRpbmd5eXkBODY1LDI4MzUxCitcZ2RlZlxldmVuZm9vdGluZ3h4eCAj MXt/ZXZlbmZvb3Rpbmd4eHgBODY5LDI4NTIyCitcZ2RlZlxldmVuZm9vdGluZ3l5eSAjMUB8IzJA fCMzQHwjNFxmaW5pc2h7f2V2ZW5mb290aW5neXl5ATg3MCwyODU4MQorXGdkZWZcb2RkZm9vdGlu Z3h4eCAjMXt/b2RkZm9vdGluZ3h4eAE4NzMsMjg2OTAKK1xnZGVmXG9kZGZvb3Rpbmd5eXkgIzFA fCMyQHwjM0B8IzRcZmluaXNoe39vZGRmb290aW5neXl5ATg3NCwyODc0NworXGdkZWZcZXZlcnlm b290aW5neHh4ICMxe39ldmVyeWZvb3Rpbmd4eHgBODc3LDI4ODU0CitcZ2RlZlxldmVyeWZvb3Rp bmd5eXkgIzFAfCMyQHwjM0B8IzRcZmluaXNoe39ldmVyeWZvb3Rpbmd5eXkBODc4LDI4OTE1Citc ZGVmXGhlYWRpbmdzICMxIHt/aGVhZGluZ3MBODkzLDI5NTg2CitcZGVmXEhFQURJTkdTb2Zme39I RUFESU5HU29mZgE4OTUsMjk2MzUKK1xkZWZcSEVBRElOR1Nkb3VibGV7f0hFQURJTkdTZG91Ymxl ATkwNCwzMDA2MgorXGRlZlxIRUFESU5HU3NpbmdsZXt/SEVBRElOR1NzaW5nbGUBOTE0LDMwMzgy CitcZGVmXEhFQURJTkdTb257f0hFQURJTkdTb24BOTIyLDMwNjAzCitcZGVmXEhFQURJTkdTYWZ0 ZXJ7f0hFQURJTkdTYWZ0ZXIBOTI0LDMwNjM3CitcZGVmXEhFQURJTkdTYWZ0ZXJ7XGxldFxIRUFE SU5HU2hvb2s9XEhFQURJTkdTZG91YmxleH1/SEVBRElOR1Nob29rATkyNCwzMDYzNworXGxldFxI RUFESU5HU2RvdWJsZWFmdGVyPVxIRUFESU5HU2FmdGVyf0hFQURJTkdTZG91YmxlYWZ0ZXIBOTI1 LDMwNjkyCitcZGVmXEhFQURJTkdTZG91YmxleHt/SEVBRElOR1Nkb3VibGV4ATkyNiwzMDczMgor XGRlZlxIRUFESU5HU3NpbmdsZWFmdGVye39IRUFESU5HU3NpbmdsZWFmdGVyATkzMywzMDkyMAor XGRlZlxIRUFESU5HU3NpbmdsZWFmdGVye1xsZXRcSEVBRElOR1Nob29rPVxIRUFESU5HU3Npbmds ZXh9f0hFQURJTkdTaG9vawE5MzMsMzA5MjAKK1xkZWZcSEVBRElOR1NzaW5nbGV4e39IRUFESU5H U3NpbmdsZXgBOTM0LDMwOTgxCitcZGVmXHRvZGF5e390b2RheQE5NDMsMzEyNTYKK1xkZWZcdGhp c3RpdGxle390aGlzdGl0bGUBOTU4LDMxODAxCitcZGVmXHNldHRpdGxle39zZXR0aXRsZQE5NTks MzE4MjYKK1xkZWZcc2V0dGl0bGV6enogIzF7f3NldHRpdGxlenp6ATk2MCwzMTg2MworXGRlZlxz ZXR0aXRsZXp6eiAjMXtcZ2RlZlx0aGlzdGl0bGV7f3RoaXN0aXRsZQE5NjAsMzE4NjMKK1xkZWZc aW50ZXJuYWxCaXRlbXt/aW50ZXJuYWxCaXRlbQE5OTIsMzI3OTMKK1xkZWZcaW50ZXJuYWxCaXRl bXh7f2ludGVybmFsQml0ZW14ATk5MywzMjg0MworXGRlZlxpbnRlcm5hbEJ4aXRlbSAiIzEie39p bnRlcm5hbEJ4aXRlbQE5OTUsMzI4ODgKK1xkZWZcaW50ZXJuYWxCeGl0ZW0gIiMxIntcZGVmXHhp dGVtc3VidG9waXh7f3hpdGVtc3VidG9waXgBOTk1LDMyODg4CitcZGVmXGludGVybmFsQnhpdGVt eCAiIzEie39pbnRlcm5hbEJ4aXRlbXgBOTk2LDMyOTY4CitcZGVmXGludGVybmFsQnhpdGVteCAi IzEie1xkZWZceGl0ZW1zdWJ0b3BpeHt/eGl0ZW1zdWJ0b3BpeAE5OTYsMzI5NjgKK1xkZWZcaW50 ZXJuYWxCa2l0ZW17f2ludGVybmFsQmtpdGVtATk5OCwzMzA0MworXGRlZlxpbnRlcm5hbEJraXRl bXh7f2ludGVybmFsQmtpdGVteAE5OTksMzMwOTUKK1xkZWZca2l0ZW16enogIzF7f2tpdGVtenp6 ATEwMDEsMzMxNDIKK1xkZWZceGl0ZW16enogIzF7f3hpdGVtenp6ATEwMDQsMzMyNDQKK1xkZWZc aXRlbXp6eiAjMXt/aXRlbXp6egExMDA3LDMzMzQ3CitcZGVmXGl0ZW17f2l0ZW0BMTAzNywzNDQx OAorXGRlZlxpdGVteHt/aXRlbXgBMTAzOCwzNDQ2OQorXGRlZlxraXRlbXt/a2l0ZW0BMTAzOSwz NDUyMgorXGRlZlxraXRlbXh7f2tpdGVteAExMDQwLDM0NTc1CitcZGVmXHhpdGVte394aXRlbQEx MDQxLDM0NjMwCitcZGVmXHhpdGVteHt/eGl0ZW14ATEwNDIsMzQ2ODMKK1xkZWZcZGVzY3JpcHRp b257f2Rlc2NyaXB0aW9uATEwNDUsMzQ3OTMKK1xkZWZcdGFibGV7f3RhYmxlATEwNDcsMzQ4NDMK K1xnZGVmXHRhYmxleCAjMV5eTXt/dGFibGV4ATEwNDksMzQ5MjUKK1xkZWZcZnRhYmxle39mdGFi bGUBMTA1MiwzNDk4NworXGdkZWZcZnRhYmxleCAjMV5eTXt/ZnRhYmxleAExMDU0LDM1MDcxCitc ZGVmXEVmdGFibGV7f0VmdGFibGUBMTA1NiwzNTEzMworXGxldFxFdGFibGU9XHJlbGF4fX9FdGFi bGUBMTA1NywzNTE4MAorXGRlZlx2dGFibGV7f3Z0YWJsZQExMDU5LDM1MjAyCitcZ2RlZlx2dGFi bGV4ICMxXl5Ne392dGFibGV4ATEwNjEsMzUyODYKK1xkZWZcRXZ0YWJsZXt/RXZ0YWJsZQExMDYz LDM1MzQ4CitcbGV0XEV0YWJsZT1ccmVsYXh9f0V0YWJsZQExMDY0LDM1Mzk1CitcZGVmXGRvbnRp bmRleCAjMXt/ZG9udGluZGV4ATEwNjYsMzU0MTcKK1xkZWZcZm5pdGVtaW5kZXggIzF7f2ZuaXRl bWluZGV4ATEwNjcsMzU0MzcKK1xkZWZcdnJpdGVtaW5kZXggIzF7f3ZyaXRlbWluZGV4ATEwNjgs MzU0ODIKK1xnZGVmXHRhYmxleSMxIzIgIzMgIzQgIzUgIzYgIzdcZW5kdGFibGV5e390YWJsZXkB MTA3MSwzNTU0MworXGRlZlx0YWJsZXogIzEjMiMzIzQjNSM2e390YWJsZXoBMTA3NCwzNTYzMQor XGRlZlxFZGVzY3JpcHRpb257f0VkZXNjcmlwdGlvbgExMDc3LDM1Njg5CitcbGV0XGl0ZW1pbmRl eD0jMSV/aXRlbWluZGV4ATEwNzgsMzU3MzUKK1xkZWZcaXRlbWZvbnR7f2l0ZW1mb250ATEwODIs MzU4OTAKK1xkZWZcRXRhYmxle39FdGFibGUBMTA5MCwzNjExNgorXGxldFxpdGVtID0gXGludGVy bmFsQml0ZW0gJX9pdGVtATEwOTEsMzYxNjIKK1xsZXRcaXRlbXggPSBcaW50ZXJuYWxCaXRlbXgg JX9pdGVteAExMDkyLDM2MTkxCitcbGV0XGtpdGVtID0gXGludGVybmFsQmtpdGVtICV/a2l0ZW0B MTA5MywzNjIyMgorXGxldFxraXRlbXggPSBcaW50ZXJuYWxCa2l0ZW14ICV/a2l0ZW14ATEwOTQs MzYyNTMKK1xsZXRceGl0ZW0gPSBcaW50ZXJuYWxCeGl0ZW0gJX94aXRlbQExMDk1LDM2Mjg2Citc bGV0XHhpdGVteCA9IFxpbnRlcm5hbEJ4aXRlbXggJX94aXRlbXgBMTA5NiwzNjMxNworXGRlZlxp dGVtaXple39pdGVtaXplATExMDMsMzY0NDAKK1xkZWZcaXRlbWl6ZXp6eiAjMXt/aXRlbWl6ZXp6 egExMTA1LDM2NDc2CitcZGVmXGl0ZW1pemV5ICMxIzJ7f2l0ZW1pemV5ATExMTAsMzY1NzEKK1xk ZWZcaXRlbWNvbnRlbnRze39pdGVtY29udGVudHMBMTEyMCwzNjg1OAorXGxldFxpdGVtPVxpdGVt aXplaXRlbX1/aXRlbQExMTIxLDM2ODgxCitcZGVmXGJ1bGxldHt/YnVsbGV0ATExMjMsMzY5MDYK K1xkZWZcbWludXN7f21pbnVzATExMjQsMzY5MzMKK1xkZWZcZnJlbmNoc3BhY2luZ3t/ZnJlbmNo c3BhY2luZwExMTI4LDM3MDQxCitcZGVmXHNwbGl0b2ZmIzEjMlxlbmRtYXJre39zcGxpdG9mZgEx MTM0LDM3MjY2CitcZGVmXHNwbGl0b2ZmIzEjMlxlbmRtYXJre1xkZWZcZmlyc3R7f2ZpcnN0ATEx MzQsMzcyNjYKK1xkZWZcc3BsaXRvZmYjMSMyXGVuZG1hcmt7XGRlZlxmaXJzdHsjMX1cZGVmXHJl c3R7f3Jlc3QBMTEzNCwzNzI2NgorXGRlZlxlbnVtZXJhdGV7f2VudW1lcmF0ZQExMTQwLDM3NDk2 CitcZGVmXGVudW1lcmF0ZXp6eiAjMXt/ZW51bWVyYXRlenp6ATExNDEsMzc1MzUKK1xkZWZcZW51 bWVyYXRleSAjMSAjMlxlbmRlbnVtZXJhdGV5e39lbnVtZXJhdGV5ATExNDIsMzc1ODgKKyAgXGRl Zlx0aGVhcmd7f3RoZWFyZwExMTQ2LDM3NzM1CisgIFxpZnhcdGhlYXJnXGVtcHR5IFxkZWZcdGhl YXJne390aGVhcmcBMTE0NywzNzc1NAorXGRlZlxudW1lcmljZW51bWVyYXRle39udW1lcmljZW51 bWVyYXRlATExODQsMzkwODgKK1xkZWZcbG93ZXJjYXNlZW51bWVyYXRle39sb3dlcmNhc2VlbnVt ZXJhdGUBMTE5MCwzOTIxOAorXGRlZlx1cHBlcmNhc2VlbnVtZXJhdGV7f3VwcGVyY2FzZWVudW1l cmF0ZQExMjAzLDM5NTY1CitcZGVmXHN0YXJ0ZW51bWVyYXRpb24jMXt/c3RhcnRlbnVtZXJhdGlv bgExMjE5LDQwMDU1CitcZGVmXGFscGhhZW51bWVyYXRle39hbHBoYWVudW1lcmF0ZQExMjI3LDQw MjM3CitcZGVmXGNhcHNlbnVtZXJhdGV7f2NhcHNlbnVtZXJhdGUBMTIyOCw0MDI3MgorXGRlZlxF YWxwaGFlbnVtZXJhdGV7f0VhbHBoYWVudW1lcmF0ZQExMjI5LDQwMzA2CitcZGVmXEVjYXBzZW51 bWVyYXRle39FY2Fwc2VudW1lcmF0ZQExMjMwLDQwMzQwCitcZGVmXGl0ZW1pemVpdGVte39pdGVt aXplaXRlbQExMjM0LDQwNDIwCit7XGxldFxwYXI9XGVuZGdyYWYgXHNtYWxsYnJlYWt9f3BhcgEx MjM2LDQwNDYwCitcZ2RlZlxuZXd3cml0ZXt/bmV3d3JpdGUBMTI0OSw0MDg0MQorXGRlZlxuZXdp bmRleCAjMXt/bmV3aW5kZXgBMTI1OSw0MTI3NworXGV4cGFuZGFmdGVyXHhkZWZcY3NuYW1lIzFp bmRleFxlbmRjc25hbWV7f2NzbmFtZQExMjYyLDQxNDM5CitcZGVmXGRlZmluZGV4e39kZWZpbmRl eAExMjY4LDQxNTY2CitcZGVmXG5ld2NvZGVpbmRleCAjMXt/bmV3Y29kZWluZGV4ATEyNzIsNDE2 NzQKK1xleHBhbmRhZnRlclx4ZGVmXGNzbmFtZSMxaW5kZXhcZW5kY3NuYW1le39jc25hbWUBMTI3 NSw0MTg0MAorXGRlZlxkZWZjb2RlaW5kZXh7f2RlZmNvZGVpbmRleAExMjc5LDQxOTM0CitcZGVm XHN5bmluZGV4ICMxICMyIHt/c3luaW5kZXgBMTI4Myw0MjExNAorXGV4cGFuZGFmdGVyXGxldFxl eHBhbmRhZnRlclxzeW5pbmRleGZvb1xleHBhbmRhZnRlcj1cY3NuYW1lIzJpbmRmaWxlXGVuZGNz bmFtZX9leHBhbmRhZnRlcgExMjg0LDQyMTM3CitcZXhwYW5kYWZ0ZXJcbGV0XGNzbmFtZSMxaW5k ZmlsZVxlbmRjc25hbWU9XHN5bmluZGV4Zm9vf2NzbmFtZQExMjg1LDQyMjE3CitcZXhwYW5kYWZ0 ZXJceGRlZlxjc25hbWUjMWluZGV4XGVuZGNzbmFtZXt/Y3NuYW1lATEyODYsNDIyNzMKK1xkZWZc c3luY29kZWluZGV4ICMxICMyIHt/c3luY29kZWluZGV4ATEyOTIsNDI0NTQKK1xleHBhbmRhZnRl clxsZXRcZXhwYW5kYWZ0ZXJcc3luaW5kZXhmb29cZXhwYW5kYWZ0ZXI9XGNzbmFtZSMyaW5kZmls ZVxlbmRjc25hbWV/ZXhwYW5kYWZ0ZXIBMTI5Myw0MjQ4MQorXGV4cGFuZGFmdGVyXGxldFxjc25h bWUjMWluZGZpbGVcZW5kY3NuYW1lPVxzeW5pbmRleGZvb39jc25hbWUBMTI5NCw0MjU2MQorXGV4 cGFuZGFmdGVyXHhkZWZcY3NuYW1lIzFpbmRleFxlbmRjc25hbWV7f2NzbmFtZQExMjk1LDQyNjE3 CitcZGVmXGRvaW5kZXgjMXt/ZG9pbmRleAExMzA5LDQzMTMzCitcZGVmXGRvaW5kZXgjMXtcZWRl ZlxpbmRleG5hbWV7f2luZGV4bmFtZQExMzA5LDQzMTMzCitcZGVmXHNpbmdsZWluZGV4ZXIgIzF7 f3NpbmdsZWluZGV4ZXIBMTMxMCw0MzE5MgorXGRlZlxzaW5nbGVpbmRleGVyICMxe1xkb2luZHtc aW5kZXhuYW1lfX9uYW1lATEzMTAsNDMxOTIKK1xkZWZcZG9jb2RlaW5kZXgjMXt/ZG9jb2RlaW5k ZXgBMTMxMyw0MzMwNAorXGRlZlxkb2NvZGVpbmRleCMxe1xlZGVmXGluZGV4bmFtZXt/aW5kZXhu YW1lATEzMTMsNDMzMDQKK1xkZWZcc2luZ2xlY29kZWluZGV4ZXIgIzF7f3NpbmdsZWNvZGVpbmRl eGVyATEzMTQsNDMzNzEKK1xkZWZcc2luZ2xlY29kZWluZGV4ZXIgIzF7XGRvaW5ke1xpbmRleG5h bWV9f25hbWUBMTMxNCw0MzM3MQorXGRlZlxpbmRleGR1bW1pZXN7f2luZGV4ZHVtbWllcwExMzE2 LDQzNDI5CitcZGVmXF97f18BMTMxNyw0MzQ0OQorXGRlZlx3e393ATEzMTgsNDM0NzcKK1xkZWZc YmZ7f2JmATEzMTksNDM1MDQKK1xkZWZccm17f3JtATEzMjAsNDM1MzMKK1xkZWZcc2x7f3NsATEz MjEsNDM1NjIKK1xkZWZcc2Z7f3NmATEzMjIsNDM1OTEKK1xkZWZcdHR7f3R0ATEzMjMsNDM2MTkK K1xkZWZcZ3Rye39ndHIBMTMyNCw0MzY0NworXGRlZlxsZXNze39sZXNzATEzMjUsNDM2NzcKK1xk ZWZcaGF0e39oYXQBMTMyNiw0MzcwOQorXGRlZlxjaGFye39jaGFyATEzMjcsNDM3MzkKK1xkZWZc VGVYe39UZVgBMTMyOCw0Mzc3MQorXGRlZlxkb3Rze39kb3RzATEzMjksNDM4MDEKK1xkZWZcY29w eXJpZ2h0e39jb3B5cmlnaHQBMTMzMCw0MzgzNAorXGRlZlx0Y2xvc2UjIzF7f3RjbG9zZQExMzMx LDQzODc3CitcZGVmXGNvZGUjIzF7f2NvZGUBMTMzMiw0MzkyMgorXGRlZlxzYW1wIyMxe39zYW1w ATEzMzMsNDM5NjMKK1xkZWZcdCMjMXt/dAExMzM0LDQ0MDA0CitcZGVmXHIjIzF7f3IBMTMzNSw0 NDAzOQorXGRlZlxpIyMxe39pATEzMzYsNDQwNzQKK1xkZWZcYiMjMXt/YgExMzM3LDQ0MTA5Citc ZGVmXGNpdGUjIzF7f2NpdGUBMTMzOCw0NDE0NAorXGRlZlxrZXkjIzF7f2tleQExMzM5LDQ0MTg1 CitcZGVmXGZpbGUjIzF7f2ZpbGUBMTM0MCw0NDIyNAorXGRlZlx2YXIjIzF7f3ZhcgExMzQxLDQ0 MjY1CitcZGVmXGtiZCMjMXt/a2JkATEzNDIsNDQzMDQKK1xkZWZcaW5kZXhkdW1teWZvbnQjMXt/ aW5kZXhkdW1teWZvbnQBMTM0Nyw0NDQ2MAorXGRlZlxpbmRleGR1bW15dGV4e39pbmRleGR1bW15 dGV4ATEzNDgsNDQ0ODYKK1xkZWZcaW5kZXhkdW1teWRvdHN7f2luZGV4ZHVtbXlkb3RzATEzNDks NDQ1MTAKK1xkZWZcaW5kZXhub2ZvbnRze39pbmRleG5vZm9udHMBMTM1MSw0NDUzNgorXGxldFx3 PVxpbmRleGR1bW15Zm9udH93ATEzNTIsNDQ1NTYKIFxsZXRcdz1caW5kZXhkdW1teWZvbnR/ZHVt bXlmb250ATEzNTIsNDQ1NTYKK1xsZXRcdD1caW5kZXhkdW1teWZvbnR/dAExMzUzLDQ0NTc5CiBc bGV0XHQ9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9udAExMzUzLDQ0NTc5CitcbGV0XHI9XGluZGV4 ZHVtbXlmb250f3IBMTM1NCw0NDYwMgogXGxldFxyPVxpbmRleGR1bW15Zm9udH9kdW1teWZvbnQB MTM1NCw0NDYwMgorXGxldFxpPVxpbmRleGR1bW15Zm9udH9pATEzNTUsNDQ2MjUKIFxsZXRcaT1c aW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNTUsNDQ2MjUKK1xsZXRcYj1caW5kZXhkdW1teWZv bnR/YgExMzU2LDQ0NjQ4CiBcbGV0XGI9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9udAExMzU2LDQ0 NjQ4CitcbGV0XGVtcGg9XGluZGV4ZHVtbXlmb250f2VtcGgBMTM1Nyw0NDY3MQogXGxldFxlbXBo PVxpbmRleGR1bW15Zm9udH9kdW1teWZvbnQBMTM1Nyw0NDY3MQorXGxldFxzdHJvbmc9XGluZGV4 ZHVtbXlmb250f3N0cm9uZwExMzU4LDQ0Njk3CiBcbGV0XHN0cm9uZz1caW5kZXhkdW1teWZvbnR/ ZHVtbXlmb250ATEzNTgsNDQ2OTcKLVxsZXRcY2l0ZT1caW5kZXhkdW1teWZvbnR/PVxpbmRleGR1 bW15Zm9udAExMzU5LDQ0NzI1CitcbGV0XGNpdGU9XGluZGV4ZHVtbXlmb250f2NpdGUBMTM1OSw0 NDcyNQorXGxldFxjaXRlPVxpbmRleGR1bW15Zm9udH9kdW1teWZvbnQBMTM1OSw0NDcyNQorXGxl dFxzYz1caW5kZXhkdW1teWZvbnR/c2MBMTM2MCw0NDc1MQogXGxldFxzYz1caW5kZXhkdW1teWZv bnR/ZHVtbXlmb250ATEzNjAsNDQ3NTEKK1xsZXRcdGNsb3NlPVxpbmRleGR1bW15Zm9udH90Y2xv c2UBMTM2NCw0NDkyMwogXGxldFx0Y2xvc2U9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9udAExMzY0 LDQ0OTIzCitcbGV0XGNvZGU9XGluZGV4ZHVtbXlmb250f2NvZGUBMTM2NSw0NDk1MQogXGxldFxj b2RlPVxpbmRleGR1bW15Zm9udH9kdW1teWZvbnQBMTM2NSw0NDk1MQorXGxldFxmaWxlPVxpbmRl eGR1bW15Zm9udH9maWxlATEzNjYsNDQ5NzcKIFxsZXRcZmlsZT1caW5kZXhkdW1teWZvbnR/ZHVt bXlmb250ATEzNjYsNDQ5NzcKK1xsZXRcc2FtcD1caW5kZXhkdW1teWZvbnR/c2FtcAExMzY3LDQ1 MDAzCiBcbGV0XHNhbXA9XGluZGV4ZHVtbXlmb250f2R1bW15Zm9udAExMzY3LDQ1MDAzCitcbGV0 XGtiZD1caW5kZXhkdW1teWZvbnR/a2JkATEzNjgsNDUwMjkKIFxsZXRca2JkPVxpbmRleGR1bW15 Zm9udH9kdW1teWZvbnQBMTM2OCw0NTAyOQorXGxldFxrZXk9XGluZGV4ZHVtbXlmb250f2tleQEx MzY5LDQ1MDU0CiBcbGV0XGtleT1caW5kZXhkdW1teWZvbnR/ZHVtbXlmb250ATEzNjksNDUwNTQK K1xsZXRcdmFyPVxpbmRleGR1bW15Zm9udH92YXIBMTM3MCw0NTA3OQogXGxldFx2YXI9XGluZGV4 ZHVtbXlmb250f2R1bW15Zm9udAExMzcwLDQ1MDc5CitcbGV0XFRlWD1caW5kZXhkdW1teXRleH9U ZVgBMTM3MSw0NTEwNAogXGxldFxUZVg9XGluZGV4ZHVtbXl0ZXh/ZHVtbXl0ZXgBMTM3MSw0NTEw NAorXGxldFxkb3RzPVxpbmRleGR1bW15ZG90c39kb3RzATEzNzIsNDUxMjgKIFxsZXRcZG90cz1c aW5kZXhkdW1teWRvdHN/ZHVtbXlkb3RzATEzNzIsNDUxMjgKLVxsZXRcaW5kZXhiYWNrc2xhc2g9 MCAgJW92ZXJyaWRkZW4gZHVyaW5nIFxwcmludGluZGV4Ln9iYWNrc2xhc2g9MAExMzgyLDQ1Mzgw Ci1cZGVmXGRvaW5kICMxIzJ7f1xkb2luZAExMzg0LDQ1NDM2CitcbGV0XGluZGV4YmFja3NsYXNo PTAgICVvdmVycmlkZGVuIGR1cmluZyBccHJpbnRpbmRleC5/aW5kZXhiYWNrc2xhc2gBMTM4Miw0 NTM4MAorXGRlZlxkb2luZCAjMSMye39kb2luZAExMzg0LDQ1NDM2CiB7XGluZGV4ZHVtbWllcyAl IE11c3QgZG8gdGhpcyBoZXJlLCBzaW5jZSBcYmYsIGV0YyBleHBhbmQgYXQgdGhpcyBzdGFnZX9k dW1taWVzATEzODYsNDU0NzkKLVxkZWZccmF3YmFja3NsYXNoeHh7f1xyYXdiYWNrc2xhc2h4eAEx Mzg5LDQ1NjE5Cit7XGxldFxmb2xpbz0wJSBFeHBhbmQgYWxsIG1hY3JvcyBub3cgRVhDRVBUIFxm b2xpb39mb2xpbwExMzg4LDQ1NTY4CitcZGVmXHJhd2JhY2tzbGFzaHh4e39yYXdiYWNrc2xhc2h4 eAExMzg5LDQ1NjE5CitcZGVmXHJhd2JhY2tzbGFzaHh4e1xpbmRleGJhY2tzbGFzaH1/YmFja3Ns YXNoATEzODksNDU2MTkKIHtcaW5kZXhub2ZvbnRzf25vZm9udHMBMTM5NCw0NTg4MQotXGRlZlxk b3N1YmluZCAjMSMyIzN7f1xkb3N1YmluZAExNDA1LDQ2MTkyCitceGRlZlx0ZW1wMXt/dGVtcDEB MTM5NSw0NTg5NgorXGVkZWZcdGVtcHt/dGVtcAExMzk5LDQ2MDY4CitcZGVmXGRvc3ViaW5kICMx IzIjM3t/ZG9zdWJpbmQBMTQwNSw0NjE5Mgoge1xpbmRleGR1bW1pZXMgJSBNdXN0IGRvIHRoaXMg aGVyZSwgc2luY2UgXGJmLCBldGMgZXhwYW5kIGF0IHRoaXMgc3RhZ2V/ZHVtbWllcwExNDA3LDQ2 MjQwCi1cZGVmXHJhd2JhY2tzbGFzaHh4e39ccmF3YmFja3NsYXNoeHgBMTQxMCw0NjM0NAore1xs ZXRcZm9saW89MCV/Zm9saW8BMTQwOSw0NjMyOQorXGRlZlxyYXdiYWNrc2xhc2h4eHt/cmF3YmFj a3NsYXNoeHgBMTQxMCw0NjM0NAorXGRlZlxyYXdiYWNrc2xhc2h4eHtcaW5kZXhiYWNrc2xhc2h9 f2JhY2tzbGFzaAExNDEwLDQ2MzQ0CiB7XGluZGV4bm9mb250c39ub2ZvbnRzATE0MTQsNDY0OTgK LVxkZWZcZmluZGV4IHt/XGZpbmRleAExNDQzLDQ3NDI5Ci1cZGVmXGtpbmRleCB7f1xraW5kZXgB MTQ0NCw0NzQ1MgotXGRlZlxjaW5kZXgge39cY2luZGV4ATE0NDUsNDc0NzUKLVxkZWZcdmluZGV4 IHt/XHZpbmRleAExNDQ2LDQ3NDk4Ci1cZGVmXHRpbmRleCB7f1x0aW5kZXgBMTQ0Nyw0NzUyMQot XGRlZlxwaW5kZXgge39ccGluZGV4ATE0NDgsNDc1NDQKLVxkZWZcY2luZGV4c3ViIHt/XGNpbmRl eHN1YgExNDUwLDQ3NTY4Ci1cZGVmXHByaW50aW5kZXh7f1xwcmludGluZGV4ATE0NjIsNDc4OTUK LVxkZWZcZG9wcmludGluZGV4IzF7f1xkb3ByaW50aW5kZXgBMTQ2NCw0NzkzNgotICBcZGVmXGlu ZGV4YmFja3NsYXNoe39caW5kZXhiYWNrc2xhc2gBMTQ4MSw0ODQyMQorXHhkZWZcdGVtcDF7f3Rl bXAxATE0MTUsNDY1MTMKK1xlZGVmXHRlbXB7f3RlbXABMTQxOSw0NjY4OAorXGRlZlxmaW5kZXgg e39maW5kZXgBMTQ0Myw0NzQyOQorXGRlZlxraW5kZXgge39raW5kZXgBMTQ0NCw0NzQ1MgorXGRl ZlxjaW5kZXgge39jaW5kZXgBMTQ0NSw0NzQ3NQorXGRlZlx2aW5kZXgge392aW5kZXgBMTQ0Niw0 NzQ5OAorXGRlZlx0aW5kZXgge390aW5kZXgBMTQ0Nyw0NzUyMQorXGRlZlxwaW5kZXgge39waW5k ZXgBMTQ0OCw0NzU0NAorXGRlZlxjaW5kZXhzdWIge39jaW5kZXhzdWIBMTQ1MCw0NzU2OAorXGdk ZWZcY2luZGV4c3ViICIjMSIgIzJeXk17f2NpbmRleHN1YgExNDUyLDQ3NjMxCitcZGVmXHByaW50 aW5kZXh7f3ByaW50aW5kZXgBMTQ2Miw0Nzg5NQorXGRlZlxkb3ByaW50aW5kZXgjMXt/ZG9wcmlu dGluZGV4ATE0NjQsNDc5MzYKKyAgXGRlZlxpbmRleGJhY2tzbGFzaHt/aW5kZXhiYWNrc2xhc2gB MTQ4MSw0ODQyMQogICBcaW5kZXhmb250c1xybSBcdG9sZXJhbmNlPTk1MDAgXGFkdmFuY2VcYmFz ZWxpbmVza2lwIC0xcHR/Zm9udHNccm0BMTQ4Miw0ODQ2MAotXGRlZlxpbml0aWFsICMxe39caW5p dGlhbAExNTE3LDQ5NTMyCi1cZGVmXGVudHJ5ICMxIzJ7f1xlbnRyeQExNTIzLDQ5NzM5CitcZGVm XGluaXRpYWwgIzF7f2luaXRpYWwBMTUxNyw0OTUzMgore1xsZXRcdGVudHQ9XHNlY3R0IFxsZXRc dHQ9XHNlY3R0IFxsZXRcc2Y9XHNlY3R0f3RlbnR0ATE1MTgsNDk1NTAKK3tcbGV0XHRlbnR0PVxz ZWN0dCBcbGV0XHR0PVxzZWN0dCBcbGV0XHNmPVxzZWN0dH90dAExNTE4LDQ5NTUwCit7XGxldFx0 ZW50dD1cc2VjdHQgXGxldFx0dD1cc2VjdHQgXGxldFxzZj1cc2VjdHR/c2YBMTUxOCw0OTU1MAor XGRlZlxlbnRyeSAjMSMye39lbnRyeQExNTIzLDQ5NzM5CiAgIFxudWxsXG5vYnJlYWtcaW5kZXhk b3RmaWxsICUgSGF2ZSBsZWFkZXJzIGJlZm9yZSB0aGUgcGFnZSBudW1iZXIuf2RvdGZpbGwBMTU0 MCw1MDM4NgotXGRlZlxpbmRleGRvdGZpbGx7f1xpbmRleGRvdGZpbGwBMTU0OSw1MDcxNAotXGRl ZlxwcmltYXJ5ICMxe39ccHJpbWFyeQExNTUyLDUwODIwCi1cZGVmXHNlY29uZGFyeSAjMSMye39c c2Vjb25kYXJ5ATE1NTYsNTA5MDIKK1xkZWZcaW5kZXhkb3RmaWxse39pbmRleGRvdGZpbGwBMTU0 OSw1MDcxNAorXGRlZlxwcmltYXJ5ICMxe39wcmltYXJ5ATE1NTIsNTA4MjAKK1xkZWZcc2Vjb25k YXJ5ICMxIzJ7f3NlY29uZGFyeQExNTU2LDUwOTAyCiBcbm9pbmRlbnRcaHNraXBcc2Vjb25kYXJ5 aW5kZW50XGhib3h7IzF9XGluZGV4ZG90ZmlsbCAjMlxwYXJ/ZG90ZmlsbAExNTU5LDUwOTg0CiBc bmV3Ym94XHBhcnRpYWxwYWdlf2lhbHBhZ2UBMTU2Niw1MTE1NwotXGRlZlxiZWdpbmRvdWJsZWNv bHVtbnN7f1xiZWdpbmRvdWJsZWNvbHVtbnMBMTU3Miw1MTMxNQotICBcb3V0cHV0PXtcZ2xvYmFs XHNldGJveFxwYXJ0aWFscGFnZT1/aWFscGFnZT0BMTU3Myw1MTM1MQotXGRlZlxlbmRkb3VibGVj b2x1bW5ze39cZW5kZG91YmxlY29sdW1ucwExNTc3LDUxNTM5Ci1cZGVmXGRvdWJsZWNvbHVtbm91 dHt/XGRvdWJsZWNvbHVtbm91dAExNTgwLDUxNjI0CitcZGVmXGJlZ2luZG91YmxlY29sdW1uc3t/ YmVnaW5kb3VibGVjb2x1bW5zATE1NzIsNTEzMTUKKyAgXG91dHB1dD17XGdsb2JhbFxzZXRib3hc cGFydGlhbHBhZ2U9f2lhbHBhZ2UBMTU3Myw1MTM1MQorXGRlZlxlbmRkb3VibGVjb2x1bW5ze39l bmRkb3VibGVjb2x1bW5zATE1NzcsNTE1MzkKK1xkZWZcZG91YmxlY29sdW1ub3V0e39kb3VibGVj b2x1bW5vdXQBMTU4MCw1MTYyNAogICBcZGltZW5APVxwYWdlaGVpZ2h0IFxhZHZhbmNlXGRpbWVu QCBieS1caHRccGFydGlhbHBhZ2V/aWFscGFnZQExNTgxLDUxNjkzCi1cZGVmXHBhZ2Vzb2Zhcnt/ XHBhZ2Vzb2ZhcgExNTg0LDUxODcxCi1cZGVmXGJhbGFuY2Vjb2x1bW5ze39cYmFsYW5jZWNvbHVt bnMBMTU4OCw1MjEwOAorXGRlZlxwYWdlc29mYXJ7f3BhZ2Vzb2ZhcgExNTg0LDUxODcxCitcZGVm XHBhZ2Vzb2ZhcntcdW52Ym94XHBhcnRpYWxwYWdlICV/aWFscGFnZQExNTg0LDUxODcxCitcZGVm XGJhbGFuY2Vjb2x1bW5ze39iYWxhbmNlY29sdW1ucwExNTg4LDUyMTA4CiAgIFxhdmFpbGRpbWVu QD1ccGFnZWhlaWdodCBcYWR2YW5jZVxhdmFpbGRpbWVuQCBieS1caHRccGFydGlhbHBhZ2V/aWFs cGFnZQExNTk0LDUyMjc5CiAgICAgIFxkaW1lbkA9XHBhZ2VoZWlnaHQgXGFkdmFuY2VcZGltZW5A IGJ5LVxodFxwYXJ0aWFscGFnZX9pYWxwYWdlATE2MDAsNTI1NDAKIFxuZXdjb3VudCBcYXBwZW5k aXhubyAgXGFwcGVuZGl4bm8gPSBgXEB/bm8BMTYyNyw1MzQ0NQotXGRlZlxhcHBlbmRpeGxldHRl cnt/XGFwcGVuZGl4bGV0dGVyATE2MjgsNTM0ODYKLVxkZWZcb3BlbmNvbnRlbnRze39cb3BlbmNv bnRlbnRzATE2MzIsNTM1ODkKLVxkZWZcdGhpc2NoYXB0ZXJ7f1x0aGlzY2hhcHRlcgExNjM3LDUz NzcwCi1cZGVmXHNlY2NoZWNrIzF7f1xzZWNjaGVjawExNjM4LDUzODA4Ci1cZGVmXGNoYXB0ZXJu b2ZvbnRze39cY2hhcHRlcm5vZm9udHMBMTY0Myw1MzkxMgotXGRlZlxyZXN1bHR7f1xyZXN1bHQB MTY0Niw1Mzk4NwotXGRlZlxlcXVpdnt/XGVxdWl2ATE2NDcsNTQwMjIKLVxkZWZcZXhwYW5zaW9u e39cZXhwYW5zaW9uATE2NDgsNTQwNTUKLVxkZWZccHJpbnR7f1xwcmludAExNjQ5LDU0MDk2Ci1c ZGVmXFRlWHt/XFRlWAExNjUwLDU0MTI5Ci1cZGVmXGRvdHN7f1xkb3RzATE2NTEsNTQxNTgKLVxk ZWZcY29weXJpZ2h0e39cY29weXJpZ2h0ATE2NTIsNTQxODkKLVxkZWZcdHR7f1x0dAExNjUzLDU0 MjMwCi1cZGVmXGJme39cYmYBMTY1NCw1NDI1NwotXGRlZlx3e39cdwExNjU1LDU0Mjg1Ci1cZGVm XGxlc3N7f1xsZXNzATE2NTYsNTQzMTAKLVxkZWZcZ3Rye39cZ3RyATE2NTcsNTQzNDEKLVxkZWZc aGF0e39caGF0ATE2NTgsNTQzNzAKLVxkZWZcY2hhcnt/XGNoYXIBMTY1OSw1NDM5OQotXGRlZlx0 Y2xvc2UjIzF7f1x0Y2xvc2UBMTY2MCw1NDQzMAotXGRlZlxjb2RlIyMxe39cY29kZQExNjYxLDU0 NDc0Ci1cZGVmXHNhbXAjIzF7f1xzYW1wATE2NjIsNTQ1MTQKLVxkZWZcciMjMXt/XHIBMTY2Myw1 NDU1NAotXGRlZlxiIyMxe39cYgExNjY0LDU0NTg4Ci1cZGVmXGtleSMjMXt/XGtleQExNjY1LDU0 NjIyCi1cZGVmXGZpbGUjIzF7f1xmaWxlATE2NjYsNTQ2NjAKLVxkZWZca2JkIyMxe39ca2JkATE2 NjcsNTQ3MDAKLVxkZWZcaSMjMXt/XGkBMTY2OSw1NDgwOAotXGRlZlxjaXRlIyMxe39cY2l0ZQEx NjcwLDU0ODQyCi1cZGVmXHZhciMjMXt/XHZhcgExNjcxLDU0ODgyCi1cZGVmXGVtcGgjIzF7f1xl bXBoATE2NzIsNTQ5MjAKLVxkZWZcZGZuIyMxe39cZGZuATE2NzMsNTQ5NjAKLVxkZWZcdGhpc2No YXB0ZXJuYW1le39cdGhpc2NoYXB0ZXJuYW1lATE2NzYsNTUwMDEKLVxvdXRlclxkZWZcY2hhcHRl cnt/XGNoYXB0ZXIBMTY3Nyw1NTA0MAotXGRlZlxjaGFwdGVyenp6ICMxe39cY2hhcHRlcnp6egEx Njc4LDU1MDgxCi17XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzJQExNjg3LDU1NDc3Ci1cZ2xvYmFs XGxldFxzZWN0aW9uID0gXG51bWJlcmVkc2Vjfz0BMTY5Miw1NTYzMAotXGdsb2JhbFxsZXRcc3Vi c2VjdGlvbiA9IFxudW1iZXJlZHN1YnNlY389ATE2OTMsNTU2NjUKLVxnbG9iYWxcbGV0XHN1YnN1 YnNlY3Rpb24gPSBcbnVtYmVyZWRzdWJzdWJzZWN/PQExNjk0LDU1NzA2Ci1cb3V0ZXJcZGVmXGFw cGVuZGl4e39cYXBwZW5kaXgBMTY5Nyw1NTc1NwotXGRlZlxhcHBlbmRpeHp6eiAjMXt/XGFwcGVu ZGl4enp6ATE2OTgsNTU4MDAKK1xuZXdjb3VudCBcYXBwZW5kaXhubyAgXGFwcGVuZGl4bm8gPSBg XEB/bm8BMTYyNyw1MzQ0NQorXGRlZlxhcHBlbmRpeGxldHRlcnt/YXBwZW5kaXhsZXR0ZXIBMTYy OCw1MzQ4NgorXGRlZlxhcHBlbmRpeGxldHRlcntcY2hhclx0aGVcYXBwZW5kaXhub31/bm8BMTYy OCw1MzQ4NgorXGRlZlxvcGVuY29udGVudHN7f29wZW5jb250ZW50cwExNjMyLDUzNTg5CitcZGVm XHRoaXNjaGFwdGVye390aGlzY2hhcHRlcgExNjM3LDUzNzcwCitcZGVmXHRoaXNjaGFwdGVye30g XGRlZlx0aGlzc2VjdGlvbnt/dGhpc3NlY3Rpb24BMTYzNyw1Mzc3MAorXGRlZlxzZWNjaGVjayMx e39zZWNjaGVjawExNjM4LDUzODA4CitcZGVmXGNoYXB0ZXJub2ZvbnRze39jaGFwdGVybm9mb250 cwExNjQzLDUzOTEyCitcbGV0XHJhd2JhY2tzbGFzaD1ccmVsYXglf3Jhd2JhY2tzbGFzaAExNjQ0 LDUzOTM0CitcbGV0XGZyZW5jaHNwYWNpbmc9XHJlbGF4JX9mcmVuY2hzcGFjaW5nATE2NDUsNTM5 NjAKK1xkZWZccmVzdWx0e39yZXN1bHQBMTY0Niw1Mzk4NworXGRlZlxlcXVpdnt/ZXF1aXYBMTY0 Nyw1NDAyMgorXGRlZlxleHBhbnNpb257f2V4cGFuc2lvbgExNjQ4LDU0MDU1CitcZGVmXHByaW50 e39wcmludAExNjQ5LDU0MDk2CitcZGVmXFRlWHt/VGVYATE2NTAsNTQxMjkKK1xkZWZcZG90c3t/ ZG90cwExNjUxLDU0MTU4CitcZGVmXGNvcHlyaWdodHt/Y29weXJpZ2h0ATE2NTIsNTQxODkKK1xk ZWZcdHR7f3R0ATE2NTMsNTQyMzAKK1xkZWZcYmZ7f2JmATE2NTQsNTQyNTcKK1xkZWZcd3t/dwEx NjU1LDU0Mjg1CitcZGVmXGxlc3N7f2xlc3MBMTY1Niw1NDMxMAorXGRlZlxndHJ7f2d0cgExNjU3 LDU0MzQxCitcZGVmXGhhdHt/aGF0ATE2NTgsNTQzNzAKK1xkZWZcY2hhcnt/Y2hhcgExNjU5LDU0 Mzk5CitcZGVmXHRjbG9zZSMjMXt/dGNsb3NlATE2NjAsNTQ0MzAKK1xkZWZcY29kZSMjMXt/Y29k ZQExNjYxLDU0NDc0CitcZGVmXHNhbXAjIzF7f3NhbXABMTY2Miw1NDUxNAorXGRlZlxyIyMxe39y ATE2NjMsNTQ1NTQKK1xkZWZcYiMjMXt/YgExNjY0LDU0NTg4CitcZGVmXGtleSMjMXt/a2V5ATE2 NjUsNTQ2MjIKK1xkZWZcZmlsZSMjMXt/ZmlsZQExNjY2LDU0NjYwCitcZGVmXGtiZCMjMXt/a2Jk ATE2NjcsNTQ3MDAKK1xkZWZcaSMjMXt/aQExNjY5LDU0ODA4CitcZGVmXGNpdGUjIzF7f2NpdGUB MTY3MCw1NDg0MgorXGRlZlx2YXIjIzF7f3ZhcgExNjcxLDU0ODgyCitcZGVmXGVtcGgjIzF7f2Vt cGgBMTY3Miw1NDkyMAorXGRlZlxkZm4jIzF7f2RmbgExNjczLDU0OTYwCitcZGVmXHRoaXNjaGFw dGVybmFtZXt/dGhpc2NoYXB0ZXJuYW1lATE2NzYsNTUwMDEKK1xvdXRlclxkZWZcY2hhcHRlcnt/ Y2hhcHRlcgExNjc3LDU1MDQwCitcb3V0ZXJcZGVmXGNoYXB0ZXJ7XHBhcnNlYXJnXGNoYXB0ZXJ6 enp9f3p6egExNjc3LDU1MDQwCitcZGVmXGNoYXB0ZXJ6enogIzF7f2NoYXB0ZXJ6enoBMTY3OCw1 NTA4MQorXGdkZWZcdGhpc3NlY3Rpb257f3RoaXNzZWN0aW9uATE2ODIsNTUyNDYKK1xnZGVmXHRo aXNjaGFwdGVybmFtZXt/dGhpc2NoYXB0ZXJuYW1lATE2ODMsNTUyNjkKK1x4ZGVmXHRoaXNjaGFw dGVye390aGlzY2hhcHRlcgExNjg2LDU1NDEwCit7XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzATE2 ODcsNTU0NzcKK1xlZGVmXHRlbXB7f3RlbXABMTY4OCw1NTQ5NQorXGdsb2JhbFxsZXRcc2VjdGlv biA9IFxudW1iZXJlZHNlY39zZWN0aW9uATE2OTIsNTU2MzAKK1xnbG9iYWxcbGV0XHN1YnNlY3Rp b24gPSBcbnVtYmVyZWRzdWJzZWN/c3Vic2VjdGlvbgExNjkzLDU1NjY1CitcZ2xvYmFsXGxldFxz dWJzdWJzZWN0aW9uID0gXG51bWJlcmVkc3Vic3Vic2Vjf3N1YnN1YnNlY3Rpb24BMTY5NCw1NTcw NgorXG91dGVyXGRlZlxhcHBlbmRpeHt/YXBwZW5kaXgBMTY5Nyw1NTc1NworXG91dGVyXGRlZlxh cHBlbmRpeHtccGFyc2VhcmdcYXBwZW5kaXh6enp9f3p6egExNjk3LDU1NzU3CitcZGVmXGFwcGVu ZGl4enp6ICMxe39hcHBlbmRpeHp6egExNjk4LDU1ODAwCiBcZ2xvYmFsXGFkdmFuY2UgXGFwcGVu ZGl4bm8gYnkgMSBcbWVzc2FnZXt/bm8BMTcwMCw1NTg3NworXGdsb2JhbFxhZHZhbmNlIFxhcHBl bmRpeG5vIGJ5IDEgXG1lc3NhZ2V7QXBwZW5kaXggXGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIBMTcw MCw1NTg3NwogXGNoYXBtYWNybyB7IzF9e0FwcGVuZGl4IFxhcHBlbmRpeGxldHRlcn1/bGV0dGVy ATE3MDEsNTU5NDYKK1xnZGVmXHRoaXNzZWN0aW9ue390aGlzc2VjdGlvbgExNzAyLDU1OTg5Citc Z2RlZlx0aGlzY2hhcHRlcm5hbWV7f3RoaXNjaGFwdGVybmFtZQExNzAzLDU2MDEyCitceGRlZlx0 aGlzY2hhcHRlcnt/dGhpc2NoYXB0ZXIBMTcwNCw1NjAzOQogXHhkZWZcdGhpc2NoYXB0ZXJ7QXBw ZW5kaXggXGFwcGVuZGl4bGV0dGVyOiBcbm9leHBhbmRcdGhpc2NoYXB0ZXJuYW1lfX9sZXR0ZXI6 ATE3MDQsNTYwMzkKLXtcY2hhcHRlcm5vZm9udHMlf25vZm9udHMlATE3MDUsNTYxMTEKK3tcY2hh cHRlcm5vZm9udHMlf25vZm9udHMBMTcwNSw1NjExMQorXGVkZWZcdGVtcHt/dGVtcAExNzA2LDU2 MTI5CiAgIHsjMX17QXBwZW5kaXggXGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIBMTcwNyw1NjE2Nwog XGFwcGVuZGl4bm9kZXJlZiAlf25vZGVyZWYBMTcxMCw1NjI2NwotXGdsb2JhbFxsZXRcc2VjdGlv biA9IFxhcHBlbmRpeHNlY389ATE3MTEsNTYyODYKLVxnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBc YXBwZW5kaXhzdWJzZWN/PQExNzEyLDU2MzIxCi1cZ2xvYmFsXGxldFxzdWJzdWJzZWN0aW9uID0g XGFwcGVuZGl4c3Vic3Vic2Vjfz0BMTcxMyw1NjM2MgotXG91dGVyXGRlZlx0b3B7f1x0b3ABMTcx Niw1NjQxMwotXG91dGVyXGRlZlx1bm51bWJlcmVke39cdW5udW1iZXJlZAExNzE3LDU2NDUzCi1c ZGVmXHVubnVtYmVyZWR6enogIzF7f1x1bm51bWJlcmVkenp6ATE3MTgsNTY1MDAKLXtcY2hhcHRl cm5vZm9udHMlf25vZm9udHMlATE3MjIsNTY2NjMKLVxnbG9iYWxcbGV0XHNlY3Rpb24gPSBcdW5u dW1iZXJlZHNlY389ATE3MjcsNTY4MTMKLVxnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcdW5udW1i ZXJlZHN1YnNlY389ATE3MjgsNTY4NTAKLVxnbG9iYWxcbGV0XHN1YnN1YnNlY3Rpb24gPSBcdW5u dW1iZXJlZHN1YnN1YnNlY389ATE3MjksNTY4OTMKLVxvdXRlclxkZWZcbnVtYmVyZWRzZWN7f1xu dW1iZXJlZHNlYwExNzMyLDU2OTQ2Ci1cZGVmXHNlY3p6eiAjMXt/XHNlY3p6egExNzMzLDU2OTg3 Ci17XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzJQExNzM2LDU3MTQzCi1cb3V0ZXJcZGVmXGFwcGVu ZGl4c2VjdGlvbnt/XGFwcGVuZGl4c2VjdGlvbgExNzQ1LDU3MzI5Ci1cb3V0ZXJcZGVmXGFwcGVu ZGl4c2Vje39cYXBwZW5kaXhzZWMBMTc0Niw1NzM4NgotXGRlZlxhcHBlbmRpeHNlY3Rpb256enog IzF7f1xhcHBlbmRpeHNlY3Rpb256enoBMTc0Nyw1NzQzOQorXGdsb2JhbFxsZXRcc2VjdGlvbiA9 IFxhcHBlbmRpeHNlY39zZWN0aW9uATE3MTEsNTYyODYKK1xnbG9iYWxcbGV0XHNlY3Rpb24gPSBc YXBwZW5kaXhzZWN/c2VjATE3MTEsNTYyODYKK1xnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcYXBw ZW5kaXhzdWJzZWN/c3Vic2VjdGlvbgExNzEyLDU2MzIxCitcZ2xvYmFsXGxldFxzdWJzZWN0aW9u ID0gXGFwcGVuZGl4c3Vic2Vjf3N1YnNlYwExNzEyLDU2MzIxCitcZ2xvYmFsXGxldFxzdWJzdWJz ZWN0aW9uID0gXGFwcGVuZGl4c3Vic3Vic2Vjf3N1YnN1YnNlY3Rpb24BMTcxMyw1NjM2MgorXGds b2JhbFxsZXRcc3Vic3Vic2VjdGlvbiA9IFxhcHBlbmRpeHN1YnN1YnNlY39zdWJzdWJzZWMBMTcx Myw1NjM2MgorXG91dGVyXGRlZlx0b3B7f3RvcAExNzE2LDU2NDEzCitcb3V0ZXJcZGVmXHVubnVt YmVyZWR7f3VubnVtYmVyZWQBMTcxNyw1NjQ1MworXGRlZlx1bm51bWJlcmVkenp6ICMxe391bm51 bWJlcmVkenp6ATE3MTgsNTY1MDAKK1xnZGVmXHRoaXNjaGFwdGVye390aGlzY2hhcHRlcgExNzIx LDU2NjE5CitcZ2RlZlx0aGlzY2hhcHRlcnsjMX1cZ2RlZlx0aGlzc2VjdGlvbnt/dGhpc3NlY3Rp b24BMTcyMSw1NjYxOQore1xjaGFwdGVybm9mb250cyV/bm9mb250cwExNzIyLDU2NjYzCitcZWRl Zlx0ZW1we390ZW1wATE3MjMsNTY2ODEKK1xnbG9iYWxcbGV0XHNlY3Rpb24gPSBcdW5udW1iZXJl ZHNlY39zZWN0aW9uATE3MjcsNTY4MTMKK1xnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcdW5udW1i ZXJlZHN1YnNlY39zdWJzZWN0aW9uATE3MjgsNTY4NTAKK1xnbG9iYWxcbGV0XHN1YnN1YnNlY3Rp b24gPSBcdW5udW1iZXJlZHN1YnN1YnNlY39zdWJzdWJzZWN0aW9uATE3MjksNTY4OTMKK1xvdXRl clxkZWZcbnVtYmVyZWRzZWN7f251bWJlcmVkc2VjATE3MzIsNTY5NDYKK1xkZWZcc2Vjenp6ICMx e39zZWN6enoBMTczMyw1Njk4NworXGdkZWZcdGhpc3NlY3Rpb257f3RoaXNzZWN0aW9uATE3MzUs NTcwNzkKK3tcY2hhcHRlcm5vZm9udHMlf25vZm9udHMBMTczNiw1NzE0MworXGVkZWZcdGVtcHt/ dGVtcAExNzM3LDU3MTYxCitcb3V0ZXJcZGVmXGFwcGVuZGl4c2VjdGlvbnt/YXBwZW5kaXhzZWN0 aW9uATE3NDUsNTczMjkKK1xvdXRlclxkZWZcYXBwZW5kaXhzZWN0aW9ue1xwYXJzZWFyZ1xhcHBl bmRpeHNlY3Rpb256enp9f3NlY3Rpb256enoBMTc0NSw1NzMyOQorXG91dGVyXGRlZlxhcHBlbmRp eHNlY3t/YXBwZW5kaXhzZWMBMTc0Niw1NzM4NgorXG91dGVyXGRlZlxhcHBlbmRpeHNlY3tccGFy c2VhcmdcYXBwZW5kaXhzZWN0aW9uenp6fX9zZWN0aW9uenp6ATE3NDYsNTczODYKK1xkZWZcYXBw ZW5kaXhzZWN0aW9uenp6ICMxe39hcHBlbmRpeHNlY3Rpb256enoBMTc0Nyw1NzQzOQorXGdkZWZc dGhpc3NlY3Rpb257f3RoaXNzZWN0aW9uATE3NDksNTc1NTEKIFxnZGVmXHRoaXNzZWN0aW9ueyMx fVxzZWNoZWFkaW5nIHsjMX17XGFwcGVuZGl4bGV0dGVyfX9sZXR0ZXIBMTc0OSw1NzU1MQote1xj aGFwdGVybm9mb250cyV/bm9mb250cyUBMTc1MCw1NzYxOQore1xjaGFwdGVybm9mb250cyV/bm9m b250cwExNzUwLDU3NjE5CitcZWRlZlx0ZW1we390ZW1wATE3NTEsNTc2MzcKIHsjMX17XGFwcGVu ZGl4bGV0dGVyfX9sZXR0ZXIBMTc1Miw1NzY3NQogXGFwcGVuZGl4bm9kZXJlZiAlf25vZGVyZWYB MTc1NSw1Nzc3NQotXG91dGVyXGRlZlx1bm51bWJlcmVkc2Vje39cdW5udW1iZXJlZHNlYwExNzU5 LDU3ODE1Ci1cZGVmXHVubnVtYmVyZWRzZWN6enogIzF7f1x1bm51bWJlcmVkc2Vjenp6ATE3NjAs NTc4NjgKLXtcY2hhcHRlcm5vZm9udHMlf25vZm9udHMlATE3NjIsNTc5NjMKLVxvdXRlclxkZWZc bnVtYmVyZWRzdWJzZWN7f1xudW1iZXJlZHN1YnNlYwExNzcwLDU4MTMxCi1cZGVmXG51bWJlcmVk c3Vic2Vjenp6ICMxe39cbnVtYmVyZWRzdWJzZWN6enoBMTc3MSw1ODE4Ngote1xjaGFwdGVybm9m b250cyV/bm9mb250cyUBMTc3NCw1ODM2NQotXG91dGVyXGRlZlxhcHBlbmRpeHN1YnNlY3t/XGFw cGVuZGl4c3Vic2VjATE3ODMsNTg1NjkKLVxkZWZcYXBwZW5kaXhzdWJzZWN6enogIzF7f1xhcHBl bmRpeHN1YnNlY3p6egExNzg0LDU4NjI0Citcb3V0ZXJcZGVmXHVubnVtYmVyZWRzZWN7f3VubnVt YmVyZWRzZWMBMTc1OSw1NzgxNQorXGRlZlx1bm51bWJlcmVkc2Vjenp6ICMxe391bm51bWJlcmVk c2Vjenp6ATE3NjAsNTc4NjgKK1xwbGFpbnNlY2hlYWRpbmcgeyMxfVxnZGVmXHRoaXNzZWN0aW9u e390aGlzc2VjdGlvbgExNzYxLDU3OTE5Cit7XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzATE3NjIs NTc5NjMKK1xlZGVmXHRlbXB7f3RlbXABMTc2Myw1Nzk4MQorXG91dGVyXGRlZlxudW1iZXJlZHN1 YnNlY3t/bnVtYmVyZWRzdWJzZWMBMTc3MCw1ODEzMQorXGRlZlxudW1iZXJlZHN1YnNlY3p6eiAj MXt/bnVtYmVyZWRzdWJzZWN6enoBMTc3MSw1ODE4NgorXGdkZWZcdGhpc3NlY3Rpb257f3RoaXNz ZWN0aW9uATE3NzIsNTgyMzUKK3tcY2hhcHRlcm5vZm9udHMlf25vZm9udHMBMTc3NCw1ODM2NQor XGVkZWZcdGVtcHt/dGVtcAExNzc1LDU4MzgzCitcb3V0ZXJcZGVmXGFwcGVuZGl4c3Vic2Vje39h cHBlbmRpeHN1YnNlYwExNzgzLDU4NTY5Citcb3V0ZXJcZGVmXGFwcGVuZGl4c3Vic2Vje1xwYXJz ZWFyZ1xhcHBlbmRpeHN1YnNlY3p6en1/c3Vic2Vjenp6ATE3ODMsNTg1NjkKK1xkZWZcYXBwZW5k aXhzdWJzZWN6enogIzF7f2FwcGVuZGl4c3Vic2Vjenp6ATE3ODQsNTg2MjQKK1xnZGVmXHRoaXNz ZWN0aW9ue390aGlzc2VjdGlvbgExNzg1LDU4Njc3CiBcc3Vic2VjaGVhZGluZyB7IzF9e1xhcHBl bmRpeGxldHRlcn1/bGV0dGVyATE3ODYsNTg3NDYKLXtcY2hhcHRlcm5vZm9udHMlf25vZm9udHMl ATE3ODcsNTg4MTEKK3tcY2hhcHRlcm5vZm9udHMlf25vZm9udHMBMTc4Nyw1ODgxMQorXGVkZWZc dGVtcHt/dGVtcAExNzg4LDU4ODI5CiB7IzF9e1xhcHBlbmRpeGxldHRlcn1/bGV0dGVyATE3ODks NTg4NzAKIFxhcHBlbmRpeG5vZGVyZWYgJX9ub2RlcmVmATE3OTIsNTg5ODUKLVxvdXRlclxkZWZc dW5udW1iZXJlZHN1YnNlY3t/XHVubnVtYmVyZWRzdWJzZWMBMTc5Niw1OTAyNQotXGRlZlx1bm51 bWJlcmVkc3Vic2Vjenp6ICMxe39cdW5udW1iZXJlZHN1YnNlY3p6egExNzk3LDU5MDg0Ci17XGNo YXB0ZXJub2ZvbnRzJX9ub2ZvbnRzJQExNzk5LDU5MTg1Ci1cb3V0ZXJcZGVmXG51bWJlcmVkc3Vi c3Vic2Vje39cbnVtYmVyZWRzdWJzdWJzZWMBMTgwNyw1OTM1NgotXGRlZlxudW1iZXJlZHN1YnN1 YnNlY3p6eiAjMXt/XG51bWJlcmVkc3Vic3Vic2Vjenp6ATE4MDgsNTk0MTcKLXtcY2hhcHRlcm5v Zm9udHMlf25vZm9udHMlATE4MTIsNTk2MTQKLVxvdXRlclxkZWZcYXBwZW5kaXhzdWJzdWJzZWN7 f1xhcHBlbmRpeHN1YnN1YnNlYwExODIzLDU5ODQ3Ci1cZGVmXGFwcGVuZGl4c3Vic3Vic2Vjenp6 ICMxe39cYXBwZW5kaXhzdWJzdWJzZWN6enoBMTgyNCw1OTkwOAorXG91dGVyXGRlZlx1bm51bWJl cmVkc3Vic2Vje391bm51bWJlcmVkc3Vic2VjATE3OTYsNTkwMjUKK1xkZWZcdW5udW1iZXJlZHN1 YnNlY3p6eiAjMXt/dW5udW1iZXJlZHN1YnNlY3p6egExNzk3LDU5MDg0CitccGxhaW5zZWNoZWFk aW5nIHsjMX1cZ2RlZlx0aGlzc2VjdGlvbnt/dGhpc3NlY3Rpb24BMTc5OCw1OTE0MQore1xjaGFw dGVybm9mb250cyV/bm9mb250cwExNzk5LDU5MTg1CitcZWRlZlx0ZW1we390ZW1wATE4MDAsNTky MDMKK1xvdXRlclxkZWZcbnVtYmVyZWRzdWJzdWJzZWN7f251bWJlcmVkc3Vic3Vic2VjATE4MDcs NTkzNTYKK1xkZWZcbnVtYmVyZWRzdWJzdWJzZWN6enogIzF7f251bWJlcmVkc3Vic3Vic2Vjenp6 ATE4MDgsNTk0MTcKK1xnZGVmXHRoaXNzZWN0aW9ue390aGlzc2VjdGlvbgExODA5LDU5NDcyCit7 XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzATE4MTIsNTk2MTQKK1xlZGVmXHRlbXB7f3RlbXABMTgx Myw1OTYzMgorXG91dGVyXGRlZlxhcHBlbmRpeHN1YnN1YnNlY3t/YXBwZW5kaXhzdWJzdWJzZWMB MTgyMyw1OTg0NworXG91dGVyXGRlZlxhcHBlbmRpeHN1YnN1YnNlY3tccGFyc2VhcmdcYXBwZW5k aXhzdWJzdWJzZWN6enp9f3N1YnN1YnNlY3p6egExODIzLDU5ODQ3CitcZGVmXGFwcGVuZGl4c3Vi c3Vic2Vjenp6ICMxe39hcHBlbmRpeHN1YnN1YnNlY3p6egExODI0LDU5OTA4CitcZ2RlZlx0aGlz c2VjdGlvbnt/dGhpc3NlY3Rpb24BMTgyNSw1OTk2NwogICB7XGFwcGVuZGl4bGV0dGVyfX9sZXR0 ZXIBMTgyNyw2MDA0Nwote1xjaGFwdGVybm9mb250cyV/bm9mb250cyUBMTgyOCw2MDExMwore1xj aGFwdGVybm9mb250cyV/bm9mb250cwExODI4LDYwMTEzCitcZWRlZlx0ZW1we390ZW1wATE4Mjks NjAxMzEKICAge1xhcHBlbmRpeGxldHRlcn1/bGV0dGVyATE4MzAsNjAxNzgKIFxhcHBlbmRpeG5v ZGVyZWYgJX9ub2RlcmVmATE4MzQsNjAzMTIKLVxvdXRlclxkZWZcdW5udW1iZXJlZHN1YnN1YnNl Y3t/XHVubnVtYmVyZWRzdWJzdWJzZWMBMTgzOCw2MDM1MgotXGRlZlx1bm51bWJlcmVkc3Vic3Vi c2Vjenp6ICMxe39cdW5udW1iZXJlZHN1YnN1YnNlY3p6egExODM5LDYwNDE3Ci17XGNoYXB0ZXJu b2ZvbnRzJX9ub2ZvbnRzJQExODQxLDYwNTI0Ci1cZGVmXGluZm90b3B7f1xpbmZvdG9wATE4NTEs NjA4NTMKLVxkZWZcaW5mb3VubnVtYmVyZWR7f1xpbmZvdW5udW1iZXJlZAExODUyLDYwODkxCi1c ZGVmXGluZm91bm51bWJlcmVkc2Vje39caW5mb3VubnVtYmVyZWRzZWMBMTg1Myw2MDkzNgotXGRl ZlxpbmZvdW5udW1iZXJlZHN1YnNlY3t/XGluZm91bm51bWJlcmVkc3Vic2VjATE4NTQsNjA5ODcK LVxkZWZcaW5mb3VubnVtYmVyZWRzdWJzdWJzZWN7f1xpbmZvdW5udW1iZXJlZHN1YnN1YnNlYwEx ODU1LDYxMDQ0Ci1cZGVmXGluZm9hcHBlbmRpeHt/XGluZm9hcHBlbmRpeAExODU3LDYxMTA4Ci1c ZGVmXGluZm9hcHBlbmRpeHNlY3t/XGluZm9hcHBlbmRpeHNlYwExODU4LDYxMTQ5Ci1cZGVmXGlu Zm9hcHBlbmRpeHN1YnNlY3t/XGluZm9hcHBlbmRpeHN1YnNlYwExODU5LDYxMTk2Ci1cZGVmXGlu Zm9hcHBlbmRpeHN1YnN1YnNlY3t/XGluZm9hcHBlbmRpeHN1YnN1YnNlYwExODYwLDYxMjQ5Ci1c ZGVmXGluZm9jaGFwdGVye39caW5mb2NoYXB0ZXIBMTg2Miw2MTMwOQotXGRlZlxpbmZvc2VjdGlv bnt/XGluZm9zZWN0aW9uATE4NjMsNjEzNDgKLVxkZWZcaW5mb3N1YnNlY3Rpb257f1xpbmZvc3Vi c2VjdGlvbgExODY0LDYxMzg3Ci1cZGVmXGluZm9zdWJzdWJzZWN0aW9ue39caW5mb3N1YnN1YnNl Y3Rpb24BMTg2NSw2MTQzMgotXGdsb2JhbFxsZXRcc2VjdGlvbiA9IFxudW1iZXJlZHNlY389ATE4 NzAsNjE2NjkKLVxnbG9iYWxcbGV0XHN1YnNlY3Rpb24gPSBcbnVtYmVyZWRzdWJzZWN/PQExODcx LDYxNzA0Ci1cZ2xvYmFsXGxldFxzdWJzdWJzZWN0aW9uID0gXG51bWJlcmVkc3Vic3Vic2Vjfz0B MTg3Miw2MTc0NQotXGRlZlxtYWpvcmhlYWRpbmd7f1xtYWpvcmhlYWRpbmcBMTg4Niw2MjI1Mgot XGRlZlxtYWpvcmhlYWRpbmd6enogIzF7f1xtYWpvcmhlYWRpbmd6enoBMTg4Nyw2MjI5NwotXGRl ZlxjaGFwaGVhZGluZ3t/XGNoYXBoZWFkaW5nATE4OTMsNjI1MzAKLVxkZWZcY2hhcGhlYWRpbmd6 enogIzF7f1xjaGFwaGVhZGluZ3p6egExODk0LDYyNTczCi1cZGVmXGhlYWRpbmd7f1xoZWFkaW5n ATE4OTksNjI3NjgKLVxkZWZcc3ViaGVhZGluZ3t/XHN1YmhlYWRpbmcBMTkwMSw2MjgwNQotXGRl ZlxzdWJzdWJoZWFkaW5ne39cc3Vic3ViaGVhZGluZwExOTAzLDYyODQ4Ci1cZGVmXGRvYnJlYWsj MSMye39cZG9icmVhawExOTEwLDYzMTI1Ci1cZGVmXHNldGNoYXB0ZXJzdHlsZSAjMSB7f1xzZXRj aGFwdGVyc3R5bGUBMTkxMiw2MzIwMwotXGRlZlxjaGFwYnJlYWt7f1xjaGFwYnJlYWsBMTkxOSw2 MzQ1OAotXGRlZlxjaGFwcGFnZXJ7f1xjaGFwcGFnZXIBMTkyMCw2MzUwOAotXGRlZlxjaGFwb2Rk cGFnZXt/XGNoYXBvZGRwYWdlATE5MjEsNjM1NDYKLVxkZWZcc2V0Y2hhcHRlcm5ld3BhZ2UgIzEg e39cc2V0Y2hhcHRlcm5ld3BhZ2UBMTkyMyw2MzYyNQotXGRlZlxDSEFQUEFHb2Zme39cQ0hBUFBB R29mZgExOTI1LDYzNjgyCi1cZGVmXENIQVBQQUdvbnt/XENIQVBQQUdvbgExOTI5LDYzNzc2Ci1c Z2xvYmFsXGRlZlxIRUFESU5HU29ue39cSEVBRElOR1NvbgExOTMyLDYzODY3Ci1cZGVmXENIQVBQ QUdvZGR7f1xDSEFQUEFHb2RkATE5MzQsNjM5MDkKLVxnbG9iYWxcZGVmXEhFQURJTkdTb257f1xI RUFESU5HU29uATE5MzcsNjQwMDUKLVxkZWZcQ0hBUEZwbGFpbnt/XENIQVBGcGxhaW4BMTk0MSw2 NDA1OQotXGRlZlxjaGZwbGFpbiAjMSMye39cY2hmcGxhaW4BMTk0NSw2NDE1MQotXGRlZlx1bm5j aGZwbGFpbiAjMXt/XHVubmNoZnBsYWluATE5NTYsNjQzNzQKLVxkZWZcdW5uY2hmb3BlbiAjMXt/ XHVubmNoZm9wZW4BMTk2NCw2NDYwMwotXGRlZlxjaGZvcGVuICMxIzJ7f1xjaGZvcGVuATE5NzAs NjQ4MTEKLVxkZWZcQ0hBUEZvcGVue39cQ0hBUEZvcGVuATE5NzUsNjQ5NTUKLVxkZWZcc3Vic2Vj aGVhZGluZ2JyZWFre39cc3Vic2VjaGVhZGluZ2JyZWFrATE5ODIsNjUxNzMKLVxkZWZcc2VjaGVh ZGluZ2JyZWFre39cc2VjaGVhZGluZ2JyZWFrATE5ODUsNjUzMDIKLVxkZWZcc2VjaGVhZGluZyAj MSMyIzN7f1xzZWNoZWFkaW5nATE5OTMsNjU1ODQKLVxkZWZccGxhaW5zZWNoZWFkaW5nICMxe39c cGxhaW5zZWNoZWFkaW5nATE5OTQsNjU2NDAKLVxkZWZcc2VjaGVhZGluZ2kgIzF7f1xzZWNoZWFk aW5naQExOTk1LDY1NjgzCi1cZGVmXHN1YnNlY2hlYWRpbmcgIzEjMiMzIzR7f1xzdWJzZWNoZWFk aW5nATIwMDYsNjYwNTEKLVxkZWZcc3Vic2VjaGVhZGluZ2kgIzF7f1xzdWJzZWNoZWFkaW5naQEy MDA3LDY2MTE4Ci1cZGVmXHN1YnN1YnNlY2ZvbnRze39cc3Vic3Vic2VjZm9udHMBMjAxNCw2NjQx NQotXGRlZlxzdWJzdWJzZWNoZWFkaW5nICMxIzIjMyM0IzV7f1xzdWJzdWJzZWNoZWFkaW5nATIw MTcsNjY1MzgKLVxkZWZcc3Vic3Vic2VjaGVhZGluZ2kgIzF7f1xzdWJzdWJzZWNoZWFkaW5naQEy MDE4LDY2NjE2Ci1cZGVmXHN0YXJ0Y29udGVudHMjMXt/XHN0YXJ0Y29udGVudHMBMjAzMiw2NzA4 OAotICAgXHVubnVtYmNoYXBtYWNyb3sjMX1cZGVmXHRoaXNjaGFwdGVye39cdGhpc2NoYXB0ZXIB MjA0MCw2NzM2MQotXG91dGVyXGRlZlxjb250ZW50c3t/XGNvbnRlbnRzATIwNDksNjc3MjAKLVxv dXRlclxkZWZcc3VtbWFyeWNvbnRlbnRze39cc3VtbWFyeWNvbnRlbnRzATIwNTcsNjc4NjQKLSAg ICAgIFxkZWZcc2VjZW50cnkgIyMxIyMyIyMzIyM0e39cc2VjZW50cnkBMjA2Nyw2ODIzNQotICAg ICAgXGRlZlx1bm51bWJzZWNlbnRyeSAjIzEjIzJ7f1x1bm51bWJzZWNlbnRyeQEyMDY4LDY4Mjcw Ci0gICAgICBcZGVmXHN1YnNlY2VudHJ5ICMjMSMjMiMjMyMjNCMjNXt/XHN1YnNlY2VudHJ5ATIw NjksNjgzMDUKLSAgICAgIFxkZWZcdW5udW1ic3Vic2VjZW50cnkgIyMxIyMye39cdW5udW1ic3Vi c2VjZW50cnkBMjA3MCw2ODM0NgotICAgICAgXGRlZlxzdWJzdWJzZWNlbnRyeSAjIzEjIzIjIzMj IzQjIzUjIzZ7f1xzdWJzdWJzZWNlbnRyeQEyMDcxLDY4Mzg0Ci0gICAgICBcZGVmXHVubnVtYnN1 YnN1YnNlY2VudHJ5ICMjMSMjMnt/XHVubnVtYnN1YnN1YnNlY2VudHJ5ATIwNzIsNjg0MzEKLVxk ZWZcY2hhcGVudHJ5IzEjMiMze39cY2hhcGVudHJ5ATIwODUsNjg4NjUKLVxkZWZcc2hvcnRjaGFw ZW50cnkjMSMyIzN7f1xzaG9ydGNoYXBlbnRyeQEyMDg4LDY4OTgyCitcb3V0ZXJcZGVmXHVubnVt YmVyZWRzdWJzdWJzZWN7f3VubnVtYmVyZWRzdWJzdWJzZWMBMTgzOCw2MDM1MgorXGRlZlx1bm51 bWJlcmVkc3Vic3Vic2Vjenp6ICMxe391bm51bWJlcmVkc3Vic3Vic2Vjenp6ATE4MzksNjA0MTcK K1xwbGFpbnNlY2hlYWRpbmcgeyMxfVxnZGVmXHRoaXNzZWN0aW9ue390aGlzc2VjdGlvbgExODQw LDYwNDgwCit7XGNoYXB0ZXJub2ZvbnRzJX9ub2ZvbnRzATE4NDEsNjA1MjQKK1xlZGVmXHRlbXB7 f3RlbXABMTg0Miw2MDU0MgorXGRlZlxpbmZvdG9we39pbmZvdG9wATE4NTEsNjA4NTMKK1xkZWZc aW5mb3VubnVtYmVyZWR7f2luZm91bm51bWJlcmVkATE4NTIsNjA4OTEKK1xkZWZcaW5mb3VubnVt YmVyZWRzZWN7f2luZm91bm51bWJlcmVkc2VjATE4NTMsNjA5MzYKK1xkZWZcaW5mb3VubnVtYmVy ZWRzdWJzZWN7f2luZm91bm51bWJlcmVkc3Vic2VjATE4NTQsNjA5ODcKK1xkZWZcaW5mb3VubnVt YmVyZWRzdWJzdWJzZWN7f2luZm91bm51bWJlcmVkc3Vic3Vic2VjATE4NTUsNjEwNDQKK1xkZWZc aW5mb2FwcGVuZGl4e39pbmZvYXBwZW5kaXgBMTg1Nyw2MTEwOAorXGRlZlxpbmZvYXBwZW5kaXh7 XHBhcnNlYXJnXGFwcGVuZGl4enp6fX96enoBMTg1Nyw2MTEwOAorXGRlZlxpbmZvYXBwZW5kaXhz ZWN7f2luZm9hcHBlbmRpeHNlYwExODU4LDYxMTQ5CitcZGVmXGluZm9hcHBlbmRpeHNlY3tccGFy c2VhcmdcYXBwZW5kaXhzZWN6enp9f3NlY3p6egExODU4LDYxMTQ5CitcZGVmXGluZm9hcHBlbmRp eHN1YnNlY3t/aW5mb2FwcGVuZGl4c3Vic2VjATE4NTksNjExOTYKK1xkZWZcaW5mb2FwcGVuZGl4 c3Vic2Vje1xwYXJzZWFyZ1xhcHBlbmRpeHN1YnNlY3p6en1/c3Vic2Vjenp6ATE4NTksNjExOTYK K1xkZWZcaW5mb2FwcGVuZGl4c3Vic3Vic2Vje39pbmZvYXBwZW5kaXhzdWJzdWJzZWMBMTg2MCw2 MTI0OQorXGRlZlxpbmZvYXBwZW5kaXhzdWJzdWJzZWN7XHBhcnNlYXJnXGFwcGVuZGl4c3Vic3Vi c2Vjenp6fX9zdWJzdWJzZWN6enoBMTg2MCw2MTI0OQorXGRlZlxpbmZvY2hhcHRlcnt/aW5mb2No YXB0ZXIBMTg2Miw2MTMwOQorXGRlZlxpbmZvY2hhcHRlcntccGFyc2VhcmdcY2hhcHRlcnp6en1/ enp6ATE4NjIsNjEzMDkKK1xkZWZcaW5mb3NlY3Rpb257f2luZm9zZWN0aW9uATE4NjMsNjEzNDgK K1xkZWZcaW5mb3NlY3Rpb257XHBhcnNlYXJnXHNlY3Rpb256enp9f3p6egExODYzLDYxMzQ4Citc ZGVmXGluZm9zdWJzZWN0aW9ue39pbmZvc3Vic2VjdGlvbgExODY0LDYxMzg3CitcZGVmXGluZm9z dWJzZWN0aW9ue1xwYXJzZWFyZ1xzdWJzZWN0aW9uenp6fX96enoBMTg2NCw2MTM4NworXGRlZlxp bmZvc3Vic3Vic2VjdGlvbnt/aW5mb3N1YnN1YnNlY3Rpb24BMTg2NSw2MTQzMgorXGRlZlxpbmZv c3Vic3Vic2VjdGlvbntccGFyc2Vhcmdcc3Vic3Vic2VjdGlvbnp6en1/enp6ATE4NjUsNjE0MzIK K1xnbG9iYWxcbGV0XHNlY3Rpb24gPSBcbnVtYmVyZWRzZWN/c2VjdGlvbgExODcwLDYxNjY5Citc Z2xvYmFsXGxldFxzdWJzZWN0aW9uID0gXG51bWJlcmVkc3Vic2Vjf3N1YnNlY3Rpb24BMTg3MSw2 MTcwNAorXGdsb2JhbFxsZXRcc3Vic3Vic2VjdGlvbiA9IFxudW1iZXJlZHN1YnN1YnNlY39zdWJz dWJzZWN0aW9uATE4NzIsNjE3NDUKK1xkZWZcbWFqb3JoZWFkaW5ne39tYWpvcmhlYWRpbmcBMTg4 Niw2MjI1MgorXGRlZlxtYWpvcmhlYWRpbmd6enogIzF7f21ham9yaGVhZGluZ3p6egExODg3LDYy Mjk3CitcZGVmXGNoYXBoZWFkaW5ne39jaGFwaGVhZGluZwExODkzLDYyNTMwCitcZGVmXGNoYXBo ZWFkaW5nenp6ICMxe39jaGFwaGVhZGluZ3p6egExODk0LDYyNTczCitcZGVmXGhlYWRpbmd7f2hl YWRpbmcBMTg5OSw2Mjc2OAorXGRlZlxzdWJoZWFkaW5ne39zdWJoZWFkaW5nATE5MDEsNjI4MDUK K1xkZWZcc3Vic3ViaGVhZGluZ3t/c3Vic3ViaGVhZGluZwExOTAzLDYyODQ4CitcZGVmXGRvYnJl YWsjMSMye39kb2JyZWFrATE5MTAsNjMxMjUKK1xkZWZcc2V0Y2hhcHRlcnN0eWxlICMxIHt/c2V0 Y2hhcHRlcnN0eWxlATE5MTIsNjMyMDMKK1xkZWZcY2hhcGJyZWFre39jaGFwYnJlYWsBMTkxOSw2 MzQ1OAorXGRlZlxjaGFwcGFnZXJ7f2NoYXBwYWdlcgExOTIwLDYzNTA4CitcZGVmXGNoYXBvZGRw YWdle39jaGFwb2RkcGFnZQExOTIxLDYzNTQ2CitcZGVmXHNldGNoYXB0ZXJuZXdwYWdlICMxIHt/ c2V0Y2hhcHRlcm5ld3BhZ2UBMTkyMyw2MzYyNQorXGRlZlxDSEFQUEFHb2Zme39DSEFQUEFHb2Zm ATE5MjUsNjM2ODIKK1xnbG9iYWxcbGV0XHBjaGFwc2VwbWFjcm89XGNoYXBicmVha39wY2hhcHNl cG1hY3JvATE5MjYsNjM2OTkKK1xnbG9iYWxcbGV0XHBhZ2VhbGlnbm1hY3JvPVxjaGFwcGFnZXJ9 f3BhZ2VhbGlnbm1hY3JvATE5MjcsNjM3MzYKK1xkZWZcQ0hBUFBBR29ue39DSEFQUEFHb24BMTky OSw2Mzc3NgorXGdsb2JhbFxsZXRccGNoYXBzZXBtYWNybz1cY2hhcHBhZ2Vyf3BjaGFwc2VwbWFj cm8BMTkzMCw2Mzc5MgorXGdsb2JhbFxsZXRccGFnZWFsaWdubWFjcm89XGNoYXBwYWdlcn9wYWdl YWxpZ25tYWNybwExOTMxLDYzODI5CitcZ2xvYmFsXGRlZlxIRUFESU5HU29ue39IRUFESU5HU29u ATE5MzIsNjM4NjcKK1xkZWZcQ0hBUFBBR29kZHt/Q0hBUFBBR29kZAExOTM0LDYzOTA5CitcZ2xv YmFsXGxldFxwY2hhcHNlcG1hY3JvPVxjaGFwb2RkcGFnZX9wY2hhcHNlcG1hY3JvATE5MzUsNjM5 MjYKK1xnbG9iYWxcbGV0XHBhZ2VhbGlnbm1hY3JvPVxjaGFwb2RkcGFnZX9wYWdlYWxpZ25tYWNy bwExOTM2LDYzOTY1CitcZ2xvYmFsXGRlZlxIRUFESU5HU29ue39IRUFESU5HU29uATE5MzcsNjQw MDUKK1xkZWZcQ0hBUEZwbGFpbnt/Q0hBUEZwbGFpbgExOTQxLDY0MDU5CitcZ2xvYmFsXGxldFxj aGFwbWFjcm89XGNoZnBsYWluf2NoYXBtYWNybwExOTQyLDY0MDc2CitcZ2xvYmFsXGxldFx1bm51 bWJjaGFwbWFjcm89XHVubmNoZnBsYWlufX91bm51bWJjaGFwbWFjcm8BMTk0Myw2NDEwOAorXGRl ZlxjaGZwbGFpbiAjMSMye39jaGZwbGFpbgExOTQ1LDY0MTUxCitcZGVmXHVubmNoZnBsYWluICMx e391bm5jaGZwbGFpbgExOTU2LDY0Mzc0CitcZGVmXHVubmNoZm9wZW4gIzF7f3VubmNoZm9wZW4B MTk2NCw2NDYwMworXGRlZlxjaGZvcGVuICMxIzJ7f2NoZm9wZW4BMTk3MCw2NDgxMQorXGRlZlxD SEFQRm9wZW57f0NIQVBGb3BlbgExOTc1LDY0OTU1CitcZ2xvYmFsXGxldFxjaGFwbWFjcm89XGNo Zm9wZW5/Y2hhcG1hY3JvATE5NzYsNjQ5NzEKK1xnbG9iYWxcbGV0XHVubnVtYmNoYXBtYWNybz1c dW5uY2hmb3Blbn1/dW5udW1iY2hhcG1hY3JvATE5NzcsNjUwMDIKK1xkZWZcc3Vic2VjaGVhZGlu Z2JyZWFre39zdWJzZWNoZWFkaW5nYnJlYWsBMTk4Miw2NTE3MworXGRlZlxzZWNoZWFkaW5nYnJl YWt7f3NlY2hlYWRpbmdicmVhawExOTg1LDY1MzAyCitcbGV0XHBhcmFncmFwaGluZGVudD1cY29t bWVudH9wYXJhZ3JhcGhpbmRlbnQBMTk4OCw2NTQyOAorXGRlZlxzZWNoZWFkaW5nICMxIzIjM3t/ c2VjaGVhZGluZwExOTkzLDY1NTg0CitcZGVmXHBsYWluc2VjaGVhZGluZyAjMXt/cGxhaW5zZWNo ZWFkaW5nATE5OTQsNjU2NDAKK1xkZWZcc2VjaGVhZGluZ2kgIzF7f3NlY2hlYWRpbmdpATE5OTUs NjU2ODMKK1xkZWZcc3Vic2VjaGVhZGluZyAjMSMyIzMjNHt/c3Vic2VjaGVhZGluZwEyMDA2LDY2 MDUxCitcZGVmXHN1YnNlY2hlYWRpbmdpICMxe39zdWJzZWNoZWFkaW5naQEyMDA3LDY2MTE4Citc ZGVmXHN1YnN1YnNlY2ZvbnRze39zdWJzdWJzZWNmb250cwEyMDE0LDY2NDE1CitcZGVmXHN1YnN1 YnNlY2hlYWRpbmcgIzEjMiMzIzQjNXt/c3Vic3Vic2VjaGVhZGluZwEyMDE3LDY2NTM4CitcZGVm XHN1YnN1YnNlY2hlYWRpbmdpICMxe39zdWJzdWJzZWNoZWFkaW5naQEyMDE4LDY2NjE2CitcZGVm XHN0YXJ0Y29udGVudHMjMXt/c3RhcnRjb250ZW50cwEyMDMyLDY3MDg4CisgICBcdW5udW1iY2hh cG1hY3JveyMxfVxkZWZcdGhpc2NoYXB0ZXJ7f3RoaXNjaGFwdGVyATIwNDAsNjczNjEKK1xvdXRl clxkZWZcY29udGVudHN7f2NvbnRlbnRzATIwNDksNjc3MjAKK1xvdXRlclxkZWZcc3VtbWFyeWNv bnRlbnRze39zdW1tYXJ5Y29udGVudHMBMjA1Nyw2Nzg2NAorICAgICAgXGxldFxjaGFwZW50cnkg PSBcc2hvcnRjaGFwZW50cnl/Y2hhcGVudHJ5ATIwNjAsNjc5MzYKKyAgICAgIFxsZXRcdW5udW1i Y2hhcGVudHJ5ID0gXHNob3J0dW5udW1iZXJlZGVudHJ5f3VubnVtYmNoYXBlbnRyeQEyMDYxLDY3 OTc1CisgICAgICBcbGV0XHJtPVxzaG9ydGNvbnRybSBcbGV0XGJmPVxzaG9ydGNvbnRiZiBcbGV0 XHNsPVxzaG9ydGNvbnRzbH9ybQEyMDY0LDY4MDk4CisgICAgICBcbGV0XHJtPVxzaG9ydGNvbnRy bSBcbGV0XGJmPVxzaG9ydGNvbnRiZiBcbGV0XHNsPVxzaG9ydGNvbnRzbH9iZgEyMDY0LDY4MDk4 CisgICAgICBcbGV0XHJtPVxzaG9ydGNvbnRybSBcbGV0XGJmPVxzaG9ydGNvbnRiZiBcbGV0XHNs PVxzaG9ydGNvbnRzbH9zbAEyMDY0LDY4MDk4CisgICAgICBcZGVmXHNlY2VudHJ5ICMjMSMjMiMj MyMjNHt/c2VjZW50cnkBMjA2Nyw2ODIzNQorICAgICAgXGRlZlx1bm51bWJzZWNlbnRyeSAjIzEj IzJ7f3VubnVtYnNlY2VudHJ5ATIwNjgsNjgyNzAKKyAgICAgIFxkZWZcc3Vic2VjZW50cnkgIyMx IyMyIyMzIyM0IyM1e39zdWJzZWNlbnRyeQEyMDY5LDY4MzA1CisgICAgICBcZGVmXHVubnVtYnN1 YnNlY2VudHJ5ICMjMSMjMnt/dW5udW1ic3Vic2VjZW50cnkBMjA3MCw2ODM0NgorICAgICAgXGRl ZlxzdWJzdWJzZWNlbnRyeSAjIzEjIzIjIzMjIzQjIzUjIzZ7f3N1YnN1YnNlY2VudHJ5ATIwNzEs NjgzODQKKyAgICAgIFxkZWZcdW5udW1ic3Vic3Vic2VjZW50cnkgIyMxIyMye391bm51bWJzdWJz dWJzZWNlbnRyeQEyMDcyLDY4NDMxCitcbGV0XHNob3J0Y29udGVudHMgPSBcc3VtbWFyeWNvbnRl bnRzf3Nob3J0Y29udGVudHMBMjA3Nyw2ODUzMAorXGRlZlxjaGFwZW50cnkjMSMyIzN7f2NoYXBl bnRyeQEyMDg1LDY4ODY1CitcZGVmXGNoYXBlbnRyeSMxIzIjM3tcZG9jaGFwZW50cnl7IzJcbGFi ZWxzcGFjZSMxfX9zcGFjZQEyMDg1LDY4ODY1CitcZGVmXHNob3J0Y2hhcGVudHJ5IzEjMiMze39z aG9ydGNoYXBlbnRyeQEyMDg4LDY4OTgyCiAgICAgeyMyXGxhYmVsc3BhY2UgIzF9f3NwYWNlATIw OTEsNjkwOTIKLVxkZWZcdW5udW1iY2hhcGVudHJ5IzEjMnt/XHVubnVtYmNoYXBlbnRyeQEyMDk0 LDY5MTQ2Ci1cZGVmXHNob3J0dW5udW1iZXJlZGVudHJ5IzEjMnt/XHNob3J0dW5udW1iZXJlZGVu dHJ5ATIwOTUsNjkxOTMKLVxkZWZcc2VjZW50cnkjMSMyIzMjNHt/XHNlY2VudHJ5ATIxMDIsNjkz NTcKLVxkZWZcdW5udW1ic2VjZW50cnkjMSMye39cdW5udW1ic2VjZW50cnkBMjEwMyw2OTQxNgot XGRlZlxzdWJzZWNlbnRyeSMxIzIjMyM0IzV7f1xzdWJzZWNlbnRyeQEyMTA2LDY5NDc3Ci1cZGVm XHVubnVtYnN1YnNlY2VudHJ5IzEjMnt/XHVubnVtYnN1YnNlY2VudHJ5ATIxMDcsNjk1NDcKLVxk ZWZcc3Vic3Vic2VjZW50cnkjMSMyIzMjNCM1IzZ7f1xzdWJzdWJzZWNlbnRyeQEyMTEwLDY5NjIx CitcZGVmXHVubnVtYmNoYXBlbnRyeSMxIzJ7f3VubnVtYmNoYXBlbnRyeQEyMDk0LDY5MTQ2Citc ZGVmXHNob3J0dW5udW1iZXJlZGVudHJ5IzEjMnt/c2hvcnR1bm51bWJlcmVkZW50cnkBMjA5NSw2 OTE5MworXGRlZlxzZWNlbnRyeSMxIzIjMyM0e39zZWNlbnRyeQEyMTAyLDY5MzU3CitcZGVmXHNl Y2VudHJ5IzEjMiMzIzR7XGRvc2VjZW50cnl7IzIuIzNcbGFiZWxzcGFjZSMxfX9zcGFjZQEyMTAy LDY5MzU3CitcZGVmXHVubnVtYnNlY2VudHJ5IzEjMnt/dW5udW1ic2VjZW50cnkBMjEwMyw2OTQx NgorXGRlZlxzdWJzZWNlbnRyeSMxIzIjMyM0IzV7f3N1YnNlY2VudHJ5ATIxMDYsNjk0NzcKK1xk ZWZcc3Vic2VjZW50cnkjMSMyIzMjNCM1e1xkb3N1YnNlY2VudHJ5eyMyLiMzLiM0XGxhYmVsc3Bh Y2UjMX1/c3BhY2UBMjEwNiw2OTQ3NworXGRlZlx1bm51bWJzdWJzZWNlbnRyeSMxIzJ7f3VubnVt YnN1YnNlY2VudHJ5ATIxMDcsNjk1NDcKK1xkZWZcc3Vic3Vic2VjZW50cnkjMSMyIzMjNCM1IzZ7 f3N1YnN1YnNlY2VudHJ5ATIxMTAsNjk2MjEKICAgXGRvc3Vic3Vic2VjZW50cnl7IzIuIzMuIzQu IzVcbGFiZWxzcGFjZSMxfX9zcGFjZQEyMTExLDY5NjU1Ci1cZGVmXHVubnVtYnN1YnN1YnNlY2Vu dHJ5IzEjMnt/XHVubnVtYnN1YnN1YnNlY2VudHJ5ATIxMTIsNjk3MDYKLVxkZWZcZG9jaGFwZW50 cnkjMSMye39cZG9jaGFwZW50cnkBMjEyMyw3MDA4MAotXGRlZlxkb3NlY2VudHJ5IzEjMnt/XGRv c2VjZW50cnkBMjEzOCw3MDY4NQotXGRlZlxkb3N1YnNlY2VudHJ5IzEjMnt/XGRvc3Vic2VjZW50 cnkBMjE0NSw3MDg2MwotXGRlZlxkb3N1YnN1YnNlY2VudHJ5IzEjMnt/XGRvc3Vic3Vic2VjZW50 cnkBMjE1Miw3MTA0OAotXGRlZlxsYWJlbHNwYWNle39cbGFiZWxzcGFjZQEyMTYwLDcxMjk5Ci1c ZGVmXGRvcGFnZW5vIzF7f1xkb3BhZ2VubwEyMTYyLDcxMzM0Ci1cZGVmXGRvc2hvcnRwYWdlbm8j MXt/XGRvc2hvcnRwYWdlbm8BMjE2Myw3MTM2MAotXGRlZlxjaGFwZW50cnlmb250c3t/XGNoYXBl bnRyeWZvbnRzATIxNjUsNzEzOTIKLVxkZWZcc2VjZW50cnlmb250c3t/XHNlY2VudHJ5Zm9udHMB MjE2Niw3MTQyNwotXGRlZlxwb2ludHt/XHBvaW50ATIxOTIsNzIzODYKLVxkZWZccmVzdWx0e39c cmVzdWx0ATIxOTQsNzI0MDcKLVxkZWZcZXhwYW5zaW9ue39cZXhwYW5zaW9uATIxOTUsNzI0ODAK LVxkZWZccHJpbnR7f1xwcmludAEyMTk2LDcyNTUxCi1cZGVmXGVxdWl2e39cZXF1aXYBMjE5OCw3 MjYxOAotXGRlZlxlcnJvcnt/XGVycm9yATIyMTgsNzMzOTEKLVxkZWZcdGV4e39cdGV4ATIyMjQs NzM2MjAKLVxkZWZcQHt/XEABMjI0Miw3NDAwMwotXGdkZWZcc2Vwc3BhY2Vze1xkZWYge1wgfX19 f1wBMjI2NSw3NDczNQotXGRlZlxhYm92ZWVudmJyZWFre39cYWJvdmVlbnZicmVhawEyMjY4LDc0 ODE3Ci1cZGVmXGFmdGVyZW52YnJlYWt7f1xhZnRlcmVudmJyZWFrATIyNzIsNzQ5ODMKLVxkZWZc Y3Rse39cY3RsATIyODYsNzU0OTQKLVxkZWZcY3Rye39cY3RyATIyODcsNzU1NjYKLVxkZWZcY2Js e39cY2JsATIyODgsNzU2MDUKLVxkZWZcY2Jye39cY2JyATIyODksNzU2NDUKLVxkZWZcY2FydHRv cHt/XGNhcnR0b3ABMjI5MCw3NTY4NAotXGRlZlxjYXJ0Ym90e39cY2FydGJvdAEyMjkzLDc1Nzky Ci1cbG9uZ1xkZWZcY2FydG91Y2hle39cY2FydG91Y2hlATIyOTksNzU5MzIKLVxkZWZcRWNhcnRv dWNoZXt/XEVjYXJ0b3VjaGUBMjMyNiw3NjcyMAotXGRlZlxsaXNwe39cbGlzcAEyMzM4LDc2ODU1 Ci1cZGVmXEVsaXNwe39cRWxpc3ABMjM0OCw3NzIwMgotXGRlZlxuZXh0IyMxe39cbmV4dAEyMzYw LDc3NTI4Ci1cZGVmXEVleGFtcGxle39cRWV4YW1wbGUBMjM2NCw3NzU3MAotXGRlZlxFc21hbGxl eGFtcGxle39cRXNtYWxsZXhhbXBsZQEyMzY3LDc3NjE3Ci1cZGVmXHNtYWxsbGlzcHh7f1xzbWFs bGxpc3B4ATIzNzMsNzc3OTUKLVxkZWZcRXNtYWxsbGlzcHt/XEVzbWFsbGxpc3ABMjM4Myw3ODE0 OQorXGRlZlx1bm51bWJzdWJzdWJzZWNlbnRyeSMxIzJ7f3VubnVtYnN1YnN1YnNlY2VudHJ5ATIx MTIsNjk3MDYKK1xkZWZcZG9jaGFwZW50cnkjMSMye39kb2NoYXBlbnRyeQEyMTIzLDcwMDgwCitc ZGVmXGRvc2VjZW50cnkjMSMye39kb3NlY2VudHJ5ATIxMzgsNzA2ODUKK1xkZWZcZG9zdWJzZWNl bnRyeSMxIzJ7f2Rvc3Vic2VjZW50cnkBMjE0NSw3MDg2MworXGRlZlxkb3N1YnN1YnNlY2VudHJ5 IzEjMnt/ZG9zdWJzdWJzZWNlbnRyeQEyMTUyLDcxMDQ4CitcZGVmXGxhYmVsc3BhY2V7f2xhYmVs c3BhY2UBMjE2MCw3MTI5OQorXGRlZlxkb3BhZ2VubyMxe39kb3BhZ2VubwEyMTYyLDcxMzM0Citc ZGVmXGRvc2hvcnRwYWdlbm8jMXt/ZG9zaG9ydHBhZ2VubwEyMTYzLDcxMzYwCitcZGVmXGNoYXBl bnRyeWZvbnRze39jaGFwZW50cnlmb250cwEyMTY1LDcxMzkyCitcZGVmXHNlY2VudHJ5Zm9udHN7 f3NlY2VudHJ5Zm9udHMBMjE2Niw3MTQyNworXGxldFxzdWJzZWNlbnRyeWZvbnRzID0gXHRleHRm b250c39zdWJzZWNlbnRyeWZvbnRzATIxNjcsNzE0NTgKK1xsZXRcc3Vic3Vic2VjZW50cnlmb250 cyA9IFx0ZXh0Zm9udHN/c3Vic3Vic2VjZW50cnlmb250cwEyMTY4LDcxNDkzCitcbGV0XHB0ZXhl cXVpdiA9IFxlcXVpdn9wdGV4ZXF1aXYBMjE4MCw3MTg5NgorXGRlZlxwb2ludHt/cG9pbnQBMjE5 Miw3MjM4NgorXGRlZlxyZXN1bHR7f3Jlc3VsdAEyMTk0LDcyNDA3CitcZGVmXGV4cGFuc2lvbnt/ ZXhwYW5zaW9uATIxOTUsNzI0ODAKK1xkZWZccHJpbnR7f3ByaW50ATIxOTYsNzI1NTEKK1xkZWZc ZXF1aXZ7f2VxdWl2ATIxOTgsNzI2MTgKK1xkZWZcZXJyb3J7f2Vycm9yATIyMTgsNzMzOTEKK1xk ZWZcdGV4e390ZXgBMjIyNCw3MzYyMAorXGNhdGNvZGUgYFxePTcgXGNhdGNvZGUgYFxfPTggXGNh dGNvZGUgYFx+PTEzIFxsZXR+PVx0aWV/fgEyMjI3LDczNzMxCitcbGV0XHs9XHB0ZXhsYnJhY2V/ ewEyMjM3LDczOTEyCitcbGV0XH09XHB0ZXhyYnJhY2V/fQEyMjM4LDczOTMxCitcbGV0XC49XHB0 ZXhkb3R/LgEyMjM5LDczOTUwCitcbGV0XCo9XHB0ZXhzdGFyfyoBMjI0MCw3Mzk2NgorXGxldFxk b3RzPVxwdGV4ZG90c39kb3RzATIyNDEsNzM5ODMKK1xkZWZcQHt/QAEyMjQyLDc0MDAzCitcbGV0 XGJ1bGxldD1ccHRleGJ1bGxldH9idWxsZXQBMjI0Myw3NDAxNAorXGxldFxiPVxwdGV4YiBcbGV0 XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhsf2IBMjI0 NCw3NDAzOAorXGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0 PVxwdGV4dCBcbGV0XGw9XHB0ZXhsf2MBMjI0NCw3NDAzOAorXGxldFxiPVxwdGV4YiBcbGV0XGM9 XHB0ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhsf2kBMjI0NCw3 NDAzOAorXGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0PVxw dGV4dCBcbGV0XGw9XHB0ZXhsf3QBMjI0NCw3NDAzOAorXGxldFxiPVxwdGV4YiBcbGV0XGM9XHB0 ZXhjIFxsZXRcaT1ccHRleGkgXGxldFx0PVxwdGV4dCBcbGV0XGw9XHB0ZXhsf2wBMjI0NCw3NDAz OAorXGxldFxMPVxwdGV4TH9MATIyNDUsNzQxMDgKK1xsZXRcRXRleD1cZW5kZ3JvdXB9f0V0ZXgB MjI0Nyw3NDEyNAorXGdkZWZcbGlzcHBhcnt/bGlzcHBhcgEyMjU5LDc0NTE3CitcZ2RlZlxzZXBz cGFjZXN7f3NlcHNwYWNlcwEyMjY1LDc0NzM1CitcZGVmXGFib3ZlZW52YnJlYWt7f2Fib3ZlZW52 YnJlYWsBMjI2OCw3NDgxNworXGRlZlxhZnRlcmVudmJyZWFre39hZnRlcmVudmJyZWFrATIyNzIs NzQ5ODMKK1xsZXRcbm9uYXJyb3dpbmc9XHJlbGF4f25vbmFycm93aW5nATIyNzYsNzUxNzYKK1xk ZWZcY3Rse39jdGwBMjI4Niw3NTQ5NAorXGRlZlxjdHJ7f2N0cgEyMjg3LDc1NTY2CitcZGVmXGNi bHt/Y2JsATIyODgsNzU2MDUKK1xkZWZcY2Jye39jYnIBMjI4OSw3NTY0NQorXGRlZlxjYXJ0dG9w e39jYXJ0dG9wATIyOTAsNzU2ODQKK1xkZWZcY2FydGJvdHt/Y2FydGJvdAEyMjkzLDc1NzkyCitc bG9uZ1xkZWZcY2FydG91Y2hle39jYXJ0b3VjaGUBMjI5OSw3NTkzMgorCVxsZXRcbm9uYXJyb3dp bmc9XGNvbW1lbnR/bm9uYXJyb3dpbmcBMjMxMSw3NjQwNAorXGRlZlxFY2FydG91Y2hle39FY2Fy dG91Y2hlATIzMjYsNzY3MjAKK1xkZWZcbGlzcHt/bGlzcAEyMzM4LDc2ODU1CitcbGV0XHBhcj1c bGlzcHBhcn9wYXIBMjM0Nyw3NzE4NAorXGRlZlxFbGlzcHt/RWxpc3ABMjM0OCw3NzIwMgorXGxl dFxleGRlbnQ9XG5vZmlsbGV4ZGVudH9leGRlbnQBMjM1NSw3NzQxOAorXGxldFxub25hcnJvd2lu Zz1ccmVsYXh/bm9uYXJyb3dpbmcBMjM1Niw3NzQ0NAorXGRlZlxuZXh0IyMxe39uZXh0ATIzNjAs Nzc1MjgKK1xsZXRcZXhhbXBsZT1cbGlzcH9leGFtcGxlATIzNjMsNzc1NTEKK1xkZWZcRWV4YW1w bGV7f0VleGFtcGxlATIzNjQsNzc1NzAKK1xsZXRcc21hbGxleGFtcGxlPVxsaXNwf3NtYWxsZXhh bXBsZQEyMzY2LDc3NTkzCitcZGVmXEVzbWFsbGV4YW1wbGV7f0VzbWFsbGV4YW1wbGUBMjM2Nyw3 NzYxNworXGRlZlxzbWFsbGxpc3B4e39zbWFsbGxpc3B4ATIzNzMsNzc3OTUKK1xsZXRccGFyPVxs aXNwcGFyf3BhcgEyMzgyLDc4MTMxCitcZGVmXEVzbWFsbGxpc3B7f0VzbWFsbGxpc3ABMjM4Myw3 ODE0OQorXGxldFxleGRlbnQ9XG5vZmlsbGV4ZGVudH9leGRlbnQBMjM5Miw3ODQzNgorXGxldFxu b25hcnJvd2luZz1ccmVsYXh/bm9uYXJyb3dpbmcBMjM5Myw3ODQ2MgogXG9iZXlzcGFjZXMgXG9i ZXlsaW5lcyBcbmluZXR0IFxpbmRleGZvbnRzIFxyYXdiYWNrc2xhc2h/Zm9udHMBMjM5Niw3ODUw NQotXGRlZlxuZXh0IyMxe39cbmV4dAEyMzk3LDc4NTYyCi1cZGVmXGRpc3BsYXl7f1xkaXNwbGF5 ATI0MDEsNzg2NDIKLVxkZWZcRWRpc3BsYXl7f1xFZGlzcGxheQEyNDEwLDc4OTYxCi1cZGVmXG5l eHQjIzF7f1xuZXh0ATI0MjIsNzkyNzIKLVxkZWZcZm9ybWF0e39cZm9ybWF0ATI0MjYsNzkzNzUK LVxkZWZcRWZvcm1hdHt/XEVmb3JtYXQBMjQzNCw3OTY3MQotXGRlZlxuZXh0IyMxe39cbmV4dAEy NDM3LDc5NzYwCi1cZGVmXGZsdXNobGVmdHt/XGZsdXNobGVmdAEyNDQxLDc5ODEyCi1cZGVmXEVm bHVzaGxlZnR7f1xFZmx1c2hsZWZ0ATI0NTEsODAxODMKLVxkZWZcbmV4dCMjMXt/XG5leHQBMjQ1 NCw4MDI3NgotXGRlZlxmbHVzaHJpZ2h0e39cZmx1c2hyaWdodAEyNDU2LDgwMjk4Ci1cZGVmXEVm bHVzaHJpZ2h0e39cRWZsdXNocmlnaHQBMjQ2Niw4MDY3MAotXGRlZlxuZXh0IyMxe39cbmV4dAEy NDcwLDgwODAxCi1cZGVmXHF1b3RhdGlvbnt/XHF1b3RhdGlvbgEyNDc0LDgwODU5Ci1cZGVmXEVx dW90YXRpb257f1xFcXVvdGF0aW9uATI0ODAsODEwNTEKLVxkZWZcc2V0ZGVmZm9udCAjMSB7f1xz ZXRkZWZmb250ATI0OTMsODE0NDkKK1xkZWZcbmV4dCMjMXt/bmV4dAEyMzk3LDc4NTYyCitcZGVm XGRpc3BsYXl7f2Rpc3BsYXkBMjQwMSw3ODY0MgorXGxldFxwYXI9XGxpc3BwYXJ/cGFyATI0MDks Nzg5NDMKK1xkZWZcRWRpc3BsYXl7f0VkaXNwbGF5ATI0MTAsNzg5NjEKK1xsZXRcZXhkZW50PVxu b2ZpbGxleGRlbnR/ZXhkZW50ATI0MTcsNzkxODAKK1xsZXRcbm9uYXJyb3dpbmc9XHJlbGF4f25v bmFycm93aW5nATI0MTgsNzkyMDYKK1xkZWZcbmV4dCMjMXt/bmV4dAEyNDIyLDc5MjcyCitcZGVm XGZvcm1hdHt/Zm9ybWF0ATI0MjYsNzkzNzUKK1xsZXRccGFyPVxsaXNwcGFyf3BhcgEyNDMzLDc5 NjUzCitcZGVmXEVmb3JtYXR7f0Vmb3JtYXQBMjQzNCw3OTY3MQorXGRlZlxuZXh0IyMxe39uZXh0 ATI0MzcsNzk3NjAKK1xkZWZcZmx1c2hsZWZ0e39mbHVzaGxlZnQBMjQ0MSw3OTgxMgorXGxldFxw YXI9XGxpc3BwYXJ/cGFyATI0NTAsODAxNjUKK1xkZWZcRWZsdXNobGVmdHt/RWZsdXNobGVmdAEy NDUxLDgwMTgzCitcZGVmXG5leHQjIzF7f25leHQBMjQ1NCw4MDI3NgorXGRlZlxmbHVzaHJpZ2h0 e39mbHVzaHJpZ2h0ATI0NTYsODAyOTgKK1xsZXRccGFyPVxsaXNwcGFyf3BhcgEyNDY1LDgwNjUy CitcZGVmXEVmbHVzaHJpZ2h0e39FZmx1c2hyaWdodAEyNDY2LDgwNjcwCitcZGVmXG5leHQjIzF7 f25leHQBMjQ3MCw4MDgwMQorXGRlZlxxdW90YXRpb257f3F1b3RhdGlvbgEyNDc0LDgwODU5Citc ZGVmXEVxdW90YXRpb257f0VxdW90YXRpb24BMjQ4MCw4MTA1MQorXGxldFxub25hcnJvd2luZz1c cmVsYXh/bm9uYXJyb3dpbmcBMjQ4Nyw4MTMwMQorXGRlZlxzZXRkZWZmb250ICMxIHt/c2V0ZGVm Zm9udAEyNDkzLDgxNDQ5CitcbmV3c2tpcFxkZWZib2R5aW5kZW50IFxkZWZib2R5aW5kZW50PS40 aW5/Ym9keWluZGVudAEyNDk1LDgxNDk1CiBcbmV3c2tpcFxkZWZib2R5aW5kZW50IFxkZWZib2R5 aW5kZW50PS40aW5/Ym9keWluZGVudAEyNDk1LDgxNDk1CiBcbmV3c2tpcFxkZWZhcmdzaW5kZW50 IFxkZWZhcmdzaW5kZW50PTUwcHR/YXJnc2luZGVudAEyNDk2LDgxNTM4CitcbmV3c2tpcFxkZWZh cmdzaW5kZW50IFxkZWZhcmdzaW5kZW50PTUwcHR/YXJnc2luZGVudAEyNDk2LDgxNTM4CiBcbmV3 c2tpcFxkZWZ0eXBlbWFyZ2luIFxkZWZ0eXBlbWFyZ2luPTEycHR/dHlwZW1hcmdpbgEyNDk3LDgx NTgxCitcbmV3c2tpcFxkZWZ0eXBlbWFyZ2luIFxkZWZ0eXBlbWFyZ2luPTEycHR/dHlwZW1hcmdp bgEyNDk3LDgxNTgxCitcbmV3c2tpcFxkZWZsYXN0YXJnbWFyZ2luIFxkZWZsYXN0YXJnbWFyZ2lu PTE4cHR/bGFzdGFyZ21hcmdpbgEyNDk4LDgxNjI0CiBcbmV3c2tpcFxkZWZsYXN0YXJnbWFyZ2lu IFxkZWZsYXN0YXJnbWFyZ2luPTE4cHR/bGFzdGFyZ21hcmdpbgEyNDk4LDgxNjI0Ci1cZGVmXGFj dGl2ZXBhcmVuc3t/XGFjdGl2ZXBhcmVucwEyNTAzLDgxODIyCi1cZGVmXG9wbnJ7f1xvcG5yATI1 MjksODMwMzQKLVxkZWZcbGJyYnt/XGxicmIBMjUzMCw4MzA5OQotXGRlZlxkZWZuYW1lICMxIzJ7 f1xkZWZuYW1lATI1MzYsODMzMDAKK1xkZWZcYWN0aXZlcGFyZW5ze39hY3RpdmVwYXJlbnMBMjUw Myw4MTgyMgorXGdkZWZcZnVuY3Rpb25wYXJlbnN7f2Z1bmN0aW9ucGFyZW5zATI1MDcsODIwMTYK K1xnZGVmXGZ1bmN0aW9ucGFyZW5ze1xib2xkYnJheFxsZXQmPVxhbXBybVxwYXJlbmNvdW50PTAg fX8mATI1MDcsODIwMTYKK1xnZGVmXGJvbGRicmF4e39ib2xkYnJheAEyNTA4LDgyMDc0CitcZ2Rl Zlxib2xkYnJheHtcbGV0KD1cb3BuclxsZXQpPVxjbG5yXGxldFs9XGxicmJcbGV0XT1ccmJyYn1/ KAEyNTA4LDgyMDc0CitcZ2RlZlxib2xkYnJheHtcbGV0KD1cb3BuclxsZXQpPVxjbG5yXGxldFs9 XGxicmJcbGV0XT1ccmJyYn1/KQEyNTA4LDgyMDc0CitcZ2RlZlxib2xkYnJheHtcbGV0KD1cb3Bu clxsZXQpPVxjbG5yXGxldFs9XGxicmJcbGV0XT1ccmJyYn1/WwEyNTA4LDgyMDc0CitcZ2RlZlxi b2xkYnJheHtcbGV0KD1cb3BuclxsZXQpPVxjbG5yXGxldFs9XGxicmJcbGV0XT1ccmJyYn1/XQEy NTA4LDgyMDc0CitcZ2RlZlxvcHJtIzEge39vcHJtATI1MTIsODIyNTAKK1xnZGVmXG9wcm0jMSB7 e1xybVxjaGFyYFwofSMxIFxiZiBcbGV0KD1cb3BuZXN0ZWQgJX8oATI1MTIsODIyNTAKK1xnZGVm XG9wbmVzdGVke39vcG5lc3RlZAEyNTE2LDgyNDA3CitcZ2RlZlxjbHJte39jbHJtATI1MTgsODI0 NjYKK1xpZm51bSBccGFyZW5jb3VudD0xIHtccm0gXGNoYXIgYFwpfVxzbCBcbGV0KD1cb3BybSBc ZWxzZSBcY2hhciBgXCkgXGZpfygBMjUyMCw4MjYwMgorXGdkZWZcYW1wcm0jMSB7f2FtcHJtATI1 MjMsODI3NjkKK1xnZGVmXGFtcHJtIzEge3tccm1cJiMxfVxsZXQoPVxvcHJtIFxsZXQpPVxjbHJt XCB9fygBMjUyMyw4Mjc2OQorXGdkZWZcYW1wcm0jMSB7e1xybVwmIzF9XGxldCg9XG9wcm0gXGxl dCk9XGNscm1cIH1/KQEyNTIzLDgyNzY5CitcZ2RlZlxub3JtYWxwYXJlbnN7f25vcm1hbHBhcmVu cwEyNTI1LDgyODIyCitcZ2RlZlxub3JtYWxwYXJlbnN7XGJvbGRicmF4XGxldCY9XGFtcG5yfX8m ATI1MjUsODI4MjIKK1xkZWZcb3Bucnt/b3BucgEyNTI5LDgzMDM0CitcZGVmXG9wbnJ7e1xzZlxj aGFyYFwofX0gXGRlZlxjbG5ye39jbG5yATI1MjksODMwMzQKK1xkZWZcb3Bucnt7XHNmXGNoYXJg XCh9fSBcZGVmXGNsbnJ7e1xzZlxjaGFyYFwpfX0gXGRlZlxhbXBucnt/YW1wbnIBMjUyOSw4MzAz NAorXGRlZlxsYnJie39sYnJiATI1MzAsODMwOTkKK1xkZWZcbGJyYnt7XGJmXGNoYXJgXFt9fSBc ZGVmXHJicmJ7f3JicmIBMjUzMCw4MzA5OQorXGRlZlxkZWZuYW1lICMxIzJ7f2RlZm5hbWUBMjUz Niw4MzMwMAogXGFkdmFuY2VcZGltZW4yIGJ5IC1cZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI1 NDAsODM0MTgKIFxhZHZhbmNlXGRpbWVuMyBieSAtXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEy NTQyLDgzNDcyCiBcc2V0Ym94MD1caGJveHtcaHNraXAgXGRlZmxhc3RhcmdtYXJnaW57f2xhc3Rh cmdtYXJnaW4BMjU0NCw4MzUyNgorXHNldGJveDA9XGhib3h7XGhza2lwIFxkZWZsYXN0YXJnbWFy Z2lue1xybSAjMn1caHNraXAgXGRlZnR5cGVtYXJnaW59f3R5cGVtYXJnaW4BMjU0NCw4MzUyNgog XGRpbWVuMT1caHNpemUgXGFkdmFuY2UgXGRpbWVuMSBieSAtXGRlZmFyZ3NpbmRlbnQgJXNpemUg Zm9yIGNvbnRpbnVhdGlvbnN/YXJnc2luZGVudAEyNTQ2LDgzNjY4CiBccGFyc2hhcGUgMiAwaW4g XGRpbWVuMCBcZGVmYXJnc2luZGVudCBcZGltZW4xICAgICAlf2FyZ3NpbmRlbnQBMjU0Nyw4Mzc0 MwogXHJsYXB7XHJpZ2h0bGluZXt7XHJtICMyfVxoc2tpcCBcZGVmdHlwZW1hcmdpbn1/dHlwZW1h cmdpbgEyNTU0LDg0MTEyCiBcYWR2YW5jZVxsZWZ0c2tpcCBieSAtXGRlZmJvZHlpbmRlbnR/Ym9k eWluZGVudAEyNTU3LDg0MjQ2CiBcZXhkZW50YW1vdW50PVxkZWZib2R5aW5kZW50f2JvZHlpbmRl bnQBMjU1OCw4NDI4MwotXGRlZlxkZWZwYXJzZWJvZHkgIzEjMiMze39cZGVmcGFyc2Vib2R5ATI1 NjgsODQ2NDIKLVxkZWYjMXt/MjU3Miw4NDgyNgotXGRlZiMye38yNTczLDg0ODYyCitcZGVmXGRl ZnBhcnNlYm9keSAjMSMyIzN7f2RlZnBhcnNlYm9keQEyNTY4LDg0NjQyCitcYWR2YW5jZVxsZWZ0 c2tpcCBieSBcZGVmYm9keWluZGVudCBcYWR2YW5jZSBccmlnaHRza2lwIGJ5IFxkZWZib2R5aW5k ZW50f2JvZHlpbmRlbnQBMjU3NSw4NDkzNAogXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlp bmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI1 NzUsODQ5MzQKIFxleGRlbnRhbW91bnQ9XGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNTc2LDg1 MDA4Ci1cZGVmXGRlZm1ldGhwYXJzZWJvZHkgIzEjMiMzIzQge39cZGVmbWV0aHBhcnNlYm9keQEy NTgxLDg1MTEyCi1cZGVmIzF7fzI1ODUsODUyNzMKLVxkZWYjMiMjMSB7fzI1ODYsODUzMDkKK1xk ZWZcZGVmbWV0aHBhcnNlYm9keSAjMSMyIzMjNCB7f2RlZm1ldGhwYXJzZWJvZHkBMjU4MSw4NTEx MgorXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tp cCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI1ODgsODUzOTIKIFxhZHZhbmNlXGxlZnRz a2lwIGJ5IFxkZWZib2R5aW5kZW50IFxhZHZhbmNlIFxyaWdodHNraXAgYnkgXGRlZmJvZHlpbmRl bnR/Ym9keWluZGVudAEyNTg4LDg1MzkyCiBcZXhkZW50YW1vdW50PVxkZWZib2R5aW5kZW50f2Jv ZHlpbmRlbnQBMjU4OSw4NTQ2NgotXGRlZlxkZWZvcHBhcnNlYm9keSAjMSMyIzMjNCM1IHt/XGRl Zm9wcGFyc2Vib2R5ATI1OTIsODU1NTEKLVxkZWYjMXt/MjU5Niw4NTcxMgotXGRlZiMyIyMxICMj MiB7fzI1OTcsODU3NDgKK1xkZWZcZGVmb3BwYXJzZWJvZHkgIzEjMiMzIzQjNSB7f2RlZm9wcGFy c2Vib2R5ATI1OTIsODU1NTEKK1xhZHZhbmNlXGxlZnRza2lwIGJ5IFxkZWZib2R5aW5kZW50IFxh ZHZhbmNlIFxyaWdodHNraXAgYnkgXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNjAwLDg1ODQ4 CiBcYWR2YW5jZVxsZWZ0c2tpcCBieSBcZGVmYm9keWluZGVudCBcYWR2YW5jZSBccmlnaHRza2lw IGJ5IFxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjYwMCw4NTg0OAogXGV4ZGVudGFtb3VudD1c ZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI2MDEsODU5MjIKLVxkZWZcZGVmdmFycGFyc2Vib2R5 ICMxIzIjM3t/XGRlZnZhcnBhcnNlYm9keQEyNjA4LDg2MTkzCi1cZGVmIzF7fzI2MTIsODYzODAK LVxkZWYjMnt/MjYxMyw4NjQxNgorXGRlZlxkZWZ2YXJwYXJzZWJvZHkgIzEjMiMze39kZWZ2YXJw YXJzZWJvZHkBMjYwOCw4NjE5MworXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlpbmRlbnQg XGFkdmFuY2UgXHJpZ2h0c2tpcCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI2MTUsODY0 NzUKIFxhZHZhbmNlXGxlZnRza2lwIGJ5IFxkZWZib2R5aW5kZW50IFxhZHZhbmNlIFxyaWdodHNr aXAgYnkgXGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNjE1LDg2NDc1CiBcZXhkZW50YW1vdW50 PVxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQBMjYxNiw4NjU0OQotXGRlZlxkZWZ2cnBhcnNlYm9k eSAjMSMyIzMjNCB7f1xkZWZ2cnBhcnNlYm9keQEyNjIxLDg2NjQwCi1cZGVmIzF7fzI2MjUsODY3 OTkKLVxkZWYjMiMjMSB7fzI2MjYsODY4MzUKK1xkZWZcZGVmdnJwYXJzZWJvZHkgIzEjMiMzIzQg e39kZWZ2cnBhcnNlYm9keQEyNjIxLDg2NjQwCitcYWR2YW5jZVxsZWZ0c2tpcCBieSBcZGVmYm9k eWluZGVudCBcYWR2YW5jZSBccmlnaHRza2lwIGJ5IFxkZWZib2R5aW5kZW50f2JvZHlpbmRlbnQB MjYyOCw4NjkwNQogXGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFkdmFuY2Ug XHJpZ2h0c2tpcCBieSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI2MjgsODY5MDUKIFxleGRl bnRhbW91bnQ9XGRlZmJvZHlpbmRlbnR/Ym9keWluZGVudAEyNjI5LDg2OTc5Ci1cZGVmXGRlZm9w dmFycGFyc2Vib2R5ICMxIzIjMyM0IzUge39cZGVmb3B2YXJwYXJzZWJvZHkBMjYzMiw4NzA1MQot XGRlZiMxe38yNjM2LDg3MjE1Ci1cZGVmIzIjIzEgIyMyIHt/MjYzNyw4NzI1MQorXGRlZlxkZWZv cHZhcnBhcnNlYm9keSAjMSMyIzMjNCM1IHt/ZGVmb3B2YXJwYXJzZWJvZHkBMjYzMiw4NzA1MQor XGFkdmFuY2VcbGVmdHNraXAgYnkgXGRlZmJvZHlpbmRlbnQgXGFkdmFuY2UgXHJpZ2h0c2tpcCBi eSBcZGVmYm9keWluZGVudH9ib2R5aW5kZW50ATI2NDAsODczMzgKIFxhZHZhbmNlXGxlZnRza2lw IGJ5IFxkZWZib2R5aW5kZW50IFxhZHZhbmNlIFxyaWdodHNraXAgYnkgXGRlZmJvZHlpbmRlbnR/ Ym9keWluZGVudAEyNjQwLDg3MzM4CiBcZXhkZW50YW1vdW50PVxkZWZib2R5aW5kZW50f2JvZHlp bmRlbnQBMjY0MSw4NzQxMgotXGRlZlxkZWZ1bmFyZ3MgIzF7f1xkZWZ1bmFyZ3MBMjY2NCw4ODE3 MgotXGRlZlxkZWZ0eXBlZnVuYXJncyAjMXt/XGRlZnR5cGVmdW5hcmdzATI2NzYsODg1NTQKLVxk ZWZcZGVmZm57f1xkZWZmbgEyNjkwLDg4OTM2Ci1cZGVmXGRlZmZuaGVhZGVyICMxIzIjM3t/XGRl ZmZuaGVhZGVyATI2OTIsODg5OTMKK1xnZGVmXHNwYWNlc3BsaXQjMSMyXl5Ne39zcGFjZXNwbGl0 ATI2NTIsODc3NzUKK1xsb25nXGdkZWZcc3BhY2VzcGxpdGZvbyMxIzIgIzMjNFxzcGFjZXNwbGl0 Zm9ve39zcGFjZXNwbGl0Zm9vATI2NTMsODc4NTIKK1xkZWZcZGVmdW5hcmdzICMxe39kZWZ1bmFy Z3MBMjY2NCw4ODE3MgorXGRlZlxkZWZ0eXBlZnVuYXJncyAjMXt/ZGVmdHlwZWZ1bmFyZ3MBMjY3 Niw4ODU1NAorXGRlZlxkZWZmbnt/ZGVmZm4BMjY5MCw4ODkzNgorXGRlZlxkZWZmbntcZGVmbWV0 aHBhcnNlYm9keVxFZGVmZm5cZGVmZm54XGRlZmZuaGVhZGVyfX9tZXRocGFyc2Vib2R5XEVkZWZm bgEyNjkwLDg4OTM2CitcZGVmXGRlZmZue1xkZWZtZXRocGFyc2Vib2R5XEVkZWZmblxkZWZmbnhc ZGVmZm5oZWFkZXJ9f2ZueFxkZWZmbmhlYWRlcgEyNjkwLDg4OTM2CitcZGVmXGRlZmZue1xkZWZt ZXRocGFyc2Vib2R5XEVkZWZmblxkZWZmbnhcZGVmZm5oZWFkZXJ9f2ZuaGVhZGVyATI2OTAsODg5 MzYKK1xkZWZcZGVmZm5oZWFkZXIgIzEjMiMze39kZWZmbmhlYWRlcgEyNjkyLDg4OTkzCiBcYmVn aW5ncm91cFxkZWZuYW1lIHt/bmFtZQEyNjkzLDg5MDQxCi1cZGVmXGRlZnVue39cZGVmdW4BMjY5 OSw4OTE4NgotXGRlZlxkZWZ1bmhlYWRlciAjMSMye39cZGVmdW5oZWFkZXIBMjcwMSw4OTIzOQor XGJlZ2luZ3JvdXBcZGVmbmFtZSB7IzJ9eyMxfVxkZWZ1bmFyZ3N7f3VuYXJncwEyNjkzLDg5MDQx CitcZGVmXGRlZnVue39kZWZ1bgEyNjk5LDg5MTg2CitcZGVmXGRlZnVue1xkZWZwYXJzZWJvZHlc RWRlZnVuXGRlZnVueFxkZWZ1bmhlYWRlcn1/cGFyc2Vib2R5XEVkZWZ1bgEyNjk5LDg5MTg2Citc ZGVmXGRlZnVue1xkZWZwYXJzZWJvZHlcRWRlZnVuXGRlZnVueFxkZWZ1bmhlYWRlcn1/dW54XGRl ZnVuaGVhZGVyATI2OTksODkxODYKK1xkZWZcZGVmdW57XGRlZnBhcnNlYm9keVxFZGVmdW5cZGVm dW54XGRlZnVuaGVhZGVyfX91bmhlYWRlcgEyNjk5LDg5MTg2CitcZGVmXGRlZnVuaGVhZGVyICMx IzJ7f2RlZnVuaGVhZGVyATI3MDEsODkyMzkKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI3 MDIsODkzMTQKIFxkZWZ1bmFyZ3Mge391bmFyZ3MBMjcwMyw4OTM1MAotXGRlZlxkZWZ0eXBlZnVu e39cZGVmdHlwZWZ1bgEyNzA5LDg5NDk4Ci1cZGVmXGRlZnR5cGVmdW5oZWFkZXIgIzEjMnt/XGRl ZnR5cGVmdW5oZWFkZXIBMjcxMiw4OTYyMAotXGRlZlxkZWZ0eXBlZnVuaGVhZGVyeCAjMSMyICMz XHJlbGF4e39cZGVmdHlwZWZ1bmhlYWRlcngBMjcxNCw4OTcyOQorXGRlZlxkZWZ0eXBlZnVue39k ZWZ0eXBlZnVuATI3MDksODk0OTgKK1xkZWZcZGVmdHlwZWZ1bntcZGVmcGFyc2Vib2R5XEVkZWZ0 eXBlZnVuXGRlZnR5cGVmdW54XGRlZnR5cGVmdW5oZWFkZXJ9f3BhcnNlYm9keVxFZGVmdHlwZWZ1 bgEyNzA5LDg5NDk4CitcZGVmXGRlZnR5cGVmdW57XGRlZnBhcnNlYm9keVxFZGVmdHlwZWZ1blxk ZWZ0eXBlZnVueFxkZWZ0eXBlZnVuaGVhZGVyfX90eXBlZnVueFxkZWZ0eXBlZnVuaGVhZGVyATI3 MDksODk0OTgKK1xkZWZcZGVmdHlwZWZ1bntcZGVmcGFyc2Vib2R5XEVkZWZ0eXBlZnVuXGRlZnR5 cGVmdW54XGRlZnR5cGVmdW5oZWFkZXJ9f3R5cGVmdW5oZWFkZXIBMjcwOSw4OTQ5OAorXGRlZlxk ZWZ0eXBlZnVuaGVhZGVyICMxIzJ7f2RlZnR5cGVmdW5oZWFkZXIBMjcxMiw4OTYyMAorXGRlZlxk ZWZ0eXBlZnVuaGVhZGVyICMxIzJ7XGRlZnR5cGVmdW5oZWFkZXJ4e390eXBlZnVuaGVhZGVyeAEy NzEyLDg5NjIwCitcZGVmXGRlZnR5cGVmdW5oZWFkZXJ4ICMxIzIgIzNccmVsYXh7f2RlZnR5cGVm dW5oZWFkZXJ4ATI3MTQsODk3MjkKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI3MTYsODk4 MjEKIFxkZWZ0eXBlZnVuYXJncyB7f3R5cGVmdW5hcmdzATI3MTcsODk4NjcKLVxkZWZcZGVmdHlw ZWZue39cZGVmdHlwZWZuATI3MjMsOTAwMzgKLVxkZWZcZGVmdHlwZWZuaGVhZGVyICMxIzIjM3t/ XGRlZnR5cGVmbmhlYWRlcgEyNzI2LDkwMTg3Ci1cZGVmXGRlZnR5cGVmbmhlYWRlcnggIzEjMiMz ICM0XHJlbGF4e39cZGVmdHlwZWZuaGVhZGVyeAEyNzI4LDkwMzIzCitcZGVmXGRlZnR5cGVmbnt/ ZGVmdHlwZWZuATI3MjMsOTAwMzgKK1xkZWZcZGVmdHlwZWZue1xkZWZtZXRocGFyc2Vib2R5XEVk ZWZ0eXBlZm5cZGVmdHlwZWZueFxkZWZ0eXBlZm5oZWFkZXJ9f21ldGhwYXJzZWJvZHlcRWRlZnR5 cGVmbgEyNzIzLDkwMDM4CitcZGVmXGRlZnR5cGVmbntcZGVmbWV0aHBhcnNlYm9keVxFZGVmdHlw ZWZuXGRlZnR5cGVmbnhcZGVmdHlwZWZuaGVhZGVyfX90eXBlZm54XGRlZnR5cGVmbmhlYWRlcgEy NzIzLDkwMDM4CitcZGVmXGRlZnR5cGVmbntcZGVmbWV0aHBhcnNlYm9keVxFZGVmdHlwZWZuXGRl ZnR5cGVmbnhcZGVmdHlwZWZuaGVhZGVyfX90eXBlZm5oZWFkZXIBMjcyMyw5MDAzOAorXGRlZlxk ZWZ0eXBlZm5oZWFkZXIgIzEjMiMze39kZWZ0eXBlZm5oZWFkZXIBMjcyNiw5MDE4NworXGRlZlxk ZWZ0eXBlZm5oZWFkZXIgIzEjMiMze1xkZWZ0eXBlZm5oZWFkZXJ4e390eXBlZm5oZWFkZXJ4ATI3 MjYsOTAxODcKK1xkZWZcZGVmdHlwZWZuaGVhZGVyeCAjMSMyIzMgIzRccmVsYXh7f2RlZnR5cGVm bmhlYWRlcngBMjcyOCw5MDMyMwogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjczMCw5MDQx NgogXGRlZnR5cGVmdW5hcmdzIHt/dHlwZWZ1bmFyZ3MBMjczMSw5MDQ1NgotXGRlZlxkZWZtYWN7 f1xkZWZtYWMBMjczNyw5MDU3NwotXGRlZlxkZWZtYWNoZWFkZXIgIzEjMnt/XGRlZm1hY2hlYWRl cgEyNzM5LDkwNjM0CitcZGVmXGRlZm1hY3t/ZGVmbWFjATI3MzcsOTA1NzcKK1xkZWZcZGVmbWFj e1xkZWZwYXJzZWJvZHlcRWRlZm1hY1xkZWZtYWN4XGRlZm1hY2hlYWRlcn1/cGFyc2Vib2R5XEVk ZWZtYWMBMjczNyw5MDU3NworXGRlZlxkZWZtYWN7XGRlZnBhcnNlYm9keVxFZGVmbWFjXGRlZm1h Y3hcZGVmbWFjaGVhZGVyfX9tYWN4XGRlZm1hY2hlYWRlcgEyNzM3LDkwNTc3CitcZGVmXGRlZm1h Y3tcZGVmcGFyc2Vib2R5XEVkZWZtYWNcZGVmbWFjeFxkZWZtYWNoZWFkZXJ9f21hY2hlYWRlcgEy NzM3LDkwNTc3CitcZGVmXGRlZm1hY2hlYWRlciAjMSMye39kZWZtYWNoZWFkZXIBMjczOSw5MDYz NAogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjc0MCw5MDcxMAogXGRlZnVuYXJncyB7f3Vu YXJncwEyNzQxLDkwNzQzCi1cZGVmXGRlZnNwZWN7f1xkZWZzcGVjATI3NDcsOTA4NjcKLVxkZWZc ZGVmc3BlY2hlYWRlciAjMSMye39cZGVmc3BlY2hlYWRlcgEyNzQ5LDkwOTI4CitcZGVmXGRlZnNw ZWN7f2RlZnNwZWMBMjc0Nyw5MDg2NworXGRlZlxkZWZzcGVje1xkZWZwYXJzZWJvZHlcRWRlZnNw ZWNcZGVmc3BlY3hcZGVmc3BlY2hlYWRlcn1/cGFyc2Vib2R5XEVkZWZzcGVjATI3NDcsOTA4NjcK K1xkZWZcZGVmc3BlY3tcZGVmcGFyc2Vib2R5XEVkZWZzcGVjXGRlZnNwZWN4XGRlZnNwZWNoZWFk ZXJ9f3NwZWN4XGRlZnNwZWNoZWFkZXIBMjc0Nyw5MDg2NworXGRlZlxkZWZzcGVje1xkZWZwYXJz ZWJvZHlcRWRlZnNwZWNcZGVmc3BlY3hcZGVmc3BlY2hlYWRlcn1/c3BlY2hlYWRlcgEyNzQ3LDkw ODY3CitcZGVmXGRlZnNwZWNoZWFkZXIgIzEjMnt/ZGVmc3BlY2hlYWRlcgEyNzQ5LDkwOTI4CiBc YmVnaW5ncm91cFxkZWZuYW1lIHt/bmFtZQEyNzUwLDkxMDA1CiBcZGVmdW5hcmdzIHt/dW5hcmdz ATI3NTEsOTEwNDUKLVxkZWZcZGVmZm54ICMxIHt/XGRlZmZueAEyNzU4LDkxMjQwCi1cZGVmXGRl ZnVueCAjMSB7f1xkZWZ1bngBMjc1OSw5MTI5NwotXGRlZlxkZWZtYWN4ICMxIHt/XGRlZm1hY3gB Mjc2MCw5MTM1NAotXGRlZlxkZWZzcGVjeCAjMSB7f1xkZWZzcGVjeAEyNzYxLDkxNDEzCi1cZGVm XGRlZnR5cGVmbnggIzEge39cZGVmdHlwZWZueAEyNzYyLDkxNDc0Ci1cZGVmXGRlZnR5cGV1bngg IzEge39cZGVmdHlwZXVueAEyNzYzLDkxNTM5Ci1cZGVmXGRlZm9wICMxIHt/XGRlZm9wATI3Njks OTE2ODUKLVxkZWZvcHBhcnNlYm9keVxFZGVmb3BcZGVmb3B4XGRlZm9waGVhZGVyXGRlZm9wdHlw ZX1/b3BwYXJzZWJvZHlcRWRlZm9wXGRlZm9weFxkZWZvcGhlYWRlclxkZWZvcHR5cGUBMjc3MCw5 MTcyMAotXGRlZlxkZWZvcGhlYWRlciAjMSMyIzN7f1xkZWZvcGhlYWRlcgEyNzcyLDkxNzc0Citc ZGVmXGRlZmZueCAjMSB7f2RlZmZueAEyNzU4LDkxMjQwCitcZGVmXGRlZnVueCAjMSB7f2RlZnVu eAEyNzU5LDkxMjk3CitcZGVmXGRlZm1hY3ggIzEge39kZWZtYWN4ATI3NjAsOTEzNTQKK1xkZWZc ZGVmc3BlY3ggIzEge39kZWZzcGVjeAEyNzYxLDkxNDEzCitcZGVmXGRlZnR5cGVmbnggIzEge39k ZWZ0eXBlZm54ATI3NjIsOTE0NzQKK1xkZWZcZGVmdHlwZXVueCAjMSB7f2RlZnR5cGV1bngBMjc2 Myw5MTUzOQorXGRlZlxkZWZvcCAjMSB7f2RlZm9wATI3NjksOTE2ODUKK1xkZWZcZGVmb3AgIzEg e1xkZWZcZGVmb3B0eXBle39kZWZvcHR5cGUBMjc2OSw5MTY4NQorXGRlZm9wcGFyc2Vib2R5XEVk ZWZvcFxkZWZvcHhcZGVmb3BoZWFkZXJcZGVmb3B0eXBlfX9vcHBhcnNlYm9keVxFZGVmb3ABMjc3 MCw5MTcyMAorXGRlZm9wcGFyc2Vib2R5XEVkZWZvcFxkZWZvcHhcZGVmb3BoZWFkZXJcZGVmb3B0 eXBlfX9vcHhcZGVmb3BoZWFkZXIBMjc3MCw5MTcyMAorXGRlZm9wcGFyc2Vib2R5XEVkZWZvcFxk ZWZvcHhcZGVmb3BoZWFkZXJcZGVmb3B0eXBlfX9vcGhlYWRlclxkZWZvcHR5cGUBMjc3MCw5MTcy MAorXGRlZm9wcGFyc2Vib2R5XEVkZWZvcFxkZWZvcHhcZGVmb3BoZWFkZXJcZGVmb3B0eXBlfX9v cHR5cGUBMjc3MCw5MTcyMAorXGRlZlxkZWZvcGhlYWRlciAjMSMyIzN7f2RlZm9waGVhZGVyATI3 NzIsOTE3NzQKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI3NzQsOTE4NjMKK1xiZWdpbmdy b3VwXGRlZm5hbWUgeyMyfXtcZGVmb3B0eXBle39vcHR5cGUBMjc3NCw5MTg2MwogXGRlZnVuYXJn cyB7f3VuYXJncwEyNzc1LDkxOTA5Ci1cZGVmXGRlZm1ldGhvZHt/XGRlZm1ldGhvZAEyNzgwLDkx OTcwCi1cZGVmXGRlZm1ldGhvZGhlYWRlciAjMSMyIzN7f1xkZWZtZXRob2RoZWFkZXIBMjc4Miw5 MjA0MworXGRlZlxkZWZtZXRob2R7f2RlZm1ldGhvZAEyNzgwLDkxOTcwCitcZGVmXGRlZm1ldGhv ZHtcZGVmbWV0aHBhcnNlYm9keVxFZGVmbWV0aG9kXGRlZm1ldGhvZHhcZGVmbWV0aG9kaGVhZGVy fX9tZXRocGFyc2Vib2R5XEVkZWZtZXRob2QBMjc4MCw5MTk3MAorXGRlZlxkZWZtZXRob2R7XGRl Zm1ldGhwYXJzZWJvZHlcRWRlZm1ldGhvZFxkZWZtZXRob2R4XGRlZm1ldGhvZGhlYWRlcn1/bWV0 aG9keFxkZWZtZXRob2RoZWFkZXIBMjc4MCw5MTk3MAorXGRlZlxkZWZtZXRob2R7XGRlZm1ldGhw YXJzZWJvZHlcRWRlZm1ldGhvZFxkZWZtZXRob2R4XGRlZm1ldGhvZGhlYWRlcn1/bWV0aG9kaGVh ZGVyATI3ODAsOTE5NzAKK1xkZWZcZGVmbWV0aG9kaGVhZGVyICMxIzIjM3t/ZGVmbWV0aG9kaGVh ZGVyATI3ODIsOTIwNDMKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI3ODQsOTIxMzEKIFxk ZWZ1bmFyZ3Mge391bmFyZ3MBMjc4NSw5MjE3MQotXGRlZlxkZWZjdiAjMSB7f1xkZWZjdgEyNzkw LDkyMjQ1Ci1cZGVmb3B2YXJwYXJzZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZjdmFyaGVhZGVyXGRl ZmN2dHlwZX1/b3B2YXJwYXJzZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZjdmFyaGVhZGVyXGRlZmN2 dHlwZQEyNzkxLDkyMjgwCi1cZGVmXGRlZmN2YXJoZWFkZXIgIzEjMiMze39cZGVmY3ZhcmhlYWRl cgEyNzkzLDkyMzM5CitcZGVmXGRlZmN2ICMxIHt/ZGVmY3YBMjc5MCw5MjI0NQorXGRlZlxkZWZj diAjMSB7XGRlZlxkZWZjdnR5cGV7f2RlZmN2dHlwZQEyNzkwLDkyMjQ1CitcZGVmb3B2YXJwYXJz ZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZjdmFyaGVhZGVyXGRlZmN2dHlwZX1/b3B2YXJwYXJzZWJv ZHlcRWRlZmN2ATI3OTEsOTIyODAKK1xkZWZvcHZhcnBhcnNlYm9keVxFZGVmY3ZcZGVmY3Z4XGRl ZmN2YXJoZWFkZXJcZGVmY3Z0eXBlfX9jdnhcZGVmY3ZhcmhlYWRlcgEyNzkxLDkyMjgwCitcZGVm b3B2YXJwYXJzZWJvZHlcRWRlZmN2XGRlZmN2eFxkZWZjdmFyaGVhZGVyXGRlZmN2dHlwZX1/Y3Zh cmhlYWRlclxkZWZjdnR5cGUBMjc5MSw5MjI4MAorXGRlZm9wdmFycGFyc2Vib2R5XEVkZWZjdlxk ZWZjdnhcZGVmY3ZhcmhlYWRlclxkZWZjdnR5cGV9f2N2dHlwZQEyNzkxLDkyMjgwCitcZGVmXGRl ZmN2YXJoZWFkZXIgIzEjMiMze39kZWZjdmFyaGVhZGVyATI3OTMsOTIzMzkKIFxiZWdpbmdyb3Vw XGRlZm5hbWUge39uYW1lATI3OTUsOTI0MjUKK1xiZWdpbmdyb3VwXGRlZm5hbWUgeyMyfXtcZGVm Y3Z0eXBle39jdnR5cGUBMjc5NSw5MjQyNQogXGRlZnZhcmFyZ3Mge392YXJhcmdzATI3OTYsOTI0 NzEKLVxkZWZcZGVmaXZhcnt/XGRlZml2YXIBMjgwMSw5MjU0NAotXGRlZlxkZWZpdmFyaGVhZGVy ICMxIzIjM3t/XGRlZml2YXJoZWFkZXIBMjgwMyw5MjYwNworXGRlZlxkZWZpdmFye39kZWZpdmFy ATI4MDEsOTI1NDQKK1xkZWZcZGVmaXZhcntcZGVmdnJwYXJzZWJvZHlcRWRlZml2YXJcZGVmaXZh cnhcZGVmaXZhcmhlYWRlcn1/dnJwYXJzZWJvZHlcRWRlZml2YXIBMjgwMSw5MjU0NAorXGRlZlxk ZWZpdmFye1xkZWZ2cnBhcnNlYm9keVxFZGVmaXZhclxkZWZpdmFyeFxkZWZpdmFyaGVhZGVyfX9p dmFyeFxkZWZpdmFyaGVhZGVyATI4MDEsOTI1NDQKK1xkZWZcZGVmaXZhcntcZGVmdnJwYXJzZWJv ZHlcRWRlZml2YXJcZGVmaXZhcnhcZGVmaXZhcmhlYWRlcn1/aXZhcmhlYWRlcgEyODAxLDkyNTQ0 CitcZGVmXGRlZml2YXJoZWFkZXIgIzEjMiMze39kZWZpdmFyaGVhZGVyATI4MDMsOTI2MDcKIFxi ZWdpbmdyb3VwXGRlZm5hbWUge39uYW1lATI4MDUsOTI2OTMKIFxkZWZ2YXJhcmdzIHt/dmFyYXJn cwEyODA2LDkyNzQ0Ci1cZGVmXGRlZm9weCAjMSB7f1xkZWZvcHgBMjgxMiw5Mjg5MwotXGRlZlxk ZWZtZXRob2R4ICMxIHt/XGRlZm1ldGhvZHgBMjgxMyw5Mjk1MAotXGRlZlxkZWZjdnggIzEge39c ZGVmY3Z4ATI4MTQsOTMwMTUKLVxkZWZcZGVmaXZhcnggIzEge39cZGVmaXZhcngBMjgxNSw5MzA3 MgotXGRlZlxkZWZ2YXJhcmdzICMxe39cZGVmdmFyYXJncwEyODIyLDkzMzQzCi1cZGVmXGRlZnZy e39cZGVmdnIBMjgyOCw5MzQ4NwotXGRlZlxkZWZ2cmhlYWRlciAjMSMyIzN7f1xkZWZ2cmhlYWRl cgEyODMwLDkzNTQyCitcZGVmXGRlZm9weCAjMSB7f2RlZm9weAEyODEyLDkyODkzCitcZGVmXGRl Zm1ldGhvZHggIzEge39kZWZtZXRob2R4ATI4MTMsOTI5NTAKK1xkZWZcZGVmY3Z4ICMxIHt/ZGVm Y3Z4ATI4MTQsOTMwMTUKK1xkZWZcZGVmaXZhcnggIzEge39kZWZpdmFyeAEyODE1LDkzMDcyCitc ZGVmXGRlZnZhcmFyZ3MgIzF7f2RlZnZhcmFyZ3MBMjgyMiw5MzM0MworXGRlZlxkZWZ2cnt/ZGVm dnIBMjgyOCw5MzQ4NworXGRlZlxkZWZ2cntcZGVmdnJwYXJzZWJvZHlcRWRlZnZyXGRlZnZyeFxk ZWZ2cmhlYWRlcn1/dnJwYXJzZWJvZHlcRWRlZnZyATI4MjgsOTM0ODcKK1xkZWZcZGVmdnJ7XGRl ZnZycGFyc2Vib2R5XEVkZWZ2clxkZWZ2cnhcZGVmdnJoZWFkZXJ9f3ZyeFxkZWZ2cmhlYWRlcgEy ODI4LDkzNDg3CitcZGVmXGRlZnZye1xkZWZ2cnBhcnNlYm9keVxFZGVmdnJcZGVmdnJ4XGRlZnZy aGVhZGVyfX92cmhlYWRlcgEyODI4LDkzNDg3CitcZGVmXGRlZnZyaGVhZGVyICMxIzIjM3t/ZGVm dnJoZWFkZXIBMjgzMCw5MzU0MgogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjgzMSw5MzU5 MAotXGRlZlxkZWZ2YXJ7f1xkZWZ2YXIBMjgzNSw5MzY3NQotXGRlZlxkZWZ2YXJoZWFkZXIgIzEj Mnt/XGRlZnZhcmhlYWRlcgEyODM3LDkzNzM1CitcYmVnaW5ncm91cFxkZWZuYW1lIHsjMn17IzF9 XGRlZnZhcmFyZ3N7f3ZhcmFyZ3MBMjgzMSw5MzU5MAorXGRlZlxkZWZ2YXJ7f2RlZnZhcgEyODM1 LDkzNjc1CitcZGVmXGRlZnZhcntcZGVmdmFycGFyc2Vib2R5XEVkZWZ2YXJcZGVmdmFyeFxkZWZ2 YXJoZWFkZXJ9f3ZhcnBhcnNlYm9keVxFZGVmdmFyATI4MzUsOTM2NzUKK1xkZWZcZGVmdmFye1xk ZWZ2YXJwYXJzZWJvZHlcRWRlZnZhclxkZWZ2YXJ4XGRlZnZhcmhlYWRlcn1/dmFyeFxkZWZ2YXJo ZWFkZXIBMjgzNSw5MzY3NQorXGRlZlxkZWZ2YXJ7XGRlZnZhcnBhcnNlYm9keVxFZGVmdmFyXGRl ZnZhcnhcZGVmdmFyaGVhZGVyfX92YXJoZWFkZXIBMjgzNSw5MzY3NQorXGRlZlxkZWZ2YXJoZWFk ZXIgIzEjMnt/ZGVmdmFyaGVhZGVyATI4MzcsOTM3MzUKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39u YW1lATI4MzgsOTM4MDYKIFxkZWZ2YXJhcmdzIHt/dmFyYXJncwEyODM5LDkzODQyCi1cZGVmXGRl Zm9wdHt/XGRlZm9wdAEyODQ0LDkzOTA4Ci1cZGVmXGRlZm9wdGhlYWRlciAjMSMye39cZGVmb3B0 aGVhZGVyATI4NDYsOTM5NjgKK1xkZWZcZGVmb3B0e39kZWZvcHQBMjg0NCw5MzkwOAorXGRlZlxk ZWZvcHR7XGRlZnZhcnBhcnNlYm9keVxFZGVmb3B0XGRlZm9wdHhcZGVmb3B0aGVhZGVyfX92YXJw YXJzZWJvZHlcRWRlZm9wdAEyODQ0LDkzOTA4CitcZGVmXGRlZm9wdHtcZGVmdmFycGFyc2Vib2R5 XEVkZWZvcHRcZGVmb3B0eFxkZWZvcHRoZWFkZXJ9f29wdHhcZGVmb3B0aGVhZGVyATI4NDQsOTM5 MDgKK1xkZWZcZGVmb3B0e1xkZWZ2YXJwYXJzZWJvZHlcRWRlZm9wdFxkZWZvcHR4XGRlZm9wdGhl YWRlcn1/b3B0aGVhZGVyATI4NDQsOTM5MDgKK1xkZWZcZGVmb3B0aGVhZGVyICMxIzJ7f2RlZm9w dGhlYWRlcgEyODQ2LDkzOTY4CiBcYmVnaW5ncm91cFxkZWZuYW1lIHt/bmFtZQEyODQ3LDk0MDM5 CiBcZGVmdmFyYXJncyB7f3ZhcmFyZ3MBMjg0OCw5NDA3OAotXGRlZlxkZWZ0eXBldmFye39cZGVm dHlwZXZhcgEyODUzLDk0MTM1Ci1cZGVmXGRlZnR5cGV2YXJoZWFkZXIgIzEjMnt/XGRlZnR5cGV2 YXJoZWFkZXIBMjg1Niw5NDI1MQorXGRlZlxkZWZ0eXBldmFye39kZWZ0eXBldmFyATI4NTMsOTQx MzUKK1xkZWZcZGVmdHlwZXZhcntcZGVmdmFycGFyc2Vib2R5XEVkZWZ0eXBldmFyXGRlZnR5cGV2 YXJ4XGRlZnR5cGV2YXJoZWFkZXJ9f3ZhcnBhcnNlYm9keVxFZGVmdHlwZXZhcgEyODUzLDk0MTM1 CitcZGVmXGRlZnR5cGV2YXJ7XGRlZnZhcnBhcnNlYm9keVxFZGVmdHlwZXZhclxkZWZ0eXBldmFy eFxkZWZ0eXBldmFyaGVhZGVyfX90eXBldmFyeFxkZWZ0eXBldmFyaGVhZGVyATI4NTMsOTQxMzUK K1xkZWZcZGVmdHlwZXZhcntcZGVmdmFycGFyc2Vib2R5XEVkZWZ0eXBldmFyXGRlZnR5cGV2YXJ4 XGRlZnR5cGV2YXJoZWFkZXJ9f3R5cGV2YXJoZWFkZXIBMjg1Myw5NDEzNQorXGRlZlxkZWZ0eXBl dmFyaGVhZGVyICMxIzJ7f2RlZnR5cGV2YXJoZWFkZXIBMjg1Niw5NDI1MQogXGJlZ2luZ3JvdXBc ZGVmbmFtZSB7f25hbWUBMjg1OCw5NDMzNAotXGRlZlxkZWZ0eXBldnJ7f1xkZWZ0eXBldnIBMjg2 NSw5NDUwOAotXGRlZlxkZWZ0eXBldnJoZWFkZXIgIzEjMiMze39cZGVmdHlwZXZyaGVhZGVyATI4 NjcsOTQ1NzkKK1xkZWZcZGVmdHlwZXZye39kZWZ0eXBldnIBMjg2NSw5NDUwOAorXGRlZlxkZWZ0 eXBldnJ7XGRlZnZycGFyc2Vib2R5XEVkZWZ0eXBldnJcZGVmdHlwZXZyeFxkZWZ0eXBldnJoZWFk ZXJ9f3ZycGFyc2Vib2R5XEVkZWZ0eXBldnIBMjg2NSw5NDUwOAorXGRlZlxkZWZ0eXBldnJ7XGRl ZnZycGFyc2Vib2R5XEVkZWZ0eXBldnJcZGVmdHlwZXZyeFxkZWZ0eXBldnJoZWFkZXJ9f3R5cGV2 cnhcZGVmdHlwZXZyaGVhZGVyATI4NjUsOTQ1MDgKK1xkZWZcZGVmdHlwZXZye1xkZWZ2cnBhcnNl Ym9keVxFZGVmdHlwZXZyXGRlZnR5cGV2cnhcZGVmdHlwZXZyaGVhZGVyfX90eXBldnJoZWFkZXIB Mjg2NSw5NDUwOAorXGRlZlxkZWZ0eXBldnJoZWFkZXIgIzEjMiMze39kZWZ0eXBldnJoZWFkZXIB Mjg2Nyw5NDU3OQogXGJlZ2luZ3JvdXBcZGVmbmFtZSB7f25hbWUBMjg2OCw5NDYzMQotXGRlZlxk ZWZ2cnggIzEge39cZGVmdnJ4ATI4NzYsOTQ4NjgKLVxkZWZcZGVmdmFyeCAjMSB7f1xkZWZ2YXJ4 ATI4NzcsOTQ5MjUKLVxkZWZcZGVmb3B0eCAjMSB7f1xkZWZvcHR4ATI4NzgsOTQ5ODQKLVxkZWZc ZGVmdHlwZXZhcnggIzEge39cZGVmdHlwZXZhcngBMjg3OSw5NTA0MwotXGRlZlxkZWZ0eXBldnJ4 ICMxIHt/XGRlZnR5cGV2cngBMjg4MCw5NTExMAotXGRlZlxkZWZ0cGFyZ3MgIzF7f1xkZWZ0cGFy Z3MBMjg4NSw5NTI1OQotXGRlZlxkZWZ0cHt/XGRlZnRwATI4ODksOTUzMzkKLVxkZWZcZGVmdHBo ZWFkZXIgIzEjMiMze39cZGVmdHBoZWFkZXIBMjg5MSw5NTM5NAorXGRlZlxkZWZ2cnggIzEge39k ZWZ2cngBMjg3Niw5NDg2OAorXGRlZlxkZWZ2YXJ4ICMxIHt/ZGVmdmFyeAEyODc3LDk0OTI1Citc ZGVmXGRlZm9wdHggIzEge39kZWZvcHR4ATI4NzgsOTQ5ODQKK1xkZWZcZGVmdHlwZXZhcnggIzEg e39kZWZ0eXBldmFyeAEyODc5LDk1MDQzCitcZGVmXGRlZnR5cGV2cnggIzEge39kZWZ0eXBldnJ4 ATI4ODAsOTUxMTAKK1xkZWZcZGVmdHBhcmdzICMxe39kZWZ0cGFyZ3MBMjg4NSw5NTI1OQorXGRl ZlxkZWZ0cGFyZ3MgIzF7XGJmIFxkZWZ2YXJhcmdze392YXJhcmdzATI4ODUsOTUyNTkKK1xkZWZc ZGVmdHB7f2RlZnRwATI4ODksOTUzMzkKK1xkZWZcZGVmdHB7XGRlZnZycGFyc2Vib2R5XEVkZWZ0 cFxkZWZ0cHhcZGVmdHBoZWFkZXJ9f3ZycGFyc2Vib2R5XEVkZWZ0cAEyODg5LDk1MzM5CitcZGVm XGRlZnRwe1xkZWZ2cnBhcnNlYm9keVxFZGVmdHBcZGVmdHB4XGRlZnRwaGVhZGVyfX90cHhcZGVm dHBoZWFkZXIBMjg4OSw5NTMzOQorXGRlZlxkZWZ0cHtcZGVmdnJwYXJzZWJvZHlcRWRlZnRwXGRl ZnRweFxkZWZ0cGhlYWRlcn1/dHBoZWFkZXIBMjg4OSw5NTMzOQorXGRlZlxkZWZ0cGhlYWRlciAj MSMyIzN7f2RlZnRwaGVhZGVyATI4OTEsOTUzOTQKIFxiZWdpbmdyb3VwXGRlZm5hbWUge39uYW1l ATI4OTIsOTU0NDIKLVxkZWZcZGVmdHB4ICMxIHt/XGRlZnRweAEyODk3LDk1NjAxCi1cZGVmXHNl dHJlZiMxe39cc2V0cmVmATI5MDgsOTU5MjIKLVxkZWZcdW5udW1ic2V0cmVmIzF7f1x1bm51bWJz ZXRyZWYBMjkxMyw5NjAzNgotXGRlZlxhcHBlbmRpeHNldHJlZiMxe39cYXBwZW5kaXhzZXRyZWYB MjkxOCw5NjE0MwotXGRlZlxweHJlZiMxe39ccHhyZWYBMjkyOSw5NjU1NAotXGRlZlx4cmVmIzF7 f1x4cmVmATI5MzAsOTY1OTAKLVxkZWZccmVmIzF7f1xyZWYBMjkzMSw5NjYyNQotXGRlZlx4cmVm WFsjMSwjMiwjMywjNCwjNSwjNl17f1x4cmVmWFsBMjkzMiw5NjY1NQotXGRlZlxwcmludGVkbWFu dWFse39ccHJpbnRlZG1hbnVhbAEyOTMzLDk2Njk4Ci1cZGVmXHByaW50ZWRub2RlbmFtZXt/XHBy aW50ZWRub2RlbmFtZQEyOTM0LDk2NzM2Ci1cZGVmXHByaW50ZWRub2RlbmFtZXt/XHByaW50ZWRu b2RlbmFtZQEyOTM5LDk2ODYxCi1zZWN0aW9uIGBgXHByaW50ZWRub2RlbmFtZScnIGluIFxjaXRl e1xwcmludGVkbWFudWFsfX9ccHJpbnRlZG1hbnVhbAEyOTU0LDk3NDkzCitcYmVnaW5ncm91cFxk ZWZuYW1lIHsjMn17IzF9XGRlZnRwYXJnc3t/dHBhcmdzATI4OTIsOTU0NDIKK1xkZWZcZGVmdHB4 ICMxIHt/ZGVmdHB4ATI4OTcsOTU2MDEKK1xkZWZcc2V0cmVmIzF7f3NldHJlZgEyOTA4LDk1OTIy CitcZGVmXHVubnVtYnNldHJlZiMxe391bm51bWJzZXRyZWYBMjkxMyw5NjAzNgorXGRlZlxhcHBl bmRpeHNldHJlZiMxe39hcHBlbmRpeHNldHJlZgEyOTE4LDk2MTQzCitcZGVmXHB4cmVmIzF7f3B4 cmVmATI5MjksOTY1NTQKK1xkZWZceHJlZiMxe394cmVmATI5MzAsOTY1OTAKK1xkZWZccmVmIzF7 f3JlZgEyOTMxLDk2NjI1CitcZGVmXHhyZWZYWyMxLCMyLCMzLCM0LCM1LCM2XXt/eHJlZlgBMjkz Miw5NjY1NQorXGRlZlxwcmludGVkbWFudWFse39wcmludGVkbWFudWFsATI5MzMsOTY2OTgKK1xk ZWZccHJpbnRlZG5vZGVuYW1le39wcmludGVkbm9kZW5hbWUBMjkzNCw5NjczNgorXGRlZlxwcmlu dGVkbm9kZW5hbWV7f3ByaW50ZWRub2RlbmFtZQEyOTM5LDk2ODYxCitzZWN0aW9uIGBgXHByaW50 ZWRub2RlbmFtZScnIGluIFxjaXRle1xwcmludGVkbWFudWFsfX9wcmludGVkbWFudWFsATI5NTQs OTc0OTMKIFxyZWZ4e394ATI5NTcsOTc1NzEKLVxkZWZcZG9zZXRxICMxIzJ7f1xkb3NldHEBMjk2 NSw5Nzc5MQotXGRlZlxpbnRlcm5hbHNldHEgIzEjMnt/XGludGVybmFsc2V0cQEyOTczLDk4MDQ5 Ci1cZGVmXFlwYWdlbnVtYmVye39cWXBhZ2VudW1iZXIBMjk3Nyw5ODE1MAotXGRlZlxZdGl0bGV7 f1xZdGl0bGUBMjk3OSw5ODE3NgotXGRlZlxZbm90aGluZ3t/XFlub3RoaW5nATI5ODEsOTgyMDMK LVxkZWZcWXNlY3Rpb25udW1iZXJhbmR0eXBle39cWXNlY3Rpb25udW1iZXJhbmR0eXBlATI5ODMs OTgyMjAKLVxkZWZcWWFwcGVuZGl4bGV0dGVyYW5kdHlwZXt/XFlhcHBlbmRpeGxldHRlcmFuZHR5 cGUBMjk5Miw5ODUzNgorXHJlZnh7IzEtc250fXt9IFtccHJpbnRlZG5vZGVuYW1lXSwgcGFnZVx0 aWVccmVmeHt/eAEyOTU3LDk3NTcxCitcZGVmXGRvc2V0cSAjMSMye39kb3NldHEBMjk2NSw5Nzc5 MQorXGRlZlxkb3NldHEgIzEjMnt7XGxldFxmb2xpbz0wIFx0dXJub2ZmYWN0aXZlJX9mb2xpbwEy OTY1LDk3NzkxCitcZWRlZlxuZXh0e39uZXh0ATI5NjYsOTc4MzgKK1xkZWZcaW50ZXJuYWxzZXRx ICMxIzJ7f2ludGVybmFsc2V0cQEyOTczLDk4MDQ5CitcZGVmXFlwYWdlbnVtYmVye39ZcGFnZW51 bWJlcgEyOTc3LDk4MTUwCitcZGVmXFl0aXRsZXt/WXRpdGxlATI5NzksOTgxNzYKK1xkZWZcWW5v dGhpbmd7f1lub3RoaW5nATI5ODEsOTgyMDMKK1xkZWZcWXNlY3Rpb25udW1iZXJhbmR0eXBle39Z c2VjdGlvbm51bWJlcmFuZHR5cGUBMjk4Myw5ODIyMAorXGRlZlxZYXBwZW5kaXhsZXR0ZXJhbmR0 eXBle39ZYXBwZW5kaXhsZXR0ZXJhbmR0eXBlATI5OTIsOTg1MzYKIFxpZm51bVxzZWNubz0wIEFw cGVuZGl4XHhyZWZ0aWUnY2hhclx0aGVcYXBwZW5kaXhub3t/bm8BMjk5Myw5ODU2NgotXGVsc2Ug XGlmbnVtIFxzdWJzZWNubz0wIFNlY3Rpb25ceHJlZnRpZSdjaGFyXHRoZVxhcHBlbmRpeG5vLlx0 aGVcc2Vjbm8gJX9uby5cdGhlXHNlY25vATI5OTQsOTg2MjEKLVNlY3Rpb25ceHJlZnRpZSdjaGFy XHRoZVxhcHBlbmRpeG5vLlx0aGVcc2Vjbm8uXHRoZVxzdWJzZWNubyAlf25vLlx0aGVcc2Vjbm8u XHRoZVxzdWJzZWNubwEyOTk2LDk4NzI1Ci1TZWN0aW9uXHhyZWZ0aWUnY2hhclx0aGVcYXBwZW5k aXhuby5cdGhlXHNlY25vLlx0aGVcc3Vic2Vjbm8uXHRoZVxzdWJzdWJzZWNubyAlf25vLlx0aGVc c2Vjbm8uXHRoZVxzdWJzZWNuby5cdGhlXHN1YnN1YnNlY25vATI5OTgsOTg3OTYKLSAgXGRlZlxs aW5lbnVtYmVye39cbGluZW51bWJlcgEzMDA5LDk5MTM1Ci1cZGVmXHJlZngjMSMye39ccmVmeAEz MDE1LDk5MzE5Ci1cZGVmXHhyZGVmICMxIzJ7f1x4cmRlZgEzMDM3LDk5OTQ1Ci1cZGVmXHJlYWRh dXhmaWxle39ccmVhZGF1eGZpbGUBMzA0MCwxMDAwMzAKLVxkZWZcc3VwZXJlamVjdHt/XHN1cGVy ZWplY3QBMzExMCwxMDE4MTEKLVxmb290c3RydXRccGFyaW5kZW50PVxkZWZhdWx0cGFyaW5kZW50 XGhhbmdcdGV4dGluZGVudHt/YXVsdHBhcmluZGVudFxoYW5nXHRleHRpbmRlbnQBMzEzMSwxMDI0 OTYKLVxkZWZcb3BlbmluZGljZXN7f1xvcGVuaW5kaWNlcwEzMTM5LDEwMjY4MgorXGVsc2UgXGlm bnVtIFxzdWJzZWNubz0wIFNlY3Rpb25ceHJlZnRpZSdjaGFyXHRoZVxhcHBlbmRpeG5vLlx0aGVc c2Vjbm8gJX9uby5cdGhlATI5OTQsOTg2MjEKK1NlY3Rpb25ceHJlZnRpZSdjaGFyXHRoZVxhcHBl bmRpeG5vLlx0aGVcc2Vjbm8uXHRoZVxzdWJzZWNubyAlf25vLlx0aGUBMjk5Niw5ODcyNQorU2Vj dGlvblx4cmVmdGllJ2NoYXJcdGhlXGFwcGVuZGl4bm8uXHRoZVxzZWNuby5cdGhlXHN1YnNlY25v Llx0aGVcc3Vic3Vic2Vjbm8gJX9uby5cdGhlATI5OTgsOTg3OTYKK1xnZGVmXHhyZWZ0aWV7f3hy ZWZ0aWUBMzAwMSw5ODg5MQorICBcbGV0XGxpbmVudW1iZXIgPSBcZW1wdHkgJSBOb24tMy4wLn9s aW5lbnVtYmVyATMwMDcsOTkwOTEKKyAgXGRlZlxsaW5lbnVtYmVye39saW5lbnVtYmVyATMwMDks OTkxMzUKK1xkZWZccmVmeCMxIzJ7f3JlZngBMzAxNSw5OTMxOQorXGRlZlx4cmRlZiAjMSMye394 cmRlZgEzMDM3LDk5OTQ1Cit7XGNhdGNvZGVgXCc9XG90aGVyXGV4cGFuZGFmdGVyIFxnZGVmIFxj c25hbWUgWCMxXGVuZGNzbmFtZSB7f2NzbmFtZQEzMDM4LDk5OTYyCitcZGVmXHJlYWRhdXhmaWxl e39yZWFkYXV4ZmlsZQEzMDQwLDEwMDAzMAorXGRlZlxzdXBlcmVqZWN0e39zdXBlcmVqZWN0ATMx MTAsMTAxODExCitcbGV0XGZvb3Rub3Rlc3R5bGU9XGNvbW1lbnR/Zm9vdG5vdGVzdHlsZQEzMTEz LDEwMTkxOAorXGxldFxwdGV4Zm9vdG5vdGU9XGZvb3Rub3Rlf3B0ZXhmb290bm90ZQEzMTE1LDEw MTk0NworXGxvbmdcZ2RlZlxmb290bm90ZSAjMXt/Zm9vdG5vdGUBMzExOCwxMDE5OTMKK1xlZGVm XHRoaXNmb290bm97f3RoaXNmb290bm8BMzEyMCwxMDIwNjAKK1xsZXRcQHNmXGVtcHR5f0BzZgEz MTIxLDEwMjEwMAorXGlmaG1vZGVcZWRlZlxAc2Z7f0BzZgEzMTIyLDEwMjExNQorXGxvbmdcZ2Rl Zlxmb290bm90ZXp6eiAjMXt/Zm9vdG5vdGV6enoBMzEyNiwxMDIyMjgKK1xmb290c3RydXRccGFy aW5kZW50PVxkZWZhdWx0cGFyaW5kZW50XGhhbmdcdGV4dGluZGVudHt/YXVsdHBhcmluZGVudFxo YW5nATMxMzEsMTAyNDk2CitcZGVmXG9wZW5pbmRpY2Vze39vcGVuaW5kaWNlcwEzMTM5LDEwMjY4 MgorXG5ld2RpbWVuXGRlZmF1bHRwYXJpbmRlbnQgXGRlZmF1bHRwYXJpbmRlbnQgPSAxNXB0f2F1 bHRwYXJpbmRlbnQBMzE1MSwxMDI5MDcKIFxuZXdkaW1lblxkZWZhdWx0cGFyaW5kZW50IFxkZWZh dWx0cGFyaW5kZW50ID0gMTVwdH9hdWx0cGFyaW5kZW50ATMxNTEsMTAyOTA3CiBccGFyaW5kZW50 ID0gXGRlZmF1bHRwYXJpbmRlbnR/YXVsdHBhcmluZGVudAEzMTUyLDEwMjk1OQotXGRlZlxzbWFs bGJvb2t7f1xzbWFsbGJvb2sBMzE3NSwxMDM2ODMKLVxnbG9iYWxcZGVmXEVzbWFsbGV4YW1wbGV7 f1xFc21hbGxleGFtcGxlATMxOTIsMTA0MTEwCi1cZGVmXGFmb3VycGFwZXJ7f1xhZm91cnBhcGVy ATMxOTYsMTA0MjAxCi1cZGVmXGZpbmFsb3V0e39cZmluYWxvdXQBMzIyNCwxMDUwMDkKLVxkZWZc bm9ybWFsZG91YmxlcXVvdGV7f1xub3JtYWxkb3VibGVxdW90ZQEzMjM1LDEwNTI3MAotXGRlZlxu b3JtYWx0aWxkZXt/XG5vcm1hbHRpbGRlATMyMzYsMTA1Mjk2Ci1cZGVmXG5vcm1hbGNhcmV0e39c bm9ybWFsY2FyZXQBMzIzNywxMDUzMTYKLVxkZWZcbm9ybWFsdW5kZXJzY29yZXt/XG5vcm1hbHVu ZGVyc2NvcmUBMzIzOCwxMDUzMzYKLVxkZWZcbm9ybWFsdmVydGljYWxiYXJ7f1xub3JtYWx2ZXJ0 aWNhbGJhcgEzMjM5LDEwNTM2MQotXGRlZlxub3JtYWxsZXNze39cbm9ybWFsbGVzcwEzMjQwLDEw NTM4NwotXGRlZlxub3JtYWxncmVhdGVye39cbm9ybWFsZ3JlYXRlcgEzMjQxLDEwNTQwNgotXGRl Zlxub3JtYWxwbHVze39cbm9ybWFscGx1cwEzMjQyLDEwNTQyOAotXGRlZlxpZnVzaW5ndHQjMSMy e39caWZ1c2luZ3R0ATMyNTMsMTA1OTIwCi1cZGVmXGFjdGl2ZWRvdWJsZXF1b3Rle39cYWN0aXZl ZG91YmxlcXVvdGUBMzI2MSwxMDYyNDgKK1xkZWZcc21hbGxib29re39zbWFsbGJvb2sBMzE3NSwx MDM2ODMKK1xnbG9iYWxcbGV0XHNtYWxsbGlzcD1cc21hbGxsaXNweH9zbWFsbGxpc3ABMzE5MCwx MDQwMzkKK1xnbG9iYWxcbGV0XHNtYWxsZXhhbXBsZT1cc21hbGxsaXNweH9zbWFsbGV4YW1wbGUB MzE5MSwxMDQwNzMKK1xnbG9iYWxcZGVmXEVzbWFsbGV4YW1wbGV7f0VzbWFsbGV4YW1wbGUBMzE5 MiwxMDQxMTAKK1xkZWZcYWZvdXJwYXBlcnt/YWZvdXJwYXBlcgEzMTk2LDEwNDIwMQorXGRlZlxm aW5hbG91dHt/ZmluYWxvdXQBMzIyNCwxMDUwMDkKK1xkZWZcbm9ybWFsZG91YmxlcXVvdGV7f25v cm1hbGRvdWJsZXF1b3RlATMyMzUsMTA1MjcwCitcZGVmXG5vcm1hbHRpbGRle39ub3JtYWx0aWxk ZQEzMjM2LDEwNTI5NgorXGRlZlxub3JtYWxjYXJldHt/bm9ybWFsY2FyZXQBMzIzNywxMDUzMTYK K1xkZWZcbm9ybWFsdW5kZXJzY29yZXt/bm9ybWFsdW5kZXJzY29yZQEzMjM4LDEwNTMzNgorXGRl Zlxub3JtYWx2ZXJ0aWNhbGJhcnt/bm9ybWFsdmVydGljYWxiYXIBMzIzOSwxMDUzNjEKK1xkZWZc bm9ybWFsbGVzc3t/bm9ybWFsbGVzcwEzMjQwLDEwNTM4NworXGRlZlxub3JtYWxncmVhdGVye39u b3JtYWxncmVhdGVyATMyNDEsMTA1NDA2CitcZGVmXG5vcm1hbHBsdXN7f25vcm1hbHBsdXMBMzI0 MiwxMDU0MjgKK1xkZWZcaWZ1c2luZ3R0IzEjMnt/aWZ1c2luZ3R0ATMyNTMsMTA1OTIwCitcZGVm XGFjdGl2ZWRvdWJsZXF1b3Rle39hY3RpdmVkb3VibGVxdW90ZQEzMjYxLDEwNjI0OAorXGxldCI9 XGFjdGl2ZWRvdWJsZXF1b3RlfyIBMzI2MiwxMDYyODkKIFxkZWZ+e39+ATMyNjQsMTA2MzM0CiBc ZGVmXnt/XgEzMjY3LDEwNjM5NQogXGRlZl97f18BMzI3MCwxMDY0MzQKLVxkZWZcX3t/XF8BMzI3 MiwxMDY1MDgKLVxkZWZcbHZ2bW9kZXt/XGx2dm1vZGUBMzI3OSwxMDY4NDUKK1xkZWZcX3t/XwEz MjcyLDEwNjUwOAorXGRlZlxsdnZtb2Rle39sdnZtb2RlATMyNzksMTA2ODQ1CiBcZGVmfHt/fAEz MjgyLDEwNjg5NQogXGRlZjx7fzwBMzI4NSwxMDY5NTgKIFxkZWY+e38+ATMyODgsMTA3MDE1CiBc ZGVmK3t/KwEzMjkwLDEwNzA1MwotXGRlZlx0dXJub2ZmYWN0aXZle39cdHVybm9mZmFjdGl2ZQEz Mjk2LDEwNzIxNAorXGRlZlx0dXJub2ZmYWN0aXZle390dXJub2ZmYWN0aXZlATMyOTYsMTA3MjE0 CitcZGVmXHR1cm5vZmZhY3RpdmV7XGxldCI9XG5vcm1hbGRvdWJsZXF1b3RlfyIBMzI5NiwxMDcy MTQKK1xsZXR+PVxub3JtYWx0aWxkZX9+ATMyOTcsMTA3MjU4CitcbGV0Xj1cbm9ybWFsY2FyZXR/ XgEzMjk4LDEwNzI3NworXGxldF89XG5vcm1hbHVuZGVyc2NvcmV/XwEzMjk5LDEwNzI5NgorXGxl dHw9XG5vcm1hbHZlcnRpY2FsYmFyf3wBMzMwMCwxMDczMjAKK1xsZXQ8PVxub3JtYWxsZXNzfzwB MzMwMSwxMDczNDUKK1xsZXQ+PVxub3JtYWxncmVhdGVyfz4BMzMwMiwxMDczNjMKK1xsZXQrPVxu b3JtYWxwbHVzfX8rATMzMDMsMTA3Mzg0CiBcZ2xvYmFsXGRlZj17fz0BMzMwNywxMDc1MDAKLVxk ZWZcbm9ybWFsYmFja3NsYXNoe39cbm9ybWFsYmFja3NsYXNoATMzMjEsMTA3ODgyCitcZGVmXG5v cm1hbGJhY2tzbGFzaHt/bm9ybWFsYmFja3NsYXNoATMzMjEsMTA3ODgyCiAMCiBtZXJjLXNyYy9h Y2N1bXVsYXRvci5tLDQ5MTUKIDotIGludGVyZmFjZX8xNDYsNTM3MQotLSAKMi4zOS40Cgo= --000000000000ef265b061a89234c-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Arash Esbati Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 27 Jul 2024 15:40:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: 53749@debbugs.gnu.org Cc: ikumi@ikumi.que.jp, dgutov@yandex.ru, dfussner@googlemail.com, stefankangas@gmail.com, tsdh@gnu.org, eliz@gnu.org, monnier@iro.umontreal.ca X-Debbugs-Original-To: David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of text editors" X-Debbugs-Original-Cc: 53749@debbugs.gnu.org, ikumi@ikumi.que.jp, Dmitry Gutov , David Fussner , Stefan Kangas , tsdh@gnu.org, Eli Zaretskii , Stefan Monnier Received: via spool by submit@debbugs.gnu.org id=B.172209476112208 (code B ref -1); Sat, 27 Jul 2024 15:40:02 +0000 Received: (at submit) by debbugs.gnu.org; 27 Jul 2024 15:39:21 +0000 Received: from localhost ([127.0.0.1]:42143 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sXjVw-0003Ab-N2 for submit@debbugs.gnu.org; Sat, 27 Jul 2024 11:39:20 -0400 Received: from lists.gnu.org ([209.51.188.17]:43388) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sXjVt-00039z-Ra for submit@debbugs.gnu.org; Sat, 27 Jul 2024 11:39:18 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sXjVj-0000Sm-4f for bug-gnu-emacs@gnu.org; Sat, 27 Jul 2024 11:39:07 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sXjVg-000797-MJ; Sat, 27 Jul 2024 11:39:04 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=peTKQualWGlh6Ple0EQlvwa4UPJdX/P3SNpDaaQaQrU=; b=lKXnn9B5S8oyJRznH84W 8pFuUiuqu5H9Wr/hZT9nXb+vQOZuflA6xZ9vKSE54mJhq/uho5VCBqjZw9p1ufN+v8Kaxwo8y9QgT K8Dbs2K/fsaI8PskvJYbx5oHNho3RB4j7b3dVdim5nYGVX0gpoVsDpa1tWpDmIaWMS/PxBZP4Skm4 huUHg+5fAZvwT3tvXw8aBfXIAHE2BfWdR0fzl4IB/YKjDtnFsWewtfjNJz36IrAnAtPVT8cBEnnEi XIMRmPDvSymq31fUYnSDEyUKFFDOpjDaIC/K4DSKgIfK4J9sgd5mrP3KJFEJNfRzEsGnkYaBFyVwz Idt09mfLc2DeVQ==; From: Arash Esbati In-Reply-To: (David Fussner via's message of "Mon, 10 Jun 2024 14:29:51 +0100") References: <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> <86v832z5lp.fsf@gnu.org> <6efddf34-1f18-41c8-9125-b6b2e3ad3d21@yandex.ru> <75d6872c-4c31-44a5-8597-781741dca720@yandex.ru> Date: Sat, 27 Jul 2024 17:39:01 +0200 Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of text editors" writes: > Hi Dmitry, Stefan M and Stefan K, > > Here's the latest patch, with most of the modifications requested by > Stefan K. The code populating `semantic-symref-filepattern-alist` I've > left in tex-mode.el, because I wasn't sure how to adjudicate the > differing opinions on where it should go. Moving it won't take any > time, should that be the verdict. I've had a stab at a NEWS entry, and > included the patches to the manual etags test files. The diffs for the > test files are large, since we remove the TeX escape char from any tag > names where it occurs, as discussed elsewhere on this thread. > > Please let me know if more changes are needed. Ping! Gents, is it possible to give David your comments? There was some effort behind this, maybe it's time to bring this to an end. TIA. Best, Arash From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 28 Jul 2024 23:59:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Arash Esbati , 53749@debbugs.gnu.org Cc: ikumi@ikumi.que.jp, dfussner@googlemail.com, monnier@iro.umontreal.ca, tsdh@gnu.org, eliz@gnu.org, stefankangas@gmail.com Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.172221112831991 (code B ref 53749); Sun, 28 Jul 2024 23:59:02 +0000 Received: (at 53749) by debbugs.gnu.org; 28 Jul 2024 23:58:48 +0000 Received: from localhost ([127.0.0.1]:44601 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sYDmq-0008Jv-5B for submit@debbugs.gnu.org; Sun, 28 Jul 2024 19:58:48 -0400 Received: from forward501a.mail.yandex.net ([178.154.239.81]:34542) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sYDmm-0008Jk-Cy for 53749@debbugs.gnu.org; Sun, 28 Jul 2024 19:58:46 -0400 Received: from mail-nwsmtp-smtp-production-main-64.vla.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-64.vla.yp-c.yandex.net [IPv6:2a02:6b8:c1f:169b:0:640:faad:0]) by forward501a.mail.yandex.net (Yandex) with ESMTPS id AFBFD61424; Mon, 29 Jul 2024 02:57:59 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-64.vla.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id rvdWvn0wTuQ0-DpTnUkRA; Mon, 29 Jul 2024 02:57:58 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1722211079; bh=wBoBgdm1ForfYiYv9te+xyOT7RpOsOvVyw0hqLBfZDg=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=Ghm/YNwy3rti+qbifJZrPuCW+oCGwpAzN737TyR7I1dJqgQOhDOF7MUW1Ryireh4D nwRkNvbP+U2aqXC4e4PXXjcUEnewyAyO7OiDkDdj3tgFpTOf9MkOr8zPaBSbQ+gvo7 QCRsUN9hNM3oojEvv5eKt8/Xao1IPvt7aEOaJdJA= Authentication-Results: mail-nwsmtp-smtp-production-main-64.vla.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailfauth.nyi.internal (Postfix) with ESMTP id E61C81200068; Sun, 28 Jul 2024 19:57:52 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute2.internal (MEProxy); Sun, 28 Jul 2024 19:57:52 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeftddrjedugddvkecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefkffggfgfuvfevfhfhjggtgfesthejredttddvjeenucfhrhhomhepffhmihht rhihucfiuhhtohhvuceoughguhhtohhvseihrghnuggvgidrrhhuqeenucggtffrrghtth gvrhhnpeeihfejueevteffffdvfeetffffkefhuedujeeiheehiedulefghefgffefudff udenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpegugh huthhovhdomhgvshhmthhprghuthhhphgvrhhsohhnrghlihhthidqudeffeefleelheeh vddqvdelgeejjeejjeeiqdgughhuthhovheppeihrghnuggvgidrrhhusehfrghsthhmrg hilhdrtghomhdpnhgspghrtghpthhtoheptd X-ME-Proxy: Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun, 28 Jul 2024 19:57:49 -0400 (EDT) Message-ID: <2fc35487-63c7-4d11-89ca-b87f4aad6e58@yandex.ru> Date: Mon, 29 Jul 2024 02:57:47 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird References: <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> <86v832z5lp.fsf@gnu.org> <6efddf34-1f18-41c8-9125-b6b2e3ad3d21@yandex.ru> <75d6872c-4c31-44a5-8597-781741dca720@yandex.ru> Content-Language: en-US From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On 27/07/2024 18:39, Arash Esbati wrote: > David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of text editors" writes: > >> Hi Dmitry, Stefan M and Stefan K, >> >> Here's the latest patch, with most of the modifications requested by >> Stefan K. The code populating `semantic-symref-filepattern-alist` I've >> left in tex-mode.el, because I wasn't sure how to adjudicate the >> differing opinions on where it should go. Moving it won't take any >> time, should that be the verdict. I've had a stab at a NEWS entry, and >> included the patches to the manual etags test files. The diffs for the >> test files are large, since we remove the TeX escape char from any tag >> names where it occurs, as discussed elsewhere on this thread. >> >> Please let me know if more changes are needed. > Ping! Gents, is it possible to give David your comments? There was > some effort behind this, maybe it's time to bring this to an end. TIA. It's good enough from my side, but I hope someone else could comment as well. Additionally though, it might or might not be too big a change for Emacs 30 (I'm not sure), and if we're talking about 31 only, then it could wait a little more for the review. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 29 Jul 2024 10:33:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Dmitry Gutov Cc: 53749@debbugs.gnu.org, ikumi@ikumi.que.jp, Arash Esbati , stefankangas@gmail.com, tsdh@gnu.org, eliz@gnu.org, monnier@iro.umontreal.ca Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.172224915530557 (code B ref 53749); Mon, 29 Jul 2024 10:33:01 +0000 Received: (at 53749) by debbugs.gnu.org; 29 Jul 2024 10:32:35 +0000 Received: from localhost ([127.0.0.1]:44933 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sYNgA-0007wn-Re for submit@debbugs.gnu.org; Mon, 29 Jul 2024 06:32:35 -0400 Received: from mail-pg1-f170.google.com ([209.85.215.170]:49652) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sYNg8-0007wZ-Jv for 53749@debbugs.gnu.org; Mon, 29 Jul 2024 06:32:33 -0400 Received: by mail-pg1-f170.google.com with SMTP id 41be03b00d2f7-7ae3d7222d4so868628a12.3 for <53749@debbugs.gnu.org>; Mon, 29 Jul 2024 03:32:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1722249074; x=1722853874; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=V5nOs/aBTF+63ciTZj9Qs8dcHVTEijiPsnv7JdnjYP0=; b=Z/2WYMXRsR3+MfMdeqGKBfRpfmwfsNrLTa7D+Kf49x89VA+0SUBor/qBXVuKHtbabM SvEZ36D63MFxHO+ZLsyNJMh/CBF21EW8rONjzeq5I3K1y+S16rYss7hsC1llQthmPw/K IpvdIQxnvFxCcK14aIwKNpT6vnyucCMKFDfWrAKODm7suoGOv+kJliyfHmAXY+LQQ6T4 IIl4JzcapBwYsW8q3OsMq76pLp0OqcsM0CzJWePAAqVVBYiT7kUtfm9VjyZFQC34Os5I 6xtHET4hx9p0DD0XkN5VDoC9i7alzgYz4F1rfuLv3BnlJ0V7zJn4urUuDKknr/6ju2CR FtSQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1722249074; x=1722853874; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=V5nOs/aBTF+63ciTZj9Qs8dcHVTEijiPsnv7JdnjYP0=; b=tGcQQ+E4Ks/e+DWFD1or7uFtaZSdDkRvVtvOOLskX9EKGtPDx7rj2F6PUnCbxmC05a xgR2xRU9jJWBfpJEzMrqXfuDoh8yNdD7mexu8m6p/fQWEHciRQruNORhniKRZw2/2HH/ Gdi8Sq61W0TrYOL1KazU1gpttMwptmz1x/SS7lkeN0SpxZu3kx2sg8hGqUX/Mfpte6np LEvDPcxfkzNMHcUzwUa8pdAiDc47r3m8MrajzqPiDvELdkTCdfbe7jBVBDIVVuCALUZR U+9LIRsg2j7EMM2eWD7DFd+ag0I7ZepEBEwNg+OR0aFFXK6FrUrn2BxAAo4cCE48s2qJ nbTw== X-Forwarded-Encrypted: i=1; AJvYcCXNdEJWCi/ToriViWrr4SLMvSaiVPzeAbCl7pr5wFLoW8KGQU4y/uyypyrSkIKTUbx9QmEme4kd6VSiLuuh0eidcjJzy5U= X-Gm-Message-State: AOJu0YxfmChG5O23shq1DdDmBWtBg7165uQSAeBZMBro1zhzi6sN2+O5 UJuIzUCk9Ix3R/wjeiivcwVytqqFnRq/L/OAO2vEJcZ2IdNG0ztMNYvhRWrqCAwli7JSSVQGG51 fAvFAZRZcggNxiEKN/KjYijeXyoU= X-Google-Smtp-Source: AGHT+IH0+3j3DxqEYVWqh8eTMXhK4A/VKYwAeWtAsxL+qp8/ix34FxLKlYJ/+OeHDQAq2VkxKrCJ3jtzjusi77fOoWM= X-Received: by 2002:a17:90b:3b46:b0:2c9:61f9:a141 with SMTP id 98e67ed59e1d1-2cf7e1c074emr8153037a91.16.1722249073894; Mon, 29 Jul 2024 03:31:13 -0700 (PDT) MIME-Version: 1.0 References: <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> <86v832z5lp.fsf@gnu.org> <6efddf34-1f18-41c8-9125-b6b2e3ad3d21@yandex.ru> <75d6872c-4c31-44a5-8597-781741dca720@yandex.ru> <2fc35487-63c7-4d11-89ca-b87f4aad6e58@yandex.ru> In-Reply-To: <2fc35487-63c7-4d11-89ca-b87f4aad6e58@yandex.ru> From: David Fussner Date: Mon, 29 Jul 2024 11:31:21 +0100 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Dmitry and Arash, > Additionally though, it might or might not be too big a change for Emacs > 30 (I'm not sure), and if we're talking about 31 only, then it could > wait a little more for the review. Good point -- I'm OK either way. Getting it tested, even lightly, on master for a while might make sense for a patch of its size, but others will have a better sense of it. Best, David. On Mon, 29 Jul 2024 at 00:58, Dmitry Gutov wrote: > > On 27/07/2024 18:39, Arash Esbati wrote: > > David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of text editors" writes: > > > >> Hi Dmitry, Stefan M and Stefan K, > >> > >> Here's the latest patch, with most of the modifications requested by > >> Stefan K. The code populating `semantic-symref-filepattern-alist` I've > >> left in tex-mode.el, because I wasn't sure how to adjudicate the > >> differing opinions on where it should go. Moving it won't take any > >> time, should that be the verdict. I've had a stab at a NEWS entry, and > >> included the patches to the manual etags test files. The diffs for the > >> test files are large, since we remove the TeX escape char from any tag > >> names where it occurs, as discussed elsewhere on this thread. > >> > >> Please let me know if more changes are needed. > > Ping! Gents, is it possible to give David your comments? There was > > some effort behind this, maybe it's time to bring this to an end. TIA. > > It's good enough from my side, but I hope someone else could comment as > well. > > Additionally though, it might or might not be too big a change for Emacs > 30 (I'm not sure), and if we're talking about 31 only, then it could > wait a little more for the review. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Stefan Kangas Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 14 Sep 2024 13:45:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Dmitry Gutov , Arash Esbati , 53749@debbugs.gnu.org Cc: ikumi@ikumi.que.jp, eliz@gnu.org, monnier@iro.umontreal.ca, dfussner@googlemail.com, tsdh@gnu.org Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.172632146127040 (code B ref 53749); Sat, 14 Sep 2024 13:45:02 +0000 Received: (at 53749) by debbugs.gnu.org; 14 Sep 2024 13:44:21 +0000 Received: from localhost ([127.0.0.1]:45151 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1spT4W-000724-QI for submit@debbugs.gnu.org; Sat, 14 Sep 2024 09:44:21 -0400 Received: from mail-ed1-f50.google.com ([209.85.208.50]:48166) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1spT4U-00071m-Qm for 53749@debbugs.gnu.org; Sat, 14 Sep 2024 09:44:19 -0400 Received: by mail-ed1-f50.google.com with SMTP id 4fb4d7f45d1cf-5c3ca32971cso3947385a12.0 for <53749@debbugs.gnu.org>; Sat, 14 Sep 2024 06:44:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1726321382; x=1726926182; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:from:to:cc:subject:date:message-id:reply-to; bh=8LVACc0LxCu7hAK+wP8qeeXDO1z1XqssCqBhJCfCmKw=; b=UqmXx2uqGAyFG6k5vPOwzGAYrkj7GgDtFIqcwFjCdWuEKSaOudN2+ZrTWIxKBIOpIl r1FzfoguGjsmOCI1Mf32XKi3yjL67sqdGiThcIVdbqPKNpQ6MhyqYwQI1QckfmLT9OHR lHXGrqx3XRvzNl3NElUSCTWamtCNMmf9p+q3/iC5GkuI1GI6YA1FbfSS6/C1AVNR6uqx XgSjse8gegI+4+nsuHDOhGnpXFHbIt72+U1xxjg9EIACYT/aNf9acwXnnL6AUm0lYWm1 TBjatvCva+llcJf8dwmvDv48WRa3+8RQH/fU6iOWxlC3gxzaZ5opzBxxvPt5eSqUqi72 fZwA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1726321382; x=1726926182; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=8LVACc0LxCu7hAK+wP8qeeXDO1z1XqssCqBhJCfCmKw=; b=V0km7Yoku+5Lml8qknSq4IeNlFVXYJDU98U5TSLVeYrrG+F105ZNwXHrcNVrVXQiva fbP0fFxz9kmt+DRLLki3gKtHbr7oU1cTKD/p0RphruRK/eevA1ITjGy+VS32OQITcYVz 98hYb/Ivpjx/bysu8SkwzwhgzBd91g7b++x+GVQRhhDGbZNyXhstub+Sj75E2OHJhG/s a6L8KEaNbpdCsClVsDges/HINguwvy+SXf3oUV6IGNtF2UkbDcOzz5QI3kZDzZC9JAv+ x0LFaujwk2gfAcU5DHx+s+YJ5foxs7CgMcC/1Te0W8rKJYDXRYv2LIACc8hv5AqAbTBO +nbw== X-Forwarded-Encrypted: i=1; AJvYcCUOkg4dYHT10QkXzTI0VMlJ5xcv3kXRVK+oVeZiIl7ddEuGQHFoMJhQzgytZ0MpmU5dSOOPzQ==@debbugs.gnu.org X-Gm-Message-State: AOJu0YwfXM9Ff8LyoQH3MsH3wMKoglkjLiySnCsvBZnWTCCyMnqK9VDj ru6x41PMgvMRm1J01BHFYC2iMy3fzoaij2Ps2VhPiIRf76hBqwW9I439PdZ7RnKKjW2Qy/juJ34 eICeFYh/9ArPlTyAy0JQuPHY3lMw= X-Google-Smtp-Source: AGHT+IEb9x4gLu2d1w0mvuJZsrWj53vnzSeqHZfv3CrapW2SNLmcjRknPixGgiyjvWVHlKwDrgZagitZ4Mu+s47Ewbo= X-Received: by 2002:a05:6402:3512:b0:5c4:2ed2:1bc3 with SMTP id 4fb4d7f45d1cf-5c42ed21d1bmr776870a12.5.1726321382176; Sat, 14 Sep 2024 06:43:02 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Sat, 14 Sep 2024 06:43:01 -0700 From: Stefan Kangas In-Reply-To: <2fc35487-63c7-4d11-89ca-b87f4aad6e58@yandex.ru> References: <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> <86v832z5lp.fsf@gnu.org> <6efddf34-1f18-41c8-9125-b6b2e3ad3d21@yandex.ru> <75d6872c-4c31-44a5-8597-781741dca720@yandex.ru> <2fc35487-63c7-4d11-89ca-b87f4aad6e58@yandex.ru> MIME-Version: 1.0 Date: Sat, 14 Sep 2024 06:43:01 -0700 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Dmitry Gutov writes: > It's good enough from my side, but I hope someone else could comment as > well. > > Additionally though, it might or might not be too big a change for Emacs > 30 (I'm not sure), and if we're talking about 31 only, then it could > wait a little more for the review. Are we happy to install this now, or are we still waiting for more comments? From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 14 Sep 2024 14:07:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Stefan Kangas Cc: 53749@debbugs.gnu.org, ikumi@ikumi.que.jp, dgutov@yandex.ru, dfussner@googlemail.com, arash@gnu.org, monnier@iro.umontreal.ca, tsdh@gnu.org Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17263228072180 (code B ref 53749); Sat, 14 Sep 2024 14:07:01 +0000 Received: (at 53749) by debbugs.gnu.org; 14 Sep 2024 14:06:47 +0000 Received: from localhost ([127.0.0.1]:47432 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1spTQF-0000Z6-FD for submit@debbugs.gnu.org; Sat, 14 Sep 2024 10:06:47 -0400 Received: from eggs.gnu.org ([209.51.188.92]:35584) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1spTQC-0000WD-OW for 53749@debbugs.gnu.org; Sat, 14 Sep 2024 10:06:45 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1spTPu-0000ae-DS; Sat, 14 Sep 2024 10:06:26 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=xWuo0zIUwqwt5Zswm2MSZLRDWVOE8FLYzvM1HX7EFqI=; b=hSkybFYtJd7B MZw5MtU7i7gU+jX+CogVXWvujk9+TVCYKBzrvF4XhyzLrGAqQD8KLiU9DSZXXbHiIyJ5BnfkMP4j2 f/YQIcPRqpHJhPZja2kBGf/jDLaivSCSwSbFycEAqvfJ+0DosNfSv7zpvCieRhRyy+yKMBYgjYnXu Wswu+64oZAamMI22hekhCMP4viJizOu747gGHNn2IfoSb7uHNPu3SKCH7wiBZBJw9mv/+LiBX+YHA DeFK2256Bi8sBynpwoUSoWMs4lA2wRljVPoAFF3V7rbqCe15bP3SZAgXtE1vS/o/FGiwrwDcnCWVT iHzWgjiTvmI6ft3jyqBGqw==; Date: Sat, 14 Sep 2024 17:06:22 +0300 Message-Id: <86r09mfhy9.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: (message from Stefan Kangas on Sat, 14 Sep 2024 06:43:01 -0700) References: <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> <86v832z5lp.fsf@gnu.org> <6efddf34-1f18-41c8-9125-b6b2e3ad3d21@yandex.ru> <75d6872c-4c31-44a5-8597-781741dca720@yandex.ru> <2fc35487-63c7-4d11-89ca-b87f4aad6e58@yandex.ru> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Stefan Kangas > Date: Sat, 14 Sep 2024 06:43:01 -0700 > Cc: ikumi@ikumi.que.jp, dfussner@googlemail.com, tsdh@gnu.org, eliz@gnu.org, > monnier@iro.umontreal.ca > > Dmitry Gutov writes: > > > It's good enough from my side, but I hope someone else could comment as > > well. > > > > Additionally though, it might or might not be too big a change for Emacs > > 30 (I'm not sure), and if we're talking about 31 only, then it could > > wait a little more for the review. > > Are we happy to install this now, or are we still waiting for more > comments? We've waited long enough, I think. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 14 Sep 2024 15:04:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: pending patch To: Eli Zaretskii , Stefan Kangas Cc: 53749@debbugs.gnu.org, ikumi@ikumi.que.jp, dfussner@googlemail.com, arash@gnu.org, monnier@iro.umontreal.ca, tsdh@gnu.org Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.172632623614909 (code B ref 53749); Sat, 14 Sep 2024 15:04:01 +0000 Received: (at 53749) by debbugs.gnu.org; 14 Sep 2024 15:03:56 +0000 Received: from localhost ([127.0.0.1]:47600 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1spUJX-0003sN-Ms for submit@debbugs.gnu.org; Sat, 14 Sep 2024 11:03:56 -0400 Received: from forward500a.mail.yandex.net ([178.154.239.80]:46946) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1spUJV-0003sC-Bh for 53749@debbugs.gnu.org; Sat, 14 Sep 2024 11:03:54 -0400 Received: from mail-nwsmtp-smtp-production-main-39.vla.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-39.vla.yp-c.yandex.net [IPv6:2a02:6b8:c15:2b05:0:640:2a62:0]) by forward500a.mail.yandex.net (Yandex) with ESMTPS id CCB4E61079; Sat, 14 Sep 2024 18:03:09 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-39.vla.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id 43LAcI8Rw4Y0-wR7mUApQ; Sat, 14 Sep 2024 18:03:09 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1726326189; bh=AH0X10DAbtOG8ePxWjSuB8b//k4PxC1kWXHBvjwYrxA=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=dCH6xgshS/5Ham8uFzctdrHsJoQBUe8N0MrNjQqgzGxDaqnwtRUPkS15hS89Ce8eU xjqggAEiwpW+4v4kNNfXl+7ZOBmgWMleqQ8ByHpV6g1H9Mzw2TzhkJBz1kOeVQOdEe j0NImtws4vygkCHjFWMHMZFPRThELMEYbN7dL0NA= Authentication-Results: mail-nwsmtp-smtp-production-main-39.vla.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from phl-compute-11.internal (phl-compute-11.phl.internal [10.202.2.51]) by mailfauth.phl.internal (Postfix) with ESMTP id 9BDD4120006E; Sat, 14 Sep 2024 11:03:04 -0400 (EDT) Received: from phl-mailfrontend-01 ([10.202.2.162]) by phl-compute-11.internal (MEProxy); Sat, 14 Sep 2024 11:03:04 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeftddrudektddgkeegucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgfnhhsuhgsshgtrhhisggvpdfu rfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnh htshculddquddttddmnecujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdej necuhfhrohhmpeffmhhithhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrd hruheqnecuggftrfgrthhtvghrnhepiefhjeeuveetffffvdefteffffekhfeuudejieeh heeiudelgfehgffffeduffdunecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpe hmrghilhhfrhhomhepughguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhi thihqddufeeffeelleehhedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvg igrdhruhesfhgrshhtmhgrihhlrdgtohhmpdhnsggprhgtphhtthhopeekpdhmohguvgep shhmthhpohhuthdprhgtphhtthhopegvlhhiiiesghhnuhdrohhrghdprhgtphhtthhope hsthgvfhgrnhhkrghnghgrshesghhmrghilhdrtghomhdprhgtphhtthhopeehfeejgeel seguvggssghughhsrdhgnhhurdhorhhgpdhrtghpthhtohepihhkuhhmihesihhkuhhmih drqhhuvgdrjhhppdhrtghpthhtohepughfuhhsshhnvghrsehgohhoghhlvghmrghilhdr tghomhdprhgtphhtthhopegrrhgrshhhsehgnhhurdhorhhgpdhrtghpthhtohepmhhonh hnihgvrhesihhrohdruhhmohhnthhrvggrlhdrtggrpdhrtghpthhtohepthhsughhsehg nhhurdhorhhg X-ME-Proxy: Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 14 Sep 2024 11:03:02 -0400 (EDT) Message-ID: <43ee25d8-ef09-40d6-ab3e-1fc4db1bc16d@yandex.ru> Date: Sat, 14 Sep 2024 18:02:59 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird References: <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> <86v832z5lp.fsf@gnu.org> <6efddf34-1f18-41c8-9125-b6b2e3ad3d21@yandex.ru> <75d6872c-4c31-44a5-8597-781741dca720@yandex.ru> <2fc35487-63c7-4d11-89ca-b87f4aad6e58@yandex.ru> <86r09mfhy9.fsf@gnu.org> Content-Language: en-US From: Dmitry Gutov In-Reply-To: <86r09mfhy9.fsf@gnu.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On 14/09/2024 17:06, Eli Zaretskii wrote: >> From: Stefan Kangas >> Date: Sat, 14 Sep 2024 06:43:01 -0700 >> Cc:ikumi@ikumi.que.jp,dfussner@googlemail.com,tsdh@gnu.org,eliz@gnu.org, >> monnier@iro.umontreal.ca >> >> Dmitry Gutov writes: >> >>> It's good enough from my side, but I hope someone else could comment as >>> well. >>> >>> Additionally though, it might or might not be too big a change for Emacs >>> 30 (I'm not sure), and if we're talking about 31 only, then it could >>> wait a little more for the review. >> Are we happy to install this now, or are we still waiting for more >> comments? > We've waited long enough, I think. I also agree. From unknown Sun Jun 22 07:59:54 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: David Fussner Subject: bug#53749: closed (Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers) Message-ID: References: X-Gnu-PR-Message: they-closed 53749 X-Gnu-PR-Package: emacs X-Gnu-PR-Keywords: patch Reply-To: 53749@debbugs.gnu.org Date: Sat, 14 Sep 2024 15:10:02 +0000 Content-Type: multipart/mixed; boundary="----------=_1726326602-16354-1" This is a multi-part message in MIME format... ------------=_1726326602-16354-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #53749: 29.0.50; [PATCH] Xref backend for TeX buffers which was filed against the emacs package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 53749@debbugs.gnu.org. --=20 53749: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D53749 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1726326602-16354-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 53749-done) by debbugs.gnu.org; 14 Sep 2024 15:09:30 +0000 Received: from localhost ([127.0.0.1]:47609 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1spUOv-0004Bi-W1 for submit@debbugs.gnu.org; Sat, 14 Sep 2024 11:09:30 -0400 Received: from mail-ed1-f53.google.com ([209.85.208.53]:44120) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1spUOs-0004BA-UT for 53749-done@debbugs.gnu.org; Sat, 14 Sep 2024 11:09:27 -0400 Received: by mail-ed1-f53.google.com with SMTP id 4fb4d7f45d1cf-5c413cf5de5so3994111a12.0 for <53749-done@debbugs.gnu.org>; Sat, 14 Sep 2024 08:09:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1726326490; x=1726931290; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:from:to:cc:subject:date:message-id:reply-to; bh=W2d9p2MDS1oWw4zMX34lPFZeR8s6rb/eO/x3/RkqnyY=; b=ZxJ1yrex8BbnZpAM6qqNraxJ+fAjT5OSw3NuasPpAulJx6ARzfhgsLb1NKs9A1AUv0 yxDXShRSXWm1E8vsUFVO2RP54vHgBlff+KINlugLfW3tt/edYZ54JHDKYjyjfdhVHpVK pNHaTlWSyVReulbHL7sAylBewBwQfsk0j2oGseqFsBRIK8DJbBk3QXb/l4rU9BN7izCp njiKb1sn6ozJlvYklFNQsY0UlRMiJZVcx+COF+u0hLTPZfzHhp4hrVuN1Y2HESwwO7e5 tYNx00xAPDiAvjCiMXauP5rOauafmwM53niWUb1/RpbyjLciwctRaeUeKk7cKTlA0ptM ii0w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1726326490; x=1726931290; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=W2d9p2MDS1oWw4zMX34lPFZeR8s6rb/eO/x3/RkqnyY=; b=H1sAAZcuitH0xNQHNT2ydmPodbQNnqMVbJeIOlIrBuIVVN1BDhctdwYXMxyj1HnJ8Z CUwYOZxsyuYWcRNxt4M+pCBm4FadfJzQTjkTwNCOD+U5XJw+Ldlt/8L3EsAXuIplXDo+ Vep1Ko2dIda18CLbHmMlcm8THgJdxHaSb4OZdZPkX34vZ4MgE4kPvJRj283/9y3VnBl2 hUmNAeVFTg294Udz1K/BiUca06vkLiO+MfYTts9HfSuYW1N5KZqUgTW8HwUZMjFrsYD4 bN5hvAeh93GA9uUSBxYw26lJiSPO5bIAhG6vjFzdYihf6f1HwiAZV0B0MWyYXH0X3rNs wP/Q== X-Forwarded-Encrypted: i=1; AJvYcCW9dPJ+pJzUFLlnWw0QL/n1t78F6Y46tYztvCdQaWhXT3HhVdSPozODnjJXVikiXm20W3nmMXz+dO6Y@debbugs.gnu.org X-Gm-Message-State: AOJu0YyS83Dw+K8Xw0b4ARL3ts2OUxFXU1CjrKz2FZ1SmEWmvFrRjFZe TyumWfEOHmWuDXxIrZR70YQi1tcLbxSbOjBfFmHe2ETAOo22Vhl35BDq0jVjciBsst+1TonT5au 6c+R9BxG08c7cIIWX14LPXEMl060= X-Google-Smtp-Source: AGHT+IHnrWcDLcpRmDmF8uzXqFxIdNzpI46Y9PscJq/ATD2q1JT2mrWUX/gK7aeeYqM1jJhVMv4NPHP6OYMMR+9NJq0= X-Received: by 2002:a05:6402:35c1:b0:5c4:181a:6b0a with SMTP id 4fb4d7f45d1cf-5c4181a6b7dmr7783962a12.10.1726326489852; Sat, 14 Sep 2024 08:08:09 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Sat, 14 Sep 2024 08:08:09 -0700 From: Stefan Kangas In-Reply-To: <86r09mfhy9.fsf@gnu.org> References: <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> <86v832z5lp.fsf@gnu.org> <6efddf34-1f18-41c8-9125-b6b2e3ad3d21@yandex.ru> <75d6872c-4c31-44a5-8597-781741dca720@yandex.ru> <2fc35487-63c7-4d11-89ca-b87f4aad6e58@yandex.ru> <86r09mfhy9.fsf@gnu.org> MIME-Version: 1.0 Date: Sat, 14 Sep 2024 08:08:08 -0700 Message-ID: Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Eli Zaretskii Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749-done Cc: 53749-done@debbugs.gnu.org, ikumi@ikumi.que.jp, dgutov@yandex.ru, dfussner@googlemail.com, arash@gnu.org, monnier@iro.umontreal.ca, tsdh@gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Version: 31.1 Eli Zaretskii writes: >> From: Stefan Kangas >> Date: Sat, 14 Sep 2024 06:43:01 -0700 >> Cc: ikumi@ikumi.que.jp, dfussner@googlemail.com, tsdh@gnu.org, eliz@gnu.org, >> monnier@iro.umontreal.ca >> >> Dmitry Gutov writes: >> >> > It's good enough from my side, but I hope someone else could comment as >> > well. >> >> Are we happy to install this now, or are we still waiting for more >> comments? > > We've waited long enough, I think. Thanks, so I've now installed the patch on master. Note that I broke out the etags/ctags changes into a separate patch (in David's name) to make the original patch a bit less unwieldy. 3090b2304e7 Update the etags/ctags test files b44c00669ac Provide a modified xref backend for TeX buffers And with that, I'm closing this bug report. Congratulations to David for landing his first contribution to Emacs, and thanks again. ------------=_1726326602-16354-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 3 Feb 2022 15:09:52 +0000 Received: from localhost ([127.0.0.1]:57397 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nFdk7-0004gF-99 for submit@debbugs.gnu.org; Thu, 03 Feb 2022 10:09:52 -0500 Received: from lists.gnu.org ([209.51.188.17]:35482) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nFdk5-0004g6-4w for submit@debbugs.gnu.org; Thu, 03 Feb 2022 10:09:50 -0500 Received: from eggs.gnu.org ([209.51.188.92]:45818) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nFdk2-0000BS-QL for bug-gnu-emacs@gnu.org; Thu, 03 Feb 2022 10:09:47 -0500 Received: from [2607:f8b0:4864:20::830] (port=43865 helo=mail-qt1-x830.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nFdjz-0004YM-Po for bug-gnu-emacs@gnu.org; Thu, 03 Feb 2022 10:09:46 -0500 Received: by mail-qt1-x830.google.com with SMTP id x5so2489138qtw.10 for ; Thu, 03 Feb 2022 07:09:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=FG58FpWqX5dqOaMqBqtIR1QCq9fb4hO9MKBH3GP0bR4=; b=NRzGguuk/ZyJH4rJ2/nfMQzmQ6YLYgukEOKO3yB1KxG90hF10tz19FsHIopKvDNzJY HnQriD4xkKk0HcEi76vX5Ao47bs/tywfMHAXP6poZgTpOeJ/39GlI1GRLG5U0TNClSuq ozw0RG03wLXtS227ruuSE3rBVigU2ffh2946+v+299WJQjGRaMoCmVFlK8mJbZcqO1bP HsLbAXw65hcKxcJXvjrIXyMQ/IxjIVXx6y1uaQJ9GI7uw+S10FViEt+BbwImvTURGZSg XaR1V4UgPJ0bP0BIIlhCQTOXvoL3g68aip5XAX3sC3suXOfCusDcCEmEg9m3gdX+/8Tv GhBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=FG58FpWqX5dqOaMqBqtIR1QCq9fb4hO9MKBH3GP0bR4=; b=8AD2lFppATIHuBTEdX0fojg0mxRRG1yr4Il+yQTx9D9BookCy+U7+Ak9yGbCrcYK06 G4iZdOB5skfVe8BV8USPv8E9urLv6HFpwgWcaHEcuEjk0GeEKH+nNS5CdGVEbZw3KMmz 0Mbs71vEi0E6nRE27mLfSWLfZYhjtW15+z71l4SlUlgv8fwQazm0VlNRZWtxV8RYHITT Ejp6F41eYeE0EQMco0KkdaT1xKh+Ufe6sVeUbtTHjKI8wUjQaqibg9LXZ01JfaKWs5G4 HGqBzNUWTJAldAqd/zXEtG2iBeoxppbKIU8KrR5oA4avyRuEVJzoxe3jIRtRZrNmg17m GqdQ== X-Gm-Message-State: AOAM532VugSzcTg6SA4IrTvrrq697Da1jvoim1aU9BISnwO8nkEQHzIq C640Q17/1nNkxoWxaUxRbKd2itCNlhgkbiLDcZU5RoUhVm+Z0g== X-Google-Smtp-Source: ABdhPJx2bRjGnxK/hgJ5j4BExtY9yptBRG/9Aku6LaZ3SPWtg204KzR39l48STM5GpgQTFQ9pUOJs8WLin35Qxsuo2E= X-Received: by 2002:a05:620a:2a07:: with SMTP id o7mr23177669qkp.274.1643900977699; Thu, 03 Feb 2022 07:09:37 -0800 (PST) MIME-Version: 1.0 From: David Fussner Date: Thu, 3 Feb 2022 15:09:22 +0000 Message-ID: Subject: 29.0.50; [PATCH] Xref backend for TeX buffers To: bug-gnu-emacs@gnu.org Content-Type: multipart/mixed; boundary="000000000000d28fd905d71e8534" X-Host-Lookup-Failed: Reverse DNS lookup failed for 2607:f8b0:4864:20::830 (failed) Received-SPF: pass client-ip=2607:f8b0:4864:20::830; envelope-from=dfussner@googlemail.com; helo=mail-qt1-x830.google.com X-Spam_score_int: -12 X-Spam_score: -1.3 X-Spam_bar: - X-Spam_report: (-1.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, PDS_HP_HELO_NORDNS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: 0.2 (/) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) --000000000000d28fd905d71e8534 Content-Type: multipart/alternative; boundary="000000000000d28fd805d71e8532" --000000000000d28fd805d71e8532 Content-Type: text/plain; charset="UTF-8" I've recently been trying to use xref commands with a tags table in a TeX repository, and many of the results are sub-optimal. This is a known issue -- within living memory there have been at least two discussions related to it on help-gnu-emacs: https://lists.gnu.org/archive/html/help-gnu-emacs/2018-06/msg00126.html https://lists.gnu.org/archive/html/help-gnu-emacs/2021-07/msg00436.html Neither discussion resulted in any code, at least not that I can find, and the issues mentioned there remain. For example, xref-find-definitions on, say, '\mycommand' returns No definitions found for: mycommand. (The absence of the escape char in the search string makes the search fail, as the tag name in the table will be '\mycommand'.) Similarly, any xref command on 'my:citekey' will only search by default for the half of the symbol under point, stopping at the colon. There are many other behaviors that are suboptimal, as well, so in the end I wrote a new xref backend for TeX buffers (cloning large portions of the default etags backend), and wondered whether it might be welcome in GNU Emacs. A few remarks: 1. The code should work as it stands both in the AUCTeX and the in-tree modes. The AUCTeX hooks I've included in the patch are provisional, as I would want to discuss with them how they would want to handle it, should the patch be accepted in some form. 2. Along the way I found some issues with how etags parses TeX files, issues which affect the usefulness of the xref commands, so I've made changes in etags.c as well. When running the test suite for etags the only diffs occurred in the TeX-related sections of the resulting tags file, and location information in those sections was good. 3. The patch as it stands enables all the changes by default to give what I judge to be the best out-of-the-box experience, but wiser heads may well have other ideas. 4. If it looks like the patch will make it into Emacs in some form, I'm going to need to assign copyright, so I'd appreciate help with getting that started. Thanks, David. --000000000000d28fd805d71e8532 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I've recently been trying to use xref commands with a = tags table in a
TeX repository, and many of the results are sub-optimal.= =C2=A0 This is a
known issue -- within living memory there have been at = least two
discussions related to it on help-gnu-emacs:

h= ttps://lists.gnu.org/archive/html/help-gnu-emacs/2018-06/msg00126.html<= br>https://lists.gnu.org/archive/html/help-gnu-emacs/2021-07/msg00= 436.html

Neither discussion resulted in any code, at least not t= hat I can find,
and the issues mentioned there remain.=C2=A0 For example= ,
xref-find-definitions on, say, '\mycommand' returns

No = definitions found for: mycommand.

(The absence of the escape char in= the search string makes the search
fail, as the tag name in the table w= ill be '\mycommand'.)

Similarly, any xref command on 'my= :citekey' will only search by default
for the half of the symbol und= er point, stopping at the colon.

There are many other behaviors that= are suboptimal, as well, so in the
end I wrote a new xref backend for T= eX buffers (cloning large portions
of the default etags backend), and wo= ndered whether it might be welcome
in GNU Emacs.

A few remarks:
1. The code should work as it stands both in the AUCTeX and the in-tr= ee
modes.=C2=A0 The AUCTeX hooks I've included in the patch are prov= isional, as
I would want to discuss with them how they would want to han= dle it,
should the patch be accepted in some form.

2. Along the w= ay I found some issues with how etags parses TeX files,
issues which aff= ect the usefulness of the xref commands, so I've made
changes in eta= gs.c as well.=C2=A0 When running the test suite for etags the
only diffs= occurred in the TeX-related sections of the resulting tags
file, and lo= cation information in those sections was good.

3. The patch as it st= ands enables all the changes by default to give
what I judge to be the b= est out-of-the-box experience, but wiser heads
may well have other ideas= .

4. If it looks like the patch will make it into Emacs in some form= , I'm
going to need to assign copyright, so I'd appreciate help = with getting
that started.

Thanks,

David.
--000000000000d28fd805d71e8532-- --000000000000d28fd905d71e8534 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Provide-an-xref-backend-for-TeX-buffers.patch" Content-Disposition: attachment; filename="0001-Provide-an-xref-backend-for-TeX-buffers.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kz7439kw0 RnJvbSA5ZjViMjU0N2ZlZjU1OTdmOWM0MWUxYzQ2Zjk5NzQ2MDk1YTA4MzRjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBGdXNzbmVyIDxkZnVzc25lckBnb29nbGVtYWlsLmNv bT4KRGF0ZTogV2VkLCAyIEZlYiAyMDIyIDEzOjMxOjUxICswMDAwClN1YmplY3Q6IFtQQVRDSF0g UHJvdmlkZSBhbiB4cmVmIGJhY2tlbmQgZm9yIFRlWCBidWZmZXJzCgoqIGxpYi1zcmMvZXRhZ3Mu YyAoVGVYX2NvbW1hbmRzKTogSW1wcm92ZSBwYXJzaW5nIG9mIGNvbW1hbmRzIGluIFRlWApidWZm ZXJzLgooVEVYX2RlZmVudik6IEV4cGFuZCBsaXN0IG9mIGNvbW1hbmRzIHRvIHRhZyBieSBkZWZh dWx0IGluIFRlWApidWZmZXJzLgooVGVYX2hlbHApOgoqIGRvYy9lbWFjcy9tYWludGFpbmluZy50 ZXhpIChUYWcgU3ludGF4KTogRG9jdW1lbnQgbmV3IHRhZ2dlZApjb21tYW5kcy4KCiogbGlzcC90 ZXh0bW9kZXMvdGV4LW1vZGUuZWwgKHRleC0teHJlZi1iYWNrZW5kKTogTmV3IGZ1bmN0aW9uIHRv IG5hbWUKeHJlZiBiYWNrZW5kLgoodGV4LWNvbW1vbi1pbml0aWFsaXphdGlvbik6IFNldCB1cCB4 cmVmIGJhY2tlbmQgZm9yIGluLXRyZWUgVGVYCm1vZGVzLgoodGV4LXNldC1hdWN0ZXgteHJlZi1i YWNrZW5kKTogTmV3IGZ1bmN0aW9uIHRvIGRvIHRoZSBzYW1lIGZvciBBVUNUZVgKbW9kZXMuCih4 cmVmLWJhY2tlbmQtaWRlbnRpZmllci1hdC1wb2ludCkKKHhyZWYtYmFja2VuZC1pZGVudGlmaWVy LWNvbXBsZXRpb24tdGFibGUpCih4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21wbGV0aW9uLWln bm9yZS1jYXNlKQooeHJlZi1iYWNrZW5kLWRlZmluaXRpb25zLCB4cmVmLWJhY2tlbmQtYXByb3Bv cykKKHhyZWYtYmFja2VuZC1yZWZlcmVuY2VzKTogTmV3IFRlWCBpbXBsZW1lbnRhdGlvbnMgb2Yg dGhlIGdlbmVyaWMgeHJlZgpiYWNrZW5kIGZ1bmN0aW9ucy4KKHRleC14cmVmLWFwcm9wb3MtcmVn ZXhwLCB0ZXgteHJlZi1yZWZlcmVuY2VzLWluLWRpcmVjdG9yeSk6IE5ldwpoZWxwZXIgZnVuY3Rp b25zIGZvciBiYWNrZW5kLgoodGV4LXRoaW5nYXRwdC1tb2Rlcy1saXN0KTogTmV3IHZhci4KKHRl eC10aGluZ2F0cHQtaXMtdGV4c3ltYm9sKTogTmV3IGRlZmN1c3RvbS4KKHRleC1zZXQtdGhpbmdh dHB0LXN5bWJvbCk6IE5ldyBjb21tYW5kIHRvIGFwcGx5IHZhbHVlIG9mIHByZXZpb3VzCmJ1ZmZl ci1sb2NhbGx5LgoodGV4LS1zeW1ib2wtb3ItdGV4c3ltYm9sKTogTmV3IGhlbHBlciBmdW5jdGlv biBmb3IgcHJldmlvdXMuCih0ZXgtdGhpbmdhdHB0LS1iZWdpbm5pbmctb2YtdGV4c3ltYm9sKQoo dGV4LXRoaW5nYXRwdC0tZW5kLW9mLXRleHN5bWJvbCk6IE5ldyBmdW5jdGlvbnMgdG8gZGVmaW5l IHRleHN5bWJvbAoidGhpbmciIGZvciAndGhpbmctYXQtcG9pbnQnLgoodGV4LXRoaW5nYXRwdC1z eW50YXgtdGFibGUsIHRleC1lc2NhcGUtY2hhcik6IE5ldyB2YXJzIHRvIGRvIHRoZQpzYW1lLgoo dGV4LS10aGluZy1hdC1wb2ludCk6IE5ldyBmdW5jdGlvbiB0byByZXR1cm4gdGV4c3ltYm9sCid0 aGluZy1hdC1wb2ludCcuCih0ZXgtdGhpbmdhdHB0LWluY2x1ZGUtZXNjYXBlLCB0ZXgteHJlZi10 cnktYWx0ZXJuYXRlLWZvcm1zKTogTmV3CmRlZmN1c3RvbXMgdG8gcmVmaW5lIGJlaGF2aW9yIG9m IHRoZSB4cmVmIGJhY2tlbmQuCih0ZXgtLWluY2x1ZGUtZXNjYXBlLXApOiBOZXcgZnVuY3Rpb24g dG8gZG8gdGhlIHNhbWUuCi0tLQogZG9jL2VtYWNzL21haW50YWluaW5nLnRleGkgfCAgIDkgKy0K IGxpYi1zcmMvZXRhZ3MuYyAgICAgICAgICAgIHwgIDgzICsrKysrKysrLS0KIGxpc3AvdGV4dG1v ZGVzL3RleC1tb2RlLmVsIHwgMzMxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysKIDMgZmlsZXMgY2hhbmdlZCwgNDExIGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL2RvYy9lbWFjcy9tYWludGFpbmluZy50ZXhpIGIvZG9jL2VtYWNzL21haW50 YWluaW5nLnRleGkKaW5kZXggZWRjYzYwNzVmNy4uMWRlNDM1MjQ2ZSAxMDA2NDQKLS0tIGEvZG9j L2VtYWNzL21haW50YWluaW5nLnRleGkKKysrIGIvZG9jL2VtYWNzL21haW50YWluaW5nLnRleGkK QEAgLTI1NjUsOCArMjU2NSwxMyBAQCBUYWcgU3ludGF4CiBAY29kZXtcc2VjdGlvbn0sIEBjb2Rl e1xzdWJzZWN0aW9ufSwgQGNvZGV7XHN1YnN1YnNlY3Rpb259LAogQGNvZGV7XGVxbm99LCBAY29k ZXtcbGFiZWx9LCBAY29kZXtccmVmfSwgQGNvZGV7XGNpdGV9LAogQGNvZGV7XGJpYml0ZW19LCBA Y29kZXtccGFydH0sIEBjb2Rle1xhcHBlbmRpeH0sIEBjb2Rle1xlbnRyeX0sCi1AY29kZXtcaW5k ZXh9LCBAY29kZXtcZGVmfSwgQGNvZGV7XG5ld2NvbW1hbmR9LCBAY29kZXtccmVuZXdjb21tYW5k fSwKLUBjb2Rle1xuZXdlbnZpcm9ubWVudH0gYW5kIEBjb2Rle1xyZW5ld2Vudmlyb25tZW50fSBh cmUgdGFncy4KK0Bjb2Rle1xpbmRleH0sIEBjb2Rle1xkZWZ9LCBAY29kZXtcZWRlZn0sIEBjb2Rl e1xnZGVmfSwgQGNvZGV7XHhkZWZ9LAorQGNvZGV7XG5ld2NvbW1hbmR9LCBAY29kZXtccmVuZXdj b21tYW5kfSwgQGNvZGV7XG5ld2Vudmlyb25tZW50fSwKK0Bjb2Rle1xyZW5ld2Vudmlyb25tZW50 fSwgQGNvZGV7XERlY2xhcmVSb2J1c3RDb21tYW5kfSwKK0Bjb2Rle1xuZXdyb2J1c3RjbWR9LCBA Y29kZXtccmVuZXdyb2J1c3RjbWR9LCBAY29kZXtcbGV0fSwKK0Bjb2Rle1xjc2RlZn0sIEBjb2Rl e1xjc2VkZWZ9LCBAY29kZXtcY3NnZGVmfSwgQGNvZGV7XGNzeGRlZn0sCitAY29kZXtcY3NsZXRj c30sIGFuZCBAY29kZXtcY3NsZXR9IGFyZSB0YWdzLiAgU28gdG9vIGFyZSB0aGUgYXJndW1lbnRz CitvZiBhbnkgc3RhcnJlZCB2YXJpYW50cyBvZiB0aGVzZSBjb21tYW5kcywgd2hlbiBzdWNoIHZh cmlhbnRzIGV4aXN0LgogCiBPdGhlciBjb21tYW5kcyBjYW4gbWFrZSB0YWdzIGFzIHdlbGwsIGlm IHlvdSBzcGVjaWZ5IHRoZW0gaW4gdGhlCiBlbnZpcm9ubWVudCB2YXJpYWJsZSBAZW52e1RFWFRB R1N9IGJlZm9yZSBpbnZva2luZyBAY29tbWFuZHtldGFnc30uICBUaGUKZGlmZiAtLWdpdCBhL2xp Yi1zcmMvZXRhZ3MuYyBiL2xpYi1zcmMvZXRhZ3MuYwppbmRleCBhYTViYzg4MzlkLi5lNTI2OWFh NDU2IDEwMDY0NAotLS0gYS9saWItc3JjL2V0YWdzLmMKKysrIGIvbGliLXNyYy9ldGFncy5jCkBA IC03OTMsOCArNzkzLDEyIEBAICNkZWZpbmUgU1RESU4gMHgxMDAxCQkvKiByZXR1cm5lZCBieSBn ZXRvcHRfbG9uZyBvbiAtLXBhcnNlLXN0ZGluICovCiAiSW4gTGFUZVggdGV4dCwgdGhlIGFyZ3Vt ZW50IG9mIGFueSBvZiB0aGUgY29tbWFuZHMgJ1xcY2hhcHRlcicsXG5cCiAnXFxzZWN0aW9uJywg J1xcc3Vic2VjdGlvbicsICdcXHN1YnN1YnNlY3Rpb24nLCAnXFxlcW5vJywgJ1xcbGFiZWwnLFxu XAogJ1xccmVmJywgJ1xcY2l0ZScsICdcXGJpYml0ZW0nLCAnXFxwYXJ0JywgJ1xcYXBwZW5kaXgn LCAnXFxlbnRyeScsXG5cCi0nXFxpbmRleCcsICdcXGRlZicsICdcXG5ld2NvbW1hbmQnLCAnXFxy ZW5ld2NvbW1hbmQnLFxuXAotJ1xcbmV3ZW52aXJvbm1lbnQnIG9yICdcXHJlbmV3ZW52aXJvbm1l bnQnIGlzIGEgdGFnLlxuXAorJ1xcaW5kZXgnLCAnXFxkZWYnLCAnXFxlZGVmJywgJ1xcZ2RlZics ICdcXHhkZWYnLCAnXFxuZXdjb21tYW5kJyxcblwKKydcXHJlbmV3Y29tbWFuZCcsICdcXG5ld2Vu dmlyb25tZW50JywgJ1xccmVuZXdlbnZpcm9ubWVudCcsXG5cCisnXFxEZWNsYXJlUm9idXN0Q29t bWFuZCwgJ1xcbmV3cm9idXN0Y21kJywgJ1xccmVuZXdyb2J1c3RjbWQnLFxuXAorJ1xcbGV0Jywg J1xcY3NkZWYnLCAnXFxjc2VkZWYnLCAnXFxjc2dkZWYnLCAnXFxjc3hkZWYnLCAnXFxjc2xldGNz JyxcblwKK29yICdcXGNzbGV0JyBpcyBhIHRhZy4gIFNvIGlzIHRoZSBhcmd1bWVudCBvZiBhbnkg b2YgdGhlIHN0YXJyZWRcblwKK3ZhcmlhbnRzIG9mIHRoZXNlIGNvbW1hbmRzLCB3aGVuIGEgc3Rh cnJlZCB2YXJpYW50IGV4aXN0cy5cblwKIFxuXAogT3RoZXIgY29tbWFuZHMgY2FuIGJlIHNwZWNp ZmllZCBieSBzZXR0aW5nIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZVxuXAogJ1RFWFRBR1MnIHRv IGEgY29sb24tc2VwYXJhdGVkIGxpc3QgbGlrZSwgZm9yIGV4YW1wbGUsXG5cCkBAIC01NjczLDEx ICs1Njc3LDE5IEBAIFNjaGVtZV9mdW5jdGlvbnMgKEZJTEUgKmluZikKIHN0YXRpYyBsaW5lYnVm ZmVyICpURVhfdG9rdGFiID0gTlVMTDsgLyogVGFibGUgd2l0aCB0YWcgdG9rZW5zICovCiAKIC8q IERlZmF1bHQgc2V0IG9mIGNvbnRyb2wgc2VxdWVuY2VzIHRvIHB1dCBpbnRvIFRFWF90b2t0YWIu Ci0gICBUaGUgdmFsdWUgb2YgZW52aXJvbm1lbnQgdmFyIFRFWFRBR1MgaXMgcHJlcGVuZGVkIHRv IHRoaXMuICAqLworICAgVGhlIHZhbHVlIG9mIGVudmlyb25tZW50IHZhciBURVhUQUdTIGlzIHBy ZXBlbmRlZCB0byB0aGlzLgorICAgKDIwMjEpIEFkZCB2YXJpYW50cyBvZiAnXGRlZicsIHNvbWUg YWRkaXRpb25hbCBMYVRlWCBjb21tYW5kcywKKyAgIGFuZCBjb21tb24gdmFyaWFudHMgZnJvbSB0 aGUgJ2V0b29sYm94JyBwYWNrYWdlLiAgQWxzbywgYWRkCisgICBzdGFycmVkIHZhcmlhbnRzIG9m IHRoZSBjb21tYW5kcyBpZiB0aGV5IGV4aXN0LiAgU3RhcnJlZAorICAgdmFyaWFudHMgbmVlZCB0 byBhcHBlYXIgYmVmb3JlIHRoZWlyIHVuc3RhcnJlZCB2ZXJzaW9ucy4gKi8KIHN0YXRpYyBjb25z dCBjaGFyICpURVhfZGVmZW52ID0gIlwKLTpjaGFwdGVyOnNlY3Rpb246c3Vic2VjdGlvbjpzdWJz dWJzZWN0aW9uOmVxbm86bGFiZWw6cmVmOmNpdGU6YmliaXRlbVwKLTpwYXJ0OmFwcGVuZGl4OmVu dHJ5OmluZGV4OmRlZlwKLTpuZXdjb21tYW5kOnJlbmV3Y29tbWFuZDpuZXdlbnZpcm9ubWVudDpy ZW5ld2Vudmlyb25tZW50IjsKKzpjaGFwdGVyKjpzZWN0aW9uKjpzdWJzZWN0aW9uKjpzdWJzdWJz ZWN0aW9uKjpwYXJ0KjpsYWJlbDpyZWZcCis6Y2hhcHRlcjpzZWN0aW9uOnN1YnNlY3Rpb246c3Vi c3Vic2VjdGlvbjplcW5vOmNpdGU6YmliaXRlbVwKKzpwYXJ0OmFwcGVuZGl4OmVudHJ5OmluZGV4 OmRlZjplZGVmOmdkZWY6eGRlZjpuZXdjb21tYW5kKjpuZXdjb21tYW5kXAorOnJlbmV3Y29tbWFu ZCo6cmVuZXdjb21tYW5kOm5ld2Vudmlyb25tZW50KjpuZXdlbnZpcm9ubWVudFwKKzpyZW5ld2Vu dmlyb25tZW50KjpyZW5ld2Vudmlyb25tZW50OkRlY2xhcmVSb2J1c3RDb21tYW5kKlwKKzpEZWNs YXJlUm9idXN0Q29tbWFuZDpyZW5ld3JvYnVzdGNtZCo6cmVuZXdyb2J1c3RjbWQ6bmV3cm9idXN0 Y21kKlwKKzpuZXdyb2J1c3RjbWQ6bGV0OmNzZGVmOmNzZWRlZjpjc2dkZWY6Y3N4ZGVmOmNzbGV0 Y3M6Y3NsZXQiOwogCiBzdGF0aWMgdm9pZCBURVhfZGVjb2RlX2VudiAoY29uc3QgY2hhciAqLCBj b25zdCBjaGFyICopOwogCkBAIC01NzM2LDE5ICs1NzQ4LDcwIEBAIFRlWF9jb21tYW5kcyAoRklM RSAqaW5mKQogCSAgICAgIHsKIAkJY2hhciAqcDsKIAkJcHRyZGlmZl90IG5hbWVsZW4sIGxpbmVs ZW47Ci0JCWJvb2wgb3BncnAgPSBmYWxzZTsKKwkJYm9vbCBvcGdycCA9IGZhbHNlLCBvbmVfZXNj ID0gZmFsc2U7CiAKIAkJY3AgPSBza2lwX3NwYWNlcyAoY3AgKyBrZXktPmxlbik7CisJCS8qIFNr aXAgdGhlIG9wdGlvbmFsIGFyZ3VtZW50cyB0byBjb21tYW5kcyBpbiB0aGUgdGFncyBsaXN0IHNv CisJCSAgIHRoYXQgdGhlc2UgYXJndW1lbnRzIGRvbid0IGVuZCB1cCBhcyB0aGUgbmFtZSBvZiB0 aGUgdGFnLgorCQkgICBUaGUgbmFtZSB3aWxsIGluc3RlYWQgY29tZSBmcm9tIHRoZSBhcmd1bWVu dCBpbiBjdXJseSBicmFjZXMKKwkJICAgdGhhdCBmb2xsb3dzIHRoZSBvcHRpb25hbCBvbmVzLiAg Ki8KKwkJaWYgKCpjcCA9PSAnWycgfHwgKmNwID09ICcoJykKKwkJICB7CisJCSAgICB3aGlsZSAo KmNwICE9IFRFWF9vcGdycCAmJiAqY3AgIT0gJ1wwJykKKwkJICAgICAgY3ArKzsKKwkJICB9CiAJ CWlmICgqY3AgPT0gVEVYX29wZ3JwKQogCQkgIHsKIAkJICAgIG9wZ3JwID0gdHJ1ZTsKIAkJICAg IGNwKys7CiAJCSAgfQorCQkvKiBKdW1waW5nIHRvIGEgVGVYIGNvbW1hbmQgZGVmaW5pdGlvbiBk b2Vzbid0IHdvcmsgaW4gYXQKKwkJICAgbGVhc3Qgc29tZSBvZiB0aGUgZWRpdG9ycyB0aGF0IHVz ZSBjdGFncy4gIENoYW5nZXMgaW4KKwkJICAgdGV4LW1vZGUuZWwgaW4gR05VIEVtYWNzIGFkZHJl c3MgdGhlc2UgaXNzdWVzIGZvciBldGFnczsKKwkJICAgdW5jb21tZW50IHRoZSBmb2xsb3dpbmcg Zml2ZSBsaW5lcyB0byBnZXQgYSBxdWljayAmIGRpcnR5CisJCSAgIGltcHJvdmVtZW50IGluIHBy b2dyYW1zIHVzaW5nIGN0YWdzIGFzIHdlbGwsIHRob3VnaCBzb21lCisJCSAgIHBhcnRzIG9mIHRo ZSBiZWhhdmlvciB3aWxsIHJlbWFpbiBzdWJvcHRpbWFsLiAgVGhlCisJCSAgIHVuZG9jdW1lbnRl ZCBjdGFncyBvcHRpb24gJy0tbm8tZHVwbGljYXRlcycgbWF5IGhlbHAuICAqLworCisJCS8qIGlm IChDVEFHUyAmJiAqY3AgPT0gVEVYX2VzYykgKi8KKwkJLyogICB7ICovCisJCS8qICAgICBjcCsr OyAqLworCQkvKiAgICAgb25lX2VzYyA9IHRydWU7ICovCisJCS8qICAgfSAqLworCisJCS8qIEFk ZCBvcHRpb25hbCBhcmd1bWVudCBicmFja2V0cyAnKCcgYW5kICdbJyBzbyB0aGF0IHRoZXNlCisJ CSAgIGFyZ3VtZW50cyBkb24ndCBhcHBlYXIgaW4gdGFnIG5hbWVzLiAgQWxzbyBhZGQgJz0nIGFz IGl0J3MKKwkJICAgcmVsYXRpb25hbCBpbiB0aGUgdmFzdCBtYWpvcml0eSBvZiBjYXNlcy4gICov CiAJCWZvciAocCA9IGNwOwotCQkgICAgICghY19pc3NwYWNlICgqcCkgJiYgKnAgIT0gJyMnICYm Ci0JCSAgICAgICpwICE9IFRFWF9vcGdycCAmJiAqcCAhPSBURVhfY2xncnApOworCQkgICAgICgh Y19pc3NwYWNlICgqcCkgJiYgKnAgIT0gJyMnICYmICpwICE9ICc9JyAmJgorCQkgICAgICAqcCAh PSAnWycgJiYgKnAgIT0gJygnICYmICpwICE9IFRFWF9vcGdycCAmJgorCQkgICAgICAqcCAhPSBU RVhfY2xncnApOwogCQkgICAgIHArKykKLQkJICBjb250aW51ZTsKKwkJICAvKiBBbGxvdyBvbmx5 IG9uZSBlc2NhcGUgY2hhciBpbiBhIHRhZyBuYW1lLCB3aGljaAorCQkgICAgIChwcmltYXJpbHkp IGVuYWJsZXMgdGFnZ2luZyBhIFRlWCBjb21tYW5kJ3MgZGlmZmVyZW50LAorCQkgICAgIHBvc3Np Ymx5IHRlbXBvcmFyeSwgJ1xsZXQnIGJpbmRpbmdzLiAgKi8KKwkJICBpZiAoKnAgPT0gVEVYX2Vz YykKKwkJICAgIHsKKwkJICAgICAgaWYgKCFvbmVfZXNjKQorCQkJeworCQkJICBvbmVfZXNjID0g dHJ1ZTsKKwkJCSAgY29udGludWU7CisJCQl9CisJCSAgICAgIGVsc2UKKwkJCWJyZWFrOworCQkg ICAgfQorCQkgIGVsc2UKKwkJICAgIGNvbnRpbnVlOworCQkvKiBSZS1zY2FuIHRvIGNhdGNoICho aWdobHkgdW51c3VhbCkgY2FzZXMgd2hlcmUgYQorCQkgICBjb21tYW5kIG5hbWUgaXMgb2YgdGhl IGZvcm0gJ1woJy4gICovCisJCWlmICgoKnAgPT0gJygnIHx8ICpwID09ICdbJykgJiYgKHAgLSBj cCkgPCAyKQorCQkgIHsKKwkJICAgIGZvciAocCA9IGNwOworCQkJICghY19pc3NwYWNlICgqcCkg JiYgKnAgIT0gJyMnICYmCisJCQkgICpwICE9IFRFWF9vcGdycCAmJiAqcCAhPSBURVhfY2xncnAp OworCQkJIHArKykKKwkJICAgICAgY29udGludWU7CisJCSAgfQogCQluYW1lbGVuID0gcCAtIGNw OwogCQlsaW5lbGVuID0gbGIubGVuOwogCQlpZiAoIW9wZ3JwIHx8ICpwID09IFRFWF9jbGdycCkK ZGlmZiAtLWdpdCBhL2xpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsIGIvbGlzcC90ZXh0bW9kZXMv dGV4LW1vZGUuZWwKaW5kZXggYWI5NDAzNmQwMS4uM2E3MTc4YzA1NSAxMDA2NDQKLS0tIGEvbGlz cC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwKKysrIGIvbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwK QEAgLTEyOTEsNiArMTI5MSw5IEBAIHRleC1jb21tb24taW5pdGlhbGl6YXRpb24KIAkgICAgICAo c3ludGF4LXByb3BlcnRpemUtcnVsZXMgbGF0ZXgtc3ludGF4LXByb3BlcnRpemUtcnVsZXMpKQog ICA7OyBUQUJzIGluIHZlcmJhdGltIGVudmlyb25tZW50cyBkb24ndCBkbyB3aGF0IHlvdSB0aGlu ay4KICAgKHNldHEtbG9jYWwgaW5kZW50LXRhYnMtbW9kZSBuaWwpCisgIDs7IFNldCB1cCB4cmVm IGJhY2tlbmQgaW4gVGVYIGJ1ZmZlcnMuCisgIChhZGQtaG9vayAneHJlZi1iYWNrZW5kLWZ1bmN0 aW9ucyAjJ3RleC0teHJlZi1iYWNrZW5kIG5pbCB0KQorICAodGV4LXNldC10aGluZ2F0cHQtc3lt Ym9sKQogICA7OyBPdGhlciB2YXJzIHRoYXQgc2hvdWxkIGJlIGJ1ZmZlci1sb2NhbC4KICAgKG1h a2UtbG9jYWwtdmFyaWFibGUgJ3RleC1jb21tYW5kKQogICAobWFrZS1sb2NhbC12YXJpYWJsZSAn dGV4LXN0YXJ0LW9mLWhlYWRlcikKQEAgLTM2NTksNiArMzY2MiwzMzQgQEAgdGV4LWNoa3RleAog ICAgICAgKHByb2Nlc3Mtc2VuZC1yZWdpb24gdGV4LWNoa3RleC0tcHJvY2VzcyAocG9pbnQtbWlu KSAocG9pbnQtbWF4KSkKICAgICAgIChwcm9jZXNzLXNlbmQtZW9mIHRleC1jaGt0ZXgtLXByb2Nl c3MpKSkpCiAKKwwKKzs7OyBYcmVmIGJhY2tlbmQKKworOzsgSGVyZSB3ZSBkZWZpbmUgYW4geHJl ZiBiYWNrZW5kIGZvciBUZVgsIGFkYXB0aW5nIHRoZSBkZWZhdWx0IGV0YWdzCis7OyBiYWNrZW5k IHNvIHRoYXQgdGhlIG1haW4geHJlZiB1c2VyIGNvbW1hbmRzIChpbmNsdWRpbmcKKzs7IGB4cmVm LWZpbmQtZGVmaW5pdGlvbnMnLCBgeHJlZi1maW5kLWFwcm9wb3MnLCBhbmQKKzs7IGB4cmVmLWZp bmQtcmVmZXJlbmNlcycgW29uIE0tLiwgQy1NLS4sIGFuZCBNLT8sIHJlc3BlY3RpdmVseV0pIHdv cmsKKzs7IGluIFRlWCBidWZmZXJzLiAgVGhpcyBtb3N0bHkgaW52b2x2ZXMgZGVmaW5pbmcgYSBu ZXcgVEhJTkcgZm9yCis7OyBgdGhpbmctYXQtcG9pbnQnICh0ZXhzeW1ib2wpLCB0aGVuIHN1YnN0 aXR1dGluZyB0aGF0IFRISU5HIGZvcgorOzsgYHN5bWJvbCcgaW4gVGVYIGJ1ZmZlcnMsIGF0IGxl YXN0IGJ5IChjb25maWd1cmFibGUpIGRlZmF1bHQuICBUaGUKKzs7IFRlWCBlc2NhcGUgY2hhcmFj dGVyIHdpbGwgYnkgZGVmYXVsdCBhcHBlYXIgaW4gdGhlIHJlc3VsdGluZyBzdHJpbmcKKzs7IG9u bHkgd2hlbiB0aGUgeHJlZiBjb21tYW5kIHVzZXMgc3RyaW5nIHNlYXJjaCBhbmQgbm90IHJlZ2V4 cAorOzsgc2VhcmNoLCB0aG91Z2ggdGhpcyB0b28gaXMgY29uZmlndXJhYmxlLiAgVGhlIG5ldyBU SElORyB0eXBlIGFsc28KKzs7IGltcHJvdmVzIHRoZSBhY2N1cmFjeSBvZiBvdGhlciBjb21tYW5k cyB0aGF0IHVzZSBgdGhpbmctYXQtcG9pbnQnCis7OyBpbiBUZVggYnVmZmVycywgbGlrZSBgcHJv amVjdC1maW5kLXJlZ2V4cCcuICBUT0RPOiBJbmNsdWRlIGNvbW1hbmRzCis7OyB0aGF0IGNhbGwg YGJvdW5kcy1vZi10aGluZy1hdC1wb2ludCcgKGZvciBleGFtcGxlCis7OyBgaXNlYXJjaC1mb3J3 YXJkLXRoaW5nLWF0LXBvaW50JykgaW4gdGhlIG1lY2hhbmlzbS4KKworKGRlZnZhciB0ZXgtdGhp bmdhdHB0LW1vZGVzLWxpc3QKKyAgJyh0ZXgtbW9kZSBkb2N0ZXgtbW9kZSBsYXRleC1tb2RlIHBs YWluLXRleC1tb2RlIHNsaXRleC1tb2RlKQorICAiTWFqb3IgbW9kZXMgd2hlcmUgYHRoaW5nLWF0 LXBvaW50JyBtYXkgdXNlIHRoZSBgdGV4c3ltYm9sJyB0eXBlLgorCitXaGVuIGEgYnVmZmVyJ3Mg YG1ham9yLW1vZGUnIGlzIGluIHRoaXMgbGlzdCwgYW5kIHdoZW4KK2B0ZXgtdGhpbmdhdHB0LWlz LXRleHN5bWJvbCcgaXMgdCAodGhlIGRlZmF1bHQpLCBhbnkgY29tbWFuZCBpbgordGhhdCBidWZm ZXIgdGhhdCBjYWxscyBgdGhpbmctYXQtcG9pbnQnIHdpdGggYSBgc3ltYm9sJyBhcmd1bWVudAor YWN0dWFsbHkgdXNlcyB0aGUgYHRleHN5bWJvbCcgYXJndW1lbnQsIGluc3RlYWQuIikKKworKGRl ZmN1c3RvbSB0ZXgtdGhpbmdhdHB0LWlzLXRleHN5bWJvbCB0CisgICJXaGVuIG5vbi1uaWwgcmVw bGFjZSBgc3ltYm9sJyBieSBgdGV4c3ltYm9sJyBmb3IgYHRoaW5nLWF0LXBvaW50Jy4KKworVGhp cyBhcHBsaWVzIG9ubHkgdG8gVGVYIGJ1ZmZlcnMuICBUaGUgYHRleHN5bWJvbCcgXCJ0aGluZ1wi Cittb2RpZmllcyB0aGUgc3RhbmRhcmQgYHN5bWJvbCcgZm9yIHVzZSBpbiBzdWNoIGJ1ZmZlcnMu CisKK1doZW4gbmlsLCByZXN0b3JlIHRoZSBkZWZhdWx0IGJlaGF2aW9yIG9mIGB0aGluZy1hdC1w b2ludCcgaW4gVGVYCitidWZmZXJzLgorCitDdXN0b20gd2lsbCBhdXRvbWF0aWNhbGx5IGFwcGx5 IGNoYW5nZXMgaW4gYWxsIFRlWCBidWZmZXJzLCBidXQKK2lmIHlvdSBzZXQgdGhlIHZhcmlhYmxl IG91dHNpZGUgb2YgQ3VzdG9tIGl0IHdvbid0IHRha2UgZWZmZWN0Cit1bnRpbCB5b3UgYXBwbHkg aXQgd2l0aCBcXFt0ZXgtc2V0LXRoaW5nYXRwdC1zeW1ib2xdLiAgV2l0aG91dCBhCitwcmVmaXgg YXJndW1lbnQgKFxcW3VuaXZlcnNhbC1hcmd1bWVudF0pIHRoaXMgYXBwbGllcyBvbmx5IHRvIHRo ZQorY3VycmVudCBidWZmZXIsIGJ1dCB3aXRoIG9uZSBpdCBhcHBsaWVzIHRvIGFsbCBUZVggYnVm ZmVycyBpbgorYGJ1ZmZlci1saXN0Jy4gIChUZVggYnVmZmVycyBhcmUgdGhvc2Ugd2hvc2UgYG1h am9yLW1vZGUnIGlzIGEKK21lbWJlciBvZiBgdGV4LXRoaW5nYXRwdC1tb2Rlcy1saXN0Jy4pIgor ICA6dHlwZSAnYm9vbGVhbgorICA6Z3JvdXAgJ3RleC1maWxlCisgIDppbml0aWFsaXplICMnY3Vz dG9tLWluaXRpYWxpemUtZGVmYXVsdAorICA6c2V0IChsYW1iZGEgKHZhciB2YWwpCisgICAgICAg ICAoc2V0LWRlZmF1bHQgdmFyIHZhbCkKKyAgICAgICAgICh0ZXgtc2V0LXRoaW5nYXRwdC1zeW1i b2wgdCkpCisgIDp2ZXJzaW9uICIyOS4xIikKKworKGRlZmN1c3RvbSB0ZXgtdGhpbmdhdHB0LWlu Y2x1ZGUtZXNjYXBlICcoeHJlZi1maW5kLWRlZmluaXRpb25zCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB4cmVmLWZpbmQtZGVmaW5pdGlvbnMtb3RoZXItd2luZG93 CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4cmVmLWZpbmQtZGVm aW5pdGlvbnMtb3RoZXItZnJhbWUpCisgICJJZiBub24tbmlsLCBpbmNsdWRlIGB0ZXgtZXNjYXBl LWNoYXInIGluIGB0aGluZy1hdC1wb2ludCcuCisKK1RoaXMgdmFyaWFibGUgb25seSB0YWtlcyBl ZmZlY3Qgd2hlbiBgdGV4LXRoaW5nYXRwdC1pcy10ZXhzeW1ib2wnCitpcyB0ICh0aGUgZGVmYXVs dCksIGNoYW5naW5nIHRoZSBhcmd1bWVudCBwYXNzZWQgdG8KK2B0aGluZy1hdC1wb2ludCcgZnJv bSBgc3ltYm9sJyB0byBgdGV4c3ltYm9sJy4gIFdoZW4gdGhhdCBpcyB0aGUKK2Nhc2UsIHRoZSB2 YWx1ZXMgb2YgdGhpcyB2YXJpYWJsZSBhY3QgYXMgZm9sbG93czoKKworV2hlbiB0LCBgdGhpbmct YXQtcG9pbnQnIHdpbGwgYWx3YXlzIGluY2x1ZGUgYQorYHRleC1lc2NhcGUtY2hhcicgKHVzdWFs bHkgYFxcJyksIHNob3VsZCBvbmUgYmUgcHJlc2VudCwgaW4gdGhlCitzdHJpbmcgaXQgcmV0dXJu cyBpbiBUZVggYnVmZmVycy4KKworV2hlbiBuaWwsIGB0aGluZy1hdC1wb2ludCcgd2lsbCBuZXZl ciBpbmNsdWRlIHRoZQorYHRleC1lc2NhcGUtY2hhcicgaW4gdGhlIHN0cmluZyBpdCByZXR1cm5z IGluIFRlWCBidWZmZXJzLgorCitPdGhlcndpc2UsIGl0J3MgYSBsaXN0IG9mIGNvbW1hbmRzIGZv ciB3aGljaCBgdGhpbmctYXQtcG9pbnQnCit3aWxsIGFsd2F5cyBpbmNsdWRlIHRoZSBgdGV4LWVz Y2FwZS1jaGFyJyBpbiB0aGUgc3RyaW5nIGl0CityZXR1cm5zLiAgVGhlIHRocmVlIHhyZWYgY29t bWFuZHMgbGlzdGVkIGJ5IGRlZmF1bHQgbWF5IGNlYXNlIHRvCitmdW5jdGlvbiBwcm9wZXJseSBp biBUZVggYnVmZmVycyBpZiBzZXQgdG8gbmlsLCBidXQgc2V0dGluZworYHRleC14cmVmLXRyeS1h bHRlcm5hdGUtZm9ybXMnIHRvIHQgd2lsbCByZWN0aWZ5IHRoYXQuIgorICA6dHlwZSAnKGNob2lj ZSAoY29uc3QgOnRhZyAiQWx3YXlzIGluY2x1ZGUgdGV4LWVzY2FwZS1jaGFyIiB0KQorICAgICAg ICAgICAgICAgICAoY29uc3QgOnRhZyAiTmV2ZXIgaW5jbHVkZSB0ZXgtZXNjYXBlLWNoYXIiIG5p bCkKKyAgICAgICAgICAgICAgICAgKHNldCA6dGFnICJJbmNsdWRlIHRleC1lc2NhcGUtY2hhciBm b3IgdGhlc2UgY29tbWFuZHMiCisJCSAgICAgIChyZXBlYXQgOmlubGluZSB0IChzeW1ib2wgOnRh ZyAiY29tbWFuZCIpKSkpCisgIDpncm91cCAndGV4LWZpbGUKKyAgOnZlcnNpb24gIjI5LjEiKQor CisoZGVmY3VzdG9tIHRleC14cmVmLXRyeS1hbHRlcm5hdGUtZm9ybXMgbmlsCisgICJOb24tbmls IG1lYW5zIGZpbmQgZGVmaW5pdGlvbnMgb2YgYWx0ZXJuYXRlIGZvcm1zIG9mIGNvbW1hbmRzLgor CitJZiBgeHJlZi1maW5kLWRlZmluaXRpb25zJyByZXR1cm5zIG5pbCBmb3IgdGhlIGN1cnJlbnQg Zm9ybSBvZgordGhlIFRlWCBjb21tYW5kIG5hbWUsIHRyeSB0aGUgYWx0ZXJuYXRpdmUgZm9ybSwg d2hpY2ggd2lsbCBoYXZlCit0aGUgYHRleC1lc2NhcGUtY2hhcicgKHVzdWFsbHkgYFxcJykgZWl0 aGVyIHN0cmlwcGVkIGZyb20gb3IKK3ByZXBlbmRlZCB0byB0aGUgY3VycmVudCBmb3JtLCBkZXBl bmRpbmcgb24gd2hldGhlciBvciBub3QgdGhlCitjdXJyZW50IGZvcm0gc3RhcnRzIHdpdGggdGhh dCBjaGFyYWN0ZXIuCisKK1RoaXMgbWF5IGJlIHBhcnRpY3VsYXJseSB1c2VmdWwgaW4gZG9jdW1l bnRzIHRoYXQgbWl4IGBcXGRlZicgYW5kCitgXFxjc2RlZicgd2hlbiBkZWZpbmluZyBjb21tYW5k cy4iCisgIDp0eXBlICdib29sZWFuCisgIDpncm91cCAndGV4LWZpbGUKKyAgOnZlcnNpb24gIjI5 LjEiKQorCisoZGVmdmFyIHRleC1lc2NhcGUtY2hhciA/XFwKKyAgIlRoZSBjdXJyZW50IFRlWCBl c2NhcGUgY2hhcmFjdGVyLgorCitUaGUgYGV0YWdzJyBwcm9ncmFtIG9ubHkgcmVjb2duaXplcyBg XFwnICg5MikgYW5kIGAhJyAoMzMpIGFzCitlc2NhcGUgY2hhcmFjdGVycyBpbiBUZVggZG9jdW1l bnRzLCBhbmQgaWYgaXQgZGV0ZWN0cyB0aGUgbGF0dGVyCitpdCBhbHNvIHVzZXMgYDw+JyBhcyB0 aGUgVGVYIGdyb3VwaW5nIGNvbnN0cnVjdCByYXRoZXIgdGhhbiBge30nLgorU2V0dGluZyB0aGlz IHZhcmlhYmxlIHRvIGFueXRoaW5nIG90aGVyIHRoYW4gYFxcJyBvciBgIScgd2lsbCBub3QKK2Jl IHVzZWZ1bCB3aXRob3V0IGNoYW5nZXMgdG8gYGV0YWdzJywgYXQgbGVhc3QgZm9yIGNvbW1hbmRz IHRoYXQKK3NlYXJjaCB0YWdzIHRhYmxlcywgc3VjaCBhcyBcXFt4cmVmLWZpbmQtZGVmaW5pdGlv bnNdIGFuZCBcCitcXFt4cmVmLWZpbmQtYXByb3Bvc10uIikKKworKGRlZnZhciB0ZXgtdGhpbmdh dHB0LXN5bnRheC10YWJsZQorICAobGV0KiAoKG9zdCAoaWYgKGJvdW5kcCAnVGVYLW1vZGUtc3lu dGF4LXRhYmxlKQorICAgICAgICAgICAgICAgICAgVGVYLW1vZGUtc3ludGF4LXRhYmxlCisgICAg ICAgICAgICAgICAgdGV4LW1vZGUtc3ludGF4LXRhYmxlKSkKKyAgICAgICAgIChzdCAobWFrZS1z eW50YXgtdGFibGUgb3N0KSkpCisgICAgKG1vZGlmeS1zeW50YXgtZW50cnkgPyMgIiciIHN0KQor ICAgIChtb2RpZnktc3ludGF4LWVudHJ5ID89ICInIiBzdCkKKyAgICAobW9kaWZ5LXN5bnRheC1l bnRyeSA/YCAiJyIgc3QpCisgICAgKG1vZGlmeS1zeW50YXgtZW50cnkgP1wiICInIiBzdCkKKyAg ICAobW9kaWZ5LXN5bnRheC1lbnRyeSA/JyAiJyIgc3QpCisgICAgc3QpCisgICJTeW50YXggdGFi bGUgZm9yIGRlbGltaXRpbmcgYHRoaW5nLWF0LXBvaW50JyBpbiBUZVggYnVmZmVycy4KKworV2hl biBgdGV4LXRoaW5nYXRwdC1pcy10ZXhzeW1ib2wnIGlzIHQsIHRoaXMgc3ludGF4IHRhYmxlIGhl bHBzCit0byBkZWZpbmUgd2hhdCBhIGB0ZXhzeW1ib2wnIGlzLiIpCisKKyhkZWZ1biB0ZXgtLXhy ZWYtYmFja2VuZCAoKSAndGV4KQorCis7OyBTZXR1cCBBVUNUZVggbW9kZXMuICAoU2hvdWxkIHRo aXMgYmUgaW4gQVVDVGVYIGl0c2VsZj8pCisKKyhhZGQtaG9vayAnVGVYLW1vZGUtaG9vayAjJ3Rl eC1zZXQtYXVjdGV4LXhyZWYtYmFja2VuZCkKKyhhZGQtaG9vayAnVGVYLW1vZGUtaG9vayAjJ3Rl eC1zZXQtdGhpbmdhdHB0LXN5bWJvbCkKKworKGRlZnVuIHRleC1zZXQtYXVjdGV4LXhyZWYtYmFj a2VuZCAoKQorICAoYWRkLWhvb2sgJ3hyZWYtYmFja2VuZC1mdW5jdGlvbnMgIyd0ZXgtLXhyZWYt YmFja2VuZCBuaWwgdCkpCisKKyhkZWNsYXJlLWZ1bmN0aW9uIHhyZWYtaXRlbS1sb2NhdGlvbiAi eHJlZiIpCisoZGVjbGFyZS1mdW5jdGlvbiB4cmVmLS1wcm9qZWN0LXJvb3QgInhyZWYiIChwcm9q ZWN0KSkKKyhkZWNsYXJlLWZ1bmN0aW9uIHhyZWYtLWNvbnZlcnQtaGl0cyAieHJlZiIgKGhpdHMg cmVnZXhwKSkKKyhkZWNsYXJlLWZ1bmN0aW9uIGFwcm9wb3MtcGFyc2UtcGF0dGVybiAiYXByb3Bv cyIgKHBhdHRlcm4pKQorKGRlY2xhcmUtZnVuY3Rpb24gc2VtYW50aWMtc3ltcmVmLXBlcmZvcm0t c2VhcmNoICJzZW1hbnRpYy9zeW1yZWYiKQorKGRlY2xhcmUtZnVuY3Rpb24gc2VtYW50aWMtc3lt cmVmLWluc3RhbnRpYXRlICJzZW1hbnRpYy9zeW1yZWYiKQorKGRlY2xhcmUtZnVuY3Rpb24gcHJv amVjdC1leHRlcm5hbC1yb290cyAicHJvamVjdCIpCisoZGVjbGFyZS1mdW5jdGlvbiBmaW5kLXRh Zy0tY29tcGxldGlvbi1pZ25vcmUtY2FzZSAiZXRhZ3MiKQorKGRlY2xhcmUtZnVuY3Rpb24gZXRh Z3MtLXhyZWYtZmluZC1kZWZpbml0aW9ucyAiZXRhZ3MiKQorKGRlY2xhcmUtZnVuY3Rpb24gZXRh Z3MtLXhyZWYtYXByb3Bvcy1hZGRpdGlvbmFsICJldGFncyIgKHJlZ2V4cCkpCisoZGVjbGFyZS1m dW5jdGlvbiBjbC1kZWxldGUtaWYgImNsLXNlcSIpCisoZGVmdmFyIGV0YWdzLXhyZWYtcHJlZmVy LWN1cnJlbnQtZmlsZSkKKworKGNsLWRlZm1ldGhvZCB4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1h dC1wb2ludCAoKF9iYWNrZW5kIChlcWwgJ3RleCkpKQorICAocmVxdWlyZSAnZXRhZ3MpCisgICh0 aGluZy1hdC1wb2ludCAnc3ltYm9sIHQpKQorCisoY2wtZGVmbWV0aG9kIHhyZWYtYmFja2VuZC1p ZGVudGlmaWVyLWNvbXBsZXRpb24tdGFibGUgKChfYmFja2VuZAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGVxbCAndGV4KSkpCisgICh0 YWdzLWxhenktY29tcGxldGlvbi10YWJsZSkpCisKKyhjbC1kZWZtZXRob2QgeHJlZi1iYWNrZW5k LWlkZW50aWZpZXItY29tcGxldGlvbi1pZ25vcmUtY2FzZSAoKF9iYWNrZW5kCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZXFs ICd0ZXgpKSkKKyAgKGZpbmQtdGFnLS1jb21wbGV0aW9uLWlnbm9yZS1jYXNlKSkKKworKGNsLWRl Zm1ldGhvZCB4cmVmLWJhY2tlbmQtZGVmaW5pdGlvbnMgKChfYmFja2VuZCAoZXFsICd0ZXgpKSBz eW1ib2wpCisgIChsZXQqICgoZmlsZSAoYW5kIGJ1ZmZlci1maWxlLW5hbWUgKGV4cGFuZC1maWxl LW5hbWUgYnVmZmVyLWZpbGUtbmFtZSkpKQorICAgICAgICAgKGFsdC1zeW0gKGlmIChjaGFyLWVx dWFsIHRleC1lc2NhcGUtY2hhciAoYXJlZiBzeW1ib2wgMCkpCisgICAgICAgICAgICAgICAgICAg ICAgKHN1YnN0cmluZyBzeW1ib2wgMSkKKyAgICAgICAgICAgICAgICAgICAgKGNvbmNhdCAoc3Ry aW5nIHRleC1lc2NhcGUtY2hhcikgc3ltYm9sKSkpCisgICAgICAgICAocHJlbGltLWRlZmluaXRp b25zIChldGFncy0teHJlZi1maW5kLWRlZmluaXRpb25zIHN5bWJvbCkpCisgICAgICAgICAoZGVm aW5pdGlvbnMgKGlmIChvciBwcmVsaW0tZGVmaW5pdGlvbnMKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIChub3QgdGV4LXhyZWYtdHJ5LWFsdGVybmF0ZS1mb3JtcykpCisgICAgICAgICAg ICAgICAgICAgICAgICAgIHByZWxpbS1kZWZpbml0aW9ucworICAgICAgICAgICAgICAgICAgICAg ICAgKGV0YWdzLS14cmVmLWZpbmQtZGVmaW5pdGlvbnMgYWx0LXN5bSkpKQorICAgICAgICAgc2Ft ZS1maWxlLWRlZmluaXRpb25zKQorICAgICh3aGVuIChhbmQgZXRhZ3MteHJlZi1wcmVmZXItY3Vy cmVudC1maWxlIGZpbGUpCisgICAgICAoc2V0cSBkZWZpbml0aW9ucworICAgICAgICAgICAgKGNs LWRlbGV0ZS1pZgorICAgICAgICAgICAgIChsYW1iZGEgKGRlZmluaXRpb24pCisgICAgICAgICAg ICAgICAod2hlbiAoZXF1YWwgZmlsZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICh4cmVm LWxvY2F0aW9uLWdyb3VwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh4cmVmLWl0ZW0t bG9jYXRpb24gZGVmaW5pdGlvbikpKQorICAgICAgICAgICAgICAgICAocHVzaCBkZWZpbml0aW9u IHNhbWUtZmlsZS1kZWZpbml0aW9ucykKKyAgICAgICAgICAgICAgICAgdCkpCisgICAgICAgICAg ICAgZGVmaW5pdGlvbnMpKQorICAgICAgKHNldHEgZGVmaW5pdGlvbnMgKG5jb25jIChucmV2ZXJz ZSBzYW1lLWZpbGUtZGVmaW5pdGlvbnMpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ZGVmaW5pdGlvbnMpKSkKKyAgICBkZWZpbml0aW9ucykpCisKKyhjbC1kZWZtZXRob2QgeHJlZi1i YWNrZW5kLWFwcm9wb3MgKChfYmFja2VuZCAoZXFsICd0ZXgpKSBwYXR0ZXJuKQorICAobGV0ICgo cmVnZXhwICh0ZXgteHJlZi1hcHJvcG9zLXJlZ2V4cCBwYXR0ZXJuKSkpCisgICAgKG5jb25jCisg ICAgIChvcgorICAgICAgKGV0YWdzLS14cmVmLWZpbmQtZGVmaW5pdGlvbnMgcmVnZXhwIHQpCisg ICAgICAoZXRhZ3MtLXhyZWYtZmluZC1kZWZpbml0aW9ucyBwYXR0ZXJuIHQpKQorICAgICAoZXRh Z3MtLXhyZWYtYXByb3Bvcy1hZGRpdGlvbmFsIHJlZ2V4cCkpKSkKKworKGNsLWRlZm1ldGhvZCB4 cmVmLWJhY2tlbmQtcmVmZXJlbmNlcyAoKF9iYWNrZW5kIChlcWwgJ3RleCkpIGlkZW50aWZpZXIp CisgIChtYXBjYW4KKyAgIChsYW1iZGEgKGRpcikKKyAgICAgKG1lc3NhZ2UgIlNlYXJjaGluZyAl cy4uLiIgZGlyKQorICAgICAocmVkaXNwbGF5KQorICAgICAocHJvZzEKKyAgICAgICAgICh0ZXgt eHJlZi1yZWZlcmVuY2VzLWluLWRpcmVjdG9yeSBpZGVudGlmaWVyIGRpcikKKyAgICAgICAobWVz c2FnZSAiU2VhcmNoaW5nICVzLi4uIGRvbmUiIGRpcikpKQorICAgKGxldCAoKHByIChwcm9qZWN0 LWN1cnJlbnQgdCkpKQorICAgICAoY29ucworICAgICAgKHhyZWYtLXByb2plY3Qtcm9vdCBwcikK KyAgICAgIChwcm9qZWN0LWV4dGVybmFsLXJvb3RzIHByKSkpKSkKKworKGRlZnVuIHRleC14cmVm LWFwcm9wb3MtcmVnZXhwIChwYXR0ZXJuKQorICAiUmV0dXJuIGEgcmVnZXhwIGZyb20gUEFUVEVS TiBzaW1pbGFyIHRvIGBhcHJvcG9zJy4KKworVW5saWtlIHRoZSBzdGFuZGFyZCB4cmVmIGZ1bmN0 aW9uLCBpZiBgcmVnZXhwLXF1b3RlJyByZXR1cm5zIGEKK3N0cmluZyBkaWZmZXJlbnQgZnJvbSB0 aGUgb3JpZ2luYWwgUEFUVEVSTiwgdGhlIFRlWCBmdW5jdGlvbgorcGFzc2VzIHRoYXQgbW9kaWZp ZWQgc3RyaW5nLCByYXRoZXIgdGhhbiBQQVRURVJOIGl0c2VsZiwgdG8KK2BhcHJvcG9zLXBhcnNl LXBhdHRlcm4nLiIKKyAgKGxldCAoKHJlIChyZWdleHAtcXVvdGUgcGF0dGVybikpKQorICAgIChh cHJvcG9zLXBhcnNlLXBhdHRlcm4KKyAgICAgKGlmIChzdHJpbmctZXF1YWwgcmUgcGF0dGVybikK KyAgICAgICAgIDs7IFNwbGl0IGludG8gd29yZHMKKyAgICAgICAgIChvciAoc3BsaXQtc3RyaW5n IHBhdHRlcm4gIlsgXHRdKyIgdCkKKyAgICAgICAgICAgICAodXNlci1lcnJvciAiTm8gd29yZCBs aXN0IGdpdmVuIikpCisgICAgICAgcmUpKSkpCisKKyhkZWZ1biB0ZXgteHJlZi1yZWZlcmVuY2Vz LWluLWRpcmVjdG9yeSAoc3ltYm9sIGRpcikKKyAgIkZpbmQgYWxsIHJlZmVyZW5jZXMgdG8gU1lN Qk9MIGluIGRpcmVjdG9yeSBESVIuCitSZXR1cm4gYSBsaXN0IG9mIHhyZWYgdmFsdWVzLgorCitU aGlzIGZ1bmN0aW9uIHVzZXMgdGhlIFNlbWFudGljIFN5bWJvbCBSZWZlcmVuY2UgQVBJLiAgSW4g VGVYCitidWZmZXJzIHRoZSB2YWx1ZSByZXR1cm5lZCB3aGVuIHBhc3NpbmcgU1lNQk9MIHRvIGBy ZWdleHAtcXVvdGUnCitiZWNvbWVzIHRoZSBkZWZhdWx0IHNlYXJjaCB0ZXJtLiAgSWYgdGhpcyBz eW1yZWYgaW5zdGFudGlhdGlvbgorZmluZHMgbm8gbWF0Y2hlcywgYSBzZWNvbmQgdHJpZXMgYWdh aW4gd2l0aCB0aGUgb3JpZ2luYWwgU1lNQk9MCithcyBzZWFyY2ggdGVybSwgaW5zdGVhZC4gIEJv dGggc2VhcmNoZXMgc2V0IGtleXdvcmQgYHNlYXJjaHR5cGU6JwordG8gXFw9J3JlZ2V4cCBpbnN0 ZWFkIG9mIHhyZWYncyBcXD0nc3ltYm9sLgorCitTZWUgYHNlbWFudGljLXN5bXJlZi10b29sLWFs aXN0JyBmb3IgZGV0YWlscyBvbiB3aGljaCB0b29scyBhcmUKK3VzZWQsIGFuZCB3aGVuLiAgU2Vl IGFsc28gYHhyZWYtcmVmZXJlbmNlcy1pbi1kaXJlY3RvcnknIGFuZAorY29tbWVudHMgaW4gaXRz IGNvZGUsIHRoZSBsYXR0ZXIgY29waWVkIGludG8gdGhlIFRlWAoraW1wbGVtZW50YXRpb24gZm9y IGNvbnZlbmllbmNlLiIKKyAgKGNsLWFzc2VydCAoZGlyZWN0b3J5LW5hbWUtcCBkaXIpKQorICAo cmVxdWlyZSAnc2VtYW50aWMvc3ltcmVmKQorICAoZGVmdmFyIHNlbWFudGljLXN5bXJlZi10b29s KQorICAoZGVmdmFyIGVkZS1taW5vci1tb2RlKQorCisgIDs7IFNvbWUgc3ltcmVmIGJhY2tlbmRz IHVzZSBgZWRlLXByb2plY3Qtcm9vdC1kaXJlY3RvcnknIGFzIHRoZSByb290CisgIDs7IGRpcmVj dG9yeSBmb3IgdGhlIHNlYXJjaCwgcmF0aGVyIHRoYW4gYGRlZmF1bHQtZGlyZWN0b3J5Jy4gU2lu Y2UKKyAgOzsgdGhlIGNhbGxlciBoYXMgc3BlY2lmaWVkIGBkaXInLCB3ZSBiaW5kIGBlZGUtbWlu b3ItbW9kZScgdG8gbmlsCisgIDs7IHRvIGZvcmNlIHRoZSBiYWNrZW5kIHRvIHVzZSBgZGVmYXVs dC1kaXJlY3RvcnknLgorICAobGV0KiAoKGVkZS1taW5vci1tb2RlIG5pbCkKKyAgICAgICAgIChk ZWZhdWx0LWRpcmVjdG9yeSBkaXIpCisgICAgICAgICA7OyBGSVhNRTogUmVtb3ZlIENTY29wZSBh bmQgR2xvYmFsIGZyb20gdGhlIHJlY29nbml6ZWQgdG9vbHM/CisgICAgICAgICA7OyBUaGUgY3Vy cmVudCBpbXBsZW1lbnRhdGlvbnMgaW50ZXJwcmV0IHRoZSBzeW1ib2wgc2VhcmNoIGFzCisgICAg ICAgICA7OyAiZmluZCBhbGwgY2FsbHMgdG8gdGhlIGdpdmVuIGZ1bmN0aW9uIiwgYnV0IG5vdCBm dW5jdGlvbgorICAgICAgICAgOzsgZGVmaW5pdGlvbi4gQW5kIHRoZXkgcmV0dXJuIG5vdGhpbmcg d2hlbiBwYXNzZWQgYSB2YXJpYWJsZQorICAgICAgICAgOzsgbmFtZSwgZXZlbiBhIGdsb2JhbCBv bmUuCisgICAgICAgICAoc2VtYW50aWMtc3ltcmVmLXRvb2wgJ2RldGVjdCkKKyAgICAgICAgIChj YXNlLWZvbGQtc2VhcmNoIG5pbCkKKyAgICAgICAgICh0ZXhzeW1ib2wgKHJlZ2V4cC1xdW90ZSBz eW1ib2wpKQorICAgICAgICAgKGluc3QgKHNlbWFudGljLXN5bXJlZi1pbnN0YW50aWF0ZSA6c2Vh cmNoZm9yIHRleHN5bWJvbAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICA6c2VhcmNodHlwZSAncmVnZXhwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIDpzZWFyY2hzY29wZSAnc3ViZGlycworICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICA6cmVzdWx0dHlwZSAnbGluZS1hbmQtdGV4dCkpCisgICAg ICAgICAoYWx0LWluc3QgKHNlbWFudGljLXN5bXJlZi1pbnN0YW50aWF0ZSA6c2VhcmNoZm9yIHN5 bWJvbAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOnNl YXJjaHR5cGUgJ3JlZ2V4cAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgOnNlYXJjaHNjb3BlICdzdWJkaXJzCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICA6cmVzdWx0dHlwZSAnbGluZS1hbmQtdGV4dCkpKQorICAg IChvcgorICAgICAoeHJlZi0tY29udmVydC1oaXRzIChzZW1hbnRpYy1zeW1yZWYtcGVyZm9ybS1z ZWFyY2ggaW5zdCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAoZm9ybWF0ICIlcyIgdGV4c3lt Ym9sKSkKKyAgICAgKHhyZWYtLWNvbnZlcnQtaGl0cyAoc2VtYW50aWMtc3ltcmVmLXBlcmZvcm0t c2VhcmNoIGFsdC1pbnN0KQorICAgICAgICAgICAgICAgICAgICAgICAgIChmb3JtYXQgIiVzIiBz eW1ib2wpKSkpKQorCisocHV0ICd0ZXhzeW1ib2wgJ2JlZ2lubmluZy1vcCAndGV4LXRoaW5nYXRw dC0tYmVnaW5uaW5nLW9mLXRleHN5bWJvbCkKKworKHB1dCAndGV4c3ltYm9sICdlbmQtb3AgJ3Rl eC10aGluZ2F0cHQtLWVuZC1vZi10ZXhzeW1ib2wpCisKKyhkZWZ1biB0ZXgtc2V0LXRoaW5nYXRw dC1zeW1ib2wgKCZvcHRpb25hbCBhbGwpCisgICJTZXQgbWVhbmluZyBvZiBgdGhpbmctYXQtcG9p bnQnIGBzeW1ib2wnIGluIChBTEw/KSBUZVggYnVmZmVycy4KKworV2hlbiBgdGV4LXRoaW5nYXRw dC1pcy10ZXhzeW1ib2wnIGlzIHQsIHNldCBgdGhpbmctYXQtcG9pbnQnIHRvCit1c2UgdGhlIGB0 ZXhzeW1ib2wnIFwidGhpbmdcIiBpbnN0ZWFkIG9mIGBzeW1ib2wnLCBvdGhlcndpc2UKK21haW50 YWluIG9yIHJlc3RvcmUgdGhlIGRlZmF1bHQuICBXaXRob3V0IGFuIG9wdGlvbmFsIEFMTCBtYWtl CitjaGFuZ2VzIG9ubHkgaW4gY3VycmVudCBidWZmZXIsIHdpdGggQUxMIG1ha2UgY2hhbmdlcyBp biBhbGwgVGVYCitidWZmZXJzIGluIGBidWZmZXItbGlzdCcuIgorICAoaW50ZXJhY3RpdmUgIlAi KQorICAocmVxdWlyZSAndGhpbmdhdHB0KQorICAoaWYgYWxsCisgICAgICAoZG9saXN0IChidWYg KGJ1ZmZlci1saXN0KSkKKyAgICAgICAgKHdpdGgtY3VycmVudC1idWZmZXIgYnVmCisgICAgICAg ICAgKHRleC0tc3ltYm9sLW9yLXRleHN5bWJvbCkpKQorICAgICh0ZXgtLXN5bWJvbC1vci10ZXhz eW1ib2wpKSkKKworKGRlZnVuIHRleC0tc3ltYm9sLW9yLXRleHN5bWJvbCAoKQorICAod2hlbiAo bWVtcSBtYWpvci1tb2RlIHRleC10aGluZ2F0cHQtbW9kZXMtbGlzdCkKKyAgICAoaWYgdGV4LXRo aW5nYXRwdC1pcy10ZXhzeW1ib2wKKyAgICAgICAgKHNldHEtbG9jYWwgdGhpbmctYXQtcG9pbnQt cHJvdmlkZXItYWxpc3QKKyAgICAgICAgICAgICAgICAgICAgKGFkZC10by1saXN0ICd0aGluZy1h dC1wb2ludC1wcm92aWRlci1hbGlzdAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICcoc3lt Ym9sIC4gdGV4LS10aGluZy1hdC1wb2ludCkpKQorICAgICAgKHNldHEtbG9jYWwgdGhpbmctYXQt cG9pbnQtcHJvdmlkZXItYWxpc3QKKyAgICAgICAgICAgICAgICAgIChkZWxldGUgJyhzeW1ib2wg LiB0ZXgtLXRoaW5nLWF0LXBvaW50KQorICAgICAgICAgICAgICAgICAgICAgICAgICB0aGluZy1h dC1wb2ludC1wcm92aWRlci1hbGlzdCkpKSkpCisKKyhkZWZ1biB0ZXgtLXRoaW5nLWF0LXBvaW50 ICgpCisgICJQYXNzIGB0aGluZycgdHlwZSBgdGV4c3ltYm9sJyB0byBgYm91bmRzLW9mLXRoaW5n LWF0LXBvaW50Jy4KKworV2hlbiBgdGV4LXRoaW5nYXRwdC1pcy10ZXhzeW1ib2wnIGlzIHQsIGNh bGxzIGluIFRlWCBidWZmZXJzIHRvCitgdGhpbmctYXQtcG9pbnQnIHdpdGggYXJndW1lbnQgYHN5 bWJvbCcgd2lsbCB1c2UgdGhpcyBmdW5jdGlvbi4iCisgIChsZXQqICgoc3l0YWIgKG1ha2Utc3lu dGF4LXRhYmxlIHRleC10aGluZ2F0cHQtc3ludGF4LXRhYmxlKSkKKyAgICAgICAgIChib3VuZHMg KHdpdGgtc3ludGF4LXRhYmxlIHN5dGFiCisgICAgICAgICAgICAgICAgICAgKHVubGVzcyAoY2hh ci1lcXVhbCB0ZXgtZXNjYXBlLWNoYXIgP1xcKQorICAgICAgICAgICAgICAgICAgICAgKG1vZGlm eS1zeW50YXgtZW50cnkgP1xcICJfIikKKyAgICAgICAgICAgICAgICAgICAgIChtb2RpZnktc3lu dGF4LWVudHJ5IHRleC1lc2NhcGUtY2hhciAiXFwiKQorICAgICAgICAgICAgICAgICAgICAgKG1v ZGlmeS1zeW50YXgtZW50cnkgPzwgIig+IikKKyAgICAgICAgICAgICAgICAgICAgIChtb2RpZnkt c3ludGF4LWVudHJ5ID8+ICIpPCIpKQorICAgICAgICAgICAgICAgICAgIChib3VuZHMtb2YtdGhp bmctYXQtcG9pbnQgJ3RleHN5bWJvbCkpKSkKKyAgICAod2hlbiBib3VuZHMKKyAgICAgIChidWZm ZXItc3Vic3RyaW5nLW5vLXByb3BlcnRpZXMgKGNhciBib3VuZHMpIChjZHIgYm91bmRzKSkpKSkK KworKGRlZnVuIHRleC0taW5jbHVkZS1lc2NhcGUtcCAoY29tbWFuZCkKKyAgKG9yIChlcSB0ZXgt dGhpbmdhdHB0LWluY2x1ZGUtZXNjYXBlIHQpCisgICAgICAobWVtcSBjb21tYW5kIHRleC10aGlu Z2F0cHQtaW5jbHVkZS1lc2NhcGUpKSkKKworKGRlZnVuIHRleC10aGluZ2F0cHQtLWJlZ2lubmlu Zy1vZi10ZXhzeW1ib2wgKCkKKyAgIk1vdmUgcG9pbnQgdG8gdGhlIGJlZ2lubmluZyBvZiB0aGUg Y3VycmVudCBUZVggc3ltYm9sLiIKKyAgKGFuZCAocmUtc2VhcmNoLWJhY2t3YXJkICJcXChbXVso KV1cXHxcXChcXHN3XFx8XFxzX1xcfFxccy5cXCkrXFwpIikKKyAgICAgICAoc2tpcC1zeW50YXgt YmFja3dhcmQgIndfLiIpCisgICAgICAgKHdoZW4gKHRleC0taW5jbHVkZS1lc2NhcGUtcCB0aGlz LWNvbW1hbmQpCisgICAgICAgICAoc2tpcC1zeW50YXgtYmFja3dhcmQgIlxcLyIpKSkpCisKKyhk ZWZ1biB0ZXgtdGhpbmdhdHB0LS1lbmQtb2YtdGV4c3ltYm9sICgpCisgICJNb3ZlIHBvaW50IHRv IHRoZSBlbmQgb2YgdGhlIGN1cnJlbnQgVGVYIHN5bWJvbC4iCisgIChhbmQgKHJlLXNlYXJjaC1m b3J3YXJkICJcXChbXVsoKV1cXHxcXChcXHN3XFx8XFxzX1xcfFxccy5cXCkrXFwpIikKKyAgICAg ICAoc2tpcC1zeW50YXgtZm9yd2FyZCAid18uIikpKQorCiAobWFrZS1vYnNvbGV0ZS12YXJpYWJs ZSAndGV4LW1vZGUtbG9hZC1ob29rCiAgICAgICAgICAgICAgICAgICAgICAgICAidXNlIGB3aXRo LWV2YWwtYWZ0ZXItbG9hZCcgaW5zdGVhZC4iICIyOC4xIikKIChydW4taG9va3MgJ3RleC1tb2Rl LWxvYWQtaG9vaykKLS0gCjIuMTcuNgoK --000000000000d28fd905d71e8534-- ------------=_1726326602-16354-1-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 14 Sep 2024 15:30:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Stefan Kangas Cc: 53749-done@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Arash Esbati , Stefan Monnier , Tassilo Horn , Eli Zaretskii Received: via spool by 53749-done@debbugs.gnu.org id=D53749.172632777620930 (code D ref 53749); Sat, 14 Sep 2024 15:30:02 +0000 Received: (at 53749-done) by debbugs.gnu.org; 14 Sep 2024 15:29:36 +0000 Received: from localhost ([127.0.0.1]:47654 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1spUiN-0005RV-PY for submit@debbugs.gnu.org; Sat, 14 Sep 2024 11:29:36 -0400 Received: from mail-pg1-f175.google.com ([209.85.215.175]:43365) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1spUiL-0005RC-9c for 53749-done@debbugs.gnu.org; Sat, 14 Sep 2024 11:29:34 -0400 Received: by mail-pg1-f175.google.com with SMTP id 41be03b00d2f7-7c1324be8easo2930874a12.1 for <53749-done@debbugs.gnu.org>; Sat, 14 Sep 2024 08:29:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1726327697; x=1726932497; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=KfrV0Xo0zEl5pSudIsINGj0I8sxCrmRwmkYSqf0ssDc=; b=KBqPXQOE0llaAUG2o+K1/d+pRUm/27+WpYfDq2wjAjFG3mkQ7GpPzjCfrm/2Z22y9v b7oL8CH98Bd11yKcVD3NAqTYyLHtAH1gDgYY2XkCUZ7GaCKxWoSqwE0/ggef3mieOOy8 Nm66JjgJg6Kr2Aerv2bJCQkOB9X1nJ5xmC6wLnuTlrJcs0iMussF+fM/ACccu4nr6kC2 kK9kXYTmqEZr0O2gAa2C1h8/zRghWl5/2IwnVis6fsCzMmjl2Ct2hj76ulvTarqXsPC/ iu0BoWkJjNCIxw6uXDWOPAdx2Mjkj/L+9xDIeBhehOfFfWfG3RXHVOqDNehSRSA9+s17 8AxA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1726327697; x=1726932497; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=KfrV0Xo0zEl5pSudIsINGj0I8sxCrmRwmkYSqf0ssDc=; b=P93qySbX1Qo3909/7URz9F1vrQ3GSvO7ovkMwxAIxyucHF0nxX8Yqcwbx2mGe3zPhU vahBooB5LYHDf0CfhC+8J0LMVnVz5Ty2LSfh1Sbc6osY2hCP5jn5MlaSmqyu9skXDADm VEO3pO+WwLhnbqNQmFEqPLQDiNIYX1mTH+qC/1Bk87heQv7PGstErQIYRWRUZiJHwsVJ t6DlhNnM8vEcYGqwNbymxg68hXvsWxh2dR+eQ0jnpjVMAmvu198AulaCJRyvcJhI6owz 7/Tdp30+D0unDTpQsHQlu/+vxpq+9DMYEx96K2ps5BgIEMhAJ2HCZk3IQB6WROEbQOLg 1o2Q== X-Forwarded-Encrypted: i=1; AJvYcCW7V75OMgsRVgrJ4vOgZXNXcCxco5A5Fy1LCahhFWLzuLI45hRBP0DbbKYWlffBkioYXaXQCfKJMufj@debbugs.gnu.org X-Gm-Message-State: AOJu0Yz7u6/KJqiQsi2aafon1nMdozFE63PJMqM9wUhe/tQmx2gxGlW/ PSqGO31FaBbfLPsEZ37amwaVExauRC7+9X9o3re1WRkjnmKW9kL0wxGv127sX8w9Quaduca44zC cMtmvfKOFko2b/+0KpAqFltgUxWQ= X-Google-Smtp-Source: AGHT+IFky0jYPG4Vn5I6w2qT2qcSH98vh7HLfLqTy4otW4YKAcRXxlkdHp5dLyjq1XdysaKXno3utLQBjI8vzqCxnbo= X-Received: by 2002:a17:90a:1542:b0:2d8:9d79:761a with SMTP id 98e67ed59e1d1-2db671938damr26186559a91.7.1726327696476; Sat, 14 Sep 2024 08:28:16 -0700 (PDT) MIME-Version: 1.0 References: <83ba27b7-4d28-4a3f-b803-4bc49f62986c@yandex.ru> <82993b86-0f34-4adb-a392-c74db5176d14@yandex.ru> <86v832z5lp.fsf@gnu.org> <6efddf34-1f18-41c8-9125-b6b2e3ad3d21@yandex.ru> <75d6872c-4c31-44a5-8597-781741dca720@yandex.ru> <2fc35487-63c7-4d11-89ca-b87f4aad6e58@yandex.ru> <86r09mfhy9.fsf@gnu.org> In-Reply-To: From: David Fussner Date: Sat, 14 Sep 2024 16:28:03 +0100 Message-ID: Content-Type: multipart/alternative; boundary="0000000000001d557c062215fd8c" X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --0000000000001d557c062215fd8c Content-Type: text/plain; charset="UTF-8" Many thanks to you all for your help and advice. I'm not subscribed to this list, though I am a frequent lurker, so if I can be of any help fixing issues with the patches please ping me if I'm being oblivious. Best, David. On Sat, 14 Sept 2024, 16:08 Stefan Kangas, wrote: > Version: 31.1 > > Eli Zaretskii writes: > > >> From: Stefan Kangas > >> Date: Sat, 14 Sep 2024 06:43:01 -0700 > >> Cc: ikumi@ikumi.que.jp, dfussner@googlemail.com, tsdh@gnu.org, > eliz@gnu.org, > >> monnier@iro.umontreal.ca > >> > >> Dmitry Gutov writes: > >> > >> > It's good enough from my side, but I hope someone else could comment > as > >> > well. > >> > >> Are we happy to install this now, or are we still waiting for more > >> comments? > > > > We've waited long enough, I think. > > Thanks, so I've now installed the patch on master. Note that I broke > out the etags/ctags changes into a separate patch (in David's name) to > make the original patch a bit less unwieldy. > > 3090b2304e7 Update the etags/ctags test files > b44c00669ac Provide a modified xref backend for TeX buffers > > And with that, I'm closing this bug report. Congratulations to David > for landing his first contribution to Emacs, and thanks again. > --0000000000001d557c062215fd8c Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Many thanks to you all for your help and advice. I'm = not subscribed to this list, though I am a frequent lurker, so if I can be= =C2=A0of any help fixing issues with the patches please ping me if I'm = being oblivious.=C2=A0

Best, D= avid.=C2=A0

On Sat, 14 Sept 2024, 16:08 Stefan Kangas, <stefankangas@gmail.com> wrote:
Version: 31.1

Eli Zaretskii <eliz@gnu.org> writes:

>> From: Stefan Kangas <stefankangas@gmail.com>
>> Date: Sat, 14 Sep 2024 06:43:01 -0700
>> Cc: ikumi@ikumi.que.jp, dfussner@googlemail.com, tsdh@gnu.o= rg, eliz@gnu.org,
>>=C2=A0 =C2=A0 =C2=A0 monnier@iro.umontreal.ca
>>
>> Dmitry Gutov <dgutov@yandex.ru> writes:
>>
>> > It's good enough from my side, but I hope someone else co= uld comment as
>> > well.
>>
>> Are we happy to install this now, or are we still waiting for more=
>> comments?
>
> We've waited long enough, I think.

Thanks, so I've now installed the patch on master.=C2=A0 Note that I br= oke
out the etags/ctags changes into a separate patch (in David's name) to<= br> make the original patch a bit less unwieldy.

=C2=A0 =C2=A0 3090b2304e7 Update the etags/ctags test files
=C2=A0 =C2=A0 b44c00669ac Provide a modified xref backend for TeX buffers
And with that, I'm closing this bug report.=C2=A0 Congratulations to Da= vid
for landing his first contribution to Emacs, and thanks again.
--0000000000001d557c062215fd8c-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers References: In-Reply-To: Resent-From: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 14 Sep 2024 17:28:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: David Fussner Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Arash Esbati , Stefan Kangas , Tassilo Horn , Eli Zaretskii , Stefan Monnier Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.172633484915208 (code B ref 53749); Sat, 14 Sep 2024 17:28:02 +0000 Received: (at 53749) by debbugs.gnu.org; 14 Sep 2024 17:27:29 +0000 Received: from localhost ([127.0.0.1]:47754 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1spWYS-0003xC-HE for submit@debbugs.gnu.org; Sat, 14 Sep 2024 13:27:28 -0400 Received: from mail-lj1-f174.google.com ([209.85.208.174]:47224) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1spWYQ-0003wo-Bc for 53749@debbugs.gnu.org; Sat, 14 Sep 2024 13:27:27 -0400 Received: by mail-lj1-f174.google.com with SMTP id 38308e7fff4ca-2f74b6e1810so28748011fa.2 for <53749@debbugs.gnu.org>; Sat, 14 Sep 2024 10:27:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1726334769; x=1726939569; darn=debbugs.gnu.org; h=to:cc:date:message-id:subject:mime-version :content-transfer-encoding:from:sender:from:to:cc:subject:date :message-id:reply-to; bh=SjA1tslLvYpEhKhH13mkRNZGDjRXr4ycPejz1K5RpRE=; b=XcZk7l8dxS2fGgLHQzHWivfiU3gPxjBnof+0Rv9JIFvVkktqrwkgEVgQs8rxO0kYyN hXtmBjvB+Jnb6R3dNXfrKaVdCSMmeoYTOXmS+/AmKTSl4s7L5fSwWqJaDbWVrIKMKB5O lMvNFaGlAubVEA58HIfVean4pesBuqm1LZde7ar6tCt7LQeooV6PP1zFdWADq9atGxEr pLHkpD0Xxa/1+1GmNDpiwrrNqxO2XdDXNcuO2MzK70EgNnyItZDwjIbGrIjBFPkS29WO DG7E7ph+jOkmNS4Cwea2iPBdbBUhDIcrYy0rklLV9FGOeLTY6b0J0tZeRXN+X09nuGUA 5dkg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1726334769; x=1726939569; h=to:cc:date:message-id:subject:mime-version :content-transfer-encoding:from:sender:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=SjA1tslLvYpEhKhH13mkRNZGDjRXr4ycPejz1K5RpRE=; b=at31ilu/ZUKfR2Mn+I7PeF69tTJtRHzaMmB0Clw4P6gmoov7W4QiaZgCJGsHTCNO0n hrmN4Z9XTjRQvwABkIghjjD1wHESLjIk70+VI22Dn4+/tf9n6dh+lnrhQu+Mn5gYpgd4 fAnCiouI7rwJSO7ypvIeDkmNtVbh67Dq4QghCgU6HZ8XylCmm1ctuCe/RvgCoC+jCMux n21BBvPpPhasffYZwM9soZ1LV7bkK5nHQtqJeZDyEu0FRFYlIrGo/wuEt9jHazqYMODC CzThwJQe21y0uprxEau1UcfrbkEhfYMy94Gu+J3NkyAPcarA0MGuztKZF0ro9/mveo2S QpCQ== X-Forwarded-Encrypted: i=1; AJvYcCV6STfswRk3Pqno8vz7LPxMXt7GpsDGAc9RyVP/vX3SRu7g2kUGhhyFIEIBN5X5oNUE97lgSw==@debbugs.gnu.org X-Gm-Message-State: AOJu0YyPlsAf6I+EssvLgIeKlzAloH88YDYN9fHgI4c3kFMALehclIMn H7VmyNEbmpbsN4QpV5eLzi9P2OgQ3Sl3s+HumpqDA5T7hU4pT9QB X-Google-Smtp-Source: AGHT+IHr2LfpV2mQ5jVqUNPDsuugLRiRKDwQx1o6wDBohXTOMe1fXRZ5hVwk19e/Q0CAgvMrhC07YQ== X-Received: by 2002:a2e:4619:0:b0:2ef:2061:8bf5 with SMTP id 38308e7fff4ca-2f787f33a00mr46864771fa.40.1726334768965; Sat, 14 Sep 2024 10:26:08 -0700 (PDT) Received: from smtpclient.apple (c188-150-191-82.bredband.tele2.se. [188.150.191.82]) by smtp.gmail.com with ESMTPSA id 38308e7fff4ca-2f79d30137asm2975301fa.41.2024.09.14.10.26.07 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sat, 14 Sep 2024 10:26:08 -0700 (PDT) From: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.15\)) Message-Id: Date: Sat, 14 Sep 2024 19:26:07 +0200 X-Mailer: Apple Mail (2.3654.120.0.1.15) X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Thanks for the contribution, David! My electronic servant complained = about some regexps: 3881 (re-search-backward (concat "[][" 3882 (mapconcat #'regexp-quote 3883 (mapcar #'char-to-string 3884 = tex-thingatpt-exclude-chars)) 3885 = "\"*`'#=3D&()%,|$[:cntrl:][:blank:]]")) This is not a correct way to build a regexp; `regexp-quote` can only be = used to quote strings that should match literally, not characters inside = [...], where backslashes have no escaping power. There are various ways of doing this properly. I would suggest something = like (rx-to-string `(or (in "\"#$%&'()*,=3D[]`|" cntrl blank) ,@tex-thingatpt-exclude-chars) t)) but it also depends on what you want that `tex-thingatpt-exclude-chars` = variable to be. Should it be a user option (defcustom)? The variable's = doc string is a wall of text that basically says that it can be set to = whatever you want but things will stop working so you'd better not. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 16 Sep 2024 08:36:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Arash Esbati , Stefan Kangas , Tassilo Horn , Eli Zaretskii , Stefan Monnier Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17264757081685 (code B ref 53749); Mon, 16 Sep 2024 08:36:02 +0000 Received: (at 53749) by debbugs.gnu.org; 16 Sep 2024 08:35:08 +0000 Received: from localhost ([127.0.0.1]:51081 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sq7CN-0000R6-NY for submit@debbugs.gnu.org; Mon, 16 Sep 2024 04:35:08 -0400 Received: from mail-pl1-f169.google.com ([209.85.214.169]:57423) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sq7CK-0000QS-Ou for 53749@debbugs.gnu.org; Mon, 16 Sep 2024 04:35:06 -0400 Received: by mail-pl1-f169.google.com with SMTP id d9443c01a7336-207115e3056so37092625ad.2 for <53749@debbugs.gnu.org>; Mon, 16 Sep 2024 01:34:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1726475626; x=1727080426; darn=debbugs.gnu.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=EXXGauyjy1Pd4p469iifzL7HcXA69qcmBZuYa3Cc3c4=; b=B+llD78F9CoXwE2iOmm99M5ML3/2ahLmTOQ0Eu5YjEJV7sz6TkrR1F4MEXMLQ2Ehkn tmWh7uss8NhnupFLtMxHK1l1sDavEraseV51Pxfz4TFu2PiloSyeNmfJaJ8W5A4OEuEO M9EtIDuQue6I+T5oxcyCJ5nofdFkmI/jFPElqpuZ56E+3fL5BKjTjXOxZ1PLPrkAaiSQ TYRHhnKtbn9wHRX2onH1CctdbTGjxd2QMBCwq1mzwdwKxZxBX+Y8C0UMFscPuSXZa3ap 9h3/hdZLC4/UKjygKrwJwLf3TjhKwrymsMX9A9AYuB0UdeoOx58ga7/UVkOI3eBPnxUf 1Scg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1726475626; x=1727080426; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=EXXGauyjy1Pd4p469iifzL7HcXA69qcmBZuYa3Cc3c4=; b=uAIsaQ+YxJRNetb+jJjzBdWNIzes9rgiuPS9QcNnLfCVVUhkOpHdR1D/XQ3IpckVen PPAzjjArdHLj5gn4U+mMWIVFHTG75hr58d4duKgtMwsSR/GOyppeG6n782SmRpBYS4kd fFpjl0yqSDumU08mIsBLwVDhwrhvBREqesdrMzz2fyMLi5+RVLZBRA0zOqzZRiDw82TP Wagr+RfWRR2/ALYC7HVBQoqBqnaYoFLYQ0pJ46L/m8ckY8qPm4wR1IXABHohQILLi6MO n+leRWPZPF9m27Q0YGorS2AtWOX7OCfrS/eQHWKKAkCpx+LCjcGYwTdxW0vaxxN2/wWx Wn3g== X-Forwarded-Encrypted: i=1; AJvYcCVbOjkRwxqYG8RmPlSFhyV0iectllDoXw6Ek/282LFIqzmHObT8TU1bI9+WrtpiguJlaXCwTA==@debbugs.gnu.org X-Gm-Message-State: AOJu0YyLnq4TGbdAdu4mBah4LizOiweHiVQVf3kbyeAqyfYSL38KHcOU nkfQZWqaqWfNyfThjiVzm0/xO3cQO0n+Fuc24yhnfKJ7hCf7lfszFzS2GZSEwRXVGy8FPbHXJAA kcGb1NA1+jSjT5H2KawMVoHkwljg= X-Google-Smtp-Source: AGHT+IHeGr9cz0Dyhet4TF30ITVYyqpSUcoV0bk4ZAWqS/KZzNdPZ7OyUtYGryjTMULvCixWP+aMWvTbkIfz9TTLmT8= X-Received: by 2002:a17:902:f70d:b0:207:1842:8c5c with SMTP id d9443c01a7336-2076e4614c3mr241618225ad.46.1726475625448; Mon, 16 Sep 2024 01:33:45 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: David Fussner Date: Mon, 16 Sep 2024 09:33:48 +0100 Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Mattias, Thanks for this, and of course you are quite right on both counts: > but it also depends on what you want that `tex-thingatpt-exclude-chars` v= ariable to be I believe it's time I abandoned this piece of idiocy, already flagged by several commentators before you. The basic motivation was to allow using the new xref code in TeX files that used non-standard escape and grouping characters. Both etags and AUCTeX address this possibility, but the latter does it right by having three separate variables: TeX-esc, TeX-grop, and TeX-grcl, so that these can be part of the whole regular expression apparatus for syntax highlighting and everything else. I had in the back of my mind to implement something similar in tex-mode, but the half-measure of `tex-thingatpt-exclude-chars` is the wrong way to go. I propose, therefore, to eliminate this variable from tex-mode and just hard code the standard escape and grouping characters for the time being, as in the rest of tex-mode.el, then to submit later a patch to implement something similar to what AUCTeX does, and one interoperable with AUCTeX, also. > This is not a correct way to build a regexp; Given the above changes, would you and your electronic servant be OK with code like the following? (re-search-forward "[][\\{}\"*`'#=3D&()%,|$[:cntrl:][:blank:]]") (I still, I'm ashamed to confess, find the traditional regexp syntax easier to read than rx notation, but could overcome this if you think rx is a better fit here.) What do you think? Best, David. On Sat, 14 Sept 2024 at 18:26, Mattias Engdeg=C3=A5rd wrote: > > Thanks for the contribution, David! My electronic servant complained abou= t some regexps: > > 3881 (re-search-backward (concat "[][" > 3882 (mapconcat #'regexp-quote > 3883 (mapcar #'char-to-string > 3884 tex-thingatpt-excl= ude-chars)) > 3885 "\"*`'#=3D&()%,|$[:cntrl:][:blank:]]"= )) > > This is not a correct way to build a regexp; `regexp-quote` can only be u= sed to quote strings that should match literally, not characters inside [..= .], where backslashes have no escaping power. > > There are various ways of doing this properly. I would suggest something = like > > (rx-to-string `(or (in "\"#$%&'()*,=3D[]`|" cntrl blank) > ,@tex-thingatpt-exclude-chars) > t)) > > but it also depends on what you want that `tex-thingatpt-exclude-chars` v= ariable to be. Should it be a user option (defcustom)? The variable's doc s= tring is a wall of text that basically says that it can be set to whatever = you want but things will stop working so you'd better not. > From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 16 Sep 2024 13:32:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Arash Esbati , Stefan Kangas , Tassilo Horn , Eli Zaretskii , Stefan Monnier Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.172649349932326 (code B ref 53749); Mon, 16 Sep 2024 13:32:01 +0000 Received: (at 53749) by debbugs.gnu.org; 16 Sep 2024 13:31:39 +0000 Received: from localhost ([127.0.0.1]:51310 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sqBpK-0008PI-He for submit@debbugs.gnu.org; Mon, 16 Sep 2024 09:31:39 -0400 Received: from mail-pf1-f171.google.com ([209.85.210.171]:47175) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sqBpI-0008P5-Nu for 53749@debbugs.gnu.org; Mon, 16 Sep 2024 09:31:37 -0400 Received: by mail-pf1-f171.google.com with SMTP id d2e1a72fcca58-7178df70f28so3346315b3a.2 for <53749@debbugs.gnu.org>; Mon, 16 Sep 2024 06:31:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1726493417; x=1727098217; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=nIAlG0TVQHvLFqlwOSEpwSj8xnXR/xmTTGNgfTHbTt8=; b=NJc5qoXfqOfW7StA1P25tATWr+6lqHjKUmxzAzk5Use8n4svZxgktzWT7LfItgrnHZ Gv9LFIals07J2N8UklqP3fWt6c+3Ez2FyME+ti9YH2RTVdXI91UJ8p643eXsX+mS4hBe 0K/SdU8ZKizhoJ5D/JUx1a2JJh7rqFcovqPthsAAJTmGV8aBHMH+hP4+lp6UjfzKB52W zTWkMPixyOFfRdW5LajNdt02FKAduJ41TWf2WYmJ24iKdaODtb78fq8M3dTEw6XYgy2w vi9xnnWAmBfHjG8qJNRAWm5ZJbY3Ll3YgLruco+O6/xLb7wvWjIW3ikAuQLGPkhzObk/ ghAg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1726493417; x=1727098217; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=nIAlG0TVQHvLFqlwOSEpwSj8xnXR/xmTTGNgfTHbTt8=; b=iQX96KuxW4jyrV3AvpFJMJ7W5oFYEoosKkPkrfLq/u1rNmt5tQiSUWxJ/d1+69qCG+ GyEvYPk/DbuJ4ngDWTif/W3MZ8Dtl4mQ+C2EZwnSn8gSQHNJoNsKeqkZkw03tWJcs1Q3 Ruh4J7w0wU7CObW4iP/sXFtW1fvnYTkyi9MqHLiZRLT+X/rYCQKY+H8fEEyWbrD9uSOP oDOExBy8R5v6lEbZOA5/4s0c+0+XCnWSD7O3+e/s8y7IAaGqPY8GXpk5DHAvf4VN8GzW h0LjjeUHdADT31cMO7fihHdSdJ6ivQXOojlm161plKEHA6RLOJmIh6QVo9WncDEFdeqU irbw== X-Forwarded-Encrypted: i=1; AJvYcCUgJ5NJzFpO2oXrUuXSW2ckLCTVs++akulkt/wvszTXWrBm5/kW1fCITKq8qLV6HKVfLDIf5Q==@debbugs.gnu.org X-Gm-Message-State: AOJu0YyKsB3thsUttIOGkGKD76et4WszXAe70xl1vxMUHryKXBx1+ylh aMjo0HHIUllfl2kV/g9icPTQvMK+Ue6D5IIZwH3EO5qhy2dnIQzK8tpv0f88S+THfUMxXuUqDdj z8pwCXsjKytjTE44fJRnmYcW+RVk= X-Google-Smtp-Source: AGHT+IGyBunR4Ec6jqNiQZU716W5zi0+8VKYpzYCy4+Fgl3T+Ojs0Rz8UXl++LQy0IQcmrqM4W60MVHhiZWS4DuvKoE= X-Received: by 2002:a05:6a00:acf:b0:714:241d:a323 with SMTP id d2e1a72fcca58-719261e0ebdmr23742087b3a.17.1726493417271; Mon, 16 Sep 2024 06:30:17 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: David Fussner Date: Mon, 16 Sep 2024 14:30:20 +0100 Message-ID: Content-Type: multipart/mixed; boundary="000000000000d81e9e06223c9204" X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000d81e9e06223c9204 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Mattias, Arash, Here's a patch to fix the regexps and delete the unnecessary variable. Any thoughts? I'll look at adding new vars for the TeX escape and grouping chars, creating a new bug number when I have a working patch. Thanks, David. On Mon, 16 Sept 2024 at 09:33, David Fussner wrot= e: > > Hi Mattias, > > Thanks for this, and of course you are quite right on both counts: > > > but it also depends on what you want that `tex-thingatpt-exclude-chars`= variable to be > > I believe it's time I abandoned this piece of idiocy, already flagged > by several commentators before you. The basic motivation was to allow > using the new xref code in TeX files that used non-standard escape and > grouping characters. Both etags and AUCTeX address this possibility, > but the latter does it right by having three separate variables: > TeX-esc, TeX-grop, and TeX-grcl, so that these can be part of the > whole regular expression apparatus for syntax highlighting and > everything else. I had in the back of my mind to implement something > similar in tex-mode, but the half-measure of > `tex-thingatpt-exclude-chars` is the wrong way to go. > > I propose, therefore, to eliminate this variable from tex-mode and > just hard code the standard escape and grouping characters for the > time being, as in the rest of tex-mode.el, then to submit later a > patch to implement something similar to what AUCTeX does, and one > interoperable with AUCTeX, also. > > > This is not a correct way to build a regexp; > > Given the above changes, would you and your electronic servant be OK > with code like the following? > > (re-search-forward "[][\\{}\"*`'#=3D&()%,|$[:cntrl:][:blank:]]") > > (I still, I'm ashamed to confess, find the traditional regexp syntax > easier to read than rx notation, but could overcome this if you think > rx is a better fit here.) > > What do you think? > > Best, David. > > On Sat, 14 Sept 2024 at 18:26, Mattias Engdeg=C3=A5rd > wrote: > > > > Thanks for the contribution, David! My electronic servant complained ab= out some regexps: > > > > 3881 (re-search-backward (concat "[][" > > 3882 (mapconcat #'regexp-quote > > 3883 (mapcar #'char-to-string > > 3884 tex-thingatpt-ex= clude-chars)) > > 3885 "\"*`'#=3D&()%,|$[:cntrl:][:blank:]= ]")) > > > > This is not a correct way to build a regexp; `regexp-quote` can only be= used to quote strings that should match literally, not characters inside [= ...], where backslashes have no escaping power. > > > > There are various ways of doing this properly. I would suggest somethin= g like > > > > (rx-to-string `(or (in "\"#$%&'()*,=3D[]`|" cntrl blank) > > ,@tex-thingatpt-exclude-chars) > > t)) > > > > but it also depends on what you want that `tex-thingatpt-exclude-chars`= variable to be. Should it be a user option (defcustom)? The variable's doc= string is a wall of text that basically says that it can be set to whateve= r you want but things will stop working so you'd better not. > > --000000000000d81e9e06223c9204 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Fix-regexps-for-TeX-xref-backend-Bug-53749.patch" Content-Disposition: attachment; filename="0001-Fix-regexps-for-TeX-xref-backend-Bug-53749.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_m151l7cs0 RnJvbSAxYzYwNzU0MzU1NmE3Yjc5NjE1ZGJjNWU4Mzg0ZTEwZDkyZDA4MWQ1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBGdXNzbmVyIDxkZnVzc25lckBnb29nbGVtYWlsLmNv bT4KRGF0ZTogTW9uLCAxNiBTZXAgMjAyNCAxNDowNTowMSArMDEwMApTdWJqZWN0OiBbUEFUQ0hd IEZpeCByZWdleHBzIGZvciBUZVggeHJlZiBiYWNrZW5kIChCdWcjNTM3NDkpCgoqIGxpc3AvdGV4 dG1vZGVzL3RleC1tb2RlLmVsICh0ZXgtdGhpbmdhdHB0LWV4Y2x1ZGUtY2hhcnMpOiBSZW1vdmUK dmFyLgoodGV4LXRoaW5nYXRwdC0tYmVnaW5uaW5nLW9mLXN5bWJvbCwgdGV4LXRoaW5nYXRwdC0t ZW5kLW9mLXN5bWJvbCk6ClVzZSBoYXJkLWNvZGVkIGNoYXJzIGluc3RlYWQgb2YgdmFyLgotLS0K IGxpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsIHwgNDMgKystLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDQxIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsIGIvbGlzcC90 ZXh0bW9kZXMvdGV4LW1vZGUuZWwKaW5kZXggZWMwYzBjNDdhMmQuLjZmYzQ5ODAwMDE4IDEwMDY0 NAotLS0gYS9saXNwL3RleHRtb2Rlcy90ZXgtbW9kZS5lbAorKysgYi9saXNwL3RleHRtb2Rlcy90 ZXgtbW9kZS5lbApAQCAtMzgxNCwzNyArMzgxNCw2IEBAIHRleC1jaGt0ZXgKIDs7IEVtYWNzIGFu ZCBgZXRhZ3MnIHRoaXMgd2F5IGFpbXMgdG8gaW1wcm92ZSB0aGUgdXNlciBleHBlcmllbmNlICJv dXQKIDs7IG9mIHRoZSBib3guIgogCi0oZGVmdmFyIHRleC10aGluZ2F0cHQtZXhjbHVkZS1jaGFy cyAnKD9cXCA/XHsgP1x9KQotICAiRXhjbHVkZSB0aGVzZSBjaGFycyBieSBkZWZhdWx0IGZyb20g VGVYIHRoaW5nLWF0LXBvaW50LgotCi1UaGUgVGVYIGB4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1h dC1wb2ludCcgbWV0aG9kIHVzZXMgdGhlIGNoYXJhY3RlcnMKLWxpc3RlZCBpbiB0aGlzIHZhcmlh YmxlIHRvIGRlY2lkZSBvbiB0aGUgZGVmYXVsdCBzZWFyY2ggc3RyaW5nIHRvCi1wcmVzZW50IHRv IHRoZSB1c2VyIHdobyBjYWxscyBhbiBgeHJlZicgY29tbWFuZC4gIFRoZXNlIGNoYXJhY3RlcnMK LWJlY29tZSBwYXJ0IG9mIGEgcmVnZXhwIHdoaWNoIGFsd2F5cyBleGNsdWRlcyB0aGVtIGZyb20g dGhhdCBkZWZhdWx0Ci1zdHJpbmcuICBGb3IgdGhlIGB4cmVmJyBjb21tYW5kcyB0byBmdW5jdGlv biBwcm9wZXJseSBpbiBUZVggYnVmZmVycywgYXQKLWxlYXN0IHRoZSBUZVggZXNjYXBlIGFuZCB0 aGUgdHdvIFRlWCBncm91cGluZyBjaGFyYWN0ZXJzIHNob3VsZCBiZQotbGlzdGVkIGhlcmUuICBT aG91bGQgeW91ciBUZVggZG9jdW1lbnRzIGNvbnRhaW4gb3RoZXIgY2hhcmFjdGVycyB3aGljaAot eW91IHdhbnQgdG8gZXhjbHVkZSBieSBkZWZhdWx0LCB0aGVuIHlvdSBjYW4gYWRkIHRoZW0gdG8g dGhlIGxpc3QsCi10aG91Z2ggeW91IG1heSB3aXNoIHRvIGNvbnN1bHQgdGhlIGZ1bmN0aW9ucwot YHRleC10aGluZ2F0cHQtLWJlZ2lubmluZy1vZi1zeW1ib2wnIGFuZCBgdGV4LXRoaW5nYXRwdC0t ZW5kLW9mLXN5bWJvbCcKLXRvIHNlZSB3aGF0IHRoZSByZWdleHAgYWxyZWFkeSBjb250YWlucy4g IElmIHlvdXIgZG9jdW1lbnRzIGNvbnRhaW4KLW5vbi1zdGFuZGFyZCBlc2NhcGUgYW5kIGdyb3Vw aW5nIGNoYXJhY3RlcnMsIHRoZW4geW91IGNhbiByZXBsYWNlIHRoZQotdGhyZWUgbGlzdGVkIGhl cmUgd2l0aCB5b3VyIG93biwgdGhlcmVieSBhbGxvd2luZyB0aGUgdGhyZWUgc3RhbmRhcmQKLWNo YXJhY3RlcnMgdG8gYXBwZWFyIGJ5IGRlZmF1bHQgaW4gc2VhcmNoIHN0cmluZ3MuICBQbGVhc2Ug YmUgYXdhcmUsCi1ob3dldmVyLCB0aGF0IHRoZSBgZXRhZ3MnIHByb2dyYW0gb25seSByZWNvZ25p emVzIGBcXCcgKDkyKSBhbmQgYCEnICgzMykKLWFzIGVzY2FwZSBjaGFyYWN0ZXJzIGluIFRlWCBk b2N1bWVudHMsIGFuZCBpZiBpdCBkZXRlY3RzIHRoZSBsYXR0ZXIgaXQKLWFsc28gdXNlcyBgPD4n IGFzIHRoZSBUZVggZ3JvdXBpbmcgY29uc3RydWN0IHJhdGhlciB0aGFuIGB7fScuICBTZXR0aW5n Ci10aGUgZXNjYXBlIGFuZCBncm91cGluZyBjaGFycyB0byBhbnl0aGluZyBvdGhlciB0aGFuIGBc XD1cXHt9JyBvciBgITw+Jwotd2lsbCBub3QgYmUgdXNlZnVsIHdpdGhvdXQgY2hhbmdlcyB0byBg ZXRhZ3MnLCBhdCBsZWFzdCBmb3IgY29tbWFuZHMKLXRoYXQgc2VhcmNoIHRhZ3MgdGFibGVzLCBz dWNoIGFzIFxcW3hyZWYtZmluZC1kZWZpbml0aW9uc10gYW5kIFwKLVxcW3hyZWYtZmluZC1hcHJv cG9zXS4KLQotU2hvdWxkIHlvdSB3aXNoIHRvIGNoYW5nZSB0aGUgZGVmYXVsdHMsIHBsZWFzZSBh bHNvIGJlIGF3YXJlIHRoYXQsCi13aXRob3V0IGZ1cnRoZXIgbW9kaWZpY2F0aW9ucyB0byB0ZXgt bW9kZS5lbCwgdGhlIHVzdWFsIHRleHQtcGFyc2luZwotcm91dGluZXMgZm9yIGBmb250LWxvY2sn IGFuZCB0aGUgbGlrZSB3b24ndCB3b3JrIGNvcnJlY3RseSwgYXMgdGhlCi1kZWZhdWx0IGVzY2Fw ZSBhbmQgZ3JvdXBpbmcgY2hhcmFjdGVycyBhcmUgY3VycmVudGx5IGhhcmQgY29kZWQgaW4gbWFu eQotcGxhY2VzLiIpCi0KIDs7IFBvcHVsYXRlIGBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4t YWxpc3QnIGZvciB0aGUgaW4tdHJlZSBtb2RlczsKIDs7IEFVQ1RlWCBpcyBkb2luZyB0aGUgc2Ft ZSBmb3IgaXRzIG1vZGVzLgogKHdpdGgtZXZhbC1hZnRlci1sb2FkICdzZW1hbnRpYy9zeW1yZWYv Z3JlcApAQCAtMzg3OCwyMCArMzg0NywxMiBAQCB0ZXgtLXRoaW5nLWF0LXBvaW50CiAKIChkZWZ1 biB0ZXgtdGhpbmdhdHB0LS1iZWdpbm5pbmctb2Ytc3ltYm9sICgpCiAgIChhbmQKLSAgIChyZS1z ZWFyY2gtYmFja3dhcmQgKGNvbmNhdCAiW11bIgotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIChtYXBjb25jYXQgIydyZWdleHAtcXVvdGUKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIChtYXBjYXIgIydjaGFyLXRvLXN0cmluZwotICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXgtdGhpbmdhdHB0LWV4Y2x1ZGUt Y2hhcnMpKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJcIipgJyM9JigpJSx8JFs6 Y250cmw6XVs6Ymxhbms6XV0iKSkKKyAgIChyZS1zZWFyY2gtYmFja3dhcmQgIltdW1xce31cIipg JyM9JigpJSx8JFs6Y250cmw6XVs6Ymxhbms6XV0iIG5pbCB0KQogICAgKGZvcndhcmQtY2hhcikp KQogCiAoZGVmdW4gdGV4LXRoaW5nYXRwdC0tZW5kLW9mLXN5bWJvbCAoKQogICAoYW5kCi0gICAo cmUtc2VhcmNoLWZvcndhcmQgKGNvbmNhdCAiW11bIgotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKG1hcGNvbmNhdCAjJ3JlZ2V4cC1xdW90ZQotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgKG1hcGNhciAjJ2NoYXItdG8tc3RyaW5nCi0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleC10aGluZ2F0cHQtZXhjbHVk ZS1jaGFycykpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiXCIqYCcjPSYoKSUsfCRb OmNudHJsOl1bOmJsYW5rOl1dIikpCisgICAocmUtc2VhcmNoLWZvcndhcmQgIltdW1xce31cIipg JyM9JigpJSx8JFs6Y250cmw6XVs6Ymxhbms6XV0iIG5pbCB0KQogICAgKGJhY2t3YXJkLWNoYXIp KSkKIAogKGRlZnVuIHRleC0tYm91bmRzLW9mLXN5bWJvbC1hdC1wb2ludCAoKQotLSAKMi4zOS40 Cgo= --000000000000d81e9e06223c9204-- From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 17 Sep 2024 12:37:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: David Fussner Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Arash Esbati , Stefan Kangas , Tassilo Horn , Eli Zaretskii , Stefan Monnier Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17265765856551 (code B ref 53749); Tue, 17 Sep 2024 12:37:01 +0000 Received: (at 53749) by debbugs.gnu.org; 17 Sep 2024 12:36:25 +0000 Received: from localhost ([127.0.0.1]:54184 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sqXRQ-0001hb-Kx for submit@debbugs.gnu.org; Tue, 17 Sep 2024 08:36:24 -0400 Received: from mail-lf1-f41.google.com ([209.85.167.41]:44254) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sqXRP-0001hM-1N for 53749@debbugs.gnu.org; Tue, 17 Sep 2024 08:36:23 -0400 Received: by mail-lf1-f41.google.com with SMTP id 2adb3069b0e04-536584f6c84so6909394e87.0 for <53749@debbugs.gnu.org>; Tue, 17 Sep 2024 05:36:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1726576502; x=1727181302; darn=debbugs.gnu.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:sender:from:to:cc:subject :date:message-id:reply-to; bh=RchkEZJs5cc1hUgLe/JNsVtENh9IyzZYmYAKeCZ/XYY=; b=gBh04+yxFCu+DuHetMiw49T0WHtk6LDxTD7DmJ9Q7EpsEaeLkTFaD0NcFwDnkRZv7u T95GFPE2ZEq7mHQCOM0vt+psR8GkA5EpviK2mafbw57Gc1582PLPrCHCEK3TL1GLyh/J mcW1r1ycGUxjfYcX1k8j7nCgVf5kJdJ3pl2nDXA+naxu2nNpvCJ6DlVY5RmWO/NbeA9G ZHnvg1GqlbYeXgIzxkn8Oz/c/hKQtdybmV/Pad7VBrVCtHP3PQTAc8j72Xu58DEK5hTC 9MY4rDb89BZmviQAYPsvirF83u83BkVtgHy0GpJkRURizVK6fl4ikF5PUCL7f06SfBiK kaug== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1726576502; x=1727181302; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:sender:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=RchkEZJs5cc1hUgLe/JNsVtENh9IyzZYmYAKeCZ/XYY=; b=AmxDQ7lBp8mWdjB2tVif7y4MCqsD0h01dPB76Os9kR5Qw9ahf4bw4trHpJjMAOHqv+ ltrcr+5Qv0PNlIkHPGnrb7KqqSS+wbWWTNMgjOjkWV7E0mjJj16RpmTXDY8VV5Jew+co Tobg+Vi2x5AKM+EDdAFAD4Pi2sLiGRKB0uLMjcYTdFjVjO6TW/ikxnzGgidNIVE0ijZ7 vBekYUA8AuYKMsm2xoIej8WmfWGJ0lz7No9IGLDvgtQN4iKmEpkhzZicscqd6kEJq/Qo aWl2oFG2LeBUPrL0aOQCzDYSoZBS8DTUTbA26lg7eUtyfzEAzGYudDaU9PIVRto4kh1j WJxw== X-Forwarded-Encrypted: i=1; AJvYcCXL1Si2liR0ifDxIquCItzkubqWlttAAt5sVGe7XbqGLXd5H4v7cseR0N/nUBEyvKxj7Y/uuQ==@debbugs.gnu.org X-Gm-Message-State: AOJu0Yycxdq2iPeYB69kztvCMV3iICW1EnoBWSkF5j0v6OMjM5ERfbkF mRD298kATmRS4xCz8kMrPt1LcoIotA9FPS80Q6E10T7HN0a/dgDt X-Google-Smtp-Source: AGHT+IG+6w959H80NiESDVl5Ev1LVMsHlmOowEOyzO6pNoc46UE8MggXHUzw2EazrGTd+N3BUDw1Yg== X-Received: by 2002:a05:6512:3ca7:b0:52f:eb:aaca with SMTP id 2adb3069b0e04-53678fcebd4mr9377343e87.32.1726576501748; Tue, 17 Sep 2024 05:35:01 -0700 (PDT) Received: from smtpclient.apple (c188-150-191-82.bredband.tele2.se. [188.150.191.82]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-536870b4260sm1201848e87.265.2024.09.17.05.35.00 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 17 Sep 2024 05:35:01 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.15\)) From: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= In-Reply-To: Date: Tue, 17 Sep 2024 14:35:00 +0200 Content-Transfer-Encoding: quoted-printable Message-Id: References: X-Mailer: Apple Mail (2.3654.120.0.1.15) X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) 16 sep. 2024 kl. 10.33 skrev David Fussner : > (re-search-forward "[][\\{}\"*`'#=3D&()%,|$[:cntrl:][:blank:]]") Fine as far as I'm concerned. > (I still, I'm ashamed to confess, find the traditional regexp syntax > easier to read than rx notation, but could overcome this if you think > rx is a better fit here.) There is not a big difference in this case so stick to what you prefer. Otherwise, I encourage you to try using rx from time to time =E2=80=93 = it's habit-forming! From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: Stefan Kangas Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 21 Sep 2024 02:10:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: David Fussner , Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= Cc: 53749@debbugs.gnu.org, Ikumi Keita , Dmitry Gutov , Arash Esbati , Stefan Monnier , Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.172688455614889 (code B ref 53749); Sat, 21 Sep 2024 02:10:01 +0000 Received: (at 53749) by debbugs.gnu.org; 21 Sep 2024 02:09:16 +0000 Received: from localhost ([127.0.0.1]:36826 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1srpYh-0003s3-PF for submit@debbugs.gnu.org; Fri, 20 Sep 2024 22:09:16 -0400 Received: from mail-ed1-f43.google.com ([209.85.208.43]:58615) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1srpYf-0003ro-3n for 53749@debbugs.gnu.org; Fri, 20 Sep 2024 22:09:13 -0400 Received: by mail-ed1-f43.google.com with SMTP id 4fb4d7f45d1cf-5c275491c61so3408052a12.0 for <53749@debbugs.gnu.org>; Fri, 20 Sep 2024 19:08:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1726884468; x=1727489268; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:from:to:cc:subject:date:message-id:reply-to; bh=28j0JJc0V6cVnpqsYYd+1EhDQqlTmTeBOvOs9NC4pAg=; b=YXitZlB1kdwES0tHzSrfrKkf7yAd0TKDRo5nQElbn/TUksTirQBiJBOX10B6dY51u2 Rp+x0zpOQBboky9CtdcesVt3oWqj1ZQNqO0DCpW3PGBikbRld9FEgy7PaUS8fM4jcHtN ABs853jkes8xz5R05FhcNoEHWfqneqkgLsCNm+rKwHNmxejyj3D7n0V0BAMW6tWVsef6 n+H2EdM/vAG+nlavOO2TcYhQNxjkbmvpC2jACj74y3Digp2JO1GR0A/oP5XswRMk7mR1 W2/DeopD9ZaQAuX1OKWb5MBDg/8urJVlHQj1DGZStDSccHh9VS/MrCpUHWQLEnBs3es4 awZg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1726884468; x=1727489268; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=28j0JJc0V6cVnpqsYYd+1EhDQqlTmTeBOvOs9NC4pAg=; b=STG3w5zdSm5qIx/VBlQBQ/XosQGD5oJ8eciGhUZuqIrc2zZnwNVwd/f4XXbtOPF3Su Y3oDmDqKSSWl2N3B1sqk/+RQu4BPX2E960ZshuIDjEZrBaWfXvbq40ckoDL1at2W8uQB THmsDJrBaQi2lfyRgJEqfanccKroMglI4hbQdssbkZmGMj34IU6WE7ngg1sg4SsNSwTK MwYAeUzlWR8WP3Dp/oCflizJ74QxTdICCdIsPzudx3kS4IrkvlDczP4QxBt+yR8H3JST PgALVSVOxfKewdOGhnT69eoEU12UoCxrnaOfXty3qpIA5Ug5cwCbFjOeZ47Q+lFN66gP LfKQ== X-Gm-Message-State: AOJu0Yyo+06p8EdfmAznp7sFc5IJuvR4uYWY8zcd+GTWHqmJuL9dzqo0 kFdbzPD9Ap01gj4gqrIy3gvHedaORaFv7UteffxTUwzmKzZ+G5et/qdwK/3BT71w/FNpLc33qMk 7AgHnRidfg9QbA0mm0hC7t/Mq7k0= X-Google-Smtp-Source: AGHT+IGZDPIYTacqsMk7rCfO9PNyi6NpnrNPNrF7rLCMNIugq0Uax9kNh9kVVvXNDku1EUfT7Z/U1yTSpFzi4p+rk3o= X-Received: by 2002:a05:6402:50d4:b0:5c4:233a:4d3 with SMTP id 4fb4d7f45d1cf-5c464db0822mr3298551a12.5.1726884467627; Fri, 20 Sep 2024 19:07:47 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Fri, 20 Sep 2024 19:07:47 -0700 From: Stefan Kangas In-Reply-To: References: MIME-Version: 1.0 Date: Fri, 20 Sep 2024 19:07:47 -0700 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) David Fussner writes: > Hi Mattias, Arash, > > Here's a patch to fix the regexps and delete the unnecessary variable. > Any thoughts? Thanks, installed on master. > I'll look at adding new vars for the TeX escape and grouping chars, > creating a new bug number when I have a working patch. Thanks in advance for this also. From unknown Sun Jun 22 07:59:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Resent-From: David Fussner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 21 Sep 2024 16:47:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53749 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Stefan Kangas Cc: 53749@debbugs.gnu.org, Ikumi Keita , Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= , Dmitry Gutov , Arash Esbati , Stefan Monnier , Tassilo Horn , Eli Zaretskii Received: via spool by 53749-submit@debbugs.gnu.org id=B53749.17269371709638 (code B ref 53749); Sat, 21 Sep 2024 16:47:01 +0000 Received: (at 53749) by debbugs.gnu.org; 21 Sep 2024 16:46:10 +0000 Received: from localhost ([127.0.0.1]:40271 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ss3FK-0002VO-Cm for submit@debbugs.gnu.org; Sat, 21 Sep 2024 12:46:10 -0400 Received: from mail-pg1-f173.google.com ([209.85.215.173]:56705) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ss3FI-0002VA-On for 53749@debbugs.gnu.org; Sat, 21 Sep 2024 12:46:09 -0400 Received: by mail-pg1-f173.google.com with SMTP id 41be03b00d2f7-7d916b6a73aso1930758a12.1 for <53749@debbugs.gnu.org>; Sat, 21 Sep 2024 09:45:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1726937082; x=1727541882; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=PFDKJ6IaL6xCYV91vyYzlBQNMIAOWZNmrgg46Aw3qkU=; b=kRHawKdffdCQJgp8Ee7fVrH6QBmlSk6gSxlTIh+Ku9kHCAqWrg5+YdvJcjv+CcFGpY oSNRwXHqR5HyZm4cAY5Mjf9tq1VZyKNDFmmZKlNocSaBYuPk7er9mIanPn4IUr9hQmBS 3AtZBXsjsGVvpAjhkECoxxf3jPRVOX90vhDDCBT5IrbS0hOQAdVnLGj+gGqJZC4RK2V5 gyMbCxoQ6Dgjr5g5Mw9mbnQ/JNBYdr8XobKlHFHjLxN+UUFsyPcNC0ZNR8QCqpqZlMns DRWuUozwuNhwnZ49l8l1RxnLBB0lW1XDAFAPCVti5PZETdlZyqxm1EaDiyOETguy/SL0 Akxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1726937082; x=1727541882; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=PFDKJ6IaL6xCYV91vyYzlBQNMIAOWZNmrgg46Aw3qkU=; b=UBTioNQuModcejMxKp4dZ+jp6x1RLxTq9NOO0hLMWOVbkNAFo4Vs1iCAmUzkZ7WM9J QozTUWHVx0wBwdFTEFVt5AKjf4UfOf336rf1WoXdQRzvqF01wFf4K66dNAUrUJhKlGHQ oSU4dEHfdV7E0hjjfd4iNIzxnqETIjxftSMlRR7JLN3IJFZCWvkKtBv6q6zcqgylnJOs nhroNO4SXkzuB4pytT0YZiPg321oSe+Rfh/uEF/G4LDegz/i05sTi/3Tle+KUy6VtxQe 3SoFtBOHT2U0fzoHpT9YArVPWr29prCqryjbKnoyVWG7oXlDHALcydQrA5NNH3KkdUuH moKA== X-Forwarded-Encrypted: i=1; AJvYcCUk1jSa0V/1Qpgoqz6RBUNRdbEoWp30pNESGMiPyW/nMZX+Xsiib6jtyj3hriSgCf9Mxi8cJw==@debbugs.gnu.org X-Gm-Message-State: AOJu0Yyxg87RY3uCsHXaARTFjirZ11B2kTbD6wZBt4QEudm3x8s5LJkx 919CBEZLNEHrJDm4MJIsrXDIFCC/8/kn91fKsIPhftT34MwtOF4DVPm666bXB6RiUMMzE7fj/Hw Dn8i5tA5k+nVDpi6yuZtvxkUZEjQ= X-Google-Smtp-Source: AGHT+IEU1082E7zby4AZQxgqvnX7mK7JiXlTY3ZnykO3Cfa+PGrkA21VmaLmhARha1sWR6t0kDjuBPMNgc72qF6ZhK0= X-Received: by 2002:a17:90b:4c03:b0:2d3:d09a:630e with SMTP id 98e67ed59e1d1-2dd80c4cc63mr8188746a91.1.1726937082560; Sat, 21 Sep 2024 09:44:42 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: David Fussner Date: Sat, 21 Sep 2024 17:44:31 +0100 Message-ID: Content-Type: multipart/alternative; boundary="0000000000005b0a2a0622a3df15" X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --0000000000005b0a2a0622a3df15 Content-Type: text/plain; charset="UTF-8" Thanks for installing it, Stefan. On Sat, 21 Sept 2024, 03:07 Stefan Kangas, wrote: > David Fussner writes: > > > Hi Mattias, Arash, > > > > Here's a patch to fix the regexps and delete the unnecessary variable. > > Any thoughts? > > Thanks, installed on master. > > > I'll look at adding new vars for the TeX escape and grouping chars, > > creating a new bug number when I have a working patch. > > Thanks in advance for this also. > --0000000000005b0a2a0622a3df15 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Thanks for installing it, Stefan.=C2=A0

On Sat, 21 Sept= 2024, 03:07 Stefan Kangas, <s= tefankangas@gmail.com> wrote:
dfussner@googlemail.com> writes:

> Hi Mattias, Arash,
>
> Here's a patch to fix the regexps and delete the unnecessary varia= ble.
> Any thoughts?

Thanks, installed on master.

> I'll look at adding new vars for the TeX escape and grouping chars= ,
> creating a new bug number when I have a working patch.

Thanks in advance for this also.
--0000000000005b0a2a0622a3df15--