Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rUVjj-00BMOI-JJ for pgsql-hackers@arkaria.postgresql.org; Mon, 29 Jan 2024 17:48:00 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1rUVji-00GE70-IK for pgsql-hackers@arkaria.postgresql.org; Mon, 29 Jan 2024 17:47:58 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rUVjh-00GE6p-S9 for pgsql-hackers@lists.postgresql.org; Mon, 29 Jan 2024 17:47:58 +0000 Received: from mail-lj1-x235.google.com ([2a00:1450:4864:20::235]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1rUVje-0040Xk-L6 for pgsql-hackers@postgresql.org; Mon, 29 Jan 2024 17:47:56 +0000 Received: by mail-lj1-x235.google.com with SMTP id 38308e7fff4ca-2cf591b5db7so24299351fa.2 for ; Mon, 29 Jan 2024 09:47:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706550473; x=1707155273; darn=postgresql.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=oh+wa0+ViTCz+BS3xNUCV3Bwm863gz5idU+N1QJZP9s=; b=Tktay9TEXiYE3KKtVbQ+F4THI6d1XNG3wjn91z7RkBoHDiw2RS9zjJTGPugeRRAE0Z GrHtRzex9dNz1bsi7kns9hUKeuzR6YuLP/Q7OPCTIEuoIiGZzLz7Zc6HvbEjvIw1FBcQ OTkCKYl6v7Bd+cQYHKF41d2RN9bEUpDCnDTIXTVTsAyDZBUeJua262vpIj6hr/IM24NX +KtmuCq3zDxFd86wzaz0TiU+Vc4NqX9dUkXJf64nGdn+kE5aIdYPAmcN+P1TZfV7EXJR cq0WnYyVPWIReZc+LnXRHJLRaoZpu6l2YgB2j2ouBNNh5Zh7UMpCIY4JXDabg/fOQHXm /JeQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706550473; x=1707155273; 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=oh+wa0+ViTCz+BS3xNUCV3Bwm863gz5idU+N1QJZP9s=; b=sNGdGrYJ1apPL1AiU76CFn0PWVxZzLMS4UQaRGUbZMunB6PRjzPYBW2fYJO8NbR+Ae DruDx7dh62OlW88+fHfG3UcHCGYEI5s6E9hCghHIyj3Pw2dMNSMaD55O2WB0V4dfeEG0 Kvdt71DhYrOQ7eIXMp0FuUxDYWPaRgyvX4GmT32Qr2pRrnUvmMITqkgkeHH0JRvlQc4A pZGNvzHtQHfKWK9pbwDPA9ZNTj/O9js04py6zKjQ95Jn7omnrEhNAob+o0CMEC3BUlSo +ZrqoKkw8sua0sVINBIvuglkrDsSXHQWP1ZerGxJxoQRbmjqU2Q0RG333HMsWdoV1nJL nNLQ== X-Gm-Message-State: AOJu0YxAPj7TNQec4urs5MNT9/SV+8t1qpQfJQzNva/B+5p6y6uxMqWf g7F5HSKNyFdQpNTb2odFjCQjCqCcpIeWynaofp9I/5/RV4BTzQe4W7VhyfA4eTZe3buZR2fMK2k 1b4izckClV0U29O6nz4DmYat51iw= X-Google-Smtp-Source: AGHT+IH3vXo/0nUd4PdHOtDldRDwN19/p37A6TPwv6xW5Wi8nKyJbXWAsj3ORigGn09aUbVXUsJlmFOpH5vdUJfWDCA= X-Received: by 2002:a2e:9ad8:0:b0:2cd:46c1:fd97 with SMTP id p24-20020a2e9ad8000000b002cd46c1fd97mr4299157ljj.36.1706550472684; Mon, 29 Jan 2024 09:47:52 -0800 (PST) MIME-Version: 1.0 References: <149ff9264db27cdf724b65709fbbaee4bf316835.camel@j-davis.com> <830a2bc6cbbb2e6e01c6c0d9f31f320822e10603.camel@j-davis.com> <433d0845248e86c0317d9d396926182cfe157340.camel@j-davis.com> <05ae37abb207cd6bf6b126780024692d91402b0b.camel@j-davis.com> <93392ffa941ab0d436e19e0ab5d04d0e42c02d3f.camel@j-davis.com> <26be917cb07b6aa3ef5dd15f6b59d1b375ece6e8.camel@j-davis.com> <55201bd916e748acfc754c8f95880dae8e4e5ed0.camel@j-davis.com> <2a89b14a2b1622bffb8b137ca1f9ab7866f2d2b9.camel@j-davis.com> <61831790a0a937038f78ce09f8dd4cef7de7456a.camel@j-davis.com> <0910b47040406c1d24ec0150dafb5bae6b910ed7.camel@j-davis.com> <7338f22c4534322a08ab6ce9f879e2e308eb5e5d.camel@j-davis.com> In-Reply-To: From: Bharath Rupireddy Date: Mon, 29 Jan 2024 23:17:40 +0530 Message-ID: Subject: Re: [17] CREATE SUBSCRIPTION ... SERVER To: Jeff Davis Cc: Ashutosh Bapat , Joe Conway , pgsql-hackers@postgresql.org Content-Type: multipart/mixed; boundary="000000000000b74a310610193e4a" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000b74a310610193e4a Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Jan 29, 2024 at 11:11=E2=80=AFPM Bharath Rupireddy wrote: > > On Wed, Jan 24, 2024 at 7:15=E2=80=AFAM Jeff Davis wr= ote: > > > > On Tue, 2024-01-23 at 15:21 +0530, Ashutosh Bapat wrote: > > > I am with the prefix. The changes it causes make review difficult. If > > > you can separate those changes into a patch that will help. > > > > I ended up just removing the dummy FDW. Real users are likely to want > > to use postgres_fdw, and if not, it's easy enough to issue a CREATE > > FOREIGN DATA WRAPPER. Or I can bring it back if desired. > > > > Updated patch set (patches are renumbered): > > > > * removed dummy FDW and test churn > > * made a new pg_connection_validator function which leaves > > postgresql_fdw_validator in place. (I didn't document the new function > > -- should I?) > > * included your tests improvements > > * removed dependency from the subscription to the user mapping -- we > > don't depend on the user mapping for foreign tables, so we shouldn't > > depend on them here. Of course a change to a user mapping still > > invalidates the subscription worker and it will restart. > > * general cleanup > > > > Overall it's simpler and hopefully easier to review. The patch to > > introduce the pg_create_connection role could use some more discussion, > > but I believe 0001 and 0002 are nearly ready. > > Thanks for the patches. I have some comments on v9-0001: > > 1. > +SELECT pg_conninfo_from_server('testserver1', CURRENT_USER, false); > + pg_conninfo_from_server > +----------------------------------- > + user =3D 'value' password =3D 'value' > > Isn't this function an unsafe one as it shows the password? I don't > see its access being revoked from the public. If it seems important > for one to understand how the server forms a connection string by > gathering bits and pieces from foreign server and user mapping, why > can't it look for the password in the result string and mask it before > returning it as output? > > 2. > + */ > +typedef const struct ConnectionOption *(*walrcv_conninfo_options_fn) (vo= id); > + > > struct here is unnecessary as the structure definition of > ConnectionOption is typedef-ed already. > > 3. > + OPTIONS (user 'publicuser', password $pwd$'\"$# secret'$pwd$); > > Is pwd here present working directory name? If yes, isn't it going to > be different on BF animals making test output unstable? > > 4. > -struct ConnectionOption > +struct TestConnectionOption > { > > How about say PgFdwConnectionOption instead of TestConnectionOption? > > 5. Comment #4 makes me think - why not get rid of > postgresql_fdw_validator altogether and use pg_connection_validator > instead for testing purposes? The tests don't complain much, see the > patch Remove-deprecated-postgresql_fdw_validator.diff created on top > of v9-0001. > > I'll continue to review the other patches. I forgot to attach the diff patch as specified in comment #5, please find the attached. Sorry for the noise. --=20 Bharath Rupireddy PostgreSQL Contributors Team RDS Open Source Databases Amazon Web Services: https://aws.amazon.com --000000000000b74a310610193e4a Content-Type: application/octet-stream; name="Remove-deprecated-postgresql_fdw_validator.diff" Content-Disposition: attachment; filename="Remove-deprecated-postgresql_fdw_validator.diff" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lrz82o8t0 RnJvbSBmYzIwNzk5ODE4NjJiMGI0NTI1OWQ1YzllMjc1NDdmNTcxYWY0NzYyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBCaGFyYXRoIFJ1cGlyZWRkeSA8YmhhcmF0aC5ydXBpcmVkZHlm b3Jwb3N0Z3Jlc0BnbWFpbC5jb20+CkRhdGU6IE1vbiwgMjkgSmFuIDIwMjQgMTc6MzQ6MzUgKzAw MDAKU3ViamVjdDogW1BBVENIXSBSZW1vdmUgZGVwcmVjYXRlZCBwb3N0Z3Jlc3FsX2Zkd192YWxp ZGF0b3IKCi0tLQogc3JjL2JhY2tlbmQvZm9yZWlnbi9mb3JlaWduLmMgICAgICAgICAgICAgIHwg MTEzIC0tLS0tLS0tLS0tLS0KIHNyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQgICAgICAg ICAgICB8ICAgNCAtCiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2NyZWF0ZV9hbS5vdXQgICAg fCAgIDIgKy0KIHNyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvZm9yZWlnbl9kYXRhLm91dCB8IDE3 NCArKysrKysrKysrLS0tLS0tLS0tLS0KIHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2NyZWF0ZV9hbS5z cWwgICAgICAgICB8ICAgMiArLQogc3JjL3Rlc3QvcmVncmVzcy9zcWwvZm9yZWlnbl9kYXRhLnNx bCAgICAgIHwgICA2ICstCiA2IGZpbGVzIGNoYW5nZWQsIDkyIGluc2VydGlvbnMoKyksIDIwOSBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9mb3JlaWduL2ZvcmVpZ24uYyBi L3NyYy9iYWNrZW5kL2ZvcmVpZ24vZm9yZWlnbi5jCmluZGV4IGI0NjM1ZDZlYmEuLmQ4M2U4NGMw NzAgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2ZvcmVpZ24vZm9yZWlnbi5jCisrKyBiL3NyYy9i YWNrZW5kL2ZvcmVpZ24vZm9yZWlnbi5jCkBAIC03ODYsMTE5ICs3ODYsNiBAQCBwZ19jb25uZWN0 aW9uX3ZhbGlkYXRvcihQR19GVU5DVElPTl9BUkdTKQogfQogCiAKLS8qCi0gKiBEZXNjcmliZXMg dGhlIHZhbGlkIG9wdGlvbnMgZm9yIHBvc3RncmVzcWwgRkRXLCBzZXJ2ZXIsIGFuZCB1c2VyIG1h cHBpbmcuCi0gKi8KLXN0cnVjdCBUZXN0Q29ubmVjdGlvbk9wdGlvbgotewotCWNvbnN0IGNoYXIg Km9wdG5hbWU7Ci0JT2lkCQkJb3B0Y29udGV4dDsJCS8qIE9pZCBvZiBjYXRhbG9nIGluIHdoaWNo IG9wdGlvbiBtYXkgYXBwZWFyICovCi19OwotCi0vKgotICogQ29waWVkIGZyb20gZmUtY29ubmVj dC5jIFBRY29ubmluZm9PcHRpb25zLgotICoKLSAqIFRoZSBsaXN0IGlzIHNtYWxsIC0gZG9uJ3Qg Ym90aGVyIHdpdGggYnNlYXJjaCBpZiBpdCBzdGF5cyBzby4KLSAqLwotc3RhdGljIGNvbnN0IHN0 cnVjdCBUZXN0Q29ubmVjdGlvbk9wdGlvbiB0ZXN0X2Nvbm5pbmZvX29wdGlvbnNbXSA9IHsKLQl7 ImF1dGh0eXBlIiwgRm9yZWlnblNlcnZlclJlbGF0aW9uSWR9LAotCXsic2VydmljZSIsIEZvcmVp Z25TZXJ2ZXJSZWxhdGlvbklkfSwKLQl7InVzZXIiLCBVc2VyTWFwcGluZ1JlbGF0aW9uSWR9LAot CXsicGFzc3dvcmQiLCBVc2VyTWFwcGluZ1JlbGF0aW9uSWR9LAotCXsiY29ubmVjdF90aW1lb3V0 IiwgRm9yZWlnblNlcnZlclJlbGF0aW9uSWR9LAotCXsiZGJuYW1lIiwgRm9yZWlnblNlcnZlclJl bGF0aW9uSWR9LAotCXsiaG9zdCIsIEZvcmVpZ25TZXJ2ZXJSZWxhdGlvbklkfSwKLQl7Imhvc3Rh ZGRyIiwgRm9yZWlnblNlcnZlclJlbGF0aW9uSWR9LAotCXsicG9ydCIsIEZvcmVpZ25TZXJ2ZXJS ZWxhdGlvbklkfSwKLQl7InR0eSIsIEZvcmVpZ25TZXJ2ZXJSZWxhdGlvbklkfSwKLQl7Im9wdGlv bnMiLCBGb3JlaWduU2VydmVyUmVsYXRpb25JZH0sCi0JeyJyZXF1aXJlc3NsIiwgRm9yZWlnblNl cnZlclJlbGF0aW9uSWR9LAotCXsic3NsbW9kZSIsIEZvcmVpZ25TZXJ2ZXJSZWxhdGlvbklkfSwK LQl7Imdzc2xpYiIsIEZvcmVpZ25TZXJ2ZXJSZWxhdGlvbklkfSwKLQl7Imdzc2RlbGVnYXRpb24i LCBGb3JlaWduU2VydmVyUmVsYXRpb25JZH0sCi0Je05VTEwsIEludmFsaWRPaWR9Ci19OwotCi0K LS8qCi0gKiBDaGVjayBpZiB0aGUgcHJvdmlkZWQgb3B0aW9uIGlzIG9uZSBvZiB0aGUgdGVzdCBj b25uaW5mbyBvcHRpb25zLgotICogY29udGV4dCBpcyB0aGUgT2lkIG9mIHRoZSBjYXRhbG9nIHRo ZSBvcHRpb24gY2FtZSBmcm9tLCBvciAwIGlmIHdlCi0gKiBkb24ndCBjYXJlLgotICovCi1zdGF0 aWMgYm9vbAotaXNfdGVzdF9jb25uaW5mb19vcHRpb24oY29uc3QgY2hhciAqb3B0aW9uLCBPaWQg Y29udGV4dCkKLXsKLQljb25zdCBzdHJ1Y3QgVGVzdENvbm5lY3Rpb25PcHRpb24gKm9wdDsKLQot CWZvciAob3B0ID0gdGVzdF9jb25uaW5mb19vcHRpb25zOyBvcHQtPm9wdG5hbWU7IG9wdCsrKQot CQlpZiAoY29udGV4dCA9PSBvcHQtPm9wdGNvbnRleHQgJiYgc3RyY21wKG9wdC0+b3B0bmFtZSwg b3B0aW9uKSA9PSAwKQotCQkJcmV0dXJuIHRydWU7Ci0JcmV0dXJuIGZhbHNlOwotfQotCi0KLS8q Ci0gKiBWYWxpZGF0ZSB0aGUgZ2VuZXJpYyBvcHRpb24gZ2l2ZW4gdG8gU0VSVkVSIG9yIFVTRVIg TUFQUElORy4KLSAqIFJhaXNlIGFuIEVSUk9SIGlmIHRoZSBvcHRpb24gb3IgaXRzIHZhbHVlIGlz IGNvbnNpZGVyZWQgaW52YWxpZC4KLSAqCi0gKiBWYWxpZCBzZXJ2ZXIgb3B0aW9ucyBhcmUgYWxs IGxpYnBxIGNvbm5pbmZvIG9wdGlvbnMgZXhjZXB0Ci0gKiB1c2VyIGFuZCBwYXNzd29yZCAtLSB0 aGVzZSBtYXkgb25seSBhcHBlYXIgaW4gVVNFUiBNQVBQSU5HIG9wdGlvbnMuCi0gKgotICogQ2F1 dGlvbjogdGhpcyBmdW5jdGlvbiBpcyBkZXByZWNhdGVkLCBhbmQgaXMgbm93IG1lYW50IG9ubHkg Zm9yIHRlc3RpbmcKLSAqIHB1cnBvc2VzLCBiZWNhdXNlIHRoZSBsaXN0IG9mIG9wdGlvbnMgaXQg a25vd3MgYWJvdXQgZG9lc24ndCBuZWNlc3NhcmlseQotICogc3F1YXJlIHdpdGggdGhvc2Uga25v d24gdG8gd2hpY2hldmVyIGxpYnBxIGluc3RhbmNlIHlvdSBtaWdodCBiZSB1c2luZy4KLSAqIElu cXVpcmUgb2YgbGlicHEgaXRzZWxmLCBpbnN0ZWFkLgotICovCi1EYXR1bQotcG9zdGdyZXNxbF9m ZHdfdmFsaWRhdG9yKFBHX0ZVTkNUSU9OX0FSR1MpCi17Ci0JTGlzdAkgICAqb3B0aW9uc19saXN0 ID0gdW50cmFuc2Zvcm1SZWxPcHRpb25zKFBHX0dFVEFSR19EQVRVTSgwKSk7Ci0JT2lkCQkJY2F0 YWxvZyA9IFBHX0dFVEFSR19PSUQoMSk7Ci0KLQlMaXN0Q2VsbCAgICpjZWxsOwotCi0JZm9yZWFj aChjZWxsLCBvcHRpb25zX2xpc3QpCi0JewotCQlEZWZFbGVtICAgICpkZWYgPSBsZmlyc3QoY2Vs bCk7Ci0KLQkJaWYgKCFpc190ZXN0X2Nvbm5pbmZvX29wdGlvbihkZWYtPmRlZm5hbWUsIGNhdGFs b2cpKQotCQl7Ci0JCQljb25zdCBzdHJ1Y3QgVGVzdENvbm5lY3Rpb25PcHRpb24gKm9wdDsKLQkJ CWNvbnN0IGNoYXIgKmNsb3Nlc3RfbWF0Y2g7Ci0JCQlDbG9zZXN0TWF0Y2hTdGF0ZSBtYXRjaF9z dGF0ZTsKLQkJCWJvb2wJCWhhc192YWxpZF9vcHRpb25zID0gZmFsc2U7Ci0KLQkJCS8qCi0JCQkg KiBVbmtub3duIG9wdGlvbiBzcGVjaWZpZWQsIGNvbXBsYWluIGFib3V0IGl0LiBQcm92aWRlIGEg aGludAotCQkJICogd2l0aCBhIHZhbGlkIG9wdGlvbiB0aGF0IGxvb2tzIHNpbWlsYXIsIGlmIHRo ZXJlIGlzIG9uZS4KLQkJCSAqLwotCQkJaW5pdENsb3Nlc3RNYXRjaCgmbWF0Y2hfc3RhdGUsIGRl Zi0+ZGVmbmFtZSwgNCk7Ci0JCQlmb3IgKG9wdCA9IHRlc3RfY29ubmluZm9fb3B0aW9uczsgb3B0 LT5vcHRuYW1lOyBvcHQrKykKLQkJCXsKLQkJCQlpZiAoY2F0YWxvZyA9PSBvcHQtPm9wdGNvbnRl eHQpCi0JCQkJewotCQkJCQloYXNfdmFsaWRfb3B0aW9ucyA9IHRydWU7Ci0JCQkJCXVwZGF0ZUNs b3Nlc3RNYXRjaCgmbWF0Y2hfc3RhdGUsIG9wdC0+b3B0bmFtZSk7Ci0JCQkJfQotCQkJfQotCi0J CQljbG9zZXN0X21hdGNoID0gZ2V0Q2xvc2VzdE1hdGNoKCZtYXRjaF9zdGF0ZSk7Ci0JCQllcmVw b3J0KEVSUk9SLAotCQkJCQkoZXJyY29kZShFUlJDT0RFX1NZTlRBWF9FUlJPUiksCi0JCQkJCSBl cnJtc2coImludmFsaWQgb3B0aW9uIFwiJXNcIiIsIGRlZi0+ZGVmbmFtZSksCi0JCQkJCSBoYXNf dmFsaWRfb3B0aW9ucyA/IGNsb3Nlc3RfbWF0Y2ggPwotCQkJCQkgZXJyaGludCgiUGVyaGFwcyB5 b3UgbWVhbnQgdGhlIG9wdGlvbiBcIiVzXCIuIiwKLQkJCQkJCQkgY2xvc2VzdF9tYXRjaCkgOiAw IDoKLQkJCQkJIGVycmhpbnQoIlRoZXJlIGFyZSBubyB2YWxpZCBvcHRpb25zIGluIHRoaXMgY29u dGV4dC4iKSkpOwotCi0JCQlQR19SRVRVUk5fQk9PTChmYWxzZSk7Ci0JCX0KLQl9Ci0KLQlQR19S RVRVUk5fQk9PTCh0cnVlKTsKLX0KLQotCiAvKgogICogZ2V0X2ZvcmVpZ25fZGF0YV93cmFwcGVy X29pZCAtIGdpdmVuIGEgRkRXIG5hbWUsIGxvb2sgdXAgdGhlIE9JRAogICoKZGlmZiAtLWdpdCBh L3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3Bn X3Byb2MuZGF0CmluZGV4IDFlYTVlMDNiNmMuLjhhOTg4YjVlZmEgMTAwNjQ0Ci0tLSBhL3NyYy9p bmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQKKysrIGIvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19w cm9jLmRhdApAQCAtNzUxMywxMCArNzUxMyw2IEBACiAgIHByb2FyZ3R5cGVzID0+ICdyZWdjbGFz cycsIHByb3NyYyA9PiAncGdfcmVsYXRpb25fZmlsZXBhdGgnIH0sCiAKIHsgb2lkID0+ICcyMzE2 JywgZGVzY3IgPT4gJyhpbnRlcm5hbCknLAotICBwcm9uYW1lID0+ICdwb3N0Z3Jlc3FsX2Zkd192 YWxpZGF0b3InLCBwcm9yZXR0eXBlID0+ICdib29sJywKLSAgcHJvYXJndHlwZXMgPT4gJ190ZXh0 IG9pZCcsIHByb3NyYyA9PiAncG9zdGdyZXNxbF9mZHdfdmFsaWRhdG9yJyB9LAotCi17IG9pZCA9 PiAnNjAxNScsIGRlc2NyID0+ICcoaW50ZXJuYWwpJywKICAgcHJvbmFtZSA9PiAncGdfY29ubmVj dGlvbl92YWxpZGF0b3InLCBwcm9yZXR0eXBlID0+ICdib29sJywKICAgcHJvYXJndHlwZXMgPT4g J190ZXh0IG9pZCcsIHByb3NyYyA9PiAncGdfY29ubmVjdGlvbl92YWxpZGF0b3InIH0sCiAKZGlm ZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvY3JlYXRlX2FtLm91dCBiL3NyYy90 ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvY3JlYXRlX2FtLm91dAppbmRleCBiNTAyOTNkNTE0Li5mMjEy MTIyYzNjIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2NyZWF0ZV9hbS5v dXQKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9jcmVhdGVfYW0ub3V0CkBAIC0zMzQs NyArMzM0LDcgQEAgQ1JFQVRFIFRBQkxFIHRhYmxlYW1fcGFydGVkXzJfaGVhcHggUEFSVElUSU9O IE9GIHRhYmxlYW1fcGFydGVkX2hlYXB4IEZPUiBWQUxVRVMKIC0tIHNlcXVlbmNlcywgdmlld3Mg YW5kIGZvcmVpZ24gc2VydmVycyBzaG91bGRuJ3QgaGF2ZSBhbiBBTQogQ1JFQVRFIFZJRVcgdGFi bGVhbV92aWV3X2hlYXB4IEFTIFNFTEVDVCAqIEZST00gdGFibGVhbV90YmxfaGVhcHg7CiBDUkVB VEUgU0VRVUVOQ0UgdGFibGVhbV9zZXFfaGVhcHg7Ci1DUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQ RVIgZmR3X2hlYXAyIFZBTElEQVRPUiBwb3N0Z3Jlc3FsX2Zkd192YWxpZGF0b3I7CitDUkVBVEUg Rk9SRUlHTiBEQVRBIFdSQVBQRVIgZmR3X2hlYXAyIFZBTElEQVRPUiBwZ19jb25uZWN0aW9uX3Zh bGlkYXRvcjsKIENSRUFURSBTRVJWRVIgZnNfaGVhcDIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZmR3 X2hlYXAyIDsKIENSRUFURSBGT1JFSUdOIHRhYmxlIHRhYmxlYW1fZmR3X2hlYXB4ICgpIFNFUlZF UiBmc19oZWFwMjsKIC0tIFZlcmlmeSB0aGF0IG5ldyBBTSB3YXMgdXNlZCBmb3IgdGFibGVzLCBt YXR2aWV3cywgYnV0IG5vdCBmb3Igc2VxdWVuY2VzLCB2aWV3cyBhbmQgZmR3cwpkaWZmIC0tZ2l0 IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9mb3JlaWduX2RhdGEub3V0IGIvc3JjL3Rlc3Qv cmVncmVzcy9leHBlY3RlZC9mb3JlaWduX2RhdGEub3V0CmluZGV4IDAyMTE1MzFmMzIuLjE2OWJm NWNiOTkgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvZm9yZWlnbl9kYXRh Lm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2ZvcmVpZ25fZGF0YS5vdXQKQEAg LTIzLDEzICsyMywxMyBAQCBDUkVBVEUgUk9MRSByZWdyZXNzX3Rlc3RfaW5kaXJlY3Q7CiBDUkVB VEUgUk9MRSByZWdyZXNzX3VucHJpdmlsZWdlZF9yb2xlOwogQ1JFQVRFIEZPUkVJR04gREFUQSBX UkFQUEVSIGR1bW15OwogQ09NTUVOVCBPTiBGT1JFSUdOIERBVEEgV1JBUFBFUiBkdW1teSBJUyAn dXNlbGVzcyc7Ci1DUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcG9zdGdyZXNxbCBWQUxJREFU T1IgcG9zdGdyZXNxbF9mZHdfdmFsaWRhdG9yOworQ1JFQVRFIEZPUkVJR04gREFUQSBXUkFQUEVS IHBvc3RncmVzcWwgVkFMSURBVE9SIHBnX2Nvbm5lY3Rpb25fdmFsaWRhdG9yOwogLS0gQXQgdGhp cyBwb2ludCB3ZSBzaG91bGQgaGF2ZSAyIGJ1aWx0LWluIHdyYXBwZXJzIGFuZCBubyBzZXJ2ZXJz LgogU0VMRUNUIGZkd25hbWUsIGZkd2hhbmRsZXI6OnJlZ3Byb2MsIGZkd3ZhbGlkYXRvcjo6cmVn cHJvYywgZmR3b3B0aW9ucyBGUk9NIHBnX2ZvcmVpZ25fZGF0YV93cmFwcGVyIE9SREVSIEJZIDEs IDIsIDM7Ci0gIGZkd25hbWUgICB8IGZkd2hhbmRsZXIgfCAgICAgICBmZHd2YWxpZGF0b3IgICAg ICAgfCBmZHdvcHRpb25zIAotLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KLSBkdW1teSAgICAgIHwgLSAgICAgICAgICB8IC0g ICAgICAgICAgICAgICAgICAgICAgICB8IAotIHBvc3RncmVzcWwgfCAtICAgICAgICAgIHwgcG9z dGdyZXNxbF9mZHdfdmFsaWRhdG9yIHwgCisgIGZkd25hbWUgICB8IGZkd2hhbmRsZXIgfCAgICAg IGZkd3ZhbGlkYXRvciAgICAgICB8IGZkd29wdGlvbnMgCistLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgZHVtbXkgICAgICB8 IC0gICAgICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICB8IAorIHBvc3RncmVzcWwgfCAt ICAgICAgICAgIHwgcGdfY29ubmVjdGlvbl92YWxpZGF0b3IgfCAKICgyIHJvd3MpCiAKIFNFTEVD VCBzcnZuYW1lLCBzcnZvcHRpb25zIEZST00gcGdfZm9yZWlnbl9zZXJ2ZXI7CkBAIC00NywxMiAr NDcsMTIgQEAgQ1JFQVRFIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBWQUxJREFUT1IgYmFyOyAg ICAgICAgICAgIC0tIEVSUk9SCiBFUlJPUjogIGZ1bmN0aW9uIGJhcih0ZXh0W10sIG9pZCkgZG9l cyBub3QgZXhpc3QKIENSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb287CiBcZGV3Ci0gICAg ICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIGZvcmVpZ24tZGF0YSB3cmFwcGVycwotICAgIE5h bWUgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgSGFuZGxlciB8ICAgICAgICBWYWxp ZGF0b3IgICAgICAgICAKLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICAgICAgICAgICAgICAg ICAgIExpc3Qgb2YgZm9yZWlnbi1kYXRhIHdyYXBwZXJzCisgICAgTmFtZSAgICB8ICAgICAgICAg ICBPd25lciAgICAgICAgICAgfCBIYW5kbGVyIHwgICAgICAgIFZhbGlkYXRvciAgICAgICAgCist LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCiAgZHVtbXkgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3Vz ZXIgfCAtICAgICAgIHwgLQogIGZvbyAgICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2Vy IHwgLSAgICAgICB8IC0KLSBwb3N0Z3Jlc3FsIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8 IC0gICAgICAgfCBwb3N0Z3Jlc3FsX2Zkd192YWxpZGF0b3IKKyBwb3N0Z3Jlc3FsIHwgcmVncmVz c19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCBwZ19jb25uZWN0aW9uX3ZhbGlkYXRvcgog KDMgcm93cykKIAogQ1JFQVRFIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbzsgLS0gZHVwbGljYXRl CkBAIC02MCwxMiArNjAsMTIgQEAgRVJST1I6ICBmb3JlaWduLWRhdGEgd3JhcHBlciAiZm9vIiBh bHJlYWR5IGV4aXN0cwogRFJPUCBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb287CiBDUkVBVEUgRk9S RUlHTiBEQVRBIFdSQVBQRVIgZm9vIE9QVElPTlMgKHRlc3RpbmcgJzEnKTsKIFxkZXcrCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBmb3Jl aWduLWRhdGEgd3JhcHBlcnMKLSAgICBOYW1lICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAg ICB8IEhhbmRsZXIgfCAgICAgICAgVmFsaWRhdG9yICAgICAgICAgfCBBY2Nlc3MgcHJpdmlsZWdl cyB8ICBGRFcgb3B0aW9ucyAgfCBEZXNjcmlwdGlvbiAKLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0KLSBkdW1teSAg ICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAgICAgICAgICAg ICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgfCB1c2VsZXNz Ci0gZm9vICAgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAg ICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAodGVzdGluZyAnMScp IHwgCi0gcG9zdGdyZXNxbCB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwg cG9zdGdyZXNxbF9mZHdfdmFsaWRhdG9yIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAg ICAgIHwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBM aXN0IG9mIGZvcmVpZ24tZGF0YSB3cmFwcGVycworICAgIE5hbWUgICAgfCAgICAgICAgICAgT3du ZXIgICAgICAgICAgIHwgSGFuZGxlciB8ICAgICAgICBWYWxpZGF0b3IgICAgICAgIHwgQWNjZXNz IHByaXZpbGVnZXMgfCAgRkRXIG9wdGlvbnMgIHwgRGVzY3JpcHRpb24gCistLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0K KyBkdW1teSAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAg ICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICB8 IHVzZWxlc3MKKyBmb28gICAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAg ICAgfCAtICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgKHRlc3Rp bmcgJzEnKSB8IAorIHBvc3RncmVzcWwgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAg ICAgICB8IHBnX2Nvbm5lY3Rpb25fdmFsaWRhdG9yIHwgICAgICAgICAgICAgICAgICAgfCAgICAg ICAgICAgICAgIHwgCiAoMyByb3dzKQogCiBEUk9QIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbzsK QEAgLTc0LDExICs3NCwxMSBAQCBFUlJPUjogIG9wdGlvbiAidGVzdGluZyIgcHJvdmlkZWQgbW9y ZSB0aGFuIG9uY2UKIENSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gT1BUSU9OUyAodGVz dGluZyAnMScsIGFub3RoZXIgJzInKTsKIFxkZXcrCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBmb3JlaWduLWRhdGEgd3JhcHBl cnMKLSAgICBOYW1lICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEhhbmRsZXIgfCAg ICAgICAgVmFsaWRhdG9yICAgICAgICAgfCBBY2Nlc3MgcHJpdmlsZWdlcyB8ICAgICAgICBGRFcg b3B0aW9ucyAgICAgICAgIHwgRGVzY3JpcHRpb24gCi0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LQotIGR1bW15ICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IC0g ICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCB1c2VsZXNzCi0gZm9vICAgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9k YXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAg ICAgICAgICAgfCAodGVzdGluZyAnMScsIGFub3RoZXIgJzInKSB8IAotIHBvc3RncmVzcWwgfCBy ZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IHBvc3RncmVzcWxfZmR3X3ZhbGlk YXRvciB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAK KyAgICBOYW1lICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEhhbmRsZXIgfCAgICAg ICAgVmFsaWRhdG9yICAgICAgICB8IEFjY2VzcyBwcml2aWxlZ2VzIHwgICAgICAgIEZEVyBvcHRp b25zICAgICAgICAgfCBEZXNjcmlwdGlvbiAKKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0KKyBk dW1teSAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAgICAg ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCB1c2VsZXNzCisgZm9vICAgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3Vz ZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAg ICB8ICh0ZXN0aW5nICcxJywgYW5vdGhlciAnMicpIHwgCisgcG9zdGdyZXNxbCB8IHJlZ3Jlc3Nf Zm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgcGdfY29ubmVjdGlvbl92YWxpZGF0b3IgfCAg ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgCiAoMyByb3dz KQogCiBEUk9QIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbzsKQEAgLTg3LDE0ICs4NywxNCBAQCBD UkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vOyAtLSBFUlJPUgogRVJST1I6ICBwZXJtaXNz aW9uIGRlbmllZCB0byBjcmVhdGUgZm9yZWlnbi1kYXRhIHdyYXBwZXIgImZvbyIKIEhJTlQ6ICBN dXN0IGJlIHN1cGVydXNlciB0byBjcmVhdGUgYSBmb3JlaWduLWRhdGEgd3JhcHBlci4KIFJFU0VU IFJPTEU7Ci1DUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vIFZBTElEQVRPUiBwb3N0Z3Jl c3FsX2Zkd192YWxpZGF0b3I7CitDUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vIFZBTElE QVRPUiBwZ19jb25uZWN0aW9uX3ZhbGlkYXRvcjsKIFxkZXcrCi0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIGZvcmVpZ24tZGF0YSB3cmFwcGVy cwotICAgIE5hbWUgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgSGFuZGxlciB8ICAg ICAgICBWYWxpZGF0b3IgICAgICAgICB8IEFjY2VzcyBwcml2aWxlZ2VzIHwgRkRXIG9wdGlvbnMg fCBEZXNjcmlwdGlvbiAKLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tCi0gZHVtbXkgICAgICB8IHJlZ3Jlc3NfZm9yZWln bl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAg ICAgICAgICAgICAgfCAgICAgICAgICAgICB8IHVzZWxlc3MKLSBmb28gICAgICAgIHwgcmVncmVz c19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCBwb3N0Z3Jlc3FsX2Zkd192YWxpZGF0b3Ig fCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgIHwgCi0gcG9zdGdyZXNxbCB8IHJlZ3Jl c3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgcG9zdGdyZXNxbF9mZHdfdmFsaWRhdG9y IHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICB8IAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIGZvcmVpZ24tZGF0YSB3cmFwcGVy cworICAgIE5hbWUgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgSGFuZGxlciB8ICAg ICAgICBWYWxpZGF0b3IgICAgICAgIHwgQWNjZXNzIHByaXZpbGVnZXMgfCBGRFcgb3B0aW9ucyB8 IERlc2NyaXB0aW9uIAorLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLQorIGR1bW15ICAgICAgfCByZWdyZXNzX2ZvcmVpZ25f ZGF0YV91c2VyIHwgLSAgICAgICB8IC0gICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAg ICAgICAgICAgfCAgICAgICAgICAgICB8IHVzZWxlc3MKKyBmb28gICAgICAgIHwgcmVncmVzc19m b3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCBwZ19jb25uZWN0aW9uX3ZhbGlkYXRvciB8ICAg ICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgfCAKKyBwb3N0Z3Jlc3FsIHwgcmVncmVzc19m b3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCBwZ19jb25uZWN0aW9uX3ZhbGlkYXRvciB8ICAg ICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgfCAKICgzIHJvd3MpCiAKIC0tIEhBTkRMRVIg cmVsYXRlZCBjaGVja3MKQEAgLTExOSwxMiArMTE5LDEyIEBAIEFMVEVSIEZPUkVJR04gREFUQSBX UkFQUEVSIGZvbyBWQUxJREFUT1IgYmFyOyAgICAgICAgICAgICAgIC0tIEVSUk9SCiBFUlJPUjog IGZ1bmN0aW9uIGJhcih0ZXh0W10sIG9pZCkgZG9lcyBub3QgZXhpc3QKIEFMVEVSIEZPUkVJR04g REFUQSBXUkFQUEVSIGZvbyBOTyBWQUxJREFUT1I7CiBcZGV3KwotICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBmb3JlaWduLWRhdGEgd3JhcHBl cnMKLSAgICBOYW1lICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEhhbmRsZXIgfCAg ICAgICAgVmFsaWRhdG9yICAgICAgICAgfCBBY2Nlc3MgcHJpdmlsZWdlcyB8IEZEVyBvcHRpb25z IHwgRGVzY3JpcHRpb24gCi0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLQotIGR1bW15ICAgICAgfCByZWdyZXNzX2ZvcmVp Z25fZGF0YV91c2VyIHwgLSAgICAgICB8IC0gICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAg ICAgICAgICAgICAgIHwgICAgICAgICAgICAgfCB1c2VsZXNzCi0gZm9vICAgICAgICB8IHJlZ3Jl c3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAg IHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICB8IAotIHBvc3RncmVzcWwgfCByZWdy ZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IHBvc3RncmVzcWxfZmR3X3ZhbGlkYXRv ciB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgfCAKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBmb3JlaWduLWRhdGEgd3JhcHBl cnMKKyAgICBOYW1lICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEhhbmRsZXIgfCAg ICAgICAgVmFsaWRhdG9yICAgICAgICB8IEFjY2VzcyBwcml2aWxlZ2VzIHwgRkRXIG9wdGlvbnMg fCBEZXNjcmlwdGlvbiAKKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0KKyBkdW1teSAgICAgIHwgcmVncmVzc19mb3JlaWdu X2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAg ICAgICAgICAgIHwgICAgICAgICAgICAgfCB1c2VsZXNzCisgZm9vICAgICAgICB8IHJlZ3Jlc3Nf Zm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgfCAg ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgIHwgCisgcG9zdGdyZXNxbCB8IHJlZ3Jlc3Nf Zm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgcGdfY29ubmVjdGlvbl92YWxpZGF0b3IgfCAg ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgIHwgCiAoMyByb3dzKQogCiBBTFRFUiBGT1JF SUdOIERBVEEgV1JBUFBFUiBmb28gT1BUSU9OUyAoYSAnMScsIGIgJzInKTsKQEAgLTEzNSwzMyAr MTM1LDMzIEBAIEVSUk9SOiAgb3B0aW9uICJjIiBub3QgZm91bmQKIEFMVEVSIEZPUkVJR04gREFU QSBXUkFQUEVSIGZvbyBPUFRJT05TIChBREQgeCAnMScsIERST1AgeCk7CiBcZGV3KwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2YgZm9yZWln bi1kYXRhIHdyYXBwZXJzCi0gICAgTmFtZSAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAg fCBIYW5kbGVyIHwgICAgICAgIFZhbGlkYXRvciAgICAgICAgIHwgQWNjZXNzIHByaXZpbGVnZXMg fCAgRkRXIG9wdGlvbnMgICB8IERlc2NyaXB0aW9uIAotLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0KLSBkdW1teSAg ICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAgICAgICAgICAg ICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgIHwgdXNlbGVz cwotIGZvbyAgICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IC0g ICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgKGEgJzEnLCBiICcy JykgfCAKLSBwb3N0Z3Jlc3FsIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAg fCBwb3N0Z3Jlc3FsX2Zkd192YWxpZGF0b3IgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAg ICAgICAgIHwgCisgICAgTmFtZSAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBIYW5k bGVyIHwgICAgICAgIFZhbGlkYXRvciAgICAgICAgfCBBY2Nlc3MgcHJpdmlsZWdlcyB8ICBGRFcg b3B0aW9ucyAgIHwgRGVzY3JpcHRpb24gCistLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tCisgZHVtbXkgICAgICB8IHJl Z3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAg ICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgIHwgdXNlbGVzcworIGZvbyAg ICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IC0gICAgICAgICAg ICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAoYSAnMScsIGIgJzInKSB8IAorIHBv c3RncmVzcWwgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IHBnX2Nvbm5l Y3Rpb25fdmFsaWRhdG9yIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICB8IAog KDMgcm93cykKIAogQUxURVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vIE9QVElPTlMgKERST1Ag YSwgU0VUIGIgJzMnLCBBREQgYyAnNCcpOwogXGRldysKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIGZvcmVpZ24tZGF0YSB3cmFwcGVycwot ICAgIE5hbWUgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgSGFuZGxlciB8ICAgICAg ICBWYWxpZGF0b3IgICAgICAgICB8IEFjY2VzcyBwcml2aWxlZ2VzIHwgIEZEVyBvcHRpb25zICAg fCBEZXNjcmlwdGlvbiAKLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tCi0gZHVtbXkgICAgICB8IHJlZ3Jlc3NfZm9y ZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAg ICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICB8IHVzZWxlc3MKLSBmb28gICAgICAgIHwg cmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAg ICAgICAgfCAgICAgICAgICAgICAgICAgICB8IChiICczJywgYyAnNCcpIHwgCi0gcG9zdGdyZXNx bCB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgcG9zdGdyZXNxbF9mZHdf dmFsaWRhdG9yIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICB8IAorICAgIE5h bWUgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgSGFuZGxlciB8ICAgICAgICBWYWxp ZGF0b3IgICAgICAgIHwgQWNjZXNzIHByaXZpbGVnZXMgfCAgRkRXIG9wdGlvbnMgICB8IERlc2Ny aXB0aW9uIAorLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLQorIGR1bW15ICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0 YV91c2VyIHwgLSAgICAgICB8IC0gICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAg ICAgICAgfCAgICAgICAgICAgICAgICB8IHVzZWxlc3MKKyBmb28gICAgICAgIHwgcmVncmVzc19m b3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICB8ICAg ICAgICAgICAgICAgICAgIHwgKGIgJzMnLCBjICc0JykgfCAKKyBwb3N0Z3Jlc3FsIHwgcmVncmVz c19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCBwZ19jb25uZWN0aW9uX3ZhbGlkYXRvciB8 ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgfCAKICgzIHJvd3MpCiAKIEFMVEVS IEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBPUFRJT05TIChhICcyJyk7CiBBTFRFUiBGT1JFSUdO IERBVEEgV1JBUFBFUiBmb28gT1BUSU9OUyAoYiAnNCcpOyAgICAgICAgICAgICAtLSBFUlJPUgog RVJST1I6ICBvcHRpb24gImIiIHByb3ZpZGVkIG1vcmUgdGhhbiBvbmNlCiBcZGV3KwotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIGZv cmVpZ24tZGF0YSB3cmFwcGVycwotICAgIE5hbWUgICAgfCAgICAgICAgICAgT3duZXIgICAgICAg ICAgIHwgSGFuZGxlciB8ICAgICAgICBWYWxpZGF0b3IgICAgICAgICB8IEFjY2VzcyBwcml2aWxl Z2VzIHwgICAgICBGRFcgb3B0aW9ucyAgICAgIHwgRGVzY3JpcHRpb24gCi0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0KLSBkdW1teSAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAg ICAgfCAtICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAg ICAgICAgICAgICAgICAgICB8IHVzZWxlc3MKLSBmb28gICAgICAgIHwgcmVncmVzc19mb3JlaWdu X2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAg ICAgICAgICAgICB8IChiICczJywgYyAnNCcsIGEgJzInKSB8IAotIHBvc3RncmVzcWwgfCByZWdy ZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IHBvc3RncmVzcWxfZmR3X3ZhbGlkYXRv ciB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHwgCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBmb3Jl aWduLWRhdGEgd3JhcHBlcnMKKyAgICBOYW1lICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAg ICB8IEhhbmRsZXIgfCAgICAgICAgVmFsaWRhdG9yICAgICAgICB8IEFjY2VzcyBwcml2aWxlZ2Vz IHwgICAgICBGRFcgb3B0aW9ucyAgICAgIHwgRGVzY3JpcHRpb24gCistLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLQorIGR1bW15ICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8 IC0gICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAg ICAgICAgICAgICAgfCB1c2VsZXNzCisgZm9vICAgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRh X3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAg ICAgICB8IChiICczJywgYyAnNCcsIGEgJzInKSB8IAorIHBvc3RncmVzcWwgfCByZWdyZXNzX2Zv cmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IHBnX2Nvbm5lY3Rpb25fdmFsaWRhdG9yIHwgICAg ICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfCAKICgzIHJvd3MpCiAKIFNF VCBST0xFIHJlZ3Jlc3NfdGVzdF9yb2xlOwpAQCAtMTcyLDExICsxNzIsMTEgQEAgU0VUIFJPTEUg cmVncmVzc190ZXN0X3JvbGVfc3VwZXI7CiBBTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28g T1BUSU9OUyAoQUREIGQgJzUnKTsKIFxkZXcrCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2YgZm9yZWlnbi1kYXRhIHdyYXBwZXJz Ci0gICAgTmFtZSAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBIYW5kbGVyIHwgICAg ICAgIFZhbGlkYXRvciAgICAgICAgIHwgQWNjZXNzIHByaXZpbGVnZXMgfCAgICAgICAgIEZEVyBv cHRpb25zICAgICAgICAgIHwgRGVzY3JpcHRpb24gCi0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tCi0gZHVtbXkgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwg LSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgdXNlbGVzcwotIGZvbyAgICAgICAgfCByZWdyZXNzX2ZvcmVp Z25fZGF0YV91c2VyIHwgLSAgICAgICB8IC0gICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAg ICAgICAgICAgICAgIHwgKGIgJzMnLCBjICc0JywgYSAnMicsIGQgJzUnKSB8IAotIHBvc3RncmVz cWwgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IHBvc3RncmVzcWxfZmR3 X3ZhbGlkYXRvciB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8IAorICAgIE5hbWUgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgSGFuZGxl ciB8ICAgICAgICBWYWxpZGF0b3IgICAgICAgIHwgQWNjZXNzIHByaXZpbGVnZXMgfCAgICAgICAg IEZEVyBvcHRpb25zICAgICAgICAgIHwgRGVzY3JpcHRpb24gCistLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0KKyBkdW1teSAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAg ICAgfCAtICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB8IHVzZWxlc3MKKyBmb28gICAgICAgIHwgcmVncmVzc19m b3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICB8ICAg ICAgICAgICAgICAgICAgIHwgKGIgJzMnLCBjICc0JywgYSAnMicsIGQgJzUnKSB8IAorIHBvc3Rn cmVzcWwgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IHBnX2Nvbm5lY3Rp b25fdmFsaWRhdG9yIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwgCiAoMyByb3dzKQogCiBBTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gT1dO RVIgVE8gcmVncmVzc190ZXN0X3JvbGU7ICAtLSBFUlJPUgpAQCAtMTkxLDIxICsxOTEsMjEgQEAg SElOVDogIE11c3QgYmUgc3VwZXJ1c2VyIHRvIGFsdGVyIGEgZm9yZWlnbi1kYXRhIHdyYXBwZXIu CiBSRVNFVCBST0xFOwogXGRldysKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBmb3JlaWduLWRhdGEgd3JhcHBlcnMKLSAgICBO YW1lICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEhhbmRsZXIgfCAgICAgICAgVmFs aWRhdG9yICAgICAgICAgfCBBY2Nlc3MgcHJpdmlsZWdlcyB8ICAgICAgICAgRkRXIG9wdGlvbnMg ICAgICAgICAgfCBEZXNjcmlwdGlvbiAKLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0KLSBk dW1teSAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAgICAg ICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCB1c2VsZXNzCi0gZm9vICAgICAgICB8IHJlZ3Jlc3NfdGVzdF9yb2xlX3N1 cGVyICAgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAg ICAgICAgfCAoYiAnMycsIGMgJzQnLCBhICcyJywgZCAnNScpIHwgCi0gcG9zdGdyZXNxbCB8IHJl Z3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgcG9zdGdyZXNxbF9mZHdfdmFsaWRh dG9yIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg CisgICAgTmFtZSAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBIYW5kbGVyIHwgICAg ICAgIFZhbGlkYXRvciAgICAgICAgfCBBY2Nlc3MgcHJpdmlsZWdlcyB8ICAgICAgICAgRkRXIG9w dGlvbnMgICAgICAgICAgfCBEZXNjcmlwdGlvbiAKKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LQorIGR1bW15ICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IC0g ICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgdXNlbGVzcworIGZvbyAgICAgICAgfCByZWdyZXNzX3Rlc3Rfcm9s ZV9zdXBlciAgIHwgLSAgICAgICB8IC0gICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAg ICAgICAgICAgfCAoYiAnMycsIGMgJzQnLCBhICcyJywgZCAnNScpIHwgCisgcG9zdGdyZXNxbCB8 IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgcGdfY29ubmVjdGlvbl92YWxp ZGF0b3IgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fCAKICgzIHJvd3MpCiAKIEFMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBSRU5BTUUgVE8g Zm9vMTsKIFxkZXcrCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIExpc3Qgb2YgZm9yZWlnbi1kYXRhIHdyYXBwZXJzCi0gICAgTmFtZSAgICB8 ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBIYW5kbGVyIHwgICAgICAgIFZhbGlkYXRvciAg ICAgICAgIHwgQWNjZXNzIHByaXZpbGVnZXMgfCAgICAgICAgIEZEVyBvcHRpb25zICAgICAgICAg IHwgRGVzY3JpcHRpb24gCi0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tCi0gZHVtbXkgICAg ICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAg ICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgdXNlbGVzcwotIGZvbzEgICAgICAgfCByZWdyZXNzX3Rlc3Rfcm9sZV9zdXBlciAgIHwg LSAgICAgICB8IC0gICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwg KGIgJzMnLCBjICc0JywgYSAnMicsIGQgJzUnKSB8IAotIHBvc3RncmVzcWwgfCByZWdyZXNzX2Zv cmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IHBvc3RncmVzcWxfZmR3X3ZhbGlkYXRvciB8ICAg ICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IAorICAgIE5h bWUgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgSGFuZGxlciB8ICAgICAgICBWYWxp ZGF0b3IgICAgICAgIHwgQWNjZXNzIHByaXZpbGVnZXMgfCAgICAgICAgIEZEVyBvcHRpb25zICAg ICAgICAgIHwgRGVzY3JpcHRpb24gCistLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0KKyBkdW1t eSAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAgICAgICAg ICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8IHVzZWxlc3MKKyBmb28xICAgICAgIHwgcmVncmVzc190ZXN0X3JvbGVfc3VwZXIg ICB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAg IHwgKGIgJzMnLCBjICc0JywgYSAnMicsIGQgJzUnKSB8IAorIHBvc3RncmVzcWwgfCByZWdyZXNz X2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IHBnX2Nvbm5lY3Rpb25fdmFsaWRhdG9yIHwg ICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgCiAoMyBy b3dzKQogCiBBTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28xIFJFTkFNRSBUTyBmb287CkBA IC0yMjUsMTIgKzIyNSwxMiBAQCBFUlJPUjogIGZvcmVpZ24tZGF0YSB3cmFwcGVyICJub25leGlz dGVudCIgZG9lcyBub3QgZXhpc3QKIERST1AgRk9SRUlHTiBEQVRBIFdSQVBQRVIgSUYgRVhJU1RT IG5vbmV4aXN0ZW50OwogTk9USUNFOiAgZm9yZWlnbi1kYXRhIHdyYXBwZXIgIm5vbmV4aXN0ZW50 IiBkb2VzIG5vdCBleGlzdCwgc2tpcHBpbmcKIFxkZXcrCi0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBmb3JlaWduLWRh dGEgd3JhcHBlcnMKLSAgICBOYW1lICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8ICAg ICBIYW5kbGVyICAgICAgfCAgICAgICAgVmFsaWRhdG9yICAgICAgICAgfCBBY2Nlc3MgcHJpdmls ZWdlcyB8ICAgICAgICAgRkRXIG9wdGlvbnMgICAgICAgICAgfCBEZXNjcmlwdGlvbiAKLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0KLSBkdW1teSAgICAgIHwgcmVncmVzc19m b3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgICAgICAgICAgfCAtICAgICAgICAgICAgICAgICAg ICAgICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fCB1c2VsZXNzCi0gZm9vICAgICAgICB8IHJlZ3Jlc3NfdGVzdF9yb2xlX3N1cGVyICAgfCB0ZXN0 X2Zkd19oYW5kbGVyIHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAg ICAgfCAoYiAnMycsIGMgJzQnLCBhICcyJywgZCAnNScpIHwgCi0gcG9zdGdyZXNxbCB8IHJlZ3Jl c3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgICAgICAgICAgIHwgcG9zdGdyZXNxbF9mZHdf dmFsaWRhdG9yIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBMaXN0IG9mIGZvcmVpZ24tZGF0YSB3cmFwcGVycworICAgIE5hbWUgICAgfCAg ICAgICAgICAgT3duZXIgICAgICAgICAgIHwgICAgIEhhbmRsZXIgICAgICB8ICAgICAgICBWYWxp ZGF0b3IgICAgICAgIHwgQWNjZXNzIHByaXZpbGVnZXMgfCAgICAgICAgIEZEVyBvcHRpb25zICAg ICAgICAgIHwgRGVzY3JpcHRpb24gCistLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0KKyBkdW1teSAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgICAg ICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8IHVzZWxlc3MKKyBmb28gICAgICAgIHwgcmVncmVz c190ZXN0X3JvbGVfc3VwZXIgICB8IHRlc3RfZmR3X2hhbmRsZXIgfCAtICAgICAgICAgICAgICAg ICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgKGIgJzMnLCBjICc0JywgYSAnMicsIGQgJzUn KSB8IAorIHBvc3RncmVzcWwgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICAg ICAgICAgICB8IHBnX2Nvbm5lY3Rpb25fdmFsaWRhdG9yIHwgICAgICAgICAgICAgICAgICAgfCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgCiAoMyByb3dzKQogCiBEUk9QIFJPTEUgcmVn cmVzc190ZXN0X3JvbGVfc3VwZXI7ICAgICAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgpA QCAtMjQxLDExICsyNDEsMTEgQEAgRFJPUCBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb287CiBSRVNF VCBST0xFOwogRFJPUCBST0xFIHJlZ3Jlc3NfdGVzdF9yb2xlX3N1cGVyOwogXGRldysKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2YgZm9yZWln bi1kYXRhIHdyYXBwZXJzCi0gICAgTmFtZSAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAg fCBIYW5kbGVyIHwgICAgICAgIFZhbGlkYXRvciAgICAgICAgIHwgQWNjZXNzIHByaXZpbGVnZXMg fCBGRFcgb3B0aW9ucyB8IERlc2NyaXB0aW9uIAotLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0KLSBkdW1teSAgICAgIHwg cmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAg ICAgICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgIHwgdXNlbGVzcwotIHBvc3Rn cmVzcWwgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IHBvc3RncmVzcWxf ZmR3X3ZhbGlkYXRvciB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgfCAKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBmb3JlaWdu LWRhdGEgd3JhcHBlcnMKKyAgICBOYW1lICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8 IEhhbmRsZXIgfCAgICAgICAgVmFsaWRhdG9yICAgICAgICB8IEFjY2VzcyBwcml2aWxlZ2VzIHwg RkRXIG9wdGlvbnMgfCBEZXNjcmlwdGlvbiAKKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0KKyBkdW1teSAgICAgIHwgcmVn cmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAg ICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgfCB1c2VsZXNzCisgcG9zdGdyZXNx bCB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgcGdfY29ubmVjdGlvbl92 YWxpZGF0b3IgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgIHwgCiAoMiByb3dzKQog CiBDUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vOwpAQCAtMjU3LDEyICsyNTcsMTIgQEAg RVJST1I6ICB1c2VyIG1hcHBpbmcgZm9yICJyZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIiBhbHJl YWR5IGV4aXN0cyBmb3Igc2VydmVyICIKIENSRUFURSBVU0VSIE1BUFBJTkcgSUYgTk9UIEVYSVNU UyBGT1IgY3VycmVudF91c2VyIFNFUlZFUiBzMTsgLS0gTk9USUNFCiBOT1RJQ0U6ICB1c2VyIG1h cHBpbmcgZm9yICJyZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIiBhbHJlYWR5IGV4aXN0cyBmb3Ig c2VydmVyICJzMSIsIHNraXBwaW5nCiBcZGV3KwotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBmb3JlaWduLWRhdGEgd3JhcHBlcnMKLSAgICBO YW1lICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEhhbmRsZXIgfCAgICAgICAgVmFs aWRhdG9yICAgICAgICAgfCBBY2Nlc3MgcHJpdmlsZWdlcyB8IEZEVyBvcHRpb25zIHwgRGVzY3Jp cHRpb24gCi0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLQotIGR1bW15ICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91 c2VyIHwgLSAgICAgICB8IC0gICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAg ICAgIHwgICAgICAgICAgICAgfCB1c2VsZXNzCi0gZm9vICAgICAgICB8IHJlZ3Jlc3NfZm9yZWln bl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAg ICAgICAgICAgICAgfCAgICAgICAgICAgICB8IAotIHBvc3RncmVzcWwgfCByZWdyZXNzX2ZvcmVp Z25fZGF0YV91c2VyIHwgLSAgICAgICB8IHBvc3RncmVzcWxfZmR3X3ZhbGlkYXRvciB8ICAgICAg ICAgICAgICAgICAgIHwgICAgICAgICAgICAgfCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBmb3JlaWduLWRhdGEgd3JhcHBlcnMKKyAgICBO YW1lICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEhhbmRsZXIgfCAgICAgICAgVmFs aWRhdG9yICAgICAgICB8IEFjY2VzcyBwcml2aWxlZ2VzIHwgRkRXIG9wdGlvbnMgfCBEZXNjcmlw dGlvbiAKKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0KKyBkdW1teSAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNl ciB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAg IHwgICAgICAgICAgICAgfCB1c2VsZXNzCisgZm9vICAgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9k YXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAg ICAgICAgICB8ICAgICAgICAgICAgIHwgCisgcG9zdGdyZXNxbCB8IHJlZ3Jlc3NfZm9yZWlnbl9k YXRhX3VzZXIgfCAtICAgICAgIHwgcGdfY29ubmVjdGlvbl92YWxpZGF0b3IgfCAgICAgICAgICAg ICAgICAgICB8ICAgICAgICAgICAgIHwgCiAoMyByb3dzKQogCiBcZGVzKwpAQCAtMjkzLDExICsy OTMsMTEgQEAgTk9USUNFOiAgZHJvcCBjYXNjYWRlcyB0byAyIG90aGVyIG9iamVjdHMKIERFVEFJ TDogIGRyb3AgY2FzY2FkZXMgdG8gc2VydmVyIHMxCiBkcm9wIGNhc2NhZGVzIHRvIHVzZXIgbWFw cGluZyBmb3IgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciBvbiBzZXJ2ZXIgczEKIFxkZXcrCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIGZv cmVpZ24tZGF0YSB3cmFwcGVycwotICAgIE5hbWUgICAgfCAgICAgICAgICAgT3duZXIgICAgICAg ICAgIHwgSGFuZGxlciB8ICAgICAgICBWYWxpZGF0b3IgICAgICAgICB8IEFjY2VzcyBwcml2aWxl Z2VzIHwgRkRXIG9wdGlvbnMgfCBEZXNjcmlwdGlvbiAKLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tCi0gZHVtbXkgICAg ICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAg ICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICB8IHVzZWxlc3MKLSBw b3N0Z3Jlc3FsIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCBwb3N0Z3Jl c3FsX2Zkd192YWxpZGF0b3IgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgIHwgCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2YgZm9y ZWlnbi1kYXRhIHdyYXBwZXJzCisgICAgTmFtZSAgICB8ICAgICAgICAgICBPd25lciAgICAgICAg ICAgfCBIYW5kbGVyIHwgICAgICAgIFZhbGlkYXRvciAgICAgICAgfCBBY2Nlc3MgcHJpdmlsZWdl cyB8IEZEVyBvcHRpb25zIHwgRGVzY3JpcHRpb24gCistLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tCisgZHVtbXkgICAgICB8 IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAg ICAgICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgIHwgdXNlbGVzcworIHBvc3Rn cmVzcWwgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IHBnX2Nvbm5lY3Rp b25fdmFsaWRhdG9yIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICB8IAogKDIgcm93 cykKIAogXGRlcysKQEAgLTEyNDUsNyArMTI0NSw3IEBAIEdSQU5UIFVTQUdFIE9OIEZPUkVJR04g U0VSVkVSIHM0IFRPIHJlZ3Jlc3NfdGVzdF9yb2xlOwogRFJPUCBVU0VSIE1BUFBJTkcgRk9SIHB1 YmxpYyBTRVJWRVIgczQ7CiBBTFRFUiBTRVJWRVIgczYgT1BUSU9OUyAoRFJPUCBob3N0LCBEUk9Q IGRibmFtZSk7CiBBTFRFUiBVU0VSIE1BUFBJTkcgRk9SIHJlZ3Jlc3NfdGVzdF9yb2xlIFNFUlZF UiBzNiBPUFRJT05TIChEUk9QIHVzZXJuYW1lKTsKLUFMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVS IGZvbyBWQUxJREFUT1IgcG9zdGdyZXNxbF9mZHdfdmFsaWRhdG9yOworQUxURVIgRk9SRUlHTiBE QVRBIFdSQVBQRVIgZm9vIFZBTElEQVRPUiBwZ19jb25uZWN0aW9uX3ZhbGlkYXRvcjsKIFdBUk5J Tkc6ICBjaGFuZ2luZyB0aGUgZm9yZWlnbi1kYXRhIHdyYXBwZXIgdmFsaWRhdG9yIGNhbiBjYXVz ZSB0aGUgb3B0aW9ucyBmb3IgZGVwZW5kZW50IG9iamVjdHMgdG8gYmVjb21lIGludmFsaWQKIC0t IFByaXZpbGVnZXMKIFNFVCBST0xFIHJlZ3Jlc3NfdW5wcml2aWxlZ2VkX3JvbGU7CmRpZmYgLS1n aXQgYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9jcmVhdGVfYW0uc3FsIGIvc3JjL3Rlc3QvcmVncmVz cy9zcWwvY3JlYXRlX2FtLnNxbAppbmRleCAyNzg1ZmZkOGJiLi40MWM5NjY3ZmIwIDEwMDY0NAot LS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9jcmVhdGVfYW0uc3FsCisrKyBiL3NyYy90ZXN0L3Jl Z3Jlc3Mvc3FsL2NyZWF0ZV9hbS5zcWwKQEAgLTIyNSw3ICsyMjUsNyBAQCBDUkVBVEUgVEFCTEUg dGFibGVhbV9wYXJ0ZWRfMl9oZWFweCBQQVJUSVRJT04gT0YgdGFibGVhbV9wYXJ0ZWRfaGVhcHgg Rk9SIFZBTFVFUwogLS0gc2VxdWVuY2VzLCB2aWV3cyBhbmQgZm9yZWlnbiBzZXJ2ZXJzIHNob3Vs ZG4ndCBoYXZlIGFuIEFNCiBDUkVBVEUgVklFVyB0YWJsZWFtX3ZpZXdfaGVhcHggQVMgU0VMRUNU ICogRlJPTSB0YWJsZWFtX3RibF9oZWFweDsKIENSRUFURSBTRVFVRU5DRSB0YWJsZWFtX3NlcV9o ZWFweDsKLUNSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiBmZHdfaGVhcDIgVkFMSURBVE9SIHBv c3RncmVzcWxfZmR3X3ZhbGlkYXRvcjsKK0NSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiBmZHdf aGVhcDIgVkFMSURBVE9SIHBnX2Nvbm5lY3Rpb25fdmFsaWRhdG9yOwogQ1JFQVRFIFNFUlZFUiBm c19oZWFwMiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmZHdfaGVhcDIgOwogQ1JFQVRFIEZPUkVJR04g dGFibGUgdGFibGVhbV9mZHdfaGVhcHggKCkgU0VSVkVSIGZzX2hlYXAyOwogCmRpZmYgLS1naXQg YS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9mb3JlaWduX2RhdGEuc3FsIGIvc3JjL3Rlc3QvcmVncmVz cy9zcWwvZm9yZWlnbl9kYXRhLnNxbAppbmRleCBhOGUyZWRmZWVlLi5lMWY3OWQ0ZmVlIDEwMDY0 NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9mb3JlaWduX2RhdGEuc3FsCisrKyBiL3NyYy90 ZXN0L3JlZ3Jlc3Mvc3FsL2ZvcmVpZ25fZGF0YS5zcWwKQEAgLTMzLDcgKzMzLDcgQEAgQ1JFQVRF IFJPTEUgcmVncmVzc191bnByaXZpbGVnZWRfcm9sZTsKIAogQ1JFQVRFIEZPUkVJR04gREFUQSBX UkFQUEVSIGR1bW15OwogQ09NTUVOVCBPTiBGT1JFSUdOIERBVEEgV1JBUFBFUiBkdW1teSBJUyAn dXNlbGVzcyc7Ci1DUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcG9zdGdyZXNxbCBWQUxJREFU T1IgcG9zdGdyZXNxbF9mZHdfdmFsaWRhdG9yOworQ1JFQVRFIEZPUkVJR04gREFUQSBXUkFQUEVS IHBvc3RncmVzcWwgVkFMSURBVE9SIHBnX2Nvbm5lY3Rpb25fdmFsaWRhdG9yOwogCiAtLSBBdCB0 aGlzIHBvaW50IHdlIHNob3VsZCBoYXZlIDIgYnVpbHQtaW4gd3JhcHBlcnMgYW5kIG5vIHNlcnZl cnMuCiBTRUxFQ1QgZmR3bmFtZSwgZmR3aGFuZGxlcjo6cmVncHJvYywgZmR3dmFsaWRhdG9yOjpy ZWdwcm9jLCBmZHdvcHRpb25zIEZST00gcGdfZm9yZWlnbl9kYXRhX3dyYXBwZXIgT1JERVIgQlkg MSwgMiwgMzsKQEAgLTU5LDcgKzU5LDcgQEAgRFJPUCBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb287 CiBTRVQgUk9MRSByZWdyZXNzX3Rlc3Rfcm9sZTsKIENSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBF UiBmb287IC0tIEVSUk9SCiBSRVNFVCBST0xFOwotQ1JFQVRFIEZPUkVJR04gREFUQSBXUkFQUEVS IGZvbyBWQUxJREFUT1IgcG9zdGdyZXNxbF9mZHdfdmFsaWRhdG9yOworQ1JFQVRFIEZPUkVJR04g REFUQSBXUkFQUEVSIGZvbyBWQUxJREFUT1IgcGdfY29ubmVjdGlvbl92YWxpZGF0b3I7CiBcZGV3 KwogCiAtLSBIQU5ETEVSIHJlbGF0ZWQgY2hlY2tzCkBAIC01NDgsNyArNTQ4LDcgQEAgR1JBTlQg VVNBR0UgT04gRk9SRUlHTiBTRVJWRVIgczQgVE8gcmVncmVzc190ZXN0X3JvbGU7CiBEUk9QIFVT RVIgTUFQUElORyBGT1IgcHVibGljIFNFUlZFUiBzNDsKIEFMVEVSIFNFUlZFUiBzNiBPUFRJT05T IChEUk9QIGhvc3QsIERST1AgZGJuYW1lKTsKIEFMVEVSIFVTRVIgTUFQUElORyBGT1IgcmVncmVz c190ZXN0X3JvbGUgU0VSVkVSIHM2IE9QVElPTlMgKERST1AgdXNlcm5hbWUpOwotQUxURVIgRk9S RUlHTiBEQVRBIFdSQVBQRVIgZm9vIFZBTElEQVRPUiBwb3N0Z3Jlc3FsX2Zkd192YWxpZGF0b3I7 CitBTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gVkFMSURBVE9SIHBnX2Nvbm5lY3Rpb25f dmFsaWRhdG9yOwogCiAtLSBQcml2aWxlZ2VzCiBTRVQgUk9MRSByZWdyZXNzX3VucHJpdmlsZWdl ZF9yb2xlOwotLSAKMi4zNC4xCgo= --000000000000b74a310610193e4a--