From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 55309 invoked by alias); 12 Nov 2018 20:29:07 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 55283 invoked by uid 89); 12 Nov 2018 20:29:07 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-26.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.2 spammy=Heres, Here's, 1-4, busy X-HELO: mail-io1-f66.google.com Received: from mail-io1-f66.google.com (HELO mail-io1-f66.google.com) (209.85.166.66) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 12 Nov 2018 20:29:03 +0000 Received: by mail-io1-f66.google.com with SMTP id u15so2978381iof.12; Mon, 12 Nov 2018 12:29:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=FeVCb6t2RQsaS4J33h1e8BANc8aPXYxkrTsUlXoK3Ns=; b=MX/braumczwpI1lP3JjWo/fXJDPHmSWtDHEe8tItOYhYOXAOoQqimgil8YlQPxctPN kDW01JDFoWnMK5LQj2vff0I0MFJaygUACdcDEKNi+xAOhh1S8TJtMn6TaFHx5yWxNt+P xugFXCmrc/1x6BpwqoRgqG5jWTfRUWCOCm5Sf45pQKTxHwQIMTpJEDCCxBvxn/9xKLM4 DLui2egMFARywi/T7TFNuIH8+25vSjv3mVONlTBZ33Zlgh6F7p/J+p+BFQ4+8l4G2A1q Fy2+g+oOdwj52FiNqRvrOcgdXPjgOm08JaME91cc0wQrhtLg5zZiUCYiO/lRhWkT4koP DQww== MIME-Version: 1.0 References: <686ba917-27d4-451b-a0de-b28074166f2c@codethink.co.uk> <20181107152216.GD11625@tucnak> <20181107223230.GI11625@tucnak> <20181108175357.GR11625@tucnak> In-Reply-To: <20181108175357.GR11625@tucnak> From: Fritz Reese Date: Mon, 12 Nov 2018 20:29:00 -0000 Message-ID: Subject: Re: PR fortran/87919 patch for -fno-dec-structure To: Jakub Jelinek Cc: mark.eggleston@codethink.co.uk, fortran , gcc-patches , beth.white@codethink.co.uk, emmet.hikory@codethink.co.uk, Jeff Law Content-Type: multipart/mixed; boundary="00000000000023c07e057a7d8da9" X-SW-Source: 2018-11/txt/msg00991.txt.bz2 --00000000000023c07e057a7d8da9 Content-Type: text/plain; charset="UTF-8" Content-length: 7779 On Thu, Nov 8, 2018 at 12:54 PM Jakub Jelinek wrote: > > On Thu, Nov 08, 2018 at 12:09:33PM -0500, Fritz Reese wrote: > > > What about the > > > /* Allow legacy code without warnings. */ > > > gfc_option.allow_std |= GFC_STD_F95_OBS | GFC_STD_F95_DEL > > > | GFC_STD_GNU | GFC_STD_LEGACY; > > > gfc_option.warn_std &= ~(GFC_STD_LEGACY | GFC_STD_F95_DEL); > > > that is done for value, shouldn't set_dec_flags remove those > > > flags again? Maybe not the allow_std ones, because those are set already by > > > default, perhaps just the warn_std flags? > > > > > > > Sure. I wasn't convinced about this and how it might interplay with > > -std= so I left it alone, but I suppose it makes sense to unsuppress > > the warnings when disabling -fdec. > > Perhaps it might be better not to change the allow_std/warn_std flags > during the option parsing, instead set or clear say flag_dec and > only when option processing is being finalized (gfc_post_options) > check if flag_dec is set and set those. It would change behavior of > -fdec -std=f2018 and similar though. Not sure what users expect. > Actually, the gcc frontend appears to move -std= before the language-specific options before f951 is even executed regardless of its location compared to the -fdec flags. I don't know if this is a bug or if it is by design -- the feeling I get is that the gcc frontend processes it first since it is recognized before the flang specific options. Therefore, greedily setting the standard options the first time flag_dec appears means the standard information is lost and I believe your suggestion is correct: the standard flags must be set only once in gfc_post_options. In fact the new testcase dec_bitwise_ops_3.f90 is a good test of this: it uses -fdec -fno-dec -std=legacy to avoid warnings for XOR. With the version posted previously, the -std=legacy is overwritten by -fno-dec and warnings still appear. Here's what I'd change from the previous patch to support this: diff --git a/gcc/fortran/options.c b/gcc/fortran/options.c index af89a5d2faf..b7f7360215c 100644 --- a/gcc/fortran/options.c +++ b/gcc/fortran/options.c @@ -66,16 +66,6 @@ set_default_std_flags (void) static void set_dec_flags (int value) { - /* Allow legacy code without warnings. - Nb. We do not unset the allowed standards with value == 0 because - they are set by default in set_default_std_flags. */ - if (value) - gfc_option.allow_std |= GFC_STD_F95_OBS | GFC_STD_F95_DEL - | GFC_STD_GNU | GFC_STD_LEGACY; - - SET_BITFLAG (gfc_option.warn_std, !value, GFC_STD_LEGACY); - SET_BITFLAG (gfc_option.warn_std, !value, GFC_STD_F95_DEL); - /* Set (or unset) other DEC compatibility extensions. */ SET_BITFLAG (flag_dollar_ok, value, value); SET_BITFLAG (flag_cray_pointer, value, value); @@ -85,6 +75,24 @@ set_dec_flags (int value) SET_BITFLAG (flag_dec_math, value, value); } +/* Finalize DEC flags. */ + +static void +post_dec_flags (int value) +{ + /* Don't warn for legacy code if -fdec is given; however, setting -fno-dec + does not force these warnings. We make one final determination on this + at the end because -std= is always set first; thus, we can avoid + clobbering the user's desired standard settings in gfc_handle_option + e.g. when -fdec and -fno-dec are both given. */ + if (value) + { + gfc_option.allow_std |= GFC_STD_F95_OBS | GFC_STD_F95_DEL + | GFC_STD_GNU | GFC_STD_LEGACY; + gfc_option.warn_std &= ~(GFC_STD_LEGACY | GFC_STD_F95_DEL); + } +} + /* Enable (or disable) -finit-local-zero. */ static void @@ -248,6 +256,9 @@ gfc_post_options (const char **pfilename) char *source_path; int i; + /* Finalize DEC flags. */ + post_dec_flags (flag_dec); + /* Excess precision other than "fast" requires front-end support. */ if (flag_excess_precision_cmdline == EXCESS_PRECISION_STANDARD) @@ > Directives are only processed in the current file, so it doesn't really > matter what the included file has as directives. One could even have the > included one be with expected dg-error lines and then include it in > the ones that don't expect any. Good to know, thanks! In that case, I like your suggestion of reducing the test cases to includes. See new the newly attached patch for updated cases. > Anyway, that is all from me, I still don't want to stomp on Fortran > maintainer's review (use my global reviewer's rights for that) and > thus I'm deferring the review to them. When committing, please make sure > to include Mark's email in the ChangeLog next to yours to credit him. Thanks for your comments. I think nobody will feel stomped on since maintainers are sparse and busy. I will certainly make note of Mark's contributions when committing. Attached is the latest version, which builds and regtests cleanly on x86_64-redhat-linux. OK for trunk, 7-branch, and 8-branch? Fritz >From 1cae11a88b29fe521e0e6c6c7c1796a7adb34cad Mon Sep 17 00:00:00 2001 From: Fritz Reese Date: Mon, 12 Nov 2018 13:57:25 -0500 Subject: [PATCH] PR fortran/87919 Fix handling -fno-* prefix for init-local-zero, check-array-temporaries and dec. gcc/fortran/ * options.c (SET_FLAG, SET_BITFLAG, SET_BITFLAG2): New macros. (set_dec_flags): Set/unset DEC and std flags according to value. (set_init_local_zero): New helper for -finit-local-zero flag group. (gfc_init_options): Fix disabling of init flags, array temporaries check, and dec flags when value is zero (from -fno-*). gcc/testsuiste/ * gfortran.dg/array_temporaries_5.f90: New test. * gfortran.dg/dec_bitwise_ops_3.f90: Ditto. * gfortran.dg/dec_d_lines_3.f: Ditto. * gfortran.dg/dec_exp_4.f90: Ditto. * gfortran.dg/dec_exp_5.f90: Ditto. * gfortran.dg/dec_io_7.f90: Ditto. * gfortran.dg/dec_structure_24.f90: Ditto. * gfortran.dg/dec_structure_25.f90: Ditto. * gfortran.dg/dec_structure_26.f90: Ditto. * gfortran.dg/dec_structure_27.f90: Ditto. * gfortran.dg/dec_type_print_3.f90: Ditto. * gfortran.dg/init_flag_20.f90: Ditto. --- gcc/fortran/options.c | 93 +++++++++++++++-------- gcc/testsuite/gfortran.dg/array_temporaries_5.f90 | 10 +++ gcc/testsuite/gfortran.dg/dec_bitwise_ops_3.f90 | 29 +++++++ gcc/testsuite/gfortran.dg/dec_d_lines_3.f | 14 ++++ gcc/testsuite/gfortran.dg/dec_exp_4.f90 | 12 +++ gcc/testsuite/gfortran.dg/dec_exp_5.f90 | 11 +++ gcc/testsuite/gfortran.dg/dec_io_7.f90 | 20 +++++ gcc/testsuite/gfortran.dg/dec_structure_24.f90 | 32 ++++++++ gcc/testsuite/gfortran.dg/dec_structure_25.f90 | 11 +++ gcc/testsuite/gfortran.dg/dec_structure_26.f90 | 34 +++++++++ gcc/testsuite/gfortran.dg/dec_structure_27.f90 | 34 +++++++++ gcc/testsuite/gfortran.dg/dec_type_print_3.f90 | 21 +++++ gcc/testsuite/gfortran.dg/init_flag_20.f90 | 15 ++++ 13 files changed, 306 insertions(+), 30 deletions(-) create mode 100644 gcc/testsuite/gfortran.dg/array_temporaries_5.f90 create mode 100644 gcc/testsuite/gfortran.dg/dec_bitwise_ops_3.f90 create mode 100644 gcc/testsuite/gfortran.dg/dec_d_lines_3.f create mode 100644 gcc/testsuite/gfortran.dg/dec_exp_4.f90 create mode 100644 gcc/testsuite/gfortran.dg/dec_exp_5.f90 create mode 100644 gcc/testsuite/gfortran.dg/dec_io_7.f90 create mode 100644 gcc/testsuite/gfortran.dg/dec_structure_24.f90 create mode 100644 gcc/testsuite/gfortran.dg/dec_structure_25.f90 create mode 100644 gcc/testsuite/gfortran.dg/dec_structure_26.f90 create mode 100644 gcc/testsuite/gfortran.dg/dec_structure_27.f90 create mode 100644 gcc/testsuite/gfortran.dg/dec_type_print_3.f90 create mode 100644 gcc/testsuite/gfortran.dg/init_flag_20.f90 --00000000000023c07e057a7d8da9 Content-Type: text/x-patch; charset="US-ASCII"; name="0003-PR-fortran-87919.patch" Content-Disposition: attachment; filename="0003-PR-fortran-87919.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_joeoe02c0 Content-length: 28365 RnJvbSAxY2FlMTFhODhiMjlmZTUyMWUwZTZjNmM3YzE3OTZhN2FkYjM0Y2Fk IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBGcml0eiBSZWVzZSA8 ZnJpdHpvcmVlc2VAZ21haWwuY29tPgpEYXRlOiBNb24sIDEyIE5vdiAyMDE4 IDEzOjU3OjI1IC0wNTAwClN1YmplY3Q6IFtQQVRDSF0gUFIgZm9ydHJhbi84 NzkxOQoKRml4IGhhbmRsaW5nIC1mbm8tKiBwcmVmaXggZm9yIGluaXQtbG9j YWwtemVybywgY2hlY2stYXJyYXktdGVtcG9yYXJpZXMgYW5kIGRlYy4KCmdj Yy9mb3J0cmFuLwoJKiBvcHRpb25zLmMgKFNFVF9GTEFHLCBTRVRfQklURkxB RywgU0VUX0JJVEZMQUcyKTogTmV3IG1hY3Jvcy4KCShzZXRfZGVjX2ZsYWdz KTogU2V0L3Vuc2V0IERFQyBhbmQgc3RkIGZsYWdzIGFjY29yZGluZyB0byB2 YWx1ZS4KCShzZXRfaW5pdF9sb2NhbF96ZXJvKTogTmV3IGhlbHBlciBmb3Ig LWZpbml0LWxvY2FsLXplcm8gZmxhZyBncm91cC4KCShnZmNfaW5pdF9vcHRp b25zKTogRml4IGRpc2FibGluZyBvZiBpbml0IGZsYWdzLCBhcnJheSB0ZW1w b3JhcmllcwoJY2hlY2ssIGFuZCBkZWMgZmxhZ3Mgd2hlbiB2YWx1ZSBpcyB6 ZXJvIChmcm9tIC1mbm8tKikuCgpnY2MvdGVzdHN1aXN0ZS8KCSogZ2ZvcnRy YW4uZGcvYXJyYXlfdGVtcG9yYXJpZXNfNS5mOTA6IE5ldyB0ZXN0LgoJKiBn Zm9ydHJhbi5kZy9kZWNfYml0d2lzZV9vcHNfMy5mOTA6IERpdHRvLgoJKiBn Zm9ydHJhbi5kZy9kZWNfZF9saW5lc18zLmY6IERpdHRvLgoJKiBnZm9ydHJh bi5kZy9kZWNfZXhwXzQuZjkwOiBEaXR0by4KCSogZ2ZvcnRyYW4uZGcvZGVj X2V4cF81LmY5MDogRGl0dG8uCgkqIGdmb3J0cmFuLmRnL2RlY19pb183LmY5 MDogRGl0dG8uCgkqIGdmb3J0cmFuLmRnL2RlY19zdHJ1Y3R1cmVfMjQuZjkw OiBEaXR0by4KCSogZ2ZvcnRyYW4uZGcvZGVjX3N0cnVjdHVyZV8yNS5mOTA6 IERpdHRvLgoJKiBnZm9ydHJhbi5kZy9kZWNfc3RydWN0dXJlXzI2LmY5MDog RGl0dG8uCgkqIGdmb3J0cmFuLmRnL2RlY19zdHJ1Y3R1cmVfMjcuZjkwOiBE aXR0by4KCSogZ2ZvcnRyYW4uZGcvZGVjX3R5cGVfcHJpbnRfMy5mOTA6IERp dHRvLgoJKiBnZm9ydHJhbi5kZy9pbml0X2ZsYWdfMjAuZjkwOiBEaXR0by4K LS0tCiBnY2MvZm9ydHJhbi9vcHRpb25zLmMgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgOTMgKysrKysrKysrKysrKysrLS0tLS0tLS0KIGdjYy90 ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvYXJyYXlfdGVtcG9yYXJpZXNfNS5mOTAg fCAxMCArKysKIGdjYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX2JpdHdp c2Vfb3BzXzMuZjkwICAgfCAyOSArKysrKysrCiBnY2MvdGVzdHN1aXRlL2dm b3J0cmFuLmRnL2RlY19kX2xpbmVzXzMuZiAgICAgICAgIHwgMTQgKysrKwog Z2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfZXhwXzQuZjkwICAgICAg ICAgICB8IDEyICsrKwogZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNf ZXhwXzUuZjkwICAgICAgICAgICB8IDExICsrKwogZ2NjL3Rlc3RzdWl0ZS9n Zm9ydHJhbi5kZy9kZWNfaW9fNy5mOTAgICAgICAgICAgICB8IDIwICsrKysr CiBnY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2RlY19zdHJ1Y3R1cmVfMjQu ZjkwICAgIHwgMzIgKysrKysrKysKIGdjYy90ZXN0c3VpdGUvZ2ZvcnRyYW4u ZGcvZGVjX3N0cnVjdHVyZV8yNS5mOTAgICAgfCAxMSArKysKIGdjYy90ZXN0 c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX3N0cnVjdHVyZV8yNi5mOTAgICAgfCAz NCArKysrKysrKysKIGdjYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX3N0 cnVjdHVyZV8yNy5mOTAgICAgfCAzNCArKysrKysrKysKIGdjYy90ZXN0c3Vp dGUvZ2ZvcnRyYW4uZGcvZGVjX3R5cGVfcHJpbnRfMy5mOTAgICAgfCAyMSAr KysrKwogZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9pbml0X2ZsYWdfMjAu ZjkwICAgICAgICB8IDE1ICsrKysKIDEzIGZpbGVzIGNoYW5nZWQsIDMwNiBp bnNlcnRpb25zKCspLCAzMCBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEw MDY0NCBnY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2FycmF5X3RlbXBvcmFy aWVzXzUuZjkwCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9n Zm9ydHJhbi5kZy9kZWNfYml0d2lzZV9vcHNfMy5mOTAKIGNyZWF0ZSBtb2Rl IDEwMDY0NCBnY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2RlY19kX2xpbmVz XzMuZgogY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2ZvcnRy YW4uZGcvZGVjX2V4cF80LmY5MAogY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90 ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX2V4cF81LmY5MAogY3JlYXRlIG1v ZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX2lvXzcu ZjkwCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJh bi5kZy9kZWNfc3RydWN0dXJlXzI0LmY5MAogY3JlYXRlIG1vZGUgMTAwNjQ0 IGdjYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX3N0cnVjdHVyZV8yNS5m OTAKIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2dmb3J0cmFu LmRnL2RlY19zdHJ1Y3R1cmVfMjYuZjkwCiBjcmVhdGUgbW9kZSAxMDA2NDQg Z2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfc3RydWN0dXJlXzI3LmY5 MAogY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2ZvcnRyYW4u ZGcvZGVjX3R5cGVfcHJpbnRfMy5mOTAKIGNyZWF0ZSBtb2RlIDEwMDY0NCBn Y2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2luaXRfZmxhZ18yMC5mOTAKCmRp ZmYgLS1naXQgYS9nY2MvZm9ydHJhbi9vcHRpb25zLmMgYi9nY2MvZm9ydHJh bi9vcHRpb25zLmMKaW5kZXggNzNmNTM4OTM2MWQuLmI3ZjczNjAyMTVjIDEw MDY0NAotLS0gYS9nY2MvZm9ydHJhbi9vcHRpb25zLmMKKysrIGIvZ2NjL2Zv cnRyYW4vb3B0aW9ucy5jCkBAIC0zMiw2ICszMiwyMCBAQCBhbG9uZyB3aXRo IEdDQzsgc2VlIHRoZSBmaWxlIENPUFlJTkczLiAgSWYgbm90IHNlZQogCiBn ZmNfb3B0aW9uX3QgZ2ZjX29wdGlvbjsKIAorI2RlZmluZSBTRVRfRkxBRyhm bGFnLCBjb25kaXRpb24sIG9uX3ZhbHVlLCBvZmZfdmFsdWUpIFwKKyAgZG8g XAorICAgIHsgXAorICAgICAgaWYgKGNvbmRpdGlvbikgXAorCWZsYWcgPSAo b25fdmFsdWUpOyBcCisgICAgICBlbHNlIFwKKwlmbGFnID0gKG9mZl92YWx1 ZSk7IFwKKyAgICB9IHdoaWxlICgwKQorCisjZGVmaW5lIFNFVF9CSVRGTEFH MihtKSBtCisKKyNkZWZpbmUgU0VUX0JJVEZMQUcoZmxhZywgY29uZGl0aW9u LCB2YWx1ZSkgXAorICBTRVRfQklURkxBRzIgKFNFVF9GTEFHIChmbGFnLCBj b25kaXRpb24sIChmbGFnIHwgKHZhbHVlKSksIChmbGFnICYgfih2YWx1ZSkp KSkKKwogCiAvKiBTZXQgZmxhZ3MgdGhhdCBjb250cm9sIHdhcm5pbmdzIGFu ZCBlcnJvcnMgZm9yIGRpZmZlcmVudAogICAgRm9ydHJhbiBzdGFuZGFyZHMg dG8gdGhlaXIgZGVmYXVsdCB2YWx1ZXMuICBLZWVwIGluIHN5bmMgd2l0aApA QCAtNDcsMjkgKzYxLDU0IEBAIHNldF9kZWZhdWx0X3N0ZF9mbGFncyAodm9p ZCkKICAgZ2ZjX29wdGlvbi53YXJuX3N0ZCA9IEdGQ19TVERfRjIwMThfREVM IHwgR0ZDX1NURF9GOTVfREVMIHwgR0ZDX1NURF9MRUdBQ1k7CiB9CiAKLQot LyogU2V0IGFsbCB0aGUgREVDIGV4dGVuc2lvbiBmbGFncy4gICovCisvKiBT ZXQgKG9yIHVuc2V0KSB0aGUgREVDIGV4dGVuc2lvbiBmbGFncy4gICovCiAK IHN0YXRpYyB2b2lkCiBzZXRfZGVjX2ZsYWdzIChpbnQgdmFsdWUpCiB7Cisg IC8qIFNldCAob3IgdW5zZXQpIG90aGVyIERFQyBjb21wYXRpYmlsaXR5IGV4 dGVuc2lvbnMuICAqLworICBTRVRfQklURkxBRyAoZmxhZ19kb2xsYXJfb2ss IHZhbHVlLCB2YWx1ZSk7CisgIFNFVF9CSVRGTEFHIChmbGFnX2NyYXlfcG9p bnRlciwgdmFsdWUsIHZhbHVlKTsKKyAgU0VUX0JJVEZMQUcgKGZsYWdfZGVj X3N0cnVjdHVyZSwgdmFsdWUsIHZhbHVlKTsKKyAgU0VUX0JJVEZMQUcgKGZs YWdfZGVjX2ludHJpbnNpY19pbnRzLCB2YWx1ZSwgdmFsdWUpOworICBTRVRf QklURkxBRyAoZmxhZ19kZWNfc3RhdGljLCB2YWx1ZSwgdmFsdWUpOworICBT RVRfQklURkxBRyAoZmxhZ19kZWNfbWF0aCwgdmFsdWUsIHZhbHVlKTsKK30K KworLyogRmluYWxpemUgREVDIGZsYWdzLiAgKi8KKworc3RhdGljIHZvaWQK K3Bvc3RfZGVjX2ZsYWdzIChpbnQgdmFsdWUpCit7CisgIC8qIERvbid0IHdh cm4gZm9yIGxlZ2FjeSBjb2RlIGlmIC1mZGVjIGlzIGdpdmVuOyBob3dldmVy LCBzZXR0aW5nIC1mbm8tZGVjCisgICAgIGRvZXMgbm90IGZvcmNlIHRoZXNl IHdhcm5pbmdzLiAgV2UgbWFrZSBvbmUgZmluYWwgZGV0ZXJtaW5hdGlvbiBv biB0aGlzCisgICAgIGF0IHRoZSBlbmQgYmVjYXVzZSAtc3RkPSBpcyBhbHdh eXMgc2V0IGZpcnN0OyB0aHVzLCB3ZSBjYW4gYXZvaWQKKyAgICAgY2xvYmJl cmluZyB0aGUgdXNlcidzIGRlc2lyZWQgc3RhbmRhcmQgc2V0dGluZ3MgaW4g Z2ZjX2hhbmRsZV9vcHRpb24KKyAgICAgZS5nLiB3aGVuIC1mZGVjIGFuZCAt Zm5vLWRlYyBhcmUgYm90aCBnaXZlbi4gICovCiAgIGlmICh2YWx1ZSkKICAg ICB7Ci0gICAgICAvKiBBbGxvdyBsZWdhY3kgY29kZSB3aXRob3V0IHdhcm5p bmdzLiAgKi8KICAgICAgIGdmY19vcHRpb24uYWxsb3dfc3RkIHw9IEdGQ19T VERfRjk1X09CUyB8IEdGQ19TVERfRjk1X0RFTAotICAgICAgICB8IEdGQ19T VERfR05VIHwgR0ZDX1NURF9MRUdBQ1k7CisJfCBHRkNfU1REX0dOVSB8IEdG Q19TVERfTEVHQUNZOwogICAgICAgZ2ZjX29wdGlvbi53YXJuX3N0ZCAmPSB+ KEdGQ19TVERfTEVHQUNZIHwgR0ZDX1NURF9GOTVfREVMKTsKICAgICB9Ci0K LSAgLyogU2V0IG90aGVyIERFQyBjb21wYXRpYmlsaXR5IGV4dGVuc2lvbnMu ICAqLwotICBmbGFnX2RvbGxhcl9vayB8PSB2YWx1ZTsKLSAgZmxhZ19jcmF5 X3BvaW50ZXIgfD0gdmFsdWU7Ci0gIGZsYWdfZGVjX3N0cnVjdHVyZSB8PSB2 YWx1ZTsKLSAgZmxhZ19kZWNfaW50cmluc2ljX2ludHMgfD0gdmFsdWU7Ci0g IGZsYWdfZGVjX3N0YXRpYyB8PSB2YWx1ZTsKLSAgZmxhZ19kZWNfbWF0aCB8 PSB2YWx1ZTsKIH0KIAorLyogRW5hYmxlIChvciBkaXNhYmxlKSAtZmluaXQt bG9jYWwtemVyby4gICovCisKK3N0YXRpYyB2b2lkCitzZXRfaW5pdF9sb2Nh bF96ZXJvIChpbnQgdmFsdWUpCit7CisgIGdmY19vcHRpb24uZmxhZ19pbml0 X2ludGVnZXJfdmFsdWUgPSAwOworICBnZmNfb3B0aW9uLmZsYWdfaW5pdF9j aGFyYWN0ZXJfdmFsdWUgPSAoY2hhcikwOworCisgIFNFVF9GTEFHIChnZmNf b3B0aW9uLmZsYWdfaW5pdF9pbnRlZ2VyLCB2YWx1ZSwgR0ZDX0lOSVRfSU5U RUdFUl9PTiwKKwkgICAgR0ZDX0lOSVRfSU5URUdFUl9PRkYpOworICBTRVRf RkxBRyAoZ2ZjX29wdGlvbi5mbGFnX2luaXRfbG9naWNhbCwgdmFsdWUsIEdG Q19JTklUX0xPR0lDQUxfRkFMU0UsCisJICAgIEdGQ19JTklUX0xPR0lDQUxf T0ZGKTsKKyAgU0VUX0ZMQUcgKGdmY19vcHRpb24uZmxhZ19pbml0X2NoYXJh Y3RlciwgdmFsdWUsIEdGQ19JTklUX0NIQVJBQ1RFUl9PTiwKKwkgICAgR0ZD X0lOSVRfQ0hBUkFDVEVSX09GRik7CisgIFNFVF9GTEFHIChmbGFnX2luaXRf cmVhbCwgdmFsdWUsIEdGQ19JTklUX1JFQUxfWkVSTywgR0ZDX0lOSVRfUkVB TF9PRkYpOworfQogCiAvKiBSZXR1cm4gbGFuZ3VhZ2UgbWFzayBmb3IgRm9y dHJhbiBvcHRpb25zLiAgKi8KIApAQCAtMTA3LDExICsxNDYsNyBAQCBnZmNf aW5pdF9vcHRpb25zICh1bnNpZ25lZCBpbnQgZGVjb2RlZF9vcHRpb25zX2Nv dW50LAogCiAgIGdmY19vcHRpb24uZmxhZ19wcmVwcm9jZXNzZWQgPSAwOwog ICBnZmNfb3B0aW9uLmZsYWdfZF9saW5lcyA9IC0xOwotICBnZmNfb3B0aW9u LmZsYWdfaW5pdF9pbnRlZ2VyID0gR0ZDX0lOSVRfSU5URUdFUl9PRkY7Ci0g IGdmY19vcHRpb24uZmxhZ19pbml0X2ludGVnZXJfdmFsdWUgPSAwOwotICBn ZmNfb3B0aW9uLmZsYWdfaW5pdF9sb2dpY2FsID0gR0ZDX0lOSVRfTE9HSUNB TF9PRkY7Ci0gIGdmY19vcHRpb24uZmxhZ19pbml0X2NoYXJhY3RlciA9IEdG Q19JTklUX0NIQVJBQ1RFUl9PRkY7Ci0gIGdmY19vcHRpb24uZmxhZ19pbml0 X2NoYXJhY3Rlcl92YWx1ZSA9IChjaGFyKTA7CisgIHNldF9pbml0X2xvY2Fs X3plcm8gKDApOwogICAKICAgZ2ZjX29wdGlvbi5mcGUgPSAwOwogICAvKiBB bGwgZXhjZXB0IEdGQ19GUEVfSU5FWEFDVC4gICovCkBAIC0yMjEsNiArMjU2 LDkgQEAgZ2ZjX3Bvc3Rfb3B0aW9ucyAoY29uc3QgY2hhciAqKnBmaWxlbmFt ZSkKICAgY2hhciAqc291cmNlX3BhdGg7CiAgIGludCBpOwogCisgIC8qIEZp bmFsaXplIERFQyBmbGFncy4gICovCisgIHBvc3RfZGVjX2ZsYWdzIChmbGFn X2RlYyk7CisKICAgLyogRXhjZXNzIHByZWNpc2lvbiBvdGhlciB0aGFuICJm YXN0IiByZXF1aXJlcyBmcm9udC1lbmQKICAgICAgc3VwcG9ydC4gICovCiAg IGlmIChmbGFnX2V4Y2Vzc19wcmVjaXNpb25fY21kbGluZSA9PSBFWENFU1Nf UFJFQ0lTSU9OX1NUQU5EQVJEKQpAQCAtNjA0LDcgKzY0Miw3IEBAIGdmY19o YW5kbGVfb3B0aW9uIChzaXplX3Qgc2NvZGUsIGNvbnN0IGNoYXIgKmFyZywg SE9TVF9XSURFX0lOVCB2YWx1ZSwKICAgICAgIGJyZWFrOwogCiAgICAgY2Fz ZSBPUFRfZmNoZWNrX2FycmF5X3RlbXBvcmFyaWVzOgotICAgICAgZ2ZjX29w dGlvbi5ydGNoZWNrIHw9IEdGQ19SVENIRUNLX0FSUkFZX1RFTVBTOworICAg ICAgU0VUX0JJVEZMQUcgKGdmY19vcHRpb24ucnRjaGVjaywgdmFsdWUsIEdG Q19SVENIRUNLX0FSUkFZX1RFTVBTKTsKICAgICAgIGJyZWFrOwogICAgICAg CiAgICAgY2FzZSBPUFRfZmRfbGluZXNfYXNfY29kZToKQEAgLTY1NCwxMiAr NjkyLDcgQEAgZ2ZjX2hhbmRsZV9vcHRpb24gKHNpemVfdCBzY29kZSwgY29u c3QgY2hhciAqYXJnLCBIT1NUX1dJREVfSU5UIHZhbHVlLAogICAgICAgYnJl YWs7CiAKICAgICBjYXNlIE9QVF9maW5pdF9sb2NhbF96ZXJvOgotICAgICAg Z2ZjX29wdGlvbi5mbGFnX2luaXRfaW50ZWdlciA9IEdGQ19JTklUX0lOVEVH RVJfT047Ci0gICAgICBnZmNfb3B0aW9uLmZsYWdfaW5pdF9pbnRlZ2VyX3Zh bHVlID0gMDsKLSAgICAgIGZsYWdfaW5pdF9yZWFsID0gR0ZDX0lOSVRfUkVB TF9aRVJPOwotICAgICAgZ2ZjX29wdGlvbi5mbGFnX2luaXRfbG9naWNhbCA9 IEdGQ19JTklUX0xPR0lDQUxfRkFMU0U7Ci0gICAgICBnZmNfb3B0aW9uLmZs YWdfaW5pdF9jaGFyYWN0ZXIgPSBHRkNfSU5JVF9DSEFSQUNURVJfT047Ci0g ICAgICBnZmNfb3B0aW9uLmZsYWdfaW5pdF9jaGFyYWN0ZXJfdmFsdWUgPSAo Y2hhcikwOworICAgICAgc2V0X2luaXRfbG9jYWxfemVybyAodmFsdWUpOwog ICAgICAgYnJlYWs7CiAKICAgICBjYXNlIE9QVF9maW5pdF9sb2dpY2FsXzoK QEAgLTc1OCwxMiArNzkxLDggQEAgZ2ZjX2hhbmRsZV9vcHRpb24gKHNpemVf dCBzY29kZSwgY29uc3QgY2hhciAqYXJnLCBIT1NUX1dJREVfSU5UIHZhbHVl LAogICAgICAgYnJlYWs7CiAKICAgICBjYXNlIE9QVF9mZGVjOgotICAgICAg LyogRW5hYmxlIGFsbCBERUMgZXh0ZW5zaW9ucy4gICovCi0gICAgICBzZXRf ZGVjX2ZsYWdzICgxKTsKLSAgICAgIGJyZWFrOwotCi0gICAgY2FzZSBPUFRf ZmRlY19zdHJ1Y3R1cmU6Ci0gICAgICBmbGFnX2RlY19zdHJ1Y3R1cmUgPSAx OworICAgICAgLyogU2V0IChvciB1bnNldCkgdGhlIERFQyBleHRlbnNpb24g ZmxhZ3MuICAqLworICAgICAgc2V0X2RlY19mbGFncyAodmFsdWUpOwogICAg ICAgYnJlYWs7CiAgICAgfQogCkBAIC04NTUsMyArODg0LDcgQEAgZ2ZjX2dl dF9vcHRpb25fc3RyaW5nICh2b2lkKQogICByZXN1bHRbLS1wb3NdID0gJ1ww JzsKICAgcmV0dXJuIHJlc3VsdDsKIH0KKworI3VuZGVmIFNFVF9CSVRGTEFH CisjdW5kZWYgU0VUX0JJVEZMQUcyCisjdW5kZWYgU0VUX0ZMQUcKZGlmZiAt LWdpdCBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvYXJyYXlfdGVtcG9y YXJpZXNfNS5mOTAgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2FycmF5 X3RlbXBvcmFyaWVzXzUuZjkwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDAwMDAwMDAwMDAwLi5kZDE0N2JhMzhlZAotLS0gL2Rldi9udWxsCisrKyBi L2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvYXJyYXlfdGVtcG9yYXJpZXNf NS5mOTAKQEAgLTAsMCArMSwxMCBAQAorISB7IGRnLWRvIHJ1biB9CishIHsg ZGctb3B0aW9ucyAiLWZjaGVjay1hcnJheS10ZW1wb3JhcmllcyAtZm5vLWNo ZWNrLWFycmF5LXRlbXBvcmFyaWVzIiB9CishCishIFBSIGZvcnRyYW4vODc5 MTkKKyEKKyEgRW5zdXJlIC1mbm8tY2hlY2stYXJyYXktdGVtcG9yYXJpZXMg ZGlzYWJsZXMgYXJyYXkgdGVtcG9yYXJ5IGNoZWNraW5nLgorIQorCishIE5v dGUgdGhhdCAnaW5jbHVkZScgZHJvcHMgdGhlIGRnLW91dHB1dCBjaGVjayBm cm9tIHRoZSBvcmlnaW5hbCB0ZXN0IGNhc2UuCitpbmNsdWRlICdhcnJheV90 ZW1wb3Jhcmllc18yLmY5MCcKZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUv Z2ZvcnRyYW4uZGcvZGVjX2JpdHdpc2Vfb3BzXzMuZjkwIGIvZ2NjL3Rlc3Rz dWl0ZS9nZm9ydHJhbi5kZy9kZWNfYml0d2lzZV9vcHNfMy5mOTAKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmMyOGNmODFmYzA0 Ci0tLSAvZGV2L251bGwKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5k Zy9kZWNfYml0d2lzZV9vcHNfMy5mOTAKQEAgLTAsMCArMSwyOSBAQAorISB7 IGRnLWRvIGNvbXBpbGUgfQorISB7IGRnLW9wdGlvbnMgIi1zdGQ9bGVnYWN5 IC1mZGVjIC1mbm8tZGVjIiB9CishCishIFBSIGZvcnRyYW4vODc5MTkKKyEK KyEgTWFrZSBzdXJlIC1mbm8tZGVjIGRpc2FibGVzIGJpdHdpc2Ugb3BzIGFu ZCBjaGVjayBmb3IgdGhlIHJpZ2h0IGVycm9ycy4KKyEgLXN0ZD1sZWdhY3kg aXMgYWRkZWQgdG8gYXZvaWQgdGhlIC5YT1IuIGV4dGVuc2lvbiB3YXJuaW5n LgorIQorCitpbmNsdWRlICdkZWNfYml0d2lzZV9vcHNfMS5mOTAnCisKKyEg eyBkZy1lcnJvciAiT3BlcmFuZHMgb2YgbG9naWNhbCBvcGVyYXRvciIgIiAi IHsgdGFyZ2V0ICotKi0qIH0gMzMgfQorISB7IGRnLWVycm9yICJPcGVyYW5k cyBvZiBsb2dpY2FsIG9wZXJhdG9yIiAiICIgeyB0YXJnZXQgKi0qLSogfSAz NCB9CishIHsgZGctZXJyb3IgIk9wZXJhbmRzIG9mIGxvZ2ljYWwgb3BlcmF0 b3IiICIgIiB7IHRhcmdldCAqLSotKiB9IDM1IH0KKyEgeyBkZy1lcnJvciAi T3BlcmFuZHMgb2YgbG9naWNhbCBvcGVyYXRvciIgIiAiIHsgdGFyZ2V0ICot Ki0qIH0gNDYgfQorISB7IGRnLWVycm9yICJPcGVyYW5kcyBvZiBsb2dpY2Fs IG9wZXJhdG9yIiAiICIgeyB0YXJnZXQgKi0qLSogfSA0NyB9CishIHsgZGct ZXJyb3IgIk9wZXJhbmRzIG9mIGxvZ2ljYWwgb3BlcmF0b3IiICIgIiB7IHRh cmdldCAqLSotKiB9IDQ4IH0KKyEgeyBkZy1lcnJvciAiT3BlcmFuZHMgb2Yg bG9naWNhbCBvcGVyYXRvciIgIiAiIHsgdGFyZ2V0ICotKi0qIH0gNTkgfQor ISB7IGRnLWVycm9yICJPcGVyYW5kcyBvZiBsb2dpY2FsIG9wZXJhdG9yIiAi ICIgeyB0YXJnZXQgKi0qLSogfSA2MCB9CishIHsgZGctZXJyb3IgIk9wZXJh bmRzIG9mIGxvZ2ljYWwgb3BlcmF0b3IiICIgIiB7IHRhcmdldCAqLSotKiB9 IDYxIH0KKyEgeyBkZy1lcnJvciAiT3BlcmFuZCBvZiAubm90LiBvcGVyYXRv ciIgIiAiIHsgdGFyZ2V0ICotKi0qIH0gNzIgfQorISB7IGRnLWVycm9yICJP cGVyYW5kIG9mIC5ub3QuIG9wZXJhdG9yIiAiICIgeyB0YXJnZXQgKi0qLSog fSA3MyB9CishIHsgZGctZXJyb3IgIk9wZXJhbmQgb2YgLm5vdC4gb3BlcmF0 b3IiICIgIiB7IHRhcmdldCAqLSotKiB9IDc0IH0KKyEgeyBkZy1lcnJvciAi T3BlcmFuZHMgb2YgbG9naWNhbCBvcGVyYXRvciIgIiAiIHsgdGFyZ2V0ICot Ki0qIH0gODUgfQorISB7IGRnLWVycm9yICJPcGVyYW5kcyBvZiBsb2dpY2Fs IG9wZXJhdG9yIiAiICIgeyB0YXJnZXQgKi0qLSogfSA4NiB9CishIHsgZGct ZXJyb3IgIk9wZXJhbmRzIG9mIGxvZ2ljYWwgb3BlcmF0b3IiICIgIiB7IHRh cmdldCAqLSotKiB9IDg3IH0KKyEgeyBkZy1lcnJvciAiT3BlcmFuZHMgb2Yg bG9naWNhbCBvcGVyYXRvciIgIiAiIHsgdGFyZ2V0ICotKi0qIH0gOTggfQor ISB7IGRnLWVycm9yICJPcGVyYW5kcyBvZiBsb2dpY2FsIG9wZXJhdG9yIiAi ICIgeyB0YXJnZXQgKi0qLSogfSA5OSB9CishIHsgZGctZXJyb3IgIk9wZXJh bmRzIG9mIGxvZ2ljYWwgb3BlcmF0b3IiICIgIiB7IHRhcmdldCAqLSotKiB9 IDEwMCB9CmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRn L2RlY19kX2xpbmVzXzMuZiBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcv ZGVjX2RfbGluZXNfMy5mCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAwMDAwLi4yZGY0MzQxYzBlNAotLS0gL2Rldi9udWxsCisrKyBiL2dj Yy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX2RfbGluZXNfMy5mCkBAIC0w LDAgKzEsMTQgQEAKKyEgeyBkZy1kbyBjb21waWxlIH0KKyEgeyBkZy1vcHRp b25zICItZmZpeGVkLWZvcm0gLWZkZWMgLWZuby1kZWMiIH0KKyEKKyEgUFIg Zm9ydHJhbi84NzkxOQorIQorISBFbnN1cmUgLWZuby1kZWMgZGlzYWJsZXMg LWZkZWMsIGxlYXZpbmcgZC1saW5lcyBhcyBjb2RlIGJ5IGRlZmF1bHQuCish CisKK2luY2x1ZGUgJ2RlY19kX2xpbmVzXzIuZicKKworISB7IGRnLWVycm9y ICJjaGFyYWN0ZXIgaW4gc3RhdGVtZW50IGxhYmVsIiAiICIgeyB0YXJnZXQg Ki0qLSp9IDYgfQorISB7IGRnLWVycm9yICJVbmNsYXNzaWZpYWJsZSBzdGF0 ZW1lbnQiICIgIiB7IHRhcmdldCAqLSotKn0gNiB9CishIHsgZGctZXJyb3Ig ImNoYXJhY3RlciBpbiBzdGF0ZW1lbnQgbGFiZWwiICIgIiB7IHRhcmdldCAq LSotKn0gNyB9CishIHsgZGctZXJyb3IgIlVuY2xhc3NpZmlhYmxlIHN0YXRl bWVudCIgIiAiIHsgdGFyZ2V0ICotKi0qfSA3IH0KZGlmZiAtLWdpdCBhL2dj Yy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX2V4cF80LmY5MCBiL2djYy90 ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX2V4cF80LmY5MApuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uOWQ4YjEwZGI2YTcKLS0t IC9kZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2Rl Y19leHBfNC5mOTAKQEAgLTAsMCArMSwxMiBAQAorISB7IGRnLWRvIGNvbXBp bGUgfQorISB7IGRnLW9wdGlvbnMgIi1mZGVjIC1mbm8tZGVjIiB9CishCish IFBSIGZvcnRyYW4vODc5MTkKKyEKKyEgTWFrZSBzdXJlIC1mbm8tZGVjIGRp c2FibGVzIC1mZGVjIGFzIHdpdGggZGVjX2V4cF8yLgorIQorCitpbmNsdWRl ICdkZWNfZXhwXzIuZjkwJworCishIHsgZGctZXJyb3IgIk1pc3NpbmcgZXhw b25lbnQiICIiIHsgdGFyZ2V0ICotKi0qIH0gOSB9CishIHsgZGctZXJyb3Ig Ik1pc3NpbmcgZXhwb25lbnQiICIiIHsgdGFyZ2V0ICotKi0qIH0gMTEgfQpk aWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfZXhw XzUuZjkwIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfZXhwXzUu ZjkwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5m YWYzYTliMzA2YgotLS0gL2Rldi9udWxsCisrKyBiL2djYy90ZXN0c3VpdGUv Z2ZvcnRyYW4uZGcvZGVjX2V4cF81LmY5MApAQCAtMCwwICsxLDExIEBACish IHsgZGctZG8gcnVuICJ4ZmFpbCAqLSotKiIgfQorISB7IGRnLW9wdGlvbnMg Ii1mZGVjIC1mbm8tZGVjIiB9CishCishIFBSIGZvcnRyYW4vODc5MTkKKyEK KyEgTWFrZSBzdXJlIC1mbm8tZGVjIGRpc2FibGVzIC1mZGVjIGFzIHdpdGgg ZGVjX2V4cF8zLgorIQorCitpbmNsdWRlICdkZWNfZXhwXzMuZjkwJworCish IHsgWEZBSUwgIkJhZCByZWFsIG51bWJlciIgIiIgeyB0YXJnZXQgKi0qLSog fSAxMyB9CmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRn L2RlY19pb183LmY5MCBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVj X2lvXzcuZjkwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw MDAwLi40YTkzMWMxNWZlNwotLS0gL2Rldi9udWxsCisrKyBiL2djYy90ZXN0 c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX2lvXzcuZjkwCkBAIC0wLDAgKzEsMjAg QEAKKyEgeyBkZy1kbyBjb21waWxlIH0KKyEgeyBkZy1vcHRpb25zICItZmRl YyAtZm5vLWRlYyIgfQorIQorISBQUiBmb3J0cmFuLzg3OTE5CishCishIE1h a2Ugc3VyZSAtZm5vLWRlYyByZWplY3RzIC1mZGVjIEkvTyBzcGVjaWZpZXJz IGFzIHdpdGggZGVjX2lvXzEuCishCisKK2luY2x1ZGUgJ2RlY19pb18xLmY5 MCcKKworISB7IGRnLWVycm9yICJpcyBhIERFQyBleHRlbnNpb24iICIiIHsg dGFyZ2V0ICotKi0qIH0gMTIgfQorISB7IGRnLWVycm9yICJpcyBhIERFQyBl eHRlbnNpb24iICIiIHsgdGFyZ2V0ICotKi0qIH0gMjQgfQorISB7IGRnLWVy cm9yICJpcyBhIERFQyBleHRlbnNpb24iICIiIHsgdGFyZ2V0ICotKi0qIH0g NTggfQorISB7IGRnLWVycm9yICJpcyBhIERFQyBleHRlbnNpb24iICIiIHsg dGFyZ2V0ICotKi0qIH0gNjQgfQorISB7IGRnLWVycm9yICJpcyBhIERFQyBl eHRlbnNpb24iICIiIHsgdGFyZ2V0ICotKi0qIH0gNjggfQorISB7IGRnLWVy cm9yICJpcyBhIERFQyBleHRlbnNpb24iICIiIHsgdGFyZ2V0ICotKi0qIH0g NzQgfQorISB7IGRnLWVycm9yICJpcyBhIERFQyBleHRlbnNpb24iICIiIHsg dGFyZ2V0ICotKi0qIH0gNzggfQorISB7IGRnLWVycm9yICJpcyBhIERFQyBl eHRlbnNpb24iICIiIHsgdGFyZ2V0ICotKi0qIH0gODQgfQorISB7IGRnLWVy cm9yICJpcyBhIERFQyBleHRlbnNpb24iICIiIHsgdGFyZ2V0ICotKi0qIH0g OTAgfQorISB7IGRnLWVycm9yICJpcyBhIERFQyBleHRlbnNpb24iICIiIHsg dGFyZ2V0ICotKi0qIH0gOTYgfQpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0 ZS9nZm9ydHJhbi5kZy9kZWNfc3RydWN0dXJlXzI0LmY5MCBiL2djYy90ZXN0 c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX3N0cnVjdHVyZV8yNC5mOTAKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjAyODQyYjMxNWRj Ci0tLSAvZGV2L251bGwKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5k Zy9kZWNfc3RydWN0dXJlXzI0LmY5MApAQCAtMCwwICsxLDMyIEBACishIHsg ZGctZG8gY29tcGlsZSB9CishCishIFBSIGZvcnRyYW4vODc5MTkKKyEKKyEg U2hvdWxkIGZhaWwgdG8gY29tcGlsZSB3aXRob3V0IHRoZSAtZmRlYyBvciAt ZmRlYy1zdHJ1Y3R1cmUgb3B0aW9ucy4KKyEKKyEgQ29udHJpYnV0ZWQgYnkg TWFyayBFZ2dsZXN0b24gPG1hcmsuZWdnbGVzdG9uQGNvZGV0aGluay5jb20+ CisKK2luY2x1ZGUgJ2RlY19zdHJ1Y3R1cmVfMS5mOTAnCisKKyEgeyBkZy1l cnJvciAiLWZkZWMtc3RydWN0dXJlIiAiICIgeyB0YXJnZXQgKi0qLSogfSAx NCB9CishIHsgZGctZXJyb3IgIkV4cGVjdGluZyBFTkQgUFJPR1JBTSIgIiAi IHsgdGFyZ2V0ICotKi0qIH0gMTkgfQorISB7IGRnLWVycm9yICItZmRlYy1z dHJ1Y3R1cmUiICIgIiB7IHRhcmdldCAqLSotKiB9IDIxIH0KKyEgeyBkZy1l cnJvciAiLWZkZWMtc3RydWN0dXJlIiAiICIgeyB0YXJnZXQgKi0qLSogfSAy MiB9CishIHsgZGctZXJyb3IgIlVuY2xhc3NpZmlhYmxlIHN0YXRlbWVudCIg IiAiIHsgdGFyZ2V0ICotKi0qIH0gMjUgfQorISB7IGRnLWVycm9yICJVbmNs YXNzaWZpYWJsZSBzdGF0ZW1lbnQiICIgIiB7IHRhcmdldCAqLSotKiB9IDI2 IH0KKyEgeyBkZy1lcnJvciAiVW5jbGFzc2lmaWFibGUgc3RhdGVtZW50IiAi ICIgeyB0YXJnZXQgKi0qLSogfSAyNyB9CishIHsgZGctZXJyb3IgIlVuY2xh c3NpZmlhYmxlIHN0YXRlbWVudCIgIiAiIHsgdGFyZ2V0ICotKi0qIH0gMjgg fQorISB7IGRnLWVycm9yICJpcyBub3QgYSB2YXJpYWJsZSIgIiAiIHsgdGFy Z2V0ICotKi0qIH0gMzAgfQorISB7IGRnLWVycm9yICJCYWQgY2hhcmFjdGVy IiAiICIgeyB0YXJnZXQgKi0qLSogfSAzMiB9CishIHsgZGctZXJyb3IgIkV4 cGVjdGluZyBFTkQgUFJPR1JBTSIgIiAiIHsgdGFyZ2V0ICotKi0qIH0gMzQg fQorISB7IGRnLWVycm9yICJCYWQgY2hhcmFjdGVyIiAiICIgeyB0YXJnZXQg Ki0qLSogfSAzNiB9CishIHsgZGctZXJyb3IgIkV4cGVjdGluZyBFTkQgUFJP R1JBTSIgIiAiIHsgdGFyZ2V0ICotKi0qIH0gMzggfQorISB7IGRnLWVycm9y ICJCYWQgY2hhcmFjdGVyIiAiICIgeyB0YXJnZXQgKi0qLSogfSA0MCB9Cish IHsgZGctZXJyb3IgIkV4cGVjdGluZyBFTkQgUFJPR1JBTSIgIiAiIHsgdGFy Z2V0ICotKi0qIH0gNDIgfQorISB7IGRnLWVycm9yICJCYWQgY2hhcmFjdGVy IiAiICIgeyB0YXJnZXQgKi0qLSogfSA0NCB9CishIHsgZGctZXJyb3IgIkV4 cGVjdGluZyBFTkQgUFJPR1JBTSIgIiAiIHsgdGFyZ2V0ICotKi0qIH0gNDYg fQorISB7IGRnLWVycm9yICJCYWQgY2hhcmFjdGVyIiAiICIgeyB0YXJnZXQg Ki0qLSogfSA0OCB9CishIHsgZGctZXJyb3IgIkV4cGVjdGluZyBFTkQgUFJP R1JBTSIgIiAiIHsgdGFyZ2V0ICotKi0qIH0gNTAgfQorISB7IGRnLWVycm9y ICJCYWQgY2hhcmFjdGVyIiAiICIgeyB0YXJnZXQgKi0qLSogfSA1MiB9Cish IHsgZGctZXJyb3IgIkV4cGVjdGluZyBFTkQgUFJPR1JBTSIgIiAiIHsgdGFy Z2V0ICotKi0qIH0gNTQgfQorISB7IGRnLWVycm9yICJmdW5jdGlvbiByZXN1 bHQiICIgIiB7IHRhcmdldCAqLSotKiB9IDI5IH0KZGlmZiAtLWdpdCBhL2dj Yy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX3N0cnVjdHVyZV8yNS5mOTAg Yi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2RlY19zdHJ1Y3R1cmVfMjUu ZjkwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5h NjRkODVhODhhNAotLS0gL2Rldi9udWxsCisrKyBiL2djYy90ZXN0c3VpdGUv Z2ZvcnRyYW4uZGcvZGVjX3N0cnVjdHVyZV8yNS5mOTAKQEAgLTAsMCArMSwx MSBAQAorISB7IGRnLWRvIHJ1biB9CishIHsgZGctb3B0aW9ucyAiLWZkZWMi IH0KKyEKKyEgUFIgZm9ydHJhbi84NzkxOQorIQorISBTaG91bGQgY29tcGls ZSBhbmQgcnVuIHdpdGggdGhlIC1mZGVjIG9wdGlvbi4KKyEKKyEgQ29udHJp YnV0ZWQgYnkgTWFyayBFZ2dsZXN0b24gPG1hcmsuZWdnbGVzdG9uQGNvZGV0 aGluay5jb20+CishCisKK2luY2x1ZGUgJ2RlY19zdHJ1Y3R1cmVfMS5mOTAn CmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2RlY19z dHJ1Y3R1cmVfMjYuZjkwIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9k ZWNfc3RydWN0dXJlXzI2LmY5MApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAwMDAwMDAwMDAwMC4uNzgyOTEwM2I5OTUKLS0tIC9kZXYvbnVsbAorKysg Yi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRnL2RlY19zdHJ1Y3R1cmVfMjYu ZjkwCkBAIC0wLDAgKzEsMzQgQEAKKyEgeyBkZy1kbyBjb21waWxlIH0KKyEg eyBkZy1vcHRpb25zICItZmRlYyAtZm5vLWRlYy1zdHJ1Y3R1cmUiIH0KKyEK KyEgUFIgZm9ydHJhbi84NzkxOQorIQorISBTaG91bGQgZmFpbCB0byBjb21w aWxlIHdpdGggLWZkZWMgYW5kIC1mbm8tZGVjLXN0cnVjdHVyZS4KKyEKKyEg Q29udHJpYnV0ZWQgYnkgTWFyayBFZ2dsZXN0b24gPG1hcmsuZWdnbGVzdG9u QGNvZGV0aGluay5jb20+CishCisKK2luY2x1ZGUgJ2RlY19zdHJ1Y3R1cmVf MS5mOTAnCisKKyEgeyBkZy1lcnJvciAiLWZkZWMtc3RydWN0dXJlIiAiICIg eyB0YXJnZXQgKi0qLSogfSAxNCB9CishIHsgZGctZXJyb3IgIkV4cGVjdGlu ZyBFTkQgUFJPR1JBTSIgIiAiIHsgdGFyZ2V0ICotKi0qIH0gMTkgfQorISB7 IGRnLWVycm9yICItZmRlYy1zdHJ1Y3R1cmUiICIgIiB7IHRhcmdldCAqLSot KiB9IDIxIH0KKyEgeyBkZy1lcnJvciAiLWZkZWMtc3RydWN0dXJlIiAiICIg eyB0YXJnZXQgKi0qLSogfSAyMiB9CishIHsgZGctZXJyb3IgIlVuY2xhc3Np ZmlhYmxlIHN0YXRlbWVudCIgIiAiIHsgdGFyZ2V0ICotKi0qIH0gMjUgfQor ISB7IGRnLWVycm9yICJVbmNsYXNzaWZpYWJsZSBzdGF0ZW1lbnQiICIgIiB7 IHRhcmdldCAqLSotKiB9IDI2IH0KKyEgeyBkZy1lcnJvciAiVW5jbGFzc2lm aWFibGUgc3RhdGVtZW50IiAiICIgeyB0YXJnZXQgKi0qLSogfSAyNyB9Cish IHsgZGctZXJyb3IgIlVuY2xhc3NpZmlhYmxlIHN0YXRlbWVudCIgIiAiIHsg dGFyZ2V0ICotKi0qIH0gMjggfQorISB7IGRnLWVycm9yICJpcyBub3QgYSB2 YXJpYWJsZSIgIiAiIHsgdGFyZ2V0ICotKi0qIH0gMzAgfQorISB7IGRnLWVy cm9yICJCYWQgY2hhcmFjdGVyIiAiICIgeyB0YXJnZXQgKi0qLSogfSAzMiB9 CishIHsgZGctZXJyb3IgIkV4cGVjdGluZyBFTkQgUFJPR1JBTSIgIiAiIHsg dGFyZ2V0ICotKi0qIH0gMzQgfQorISB7IGRnLWVycm9yICJCYWQgY2hhcmFj dGVyIiAiICIgeyB0YXJnZXQgKi0qLSogfSAzNiB9CishIHsgZGctZXJyb3Ig IkV4cGVjdGluZyBFTkQgUFJPR1JBTSIgIiAiIHsgdGFyZ2V0ICotKi0qIH0g MzggfQorISB7IGRnLWVycm9yICJCYWQgY2hhcmFjdGVyIiAiICIgeyB0YXJn ZXQgKi0qLSogfSA0MCB9CishIHsgZGctZXJyb3IgIkV4cGVjdGluZyBFTkQg UFJPR1JBTSIgIiAiIHsgdGFyZ2V0ICotKi0qIH0gNDIgfQorISB7IGRnLWVy cm9yICJCYWQgY2hhcmFjdGVyIiAiICIgeyB0YXJnZXQgKi0qLSogfSA0NCB9 CishIHsgZGctZXJyb3IgIkV4cGVjdGluZyBFTkQgUFJPR1JBTSIgIiAiIHsg dGFyZ2V0ICotKi0qIH0gNDYgfQorISB7IGRnLWVycm9yICJCYWQgY2hhcmFj dGVyIiAiICIgeyB0YXJnZXQgKi0qLSogfSA0OCB9CishIHsgZGctZXJyb3Ig IkV4cGVjdGluZyBFTkQgUFJPR1JBTSIgIiAiIHsgdGFyZ2V0ICotKi0qIH0g NTAgfQorISB7IGRnLWVycm9yICJCYWQgY2hhcmFjdGVyIiAiICIgeyB0YXJn ZXQgKi0qLSogfSA1MiB9CishIHsgZGctZXJyb3IgIkV4cGVjdGluZyBFTkQg UFJPR1JBTSIgIiAiIHsgdGFyZ2V0ICotKi0qIH0gNTQgfQorISB7IGRnLWVy cm9yICJmdW5jdGlvbiByZXN1bHQiICIgIiB7IHRhcmdldCAqLSotKiB9IDI5 IH0KZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVj X3N0cnVjdHVyZV8yNy5mOTAgYi9nY2MvdGVzdHN1aXRlL2dmb3J0cmFuLmRn L2RlY19zdHJ1Y3R1cmVfMjcuZjkwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwLi4xMjU3MzY1ZGViOAotLS0gL2Rldi9udWxsCisr KyBiL2djYy90ZXN0c3VpdGUvZ2ZvcnRyYW4uZGcvZGVjX3N0cnVjdHVyZV8y Ny5mOTAKQEAgLTAsMCArMSwzNCBAQAorISB7IGRnLWRvIGNvbXBpbGUgfQor ISB7IGRnLW9wdGlvbnMgIi1mZGVjLXN0cnVjdHVyZSAtZm5vLWRlYy1zdHJ1 Y3R1cmUiIH0KKyEKKyEgUFIgZm9ydHJhbi84NzkxOQorIQorISBTaG91bGQg ZmFpbCB0byBjb21waWxlIHdpdGggLWZkZWMtc3RydWN0dXJlIGFuZCAtZm5v LWRlYy1zdHJ1Y3R1cmUuCishCishIENvbnRyaWJ1dGVkIGJ5IE1hcmsgRWdn bGVzdG9uIDxtYXJrLmVnZ2xlc3RvbkBjb2RldGhpbmsuY29tPgorIQorCitp bmNsdWRlICdkZWNfc3RydWN0dXJlXzEuZjkwJworCishIHsgZGctZXJyb3Ig Ii1mZGVjLXN0cnVjdHVyZSIgIiAiIHsgdGFyZ2V0ICotKi0qIH0gMTQgfQor ISB7IGRnLWVycm9yICJFeHBlY3RpbmcgRU5EIFBST0dSQU0iICIgIiB7IHRh cmdldCAqLSotKiB9IDE5IH0KKyEgeyBkZy1lcnJvciAiLWZkZWMtc3RydWN0 dXJlIiAiICIgeyB0YXJnZXQgKi0qLSogfSAyMSB9CishIHsgZGctZXJyb3Ig Ii1mZGVjLXN0cnVjdHVyZSIgIiAiIHsgdGFyZ2V0ICotKi0qIH0gMjIgfQor ISB7IGRnLWVycm9yICJVbmNsYXNzaWZpYWJsZSBzdGF0ZW1lbnQiICIgIiB7 IHRhcmdldCAqLSotKiB9IDI1IH0KKyEgeyBkZy1lcnJvciAiVW5jbGFzc2lm aWFibGUgc3RhdGVtZW50IiAiICIgeyB0YXJnZXQgKi0qLSogfSAyNiB9Cish IHsgZGctZXJyb3IgIlVuY2xhc3NpZmlhYmxlIHN0YXRlbWVudCIgIiAiIHsg dGFyZ2V0ICotKi0qIH0gMjcgfQorISB7IGRnLWVycm9yICJVbmNsYXNzaWZp YWJsZSBzdGF0ZW1lbnQiICIgIiB7IHRhcmdldCAqLSotKiB9IDI4IH0KKyEg eyBkZy1lcnJvciAiaXMgbm90IGEgdmFyaWFibGUiICIgIiB7IHRhcmdldCAq LSotKiB9IDMwIH0KKyEgeyBkZy1lcnJvciAiQmFkIGNoYXJhY3RlciIgIiAi IHsgdGFyZ2V0ICotKi0qIH0gMzIgfQorISB7IGRnLWVycm9yICJFeHBlY3Rp bmcgRU5EIFBST0dSQU0iICIgIiB7IHRhcmdldCAqLSotKiB9IDM0IH0KKyEg eyBkZy1lcnJvciAiQmFkIGNoYXJhY3RlciIgIiAiIHsgdGFyZ2V0ICotKi0q IH0gMzYgfQorISB7IGRnLWVycm9yICJFeHBlY3RpbmcgRU5EIFBST0dSQU0i ICIgIiB7IHRhcmdldCAqLSotKiB9IDM4IH0KKyEgeyBkZy1lcnJvciAiQmFk IGNoYXJhY3RlciIgIiAiIHsgdGFyZ2V0ICotKi0qIH0gNDAgfQorISB7IGRn LWVycm9yICJFeHBlY3RpbmcgRU5EIFBST0dSQU0iICIgIiB7IHRhcmdldCAq LSotKiB9IDQyIH0KKyEgeyBkZy1lcnJvciAiQmFkIGNoYXJhY3RlciIgIiAi IHsgdGFyZ2V0ICotKi0qIH0gNDQgfQorISB7IGRnLWVycm9yICJFeHBlY3Rp bmcgRU5EIFBST0dSQU0iICIgIiB7IHRhcmdldCAqLSotKiB9IDQ2IH0KKyEg eyBkZy1lcnJvciAiQmFkIGNoYXJhY3RlciIgIiAiIHsgdGFyZ2V0ICotKi0q IH0gNDggfQorISB7IGRnLWVycm9yICJFeHBlY3RpbmcgRU5EIFBST0dSQU0i ICIgIiB7IHRhcmdldCAqLSotKiB9IDUwIH0KKyEgeyBkZy1lcnJvciAiQmFk IGNoYXJhY3RlciIgIiAiIHsgdGFyZ2V0ICotKi0qIH0gNTIgfQorISB7IGRn LWVycm9yICJFeHBlY3RpbmcgRU5EIFBST0dSQU0iICIgIiB7IHRhcmdldCAq LSotKiB9IDU0IH0KKyEgeyBkZy1lcnJvciAiZnVuY3Rpb24gcmVzdWx0IiAi ICIgeyB0YXJnZXQgKi0qLSogfSAyOSB9CmRpZmYgLS1naXQgYS9nY2MvdGVz dHN1aXRlL2dmb3J0cmFuLmRnL2RlY190eXBlX3ByaW50XzMuZjkwIGIvZ2Nj L3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9kZWNfdHlwZV9wcmludF8zLmY5MApu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uZjc2NmJk ZjAwMjIKLS0tIC9kZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1aXRlL2dmb3J0 cmFuLmRnL2RlY190eXBlX3ByaW50XzMuZjkwCkBAIC0wLDAgKzEsMjEgQEAK KyEgeyBkZy1kbyBjb21waWxlIH0KKyEgeyBkZy1vcHRpb25zICItZmRlYyAt Zm5vLWRlYyIgfQorIQorISBQUiBmb3J0cmFuLzg3OTE5CishCishIEVuc3Vy ZSB0aGF0IC1mbm8tZGVjIGRpc2FibGVzIHRoZSB1c2FnZSBvZiBUWVBFIGFz IGFuIGFsaWFzIGZvciBQUklOVC4KKyEKKworaW5jbHVkZSAnZGVjX3R5cGVf cHJpbnQuZjkwJworCishIHsgZGctZXJyb3IgIkludmFsaWQgY2hhcmFjdGVy IGluIG5hbWUiICIiIHsgdGFyZ2V0ICotKi0qIH0gNTIgfQorISB7IGRnLWVy cm9yICJJbnZhbGlkIGNoYXJhY3RlciBpbiBuYW1lIiAiIiB7IHRhcmdldCAq LSotKiB9IDUzIH0KKyEgeyBkZy1lcnJvciAiSW52YWxpZCBjaGFyYWN0ZXIg aW4gbmFtZSIgIiIgeyB0YXJnZXQgKi0qLSogfSA1NCB9CishIHsgZGctZXJy b3IgIkludmFsaWQgY2hhcmFjdGVyIGluIG5hbWUiICIiIHsgdGFyZ2V0ICot Ki0qIH0gNTUgfQorISB7IGRnLWVycm9yICJJbnZhbGlkIGNoYXJhY3RlciBp biBuYW1lIiAiIiB7IHRhcmdldCAqLSotKiB9IDU2IH0KKyEgeyBkZy1lcnJv ciAiSW52YWxpZCBjaGFyYWN0ZXIgaW4gbmFtZSIgIiIgeyB0YXJnZXQgKi0q LSogfSA1NyB9CishIHsgZGctZXJyb3IgIkludmFsaWQgY2hhcmFjdGVyIGlu IG5hbWUiICIiIHsgdGFyZ2V0ICotKi0qIH0gNTggfQorISB7IGRnLWVycm9y ICJVbmNsYXNzaWZpYWJsZSBzdGF0ZW1lbnQiICIiIHsgdGFyZ2V0ICotKi0q IH0gNTkgfQorISB7IGRnLWVycm9yICJjb25mbGljdHMgd2l0aCBQUk9DRURV UkUiICIiIHsgdGFyZ2V0ICotKi0qIH0gNjAgfQorISB7IGRnLWVycm9yICJD YW5ub3QgYXNzaWduIHRvIGEgbmFtZWQgY29uc3RhbnQiICIiIHsgdGFyZ2V0 ICotKi0qIH0gODAgfQorCmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dm b3J0cmFuLmRnL2luaXRfZmxhZ18yMC5mOTAgYi9nY2MvdGVzdHN1aXRlL2dm b3J0cmFuLmRnL2luaXRfZmxhZ18yMC5mOTAKbmV3IGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggMDAwMDAwMDAwMDAuLjZmMTVjMWFjZTBkCi0tLSAvZGV2L251 bGwKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9ydHJhbi5kZy9pbml0X2ZsYWdf MjAuZjkwCkBAIC0wLDAgKzEsMTUgQEAKKyEgeyBkZy1kbyBjb21waWxlIH0K KyEgeyBkZy1vcHRpb25zICItZmJhY2tzbGFzaCAtZmluaXQtbG9jYWwtemVy byAtZm5vLWluaXQtbG9jYWwtemVybyAtZmR1bXAtdHJlZS1vcmlnaW5hbCIg fQorIQorISBQUiBmb3J0cmFuLzg3OTE5CishCishIE1ha2Ugc3VyZSAtZm5v LWluaXQtbG9jYWwtemVybyBkaXNhYmxlcyAtZmluaXQtbG9jYWwtemVyby4K KyEKKworaW5jbHVkZSAnaW5pdF9mbGFnXzEuZjkwJworCishIE1ha2Ugc3Vy ZSBubyBpbml0aWFsaXphdGlvbiBjb2RlIGlzIGdlbmVyYXRlZC4KKyEgeyBk Zy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICJyXFsxLTRdICo9ICpc WzBce10iIDAgIm9yaWdpbmFsIiB9IH0KKyEgeyBkZy1maW5hbCB7IHNjYW4t dHJlZS1kdW1wLXRpbWVzICJsXFsxMl0gKj0gKlxbMFx7XSIgMCAib3JpZ2lu YWwiIH0gfQorISB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMg ImlcWzEtNF0gKj0gKlxbMFx7XSIgMCAib3JpZ2luYWwiIH0gfQorISB7IGRn LWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIm1lbW1vdmUgKlxbKF1c W14sXSpjXFsxLTRdIiAwICJvcmlnaW5hbCIgfSB9Ci0tIAoyLjEyLjIKCg== --00000000000023c07e057a7d8da9--