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 1rPYgL-00CSap-96 for pgsql-hackers@arkaria.postgresql.org; Tue, 16 Jan 2024 01:56:10 +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 1rPYgJ-000lSi-AN for pgsql-hackers@arkaria.postgresql.org; Tue, 16 Jan 2024 01:55:59 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rPYgI-000lSa-KZ for pgsql-hackers@lists.postgresql.org; Tue, 16 Jan 2024 01:55:58 +0000 Received: from mail-ot1-x329.google.com ([2607:f8b0:4864:20::329]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1rPYgB-0021aD-32 for pgsql-hackers@postgresql.org; Tue, 16 Jan 2024 01:55:58 +0000 Received: by mail-ot1-x329.google.com with SMTP id 46e09a7af769-6dec4b7b680so3027343a34.3 for ; Mon, 15 Jan 2024 17:55:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=j-davis-com.20230601.gappssmtp.com; s=20230601; t=1705370149; x=1705974949; darn=postgresql.org; h=mime-version:user-agent:references:in-reply-to:date:cc:to:from :subject:message-id:from:to:cc:subject:date:message-id:reply-to; bh=cidmVNbqHd4u+A/a4i2VIwVykD3OUNEJkXsFEd9Ueas=; b=0lLVhwEYb8T9UII812qyiXQY7UeT2lYnc/vdr7AyFu/3Ds9vjPC1ryXDk9vMvrK1kf A0JBPZQxMsZI0R9QB3oy8qw+kDfq1iB8U4Z+aptUOWitbPwcIFQD6tJDuvD6ma/MzMYb qMF47hV5UKxDBge7yxd7ZRKFzOYLLc+SBuoU/wXSf2RU2lT3lpHkhBYvoJ3wUdbGbIVh 59XJ/G7e0xJd1COZYyO8jGKP8JzSt41sj/JjfOyHOKycasWS7TQksHcEDKsam7Ka46K9 axaZvBpF7pYk1yfKQw6DwCLpiqdGKw08rb0FQ4YGYQw6R/QNzcUxsXUwvKJBNHdy4Ako nuGg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1705370149; x=1705974949; h=mime-version:user-agent:references:in-reply-to:date:cc:to:from :subject:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=cidmVNbqHd4u+A/a4i2VIwVykD3OUNEJkXsFEd9Ueas=; b=sqFWfuJGt8LUTgisP6pOuw5O3YaqsgmqSb0KPCpNybxXSN+kj+c0RBQLVTD8eQgVc6 OEfywfuM7Pj8wI9e6i4GvV1Qp3QrODeIDdpMvI4gMKLwxltn9fjYGR+EcwZKqrgmjnHz t7xUUUx6ihEvEcNcgAsvfW0Vm6k706LPwWlZzbu9rmbKLUKhJ4KThU1vW0EyFKIjjzpZ WUlPYx5GC1NzSvGQV9GGhChE/IiYTwyYr2LkvO1L4AJPpxjk0LgguMcVwfNz4f3erzeE LC9HBNKGD/dif5astNLDfuosdr5RsyWrN9cUHQUuLh93W3WIKxA+vFqBmEkYWveOLS4F rlxA== X-Gm-Message-State: AOJu0YwysmOwl9Wi6Arv0sXzyTvTVeSm/SgXVk5vvhPmomXkzaer43xS 1s7XFxLDsGZasLJyE078FfwEaWexDs0kc/dqLa9eWV0YzA== X-Google-Smtp-Source: AGHT+IFscwA2UnY7JtUEQw6C3XgKCQa/pZJapRwq2jvyIwnTyHvzpMivHmOfADLalfdpqAYeuETgVg== X-Received: by 2002:a05:6358:3398:b0:175:ac73:cba8 with SMTP id i24-20020a056358339800b00175ac73cba8mr8179254rwd.52.1705370148122; Mon, 15 Jan 2024 17:55:48 -0800 (PST) Received: from [172.18.10.36] ([12.126.244.130]) by smtp.gmail.com with ESMTPSA id o16-20020a170902d4d000b001d5a57054d8sm6495917plg.104.2024.01.15.17.55.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 15 Jan 2024 17:55:46 -0800 (PST) Message-ID: <61831790a0a937038f78ce09f8dd4cef7de7456a.camel@j-davis.com> Subject: Re: [17] CREATE SUBSCRIPTION ... SERVER From: Jeff Davis To: Ashutosh Bapat Cc: Bharath Rupireddy , Joe Conway , pgsql-hackers@postgresql.org Date: Mon, 15 Jan 2024 17:55:44 -0800 In-Reply-To: <2a89b14a2b1622bffb8b137ca1f9ab7866f2d2b9.camel@j-davis.com> 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> Content-Type: multipart/mixed; boundary="=-BGB4L0ZPZie64oIr3KQS" User-Agent: Evolution 3.44.4-0ubuntu2 MIME-Version: 1.0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --=-BGB4L0ZPZie64oIr3KQS Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, 2024-01-12 at 17:17 -0800, Jeff Davis wrote: > I think 0004 needs a bit more work, so I'm leaving it off for now, > but > I'll bring it back in the next patch set. Here's the next patch set. 0001 - 0003 are mostly the same with some improved error messages and some code fixes. I am looking to start committing 0001 - 0003 soon, as they have received some feedback already and 0004 isn't required for the earlier patches to be useful. 0004 could use more discussion. The purpose is to split the privileges of pg_create_subscription into two: pg_create_subscription, and pg_create_connection. By separating the privileges, it's possible to allow someone to create/manage subscriptions to a predefined set of foreign servers (on which they have USAGE privileges) without allowing them to write an arbitrary connection string. The reasoning behind the separation is that creating a connection string has different and more nuanced security implications than creating a subscription (cf. extensive discussion[1] related to the password_required setting on a subscription). By default, pg_create_subscription is a member of pg_create_connection, so there's no change/break of the default behavior. But administrators who want the privileges to be separated can simply "REVOKE pg_create_connection FROM pg_create_subscription". Given that CREATE SUBSCRIPTION ... SERVER works on a server of any FDW, we would also need to protect against someone making using an unexpected FDW (with no validation or different validation) to construct a foreign server with malicious connection settings. To do so, I added to the grammar "CREATE SERVER ... FOR SUBSCRIPTION" (and a boolean catalog entry in pg_foreign_server) that can only be set by a member of pg_create_connection. There was some resistance[2] to adding more grammar/catalog impact than necessary, so I'm not sure if others think this is the right approach. The earlier patches are still worth it without 0004, but I do think the idea of separating the privileges is useful and it would be nice to find an agreeable solution to do so. At least with the 0004, the approach is a bit more direct. Regards, Jeff Davis [1] https://www.postgresql.org/message-id/9DFC88D3-1300-4DE8-ACBC-4CEF84399A53%= 40enterprisedb.com [2] https://www.postgresql.org/message-id/172273.1693403385%40sss.pgh.pa.us --=-BGB4L0ZPZie64oIr3KQS Content-Disposition: attachment; filename="v7-0001-Un-deprecate-postgresql_fdw_validator.patch" Content-Type: text/x-patch; name="v7-0001-Un-deprecate-postgresql_fdw_validator.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 RnJvbSAwN2I3YmFmNTBkZjNlY2FmNTI3NTMwZWE0NzQzNWVkZmM1ODg3MTRmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKZWZmIERhdmlzIDxqZWZmQGotZGF2aXMuY29tPgpEYXRlOiBU aHUsIDQgSmFuIDIwMjQgMTI6MTU6NTQgLTA4MDAKU3ViamVjdDogW1BBVENIIHY3IDEvNF0gVW4t ZGVwcmVjYXRlIHBvc3RncmVzcWxfZmR3X3ZhbGlkYXRvcigpLgoKRXh0ZW5kIHRoZSB3YWxyY3Zf IEFQSSB0byByZXRyaWV2ZSB0aGUgb3B0aW9ucyBsaXN0IGZyb20gbGlicHEsIGFuZAp1c2UgdGhh dCBmb3IgcG9zdGdyZXNxbF9mZHdfdmFsaWRhdG9yKCkuCgpCeSB1c2luZyB0aGUgY29ycmVjdCBs aWJwcSBvcHRpb25zLCBpdCBubyBsb25nZXIgbmVlZHMgdG8gYmUKZGVwcmVjYXRlZCwgYW5kIGNh biBiZSB1c2VkIGJ5IHRoZSB1cGNvbWluZyBwZ19jb25uZWN0aW9uX2Zkdy4KCkRpc2N1c3Npb246 IGh0dHBzOi8vcG9zdGdyLmVzL20vMmE4OWIxNGEyYjE2MjJiZmZiOGIxMzdjYTFmOWFiNzg2NmYy ZDJiOS5jYW1lbEBqLWRhdmlzLmNvbQotLS0KIHNyYy9iYWNrZW5kL2ZvcmVpZ24vZm9yZWlnbi5j ICAgICAgICAgICAgICAgICB8IDY3ICsrKysrKystLS0tLS0tLS0tLS0KIC4uLi9saWJwcXdhbHJl Y2VpdmVyL2xpYnBxd2FscmVjZWl2ZXIuYyAgICAgICB8IDQ4ICsrKysrKysrKysrKysKIHNyYy9p bmNsdWRlL3JlcGxpY2F0aW9uL3dhbHJlY2VpdmVyLmggICAgICAgICB8IDIwICsrKysrKwogMyBm aWxlcyBjaGFuZ2VkLCA5MSBpbnNlcnRpb25zKCspLCA0NCBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zcmMvYmFja2VuZC9mb3JlaWduL2ZvcmVpZ24uYyBiL3NyYy9iYWNrZW5kL2ZvcmVpZ24v Zm9yZWlnbi5jCmluZGV4IDAyZTE4OTgxMzEuLjc0N2NjMTFhNjAgMTAwNjQ0Ci0tLSBhL3NyYy9i YWNrZW5kL2ZvcmVpZ24vZm9yZWlnbi5jCisrKyBiL3NyYy9iYWNrZW5kL2ZvcmVpZ24vZm9yZWln bi5jCkBAIC0yMyw2ICsyMyw3IEBACiAjaW5jbHVkZSAiZnVuY2FwaS5oIgogI2luY2x1ZGUgImxp Yi9zdHJpbmdpbmZvLmgiCiAjaW5jbHVkZSAibWlzY2FkbWluLmgiCisjaW5jbHVkZSAicmVwbGlj YXRpb24vd2FscmVjZWl2ZXIuaCIKICNpbmNsdWRlICJ1dGlscy9idWlsdGlucy5oIgogI2luY2x1 ZGUgInV0aWxzL21lbXV0aWxzLmgiCiAjaW5jbHVkZSAidXRpbHMvcmVsLmgiCkBAIC01NDksNDAg KzU1MCw2IEBAIHBnX29wdGlvbnNfdG9fdGFibGUoUEdfRlVOQ1RJT05fQVJHUykKIH0KIAogCi0v KgotICogRGVzY3JpYmVzIHRoZSB2YWxpZCBvcHRpb25zIGZvciBwb3N0Z3Jlc3FsIEZEVywgc2Vy dmVyLCBhbmQgdXNlciBtYXBwaW5nLgotICovCi1zdHJ1Y3QgQ29ubmVjdGlvbk9wdGlvbgotewot CWNvbnN0IGNoYXIgKm9wdG5hbWU7Ci0JT2lkCQkJb3B0Y29udGV4dDsJCS8qIE9pZCBvZiBjYXRh bG9nIGluIHdoaWNoIG9wdGlvbiBtYXkgYXBwZWFyICovCi19OwotCi0vKgotICogQ29waWVkIGZy b20gZmUtY29ubmVjdC5jIFBRY29ubmluZm9PcHRpb25zLgotICoKLSAqIFRoZSBsaXN0IGlzIHNt YWxsIC0gZG9uJ3QgYm90aGVyIHdpdGggYnNlYXJjaCBpZiBpdCBzdGF5cyBzby4KLSAqLwotc3Rh dGljIGNvbnN0IHN0cnVjdCBDb25uZWN0aW9uT3B0aW9uIGxpYnBxX2Nvbm5pbmZvX29wdGlvbnNb XSA9IHsKLQl7ImF1dGh0eXBlIiwgRm9yZWlnblNlcnZlclJlbGF0aW9uSWR9LAotCXsic2Vydmlj ZSIsIEZvcmVpZ25TZXJ2ZXJSZWxhdGlvbklkfSwKLQl7InVzZXIiLCBVc2VyTWFwcGluZ1JlbGF0 aW9uSWR9LAotCXsicGFzc3dvcmQiLCBVc2VyTWFwcGluZ1JlbGF0aW9uSWR9LAotCXsiY29ubmVj dF90aW1lb3V0IiwgRm9yZWlnblNlcnZlclJlbGF0aW9uSWR9LAotCXsiZGJuYW1lIiwgRm9yZWln blNlcnZlclJlbGF0aW9uSWR9LAotCXsiaG9zdCIsIEZvcmVpZ25TZXJ2ZXJSZWxhdGlvbklkfSwK LQl7Imhvc3RhZGRyIiwgRm9yZWlnblNlcnZlclJlbGF0aW9uSWR9LAotCXsicG9ydCIsIEZvcmVp Z25TZXJ2ZXJSZWxhdGlvbklkfSwKLQl7InR0eSIsIEZvcmVpZ25TZXJ2ZXJSZWxhdGlvbklkfSwK LQl7Im9wdGlvbnMiLCBGb3JlaWduU2VydmVyUmVsYXRpb25JZH0sCi0JeyJyZXF1aXJlc3NsIiwg Rm9yZWlnblNlcnZlclJlbGF0aW9uSWR9LAotCXsic3NsbW9kZSIsIEZvcmVpZ25TZXJ2ZXJSZWxh dGlvbklkfSwKLQl7Imdzc2xpYiIsIEZvcmVpZ25TZXJ2ZXJSZWxhdGlvbklkfSwKLQl7Imdzc2Rl bGVnYXRpb24iLCBGb3JlaWduU2VydmVyUmVsYXRpb25JZH0sCi0Je05VTEwsIEludmFsaWRPaWR9 Ci19OwotCi0KIC8qCiAgKiBDaGVjayBpZiB0aGUgcHJvdmlkZWQgb3B0aW9uIGlzIG9uZSBvZiBs aWJwcSBjb25uaW5mbyBvcHRpb25zLgogICogY29udGV4dCBpcyB0aGUgT2lkIG9mIHRoZSBjYXRh bG9nIHRoZSBvcHRpb24gY2FtZSBmcm9tLCBvciAwIGlmIHdlCkBAIC01OTMsOSArNTYwLDIzIEBA IGlzX2Nvbm5pbmZvX29wdGlvbihjb25zdCBjaGFyICpvcHRpb24sIE9pZCBjb250ZXh0KQogewog CWNvbnN0IHN0cnVjdCBDb25uZWN0aW9uT3B0aW9uICpvcHQ7CiAKLQlmb3IgKG9wdCA9IGxpYnBx X2Nvbm5pbmZvX29wdGlvbnM7IG9wdC0+b3B0bmFtZTsgb3B0KyspCi0JCWlmIChjb250ZXh0ID09 IG9wdC0+b3B0Y29udGV4dCAmJiBzdHJjbXAob3B0LT5vcHRuYW1lLCBvcHRpb24pID09IDApCi0J CQlyZXR1cm4gdHJ1ZTsKKwkvKiBza2lwIG9wdGlvbnMgdGhhdCBtdXN0IGJlIG92ZXJyaWRkZW4g Ki8KKwlpZiAoc3RyY21wKG9wdGlvbiwgImNsaWVudF9lbmNvZGluZyIpID09IDApCisJCXJldHVy biBmYWxzZTsKKworCWZvciAob3B0ID0gd2FscmN2X2Nvbm5pbmZvX29wdGlvbnMoKTsgb3B0LT5v cHRuYW1lOyBvcHQrKykKKwl7CisJCWlmIChzdHJjbXAob3B0LT5vcHRuYW1lLCBvcHRpb24pID09 IDApCisJCXsKKwkJCWlmIChvcHQtPmlzZGVidWcpCisJCQkJcmV0dXJuIGZhbHNlOworCisJCQlp ZiAob3B0LT5pc3NlY3JldCB8fCBzdHJjbXAob3B0LT5vcHRuYW1lLCAidXNlciIpID09IDApCisJ CQkJcmV0dXJuIChjb250ZXh0ID09IFVzZXJNYXBwaW5nUmVsYXRpb25JZCk7CisKKwkJCXJldHVy biAoY29udGV4dCA9PSBGb3JlaWduU2VydmVyUmVsYXRpb25JZCk7CisJCX0KKwl9CiAJcmV0dXJu IGZhbHNlOwogfQogCkBAIC02MDYsMTEgKzU4Nyw2IEBAIGlzX2Nvbm5pbmZvX29wdGlvbihjb25z dCBjaGFyICpvcHRpb24sIE9pZCBjb250ZXh0KQogICoKICAqIFZhbGlkIHNlcnZlciBvcHRpb25z IGFyZSBhbGwgbGlicHEgY29ubmluZm8gb3B0aW9ucyBleGNlcHQKICAqIHVzZXIgYW5kIHBhc3N3 b3JkIC0tIHRoZXNlIG1heSBvbmx5IGFwcGVhciBpbiBVU0VSIE1BUFBJTkcgb3B0aW9ucy4KLSAq Ci0gKiBDYXV0aW9uOiB0aGlzIGZ1bmN0aW9uIGlzIGRlcHJlY2F0ZWQsIGFuZCBpcyBub3cgbWVh bnQgb25seSBmb3IgdGVzdGluZwotICogcHVycG9zZXMsIGJlY2F1c2UgdGhlIGxpc3Qgb2Ygb3B0 aW9ucyBpdCBrbm93cyBhYm91dCBkb2Vzbid0IG5lY2Vzc2FyaWx5Ci0gKiBzcXVhcmUgd2l0aCB0 aG9zZSBrbm93biB0byB3aGljaGV2ZXIgbGlicHEgaW5zdGFuY2UgeW91IG1pZ2h0IGJlIHVzaW5n LgotICogSW5xdWlyZSBvZiBsaWJwcSBpdHNlbGYsIGluc3RlYWQuCiAgKi8KIERhdHVtCiBwb3N0 Z3Jlc3FsX2Zkd192YWxpZGF0b3IoUEdfRlVOQ1RJT05fQVJHUykKQEAgLTYyMCw2ICs1OTYsOSBA QCBwb3N0Z3Jlc3FsX2Zkd192YWxpZGF0b3IoUEdfRlVOQ1RJT05fQVJHUykKIAogCUxpc3RDZWxs ICAgKmNlbGw7CiAKKwkvKiBMb2FkIHRoZSBsaWJyYXJ5IHByb3ZpZGluZyB1cyBsaWJwcSBjYWxs cy4gKi8KKwlsb2FkX2ZpbGUoImxpYnBxd2FscmVjZWl2ZXIiLCBmYWxzZSk7CisKIAlmb3JlYWNo KGNlbGwsIG9wdGlvbnNfbGlzdCkKIAl7CiAJCURlZkVsZW0gICAgKmRlZiA9IGxmaXJzdChjZWxs KTsKQEAgLTYzNiw5ICs2MTUsOSBAQCBwb3N0Z3Jlc3FsX2Zkd192YWxpZGF0b3IoUEdfRlVOQ1RJ T05fQVJHUykKIAkJCSAqIHdpdGggYSB2YWxpZCBvcHRpb24gdGhhdCBsb29rcyBzaW1pbGFyLCBp ZiB0aGVyZSBpcyBvbmUuCiAJCQkgKi8KIAkJCWluaXRDbG9zZXN0TWF0Y2goJm1hdGNoX3N0YXRl LCBkZWYtPmRlZm5hbWUsIDQpOwotCQkJZm9yIChvcHQgPSBsaWJwcV9jb25uaW5mb19vcHRpb25z OyBvcHQtPm9wdG5hbWU7IG9wdCsrKQorCQkJZm9yIChvcHQgPSB3YWxyY3ZfY29ubmluZm9fb3B0 aW9ucygpOyBvcHQtPm9wdG5hbWU7IG9wdCsrKQogCQkJewotCQkJCWlmIChjYXRhbG9nID09IG9w dC0+b3B0Y29udGV4dCkKKwkJCQlpZiAoaXNfY29ubmluZm9fb3B0aW9uKG9wdC0+b3B0bmFtZSwg Y2F0YWxvZykpCiAJCQkJewogCQkJCQloYXNfdmFsaWRfb3B0aW9ucyA9IHRydWU7CiAJCQkJCXVw ZGF0ZUNsb3Nlc3RNYXRjaCgmbWF0Y2hfc3RhdGUsIG9wdC0+b3B0bmFtZSk7CmRpZmYgLS1naXQg YS9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi9saWJwcXdhbHJlY2VpdmVyL2xpYnBxd2FscmVjZWl2 ZXIuYyBiL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xpYnBxd2FscmVjZWl2ZXIvbGlicHF3YWxy ZWNlaXZlci5jCmluZGV4IDIwMWMzNmNiMjIuLjU4ZjgyNjdmY2UgMTAwNjQ0Ci0tLSBhL3NyYy9i YWNrZW5kL3JlcGxpY2F0aW9uL2xpYnBxd2FscmVjZWl2ZXIvbGlicHF3YWxyZWNlaXZlci5jCisr KyBiL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xpYnBxd2FscmVjZWl2ZXIvbGlicHF3YWxyZWNl aXZlci5jCkBAIC01Myw2ICs1Myw3IEBAIHN0YXRpYyBXYWxSZWNlaXZlckNvbm4gKmxpYnBxcmN2 X2Nvbm5lY3QoY29uc3QgY2hhciAqY29ubmluZm8sCiAJCQkJCQkJCQkJIGNvbnN0IGNoYXIgKmFw cG5hbWUsIGNoYXIgKiplcnIpOwogc3RhdGljIHZvaWQgbGlicHFyY3ZfY2hlY2tfY29ubmluZm8o Y29uc3QgY2hhciAqY29ubmluZm8sCiAJCQkJCQkJCQlib29sIG11c3RfdXNlX3Bhc3N3b3JkKTsK K3N0YXRpYyBjb25zdCBzdHJ1Y3QgQ29ubmVjdGlvbk9wdGlvbiAqbGlicHFyY3ZfY29ubmluZm9f b3B0aW9ucyh2b2lkKTsKIHN0YXRpYyBjaGFyICpsaWJwcXJjdl9nZXRfY29ubmluZm8oV2FsUmVj ZWl2ZXJDb25uICpjb25uKTsKIHN0YXRpYyB2b2lkIGxpYnBxcmN2X2dldF9zZW5kZXJpbmZvKFdh bFJlY2VpdmVyQ29ubiAqY29ubiwKIAkJCQkJCQkJCWNoYXIgKipzZW5kZXJfaG9zdCwgaW50ICpz ZW5kZXJfcG9ydCk7CkBAIC04Niw2ICs4Nyw3IEBAIHN0YXRpYyB2b2lkIGxpYnBxcmN2X2Rpc2Nv bm5lY3QoV2FsUmVjZWl2ZXJDb25uICpjb25uKTsKIHN0YXRpYyBXYWxSZWNlaXZlckZ1bmN0aW9u c1R5cGUgUFFXYWxSZWNlaXZlckZ1bmN0aW9ucyA9IHsKIAkud2FscmN2X2Nvbm5lY3QgPSBsaWJw cXJjdl9jb25uZWN0LAogCS53YWxyY3ZfY2hlY2tfY29ubmluZm8gPSBsaWJwcXJjdl9jaGVja19j b25uaW5mbywKKwkud2FscmN2X2Nvbm5pbmZvX29wdGlvbnMgPSBsaWJwcXJjdl9jb25uaW5mb19v cHRpb25zLAogCS53YWxyY3ZfZ2V0X2Nvbm5pbmZvID0gbGlicHFyY3ZfZ2V0X2Nvbm5pbmZvLAog CS53YWxyY3ZfZ2V0X3NlbmRlcmluZm8gPSBsaWJwcXJjdl9nZXRfc2VuZGVyaW5mbywKIAkud2Fs cmN2X2lkZW50aWZ5X3N5c3RlbSA9IGxpYnBxcmN2X2lkZW50aWZ5X3N5c3RlbSwKQEAgLTI5OCw2 ICszMDAsNTIgQEAgbGlicHFyY3ZfY2hlY2tfY29ubmluZm8oY29uc3QgY2hhciAqY29ubmluZm8s IGJvb2wgbXVzdF91c2VfcGFzc3dvcmQpCiAJUFFjb25uaW5mb0ZyZWUob3B0cyk7CiB9CiAKK3N0 YXRpYyBjb25zdCBzdHJ1Y3QgQ29ubmVjdGlvbk9wdGlvbiAqCitsaWJwcXJjdl9jb25uaW5mb19v cHRpb25zKHZvaWQpCit7CisJc3RhdGljIHN0cnVjdCBDb25uZWN0aW9uT3B0aW9uCSpjb25uZWN0 aW9uX29wdGlvbnMgPSBOVUxMOworCisJaWYgKGNvbm5lY3Rpb25fb3B0aW9ucyA9PSBOVUxMKQor CXsKKwkJUFFjb25uaW5mb09wdGlvbgkJKmNvbm5kZWZhdWx0cwk9IFBRY29ubmRlZmF1bHRzKCk7 CisJCVBRY29ubmluZm9PcHRpb24JCSpsb3B0OworCQlzdHJ1Y3QgQ29ubmVjdGlvbk9wdGlvbgkq dG1wX29wdGlvbnMJPSBOVUxMOworCQlzdHJ1Y3QgQ29ubmVjdGlvbk9wdGlvbgkqcG9wdDsKKwkJ c2l6ZV90CQkJCQkgb3B0aW9uc19zaXplCT0gMDsKKwkJaW50CQkJCQkJIG51bV9saWJwcV9vcHRz CT0gMDsKKworCQlmb3IgKGxvcHQgPSBjb25uZGVmYXVsdHM7IGxvcHQtPmtleXdvcmQ7IGxvcHQr KykKKwkJCW51bV9saWJwcV9vcHRzKys7CisKKwkJLyogbGVhdmUgcm9vbSBmb3IgYWxsLXplcm8g ZW50cnkgYXQgdGhlIGVuZCAqLworCQlvcHRpb25zX3NpemUgPSBzaXplb2Yoc3RydWN0IENvbm5l Y3Rpb25PcHRpb24pICogKG51bV9saWJwcV9vcHRzICsgMSk7CisJCXRtcF9vcHRpb25zID0gTWVt b3J5Q29udGV4dEFsbG9jWmVybyhUb3BNZW1vcnlDb250ZXh0LCBvcHRpb25zX3NpemUpOworCisJ CXBvcHQgPSB0bXBfb3B0aW9uczsKKwkJZm9yIChsb3B0ID0gY29ubmRlZmF1bHRzOyBsb3B0LT5r ZXl3b3JkOyBsb3B0KyspCisJCXsKKwkJCWlmIChzdHJjaHIobG9wdC0+ZGlzcGNoYXIsICcqJykp CisJCQkJcG9wdC0+aXNzZWNyZXQgPSB0cnVlOworCQkJZWxzZSBpZiAoc3RyY2hyKGxvcHQtPmRp c3BjaGFyLCAnRCcpKQorCQkJCXBvcHQtPmlzZGVidWcgPSB0cnVlOworCisJCQlwb3B0LT5vcHRu YW1lID0gTWVtb3J5Q29udGV4dFN0cmR1cChUb3BNZW1vcnlDb250ZXh0LAorCQkJCQkJCQkJCQkJ bG9wdC0+a2V5d29yZCk7CisJCQlwb3B0Kys7CisJCX0KKworCQkvKiBsYXN0IGVudHJ5IGlzIGFs bCB6ZXJvICovCisJCUFzc2VydChwb3B0LT5vcHRuYW1lID09IE5VTEwpOworCisJCVBRY29ubmlu Zm9GcmVlKGNvbm5kZWZhdWx0cyk7CisKKwkJLyogaWYgZXZlcnl0aGluZyBzdWNjZWVkZWQsIHNl dCBzdGF0aWMgdmFyaWFibGUgKi8KKwkJY29ubmVjdGlvbl9vcHRpb25zID0gdG1wX29wdGlvbnM7 CisJfQorCisJcmV0dXJuIGNvbm5lY3Rpb25fb3B0aW9uczsKK30KKwogLyoKICAqIFJldHVybiBh IHVzZXItZGlzcGxheWFibGUgY29ubmluZm8gc3RyaW5nLiAgQW55IHNlY3VyaXR5LXNlbnNpdGl2 ZSBmaWVsZHMKICAqIGFyZSBvYmZ1c2NhdGVkLgpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvcmVw bGljYXRpb24vd2FscmVjZWl2ZXIuaCBiL3NyYy9pbmNsdWRlL3JlcGxpY2F0aW9uL3dhbHJlY2Vp dmVyLmgKaW5kZXggMDg5OTg5MWNkYi4uNTQxMzc3ZTA5NSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1 ZGUvcmVwbGljYXRpb24vd2FscmVjZWl2ZXIuaAorKysgYi9zcmMvaW5jbHVkZS9yZXBsaWNhdGlv bi93YWxyZWNlaXZlci5oCkBAIC0yMjMsNiArMjIzLDE2IEBAIHR5cGVkZWYgc3RydWN0IFdhbFJj dkV4ZWNSZXN1bHQKIAlUdXBsZURlc2MJdHVwbGVkZXNjOwogfSBXYWxSY3ZFeGVjUmVzdWx0Owog CisvKgorICogRGVzY3JpYmVzIHRoZSB2YWxpZCBvcHRpb25zIGZvciBwb3N0Z3Jlc3FsIEZEVywg c2VydmVyLCBhbmQgdXNlciBtYXBwaW5nLgorICovCitzdHJ1Y3QgQ29ubmVjdGlvbk9wdGlvbgor eworCWNvbnN0IGNoYXIgKm9wdG5hbWU7CisJYm9vbAkJaXNzZWNyZXQ7CQkvKiBpcyBvcHRpb24g Zm9yIGEgcGFzc3dvcmQ/ICovCisJYm9vbAkJaXNkZWJ1ZzsJCS8qIGlzIG9wdGlvbiBhIGRlYnVn IG9wdGlvbj8gKi8KK307CisKIC8qIFdBTCByZWNlaXZlciAtIGxpYnBxd2FscmVjZWl2ZXIgaG9v a3MgKi8KIAogLyoKQEAgLTI1MCw2ICsyNjAsMTMgQEAgdHlwZWRlZiBXYWxSZWNlaXZlckNvbm4g Kigqd2FscmN2X2Nvbm5lY3RfZm4pIChjb25zdCBjaGFyICpjb25uaW5mbywKIHR5cGVkZWYgdm9p ZCAoKndhbHJjdl9jaGVja19jb25uaW5mb19mbikgKGNvbnN0IGNoYXIgKmNvbm5pbmZvLAogCQkJ CQkJCQkJCSAgYm9vbCBtdXN0X3VzZV9wYXNzd29yZCk7CiAKKy8qCisgKiB3YWxyY3ZfY29ubmlu Zm9fb3B0aW9uc19mbgorICoKKyAqIFJldHVybiBhIHBvaW50ZXIgdG8gYSBzdGF0aWMgYXJyYXkg b2YgdGhlIGF2YWlsYWJsZSBvcHRpb25zIGZyb20gbGlicHEuCisgKi8KK3R5cGVkZWYgY29uc3Qg c3RydWN0IENvbm5lY3Rpb25PcHRpb24gKigqd2FscmN2X2Nvbm5pbmZvX29wdGlvbnNfZm4pICh2 b2lkKTsKKwogLyoKICAqIHdhbHJjdl9nZXRfY29ubmluZm9fZm4KICAqCkBAIC0zODksNiArNDA2 LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgV2FsUmVjZWl2ZXJGdW5jdGlvbnNUeXBlCiB7CiAJd2FscmN2 X2Nvbm5lY3RfZm4gd2FscmN2X2Nvbm5lY3Q7CiAJd2FscmN2X2NoZWNrX2Nvbm5pbmZvX2ZuIHdh bHJjdl9jaGVja19jb25uaW5mbzsKKwl3YWxyY3ZfY29ubmluZm9fb3B0aW9uc19mbiB3YWxyY3Zf Y29ubmluZm9fb3B0aW9uczsKIAl3YWxyY3ZfZ2V0X2Nvbm5pbmZvX2ZuIHdhbHJjdl9nZXRfY29u bmluZm87CiAJd2FscmN2X2dldF9zZW5kZXJpbmZvX2ZuIHdhbHJjdl9nZXRfc2VuZGVyaW5mbzsK IAl3YWxyY3ZfaWRlbnRpZnlfc3lzdGVtX2ZuIHdhbHJjdl9pZGVudGlmeV9zeXN0ZW07CkBAIC00 MTAsNiArNDI4LDggQEAgZXh0ZXJuIFBHRExMSU1QT1JUIFdhbFJlY2VpdmVyRnVuY3Rpb25zVHlw ZSAqV2FsUmVjZWl2ZXJGdW5jdGlvbnM7CiAJV2FsUmVjZWl2ZXJGdW5jdGlvbnMtPndhbHJjdl9j b25uZWN0KGNvbm5pbmZvLCBsb2dpY2FsLCBtdXN0X3VzZV9wYXNzd29yZCwgYXBwbmFtZSwgZXJy KQogI2RlZmluZSB3YWxyY3ZfY2hlY2tfY29ubmluZm8oY29ubmluZm8sIG11c3RfdXNlX3Bhc3N3 b3JkKSBcCiAJV2FsUmVjZWl2ZXJGdW5jdGlvbnMtPndhbHJjdl9jaGVja19jb25uaW5mbyhjb25u aW5mbywgbXVzdF91c2VfcGFzc3dvcmQpCisjZGVmaW5lIHdhbHJjdl9jb25uaW5mb19vcHRpb25z KCkgXAorCVdhbFJlY2VpdmVyRnVuY3Rpb25zLT53YWxyY3ZfY29ubmluZm9fb3B0aW9ucygpCiAj ZGVmaW5lIHdhbHJjdl9nZXRfY29ubmluZm8oY29ubikgXAogCVdhbFJlY2VpdmVyRnVuY3Rpb25z LT53YWxyY3ZfZ2V0X2Nvbm5pbmZvKGNvbm4pCiAjZGVmaW5lIHdhbHJjdl9nZXRfc2VuZGVyaW5m byhjb25uLCBzZW5kZXJfaG9zdCwgc2VuZGVyX3BvcnQpIFwKLS0gCjIuMzQuMQoK --=-BGB4L0ZPZie64oIr3KQS Content-Disposition: attachment; filename*0=v7-0002-Add-built-in-foreign-data-wrapper-pg_connection_f.pat; filename*1=ch Content-Type: text/x-patch; name="v7-0002-Add-built-in-foreign-data-wrapper-pg_connection_f.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 RnJvbSA5NjcxZDAzNGQ1ZTVkNzNjMjhiMjQ0NTQ5MjEyN2QxNDE3NDQ0YzZkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKZWZmIERhdmlzIDxqZWZmQGotZGF2aXMuY29tPgpEYXRlOiBU dWUsIDIgSmFuIDIwMjQgMTM6MzM6MjggLTA4MDAKU3ViamVjdDogW1BBVENIIHY3IDIvNF0gQWRk IGJ1aWx0LWluIGZvcmVpZ24gZGF0YSB3cmFwcGVyIHBnX2Nvbm5lY3Rpb25fZmR3LgoKSW4gcHJl cGFyYXRpb24gZm9yIENSRUFURSBTVUJTQ1JJUFRJT04gLi4uIFNFUlZFUi4KCkRpc2N1c3Npb246 IGh0dHBzOi8vcG9zdGdyLmVzL20vMmE4OWIxNGEyYjE2MjJiZmZiOGIxMzdjYTFmOWFiNzg2NmYy ZDJiOS5jYW1lbEBqLWRhdmlzLmNvbQotLS0KIGRvYy9zcmMvc2dtbC9mdW5jLnNnbWwgICAgICAg ICAgICAgICAgICAgICAgICB8ICAxOSArCiBzcmMvYmFja2VuZC9jYXRhbG9nL01ha2VmaWxlICAg ICAgICAgICAgICAgICAgfCAgIDEgKwogc3JjL2JhY2tlbmQvZm9yZWlnbi9mb3JlaWduLmMgICAg ICAgICAgICAgICAgIHwgMTQ1ICsrKysKIHNyYy9iaW4vcGdfZHVtcC9wZ19kdW1wLmMgICAgICAg ICAgICAgICAgICAgICB8ICAyMyArLQogc3JjL2luY2x1ZGUvY2F0YWxvZy9tZXNvbi5idWlsZCAg ICAgICAgICAgICAgIHwgICAxICsKIC4uLi9jYXRhbG9nL3BnX2ZvcmVpZ25fZGF0YV93cmFwcGVy LmRhdCAgICAgICB8ICAyMSArCiBzcmMvaW5jbHVkZS9jYXRhbG9nL3BnX2ZvcmVpZ25fZGF0YV93 cmFwcGVyLmggfCAgIDQgKy0KIHNyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQgICAgICAg ICAgICAgICB8ICAgNCArCiBzcmMvaW5jbHVkZS9mb3JlaWduL2ZvcmVpZ24uaCAgICAgICAgICAg ICAgICAgfCAgIDIgKwogc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9mb3JlaWduX2RhdGEub3V0 ICAgIHwgNzYwICsrKysrKysrKy0tLS0tLS0tLQogc3JjL3Rlc3QvcmVncmVzcy9zcWwvZm9yZWln bl9kYXRhLnNxbCAgICAgICAgIHwgMjc2ICsrKystLS0KIDExIGZpbGVzIGNoYW5nZWQsIDc3MCBp bnNlcnRpb25zKCspLCA0ODYgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjL2lu Y2x1ZGUvY2F0YWxvZy9wZ19mb3JlaWduX2RhdGFfd3JhcHBlci5kYXQKCmRpZmYgLS1naXQgYS9k b2Mvc3JjL3NnbWwvZnVuYy5zZ21sIGIvZG9jL3NyYy9zZ21sL2Z1bmMuc2dtbAppbmRleCAyMTBj N2MwYjAyLi43OWUxNzkyZWFlIDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvZnVuYy5zZ21sCisr KyBiL2RvYy9zcmMvc2dtbC9mdW5jLnNnbWwKQEAgLTI3OTg1LDYgKzI3OTg1LDI1IEBAIHBvc3Rn cmVzPSMgU0VMRUNUICcwLzAnOjpwZ19sc24gKyBwZC5zZWdtZW50X251bWJlciAqIHBzLnNldHRp bmc6OmludCArIDpvZmZzZXQKICAgICAgICA8L3BhcmE+PC9lbnRyeT4KICAgICAgIDwvcm93Pgog CisgICAgICA8cm93PgorICAgICAgIDxlbnRyeSByb2xlPSJmdW5jX3RhYmxlX2VudHJ5Ij48cGFy YSByb2xlPSJmdW5jX3NpZ25hdHVyZSI+CisgICAgICAgIDxpbmRleHRlcm0+CisgICAgICAgICA8 cHJpbWFyeT5wZ19jb25uaW5mb19mcm9tX3NlcnZlcjwvcHJpbWFyeT4KKyAgICAgICAgPC9pbmRl eHRlcm0+CisgICAgICAgIDxmdW5jdGlvbj5wZ19jb25uaW5mb19mcm9tX3NlcnZlcjwvZnVuY3Rp b24+ICggPHBhcmFtZXRlcj5zZXJ2ZXJuYW1lPC9wYXJhbWV0ZXI+IDx0eXBlPnRleHQ8L3R5cGU+ LCA8cGFyYW1ldGVyPnVzZXJuYW1lPC9wYXJhbWV0ZXI+IDx0eXBlPnRleHQ8L3R5cGU+LCA8cGFy YW1ldGVyPmFwcGVuZF9vdmVycmlkZXM8L3BhcmFtZXRlcj4gPHR5cGU+Ym9vbGVhbjwvdHlwZT4g KQorICAgICAgICA8cmV0dXJudmFsdWU+dGV4dDwvcmV0dXJudmFsdWU+CisgICAgICAgPC9wYXJh PgorICAgICAgIDxwYXJhPgorICAgICAgICBSZXR1cm5zIGNvbm5lY3Rpb24gc3RyaW5nIGdlbmVy YXRlZCBmcm9tIHRoZSBmb3JlaWduIHNlcnZlciBhbmQgdXNlcgorICAgICAgICBtYXBwaW5nIGFz c29jaWF0ZWQgd2l0aCB0aGUgZ2l2ZW4KKyAgICAgICAgPHJlcGxhY2VhYmxlPnNlcnZlcm5hbWU8 L3JlcGxhY2VhYmxlPiBhbmQKKyAgICAgICAgPHJlcGxhY2VhYmxlPnVzZXJuYW1lPC9yZXBsYWNl YWJsZT4uIElmCisgICAgICAgIDxyZXBsYWNlYWJsZT5hcHBlbmRfb3ZlcnJpZGVzPC9yZXBsYWNl YWJsZT4gaXMKKyAgICAgICAgPGxpdGVyYWw+dHJ1ZTwvbGl0ZXJhbD4sIGl0IGFwcGVuZHMgb3Zl cnJpZGUgcGFyYW1ldGVycyBuZWNlc3NhcnkgZm9yCisgICAgICAgIG1ha2luZyBvdXRib3VuZCBj b25uZWN0aW9ucy4KKyAgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgIDwvcm93PgorCiAgICAg ICA8cm93PgogICAgICAgIDxlbnRyeSBpZD0icGctbG9naWNhbC1lbWl0LW1lc3NhZ2UiIHJvbGU9 ImZ1bmNfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImZ1bmNfc2lnbmF0dXJlIj4KICAgICAgICAg PGluZGV4dGVybT4KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvTWFrZWZpbGUgYi9z cmMvYmFja2VuZC9jYXRhbG9nL01ha2VmaWxlCmluZGV4IGQ2YjIzYjRiZmQuLjc1NmEwNTJhNzAg MTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvTWFrZWZpbGUKKysrIGIvc3JjL2JhY2tl bmQvY2F0YWxvZy9NYWtlZmlsZQpAQCAtMTM2LDYgKzEzNiw3IEBAIFBPU1RHUkVTX0JLSV9EQVRB ID0gJChhZGRwcmVmaXggJCh0b3Bfc3JjZGlyKS9zcmMvaW5jbHVkZS9jYXRhbG9nLyxcCiAJcGdf Y29sbGF0aW9uLmRhdCBcCiAJcGdfY29udmVyc2lvbi5kYXQgXAogCXBnX2RhdGFiYXNlLmRhdCBc CisJcGdfZm9yZWlnbl9kYXRhX3dyYXBwZXIuZGF0IFwKIAlwZ19sYW5ndWFnZS5kYXQgXAogCXBn X25hbWVzcGFjZS5kYXQgXAogCXBnX29wY2xhc3MuZGF0IFwKZGlmZiAtLWdpdCBhL3NyYy9iYWNr ZW5kL2ZvcmVpZ24vZm9yZWlnbi5jIGIvc3JjL2JhY2tlbmQvZm9yZWlnbi9mb3JlaWduLmMKaW5k ZXggNzQ3Y2MxMWE2MC4uZWFkNGEyY2QyYyAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvZm9yZWln bi9mb3JlaWduLmMKKysrIGIvc3JjL2JhY2tlbmQvZm9yZWlnbi9mb3JlaWduLmMKQEAgLTE4LDE4 ICsxOCwyMiBAQAogI2luY2x1ZGUgImNhdGFsb2cvcGdfZm9yZWlnbl9zZXJ2ZXIuaCIKICNpbmNs dWRlICJjYXRhbG9nL3BnX2ZvcmVpZ25fdGFibGUuaCIKICNpbmNsdWRlICJjYXRhbG9nL3BnX3Vz ZXJfbWFwcGluZy5oIgorI2luY2x1ZGUgImNvbW1hbmRzL2RlZnJlbS5oIgogI2luY2x1ZGUgImZv cmVpZ24vZmR3YXBpLmgiCiAjaW5jbHVkZSAiZm9yZWlnbi9mb3JlaWduLmgiCiAjaW5jbHVkZSAi ZnVuY2FwaS5oIgogI2luY2x1ZGUgImxpYi9zdHJpbmdpbmZvLmgiCisjaW5jbHVkZSAibWIvcGdf d2NoYXIuaCIKICNpbmNsdWRlICJtaXNjYWRtaW4uaCIKICNpbmNsdWRlICJyZXBsaWNhdGlvbi93 YWxyZWNlaXZlci5oIgorI2luY2x1ZGUgInV0aWxzL2FjbC5oIgogI2luY2x1ZGUgInV0aWxzL2J1 aWx0aW5zLmgiCiAjaW5jbHVkZSAidXRpbHMvbWVtdXRpbHMuaCIKICNpbmNsdWRlICJ1dGlscy9y ZWwuaCIKICNpbmNsdWRlICJ1dGlscy9zeXNjYWNoZS5oIgogI2luY2x1ZGUgInV0aWxzL3Zhcmxl bmEuaCIKIAorc3RhdGljIGJvb2wgaXNfY29ubmluZm9fb3B0aW9uKGNvbnN0IGNoYXIgKm9wdGlv biwgT2lkIGNvbnRleHQpOwogCiAvKgogICogR2V0Rm9yZWlnbkRhdGFXcmFwcGVyIC0JbG9vayB1 cCB0aGUgZm9yZWlnbi1kYXRhIHdyYXBwZXIgYnkgT0lELgpAQCAtMTkxLDYgKzE5NSwxMTUgQEAg R2V0Rm9yZWlnblNlcnZlckJ5TmFtZShjb25zdCBjaGFyICpzcnZuYW1lLCBib29sIG1pc3Npbmdf b2spCiB9CiAKIAorLyoKKyAqIFZhbHVlcyBpbiBjb25uZWN0aW9uIHN0cmluZ3MgbXVzdCBiZSBl bmNsb3NlZCBpbiBzaW5nbGUgcXVvdGVzLiBTaW5nbGUKKyAqIHF1b3RlcyBhbmQgYmFja3NsYXNo ZXMgbXVzdCBiZSBlc2NhcGVkIHdpdGggYmFja3NsYXNoLiBOQjogdGhlc2UgcnVsZXMgYXJlCisg KiBkaWZmZXJlbnQgZnJvbSB0aGUgcnVsZXMgZm9yIGVzY2FwaW5nIGEgU1FMIGxpdGVyYWwuCisg Ki8KK3N0YXRpYyB2b2lkCithcHBlbmRFc2NhcGVkVmFsdWUoU3RyaW5nSW5mbyBzdHIsIGNvbnN0 IGNoYXIgKnZhbCkKK3sKKwlhcHBlbmRTdHJpbmdJbmZvQ2hhcihzdHIsICdcJycpOworCWZvciAo aW50IGkgPSAwOyB2YWxbaV0gIT0gJ1wwJzsgaSsrKQorCXsKKwkJaWYgKHZhbFtpXSA9PSAnXFwn IHx8IHZhbFtpXSA9PSAnXCcnKQorCQkJYXBwZW5kU3RyaW5nSW5mb0NoYXIoc3RyLCAnXFwnKTsK KwkJYXBwZW5kU3RyaW5nSW5mb0NoYXIoc3RyLCB2YWxbaV0pOworCX0KKwlhcHBlbmRTdHJpbmdJ bmZvQ2hhcihzdHIsICdcJycpOworfQorCisKKy8qCisgKiBIZWxwZXIgZm9yIEZvcmVpZ25TZXJ2 ZXJDb25uZWN0aW9uU3RyaW5nKCkgYW5kIHBnX2Nvbm5lY3Rpb25fdmFsaWRhdG9yKCkuCisgKgor ICogVHJhbnNmb3JtIGEgTGlzdCBvZiBEZWZFbGVtIGludG8gYSBjb25uZWN0aW9uIHN0cmluZy4K KyAqLworc3RhdGljIGNoYXIgKgorb3B0aW9uc190b19jb25uaW5mbyhMaXN0ICpvcHRpb25zLCBi b29sIGFwcGVuZF9vdmVycmlkZXMpCit7CisJU3RyaW5nSW5mb0RhdGEJIHN0cjsKKwlMaXN0Q2Vs bAkJKmxjOworCWNoYXIJCQkqc2VwID0gIiI7CisKKwlpbml0U3RyaW5nSW5mbygmc3RyKTsKKwlm b3JlYWNoKGxjLCBvcHRpb25zKQorCXsKKwkJRGVmRWxlbSAqZCA9IChEZWZFbGVtICopIGxmaXJz dChsYyk7CisJCWNoYXIgKm5hbWUgPSBkLT5kZWZuYW1lOworCQljaGFyICp2YWx1ZTsKKworCQkv KiBpZ25vcmUgdW5rbm93biBvcHRpb25zICovCisJCWlmICghaXNfY29ubmluZm9fb3B0aW9uKG5h bWUsIEZvcmVpZ25TZXJ2ZXJSZWxhdGlvbklkKSAmJgorCQkJIWlzX2Nvbm5pbmZvX29wdGlvbihu YW1lLCBVc2VyTWFwcGluZ1JlbGF0aW9uSWQpKQorCQkJY29udGludWU7CisKKwkJdmFsdWUgPSBk ZWZHZXRTdHJpbmcoZCk7CisKKwkJYXBwZW5kU3RyaW5nSW5mbygmc3RyLCAiJXMlcyA9ICIsIHNl cCwgbmFtZSk7CisJCWFwcGVuZEVzY2FwZWRWYWx1ZSgmc3RyLCB2YWx1ZSk7CisJCXNlcCA9ICIg IjsKKwl9CisKKwkvKiBvdmVycmlkZSBjbGllbnRfZW5jb2RpbmcgKi8KKwlpZiAoYXBwZW5kX292 ZXJyaWRlcykKKwl7CisJCWFwcGVuZFN0cmluZ0luZm8oJnN0ciwgIiVzY2xpZW50X2VuY29kaW5n ID0gIiwgc2VwKTsKKwkJYXBwZW5kRXNjYXBlZFZhbHVlKCZzdHIsIEdldERhdGFiYXNlRW5jb2Rp bmdOYW1lKCkpOworCQlzZXAgPSAiICI7CisJfQorCisJcmV0dXJuIHN0ci5kYXRhOworfQorCisK Ky8qCisgKiBHaXZlbiBhIHVzZXIgSUQgYW5kIHNlcnZlciBJRCwgcmV0dXJuIGEgcG9zdGdyZXMg Y29ubmVjdGlvbiBzdHJpbmcgc3VpdGFibGUKKyAqIHRvIHBhc3MgdG8gbGlicHEuCisgKi8KK2No YXIgKgorRm9yZWlnblNlcnZlckNvbm5lY3Rpb25TdHJpbmcoT2lkIHVzZXJpZCwgT2lkIHNlcnZl cmlkLCBib29sIGFwcGVuZF9vdmVycmlkZXMpCit7CisJc3RhdGljIE1lbW9yeUNvbnRleHQJIHRt cGNvbnRleHQgPSBOVUxMOworCUZvcmVpZ25TZXJ2ZXIJCQkqc2VydmVyOworCVVzZXJNYXBwaW5n CQkJCSp1bTsKKwlMaXN0CQkJCQkqb3B0aW9uczsKKwljaGFyCQkJCQkqY29ubmluZm87CisJTWVt b3J5Q29udGV4dAkJCSBvbGRjb250ZXh0OworCisJLyogTG9hZCB0aGUgbGlicmFyeSBwcm92aWRp bmcgdXMgbGlicHEgY2FsbHMuICovCisJbG9hZF9maWxlKCJsaWJwcXdhbHJlY2VpdmVyIiwgZmFs c2UpOworCisJLyoKKwkgKiBVc2UgYSB0ZW1wb3JhcnkgY29udGV4dCByYXRoZXIgdGhhbiB0cnlp bmcgdG8gdHJhY2sgaW5kaXZpZHVhbAorCSAqIGFsbG9jYXRpb25zIGluIEdldEZvcmVpZ25TZXJ2 ZXIoKSBhbmQgR2V0VXNlck1hcHBpbmcoKS4KKwkgKi8KKwlpZiAodG1wY29udGV4dCA9PSBOVUxM KQorCQl0bXBjb250ZXh0ID0gQWxsb2NTZXRDb250ZXh0Q3JlYXRlKFRvcE1lbW9yeUNvbnRleHQs CisJCQkJCQkJCQkJICAgInRlbXAgY29udGV4dCBmb3IgYnVpbGRpbmcgY29ubmVjdGlvbiBzdHJp bmciLAorCQkJCQkJCQkJCSAgIEFMTE9DU0VUX0RFRkFVTFRfU0laRVMpOworCisJb2xkY29udGV4 dCA9IE1lbW9yeUNvbnRleHRTd2l0Y2hUbyh0bXBjb250ZXh0KTsKKworCXNlcnZlciA9IEdldEZv cmVpZ25TZXJ2ZXIoc2VydmVyaWQpOworCXVtID0gR2V0VXNlck1hcHBpbmcodXNlcmlkLCBzZXJ2 ZXJpZCk7CisKKwkvKiB1c2VyIG1hcHBpbmcgb3B0aW9ucyBvdmVycmlkZSBzZXJ2ZXIgb3B0aW9u cyAqLworCW9wdGlvbnMgPSBsaXN0X2NvbmNhdChzZXJ2ZXItPm9wdGlvbnMsIHVtLT5vcHRpb25z KTsKKworCWNvbm5pbmZvID0gb3B0aW9uc190b19jb25uaW5mbyhvcHRpb25zLCBhcHBlbmRfb3Zl cnJpZGVzKTsKKworCU1lbW9yeUNvbnRleHRTd2l0Y2hUbyhvbGRjb250ZXh0KTsKKworCS8qIGNv cHkgb25seSBjb25uaW5mbyBpbnRvIHRoZSBjdXJyZW50IGNvbnRleHQgKi8KKwljb25uaW5mbyA9 IHBzdHJkdXAoY29ubmluZm8pOworCisJTWVtb3J5Q29udGV4dFJlc2V0KHRtcGNvbnRleHQpOwor CisJcmV0dXJuIGNvbm5pbmZvOworfQorCisKIC8qCiAgKiBHZXRVc2VyTWFwcGluZyAtIGxvb2sg dXAgdGhlIHVzZXIgbWFwcGluZy4KICAqCkBAIC01ODAsNiArNjkzLDM4IEBAIGlzX2Nvbm5pbmZv X29wdGlvbihjb25zdCBjaGFyICpvcHRpb24sIE9pZCBjb250ZXh0KQogCXJldHVybiBmYWxzZTsK IH0KIAorLyoKKyAqIHBnX2Nvbm5pbmZvX2Zyb21fc2VydmVyCisgKgorICogRXh0cmFjdCBjb25u ZWN0aW9uIHN0cmluZyBmcm9tIHRoZSBnaXZlbiBmb3JlaWduIHNlcnZlci4KKyAqLworRGF0dW0K K3BnX2Nvbm5pbmZvX2Zyb21fc2VydmVyKFBHX0ZVTkNUSU9OX0FSR1MpCit7CisJY2hhciAqc2Vy dmVyX25hbWUgPSB0ZXh0X3RvX2NzdHJpbmcoUEdfR0VUQVJHX1RFWFRfUCgwKSk7CisJY2hhciAq dXNlcl9uYW1lID0gdGV4dF90b19jc3RyaW5nKFBHX0dFVEFSR19URVhUX1AoMSkpOworCWJvb2wg IGFwcGVuZF9vdmVycmlkZXMgPSBQR19HRVRBUkdfQk9PTCgyKTsKKwlPaWQgc2VydmVyaWQgPSBn ZXRfZm9yZWlnbl9zZXJ2ZXJfb2lkKHNlcnZlcl9uYW1lLCBmYWxzZSk7CisJT2lkIHVzZXJpZCA9 IGdldF9yb2xlX29pZF9vcl9wdWJsaWModXNlcl9uYW1lKTsKKwlBY2xSZXN1bHQgYWNscmVzdWx0 OworCWNoYXIgKmNvbm5pbmZvOworCisJLyogaWYgdGhlIHNwZWNpZmllZCB1c2VyaWQgaXMgbm90 IFBVQkxJQywgY2hlY2sgU0VUIFJPTEUgcHJpdmlsZWdlcyAqLworCWlmICh1c2VyaWQgIT0gQUNM X0lEX1BVQkxJQykKKwkJY2hlY2tfY2FuX3NldF9yb2xlKEdldFVzZXJJZCgpLCB1c2VyaWQpOwor CisJLyogQUNMIGNoZWNrIG9uIGZvcmVpZ24gc2VydmVyICovCisJYWNscmVzdWx0ID0gb2JqZWN0 X2FjbGNoZWNrKEZvcmVpZ25TZXJ2ZXJSZWxhdGlvbklkLCBzZXJ2ZXJpZCwKKwkJCQkJCQkJR2V0 VXNlcklkKCksIEFDTF9VU0FHRSk7CisJaWYgKGFjbHJlc3VsdCAhPSBBQ0xDSEVDS19PSykKKwkJ YWNsY2hlY2tfZXJyb3IoYWNscmVzdWx0LCBPQkpFQ1RfRk9SRUlHTl9TRVJWRVIsIHNlcnZlcl9u YW1lKTsKKworCWNvbm5pbmZvID0gRm9yZWlnblNlcnZlckNvbm5lY3Rpb25TdHJpbmcodXNlcmlk LCBzZXJ2ZXJpZCwKKwkJCQkJCQkJCQkJIGFwcGVuZF9vdmVycmlkZXMpOworCisJUEdfUkVUVVJO X1RFWFRfUChjc3RyaW5nX3RvX3RleHQoY29ubmluZm8pKTsKK30KKwogCiAvKgogICogVmFsaWRh dGUgdGhlIGdlbmVyaWMgb3B0aW9uIGdpdmVuIHRvIFNFUlZFUiBvciBVU0VSIE1BUFBJTkcuCmRp ZmYgLS1naXQgYS9zcmMvYmluL3BnX2R1bXAvcGdfZHVtcC5jIGIvc3JjL2Jpbi9wZ19kdW1wL3Bn X2R1bXAuYwppbmRleCBiYzIwYTAyNWNlLi41YjdhMThkYmIxIDEwMDY0NAotLS0gYS9zcmMvYmlu L3BnX2R1bXAvcGdfZHVtcC5jCisrKyBiL3NyYy9iaW4vcGdfZHVtcC9wZ19kdW1wLmMKQEAgLTIw NjcsNiArMjA2NywyNyBAQCBzZWxlY3REdW1wYWJsZVN0YXRpc3RpY3NPYmplY3QoU3RhdHNFeHRJ bmZvICpzb2JqLCBBcmNoaXZlICpmb3V0KQogCQlzb2JqLT5kb2JqLmR1bXAgPSBEVU1QX0NPTVBP TkVOVF9OT05FOwogfQogCisvKgorICogc2VsZWN0RHVtcGFibGVGZHc6IHBvbGljeS1zZXR0aW5n IHN1YnJvdXRpbmUKKyAqCQlNYXJrIGZvcmVpZ24gZGF0YSB3cmFwcGVyIGFzIHRvIGJlIGR1bXBl ZCBvciBub3QKKyAqCisgKiBGcm9laWduIERhdGEgV3JhcHBlcnMgZG8gbm90IGJlbG9uZyB0byBh bnkgcGFydGljdWxhciBuYW1lc3BhY2UuICBUbworICogaWRlbnRpZnkgYnVpbHQtaW4gZm9yZWln biBkYXRhIHdyYXBwZXJzLCB3ZSBtdXN0IHJlc29ydCB0byBjaGVja2luZyB3aGV0aGVyCisgKiB0 aGUgbWV0aG9kJ3MgT0lEIGlzIGluIHRoZSByYW5nZSByZXNlcnZlZCBmb3IgaW5pdGRiLgorICov CitzdGF0aWMgdm9pZAorc2VsZWN0RHVtcGFibGVGZHcoRmR3SW5mbyAqZmR3aW5mbywgQXJjaGl2 ZSAqZm91dCkKK3sKKwlpZiAoY2hlY2tFeHRlbnNpb25NZW1iZXJzaGlwKCZmZHdpbmZvLT5kb2Jq LCBmb3V0KSkKKwkJcmV0dXJuOwkJCQkJLyogZXh0ZW5zaW9uIG1lbWJlcnNoaXAgb3ZlcnJpZGVz IGFsbCBlbHNlICovCisKKwlpZiAoZmR3aW5mby0+ZG9iai5jYXRJZC5vaWQgPD0gKE9pZCkgZ19s YXN0X2J1aWx0aW5fb2lkKQorCQlmZHdpbmZvLT5kb2JqLmR1bXAgPSBEVU1QX0NPTVBPTkVOVF9O T05FOworCWVsc2UKKwkJZmR3aW5mby0+ZG9iai5kdW1wID0gZm91dC0+ZG9wdC0+aW5jbHVkZV9l dmVyeXRoaW5nID8KKwkJCURVTVBfQ09NUE9ORU5UX0FMTCA6IERVTVBfQ09NUE9ORU5UX05PTkU7 Cit9CisKIC8qCiAgKiBzZWxlY3REdW1wYWJsZU9iamVjdDogcG9saWN5LXNldHRpbmcgc3Vicm91 dGluZQogICoJCU1hcmsgYSBnZW5lcmljIGR1bXBhYmxlIG9iamVjdCBhcyB0byBiZSBkdW1wZWQg b3Igbm90CkBAIC05NjYxLDcgKzk2ODIsNyBAQCBnZXRGb3JlaWduRGF0YVdyYXBwZXJzKEFyY2hp dmUgKmZvdXQsIGludCAqbnVtRm9yZWlnbkRhdGFXcmFwcGVycykKIAkJZmR3aW5mb1tpXS5mZHdv cHRpb25zID0gcGdfc3RyZHVwKFBRZ2V0dmFsdWUocmVzLCBpLCBpX2Zkd29wdGlvbnMpKTsKIAog CQkvKiBEZWNpZGUgd2hldGhlciB3ZSB3YW50IHRvIGR1bXAgaXQgKi8KLQkJc2VsZWN0RHVtcGFi bGVPYmplY3QoJihmZHdpbmZvW2ldLmRvYmopLCBmb3V0KTsKKwkJc2VsZWN0RHVtcGFibGVGZHco JmZkd2luZm9baV0sIGZvdXQpOwogCiAJCS8qIE1hcmsgd2hldGhlciBGRFcgaGFzIGFuIEFDTCAq LwogCQlpZiAoIVBRZ2V0aXNudWxsKHJlcywgaSwgaV9mZHdhY2wpKQpkaWZmIC0tZ2l0IGEvc3Jj L2luY2x1ZGUvY2F0YWxvZy9tZXNvbi5idWlsZCBiL3NyYy9pbmNsdWRlL2NhdGFsb2cvbWVzb24u YnVpbGQKaW5kZXggMmJjYmUzMjdjZi4uYzg3NTMzYzliMiAxMDA2NDQKLS0tIGEvc3JjL2luY2x1 ZGUvY2F0YWxvZy9tZXNvbi5idWlsZAorKysgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL21lc29uLmJ1 aWxkCkBAIC04Myw2ICs4Myw3IEBAIGJraV9kYXRhID0gWwogICAncGdfY29sbGF0aW9uLmRhdCcs CiAgICdwZ19jb252ZXJzaW9uLmRhdCcsCiAgICdwZ19kYXRhYmFzZS5kYXQnLAorICAncGdfZm9y ZWlnbl9kYXRhX3dyYXBwZXIuZGF0JywKICAgJ3BnX2xhbmd1YWdlLmRhdCcsCiAgICdwZ19uYW1l c3BhY2UuZGF0JywKICAgJ3BnX29wY2xhc3MuZGF0JywKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRl L2NhdGFsb2cvcGdfZm9yZWlnbl9kYXRhX3dyYXBwZXIuZGF0IGIvc3JjL2luY2x1ZGUvY2F0YWxv Zy9wZ19mb3JlaWduX2RhdGFfd3JhcHBlci5kYXQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MDAwMDAwMDAwMC4uZWY2OGZlNTk2NgotLS0gL2Rldi9udWxsCisrKyBiL3NyYy9pbmNsdWRlL2Nh dGFsb2cvcGdfZm9yZWlnbl9kYXRhX3dyYXBwZXIuZGF0CkBAIC0wLDAgKzEsMjEgQEAKKyMtLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCisjCisjIHBnX2ZvcmVpZ25fZGF0YV93cmFwcGVyLmRhdAorIyAgICBJbml0aWFs IGNvbnRlbnRzIG9mIHRoZSBwZ19mb3JlaWduX2RhdGFfd3JhcHBlciBzeXN0ZW0gY2F0YWxvZy4K KyMKKyMgUG9ydGlvbnMgQ29weXJpZ2h0IChjKSAxOTk2LTIwMjMsIFBvc3RncmVTUUwgR2xvYmFs IERldmVsb3BtZW50IEdyb3VwCisjIFBvcnRpb25zIENvcHlyaWdodCAoYykgMTk5NCwgUmVnZW50 cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhCisjCisjIHNyYy9pbmNsdWRlL2NhdGFs b2cvcGdfZm9yZWlnbl9kYXRhX3dyYXBwZXIuZGF0CisjCisjLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitbCisK K3sgb2lkID0+ICc2MDE1Jywgb2lkX3N5bWJvbCA9PiAnUEdfQ09OTkVDVElPTl9GRFcnLAorICBk ZXNjciA9PiAnUHNldWRvIEZEVyBmb3IgY29ubmVjdGlvbnMgdG8gUG9zdGdyZXMnLAorICBmZHdu YW1lID0+ICdwZ19jb25uZWN0aW9uX2ZkdycsCisgIGZkd3ZhbGlkYXRvciA9PiAncG9zdGdyZXNx bF9mZHdfdmFsaWRhdG9yJywKKyAgZmR3YWNsID0+ICdfbnVsbF8nLCBmZHdvcHRpb25zID0+ICdf bnVsbF8nfSwKKworXQpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19mb3JlaWdu X2RhdGFfd3JhcHBlci5oIGIvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19mb3JlaWduX2RhdGFfd3Jh cHBlci5oCmluZGV4IDVlMzllNGI0MmYuLmE3ODcwN2ZiNTkgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNs dWRlL2NhdGFsb2cvcGdfZm9yZWlnbl9kYXRhX3dyYXBwZXIuaAorKysgYi9zcmMvaW5jbHVkZS9j YXRhbG9nL3BnX2ZvcmVpZ25fZGF0YV93cmFwcGVyLmgKQEAgLTMwLDggKzMwLDggQEAgQ0FUQUxP RyhwZ19mb3JlaWduX2RhdGFfd3JhcHBlciwyMzI4LEZvcmVpZ25EYXRhV3JhcHBlclJlbGF0aW9u SWQpCiB7CiAJT2lkCQkJb2lkOwkJCS8qIG9pZCAqLwogCU5hbWVEYXRhCWZkd25hbWU7CQkvKiBm b3JlaWduLWRhdGEgd3JhcHBlciBuYW1lICovCi0JT2lkCQkJZmR3b3duZXIgQktJX0xPT0tVUChw Z19hdXRoaWQpOyAvKiBGRFcgb3duZXIgKi8KLQlPaWQJCQlmZHdoYW5kbGVyIEJLSV9MT09LVVBf T1BUKHBnX3Byb2MpOyAvKiBoYW5kbGVyIGZ1bmN0aW9uLCBvciAwCisJT2lkCQkJZmR3b3duZXIg QktJX0RFRkFVTFQoUE9TVEdSRVMpIEJLSV9MT09LVVAocGdfYXV0aGlkKTsgLyogRkRXIG93bmVy ICovCisJT2lkCQkJZmR3aGFuZGxlciBCS0lfREVGQVVMVCgwKSBCS0lfTE9PS1VQX09QVChwZ19w cm9jKTsgLyogaGFuZGxlciBmdW5jdGlvbiwgb3IgMAogCQkJCQkJCQkJCQkJCSAqIGlmIG5vbmUg Ki8KIAlPaWQJCQlmZHd2YWxpZGF0b3IgQktJX0xPT0tVUF9PUFQocGdfcHJvYyk7CS8qIG9wdGlv biB2YWxpZGF0aW9uCiAJCQkJCQkJCQkJCQkJCSAqIGZ1bmN0aW9uLCBvciAwIGlmCmRpZmYgLS1n aXQgYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0IGIvc3JjL2luY2x1ZGUvY2F0YWxv Zy9wZ19wcm9jLmRhdAppbmRleCA1ODgxMWE2NTMwLi4zMjJjZTAwMWY2IDEwMDY0NAotLS0gYS9z cmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CisrKyBiL3NyYy9pbmNsdWRlL2NhdGFsb2cv cGdfcHJvYy5kYXQKQEAgLTc1MTYsNiArNzUxNiwxMCBAQAogICBwcm9uYW1lID0+ICdwb3N0Z3Jl c3FsX2Zkd192YWxpZGF0b3InLCBwcm9yZXR0eXBlID0+ICdib29sJywKICAgcHJvYXJndHlwZXMg PT4gJ190ZXh0IG9pZCcsIHByb3NyYyA9PiAncG9zdGdyZXNxbF9mZHdfdmFsaWRhdG9yJyB9LAog Cit7IG9pZCA9PiAnNjEyMycsIGRlc2NyID0+ICdleHRyYWN0IGNvbm5lY3Rpb24gc3RyaW5nIGZy b20gdGhlIGdpdmVuIGZvcmVpZ24gc2VydmVyJywKKyAgcHJvbmFtZSA9PiAncGdfY29ubmluZm9f ZnJvbV9zZXJ2ZXInLCBwcm9yZXR0eXBlID0+ICd0ZXh0JywKKyAgcHJvYXJndHlwZXMgPT4gJ3Rl eHQgdGV4dCBib29sJywgcHJvc3JjID0+ICdwZ19jb25uaW5mb19mcm9tX3NlcnZlcicgfSwKKwog eyBvaWQgPT4gJzIyOTAnLCBkZXNjciA9PiAnSS9PJywKICAgcHJvbmFtZSA9PiAncmVjb3JkX2lu JywgcHJvdm9sYXRpbGUgPT4gJ3MnLCBwcm9yZXR0eXBlID0+ICdyZWNvcmQnLAogICBwcm9hcmd0 eXBlcyA9PiAnY3N0cmluZyBvaWQgaW50NCcsIHByb3NyYyA9PiAncmVjb3JkX2luJyB9LApkaWZm IC0tZ2l0IGEvc3JjL2luY2x1ZGUvZm9yZWlnbi9mb3JlaWduLmggYi9zcmMvaW5jbHVkZS9mb3Jl aWduL2ZvcmVpZ24uaAppbmRleCA4MmI4MTUzMTAwLi5iNWI5Yjk3ZjRkIDEwMDY0NAotLS0gYS9z cmMvaW5jbHVkZS9mb3JlaWduL2ZvcmVpZ24uaAorKysgYi9zcmMvaW5jbHVkZS9mb3JlaWduL2Zv cmVpZ24uaApAQCAtNjksNiArNjksOCBAQCBleHRlcm4gRm9yZWlnblNlcnZlciAqR2V0Rm9yZWln blNlcnZlckV4dGVuZGVkKE9pZCBzZXJ2ZXJpZCwKIAkJCQkJCQkJCQkJICAgYml0czE2IGZsYWdz KTsKIGV4dGVybiBGb3JlaWduU2VydmVyICpHZXRGb3JlaWduU2VydmVyQnlOYW1lKGNvbnN0IGNo YXIgKnNydm5hbWUsCiAJCQkJCQkJCQkJCSBib29sIG1pc3Npbmdfb2spOworZXh0ZXJuIGNoYXIg KkZvcmVpZ25TZXJ2ZXJDb25uZWN0aW9uU3RyaW5nKE9pZCB1c2VyaWQsIE9pZCBzZXJ2ZXJpZCwK KwkJCQkJCQkJCQkgICBib29sIGFwcGVuZF9vdmVycmlkZXMpOwogZXh0ZXJuIFVzZXJNYXBwaW5n ICpHZXRVc2VyTWFwcGluZyhPaWQgdXNlcmlkLCBPaWQgc2VydmVyaWQpOwogZXh0ZXJuIEZvcmVp Z25EYXRhV3JhcHBlciAqR2V0Rm9yZWlnbkRhdGFXcmFwcGVyKE9pZCBmZHdpZCk7CiBleHRlcm4g Rm9yZWlnbkRhdGFXcmFwcGVyICpHZXRGb3JlaWduRGF0YVdyYXBwZXJFeHRlbmRlZChPaWQgZmR3 aWQsCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2ZvcmVpZ25fZGF0YS5v dXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2ZvcmVpZ25fZGF0YS5vdXQKaW5kZXggMWRm ZTIzY2MxZS4uNmFlOTNjNDFmNiAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3Rl ZC9mb3JlaWduX2RhdGEub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvZm9yZWln bl9kYXRhLm91dApAQCAtMjEsMTUgKzIxLDE1IEBAIENSRUFURSBST0xFIHJlZ3Jlc3NfdGVzdF9y b2xlMjsKIENSRUFURSBST0xFIHJlZ3Jlc3NfdGVzdF9yb2xlX3N1cGVyIFNVUEVSVVNFUjsKIENS RUFURSBST0xFIHJlZ3Jlc3NfdGVzdF9pbmRpcmVjdDsKIENSRUFURSBST0xFIHJlZ3Jlc3NfdW5w cml2aWxlZ2VkX3JvbGU7Ci1DUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZHVtbXk7Ci1DT01N RU5UIE9OIEZPUkVJR04gREFUQSBXUkFQUEVSIGR1bW15IElTICd1c2VsZXNzJzsKLUNSRUFURSBG T1JFSUdOIERBVEEgV1JBUFBFUiBwb3N0Z3Jlc3FsIFZBTElEQVRPUiBwb3N0Z3Jlc3FsX2Zkd192 YWxpZGF0b3I7CitDUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19kdW1teTsKK0NP TU1FTlQgT04gRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19kdW1teSBJUyAndXNlbGVzcyc7 CitDUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19wb3N0Z3Jlc3FsIFZBTElEQVRP UiBwb3N0Z3Jlc3FsX2Zkd192YWxpZGF0b3I7CiAtLSBBdCB0aGlzIHBvaW50IHdlIHNob3VsZCBo YXZlIDIgYnVpbHQtaW4gd3JhcHBlcnMgYW5kIG5vIHNlcnZlcnMuCi1TRUxFQ1QgZmR3bmFtZSwg ZmR3aGFuZGxlcjo6cmVncHJvYywgZmR3dmFsaWRhdG9yOjpyZWdwcm9jLCBmZHdvcHRpb25zIEZS T00gcGdfZm9yZWlnbl9kYXRhX3dyYXBwZXIgT1JERVIgQlkgMSwgMiwgMzsKLSAgZmR3bmFtZSAg IHwgZmR3aGFuZGxlciB8ICAgICAgIGZkd3ZhbGlkYXRvciAgICAgICB8IGZkd29wdGlvbnMgCi0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLQotIGR1bW15ICAgICAgfCAtICAgICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAg ICAgIHwgCi0gcG9zdGdyZXNxbCB8IC0gICAgICAgICAgfCBwb3N0Z3Jlc3FsX2Zkd192YWxpZGF0 b3IgfCAKK1NFTEVDVCBmZHduYW1lLCBmZHdoYW5kbGVyOjpyZWdwcm9jLCBmZHd2YWxpZGF0b3I6 OnJlZ3Byb2MsIGZkd29wdGlvbnMgRlJPTSBwZ19mb3JlaWduX2RhdGFfd3JhcHBlciBXSEVSRSBm ZHduYW1lIExJS0UgJ3JlZ3Jlc3NfJScgT1JERVIgQlkgMSwgMiwgMzsKKyAgICAgIGZkd25hbWUg ICAgICAgfCBmZHdoYW5kbGVyIHwgICAgICAgZmR3dmFsaWRhdG9yICAgICAgIHwgZmR3b3B0aW9u cyAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0KKyByZWdyZXNzX2R1bW15ICAgICAgfCAtICAgICAgICAgIHwg LSAgICAgICAgICAgICAgICAgICAgICAgIHwgCisgcmVncmVzc19wb3N0Z3Jlc3FsIHwgLSAgICAg ICAgICB8IHBvc3RncmVzcWxfZmR3X3ZhbGlkYXRvciB8IAogKDIgcm93cykKIAogU0VMRUNUIHNy dm5hbWUsIHNydm9wdGlvbnMgRlJPTSBwZ19mb3JlaWduX3NlcnZlcjsKQEAgLTQzLDE4MCArNDMs MTgwIEBAIFNFTEVDVCAqIEZST00gcGdfdXNlcl9tYXBwaW5nOwogKDAgcm93cykKIAogLS0gQ1JF QVRFIEZPUkVJR04gREFUQSBXUkFQUEVSCi1DUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9v IFZBTElEQVRPUiBiYXI7ICAgICAgICAgICAgLS0gRVJST1IKK0NSRUFURSBGT1JFSUdOIERBVEEg V1JBUFBFUiByZWdyZXNzX2ZvbyBWQUxJREFUT1IgYmFyOyAgICAgICAgICAgIC0tIEVSUk9SCiBF UlJPUjogIGZ1bmN0aW9uIGJhcih0ZXh0W10sIG9pZCkgZG9lcyBub3QgZXhpc3QKLUNSRUFURSBG T1JFSUdOIERBVEEgV1JBUFBFUiBmb287Ci1cZGV3Ci0gICAgICAgICAgICAgICAgICAgICAgICBM aXN0IG9mIGZvcmVpZ24tZGF0YSB3cmFwcGVycwotICAgIE5hbWUgICAgfCAgICAgICAgICAgT3du ZXIgICAgICAgICAgIHwgSGFuZGxlciB8ICAgICAgICBWYWxpZGF0b3IgICAgICAgICAKLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tCi0gZHVtbXkgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIg fCAtICAgICAgIHwgLQotIGZvbyAgICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwg LSAgICAgICB8IC0KLSBwb3N0Z3Jlc3FsIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0g ICAgICAgfCBwb3N0Z3Jlc3FsX2Zkd192YWxpZGF0b3IKK0NSRUFURSBGT1JFSUdOIERBVEEgV1JB UFBFUiByZWdyZXNzX2ZvbzsKK1xkZXcgcmVncmVzc18qCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTGlzdCBvZiBmb3JlaWduLWRhdGEgd3JhcHBlcnMKKyAgICAgICAgTmFtZSAgICAgICAg fCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgSGFuZGxlciB8ICAgICAgICBWYWxpZGF0b3Ig ICAgICAgICAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyByZWdyZXNzX2R1bW15ICAg ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IC0KKyByZWdyZXNzX2Zv byAgICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IC0KKyByZWdy ZXNzX3Bvc3RncmVzcWwgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IHBv c3RncmVzcWxfZmR3X3ZhbGlkYXRvcgogKDMgcm93cykKIAotQ1JFQVRFIEZPUkVJR04gREFUQSBX UkFQUEVSIGZvbzsgLS0gZHVwbGljYXRlCi1FUlJPUjogIGZvcmVpZ24tZGF0YSB3cmFwcGVyICJm b28iIGFscmVhZHkgZXhpc3RzCi1EUk9QIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbzsKLUNSRUFU RSBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gT1BUSU9OUyAodGVzdGluZyAnMScpOwotXGRldysK LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9m IGZvcmVpZ24tZGF0YSB3cmFwcGVycwotICAgIE5hbWUgICAgfCAgICAgICAgICAgT3duZXIgICAg ICAgICAgIHwgSGFuZGxlciB8ICAgICAgICBWYWxpZGF0b3IgICAgICAgICB8IEFjY2VzcyBwcml2 aWxlZ2VzIHwgIEZEVyBvcHRpb25zICB8IERlc2NyaXB0aW9uIAotLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLQotIGR1 bW15ICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IC0gICAgICAg ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICB8IHVz ZWxlc3MKLSBmb28gICAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAg fCAtICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8ICh0ZXN0aW5n ICcxJykgfCAKLSBwb3N0Z3Jlc3FsIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAg ICAgfCBwb3N0Z3Jlc3FsX2Zkd192YWxpZGF0b3IgfCAgICAgICAgICAgICAgICAgICB8ICAgICAg ICAgICAgICAgfCAKK0NSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbzsgLS0g ZHVwbGljYXRlCitFUlJPUjogIGZvcmVpZ24tZGF0YSB3cmFwcGVyICJyZWdyZXNzX2ZvbyIgYWxy ZWFkeSBleGlzdHMKK0RST1AgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb287CitDUkVB VEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gT1BUSU9OUyAodGVzdGluZyAnMScp OworXGRldysgcmVncmVzc18qCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIExpc3Qgb2YgZm9yZWlnbi1kYXRhIHdyYXBwZXJzCisgICAgICAgIE5h bWUgICAgICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEhhbmRsZXIgfCAgICAgICAg VmFsaWRhdG9yICAgICAgICAgfCBBY2Nlc3MgcHJpdmlsZWdlcyB8ICBGRFcgb3B0aW9ucyAgfCBE ZXNjcmlwdGlvbiAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLQorIHJlZ3Jlc3NfZHVtbXkgICAgICB8 IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAg ICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgIHwgdXNlbGVzcworIHJl Z3Jlc3NfZm9vICAgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwg LSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAodGVzdGluZyAn MScpIHwgCisgcmVncmVzc19wb3N0Z3Jlc3FsIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8 IC0gICAgICAgfCBwb3N0Z3Jlc3FsX2Zkd192YWxpZGF0b3IgfCAgICAgICAgICAgICAgICAgICB8 ICAgICAgICAgICAgICAgfCAKICgzIHJvd3MpCiAKLURST1AgRk9SRUlHTiBEQVRBIFdSQVBQRVIg Zm9vOwotQ1JFQVRFIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBPUFRJT05TICh0ZXN0aW5nICcx JywgdGVzdGluZyAnMicpOyAgIC0tIEVSUk9SCitEUk9QIEZPUkVJR04gREFUQSBXUkFQUEVSIHJl Z3Jlc3NfZm9vOworQ1JFQVRFIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIE9QVElP TlMgKHRlc3RpbmcgJzEnLCB0ZXN0aW5nICcyJyk7ICAgLS0gRVJST1IKIEVSUk9SOiAgb3B0aW9u ICJ0ZXN0aW5nIiBwcm92aWRlZCBtb3JlIHRoYW4gb25jZQotQ1JFQVRFIEZPUkVJR04gREFUQSBX UkFQUEVSIGZvbyBPUFRJT05TICh0ZXN0aW5nICcxJywgYW5vdGhlciAnMicpOwotXGRldysKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0 IG9mIGZvcmVpZ24tZGF0YSB3cmFwcGVycwotICAgIE5hbWUgICAgfCAgICAgICAgICAgT3duZXIg ICAgICAgICAgIHwgSGFuZGxlciB8ICAgICAgICBWYWxpZGF0b3IgICAgICAgICB8IEFjY2VzcyBw cml2aWxlZ2VzIHwgICAgICAgIEZEVyBvcHRpb25zICAgICAgICAgfCBEZXNjcmlwdGlvbiAKLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tCi0gZHVtbXkgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9k YXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAg ICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHVzZWxlc3MKLSBmb28gICAg ICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAgICAgICAgICAg ICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8ICh0ZXN0aW5nICcxJywgYW5vdGhlciAn MicpIHwgCi0gcG9zdGdyZXNxbCB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAg IHwgcG9zdGdyZXNxbF9mZHdfdmFsaWRhdG9yIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8IAorQ1JFQVRFIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jl c3NfZm9vIE9QVElPTlMgKHRlc3RpbmcgJzEnLCBhbm90aGVyICcyJyk7CitcZGV3KyByZWdyZXNz XyoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTGlzdCBvZiBmb3JlaWduLWRhdGEgd3JhcHBlcnMKKyAgICAgICAgTmFtZSAgICAgICAg fCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgSGFuZGxlciB8ICAgICAgICBWYWxpZGF0b3Ig ICAgICAgICB8IEFjY2VzcyBwcml2aWxlZ2VzIHwgICAgICAgIEZEVyBvcHRpb25zICAgICAgICAg fCBEZXNjcmlwdGlvbiAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0KKyByZWdy ZXNzX2R1bW15ICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IC0g ICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCB1c2VsZXNzCisgcmVncmVzc19mb28gICAgICAgIHwgcmVncmVzc19m b3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICAgfCAg ICAgICAgICAgICAgICAgICB8ICh0ZXN0aW5nICcxJywgYW5vdGhlciAnMicpIHwgCisgcmVncmVz c19wb3N0Z3Jlc3FsIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCBwb3N0 Z3Jlc3FsX2Zkd192YWxpZGF0b3IgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgCiAoMyByb3dzKQogCi1EUk9QIEZPUkVJR04gREFUQSBXUkFQUEVSIGZv bzsKK0RST1AgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb287CiBTRVQgUk9MRSByZWdy ZXNzX3Rlc3Rfcm9sZTsKLUNSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb287IC0tIEVSUk9S Ci1FUlJPUjogIHBlcm1pc3Npb24gZGVuaWVkIHRvIGNyZWF0ZSBmb3JlaWduLWRhdGEgd3JhcHBl ciAiZm9vIgorQ1JFQVRFIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vOyAtLSBFUlJP UgorRVJST1I6ICBwZXJtaXNzaW9uIGRlbmllZCB0byBjcmVhdGUgZm9yZWlnbi1kYXRhIHdyYXBw ZXIgInJlZ3Jlc3NfZm9vIgogSElOVDogIE11c3QgYmUgc3VwZXJ1c2VyIHRvIGNyZWF0ZSBhIGZv cmVpZ24tZGF0YSB3cmFwcGVyLgogUkVTRVQgUk9MRTsKLUNSRUFURSBGT1JFSUdOIERBVEEgV1JB UFBFUiBmb28gVkFMSURBVE9SIHBvc3RncmVzcWxfZmR3X3ZhbGlkYXRvcjsKLVxkZXcrCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIGZvcmVp Z24tZGF0YSB3cmFwcGVycwotICAgIE5hbWUgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAg IHwgSGFuZGxlciB8ICAgICAgICBWYWxpZGF0b3IgICAgICAgICB8IEFjY2VzcyBwcml2aWxlZ2Vz IHwgRkRXIG9wdGlvbnMgfCBEZXNjcmlwdGlvbiAKLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tCi0gZHVtbXkgICAgICB8 IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAg ICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICB8IHVzZWxlc3MKLSBmb28g ICAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCBwb3N0Z3Jlc3Fs X2Zkd192YWxpZGF0b3IgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgIHwgCi0gcG9z dGdyZXNxbCB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgcG9zdGdyZXNx bF9mZHdfdmFsaWRhdG9yIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICB8IAorQ1JF QVRFIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIFZBTElEQVRPUiBwb3N0Z3Jlc3Fs X2Zkd192YWxpZGF0b3I7CitcZGV3KyByZWdyZXNzXyoKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIGZvcmVpZ24tZGF0YSB3cmFwcGVy cworICAgICAgICBOYW1lICAgICAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBIYW5k bGVyIHwgICAgICAgIFZhbGlkYXRvciAgICAgICAgIHwgQWNjZXNzIHByaXZpbGVnZXMgfCBGRFcg b3B0aW9ucyB8IERlc2NyaXB0aW9uIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLQorIHJlZ3Jlc3NfZHVt bXkgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAg ICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICB8IHVzZWxl c3MKKyByZWdyZXNzX2ZvbyAgICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAg ICAgICB8IHBvc3RncmVzcWxfZmR3X3ZhbGlkYXRvciB8ICAgICAgICAgICAgICAgICAgIHwgICAg ICAgICAgICAgfCAKKyByZWdyZXNzX3Bvc3RncmVzcWwgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91 c2VyIHwgLSAgICAgICB8IHBvc3RncmVzcWxfZmR3X3ZhbGlkYXRvciB8ICAgICAgICAgICAgICAg ICAgIHwgICAgICAgICAgICAgfCAKICgzIHJvd3MpCiAKIC0tIEhBTkRMRVIgcmVsYXRlZCBjaGVj a3MKIENSRUFURSBGVU5DVElPTiBpbnZhbGlkX2Zkd19oYW5kbGVyKCkgUkVUVVJOUyBpbnQgTEFO R1VBR0UgU1FMIEFTICdTRUxFQ1QgMTsnOwotQ1JFQVRFIEZPUkVJR04gREFUQSBXUkFQUEVSIHRl c3RfZmR3IEhBTkRMRVIgaW52YWxpZF9mZHdfaGFuZGxlcjsgIC0tIEVSUk9SCitDUkVBVEUgRk9S RUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc190ZXN0X2ZkdyBIQU5ETEVSIGludmFsaWRfZmR3X2hh bmRsZXI7ICAtLSBFUlJPUgogRVJST1I6ICBmdW5jdGlvbiBpbnZhbGlkX2Zkd19oYW5kbGVyIG11 c3QgcmV0dXJuIHR5cGUgZmR3X2hhbmRsZXIKLUNSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiB0 ZXN0X2ZkdyBIQU5ETEVSIHRlc3RfZmR3X2hhbmRsZXIgSEFORExFUiBpbnZhbGlkX2Zkd19oYW5k bGVyOyAgLS0gRVJST1IKK0NSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX3Rlc3Rf ZmR3IEhBTkRMRVIgdGVzdF9mZHdfaGFuZGxlciBIQU5ETEVSIGludmFsaWRfZmR3X2hhbmRsZXI7 ICAtLSBFUlJPUgogRVJST1I6ICBjb25mbGljdGluZyBvciByZWR1bmRhbnQgb3B0aW9ucwotTElO RSAxOiAuLi5HTiBEQVRBIFdSQVBQRVIgdGVzdF9mZHcgSEFORExFUiB0ZXN0X2Zkd19oYW5kbGVy IEhBTkRMRVIgaW4uLi4KK0xJTkUgMTogLi4uV1JBUFBFUiByZWdyZXNzX3Rlc3RfZmR3IEhBTkRM RVIgdGVzdF9mZHdfaGFuZGxlciBIQU5ETEVSIGluLi4uCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgotQ1JFQVRFIEZPUkVJR04g REFUQSBXUkFQUEVSIHRlc3RfZmR3IEhBTkRMRVIgdGVzdF9mZHdfaGFuZGxlcjsKLURST1AgRk9S RUlHTiBEQVRBIFdSQVBQRVIgdGVzdF9mZHc7CitDUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIg cmVncmVzc190ZXN0X2ZkdyBIQU5ETEVSIHRlc3RfZmR3X2hhbmRsZXI7CitEUk9QIEZPUkVJR04g REFUQSBXUkFQUEVSIHJlZ3Jlc3NfdGVzdF9mZHc7CiAtLSBBTFRFUiBGT1JFSUdOIERBVEEgV1JB UFBFUgotQUxURVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vIE9QVElPTlMgKG5vbmV4aXN0ZW50 ICdmZHcnKTsgICAgICAgICAtLSBFUlJPUgorQUxURVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVn cmVzc19mb28gT1BUSU9OUyAobm9uZXhpc3RlbnQgJ2ZkdycpOyAgICAgICAgIC0tIEVSUk9SCiBF UlJPUjogIGludmFsaWQgb3B0aW9uICJub25leGlzdGVudCIKIEhJTlQ6ICBUaGVyZSBhcmUgbm8g dmFsaWQgb3B0aW9ucyBpbiB0aGlzIGNvbnRleHQuCi1BTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBF UiBmb287ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgorQUxURVIgRk9SRUlH TiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb287ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAt LSBFUlJPUgogRVJST1I6ICBzeW50YXggZXJyb3IgYXQgb3IgbmVhciAiOyIKLUxJTkUgMTogQUxU RVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vOwotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBeCi1BTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gVkFMSURBVE9SIGJh cjsgICAgICAgICAgICAgICAtLSBFUlJPUgorTElORSAxOiBBTFRFUiBGT1JFSUdOIERBVEEgV1JB UFBFUiByZWdyZXNzX2ZvbzsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBeCitBTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBWQUxJREFU T1IgYmFyOyAgICAgICAgICAgICAgIC0tIEVSUk9SCiBFUlJPUjogIGZ1bmN0aW9uIGJhcih0ZXh0 W10sIG9pZCkgZG9lcyBub3QgZXhpc3QKLUFMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBO TyBWQUxJREFUT1I7Ci1cZGV3KwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTGlzdCBvZiBmb3JlaWduLWRhdGEgd3JhcHBlcnMKLSAgICBOYW1lICAgIHwg ICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEhhbmRsZXIgfCAgICAgICAgVmFsaWRhdG9yICAg ICAgICAgfCBBY2Nlc3MgcHJpdmlsZWdlcyB8IEZEVyBvcHRpb25zIHwgRGVzY3JpcHRpb24gCi0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLQotIGR1bW15ICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAg ICAgICB8IC0gICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAg ICAgICAgICAgfCB1c2VsZXNzCi0gZm9vICAgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3Vz ZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAg ICAgfCAgICAgICAgICAgICB8IAotIHBvc3RncmVzcWwgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91 c2VyIHwgLSAgICAgICB8IHBvc3RncmVzcWxfZmR3X3ZhbGlkYXRvciB8ICAgICAgICAgICAgICAg ICAgIHwgICAgICAgICAgICAgfCAKK0FMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3Nf Zm9vIE5PIFZBTElEQVRPUjsKK1xkZXcrIHJlZ3Jlc3NfKgorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2YgZm9yZWlnbi1kYXRhIHdyYXBw ZXJzCisgICAgICAgIE5hbWUgICAgICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEhh bmRsZXIgfCAgICAgICAgVmFsaWRhdG9yICAgICAgICAgfCBBY2Nlc3MgcHJpdmlsZWdlcyB8IEZE VyBvcHRpb25zIHwgRGVzY3JpcHRpb24gCistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tCisgcmVncmVzc19k dW1teSAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAgICAg ICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgIHwgdXNl bGVzcworIHJlZ3Jlc3NfZm9vICAgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAt ICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAg ICAgICAgICAgICB8IAorIHJlZ3Jlc3NfcG9zdGdyZXNxbCB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRh X3VzZXIgfCAtICAgICAgIHwgcG9zdGdyZXNxbF9mZHdfdmFsaWRhdG9yIHwgICAgICAgICAgICAg ICAgICAgfCAgICAgICAgICAgICB8IAogKDMgcm93cykKIAotQUxURVIgRk9SRUlHTiBEQVRBIFdS QVBQRVIgZm9vIE9QVElPTlMgKGEgJzEnLCBiICcyJyk7Ci1BTFRFUiBGT1JFSUdOIERBVEEgV1JB UFBFUiBmb28gT1BUSU9OUyAoU0VUIGMgJzQnKTsgICAgICAgICAtLSBFUlJPUgorQUxURVIgRk9S RUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gT1BUSU9OUyAoYSAnMScsIGIgJzInKTsKK0FM VEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIE9QVElPTlMgKFNFVCBjICc0Jyk7 ICAgICAgICAgLS0gRVJST1IKIEVSUk9SOiAgb3B0aW9uICJjIiBub3QgZm91bmQKLUFMVEVSIEZP UkVJR04gREFUQSBXUkFQUEVSIGZvbyBPUFRJT05TIChEUk9QIGMpOyAgICAgICAgICAgIC0tIEVS Uk9SCitBTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBPUFRJT05TIChEUk9Q IGMpOyAgICAgICAgICAgIC0tIEVSUk9SCiBFUlJPUjogIG9wdGlvbiAiYyIgbm90IGZvdW5kCi1B TFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gT1BUSU9OUyAoQUREIHggJzEnLCBEUk9QIHgp OwotXGRldysKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBMaXN0IG9mIGZvcmVpZ24tZGF0YSB3cmFwcGVycwotICAgIE5hbWUgICAgfCAgICAgICAgICAg T3duZXIgICAgICAgICAgIHwgSGFuZGxlciB8ICAgICAgICBWYWxpZGF0b3IgICAgICAgICB8IEFj Y2VzcyBwcml2aWxlZ2VzIHwgIEZEVyBvcHRpb25zICAgfCBEZXNjcmlwdGlvbiAKLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tCi0gZHVtbXkgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAg IHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAg ICAgICAgICB8IHVzZWxlc3MKLSBmb28gICAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNl ciB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAg ICB8IChhICcxJywgYiAnMicpIHwgCi0gcG9zdGdyZXNxbCB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRh X3VzZXIgfCAtICAgICAgIHwgcG9zdGdyZXNxbF9mZHdfdmFsaWRhdG9yIHwgICAgICAgICAgICAg ICAgICAgfCAgICAgICAgICAgICAgICB8IAorQUxURVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVn cmVzc19mb28gT1BUSU9OUyAoQUREIHggJzEnLCBEUk9QIHgpOworXGRldysgcmVncmVzc18qCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qg b2YgZm9yZWlnbi1kYXRhIHdyYXBwZXJzCisgICAgICAgIE5hbWUgICAgICAgIHwgICAgICAgICAg IE93bmVyICAgICAgICAgICB8IEhhbmRsZXIgfCAgICAgICAgVmFsaWRhdG9yICAgICAgICAgfCBB Y2Nlc3MgcHJpdmlsZWdlcyB8ICBGRFcgb3B0aW9ucyAgIHwgRGVzY3JpcHRpb24gCistLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tCisgcmVncmVzc19kdW1teSAgICAgIHwgcmVncmVzc19mb3JlaWduX2Rh dGFfdXNlciB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAg ICAgICAgICB8ICAgICAgICAgICAgICAgIHwgdXNlbGVzcworIHJlZ3Jlc3NfZm9vICAgICAgICB8 IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAg ICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAoYSAnMScsIGIgJzInKSB8IAorIHJlZ3Jlc3Nf cG9zdGdyZXNxbCB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgcG9zdGdy ZXNxbF9mZHdfdmFsaWRhdG9yIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICB8 IAogKDMgcm93cykKIAotQUxURVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vIE9QVElPTlMgKERS T1AgYSwgU0VUIGIgJzMnLCBBREQgYyAnNCcpOwotXGRldysKLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIGZvcmVpZ24tZGF0YSB3cmFwcGVy cwotICAgIE5hbWUgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgSGFuZGxlciB8ICAg ICAgICBWYWxpZGF0b3IgICAgICAgICB8IEFjY2VzcyBwcml2aWxlZ2VzIHwgIEZEVyBvcHRpb25z ICAgfCBEZXNjcmlwdGlvbiAKLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tCi0gZHVtbXkgICAgICB8IHJlZ3Jlc3Nf Zm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwg ICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICB8IHVzZWxlc3MKLSBmb28gICAgICAg IHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAg ICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8IChiICczJywgYyAnNCcpIHwgCi0gcG9zdGdy ZXNxbCB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgcG9zdGdyZXNxbF9m ZHdfdmFsaWRhdG9yIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICB8IAorQUxU RVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gT1BUSU9OUyAoRFJPUCBhLCBTRVQg YiAnMycsIEFERCBjICc0Jyk7CitcZGV3KyByZWdyZXNzXyoKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBmb3JlaWduLWRhdGEgd3Jh cHBlcnMKKyAgICAgICAgTmFtZSAgICAgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwg SGFuZGxlciB8ICAgICAgICBWYWxpZGF0b3IgICAgICAgICB8IEFjY2VzcyBwcml2aWxlZ2VzIHwg IEZEVyBvcHRpb25zICAgfCBEZXNjcmlwdGlvbiAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0KKyBy ZWdyZXNzX2R1bW15ICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8 IC0gICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAg ICAgICAgfCB1c2VsZXNzCisgcmVncmVzc19mb28gICAgICAgIHwgcmVncmVzc19mb3JlaWduX2Rh dGFfdXNlciB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAg ICAgICAgICB8IChiICczJywgYyAnNCcpIHwgCisgcmVncmVzc19wb3N0Z3Jlc3FsIHwgcmVncmVz c19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCBwb3N0Z3Jlc3FsX2Zkd192YWxpZGF0b3Ig fCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgIHwgCiAoMyByb3dzKQogCi1BTFRF UiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gT1BUSU9OUyAoYSAnMicpOwotQUxURVIgRk9SRUlH TiBEQVRBIFdSQVBQRVIgZm9vIE9QVElPTlMgKGIgJzQnKTsgICAgICAgICAgICAgLS0gRVJST1IK K0FMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIE9QVElPTlMgKGEgJzInKTsK K0FMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIE9QVElPTlMgKGIgJzQnKTsg ICAgICAgICAgICAgLS0gRVJST1IKIEVSUk9SOiAgb3B0aW9uICJiIiBwcm92aWRlZCBtb3JlIHRo YW4gb25jZQotXGRldysKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTGlzdCBvZiBmb3JlaWduLWRhdGEgd3JhcHBlcnMKLSAgICBOYW1lICAgIHwg ICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEhhbmRsZXIgfCAgICAgICAgVmFsaWRhdG9yICAg ICAgICAgfCBBY2Nlc3MgcHJpdmlsZWdlcyB8ICAgICAgRkRXIG9wdGlvbnMgICAgICB8IERlc2Ny aXB0aW9uIAotLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tCi0gZHVtbXkgICAgICB8IHJlZ3Jlc3NfZm9y ZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAg ICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfCB1c2VsZXNzCi0gZm9vICAg ICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAg ICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAoYiAnMycsIGMgJzQnLCBhICcyJykg fCAKLSBwb3N0Z3Jlc3FsIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCBw b3N0Z3Jlc3FsX2Zkd192YWxpZGF0b3IgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAg ICAgICAgICAgICB8IAorXGRldysgcmVncmVzc18qCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIGZvcmVpZ24tZGF0YSB3cmFw cGVycworICAgICAgICBOYW1lICAgICAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBI YW5kbGVyIHwgICAgICAgIFZhbGlkYXRvciAgICAgICAgIHwgQWNjZXNzIHByaXZpbGVnZXMgfCAg ICAgIEZEVyBvcHRpb25zICAgICAgfCBEZXNjcmlwdGlvbiAKKy0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tCisgcmVncmVzc19kdW1teSAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNl ciB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAg ICB8ICAgICAgICAgICAgICAgICAgICAgICB8IHVzZWxlc3MKKyByZWdyZXNzX2ZvbyAgICAgICAg fCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IC0gICAgICAgICAgICAgICAg ICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgKGIgJzMnLCBjICc0JywgYSAnMicpIHwgCisg cmVncmVzc19wb3N0Z3Jlc3FsIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAg fCBwb3N0Z3Jlc3FsX2Zkd192YWxpZGF0b3IgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAg ICAgICAgICAgICAgICB8IAogKDMgcm93cykKIAogU0VUIFJPTEUgcmVncmVzc190ZXN0X3JvbGU7 Ci1BTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gT1BUSU9OUyAoQUREIGQgJzUnKTsgICAg ICAgICAtLSBFUlJPUgotRVJST1I6ICBwZXJtaXNzaW9uIGRlbmllZCB0byBhbHRlciBmb3JlaWdu LWRhdGEgd3JhcHBlciAiZm9vIgorQUxURVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19m b28gT1BUSU9OUyAoQUREIGQgJzUnKTsgICAgICAgICAtLSBFUlJPUgorRVJST1I6ICBwZXJtaXNz aW9uIGRlbmllZCB0byBhbHRlciBmb3JlaWduLWRhdGEgd3JhcHBlciAicmVncmVzc19mb28iCiBI SU5UOiAgTXVzdCBiZSBzdXBlcnVzZXIgdG8gYWx0ZXIgYSBmb3JlaWduLWRhdGEgd3JhcHBlci4K IFNFVCBST0xFIHJlZ3Jlc3NfdGVzdF9yb2xlX3N1cGVyOwotQUxURVIgRk9SRUlHTiBEQVRBIFdS QVBQRVIgZm9vIE9QVElPTlMgKEFERCBkICc1Jyk7Ci1cZGV3KwotICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIGZvcmVpZ24tZGF0 YSB3cmFwcGVycwotICAgIE5hbWUgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgSGFu ZGxlciB8ICAgICAgICBWYWxpZGF0b3IgICAgICAgICB8IEFjY2VzcyBwcml2aWxlZ2VzIHwgICAg ICAgICBGRFcgb3B0aW9ucyAgICAgICAgICB8IERlc2NyaXB0aW9uIAotLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLQotIGR1bW15ICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwg LSAgICAgICB8IC0gICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHVzZWxlc3MKLSBmb28gICAgICAgIHwgcmVn cmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAg ICAgfCAgICAgICAgICAgICAgICAgICB8IChiICczJywgYyAnNCcsIGEgJzInLCBkICc1JykgfCAK LSBwb3N0Z3Jlc3FsIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCBwb3N0 Z3Jlc3FsX2Zkd192YWxpZGF0b3IgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAKK0FMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9v IE9QVElPTlMgKEFERCBkICc1Jyk7CitcZGV3KyByZWdyZXNzXyoKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2YgZm9yZWln bi1kYXRhIHdyYXBwZXJzCisgICAgICAgIE5hbWUgICAgICAgIHwgICAgICAgICAgIE93bmVyICAg ICAgICAgICB8IEhhbmRsZXIgfCAgICAgICAgVmFsaWRhdG9yICAgICAgICAgfCBBY2Nlc3MgcHJp dmlsZWdlcyB8ICAgICAgICAgRkRXIG9wdGlvbnMgICAgICAgICAgfCBEZXNjcmlwdGlvbiAKKy0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLQorIHJlZ3Jlc3NfZHVtbXkgICAgICB8 IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAg ICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgdXNlbGVzcworIHJlZ3Jlc3NfZm9vICAgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3Vz ZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAg ICAgfCAoYiAnMycsIGMgJzQnLCBhICcyJywgZCAnNScpIHwgCisgcmVncmVzc19wb3N0Z3Jlc3Fs IHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCBwb3N0Z3Jlc3FsX2Zkd192 YWxpZGF0b3IgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgfCAKICgzIHJvd3MpCiAKLUFMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBPV05FUiBU TyByZWdyZXNzX3Rlc3Rfcm9sZTsgIC0tIEVSUk9SCi1FUlJPUjogIHBlcm1pc3Npb24gZGVuaWVk IHRvIGNoYW5nZSBvd25lciBvZiBmb3JlaWduLWRhdGEgd3JhcHBlciAiZm9vIgorQUxURVIgRk9S RUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gT1dORVIgVE8gcmVncmVzc190ZXN0X3JvbGU7 ICAtLSBFUlJPUgorRVJST1I6ICBwZXJtaXNzaW9uIGRlbmllZCB0byBjaGFuZ2Ugb3duZXIgb2Yg Zm9yZWlnbi1kYXRhIHdyYXBwZXIgInJlZ3Jlc3NfZm9vIgogSElOVDogIFRoZSBvd25lciBvZiBh IGZvcmVpZ24tZGF0YSB3cmFwcGVyIG11c3QgYmUgYSBzdXBlcnVzZXIuCi1BTFRFUiBGT1JFSUdO IERBVEEgV1JBUFBFUiBmb28gT1dORVIgVE8gcmVncmVzc190ZXN0X3JvbGVfc3VwZXI7CitBTFRF UiBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBPV05FUiBUTyByZWdyZXNzX3Rlc3Rf cm9sZV9zdXBlcjsKIEFMVEVSIFJPTEUgcmVncmVzc190ZXN0X3JvbGVfc3VwZXIgTk9TVVBFUlVT RVI7CiBTRVQgUk9MRSByZWdyZXNzX3Rlc3Rfcm9sZV9zdXBlcjsKLUFMVEVSIEZPUkVJR04gREFU QSBXUkFQUEVSIGZvbyBPUFRJT05TIChBREQgZSAnNicpOyAgICAgICAgIC0tIEVSUk9SCi1FUlJP UjogIHBlcm1pc3Npb24gZGVuaWVkIHRvIGFsdGVyIGZvcmVpZ24tZGF0YSB3cmFwcGVyICJmb28i CitBTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBPUFRJT05TIChBREQgZSAn NicpOyAgICAgICAgIC0tIEVSUk9SCitFUlJPUjogIHBlcm1pc3Npb24gZGVuaWVkIHRvIGFsdGVy IGZvcmVpZ24tZGF0YSB3cmFwcGVyICJyZWdyZXNzX2ZvbyIKIEhJTlQ6ICBNdXN0IGJlIHN1cGVy dXNlciB0byBhbHRlciBhIGZvcmVpZ24tZGF0YSB3cmFwcGVyLgogUkVTRVQgUk9MRTsKLVxkZXcr Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IExpc3Qgb2YgZm9yZWlnbi1kYXRhIHdyYXBwZXJzCi0gICAgTmFtZSAgICB8ICAgICAgICAgICBP d25lciAgICAgICAgICAgfCBIYW5kbGVyIHwgICAgICAgIFZhbGlkYXRvciAgICAgICAgIHwgQWNj ZXNzIHByaXZpbGVnZXMgfCAgICAgICAgIEZEVyBvcHRpb25zICAgICAgICAgIHwgRGVzY3JpcHRp b24gCi0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tCi0gZHVtbXkgICAgICB8IHJlZ3Jlc3Nf Zm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwg ICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgdXNlbGVz cwotIGZvbyAgICAgICAgfCByZWdyZXNzX3Rlc3Rfcm9sZV9zdXBlciAgIHwgLSAgICAgICB8IC0g ICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgKGIgJzMnLCBjICc0 JywgYSAnMicsIGQgJzUnKSB8IAotIHBvc3RncmVzcWwgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91 c2VyIHwgLSAgICAgICB8IHBvc3RncmVzcWxfZmR3X3ZhbGlkYXRvciB8ICAgICAgICAgICAgICAg ICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IAorXGRldysgcmVncmVzc18qCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBMaXN0IG9mIGZvcmVpZ24tZGF0YSB3cmFwcGVycworICAgICAgICBOYW1lICAgICAgICB8ICAg ICAgICAgICBPd25lciAgICAgICAgICAgfCBIYW5kbGVyIHwgICAgICAgIFZhbGlkYXRvciAgICAg ICAgIHwgQWNjZXNzIHByaXZpbGVnZXMgfCAgICAgICAgIEZEVyBvcHRpb25zICAgICAgICAgIHwg RGVzY3JpcHRpb24gCistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0KKyByZWdy ZXNzX2R1bW15ICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IC0g ICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8IHVzZWxlc3MKKyByZWdyZXNzX2ZvbyAgICAgICAgfCByZWdyZXNz X3Rlc3Rfcm9sZV9zdXBlciAgIHwgLSAgICAgICB8IC0gICAgICAgICAgICAgICAgICAgICAgICB8 ICAgICAgICAgICAgICAgICAgIHwgKGIgJzMnLCBjICc0JywgYSAnMicsIGQgJzUnKSB8IAorIHJl Z3Jlc3NfcG9zdGdyZXNxbCB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwg cG9zdGdyZXNxbF9mZHdfdmFsaWRhdG9yIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgCiAoMyByb3dzKQogCi1BTFRFUiBGT1JFSUdOIERBVEEgV1JB UFBFUiBmb28gUkVOQU1FIFRPIGZvbzE7Ci1cZGV3KwotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIGZvcmVpZ24tZGF0YSB3cmFw cGVycwotICAgIE5hbWUgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgSGFuZGxlciB8 ICAgICAgICBWYWxpZGF0b3IgICAgICAgICB8IEFjY2VzcyBwcml2aWxlZ2VzIHwgICAgICAgICBG RFcgb3B0aW9ucyAgICAgICAgICB8IERlc2NyaXB0aW9uIAotLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLQotIGR1bW15ICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAg ICB8IC0gICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB8IHVzZWxlc3MKLSBmb28xICAgICAgIHwgcmVncmVzc190 ZXN0X3JvbGVfc3VwZXIgICB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICAgfCAg ICAgICAgICAgICAgICAgICB8IChiICczJywgYyAnNCcsIGEgJzInLCBkICc1JykgfCAKLSBwb3N0 Z3Jlc3FsIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCBwb3N0Z3Jlc3Fs X2Zkd192YWxpZGF0b3IgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCAKK0FMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIFJFTkFN RSBUTyByZWdyZXNzX2ZvbzE7CitcZGV3KyByZWdyZXNzXyoKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2YgZm9yZWlnbi1k YXRhIHdyYXBwZXJzCisgICAgICAgIE5hbWUgICAgICAgIHwgICAgICAgICAgIE93bmVyICAgICAg ICAgICB8IEhhbmRsZXIgfCAgICAgICAgVmFsaWRhdG9yICAgICAgICAgfCBBY2Nlc3MgcHJpdmls ZWdlcyB8ICAgICAgICAgRkRXIG9wdGlvbnMgICAgICAgICAgfCBEZXNjcmlwdGlvbiAKKy0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLQorIHJlZ3Jlc3NfZHVtbXkgICAgICB8IHJl Z3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAg ICAgIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg dXNlbGVzcworIHJlZ3Jlc3NfZm9vMSAgICAgICB8IHJlZ3Jlc3NfdGVzdF9yb2xlX3N1cGVyICAg fCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAg fCAoYiAnMycsIGMgJzQnLCBhICcyJywgZCAnNScpIHwgCisgcmVncmVzc19wb3N0Z3Jlc3FsIHwg cmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCBwb3N0Z3Jlc3FsX2Zkd192YWxp ZGF0b3IgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fCAKICgzIHJvd3MpCiAKLUFMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbzEgUkVOQU1FIFRP IGZvbzsKK0FMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vMSBSRU5BTUUgVE8g cmVncmVzc19mb287CiAtLSBIQU5ETEVSIHJlbGF0ZWQgY2hlY2tzCi1BTFRFUiBGT1JFSUdOIERB VEEgV1JBUFBFUiBmb28gSEFORExFUiBpbnZhbGlkX2Zkd19oYW5kbGVyOyAgLS0gRVJST1IKK0FM VEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIEhBTkRMRVIgaW52YWxpZF9mZHdf aGFuZGxlcjsgIC0tIEVSUk9SCiBFUlJPUjogIGZ1bmN0aW9uIGludmFsaWRfZmR3X2hhbmRsZXIg bXVzdCByZXR1cm4gdHlwZSBmZHdfaGFuZGxlcgotQUxURVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIg Zm9vIEhBTkRMRVIgdGVzdF9mZHdfaGFuZGxlciBIQU5ETEVSIGFueXRoaW5nOyAgLS0gRVJST1IK K0FMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIEhBTkRMRVIgdGVzdF9mZHdf aGFuZGxlciBIQU5ETEVSIGFueXRoaW5nOyAgLS0gRVJST1IKIEVSUk9SOiAgY29uZmxpY3Rpbmcg b3IgcmVkdW5kYW50IG9wdGlvbnMKLUxJTkUgMTogLi4uRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9v IEhBTkRMRVIgdGVzdF9mZHdfaGFuZGxlciBIQU5ETEVSIGFuLi4uCitMSU5FIDE6IC4uLkRBVEEg V1JBUFBFUiByZWdyZXNzX2ZvbyBIQU5ETEVSIHRlc3RfZmR3X2hhbmRsZXIgSEFORExFUiBhbi4u LgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIF4KLUFMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBIQU5ETEVSIHRlc3RfZmR3 X2hhbmRsZXI7CitBTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBIQU5ETEVS IHRlc3RfZmR3X2hhbmRsZXI7CiBXQVJOSU5HOiAgY2hhbmdpbmcgdGhlIGZvcmVpZ24tZGF0YSB3 cmFwcGVyIGhhbmRsZXIgY2FuIGNoYW5nZSBiZWhhdmlvciBvZiBleGlzdGluZyBmb3JlaWduIHRh YmxlcwogRFJPUCBGVU5DVElPTiBpbnZhbGlkX2Zkd19oYW5kbGVyKCk7CiAtLSBEUk9QIEZPUkVJ R04gREFUQSBXUkFQUEVSCkBAIC0yMjQsNTIgKzIyNCw1MiBAQCBEUk9QIEZPUkVJR04gREFUQSBX UkFQUEVSIG5vbmV4aXN0ZW50OyAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgogRVJST1I6 ICBmb3JlaWduLWRhdGEgd3JhcHBlciAibm9uZXhpc3RlbnQiIGRvZXMgbm90IGV4aXN0CiBEUk9Q IEZPUkVJR04gREFUQSBXUkFQUEVSIElGIEVYSVNUUyBub25leGlzdGVudDsKIE5PVElDRTogIGZv cmVpZ24tZGF0YSB3cmFwcGVyICJub25leGlzdGVudCIgZG9lcyBub3QgZXhpc3QsIHNraXBwaW5n Ci1cZGV3KwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIExpc3Qgb2YgZm9yZWlnbi1kYXRhIHdyYXBwZXJzCi0gICAgTmFtZSAgICB8 ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCAgICAgSGFuZGxlciAgICAgIHwgICAgICAgIFZh bGlkYXRvciAgICAgICAgIHwgQWNjZXNzIHByaXZpbGVnZXMgfCAgICAgICAgIEZEVyBvcHRpb25z ICAgICAgICAgIHwgRGVzY3JpcHRpb24gCi0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tCi0gZHVtbXkgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAg ICAgICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAg fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgdXNlbGVzcwotIGZvbyAgICAgICAgfCBy ZWdyZXNzX3Rlc3Rfcm9sZV9zdXBlciAgIHwgdGVzdF9mZHdfaGFuZGxlciB8IC0gICAgICAgICAg ICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgKGIgJzMnLCBjICc0JywgYSAnMics IGQgJzUnKSB8IAotIHBvc3RncmVzcWwgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAg ICAgICAgICAgICAgICB8IHBvc3RncmVzcWxfZmR3X3ZhbGlkYXRvciB8ICAgICAgICAgICAgICAg ICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IAorXGRldysgcmVncmVzc18qCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIExpc3Qgb2YgZm9yZWlnbi1kYXRhIHdyYXBwZXJzCisgICAgICAgIE5hbWUgICAgICAg IHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8ICAgICBIYW5kbGVyICAgICAgfCAgICAgICAg VmFsaWRhdG9yICAgICAgICAgfCBBY2Nlc3MgcHJpdmlsZWdlcyB8ICAgICAgICAgRkRXIG9wdGlv bnMgICAgICAgICAgfCBEZXNjcmlwdGlvbiAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLQorIHJlZ3Jlc3NfZHVtbXkgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9k YXRhX3VzZXIgfCAtICAgICAgICAgICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwg ICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgdXNlbGVz cworIHJlZ3Jlc3NfZm9vICAgICAgICB8IHJlZ3Jlc3NfdGVzdF9yb2xlX3N1cGVyICAgfCB0ZXN0 X2Zkd19oYW5kbGVyIHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAg ICAgfCAoYiAnMycsIGMgJzQnLCBhICcyJywgZCAnNScpIHwgCisgcmVncmVzc19wb3N0Z3Jlc3Fs IHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgICAgICAgICAgfCBwb3N0Z3Jl c3FsX2Zkd192YWxpZGF0b3IgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAKICgzIHJvd3MpCiAKIERST1AgUk9MRSByZWdyZXNzX3Rlc3Rfcm9sZV9z dXBlcjsgICAgICAgICAgICAgICAgICAgICAgICAgIC0tIEVSUk9SCiBFUlJPUjogIHJvbGUgInJl Z3Jlc3NfdGVzdF9yb2xlX3N1cGVyIiBjYW5ub3QgYmUgZHJvcHBlZCBiZWNhdXNlIHNvbWUgb2Jq ZWN0cyBkZXBlbmQgb24gaXQKLURFVEFJTDogIG93bmVyIG9mIGZvcmVpZ24tZGF0YSB3cmFwcGVy IGZvbworREVUQUlMOiAgb3duZXIgb2YgZm9yZWlnbi1kYXRhIHdyYXBwZXIgcmVncmVzc19mb28K IFNFVCBST0xFIHJlZ3Jlc3NfdGVzdF9yb2xlX3N1cGVyOwotRFJPUCBGT1JFSUdOIERBVEEgV1JB UFBFUiBmb287CitEUk9QIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vOwogUkVTRVQg Uk9MRTsKIERST1AgUk9MRSByZWdyZXNzX3Rlc3Rfcm9sZV9zdXBlcjsKLVxkZXcrCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIGZvcmVpZ24t ZGF0YSB3cmFwcGVycwotICAgIE5hbWUgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwg SGFuZGxlciB8ICAgICAgICBWYWxpZGF0b3IgICAgICAgICB8IEFjY2VzcyBwcml2aWxlZ2VzIHwg RkRXIG9wdGlvbnMgfCBEZXNjcmlwdGlvbiAKLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tCi0gZHVtbXkgICAgICB8IHJl Z3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAg ICAgIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICB8IHVzZWxlc3MKLSBwb3N0Z3Jl c3FsIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCBwb3N0Z3Jlc3FsX2Zk d192YWxpZGF0b3IgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgIHwgCitcZGV3KyBy ZWdyZXNzXyoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBMaXN0IG9mIGZvcmVpZ24tZGF0YSB3cmFwcGVycworICAgICAgICBOYW1lICAgICAgICB8 ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBIYW5kbGVyIHwgICAgICAgIFZhbGlkYXRvciAg ICAgICAgIHwgQWNjZXNzIHByaXZpbGVnZXMgfCBGRFcgb3B0aW9ucyB8IERlc2NyaXB0aW9uIAor LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLQorIHJlZ3Jlc3NfZHVtbXkgICAgICB8IHJlZ3Jlc3NfZm9yZWln bl9kYXRhX3VzZXIgfCAtICAgICAgIHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAg ICAgICAgICAgICAgfCAgICAgICAgICAgICB8IHVzZWxlc3MKKyByZWdyZXNzX3Bvc3RncmVzcWwg fCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IHBvc3RncmVzcWxfZmR3X3Zh bGlkYXRvciB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgfCAKICgyIHJvd3MpCiAK LUNSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb287Ci1DUkVBVEUgU0VSVkVSIHMxIEZPUkVJ R04gREFUQSBXUkFQUEVSIGZvbzsKK0NSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNz X2ZvbzsKK0NSRUFURSBTRVJWRVIgczEgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb287 CiBDT01NRU5UIE9OIFNFUlZFUiBzMSBJUyAnZm9yZWlnbiBzZXJ2ZXInOwogQ1JFQVRFIFVTRVIg TUFQUElORyBGT1IgY3VycmVudF91c2VyIFNFUlZFUiBzMTsKIENSRUFURSBVU0VSIE1BUFBJTkcg Rk9SIGN1cnJlbnRfdXNlciBTRVJWRVIgczE7CQkJCS0tIEVSUk9SCiBFUlJPUjogIHVzZXIgbWFw cGluZyBmb3IgInJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIiIGFscmVhZHkgZXhpc3RzIGZvciBz ZXJ2ZXIgInMxIgogQ1JFQVRFIFVTRVIgTUFQUElORyBJRiBOT1QgRVhJU1RTIEZPUiBjdXJyZW50 X3VzZXIgU0VSVkVSIHMxOyAtLSBOT1RJQ0UKIE5PVElDRTogIHVzZXIgbWFwcGluZyBmb3IgInJl Z3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIiIGFscmVhZHkgZXhpc3RzIGZvciBzZXJ2ZXIgInMxIiwg c2tpcHBpbmcKLVxkZXcrCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBMaXN0IG9mIGZvcmVpZ24tZGF0YSB3cmFwcGVycwotICAgIE5hbWUgICAgfCAgICAg ICAgICAgT3duZXIgICAgICAgICAgIHwgSGFuZGxlciB8ICAgICAgICBWYWxpZGF0b3IgICAgICAg ICB8IEFjY2VzcyBwcml2aWxlZ2VzIHwgRkRXIG9wdGlvbnMgfCBEZXNjcmlwdGlvbiAKLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tCi0gZHVtbXkgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAg IHwgLSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAg ICAgICB8IHVzZWxlc3MKLSBmb28gICAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8 IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8 ICAgICAgICAgICAgIHwgCi0gcG9zdGdyZXNxbCB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIg fCAtICAgICAgIHwgcG9zdGdyZXNxbF9mZHdfdmFsaWRhdG9yIHwgICAgICAgICAgICAgICAgICAg fCAgICAgICAgICAgICB8IAorXGRldysgcmVncmVzc18qCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBmb3JlaWduLWRhdGEgd3JhcHBl cnMKKyAgICAgICAgTmFtZSAgICAgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgSGFu ZGxlciB8ICAgICAgICBWYWxpZGF0b3IgICAgICAgICB8IEFjY2VzcyBwcml2aWxlZ2VzIHwgRkRX IG9wdGlvbnMgfCBEZXNjcmlwdGlvbiAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0KKyByZWdyZXNzX2R1 bW15ICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IC0gICAgICAg ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgfCB1c2Vs ZXNzCisgcmVncmVzc19mb28gICAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IC0g ICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8ICAg ICAgICAgICAgIHwgCisgcmVncmVzc19wb3N0Z3Jlc3FsIHwgcmVncmVzc19mb3JlaWduX2RhdGFf dXNlciB8IC0gICAgICAgfCBwb3N0Z3Jlc3FsX2Zkd192YWxpZGF0b3IgfCAgICAgICAgICAgICAg ICAgICB8ICAgICAgICAgICAgIHwgCiAoMyByb3dzKQogCiBcZGVzKwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBmb3JlaWduIHNlcnZl cnMKICBOYW1lIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEZvcmVpZ24tZGF0YSB3cmFw cGVyIHwgQWNjZXNzIHByaXZpbGVnZXMgfCBUeXBlIHwgVmVyc2lvbiB8IEZEVyBvcHRpb25zIHwg IERlc2NyaXB0aW9uICAgCiAtLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0rLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLQotIHMxICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0 YV91c2VyIHwgZm9vICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAg fCAgICAgICAgIHwgICAgICAgICAgICAgfCBmb3JlaWduIHNlcnZlcgorIHMxICAgfCByZWdyZXNz X2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc19mb28gICAgICAgICAgfCAgICAgICAgICAgICAg ICAgICB8ICAgICAgfCAgICAgICAgIHwgICAgICAgICAgICAgfCBmb3JlaWduIHNlcnZlcgogKDEg cm93KQogCiBcZGV1KwpAQCAtMjc5LDI1ICsyNzksMjUgQEAgTk9USUNFOiAgdXNlciBtYXBwaW5n IGZvciAicmVncmVzc19mb3JlaWduX2RhdGFfdXNlciIgYWxyZWFkeSBleGlzdHMgZm9yIHNlcnZl cgogIHMxICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAKICgxIHJvdykKIAotRFJP UCBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb287ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg LS0gRVJST1IKLUVSUk9SOiAgY2Fubm90IGRyb3AgZm9yZWlnbi1kYXRhIHdyYXBwZXIgZm9vIGJl Y2F1c2Ugb3RoZXIgb2JqZWN0cyBkZXBlbmQgb24gaXQKLURFVEFJTDogIHNlcnZlciBzMSBkZXBl bmRzIG9uIGZvcmVpZ24tZGF0YSB3cmFwcGVyIGZvbworRFJPUCBGT1JFSUdOIERBVEEgV1JBUFBF UiByZWdyZXNzX2ZvbzsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgorRVJS T1I6ICBjYW5ub3QgZHJvcCBmb3JlaWduLWRhdGEgd3JhcHBlciByZWdyZXNzX2ZvbyBiZWNhdXNl IG90aGVyIG9iamVjdHMgZGVwZW5kIG9uIGl0CitERVRBSUw6ICBzZXJ2ZXIgczEgZGVwZW5kcyBv biBmb3JlaWduLWRhdGEgd3JhcHBlciByZWdyZXNzX2ZvbwogdXNlciBtYXBwaW5nIGZvciByZWdy ZXNzX2ZvcmVpZ25fZGF0YV91c2VyIG9uIHNlcnZlciBzMSBkZXBlbmRzIG9uIHNlcnZlciBzMQog SElOVDogIFVzZSBEUk9QIC4uLiBDQVNDQURFIHRvIGRyb3AgdGhlIGRlcGVuZGVudCBvYmplY3Rz IHRvby4KIFNFVCBST0xFIHJlZ3Jlc3NfdGVzdF9yb2xlOwotRFJPUCBGT1JFSUdOIERBVEEgV1JB UFBFUiBmb28gQ0FTQ0FERTsgICAgICAgICAgICAgICAgICAgICAgLS0gRVJST1IKLUVSUk9SOiAg bXVzdCBiZSBvd25lciBvZiBmb3JlaWduLWRhdGEgd3JhcHBlciBmb28KK0RST1AgRk9SRUlHTiBE QVRBIFdSQVBQRVIgcmVncmVzc19mb28gQ0FTQ0FERTsgICAgICAgICAgICAgICAgICAgICAgLS0g RVJST1IKK0VSUk9SOiAgbXVzdCBiZSBvd25lciBvZiBmb3JlaWduLWRhdGEgd3JhcHBlciByZWdy ZXNzX2ZvbwogUkVTRVQgUk9MRTsKLURST1AgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vIENBU0NB REU7CitEUk9QIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIENBU0NBREU7CiBOT1RJ Q0U6ICBkcm9wIGNhc2NhZGVzIHRvIDIgb3RoZXIgb2JqZWN0cwogREVUQUlMOiAgZHJvcCBjYXNj YWRlcyB0byBzZXJ2ZXIgczEKIGRyb3AgY2FzY2FkZXMgdG8gdXNlciBtYXBwaW5nIGZvciByZWdy ZXNzX2ZvcmVpZ25fZGF0YV91c2VyIG9uIHNlcnZlciBzMQotXGRldysKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2YgZm9yZWlnbi1kYXRhIHdy YXBwZXJzCi0gICAgTmFtZSAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBIYW5kbGVy IHwgICAgICAgIFZhbGlkYXRvciAgICAgICAgIHwgQWNjZXNzIHByaXZpbGVnZXMgfCBGRFcgb3B0 aW9ucyB8IERlc2NyaXB0aW9uIAotLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0KLSBkdW1teSAgICAgIHwgcmVncmVzc19m b3JlaWduX2RhdGFfdXNlciB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICAgfCAg ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgIHwgdXNlbGVzcwotIHBvc3RncmVzcWwgfCBy ZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgLSAgICAgICB8IHBvc3RncmVzcWxfZmR3X3ZhbGlk YXRvciB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgfCAKK1xkZXcrIHJlZ3Jlc3Nf KgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExp c3Qgb2YgZm9yZWlnbi1kYXRhIHdyYXBwZXJzCisgICAgICAgIE5hbWUgICAgICAgIHwgICAgICAg ICAgIE93bmVyICAgICAgICAgICB8IEhhbmRsZXIgfCAgICAgICAgVmFsaWRhdG9yICAgICAgICAg fCBBY2Nlc3MgcHJpdmlsZWdlcyB8IEZEVyBvcHRpb25zIHwgRGVzY3JpcHRpb24gCistLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tCisgcmVncmVzc19kdW1teSAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFf dXNlciB8IC0gICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAg ICAgICB8ICAgICAgICAgICAgIHwgdXNlbGVzcworIHJlZ3Jlc3NfcG9zdGdyZXNxbCB8IHJlZ3Jl c3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAtICAgICAgIHwgcG9zdGdyZXNxbF9mZHdfdmFsaWRhdG9y IHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICB8IAogKDIgcm93cykKIAogXGRlcysK QEAgLTMxMyw4NyArMzEzLDEyNSBAQCBkcm9wIGNhc2NhZGVzIHRvIHVzZXIgbWFwcGluZyBmb3Ig cmVncmVzc19mb3JlaWduX2RhdGFfdXNlciBvbiBzZXJ2ZXIgczEKICgwIHJvd3MpCiAKIC0tIGV4 ZXJjaXNlIENSRUFURSBTRVJWRVIKLUNSRUFURSBTRVJWRVIgczEgRk9SRUlHTiBEQVRBIFdSQVBQ RVIgZm9vOyAgICAgICAgICAgICAgICAgIC0tIEVSUk9SCi1FUlJPUjogIGZvcmVpZ24tZGF0YSB3 cmFwcGVyICJmb28iIGRvZXMgbm90IGV4aXN0Ci1DUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIg Zm9vIE9QVElPTlMgKCJ0ZXN0IHdyYXBwZXIiICd0cnVlJyk7Ci1DUkVBVEUgU0VSVkVSIHMxIEZP UkVJR04gREFUQSBXUkFQUEVSIGZvbzsKLUNSRUFURSBTRVJWRVIgczEgRk9SRUlHTiBEQVRBIFdS QVBQRVIgZm9vOyAgICAgICAgICAgICAgICAgIC0tIEVSUk9SCitDUkVBVEUgU0VSVkVSIHMxIEZP UkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vOyAgICAgICAgICAgICAgICAgIC0tIEVSUk9S CitFUlJPUjogIGZvcmVpZ24tZGF0YSB3cmFwcGVyICJyZWdyZXNzX2ZvbyIgZG9lcyBub3QgZXhp c3QKK0NSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBPUFRJT05TICgidGVz dCB3cmFwcGVyIiAndHJ1ZScpOworQ1JFQVRFIFNFUlZFUiBzMSBGT1JFSUdOIERBVEEgV1JBUFBF UiByZWdyZXNzX2ZvbzsKK0NSRUFURSBTRVJWRVIgczEgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVn cmVzc19mb287ICAgICAgICAgICAgICAgICAgLS0gRVJST1IKIEVSUk9SOiAgc2VydmVyICJzMSIg YWxyZWFkeSBleGlzdHMKLUNSRUFURSBTRVJWRVIgSUYgTk9UIEVYSVNUUyBzMSBGT1JFSUdOIERB VEEgV1JBUFBFUiBmb287CS0tIE5vIEVSUk9SLCBqdXN0IE5PVElDRQorQ1JFQVRFIFNFUlZFUiBJ RiBOT1QgRVhJU1RTIHMxIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vOwktLSBObyBF UlJPUiwganVzdCBOT1RJQ0UKIE5PVElDRTogIHNlcnZlciAiczEiIGFscmVhZHkgZXhpc3RzLCBz a2lwcGluZwotQ1JFQVRFIFNFUlZFUiBzMiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gT1BUSU9O UyAoaG9zdCAnYScsIGRibmFtZSAnYicpOwotQ1JFQVRFIFNFUlZFUiBzMyBUWVBFICdvcmFjbGUn IEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbzsKLUNSRUFURSBTRVJWRVIgczQgVFlQRSAnb3JhY2xl JyBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gT1BUSU9OUyAoaG9zdCAnYScsIGRibmFtZSAnYicp OwotQ1JFQVRFIFNFUlZFUiBzNSBWRVJTSU9OICcxNS4wJyBGT1JFSUdOIERBVEEgV1JBUFBFUiBm b287Ci1DUkVBVEUgU0VSVkVSIHM2IFZFUlNJT04gJzE2LjAnIEZPUkVJR04gREFUQSBXUkFQUEVS IGZvbyBPUFRJT05TIChob3N0ICdhJywgZGJuYW1lICdiJyk7Ci1DUkVBVEUgU0VSVkVSIHM3IFRZ UEUgJ29yYWNsZScgVkVSU0lPTiAnMTcuMCcgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vIE9QVElP TlMgKGhvc3QgJ2EnLCBkYm5hbWUgJ2InKTsKLUNSRUFURSBTRVJWRVIgczggRk9SRUlHTiBEQVRB IFdSQVBQRVIgcG9zdGdyZXNxbCBPUFRJT05TIChmb28gJzEnKTsgLS0gRVJST1IKK0NSRUFURSBT RVJWRVIgczIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gT1BUSU9OUyAoaG9zdCAn YScsIGRibmFtZSAnYicpOworQ1JFQVRFIFNFUlZFUiBzMyBUWVBFICdvcmFjbGUnIEZPUkVJR04g REFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vOworQ1JFQVRFIFNFUlZFUiBzNCBUWVBFICdvcmFjbGUn IEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIE9QVElPTlMgKGhvc3QgJ2EnLCBkYm5h bWUgJ2InKTsKK0NSRUFURSBTRVJWRVIgczUgVkVSU0lPTiAnMTUuMCcgRk9SRUlHTiBEQVRBIFdS QVBQRVIgcmVncmVzc19mb287CitDUkVBVEUgU0VSVkVSIHM2IFZFUlNJT04gJzE2LjAnIEZPUkVJ R04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIE9QVElPTlMgKGhvc3QgJ2EnLCBkYm5hbWUgJ2In KTsKK0NSRUFURSBTRVJWRVIgczcgVFlQRSAnb3JhY2xlJyBWRVJTSU9OICcxNy4wJyBGT1JFSUdO IERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBPUFRJT05TIChob3N0ICdhJywgZGJuYW1lICdiJyk7 CitDUkVBVEUgU0VSVkVSIHM4IEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfcG9zdGdyZXNx bCBPUFRJT05TIChmb28gJzEnKTsgLS0gRVJST1IKIEVSUk9SOiAgaW52YWxpZCBvcHRpb24gImZv byIKLUNSRUFURSBTRVJWRVIgczggRk9SRUlHTiBEQVRBIFdSQVBQRVIgcG9zdGdyZXNxbCBPUFRJ T05TIChob3N0ICdsb2NhbGhvc3QnLCBkYm5hbWUgJ3M4ZGInKTsKK0NSRUFURSBTRVJWRVIgczgg Rk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19wb3N0Z3Jlc3FsIE9QVElPTlMgKGhvc3QgJ2xv Y2FsaG9zdCcsIGRibmFtZSAnczhkYicpOwogXGRlcysKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIGZvcmVpZ24gc2Vy dmVycwogIE5hbWUgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgRm9yZWlnbi1kYXRhIHdy YXBwZXIgfCBBY2Nlc3MgcHJpdmlsZWdlcyB8ICBUeXBlICB8IFZlcnNpb24gfCAgICAgICAgICAg IEZEVyBvcHRpb25zICAgICAgICAgICAgfCBEZXNjcmlwdGlvbiAKIC0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tCi0gczEgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCBmb28g ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgIHwgICAgICAgICB8 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IAotIHMyICAgfCByZWdyZXNzX2Zv cmVpZ25fZGF0YV91c2VyIHwgZm9vICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAg ICB8ICAgICAgICB8ICAgICAgICAgfCAoaG9zdCAnYScsIGRibmFtZSAnYicpICAgICAgICAgICAg fCAKLSBzMyAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IGZvbyAgICAgICAgICAgICAg ICAgIHwgICAgICAgICAgICAgICAgICAgfCBvcmFjbGUgfCAgICAgICAgIHwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgCi0gczQgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3Vz ZXIgfCBmb28gICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgb3JhY2xlIHwg ICAgICAgICB8IChob3N0ICdhJywgZGJuYW1lICdiJykgICAgICAgICAgICB8IAotIHM1ICAgfCBy ZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgZm9vICAgICAgICAgICAgICAgICAgfCAgICAgICAg ICAgICAgICAgICB8ICAgICAgICB8IDE1LjAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCAKLSBzNiAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IGZvbyAgICAg ICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgfCAxNi4wICAgIHwgKGhv c3QgJ2EnLCBkYm5hbWUgJ2InKSAgICAgICAgICAgIHwgCi0gczcgICB8IHJlZ3Jlc3NfZm9yZWln bl9kYXRhX3VzZXIgfCBmb28gICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwg b3JhY2xlIHwgMTcuMCAgICB8IChob3N0ICdhJywgZGJuYW1lICdiJykgICAgICAgICAgICB8IAot IHM4ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcG9zdGdyZXNxbCAgICAgICAgICAg fCAgICAgICAgICAgICAgICAgICB8ICAgICAgICB8ICAgICAgICAgfCAoaG9zdCAnbG9jYWxob3N0 JywgZGJuYW1lICdzOGRiJykgfCAKKyBzMSAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8 IHJlZ3Jlc3NfZm9vICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgfCAgICAg ICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgCisgczIgICB8IHJlZ3Jl c3NfZm9yZWlnbl9kYXRhX3VzZXIgfCByZWdyZXNzX2ZvbyAgICAgICAgICB8ICAgICAgICAgICAg ICAgICAgIHwgICAgICAgIHwgICAgICAgICB8IChob3N0ICdhJywgZGJuYW1lICdiJykgICAgICAg ICAgICB8IAorIHMzICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc19mb28g ICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8IG9yYWNsZSB8ICAgICAgICAgfCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAKKyBzNCAgIHwgcmVncmVzc19mb3JlaWduX2Rh dGFfdXNlciB8IHJlZ3Jlc3NfZm9vICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCBvcmFj bGUgfCAgICAgICAgIHwgKGhvc3QgJ2EnLCBkYm5hbWUgJ2InKSAgICAgICAgICAgIHwgCisgczUg ICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCByZWdyZXNzX2ZvbyAgICAgICAgICB8ICAg ICAgICAgICAgICAgICAgIHwgICAgICAgIHwgMTUuMCAgICB8ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8IAorIHM2ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVn cmVzc19mb28gICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICB8IDE2LjAgICAg fCAoaG9zdCAnYScsIGRibmFtZSAnYicpICAgICAgICAgICAgfCAKKyBzNyAgIHwgcmVncmVzc19m b3JlaWduX2RhdGFfdXNlciB8IHJlZ3Jlc3NfZm9vICAgICAgICAgIHwgICAgICAgICAgICAgICAg ICAgfCBvcmFjbGUgfCAxNy4wICAgIHwgKGhvc3QgJ2EnLCBkYm5hbWUgJ2InKSAgICAgICAgICAg IHwgCisgczggICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCByZWdyZXNzX3Bvc3RncmVz cWwgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgIHwgICAgICAgICB8IChob3N0ICdsb2Nh bGhvc3QnLCBkYm5hbWUgJ3M4ZGInKSB8IAogKDggcm93cykKIAogU0VUIFJPTEUgcmVncmVzc190 ZXN0X3JvbGU7Ci1DUkVBVEUgU0VSVkVSIHQxIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbzsgICAg ICAgICAgICAgICAgIC0tIEVSUk9SOiBubyB1c2FnZSBvbiBGRFcKLUVSUk9SOiAgcGVybWlzc2lv biBkZW5pZWQgZm9yIGZvcmVpZ24tZGF0YSB3cmFwcGVyIGZvbworQ1JFQVRFIFNFUlZFUiB0MSBG T1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbzsgICAgICAgICAgICAgICAgIC0tIEVSUk9S OiBubyB1c2FnZSBvbiBGRFcKK0VSUk9SOiAgcGVybWlzc2lvbiBkZW5pZWQgZm9yIGZvcmVpZ24t ZGF0YSB3cmFwcGVyIHJlZ3Jlc3NfZm9vCiBSRVNFVCBST0xFOwotR1JBTlQgVVNBR0UgT04gRk9S RUlHTiBEQVRBIFdSQVBQRVIgZm9vIFRPIHJlZ3Jlc3NfdGVzdF9yb2xlOworR1JBTlQgVVNBR0Ug T04gRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gVE8gcmVncmVzc190ZXN0X3JvbGU7 CiBTRVQgUk9MRSByZWdyZXNzX3Rlc3Rfcm9sZTsKLUNSRUFURSBTRVJWRVIgdDEgRk9SRUlHTiBE QVRBIFdSQVBQRVIgZm9vOworQ1JFQVRFIFNFUlZFUiB0MSBGT1JFSUdOIERBVEEgV1JBUFBFUiBy ZWdyZXNzX2ZvbzsKIFJFU0VUIFJPTEU7CiBcZGVzKwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2YgZm9yZWlnbiBzZXJ2 ZXJzCiAgTmFtZSB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBGb3JlaWduLWRhdGEgd3Jh cHBlciB8IEFjY2VzcyBwcml2aWxlZ2VzIHwgIFR5cGUgIHwgVmVyc2lvbiB8ICAgICAgICAgICAg RkRXIG9wdGlvbnMgICAgICAgICAgICB8IERlc2NyaXB0aW9uIAogLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0KLSBzMSAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IGZvbyAg ICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgfCAgICAgICAgIHwg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgCi0gczIgICB8IHJlZ3Jlc3NfZm9y ZWlnbl9kYXRhX3VzZXIgfCBmb28gICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAg IHwgICAgICAgIHwgICAgICAgICB8IChob3N0ICdhJywgZGJuYW1lICdiJykgICAgICAgICAgICB8 IAotIHMzICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgZm9vICAgICAgICAgICAgICAg ICAgfCAgICAgICAgICAgICAgICAgICB8IG9yYWNsZSB8ICAgICAgICAgfCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfCAKLSBzNCAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNl ciB8IGZvbyAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCBvcmFjbGUgfCAg ICAgICAgIHwgKGhvc3QgJ2EnLCBkYm5hbWUgJ2InKSAgICAgICAgICAgIHwgCi0gczUgICB8IHJl Z3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCBmb28gICAgICAgICAgICAgICAgICB8ICAgICAgICAg ICAgICAgICAgIHwgICAgICAgIHwgMTUuMCAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8IAotIHM2ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgZm9vICAgICAg ICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICB8IDE2LjAgICAgfCAoaG9z dCAnYScsIGRibmFtZSAnYicpICAgICAgICAgICAgfCAKLSBzNyAgIHwgcmVncmVzc19mb3JlaWdu X2RhdGFfdXNlciB8IGZvbyAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCBv cmFjbGUgfCAxNy4wICAgIHwgKGhvc3QgJ2EnLCBkYm5hbWUgJ2InKSAgICAgICAgICAgIHwgCi0g czggICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCBwb3N0Z3Jlc3FsICAgICAgICAgICB8 ICAgICAgICAgICAgICAgICAgIHwgICAgICAgIHwgICAgICAgICB8IChob3N0ICdsb2NhbGhvc3Qn LCBkYm5hbWUgJ3M4ZGInKSB8IAotIHQxICAgfCByZWdyZXNzX3Rlc3Rfcm9sZSAgICAgICAgIHwg Zm9vICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICB8ICAgICAg ICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAKKyBzMSAgIHwgcmVncmVz c19mb3JlaWduX2RhdGFfdXNlciB8IHJlZ3Jlc3NfZm9vICAgICAgICAgIHwgICAgICAgICAgICAg ICAgICAgfCAgICAgICAgfCAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgCisgczIgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCByZWdyZXNzX2ZvbyAg ICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgIHwgICAgICAgICB8IChob3N0ICdh JywgZGJuYW1lICdiJykgICAgICAgICAgICB8IAorIHMzICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0 YV91c2VyIHwgcmVncmVzc19mb28gICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8IG9yYWNs ZSB8ICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAKKyBzNCAg IHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IHJlZ3Jlc3NfZm9vICAgICAgICAgIHwgICAg ICAgICAgICAgICAgICAgfCBvcmFjbGUgfCAgICAgICAgIHwgKGhvc3QgJ2EnLCBkYm5hbWUgJ2In KSAgICAgICAgICAgIHwgCisgczUgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCByZWdy ZXNzX2ZvbyAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgIHwgMTUuMCAgICB8 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IAorIHM2ICAgfCByZWdyZXNzX2Zv cmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc19mb28gICAgICAgICAgfCAgICAgICAgICAgICAgICAg ICB8ICAgICAgICB8IDE2LjAgICAgfCAoaG9zdCAnYScsIGRibmFtZSAnYicpICAgICAgICAgICAg fCAKKyBzNyAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IHJlZ3Jlc3NfZm9vICAgICAg ICAgIHwgICAgICAgICAgICAgICAgICAgfCBvcmFjbGUgfCAxNy4wICAgIHwgKGhvc3QgJ2EnLCBk Ym5hbWUgJ2InKSAgICAgICAgICAgIHwgCisgczggICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3Vz ZXIgfCByZWdyZXNzX3Bvc3RncmVzcWwgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgIHwg ICAgICAgICB8IChob3N0ICdsb2NhbGhvc3QnLCBkYm5hbWUgJ3M4ZGInKSB8IAorIHQxICAgfCBy ZWdyZXNzX3Rlc3Rfcm9sZSAgICAgICAgIHwgcmVncmVzc19mb28gICAgICAgICAgfCAgICAgICAg ICAgICAgICAgICB8ICAgICAgICB8ICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCAKICg5IHJvd3MpCiAKLVJFVk9LRSBVU0FHRSBPTiBGT1JFSUdOIERBVEEgV1JB UFBFUiBmb28gRlJPTSByZWdyZXNzX3Rlc3Rfcm9sZTsKLUdSQU5UIFVTQUdFIE9OIEZPUkVJR04g REFUQSBXUkFQUEVSIGZvbyBUTyByZWdyZXNzX3Rlc3RfaW5kaXJlY3Q7CitSRVZPS0UgVVNBR0Ug T04gRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gRlJPTSByZWdyZXNzX3Rlc3Rfcm9s ZTsKK0dSQU5UIFVTQUdFIE9OIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIFRPIHJl Z3Jlc3NfdGVzdF9pbmRpcmVjdDsKIFNFVCBST0xFIHJlZ3Jlc3NfdGVzdF9yb2xlOwotQ1JFQVRF IFNFUlZFUiB0MiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb287ICAgICAgICAgICAgICAgICAtLSBF UlJPUgotRVJST1I6ICBwZXJtaXNzaW9uIGRlbmllZCBmb3IgZm9yZWlnbi1kYXRhIHdyYXBwZXIg Zm9vCitDUkVBVEUgU0VSVkVSIHQyIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vOyAg ICAgICAgICAgICAgICAgLS0gRVJST1IKK0VSUk9SOiAgcGVybWlzc2lvbiBkZW5pZWQgZm9yIGZv cmVpZ24tZGF0YSB3cmFwcGVyIHJlZ3Jlc3NfZm9vCiBSRVNFVCBST0xFOwogR1JBTlQgcmVncmVz c190ZXN0X2luZGlyZWN0IFRPIHJlZ3Jlc3NfdGVzdF9yb2xlOwogU0VUIFJPTEUgcmVncmVzc190 ZXN0X3JvbGU7Ci1DUkVBVEUgU0VSVkVSIHQyIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbzsKK0NS RUFURSBTRVJWRVIgdDIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb287CiBcZGVzKwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIExpc3Qgb2YgZm9yZWlnbiBzZXJ2ZXJzCiAgTmFtZSB8ICAgICAgICAgICBPd25lciAgICAg ICAgICAgfCBGb3JlaWduLWRhdGEgd3JhcHBlciB8IEFjY2VzcyBwcml2aWxlZ2VzIHwgIFR5cGUg IHwgVmVyc2lvbiB8ICAgICAgICAgICAgRkRXIG9wdGlvbnMgICAgICAgICAgICB8IERlc2NyaXB0 aW9uIAogLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0KLSBzMSAgIHwgcmVncmVzc19m b3JlaWduX2RhdGFfdXNlciB8IGZvbyAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAg ICAgfCAgICAgICAgfCAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgCi0gczIgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCBmb28gICAgICAgICAgICAg ICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgIHwgICAgICAgICB8IChob3N0ICdhJywg ZGJuYW1lICdiJykgICAgICAgICAgICB8IAotIHMzICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91 c2VyIHwgZm9vICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8IG9yYWNsZSB8 ICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAKLSBzNCAgIHwg cmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IGZvbyAgICAgICAgICAgICAgICAgIHwgICAgICAg ICAgICAgICAgICAgfCBvcmFjbGUgfCAgICAgICAgIHwgKGhvc3QgJ2EnLCBkYm5hbWUgJ2InKSAg ICAgICAgICAgIHwgCi0gczUgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCBmb28gICAg ICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgIHwgMTUuMCAgICB8ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IAotIHM2ICAgfCByZWdyZXNzX2ZvcmVp Z25fZGF0YV91c2VyIHwgZm9vICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICB8 ICAgICAgICB8IDE2LjAgICAgfCAoaG9zdCAnYScsIGRibmFtZSAnYicpICAgICAgICAgICAgfCAK LSBzNyAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IGZvbyAgICAgICAgICAgICAgICAg IHwgICAgICAgICAgICAgICAgICAgfCBvcmFjbGUgfCAxNy4wICAgIHwgKGhvc3QgJ2EnLCBkYm5h bWUgJ2InKSAgICAgICAgICAgIHwgCi0gczggICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIg fCBwb3N0Z3Jlc3FsICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgIHwgICAg ICAgICB8IChob3N0ICdsb2NhbGhvc3QnLCBkYm5hbWUgJ3M4ZGInKSB8IAotIHQxICAgfCByZWdy ZXNzX3Rlc3Rfcm9sZSAgICAgICAgIHwgZm9vICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAg ICAgICAgICB8ICAgICAgICB8ICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfCAKLSB0MiAgIHwgcmVncmVzc190ZXN0X3JvbGUgICAgICAgICB8IGZvbyAgICAgICAg ICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAgfCAgICAgICAgIHwgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgCisgczEgICB8IHJlZ3Jlc3NfZm9yZWlnbl9k YXRhX3VzZXIgfCByZWdyZXNzX2ZvbyAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAg ICAgIHwgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IAorIHMy ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc19mb28gICAgICAgICAgfCAg ICAgICAgICAgICAgICAgICB8ICAgICAgICB8ICAgICAgICAgfCAoaG9zdCAnYScsIGRibmFtZSAn YicpICAgICAgICAgICAgfCAKKyBzMyAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IHJl Z3Jlc3NfZm9vICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCBvcmFjbGUgfCAgICAgICAg IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgCisgczQgICB8IHJlZ3Jlc3Nf Zm9yZWlnbl9kYXRhX3VzZXIgfCByZWdyZXNzX2ZvbyAgICAgICAgICB8ICAgICAgICAgICAgICAg ICAgIHwgb3JhY2xlIHwgICAgICAgICB8IChob3N0ICdhJywgZGJuYW1lICdiJykgICAgICAgICAg ICB8IAorIHM1ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc19mb28gICAg ICAgICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICB8IDE1LjAgICAgfCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgfCAKKyBzNiAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFf dXNlciB8IHJlZ3Jlc3NfZm9vICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgfCAgICAgICAg fCAxNi4wICAgIHwgKGhvc3QgJ2EnLCBkYm5hbWUgJ2InKSAgICAgICAgICAgIHwgCisgczcgICB8 IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCByZWdyZXNzX2ZvbyAgICAgICAgICB8ICAgICAg ICAgICAgICAgICAgIHwgb3JhY2xlIHwgMTcuMCAgICB8IChob3N0ICdhJywgZGJuYW1lICdiJykg ICAgICAgICAgICB8IAorIHM4ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVncmVz c19wb3N0Z3Jlc3FsICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICB8ICAgICAgICAgfCAo aG9zdCAnbG9jYWxob3N0JywgZGJuYW1lICdzOGRiJykgfCAKKyB0MSAgIHwgcmVncmVzc190ZXN0 X3JvbGUgICAgICAgICB8IHJlZ3Jlc3NfZm9vICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAg fCAgICAgICAgfCAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg CisgdDIgICB8IHJlZ3Jlc3NfdGVzdF9yb2xlICAgICAgICAgfCByZWdyZXNzX2ZvbyAgICAgICAg ICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgIHwgICAgICAgICB8ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8IAogKDEwIHJvd3MpCiAKIFJFU0VUIFJPTEU7CiBSRVZPS0Ug cmVncmVzc190ZXN0X2luZGlyZWN0IEZST00gcmVncmVzc190ZXN0X3JvbGU7CistLQorLS0gdGVz dCBwZ19jb25uZWN0aW9uX2ZkdworLS0KK1xzZXQgVkVSQk9TSVRZIHRlcnNlCitDUkVBVEUgU0VS VkVSIGNvbm5lY3Rpb25fc2VydmVyIEZPUkVJR04gREFUQSBXUkFQUEVSIHBnX2Nvbm5lY3Rpb25f ZmR3CisgIE9QVElPTlMgKGhvc3QgJ3RoZWhvc3QnLCBjbGllbnRfZW5jb2RpbmcgJ0xBVElOMScp OyAtLSBmYWlsCitFUlJPUjogIGludmFsaWQgb3B0aW9uICJjbGllbnRfZW5jb2RpbmciCitDUkVB VEUgU0VSVkVSIGNvbm5lY3Rpb25fc2VydmVyIEZPUkVJR04gREFUQSBXUkFQUEVSIHBnX2Nvbm5l Y3Rpb25fZmR3CisgIE9QVElPTlMgKGhvc3QgJ3RoZWhvc3QnLCBub25zZW5zZSAnYXNkZicpOyAt LSBmYWlsCitFUlJPUjogIGludmFsaWQgb3B0aW9uICJub25zZW5zZSIKK0NSRUFURSBTRVJWRVIg Y29ubmVjdGlvbl9zZXJ2ZXIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcGdfY29ubmVjdGlvbl9mZHcK KyAgT1BUSU9OUyAoaG9zdCAndGhlaG9zdCcsIHBhc3N3b3JkICdzZWNyZXQnKTsgLS0gZmFpbAor RVJST1I6ICBpbnZhbGlkIG9wdGlvbiAicGFzc3dvcmQiCitcc2V0IFZFUkJPU0lUWSBkZWZhdWx0 CitDUkVBVEUgU0VSVkVSIGNvbm5lY3Rpb25fc2VydmVyIEZPUkVJR04gREFUQSBXUkFQUEVSIHBn X2Nvbm5lY3Rpb25fZmR3CisgIE9QVElPTlMgKGhvc3QgJ3RoZWhvc3QnLCBwb3J0ICc1NDMyJyk7 CitDUkVBVEUgVVNFUiBNQVBQSU5HIEZPUiByZWdyZXNzX3Rlc3Rfcm9sZSBTRVJWRVIgY29ubmVj dGlvbl9zZXJ2ZXIKKyAgT1BUSU9OUyAodXNlciAncm9sZScsIHBhc3N3b3JkICdzZWNyZXQnLCBo b3N0ICdvdGhlcmhvc3QnKTsgLS0gZmFpbAorRVJST1I6ICBpbnZhbGlkIG9wdGlvbiAiaG9zdCIK K0NSRUFURSBVU0VSIE1BUFBJTkcgRk9SIHJlZ3Jlc3NfdGVzdF9yb2xlIFNFUlZFUiBjb25uZWN0 aW9uX3NlcnZlcgorICBPUFRJT05TICh1c2VyICdyb2xlJywgcGFzc3dvcmQgJ3NlY3JldCcpOwor Q1JFQVRFIFVTRVIgTUFQUElORyBGT1IgUFVCTElDIFNFUlZFUiBjb25uZWN0aW9uX3NlcnZlcgor ICBPUFRJT05TICh1c2VyICdwdWJsaWN1c2VyJywgcGFzc3dvcmQgJHB3ZCQnXCIkIyBzZWNyZXQn JHB3ZCQpOworU0VMRUNUIHBnX2Nvbm5pbmZvX2Zyb21fc2VydmVyKCdjb25uZWN0aW9uX3NlcnZl cicsICdyZWdyZXNzX3Rlc3Rfcm9sZScsIGZhbHNlKTsKKyAgICAgICAgICAgICAgICAgICAgIHBn X2Nvbm5pbmZvX2Zyb21fc2VydmVyICAgICAgICAgICAgICAgICAgICAgIAorLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisg aG9zdCA9ICd0aGVob3N0JyBwb3J0ID0gJzU0MzInIHVzZXIgPSAncm9sZScgcGFzc3dvcmQgPSAn c2VjcmV0JworKDEgcm93KQorCitTRUxFQ1QgcGdfY29ubmluZm9fZnJvbV9zZXJ2ZXIoJ2Nvbm5l Y3Rpb25fc2VydmVyJywgJ3JlZ3Jlc3NfdGVzdF9yb2xlMicsIGZhbHNlKTsKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgcGdfY29ubmluZm9fZnJvbV9zZXJ2ZXIgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBob3N0ID0gJ3RoZWhv c3QnIHBvcnQgPSAnNTQzMicgdXNlciA9ICdwdWJsaWN1c2VyJyBwYXNzd29yZCA9ICdcJ1xcIiQj IHNlY3JldFwnJworKDEgcm93KQorCitEUk9QIFVTRVIgTUFQUElORyBGT1IgcmVncmVzc190ZXN0 X3JvbGUgU0VSVkVSIGNvbm5lY3Rpb25fc2VydmVyOworRFJPUCBVU0VSIE1BUFBJTkcgRk9SIFBV QkxJQyBTRVJWRVIgY29ubmVjdGlvbl9zZXJ2ZXI7CitEUk9QIFNFUlZFUiBjb25uZWN0aW9uX3Nl cnZlcjsKIC0tIEFMVEVSIFNFUlZFUgogQUxURVIgU0VSVkVSIHMwOyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0gRVJST1IKIEVSUk9SOiAgc3ludGF4IGVycm9y IGF0IG9yIG5lYXIgIjsiCkBAIC00MTAsMTggKzQ0OCwxOCBAQCBHUkFOVCBVU0FHRSBPTiBGT1JF SUdOIFNFUlZFUiBzNiBUTyByZWdyZXNzX3Rlc3Rfcm9sZTIgV0lUSCBHUkFOVCBPUFRJT047CiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBmb3JlaWduIHNlcnZlcnMKICBOYW1lIHwgICAg ICAgICAgIE93bmVyICAgICAgICAgICB8IEZvcmVpZ24tZGF0YSB3cmFwcGVyIHwgICAgICAgICAg ICAgICAgICAgQWNjZXNzIHByaXZpbGVnZXMgICAgICAgICAgICAgICAgICAgfCAgVHlwZSAgfCBW ZXJzaW9uIHwgICAgICAgICAgICBGRFcgb3B0aW9ucyAgICAgICAgICAgIHwgRGVzY3JpcHRpb24g CiAtLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLQotIHMxICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgZm9vICAg ICAgICAgICAgICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyPVUvcmVncmVzc19mb3Jl aWduX2RhdGFfdXNlcit8ICAgICAgICB8IDEuMCAgICAgfCAoc2VydmVybmFtZSAnczEnKSAgICAg ICAgICAgICAgICAgfCAKKyBzMSAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IHJlZ3Jl c3NfZm9vICAgICAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlcj1VL3JlZ3Jlc3NfZm9y ZWlnbl9kYXRhX3VzZXIrfCAgICAgICAgfCAxLjAgICAgIHwgKHNlcnZlcm5hbWUgJ3MxJykgICAg ICAgICAgICAgICAgIHwgCiAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAg ICAgICAgICAgICAgICAgICB8IHJlZ3Jlc3NfdGVzdF9yb2xlPVUvcmVncmVzc19mb3JlaWduX2Rh dGFfdXNlciAgICAgICAgIHwgICAgICAgIHwgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8IAotIHMyICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgZm9v ICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8ICAgICAgICB8IDEuMSAgICAgfCAoaG9zdCAnYScsIGRibmFtZSAn YicpICAgICAgICAgICAgfCAKLSBzMyAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IGZv byAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCBvcmFjbGUgfCAgICAgICAgIHwgKCJ0bnMgbmFtZSIgJ29yY2wn LCBwb3J0ICcxNTIxJykgIHwgCi0gczQgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCBm b28gICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgb3JhY2xlIHwgICAgICAgICB8IChob3N0ICdhJywgZGJuYW1l ICdiJykgICAgICAgICAgICB8IAotIHM1ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwg Zm9vICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8ICAgICAgICB8IDE1LjAgICAgfCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAKLSBzNiAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8 IGZvbyAgICAgICAgICAgICAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlcj1VL3JlZ3Jl c3NfZm9yZWlnbl9kYXRhX3VzZXIrfCAgICAgICAgfCAxNi4wICAgIHwgKGhvc3QgJ2EnLCBkYm5h bWUgJ2InKSAgICAgICAgICAgIHwgCisgczIgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIg fCByZWdyZXNzX2ZvbyAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgIHwgMS4xICAgICB8IChob3N0ICdhJywgZGJu YW1lICdiJykgICAgICAgICAgICB8IAorIHMzICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2Vy IHwgcmVncmVzc19mb28gICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB8IG9yYWNsZSB8ICAgICAgICAgfCAoInRucyBuYW1lIiAn b3JjbCcsIHBvcnQgJzE1MjEnKSAgfCAKKyBzNCAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNl ciB8IHJlZ3Jlc3NfZm9vICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgfCBvcmFjbGUgfCAgICAgICAgIHwgKGhvc3QgJ2EnLCBk Ym5hbWUgJ2InKSAgICAgICAgICAgIHwgCisgczUgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3Vz ZXIgfCByZWdyZXNzX2ZvbyAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgIHwgMTUuMCAgICB8ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB8IAorIHM2ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91 c2VyIHwgcmVncmVzc19mb28gICAgICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyPVUv cmVncmVzc19mb3JlaWduX2RhdGFfdXNlcit8ICAgICAgICB8IDE2LjAgICAgfCAoaG9zdCAnYScs IGRibmFtZSAnYicpICAgICAgICAgICAgfCAKICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICAgICAgICAgICAgICAgICAgICAgIHwgcmVncmVzc190ZXN0X3JvbGUyPVUqL3JlZ3Jl c3NfZm9yZWlnbl9kYXRhX3VzZXIgICAgICAgfCAgICAgICAgfCAgICAgICAgIHwgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHwgCi0gczcgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRh X3VzZXIgfCBmb28gICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgb3JhY2xlIHwgMTcuMCAgICB8IChob3N0ICdh JywgZGJuYW1lICdiJykgICAgICAgICAgICB8IAotIHM4ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0 YV91c2VyIHwgcG9zdGdyZXNxbCAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICB8ICAgICAgICAgfCAoaG9zdCAn bG9jYWxob3N0JywgZGJuYW1lICdzOGRiJykgfCAKLSB0MSAgIHwgcmVncmVzc190ZXN0X3JvbGUg ICAgICAgICB8IGZvbyAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgfCAgICAgICAgIHwgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgCi0gdDIgICB8IHJlZ3Jlc3NfdGVzdF9yb2xl ICAgICAgICAgfCBmb28gICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgIHwgICAgICAgICB8ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IAorIHM3ICAgfCByZWdyZXNzX2ZvcmVpZ25f ZGF0YV91c2VyIHwgcmVncmVzc19mb28gICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IG9yYWNsZSB8IDE3LjAgICAgfCAoaG9z dCAnYScsIGRibmFtZSAnYicpICAgICAgICAgICAgfCAKKyBzOCAgIHwgcmVncmVzc19mb3JlaWdu X2RhdGFfdXNlciB8IHJlZ3Jlc3NfcG9zdGdyZXNxbCAgIHwgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgfCAgICAgICAgIHwgKGhv c3QgJ2xvY2FsaG9zdCcsIGRibmFtZSAnczhkYicpIHwgCisgdDEgICB8IHJlZ3Jlc3NfdGVzdF9y b2xlICAgICAgICAgfCByZWdyZXNzX2ZvbyAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgIHwgICAgICAgICB8ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IAorIHQyICAgfCByZWdyZXNzX3Rlc3Rf cm9sZSAgICAgICAgIHwgcmVncmVzc19mb28gICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICB8ICAgICAgICAgfCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAKICgxMCByb3dzKQogCiBTRVQgUk9M RSByZWdyZXNzX3Rlc3Rfcm9sZTsKQEAgLTQzNSw3ICs0NzMsNyBAQCBHUkFOVCByZWdyZXNzX3Rl c3Rfcm9sZTIgVE8gcmVncmVzc190ZXN0X3JvbGU7CiBTRVQgUk9MRSByZWdyZXNzX3Rlc3Rfcm9s ZTsKIEFMVEVSIFNFUlZFUiBzMSBWRVJTSU9OICcxLjEnOwogQUxURVIgU0VSVkVSIHMxIE9XTkVS IFRPIHJlZ3Jlc3NfdGVzdF9yb2xlMjsgICAgICAgICAgICAgICAgLS0gRVJST1IKLUVSUk9SOiAg cGVybWlzc2lvbiBkZW5pZWQgZm9yIGZvcmVpZ24tZGF0YSB3cmFwcGVyIGZvbworRVJST1I6ICBw ZXJtaXNzaW9uIGRlbmllZCBmb3IgZm9yZWlnbi1kYXRhIHdyYXBwZXIgcmVncmVzc19mb28KIFJF U0VUIFJPTEU7CiBBTFRFUiBTRVJWRVIgczggT1BUSU9OUyAoZm9vICcxJyk7ICAgICAgICAgICAg ICAgICAgICAgICAgICAtLSBFUlJPUiBvcHRpb24gdmFsaWRhdGlvbgogRVJST1I6ICBpbnZhbGlk IG9wdGlvbiAiZm9vIgpAQCAtNDQ4LDI5ICs0ODYsMjkgQEAgR1JBTlQgcmVncmVzc190ZXN0X2lu ZGlyZWN0IFRPIHJlZ3Jlc3NfdGVzdF9yb2xlOwogU0VUIFJPTEUgcmVncmVzc190ZXN0X3JvbGU7 CiBBTFRFUiBTRVJWRVIgczEgT1dORVIgVE8gcmVncmVzc190ZXN0X2luZGlyZWN0OwogUkVTRVQg Uk9MRTsKLUdSQU5UIFVTQUdFIE9OIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBUTyByZWdyZXNz X3Rlc3RfaW5kaXJlY3Q7CitHUkFOVCBVU0FHRSBPTiBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdy ZXNzX2ZvbyBUTyByZWdyZXNzX3Rlc3RfaW5kaXJlY3Q7CiBTRVQgUk9MRSByZWdyZXNzX3Rlc3Rf cm9sZTsKIEFMVEVSIFNFUlZFUiBzMSBPV05FUiBUTyByZWdyZXNzX3Rlc3RfaW5kaXJlY3Q7CiBS RVNFVCBST0xFOwogRFJPUCBST0xFIHJlZ3Jlc3NfdGVzdF9pbmRpcmVjdDsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgLS0gRVJST1IKIEVSUk9SOiAgcm9sZSAicmVncmVzc190ZXN0X2luZGly ZWN0IiBjYW5ub3QgYmUgZHJvcHBlZCBiZWNhdXNlIHNvbWUgb2JqZWN0cyBkZXBlbmQgb24gaXQK LURFVEFJTDogIHByaXZpbGVnZXMgZm9yIGZvcmVpZ24tZGF0YSB3cmFwcGVyIGZvbworREVUQUlM OiAgcHJpdmlsZWdlcyBmb3IgZm9yZWlnbi1kYXRhIHdyYXBwZXIgcmVncmVzc19mb28KIG93bmVy IG9mIHNlcnZlciBzMQogXGRlcysKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2YgZm9y ZWlnbiBzZXJ2ZXJzCiAgTmFtZSB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBGb3JlaWdu LWRhdGEgd3JhcHBlciB8ICAgICAgICAgICAgICAgICAgIEFjY2VzcyBwcml2aWxlZ2VzICAgICAg ICAgICAgICAgICAgIHwgIFR5cGUgIHwgVmVyc2lvbiB8ICAgICAgICAgICAgIEZEVyBvcHRpb25z ICAgICAgICAgICAgICB8IERlc2NyaXB0aW9uIAogLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0KLSBzMSAgIHwgcmVn cmVzc190ZXN0X2luZGlyZWN0ICAgICB8IGZvbyAgICAgICAgICAgICAgICAgIHwgcmVncmVzc190 ZXN0X2luZGlyZWN0PVUvcmVncmVzc190ZXN0X2luZGlyZWN0ICAgICAgICAgfCAgICAgICAgfCAx LjEgICAgIHwgKHNlcnZlcm5hbWUgJ3MxJykgICAgICAgICAgICAgICAgICAgIHwgCi0gczIgICB8 IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCBmb28gICAgICAgICAgICAgICAgICB8ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAg IHwgMS4xICAgICB8IChob3N0ICdhJywgZGJuYW1lICdiJykgICAgICAgICAgICAgICB8IAotIHMz ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgZm9vICAgICAgICAgICAgICAgICAgfCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IG9y YWNsZSB8ICAgICAgICAgfCAoInRucyBuYW1lIiAnb3JjbCcsIHBvcnQgJzE1MjEnKSAgICAgfCAK LSBzNCAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IGZvbyAgICAgICAgICAgICAgICAg IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fCBvcmFjbGUgfCAgICAgICAgIHwgKGhvc3QgJ2EnLCBkYm5hbWUgJ2InKSAgICAgICAgICAgICAg IHwgCi0gczUgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCBmb28gICAgICAgICAgICAg ICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgICAgICAgIHwgMTUuMCAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8IAotIHM2ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgZm9vICAgICAgICAg ICAgICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyPVUvcmVncmVzc19mb3JlaWduX2Rh dGFfdXNlcit8ICAgICAgICB8IDE2LjAgICAgfCAoaG9zdCAnYScsIGRibmFtZSAnYicpICAgICAg ICAgICAgICAgfCAKKyBzMSAgIHwgcmVncmVzc190ZXN0X2luZGlyZWN0ICAgICB8IHJlZ3Jlc3Nf Zm9vICAgICAgICAgIHwgcmVncmVzc190ZXN0X2luZGlyZWN0PVUvcmVncmVzc190ZXN0X2luZGly ZWN0ICAgICAgICAgfCAgICAgICAgfCAxLjEgICAgIHwgKHNlcnZlcm5hbWUgJ3MxJykgICAgICAg ICAgICAgICAgICAgIHwgCisgczIgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCByZWdy ZXNzX2ZvbyAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgICAgICAgIHwgMS4xICAgICB8IChob3N0ICdhJywgZGJuYW1lICdi JykgICAgICAgICAgICAgICB8IAorIHMzICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwg cmVncmVzc19mb28gICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8IG9yYWNsZSB8ICAgICAgICAgfCAoInRucyBuYW1lIiAnb3Jj bCcsIHBvcnQgJzE1MjEnKSAgICAgfCAKKyBzNCAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNl ciB8IHJlZ3Jlc3NfZm9vICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgfCBvcmFjbGUgfCAgICAgICAgIHwgKGhvc3QgJ2EnLCBk Ym5hbWUgJ2InKSAgICAgICAgICAgICAgIHwgCisgczUgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRh X3VzZXIgfCByZWdyZXNzX2ZvbyAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgIHwgMTUuMCAgICB8ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IAorIHM2ICAgfCByZWdyZXNzX2ZvcmVpZ25f ZGF0YV91c2VyIHwgcmVncmVzc19mb28gICAgICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91 c2VyPVUvcmVncmVzc19mb3JlaWduX2RhdGFfdXNlcit8ICAgICAgICB8IDE2LjAgICAgfCAoaG9z dCAnYScsIGRibmFtZSAnYicpICAgICAgICAgICAgICAgfCAKICAgICAgIHwgICAgICAgICAgICAg ICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgIHwgcmVncmVzc190ZXN0X3JvbGUy PVUqL3JlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgICAgICAgfCAgICAgICAgfCAgICAgICAgIHwg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgCi0gczcgICB8IHJlZ3Jlc3Nf Zm9yZWlnbl9kYXRhX3VzZXIgfCBmb28gICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgb3JhY2xlIHwgMTcuMCAg ICB8IChob3N0ICdhJywgZGJuYW1lICdiJykgICAgICAgICAgICAgICB8IAotIHM4ICAgfCByZWdy ZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcG9zdGdyZXNxbCAgICAgICAgICAgfCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICB8ICAg ICAgICAgfCAoZGJuYW1lICdkYjEnLCBjb25uZWN0X3RpbWVvdXQgJzMwJykgfCAKLSB0MSAgIHwg cmVncmVzc190ZXN0X3JvbGUgICAgICAgICB8IGZvbyAgICAgICAgICAgICAgICAgIHwgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAg fCAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgCi0gdDIg ICB8IHJlZ3Jlc3NfdGVzdF9yb2xlICAgICAgICAgfCBmb28gICAgICAgICAgICAgICAgICB8ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAg ICAgIHwgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IAor IHM3ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc19mb28gICAgICAgICAg fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8 IG9yYWNsZSB8IDE3LjAgICAgfCAoaG9zdCAnYScsIGRibmFtZSAnYicpICAgICAgICAgICAgICAg fCAKKyBzOCAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IHJlZ3Jlc3NfcG9zdGdyZXNx bCAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgfCAgICAgICAgfCAgICAgICAgIHwgKGRibmFtZSAnZGIxJywgY29ubmVjdF90aW1lb3V0ICcz MCcpIHwgCisgdDEgICB8IHJlZ3Jlc3NfdGVzdF9yb2xlICAgICAgICAgfCByZWdyZXNzX2ZvbyAg ICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwgICAgICAgIHwgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8IAorIHQyICAgfCByZWdyZXNzX3Rlc3Rfcm9sZSAgICAgICAgIHwgcmVncmVzc19m b28gICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB8ICAgICAgICB8ICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAKICgxMCByb3dzKQogCiBBTFRFUiBTRVJWRVIgczggUkVOQU1FIHRvIHM4 bmV3OwpAQCAtNDc4LDE3ICs1MTYsMTcgQEAgQUxURVIgU0VSVkVSIHM4IFJFTkFNRSB0byBzOG5l dzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2YgZm9yZWlnbiBzZXJ2ZXJzCiAgTmFt ZSAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgRm9yZWlnbi1kYXRhIHdyYXBwZXIgfCAg ICAgICAgICAgICAgICAgICBBY2Nlc3MgcHJpdmlsZWdlcyAgICAgICAgICAgICAgICAgICB8ICBU eXBlICB8IFZlcnNpb24gfCAgICAgICAgICAgICBGRFcgb3B0aW9ucyAgICAgICAgICAgICAgfCBE ZXNjcmlwdGlvbiAKIC0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLQotIHMxICAgIHwgcmVncmVzc190ZXN0X2luZGly ZWN0ICAgICB8IGZvbyAgICAgICAgICAgICAgICAgIHwgcmVncmVzc190ZXN0X2luZGlyZWN0PVUv cmVncmVzc190ZXN0X2luZGlyZWN0ICAgICAgICAgfCAgICAgICAgfCAxLjEgICAgIHwgKHNlcnZl cm5hbWUgJ3MxJykgICAgICAgICAgICAgICAgICAgIHwgCi0gczIgICAgfCByZWdyZXNzX2ZvcmVp Z25fZGF0YV91c2VyIHwgZm9vICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICB8IDEuMSAgICAgfCAo aG9zdCAnYScsIGRibmFtZSAnYicpICAgICAgICAgICAgICAgfCAKLSBzMyAgICB8IHJlZ3Jlc3Nf Zm9yZWlnbl9kYXRhX3VzZXIgfCBmb28gICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgb3JhY2xlIHwgICAgICAg ICB8ICgidG5zIG5hbWUiICdvcmNsJywgcG9ydCAnMTUyMScpICAgICB8IAotIHM0ICAgIHwgcmVn cmVzc19mb3JlaWduX2RhdGFfdXNlciB8IGZvbyAgICAgICAgICAgICAgICAgIHwgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBvcmFjbGUgfCAg ICAgICAgIHwgKGhvc3QgJ2EnLCBkYm5hbWUgJ2InKSAgICAgICAgICAgICAgIHwgCi0gczUgICAg fCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgZm9vICAgICAgICAgICAgICAgICAgfCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAg ICB8IDE1LjAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAKLSBz NiAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCBmb28gICAgICAgICAgICAgICAgICB8 IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXI9VS9yZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyK3wg ICAgICAgIHwgMTYuMCAgICB8IChob3N0ICdhJywgZGJuYW1lICdiJykgICAgICAgICAgICAgICB8 IAorIHMxICAgIHwgcmVncmVzc190ZXN0X2luZGlyZWN0ICAgICB8IHJlZ3Jlc3NfZm9vICAgICAg ICAgIHwgcmVncmVzc190ZXN0X2luZGlyZWN0PVUvcmVncmVzc190ZXN0X2luZGlyZWN0ICAgICAg ICAgfCAgICAgICAgfCAxLjEgICAgIHwgKHNlcnZlcm5hbWUgJ3MxJykgICAgICAgICAgICAgICAg ICAgIHwgCisgczIgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc19mb28g ICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8ICAgICAgICB8IDEuMSAgICAgfCAoaG9zdCAnYScsIGRibmFtZSAnYicpICAgICAg ICAgICAgICAgfCAKKyBzMyAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCByZWdyZXNz X2ZvbyAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgb3JhY2xlIHwgICAgICAgICB8ICgidG5zIG5hbWUiICdvcmNsJywgcG9y dCAnMTUyMScpICAgICB8IAorIHM0ICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IHJl Z3Jlc3NfZm9vICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCBvcmFjbGUgfCAgICAgICAgIHwgKGhvc3QgJ2EnLCBkYm5hbWUg J2InKSAgICAgICAgICAgICAgIHwgCisgczUgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2Vy IHwgcmVncmVzc19mb28gICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICB8IDE1LjAgICAgfCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgfCAKKyBzNiAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRh X3VzZXIgfCByZWdyZXNzX2ZvbyAgICAgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXI9 VS9yZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyK3wgICAgICAgIHwgMTYuMCAgICB8IChob3N0ICdh JywgZGJuYW1lICdiJykgICAgICAgICAgICAgICB8IAogICAgICAgIHwgICAgICAgICAgICAgICAg ICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgIHwgcmVncmVzc190ZXN0X3JvbGUyPVUq L3JlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgICAgICAgfCAgICAgICAgfCAgICAgICAgIHwgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgCi0gczcgICAgfCByZWdyZXNzX2Zv cmVpZ25fZGF0YV91c2VyIHwgZm9vICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IG9yYWNsZSB8IDE3LjAgICAg fCAoaG9zdCAnYScsIGRibmFtZSAnYicpICAgICAgICAgICAgICAgfCAKLSBzOG5ldyB8IHJlZ3Jl c3NfZm9yZWlnbl9kYXRhX3VzZXIgfCBwb3N0Z3Jlc3FsICAgICAgICAgICB8ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgIHwgICAg ICAgICB8IChkYm5hbWUgJ2RiMScsIGNvbm5lY3RfdGltZW91dCAnMzAnKSB8IAotIHQxICAgIHwg cmVncmVzc190ZXN0X3JvbGUgICAgICAgICB8IGZvbyAgICAgICAgICAgICAgICAgIHwgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAg fCAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgCi0gdDIg ICAgfCByZWdyZXNzX3Rlc3Rfcm9sZSAgICAgICAgIHwgZm9vICAgICAgICAgICAgICAgICAgfCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAg ICAgICB8ICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAK KyBzNyAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCByZWdyZXNzX2ZvbyAgICAgICAg ICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgb3JhY2xlIHwgMTcuMCAgICB8IChob3N0ICdhJywgZGJuYW1lICdiJykgICAgICAgICAgICAg ICB8IAorIHM4bmV3IHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IHJlZ3Jlc3NfcG9zdGdy ZXNxbCAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgICAgICAgfCAgICAgICAgIHwgKGRibmFtZSAnZGIxJywgY29ubmVjdF90aW1lb3V0 ICczMCcpIHwgCisgdDEgICAgfCByZWdyZXNzX3Rlc3Rfcm9sZSAgICAgICAgIHwgcmVncmVzc19m b28gICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB8ICAgICAgICB8ICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAKKyB0MiAgICB8IHJlZ3Jlc3NfdGVzdF9yb2xlICAgICAgICAgfCByZWdy ZXNzX2ZvbyAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgICAgICAgIHwgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8IAogKDEwIHJvd3MpCiAKIEFMVEVSIFNFUlZFUiBzOG5ldyBSRU5B TUUgdG8gczg7CkBAIC01MDEsMTYgKzUzOSwxNiBAQCBOT1RJQ0U6ICBzZXJ2ZXIgIm5vbmV4aXN0 ZW50IiBkb2VzIG5vdCBleGlzdCwgc2tpcHBpbmcKICAgICAgICAgICAgICAgICAgTGlzdCBvZiBm b3JlaWduIHNlcnZlcnMKICBOYW1lIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEZvcmVp Z24tZGF0YSB3cmFwcGVyIAogLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tCi0gczEgICB8IHJlZ3Jlc3NfdGVzdF9pbmRpcmVjdCAgICAgfCBm b28KLSBzMiAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IGZvbwotIHMzICAgfCByZWdy ZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgZm9vCi0gczQgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRh X3VzZXIgfCBmb28KLSBzNSAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IGZvbwotIHM2 ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgZm9vCi0gczcgICB8IHJlZ3Jlc3NfZm9y ZWlnbl9kYXRhX3VzZXIgfCBmb28KLSBzOCAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8 IHBvc3RncmVzcWwKLSB0MSAgIHwgcmVncmVzc190ZXN0X3JvbGUgICAgICAgICB8IGZvbwotIHQy ICAgfCByZWdyZXNzX3Rlc3Rfcm9sZSAgICAgICAgIHwgZm9vCisgczEgICB8IHJlZ3Jlc3NfdGVz dF9pbmRpcmVjdCAgICAgfCByZWdyZXNzX2ZvbworIHMyICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0 YV91c2VyIHwgcmVncmVzc19mb28KKyBzMyAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8 IHJlZ3Jlc3NfZm9vCisgczQgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCByZWdyZXNz X2ZvbworIHM1ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc19mb28KKyBz NiAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IHJlZ3Jlc3NfZm9vCisgczcgICB8IHJl Z3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCByZWdyZXNzX2ZvbworIHM4ICAgfCByZWdyZXNzX2Zv cmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc19wb3N0Z3Jlc3FsCisgdDEgICB8IHJlZ3Jlc3NfdGVz dF9yb2xlICAgICAgICAgfCByZWdyZXNzX2ZvbworIHQyICAgfCByZWdyZXNzX3Rlc3Rfcm9sZSAg ICAgICAgIHwgcmVncmVzc19mb28KICgxMCByb3dzKQogCiBTRVQgUk9MRSByZWdyZXNzX3Rlc3Rf cm9sZTsKQEAgLTUyMiwxNSArNTYwLDE1IEBAIFJFU0VUIFJPTEU7CiAgICAgICAgICAgICAgICAg IExpc3Qgb2YgZm9yZWlnbiBzZXJ2ZXJzCiAgTmFtZSB8ICAgICAgICAgICBPd25lciAgICAgICAg ICAgfCBGb3JlaWduLWRhdGEgd3JhcHBlciAKIC0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIHMyICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0 YV91c2VyIHwgZm9vCi0gczMgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCBmb28KLSBz NCAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IGZvbwotIHM1ICAgfCByZWdyZXNzX2Zv cmVpZ25fZGF0YV91c2VyIHwgZm9vCi0gczYgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIg fCBmb28KLSBzNyAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IGZvbwotIHM4ICAgfCBy ZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcG9zdGdyZXNxbAotIHQxICAgfCByZWdyZXNzX3Rl c3Rfcm9sZSAgICAgICAgIHwgZm9vCi0gdDIgICB8IHJlZ3Jlc3NfdGVzdF9yb2xlICAgICAgICAg fCBmb28KKyBzMiAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IHJlZ3Jlc3NfZm9vCisg czMgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCByZWdyZXNzX2ZvbworIHM0ICAgfCBy ZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc19mb28KKyBzNSAgIHwgcmVncmVzc19m b3JlaWduX2RhdGFfdXNlciB8IHJlZ3Jlc3NfZm9vCisgczYgICB8IHJlZ3Jlc3NfZm9yZWlnbl9k YXRhX3VzZXIgfCByZWdyZXNzX2ZvbworIHM3ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2Vy IHwgcmVncmVzc19mb28KKyBzOCAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IHJlZ3Jl c3NfcG9zdGdyZXNxbAorIHQxICAgfCByZWdyZXNzX3Rlc3Rfcm9sZSAgICAgICAgIHwgcmVncmVz c19mb28KKyB0MiAgIHwgcmVncmVzc190ZXN0X3JvbGUgICAgICAgICB8IHJlZ3Jlc3NfZm9vCiAo OSByb3dzKQogCiBBTFRFUiBTRVJWRVIgczIgT1dORVIgVE8gcmVncmVzc190ZXN0X3JvbGU7CkBA IC01NDEsMTQgKzU3OSwxNCBAQCBSRVNFVCBST0xFOwogICAgICAgICAgICAgICAgICBMaXN0IG9m IGZvcmVpZ24gc2VydmVycwogIE5hbWUgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgRm9y ZWlnbi1kYXRhIHdyYXBwZXIgCiAtLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBzMyAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8 IGZvbwotIHM0ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgZm9vCi0gczUgICB8IHJl Z3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCBmb28KLSBzNiAgIHwgcmVncmVzc19mb3JlaWduX2Rh dGFfdXNlciB8IGZvbwotIHM3ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgZm9vCi0g czggICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCBwb3N0Z3Jlc3FsCi0gdDEgICB8IHJl Z3Jlc3NfdGVzdF9yb2xlICAgICAgICAgfCBmb28KLSB0MiAgIHwgcmVncmVzc190ZXN0X3JvbGUg ICAgICAgICB8IGZvbworIHMzICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVncmVz c19mb28KKyBzNCAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IHJlZ3Jlc3NfZm9vCisg czUgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCByZWdyZXNzX2ZvbworIHM2ICAgfCBy ZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc19mb28KKyBzNyAgIHwgcmVncmVzc19m b3JlaWduX2RhdGFfdXNlciB8IHJlZ3Jlc3NfZm9vCisgczggICB8IHJlZ3Jlc3NfZm9yZWlnbl9k YXRhX3VzZXIgfCByZWdyZXNzX3Bvc3RncmVzcWwKKyB0MSAgIHwgcmVncmVzc190ZXN0X3JvbGUg ICAgICAgICB8IHJlZ3Jlc3NfZm9vCisgdDIgICB8IHJlZ3Jlc3NfdGVzdF9yb2xlICAgICAgICAg fCByZWdyZXNzX2ZvbwogKDggcm93cykKIAogQ1JFQVRFIFVTRVIgTUFQUElORyBGT1IgY3VycmVu dF91c2VyIFNFUlZFUiBzMzsKQEAgLTU2OSwxMyArNjA3LDEzIEBAIE5PVElDRTogIGRyb3AgY2Fz Y2FkZXMgdG8gdXNlciBtYXBwaW5nIGZvciByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIG9uIHNl cnZlciBzCiAgICAgICAgICAgICAgICAgIExpc3Qgb2YgZm9yZWlnbiBzZXJ2ZXJzCiAgTmFtZSB8 ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBGb3JlaWduLWRhdGEgd3JhcHBlciAKIC0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIHM0 ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgZm9vCi0gczUgICB8IHJlZ3Jlc3NfZm9y ZWlnbl9kYXRhX3VzZXIgfCBmb28KLSBzNiAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8 IGZvbwotIHM3ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgZm9vCi0gczggICB8IHJl Z3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCBwb3N0Z3Jlc3FsCi0gdDEgICB8IHJlZ3Jlc3NfdGVz dF9yb2xlICAgICAgICAgfCBmb28KLSB0MiAgIHwgcmVncmVzc190ZXN0X3JvbGUgICAgICAgICB8 IGZvbworIHM0ICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc19mb28KKyBz NSAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IHJlZ3Jlc3NfZm9vCisgczYgICB8IHJl Z3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCByZWdyZXNzX2ZvbworIHM3ICAgfCByZWdyZXNzX2Zv cmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc19mb28KKyBzOCAgIHwgcmVncmVzc19mb3JlaWduX2Rh dGFfdXNlciB8IHJlZ3Jlc3NfcG9zdGdyZXNxbAorIHQxICAgfCByZWdyZXNzX3Rlc3Rfcm9sZSAg ICAgICAgIHwgcmVncmVzc19mb28KKyB0MiAgIHwgcmVncmVzc190ZXN0X3JvbGUgICAgICAgICB8 IHJlZ3Jlc3NfZm9vCiAoNyByb3dzKQogCiBcZGV1CkBAIC02OTAsNyArNzI4LDcgQEAgRFJPUCBT RVJWRVIgczc7CiAKIC0tIENSRUFURSBGT1JFSUdOIFRBQkxFCiBDUkVBVEUgU0NIRU1BIGZvcmVp Z25fc2NoZW1hOwotQ1JFQVRFIFNFUlZFUiBzMCBGT1JFSUdOIERBVEEgV1JBUFBFUiBkdW1teTsK K0NSRUFURSBTRVJWRVIgczAgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19kdW1teTsKIENS RUFURSBGT1JFSUdOIFRBQkxFIGZ0MSAoKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAtLSBFUlJPUgogRVJST1I6ICBzeW50YXggZXJyb3IgYXQgb3IgbmVhciAiOyIKIExJTkUg MTogQ1JFQVRFIEZPUkVJR04gVEFCTEUgZnQxICgpOwpAQCAtNzU4LDkgKzc5Niw5IEBAIENSRUFU RSBJTkRFWCBpZF9mdDFfYzIgT04gZnQxIChjMik7ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAtLSBFUlJPUgogRVJST1I6ICBjYW5ub3QgY3JlYXRlIGluZGV4IG9uIHJlbGF0aW9uICJmdDEi CiBERVRBSUw6ICBUaGlzIG9wZXJhdGlvbiBpcyBub3Qgc3VwcG9ydGVkIGZvciBmb3JlaWduIHRh Ymxlcy4KIFNFTEVDVCAqIEZST00gZnQxOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAtLSBFUlJPUgotRVJST1I6ICBmb3JlaWduLWRhdGEgd3JhcHBlciAiZHVt bXkiIGhhcyBubyBoYW5kbGVyCitFUlJPUjogIGZvcmVpZ24tZGF0YSB3cmFwcGVyICJyZWdyZXNz X2R1bW15IiBoYXMgbm8gaGFuZGxlcgogRVhQTEFJTiBTRUxFQ1QgKiBGUk9NIGZ0MTsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tIEVSUk9SCi1FUlJPUjogIGZvcmVpZ24t ZGF0YSB3cmFwcGVyICJkdW1teSIgaGFzIG5vIGhhbmRsZXIKK0VSUk9SOiAgZm9yZWlnbi1kYXRh IHdyYXBwZXIgInJlZ3Jlc3NfZHVtbXkiIGhhcyBubyBoYW5kbGVyCiBDUkVBVEUgVEFCTEUgbHQx IChhIElOVCkgUEFSVElUSU9OIEJZIFJBTkdFIChhKTsKIENSRUFURSBGT1JFSUdOIFRBQkxFIGZ0 X3BhcnQxCiAgIFBBUlRJVElPTiBPRiBsdDEgRk9SIFZBTFVFUyBGUk9NICgwKSBUTyAoMTAwMCkg U0VSVkVSIHMwOwpAQCAtOTY2LDMwICsxMDA0LDMwIEBAIE5PVElDRTogIHJlbGF0aW9uICJkb2Vz bnRfZXhpc3RfZnQxIiBkb2VzIG5vdCBleGlzdCwgc2tpcHBpbmcKIEFMVEVSIEZPUkVJR04gVEFC TEUgSUYgRVhJU1RTIGRvZXNudF9leGlzdF9mdDEgUkVOQU1FIFRPIGZvcmVpZ25fdGFibGVfMTsK IE5PVElDRTogIHJlbGF0aW9uICJkb2VzbnRfZXhpc3RfZnQxIiBkb2VzIG5vdCBleGlzdCwgc2tp cHBpbmcKIC0tIEluZm9ybWF0aW9uIHNjaGVtYQotU0VMRUNUICogRlJPTSBpbmZvcm1hdGlvbl9z Y2hlbWEuZm9yZWlnbl9kYXRhX3dyYXBwZXJzIE9SREVSIEJZIDEsIDI7CitTRUxFQ1QgKiBGUk9N IGluZm9ybWF0aW9uX3NjaGVtYS5mb3JlaWduX2RhdGFfd3JhcHBlcnMgV0hFUkUgYXV0aG9yaXph dGlvbl9pZGVudGlmaWVyID0gJ3JlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXInIE9SREVSIEJZIDEs IDI7CiAgZm9yZWlnbl9kYXRhX3dyYXBwZXJfY2F0YWxvZyB8IGZvcmVpZ25fZGF0YV93cmFwcGVy X25hbWUgfCBhdXRob3JpemF0aW9uX2lkZW50aWZpZXIgIHwgbGlicmFyeV9uYW1lIHwgZm9yZWln bl9kYXRhX3dyYXBwZXJfbGFuZ3VhZ2UgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gcmVncmVzc2lv biAgICAgICAgICAgICAgICAgICB8IGR1bW15ICAgICAgICAgICAgICAgICAgICAgfCByZWdyZXNz X2ZvcmVpZ25fZGF0YV91c2VyIHwgICAgICAgICAgICAgIHwgYwotIHJlZ3Jlc3Npb24gICAgICAg ICAgICAgICAgICAgfCBmb28gICAgICAgICAgICAgICAgICAgICAgIHwgcmVncmVzc19mb3JlaWdu X2RhdGFfdXNlciB8ICAgICAgICAgICAgICB8IGMKLSByZWdyZXNzaW9uICAgICAgICAgICAgICAg ICAgIHwgcG9zdGdyZXNxbCAgICAgICAgICAgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3Vz ZXIgfCAgICAgICAgICAgICAgfCBjCisgcmVncmVzc2lvbiAgICAgICAgICAgICAgICAgICB8IHJl Z3Jlc3NfZHVtbXkgICAgICAgICAgICAgfCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgICAg ICAgICAgICAgIHwgYworIHJlZ3Jlc3Npb24gICAgICAgICAgICAgICAgICAgfCByZWdyZXNzX2Zv byAgICAgICAgICAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8ICAgICAgICAgICAg ICB8IGMKKyByZWdyZXNzaW9uICAgICAgICAgICAgICAgICAgIHwgcmVncmVzc19wb3N0Z3Jlc3Fs ICAgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCAgICAgICAgICAgICAgfCBjCiAo MyByb3dzKQogCiBTRUxFQ1QgKiBGUk9NIGluZm9ybWF0aW9uX3NjaGVtYS5mb3JlaWduX2RhdGFf d3JhcHBlcl9vcHRpb25zIE9SREVSIEJZIDEsIDIsIDM7CiAgZm9yZWlnbl9kYXRhX3dyYXBwZXJf Y2F0YWxvZyB8IGZvcmVpZ25fZGF0YV93cmFwcGVyX25hbWUgfCBvcHRpb25fbmFtZSAgfCBvcHRp b25fdmFsdWUgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tCi0gcmVncmVzc2lvbiAg ICAgICAgICAgICAgICAgICB8IGZvbyAgICAgICAgICAgICAgICAgICAgICAgfCB0ZXN0IHdyYXBw ZXIgfCB0cnVlCisgcmVncmVzc2lvbiAgICAgICAgICAgICAgICAgICB8IHJlZ3Jlc3NfZm9vICAg ICAgICAgICAgICAgfCB0ZXN0IHdyYXBwZXIgfCB0cnVlCiAoMSByb3cpCiAKIFNFTEVDVCAqIEZS T00gaW5mb3JtYXRpb25fc2NoZW1hLmZvcmVpZ25fc2VydmVycyBPUkRFUiBCWSAxLCAyOwogIGZv cmVpZ25fc2VydmVyX2NhdGFsb2cgfCBmb3JlaWduX3NlcnZlcl9uYW1lIHwgZm9yZWlnbl9kYXRh X3dyYXBwZXJfY2F0YWxvZyB8IGZvcmVpZ25fZGF0YV93cmFwcGVyX25hbWUgfCBmb3JlaWduX3Nl cnZlcl90eXBlIHwgZm9yZWlnbl9zZXJ2ZXJfdmVyc2lvbiB8IGF1dGhvcml6YXRpb25faWRlbnRp ZmllciAgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KLSByZWdyZXNzaW9uICAgICAgICAgICAgIHwgczAgICAgICAgICAg ICAgICAgICB8IHJlZ3Jlc3Npb24gICAgICAgICAgICAgICAgICAgfCBkdW1teSAgICAgICAgICAg ICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAg fCByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyCi0gcmVncmVzc2lvbiAgICAgICAgICAgICB8IHM0 ICAgICAgICAgICAgICAgICAgfCByZWdyZXNzaW9uICAgICAgICAgICAgICAgICAgIHwgZm9vICAg ICAgICAgICAgICAgICAgICAgICB8IG9yYWNsZSAgICAgICAgICAgICAgfCAgICAgICAgICAgICAg ICAgICAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlcgotIHJlZ3Jlc3Npb24gICAgICAg ICAgICAgfCBzNSAgICAgICAgICAgICAgICAgIHwgcmVncmVzc2lvbiAgICAgICAgICAgICAgICAg ICB8IGZvbyAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgIHwgMTUu MCAgICAgICAgICAgICAgICAgICB8IHJlZ3Jlc3NfdGVzdF9yb2xlCi0gcmVncmVzc2lvbiAgICAg ICAgICAgICB8IHM2ICAgICAgICAgICAgICAgICAgfCByZWdyZXNzaW9uICAgICAgICAgICAgICAg ICAgIHwgZm9vICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgfCAx Ni4wICAgICAgICAgICAgICAgICAgIHwgcmVncmVzc190ZXN0X2luZGlyZWN0Ci0gcmVncmVzc2lv biAgICAgICAgICAgICB8IHM4ICAgICAgICAgICAgICAgICAgfCByZWdyZXNzaW9uICAgICAgICAg ICAgICAgICAgIHwgcG9zdGdyZXNxbCAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAg ICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlcgot IHJlZ3Jlc3Npb24gICAgICAgICAgICAgfCB0MSAgICAgICAgICAgICAgICAgIHwgcmVncmVzc2lv biAgICAgICAgICAgICAgICAgICB8IGZvbyAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAg ICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IHJlZ3Jlc3NfdGVzdF9pbmRp cmVjdAotIHJlZ3Jlc3Npb24gICAgICAgICAgICAgfCB0MiAgICAgICAgICAgICAgICAgIHwgcmVn cmVzc2lvbiAgICAgICAgICAgICAgICAgICB8IGZvbyAgICAgICAgICAgICAgICAgICAgICAgfCAg ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IHJlZ3Jlc3NfdGVz dF9yb2xlCisgcmVncmVzc2lvbiAgICAgICAgICAgICB8IHMwICAgICAgICAgICAgICAgICAgfCBy ZWdyZXNzaW9uICAgICAgICAgICAgICAgICAgIHwgcmVncmVzc19kdW1teSAgICAgICAgICAgICB8 ICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgcmVncmVzc19m b3JlaWduX2RhdGFfdXNlcgorIHJlZ3Jlc3Npb24gICAgICAgICAgICAgfCBzNCAgICAgICAgICAg ICAgICAgIHwgcmVncmVzc2lvbiAgICAgICAgICAgICAgICAgICB8IHJlZ3Jlc3NfZm9vICAgICAg ICAgICAgICAgfCBvcmFjbGUgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8 IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIKKyByZWdyZXNzaW9uICAgICAgICAgICAgIHwgczUg ICAgICAgICAgICAgICAgICB8IHJlZ3Jlc3Npb24gICAgICAgICAgICAgICAgICAgfCByZWdyZXNz X2ZvbyAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICB8IDE1LjAgICAgICAgICAg ICAgICAgICAgfCByZWdyZXNzX3Rlc3Rfcm9sZQorIHJlZ3Jlc3Npb24gICAgICAgICAgICAgfCBz NiAgICAgICAgICAgICAgICAgIHwgcmVncmVzc2lvbiAgICAgICAgICAgICAgICAgICB8IHJlZ3Jl c3NfZm9vICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgIHwgMTYuMCAgICAgICAg ICAgICAgICAgICB8IHJlZ3Jlc3NfdGVzdF9pbmRpcmVjdAorIHJlZ3Jlc3Npb24gICAgICAgICAg ICAgfCBzOCAgICAgICAgICAgICAgICAgIHwgcmVncmVzc2lvbiAgICAgICAgICAgICAgICAgICB8 IHJlZ3Jlc3NfcG9zdGdyZXNxbCAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgIHwgICAgICAg ICAgICAgICAgICAgICAgICB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIKKyByZWdyZXNzaW9u ICAgICAgICAgICAgIHwgdDEgICAgICAgICAgICAgICAgICB8IHJlZ3Jlc3Npb24gICAgICAgICAg ICAgICAgICAgfCByZWdyZXNzX2ZvbyAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAg ICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCByZWdyZXNzX3Rlc3RfaW5kaXJlY3QKKyByZWdy ZXNzaW9uICAgICAgICAgICAgIHwgdDIgICAgICAgICAgICAgICAgICB8IHJlZ3Jlc3Npb24gICAg ICAgICAgICAgICAgICAgfCByZWdyZXNzX2ZvbyAgICAgICAgICAgICAgIHwgICAgICAgICAgICAg ICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCByZWdyZXNzX3Rlc3Rfcm9sZQogKDcg cm93cykKIAogU0VMRUNUICogRlJPTSBpbmZvcm1hdGlvbl9zY2hlbWEuZm9yZWlnbl9zZXJ2ZXJf b3B0aW9ucyBPUkRFUiBCWSAxLCAyLCAzOwpAQCAtMTAyOCwyMCArMTA2NiwyMCBAQCBTRUxFQ1Qg KiBGUk9NIGluZm9ybWF0aW9uX3NjaGVtYS51c2VyX21hcHBpbmdfb3B0aW9ucyBPUkRFUiBCWSBs b3dlcihhdXRob3JpemF0aQogIHJlZ3Jlc3NfdGVzdF9yb2xlICAgICAgICAgfCByZWdyZXNzaW9u ICAgICAgICAgICAgIHwgdDEgICAgICAgICAgICAgICAgICB8IHVzZXJuYW1lICAgICB8IGJvYgog KDcgcm93cykKIAotU0VMRUNUICogRlJPTSBpbmZvcm1hdGlvbl9zY2hlbWEudXNhZ2VfcHJpdmls ZWdlcyBXSEVSRSBvYmplY3RfdHlwZSBMSUtFICdGT1JFSUdOJScgQU5EIG9iamVjdF9uYW1lIElO ICgnczYnLCAnZm9vJykgT1JERVIgQlkgMSwgMiwgMywgNCwgNTsKK1NFTEVDVCAqIEZST00gaW5m b3JtYXRpb25fc2NoZW1hLnVzYWdlX3ByaXZpbGVnZXMgV0hFUkUgb2JqZWN0X3R5cGUgTElLRSAn Rk9SRUlHTiUnIEFORCBvYmplY3RfbmFtZSBJTiAoJ3M2JywgJ3JlZ3Jlc3NfZm9vJykgT1JERVIg QlkgMSwgMiwgMywgNCwgNTsKICAgICAgICAgICBncmFudG9yICAgICAgICAgIHwgICAgICAgICAg Z3JhbnRlZSAgICAgICAgICB8IG9iamVjdF9jYXRhbG9nIHwgb2JqZWN0X3NjaGVtYSB8IG9iamVj dF9uYW1lIHwgICAgIG9iamVjdF90eXBlICAgICAgfCBwcml2aWxlZ2VfdHlwZSB8IGlzX2dyYW50 YWJsZSAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0KLSByZWdy ZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8IHJlZ3Jl c3Npb24gICAgIHwgICAgICAgICAgICAgICB8IGZvbyAgICAgICAgIHwgRk9SRUlHTiBEQVRBIFdS QVBQRVIgfCBVU0FHRSAgICAgICAgICB8IFlFUwotIHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIg fCByZWdyZXNzX3Rlc3RfaW5kaXJlY3QgICAgIHwgcmVncmVzc2lvbiAgICAgfCAgICAgICAgICAg ICAgIHwgZm9vICAgICAgICAgfCBGT1JFSUdOIERBVEEgV1JBUFBFUiB8IFVTQUdFICAgICAgICAg IHwgTk8KKyByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc19mb3JlaWduX2RhdGFf dXNlciB8IHJlZ3Jlc3Npb24gICAgIHwgICAgICAgICAgICAgICB8IHJlZ3Jlc3NfZm9vIHwgRk9S RUlHTiBEQVRBIFdSQVBQRVIgfCBVU0FHRSAgICAgICAgICB8IFlFUworIHJlZ3Jlc3NfZm9yZWln bl9kYXRhX3VzZXIgfCByZWdyZXNzX3Rlc3RfaW5kaXJlY3QgICAgIHwgcmVncmVzc2lvbiAgICAg fCAgICAgICAgICAgICAgIHwgcmVncmVzc19mb28gfCBGT1JFSUdOIERBVEEgV1JBUFBFUiB8IFVT QUdFICAgICAgICAgIHwgTk8KICByZWdyZXNzX3Rlc3RfaW5kaXJlY3QgICAgIHwgcmVncmVzc190 ZXN0X2luZGlyZWN0ICAgICB8IHJlZ3Jlc3Npb24gICAgIHwgICAgICAgICAgICAgICB8IHM2ICAg ICAgICAgIHwgRk9SRUlHTiBTRVJWRVIgICAgICAgfCBVU0FHRSAgICAgICAgICB8IFlFUwogIHJl Z3Jlc3NfdGVzdF9pbmRpcmVjdCAgICAgfCByZWdyZXNzX3Rlc3Rfcm9sZTIgICAgICAgIHwgcmVn cmVzc2lvbiAgICAgfCAgICAgICAgICAgICAgIHwgczYgICAgICAgICAgfCBGT1JFSUdOIFNFUlZF UiAgICAgICB8IFVTQUdFICAgICAgICAgIHwgWUVTCiAoNCByb3dzKQogCi1TRUxFQ1QgKiBGUk9N IGluZm9ybWF0aW9uX3NjaGVtYS5yb2xlX3VzYWdlX2dyYW50cyBXSEVSRSBvYmplY3RfdHlwZSBM SUtFICdGT1JFSUdOJScgQU5EIG9iamVjdF9uYW1lIElOICgnczYnLCAnZm9vJykgT1JERVIgQlkg MSwgMiwgMywgNCwgNTsKK1NFTEVDVCAqIEZST00gaW5mb3JtYXRpb25fc2NoZW1hLnJvbGVfdXNh Z2VfZ3JhbnRzIFdIRVJFIG9iamVjdF90eXBlIExJS0UgJ0ZPUkVJR04lJyBBTkQgb2JqZWN0X25h bWUgSU4gKCdzNicsICdyZWdyZXNzX2ZvbycpIE9SREVSIEJZIDEsIDIsIDMsIDQsIDU7CiAgICAg ICAgICAgZ3JhbnRvciAgICAgICAgICB8ICAgICAgICAgIGdyYW50ZWUgICAgICAgICAgfCBvYmpl Y3RfY2F0YWxvZyB8IG9iamVjdF9zY2hlbWEgfCBvYmplY3RfbmFtZSB8ICAgICBvYmplY3RfdHlw ZSAgICAgIHwgcHJpdmlsZWdlX3R5cGUgfCBpc19ncmFudGFibGUgCiAtLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tCi0gcmVncmVzc19mb3JlaWduX2RhdGFfdXNlciB8 IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCByZWdyZXNzaW9uICAgICB8ICAgICAgICAgICAg ICAgfCBmb28gICAgICAgICB8IEZPUkVJR04gREFUQSBXUkFQUEVSIHwgVVNBR0UgICAgICAgICAg fCBZRVMKLSByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc190ZXN0X2luZGlyZWN0 ICAgICB8IHJlZ3Jlc3Npb24gICAgIHwgICAgICAgICAgICAgICB8IGZvbyAgICAgICAgIHwgRk9S RUlHTiBEQVRBIFdSQVBQRVIgfCBVU0FHRSAgICAgICAgICB8IE5PCisgcmVncmVzc19mb3JlaWdu X2RhdGFfdXNlciB8IHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXIgfCByZWdyZXNzaW9uICAgICB8 ICAgICAgICAgICAgICAgfCByZWdyZXNzX2ZvbyB8IEZPUkVJR04gREFUQSBXUkFQUEVSIHwgVVNB R0UgICAgICAgICAgfCBZRVMKKyByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc190 ZXN0X2luZGlyZWN0ICAgICB8IHJlZ3Jlc3Npb24gICAgIHwgICAgICAgICAgICAgICB8IHJlZ3Jl c3NfZm9vIHwgRk9SRUlHTiBEQVRBIFdSQVBQRVIgfCBVU0FHRSAgICAgICAgICB8IE5PCiAgcmVn cmVzc190ZXN0X2luZGlyZWN0ICAgICB8IHJlZ3Jlc3NfdGVzdF9pbmRpcmVjdCAgICAgfCByZWdy ZXNzaW9uICAgICB8ICAgICAgICAgICAgICAgfCBzNiAgICAgICAgICB8IEZPUkVJR04gU0VSVkVS ICAgICAgIHwgVVNBR0UgICAgICAgICAgfCBZRVMKICByZWdyZXNzX3Rlc3RfaW5kaXJlY3QgICAg IHwgcmVncmVzc190ZXN0X3JvbGUyICAgICAgICB8IHJlZ3Jlc3Npb24gICAgIHwgICAgICAgICAg ICAgICB8IHM2ICAgICAgICAgIHwgRk9SRUlHTiBTRVJWRVIgICAgICAgfCBVU0FHRSAgICAgICAg ICB8IFlFUwogKDQgcm93cykKQEAgLTEwNzEsMTggKzExMDksMTggQEAgU0VMRUNUICogRlJPTSBp bmZvcm1hdGlvbl9zY2hlbWEudXNlcl9tYXBwaW5nX29wdGlvbnMgT1JERVIgQlkgMSwgMiwgMywg NDsKICByZWdyZXNzX3Rlc3Rfcm9sZSAgICAgICAgfCByZWdyZXNzaW9uICAgICAgICAgICAgIHwg dDEgICAgICAgICAgICAgICAgICB8IHVzZXJuYW1lICAgIHwgYm9iCiAoNSByb3dzKQogCi1TRUxF Q1QgKiBGUk9NIGluZm9ybWF0aW9uX3NjaGVtYS51c2FnZV9wcml2aWxlZ2VzIFdIRVJFIG9iamVj dF90eXBlIExJS0UgJ0ZPUkVJR04lJyBBTkQgb2JqZWN0X25hbWUgSU4gKCdzNicsICdmb28nKSBP UkRFUiBCWSAxLCAyLCAzLCA0LCA1OworU0VMRUNUICogRlJPTSBpbmZvcm1hdGlvbl9zY2hlbWEu dXNhZ2VfcHJpdmlsZWdlcyBXSEVSRSBvYmplY3RfdHlwZSBMSUtFICdGT1JFSUdOJScgQU5EIG9i amVjdF9uYW1lIElOICgnczYnLCAncmVncmVzc19mb28nKSBPUkRFUiBCWSAxLCAyLCAzLCA0LCA1 OwogICAgICAgICAgIGdyYW50b3IgICAgICAgICAgfCAgICAgICAgZ3JhbnRlZSAgICAgICAgfCBv YmplY3RfY2F0YWxvZyB8IG9iamVjdF9zY2hlbWEgfCBvYmplY3RfbmFtZSB8ICAgICBvYmplY3Rf dHlwZSAgICAgIHwgcHJpdmlsZWdlX3R5cGUgfCBpc19ncmFudGFibGUgCiAtLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0KLSByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwg cmVncmVzc190ZXN0X2luZGlyZWN0IHwgcmVncmVzc2lvbiAgICAgfCAgICAgICAgICAgICAgIHwg Zm9vICAgICAgICAgfCBGT1JFSUdOIERBVEEgV1JBUFBFUiB8IFVTQUdFICAgICAgICAgIHwgTk8K KyByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc190ZXN0X2luZGlyZWN0IHwgcmVn cmVzc2lvbiAgICAgfCAgICAgICAgICAgICAgIHwgcmVncmVzc19mb28gfCBGT1JFSUdOIERBVEEg V1JBUFBFUiB8IFVTQUdFICAgICAgICAgIHwgTk8KICByZWdyZXNzX3Rlc3RfaW5kaXJlY3QgICAg IHwgcmVncmVzc190ZXN0X2luZGlyZWN0IHwgcmVncmVzc2lvbiAgICAgfCAgICAgICAgICAgICAg IHwgczYgICAgICAgICAgfCBGT1JFSUdOIFNFUlZFUiAgICAgICB8IFVTQUdFICAgICAgICAgIHwg WUVTCiAgcmVncmVzc190ZXN0X2luZGlyZWN0ICAgICB8IHJlZ3Jlc3NfdGVzdF9yb2xlMiAgICB8 IHJlZ3Jlc3Npb24gICAgIHwgICAgICAgICAgICAgICB8IHM2ICAgICAgICAgIHwgRk9SRUlHTiBT RVJWRVIgICAgICAgfCBVU0FHRSAgICAgICAgICB8IFlFUwogKDMgcm93cykKIAotU0VMRUNUICog RlJPTSBpbmZvcm1hdGlvbl9zY2hlbWEucm9sZV91c2FnZV9ncmFudHMgV0hFUkUgb2JqZWN0X3R5 cGUgTElLRSAnRk9SRUlHTiUnIEFORCBvYmplY3RfbmFtZSBJTiAoJ3M2JywgJ2ZvbycpIE9SREVS IEJZIDEsIDIsIDMsIDQsIDU7CitTRUxFQ1QgKiBGUk9NIGluZm9ybWF0aW9uX3NjaGVtYS5yb2xl X3VzYWdlX2dyYW50cyBXSEVSRSBvYmplY3RfdHlwZSBMSUtFICdGT1JFSUdOJScgQU5EIG9iamVj dF9uYW1lIElOICgnczYnLCAncmVncmVzc19mb28nKSBPUkRFUiBCWSAxLCAyLCAzLCA0LCA1Owog ICAgICAgICAgIGdyYW50b3IgICAgICAgICAgfCAgICAgICAgZ3JhbnRlZSAgICAgICAgfCBvYmpl Y3RfY2F0YWxvZyB8IG9iamVjdF9zY2hlbWEgfCBvYmplY3RfbmFtZSB8ICAgICBvYmplY3RfdHlw ZSAgICAgIHwgcHJpdmlsZWdlX3R5cGUgfCBpc19ncmFudGFibGUgCiAtLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0KLSByZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVn cmVzc190ZXN0X2luZGlyZWN0IHwgcmVncmVzc2lvbiAgICAgfCAgICAgICAgICAgICAgIHwgZm9v ICAgICAgICAgfCBGT1JFSUdOIERBVEEgV1JBUFBFUiB8IFVTQUdFICAgICAgICAgIHwgTk8KKyBy ZWdyZXNzX2ZvcmVpZ25fZGF0YV91c2VyIHwgcmVncmVzc190ZXN0X2luZGlyZWN0IHwgcmVncmVz c2lvbiAgICAgfCAgICAgICAgICAgICAgIHwgcmVncmVzc19mb28gfCBGT1JFSUdOIERBVEEgV1JB UFBFUiB8IFVTQUdFICAgICAgICAgIHwgTk8KICByZWdyZXNzX3Rlc3RfaW5kaXJlY3QgICAgIHwg cmVncmVzc190ZXN0X2luZGlyZWN0IHwgcmVncmVzc2lvbiAgICAgfCAgICAgICAgICAgICAgIHwg czYgICAgICAgICAgfCBGT1JFSUdOIFNFUlZFUiAgICAgICB8IFVTQUdFICAgICAgICAgIHwgWUVT CiAgcmVncmVzc190ZXN0X2luZGlyZWN0ICAgICB8IHJlZ3Jlc3NfdGVzdF9yb2xlMiAgICB8IHJl Z3Jlc3Npb24gICAgIHwgICAgICAgICAgICAgICB8IHM2ICAgICAgICAgIHwgRk9SRUlHTiBTRVJW RVIgICAgICAgfCBVU0FHRSAgICAgICAgICB8IFlFUwogKDMgcm93cykKQEAgLTEwOTgsMTMgKzEx MzYsMTMgQEAgU0VMRUNUICogRlJPTSBpbmZvcm1hdGlvbl9zY2hlbWEudXNlcl9tYXBwaW5nX29w dGlvbnMgT1JERVIgQlkgMSwgMiwgMywgNDsKIFJFU0VUIFJPTEU7CiAtLSBoYXNfZm9yZWlnbl9k YXRhX3dyYXBwZXJfcHJpdmlsZWdlCiBTRUxFQ1QgaGFzX2ZvcmVpZ25fZGF0YV93cmFwcGVyX3By aXZpbGVnZSgncmVncmVzc190ZXN0X3JvbGUnLAotICAgIChTRUxFQ1Qgb2lkIEZST00gcGdfZm9y ZWlnbl9kYXRhX3dyYXBwZXIgV0hFUkUgZmR3bmFtZT0nZm9vJyksICdVU0FHRScpOworICAgIChT RUxFQ1Qgb2lkIEZST00gcGdfZm9yZWlnbl9kYXRhX3dyYXBwZXIgV0hFUkUgZmR3bmFtZT0ncmVn cmVzc19mb28nKSwgJ1VTQUdFJyk7CiAgaGFzX2ZvcmVpZ25fZGF0YV93cmFwcGVyX3ByaXZpbGVn ZSAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIHQKICgxIHJvdykKIAot U0VMRUNUIGhhc19mb3JlaWduX2RhdGFfd3JhcHBlcl9wcml2aWxlZ2UoJ3JlZ3Jlc3NfdGVzdF9y b2xlJywgJ2ZvbycsICdVU0FHRScpOworU0VMRUNUIGhhc19mb3JlaWduX2RhdGFfd3JhcHBlcl9w cml2aWxlZ2UoJ3JlZ3Jlc3NfdGVzdF9yb2xlJywgJ3JlZ3Jlc3NfZm9vJywgJ1VTQUdFJyk7CiAg aGFzX2ZvcmVpZ25fZGF0YV93cmFwcGVyX3ByaXZpbGVnZSAKIC0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQogIHQKQEAgLTExMTIsMzQgKzExNTAsMzQgQEAgU0VMRUNUIGhhc19m b3JlaWduX2RhdGFfd3JhcHBlcl9wcml2aWxlZ2UoJ3JlZ3Jlc3NfdGVzdF9yb2xlJywgJ2Zvbycs ICdVU0FHRScpOwogCiBTRUxFQ1QgaGFzX2ZvcmVpZ25fZGF0YV93cmFwcGVyX3ByaXZpbGVnZSgK ICAgICAoU0VMRUNUIG9pZCBGUk9NIHBnX3JvbGVzIFdIRVJFIHJvbG5hbWU9J3JlZ3Jlc3NfdGVz dF9yb2xlJyksCi0gICAgKFNFTEVDVCBvaWQgRlJPTSBwZ19mb3JlaWduX2RhdGFfd3JhcHBlciBX SEVSRSBmZHduYW1lPSdmb28nKSwgJ1VTQUdFJyk7CisgICAgKFNFTEVDVCBvaWQgRlJPTSBwZ19m b3JlaWduX2RhdGFfd3JhcHBlciBXSEVSRSBmZHduYW1lPSdyZWdyZXNzX2ZvbycpLCAnVVNBR0Un KTsKICBoYXNfZm9yZWlnbl9kYXRhX3dyYXBwZXJfcHJpdmlsZWdlIAogLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgdAogKDEgcm93KQogCiBTRUxFQ1QgaGFzX2ZvcmVpZ25f ZGF0YV93cmFwcGVyX3ByaXZpbGVnZSgKLSAgICAoU0VMRUNUIG9pZCBGUk9NIHBnX2ZvcmVpZ25f ZGF0YV93cmFwcGVyIFdIRVJFIGZkd25hbWU9J2ZvbycpLCAnVVNBR0UnKTsKKyAgICAoU0VMRUNU IG9pZCBGUk9NIHBnX2ZvcmVpZ25fZGF0YV93cmFwcGVyIFdIRVJFIGZkd25hbWU9J3JlZ3Jlc3Nf Zm9vJyksICdVU0FHRScpOwogIGhhc19mb3JlaWduX2RhdGFfd3JhcHBlcl9wcml2aWxlZ2UgCiAt LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICB0CiAoMSByb3cpCiAKIFNFTEVD VCBoYXNfZm9yZWlnbl9kYXRhX3dyYXBwZXJfcHJpdmlsZWdlKAotICAgIChTRUxFQ1Qgb2lkIEZS T00gcGdfcm9sZXMgV0hFUkUgcm9sbmFtZT0ncmVncmVzc190ZXN0X3JvbGUnKSwgJ2ZvbycsICdV U0FHRScpOworICAgIChTRUxFQ1Qgb2lkIEZST00gcGdfcm9sZXMgV0hFUkUgcm9sbmFtZT0ncmVn cmVzc190ZXN0X3JvbGUnKSwgJ3JlZ3Jlc3NfZm9vJywgJ1VTQUdFJyk7CiAgaGFzX2ZvcmVpZ25f ZGF0YV93cmFwcGVyX3ByaXZpbGVnZSAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQogIHQKICgxIHJvdykKIAotU0VMRUNUIGhhc19mb3JlaWduX2RhdGFfd3JhcHBlcl9wcml2 aWxlZ2UoJ2ZvbycsICdVU0FHRScpOworU0VMRUNUIGhhc19mb3JlaWduX2RhdGFfd3JhcHBlcl9w cml2aWxlZ2UoJ3JlZ3Jlc3NfZm9vJywgJ1VTQUdFJyk7CiAgaGFzX2ZvcmVpZ25fZGF0YV93cmFw cGVyX3ByaXZpbGVnZSAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIHQK ICgxIHJvdykKIAotR1JBTlQgVVNBR0UgT04gRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vIFRPIHJl Z3Jlc3NfdGVzdF9yb2xlOwotU0VMRUNUIGhhc19mb3JlaWduX2RhdGFfd3JhcHBlcl9wcml2aWxl Z2UoJ3JlZ3Jlc3NfdGVzdF9yb2xlJywgJ2ZvbycsICdVU0FHRScpOworR1JBTlQgVVNBR0UgT04g Rk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gVE8gcmVncmVzc190ZXN0X3JvbGU7CitT RUxFQ1QgaGFzX2ZvcmVpZ25fZGF0YV93cmFwcGVyX3ByaXZpbGVnZSgncmVncmVzc190ZXN0X3Jv bGUnLCAncmVncmVzc19mb28nLCAnVVNBR0UnKTsKICBoYXNfZm9yZWlnbl9kYXRhX3dyYXBwZXJf cHJpdmlsZWdlIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgdApAQCAt MTE5OSwyNSArMTIzNywyNSBAQCBHUkFOVCBVU0FHRSBPTiBGT1JFSUdOIFNFUlZFUiBzNCBUTyBy ZWdyZXNzX3Rlc3Rfcm9sZTsKIERST1AgVVNFUiBNQVBQSU5HIEZPUiBwdWJsaWMgU0VSVkVSIHM0 OwogQUxURVIgU0VSVkVSIHM2IE9QVElPTlMgKERST1AgaG9zdCwgRFJPUCBkYm5hbWUpOwogQUxU RVIgVVNFUiBNQVBQSU5HIEZPUiByZWdyZXNzX3Rlc3Rfcm9sZSBTRVJWRVIgczYgT1BUSU9OUyAo RFJPUCB1c2VybmFtZSk7Ci1BTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gVkFMSURBVE9S IHBvc3RncmVzcWxfZmR3X3ZhbGlkYXRvcjsKK0FMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIHJl Z3Jlc3NfZm9vIFZBTElEQVRPUiBwb3N0Z3Jlc3FsX2Zkd192YWxpZGF0b3I7CiBXQVJOSU5HOiAg Y2hhbmdpbmcgdGhlIGZvcmVpZ24tZGF0YSB3cmFwcGVyIHZhbGlkYXRvciBjYW4gY2F1c2UgdGhl IG9wdGlvbnMgZm9yIGRlcGVuZGVudCBvYmplY3RzIHRvIGJlY29tZSBpbnZhbGlkCiAtLSBQcml2 aWxlZ2VzCiBTRVQgUk9MRSByZWdyZXNzX3VucHJpdmlsZWdlZF9yb2xlOwotQ1JFQVRFIEZPUkVJ R04gREFUQSBXUkFQUEVSIGZvb2JhcjsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tIEVS Uk9SCi1FUlJPUjogIHBlcm1pc3Npb24gZGVuaWVkIHRvIGNyZWF0ZSBmb3JlaWduLWRhdGEgd3Jh cHBlciAiZm9vYmFyIgorQ1JFQVRFIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vYmFy OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0gRVJST1IKK0VSUk9SOiAgcGVybWlzc2lv biBkZW5pZWQgdG8gY3JlYXRlIGZvcmVpZ24tZGF0YSB3cmFwcGVyICJyZWdyZXNzX2Zvb2JhciIK IEhJTlQ6ICBNdXN0IGJlIHN1cGVydXNlciB0byBjcmVhdGUgYSBmb3JlaWduLWRhdGEgd3JhcHBl ci4KLUFMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBPUFRJT05TIChnb3RjaGEgJ3RydWUn KTsgICAgICAgICAtLSBFUlJPUgotRVJST1I6ICBwZXJtaXNzaW9uIGRlbmllZCB0byBhbHRlciBm b3JlaWduLWRhdGEgd3JhcHBlciAiZm9vIgorQUxURVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVn cmVzc19mb28gT1BUSU9OUyAoZ290Y2hhICd0cnVlJyk7ICAgICAgICAgLS0gRVJST1IKK0VSUk9S OiAgcGVybWlzc2lvbiBkZW5pZWQgdG8gYWx0ZXIgZm9yZWlnbi1kYXRhIHdyYXBwZXIgInJlZ3Jl c3NfZm9vIgogSElOVDogIE11c3QgYmUgc3VwZXJ1c2VyIHRvIGFsdGVyIGEgZm9yZWlnbi1kYXRh IHdyYXBwZXIuCi1BTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gT1dORVIgVE8gcmVncmVz c191bnByaXZpbGVnZWRfcm9sZTsgLS0gRVJST1IKLUVSUk9SOiAgcGVybWlzc2lvbiBkZW5pZWQg dG8gY2hhbmdlIG93bmVyIG9mIGZvcmVpZ24tZGF0YSB3cmFwcGVyICJmb28iCitBTFRFUiBGT1JF SUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBPV05FUiBUTyByZWdyZXNzX3VucHJpdmlsZWdl ZF9yb2xlOyAtLSBFUlJPUgorRVJST1I6ICBwZXJtaXNzaW9uIGRlbmllZCB0byBjaGFuZ2Ugb3du ZXIgb2YgZm9yZWlnbi1kYXRhIHdyYXBwZXIgInJlZ3Jlc3NfZm9vIgogSElOVDogIE11c3QgYmUg c3VwZXJ1c2VyIHRvIGNoYW5nZSBvd25lciBvZiBhIGZvcmVpZ24tZGF0YSB3cmFwcGVyLgotRFJP UCBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb287ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIC0tIEVSUk9SCi1FUlJPUjogIG11c3QgYmUgb3duZXIgb2YgZm9yZWlnbi1kYXRhIHdyYXBw ZXIgZm9vCi1HUkFOVCBVU0FHRSBPTiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gVE8gcmVncmVz c190ZXN0X3JvbGU7ICAgLS0gRVJST1IKLUVSUk9SOiAgcGVybWlzc2lvbiBkZW5pZWQgZm9yIGZv cmVpZ24tZGF0YSB3cmFwcGVyIGZvbwotQ1JFQVRFIFNFUlZFUiBzOSBGT1JFSUdOIERBVEEgV1JB UFBFUiBmb287ICAgICAgICAgICAgICAgICAgICAgIC0tIEVSUk9SCi1FUlJPUjogIHBlcm1pc3Np b24gZGVuaWVkIGZvciBmb3JlaWduLWRhdGEgd3JhcHBlciBmb28KK0RST1AgRk9SRUlHTiBEQVRB IFdSQVBQRVIgcmVncmVzc19mb287ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0t IEVSUk9SCitFUlJPUjogIG11c3QgYmUgb3duZXIgb2YgZm9yZWlnbi1kYXRhIHdyYXBwZXIgcmVn cmVzc19mb28KK0dSQU5UIFVTQUdFIE9OIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9v IFRPIHJlZ3Jlc3NfdGVzdF9yb2xlOyAgIC0tIEVSUk9SCitFUlJPUjogIHBlcm1pc3Npb24gZGVu aWVkIGZvciBmb3JlaWduLWRhdGEgd3JhcHBlciByZWdyZXNzX2ZvbworQ1JFQVRFIFNFUlZFUiBz OSBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbzsgICAgICAgICAgICAgICAgICAgICAg LS0gRVJST1IKK0VSUk9SOiAgcGVybWlzc2lvbiBkZW5pZWQgZm9yIGZvcmVpZ24tZGF0YSB3cmFw cGVyIHJlZ3Jlc3NfZm9vCiBBTFRFUiBTRVJWRVIgczQgVkVSU0lPTiAnMC41JzsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgLS0gRVJST1IKIEVSUk9SOiAgbXVzdCBiZSBvd25lciBv ZiBmb3JlaWduIHNlcnZlciBzNAogQUxURVIgU0VSVkVSIHM0IE9XTkVSIFRPIHJlZ3Jlc3NfdW5w cml2aWxlZ2VkX3JvbGU7ICAgICAgICAgICAgIC0tIEVSUk9SCkBAIC0xMjMzLDIxICsxMjcxLDIx IEBAIEVSUk9SOiAgbXVzdCBiZSBvd25lciBvZiBmb3JlaWduIHNlcnZlciBzNgogRFJPUCBVU0VS IE1BUFBJTkcgRk9SIHJlZ3Jlc3NfdGVzdF9yb2xlIFNFUlZFUiBzNjsgICAgICAgICAgICAgIC0t IEVSUk9SCiBFUlJPUjogIG11c3QgYmUgb3duZXIgb2YgZm9yZWlnbiBzZXJ2ZXIgczYKIFJFU0VU IFJPTEU7Ci1HUkFOVCBVU0FHRSBPTiBGT1JFSUdOIERBVEEgV1JBUFBFUiBwb3N0Z3Jlc3FsIFRP IHJlZ3Jlc3NfdW5wcml2aWxlZ2VkX3JvbGU7Ci1HUkFOVCBVU0FHRSBPTiBGT1JFSUdOIERBVEEg V1JBUFBFUiBmb28gVE8gcmVncmVzc191bnByaXZpbGVnZWRfcm9sZSBXSVRIIEdSQU5UIE9QVElP TjsKK0dSQU5UIFVTQUdFIE9OIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfcG9zdGdyZXNx bCBUTyByZWdyZXNzX3VucHJpdmlsZWdlZF9yb2xlOworR1JBTlQgVVNBR0UgT04gRk9SRUlHTiBE QVRBIFdSQVBQRVIgcmVncmVzc19mb28gVE8gcmVncmVzc191bnByaXZpbGVnZWRfcm9sZSBXSVRI IEdSQU5UIE9QVElPTjsKIFNFVCBST0xFIHJlZ3Jlc3NfdW5wcml2aWxlZ2VkX3JvbGU7Ci1DUkVB VEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vYmFyOyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgLS0gRVJST1IKLUVSUk9SOiAgcGVybWlzc2lvbiBkZW5pZWQgdG8gY3JlYXRlIGZvcmVpZ24t ZGF0YSB3cmFwcGVyICJmb29iYXIiCitDUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVz c19mb29iYXI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgorRVJST1I6ICBw ZXJtaXNzaW9uIGRlbmllZCB0byBjcmVhdGUgZm9yZWlnbi1kYXRhIHdyYXBwZXIgInJlZ3Jlc3Nf Zm9vYmFyIgogSElOVDogIE11c3QgYmUgc3VwZXJ1c2VyIHRvIGNyZWF0ZSBhIGZvcmVpZ24tZGF0 YSB3cmFwcGVyLgotQUxURVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vIE9QVElPTlMgKGdvdGNo YSAndHJ1ZScpOyAgICAgICAgIC0tIEVSUk9SCi1FUlJPUjogIHBlcm1pc3Npb24gZGVuaWVkIHRv IGFsdGVyIGZvcmVpZ24tZGF0YSB3cmFwcGVyICJmb28iCitBTFRFUiBGT1JFSUdOIERBVEEgV1JB UFBFUiByZWdyZXNzX2ZvbyBPUFRJT05TIChnb3RjaGEgJ3RydWUnKTsgICAgICAgICAtLSBFUlJP UgorRVJST1I6ICBwZXJtaXNzaW9uIGRlbmllZCB0byBhbHRlciBmb3JlaWduLWRhdGEgd3JhcHBl ciAicmVncmVzc19mb28iCiBISU5UOiAgTXVzdCBiZSBzdXBlcnVzZXIgdG8gYWx0ZXIgYSBmb3Jl aWduLWRhdGEgd3JhcHBlci4KLURST1AgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vOyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgotRVJST1I6ICBtdXN0IGJlIG93bmVy IG9mIGZvcmVpZ24tZGF0YSB3cmFwcGVyIGZvbwotR1JBTlQgVVNBR0UgT04gRk9SRUlHTiBEQVRB IFdSQVBQRVIgcG9zdGdyZXNxbCBUTyByZWdyZXNzX3Rlc3Rfcm9sZTsgLS0gV0FSTklORwotV0FS TklORzogIG5vIHByaXZpbGVnZXMgd2VyZSBncmFudGVkIGZvciAicG9zdGdyZXNxbCIKLUdSQU5U IFVTQUdFIE9OIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBUTyByZWdyZXNzX3Rlc3Rfcm9sZTsK LUNSRUFURSBTRVJWRVIgczkgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcG9zdGdyZXNxbDsKK0RST1Ag Rk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb287ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIC0tIEVSUk9SCitFUlJPUjogIG11c3QgYmUgb3duZXIgb2YgZm9yZWlnbi1kYXRh IHdyYXBwZXIgcmVncmVzc19mb28KK0dSQU5UIFVTQUdFIE9OIEZPUkVJR04gREFUQSBXUkFQUEVS IHJlZ3Jlc3NfcG9zdGdyZXNxbCBUTyByZWdyZXNzX3Rlc3Rfcm9sZTsgLS0gV0FSTklORworV0FS TklORzogIG5vIHByaXZpbGVnZXMgd2VyZSBncmFudGVkIGZvciAicmVncmVzc19wb3N0Z3Jlc3Fs IgorR1JBTlQgVVNBR0UgT04gRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gVE8gcmVn cmVzc190ZXN0X3JvbGU7CitDUkVBVEUgU0VSVkVSIHM5IEZPUkVJR04gREFUQSBXUkFQUEVSIHJl Z3Jlc3NfcG9zdGdyZXNxbDsKIEFMVEVSIFNFUlZFUiBzNiBWRVJTSU9OICcwLjUnOyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgogRVJST1I6ICBtdXN0IGJlIG93bmVy IG9mIGZvcmVpZ24gc2VydmVyIHM2CiBEUk9QIFNFUlZFUiBzNjsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0gRVJST1IKQEAgLTEyNjMsMTUgKzEzMDEs MTUgQEAgRVJST1I6ICBtdXN0IGJlIG93bmVyIG9mIGZvcmVpZ24gc2VydmVyIHM2CiBEUk9QIFVT RVIgTUFQUElORyBGT1IgcmVncmVzc190ZXN0X3JvbGUgU0VSVkVSIHM2OyAgICAgICAgICAgICAg LS0gRVJST1IKIEVSUk9SOiAgbXVzdCBiZSBvd25lciBvZiBmb3JlaWduIHNlcnZlciBzNgogUkVT RVQgUk9MRTsKLVJFVk9LRSBVU0FHRSBPTiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gRlJPTSBy ZWdyZXNzX3VucHJpdmlsZWdlZF9yb2xlOyAtLSBFUlJPUgorUkVWT0tFIFVTQUdFIE9OIEZPUkVJ R04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIEZST00gcmVncmVzc191bnByaXZpbGVnZWRfcm9s ZTsgLS0gRVJST1IKIEVSUk9SOiAgZGVwZW5kZW50IHByaXZpbGVnZXMgZXhpc3QKIEhJTlQ6ICBV c2UgQ0FTQ0FERSB0byByZXZva2UgdGhlbSB0b28uCi1SRVZPS0UgVVNBR0UgT04gRk9SRUlHTiBE QVRBIFdSQVBQRVIgZm9vIEZST00gcmVncmVzc191bnByaXZpbGVnZWRfcm9sZSBDQVNDQURFOwor UkVWT0tFIFVTQUdFIE9OIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIEZST00gcmVn cmVzc191bnByaXZpbGVnZWRfcm9sZSBDQVNDQURFOwogU0VUIFJPTEUgcmVncmVzc191bnByaXZp bGVnZWRfcm9sZTsKLUdSQU5UIFVTQUdFIE9OIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBUTyBy ZWdyZXNzX3Rlc3Rfcm9sZTsgICAtLSBFUlJPUgotRVJST1I6ICBwZXJtaXNzaW9uIGRlbmllZCBm b3IgZm9yZWlnbi1kYXRhIHdyYXBwZXIgZm9vCi1DUkVBVEUgU0VSVkVSIHMxMCBGT1JFSUdOIERB VEEgV1JBUFBFUiBmb287ICAgICAgICAgICAgICAgICAgICAgLS0gRVJST1IKLUVSUk9SOiAgcGVy bWlzc2lvbiBkZW5pZWQgZm9yIGZvcmVpZ24tZGF0YSB3cmFwcGVyIGZvbworR1JBTlQgVVNBR0Ug T04gRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gVE8gcmVncmVzc190ZXN0X3JvbGU7 ICAgLS0gRVJST1IKK0VSUk9SOiAgcGVybWlzc2lvbiBkZW5pZWQgZm9yIGZvcmVpZ24tZGF0YSB3 cmFwcGVyIHJlZ3Jlc3NfZm9vCitDUkVBVEUgU0VSVkVSIHMxMCBGT1JFSUdOIERBVEEgV1JBUFBF UiByZWdyZXNzX2ZvbzsgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgorRVJST1I6ICBwZXJt aXNzaW9uIGRlbmllZCBmb3IgZm9yZWlnbi1kYXRhIHdyYXBwZXIgcmVncmVzc19mb28KIEFMVEVS IFNFUlZFUiBzOSBWRVJTSU9OICcxLjEnOwogR1JBTlQgVVNBR0UgT04gRk9SRUlHTiBTRVJWRVIg czkgVE8gcmVncmVzc190ZXN0X3JvbGU7CiBDUkVBVEUgVVNFUiBNQVBQSU5HIEZPUiBjdXJyZW50 X3VzZXIgU0VSVkVSIHM5OwpAQCAtMTI4MCw3ICsxMzE4LDcgQEAgTk9USUNFOiAgZHJvcCBjYXNj YWRlcyB0byAyIG90aGVyIG9iamVjdHMKIERFVEFJTDogIGRyb3AgY2FzY2FkZXMgdG8gdXNlciBt YXBwaW5nIGZvciBwdWJsaWMgb24gc2VydmVyIHM5CiBkcm9wIGNhc2NhZGVzIHRvIHVzZXIgbWFw cGluZyBmb3IgcmVncmVzc191bnByaXZpbGVnZWRfcm9sZSBvbiBzZXJ2ZXIgczkKIFJFU0VUIFJP TEU7Ci1DUkVBVEUgU0VSVkVSIHM5IEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbzsKK0NSRUFURSBT RVJWRVIgczkgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb287CiBHUkFOVCBVU0FHRSBP TiBGT1JFSUdOIFNFUlZFUiBzOSBUTyByZWdyZXNzX3VucHJpdmlsZWdlZF9yb2xlOwogU0VUIFJP TEUgcmVncmVzc191bnByaXZpbGVnZWRfcm9sZTsKIEFMVEVSIFNFUlZFUiBzOSBWRVJTSU9OICcx LjInOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgpAQCAtMTI5Miw3 ICsxMzMwLDcgQEAgRFJPUCBTRVJWRVIgczkgQ0FTQ0FERTsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIC0tIEVSUk9SCiBFUlJPUjogIG11c3QgYmUgb3duZXIgb2YgZm9y ZWlnbiBzZXJ2ZXIgczkKIC0tIENoZWNrIHZpc2liaWxpdHkgb2YgdXNlciBtYXBwaW5nIGRhdGEK IFNFVCBST0xFIHJlZ3Jlc3NfdGVzdF9yb2xlOwotQ1JFQVRFIFNFUlZFUiBzMTAgRk9SRUlHTiBE QVRBIFdSQVBQRVIgZm9vOworQ1JFQVRFIFNFUlZFUiBzMTAgRk9SRUlHTiBEQVRBIFdSQVBQRVIg cmVncmVzc19mb287CiBDUkVBVEUgVVNFUiBNQVBQSU5HIEZPUiBwdWJsaWMgU0VSVkVSIHMxMCBP UFRJT05TICh1c2VyICdzZWNyZXQnKTsKIENSRUFURSBVU0VSIE1BUFBJTkcgRk9SIHJlZ3Jlc3Nf dW5wcml2aWxlZ2VkX3JvbGUgU0VSVkVSIHMxMCBPUFRJT05TICh1c2VyICdzZWNyZXQnKTsKIC0t IG93bmVyIG9mIHNlcnZlciBjYW4gc2VlIHNvbWUgb3B0aW9uIGZpZWxkcwpAQCAtMTg5MCwxNCAr MTkyOCwxNCBAQCBEUk9QIFRBQkxFIGZkX3B0MSBDQVNDQURFOwogTk9USUNFOiAgZHJvcCBjYXNj YWRlcyB0byBmb3JlaWduIHRhYmxlIGZ0MgogLS0gSU1QT1JUIEZPUkVJR04gU0NIRU1BCiBJTVBP UlQgRk9SRUlHTiBTQ0hFTUEgczEgRlJPTSBTRVJWRVIgczkgSU5UTyBwdWJsaWM7IC0tIEVSUk9S Ci1FUlJPUjogIGZvcmVpZ24tZGF0YSB3cmFwcGVyICJmb28iIGhhcyBubyBoYW5kbGVyCitFUlJP UjogIGZvcmVpZ24tZGF0YSB3cmFwcGVyICJyZWdyZXNzX2ZvbyIgaGFzIG5vIGhhbmRsZXIKIElN UE9SVCBGT1JFSUdOIFNDSEVNQSBzMSBMSU1JVCBUTyAodDEpIEZST00gU0VSVkVSIHM5IElOVE8g cHVibGljOyAtLUVSUk9SCi1FUlJPUjogIGZvcmVpZ24tZGF0YSB3cmFwcGVyICJmb28iIGhhcyBu byBoYW5kbGVyCitFUlJPUjogIGZvcmVpZ24tZGF0YSB3cmFwcGVyICJyZWdyZXNzX2ZvbyIgaGFz IG5vIGhhbmRsZXIKIElNUE9SVCBGT1JFSUdOIFNDSEVNQSBzMSBFWENFUFQgKHQxKSBGUk9NIFNF UlZFUiBzOSBJTlRPIHB1YmxpYzsgLS0gRVJST1IKLUVSUk9SOiAgZm9yZWlnbi1kYXRhIHdyYXBw ZXIgImZvbyIgaGFzIG5vIGhhbmRsZXIKK0VSUk9SOiAgZm9yZWlnbi1kYXRhIHdyYXBwZXIgInJl Z3Jlc3NfZm9vIiBoYXMgbm8gaGFuZGxlcgogSU1QT1JUIEZPUkVJR04gU0NIRU1BIHMxIEVYQ0VQ VCAodDEsIHQyKSBGUk9NIFNFUlZFUiBzOSBJTlRPIHB1YmxpYwogT1BUSU9OUyAob3B0aW9uMSAn dmFsdWUxJywgb3B0aW9uMiAndmFsdWUyJyk7IC0tIEVSUk9SCi1FUlJPUjogIGZvcmVpZ24tZGF0 YSB3cmFwcGVyICJmb28iIGhhcyBubyBoYW5kbGVyCitFUlJPUjogIGZvcmVpZ24tZGF0YSB3cmFw cGVyICJyZWdyZXNzX2ZvbyIgaGFzIG5vIGhhbmRsZXIKIC0tIERST1AgRk9SRUlHTiBUQUJMRQog RFJPUCBGT1JFSUdOIFRBQkxFIG5vX3RhYmxlOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIC0tIEVSUk9SCiBFUlJPUjogIGZvcmVpZ24gdGFibGUgIm5vX3RhYmxlIiBkb2VzIG5v dCBleGlzdApAQCAtMjE1NSwxMyArMjE5MywxMyBAQCBEUk9QIFRBQkxFIHRlbXBfcGFydGVkOwog RFJPUCBTQ0hFTUEgZm9yZWlnbl9zY2hlbWEgQ0FTQ0FERTsKIERST1AgUk9MRSByZWdyZXNzX3Rl c3Rfcm9sZTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tIEVSUk9SCiBFUlJPUjog IHJvbGUgInJlZ3Jlc3NfdGVzdF9yb2xlIiBjYW5ub3QgYmUgZHJvcHBlZCBiZWNhdXNlIHNvbWUg b2JqZWN0cyBkZXBlbmQgb24gaXQKLURFVEFJTDogIHByaXZpbGVnZXMgZm9yIGZvcmVpZ24tZGF0 YSB3cmFwcGVyIGZvbworREVUQUlMOiAgcHJpdmlsZWdlcyBmb3IgZm9yZWlnbi1kYXRhIHdyYXBw ZXIgcmVncmVzc19mb28KIHByaXZpbGVnZXMgZm9yIHNlcnZlciBzNAogb3duZXIgb2YgdXNlciBt YXBwaW5nIGZvciByZWdyZXNzX3Rlc3Rfcm9sZSBvbiBzZXJ2ZXIgczYKIERST1AgU0VSVkVSIHQx IENBU0NBREU7CiBOT1RJQ0U6ICBkcm9wIGNhc2NhZGVzIHRvIHVzZXIgbWFwcGluZyBmb3IgcHVi bGljIG9uIHNlcnZlciB0MQogRFJPUCBVU0VSIE1BUFBJTkcgRk9SIHJlZ3Jlc3NfdGVzdF9yb2xl IFNFUlZFUiBzNjsKLURST1AgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vIENBU0NBREU7CitEUk9Q IEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIENBU0NBREU7CiBOT1RJQ0U6ICBkcm9w IGNhc2NhZGVzIHRvIDUgb3RoZXIgb2JqZWN0cwogREVUQUlMOiAgZHJvcCBjYXNjYWRlcyB0byBz ZXJ2ZXIgczQKIGRyb3AgY2FzY2FkZXMgdG8gdXNlciBtYXBwaW5nIGZvciByZWdyZXNzX2ZvcmVp Z25fZGF0YV91c2VyIG9uIHNlcnZlciBzNApAQCAtMjE3NiwxNyArMjIxNCwxNyBAQCBEUk9QIFJP TEUgcmVncmVzc190ZXN0X2luZGlyZWN0OwogRFJPUCBST0xFIHJlZ3Jlc3NfdGVzdF9yb2xlOwog RFJPUCBST0xFIHJlZ3Jlc3NfdW5wcml2aWxlZ2VkX3JvbGU7ICAgICAgICAgICAgICAgICAgICAg ICAgLS0gRVJST1IKIEVSUk9SOiAgcm9sZSAicmVncmVzc191bnByaXZpbGVnZWRfcm9sZSIgY2Fu bm90IGJlIGRyb3BwZWQgYmVjYXVzZSBzb21lIG9iamVjdHMgZGVwZW5kIG9uIGl0Ci1ERVRBSUw6 ICBwcml2aWxlZ2VzIGZvciBmb3JlaWduLWRhdGEgd3JhcHBlciBwb3N0Z3Jlc3FsCi1SRVZPS0Ug QUxMIE9OIEZPUkVJR04gREFUQSBXUkFQUEVSIHBvc3RncmVzcWwgRlJPTSByZWdyZXNzX3VucHJp dmlsZWdlZF9yb2xlOworREVUQUlMOiAgcHJpdmlsZWdlcyBmb3IgZm9yZWlnbi1kYXRhIHdyYXBw ZXIgcmVncmVzc19wb3N0Z3Jlc3FsCitSRVZPS0UgQUxMIE9OIEZPUkVJR04gREFUQSBXUkFQUEVS IHJlZ3Jlc3NfcG9zdGdyZXNxbCBGUk9NIHJlZ3Jlc3NfdW5wcml2aWxlZ2VkX3JvbGU7CiBEUk9Q IFJPTEUgcmVncmVzc191bnByaXZpbGVnZWRfcm9sZTsKIERST1AgUk9MRSByZWdyZXNzX3Rlc3Rf cm9sZTI7Ci1EUk9QIEZPUkVJR04gREFUQSBXUkFQUEVSIHBvc3RncmVzcWwgQ0FTQ0FERTsKLURS T1AgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZHVtbXkgQ0FTQ0FERTsKK0RST1AgRk9SRUlHTiBEQVRB IFdSQVBQRVIgcmVncmVzc19wb3N0Z3Jlc3FsIENBU0NBREU7CitEUk9QIEZPUkVJR04gREFUQSBX UkFQUEVSIHJlZ3Jlc3NfZHVtbXkgQ0FTQ0FERTsKIE5PVElDRTogIGRyb3AgY2FzY2FkZXMgdG8g c2VydmVyIHMwCiBcYwogRFJPUCBST0xFIHJlZ3Jlc3NfZm9yZWlnbl9kYXRhX3VzZXI7CiAtLSBB dCB0aGlzIHBvaW50IHdlIHNob3VsZCBoYXZlIG5vIHdyYXBwZXJzLCBubyBzZXJ2ZXJzLCBhbmQg bm8gbWFwcGluZ3MuCi1TRUxFQ1QgZmR3bmFtZSwgZmR3aGFuZGxlciwgZmR3dmFsaWRhdG9yLCBm ZHdvcHRpb25zIEZST00gcGdfZm9yZWlnbl9kYXRhX3dyYXBwZXI7CitTRUxFQ1QgZmR3bmFtZSwg ZmR3aGFuZGxlciwgZmR3dmFsaWRhdG9yLCBmZHdvcHRpb25zIEZST00gcGdfZm9yZWlnbl9kYXRh X3dyYXBwZXIgV0hFUkUgZmR3bmFtZSBMSUtFICdyZWdyZXNzXyUnOwogIGZkd25hbWUgfCBmZHdo YW5kbGVyIHwgZmR3dmFsaWRhdG9yIHwgZmR3b3B0aW9ucyAKIC0tLS0tLS0tLSstLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCiAoMCByb3dzKQpkaWZmIC0tZ2l0IGEvc3Jj L3Rlc3QvcmVncmVzcy9zcWwvZm9yZWlnbl9kYXRhLnNxbCBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3Fs L2ZvcmVpZ25fZGF0YS5zcWwKaW5kZXggZWVmYjg2MGFkYy4uYjEyNWRmZjlmYiAxMDA2NDQKLS0t IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvZm9yZWlnbl9kYXRhLnNxbAorKysgYi9zcmMvdGVzdC9y ZWdyZXNzL3NxbC9mb3JlaWduX2RhdGEuc3FsCkBAIC0zMSwxNTUgKzMxLDE4NyBAQCBDUkVBVEUg Uk9MRSByZWdyZXNzX3Rlc3Rfcm9sZV9zdXBlciBTVVBFUlVTRVI7CiBDUkVBVEUgUk9MRSByZWdy ZXNzX3Rlc3RfaW5kaXJlY3Q7CiBDUkVBVEUgUk9MRSByZWdyZXNzX3VucHJpdmlsZWdlZF9yb2xl OwogCi1DUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZHVtbXk7Ci1DT01NRU5UIE9OIEZPUkVJ R04gREFUQSBXUkFQUEVSIGR1bW15IElTICd1c2VsZXNzJzsKLUNSRUFURSBGT1JFSUdOIERBVEEg V1JBUFBFUiBwb3N0Z3Jlc3FsIFZBTElEQVRPUiBwb3N0Z3Jlc3FsX2Zkd192YWxpZGF0b3I7CitD UkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19kdW1teTsKK0NPTU1FTlQgT04gRk9S RUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19kdW1teSBJUyAndXNlbGVzcyc7CitDUkVBVEUgRk9S RUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19wb3N0Z3Jlc3FsIFZBTElEQVRPUiBwb3N0Z3Jlc3Fs X2Zkd192YWxpZGF0b3I7CiAKIC0tIEF0IHRoaXMgcG9pbnQgd2Ugc2hvdWxkIGhhdmUgMiBidWls dC1pbiB3cmFwcGVycyBhbmQgbm8gc2VydmVycy4KLVNFTEVDVCBmZHduYW1lLCBmZHdoYW5kbGVy OjpyZWdwcm9jLCBmZHd2YWxpZGF0b3I6OnJlZ3Byb2MsIGZkd29wdGlvbnMgRlJPTSBwZ19mb3Jl aWduX2RhdGFfd3JhcHBlciBPUkRFUiBCWSAxLCAyLCAzOworU0VMRUNUIGZkd25hbWUsIGZkd2hh bmRsZXI6OnJlZ3Byb2MsIGZkd3ZhbGlkYXRvcjo6cmVncHJvYywgZmR3b3B0aW9ucyBGUk9NIHBn X2ZvcmVpZ25fZGF0YV93cmFwcGVyIFdIRVJFIGZkd25hbWUgTElLRSAncmVncmVzc18lJyBPUkRF UiBCWSAxLCAyLCAzOwogU0VMRUNUIHNydm5hbWUsIHNydm9wdGlvbnMgRlJPTSBwZ19mb3JlaWdu X3NlcnZlcjsKIFNFTEVDVCAqIEZST00gcGdfdXNlcl9tYXBwaW5nOwogCiAtLSBDUkVBVEUgRk9S RUlHTiBEQVRBIFdSQVBQRVIKLUNSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gVkFMSURB VE9SIGJhcjsgICAgICAgICAgICAtLSBFUlJPUgotQ1JFQVRFIEZPUkVJR04gREFUQSBXUkFQUEVS IGZvbzsKLVxkZXcKK0NSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBWQUxJ REFUT1IgYmFyOyAgICAgICAgICAgIC0tIEVSUk9SCitDUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQ RVIgcmVncmVzc19mb287CitcZGV3IHJlZ3Jlc3NfKgogCi1DUkVBVEUgRk9SRUlHTiBEQVRBIFdS QVBQRVIgZm9vOyAtLSBkdXBsaWNhdGUKLURST1AgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vOwot Q1JFQVRFIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBPUFRJT05TICh0ZXN0aW5nICcxJyk7Ci1c ZGV3KworQ1JFQVRFIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vOyAtLSBkdXBsaWNh dGUKK0RST1AgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb287CitDUkVBVEUgRk9SRUlH TiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gT1BUSU9OUyAodGVzdGluZyAnMScpOworXGRldysg cmVncmVzc18qCiAKLURST1AgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vOwotQ1JFQVRFIEZPUkVJ R04gREFUQSBXUkFQUEVSIGZvbyBPUFRJT05TICh0ZXN0aW5nICcxJywgdGVzdGluZyAnMicpOyAg IC0tIEVSUk9SCi1DUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vIE9QVElPTlMgKHRlc3Rp bmcgJzEnLCBhbm90aGVyICcyJyk7Ci1cZGV3KworRFJPUCBGT1JFSUdOIERBVEEgV1JBUFBFUiBy ZWdyZXNzX2ZvbzsKK0NSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBPUFRJ T05TICh0ZXN0aW5nICcxJywgdGVzdGluZyAnMicpOyAgIC0tIEVSUk9SCitDUkVBVEUgRk9SRUlH TiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gT1BUSU9OUyAodGVzdGluZyAnMScsIGFub3RoZXIg JzInKTsKK1xkZXcrIHJlZ3Jlc3NfKgogCi1EUk9QIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbzsK K0RST1AgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb287CiBTRVQgUk9MRSByZWdyZXNz X3Rlc3Rfcm9sZTsKLUNSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb287IC0tIEVSUk9SCitD UkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb287IC0tIEVSUk9SCiBSRVNFVCBS T0xFOwotQ1JFQVRFIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBWQUxJREFUT1IgcG9zdGdyZXNx bF9mZHdfdmFsaWRhdG9yOwotXGRldysKK0NSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdy ZXNzX2ZvbyBWQUxJREFUT1IgcG9zdGdyZXNxbF9mZHdfdmFsaWRhdG9yOworXGRldysgcmVncmVz c18qCiAKIC0tIEhBTkRMRVIgcmVsYXRlZCBjaGVja3MKIENSRUFURSBGVU5DVElPTiBpbnZhbGlk X2Zkd19oYW5kbGVyKCkgUkVUVVJOUyBpbnQgTEFOR1VBR0UgU1FMIEFTICdTRUxFQ1QgMTsnOwot Q1JFQVRFIEZPUkVJR04gREFUQSBXUkFQUEVSIHRlc3RfZmR3IEhBTkRMRVIgaW52YWxpZF9mZHdf aGFuZGxlcjsgIC0tIEVSUk9SCi1DUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgdGVzdF9mZHcg SEFORExFUiB0ZXN0X2Zkd19oYW5kbGVyIEhBTkRMRVIgaW52YWxpZF9mZHdfaGFuZGxlcjsgIC0t IEVSUk9SCi1DUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgdGVzdF9mZHcgSEFORExFUiB0ZXN0 X2Zkd19oYW5kbGVyOwotRFJPUCBGT1JFSUdOIERBVEEgV1JBUFBFUiB0ZXN0X2ZkdzsKK0NSRUFU RSBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX3Rlc3RfZmR3IEhBTkRMRVIgaW52YWxpZF9m ZHdfaGFuZGxlcjsgIC0tIEVSUk9SCitDUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVz c190ZXN0X2ZkdyBIQU5ETEVSIHRlc3RfZmR3X2hhbmRsZXIgSEFORExFUiBpbnZhbGlkX2Zkd19o YW5kbGVyOyAgLS0gRVJST1IKK0NSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX3Rl c3RfZmR3IEhBTkRMRVIgdGVzdF9mZHdfaGFuZGxlcjsKK0RST1AgRk9SRUlHTiBEQVRBIFdSQVBQ RVIgcmVncmVzc190ZXN0X2ZkdzsKIAogLS0gQUxURVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIKLUFM VEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBPUFRJT05TIChub25leGlzdGVudCAnZmR3Jyk7 ICAgICAgICAgLS0gRVJST1IKK0FMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9v IE9QVElPTlMgKG5vbmV4aXN0ZW50ICdmZHcnKTsgICAgICAgICAtLSBFUlJPUgogCi1BTFRFUiBG T1JFSUdOIERBVEEgV1JBUFBFUiBmb287ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLSBF UlJPUgotQUxURVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vIFZBTElEQVRPUiBiYXI7ICAgICAg ICAgICAgICAgLS0gRVJST1IKLUFMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBOTyBWQUxJ REFUT1I7Ci1cZGV3KworQUxURVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb287ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgorQUxURVIgRk9SRUlHTiBEQVRBIFdS QVBQRVIgcmVncmVzc19mb28gVkFMSURBVE9SIGJhcjsgICAgICAgICAgICAgICAtLSBFUlJPUgor QUxURVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gTk8gVkFMSURBVE9SOworXGRl dysgcmVncmVzc18qCiAKLUFMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBPUFRJT05TIChh ICcxJywgYiAnMicpOwotQUxURVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vIE9QVElPTlMgKFNF VCBjICc0Jyk7ICAgICAgICAgLS0gRVJST1IKLUFMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIGZv byBPUFRJT05TIChEUk9QIGMpOyAgICAgICAgICAgIC0tIEVSUk9SCi1BTFRFUiBGT1JFSUdOIERB VEEgV1JBUFBFUiBmb28gT1BUSU9OUyAoQUREIHggJzEnLCBEUk9QIHgpOwotXGRldysKK0FMVEVS IEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIE9QVElPTlMgKGEgJzEnLCBiICcyJyk7 CitBTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBPUFRJT05TIChTRVQgYyAn NCcpOyAgICAgICAgIC0tIEVSUk9SCitBTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNz X2ZvbyBPUFRJT05TIChEUk9QIGMpOyAgICAgICAgICAgIC0tIEVSUk9SCitBTFRFUiBGT1JFSUdO IERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBPUFRJT05TIChBREQgeCAnMScsIERST1AgeCk7Citc ZGV3KyByZWdyZXNzXyoKIAotQUxURVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vIE9QVElPTlMg KERST1AgYSwgU0VUIGIgJzMnLCBBREQgYyAnNCcpOwotXGRldysKK0FMVEVSIEZPUkVJR04gREFU QSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIE9QVElPTlMgKERST1AgYSwgU0VUIGIgJzMnLCBBREQgYyAn NCcpOworXGRldysgcmVncmVzc18qCiAKLUFMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBP UFRJT05TIChhICcyJyk7Ci1BTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gT1BUSU9OUyAo YiAnNCcpOyAgICAgICAgICAgICAtLSBFUlJPUgotXGRldysKK0FMVEVSIEZPUkVJR04gREFUQSBX UkFQUEVSIHJlZ3Jlc3NfZm9vIE9QVElPTlMgKGEgJzInKTsKK0FMVEVSIEZPUkVJR04gREFUQSBX UkFQUEVSIHJlZ3Jlc3NfZm9vIE9QVElPTlMgKGIgJzQnKTsgICAgICAgICAgICAgLS0gRVJST1IK K1xkZXcrIHJlZ3Jlc3NfKgogCiBTRVQgUk9MRSByZWdyZXNzX3Rlc3Rfcm9sZTsKLUFMVEVSIEZP UkVJR04gREFUQSBXUkFQUEVSIGZvbyBPUFRJT05TIChBREQgZCAnNScpOyAgICAgICAgIC0tIEVS Uk9SCitBTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBPUFRJT05TIChBREQg ZCAnNScpOyAgICAgICAgIC0tIEVSUk9SCiBTRVQgUk9MRSByZWdyZXNzX3Rlc3Rfcm9sZV9zdXBl cjsKLUFMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBPUFRJT05TIChBREQgZCAnNScpOwot XGRldysKK0FMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIE9QVElPTlMgKEFE RCBkICc1Jyk7CitcZGV3KyByZWdyZXNzXyoKIAotQUxURVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIg Zm9vIE9XTkVSIFRPIHJlZ3Jlc3NfdGVzdF9yb2xlOyAgLS0gRVJST1IKLUFMVEVSIEZPUkVJR04g REFUQSBXUkFQUEVSIGZvbyBPV05FUiBUTyByZWdyZXNzX3Rlc3Rfcm9sZV9zdXBlcjsKK0FMVEVS IEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIE9XTkVSIFRPIHJlZ3Jlc3NfdGVzdF9y b2xlOyAgLS0gRVJST1IKK0FMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIE9X TkVSIFRPIHJlZ3Jlc3NfdGVzdF9yb2xlX3N1cGVyOwogQUxURVIgUk9MRSByZWdyZXNzX3Rlc3Rf cm9sZV9zdXBlciBOT1NVUEVSVVNFUjsKIFNFVCBST0xFIHJlZ3Jlc3NfdGVzdF9yb2xlX3N1cGVy OwotQUxURVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vIE9QVElPTlMgKEFERCBlICc2Jyk7ICAg ICAgICAgLS0gRVJST1IKK0FMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIE9Q VElPTlMgKEFERCBlICc2Jyk7ICAgICAgICAgLS0gRVJST1IKIFJFU0VUIFJPTEU7Ci1cZGV3Kwor XGRldysgcmVncmVzc18qCiAKLUFMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBSRU5BTUUg VE8gZm9vMTsKLVxkZXcrCi1BTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28xIFJFTkFNRSBU TyBmb287CitBTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBSRU5BTUUgVE8g cmVncmVzc19mb28xOworXGRldysgcmVncmVzc18qCitBTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBF UiByZWdyZXNzX2ZvbzEgUkVOQU1FIFRPIHJlZ3Jlc3NfZm9vOwogCiAtLSBIQU5ETEVSIHJlbGF0 ZWQgY2hlY2tzCi1BTFRFUiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gSEFORExFUiBpbnZhbGlk X2Zkd19oYW5kbGVyOyAgLS0gRVJST1IKLUFMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBI QU5ETEVSIHRlc3RfZmR3X2hhbmRsZXIgSEFORExFUiBhbnl0aGluZzsgIC0tIEVSUk9SCi1BTFRF UiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gSEFORExFUiB0ZXN0X2Zkd19oYW5kbGVyOworQUxU RVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gSEFORExFUiBpbnZhbGlkX2Zkd19o YW5kbGVyOyAgLS0gRVJST1IKK0FMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9v IEhBTkRMRVIgdGVzdF9mZHdfaGFuZGxlciBIQU5ETEVSIGFueXRoaW5nOyAgLS0gRVJST1IKK0FM VEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIEhBTkRMRVIgdGVzdF9mZHdfaGFu ZGxlcjsKIERST1AgRlVOQ1RJT04gaW52YWxpZF9mZHdfaGFuZGxlcigpOwogCiAtLSBEUk9QIEZP UkVJR04gREFUQSBXUkFQUEVSCiBEUk9QIEZPUkVJR04gREFUQSBXUkFQUEVSIG5vbmV4aXN0ZW50 OyAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgogRFJPUCBGT1JFSUdOIERBVEEgV1JBUFBF UiBJRiBFWElTVFMgbm9uZXhpc3RlbnQ7Ci1cZGV3KworXGRldysgcmVncmVzc18qCiAKIERST1Ag Uk9MRSByZWdyZXNzX3Rlc3Rfcm9sZV9zdXBlcjsgICAgICAgICAgICAgICAgICAgICAgICAgIC0t IEVSUk9SCiBTRVQgUk9MRSByZWdyZXNzX3Rlc3Rfcm9sZV9zdXBlcjsKLURST1AgRk9SRUlHTiBE QVRBIFdSQVBQRVIgZm9vOworRFJPUCBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbzsK IFJFU0VUIFJPTEU7CiBEUk9QIFJPTEUgcmVncmVzc190ZXN0X3JvbGVfc3VwZXI7Ci1cZGV3Kwor XGRldysgcmVncmVzc18qCiAKLUNSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb287Ci1DUkVB VEUgU0VSVkVSIHMxIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbzsKK0NSRUFURSBGT1JFSUdOIERB VEEgV1JBUFBFUiByZWdyZXNzX2ZvbzsKK0NSRUFURSBTRVJWRVIgczEgRk9SRUlHTiBEQVRBIFdS QVBQRVIgcmVncmVzc19mb287CiBDT01NRU5UIE9OIFNFUlZFUiBzMSBJUyAnZm9yZWlnbiBzZXJ2 ZXInOwogQ1JFQVRFIFVTRVIgTUFQUElORyBGT1IgY3VycmVudF91c2VyIFNFUlZFUiBzMTsKIENS RUFURSBVU0VSIE1BUFBJTkcgRk9SIGN1cnJlbnRfdXNlciBTRVJWRVIgczE7CQkJCS0tIEVSUk9S CiBDUkVBVEUgVVNFUiBNQVBQSU5HIElGIE5PVCBFWElTVFMgRk9SIGN1cnJlbnRfdXNlciBTRVJW RVIgczE7IC0tIE5PVElDRQotXGRldysKK1xkZXcrIHJlZ3Jlc3NfKgogXGRlcysKIFxkZXUrCi1E Uk9QIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbzsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAtLSBFUlJPUgorRFJPUCBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbzsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgogU0VUIFJPTEUgcmVncmVzc190ZXN0X3Jv bGU7Ci1EUk9QIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBDQVNDQURFOyAgICAgICAgICAgICAg ICAgICAgICAtLSBFUlJPUgorRFJPUCBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBD QVNDQURFOyAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgogUkVTRVQgUk9MRTsKLURST1Ag Rk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vIENBU0NBREU7Ci1cZGV3KworRFJPUCBGT1JFSUdOIERB VEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBDQVNDQURFOworXGRldysgcmVncmVzc18qCiBcZGVzKwog XGRldSsKIAogLS0gZXhlcmNpc2UgQ1JFQVRFIFNFUlZFUgotQ1JFQVRFIFNFUlZFUiBzMSBGT1JF SUdOIERBVEEgV1JBUFBFUiBmb287ICAgICAgICAgICAgICAgICAgLS0gRVJST1IKLUNSRUFURSBG T1JFSUdOIERBVEEgV1JBUFBFUiBmb28gT1BUSU9OUyAoInRlc3Qgd3JhcHBlciIgJ3RydWUnKTsK LUNSRUFURSBTRVJWRVIgczEgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vOwotQ1JFQVRFIFNFUlZF UiBzMSBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb287ICAgICAgICAgICAgICAgICAgLS0gRVJST1IK LUNSRUFURSBTRVJWRVIgSUYgTk9UIEVYSVNUUyBzMSBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb287 CS0tIE5vIEVSUk9SLCBqdXN0IE5PVElDRQotQ1JFQVRFIFNFUlZFUiBzMiBGT1JFSUdOIERBVEEg V1JBUFBFUiBmb28gT1BUSU9OUyAoaG9zdCAnYScsIGRibmFtZSAnYicpOwotQ1JFQVRFIFNFUlZF UiBzMyBUWVBFICdvcmFjbGUnIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbzsKLUNSRUFURSBTRVJW RVIgczQgVFlQRSAnb3JhY2xlJyBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gT1BUSU9OUyAoaG9z dCAnYScsIGRibmFtZSAnYicpOwotQ1JFQVRFIFNFUlZFUiBzNSBWRVJTSU9OICcxNS4wJyBGT1JF SUdOIERBVEEgV1JBUFBFUiBmb287Ci1DUkVBVEUgU0VSVkVSIHM2IFZFUlNJT04gJzE2LjAnIEZP UkVJR04gREFUQSBXUkFQUEVSIGZvbyBPUFRJT05TIChob3N0ICdhJywgZGJuYW1lICdiJyk7Ci1D UkVBVEUgU0VSVkVSIHM3IFRZUEUgJ29yYWNsZScgVkVSU0lPTiAnMTcuMCcgRk9SRUlHTiBEQVRB IFdSQVBQRVIgZm9vIE9QVElPTlMgKGhvc3QgJ2EnLCBkYm5hbWUgJ2InKTsKLUNSRUFURSBTRVJW RVIgczggRk9SRUlHTiBEQVRBIFdSQVBQRVIgcG9zdGdyZXNxbCBPUFRJT05TIChmb28gJzEnKTsg LS0gRVJST1IKLUNSRUFURSBTRVJWRVIgczggRk9SRUlHTiBEQVRBIFdSQVBQRVIgcG9zdGdyZXNx bCBPUFRJT05TIChob3N0ICdsb2NhbGhvc3QnLCBkYm5hbWUgJ3M4ZGInKTsKK0NSRUFURSBTRVJW RVIgczEgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb287ICAgICAgICAgICAgICAgICAg LS0gRVJST1IKK0NSRUFURSBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBPUFRJT05T ICgidGVzdCB3cmFwcGVyIiAndHJ1ZScpOworQ1JFQVRFIFNFUlZFUiBzMSBGT1JFSUdOIERBVEEg V1JBUFBFUiByZWdyZXNzX2ZvbzsKK0NSRUFURSBTRVJWRVIgczEgRk9SRUlHTiBEQVRBIFdSQVBQ RVIgcmVncmVzc19mb287ICAgICAgICAgICAgICAgICAgLS0gRVJST1IKK0NSRUFURSBTRVJWRVIg SUYgTk9UIEVYSVNUUyBzMSBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbzsJLS0gTm8g RVJST1IsIGp1c3QgTk9USUNFCitDUkVBVEUgU0VSVkVSIHMyIEZPUkVJR04gREFUQSBXUkFQUEVS IHJlZ3Jlc3NfZm9vIE9QVElPTlMgKGhvc3QgJ2EnLCBkYm5hbWUgJ2InKTsKK0NSRUFURSBTRVJW RVIgczMgVFlQRSAnb3JhY2xlJyBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbzsKK0NS RUFURSBTRVJWRVIgczQgVFlQRSAnb3JhY2xlJyBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNz X2ZvbyBPUFRJT05TIChob3N0ICdhJywgZGJuYW1lICdiJyk7CitDUkVBVEUgU0VSVkVSIHM1IFZF UlNJT04gJzE1LjAnIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vOworQ1JFQVRFIFNF UlZFUiBzNiBWRVJTSU9OICcxNi4wJyBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBP UFRJT05TIChob3N0ICdhJywgZGJuYW1lICdiJyk7CitDUkVBVEUgU0VSVkVSIHM3IFRZUEUgJ29y YWNsZScgVkVSU0lPTiAnMTcuMCcgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gT1BU SU9OUyAoaG9zdCAnYScsIGRibmFtZSAnYicpOworQ1JFQVRFIFNFUlZFUiBzOCBGT1JFSUdOIERB VEEgV1JBUFBFUiByZWdyZXNzX3Bvc3RncmVzcWwgT1BUSU9OUyAoZm9vICcxJyk7IC0tIEVSUk9S CitDUkVBVEUgU0VSVkVSIHM4IEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfcG9zdGdyZXNx bCBPUFRJT05TIChob3N0ICdsb2NhbGhvc3QnLCBkYm5hbWUgJ3M4ZGInKTsKIFxkZXMrCiBTRVQg Uk9MRSByZWdyZXNzX3Rlc3Rfcm9sZTsKLUNSRUFURSBTRVJWRVIgdDEgRk9SRUlHTiBEQVRBIFdS QVBQRVIgZm9vOyAgICAgICAgICAgICAgICAgLS0gRVJST1I6IG5vIHVzYWdlIG9uIEZEVworQ1JF QVRFIFNFUlZFUiB0MSBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbzsgICAgICAgICAg ICAgICAgIC0tIEVSUk9SOiBubyB1c2FnZSBvbiBGRFcKIFJFU0VUIFJPTEU7Ci1HUkFOVCBVU0FH RSBPTiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gVE8gcmVncmVzc190ZXN0X3JvbGU7CitHUkFO VCBVU0FHRSBPTiBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBUTyByZWdyZXNzX3Rl c3Rfcm9sZTsKIFNFVCBST0xFIHJlZ3Jlc3NfdGVzdF9yb2xlOwotQ1JFQVRFIFNFUlZFUiB0MSBG T1JFSUdOIERBVEEgV1JBUFBFUiBmb287CitDUkVBVEUgU0VSVkVSIHQxIEZPUkVJR04gREFUQSBX UkFQUEVSIHJlZ3Jlc3NfZm9vOwogUkVTRVQgUk9MRTsKIFxkZXMrCiAKLVJFVk9LRSBVU0FHRSBP TiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gRlJPTSByZWdyZXNzX3Rlc3Rfcm9sZTsKLUdSQU5U IFVTQUdFIE9OIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBUTyByZWdyZXNzX3Rlc3RfaW5kaXJl Y3Q7CitSRVZPS0UgVVNBR0UgT04gRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gRlJP TSByZWdyZXNzX3Rlc3Rfcm9sZTsKK0dSQU5UIFVTQUdFIE9OIEZPUkVJR04gREFUQSBXUkFQUEVS IHJlZ3Jlc3NfZm9vIFRPIHJlZ3Jlc3NfdGVzdF9pbmRpcmVjdDsKIFNFVCBST0xFIHJlZ3Jlc3Nf dGVzdF9yb2xlOwotQ1JFQVRFIFNFUlZFUiB0MiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb287ICAg ICAgICAgICAgICAgICAtLSBFUlJPUgorQ1JFQVRFIFNFUlZFUiB0MiBGT1JFSUdOIERBVEEgV1JB UFBFUiByZWdyZXNzX2ZvbzsgICAgICAgICAgICAgICAgIC0tIEVSUk9SCiBSRVNFVCBST0xFOwog R1JBTlQgcmVncmVzc190ZXN0X2luZGlyZWN0IFRPIHJlZ3Jlc3NfdGVzdF9yb2xlOwogU0VUIFJP TEUgcmVncmVzc190ZXN0X3JvbGU7Ci1DUkVBVEUgU0VSVkVSIHQyIEZPUkVJR04gREFUQSBXUkFQ UEVSIGZvbzsKK0NSRUFURSBTRVJWRVIgdDIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19m b287CiBcZGVzKwogUkVTRVQgUk9MRTsKIFJFVk9LRSByZWdyZXNzX3Rlc3RfaW5kaXJlY3QgRlJP TSByZWdyZXNzX3Rlc3Rfcm9sZTsKIAorLS0KKy0tIHRlc3QgcGdfY29ubmVjdGlvbl9mZHcKKy0t CisKK1xzZXQgVkVSQk9TSVRZIHRlcnNlCitDUkVBVEUgU0VSVkVSIGNvbm5lY3Rpb25fc2VydmVy IEZPUkVJR04gREFUQSBXUkFQUEVSIHBnX2Nvbm5lY3Rpb25fZmR3CisgIE9QVElPTlMgKGhvc3Qg J3RoZWhvc3QnLCBjbGllbnRfZW5jb2RpbmcgJ0xBVElOMScpOyAtLSBmYWlsCitDUkVBVEUgU0VS VkVSIGNvbm5lY3Rpb25fc2VydmVyIEZPUkVJR04gREFUQSBXUkFQUEVSIHBnX2Nvbm5lY3Rpb25f ZmR3CisgIE9QVElPTlMgKGhvc3QgJ3RoZWhvc3QnLCBub25zZW5zZSAnYXNkZicpOyAtLSBmYWls CitDUkVBVEUgU0VSVkVSIGNvbm5lY3Rpb25fc2VydmVyIEZPUkVJR04gREFUQSBXUkFQUEVSIHBn X2Nvbm5lY3Rpb25fZmR3CisgIE9QVElPTlMgKGhvc3QgJ3RoZWhvc3QnLCBwYXNzd29yZCAnc2Vj cmV0Jyk7IC0tIGZhaWwKK1xzZXQgVkVSQk9TSVRZIGRlZmF1bHQKKworQ1JFQVRFIFNFUlZFUiBj b25uZWN0aW9uX3NlcnZlciBGT1JFSUdOIERBVEEgV1JBUFBFUiBwZ19jb25uZWN0aW9uX2Zkdwor ICBPUFRJT05TIChob3N0ICd0aGVob3N0JywgcG9ydCAnNTQzMicpOworCitDUkVBVEUgVVNFUiBN QVBQSU5HIEZPUiByZWdyZXNzX3Rlc3Rfcm9sZSBTRVJWRVIgY29ubmVjdGlvbl9zZXJ2ZXIKKyAg T1BUSU9OUyAodXNlciAncm9sZScsIHBhc3N3b3JkICdzZWNyZXQnLCBob3N0ICdvdGhlcmhvc3Qn KTsgLS0gZmFpbAorCitDUkVBVEUgVVNFUiBNQVBQSU5HIEZPUiByZWdyZXNzX3Rlc3Rfcm9sZSBT RVJWRVIgY29ubmVjdGlvbl9zZXJ2ZXIKKyAgT1BUSU9OUyAodXNlciAncm9sZScsIHBhc3N3b3Jk ICdzZWNyZXQnKTsKK0NSRUFURSBVU0VSIE1BUFBJTkcgRk9SIFBVQkxJQyBTRVJWRVIgY29ubmVj dGlvbl9zZXJ2ZXIKKyAgT1BUSU9OUyAodXNlciAncHVibGljdXNlcicsIHBhc3N3b3JkICRwd2Qk J1wiJCMgc2VjcmV0JyRwd2QkKTsKKworU0VMRUNUIHBnX2Nvbm5pbmZvX2Zyb21fc2VydmVyKCdj b25uZWN0aW9uX3NlcnZlcicsICdyZWdyZXNzX3Rlc3Rfcm9sZScsIGZhbHNlKTsKKworU0VMRUNU IHBnX2Nvbm5pbmZvX2Zyb21fc2VydmVyKCdjb25uZWN0aW9uX3NlcnZlcicsICdyZWdyZXNzX3Rl c3Rfcm9sZTInLCBmYWxzZSk7CisKK0RST1AgVVNFUiBNQVBQSU5HIEZPUiByZWdyZXNzX3Rlc3Rf cm9sZSBTRVJWRVIgY29ubmVjdGlvbl9zZXJ2ZXI7CitEUk9QIFVTRVIgTUFQUElORyBGT1IgUFVC TElDIFNFUlZFUiBjb25uZWN0aW9uX3NlcnZlcjsKK0RST1AgU0VSVkVSIGNvbm5lY3Rpb25fc2Vy dmVyOworCiAtLSBBTFRFUiBTRVJWRVIKIEFMVEVSIFNFUlZFUiBzMDsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tIEVSUk9SCiBBTFRFUiBTRVJWRVIgczAgT1BU SU9OUyAoYSAnMScpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgpAQCAtMjA4 LDcgKzI0MCw3IEBAIEdSQU5UIHJlZ3Jlc3NfdGVzdF9pbmRpcmVjdCBUTyByZWdyZXNzX3Rlc3Rf cm9sZTsKIFNFVCBST0xFIHJlZ3Jlc3NfdGVzdF9yb2xlOwogQUxURVIgU0VSVkVSIHMxIE9XTkVS IFRPIHJlZ3Jlc3NfdGVzdF9pbmRpcmVjdDsKIFJFU0VUIFJPTEU7Ci1HUkFOVCBVU0FHRSBPTiBG T1JFSUdOIERBVEEgV1JBUFBFUiBmb28gVE8gcmVncmVzc190ZXN0X2luZGlyZWN0OworR1JBTlQg VVNBR0UgT04gRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gVE8gcmVncmVzc190ZXN0 X2luZGlyZWN0OwogU0VUIFJPTEUgcmVncmVzc190ZXN0X3JvbGU7CiBBTFRFUiBTRVJWRVIgczEg T1dORVIgVE8gcmVncmVzc190ZXN0X2luZGlyZWN0OwogUkVTRVQgUk9MRTsKQEAgLTI5Myw3ICsz MjUsNyBAQCBEUk9QIFNFUlZFUiBzNzsKIAogLS0gQ1JFQVRFIEZPUkVJR04gVEFCTEUKIENSRUFU RSBTQ0hFTUEgZm9yZWlnbl9zY2hlbWE7Ci1DUkVBVEUgU0VSVkVSIHMwIEZPUkVJR04gREFUQSBX UkFQUEVSIGR1bW15OworQ1JFQVRFIFNFUlZFUiBzMCBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdy ZXNzX2R1bW15OwogQ1JFQVRFIEZPUkVJR04gVEFCTEUgZnQxICgpOyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIC0tIEVSUk9SCiBDUkVBVEUgRk9SRUlHTiBUQUJMRSBmdDEgKCkg U0VSVkVSIG5vX3NlcnZlcjsgICAgICAgICAgICAgICAgICAgLS0gRVJST1IKIENSRUFURSBGT1JF SUdOIFRBQkxFIGZ0MSAoCkBAIC00NTMsMjAgKzQ4NSwyMCBAQCBBTFRFUiBGT1JFSUdOIFRBQkxF IElGIEVYSVNUUyBkb2VzbnRfZXhpc3RfZnQxIFJFTkFNRSBUTyBmb3JlaWduX3RhYmxlXzE7CiAK IC0tIEluZm9ybWF0aW9uIHNjaGVtYQogCi1TRUxFQ1QgKiBGUk9NIGluZm9ybWF0aW9uX3NjaGVt YS5mb3JlaWduX2RhdGFfd3JhcHBlcnMgT1JERVIgQlkgMSwgMjsKK1NFTEVDVCAqIEZST00gaW5m b3JtYXRpb25fc2NoZW1hLmZvcmVpZ25fZGF0YV93cmFwcGVycyBXSEVSRSBhdXRob3JpemF0aW9u X2lkZW50aWZpZXIgPSAncmVncmVzc19mb3JlaWduX2RhdGFfdXNlcicgT1JERVIgQlkgMSwgMjsK IFNFTEVDVCAqIEZST00gaW5mb3JtYXRpb25fc2NoZW1hLmZvcmVpZ25fZGF0YV93cmFwcGVyX29w dGlvbnMgT1JERVIgQlkgMSwgMiwgMzsKIFNFTEVDVCAqIEZST00gaW5mb3JtYXRpb25fc2NoZW1h LmZvcmVpZ25fc2VydmVycyBPUkRFUiBCWSAxLCAyOwogU0VMRUNUICogRlJPTSBpbmZvcm1hdGlv bl9zY2hlbWEuZm9yZWlnbl9zZXJ2ZXJfb3B0aW9ucyBPUkRFUiBCWSAxLCAyLCAzOwogU0VMRUNU ICogRlJPTSBpbmZvcm1hdGlvbl9zY2hlbWEudXNlcl9tYXBwaW5ncyBPUkRFUiBCWSBsb3dlcihh dXRob3JpemF0aW9uX2lkZW50aWZpZXIpLCAyLCAzOwogU0VMRUNUICogRlJPTSBpbmZvcm1hdGlv bl9zY2hlbWEudXNlcl9tYXBwaW5nX29wdGlvbnMgT1JERVIgQlkgbG93ZXIoYXV0aG9yaXphdGlv bl9pZGVudGlmaWVyKSwgMiwgMywgNDsKLVNFTEVDVCAqIEZST00gaW5mb3JtYXRpb25fc2NoZW1h LnVzYWdlX3ByaXZpbGVnZXMgV0hFUkUgb2JqZWN0X3R5cGUgTElLRSAnRk9SRUlHTiUnIEFORCBv YmplY3RfbmFtZSBJTiAoJ3M2JywgJ2ZvbycpIE9SREVSIEJZIDEsIDIsIDMsIDQsIDU7Ci1TRUxF Q1QgKiBGUk9NIGluZm9ybWF0aW9uX3NjaGVtYS5yb2xlX3VzYWdlX2dyYW50cyBXSEVSRSBvYmpl Y3RfdHlwZSBMSUtFICdGT1JFSUdOJScgQU5EIG9iamVjdF9uYW1lIElOICgnczYnLCAnZm9vJykg T1JERVIgQlkgMSwgMiwgMywgNCwgNTsKK1NFTEVDVCAqIEZST00gaW5mb3JtYXRpb25fc2NoZW1h LnVzYWdlX3ByaXZpbGVnZXMgV0hFUkUgb2JqZWN0X3R5cGUgTElLRSAnRk9SRUlHTiUnIEFORCBv YmplY3RfbmFtZSBJTiAoJ3M2JywgJ3JlZ3Jlc3NfZm9vJykgT1JERVIgQlkgMSwgMiwgMywgNCwg NTsKK1NFTEVDVCAqIEZST00gaW5mb3JtYXRpb25fc2NoZW1hLnJvbGVfdXNhZ2VfZ3JhbnRzIFdI RVJFIG9iamVjdF90eXBlIExJS0UgJ0ZPUkVJR04lJyBBTkQgb2JqZWN0X25hbWUgSU4gKCdzNics ICdyZWdyZXNzX2ZvbycpIE9SREVSIEJZIDEsIDIsIDMsIDQsIDU7CiBTRUxFQ1QgKiBGUk9NIGlu Zm9ybWF0aW9uX3NjaGVtYS5mb3JlaWduX3RhYmxlcyBPUkRFUiBCWSAxLCAyLCAzOwogU0VMRUNU ICogRlJPTSBpbmZvcm1hdGlvbl9zY2hlbWEuZm9yZWlnbl90YWJsZV9vcHRpb25zIE9SREVSIEJZ IDEsIDIsIDMsIDQ7CiBTRVQgUk9MRSByZWdyZXNzX3Rlc3Rfcm9sZTsKIFNFTEVDVCAqIEZST00g aW5mb3JtYXRpb25fc2NoZW1hLnVzZXJfbWFwcGluZ19vcHRpb25zIE9SREVSIEJZIDEsIDIsIDMs IDQ7Ci1TRUxFQ1QgKiBGUk9NIGluZm9ybWF0aW9uX3NjaGVtYS51c2FnZV9wcml2aWxlZ2VzIFdI RVJFIG9iamVjdF90eXBlIExJS0UgJ0ZPUkVJR04lJyBBTkQgb2JqZWN0X25hbWUgSU4gKCdzNics ICdmb28nKSBPUkRFUiBCWSAxLCAyLCAzLCA0LCA1OwotU0VMRUNUICogRlJPTSBpbmZvcm1hdGlv bl9zY2hlbWEucm9sZV91c2FnZV9ncmFudHMgV0hFUkUgb2JqZWN0X3R5cGUgTElLRSAnRk9SRUlH TiUnIEFORCBvYmplY3RfbmFtZSBJTiAoJ3M2JywgJ2ZvbycpIE9SREVSIEJZIDEsIDIsIDMsIDQs IDU7CitTRUxFQ1QgKiBGUk9NIGluZm9ybWF0aW9uX3NjaGVtYS51c2FnZV9wcml2aWxlZ2VzIFdI RVJFIG9iamVjdF90eXBlIExJS0UgJ0ZPUkVJR04lJyBBTkQgb2JqZWN0X25hbWUgSU4gKCdzNics ICdyZWdyZXNzX2ZvbycpIE9SREVSIEJZIDEsIDIsIDMsIDQsIDU7CitTRUxFQ1QgKiBGUk9NIGlu Zm9ybWF0aW9uX3NjaGVtYS5yb2xlX3VzYWdlX2dyYW50cyBXSEVSRSBvYmplY3RfdHlwZSBMSUtF ICdGT1JFSUdOJScgQU5EIG9iamVjdF9uYW1lIElOICgnczYnLCAncmVncmVzc19mb28nKSBPUkRF UiBCWSAxLCAyLCAzLCA0LCA1OwogRFJPUCBVU0VSIE1BUFBJTkcgRk9SIGN1cnJlbnRfdXNlciBT RVJWRVIgdDE7CiBTRVQgUk9MRSByZWdyZXNzX3Rlc3Rfcm9sZTI7CiBTRUxFQ1QgKiBGUk9NIGlu Zm9ybWF0aW9uX3NjaGVtYS51c2VyX21hcHBpbmdfb3B0aW9ucyBPUkRFUiBCWSAxLCAyLCAzLCA0 OwpAQCAtNDc1LDE4ICs1MDcsMTggQEAgUkVTRVQgUk9MRTsKIAogLS0gaGFzX2ZvcmVpZ25fZGF0 YV93cmFwcGVyX3ByaXZpbGVnZQogU0VMRUNUIGhhc19mb3JlaWduX2RhdGFfd3JhcHBlcl9wcml2 aWxlZ2UoJ3JlZ3Jlc3NfdGVzdF9yb2xlJywKLSAgICAoU0VMRUNUIG9pZCBGUk9NIHBnX2ZvcmVp Z25fZGF0YV93cmFwcGVyIFdIRVJFIGZkd25hbWU9J2ZvbycpLCAnVVNBR0UnKTsKLVNFTEVDVCBo YXNfZm9yZWlnbl9kYXRhX3dyYXBwZXJfcHJpdmlsZWdlKCdyZWdyZXNzX3Rlc3Rfcm9sZScsICdm b28nLCAnVVNBR0UnKTsKKyAgICAoU0VMRUNUIG9pZCBGUk9NIHBnX2ZvcmVpZ25fZGF0YV93cmFw cGVyIFdIRVJFIGZkd25hbWU9J3JlZ3Jlc3NfZm9vJyksICdVU0FHRScpOworU0VMRUNUIGhhc19m b3JlaWduX2RhdGFfd3JhcHBlcl9wcml2aWxlZ2UoJ3JlZ3Jlc3NfdGVzdF9yb2xlJywgJ3JlZ3Jl c3NfZm9vJywgJ1VTQUdFJyk7CiBTRUxFQ1QgaGFzX2ZvcmVpZ25fZGF0YV93cmFwcGVyX3ByaXZp bGVnZSgKICAgICAoU0VMRUNUIG9pZCBGUk9NIHBnX3JvbGVzIFdIRVJFIHJvbG5hbWU9J3JlZ3Jl c3NfdGVzdF9yb2xlJyksCi0gICAgKFNFTEVDVCBvaWQgRlJPTSBwZ19mb3JlaWduX2RhdGFfd3Jh cHBlciBXSEVSRSBmZHduYW1lPSdmb28nKSwgJ1VTQUdFJyk7CisgICAgKFNFTEVDVCBvaWQgRlJP TSBwZ19mb3JlaWduX2RhdGFfd3JhcHBlciBXSEVSRSBmZHduYW1lPSdyZWdyZXNzX2ZvbycpLCAn VVNBR0UnKTsKIFNFTEVDVCBoYXNfZm9yZWlnbl9kYXRhX3dyYXBwZXJfcHJpdmlsZWdlKAotICAg IChTRUxFQ1Qgb2lkIEZST00gcGdfZm9yZWlnbl9kYXRhX3dyYXBwZXIgV0hFUkUgZmR3bmFtZT0n Zm9vJyksICdVU0FHRScpOworICAgIChTRUxFQ1Qgb2lkIEZST00gcGdfZm9yZWlnbl9kYXRhX3dy YXBwZXIgV0hFUkUgZmR3bmFtZT0ncmVncmVzc19mb28nKSwgJ1VTQUdFJyk7CiBTRUxFQ1QgaGFz X2ZvcmVpZ25fZGF0YV93cmFwcGVyX3ByaXZpbGVnZSgKLSAgICAoU0VMRUNUIG9pZCBGUk9NIHBn X3JvbGVzIFdIRVJFIHJvbG5hbWU9J3JlZ3Jlc3NfdGVzdF9yb2xlJyksICdmb28nLCAnVVNBR0Un KTsKLVNFTEVDVCBoYXNfZm9yZWlnbl9kYXRhX3dyYXBwZXJfcHJpdmlsZWdlKCdmb28nLCAnVVNB R0UnKTsKLUdSQU5UIFVTQUdFIE9OIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBUTyByZWdyZXNz X3Rlc3Rfcm9sZTsKLVNFTEVDVCBoYXNfZm9yZWlnbl9kYXRhX3dyYXBwZXJfcHJpdmlsZWdlKCdy ZWdyZXNzX3Rlc3Rfcm9sZScsICdmb28nLCAnVVNBR0UnKTsKKyAgICAoU0VMRUNUIG9pZCBGUk9N IHBnX3JvbGVzIFdIRVJFIHJvbG5hbWU9J3JlZ3Jlc3NfdGVzdF9yb2xlJyksICdyZWdyZXNzX2Zv bycsICdVU0FHRScpOworU0VMRUNUIGhhc19mb3JlaWduX2RhdGFfd3JhcHBlcl9wcml2aWxlZ2Uo J3JlZ3Jlc3NfZm9vJywgJ1VTQUdFJyk7CitHUkFOVCBVU0FHRSBPTiBGT1JFSUdOIERBVEEgV1JB UFBFUiByZWdyZXNzX2ZvbyBUTyByZWdyZXNzX3Rlc3Rfcm9sZTsKK1NFTEVDVCBoYXNfZm9yZWln bl9kYXRhX3dyYXBwZXJfcHJpdmlsZWdlKCdyZWdyZXNzX3Rlc3Rfcm9sZScsICdyZWdyZXNzX2Zv bycsICdVU0FHRScpOwogCiAtLSBoYXNfc2VydmVyX3ByaXZpbGVnZQogU0VMRUNUIGhhc19zZXJ2 ZXJfcHJpdmlsZWdlKCdyZWdyZXNzX3Rlc3Rfcm9sZScsCkBAIC01MDgsMTYgKzU0MCwxNiBAQCBH UkFOVCBVU0FHRSBPTiBGT1JFSUdOIFNFUlZFUiBzNCBUTyByZWdyZXNzX3Rlc3Rfcm9sZTsKIERS T1AgVVNFUiBNQVBQSU5HIEZPUiBwdWJsaWMgU0VSVkVSIHM0OwogQUxURVIgU0VSVkVSIHM2IE9Q VElPTlMgKERST1AgaG9zdCwgRFJPUCBkYm5hbWUpOwogQUxURVIgVVNFUiBNQVBQSU5HIEZPUiBy ZWdyZXNzX3Rlc3Rfcm9sZSBTRVJWRVIgczYgT1BUSU9OUyAoRFJPUCB1c2VybmFtZSk7Ci1BTFRF UiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gVkFMSURBVE9SIHBvc3RncmVzcWxfZmR3X3ZhbGlk YXRvcjsKK0FMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIFZBTElEQVRPUiBw b3N0Z3Jlc3FsX2Zkd192YWxpZGF0b3I7CiAKIC0tIFByaXZpbGVnZXMKIFNFVCBST0xFIHJlZ3Jl c3NfdW5wcml2aWxlZ2VkX3JvbGU7Ci1DUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vYmFy OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0gRVJST1IKLUFMVEVSIEZPUkVJR04gREFU QSBXUkFQUEVSIGZvbyBPUFRJT05TIChnb3RjaGEgJ3RydWUnKTsgICAgICAgICAtLSBFUlJPUgot QUxURVIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vIE9XTkVSIFRPIHJlZ3Jlc3NfdW5wcml2aWxl Z2VkX3JvbGU7IC0tIEVSUk9SCi1EUk9QIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbzsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0gRVJST1IKLUdSQU5UIFVTQUdFIE9OIEZPUkVJ R04gREFUQSBXUkFQUEVSIGZvbyBUTyByZWdyZXNzX3Rlc3Rfcm9sZTsgICAtLSBFUlJPUgotQ1JF QVRFIFNFUlZFUiBzOSBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb287ICAgICAgICAgICAgICAgICAg ICAgIC0tIEVSUk9SCitDUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb29iYXI7 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgorQUxURVIgRk9SRUlHTiBEQVRB IFdSQVBQRVIgcmVncmVzc19mb28gT1BUSU9OUyAoZ290Y2hhICd0cnVlJyk7ICAgICAgICAgLS0g RVJST1IKK0FMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9vIE9XTkVSIFRPIHJl Z3Jlc3NfdW5wcml2aWxlZ2VkX3JvbGU7IC0tIEVSUk9SCitEUk9QIEZPUkVJR04gREFUQSBXUkFQ UEVSIHJlZ3Jlc3NfZm9vOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJP UgorR1JBTlQgVVNBR0UgT04gRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gVE8gcmVn cmVzc190ZXN0X3JvbGU7ICAgLS0gRVJST1IKK0NSRUFURSBTRVJWRVIgczkgRk9SRUlHTiBEQVRB IFdSQVBQRVIgcmVncmVzc19mb287ICAgICAgICAgICAgICAgICAgICAgIC0tIEVSUk9SCiBBTFRF UiBTRVJWRVIgczQgVkVSU0lPTiAnMC41JzsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgLS0gRVJST1IKIEFMVEVSIFNFUlZFUiBzNCBPV05FUiBUTyByZWdyZXNzX3VucHJpdmlsZWdl ZF9yb2xlOyAgICAgICAgICAgICAtLSBFUlJPUgogRFJPUCBTRVJWRVIgczQ7ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tIEVSUk9SCkBAIC01MjcsMTUg KzU1OSwxNSBAQCBBTFRFUiBVU0VSIE1BUFBJTkcgRk9SIHJlZ3Jlc3NfdGVzdF9yb2xlIFNFUlZF UiBzNiBPUFRJT05TIChnb3RjaGEgJ3RydWUnKTsgLS0gRQogRFJPUCBVU0VSIE1BUFBJTkcgRk9S IHJlZ3Jlc3NfdGVzdF9yb2xlIFNFUlZFUiBzNjsgICAgICAgICAgICAgIC0tIEVSUk9SCiBSRVNF VCBST0xFOwogCi1HUkFOVCBVU0FHRSBPTiBGT1JFSUdOIERBVEEgV1JBUFBFUiBwb3N0Z3Jlc3Fs IFRPIHJlZ3Jlc3NfdW5wcml2aWxlZ2VkX3JvbGU7Ci1HUkFOVCBVU0FHRSBPTiBGT1JFSUdOIERB VEEgV1JBUFBFUiBmb28gVE8gcmVncmVzc191bnByaXZpbGVnZWRfcm9sZSBXSVRIIEdSQU5UIE9Q VElPTjsKK0dSQU5UIFVTQUdFIE9OIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfcG9zdGdy ZXNxbCBUTyByZWdyZXNzX3VucHJpdmlsZWdlZF9yb2xlOworR1JBTlQgVVNBR0UgT04gRk9SRUlH TiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gVE8gcmVncmVzc191bnByaXZpbGVnZWRfcm9sZSBX SVRIIEdSQU5UIE9QVElPTjsKIFNFVCBST0xFIHJlZ3Jlc3NfdW5wcml2aWxlZ2VkX3JvbGU7Ci1D UkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vYmFyOyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgLS0gRVJST1IKLUFMVEVSIEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbyBPUFRJT05TIChn b3RjaGEgJ3RydWUnKTsgICAgICAgICAtLSBFUlJPUgotRFJPUCBGT1JFSUdOIERBVEEgV1JBUFBF UiBmb287ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tIEVSUk9SCi1HUkFOVCBV U0FHRSBPTiBGT1JFSUdOIERBVEEgV1JBUFBFUiBwb3N0Z3Jlc3FsIFRPIHJlZ3Jlc3NfdGVzdF9y b2xlOyAtLSBXQVJOSU5HCi1HUkFOVCBVU0FHRSBPTiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28g VE8gcmVncmVzc190ZXN0X3JvbGU7Ci1DUkVBVEUgU0VSVkVSIHM5IEZPUkVJR04gREFUQSBXUkFQ UEVSIHBvc3RncmVzcWw7CitDUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb29i YXI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgorQUxURVIgRk9SRUlHTiBE QVRBIFdSQVBQRVIgcmVncmVzc19mb28gT1BUSU9OUyAoZ290Y2hhICd0cnVlJyk7ICAgICAgICAg LS0gRVJST1IKK0RST1AgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb287ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIC0tIEVSUk9SCitHUkFOVCBVU0FHRSBPTiBGT1JFSUdO IERBVEEgV1JBUFBFUiByZWdyZXNzX3Bvc3RncmVzcWwgVE8gcmVncmVzc190ZXN0X3JvbGU7IC0t IFdBUk5JTkcKK0dSQU5UIFVTQUdFIE9OIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZm9v IFRPIHJlZ3Jlc3NfdGVzdF9yb2xlOworQ1JFQVRFIFNFUlZFUiBzOSBGT1JFSUdOIERBVEEgV1JB UFBFUiByZWdyZXNzX3Bvc3RncmVzcWw7CiBBTFRFUiBTRVJWRVIgczYgVkVSU0lPTiAnMC41Jzsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0gRVJST1IKIERST1AgU0VSVkVSIHM2 OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJP UgogR1JBTlQgVVNBR0UgT04gRk9SRUlHTiBTRVJWRVIgczYgVE8gcmVncmVzc190ZXN0X3JvbGU7 ICAgICAgICAgIC0tIEVSUk9SCkBAIC01NDYsMTcgKzU3OCwxNyBAQCBBTFRFUiBVU0VSIE1BUFBJ TkcgRk9SIHJlZ3Jlc3NfdGVzdF9yb2xlIFNFUlZFUiBzNiBPUFRJT05TIChnb3RjaGEgJ3RydWUn KTsgLS0gRQogRFJPUCBVU0VSIE1BUFBJTkcgRk9SIHJlZ3Jlc3NfdGVzdF9yb2xlIFNFUlZFUiBz NjsgICAgICAgICAgICAgIC0tIEVSUk9SCiBSRVNFVCBST0xFOwogCi1SRVZPS0UgVVNBR0UgT04g Rk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vIEZST00gcmVncmVzc191bnByaXZpbGVnZWRfcm9sZTsg LS0gRVJST1IKLVJFVk9LRSBVU0FHRSBPTiBGT1JFSUdOIERBVEEgV1JBUFBFUiBmb28gRlJPTSBy ZWdyZXNzX3VucHJpdmlsZWdlZF9yb2xlIENBU0NBREU7CitSRVZPS0UgVVNBR0UgT04gRk9SRUlH TiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb28gRlJPTSByZWdyZXNzX3VucHJpdmlsZWdlZF9yb2xl OyAtLSBFUlJPUgorUkVWT0tFIFVTQUdFIE9OIEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3Nf Zm9vIEZST00gcmVncmVzc191bnByaXZpbGVnZWRfcm9sZSBDQVNDQURFOwogU0VUIFJPTEUgcmVn cmVzc191bnByaXZpbGVnZWRfcm9sZTsKLUdSQU5UIFVTQUdFIE9OIEZPUkVJR04gREFUQSBXUkFQ UEVSIGZvbyBUTyByZWdyZXNzX3Rlc3Rfcm9sZTsgICAtLSBFUlJPUgotQ1JFQVRFIFNFUlZFUiBz MTAgRk9SRUlHTiBEQVRBIFdSQVBQRVIgZm9vOyAgICAgICAgICAgICAgICAgICAgIC0tIEVSUk9S CitHUkFOVCBVU0FHRSBPTiBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBUTyByZWdy ZXNzX3Rlc3Rfcm9sZTsgICAtLSBFUlJPUgorQ1JFQVRFIFNFUlZFUiBzMTAgRk9SRUlHTiBEQVRB IFdSQVBQRVIgcmVncmVzc19mb287ICAgICAgICAgICAgICAgICAgICAgLS0gRVJST1IKIEFMVEVS IFNFUlZFUiBzOSBWRVJTSU9OICcxLjEnOwogR1JBTlQgVVNBR0UgT04gRk9SRUlHTiBTRVJWRVIg czkgVE8gcmVncmVzc190ZXN0X3JvbGU7CiBDUkVBVEUgVVNFUiBNQVBQSU5HIEZPUiBjdXJyZW50 X3VzZXIgU0VSVkVSIHM5OwogRFJPUCBTRVJWRVIgczkgQ0FTQ0FERTsKIFJFU0VUIFJPTEU7Ci1D UkVBVEUgU0VSVkVSIHM5IEZPUkVJR04gREFUQSBXUkFQUEVSIGZvbzsKK0NSRUFURSBTRVJWRVIg czkgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mb287CiBHUkFOVCBVU0FHRSBPTiBGT1JF SUdOIFNFUlZFUiBzOSBUTyByZWdyZXNzX3VucHJpdmlsZWdlZF9yb2xlOwogU0VUIFJPTEUgcmVn cmVzc191bnByaXZpbGVnZWRfcm9sZTsKIEFMVEVSIFNFUlZFUiBzOSBWRVJTSU9OICcxLjInOyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgpAQCAtNTY2LDcgKzU5OCw3 IEBAIERST1AgU0VSVkVSIHM5IENBU0NBREU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAtLSBFUlJPUgogCiAtLSBDaGVjayB2aXNpYmlsaXR5IG9mIHVzZXIgbWFwcGlu ZyBkYXRhCiBTRVQgUk9MRSByZWdyZXNzX3Rlc3Rfcm9sZTsKLUNSRUFURSBTRVJWRVIgczEwIEZP UkVJR04gREFUQSBXUkFQUEVSIGZvbzsKK0NSRUFURSBTRVJWRVIgczEwIEZPUkVJR04gREFUQSBX UkFQUEVSIHJlZ3Jlc3NfZm9vOwogQ1JFQVRFIFVTRVIgTUFQUElORyBGT1IgcHVibGljIFNFUlZF UiBzMTAgT1BUSU9OUyAodXNlciAnc2VjcmV0Jyk7CiBDUkVBVEUgVVNFUiBNQVBQSU5HIEZPUiBy ZWdyZXNzX3VucHJpdmlsZWdlZF9yb2xlIFNFUlZFUiBzMTAgT1BUSU9OUyAodXNlciAnc2VjcmV0 Jyk7CiAtLSBvd25lciBvZiBzZXJ2ZXIgY2FuIHNlZSBzb21lIG9wdGlvbiBmaWVsZHMKQEAgLTg0 NywyMCArODc5LDIwIEBAIERST1AgU0NIRU1BIGZvcmVpZ25fc2NoZW1hIENBU0NBREU7CiBEUk9Q IFJPTEUgcmVncmVzc190ZXN0X3JvbGU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAt LSBFUlJPUgogRFJPUCBTRVJWRVIgdDEgQ0FTQ0FERTsKIERST1AgVVNFUiBNQVBQSU5HIEZPUiBy ZWdyZXNzX3Rlc3Rfcm9sZSBTRVJWRVIgczY7Ci1EUk9QIEZPUkVJR04gREFUQSBXUkFQUEVSIGZv byBDQVNDQURFOworRFJPUCBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZvbyBDQVNDQURF OwogRFJPUCBTRVJWRVIgczggQ0FTQ0FERTsKIERST1AgUk9MRSByZWdyZXNzX3Rlc3RfaW5kaXJl Y3Q7CiBEUk9QIFJPTEUgcmVncmVzc190ZXN0X3JvbGU7CiBEUk9QIFJPTEUgcmVncmVzc191bnBy aXZpbGVnZWRfcm9sZTsgICAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgotUkVWT0tFIEFM TCBPTiBGT1JFSUdOIERBVEEgV1JBUFBFUiBwb3N0Z3Jlc3FsIEZST00gcmVncmVzc191bnByaXZp bGVnZWRfcm9sZTsKK1JFVk9LRSBBTEwgT04gRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19w b3N0Z3Jlc3FsIEZST00gcmVncmVzc191bnByaXZpbGVnZWRfcm9sZTsKIERST1AgUk9MRSByZWdy ZXNzX3VucHJpdmlsZWdlZF9yb2xlOwogRFJPUCBST0xFIHJlZ3Jlc3NfdGVzdF9yb2xlMjsKLURS T1AgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcG9zdGdyZXNxbCBDQVNDQURFOwotRFJPUCBGT1JFSUdO IERBVEEgV1JBUFBFUiBkdW1teSBDQVNDQURFOworRFJPUCBGT1JFSUdOIERBVEEgV1JBUFBFUiBy ZWdyZXNzX3Bvc3RncmVzcWwgQ0FTQ0FERTsKK0RST1AgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVn cmVzc19kdW1teSBDQVNDQURFOwogXGMKIERST1AgUk9MRSByZWdyZXNzX2ZvcmVpZ25fZGF0YV91 c2VyOwogCiAtLSBBdCB0aGlzIHBvaW50IHdlIHNob3VsZCBoYXZlIG5vIHdyYXBwZXJzLCBubyBz ZXJ2ZXJzLCBhbmQgbm8gbWFwcGluZ3MuCi1TRUxFQ1QgZmR3bmFtZSwgZmR3aGFuZGxlciwgZmR3 dmFsaWRhdG9yLCBmZHdvcHRpb25zIEZST00gcGdfZm9yZWlnbl9kYXRhX3dyYXBwZXI7CitTRUxF Q1QgZmR3bmFtZSwgZmR3aGFuZGxlciwgZmR3dmFsaWRhdG9yLCBmZHdvcHRpb25zIEZST00gcGdf Zm9yZWlnbl9kYXRhX3dyYXBwZXIgV0hFUkUgZmR3bmFtZSBMSUtFICdyZWdyZXNzXyUnOwogU0VM RUNUIHNydm5hbWUsIHNydm9wdGlvbnMgRlJPTSBwZ19mb3JlaWduX3NlcnZlcjsKIFNFTEVDVCAq IEZST00gcGdfdXNlcl9tYXBwaW5nOwotLSAKMi4zNC4xCgo= --=-BGB4L0ZPZie64oIr3KQS Content-Disposition: attachment; filename="v7-0003-CREATE-SUSBCRIPTION-.-SERVER.patch" Content-Type: text/x-patch; name="v7-0003-CREATE-SUSBCRIPTION-.-SERVER.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 RnJvbSAxZmMyMTIxYjVhZTk2MTUyZGYyM2EzMmZhOTYxMmYzYTQ1ODUxODkwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKZWZmIERhdmlzIDxqZWZmQGotZGF2aXMuY29tPgpEYXRlOiBU dWUsIDIgSmFuIDIwMjQgMTM6NDI6NDggLTA4MDAKU3ViamVjdDogW1BBVENIIHY3IDMvNF0gQ1JF QVRFIFNVU0JDUklQVElPTiAuLi4gU0VSVkVSLgoKLS0tCiBjb250cmliL3Bvc3RncmVzX2Zkdy9N YWtlZmlsZSAgICAgICAgICAgICAgICAgfCAgIDIgKwogLi4uL3Bvc3RncmVzX2Zkdy9leHBlY3Rl ZC9wb3N0Z3Jlc19mZHcub3V0ICAgIHwgIDE0ICsrCiBjb250cmliL3Bvc3RncmVzX2Zkdy9tZXNv bi5idWlsZCAgICAgICAgICAgICAgfCAgIDUgKwogY29udHJpYi9wb3N0Z3Jlc19mZHcvc3FsL3Bv c3RncmVzX2Zkdy5zcWwgICAgIHwgICA4ICsKIGNvbnRyaWIvcG9zdGdyZXNfZmR3L3QvMDEwX3N1 YnNjcmlwdGlvbi5wbCAgICB8ICA2OCArKysrKysKIGRvYy9zcmMvc2dtbC9yZWYvYWx0ZXJfc3Vi c2NyaXB0aW9uLnNnbWwgICAgICB8ICAxOCArLQogZG9jL3NyYy9zZ21sL3JlZi9jcmVhdGVfc3Vi c2NyaXB0aW9uLnNnbWwgICAgIHwgIDExICstCiBzcmMvYmFja2VuZC9jYXRhbG9nL3BnX3N1YnNj cmlwdGlvbi5jICAgICAgICAgfCAgMzkgKysrLQogc3JjL2JhY2tlbmQvY29tbWFuZHMvc3Vic2Ny aXB0aW9uY21kcy5jICAgICAgIHwgMTk3ICsrKysrKysrKysrKysrKystLQogc3JjL2JhY2tlbmQv Zm9yZWlnbi9mb3JlaWduLmMgICAgICAgICAgICAgICAgIHwgIDI1ICsrKwogc3JjL2JhY2tlbmQv cGFyc2VyL2dyYW0ueSAgICAgICAgICAgICAgICAgICAgIHwgIDIwICsrCiBzcmMvYmFja2VuZC9y ZXBsaWNhdGlvbi9sb2dpY2FsL3dvcmtlci5jICAgICAgfCAgMTYgKy0KIHNyYy9iaW4vcGdfZHVt cC9wZ19kdW1wLmMgICAgICAgICAgICAgICAgICAgICB8ICAyNyArKy0KIHNyYy9iaW4vcGdfZHVt cC9wZ19kdW1wLmggICAgICAgICAgICAgICAgICAgICB8ICAgMSArCiBzcmMvYmluL3BzcWwvdGFi LWNvbXBsZXRlLmMgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIHNyYy9pbmNsdWRlL2NhdGFs b2cvcGdfc3Vic2NyaXB0aW9uLmggICAgICAgICB8ICAgNyArLQogc3JjL2luY2x1ZGUvZm9yZWln bi9mb3JlaWduLmggICAgICAgICAgICAgICAgIHwgICAxICsKIHNyYy9pbmNsdWRlL25vZGVzL3Bh cnNlbm9kZXMuaCAgICAgICAgICAgICAgICB8ICAgMyArCiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVj dGVkL2ZvcmVpZ25fZGF0YS5vdXQgICAgfCAgMTQgKysKIHNyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0 ZWQvc3Vic2NyaXB0aW9uLm91dCAgICB8ICA1MiArKysrKwogc3JjL3Rlc3QvcmVncmVzcy9zcWwv Zm9yZWlnbl9kYXRhLnNxbCAgICAgICAgIHwgIDE3ICsrCiBzcmMvdGVzdC9yZWdyZXNzL3NxbC9z dWJzY3JpcHRpb24uc3FsICAgICAgICAgfCAgNTYgKysrKysKIHNyYy90ZXN0L3N1YnNjcmlwdGlv bi90LzAwMV9yZXBfY2hhbmdlcy5wbCAgICB8ICA1NyArKysrKwogMjMgZmlsZXMgY2hhbmdlZCwg NjI3IGluc2VydGlvbnMoKyksIDMzIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGNv bnRyaWIvcG9zdGdyZXNfZmR3L3QvMDEwX3N1YnNjcmlwdGlvbi5wbAoKZGlmZiAtLWdpdCBhL2Nv bnRyaWIvcG9zdGdyZXNfZmR3L01ha2VmaWxlIGIvY29udHJpYi9wb3N0Z3Jlc19mZHcvTWFrZWZp bGUKaW5kZXggYzFiMGNhZDQ1My4uYzM0OThlYTZiNCAxMDA2NDQKLS0tIGEvY29udHJpYi9wb3N0 Z3Jlc19mZHcvTWFrZWZpbGUKKysrIGIvY29udHJpYi9wb3N0Z3Jlc19mZHcvTWFrZWZpbGUKQEAg LTE4LDYgKzE4LDggQEAgREFUQSA9IHBvc3RncmVzX2Zkdy0tMS4wLnNxbCBwb3N0Z3Jlc19mZHct LTEuMC0tMS4xLnNxbAogCiBSRUdSRVNTID0gcG9zdGdyZXNfZmR3CiAKK1RBUF9URVNUUyA9IDEK KwogaWZkZWYgVVNFX1BHWFMKIFBHX0NPTkZJRyA9IHBnX2NvbmZpZwogUEdYUyA6PSAkKHNoZWxs ICQoUEdfQ09ORklHKSAtLXBneHMpCmRpZmYgLS1naXQgYS9jb250cmliL3Bvc3RncmVzX2Zkdy9l eHBlY3RlZC9wb3N0Z3Jlc19mZHcub3V0IGIvY29udHJpYi9wb3N0Z3Jlc19mZHcvZXhwZWN0ZWQv cG9zdGdyZXNfZmR3Lm91dAppbmRleCBkODNmNmFlOGNiLi4wYWE3NTFlMDk5IDEwMDY0NAotLS0g YS9jb250cmliL3Bvc3RncmVzX2Zkdy9leHBlY3RlZC9wb3N0Z3Jlc19mZHcub3V0CisrKyBiL2Nv bnRyaWIvcG9zdGdyZXNfZmR3L2V4cGVjdGVkL3Bvc3RncmVzX2Zkdy5vdXQKQEAgLTI1Niw2ICsy NTYsMjAgQEAgU0VMRUNUIGMzLCBjNCBGUk9NIGZ0MSBPUkRFUiBCWSBjMywgYzEgTElNSVQgMTsg IC0tIHNob3VsZCB3b3JrIGFnYWluCiBBTkFMWVpFIGZ0MTsKIEFMVEVSIEZPUkVJR04gVEFCTEUg ZnQyIE9QVElPTlMgKHVzZV9yZW1vdGVfZXN0aW1hdGUgJ3RydWUnKTsKIC0tID09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K Ky0tIHRlc3Qgc3Vic2NyaXB0aW9uCistLSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitDUkVBVEUgU1VCU0NSSVBUSU9O IHJlZ3Jlc3NfcGdmZHdfc3Vic2NyaXB0aW9uIFNFUlZFUiB0ZXN0c2VydmVyMQorICBQVUJMSUNB VElPTiBwdWIxIFdJVEggKHNsb3RfbmFtZSA9IE5PTkUsIGNvbm5lY3QgPSBmYWxzZSk7CitXQVJO SU5HOiAgc3Vic2NyaXB0aW9uIHdhcyBjcmVhdGVkLCBidXQgaXMgbm90IGNvbm5lY3RlZAorSElO VDogIFRvIGluaXRpYXRlIHJlcGxpY2F0aW9uLCB5b3UgbXVzdCBtYW51YWxseSBjcmVhdGUgdGhl IHJlcGxpY2F0aW9uIHNsb3QsIGVuYWJsZSB0aGUgc3Vic2NyaXB0aW9uLCBhbmQgcmVmcmVzaCB0 aGUgc3Vic2NyaXB0aW9uLgorU0VMRUNUIHBnX2Nvbm5pbmZvX2Zyb21fc2VydmVyKCd0ZXN0c2Vy dmVyMScsIENVUlJFTlRfVVNFUiwgZmFsc2UpOworICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZ19jb25uaW5mb19mcm9tX3NlcnZlciAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQorIHNlcnZpY2UgPSAndmFsdWUnIGNvbm5lY3RfdGltZW91dCA9 ICd2YWx1ZScgZGJuYW1lID0gJ3ZhbHVlJyBob3N0ID0gJ3ZhbHVlJyBob3N0YWRkciA9ICd2YWx1 ZScgcG9ydCA9ICd2YWx1ZScgYXBwbGljYXRpb25fbmFtZSA9ICd2YWx1ZScga2VlcGFsaXZlcyA9 ICd2YWx1ZScga2VlcGFsaXZlc19pZGxlID0gJ3ZhbHVlJyBrZWVwYWxpdmVzX2ludGVydmFsID0g J3ZhbHVlJyB0Y3BfdXNlcl90aW1lb3V0ID0gJ3ZhbHVlJyBzc2xjb21wcmVzc2lvbiA9ICd2YWx1 ZScgc3NsbW9kZSA9ICd2YWx1ZScgc3NsY2VydCA9ICd2YWx1ZScgc3Nsa2V5ID0gJ3ZhbHVlJyBz c2xyb290Y2VydCA9ICd2YWx1ZScgc3NsY3JsID0gJ3ZhbHVlJyBrcmJzcnZuYW1lID0gJ3ZhbHVl JyBnc3NsaWIgPSAndmFsdWUnIGdzc2RlbGVnYXRpb24gPSAndmFsdWUnIHNzbHBhc3N3b3JkID0g J2R1bW15JyBzc2xrZXkgPSAndmFsdWUnIHNzbGNlcnQgPSAndmFsdWUnCisoMSByb3cpCisKK0RS T1AgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfcGdmZHdfc3Vic2NyaXB0aW9uOworLS0gPT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQogLS0gdGVzdCBlcnJvciBjYXNlIGZvciBjcmVhdGUgcHVibGljYXRpb24gb24gZm9yZWlnbiB0 YWJsZQogLS0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQogQ1JFQVRFIFBVQkxJQ0FUSU9OIHRlc3RwdWJfZnRibCBGT1Ig VEFCTEUgZnQxOyAgLS0gc2hvdWxkIGZhaWwKZGlmZiAtLWdpdCBhL2NvbnRyaWIvcG9zdGdyZXNf ZmR3L21lc29uLmJ1aWxkIGIvY29udHJpYi9wb3N0Z3Jlc19mZHcvbWVzb24uYnVpbGQKaW5kZXgg MmI4NmQ4YTZlZS4uY2Y3MDcxZGJmOCAxMDA2NDQKLS0tIGEvY29udHJpYi9wb3N0Z3Jlc19mZHcv bWVzb24uYnVpbGQKKysrIGIvY29udHJpYi9wb3N0Z3Jlc19mZHcvbWVzb24uYnVpbGQKQEAgLTM5 LDQgKzM5LDkgQEAgdGVzdHMgKz0gewogICAgIF0sCiAgICAgJ3JlZ3Jlc3NfYXJncyc6IFsnLS1k bHBhdGgnLCBtZXNvbi5idWlsZF9yb290KCkgLyAnc3JjL3Rlc3QvcmVncmVzcyddLAogICB9LAor ICAndGFwJzogeworICAgICd0ZXN0cyc6IFsKKyAgICAgICd0LzAxMF9zdWJzY3JpcHRpb24ucGwn LAorICAgIF0sCisgIH0sCiB9CmRpZmYgLS1naXQgYS9jb250cmliL3Bvc3RncmVzX2Zkdy9zcWwv cG9zdGdyZXNfZmR3LnNxbCBiL2NvbnRyaWIvcG9zdGdyZXNfZmR3L3NxbC9wb3N0Z3Jlc19mZHcu c3FsCmluZGV4IDkwYzhmYTRiNzAuLjNiMjcxNmI4MmUgMTAwNjQ0Ci0tLSBhL2NvbnRyaWIvcG9z dGdyZXNfZmR3L3NxbC9wb3N0Z3Jlc19mZHcuc3FsCisrKyBiL2NvbnRyaWIvcG9zdGdyZXNfZmR3 L3NxbC9wb3N0Z3Jlc19mZHcuc3FsCkBAIC0yNDgsNiArMjQ4LDE0IEBAIFNFTEVDVCBjMywgYzQg RlJPTSBmdDEgT1JERVIgQlkgYzMsIGMxIExJTUlUIDE7ICAtLSBzaG91bGQgd29yayBhZ2Fpbgog QU5BTFlaRSBmdDE7CiBBTFRFUiBGT1JFSUdOIFRBQkxFIGZ0MiBPUFRJT05TICh1c2VfcmVtb3Rl X2VzdGltYXRlICd0cnVlJyk7CiAKKy0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKy0tIHRlc3Qgc3Vic2NyaXB0aW9u CistLSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09CitDUkVBVEUgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfcGdmZHdfc3Vic2Ny aXB0aW9uIFNFUlZFUiB0ZXN0c2VydmVyMQorICBQVUJMSUNBVElPTiBwdWIxIFdJVEggKHNsb3Rf bmFtZSA9IE5PTkUsIGNvbm5lY3QgPSBmYWxzZSk7CitTRUxFQ1QgcGdfY29ubmluZm9fZnJvbV9z ZXJ2ZXIoJ3Rlc3RzZXJ2ZXIxJywgQ1VSUkVOVF9VU0VSLCBmYWxzZSk7CitEUk9QIFNVQlNDUklQ VElPTiByZWdyZXNzX3BnZmR3X3N1YnNjcmlwdGlvbjsKKwogLS0gPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogLS0gdGVz dCBlcnJvciBjYXNlIGZvciBjcmVhdGUgcHVibGljYXRpb24gb24gZm9yZWlnbiB0YWJsZQogLS0g PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQpkaWZmIC0tZ2l0IGEvY29udHJpYi9wb3N0Z3Jlc19mZHcvdC8wMTBfc3Vic2Ny aXB0aW9uLnBsIGIvY29udHJpYi9wb3N0Z3Jlc19mZHcvdC8wMTBfc3Vic2NyaXB0aW9uLnBsCm5l dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAuLmRhYTBiOWVkZDIKLS0tIC9kZXYv bnVsbAorKysgYi9jb250cmliL3Bvc3RncmVzX2Zkdy90LzAxMF9zdWJzY3JpcHRpb24ucGwKQEAg LTAsMCArMSw2OCBAQAorCisjIENvcHlyaWdodCAoYykgMjAyMS0yMDI0LCBQb3N0Z3JlU1FMIEds b2JhbCBEZXZlbG9wbWVudCBHcm91cAorCisjIEJhc2ljIGxvZ2ljYWwgcmVwbGljYXRpb24gdGVz dAordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5ncyBGQVRBTCA9PiAnYWxsJzsKK3VzZSBQb3N0Z3Jl U1FMOjpUZXN0OjpDbHVzdGVyOwordXNlIFBvc3RncmVTUUw6OlRlc3Q6OlV0aWxzOwordXNlIFRl c3Q6Ok1vcmU7CisKKyMgSW5pdGlhbGl6ZSBwdWJsaXNoZXIgbm9kZQorbXkgJG5vZGVfcHVibGlz aGVyID0gUG9zdGdyZVNRTDo6VGVzdDo6Q2x1c3Rlci0+bmV3KCdwdWJsaXNoZXInKTsKKyRub2Rl X3B1Ymxpc2hlci0+aW5pdChhbGxvd3Nfc3RyZWFtaW5nID0+ICdsb2dpY2FsJyk7Ciskbm9kZV9w dWJsaXNoZXItPnN0YXJ0OworCisjIENyZWF0ZSBzdWJzY3JpYmVyIG5vZGUKK215ICRub2RlX3N1 YnNjcmliZXIgPSBQb3N0Z3JlU1FMOjpUZXN0OjpDbHVzdGVyLT5uZXcoJ3N1YnNjcmliZXInKTsK KyRub2RlX3N1YnNjcmliZXItPmluaXQ7Ciskbm9kZV9zdWJzY3JpYmVyLT5zdGFydDsKKworIyBD cmVhdGUgc29tZSBwcmVleGlzdGluZyBjb250ZW50IG9uIHB1Ymxpc2hlcgorJG5vZGVfcHVibGlz aGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKKwkiQ1JFQVRFIFRBQkxFIHRhYl9pbnMgQVMgU0VM RUNUIGdlbmVyYXRlX3NlcmllcygxLDEwMDIpIEFTIGEiKTsKKworIyBSZXBsaWNhdGUgdGhlIGNo YW5nZXMgd2l0aG91dCBjb2x1bW5zCiskbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgncG9zdGdy ZXMnLCAiQ1JFQVRFIFRBQkxFIHRhYl9ub19jb2woKSIpOworJG5vZGVfcHVibGlzaGVyLT5zYWZl X3BzcWwoJ3Bvc3RncmVzJywKKwkiSU5TRVJUIElOVE8gdGFiX25vX2NvbCBkZWZhdWx0IFZBTFVF UyIpOworCisjIFNldHVwIHN0cnVjdHVyZSBvbiBzdWJzY3JpYmVyCiskbm9kZV9zdWJzY3JpYmVy LT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywgIkNSRUFURSBFWFRFTlNJT04gcG9zdGdyZXNfZmR3Iik7 Ciskbm9kZV9zdWJzY3JpYmVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywgIkNSRUFURSBUQUJMRSB0 YWJfaW5zIChhIGludCkiKTsKKworIyBTZXR1cCBsb2dpY2FsIHJlcGxpY2F0aW9uCitteSAkcHVi bGlzaGVyX2Nvbm5zdHIgPSAkbm9kZV9wdWJsaXNoZXItPmNvbm5zdHIgLiAnIGRibmFtZT1wb3N0 Z3Jlcyc7Ciskbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLCAiQ1JFQVRFIFBV QkxJQ0FUSU9OIHRhcF9wdWIgRk9SIFRBQkxFIHRhYl9pbnMiKTsKKworbXkgJHB1Ymxpc2hlcl9o b3N0ID0gJG5vZGVfcHVibGlzaGVyLT5ob3N0OworbXkgJHB1Ymxpc2hlcl9wb3J0ID0gJG5vZGVf cHVibGlzaGVyLT5wb3J0OworJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3Jlcycs CisJIkNSRUFURSBTRVJWRVIgdGFwX3NlcnZlciBGT1JFSUdOIERBVEEgV1JBUFBFUiBwb3N0Z3Jl c19mZHcgT1BUSU9OUyAoaG9zdCAnJHB1Ymxpc2hlcl9ob3N0JywgcG9ydCAnJHB1Ymxpc2hlcl9w b3J0JywgZGJuYW1lICdwb3N0Z3JlcycpIgorKTsKKworJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9w c3FsKCdwb3N0Z3JlcycsCisJIkNSRUFURSBVU0VSIE1BUFBJTkcgRk9SIFBVQkxJQyBTRVJWRVIg dGFwX3NlcnZlciIKKyk7CisKKyRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMn LAorCSJDUkVBVEUgU1VCU0NSSVBUSU9OIHRhcF9zdWIgU0VSVkVSIHRhcF9zZXJ2ZXIgUFVCTElD QVRJT04gdGFwX3B1YiBXSVRIIChwYXNzd29yZF9yZXF1aXJlZD1mYWxzZSkiCispOworCisjIFdh aXQgZm9yIGluaXRpYWwgdGFibGUgc3luYyB0byBmaW5pc2gKKyRub2RlX3N1YnNjcmliZXItPndh aXRfZm9yX3N1YnNjcmlwdGlvbl9zeW5jKCRub2RlX3B1Ymxpc2hlciwgJ3RhcF9zdWInKTsKKwor bXkgJHJlc3VsdCA9CisgICRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLCAi U0VMRUNUIGNvdW50KCopIEZST00gdGFiX2lucyIpOworaXMoJHJlc3VsdCwgcXEoMTAwMiksICdj aGVjayBpbml0aWFsIGRhdGEgd2FzIGNvcGllZCB0byBzdWJzY3JpYmVyJyk7CisKKyRub2RlX3B1 Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCisJIklOU0VSVCBJTlRPIHRhYl9pbnMgU0VM RUNUIGdlbmVyYXRlX3NlcmllcygxLDUwKSIpOworCiskbm9kZV9wdWJsaXNoZXItPndhaXRfZm9y X2NhdGNodXAoJ3RhcF9zdWInKTsKKworJHJlc3VsdCA9CisgICRub2RlX3N1YnNjcmliZXItPnNh ZmVfcHNxbCgncG9zdGdyZXMnLCAiU0VMRUNUIGNvdW50KCopIEZST00gdGFiX2lucyIpOworaXMo JHJlc3VsdCwgcXEoMTA1MiksICdjaGVjayBpbml0aWFsIGRhdGEgd2FzIGNvcGllZCB0byBzdWJz Y3JpYmVyJyk7CisKK2RvbmVfdGVzdGluZygpOwpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL3Jl Zi9hbHRlcl9zdWJzY3JpcHRpb24uc2dtbCBiL2RvYy9zcmMvc2dtbC9yZWYvYWx0ZXJfc3Vic2Ny aXB0aW9uLnNnbWwKaW5kZXggNmQzNmZmMGRjOS4uNmQyMTkxNDVhOSAxMDA2NDQKLS0tIGEvZG9j L3NyYy9zZ21sL3JlZi9hbHRlcl9zdWJzY3JpcHRpb24uc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwv cmVmL2FsdGVyX3N1YnNjcmlwdGlvbi5zZ21sCkBAIC0yMSw2ICsyMSw3IEBAIFBvc3RncmVTUUwg ZG9jdW1lbnRhdGlvbgogCiAgPHJlZnN5bm9wc2lzZGl2PgogPHN5bm9wc2lzPgorQUxURVIgU1VC U0NSSVBUSU9OIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5uYW1lPC9yZXBsYWNlYWJs ZT4gU0VSVkVSIDxyZXBsYWNlYWJsZT5zZXJ2ZXJuYW1lPC9yZXBsYWNlYWJsZT4KIEFMVEVSIFNV QlNDUklQVElPTiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+bmFtZTwvcmVwbGFjZWFi bGU+IENPTk5FQ1RJT04gJzxyZXBsYWNlYWJsZT5jb25uaW5mbzwvcmVwbGFjZWFibGU+JwogQUxU RVIgU1VCU0NSSVBUSU9OIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5uYW1lPC9yZXBs YWNlYWJsZT4gU0VUIFBVQkxJQ0FUSU9OIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5w dWJsaWNhdGlvbl9uYW1lPC9yZXBsYWNlYWJsZT4gWywgLi4uXSBbIFdJVEggKCA8cmVwbGFjZWFi bGUgY2xhc3M9InBhcmFtZXRlciI+cHVibGljYXRpb25fb3B0aW9uPC9yZXBsYWNlYWJsZT4gWz0g PHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnZhbHVlPC9yZXBsYWNlYWJsZT5dIFssIC4u LiBdICkgXQogQUxURVIgU1VCU0NSSVBUSU9OIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVy Ij5uYW1lPC9yZXBsYWNlYWJsZT4gQUREIFBVQkxJQ0FUSU9OIDxyZXBsYWNlYWJsZSBjbGFzcz0i cGFyYW1ldGVyIj5wdWJsaWNhdGlvbl9uYW1lPC9yZXBsYWNlYWJsZT4gWywgLi4uXSBbIFdJVEgg KCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cHVibGljYXRpb25fb3B0aW9uPC9yZXBs YWNlYWJsZT4gWz0gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnZhbHVlPC9yZXBsYWNl YWJsZT5dIFssIC4uLiBdICkgXQpAQCAtOTQsMTMgKzk1LDI0IEBAIEFMVEVSIFNVQlNDUklQVElP TiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+bmFtZTwvcmVwbGFjZWFibGU+IFJFTkFN RSBUTyA8CiAgICAgPC9saXN0aXRlbT4KICAgIDwvdmFybGlzdGVudHJ5PgogCisgICA8dmFybGlz dGVudHJ5IGlkPSJzcWwtYWx0ZXJzdWJzY3JpcHRpb24tcGFyYW1zLXNlcnZlciI+CisgICAgPHRl cm0+PGxpdGVyYWw+U0VSVkVSIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5zZXJ2ZXJu YW1lPC9yZXBsYWNlYWJsZT48L2xpdGVyYWw+PC90ZXJtPgorICAgIDxsaXN0aXRlbT4KKyAgICAg PHBhcmE+CisgICAgICBUaGlzIGNsYXVzZSByZXBsYWNlcyB0aGUgZm9yZWlnbiBzZXJ2ZXIgb3Ig Y29ubmVjdGlvbiBzdHJpbmcgb3JpZ2luYWxseQorICAgICAgc2V0IGJ5IDx4cmVmIGxpbmtlbmQ9 InNxbC1jcmVhdGVzdWJzY3JpcHRpb24iLz4gd2l0aCB0aGUgZm9yZWlnbiBzZXJ2ZXIKKyAgICAg IDxyZXBsYWNlYWJsZT5zZXJ2ZXJuYW1lPC9yZXBsYWNlYWJsZT4uCisgICAgIDwvcGFyYT4KKyAg ICA8L2xpc3RpdGVtPgorICAgPC92YXJsaXN0ZW50cnk+CisKICAgIDx2YXJsaXN0ZW50cnkgaWQ9 InNxbC1hbHRlcnN1YnNjcmlwdGlvbi1wYXJhbXMtY29ubmVjdGlvbiI+CiAgICAgPHRlcm0+PGxp dGVyYWw+Q09OTkVDVElPTiAnPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbm5pbmZv PC9yZXBsYWNlYWJsZT4nPC9saXRlcmFsPjwvdGVybT4KICAgICA8bGlzdGl0ZW0+CiAgICAgIDxw YXJhPgotICAgICAgVGhpcyBjbGF1c2UgcmVwbGFjZXMgdGhlIGNvbm5lY3Rpb24gc3RyaW5nIG9y aWdpbmFsbHkgc2V0IGJ5Ci0gICAgICA8eHJlZiBsaW5rZW5kPSJzcWwtY3JlYXRlc3Vic2NyaXB0 aW9uIi8+LiAgU2VlIHRoZXJlIGZvciBtb3JlCi0gICAgICBpbmZvcm1hdGlvbi4KKyAgICAgIFRo aXMgY2xhdXNlIHJlcGxhY2VzIHRoZSBmb3JlaWduIHNlcnZlciBvciBjb25uZWN0aW9uIHN0cmlu ZyBvcmlnaW5hbGx5CisgICAgICBzZXQgYnkgPHhyZWYgbGlua2VuZD0ic3FsLWNyZWF0ZXN1YnNj cmlwdGlvbiIvPiB3aXRoIHRoZSBjb25uZWN0aW9uCisgICAgICBzdHJpbmcgPHJlcGxhY2VhYmxl PmNvbm5pbmZvPC9yZXBsYWNlYWJsZT4uCiAgICAgIDwvcGFyYT4KICAgICA8L2xpc3RpdGVtPgog ICAgPC92YXJsaXN0ZW50cnk+CmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvcmVmL2NyZWF0ZV9z dWJzY3JpcHRpb24uc2dtbCBiL2RvYy9zcmMvc2dtbC9yZWYvY3JlYXRlX3N1YnNjcmlwdGlvbi5z Z21sCmluZGV4IGM3YWNlOTIyZjkuLjI0NTM4YmFmOTggMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dt bC9yZWYvY3JlYXRlX3N1YnNjcmlwdGlvbi5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9yZWYvY3Jl YXRlX3N1YnNjcmlwdGlvbi5zZ21sCkBAIC0yMiw3ICsyMiw3IEBAIFBvc3RncmVTUUwgZG9jdW1l bnRhdGlvbgogIDxyZWZzeW5vcHNpc2Rpdj4KIDxzeW5vcHNpcz4KIENSRUFURSBTVUJTQ1JJUFRJ T04gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnN1YnNjcmlwdGlvbl9uYW1lPC9yZXBs YWNlYWJsZT4KLSAgICBDT05ORUNUSU9OICc8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ Y29ubmluZm88L3JlcGxhY2VhYmxlPicKKyAgICB7IFNFUlZFUiA8cmVwbGFjZWFibGUgY2xhc3M9 InBhcmFtZXRlciI+c2VydmVybmFtZTwvcmVwbGFjZWFibGU+IHwgQ09OTkVDVElPTiAnPHJlcGxh Y2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbm5pbmZvPC9yZXBsYWNlYWJsZT4nIH0KICAgICBQ VUJMSUNBVElPTiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cHVibGljYXRpb25fbmFt ZTwvcmVwbGFjZWFibGU+IFssIC4uLl0KICAgICBbIFdJVEggKCA8cmVwbGFjZWFibGUgY2xhc3M9 InBhcmFtZXRlciI+c3Vic2NyaXB0aW9uX3BhcmFtZXRlcjwvcmVwbGFjZWFibGU+IFs9IDxyZXBs YWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj52YWx1ZTwvcmVwbGFjZWFibGU+XSBbLCAuLi4gXSAp IF0KIDwvc3lub3BzaXM+CkBAIC03Nyw2ICs3NywxNSBAQCBDUkVBVEUgU1VCU0NSSVBUSU9OIDxy ZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5zdWJzY3JpcHRpb25fbmFtZTwvcmVwbGFjZWFi bAogICAgIDwvbGlzdGl0ZW0+CiAgICA8L3Zhcmxpc3RlbnRyeT4KIAorICAgPHZhcmxpc3RlbnRy eSBpZD0ic3FsLWNyZWF0ZXN1YnNjcmlwdGlvbi1wYXJhbXMtc2VydmVyIj4KKyAgICA8dGVybT48 bGl0ZXJhbD5TRVJWRVIgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnNlcnZlcm5hbWU8 L3JlcGxhY2VhYmxlPjwvbGl0ZXJhbD48L3Rlcm0+CisgICAgPGxpc3RpdGVtPgorICAgICA8cGFy YT4KKyAgICAgIEEgZm9yZWlnbiBzZXJ2ZXIgdG8gdXNlIGZvciB0aGUgY29ubmVjdGlvbi4KKyAg ICAgPC9wYXJhPgorICAgIDwvbGlzdGl0ZW0+CisgICA8L3Zhcmxpc3RlbnRyeT4KKwogICAgPHZh cmxpc3RlbnRyeSBpZD0ic3FsLWNyZWF0ZXN1YnNjcmlwdGlvbi1wYXJhbXMtY29ubmVjdGlvbiI+ CiAgICAgPHRlcm0+PGxpdGVyYWw+Q09OTkVDVElPTiAnPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJh bWV0ZXIiPmNvbm5pbmZvPC9yZXBsYWNlYWJsZT4nPC9saXRlcmFsPjwvdGVybT4KICAgICA8bGlz dGl0ZW0+CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jYXRhbG9nL3BnX3N1YnNjcmlwdGlvbi5j IGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9wZ19zdWJzY3JpcHRpb24uYwppbmRleCBjNTE2YzI1YWM3 Li41YTJlYWE4MDNkIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jYXRhbG9nL3BnX3N1YnNjcmlw dGlvbi5jCisrKyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvcGdfc3Vic2NyaXB0aW9uLmMKQEAgLTIw LDEyICsyMCwxNSBAQAogI2luY2x1ZGUgImFjY2Vzcy90YWJsZWFtLmgiCiAjaW5jbHVkZSAiYWNj ZXNzL3hhY3QuaCIKICNpbmNsdWRlICJjYXRhbG9nL2luZGV4aW5nLmgiCisjaW5jbHVkZSAiY2F0 YWxvZy9wZ19mb3JlaWduX3NlcnZlci5oIgogI2luY2x1ZGUgImNhdGFsb2cvcGdfc3Vic2NyaXB0 aW9uLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19zdWJzY3JpcHRpb25fcmVsLmgiCiAjaW5jbHVk ZSAiY2F0YWxvZy9wZ190eXBlLmgiCisjaW5jbHVkZSAiZm9yZWlnbi9mb3JlaWduLmgiCiAjaW5j bHVkZSAibWlzY2FkbWluLmgiCiAjaW5jbHVkZSAibm9kZXMvbWFrZWZ1bmNzLmgiCiAjaW5jbHVk ZSAic3RvcmFnZS9sbWdyLmgiCisjaW5jbHVkZSAidXRpbHMvYWNsLmgiCiAjaW5jbHVkZSAidXRp bHMvYXJyYXkuaCIKICNpbmNsdWRlICJ1dGlscy9idWlsdGlucy5oIgogI2luY2x1ZGUgInV0aWxz L2ZtZ3JvaWRzLmgiCkBAIC00MCw3ICs0Myw3IEBAIHN0YXRpYyBMaXN0ICp0ZXh0YXJyYXlfdG9f c3RyaW5nbGlzdChBcnJheVR5cGUgKnRleHRhcnJheSk7CiAgKiBGZXRjaCB0aGUgc3Vic2NyaXB0 aW9uIGZyb20gdGhlIHN5c2NhY2hlLgogICovCiBTdWJzY3JpcHRpb24gKgotR2V0U3Vic2NyaXB0 aW9uKE9pZCBzdWJpZCwgYm9vbCBtaXNzaW5nX29rKQorR2V0U3Vic2NyaXB0aW9uKE9pZCBzdWJp ZCwgYm9vbCBtaXNzaW5nX29rLCBib29sIGFjbGNoZWNrKQogewogCUhlYXBUdXBsZQl0dXA7CiAJ U3Vic2NyaXB0aW9uICpzdWI7CkBAIC03NSwxMCArNzgsMzYgQEAgR2V0U3Vic2NyaXB0aW9uKE9p ZCBzdWJpZCwgYm9vbCBtaXNzaW5nX29rKQogCXN1Yi0+cnVuYXNvd25lciA9IHN1YmZvcm0tPnN1 YnJ1bmFzb3duZXI7CiAKIAkvKiBHZXQgY29ubmluZm8gKi8KLQlkYXR1bSA9IFN5c0NhY2hlR2V0 QXR0ck5vdE51bGwoU1VCU0NSSVBUSU9OT0lELAotCQkJCQkJCQkgICB0dXAsCi0JCQkJCQkJCSAg IEFudW1fcGdfc3Vic2NyaXB0aW9uX3N1YmNvbm5pbmZvKTsKLQlzdWItPmNvbm5pbmZvID0gVGV4 dERhdHVtR2V0Q1N0cmluZyhkYXR1bSk7CisJaWYgKE9pZElzVmFsaWQoc3ViZm9ybS0+c3Vic2Vy dmVyKSkKKwl7CisJCUFjbFJlc3VsdAlhY2xyZXN1bHQ7CisKKwkJLyogcmVjaGVjayBBQ0wgaWYg cmVxdWVzdGVkICovCisJCWlmIChhY2xjaGVjaykKKwkJeworCQkJYWNscmVzdWx0ID0gb2JqZWN0 X2FjbGNoZWNrKEZvcmVpZ25TZXJ2ZXJSZWxhdGlvbklkLAorCQkJCQkJCQkJCXN1YmZvcm0tPnN1 YnNlcnZlciwKKwkJCQkJCQkJCQlzdWJmb3JtLT5zdWJvd25lciwgQUNMX1VTQUdFKTsKKworCQkJ aWYgKGFjbHJlc3VsdCAhPSBBQ0xDSEVDS19PSykKKwkJCQllcmVwb3J0KEVSUk9SLAorCQkJCQkJ KGVycmNvZGUoRVJSQ09ERV9JTlNVRkZJQ0lFTlRfUFJJVklMRUdFKSwKKwkJCQkJCSBlcnJtc2co InN1YnNjcmlwdGlvbiBvd25lciBcIiVzXCIgZG9lcyBub3QgaGF2ZSBwZXJtaXNzaW9uIG9uIGZv cmVpZ24gc2VydmVyIFwiJXNcIiIsCisJCQkJCQkJCUdldFVzZXJOYW1lRnJvbUlkKHN1YmZvcm0t PnN1Ym93bmVyLCBmYWxzZSksCisJCQkJCQkJCUZvcmVpZ25TZXJ2ZXJOYW1lKHN1YmZvcm0tPnN1 YnNlcnZlcikpKSk7CisJCX0KKworCQlzdWItPmNvbm5pbmZvID0gRm9yZWlnblNlcnZlckNvbm5l Y3Rpb25TdHJpbmcoc3ViZm9ybS0+c3Vib3duZXIsCisJCQkJCQkJCQkJCQkJICBzdWJmb3JtLT5z dWJzZXJ2ZXIsCisJCQkJCQkJCQkJCQkJICB0cnVlKTsKKwl9CisJZWxzZQorCXsKKwkJZGF0dW0g PSBTeXNDYWNoZUdldEF0dHJOb3ROdWxsKFNVQlNDUklQVElPTk9JRCwKKwkJCQkJCQkJCSAgIHR1 cCwKKwkJCQkJCQkJCSAgIEFudW1fcGdfc3Vic2NyaXB0aW9uX3N1YmNvbm5pbmZvKTsKKwkJc3Vi LT5jb25uaW5mbyA9IFRleHREYXR1bUdldENTdHJpbmcoZGF0dW0pOworCX0KIAogCS8qIEdldCBz bG90bmFtZSAqLwogCWRhdHVtID0gU3lzQ2FjaGVHZXRBdHRyKFNVQlNDUklQVElPTk9JRCwKZGlm ZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3N1YnNjcmlwdGlvbmNtZHMuYyBiL3NyYy9i YWNrZW5kL2NvbW1hbmRzL3N1YnNjcmlwdGlvbmNtZHMuYwppbmRleCA3NWU2Y2Q4YWUzLi5iZWM2 NjVmZDI5IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jb21tYW5kcy9zdWJzY3JpcHRpb25jbWRz LmMKKysrIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvc3Vic2NyaXB0aW9uY21kcy5jCkBAIC0yNSwx NCArMjUsMTcgQEAKICNpbmNsdWRlICJjYXRhbG9nL29iamVjdGFkZHJlc3MuaCIKICNpbmNsdWRl ICJjYXRhbG9nL3BnX2F1dGhpZF9kLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19kYXRhYmFzZV9k LmgiCisjaW5jbHVkZSAiY2F0YWxvZy9wZ19mb3JlaWduX3NlcnZlci5oIgogI2luY2x1ZGUgImNh dGFsb2cvcGdfc3Vic2NyaXB0aW9uLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19zdWJzY3JpcHRp b25fcmVsLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ190eXBlLmgiCisjaW5jbHVkZSAiY2F0YWxv Zy9wZ191c2VyX21hcHBpbmcuaCIKICNpbmNsdWRlICJjb21tYW5kcy9kYmNvbW1hbmRzLmgiCiAj aW5jbHVkZSAiY29tbWFuZHMvZGVmcmVtLmgiCiAjaW5jbHVkZSAiY29tbWFuZHMvZXZlbnRfdHJp Z2dlci5oIgogI2luY2x1ZGUgImNvbW1hbmRzL3N1YnNjcmlwdGlvbmNtZHMuaCIKICNpbmNsdWRl ICJleGVjdXRvci9leGVjdXRvci5oIgorI2luY2x1ZGUgImZvcmVpZ24vZm9yZWlnbi5oIgogI2lu Y2x1ZGUgIm1pc2NhZG1pbi5oIgogI2luY2x1ZGUgIm5vZGVzL21ha2VmdW5jcy5oIgogI2luY2x1 ZGUgInBnc3RhdC5oIgpAQCAtNTc0LDYgKzU3Nyw4IEBAIENyZWF0ZVN1YnNjcmlwdGlvbihQYXJz ZVN0YXRlICpwc3RhdGUsIENyZWF0ZVN1YnNjcmlwdGlvblN0bXQgKnN0bXQsCiAJRGF0dW0JCXZh bHVlc1tOYXR0c19wZ19zdWJzY3JpcHRpb25dOwogCU9pZAkJCW93bmVyID0gR2V0VXNlcklkKCk7 CiAJSGVhcFR1cGxlCXR1cDsKKwlPaWQJCQlzZXJ2ZXJpZDsKKwlPaWQJCQl1bWlkOwogCWNoYXIJ ICAgKmNvbm5pbmZvOwogCWNoYXIJCW9yaWdpbm5hbWVbTkFNRURBVEFMRU5dOwogCUxpc3QJICAg KnB1YmxpY2F0aW9uczsKQEAgLTY2NiwxNSArNjcxLDQyIEBAIENyZWF0ZVN1YnNjcmlwdGlvbihQ YXJzZVN0YXRlICpwc3RhdGUsIENyZWF0ZVN1YnNjcmlwdGlvblN0bXQgKnN0bXQsCiAJaWYgKG9w dHMuc3luY2hyb25vdXNfY29tbWl0ID09IE5VTEwpCiAJCW9wdHMuc3luY2hyb25vdXNfY29tbWl0 ID0gIm9mZiI7CiAKLQljb25uaW5mbyA9IHN0bXQtPmNvbm5pbmZvOwotCXB1YmxpY2F0aW9ucyA9 IHN0bXQtPnB1YmxpY2F0aW9uOwotCiAJLyogTG9hZCB0aGUgbGlicmFyeSBwcm92aWRpbmcgdXMg bGlicHEgY2FsbHMuICovCiAJbG9hZF9maWxlKCJsaWJwcXdhbHJlY2VpdmVyIiwgZmFsc2UpOwog CisJaWYgKHN0bXQtPnNlcnZlcm5hbWUpCisJeworCQlGb3JlaWduU2VydmVyCSpzZXJ2ZXI7CisJ CVVzZXJNYXBwaW5nCQkqdW07CisKKwkJQXNzZXJ0KCFzdG10LT5jb25uaW5mbyk7CisJCWNvbm5p bmZvID0gTlVMTDsKKworCQlzZXJ2ZXIgPSBHZXRGb3JlaWduU2VydmVyQnlOYW1lKHN0bXQtPnNl cnZlcm5hbWUsIGZhbHNlKTsKKwkJYWNscmVzdWx0ID0gb2JqZWN0X2FjbGNoZWNrKEZvcmVpZ25T ZXJ2ZXJSZWxhdGlvbklkLCBzZXJ2ZXItPnNlcnZlcmlkLCBvd25lciwgQUNMX1VTQUdFKTsKKwkJ aWYgKGFjbHJlc3VsdCAhPSBBQ0xDSEVDS19PSykKKwkJCWFjbGNoZWNrX2Vycm9yKGFjbHJlc3Vs dCwgT0JKRUNUX0ZPUkVJR05fU0VSVkVSLCBzZXJ2ZXItPnNlcnZlcm5hbWUpOworCisJCXVtID0g R2V0VXNlck1hcHBpbmcob3duZXIsIHNlcnZlci0+c2VydmVyaWQpOworCisJCXNlcnZlcmlkID0g c2VydmVyLT5zZXJ2ZXJpZDsKKwkJdW1pZCA9IHVtLT51bWlkOworCQljb25uaW5mbyA9IEZvcmVp Z25TZXJ2ZXJDb25uZWN0aW9uU3RyaW5nKG93bmVyLCBzZXJ2ZXJpZCwgdHJ1ZSk7CisJfQorCWVs c2UKKwl7CisJCUFzc2VydChzdG10LT5jb25uaW5mbyk7CisKKwkJc2VydmVyaWQgPSBJbnZhbGlk T2lkOworCQl1bWlkID0gSW52YWxpZE9pZDsKKwkJY29ubmluZm8gPSBzdG10LT5jb25uaW5mbzsK Kwl9CisKIAkvKiBDaGVjayB0aGUgY29ubmVjdGlvbiBpbmZvIHN0cmluZy4gKi8KIAl3YWxyY3Zf Y2hlY2tfY29ubmluZm8oY29ubmluZm8sIG9wdHMucGFzc3dvcmRyZXF1aXJlZCAmJiAhc3VwZXJ1 c2VyKCkpOwogCisJcHVibGljYXRpb25zID0gc3RtdC0+cHVibGljYXRpb247CisKIAkvKiBFdmVy eXRoaW5nIG9rLCBmb3JtIGEgbmV3IHR1cGxlLiAqLwogCW1lbXNldCh2YWx1ZXMsIDAsIHNpemVv Zih2YWx1ZXMpKTsKIAltZW1zZXQobnVsbHMsIGZhbHNlLCBzaXplb2YobnVsbHMpKTsKQEAgLTY5 Nyw4ICs3MjksMTIgQEAgQ3JlYXRlU3Vic2NyaXB0aW9uKFBhcnNlU3RhdGUgKnBzdGF0ZSwgQ3Jl YXRlU3Vic2NyaXB0aW9uU3RtdCAqc3RtdCwKIAl2YWx1ZXNbQW51bV9wZ19zdWJzY3JpcHRpb25f c3ViZGlzYWJsZW9uZXJyIC0gMV0gPSBCb29sR2V0RGF0dW0ob3B0cy5kaXNhYmxlb25lcnIpOwog CXZhbHVlc1tBbnVtX3BnX3N1YnNjcmlwdGlvbl9zdWJwYXNzd29yZHJlcXVpcmVkIC0gMV0gPSBC b29sR2V0RGF0dW0ob3B0cy5wYXNzd29yZHJlcXVpcmVkKTsKIAl2YWx1ZXNbQW51bV9wZ19zdWJz Y3JpcHRpb25fc3VicnVuYXNvd25lciAtIDFdID0gQm9vbEdldERhdHVtKG9wdHMucnVuYXNvd25l cik7Ci0JdmFsdWVzW0FudW1fcGdfc3Vic2NyaXB0aW9uX3N1YmNvbm5pbmZvIC0gMV0gPQotCQlD U3RyaW5nR2V0VGV4dERhdHVtKGNvbm5pbmZvKTsKKwl2YWx1ZXNbQW51bV9wZ19zdWJzY3JpcHRp b25fc3Vic2VydmVyIC0gMV0gPSBzZXJ2ZXJpZDsKKwlpZiAoIU9pZElzVmFsaWQoc2VydmVyaWQp KQorCQl2YWx1ZXNbQW51bV9wZ19zdWJzY3JpcHRpb25fc3ViY29ubmluZm8gLSAxXSA9CisJCQlD U3RyaW5nR2V0VGV4dERhdHVtKGNvbm5pbmZvKTsKKwllbHNlCisJCW51bGxzW0FudW1fcGdfc3Vi c2NyaXB0aW9uX3N1YmNvbm5pbmZvIC0gMV0gPSB0cnVlOwogCWlmIChvcHRzLnNsb3RfbmFtZSkK IAkJdmFsdWVzW0FudW1fcGdfc3Vic2NyaXB0aW9uX3N1YnNsb3RuYW1lIC0gMV0gPQogCQkJRGly ZWN0RnVuY3Rpb25DYWxsMShuYW1laW4sIENTdHJpbmdHZXREYXR1bShvcHRzLnNsb3RfbmFtZSkp OwpAQCAtNzE5LDYgKzc1NSwyMCBAQCBDcmVhdGVTdWJzY3JpcHRpb24oUGFyc2VTdGF0ZSAqcHN0 YXRlLCBDcmVhdGVTdWJzY3JpcHRpb25TdG10ICpzdG10LAogCiAJcmVjb3JkRGVwZW5kZW5jeU9u T3duZXIoU3Vic2NyaXB0aW9uUmVsYXRpb25JZCwgc3ViaWQsIG93bmVyKTsKIAorCU9iamVjdEFk ZHJlc3NTZXQobXlzZWxmLCBTdWJzY3JpcHRpb25SZWxhdGlvbklkLCBzdWJpZCk7CisKKwlpZiAo c3RtdC0+c2VydmVybmFtZSkKKwl7CisJCU9iamVjdEFkZHJlc3MgcmVmZXJlbmNlZDsKKwkJQXNz ZXJ0KE9pZElzVmFsaWQoc2VydmVyaWQpICYmIE9pZElzVmFsaWQodW1pZCkpOworCisJCU9iamVj dEFkZHJlc3NTZXQocmVmZXJlbmNlZCwgRm9yZWlnblNlcnZlclJlbGF0aW9uSWQsIHNlcnZlcmlk KTsKKwkJcmVjb3JkRGVwZW5kZW5jeU9uKCZteXNlbGYsICZyZWZlcmVuY2VkLCBERVBFTkRFTkNZ X05PUk1BTCk7CisKKwkJT2JqZWN0QWRkcmVzc1NldChyZWZlcmVuY2VkLCBVc2VyTWFwcGluZ1Jl bGF0aW9uSWQsIHVtaWQpOworCQlyZWNvcmREZXBlbmRlbmN5T24oJm15c2VsZiwgJnJlZmVyZW5j ZWQsIERFUEVOREVOQ1lfTk9STUFMKTsKKwl9CisKIAlSZXBsaWNhdGlvbk9yaWdpbk5hbWVGb3JM b2dpY2FsUmVwKHN1YmlkLCBJbnZhbGlkT2lkLCBvcmlnaW5uYW1lLCBzaXplb2Yob3JpZ2lubmFt ZSkpOwogCXJlcGxvcmlnaW5fY3JlYXRlKG9yaWdpbm5hbWUpOwogCkBAIC04MzUsOCArODg1LDYg QEAgQ3JlYXRlU3Vic2NyaXB0aW9uKFBhcnNlU3RhdGUgKnBzdGF0ZSwgQ3JlYXRlU3Vic2NyaXB0 aW9uU3RtdCAqc3RtdCwKIAlpZiAob3B0cy5lbmFibGVkKQogCQlBcHBseUxhdW5jaGVyV2FrZXVw QXRDb21taXQoKTsKIAotCU9iamVjdEFkZHJlc3NTZXQobXlzZWxmLCBTdWJzY3JpcHRpb25SZWxh dGlvbklkLCBzdWJpZCk7Ci0KIAlJbnZva2VPYmplY3RQb3N0Q3JlYXRlSG9vayhTdWJzY3JpcHRp b25SZWxhdGlvbklkLCBzdWJpZCwgMCk7CiAKIAlyZXR1cm4gbXlzZWxmOwpAQCAtMTEwNCw3ICsx MTUyLDE0IEBAIEFsdGVyU3Vic2NyaXB0aW9uKFBhcnNlU3RhdGUgKnBzdGF0ZSwgQWx0ZXJTdWJz Y3JpcHRpb25TdG10ICpzdG10LAogCQlhY2xjaGVja19lcnJvcihBQ0xDSEVDS19OT1RfT1dORVIs IE9CSkVDVF9TVUJTQ1JJUFRJT04sCiAJCQkJCSAgIHN0bXQtPnN1Ym5hbWUpOwogCi0Jc3ViID0g R2V0U3Vic2NyaXB0aW9uKHN1YmlkLCBmYWxzZSk7CisJLyoKKwkgKiBTa2lwIEFDTCBjaGVja3Mg b24gdGhlIHN1YnNjcmlwdGlvbidzIGZvcmVpZ24gc2VydmVyLCBpZiBhbnkuIElmCisJICogY2hh bmdpbmcgdGhlIHNlcnZlciAob3IgcmVwbGFjaW5nIGl0IHdpdGggYSByYXcgY29ubmVjdGlvbiks IHRoZW4gdGhlCisJICogb2xkIG9uZSB3aWxsIGJlIHJlbW92ZWQgYW55d2F5LiBJZiBjaGFuZ2lu ZyBzb21ldGhpbmcgdW5yZWxhdGVkLAorCSAqIHRoZXJlJ3Mgbm8gbmVlZCB0byBkbyBhbiBhZGRp dGlvbmFsIEFDTCBjaGVjayBoZXJlOyB0aGF0IHdpbGwgYmUgZG9uZQorCSAqIGJ5IHRoZSBzdWJz Y3JpcHRpb24gd29ya2VyIGFueXdheS4KKwkgKi8KKwlzdWIgPSBHZXRTdWJzY3JpcHRpb24oc3Vi aWQsIGZhbHNlLCBmYWxzZSk7CiAKIAkvKgogCSAqIERvbid0IGFsbG93IG5vbi1zdXBlcnVzZXIg bW9kaWZpY2F0aW9uIG9mIGEgc3Vic2NyaXB0aW9uIHdpdGgKQEAgLTExMjQsNiArMTE3OSw4IEBA IEFsdGVyU3Vic2NyaXB0aW9uKFBhcnNlU3RhdGUgKnBzdGF0ZSwgQWx0ZXJTdWJzY3JpcHRpb25T dG10ICpzdG10LAogCW1lbXNldChudWxscywgZmFsc2UsIHNpemVvZihudWxscykpOwogCW1lbXNl dChyZXBsYWNlcywgZmFsc2UsIHNpemVvZihyZXBsYWNlcykpOwogCisJT2JqZWN0QWRkcmVzc1Nl dChteXNlbGYsIFN1YnNjcmlwdGlvblJlbGF0aW9uSWQsIHN1YmlkKTsKKwogCXN3aXRjaCAoc3Rt dC0+a2luZCkKIAl7CiAJCWNhc2UgQUxURVJfU1VCU0NSSVBUSU9OX09QVElPTlM6CkBAIC0xMjQ0 LDcgKzEzMDEsOTIgQEAgQWx0ZXJTdWJzY3JpcHRpb24oUGFyc2VTdGF0ZSAqcHN0YXRlLCBBbHRl clN1YnNjcmlwdGlvblN0bXQgKnN0bXQsCiAJCQkJYnJlYWs7CiAJCQl9CiAKKwkJY2FzZSBBTFRF Ul9TVUJTQ1JJUFRJT05fU0VSVkVSOgorCQkJeworCQkJCUZvcmVpZ25TZXJ2ZXIJKm5ld19zZXJ2 ZXI7CisJCQkJVXNlck1hcHBpbmcJCSpuZXdfdW07CisJCQkJT2JqZWN0QWRkcmVzcwkgcmVmZXJl bmNlZDsKKwkJCQlBY2xSZXN1bHQJCSBhY2xyZXN1bHQ7CisJCQkJY2hhcgkJCSpjb25uaW5mbzsK KworCQkJCS8qCisJCQkJICogUmVtb3ZlIHdoYXQgd2FzIHRoZXJlIGJlZm9yZSwgZWl0aGVyIGFu b3RoZXIgZm9yZWlnbiBzZXJ2ZXIKKwkJCQkgKiBvciBhIGNvbm5lY3Rpb24gc3RyaW5nLgorCQkJ CSAqLworCQkJCWlmIChmb3JtLT5zdWJzZXJ2ZXIpCisJCQkJeworCQkJCQlVc2VyTWFwcGluZyAq b2xkX3VtID0gR2V0VXNlck1hcHBpbmcoZm9ybS0+c3Vib3duZXIsIGZvcm0tPnN1YnNlcnZlcik7 CisKKwkJCQkJZGVsZXRlRGVwZW5kZW5jeVJlY29yZHNGb3JTcGVjaWZpYyhTdWJzY3JpcHRpb25S ZWxhdGlvbklkLCBmb3JtLT5vaWQsCisJCQkJCQkJCQkJCQkJICAgREVQRU5ERU5DWV9OT1JNQUws CisJCQkJCQkJCQkJCQkJICAgRm9yZWlnblNlcnZlclJlbGF0aW9uSWQsIGZvcm0tPnN1YnNlcnZl cik7CisJCQkJCWRlbGV0ZURlcGVuZGVuY3lSZWNvcmRzRm9yU3BlY2lmaWMoU3Vic2NyaXB0aW9u UmVsYXRpb25JZCwgZm9ybS0+b2lkLAorCQkJCQkJCQkJCQkJCSAgIERFUEVOREVOQ1lfTk9STUFM LAorCQkJCQkJCQkJCQkJCSAgIFVzZXJNYXBwaW5nUmVsYXRpb25JZCwgb2xkX3VtLT51bWlkKTsK KwkJCQl9CisJCQkJZWxzZQorCQkJCXsKKwkJCQkJbnVsbHNbQW51bV9wZ19zdWJzY3JpcHRpb25f c3ViY29ubmluZm8gLSAxXSA9IHRydWU7CisJCQkJCXJlcGxhY2VzW0FudW1fcGdfc3Vic2NyaXB0 aW9uX3N1YmNvbm5pbmZvIC0gMV0gPSB0cnVlOworCQkJCX0KKworCQkJCS8qCisJCQkJICogRmlu ZCB0aGUgbmV3IHNlcnZlciBhbmQgdXNlciBtYXBwaW5nLiBDaGVjayBBQ0wgb2Ygc2VydmVyCisJ CQkJICogYmFzZWQgb24gY3VycmVudCB1c2VyIElELCBidXQgZmluZCB0aGUgdXNlciBtYXBwaW5n IGJhc2VkCisJCQkJICogb24gdGhlIHN1YnNjcmlwdGlvbiBvd25lci4KKwkJCQkgKi8KKwkJCQlu ZXdfc2VydmVyID0gR2V0Rm9yZWlnblNlcnZlckJ5TmFtZShzdG10LT5zZXJ2ZXJuYW1lLCBmYWxz ZSk7CisJCQkJYWNscmVzdWx0ID0gb2JqZWN0X2FjbGNoZWNrKEZvcmVpZ25TZXJ2ZXJSZWxhdGlv bklkLAorCQkJCQkJCQkJCQluZXdfc2VydmVyLT5zZXJ2ZXJpZCwKKwkJCQkJCQkJCQkJZm9ybS0+ c3Vib3duZXIsIEFDTF9VU0FHRSk7CisJCQkJaWYgKGFjbHJlc3VsdCAhPSBBQ0xDSEVDS19PSykK KwkJCQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJCQkoZXJyY29kZShFUlJDT0RFX0lOU1VGRklDSUVO VF9QUklWSUxFR0UpLAorCQkJCQkJCSBlcnJtc2coInN1YnNjcmlwdGlvbiBvd25lciBcIiVzXCIg ZG9lcyBub3QgaGF2ZSBwZXJtaXNzaW9uIG9uIGZvcmVpZ24gc2VydmVyIFwiJXNcIiIsCisJCQkJ CQkJCQlHZXRVc2VyTmFtZUZyb21JZChmb3JtLT5zdWJvd25lciwgZmFsc2UpLAorCQkJCQkJCQkJ Rm9yZWlnblNlcnZlck5hbWUobmV3X3NlcnZlci0+c2VydmVyaWQpKSkpOworCisJCQkJbmV3X3Vt ID0gR2V0VXNlck1hcHBpbmcoZm9ybS0+c3Vib3duZXIsIG5ld19zZXJ2ZXItPnNlcnZlcmlkKTsK KworCQkJCWNvbm5pbmZvID0gRm9yZWlnblNlcnZlckNvbm5lY3Rpb25TdHJpbmcoZm9ybS0+c3Vi b3duZXIsCisJCQkJCQkJCQkJCQkJCSBuZXdfc2VydmVyLT5zZXJ2ZXJpZCwKKwkJCQkJCQkJCQkJ CQkJIHRydWUpOworCisJCQkJLyogTG9hZCB0aGUgbGlicmFyeSBwcm92aWRpbmcgdXMgbGlicHEg Y2FsbHMuICovCisJCQkJbG9hZF9maWxlKCJsaWJwcXdhbHJlY2VpdmVyIiwgZmFsc2UpOworCQkJ CS8qIENoZWNrIHRoZSBjb25uZWN0aW9uIGluZm8gc3RyaW5nLiAqLworCQkJCXdhbHJjdl9jaGVj a19jb25uaW5mbyhjb25uaW5mbywKKwkJCQkJCQkJCSAgc3ViLT5wYXNzd29yZHJlcXVpcmVkICYm ICFzdWItPm93bmVyc3VwZXJ1c2VyKTsKKworCQkJCXZhbHVlc1tBbnVtX3BnX3N1YnNjcmlwdGlv bl9zdWJzZXJ2ZXIgLSAxXSA9IG5ld19zZXJ2ZXItPnNlcnZlcmlkOworCQkJCXJlcGxhY2VzW0Fu dW1fcGdfc3Vic2NyaXB0aW9uX3N1YnNlcnZlciAtIDFdID0gdHJ1ZTsKKworCQkJCU9iamVjdEFk ZHJlc3NTZXQocmVmZXJlbmNlZCwgRm9yZWlnblNlcnZlclJlbGF0aW9uSWQsIG5ld19zZXJ2ZXIt PnNlcnZlcmlkKTsKKwkJCQlyZWNvcmREZXBlbmRlbmN5T24oJm15c2VsZiwgJnJlZmVyZW5jZWQs IERFUEVOREVOQ1lfTk9STUFMKTsKKworCQkJCU9iamVjdEFkZHJlc3NTZXQocmVmZXJlbmNlZCwg VXNlck1hcHBpbmdSZWxhdGlvbklkLCBuZXdfdW0tPnVtaWQpOworCQkJCXJlY29yZERlcGVuZGVu Y3lPbigmbXlzZWxmLCAmcmVmZXJlbmNlZCwgREVQRU5ERU5DWV9OT1JNQUwpOworCQkJCXVwZGF0 ZV90dXBsZSA9IHRydWU7CisJCQl9CisJCQlicmVhazsKKwogCQljYXNlIEFMVEVSX1NVQlNDUklQ VElPTl9DT05ORUNUSU9OOgorCQkJLyogcmVtb3ZlIHJlZmVyZW5jZSB0byBmb3JlaWduIHNlcnZl ciBhbmQgZGVwZW5kZW5jaWVzLCBpZiBwcmVzZW50ICovCisJCQlpZiAoZm9ybS0+c3Vic2VydmVy KQorCQkJeworCQkJCVVzZXJNYXBwaW5nICpvbGRfdW0gPSBHZXRVc2VyTWFwcGluZyhmb3JtLT5z dWJvd25lciwgZm9ybS0+c3Vic2VydmVyKTsKKworCQkJCWRlbGV0ZURlcGVuZGVuY3lSZWNvcmRz Rm9yU3BlY2lmaWMoU3Vic2NyaXB0aW9uUmVsYXRpb25JZCwgZm9ybS0+b2lkLAorCQkJCQkJCQkJ CQkJICAgREVQRU5ERU5DWV9OT1JNQUwsCisJCQkJCQkJCQkJCQkgICBGb3JlaWduU2VydmVyUmVs YXRpb25JZCwgZm9ybS0+c3Vic2VydmVyKTsKKwkJCQlkZWxldGVEZXBlbmRlbmN5UmVjb3Jkc0Zv clNwZWNpZmljKFN1YnNjcmlwdGlvblJlbGF0aW9uSWQsIGZvcm0tPm9pZCwKKwkJCQkJCQkJCQkJ CSAgIERFUEVOREVOQ1lfTk9STUFMLAorCQkJCQkJCQkJCQkJICAgVXNlck1hcHBpbmdSZWxhdGlv bklkLCBvbGRfdW0tPnVtaWQpOworCisJCQkJdmFsdWVzW0FudW1fcGdfc3Vic2NyaXB0aW9uX3N1 YnNlcnZlciAtIDFdID0gSW52YWxpZE9pZDsKKwkJCQlyZXBsYWNlc1tBbnVtX3BnX3N1YnNjcmlw dGlvbl9zdWJzZXJ2ZXIgLSAxXSA9IHRydWU7CisJCQl9CisKIAkJCS8qIExvYWQgdGhlIGxpYnJh cnkgcHJvdmlkaW5nIHVzIGxpYnBxIGNhbGxzLiAqLwogCQkJbG9hZF9maWxlKCJsaWJwcXdhbHJl Y2VpdmVyIiwgZmFsc2UpOwogCQkJLyogQ2hlY2sgdGhlIGNvbm5lY3Rpb24gaW5mbyBzdHJpbmcu ICovCkBAIC0xNDU1LDggKzE1OTcsNiBAQCBBbHRlclN1YnNjcmlwdGlvbihQYXJzZVN0YXRlICpw c3RhdGUsIEFsdGVyU3Vic2NyaXB0aW9uU3RtdCAqc3RtdCwKIAogCXRhYmxlX2Nsb3NlKHJlbCwg Um93RXhjbHVzaXZlTG9jayk7CiAKLQlPYmplY3RBZGRyZXNzU2V0KG15c2VsZiwgU3Vic2NyaXB0 aW9uUmVsYXRpb25JZCwgc3ViaWQpOwotCiAJSW52b2tlT2JqZWN0UG9zdEFsdGVySG9vayhTdWJz Y3JpcHRpb25SZWxhdGlvbklkLCBzdWJpZCwgMCk7CiAKIAkvKiBXYWtlIHVwIHJlbGF0ZWQgcmVw bGljYXRpb24gd29ya2VycyB0byBoYW5kbGUgdGhpcyBjaGFuZ2UgcXVpY2tseS4gKi8KQEAgLTE1 NDEsOSArMTY4MSwyOCBAQCBEcm9wU3Vic2NyaXB0aW9uKERyb3BTdWJzY3JpcHRpb25TdG10ICpz dG10LCBib29sIGlzVG9wTGV2ZWwpCiAJc3VibmFtZSA9IHBzdHJkdXAoTmFtZVN0cigqRGF0dW1H ZXROYW1lKGRhdHVtKSkpOwogCiAJLyogR2V0IGNvbm5pbmZvICovCi0JZGF0dW0gPSBTeXNDYWNo ZUdldEF0dHJOb3ROdWxsKFNVQlNDUklQVElPTk9JRCwgdHVwLAotCQkJCQkJCQkgICBBbnVtX3Bn X3N1YnNjcmlwdGlvbl9zdWJjb25uaW5mbyk7Ci0JY29ubmluZm8gPSBUZXh0RGF0dW1HZXRDU3Ry aW5nKGRhdHVtKTsKKwlpZiAoT2lkSXNWYWxpZChmb3JtLT5zdWJzZXJ2ZXIpKQorCXsKKwkJQWNs UmVzdWx0IGFjbHJlc3VsdDsKKworCQlhY2xyZXN1bHQgPSBvYmplY3RfYWNsY2hlY2soRm9yZWln blNlcnZlclJlbGF0aW9uSWQsIGZvcm0tPnN1YnNlcnZlciwKKwkJCQkJCQkJCWZvcm0tPnN1Ym93 bmVyLCBBQ0xfVVNBR0UpOworCQlpZiAoYWNscmVzdWx0ICE9IEFDTENIRUNLX09LKQorCQkJZXJl cG9ydChFUlJPUiwKKwkJCQkJKGVycmNvZGUoRVJSQ09ERV9JTlNVRkZJQ0lFTlRfUFJJVklMRUdF KSwKKwkJCQkJIGVycm1zZygic3Vic2NyaXB0aW9uIG93bmVyIFwiJXNcIiBkb2VzIG5vdCBoYXZl IHBlcm1pc3Npb24gb24gZm9yZWlnbiBzZXJ2ZXIgXCIlc1wiIiwKKwkJCQkJCQlHZXRVc2VyTmFt ZUZyb21JZChmb3JtLT5zdWJvd25lciwgZmFsc2UpLAorCQkJCQkJCUZvcmVpZ25TZXJ2ZXJOYW1l KGZvcm0tPnN1YnNlcnZlcikpKSk7CisKKwkJY29ubmluZm8gPSBGb3JlaWduU2VydmVyQ29ubmVj dGlvblN0cmluZyhmb3JtLT5zdWJvd25lciwKKwkJCQkJCQkJCQkJCSBmb3JtLT5zdWJzZXJ2ZXIs IHRydWUpOworCX0KKwllbHNlCisJeworCQlkYXR1bSA9IFN5c0NhY2hlR2V0QXR0ck5vdE51bGwo U1VCU0NSSVBUSU9OT0lELCB0dXAsCisJCQkJCQkJCQkgICBBbnVtX3BnX3N1YnNjcmlwdGlvbl9z dWJjb25uaW5mbyk7CisJCWNvbm5pbmZvID0gVGV4dERhdHVtR2V0Q1N0cmluZyhkYXR1bSk7CisJ fQogCiAJLyogR2V0IHNsb3RuYW1lICovCiAJZGF0dW0gPSBTeXNDYWNoZUdldEF0dHIoU1VCU0NS SVBUSU9OT0lELCB0dXAsCkBAIC0xNjQ0LDYgKzE4MDMsNyBAQCBEcm9wU3Vic2NyaXB0aW9uKERy b3BTdWJzY3JpcHRpb25TdG10ICpzdG10LCBib29sIGlzVG9wTGV2ZWwpCiAJfQogCiAJLyogQ2xl YW4gdXAgZGVwZW5kZW5jaWVzICovCisJZGVsZXRlRGVwZW5kZW5jeVJlY29yZHNGb3IoU3Vic2Ny aXB0aW9uUmVsYXRpb25JZCwgc3ViaWQsIGZhbHNlKTsKIAlkZWxldGVTaGFyZWREZXBlbmRlbmN5 UmVjb3Jkc0ZvcihTdWJzY3JpcHRpb25SZWxhdGlvbklkLCBzdWJpZCwgMCk7CiAKIAkvKiBSZW1v dmUgYW55IGFzc29jaWF0ZWQgcmVsYXRpb24gc3luY2hyb25pemF0aW9uIHN0YXRlcy4gKi8KQEAg LTE4NTMsNiArMjAxMywxNyBAQCBBbHRlclN1YnNjcmlwdGlvbk93bmVyX2ludGVybmFsKFJlbGF0 aW9uIHJlbCwgSGVhcFR1cGxlIHR1cCwgT2lkIG5ld093bmVySWQpCiAJCWFjbGNoZWNrX2Vycm9y KGFjbHJlc3VsdCwgT0JKRUNUX0RBVEFCQVNFLAogCQkJCQkgICBnZXRfZGF0YWJhc2VfbmFtZShN eURhdGFiYXNlSWQpKTsKIAorCWlmIChmb3JtLT5zdWJzZXJ2ZXIpCisJeworCQlVc2VyTWFwcGlu ZyAqb2xkX3VtID0gR2V0VXNlck1hcHBpbmcoZm9ybS0+c3Vib3duZXIsIGZvcm0tPnN1YnNlcnZl cik7CisJCVVzZXJNYXBwaW5nICpuZXdfdW0gPSBHZXRVc2VyTWFwcGluZyhuZXdPd25lcklkLCBm b3JtLT5zdWJzZXJ2ZXIpOworCisJCWlmIChjaGFuZ2VEZXBlbmRlbmN5Rm9yKFN1YnNjcmlwdGlv blJlbGF0aW9uSWQsIGZvcm0tPm9pZCwKKwkJCQkJCQkJVXNlck1hcHBpbmdSZWxhdGlvbklkLCBv bGRfdW0tPnVtaWQsIG5ld191bS0+dW1pZCkgIT0gMSkKKwkJCWVsb2coRVJST1IsICJjb3VsZCBu b3QgY2hhbmdlIHVzZXIgbWFwcGluZyBkZXBlbmRlbmN5IGZvciBzdWJzY3JpcHRpb24gJXUiLAor CQkJCSBmb3JtLT5vaWQpOworCX0KKwogCWZvcm0tPnN1Ym93bmVyID0gbmV3T3duZXJJZDsKIAlD YXRhbG9nVHVwbGVVcGRhdGUocmVsLCAmdHVwLT50X3NlbGYsIHR1cCk7CiAKZGlmZiAtLWdpdCBh L3NyYy9iYWNrZW5kL2ZvcmVpZ24vZm9yZWlnbi5jIGIvc3JjL2JhY2tlbmQvZm9yZWlnbi9mb3Jl aWduLmMKaW5kZXggZWFkNGEyY2QyYy4uYmEyZGVhODhhOSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tl bmQvZm9yZWlnbi9mb3JlaWduLmMKKysrIGIvc3JjL2JhY2tlbmQvZm9yZWlnbi9mb3JlaWduLmMK QEAgLTE4MCw2ICsxODAsMzEgQEAgR2V0Rm9yZWlnblNlcnZlckV4dGVuZGVkKE9pZCBzZXJ2ZXJp ZCwgYml0czE2IGZsYWdzKQogfQogCiAKKy8qCisgKiBGb3JlaWduU2VydmVyTmFtZSAtIGdldCBu YW1lIG9mIGZvcmVpZ24gc2VydmVyLgorICovCitjaGFyICoKK0ZvcmVpZ25TZXJ2ZXJOYW1lKE9p ZCBzZXJ2ZXJpZCkKK3sKKwlGb3JtX3BnX2ZvcmVpZ25fc2VydmVyIHNlcnZlcmZvcm07CisJY2hh ciAqc2VydmVybmFtZTsKKwlIZWFwVHVwbGUJdHA7CisKKwl0cCA9IFNlYXJjaFN5c0NhY2hlMShG T1JFSUdOU0VSVkVST0lELCBPYmplY3RJZEdldERhdHVtKHNlcnZlcmlkKSk7CisKKwlpZiAoIUhl YXBUdXBsZUlzVmFsaWQodHApKQorCQllbG9nKEVSUk9SLCAiY2FjaGUgbG9va3VwIGZhaWxlZCBm b3IgZm9yZWlnbiBzZXJ2ZXIgJXUiLCBzZXJ2ZXJpZCk7CisKKwlzZXJ2ZXJmb3JtID0gKEZvcm1f cGdfZm9yZWlnbl9zZXJ2ZXIpIEdFVFNUUlVDVCh0cCk7CisKKwlzZXJ2ZXJuYW1lID0gcHN0cmR1 cChOYW1lU3RyKHNlcnZlcmZvcm0tPnNydm5hbWUpKTsKKworCVJlbGVhc2VTeXNDYWNoZSh0cCk7 CisKKwlyZXR1cm4gc2VydmVybmFtZTsKK30KKworCiAvKgogICogR2V0Rm9yZWlnblNlcnZlckJ5 TmFtZSAtIGxvb2sgdXAgdGhlIGZvcmVpZ24gc2VydmVyIGRlZmluaXRpb24gYnkgbmFtZS4KICAq LwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvcGFyc2VyL2dyYW0ueSBiL3NyYy9iYWNrZW5kL3Bh cnNlci9ncmFtLnkKaW5kZXggMzQ2MGZlYTU2Yi4uYzI3ZTBiOGI1ZCAxMDA2NDQKLS0tIGEvc3Jj L2JhY2tlbmQvcGFyc2VyL2dyYW0ueQorKysgYi9zcmMvYmFja2VuZC9wYXJzZXIvZ3JhbS55CkBA IC0xMDY1NCw2ICsxMDY1NCwxNiBAQCBDcmVhdGVTdWJzY3JpcHRpb25TdG10OgogCQkJCQluLT5v cHRpb25zID0gJDg7CiAJCQkJCSQkID0gKE5vZGUgKikgbjsKIAkJCQl9CisJCQl8IENSRUFURSBT VUJTQ1JJUFRJT04gbmFtZSBTRVJWRVIgbmFtZSBQVUJMSUNBVElPTiBuYW1lX2xpc3Qgb3B0X2Rl ZmluaXRpb24KKwkJCQl7CisJCQkJCUNyZWF0ZVN1YnNjcmlwdGlvblN0bXQgKm4gPQorCQkJCQkJ bWFrZU5vZGUoQ3JlYXRlU3Vic2NyaXB0aW9uU3RtdCk7CisJCQkJCW4tPnN1Ym5hbWUgPSAkMzsK KwkJCQkJbi0+c2VydmVybmFtZSA9ICQ1OworCQkJCQluLT5wdWJsaWNhdGlvbiA9ICQ3OworCQkJ CQluLT5vcHRpb25zID0gJDg7CisJCQkJCSQkID0gKE5vZGUgKikgbjsKKwkJCQl9CiAJCTsKIAog LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqCkBAIC0xMDY4Myw2ICsxMDY5MywxNiBAQCBBbHRlclN1YnNj cmlwdGlvblN0bXQ6CiAJCQkJCW4tPmNvbm5pbmZvID0gJDU7CiAJCQkJCSQkID0gKE5vZGUgKikg bjsKIAkJCQl9CisJCQl8IEFMVEVSIFNVQlNDUklQVElPTiBuYW1lIFNFUlZFUiBuYW1lCisJCQkJ eworCQkJCQlBbHRlclN1YnNjcmlwdGlvblN0bXQgKm4gPQorCQkJCQkJbWFrZU5vZGUoQWx0ZXJT dWJzY3JpcHRpb25TdG10KTsKKworCQkJCQluLT5raW5kID0gQUxURVJfU1VCU0NSSVBUSU9OX1NF UlZFUjsKKwkJCQkJbi0+c3VibmFtZSA9ICQzOworCQkJCQluLT5zZXJ2ZXJuYW1lID0gJDU7CisJ CQkJCSQkID0gKE5vZGUgKikgbjsKKwkJCQl9CiAJCQl8IEFMVEVSIFNVQlNDUklQVElPTiBuYW1l IFJFRlJFU0ggUFVCTElDQVRJT04gb3B0X2RlZmluaXRpb24KIAkJCQl7CiAJCQkJCUFsdGVyU3Vi c2NyaXB0aW9uU3RtdCAqbiA9CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi9s b2dpY2FsL3dvcmtlci5jIGIvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vbG9naWNhbC93b3JrZXIu YwppbmRleCA5MTE4MzVjNWNiLi43M2NjN2ZjMmM2IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9y ZXBsaWNhdGlvbi9sb2dpY2FsL3dvcmtlci5jCisrKyBiL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9u L2xvZ2ljYWwvd29ya2VyLmMKQEAgLTM4OTcsNyArMzg5Nyw3IEBAIG1heWJlX3JlcmVhZF9zdWJz Y3JpcHRpb24odm9pZCkKIAkvKiBFbnN1cmUgYWxsb2NhdGlvbnMgaW4gcGVybWFuZW50IGNvbnRl eHQuICovCiAJb2xkY3R4ID0gTWVtb3J5Q29udGV4dFN3aXRjaFRvKEFwcGx5Q29udGV4dCk7CiAK LQluZXdzdWIgPSBHZXRTdWJzY3JpcHRpb24oTXlMb2dpY2FsUmVwV29ya2VyLT5zdWJpZCwgdHJ1 ZSk7CisJbmV3c3ViID0gR2V0U3Vic2NyaXB0aW9uKE15TG9naWNhbFJlcFdvcmtlci0+c3ViaWQs IHRydWUsIHRydWUpOwogCiAJLyoKIAkgKiBFeGl0IGlmIHRoZSBzdWJzY3JpcHRpb24gd2FzIHJl bW92ZWQuIFRoaXMgbm9ybWFsbHkgc2hvdWxkIG5vdCBoYXBwZW4KQEAgLTQwMDMsNyArNDAwMyw5 IEBAIG1heWJlX3JlcmVhZF9zdWJzY3JpcHRpb24odm9pZCkKIH0KIAogLyoKLSAqIENhbGxiYWNr IGZyb20gc3Vic2NyaXB0aW9uIHN5c2NhY2hlIGludmFsaWRhdGlvbi4KKyAqIENhbGxiYWNrIGZy b20gc3Vic2NyaXB0aW9uIHN5c2NhY2hlIGludmFsaWRhdGlvbi4gQWxzbyBuZWVkZWQgZm9yIHNl cnZlciBvcgorICogdXNlciBtYXBwaW5nIGludmFsaWRhdGlvbiwgd2hpY2ggY2FuIGNoYW5nZSB0 aGUgY29ubmVjdGlvbiBpbmZvcm1hdGlvbiBmb3IKKyAqIHN1YnNjcmlwdGlvbnMgdGhhdCBjb25u ZWN0IHVzaW5nIGEgc2VydmVyIG9iamVjdC4KICAqLwogc3RhdGljIHZvaWQKIHN1YnNjcmlwdGlv bl9jaGFuZ2VfY2IoRGF0dW0gYXJnLCBpbnQgY2FjaGVpZCwgdWludDMyIGhhc2h2YWx1ZSkKQEAg LTQ2MDIsNyArNDYwNCw3IEBAIEluaXRpYWxpemVMb2dSZXBXb3JrZXIodm9pZCkKIAlTdGFydFRy YW5zYWN0aW9uQ29tbWFuZCgpOwogCW9sZGN0eCA9IE1lbW9yeUNvbnRleHRTd2l0Y2hUbyhBcHBs eUNvbnRleHQpOwogCi0JTXlTdWJzY3JpcHRpb24gPSBHZXRTdWJzY3JpcHRpb24oTXlMb2dpY2Fs UmVwV29ya2VyLT5zdWJpZCwgdHJ1ZSk7CisJTXlTdWJzY3JpcHRpb24gPSBHZXRTdWJzY3JpcHRp b24oTXlMb2dpY2FsUmVwV29ya2VyLT5zdWJpZCwgdHJ1ZSwgdHJ1ZSk7CiAJaWYgKCFNeVN1YnNj cmlwdGlvbikKIAl7CiAJCWVyZXBvcnQoTE9HLApAQCAtNDYzOSw2ICs0NjQxLDE0IEBAIEluaXRp YWxpemVMb2dSZXBXb3JrZXIodm9pZCkKIAlDYWNoZVJlZ2lzdGVyU3lzY2FjaGVDYWxsYmFjayhT VUJTQ1JJUFRJT05PSUQsCiAJCQkJCQkJCSAgc3Vic2NyaXB0aW9uX2NoYW5nZV9jYiwKIAkJCQkJ CQkJICAoRGF0dW0pIDApOworCS8qIEtlZXAgdXMgaW5mb3JtZWQgYWJvdXQgc3Vic2NyaXB0aW9u IGNoYW5nZXMuICovCisJQ2FjaGVSZWdpc3RlclN5c2NhY2hlQ2FsbGJhY2soRk9SRUlHTlNFUlZF Uk9JRCwKKwkJCQkJCQkJICBzdWJzY3JpcHRpb25fY2hhbmdlX2NiLAorCQkJCQkJCQkgIChEYXR1 bSkgMCk7CisJLyogS2VlcCB1cyBpbmZvcm1lZCBhYm91dCBzdWJzY3JpcHRpb24gY2hhbmdlcy4g Ki8KKwlDYWNoZVJlZ2lzdGVyU3lzY2FjaGVDYWxsYmFjayhVU0VSTUFQUElOR09JRCwKKwkJCQkJ CQkJICBzdWJzY3JpcHRpb25fY2hhbmdlX2NiLAorCQkJCQkJCQkgIChEYXR1bSkgMCk7CiAKIAlD YWNoZVJlZ2lzdGVyU3lzY2FjaGVDYWxsYmFjayhBVVRIT0lELAogCQkJCQkJCQkgIHN1YnNjcmlw dGlvbl9jaGFuZ2VfY2IsCmRpZmYgLS1naXQgYS9zcmMvYmluL3BnX2R1bXAvcGdfZHVtcC5jIGIv c3JjL2Jpbi9wZ19kdW1wL3BnX2R1bXAuYwppbmRleCA1YjdhMThkYmIxLi4zNmQwNmZiMDJiIDEw MDY0NAotLS0gYS9zcmMvYmluL3BnX2R1bXAvcGdfZHVtcC5jCisrKyBiL3NyYy9iaW4vcGdfZHVt cC9wZ19kdW1wLmMKQEAgLTQ2NTUsNiArNDY1NSw3IEBAIGdldFN1YnNjcmlwdGlvbnMoQXJjaGl2 ZSAqZm91dCkKIAlpbnQJCQlpX3N1YmRpc2FibGVvbmVycjsKIAlpbnQJCQlpX3N1YnBhc3N3b3Jk cmVxdWlyZWQ7CiAJaW50CQkJaV9zdWJydW5hc293bmVyOworCWludAkJCWlfc3Vic2VydmVybmFt ZTsKIAlpbnQJCQlpX3N1YmNvbm5pbmZvOwogCWludAkJCWlfc3Vic2xvdG5hbWU7CiAJaW50CQkJ aV9zdWJzeW5jY29tbWl0OwpAQCAtNDcyNiwxMCArNDcyNywxMiBAQCBnZXRTdWJzY3JpcHRpb25z KEFyY2hpdmUgKmZvdXQpCiAJCQkJCQkgIExPR0lDQUxSRVBfT1JJR0lOX0FOWSk7CiAKIAlpZiAo ZG9wdC0+YmluYXJ5X3VwZ3JhZGUgJiYgZm91dC0+cmVtb3RlVmVyc2lvbiA+PSAxNzAwMDApCi0J CWFwcGVuZFBRRXhwQnVmZmVyU3RyKHF1ZXJ5LCAiIG8ucmVtb3RlX2xzbiBBUyBzdWJvcmlnaW5y ZW1vdGVsc24sXG4iCisJCWFwcGVuZFBRRXhwQnVmZmVyU3RyKHF1ZXJ5LCAiIGZzLnNydm5hbWUg QVMgc3Vic2VydmVybmFtZSxcbiIKKwkJCQkJCQkgIiBvLnJlbW90ZV9sc24gQVMgc3Vib3JpZ2lu cmVtb3RlbHNuLFxuIgogCQkJCQkJCSAiIHMuc3ViZW5hYmxlZFxuIik7CiAJZWxzZQotCQlhcHBl bmRQUUV4cEJ1ZmZlclN0cihxdWVyeSwgIiBOVUxMIEFTIHN1Ym9yaWdpbnJlbW90ZWxzbixcbiIK KwkJYXBwZW5kUFFFeHBCdWZmZXJTdHIocXVlcnksICIgTlVMTCBBUyBzdWJzZXJ2ZXJuYW1lLFxu IgorCQkJCQkJCSAiIE5VTEwgQVMgc3Vib3JpZ2lucmVtb3RlbHNuLFxuIgogCQkJCQkJCSAiIGZh bHNlIEFTIHN1YmVuYWJsZWRcbiIpOwogCiAJYXBwZW5kUFFFeHBCdWZmZXJTdHIocXVlcnksCkBA IC00NzM3LDYgKzQ3NDAsOCBAQCBnZXRTdWJzY3JpcHRpb25zKEFyY2hpdmUgKmZvdXQpCiAKIAlp ZiAoZG9wdC0+YmluYXJ5X3VwZ3JhZGUgJiYgZm91dC0+cmVtb3RlVmVyc2lvbiA+PSAxNzAwMDAp CiAJCWFwcGVuZFBRRXhwQnVmZmVyU3RyKHF1ZXJ5LAorCQkJCQkJCSAiTEVGVCBKT0lOIHBnX2Nh dGFsb2cucGdfZm9yZWlnbl9zZXJ2ZXIgZnMgXG4iCisJCQkJCQkJICIgICAgT04gZnMub2lkID0g cy5zdWJzZXJ2ZXIgXG4iCiAJCQkJCQkJICJMRUZUIEpPSU4gcGdfY2F0YWxvZy5wZ19yZXBsaWNh dGlvbl9vcmlnaW5fc3RhdHVzIG8gXG4iCiAJCQkJCQkJICIgICAgT04gby5leHRlcm5hbF9pZCA9 ICdwZ18nIHx8IHMub2lkOjp0ZXh0IFxuIik7CiAKQEAgLTQ3NjIsNiArNDc2Nyw3IEBAIGdldFN1 YnNjcmlwdGlvbnMoQXJjaGl2ZSAqZm91dCkKIAlpX3N1YmRpc2FibGVvbmVyciA9IFBRZm51bWJl cihyZXMsICJzdWJkaXNhYmxlb25lcnIiKTsKIAlpX3N1YnBhc3N3b3JkcmVxdWlyZWQgPSBQUWZu dW1iZXIocmVzLCAic3VicGFzc3dvcmRyZXF1aXJlZCIpOwogCWlfc3VicnVuYXNvd25lciA9IFBR Zm51bWJlcihyZXMsICJzdWJydW5hc293bmVyIik7CisJaV9zdWJzZXJ2ZXJuYW1lID0gUFFmbnVt YmVyKHJlcywgInN1YnNlcnZlcm5hbWUiKTsKIAlpX3N1YmNvbm5pbmZvID0gUFFmbnVtYmVyKHJl cywgInN1YmNvbm5pbmZvIik7CiAJaV9zdWJzbG90bmFtZSA9IFBRZm51bWJlcihyZXMsICJzdWJz bG90bmFtZSIpOwogCWlfc3Vic3luY2NvbW1pdCA9IFBRZm51bWJlcihyZXMsICJzdWJzeW5jY29t bWl0Iik7CkBAIC00NzgxLDcgKzQ3ODcsMTAgQEAgZ2V0U3Vic2NyaXB0aW9ucyhBcmNoaXZlICpm b3V0KQogCQlBc3NpZ25EdW1wSWQoJnN1YmluZm9baV0uZG9iaik7CiAJCXN1YmluZm9baV0uZG9i ai5uYW1lID0gcGdfc3RyZHVwKFBRZ2V0dmFsdWUocmVzLCBpLCBpX3N1Ym5hbWUpKTsKIAkJc3Vi aW5mb1tpXS5yb2xuYW1lID0gZ2V0Um9sZU5hbWUoUFFnZXR2YWx1ZShyZXMsIGksIGlfc3Vib3du ZXIpKTsKLQorCQlpZiAoUFFnZXRpc251bGwocmVzLCBpLCBpX3N1YnNlcnZlcm5hbWUpKQorCQkJ c3ViaW5mb1tpXS5zdWJzZXJ2ZXJuYW1lID0gTlVMTDsKKwkJZWxzZQorCQkJc3ViaW5mb1tpXS5z dWJzZXJ2ZXJuYW1lID0gcGdfc3RyZHVwKFBRZ2V0dmFsdWUocmVzLCBpLCBpX3N1YnNlcnZlcm5h bWUpKTsKIAkJc3ViaW5mb1tpXS5zdWJiaW5hcnkgPQogCQkJcGdfc3RyZHVwKFBRZ2V0dmFsdWUo cmVzLCBpLCBpX3N1YmJpbmFyeSkpOwogCQlzdWJpbmZvW2ldLnN1YnN0cmVhbSA9CkBAIC01MDA3 LDkgKzUwMTYsMTcgQEAgZHVtcFN1YnNjcmlwdGlvbihBcmNoaXZlICpmb3V0LCBjb25zdCBTdWJz Y3JpcHRpb25JbmZvICpzdWJpbmZvKQogCWFwcGVuZFBRRXhwQnVmZmVyKGRlbHEsICJEUk9QIFNV QlNDUklQVElPTiAlcztcbiIsCiAJCQkJCSAgcXN1Ym5hbWUpOwogCi0JYXBwZW5kUFFFeHBCdWZm ZXIocXVlcnksICJDUkVBVEUgU1VCU0NSSVBUSU9OICVzIENPTk5FQ1RJT04gIiwKKwlhcHBlbmRQ UUV4cEJ1ZmZlcihxdWVyeSwgIkNSRUFURSBTVUJTQ1JJUFRJT04gJXMgIiwKIAkJCQkJICBxc3Vi bmFtZSk7Ci0JYXBwZW5kU3RyaW5nTGl0ZXJhbEFIKHF1ZXJ5LCBzdWJpbmZvLT5zdWJjb25uaW5m bywgZm91dCk7CisJaWYgKHN1YmluZm8tPnN1YnNlcnZlcm5hbWUpCisJeworCQlhcHBlbmRQUUV4 cEJ1ZmZlcihxdWVyeSwgIlNFUlZFUiAlcyIsIGZtdElkKHN1YmluZm8tPnN1YnNlcnZlcm5hbWUp KTsKKwl9CisJZWxzZQorCXsKKwkJYXBwZW5kUFFFeHBCdWZmZXIocXVlcnksICJDT05ORUNUSU9O ICIpOworCQlhcHBlbmRTdHJpbmdMaXRlcmFsQUgocXVlcnksIHN1YmluZm8tPnN1YmNvbm5pbmZv LCBmb3V0KTsKKwl9CiAKIAkvKiBCdWlsZCBsaXN0IG9mIHF1b3RlZCBwdWJsaWNhdGlvbnMgYW5k IGFwcGVuZCB0aGVtIHRvIHF1ZXJ5LiAqLwogCWlmICghcGFyc2VQR0FycmF5KHN1YmluZm8tPnN1 YnB1YmxpY2F0aW9ucywgJnB1Ym5hbWVzLCAmbnB1Ym5hbWVzKSkKZGlmZiAtLWdpdCBhL3NyYy9i aW4vcGdfZHVtcC9wZ19kdW1wLmggYi9zcmMvYmluL3BnX2R1bXAvcGdfZHVtcC5oCmluZGV4IGYw NzcyZDIxNTcuLjg0OTk1MGU0NzAgMTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcGdfZHVtcC9wZ19kdW1w LmgKKysrIGIvc3JjL2Jpbi9wZ19kdW1wL3BnX2R1bXAuaApAQCAtNjU5LDYgKzY1OSw3IEBAIHR5 cGVkZWYgc3RydWN0IF9TdWJzY3JpcHRpb25JbmZvCiAJY2hhcgkgICAqc3ViZGlzYWJsZW9uZXJy OwogCWNoYXIJICAgKnN1YnBhc3N3b3JkcmVxdWlyZWQ7CiAJY2hhcgkgICAqc3VicnVuYXNvd25l cjsKKwljaGFyCSAgICpzdWJzZXJ2ZXJuYW1lOwogCWNoYXIJICAgKnN1YmNvbm5pbmZvOwogCWNo YXIJICAgKnN1YnNsb3RuYW1lOwogCWNoYXIJICAgKnN1YnN5bmNjb21taXQ7CmRpZmYgLS1naXQg YS9zcmMvYmluL3BzcWwvdGFiLWNvbXBsZXRlLmMgYi9zcmMvYmluL3BzcWwvdGFiLWNvbXBsZXRl LmMKaW5kZXggMDk5MTQxNjVlNC4uOTk1ZjRmN2YyMiAxMDA2NDQKLS0tIGEvc3JjL2Jpbi9wc3Fs L3RhYi1jb21wbGV0ZS5jCisrKyBiL3NyYy9iaW4vcHNxbC90YWItY29tcGxldGUuYwpAQCAtMzMy Miw3ICszMzIyLDcgQEAgcHNxbF9jb21wbGV0aW9uKGNvbnN0IGNoYXIgKnRleHQsIGludCBzdGFy dCwgaW50IGVuZCkKIAogLyogQ1JFQVRFIFNVQlNDUklQVElPTiAqLwogCWVsc2UgaWYgKE1hdGNo ZXMoIkNSRUFURSIsICJTVUJTQ1JJUFRJT04iLCBNYXRjaEFueSkpCi0JCUNPTVBMRVRFX1dJVEgo IkNPTk5FQ1RJT04iKTsKKwkJQ09NUExFVEVfV0lUSCgiU0VSVkVSIiwgIkNPTk5FQ1RJT04iKTsK IAllbHNlIGlmIChNYXRjaGVzKCJDUkVBVEUiLCAiU1VCU0NSSVBUSU9OIiwgTWF0Y2hBbnksICJD T05ORUNUSU9OIiwgTWF0Y2hBbnkpKQogCQlDT01QTEVURV9XSVRIKCJQVUJMSUNBVElPTiIpOwog CWVsc2UgaWYgKE1hdGNoZXMoIkNSRUFURSIsICJTVUJTQ1JJUFRJT04iLCBNYXRjaEFueSwgIkNP Tk5FQ1RJT04iLApkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19zdWJzY3JpcHRp b24uaCBiL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfc3Vic2NyaXB0aW9uLmgKaW5kZXggY2EzMjYy NTU4NS4uZTIzMjFjZDNhNCAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19zdWJz Y3JpcHRpb24uaAorKysgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3N1YnNjcmlwdGlvbi5oCkBA IC05Myw5ICs5MywxMSBAQCBDQVRBTE9HKHBnX3N1YnNjcmlwdGlvbiw2MTAwLFN1YnNjcmlwdGlv blJlbGF0aW9uSWQpIEJLSV9TSEFSRURfUkVMQVRJT04gQktJX1JPVwogCWJvb2wJCXN1YnJ1bmFz b3duZXI7CS8qIFRydWUgaWYgcmVwbGljYXRpb24gc2hvdWxkIGV4ZWN1dGUgYXMgdGhlCiAJCQkJ CQkJCSAqIHN1YnNjcmlwdGlvbiBvd25lciAqLwogCisJT2lkCQkJc3Vic2VydmVyOwkJLyogU2V0 IGlmIGNvbm5lY3Rpbmcgd2l0aCBzZXJ2ZXIgKi8KKwogI2lmZGVmIENBVEFMT0dfVkFSTEVOCQkJ LyogdmFyaWFibGUtbGVuZ3RoIGZpZWxkcyBzdGFydCBoZXJlICovCiAJLyogQ29ubmVjdGlvbiBz dHJpbmcgdG8gdGhlIHB1Ymxpc2hlciAqLwotCXRleHQJCXN1YmNvbm5pbmZvIEJLSV9GT1JDRV9O T1RfTlVMTDsKKwl0ZXh0CQlzdWJjb25uaW5mbzsJLyogU2V0IGlmIGNvbm5lY3Rpbmcgd2l0aCBj b25uZWN0aW9uIHN0cmluZyAqLwogCiAJLyogU2xvdCBuYW1lIG9uIHB1Ymxpc2hlciAqLwogCU5h bWVEYXRhCXN1YnNsb3RuYW1lIEJLSV9GT1JDRV9OVUxMOwpAQCAtMTYyLDcgKzE2NCw4IEBAIHR5 cGVkZWYgc3RydWN0IFN1YnNjcmlwdGlvbgogICovCiAjZGVmaW5lIExPR0lDQUxSRVBfU1RSRUFN X1BBUkFMTEVMICdwJwogCi1leHRlcm4gU3Vic2NyaXB0aW9uICpHZXRTdWJzY3JpcHRpb24oT2lk IHN1YmlkLCBib29sIG1pc3Npbmdfb2spOworZXh0ZXJuIFN1YnNjcmlwdGlvbiAqR2V0U3Vic2Ny aXB0aW9uKE9pZCBzdWJpZCwgYm9vbCBtaXNzaW5nX29rLAorCQkJCQkJCQkJIGJvb2wgYWNsY2hl Y2spOwogZXh0ZXJuIHZvaWQgRnJlZVN1YnNjcmlwdGlvbihTdWJzY3JpcHRpb24gKnN1Yik7CiBl eHRlcm4gdm9pZCBEaXNhYmxlU3Vic2NyaXB0aW9uKE9pZCBzdWJpZCk7CiAKZGlmZiAtLWdpdCBh L3NyYy9pbmNsdWRlL2ZvcmVpZ24vZm9yZWlnbi5oIGIvc3JjL2luY2x1ZGUvZm9yZWlnbi9mb3Jl aWduLmgKaW5kZXggYjViOWI5N2Y0ZC4uYTJmMDRjZTlhZiAxMDA2NDQKLS0tIGEvc3JjL2luY2x1 ZGUvZm9yZWlnbi9mb3JlaWduLmgKKysrIGIvc3JjL2luY2x1ZGUvZm9yZWlnbi9mb3JlaWduLmgK QEAgLTY1LDYgKzY1LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgRm9yZWlnblRhYmxlCiAKIAogZXh0ZXJu IEZvcmVpZ25TZXJ2ZXIgKkdldEZvcmVpZ25TZXJ2ZXIoT2lkIHNlcnZlcmlkKTsKK2V4dGVybiBj aGFyICpGb3JlaWduU2VydmVyTmFtZShPaWQgc2VydmVyaWQpOwogZXh0ZXJuIEZvcmVpZ25TZXJ2 ZXIgKkdldEZvcmVpZ25TZXJ2ZXJFeHRlbmRlZChPaWQgc2VydmVyaWQsCiAJCQkJCQkJCQkJCSAg IGJpdHMxNiBmbGFncyk7CiBleHRlcm4gRm9yZWlnblNlcnZlciAqR2V0Rm9yZWlnblNlcnZlckJ5 TmFtZShjb25zdCBjaGFyICpzcnZuYW1lLApkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvbm9kZXMv cGFyc2Vub2Rlcy5oIGIvc3JjL2luY2x1ZGUvbm9kZXMvcGFyc2Vub2Rlcy5oCmluZGV4IGIzMTgx ZjM0YWUuLjZkNmIyNDJjZWMgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL25vZGVzL3BhcnNlbm9k ZXMuaAorKysgYi9zcmMvaW5jbHVkZS9ub2Rlcy9wYXJzZW5vZGVzLmgKQEAgLTQwNDEsNiArNDA0 MSw3IEBAIHR5cGVkZWYgc3RydWN0IENyZWF0ZVN1YnNjcmlwdGlvblN0bXQKIHsKIAlOb2RlVGFn CQl0eXBlOwogCWNoYXIJICAgKnN1Ym5hbWU7CQkvKiBOYW1lIG9mIHRoZSBzdWJzY3JpcHRpb24g Ki8KKwljaGFyCSAgICpzZXJ2ZXJuYW1lOwkJLyogU2VydmVyIG5hbWUgb2YgcHVibGlzaGVyICov CiAJY2hhcgkgICAqY29ubmluZm87CQkvKiBDb25uZWN0aW9uIHN0cmluZyB0byBwdWJsaXNoZXIg Ki8KIAlMaXN0CSAgICpwdWJsaWNhdGlvbjsJLyogT25lIG9yIG1vcmUgcHVibGljYXRpb24gdG8g c3Vic2NyaWJlIHRvICovCiAJTGlzdAkgICAqb3B0aW9uczsJCS8qIExpc3Qgb2YgRGVmRWxlbSBu b2RlcyAqLwpAQCAtNDA0OSw2ICs0MDUwLDcgQEAgdHlwZWRlZiBzdHJ1Y3QgQ3JlYXRlU3Vic2Ny aXB0aW9uU3RtdAogdHlwZWRlZiBlbnVtIEFsdGVyU3Vic2NyaXB0aW9uVHlwZQogewogCUFMVEVS X1NVQlNDUklQVElPTl9PUFRJT05TLAorCUFMVEVSX1NVQlNDUklQVElPTl9TRVJWRVIsCiAJQUxU RVJfU1VCU0NSSVBUSU9OX0NPTk5FQ1RJT04sCiAJQUxURVJfU1VCU0NSSVBUSU9OX1NFVF9QVUJM SUNBVElPTiwKIAlBTFRFUl9TVUJTQ1JJUFRJT05fQUREX1BVQkxJQ0FUSU9OLApAQCAtNDA2Myw2 ICs0MDY1LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgQWx0ZXJTdWJzY3JpcHRpb25TdG10CiAJTm9kZVRh ZwkJdHlwZTsKIAlBbHRlclN1YnNjcmlwdGlvblR5cGUga2luZDsgLyogQUxURVJfU1VCU0NSSVBU SU9OX09QVElPTlMsIGV0YyAqLwogCWNoYXIJICAgKnN1Ym5hbWU7CQkvKiBOYW1lIG9mIHRoZSBz dWJzY3JpcHRpb24gKi8KKwljaGFyCSAgICpzZXJ2ZXJuYW1lOwkJLyogU2VydmVyIG5hbWUgb2Yg cHVibGlzaGVyICovCiAJY2hhcgkgICAqY29ubmluZm87CQkvKiBDb25uZWN0aW9uIHN0cmluZyB0 byBwdWJsaXNoZXIgKi8KIAlMaXN0CSAgICpwdWJsaWNhdGlvbjsJLyogT25lIG9yIG1vcmUgcHVi bGljYXRpb24gdG8gc3Vic2NyaWJlIHRvICovCiAJTGlzdAkgICAqb3B0aW9uczsJCS8qIExpc3Qg b2YgRGVmRWxlbSBub2RlcyAqLwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3Rl ZC9mb3JlaWduX2RhdGEub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9mb3JlaWduX2Rh dGEub3V0CmluZGV4IDZhZTkzYzQxZjYuLjgzZDAyYWYzNDMgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0 L3JlZ3Jlc3MvZXhwZWN0ZWQvZm9yZWlnbl9kYXRhLm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNz L2V4cGVjdGVkL2ZvcmVpZ25fZGF0YS5vdXQKQEAgLTQzMiw2ICs0MzIsMjAgQEAgU0VMRUNUIHBn X2Nvbm5pbmZvX2Zyb21fc2VydmVyKCdjb25uZWN0aW9uX3NlcnZlcicsICdyZWdyZXNzX3Rlc3Rf cm9sZTInLCBmYWxzZSkKIERST1AgVVNFUiBNQVBQSU5HIEZPUiByZWdyZXNzX3Rlc3Rfcm9sZSBT RVJWRVIgY29ubmVjdGlvbl9zZXJ2ZXI7CiBEUk9QIFVTRVIgTUFQUElORyBGT1IgUFVCTElDIFNF UlZFUiBjb25uZWN0aW9uX3NlcnZlcjsKIERST1AgU0VSVkVSIGNvbm5lY3Rpb25fc2VydmVyOwor U0VUIFJPTEUgcmVncmVzc190ZXN0X3JvbGU7CitDUkVBVEUgU0VSVkVSIHQzIEZPUkVJR04gREFU QSBXUkFQUEVSIHBnX2Nvbm5lY3Rpb25fZmR3OyAgIC0tIEVSUk9SOiBubyBwZXJtaXNzaW9ucyBv biBGRFcKK0VSUk9SOiAgcGVybWlzc2lvbiBkZW5pZWQgZm9yIGZvcmVpZ24tZGF0YSB3cmFwcGVy IHBnX2Nvbm5lY3Rpb25fZmR3CitSRVNFVCBST0xFOworR1JBTlQgVVNBR0UgT04gRk9SRUlHTiBE QVRBIFdSQVBQRVIgcGdfY29ubmVjdGlvbl9mZHcgVE8gcmVncmVzc190ZXN0X3JvbGU7CitTRVQg Uk9MRSByZWdyZXNzX3Rlc3Rfcm9sZTsKK0NSRUFURSBTRVJWRVIgdDMgRk9SRUlHTiBEQVRBIFdS QVBQRVIgcGdfY29ubmVjdGlvbl9mZHc7CitJTVBPUlQgRk9SRUlHTiBTQ0hFTUEgZm9vIEZST00g U0VSVkVSIHQzIElOVE8gYmFyOyAtLSBmYWlscworRVJST1I6ICBzY2hlbWEgImJhciIgZG9lcyBu b3QgZXhpc3QKK0NSRUFURSBVU0VSIE1BUFBJTkcgRk9SIFBVQkxJQyBTRVJWRVIgdDMgT1BUSU9O UyAodXNlciAneCcsIHBhc3N3b3JkICdzZWNyZXQnKTsKK0RST1AgVVNFUiBNQVBQSU5HIEZPUiBQ VUJMSUMgU0VSVkVSIHQzOworRFJPUCBTRVJWRVIgdDM7CitSRVNFVCBST0xFOworUkVWT0tFIFVT QUdFIE9OIEZPUkVJR04gREFUQSBXUkFQUEVSIHBnX2Nvbm5lY3Rpb25fZmR3IEZST00gcmVncmVz c190ZXN0X3JvbGU7CiAtLSBBTFRFUiBTRVJWRVIKIEFMVEVSIFNFUlZFUiBzMDsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tIEVSUk9SCiBFUlJPUjogIHN5bnRh eCBlcnJvciBhdCBvciBuZWFyICI7IgpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBl Y3RlZC9zdWJzY3JpcHRpb24ub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9zdWJzY3Jp cHRpb24ub3V0CmluZGV4IGIxNWVkZGJmZjMuLjExZWRhZTQ2YjEgMTAwNjQ0Ci0tLSBhL3NyYy90 ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvc3Vic2NyaXB0aW9uLm91dAorKysgYi9zcmMvdGVzdC9yZWdy ZXNzL2V4cGVjdGVkL3N1YnNjcmlwdGlvbi5vdXQKQEAgLTE0NCw2ICsxNDQsNTggQEAgRVJST1I6 ICBjb3VsZCBub3QgY29ubmVjdCB0byB0aGUgcHVibGlzaGVyOiBpbnZhbGlkIHBvcnQgbnVtYmVy OiAiLTEiCiBBTFRFUiBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViIENPTk5FQ1RJT04gJ2Zv b2Jhcic7CiBFUlJPUjogIGludmFsaWQgY29ubmVjdGlvbiBzdHJpbmcgc3ludGF4OiBtaXNzaW5n ICI9IiBhZnRlciAiZm9vYmFyIiBpbiBjb25uZWN0aW9uIGluZm8gc3RyaW5nCiAKK1JFU0VUIFNF U1NJT04gQVVUSE9SSVpBVElPTjsKK0dSQU5UIENSRUFURSBPTiBEQVRBQkFTRSBSRUdSRVNTSU9O IFRPIHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIzOworU0VUIFNFU1NJT04gQVVUSE9SSVpBVElP TiByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyMzsKK0NSRUFURSBTVUJTQ1JJUFRJT04gcmVncmVz c190ZXN0c3ViNiBDT05ORUNUSU9OICdkYm5hbWU9cmVncmVzc19kb2Vzbm90ZXhpc3QgcGFzc3dv cmQ9cmVncmVzc19mYWtlcGFzc3dvcmQnIFBVQkxJQ0FUSU9OIHRlc3RwdWIgV0lUSCAoc2xvdF9u YW1lID0gTk9ORSwgY29ubmVjdCA9IGZhbHNlKTsKK1dBUk5JTkc6ICBzdWJzY3JpcHRpb24gd2Fz IGNyZWF0ZWQsIGJ1dCBpcyBub3QgY29ubmVjdGVkCitISU5UOiAgVG8gaW5pdGlhdGUgcmVwbGlj YXRpb24sIHlvdSBtdXN0IG1hbnVhbGx5IGNyZWF0ZSB0aGUgcmVwbGljYXRpb24gc2xvdCwgZW5h YmxlIHRoZSBzdWJzY3JpcHRpb24sIGFuZCByZWZyZXNoIHRoZSBzdWJzY3JpcHRpb24uCitEUk9Q IFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWI2OworLS0gdGVzdCB1c2luZyBhIHNlcnZlciBv YmplY3QgaW5zdGVhZCBvZiBjb25uZWN0aW9uIHN0cmluZworUkVTRVQgU0VTU0lPTiBBVVRIT1JJ WkFUSU9OOworQ1JFQVRFIFNFUlZFUiByZWdyZXNzX3Rlc3RzZXJ2ZXIxIEZPUkVJR04gREFUQSBX UkFQUEVSIHBnX2Nvbm5lY3Rpb25fZmR3OworQ1JFQVRFIFNFUlZFUiByZWdyZXNzX3Rlc3RzZXJ2 ZXIyIEZPUkVJR04gREFUQSBXUkFQUEVSIHBnX2Nvbm5lY3Rpb25fZmR3OworQ1JFQVRFIFVTRVIg TUFQUElORyBGT1IgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlcjMgU0VSVkVSIHJlZ3Jlc3NfdGVz dHNlcnZlcjEKKyAgT1BUSU9OUyAocGFzc3dvcmQgJ3NlY3JldCcpOworQ1JFQVRFIFVTRVIgTUFQ UElORyBGT1IgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlcjMgU0VSVkVSIHJlZ3Jlc3NfdGVzdHNl cnZlcjIKKyAgT1BUSU9OUyAocGFzc3dvcmQgJ3NlY3JldCcpOworR1JBTlQgVVNBR0UgT04gRk9S RUlHTiBTRVJWRVIgcmVncmVzc190ZXN0c2VydmVyMiBUTyByZWdyZXNzX3N1YnNjcmlwdGlvbl91 c2VyMzsKK1NFVCBTRVNTSU9OIEFVVEhPUklaQVRJT04gcmVncmVzc19zdWJzY3JpcHRpb25fdXNl cjM7CitDUkVBVEUgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YjYgU0VSVkVSIHJlZ3Jlc3Nf dGVzdHNlcnZlcjEgUFVCTElDQVRJT04gdGVzdHB1YgorICBXSVRIIChzbG90X25hbWUgPSBOT05F LCBjb25uZWN0ID0gZmFsc2UpOyAtLSBmYWlscworRVJST1I6ICBwZXJtaXNzaW9uIGRlbmllZCBm b3IgZm9yZWlnbiBzZXJ2ZXIgcmVncmVzc190ZXN0c2VydmVyMQorQ1JFQVRFIFNVQlNDUklQVElP TiByZWdyZXNzX3Rlc3RzdWI2IFNFUlZFUiByZWdyZXNzX3Rlc3RzZXJ2ZXIyIFBVQkxJQ0FUSU9O IHRlc3RwdWIKKyAgV0lUSCAoc2xvdF9uYW1lID0gTk9ORSwgY29ubmVjdCA9IGZhbHNlKTsKK1dB Uk5JTkc6ICBzdWJzY3JpcHRpb24gd2FzIGNyZWF0ZWQsIGJ1dCBpcyBub3QgY29ubmVjdGVkCitI SU5UOiAgVG8gaW5pdGlhdGUgcmVwbGljYXRpb24sIHlvdSBtdXN0IG1hbnVhbGx5IGNyZWF0ZSB0 aGUgcmVwbGljYXRpb24gc2xvdCwgZW5hYmxlIHRoZSBzdWJzY3JpcHRpb24sIGFuZCByZWZyZXNo IHRoZSBzdWJzY3JpcHRpb24uCitSRVNFVCBTRVNTSU9OIEFVVEhPUklaQVRJT047CitBTFRFUiBT VUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViNiBTRVJWRVIgcmVncmVzc190ZXN0c2VydmVyMTsg LS0gZmFpbHMKK0VSUk9SOiAgc3Vic2NyaXB0aW9uIG93bmVyICJyZWdyZXNzX3N1YnNjcmlwdGlv bl91c2VyMyIgZG9lcyBub3QgaGF2ZSBwZXJtaXNzaW9uIG9uIGZvcmVpZ24gc2VydmVyICJyZWdy ZXNzX3Rlc3RzZXJ2ZXIxIgorR1JBTlQgVVNBR0UgT04gRk9SRUlHTiBTRVJWRVIgcmVncmVzc190 ZXN0c2VydmVyMSBUTyByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyMzsKK0FMVEVSIFNVQlNDUklQ VElPTiByZWdyZXNzX3Rlc3RzdWI2IFNFUlZFUiByZWdyZXNzX3Rlc3RzZXJ2ZXIxOworRFJPUCBV U0VSIE1BUFBJTkcgRk9SIHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIzIFNFUlZFUiByZWdyZXNz X3Rlc3RzZXJ2ZXIyOworRFJPUCBTRVJWRVIgcmVncmVzc190ZXN0c2VydmVyMjsKKy0tIHRlc3Qg YW4gRkRXIHdpdGggbm8gdmFsaWRhdG9yCitDUkVBVEUgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVn cmVzc19mZHc7CitDUkVBVEUgU0VSVkVSIHJlZ3Jlc3NfdGVzdHNlcnZlcjMgRk9SRUlHTiBEQVRB IFdSQVBQRVIgcmVncmVzc19mZHcKKyAgT1BUSU9OUyAoYWJjICd4eXonKTsKK0NSRUFURSBVU0VS IE1BUFBJTkcgRk9SIHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIzIFNFUlZFUiByZWdyZXNzX3Rl c3RzZXJ2ZXIzCisgIE9QVElPTlMgKHBhc3N3b3JkICdzZWNyZXQnKTsKK0dSQU5UIFVTQUdFIE9O IEZPUkVJR04gU0VSVkVSIHJlZ3Jlc3NfdGVzdHNlcnZlcjMgVE8gcmVncmVzc19zdWJzY3JpcHRp b25fdXNlcjM7CitTRVQgU0VTU0lPTiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3Nfc3Vic2NyaXB0aW9u X3VzZXIzOworQUxURVIgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YjYgU0VSVkVSIHJlZ3Jl c3NfdGVzdHNlcnZlcjM7CitBTFRFUiBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViNiBTRVJW RVIgcmVncmVzc190ZXN0c2VydmVyMTsKK1JFU0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTjsKK0RS T1AgVVNFUiBNQVBQSU5HIEZPUiByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyMyBTRVJWRVIgcmVn cmVzc190ZXN0c2VydmVyMzsKK0RST1AgU0VSVkVSIHJlZ3Jlc3NfdGVzdHNlcnZlcjM7CitEUk9Q IEZPUkVJR04gREFUQSBXUkFQUEVSIHJlZ3Jlc3NfZmR3OworQUxURVIgU1VCU0NSSVBUSU9OIHJl Z3Jlc3NfdGVzdHN1YjYgT1dORVIgVE8gcmVncmVzc19zdWJzY3JpcHRpb25fdXNlcjsgLS0gZmFp bCwgbm8gdXNlciBtYXBwaW5nCitFUlJPUjogIHVzZXIgbWFwcGluZyBub3QgZm91bmQgZm9yIHVz ZXIgInJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIiLCBzZXJ2ZXIgInJlZ3Jlc3NfdGVzdHNlcnZl cjEiCitEUk9QIFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWI2OworRFJPUCBVU0VSIE1BUFBJ TkcgRk9SIHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIzIFNFUlZFUiByZWdyZXNzX3Rlc3RzZXJ2 ZXIxOworRFJPUCBTRVJWRVIgcmVncmVzc190ZXN0c2VydmVyMTsKK1JFVk9LRSBDUkVBVEUgT04g REFUQUJBU0UgcmVncmVzc2lvbiBGUk9NIHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIzOworU0VU IFNFU1NJT04gQVVUSE9SSVpBVElPTiByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyOwogXGRScysK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBv ZiBzdWJzY3JpcHRpb25zCiAgICAgICBOYW1lICAgICAgIHwgICAgICAgICAgIE93bmVyICAgICAg ICAgICB8IEVuYWJsZWQgfCBQdWJsaWNhdGlvbiB8IEJpbmFyeSB8IFN0cmVhbWluZyB8IFR3by1w aGFzZSBjb21taXQgfCBEaXNhYmxlIG9uIGVycm9yIHwgT3JpZ2luIHwgUGFzc3dvcmQgcmVxdWly ZWQgfCBSdW4gYXMgb3duZXI/IHwgU3luY2hyb25vdXMgY29tbWl0IHwgICAgICAgICAgQ29ubmlu Zm8gICAgICAgICAgIHwgU2tpcCBMU04gCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL3Nx bC9mb3JlaWduX2RhdGEuc3FsIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvZm9yZWlnbl9kYXRhLnNx bAppbmRleCBiMTI1ZGZmOWZiLi4xNjNlYzYyZTc4IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdy ZXNzL3NxbC9mb3JlaWduX2RhdGEuc3FsCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2ZvcmVp Z25fZGF0YS5zcWwKQEAgLTIxMiw2ICsyMTIsMjMgQEAgRFJPUCBVU0VSIE1BUFBJTkcgRk9SIHJl Z3Jlc3NfdGVzdF9yb2xlIFNFUlZFUiBjb25uZWN0aW9uX3NlcnZlcjsKIERST1AgVVNFUiBNQVBQ SU5HIEZPUiBQVUJMSUMgU0VSVkVSIGNvbm5lY3Rpb25fc2VydmVyOwogRFJPUCBTRVJWRVIgY29u bmVjdGlvbl9zZXJ2ZXI7CiAKK1NFVCBST0xFIHJlZ3Jlc3NfdGVzdF9yb2xlOworQ1JFQVRFIFNF UlZFUiB0MyBGT1JFSUdOIERBVEEgV1JBUFBFUiBwZ19jb25uZWN0aW9uX2ZkdzsgICAtLSBFUlJP Ujogbm8gcGVybWlzc2lvbnMgb24gRkRXCitSRVNFVCBST0xFOworR1JBTlQgVVNBR0UgT04gRk9S RUlHTiBEQVRBIFdSQVBQRVIgcGdfY29ubmVjdGlvbl9mZHcgVE8gcmVncmVzc190ZXN0X3JvbGU7 CitTRVQgUk9MRSByZWdyZXNzX3Rlc3Rfcm9sZTsKKworQ1JFQVRFIFNFUlZFUiB0MyBGT1JFSUdO IERBVEEgV1JBUFBFUiBwZ19jb25uZWN0aW9uX2ZkdzsKKworSU1QT1JUIEZPUkVJR04gU0NIRU1B IGZvbyBGUk9NIFNFUlZFUiB0MyBJTlRPIGJhcjsgLS0gZmFpbHMKKworQ1JFQVRFIFVTRVIgTUFQ UElORyBGT1IgUFVCTElDIFNFUlZFUiB0MyBPUFRJT05TICh1c2VyICd4JywgcGFzc3dvcmQgJ3Nl Y3JldCcpOworRFJPUCBVU0VSIE1BUFBJTkcgRk9SIFBVQkxJQyBTRVJWRVIgdDM7CitEUk9QIFNF UlZFUiB0MzsKKworUkVTRVQgUk9MRTsKK1JFVk9LRSBVU0FHRSBPTiBGT1JFSUdOIERBVEEgV1JB UFBFUiBwZ19jb25uZWN0aW9uX2ZkdyBGUk9NIHJlZ3Jlc3NfdGVzdF9yb2xlOworCiAtLSBBTFRF UiBTRVJWRVIKIEFMVEVSIFNFUlZFUiBzMDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIC0tIEVSUk9SCiBBTFRFUiBTRVJWRVIgczAgT1BUSU9OUyAoYSAnMScpOyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAtLSBFUlJPUgpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3Qv cmVncmVzcy9zcWwvc3Vic2NyaXB0aW9uLnNxbCBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3N1YnNj cmlwdGlvbi5zcWwKaW5kZXggNDQ0ZTU2M2ZmMy4uYmY4NDIxZmI1MCAxMDA2NDQKLS0tIGEvc3Jj L3Rlc3QvcmVncmVzcy9zcWwvc3Vic2NyaXB0aW9uLnNxbAorKysgYi9zcmMvdGVzdC9yZWdyZXNz L3NxbC9zdWJzY3JpcHRpb24uc3FsCkBAIC04OCw2ICs4OCw2MiBAQCBDUkVBVEUgU1VCU0NSSVBU SU9OIHJlZ3Jlc3NfdGVzdHN1YjUgQ09OTkVDVElPTiAncG9ydD0tMScgUFVCTElDQVRJT04gdGVz dHB1YjsKIC0tIGZhaWwgLSBpbnZhbGlkIGNvbm5lY3Rpb24gc3RyaW5nIGR1cmluZyBBTFRFUgog QUxURVIgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YiBDT05ORUNUSU9OICdmb29iYXInOwog CitSRVNFVCBTRVNTSU9OIEFVVEhPUklaQVRJT047CitHUkFOVCBDUkVBVEUgT04gREFUQUJBU0Ug UkVHUkVTU0lPTiBUTyByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyMzsKK1NFVCBTRVNTSU9OIEFV VEhPUklaQVRJT04gcmVncmVzc19zdWJzY3JpcHRpb25fdXNlcjM7CisKK0NSRUFURSBTVUJTQ1JJ UFRJT04gcmVncmVzc190ZXN0c3ViNiBDT05ORUNUSU9OICdkYm5hbWU9cmVncmVzc19kb2Vzbm90 ZXhpc3QgcGFzc3dvcmQ9cmVncmVzc19mYWtlcGFzc3dvcmQnIFBVQkxJQ0FUSU9OIHRlc3RwdWIg V0lUSCAoc2xvdF9uYW1lID0gTk9ORSwgY29ubmVjdCA9IGZhbHNlKTsKK0RST1AgU1VCU0NSSVBU SU9OIHJlZ3Jlc3NfdGVzdHN1YjY7CisKKy0tIHRlc3QgdXNpbmcgYSBzZXJ2ZXIgb2JqZWN0IGlu c3RlYWQgb2YgY29ubmVjdGlvbiBzdHJpbmcKKworUkVTRVQgU0VTU0lPTiBBVVRIT1JJWkFUSU9O OworQ1JFQVRFIFNFUlZFUiByZWdyZXNzX3Rlc3RzZXJ2ZXIxIEZPUkVJR04gREFUQSBXUkFQUEVS IHBnX2Nvbm5lY3Rpb25fZmR3OworQ1JFQVRFIFNFUlZFUiByZWdyZXNzX3Rlc3RzZXJ2ZXIyIEZP UkVJR04gREFUQSBXUkFQUEVSIHBnX2Nvbm5lY3Rpb25fZmR3OworQ1JFQVRFIFVTRVIgTUFQUElO RyBGT1IgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlcjMgU0VSVkVSIHJlZ3Jlc3NfdGVzdHNlcnZl cjEKKyAgT1BUSU9OUyAocGFzc3dvcmQgJ3NlY3JldCcpOworQ1JFQVRFIFVTRVIgTUFQUElORyBG T1IgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlcjMgU0VSVkVSIHJlZ3Jlc3NfdGVzdHNlcnZlcjIK KyAgT1BUSU9OUyAocGFzc3dvcmQgJ3NlY3JldCcpOworR1JBTlQgVVNBR0UgT04gRk9SRUlHTiBT RVJWRVIgcmVncmVzc190ZXN0c2VydmVyMiBUTyByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyMzsK KworU0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTiByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyMzsK K0NSRUFURSBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViNiBTRVJWRVIgcmVncmVzc190ZXN0 c2VydmVyMSBQVUJMSUNBVElPTiB0ZXN0cHViCisgIFdJVEggKHNsb3RfbmFtZSA9IE5PTkUsIGNv bm5lY3QgPSBmYWxzZSk7IC0tIGZhaWxzCitDUkVBVEUgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVz dHN1YjYgU0VSVkVSIHJlZ3Jlc3NfdGVzdHNlcnZlcjIgUFVCTElDQVRJT04gdGVzdHB1YgorICBX SVRIIChzbG90X25hbWUgPSBOT05FLCBjb25uZWN0ID0gZmFsc2UpOworUkVTRVQgU0VTU0lPTiBB VVRIT1JJWkFUSU9OOworCitBTFRFUiBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViNiBTRVJW RVIgcmVncmVzc190ZXN0c2VydmVyMTsgLS0gZmFpbHMKK0dSQU5UIFVTQUdFIE9OIEZPUkVJR04g U0VSVkVSIHJlZ3Jlc3NfdGVzdHNlcnZlcjEgVE8gcmVncmVzc19zdWJzY3JpcHRpb25fdXNlcjM7 CitBTFRFUiBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViNiBTRVJWRVIgcmVncmVzc190ZXN0 c2VydmVyMTsKK0RST1AgVVNFUiBNQVBQSU5HIEZPUiByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2Vy MyBTRVJWRVIgcmVncmVzc190ZXN0c2VydmVyMjsKK0RST1AgU0VSVkVSIHJlZ3Jlc3NfdGVzdHNl cnZlcjI7CisKKy0tIHRlc3QgYW4gRkRXIHdpdGggbm8gdmFsaWRhdG9yCitDUkVBVEUgRk9SRUlH TiBEQVRBIFdSQVBQRVIgcmVncmVzc19mZHc7CitDUkVBVEUgU0VSVkVSIHJlZ3Jlc3NfdGVzdHNl cnZlcjMgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcmVncmVzc19mZHcKKyAgT1BUSU9OUyAoYWJjICd4 eXonKTsKK0NSRUFURSBVU0VSIE1BUFBJTkcgRk9SIHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIz IFNFUlZFUiByZWdyZXNzX3Rlc3RzZXJ2ZXIzCisgIE9QVElPTlMgKHBhc3N3b3JkICdzZWNyZXQn KTsKK0dSQU5UIFVTQUdFIE9OIEZPUkVJR04gU0VSVkVSIHJlZ3Jlc3NfdGVzdHNlcnZlcjMgVE8g cmVncmVzc19zdWJzY3JpcHRpb25fdXNlcjM7CisKK1NFVCBTRVNTSU9OIEFVVEhPUklaQVRJT04g cmVncmVzc19zdWJzY3JpcHRpb25fdXNlcjM7CitBTFRFUiBTVUJTQ1JJUFRJT04gcmVncmVzc190 ZXN0c3ViNiBTRVJWRVIgcmVncmVzc190ZXN0c2VydmVyMzsKK0FMVEVSIFNVQlNDUklQVElPTiBy ZWdyZXNzX3Rlc3RzdWI2IFNFUlZFUiByZWdyZXNzX3Rlc3RzZXJ2ZXIxOworCitSRVNFVCBTRVNT SU9OIEFVVEhPUklaQVRJT047CitEUk9QIFVTRVIgTUFQUElORyBGT1IgcmVncmVzc19zdWJzY3Jp cHRpb25fdXNlcjMgU0VSVkVSIHJlZ3Jlc3NfdGVzdHNlcnZlcjM7CitEUk9QIFNFUlZFUiByZWdy ZXNzX3Rlc3RzZXJ2ZXIzOworRFJPUCBGT1JFSUdOIERBVEEgV1JBUFBFUiByZWdyZXNzX2ZkdzsK KworQUxURVIgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YjYgT1dORVIgVE8gcmVncmVzc19z dWJzY3JpcHRpb25fdXNlcjsgLS0gZmFpbCwgbm8gdXNlciBtYXBwaW5nCitEUk9QIFNVQlNDUklQ VElPTiByZWdyZXNzX3Rlc3RzdWI2OworCitEUk9QIFVTRVIgTUFQUElORyBGT1IgcmVncmVzc19z dWJzY3JpcHRpb25fdXNlcjMgU0VSVkVSIHJlZ3Jlc3NfdGVzdHNlcnZlcjE7CitEUk9QIFNFUlZF UiByZWdyZXNzX3Rlc3RzZXJ2ZXIxOworUkVWT0tFIENSRUFURSBPTiBEQVRBQkFTRSByZWdyZXNz aW9uIEZST00gcmVncmVzc19zdWJzY3JpcHRpb25fdXNlcjM7CitTRVQgU0VTU0lPTiBBVVRIT1JJ WkFUSU9OIHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXI7CisKIFxkUnMrCiAKIEFMVEVSIFNVQlND UklQVElPTiByZWdyZXNzX3Rlc3RzdWIgU0VUIFBVQkxJQ0FUSU9OIHRlc3RwdWIyLCB0ZXN0cHVi MyBXSVRIIChyZWZyZXNoID0gZmFsc2UpOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3Qvc3Vic2NyaXB0 aW9uL3QvMDAxX3JlcF9jaGFuZ2VzLnBsIGIvc3JjL3Rlc3Qvc3Vic2NyaXB0aW9uL3QvMDAxX3Jl cF9jaGFuZ2VzLnBsCmluZGV4IDljY2ViZDg5MGEuLjRjYmYyZGNlYWEgMTAwNjQ0Ci0tLSBhL3Ny Yy90ZXN0L3N1YnNjcmlwdGlvbi90LzAwMV9yZXBfY2hhbmdlcy5wbAorKysgYi9zcmMvdGVzdC9z dWJzY3JpcHRpb24vdC8wMDFfcmVwX2NoYW5nZXMucGwKQEAgLTI3LDYgKzI3LDggQEAgJG5vZGVf cHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKIAkiQ1JFQVRFIFRBQkxFIHRhYl9ub3Ry ZXAgQVMgU0VMRUNUIGdlbmVyYXRlX3NlcmllcygxLDEwKSBBUyBhIik7CiAkbm9kZV9wdWJsaXNo ZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAogCSJDUkVBVEUgVEFCTEUgdGFiX2lucyBBUyBTRUxF Q1QgZ2VuZXJhdGVfc2VyaWVzKDEsMTAwMikgQVMgYSIpOworJG5vZGVfcHVibGlzaGVyLT5zYWZl X3BzcWwoJ3Bvc3RncmVzJywKKwkiQ1JFQVRFIFRBQkxFIHRhYl9pbnMyIEFTIFNFTEVDVCBnZW5l cmF0ZV9zZXJpZXMoMSwxMDAyKSBBUyBhIik7CiAkbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgn cG9zdGdyZXMnLAogCSJDUkVBVEUgVEFCTEUgdGFiX2Z1bGwgQVMgU0VMRUNUIGdlbmVyYXRlX3Nl cmllcygxLDEwKSBBUyBhIik7CiAkbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgncG9zdGdyZXMn LCAiQ1JFQVRFIFRBQkxFIHRhYl9mdWxsMiAoeCB0ZXh0KSIpOwpAQCAtNjUsNiArNjcsNyBAQCAk bm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAogIyBTZXR1cCBzdHJ1Y3R1cmUg b24gc3Vic2NyaWJlcgogJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsICJD UkVBVEUgVEFCTEUgdGFiX25vdHJlcCAoYSBpbnQpIik7CiAkbm9kZV9zdWJzY3JpYmVyLT5zYWZl X3BzcWwoJ3Bvc3RncmVzJywgIkNSRUFURSBUQUJMRSB0YWJfaW5zIChhIGludCkiKTsKKyRub2Rl X3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLCAiQ1JFQVRFIFRBQkxFIHRhYl9pbnMy IChhIGludCkiKTsKICRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLCAiQ1JF QVRFIFRBQkxFIHRhYl9mdWxsIChhIGludCkiKTsKICRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNx bCgncG9zdGdyZXMnLCAiQ1JFQVRFIFRBQkxFIHRhYl9mdWxsMiAoeCB0ZXh0KSIpOwogJG5vZGVf c3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCkBAIC0xMTAsNiArMTEzLDIyIEBAICRu b2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAogCSJDUkVBVEUgU1VCU0NSSVBU SU9OIHRhcF9zdWIgQ09OTkVDVElPTiAnJHB1Ymxpc2hlcl9jb25uc3RyJyBQVUJMSUNBVElPTiB0 YXBfcHViLCB0YXBfcHViX2luc19vbmx5IgogKTsKIAorbXkgJHB1Ymxpc2hlcl9ob3N0ID0gJG5v ZGVfcHVibGlzaGVyLT5ob3N0OworbXkgJHB1Ymxpc2hlcl9wb3J0ID0gJG5vZGVfcHVibGlzaGVy LT5wb3J0OworJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCisJIkNSRUFU RSBTRVJWRVIgdGFwX3N1YjJfc2VydmVyIEZPUkVJR04gREFUQSBXUkFQUEVSIHBnX2Nvbm5lY3Rp b25fZmR3IE9QVElPTlMgKGhvc3QgJyRwdWJsaXNoZXJfaG9zdCcsIHBvcnQgJyRwdWJsaXNoZXJf cG9ydCcsIGRibmFtZSAncG9zdGdyZXMnKSIKKyk7CisKKyRub2RlX3N1YnNjcmliZXItPnNhZmVf cHNxbCgncG9zdGdyZXMnLAorCSJDUkVBVEUgVVNFUiBNQVBQSU5HIEZPUiBQVUJMSUMgU0VSVkVS IHRhcF9zdWIyX3NlcnZlciIKKyk7CisKKyRub2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0 Z3JlcycsICJDUkVBVEUgUFVCTElDQVRJT04gdGFwX3NpbXBsZV9wdWIgRk9SIFRBQkxFIHRhYl9p bnMyIik7CisKKyRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAorCSJDUkVB VEUgU1VCU0NSSVBUSU9OIHRhcF9zdWIyIFNFUlZFUiB0YXBfc3ViMl9zZXJ2ZXIgUFVCTElDQVRJ T04gdGFwX3NpbXBsZV9wdWIgV0lUSCAocGFzc3dvcmRfcmVxdWlyZWQ9ZmFsc2UpIgorKTsKKwog IyBXYWl0IGZvciBpbml0aWFsIHRhYmxlIHN5bmMgdG8gZmluaXNoCiAkbm9kZV9zdWJzY3JpYmVy LT53YWl0X2Zvcl9zdWJzY3JpcHRpb25fc3luYygkbm9kZV9wdWJsaXNoZXIsICd0YXBfc3ViJyk7 CiAKQEAgLTEyMSwxMSArMTQwLDIyIEBAICRyZXN1bHQgPQogICAkbm9kZV9zdWJzY3JpYmVyLT5z YWZlX3BzcWwoJ3Bvc3RncmVzJywgIlNFTEVDVCBjb3VudCgqKSBGUk9NIHRhYl9pbnMiKTsKIGlz KCRyZXN1bHQsIHFxKDEwMDIpLCAnY2hlY2sgaW5pdGlhbCBkYXRhIHdhcyBjb3BpZWQgdG8gc3Vi c2NyaWJlcicpOwogCiskcmVzdWx0ID0KKyAgJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdw b3N0Z3JlcycsICJTRUxFQ1QgY291bnQoKikgRlJPTSB0YWJfaW5zMiIpOworaXMoJHJlc3VsdCwg cXEoMTAwMiksICdjaGVjayBpbml0aWFsIGRhdGEgd2FzIGNvcGllZCB0byBzdWJzY3JpYmVyJyk7 CisKKyRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLCAiQUxURVIgU1VCU0NS SVBUSU9OIHRhcF9zdWIyIENPTk5FQ1RJT04gJyRwdWJsaXNoZXJfY29ubnN0ciciKTsKKwogJG5v ZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKIAkiSU5TRVJUIElOVE8gdGFiX2lu cyBTRUxFQ1QgZ2VuZXJhdGVfc2VyaWVzKDEsNTApIik7CiAkbm9kZV9wdWJsaXNoZXItPnNhZmVf cHNxbCgncG9zdGdyZXMnLCAiREVMRVRFIEZST00gdGFiX2lucyBXSEVSRSBhID4gMjAiKTsKICRu b2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsICJVUERBVEUgdGFiX2lucyBTRVQg YSA9IC1hIik7CiAKKyRub2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCisJIklO U0VSVCBJTlRPIHRhYl9pbnMyIFNFTEVDVCBnZW5lcmF0ZV9zZXJpZXMoMSw1MCkiKTsKKworJG5v ZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsICJBTFRFUiBTVUJTQ1JJUFRJT04g dGFwX3N1YjIgU0VSVkVSIHRhcF9zdWIyX3NlcnZlciIpOworCiAkbm9kZV9wdWJsaXNoZXItPnNh ZmVfcHNxbCgncG9zdGdyZXMnLAogCSJJTlNFUlQgSU5UTyB0YWJfcmVwIFNFTEVDVCBnZW5lcmF0 ZV9zZXJpZXMoMSw1MCkiKTsKICRub2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0Z3Jlcycs ICJERUxFVEUgRlJPTSB0YWJfcmVwIFdIRVJFIGEgPiAyMCIpOwpAQCAtMTU4LDYgKzE4OCwxMCBA QCAkcmVzdWx0ID0gJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCiAJIlNF TEVDVCBjb3VudCgqKSwgbWluKGEpLCBtYXgoYSkgRlJPTSB0YWJfaW5zIik7CiBpcygkcmVzdWx0 LCBxcSgxMDUyfDF8MTAwMiksICdjaGVjayByZXBsaWNhdGVkIGluc2VydHMgb24gc3Vic2NyaWJl cicpOwogCiskcmVzdWx0ID0gJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3Jlcycs CisJIlNFTEVDVCBjb3VudCgqKSwgbWluKGEpLCBtYXgoYSkgRlJPTSB0YWJfaW5zMiIpOworaXMo JHJlc3VsdCwgcXEoMTA1MnwxfDEwMDIpLCAnY2hlY2sgcmVwbGljYXRlZCBpbnNlcnRzIG9uIHN1 YnNjcmliZXInKTsKKwogJHJlc3VsdCA9ICRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9z dGdyZXMnLAogCSJTRUxFQ1QgY291bnQoKiksIG1pbihhKSwgbWF4KGEpIEZST00gdGFiX3JlcCIp OwogaXMoJHJlc3VsdCwgcXEoMjB8LTIwfC0xKSwgJ2NoZWNrIHJlcGxpY2F0ZWQgY2hhbmdlcyBv biBzdWJzY3JpYmVyJyk7CkBAIC00NDksMTAgKzQ4MywyNyBAQCAkbm9kZV9wdWJsaXNoZXItPnBv bGxfcXVlcnlfdW50aWwoJ3Bvc3RncmVzJywKICAgb3IgZGllCiAgICJUaW1lZCBvdXQgd2hpbGUg d2FpdGluZyBmb3IgYXBwbHkgdG8gcmVzdGFydCBhZnRlciBjaGFuZ2luZyBQVUJMSUNBVElPTiI7 CiAKKyMgdGVzdCB0aGF0IGNoYW5nZXMgdG8gYSBmb3JlaWduIHNlcnZlciBzdWJzY3JpcHRpb24g Y2F1c2UgdGhlIHdvcmtlcgorIyB0byByZXN0YXJ0Ciskb2xkcGlkID0gJG5vZGVfcHVibGlzaGVy LT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKKwkiU0VMRUNUIHBpZCBGUk9NIHBnX3N0YXRfcmVwbGlj YXRpb24gV0hFUkUgYXBwbGljYXRpb25fbmFtZSA9ICd0YXBfc3ViMicgQU5EIHN0YXRlID0gJ3N0 cmVhbWluZyc7IgorKTsKKyRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAor CSJBTFRFUiBTRVJWRVIgdGFwX3N1YjJfc2VydmVyIE9QVElPTlMgKHNzbG1vZGUgJ2Rpc2FibGUn KSIKKyk7Ciskbm9kZV9wdWJsaXNoZXItPnBvbGxfcXVlcnlfdW50aWwoJ3Bvc3RncmVzJywKKwki U0VMRUNUIHBpZCAhPSAkb2xkcGlkIEZST00gcGdfc3RhdF9yZXBsaWNhdGlvbiBXSEVSRSBhcHBs aWNhdGlvbl9uYW1lID0gJ3RhcF9zdWIyJyBBTkQgc3RhdGUgPSAnc3RyZWFtaW5nJzsiCisgICkK KyAgb3IgZGllCisgICJUaW1lZCBvdXQgd2hpbGUgd2FpdGluZyBmb3IgYXBwbHkgdG8gcmVzdGFy dCBhZnRlciBjaGFuZ2luZyBQVUJMSUNBVElPTiI7CisKICRub2RlX3B1Ymxpc2hlci0+c2FmZV9w c3FsKCdwb3N0Z3JlcycsCiAJIklOU0VSVCBJTlRPIHRhYl9pbnMgU0VMRUNUIGdlbmVyYXRlX3Nl cmllcygxMDAxLDExMDApIik7CiAkbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgncG9zdGdyZXMn LCAiREVMRVRFIEZST00gdGFiX3JlcCIpOwogCiskbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgn cG9zdGdyZXMnLAorCSJJTlNFUlQgSU5UTyB0YWJfaW5zMiBTRUxFQ1QgZ2VuZXJhdGVfc2VyaWVz KDEwMDEsMTEwMCkiKTsKKwogIyBSZXN0YXJ0IHRoZSBwdWJsaXNoZXIgYW5kIGNoZWNrIHRoZSBz dGF0ZSBvZiB0aGUgc3Vic2NyaWJlciB3aGljaAogIyBzaG91bGQgYmUgaW4gYSBzdHJlYW1pbmcg c3RhdGUgYWZ0ZXIgY2F0Y2hpbmcgdXAuCiAkbm9kZV9wdWJsaXNoZXItPnN0b3AoJ2Zhc3QnKTsK QEAgLTQ2NSw2ICs1MTYsMTEgQEAgJHJlc3VsdCA9ICRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNx bCgncG9zdGdyZXMnLAogaXMoJHJlc3VsdCwgcXEoMTE1MnwxfDExMDApLAogCSdjaGVjayByZXBs aWNhdGVkIGluc2VydHMgYWZ0ZXIgc3Vic2NyaXB0aW9uIHB1YmxpY2F0aW9uIGNoYW5nZScpOwog CiskcmVzdWx0ID0gJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCisJIlNF TEVDVCBjb3VudCgqKSwgbWluKGEpLCBtYXgoYSkgRlJPTSB0YWJfaW5zMiIpOworaXMoJHJlc3Vs dCwgcXEoMTE1MnwxfDExMDApLAorCSdjaGVjayByZXBsaWNhdGVkIGluc2VydHMgYWZ0ZXIgc3Vi c2NyaXB0aW9uIHB1YmxpY2F0aW9uIGNoYW5nZScpOworCiAkcmVzdWx0ID0gJG5vZGVfc3Vic2Ny aWJlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCiAJIlNFTEVDVCBjb3VudCgqKSwgbWluKGEpLCBt YXgoYSkgRlJPTSB0YWJfcmVwIik7CiBpcygkcmVzdWx0LCBxcSgyMHwtMjB8LTEpLApAQCAtNTMz LDYgKzU4OSw3IEBAICRub2RlX3B1Ymxpc2hlci0+cG9sbF9xdWVyeV91bnRpbCgncG9zdGdyZXMn LAogCiAjIGNoZWNrIGFsbCB0aGUgY2xlYW51cAogJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3Fs KCdwb3N0Z3JlcycsICJEUk9QIFNVQlNDUklQVElPTiB0YXBfc3ViX3JlbmFtZWQiKTsKKyRub2Rl X3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLCAiRFJPUCBTVUJTQ1JJUFRJT04gdGFw X3N1YjIiKTsKIAogJHJlc3VsdCA9ICRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdy ZXMnLAogCSJTRUxFQ1QgY291bnQoKikgRlJPTSBwZ19zdWJzY3JpcHRpb24iKTsKLS0gCjIuMzQu MQoK --=-BGB4L0ZPZie64oIr3KQS Content-Disposition: attachment; filename="v7-0004-Introduce-pg_create_connection-predefined-role.patch" Content-Type: text/x-patch; name="v7-0004-Introduce-pg_create_connection-predefined-role.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 RnJvbSBlNzI2MDFmY2Y0ZTcxZWYzNThiYmFkZjlkODc3NDFjZDVhYTYzZGY5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKZWZmIERhdmlzIDxqZWZmQGotZGF2aXMuY29tPgpEYXRlOiBU dWUsIDIgSmFuIDIwMjQgMTM6MTM6NTQgLTA4MDAKU3ViamVjdDogW1BBVENIIHY3IDQvNF0gSW50 cm9kdWNlIHBnX2NyZWF0ZV9jb25uZWN0aW9uIHByZWRlZmluZWQgcm9sZS4KCkluIGFkZGl0aW9u IHRvIHBnX2NyZWF0ZV9zdWJzY3JpcHRpb24sIG1lbWJlcnNoaXAgaW4gdGhpcyByb2xlIGlzCm5l Y2Vzc2FyeSB0byBjcmVhdGUgYSBzdWJzY3JpcHRpb24gd2l0aCBhIGNvbm5lY3Rpb24gc3RyaW5n LiBUaGUKcGdfY3JlYXRlX3N1YnNjcmlwdGlvbiByb2xlIGlzIGEgbWVtYmVyIG9mIHBnX2NyZWF0 ZV9jb25uZWN0aW9uLCBzbyBieQpkZWZhdWx0IHBnX2NyZWF0ZV9zdWJzY3JpcHRpb24gaGFzIHRo ZSBzYW1lIGNhcGFiaWxpdHkgYXMgYmVmb3JlLgoKQW4gYWRtaW5pc3RyYXRvciBtYXkgcmV2b2tl IHBnX2NyZWF0ZV9jb25uZWN0aW9uIGZyb20KcGdfY3JlYXRlX3N1YnNjcmlwdGlvbiwgd2hpY2gg d2lsbCBlbmFibGUgdGhlIHByaXZpbGVnZXMgdG8gYmUKc2VwYXJhdGVkLiBUaGF0IHdpbGwgYmUg dXNlZnVsIGluIGFuIHVwY29taW5nIGNoYW5nZSB0byBpbnRyb2R1Y2UKQ1JFQVRFIFNVQlNDUklQ VElPTiAuLi4gU0VSVkVSLCB3aGljaCB3aWxsIG5vdCB1c2UgYSByYXcgY29ubmVjdGlvbgpzdHJp bmcsIGFuZCB0aGVyZWZvcmUgbm90IHJlcXVpcmUgbWVtYmVyc2hpcCBpbiB0aGUKcGdfY3JlYXRl X2Nvbm5lY3Rpb24gcm9sZS4KLS0tCiAuLi4vcG9zdGdyZXNfZmR3L2V4cGVjdGVkL3Bvc3RncmVz X2Zkdy5vdXQgICAgfCAgMiArLQogY29udHJpYi9wb3N0Z3Jlc19mZHcvc3FsL3Bvc3RncmVzX2Zk dy5zcWwgICAgIHwgIDIgKy0KIGNvbnRyaWIvcG9zdGdyZXNfZmR3L3QvMDEwX3N1YnNjcmlwdGlv bi5wbCAgICB8ICAyICstCiBkb2Mvc3JjL3NnbWwvcmVmL2FsdGVyX3NlcnZlci5zZ21sICAgICAg ICAgICAgfCAxNCArKysrKysrKwogZG9jL3NyYy9zZ21sL3JlZi9jcmVhdGVfc2VydmVyLnNnbWwg ICAgICAgICAgIHwgMTQgKysrKysrKysKIGRvYy9zcmMvc2dtbC91c2VyLW1hbmFnLnNnbWwgICAg ICAgICAgICAgICAgICB8IDEyICsrKysrLS0KIHNyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX2Z1 bmN0aW9ucy5zcWwgICAgICB8ICAyICsrCiBzcmMvYmFja2VuZC9jb21tYW5kcy9mb3JlaWduY21k cy5jICAgICAgICAgICAgfCAyNyArKysrKysrKysrKysrKysrCiBzcmMvYmFja2VuZC9jb21tYW5k cy9zdWJzY3JpcHRpb25jbWRzLmMgICAgICAgfCAyNSArKysrKysrKysrKysrLS0KIHNyYy9iYWNr ZW5kL2ZvcmVpZ24vZm9yZWlnbi5jICAgICAgICAgICAgICAgICB8ICAxICsKIHNyYy9iYWNrZW5k L3BhcnNlci9ncmFtLnkgICAgICAgICAgICAgICAgICAgICB8IDMwICsrKysrKysrKysrKysrLS0t CiBzcmMvaW5jbHVkZS9jYXRhbG9nL3BnX2F1dGhpZC5kYXQgICAgICAgICAgICAgfCAgNSArKysK IHNyYy9pbmNsdWRlL2NhdGFsb2cvcGdfZm9yZWlnbl9zZXJ2ZXIuaCAgICAgICB8ICAxICsKIHNy Yy9pbmNsdWRlL2ZvcmVpZ24vZm9yZWlnbi5oICAgICAgICAgICAgICAgICB8ICAxICsKIHNyYy9p bmNsdWRlL25vZGVzL3BhcnNlbm9kZXMuaCAgICAgICAgICAgICAgICB8ICAzICsrCiBzcmMvdGVz dC9yZWdyZXNzL2V4cGVjdGVkL3N1YnNjcmlwdGlvbi5vdXQgICAgfCAzMSArKysrKysrKysrKysr KysrLS0KIHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3N1YnNjcmlwdGlvbi5zcWwgICAgICAgICB8IDMy ICsrKysrKysrKysrKysrKysrLS0KIHNyYy90ZXN0L3N1YnNjcmlwdGlvbi90LzAwMV9yZXBfY2hh bmdlcy5wbCAgICB8ICAyICstCiAxOCBmaWxlcyBjaGFuZ2VkLCAxODkgaW5zZXJ0aW9ucygrKSwg MTcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvY29udHJpYi9wb3N0Z3Jlc19mZHcvZXhwZWN0 ZWQvcG9zdGdyZXNfZmR3Lm91dCBiL2NvbnRyaWIvcG9zdGdyZXNfZmR3L2V4cGVjdGVkL3Bvc3Rn cmVzX2Zkdy5vdXQKaW5kZXggMGFhNzUxZTA5OS4uZGNlODc5MTlhZiAxMDA2NDQKLS0tIGEvY29u dHJpYi9wb3N0Z3Jlc19mZHcvZXhwZWN0ZWQvcG9zdGdyZXNfZmR3Lm91dAorKysgYi9jb250cmli L3Bvc3RncmVzX2Zkdy9leHBlY3RlZC9wb3N0Z3Jlc19mZHcub3V0CkBAIC0yLDcgKzIsNyBAQAog LS0gY3JlYXRlIEZEVyBvYmplY3RzCiAtLSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiBDUkVBVEUgRVhURU5TSU9OIHBv c3RncmVzX2ZkdzsKLUNSRUFURSBTRVJWRVIgdGVzdHNlcnZlcjEgRk9SRUlHTiBEQVRBIFdSQVBQ RVIgcG9zdGdyZXNfZmR3OworQ1JFQVRFIFNFUlZFUiB0ZXN0c2VydmVyMSBGT1JFSUdOIERBVEEg V1JBUFBFUiBwb3N0Z3Jlc19mZHcgRk9SIFNVQlNDUklQVElPTjsKIERPICRkJAogICAgIEJFR0lO CiAgICAgICAgIEVYRUNVVEUgJCRDUkVBVEUgU0VSVkVSIGxvb3BiYWNrIEZPUkVJR04gREFUQSBX UkFQUEVSIHBvc3RncmVzX2ZkdwpkaWZmIC0tZ2l0IGEvY29udHJpYi9wb3N0Z3Jlc19mZHcvc3Fs L3Bvc3RncmVzX2Zkdy5zcWwgYi9jb250cmliL3Bvc3RncmVzX2Zkdy9zcWwvcG9zdGdyZXNfZmR3 LnNxbAppbmRleCAzYjI3MTZiODJlLi5hMzRhY2EyOTU2IDEwMDY0NAotLS0gYS9jb250cmliL3Bv c3RncmVzX2Zkdy9zcWwvcG9zdGdyZXNfZmR3LnNxbAorKysgYi9jb250cmliL3Bvc3RncmVzX2Zk dy9zcWwvcG9zdGdyZXNfZmR3LnNxbApAQCAtNCw3ICs0LDcgQEAKIAogQ1JFQVRFIEVYVEVOU0lP TiBwb3N0Z3Jlc19mZHc7CiAKLUNSRUFURSBTRVJWRVIgdGVzdHNlcnZlcjEgRk9SRUlHTiBEQVRB IFdSQVBQRVIgcG9zdGdyZXNfZmR3OworQ1JFQVRFIFNFUlZFUiB0ZXN0c2VydmVyMSBGT1JFSUdO IERBVEEgV1JBUFBFUiBwb3N0Z3Jlc19mZHcgRk9SIFNVQlNDUklQVElPTjsKIERPICRkJAogICAg IEJFR0lOCiAgICAgICAgIEVYRUNVVEUgJCRDUkVBVEUgU0VSVkVSIGxvb3BiYWNrIEZPUkVJR04g REFUQSBXUkFQUEVSIHBvc3RncmVzX2ZkdwpkaWZmIC0tZ2l0IGEvY29udHJpYi9wb3N0Z3Jlc19m ZHcvdC8wMTBfc3Vic2NyaXB0aW9uLnBsIGIvY29udHJpYi9wb3N0Z3Jlc19mZHcvdC8wMTBfc3Vi c2NyaXB0aW9uLnBsCmluZGV4IGRhYTBiOWVkZDIuLmQxZDgwZDA2NzkgMTAwNjQ0Ci0tLSBhL2Nv bnRyaWIvcG9zdGdyZXNfZmR3L3QvMDEwX3N1YnNjcmlwdGlvbi5wbAorKysgYi9jb250cmliL3Bv c3RncmVzX2Zkdy90LzAxMF9zdWJzY3JpcHRpb24ucGwKQEAgLTM4LDcgKzM4LDcgQEAgJG5vZGVf cHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywgIkNSRUFURSBQVUJMSUNBVElPTiB0YXBf cHViIEZPUiBUQUJMRSB0YWIKIG15ICRwdWJsaXNoZXJfaG9zdCA9ICRub2RlX3B1Ymxpc2hlci0+ aG9zdDsKIG15ICRwdWJsaXNoZXJfcG9ydCA9ICRub2RlX3B1Ymxpc2hlci0+cG9ydDsKICRub2Rl X3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAotCSJDUkVBVEUgU0VSVkVSIHRhcF9z ZXJ2ZXIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcG9zdGdyZXNfZmR3IE9QVElPTlMgKGhvc3QgJyRw dWJsaXNoZXJfaG9zdCcsIHBvcnQgJyRwdWJsaXNoZXJfcG9ydCcsIGRibmFtZSAncG9zdGdyZXMn KSIKKwkiQ1JFQVRFIFNFUlZFUiB0YXBfc2VydmVyIEZPUkVJR04gREFUQSBXUkFQUEVSIHBvc3Rn cmVzX2ZkdyBGT1IgU1VCU0NSSVBUSU9OIE9QVElPTlMgKGhvc3QgJyRwdWJsaXNoZXJfaG9zdCcs IHBvcnQgJyRwdWJsaXNoZXJfcG9ydCcsIGRibmFtZSAncG9zdGdyZXMnKSIKICk7CiAKICRub2Rl X3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLApkaWZmIC0tZ2l0IGEvZG9jL3NyYy9z Z21sL3JlZi9hbHRlcl9zZXJ2ZXIuc2dtbCBiL2RvYy9zcmMvc2dtbC9yZWYvYWx0ZXJfc2VydmVy LnNnbWwKaW5kZXggNDY3YmY4NTU4OS4uMWE0MjI3ZTU0OCAxMDA2NDQKLS0tIGEvZG9jL3NyYy9z Z21sL3JlZi9hbHRlcl9zZXJ2ZXIuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvcmVmL2FsdGVyX3Nl cnZlci5zZ21sCkBAIC0yMiw2ICsyMiw3IEBAIFBvc3RncmVTUUwgZG9jdW1lbnRhdGlvbgogIDxy ZWZzeW5vcHNpc2Rpdj4KIDxzeW5vcHNpcz4KIEFMVEVSIFNFUlZFUiA8cmVwbGFjZWFibGUgY2xh c3M9InBhcmFtZXRlciI+bmFtZTwvcmVwbGFjZWFibGU+IFsgVkVSU0lPTiAnPHJlcGxhY2VhYmxl IGNsYXNzPSJwYXJhbWV0ZXIiPm5ld192ZXJzaW9uPC9yZXBsYWNlYWJsZT4nIF0KKyAgICBbIHsg Rk9SIHwgTk8gfSBTVUJTQ1JJUFRJT04gXQogICAgIFsgT1BUSU9OUyAoIFsgQUREIHwgU0VUIHwg RFJPUCBdIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5vcHRpb248L3JlcGxhY2VhYmxl PiBbJzxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj52YWx1ZTwvcmVwbGFjZWFibGU+J10g WywgLi4uIF0gKSBdCiBBTFRFUiBTRVJWRVIgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIi Pm5hbWU8L3JlcGxhY2VhYmxlPiBPV05FUiBUTyB7IDxyZXBsYWNlYWJsZT5uZXdfb3duZXI8L3Jl cGxhY2VhYmxlPiB8IENVUlJFTlRfUk9MRSB8IENVUlJFTlRfVVNFUiB8IFNFU1NJT05fVVNFUiB9 CiBBTFRFUiBTRVJWRVIgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPm5hbWU8L3JlcGxh Y2VhYmxlPiBSRU5BTUUgVE8gPHJlcGxhY2VhYmxlPm5ld19uYW1lPC9yZXBsYWNlYWJsZT4KQEAg LTcwLDYgKzcxLDE5IEBAIEFMVEVSIFNFUlZFUiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRl ciI+bmFtZTwvcmVwbGFjZWFibGU+IFJFTkFNRSBUTyA8cmVwbGFjCiAgICAgPC9saXN0aXRlbT4K ICAgIDwvdmFybGlzdGVudHJ5PgogCisgICA8dmFybGlzdGVudHJ5PgorICAgIDx0ZXJtPjxsaXRl cmFsPnsgRk9SIHwgTk8gfSBTVUJTQ1JJUFRJT048L2xpdGVyYWw+PC90ZXJtPgorICAgIDxsaXN0 aXRlbT4KKyAgICAgPHBhcmE+CisgICAgICBUaGlzIGNsYXVzZSBzcGVjaWZpZXMgd2hldGhlciB0 aGUgZm9yZWlnbiBzZXJ2ZXIgbWF5IGJlIHVzZWQgZm9yIGEKKyAgICAgIHN1YnNjcmlwdGlvbiAo c2VlIDx4cmVmIGxpbmtlbmQ9InNxbC1jcmVhdGVzdWJzY3JpcHRpb24iLz4pLiBUaGUgZGVmYXVs dAorICAgICAgaXMgPGxpdGVyYWw+Tk8gU1VCU0NSSVBUSU9OPC9saXRlcmFsPi4gT25seSBtZW1i ZXJzIG9mIHRoZSByb2xlCisgICAgICA8bGl0ZXJhbD5wZ19jcmVhdGVfY29ubmVjdGlvbjwvbGl0 ZXJhbD4gbWF5IHNwZWNpZnkgPGxpdGVyYWw+Rk9SCisgICAgICBTVUJTQ1JJUFRJT048L2xpdGVy YWw+LgorICAgICA8L3BhcmE+CisgICAgPC9saXN0aXRlbT4KKyAgIDwvdmFybGlzdGVudHJ5Pgor CiAgICA8dmFybGlzdGVudHJ5PgogICAgIDx0ZXJtPjxsaXRlcmFsPk9QVElPTlMgKCBbIEFERCB8 IFNFVCB8IERST1AgXSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+b3B0aW9uPC9yZXBs YWNlYWJsZT4gWyc8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+dmFsdWU8L3JlcGxhY2Vh YmxlPiddIFssIC4uLiBdICk8L2xpdGVyYWw+PC90ZXJtPgogICAgIDxsaXN0aXRlbT4KZGlmZiAt LWdpdCBhL2RvYy9zcmMvc2dtbC9yZWYvY3JlYXRlX3NlcnZlci5zZ21sIGIvZG9jL3NyYy9zZ21s L3JlZi9jcmVhdGVfc2VydmVyLnNnbWwKaW5kZXggMDVmNDAxOTQ1My4uOTEzY2ViYWJmMiAxMDA2 NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3JlZi9jcmVhdGVfc2VydmVyLnNnbWwKKysrIGIvZG9jL3Ny Yy9zZ21sL3JlZi9jcmVhdGVfc2VydmVyLnNnbWwKQEAgLTIzLDYgKzIzLDcgQEAgUG9zdGdyZVNR TCBkb2N1bWVudGF0aW9uCiA8c3lub3BzaXM+CiBDUkVBVEUgU0VSVkVSIFsgSUYgTk9UIEVYSVNU UyBdIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5zZXJ2ZXJfbmFtZTwvcmVwbGFjZWFi bGU+IFsgVFlQRSAnPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnNlcnZlcl90eXBlPC9y ZXBsYWNlYWJsZT4nIF0gWyBWRVJTSU9OICc8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ c2VydmVyX3ZlcnNpb248L3JlcGxhY2VhYmxlPicgXQogICAgIEZPUkVJR04gREFUQSBXUkFQUEVS IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5mZHdfbmFtZTwvcmVwbGFjZWFibGU+Cisg ICAgWyB7IEZPUiB8IE5PIH0gU1VCU0NSSVBUSU9OIF0KICAgICBbIE9QVElPTlMgKCA8cmVwbGFj ZWFibGUgY2xhc3M9InBhcmFtZXRlciI+b3B0aW9uPC9yZXBsYWNlYWJsZT4gJzxyZXBsYWNlYWJs ZSBjbGFzcz0icGFyYW1ldGVyIj52YWx1ZTwvcmVwbGFjZWFibGU+JyBbLCAuLi4gXSApIF0KIDwv c3lub3BzaXM+CiAgPC9yZWZzeW5vcHNpc2Rpdj4KQEAgLTEwNCw2ICsxMDUsMTkgQEAgQ1JFQVRF IFNFUlZFUiBbIElGIE5PVCBFWElTVFMgXSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ c2VydmVyX25hbWU8L3JlcGwKICAgICA8L2xpc3RpdGVtPgogICAgPC92YXJsaXN0ZW50cnk+CiAK KyAgIDx2YXJsaXN0ZW50cnk+CisgICAgPHRlcm0+PGxpdGVyYWw+eyBGT1IgfCBOTyB9IFNVQlND UklQVElPTjwvbGl0ZXJhbD48L3Rlcm0+CisgICAgPGxpc3RpdGVtPgorICAgICA8cGFyYT4KKyAg ICAgIFRoaXMgY2xhdXNlIHNwZWNpZmllcyB3aGV0aGVyIHRoZSBmb3JlaWduIHNlcnZlciBtYXkg YmUgdXNlZCBmb3IgYQorICAgICAgc3Vic2NyaXB0aW9uIChzZWUgPHhyZWYgbGlua2VuZD0ic3Fs LWNyZWF0ZXN1YnNjcmlwdGlvbiIvPikuIFRoZSBkZWZhdWx0CisgICAgICBpcyA8bGl0ZXJhbD5O TyBTVUJTQ1JJUFRJT048L2xpdGVyYWw+LiBPbmx5IG1lbWJlcnMgb2YgdGhlIHJvbGUKKyAgICAg IDxsaXRlcmFsPnBnX2NyZWF0ZV9jb25uZWN0aW9uPC9saXRlcmFsPiBtYXkgc3BlY2lmeSA8bGl0 ZXJhbD5GT1IKKyAgICAgIFNVQlNDUklQVElPTjwvbGl0ZXJhbD4uCisgICAgIDwvcGFyYT4KKyAg ICA8L2xpc3RpdGVtPgorICAgPC92YXJsaXN0ZW50cnk+CisKICAgIDx2YXJsaXN0ZW50cnk+CiAg ICAgPHRlcm0+PGxpdGVyYWw+T1BUSU9OUyAoIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVy Ij5vcHRpb248L3JlcGxhY2VhYmxlPiAnPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnZh bHVlPC9yZXBsYWNlYWJsZT4nIFssIC4uLiBdICk8L2xpdGVyYWw+PC90ZXJtPgogICAgIDxsaXN0 aXRlbT4KZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC91c2VyLW1hbmFnLnNnbWwgYi9kb2Mvc3Jj L3NnbWwvdXNlci1tYW5hZy5zZ21sCmluZGV4IDkyYTI5OWQyZDMuLjRmNGMyMGJhM2MgMTAwNjQ0 Ci0tLSBhL2RvYy9zcmMvc2dtbC91c2VyLW1hbmFnLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL3Vz ZXItbWFuYWcuc2dtbApAQCAtNjg3LDExICs2ODcsMTkgQEAgRFJPUCBST0xFIGRvb21lZF9yb2xl OwogICAgICAgIDxlbnRyeT5BbGxvdyB1c2Ugb2YgY29ubmVjdGlvbiBzbG90cyByZXNlcnZlZCB2 aWEKICAgICAgICA8eHJlZiBsaW5rZW5kPSJndWMtcmVzZXJ2ZWQtY29ubmVjdGlvbnMiLz4uPC9l bnRyeT4KICAgICAgIDwvcm93PgorICAgICAgPHJvdz4KKyAgICAgICA8ZW50cnk+cGdfY3JlYXRl X2Nvbm5lY3Rpb248L2VudHJ5PgorICAgICAgIDxlbnRyeT5BbGxvdyB1c2VycyB0byBzcGVjaWZ5 IGEgY29ubmVjdGlvbiBzdHJpbmcgZGlyZWN0bHkgaW4gPGxpbmsKKyAgICAgICBsaW5rZW5kPSJz cWwtY3JlYXRlc3Vic2NyaXB0aW9uIj48Y29tbWFuZD5DUkVBVEUKKyAgICAgICBTVUJTQ1JJUFRJ T048L2NvbW1hbmQ+PC9saW5rPi48L2VudHJ5PgorICAgICAgPC9yb3c+CiAgICAgICA8cm93Pgog ICAgICAgIDxlbnRyeT5wZ19jcmVhdGVfc3Vic2NyaXB0aW9uPC9lbnRyeT4KICAgICAgICA8ZW50 cnk+QWxsb3cgdXNlcnMgd2l0aCA8bGl0ZXJhbD5DUkVBVEU8L2xpdGVyYWw+IHBlcm1pc3Npb24g b24gdGhlCi0gICAgICAgZGF0YWJhc2UgdG8gaXNzdWUKLSAgICAgICA8bGluayBsaW5rZW5kPSJz cWwtY3JlYXRlc3Vic2NyaXB0aW9uIj48Y29tbWFuZD5DUkVBVEUgU1VCU0NSSVBUSU9OPC9jb21t YW5kPjwvbGluaz4uPC9lbnRyeT4KKyAgICAgICBkYXRhYmFzZSB0byBpc3N1ZSA8bGluaworICAg ICAgIGxpbmtlbmQ9InNxbC1jcmVhdGVzdWJzY3JpcHRpb24iPjxjb21tYW5kPkNSRUFURQorICAg ICAgIFNVQlNDUklQVElPTjwvY29tbWFuZD48L2xpbms+LiAgVGhpcyByb2xlIGlzIGEgbWVtYmVy IG9mCisgICAgICAgPGxpdGVyYWw+cGdfY3JlYXRlX2Nvbm5lY3Rpb248L2xpdGVyYWw+LjwvZW50 cnk+CiAgICAgICA8L3Jvdz4KICAgICAgPC90Ym9keT4KICAgICA8L3Rncm91cD4KZGlmZiAtLWdp dCBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX2Z1bmN0aW9ucy5zcWwgYi9zcmMvYmFja2Vu ZC9jYXRhbG9nL3N5c3RlbV9mdW5jdGlvbnMuc3FsCmluZGV4IGYzMTVmZWNmMTguLjczNTEyNjg4 ZGUgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX2Z1bmN0aW9ucy5zcWwK KysrIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0ZW1fZnVuY3Rpb25zLnNxbApAQCAtNzgxLDMg Kzc4MSw1IEBAIEdSQU5UIHBnX3JlYWRfYWxsX3NldHRpbmdzIFRPIHBnX21vbml0b3I7CiBHUkFO VCBwZ19yZWFkX2FsbF9zdGF0cyBUTyBwZ19tb25pdG9yOwogCiBHUkFOVCBwZ19zdGF0X3NjYW5f dGFibGVzIFRPIHBnX21vbml0b3I7CisKK0dSQU5UIHBnX2NyZWF0ZV9jb25uZWN0aW9uIFRPIHBn X2NyZWF0ZV9zdWJzY3JpcHRpb247CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jb21tYW5kcy9m b3JlaWduY21kcy5jIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvZm9yZWlnbmNtZHMuYwppbmRleCBj ZjYxYmJhYzFmLi4yZjgzNTU1MzcwIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jb21tYW5kcy9m b3JlaWduY21kcy5jCisrKyBiL3NyYy9iYWNrZW5kL2NvbW1hbmRzL2ZvcmVpZ25jbWRzLmMKQEAg LTIxLDYgKzIxLDcgQEAKICNpbmNsdWRlICJjYXRhbG9nL2RlcGVuZGVuY3kuaCIKICNpbmNsdWRl ICJjYXRhbG9nL2luZGV4aW5nLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9vYmplY3RhY2Nlc3MuaCIK KyNpbmNsdWRlICJjYXRhbG9nL3BnX2F1dGhpZF9kLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19m b3JlaWduX2RhdGFfd3JhcHBlci5oIgogI2luY2x1ZGUgImNhdGFsb2cvcGdfZm9yZWlnbl9zZXJ2 ZXIuaCIKICNpbmNsdWRlICJjYXRhbG9nL3BnX2ZvcmVpZ25fdGFibGUuaCIKQEAgLTkyMyw2ICs5 MjQsMTggQEAgQ3JlYXRlRm9yZWlnblNlcnZlcihDcmVhdGVGb3JlaWduU2VydmVyU3RtdCAqc3Rt dCkKIAllbHNlCiAJCW51bGxzW0FudW1fcGdfZm9yZWlnbl9zZXJ2ZXJfc3J2dmVyc2lvbiAtIDFd ID0gdHJ1ZTsKIAorCWlmIChzdG10LT5mb3JzdWJzY3JpcHRpb24pCisJeworCQlpZiAoIWhhc19w cml2c19vZl9yb2xlKG93bmVySWQsIFJPTEVfUEdfQ1JFQVRFX0NPTk5FQ1RJT04pKQorCQkJZXJl cG9ydChFUlJPUiwKKwkJCQkJKGVycmNvZGUoRVJSQ09ERV9JTlNVRkZJQ0lFTlRfUFJJVklMRUdF KSwKKwkJCQkJIGVycm1zZygicGVybWlzc2lvbiBkZW5pZWQgdG8gY3JlYXRlIHNlcnZlciBmb3Ig c3Vic2NyaXB0aW9uIiksCisJCQkJCSBlcnJkZXRhaWwoIk9ubHkgcm9sZXMgd2l0aCBwcml2aWxl Z2VzIG9mIHRoZSBcIiVzXCIgcm9sZSBtYXkgY3JlYXRlIGZvcmVpZ24gc2VydmVycyB3aXRoIEZP UiBTVUJTQ1JJUFRJT04gc3BlY2lmaWVkLiIsCisJCQkJCQkJICAgInBnX2NyZWF0ZV9zdWJzY3Jp cHRpb24iKSkpOworCisJCXZhbHVlc1tBbnVtX3BnX2ZvcmVpZ25fc2VydmVyX3NydmZvcnN1YnNj cmlwdGlvbiAtIDFdID0gdHJ1ZTsKKwl9CisKIAkvKiBTdGFydCB3aXRoIGEgYmxhbmsgYWNsICov CiAJbnVsbHNbQW51bV9wZ19mb3JlaWduX3NlcnZlcl9zcnZhY2wgLSAxXSA9IHRydWU7CiAKQEAg LTEwMjAsNiArMTAzMywyMCBAQCBBbHRlckZvcmVpZ25TZXJ2ZXIoQWx0ZXJGb3JlaWduU2VydmVy U3RtdCAqc3RtdCkKIAkJcmVwbF9yZXBsW0FudW1fcGdfZm9yZWlnbl9zZXJ2ZXJfc3J2dmVyc2lv biAtIDFdID0gdHJ1ZTsKIAl9CiAKKwlpZiAoKHNydkZvcm0tPnNydmZvcnN1YnNjcmlwdGlvbiB8 fCBzdG10LT5mb3JzdWJzY3JpcHRpb24pICYmCisJCSFoYXNfcHJpdnNfb2Zfcm9sZShzcnZGb3Jt LT5zcnZvd25lciwgUk9MRV9QR19DUkVBVEVfQ09OTkVDVElPTikpCisJCWVyZXBvcnQoRVJST1Is CisJCQkJKGVycmNvZGUoRVJSQ09ERV9JTlNVRkZJQ0lFTlRfUFJJVklMRUdFKSwKKwkJCQkgZXJy bXNnKCJwZXJtaXNzaW9uIGRlbmllZCB0byBhbHRlciBzZXJ2ZXIgZm9yIHN1YnNjcmlwdGlvbiIp LAorCQkJCSBlcnJkZXRhaWwoIk9ubHkgcm9sZXMgd2l0aCBwcml2aWxlZ2VzIG9mIHRoZSBcIiVz XCIgcm9sZSBtYXkgYWx0ZXIgZm9yZWlnbiBzZXJ2ZXJzIHdpdGggRk9SIFNVQlNDUklQVElPTiBz cGVjaWZpZWQuIiwKKwkJCQkJCSAgICJwZ19jcmVhdGVfY29ubmVjdGlvbiIpKSk7CisKKwlpZiAo c3RtdC0+aGFzX2ZvcnN1YnNjcmlwdGlvbikKKwl7CisJCXJlcGxfdmFsW0FudW1fcGdfZm9yZWln bl9zZXJ2ZXJfc3J2Zm9yc3Vic2NyaXB0aW9uIC0gMV0gPSBzdG10LT5mb3JzdWJzY3JpcHRpb247 CisJCXJlcGxfcmVwbFtBbnVtX3BnX2ZvcmVpZ25fc2VydmVyX3NydmZvcnN1YnNjcmlwdGlvbiAt IDFdID0gdHJ1ZTsKKwl9CisKIAlpZiAoc3RtdC0+b3B0aW9ucykKIAl7CiAJCUZvcmVpZ25EYXRh V3JhcHBlciAqZmR3ID0gR2V0Rm9yZWlnbkRhdGFXcmFwcGVyKHNydkZvcm0tPnNydmZkdyk7CmRp ZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jb21tYW5kcy9zdWJzY3JpcHRpb25jbWRzLmMgYi9zcmMv YmFja2VuZC9jb21tYW5kcy9zdWJzY3JpcHRpb25jbWRzLmMKaW5kZXggYmVjNjY1ZmQyOS4uMDg0 OTI4YTIxMiAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvc3Vic2NyaXB0aW9uY21k cy5jCisrKyBiL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3N1YnNjcmlwdGlvbmNtZHMuYwpAQCAtNjA5 LDkgKzYwOSw5IEBAIENyZWF0ZVN1YnNjcmlwdGlvbihQYXJzZVN0YXRlICpwc3RhdGUsIENyZWF0 ZVN1YnNjcmlwdGlvblN0bXQgKnN0bXQsCiAJCVByZXZlbnRJblRyYW5zYWN0aW9uQmxvY2soaXNU b3BMZXZlbCwgIkNSRUFURSBTVUJTQ1JJUFRJT04gLi4uIFdJVEggKGNyZWF0ZV9zbG90ID0gdHJ1 ZSkiKTsKIAogCS8qCi0JICogV2UgZG9uJ3Qgd2FudCB0byBhbGxvdyB1bnByaXZpbGVnZWQgdXNl cnMgdG8gYmUgYWJsZSB0byB0cmlnZ2VyCi0JICogYXR0ZW1wdHMgdG8gYWNjZXNzIGFyYml0cmFy eSBuZXR3b3JrIGRlc3RpbmF0aW9ucywgc28gcmVxdWlyZSB0aGUgdXNlcgotCSAqIHRvIGhhdmUg YmVlbiBzcGVjaWZpY2FsbHkgYXV0aG9yaXplZCB0byBjcmVhdGUgc3Vic2NyaXB0aW9ucy4KKwkg KiBXZSBkb24ndCB3YW50IHRvIGFsbG93IHVucHJpdmlsZWdlZCB1c2VycyB0byB1dGlsaXplIHRo ZSByZXNvdXJjZXMgdGhhdAorCSAqIGEgc3Vic2NyaXB0aW9uIHJlcXVpcmVzIChzdWNoIGFzIGEg YmFja2dyb3VuZCB3b3JrZXIpLCBzbyByZXF1aXJlIHRoZQorCSAqIHVzZXIgdG8gaGF2ZSBiZWVu IHNwZWNpZmljYWxseSBhdXRob3JpemVkIHRvIGNyZWF0ZSBzdWJzY3JpcHRpb25zLgogCSAqLwog CWlmICghaGFzX3ByaXZzX29mX3JvbGUob3duZXIsIFJPTEVfUEdfQ1JFQVRFX1NVQlNDUklQVElP TikpCiAJCWVyZXBvcnQoRVJST1IsCkBAIC02ODcsNiArNjg3LDEyIEBAIENyZWF0ZVN1YnNjcmlw dGlvbihQYXJzZVN0YXRlICpwc3RhdGUsIENyZWF0ZVN1YnNjcmlwdGlvblN0bXQgKnN0bXQsCiAJ CWlmIChhY2xyZXN1bHQgIT0gQUNMQ0hFQ0tfT0spCiAJCQlhY2xjaGVja19lcnJvcihhY2xyZXN1 bHQsIE9CSkVDVF9GT1JFSUdOX1NFUlZFUiwgc2VydmVyLT5zZXJ2ZXJuYW1lKTsKIAorCQlpZiAo IXNlcnZlci0+Zm9yc3Vic2NyaXB0aW9uKQorCQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJKGVycm1z ZygiZm9yZWlnbiBzZXJ2ZXIgXCIlc1wiIG5vdCB1c2FibGUgZm9yIHN1YnNjcmlwdGlvbiIsCisJ CQkJCQkJc2VydmVyLT5zZXJ2ZXJuYW1lKSwKKwkJCQkJIGVycmhpbnQoIlNwZWNpZnkgRk9SIFNV QlNDUklQVElPTiB3aGVuIGNyZWF0aW5nIHRoZSBmb3JlaWduIHNlcnZlci4iKSkpOworCiAJCXVt ID0gR2V0VXNlck1hcHBpbmcob3duZXIsIHNlcnZlci0+c2VydmVyaWQpOwogCiAJCXNlcnZlcmlk ID0gc2VydmVyLT5zZXJ2ZXJpZDsKQEAgLTY5Nyw2ICs3MDMsMTkgQEAgQ3JlYXRlU3Vic2NyaXB0 aW9uKFBhcnNlU3RhdGUgKnBzdGF0ZSwgQ3JlYXRlU3Vic2NyaXB0aW9uU3RtdCAqc3RtdCwKIAl7 CiAJCUFzc2VydChzdG10LT5jb25uaW5mbyk7CiAKKwkJLyoKKwkJICogV2UgZG9uJ3Qgd2FudCB0 byBhbGxvdyB1bnByaXZpbGVnZWQgdXNlcnMgdG8gYmUgYWJsZSB0byB0cmlnZ2VyCisJCSAqIGF0 dGVtcHRzIHRvIGFjY2VzcyBhcmJpdHJhcnkgbmV0d29yayBkZXN0aW5hdGlvbnMsIHNvIHJlcXVp cmUgdGhlIHVzZXIKKwkJICogdG8gaGF2ZSBiZWVuIHNwZWNpZmljYWxseSBhdXRob3JpemVkIHRv IGNyZWF0ZSBjb25uZWN0aW9ucy4KKwkJICovCisJCWlmICghaGFzX3ByaXZzX29mX3JvbGUob3du ZXIsIFJPTEVfUEdfQ1JFQVRFX0NPTk5FQ1RJT04pKQorCQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJ KGVycmNvZGUoRVJSQ09ERV9JTlNVRkZJQ0lFTlRfUFJJVklMRUdFKSwKKwkJCQkJIGVycm1zZygi cGVybWlzc2lvbiBkZW5pZWQgdG8gY3JlYXRlIHN1YnNjcmlwdGlvbiB3aXRoIGEgY29ubmVjdGlv biBzdHJpbmciKSwKKwkJCQkJIGVycmRldGFpbCgiT25seSByb2xlcyB3aXRoIHByaXZpbGVnZXMg b2YgdGhlIFwiJXNcIiByb2xlIG1heSBjcmVhdGUgc3Vic2NyaXB0aW9ucyB3aXRoIENPTk5FQ1RJ T04gc3BlY2lmaWVkLiIsCisJCQkJCQkJICAgInBnX2NyZWF0ZV9jb25uZWN0aW9uIiksCisJCQkJ CSBlcnJoaW50KCJDcmVhdGUgYSBzdWJzY3JpcHRpb24gdG8gYSBmb3JlaWduIHNlcnZlciBieSBz cGVjaWZ5aW5nIFNFUlZFUiBpbnN0ZWFkLiIpKSk7CisKIAkJc2VydmVyaWQgPSBJbnZhbGlkT2lk OwogCQl1bWlkID0gSW52YWxpZE9pZDsKIAkJY29ubmluZm8gPSBzdG10LT5jb25uaW5mbzsKZGlm ZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2ZvcmVpZ24vZm9yZWlnbi5jIGIvc3JjL2JhY2tlbmQvZm9y ZWlnbi9mb3JlaWduLmMKaW5kZXggYmEyZGVhODhhOS4uZmMwMWE0ZjljOSAxMDA2NDQKLS0tIGEv c3JjL2JhY2tlbmQvZm9yZWlnbi9mb3JlaWduLmMKKysrIGIvc3JjL2JhY2tlbmQvZm9yZWlnbi9m b3JlaWduLmMKQEAgLTE0OSw2ICsxNDksNyBAQCBHZXRGb3JlaWduU2VydmVyRXh0ZW5kZWQoT2lk IHNlcnZlcmlkLCBiaXRzMTYgZmxhZ3MpCiAJc2VydmVyLT5zZXJ2ZXJuYW1lID0gcHN0cmR1cChO YW1lU3RyKHNlcnZlcmZvcm0tPnNydm5hbWUpKTsKIAlzZXJ2ZXItPm93bmVyID0gc2VydmVyZm9y bS0+c3J2b3duZXI7CiAJc2VydmVyLT5mZHdpZCA9IHNlcnZlcmZvcm0tPnNydmZkdzsKKwlzZXJ2 ZXItPmZvcnN1YnNjcmlwdGlvbiA9IHNlcnZlcmZvcm0tPnNydmZvcnN1YnNjcmlwdGlvbjsKIAog CS8qIEV4dHJhY3Qgc2VydmVyIHR5cGUgKi8KIAlkYXR1bSA9IFN5c0NhY2hlR2V0QXR0cihGT1JF SUdOU0VSVkVST0lELApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvcGFyc2VyL2dyYW0ueSBiL3Ny Yy9iYWNrZW5kL3BhcnNlci9ncmFtLnkKaW5kZXggYzI3ZTBiOGI1ZC4uM2FiY2ViZDhiMyAxMDA2 NDQKLS0tIGEvc3JjL2JhY2tlbmQvcGFyc2VyL2dyYW0ueQorKysgYi9zcmMvYmFja2VuZC9wYXJz ZXIvZ3JhbS55CkBAIC0zNjYsNiArMzY2LDcgQEAgc3RhdGljIE5vZGUgKm1ha2VSZWN1cnNpdmVW aWV3U2VsZWN0KGNoYXIgKnJlbG5hbWUsIExpc3QgKmFsaWFzZXMsIE5vZGUgKnF1ZXJ5KTsKIAog JXR5cGUgPHN0cj4JCW9wdF90eXBlCiAldHlwZSA8c3RyPgkJZm9yZWlnbl9zZXJ2ZXJfdmVyc2lv biBvcHRfZm9yZWlnbl9zZXJ2ZXJfdmVyc2lvbgorJXR5cGUgPGJvb2xlYW4+CWZvcl9zdWJzY3Jp cHRpb24gb3B0X2Zvcl9zdWJzY3JpcHRpb24KICV0eXBlIDxzdHI+CQlvcHRfaW5fZGF0YWJhc2UK IAogJXR5cGUgPHN0cj4JCXBhcmFtZXRlcl9uYW1lCkBAIC01Mzk3LDcgKzUzOTgsNyBAQCBnZW5l cmljX29wdGlvbl9hcmc6CiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAKIENyZWF0ZUZvcmVpZ25T ZXJ2ZXJTdG10OiBDUkVBVEUgU0VSVkVSIG5hbWUgb3B0X3R5cGUgb3B0X2ZvcmVpZ25fc2VydmVy X3ZlcnNpb24KLQkJCQkJCSBGT1JFSUdOIERBVEFfUCBXUkFQUEVSIG5hbWUgY3JlYXRlX2dlbmVy aWNfb3B0aW9ucworCQkJCQkJIEZPUkVJR04gREFUQV9QIFdSQVBQRVIgbmFtZSBvcHRfZm9yX3N1 YnNjcmlwdGlvbiBjcmVhdGVfZ2VuZXJpY19vcHRpb25zCiAJCQkJewogCQkJCQlDcmVhdGVGb3Jl aWduU2VydmVyU3RtdCAqbiA9IG1ha2VOb2RlKENyZWF0ZUZvcmVpZ25TZXJ2ZXJTdG10KTsKIApA QCAtNTQwNSwxMiArNTQwNiwxMyBAQCBDcmVhdGVGb3JlaWduU2VydmVyU3RtdDogQ1JFQVRFIFNF UlZFUiBuYW1lIG9wdF90eXBlIG9wdF9mb3JlaWduX3NlcnZlcl92ZXJzaW9uCiAJCQkJCW4tPnNl cnZlcnR5cGUgPSAkNDsKIAkJCQkJbi0+dmVyc2lvbiA9ICQ1OwogCQkJCQluLT5mZHduYW1lID0g JDk7Ci0JCQkJCW4tPm9wdGlvbnMgPSAkMTA7CisJCQkJCW4tPmZvcnN1YnNjcmlwdGlvbiA9ICQx MDsKKwkJCQkJbi0+b3B0aW9ucyA9ICQxMTsKIAkJCQkJbi0+aWZfbm90X2V4aXN0cyA9IGZhbHNl OwogCQkJCQkkJCA9IChOb2RlICopIG47CiAJCQkJfQogCQkJCXwgQ1JFQVRFIFNFUlZFUiBJRl9Q IE5PVCBFWElTVFMgbmFtZSBvcHRfdHlwZSBvcHRfZm9yZWlnbl9zZXJ2ZXJfdmVyc2lvbgotCQkJ CQkJIEZPUkVJR04gREFUQV9QIFdSQVBQRVIgbmFtZSBjcmVhdGVfZ2VuZXJpY19vcHRpb25zCisJ CQkJCQkgRk9SRUlHTiBEQVRBX1AgV1JBUFBFUiBuYW1lIG9wdF9mb3Jfc3Vic2NyaXB0aW9uIGNy ZWF0ZV9nZW5lcmljX29wdGlvbnMKIAkJCQl7CiAJCQkJCUNyZWF0ZUZvcmVpZ25TZXJ2ZXJTdG10 ICpuID0gbWFrZU5vZGUoQ3JlYXRlRm9yZWlnblNlcnZlclN0bXQpOwogCkBAIC01NDE4LDcgKzU0 MjAsOCBAQCBDcmVhdGVGb3JlaWduU2VydmVyU3RtdDogQ1JFQVRFIFNFUlZFUiBuYW1lIG9wdF90 eXBlIG9wdF9mb3JlaWduX3NlcnZlcl92ZXJzaW9uCiAJCQkJCW4tPnNlcnZlcnR5cGUgPSAkNzsK IAkJCQkJbi0+dmVyc2lvbiA9ICQ4OwogCQkJCQluLT5mZHduYW1lID0gJDEyOwotCQkJCQluLT5v cHRpb25zID0gJDEzOworCQkJCQluLT5mb3JzdWJzY3JpcHRpb24gPSAkMTM7CisJCQkJCW4tPm9w dGlvbnMgPSAkMTQ7CiAJCQkJCW4tPmlmX25vdF9leGlzdHMgPSB0cnVlOwogCQkJCQkkJCA9IChO b2RlICopIG47CiAJCQkJfQpAQCAtNTQ0MCw2ICs1NDQzLDE2IEBAIG9wdF9mb3JlaWduX3NlcnZl cl92ZXJzaW9uOgogCQkJfCAvKkVNUFRZKi8JCQkJeyAkJCA9IE5VTEw7IH0KIAkJOwogCitmb3Jf c3Vic2NyaXB0aW9uOgorCQkJRk9SIFNVQlNDUklQVElPTgkJeyAkJCA9IHRydWU7IH0KKwkJCXwg Tk8gU1VCU0NSSVBUSU9OCQl7ICQkID0gZmFsc2U7IH0KKwkJOworCitvcHRfZm9yX3N1YnNjcmlw dGlvbjoKKwkJCWZvcl9zdWJzY3JpcHRpb24JCXsgJCQgPSAkMTsgfQorCQkJfCAvKkVNUFRZKi8J CQkJeyAkJCA9IGZhbHNlOyB9CisJCTsKKwogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgKgogICoJ CVFVRVJZIDoKQEAgLTU0NTcsNiArNTQ3MCwxNSBAQCBBbHRlckZvcmVpZ25TZXJ2ZXJTdG10OiBB TFRFUiBTRVJWRVIgbmFtZSBmb3JlaWduX3NlcnZlcl92ZXJzaW9uIGFsdGVyX2dlbmVyaWNfbwog CQkJCQluLT5oYXNfdmVyc2lvbiA9IHRydWU7CiAJCQkJCSQkID0gKE5vZGUgKikgbjsKIAkJCQl9 CisJCQl8IEFMVEVSIFNFUlZFUiBuYW1lIGZvcl9zdWJzY3JpcHRpb24KKwkJCQl7CisJCQkJCUFs dGVyRm9yZWlnblNlcnZlclN0bXQgKm4gPSBtYWtlTm9kZShBbHRlckZvcmVpZ25TZXJ2ZXJTdG10 KTsKKworCQkJCQluLT5zZXJ2ZXJuYW1lID0gJDM7CisJCQkJCW4tPmZvcnN1YnNjcmlwdGlvbiA9 ICQ0OworCQkJCQluLT5oYXNfZm9yc3Vic2NyaXB0aW9uID0gdHJ1ZTsKKwkJCQkJJCQgPSAoTm9k ZSAqKSBuOworCQkJCX0KIAkJCXwgQUxURVIgU0VSVkVSIG5hbWUgZm9yZWlnbl9zZXJ2ZXJfdmVy c2lvbgogCQkJCXsKIAkJCQkJQWx0ZXJGb3JlaWduU2VydmVyU3RtdCAqbiA9IG1ha2VOb2RlKEFs dGVyRm9yZWlnblNlcnZlclN0bXQpOwpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9w Z19hdXRoaWQuZGF0IGIvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19hdXRoaWQuZGF0CmluZGV4IDgy YTJlYzI4NjIuLmRjZmFkN2EwYzAgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdf YXV0aGlkLmRhdAorKysgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX2F1dGhpZC5kYXQKQEAgLTk0 LDUgKzk0LDEwIEBACiAgIHJvbGNyZWF0ZXJvbGUgPT4gJ2YnLCByb2xjcmVhdGVkYiA9PiAnZics IHJvbGNhbmxvZ2luID0+ICdmJywKICAgcm9scmVwbGljYXRpb24gPT4gJ2YnLCByb2xieXBhc3Ny bHMgPT4gJ2YnLCByb2xjb25ubGltaXQgPT4gJy0xJywKICAgcm9scGFzc3dvcmQgPT4gJ19udWxs XycsIHJvbHZhbGlkdW50aWwgPT4gJ19udWxsXycgfSwKK3sgb2lkID0+ICc2MTIyJywgb2lkX3N5 bWJvbCA9PiAnUk9MRV9QR19DUkVBVEVfQ09OTkVDVElPTicsCisgIHJvbG5hbWUgPT4gJ3BnX2Ny ZWF0ZV9jb25uZWN0aW9uJywgcm9sc3VwZXIgPT4gJ2YnLCByb2xpbmhlcml0ID0+ICd0JywKKyAg cm9sY3JlYXRlcm9sZSA9PiAnZicsIHJvbGNyZWF0ZWRiID0+ICdmJywgcm9sY2FubG9naW4gPT4g J2YnLAorICByb2xyZXBsaWNhdGlvbiA9PiAnZicsIHJvbGJ5cGFzc3JscyA9PiAnZicsIHJvbGNv bm5saW1pdCA9PiAnLTEnLAorICByb2xwYXNzd29yZCA9PiAnX251bGxfJywgcm9sdmFsaWR1bnRp bCA9PiAnX251bGxfJyB9LAogCiBdCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3Bn X2ZvcmVpZ25fc2VydmVyLmggYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX2ZvcmVpZ25fc2VydmVy LmgKaW5kZXggOTk1ZjE0MGJmMy4uZmExZThmYWQ1NiAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUv Y2F0YWxvZy9wZ19mb3JlaWduX3NlcnZlci5oCisrKyBiL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdf Zm9yZWlnbl9zZXJ2ZXIuaApAQCAtMzEsNiArMzEsNyBAQCBDQVRBTE9HKHBnX2ZvcmVpZ25fc2Vy dmVyLDE0MTcsRm9yZWlnblNlcnZlclJlbGF0aW9uSWQpCiAJTmFtZURhdGEJc3J2bmFtZTsJCS8q IGZvcmVpZ24gc2VydmVyIG5hbWUgKi8KIAlPaWQJCQlzcnZvd25lciBCS0lfTE9PS1VQKHBnX2F1 dGhpZCk7IC8qIHNlcnZlciBvd25lciAqLwogCU9pZAkJCXNydmZkdyBCS0lfTE9PS1VQKHBnX2Zv cmVpZ25fZGF0YV93cmFwcGVyKTsgLyogc2VydmVyIEZEVyAqLworCWJvb2wJCXNydmZvcnN1YnNj cmlwdGlvbiBCS0lfREVGQVVMVChmKTsgLyogdXNhYmxlIGZvciBzdWJzY3JpcHRpb24gKi8KIAog I2lmZGVmIENBVEFMT0dfVkFSTEVOCQkJLyogdmFyaWFibGUtbGVuZ3RoIGZpZWxkcyBzdGFydCBo ZXJlICovCiAJdGV4dAkJc3J2dHlwZTsKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2ZvcmVpZ24v Zm9yZWlnbi5oIGIvc3JjL2luY2x1ZGUvZm9yZWlnbi9mb3JlaWduLmgKaW5kZXggYTJmMDRjZTlh Zi4uZTFkOTNjMjZiYSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvZm9yZWlnbi9mb3JlaWduLmgK KysrIGIvc3JjL2luY2x1ZGUvZm9yZWlnbi9mb3JlaWduLmgKQEAgLTM2LDYgKzM2LDcgQEAgdHlw ZWRlZiBzdHJ1Y3QgRm9yZWlnblNlcnZlcgogCU9pZAkJCXNlcnZlcmlkOwkJLyogc2VydmVyIE9p ZCAqLwogCU9pZAkJCWZkd2lkOwkJCS8qIGZvcmVpZ24tZGF0YSB3cmFwcGVyICovCiAJT2lkCQkJ b3duZXI7CQkJLyogc2VydmVyIG93bmVyIHVzZXIgT2lkICovCisJYm9vbAkJZm9yc3Vic2NyaXB0 aW9uOwkvKiB1c2FibGUgZm9yIGEgc3Vic2NyaXB0aW9uICovCiAJY2hhcgkgICAqc2VydmVybmFt ZTsJCS8qIG5hbWUgb2YgdGhlIHNlcnZlciAqLwogCWNoYXIJICAgKnNlcnZlcnR5cGU7CQkvKiBz ZXJ2ZXIgdHlwZSwgb3B0aW9uYWwgKi8KIAljaGFyCSAgICpzZXJ2ZXJ2ZXJzaW9uOwkvKiBzZXJ2 ZXIgdmVyc2lvbiwgb3B0aW9uYWwgKi8KZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL25vZGVzL3Bh cnNlbm9kZXMuaCBiL3NyYy9pbmNsdWRlL25vZGVzL3BhcnNlbm9kZXMuaAppbmRleCA2ZDZiMjQy Y2VjLi4wMDU0N2JiZDg4IDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9ub2Rlcy9wYXJzZW5vZGVz LmgKKysrIGIvc3JjL2luY2x1ZGUvbm9kZXMvcGFyc2Vub2Rlcy5oCkBAIC0yNzI2LDYgKzI3MjYs NyBAQCB0eXBlZGVmIHN0cnVjdCBDcmVhdGVGb3JlaWduU2VydmVyU3RtdAogCWNoYXIJICAgKnZl cnNpb247CQkvKiBvcHRpb25hbCBzZXJ2ZXIgdmVyc2lvbiAqLwogCWNoYXIJICAgKmZkd25hbWU7 CQkvKiBGRFcgbmFtZSAqLwogCWJvb2wJCWlmX25vdF9leGlzdHM7CS8qIGp1c3QgZG8gbm90aGlu ZyBpZiBpdCBhbHJlYWR5IGV4aXN0cz8gKi8KKwlib29sCQlmb3JzdWJzY3JpcHRpb247CS8qIHVz YWJsZSBmb3Igc3Vic2NyaXB0aW9uICovCiAJTGlzdAkgICAqb3B0aW9uczsJCS8qIGdlbmVyaWMg b3B0aW9ucyB0byBzZXJ2ZXIgKi8KIH0gQ3JlYXRlRm9yZWlnblNlcnZlclN0bXQ7CiAKQEAgLTI3 MzQsOCArMjczNSwxMCBAQCB0eXBlZGVmIHN0cnVjdCBBbHRlckZvcmVpZ25TZXJ2ZXJTdG10CiAJ Tm9kZVRhZwkJdHlwZTsKIAljaGFyCSAgICpzZXJ2ZXJuYW1lOwkJLyogc2VydmVyIG5hbWUgKi8K IAljaGFyCSAgICp2ZXJzaW9uOwkJLyogb3B0aW9uYWwgc2VydmVyIHZlcnNpb24gKi8KKwlib29s CQlmb3JzdWJzY3JpcHRpb247CS8qIHVzYWJsZSBmb3Igc3Vic2NyaXB0aW9uICovCiAJTGlzdAkg ICAqb3B0aW9uczsJCS8qIGdlbmVyaWMgb3B0aW9ucyB0byBzZXJ2ZXIgKi8KIAlib29sCQloYXNf dmVyc2lvbjsJLyogdmVyc2lvbiBzcGVjaWZpZWQgKi8KKwlib29sCQloYXNfZm9yc3Vic2NyaXB0 aW9uOyAvKiBbRk9SfE5PXSBTVUJTQ1JJUFRJT04gc3BlY2lmaWVkICovCiB9IEFsdGVyRm9yZWln blNlcnZlclN0bXQ7CiAKIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KZGlmZiAtLWdpdCBhL3Ny Yy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvc3Vic2NyaXB0aW9uLm91dCBiL3NyYy90ZXN0L3JlZ3Jl c3MvZXhwZWN0ZWQvc3Vic2NyaXB0aW9uLm91dAppbmRleCAxMWVkYWU0NmIxLi42NGUzNWVhYTM5 IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3N1YnNjcmlwdGlvbi5vdXQK KysrIGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9zdWJzY3JpcHRpb24ub3V0CkBAIC0xNTMs MTcgKzE1Myw0MiBAQCBISU5UOiAgVG8gaW5pdGlhdGUgcmVwbGljYXRpb24sIHlvdSBtdXN0IG1h bnVhbGx5IGNyZWF0ZSB0aGUgcmVwbGljYXRpb24gc2xvdCwgZQogRFJPUCBTVUJTQ1JJUFRJT04g cmVncmVzc190ZXN0c3ViNjsKIC0tIHRlc3QgdXNpbmcgYSBzZXJ2ZXIgb2JqZWN0IGluc3RlYWQg b2YgY29ubmVjdGlvbiBzdHJpbmcKIFJFU0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTjsKLUNSRUFU RSBTRVJWRVIgcmVncmVzc190ZXN0c2VydmVyMSBGT1JFSUdOIERBVEEgV1JBUFBFUiBwZ19jb25u ZWN0aW9uX2ZkdzsKK0NSRUFURSBST0xFIHJlZ3Jlc3NfY29ubmVjdGlvbl9yb2xlOworQ1JFQVRF IFNFUlZFUiByZWdyZXNzX3Rlc3RzZXJ2ZXIxIEZPUkVJR04gREFUQSBXUkFQUEVSIHBnX2Nvbm5l Y3Rpb25fZmR3CisgIEZPUiBTVUJTQ1JJUFRJT047CiBDUkVBVEUgU0VSVkVSIHJlZ3Jlc3NfdGVz dHNlcnZlcjIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcGdfY29ubmVjdGlvbl9mZHc7CitBTFRFUiBT RVJWRVIgcmVncmVzc190ZXN0c2VydmVyMSBPV05FUiBUTyByZWdyZXNzX2Nvbm5lY3Rpb25fcm9s ZTsKK0FMVEVSIFNFUlZFUiByZWdyZXNzX3Rlc3RzZXJ2ZXIyIE9XTkVSIFRPIHJlZ3Jlc3NfY29u bmVjdGlvbl9yb2xlOwogQ1JFQVRFIFVTRVIgTUFQUElORyBGT1IgcmVncmVzc19zdWJzY3JpcHRp b25fdXNlcjMgU0VSVkVSIHJlZ3Jlc3NfdGVzdHNlcnZlcjEKICAgT1BUSU9OUyAocGFzc3dvcmQg J3NlY3JldCcpOwogQ1JFQVRFIFVTRVIgTUFQUElORyBGT1IgcmVncmVzc19zdWJzY3JpcHRpb25f dXNlcjMgU0VSVkVSIHJlZ3Jlc3NfdGVzdHNlcnZlcjIKICAgT1BUSU9OUyAocGFzc3dvcmQgJ3Nl Y3JldCcpOwogR1JBTlQgVVNBR0UgT04gRk9SRUlHTiBTRVJWRVIgcmVncmVzc190ZXN0c2VydmVy MiBUTyByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyMzsKKy0tIHRlbXBvcmFyaWx5IHJldm9rZSBw Z19jcmVhdGVfY29ubmVjdGlvbiBmcm9tIHBnX2NyZWF0ZV9zdWJzY3JpcHRpb24KKy0tIHRvIHRl c3QgdGhhdCBDUkVBVEUgU1VCU0NSSVBUSU9OIC4uLiBDT05ORUNUSU9OIGZhaWxzCitSRVZPS0Ug cGdfY3JlYXRlX2Nvbm5lY3Rpb24gRlJPTSBwZ19jcmVhdGVfc3Vic2NyaXB0aW9uOwogU0VUIFNF U1NJT04gQVVUSE9SSVpBVElPTiByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyMzsKKy0tIGZhaWwg LSBub3QgYSBtZW1iZXIgb2YgcGdfY3JlYXRlX2Nvbm5lY3Rpb24sIGNhbm5vdCB1c2UgQ09OTkVD VElPTgorQ1JFQVRFIFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWI2IENPTk5FQ1RJT04gJ2Ri bmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCBwYXNzd29yZD1yZWdyZXNzX2Zha2VwYXNzd29yZCcg UFVCTElDQVRJT04gdGVzdHB1YiBXSVRIIChzbG90X25hbWUgPSBOT05FLCBjb25uZWN0ID0gZmFs c2UpOworRVJST1I6ICBwZXJtaXNzaW9uIGRlbmllZCB0byBjcmVhdGUgc3Vic2NyaXB0aW9uIHdp dGggYSBjb25uZWN0aW9uIHN0cmluZworREVUQUlMOiAgT25seSByb2xlcyB3aXRoIHByaXZpbGVn ZXMgb2YgdGhlICJwZ19jcmVhdGVfY29ubmVjdGlvbiIgcm9sZSBtYXkgY3JlYXRlIHN1YnNjcmlw dGlvbnMgd2l0aCBDT05ORUNUSU9OIHNwZWNpZmllZC4KK0hJTlQ6ICBDcmVhdGUgYSBzdWJzY3Jp cHRpb24gdG8gYSBmb3JlaWduIHNlcnZlciBieSBzcGVjaWZ5aW5nIFNFUlZFUiBpbnN0ZWFkLgog Q1JFQVRFIFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWI2IFNFUlZFUiByZWdyZXNzX3Rlc3Rz ZXJ2ZXIxIFBVQkxJQ0FUSU9OIHRlc3RwdWIKLSAgV0lUSCAoc2xvdF9uYW1lID0gTk9ORSwgY29u bmVjdCA9IGZhbHNlKTsgLS0gZmFpbHMKKyAgV0lUSCAoc2xvdF9uYW1lID0gTk9ORSwgY29ubmVj dCA9IGZhbHNlKTsgLS0gZmFpbCAtIG5vIFVTQUdFCiBFUlJPUjogIHBlcm1pc3Npb24gZGVuaWVk IGZvciBmb3JlaWduIHNlcnZlciByZWdyZXNzX3Rlc3RzZXJ2ZXIxCitDUkVBVEUgU1VCU0NSSVBU SU9OIHJlZ3Jlc3NfdGVzdHN1YjYgU0VSVkVSIHJlZ3Jlc3NfdGVzdHNlcnZlcjIgUFVCTElDQVRJ T04gdGVzdHB1YgorICBXSVRIIChzbG90X25hbWUgPSBOT05FLCBjb25uZWN0ID0gZmFsc2UpOyAt LSBmYWlsIC0gbm90IEZPUiBTVUJTQ1JJUFRJT04KK0VSUk9SOiAgZm9yZWlnbiBzZXJ2ZXIgInJl Z3Jlc3NfdGVzdHNlcnZlcjIiIG5vdCB1c2FibGUgZm9yIHN1YnNjcmlwdGlvbgorSElOVDogIFNw ZWNpZnkgRk9SIFNVQlNDUklQVElPTiB3aGVuIGNyZWF0aW5nIHRoZSBmb3JlaWduIHNlcnZlci4K K1NFVCBTRVNTSU9OIEFVVEhPUklaQVRJT04gcmVncmVzc19jb25uZWN0aW9uX3JvbGU7CitBTFRF UiBTRVJWRVIgcmVncmVzc190ZXN0c2VydmVyMiBGT1IgU1VCU0NSSVBUSU9OOyAtLSBmYWlscyAt IG5lZWQgcGdfY3JlYXRlX2Nvbm5lY3Rpb24KK0VSUk9SOiAgcGVybWlzc2lvbiBkZW5pZWQgdG8g YWx0ZXIgc2VydmVyIGZvciBzdWJzY3JpcHRpb24KK0RFVEFJTDogIE9ubHkgcm9sZXMgd2l0aCBw cml2aWxlZ2VzIG9mIHRoZSAicGdfY3JlYXRlX2Nvbm5lY3Rpb24iIHJvbGUgbWF5IGFsdGVyIGZv cmVpZ24gc2VydmVycyB3aXRoIEZPUiBTVUJTQ1JJUFRJT04gc3BlY2lmaWVkLgorUkVTRVQgU0VT U0lPTiBBVVRIT1JJWkFUSU9OOworR1JBTlQgcGdfY3JlYXRlX2Nvbm5lY3Rpb24gVE8gcmVncmVz c19jb25uZWN0aW9uX3JvbGU7CitTRVQgU0VTU0lPTiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3NfY29u bmVjdGlvbl9yb2xlOworQUxURVIgU0VSVkVSIHJlZ3Jlc3NfdGVzdHNlcnZlcjIgRk9SIFNVQlND UklQVElPTjsKK1NFVCBTRVNTSU9OIEFVVEhPUklaQVRJT04gcmVncmVzc19zdWJzY3JpcHRpb25f dXNlcjM7CiBDUkVBVEUgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YjYgU0VSVkVSIHJlZ3Jl c3NfdGVzdHNlcnZlcjIgUFVCTElDQVRJT04gdGVzdHB1YgogICBXSVRIIChzbG90X25hbWUgPSBO T05FLCBjb25uZWN0ID0gZmFsc2UpOwogV0FSTklORzogIHN1YnNjcmlwdGlvbiB3YXMgY3JlYXRl ZCwgYnV0IGlzIG5vdCBjb25uZWN0ZWQKQEAgLTE5NSw2ICsyMjAsOCBAQCBEUk9QIFNVQlNDUklQ VElPTiByZWdyZXNzX3Rlc3RzdWI2OwogRFJPUCBVU0VSIE1BUFBJTkcgRk9SIHJlZ3Jlc3Nfc3Vi c2NyaXB0aW9uX3VzZXIzIFNFUlZFUiByZWdyZXNzX3Rlc3RzZXJ2ZXIxOwogRFJPUCBTRVJWRVIg cmVncmVzc190ZXN0c2VydmVyMTsKIFJFVk9LRSBDUkVBVEUgT04gREFUQUJBU0UgcmVncmVzc2lv biBGUk9NIHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIzOworLS0gcmUtZ3JhbnQgcGdfY3JlYXRl X2Nvbm5lY3Rpb24gdG8gcGdfY3JlYXRlX3N1YnNjcmlwdGlvbgorR1JBTlQgcGdfY3JlYXRlX2Nv bm5lY3Rpb24gVE8gcGdfY3JlYXRlX3N1YnNjcmlwdGlvbjsKIFNFVCBTRVNTSU9OIEFVVEhPUkla QVRJT04gcmVncmVzc19zdWJzY3JpcHRpb25fdXNlcjsKIFxkUnMrCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2Ygc3Vic2NyaXB0aW9ucwpk aWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvc3Vic2NyaXB0aW9uLnNxbCBiL3NyYy90 ZXN0L3JlZ3Jlc3Mvc3FsL3N1YnNjcmlwdGlvbi5zcWwKaW5kZXggYmY4NDIxZmI1MC4uMDQzOWI1 YTJmZSAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvc3Vic2NyaXB0aW9uLnNxbAor KysgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC9zdWJzY3JpcHRpb24uc3FsCkBAIC05OCwxNyArOTgs NDEgQEAgRFJPUCBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViNjsKIC0tIHRlc3QgdXNpbmcg YSBzZXJ2ZXIgb2JqZWN0IGluc3RlYWQgb2YgY29ubmVjdGlvbiBzdHJpbmcKIAogUkVTRVQgU0VT U0lPTiBBVVRIT1JJWkFUSU9OOwotQ1JFQVRFIFNFUlZFUiByZWdyZXNzX3Rlc3RzZXJ2ZXIxIEZP UkVJR04gREFUQSBXUkFQUEVSIHBnX2Nvbm5lY3Rpb25fZmR3OworQ1JFQVRFIFJPTEUgcmVncmVz c19jb25uZWN0aW9uX3JvbGU7CitDUkVBVEUgU0VSVkVSIHJlZ3Jlc3NfdGVzdHNlcnZlcjEgRk9S RUlHTiBEQVRBIFdSQVBQRVIgcGdfY29ubmVjdGlvbl9mZHcKKyAgRk9SIFNVQlNDUklQVElPTjsK IENSRUFURSBTRVJWRVIgcmVncmVzc190ZXN0c2VydmVyMiBGT1JFSUdOIERBVEEgV1JBUFBFUiBw Z19jb25uZWN0aW9uX2ZkdzsKK0FMVEVSIFNFUlZFUiByZWdyZXNzX3Rlc3RzZXJ2ZXIxIE9XTkVS IFRPIHJlZ3Jlc3NfY29ubmVjdGlvbl9yb2xlOworQUxURVIgU0VSVkVSIHJlZ3Jlc3NfdGVzdHNl cnZlcjIgT1dORVIgVE8gcmVncmVzc19jb25uZWN0aW9uX3JvbGU7CiBDUkVBVEUgVVNFUiBNQVBQ SU5HIEZPUiByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyMyBTRVJWRVIgcmVncmVzc190ZXN0c2Vy dmVyMQogICBPUFRJT05TIChwYXNzd29yZCAnc2VjcmV0Jyk7CiBDUkVBVEUgVVNFUiBNQVBQSU5H IEZPUiByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyMyBTRVJWRVIgcmVncmVzc190ZXN0c2VydmVy MgogICBPUFRJT05TIChwYXNzd29yZCAnc2VjcmV0Jyk7CiBHUkFOVCBVU0FHRSBPTiBGT1JFSUdO IFNFUlZFUiByZWdyZXNzX3Rlc3RzZXJ2ZXIyIFRPIHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIz OwogCistLSB0ZW1wb3JhcmlseSByZXZva2UgcGdfY3JlYXRlX2Nvbm5lY3Rpb24gZnJvbSBwZ19j cmVhdGVfc3Vic2NyaXB0aW9uCistLSB0byB0ZXN0IHRoYXQgQ1JFQVRFIFNVQlNDUklQVElPTiAu Li4gQ09OTkVDVElPTiBmYWlscworUkVWT0tFIHBnX2NyZWF0ZV9jb25uZWN0aW9uIEZST00gcGdf Y3JlYXRlX3N1YnNjcmlwdGlvbjsKKwogU0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTiByZWdyZXNz X3N1YnNjcmlwdGlvbl91c2VyMzsKKworLS0gZmFpbCAtIG5vdCBhIG1lbWJlciBvZiBwZ19jcmVh dGVfY29ubmVjdGlvbiwgY2Fubm90IHVzZSBDT05ORUNUSU9OCitDUkVBVEUgU1VCU0NSSVBUSU9O IHJlZ3Jlc3NfdGVzdHN1YjYgQ09OTkVDVElPTiAnZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0 IHBhc3N3b3JkPXJlZ3Jlc3NfZmFrZXBhc3N3b3JkJyBQVUJMSUNBVElPTiB0ZXN0cHViIFdJVEgg KHNsb3RfbmFtZSA9IE5PTkUsIGNvbm5lY3QgPSBmYWxzZSk7CisKIENSRUFURSBTVUJTQ1JJUFRJ T04gcmVncmVzc190ZXN0c3ViNiBTRVJWRVIgcmVncmVzc190ZXN0c2VydmVyMSBQVUJMSUNBVElP TiB0ZXN0cHViCi0gIFdJVEggKHNsb3RfbmFtZSA9IE5PTkUsIGNvbm5lY3QgPSBmYWxzZSk7IC0t IGZhaWxzCisgIFdJVEggKHNsb3RfbmFtZSA9IE5PTkUsIGNvbm5lY3QgPSBmYWxzZSk7IC0tIGZh aWwgLSBubyBVU0FHRQorQ1JFQVRFIFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWI2IFNFUlZF UiByZWdyZXNzX3Rlc3RzZXJ2ZXIyIFBVQkxJQ0FUSU9OIHRlc3RwdWIKKyAgV0lUSCAoc2xvdF9u YW1lID0gTk9ORSwgY29ubmVjdCA9IGZhbHNlKTsgLS0gZmFpbCAtIG5vdCBGT1IgU1VCU0NSSVBU SU9OCisKK1NFVCBTRVNTSU9OIEFVVEhPUklaQVRJT04gcmVncmVzc19jb25uZWN0aW9uX3JvbGU7 CitBTFRFUiBTRVJWRVIgcmVncmVzc190ZXN0c2VydmVyMiBGT1IgU1VCU0NSSVBUSU9OOyAtLSBm YWlscyAtIG5lZWQgcGdfY3JlYXRlX2Nvbm5lY3Rpb24KK1JFU0VUIFNFU1NJT04gQVVUSE9SSVpB VElPTjsKK0dSQU5UIHBnX2NyZWF0ZV9jb25uZWN0aW9uIFRPIHJlZ3Jlc3NfY29ubmVjdGlvbl9y b2xlOworU0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTiByZWdyZXNzX2Nvbm5lY3Rpb25fcm9sZTsK K0FMVEVSIFNFUlZFUiByZWdyZXNzX3Rlc3RzZXJ2ZXIyIEZPUiBTVUJTQ1JJUFRJT047CisKK1NF VCBTRVNTSU9OIEFVVEhPUklaQVRJT04gcmVncmVzc19zdWJzY3JpcHRpb25fdXNlcjM7CisKIENS RUFURSBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViNiBTRVJWRVIgcmVncmVzc190ZXN0c2Vy dmVyMiBQVUJMSUNBVElPTiB0ZXN0cHViCiAgIFdJVEggKHNsb3RfbmFtZSA9IE5PTkUsIGNvbm5l Y3QgPSBmYWxzZSk7CiBSRVNFVCBTRVNTSU9OIEFVVEhPUklaQVRJT047CkBAIC0xNDIsNiArMTY2 LDEwIEBAIERST1AgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YjY7CiBEUk9QIFVTRVIgTUFQ UElORyBGT1IgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlcjMgU0VSVkVSIHJlZ3Jlc3NfdGVzdHNl cnZlcjE7CiBEUk9QIFNFUlZFUiByZWdyZXNzX3Rlc3RzZXJ2ZXIxOwogUkVWT0tFIENSRUFURSBP TiBEQVRBQkFTRSByZWdyZXNzaW9uIEZST00gcmVncmVzc19zdWJzY3JpcHRpb25fdXNlcjM7CisK Ky0tIHJlLWdyYW50IHBnX2NyZWF0ZV9jb25uZWN0aW9uIHRvIHBnX2NyZWF0ZV9zdWJzY3JpcHRp b24KK0dSQU5UIHBnX2NyZWF0ZV9jb25uZWN0aW9uIFRPIHBnX2NyZWF0ZV9zdWJzY3JpcHRpb247 CisKIFNFVCBTRVNTSU9OIEFVVEhPUklaQVRJT04gcmVncmVzc19zdWJzY3JpcHRpb25fdXNlcjsK IAogXGRScysKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3N1YnNjcmlwdGlvbi90LzAwMV9yZXBfY2hh bmdlcy5wbCBiL3NyYy90ZXN0L3N1YnNjcmlwdGlvbi90LzAwMV9yZXBfY2hhbmdlcy5wbAppbmRl eCA0Y2JmMmRjZWFhLi45MWE3Zjk2OTViIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9zdWJzY3JpcHRp b24vdC8wMDFfcmVwX2NoYW5nZXMucGwKKysrIGIvc3JjL3Rlc3Qvc3Vic2NyaXB0aW9uL3QvMDAx X3JlcF9jaGFuZ2VzLnBsCkBAIC0xMTYsNyArMTE2LDcgQEAgJG5vZGVfc3Vic2NyaWJlci0+c2Fm ZV9wc3FsKCdwb3N0Z3JlcycsCiBteSAkcHVibGlzaGVyX2hvc3QgPSAkbm9kZV9wdWJsaXNoZXIt Pmhvc3Q7CiBteSAkcHVibGlzaGVyX3BvcnQgPSAkbm9kZV9wdWJsaXNoZXItPnBvcnQ7CiAkbm9k ZV9zdWJzY3JpYmVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKLQkiQ1JFQVRFIFNFUlZFUiB0YXBf c3ViMl9zZXJ2ZXIgRk9SRUlHTiBEQVRBIFdSQVBQRVIgcGdfY29ubmVjdGlvbl9mZHcgT1BUSU9O UyAoaG9zdCAnJHB1Ymxpc2hlcl9ob3N0JywgcG9ydCAnJHB1Ymxpc2hlcl9wb3J0JywgZGJuYW1l ICdwb3N0Z3JlcycpIgorCSJDUkVBVEUgU0VSVkVSIHRhcF9zdWIyX3NlcnZlciBGT1JFSUdOIERB VEEgV1JBUFBFUiBwZ19jb25uZWN0aW9uX2ZkdyBGT1IgU1VCU0NSSVBUSU9OIE9QVElPTlMgKGhv c3QgJyRwdWJsaXNoZXJfaG9zdCcsIHBvcnQgJyRwdWJsaXNoZXJfcG9ydCcsIGRibmFtZSAncG9z dGdyZXMnKSIKICk7CiAKICRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAot LSAKMi4zNC4xCgo= --=-BGB4L0ZPZie64oIr3KQS--