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 1sL57z-00DNTu-Bi for pgsql-hackers@arkaria.postgresql.org; Sat, 22 Jun 2024 18:06:19 +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 1sL57w-00DAZ0-Jn for pgsql-hackers@arkaria.postgresql.org; Sat, 22 Jun 2024 18:06:16 +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 1sL57v-00DAYr-Vv for pgsql-hackers@lists.postgresql.org; Sat, 22 Jun 2024 18:06:16 +0000 Received: from mail-qv1-xf2f.google.com ([2607:f8b0:4864:20::f2f]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1sL57t-0031FH-84 for pgsql-hackers@lists.postgresql.org; Sat, 22 Jun 2024 18:06:15 +0000 Received: by mail-qv1-xf2f.google.com with SMTP id 6a1803df08f44-6b4f7541d7eso14344896d6.0 for ; Sat, 22 Jun 2024 11:06:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1719079571; x=1719684371; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=we3PyF59BYqtK2bLoYuidXsmCMqkmx+ZmljLxEKbiYo=; b=irLrofp/XfK4ZIkhwIlX/QEc6RFmi6T7AIZ6RRrepxMenxSmq3bWxe872dnoKypOAc XJmztTFmnJuWPJYOItrmHcLyD5njC2He6ZVsjftdMcq1ipN4sRc8flbBp4y0EdnHEZVb KwV0KUU7irEbMwoYHHIhEz+eabT2Uk9T2lt202ckxKIO5tzvMbGaDEMK5RIKmTbE51r0 2m96myjwsGNAGVFEF5QGoHyjltGU0ptcCTv5NlPRKv7PjINa51NnnFTU1doilxpC+Vol fMCBJ0PtAbUkmDvPAMprlmJ6uZT90J+iUimf8bdUiOAk6U5e3PSqsK8xj2GFnZ1iOMU7 bH0A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1719079571; x=1719684371; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=we3PyF59BYqtK2bLoYuidXsmCMqkmx+ZmljLxEKbiYo=; b=EwSMX5nFRfeYc98ecVHbmmOkSdRqH5OpQlnUKwEBixAA2UtAjSH8TGI6UfMgzfWWGu hDcIfe+sLavhdK19vISNgophoaoMJpQd4UP8xYGN6OhWhEb9LvAAFrCTD5Ah+kXWNGYi yRpHp009C52Y+9cF8BSZgjLrqTo2EHR9zRrtzvqyliZWJnm3qIq64C/odq50ZETZLUj5 g72RZo7bMbtyUaoNuH4XNfhhgJj9Otskejel5cLoMDVZp7Mzae+Ec/M7LOOV+rsL6KtE xWvR7lPuco0EVEu206esRo2jNSGoDPHm7xcBxNFYkwWEPrgqunmXM+AGg57aH1dzWhIO 1EZw== X-Forwarded-Encrypted: i=1; AJvYcCVs50Nq9iVBd/kUYBNZ5wriWE/bzeVCTBDHXgtib8OM9luEOTULRxDXpcCANbb+74KKqZexTDJ9kSCbF/xqU1FCPMt9j2Yg6k/nFs/0T6vR2gX9 X-Gm-Message-State: AOJu0YwulS9SwP9h+iClLL4TIvBgHihUDUwb6NwQl54r53Yh9MbQiQNX Pa7oTmhxe/Cmiz8JEFoqFyCFFKFFdfvnkHt2PmLhE8BiyUUSLEbkGXe4QZ/qpIbZVdEaQcw7oU3 TYZeRe1KbRssrFpdRH7XErVPE65w= X-Google-Smtp-Source: AGHT+IEfeYaPCtQI6rfcgn9aB5DzRR6fwk2s4B/x/fckWs7Fqkowmbdeds82wu8+DCizo7TLzrv/Ok0a7cJDSPg+h+o= X-Received: by 2002:ad4:418f:0:b0:6b2:b340:1614 with SMTP id 6a1803df08f44-6b5363e3da2mr15161196d6.23.1719079571489; Sat, 22 Jun 2024 11:06:11 -0700 (PDT) MIME-Version: 1.0 References: <60E6ECA4-C5DB-4F87-9557-1BC094A9F051@gmail.com> In-Reply-To: From: Shubham Khanna Date: Sat, 22 Jun 2024 23:36:00 +0530 Message-ID: Subject: Re: Pgoutput not capturing the generated columns To: Peter Smith Cc: Shlok Kyal , vignesh C , Rajendra Kumar Dangwal , pgsql-hackers@lists.postgresql.org, euler@eulerto.com Content-Type: multipart/mixed; boundary="000000000000333905061b7e672f" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000333905061b7e672f Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 20, 2024 at 9:03=E2=80=AFAM Peter Smith = wrote: > > Hi, here are my review comments for v8-0001. > > =3D=3D=3D=3D=3D=3D > Commit message. > > 1. > It seems like the patch name was accidentally omitted, so it became a > mess when it defaulted to the 1st paragraph of the commit message. > > =3D=3D=3D=3D=3D=3D > contrib/test_decoding/test_decoding.c > > 2. > + data->include_generated_columns =3D true; > > I previously posted a comment [1, #4] that this should default to > false; IMO it is unintuitive for the test_decoding to have an > *opposite* default behaviour compared to CREATE SUBSCRIPTION. > > =3D=3D=3D=3D=3D=3D > doc/src/sgml/ref/create_subscription.sgml > > NITPICK - remove the inconsistent blank line in SGML > > =3D=3D=3D=3D=3D=3D > src/backend/commands/subscriptioncmds.c > > 3. > +#define SUBOPT_include_generated_columns 0x00010000 > > I previously posted a comment [1, #6] that this should be UPPERCASE, > but it is not yet fixed. > > =3D=3D=3D=3D=3D=3D > src/bin/psql/describe.c > > NITPICK - move and reword the bogus comment > > ~ > > 4. > + if (pset.sversion >=3D 170000) > + appendPQExpBuffer(&buf, > + ", subincludegencols AS \"%s\"\n", > + gettext_noop("include_generated_columns")); > > 4a. > For consistency with every other parameter, that column title should > be written in words "Include generated columns" (not > "include_generated_columns"). > > ~ > > 4b. > IMO this new column belongs with the other subscription parameter > columns (e.g. put it ahead of the "Conninfo" column). > > =3D=3D=3D=3D=3D=3D > src/test/subscription/t/011_generated.pl > > NITPICK - fixed a comment > > 5. > IMO, it would be better for readability if all the matching CREATE > TABLE for publisher and subscriber are kept together, instead of the > current code which is creating all publisher tables and then creating > all subscriber tables. > > ~~~ > > 6. > +$result =3D $node_subscriber->safe_psql('postgres', "SELECT * FROM tab2"= ); > +is( $result, qq(4|8 > +5|10), 'confirm generated columns ARE replicated when the > subscriber-side column is not generated'); > + > ... > +$result =3D $node_subscriber->safe_psql('postgres', "SELECT * FROM tab3"= ); > +is( $result, qq(4|24 > +5|25), 'confirm generated columns are NOT replicated when the > subscriber-side column is also generated'); > + > > 6a. > These SELECT all need ORDER BY to protect against the SELECT * > returning rows in some unexpected order. > > ~ > > 6b. > IMO there should be more comments here to explain how you can tell the > column was NOT replicated. E.g. it is because the result value of 'b' > is the subscriber-side computed value (which you made deliberately > different to the publisher-side computed value). > > =3D=3D=3D=3D=3D=3D > > 99. > Please also refer to the attached nitpicks top-up patch for minor > cosmetic stuff. All the comments are handled. The attached Patch contains all the suggested changes. Thanks and Regards, Shubham Khanna. --000000000000333905061b7e672f Content-Type: application/octet-stream; name="v9-0001-Currently-generated-column-values-are-not-replica.patch" Content-Disposition: attachment; filename="v9-0001-Currently-generated-column-values-are-not-replica.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lxqfk3z90 RnJvbSA5ZDZjYzk0NjEyNzU0NTk1NzFmYjI3NmYzMWYwMjdlYWFhZWJkNzhjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBTaHViaGFtIEtoYW5uYSA8a2hhbm5hc2h1YmhhbTExOTdAZ21h aWwuY29tPgpEYXRlOiBNb24sIDIwIE1heSAyMDI0IDEwOjU4OjMxICswNTMwClN1YmplY3Q6IFtQ QVRDSCB2OV0gQ3VycmVudGx5IGdlbmVyYXRlZCBjb2x1bW4gdmFsdWVzIGFyZSBub3QgcmVwbGlj YXRlZAogYmVjYXVzZSBpdCBpcyBhc3N1bWVkIHRoYXQgdGhlIGNvcnJlc3BvbmRpbmcgc3Vic2Ny aWJlci1zaWRlIHRhYmxlIHdpbGwKIGdlbmVyYXRlIGl0cyBvd24gdmFsdWVzIGZvciB0aG9zZSBj b2x1bW5zLgoKVGhpcyBjb21taXQgZW5hYmxlcyBzdXBwb3J0IGZvciB0aGUgJ2luY2x1ZGVfZ2Vu ZXJhdGVkX2NvbHVtbnMnIG9wdGlvbiBpbgpsb2dpY2FsIHJlcGxpY2F0aW9uLCBhbGxvd2luZyB0 aGUgdHJhbnNtaXNzaW9uIG9mIGdlbmVyYXRlZCBjb2x1bW4gaW5mb3JtYXRpb24KYW5kIGRhdGEg YWxvbmdzaWRlIHJlZ3VsYXIgdGFibGUgY2hhbmdlcy4KCldpdGggdGhpcyBlbmhhbmNlbWVudCwg dXNlcnMgY2FuIG5vdyBpbmNsdWRlIHRoZSAnaW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1ucycKb3B0 aW9uIHdoZW4gcXVlcnlpbmcgbG9naWNhbCByZXBsaWNhdGlvbiBzbG90cyB1c2luZyBlaXRoZXIg dGhlIHBnb3V0cHV0IHBsdWdpbgpvciB0aGUgdGVzdF9kZWNvZGluZyBwbHVnaW4uIFRoaXMgb3B0 aW9uLCB3aGVuIHNldCB0byAndHJ1ZScgb3IgJzEnLAppbnN0cnVjdHMgdGhlIHJlcGxpY2F0aW9u IHN5c3RlbSB0byBpbmNsdWRlIGdlbmVyYXRlZCBjb2x1bW4gaW5mb3JtYXRpb24KYW5kIGRhdGEg aW4gdGhlIHJlcGxpY2F0aW9uIHN0cmVhbS4KCldoZW4gJ2luY2x1ZGVfZ2VuZXJhdGVkX2NvbHVt bnMnIGlzIGZhbHNlLCBnZW5lcmF0ZWQgY29sdW1ucyBhcmUgbm90CnJlcGxpY2F0ZWQsIGV2ZW4g d2hlbiBwcmVzZW50IGluIGEgUFVCTElDQVRJT04gY29sLWxpc3QuCgpVc2FnZSBmcm9tIHRlc3Rf ZGVjb2RpbmcgcGx1Z2luOgpTRUxFQ1QgZGF0YSBGUk9NIHBnX2xvZ2ljYWxfc2xvdF9nZXRfY2hh bmdlcygnc2xvdDInLCBOVUxMLCBOVUxMLAoJCSdpbmNsdWRlLXhpZHMnLCAnMCcsJ3NraXAtZW1w dHkteGFjdHMnLCAnMScsCgkJJ2luY2x1ZGUtZ2VuZXJhdGVkLWNvbHVtbnMnLCcxJyk7CgpJZiB0 aGUgc3Vic2NyaWJlci1zaWRlIGNvbHVtbiBpcyBhbHNvIGEgZ2VuZXJhdGVkIGNvbHVtbiB0aGVu IHRoaXMgb3B0aW9uCmhhcyBubyBlZmZlY3Q7IHRoZSByZXBsaWNhdGVkIGRhdGEgd2lsbCBiZSBp Z25vcmVkIGFuZCB0aGUgc3Vic2NyaWJlcgpjb2x1bW4gd2lsbCBiZSBmaWxsZWQgYXMgbm9ybWFs IHdpdGggdGhlIHN1YnNjcmliZXItc2lkZSBjb21wdXRlZCBvcgpkZWZhdWx0IGRhdGEuCgpDdXJy ZW50bHkgJ2NvcHlfZGF0YScgb3B0aW9uIHdpdGggJ2luY2x1ZGVfZ2VuZXJhdGVkX2NvbHVtbnMn IG9wdGlvbiBpcyBub3Qgc3VwcG9ydGVkLgpBIGZ1dHVyZSBwYXRjaCB3aWxsIHJlbW92ZSB0aGlz IGxpbWl0YXRpb24uCgonaW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1ucycgY2Fubm90IGJlIGFsdGVy ZWQgYXMgaXQgY2FuIGxlYWQgdG8gaW5jb25zaXN0ZW5jeS4KLS0tCiAuLi4vZXhwZWN0ZWQvZGVj b2RpbmdfaW50b19yZWwub3V0ICAgICAgICAgICAgfCAgMzkgKysrKysKIC4uLi90ZXN0X2RlY29k aW5nL3NxbC9kZWNvZGluZ19pbnRvX3JlbC5zcWwgICB8ICAxNSArLQogY29udHJpYi90ZXN0X2Rl Y29kaW5nL3Rlc3RfZGVjb2RpbmcuYyAgICAgICAgIHwgIDI2ICsrLQogZG9jL3NyYy9zZ21sL3By b3RvY29sLnNnbWwgICAgICAgICAgICAgICAgICAgIHwgIDEyICsrCiBkb2Mvc3JjL3NnbWwvcmVm L2NyZWF0ZV9zdWJzY3JpcHRpb24uc2dtbCAgICAgfCAgMjAgKysrCiBzcmMvYmFja2VuZC9jYXRh bG9nL3BnX3B1YmxpY2F0aW9uLmMgICAgICAgICAgfCAgIDkgKy0KIHNyYy9iYWNrZW5kL2NhdGFs b2cvcGdfc3Vic2NyaXB0aW9uLmMgICAgICAgICB8ICAgMSArCiBzcmMvYmFja2VuZC9jb21tYW5k cy9zdWJzY3JpcHRpb25jbWRzLmMgICAgICAgfCAgMzEgKysrLQogLi4uL2xpYnBxd2FscmVjZWl2 ZXIvbGlicHF3YWxyZWNlaXZlci5jICAgICAgIHwgICA0ICsKIHNyYy9iYWNrZW5kL3JlcGxpY2F0 aW9uL2xvZ2ljYWwvcHJvdG8uYyAgICAgICB8ICA1NiArKysrKy0tCiBzcmMvYmFja2VuZC9yZXBs aWNhdGlvbi9sb2dpY2FsL3JlbGF0aW9uLmMgICAgfCAgIDIgKy0KIHNyYy9iYWNrZW5kL3JlcGxp Y2F0aW9uL2xvZ2ljYWwvd29ya2VyLmMgICAgICB8ICAgMSArCiBzcmMvYmFja2VuZC9yZXBsaWNh dGlvbi9wZ291dHB1dC9wZ291dHB1dC5jICAgfCAgNDIgKysrLS0KIHNyYy9iaW4vcGdfZHVtcC9w Z19kdW1wLmMgICAgICAgICAgICAgICAgICAgICB8ICAyMyArKy0KIHNyYy9iaW4vcGdfZHVtcC9w Z19kdW1wLmggICAgICAgICAgICAgICAgICAgICB8ICAgMiArCiBzcmMvYmluL3BzcWwvZGVzY3Jp YmUuYyAgICAgICAgICAgICAgICAgICAgICAgfCAgIDggKy0KIHNyYy9iaW4vcHNxbC90YWItY29t cGxldGUuYyAgICAgICAgICAgICAgICAgICB8ICAgMyArLQogc3JjL2luY2x1ZGUvY2F0YWxvZy9w Z19zdWJzY3JpcHRpb24uaCAgICAgICAgIHwgICAzICsKIHNyYy9pbmNsdWRlL3JlcGxpY2F0aW9u L2xvZ2ljYWxwcm90by5oICAgICAgICB8ICAxMyArLQogc3JjL2luY2x1ZGUvcmVwbGljYXRpb24v cGdvdXRwdXQuaCAgICAgICAgICAgIHwgICAxICsKIHNyYy9pbmNsdWRlL3JlcGxpY2F0aW9uL3dh bHJlY2VpdmVyLmggICAgICAgICB8ICAgMSArCiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3B1 YmxpY2F0aW9uLm91dCAgICAgfCAgIDQgKy0KIHNyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvc3Vi c2NyaXB0aW9uLm91dCAgICB8IDE1OCArKysrKysrKystLS0tLS0tLS0KIHNyYy90ZXN0L3JlZ3Jl c3Mvc3FsL3B1YmxpY2F0aW9uLnNxbCAgICAgICAgICB8ICAgMyArLQogc3JjL3Rlc3QvcmVncmVz cy9zcWwvc3Vic2NyaXB0aW9uLnNxbCAgICAgICAgIHwgICA2ICsKIHNyYy90ZXN0L3N1YnNjcmlw dGlvbi90LzAxMV9nZW5lcmF0ZWQucGwgICAgICB8ICA2MyArKysrKystCiBzcmMvdGVzdC9zdWJz Y3JpcHRpb24vdC8wMzFfY29sdW1uX2xpc3QucGwgICAgfCAgIDQgKy0KIDI3IGZpbGVzIGNoYW5n ZWQsIDQxMCBpbnNlcnRpb25zKCspLCAxNDAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvY29u dHJpYi90ZXN0X2RlY29kaW5nL2V4cGVjdGVkL2RlY29kaW5nX2ludG9fcmVsLm91dCBiL2NvbnRy aWIvdGVzdF9kZWNvZGluZy9leHBlY3RlZC9kZWNvZGluZ19pbnRvX3JlbC5vdXQKaW5kZXggOGZk MzM5MDA2Ni4uOTRhMzc0MTQwOCAxMDA2NDQKLS0tIGEvY29udHJpYi90ZXN0X2RlY29kaW5nL2V4 cGVjdGVkL2RlY29kaW5nX2ludG9fcmVsLm91dAorKysgYi9jb250cmliL3Rlc3RfZGVjb2Rpbmcv ZXhwZWN0ZWQvZGVjb2RpbmdfaW50b19yZWwub3V0CkBAIC0xMDMsNiArMTAzLDQ1IEBAIFNFTEVD VCBkYXRhIEZST00gcGdfbG9naWNhbF9zbG90X2dldF9jaGFuZ2VzKCdyZWdyZXNzaW9uX3Nsb3Qn LCBOVUxMLCBOVUxMLCAnaW5jCiAgQ09NTUlUCiAoMTQgcm93cykKIAorLS0gY2hlY2sgaW5jbHVk ZS1nZW5lcmF0ZWQtY29sdW1ucyBvcHRpb24gd2l0aCBnZW5lcmF0ZWQgY29sdW1uCitDUkVBVEUg VEFCTEUgZ2VuY29sdGFibGUgKGEgaW50LCBiIGludCBHRU5FUkFURUQgQUxXQVlTIEFTIChhICog MikgU1RPUkVEKTsKKy0tIHdoZW4gJ2luY2x1ZGUtZ2VuZXJhdGVkLWNvbHVtbnMnIGlzIG5vdCBz ZXQKK0lOU0VSVCBJTlRPIGdlbmNvbHRhYmxlIChhKSBWQUxVRVMgKDEpLCAoMiksICgzKTsKK1NF TEVDVCBkYXRhIEZST00gcGdfbG9naWNhbF9zbG90X2dldF9jaGFuZ2VzKCdyZWdyZXNzaW9uX3Ns b3QnLCBOVUxMLCBOVUxMLCAnaW5jbHVkZS14aWRzJywgJzAnLCAnc2tpcC1lbXB0eS14YWN0cycs ICcxJyk7CisgICAgICAgICAgICAgICAgICAgICAgZGF0YSAgICAgICAgICAgICAgICAgICAgICAK Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIEJFR0lO CisgdGFibGUgcHVibGljLmdlbmNvbHRhYmxlOiBJTlNFUlQ6IGFbaW50ZWdlcl06MQorIHRhYmxl IHB1YmxpYy5nZW5jb2x0YWJsZTogSU5TRVJUOiBhW2ludGVnZXJdOjIKKyB0YWJsZSBwdWJsaWMu Z2VuY29sdGFibGU6IElOU0VSVDogYVtpbnRlZ2VyXTozCisgQ09NTUlUCisoNSByb3dzKQorCist LSB3aGVuICdpbmNsdWRlLWdlbmVyYXRlZC1jb2x1bW5zJyA9ICcxJyB0aGUgZ2VuZXJhdGVkIGNv bHVtbiAnYicgdmFsdWVzIHdpbGwgYmUgcmVwbGljYXRlZAorSU5TRVJUIElOVE8gZ2VuY29sdGFi bGUgKGEpIFZBTFVFUyAoMSksICgyKSwgKDMpOworU0VMRUNUIGRhdGEgRlJPTSBwZ19sb2dpY2Fs X3Nsb3RfZ2V0X2NoYW5nZXMoJ3JlZ3Jlc3Npb25fc2xvdCcsIE5VTEwsIE5VTEwsICdpbmNsdWRl LXhpZHMnLCAnMCcsICdza2lwLWVtcHR5LXhhY3RzJywgJzEnLCAnaW5jbHVkZS1nZW5lcmF0ZWQt Y29sdW1ucycsICcxJyk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgQkVHSU4KKyB0YWJsZSBwdWJsaWMuZ2VuY29s dGFibGU6IElOU0VSVDogYVtpbnRlZ2VyXToxIGJbaW50ZWdlcl06MgorIHRhYmxlIHB1YmxpYy5n ZW5jb2x0YWJsZTogSU5TRVJUOiBhW2ludGVnZXJdOjIgYltpbnRlZ2VyXTo0CisgdGFibGUgcHVi bGljLmdlbmNvbHRhYmxlOiBJTlNFUlQ6IGFbaW50ZWdlcl06MyBiW2ludGVnZXJdOjYKKyBDT01N SVQKKyg1IHJvd3MpCisKKy0tIHdoZW4gJ2luY2x1ZGUtZ2VuZXJhdGVkLWNvbHVtbnMnID0gJzAn IHRoZSBnZW5lcmF0ZWQgY29sdW1uICdiJyB2YWx1ZXMgd2lsbCBub3QgYmUgcmVwbGljYXRlZAor SU5TRVJUIElOVE8gZ2VuY29sdGFibGUgKGEpIFZBTFVFUyAoNCksICg1KSwgKDYpOworU0VMRUNU IGRhdGEgRlJPTSBwZ19sb2dpY2FsX3Nsb3RfZ2V0X2NoYW5nZXMoJ3JlZ3Jlc3Npb25fc2xvdCcs IE5VTEwsIE5VTEwsICdpbmNsdWRlLXhpZHMnLCAnMCcsICdza2lwLWVtcHR5LXhhY3RzJywgJzEn LCAnaW5jbHVkZS1nZW5lcmF0ZWQtY29sdW1ucycsICcwJyk7CisgICAgICAgICAgICAgICAgICAg ICAgZGF0YSAgICAgICAgICAgICAgICAgICAgICAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIEJFR0lOCisgdGFibGUgcHVibGljLmdlbmNvbHRhYmxl OiBJTlNFUlQ6IGFbaW50ZWdlcl06NAorIHRhYmxlIHB1YmxpYy5nZW5jb2x0YWJsZTogSU5TRVJU OiBhW2ludGVnZXJdOjUKKyB0YWJsZSBwdWJsaWMuZ2VuY29sdGFibGU6IElOU0VSVDogYVtpbnRl Z2VyXTo2CisgQ09NTUlUCisoNSByb3dzKQorCitEUk9QIFRBQkxFIGdlbmNvbHRhYmxlOwogU0VM RUNUICdzdG9wJyBGUk9NIHBnX2Ryb3BfcmVwbGljYXRpb25fc2xvdCgncmVncmVzc2lvbl9zbG90 Jyk7CiAgP2NvbHVtbj8gCiAtLS0tLS0tLS0tCmRpZmYgLS1naXQgYS9jb250cmliL3Rlc3RfZGVj b2Rpbmcvc3FsL2RlY29kaW5nX2ludG9fcmVsLnNxbCBiL2NvbnRyaWIvdGVzdF9kZWNvZGluZy9z cWwvZGVjb2RpbmdfaW50b19yZWwuc3FsCmluZGV4IDEwNjhjZWM1ODguLjg1NTg0NTMxYTkgMTAw NjQ0Ci0tLSBhL2NvbnRyaWIvdGVzdF9kZWNvZGluZy9zcWwvZGVjb2RpbmdfaW50b19yZWwuc3Fs CisrKyBiL2NvbnRyaWIvdGVzdF9kZWNvZGluZy9zcWwvZGVjb2RpbmdfaW50b19yZWwuc3FsCkBA IC0zOSw0ICszOSwxNyBAQCBTRUxFQ1QgKiBGUk9NIHNsb3RfY2hhbmdlc193cmFwcGVyKCdyZWdy ZXNzaW9uX3Nsb3QnKTsKIAogU0VMRUNUIGRhdGEgRlJPTSBwZ19sb2dpY2FsX3Nsb3RfZ2V0X2No YW5nZXMoJ3JlZ3Jlc3Npb25fc2xvdCcsIE5VTEwsIE5VTEwsICdpbmNsdWRlLXhpZHMnLCAnMCcs ICdza2lwLWVtcHR5LXhhY3RzJywgJzEnKTsKIAotU0VMRUNUICdzdG9wJyBGUk9NIHBnX2Ryb3Bf cmVwbGljYXRpb25fc2xvdCgncmVncmVzc2lvbl9zbG90Jyk7CistLSBjaGVjayBpbmNsdWRlLWdl bmVyYXRlZC1jb2x1bW5zIG9wdGlvbiB3aXRoIGdlbmVyYXRlZCBjb2x1bW4KK0NSRUFURSBUQUJM RSBnZW5jb2x0YWJsZSAoYSBpbnQsIGIgaW50IEdFTkVSQVRFRCBBTFdBWVMgQVMgKGEgKiAyKSBT VE9SRUQpOworLS0gd2hlbiAnaW5jbHVkZS1nZW5lcmF0ZWQtY29sdW1ucycgaXMgbm90IHNldAor SU5TRVJUIElOVE8gZ2VuY29sdGFibGUgKGEpIFZBTFVFUyAoMSksICgyKSwgKDMpOworU0VMRUNU IGRhdGEgRlJPTSBwZ19sb2dpY2FsX3Nsb3RfZ2V0X2NoYW5nZXMoJ3JlZ3Jlc3Npb25fc2xvdCcs IE5VTEwsIE5VTEwsICdpbmNsdWRlLXhpZHMnLCAnMCcsICdza2lwLWVtcHR5LXhhY3RzJywgJzEn KTsKKy0tIHdoZW4gJ2luY2x1ZGUtZ2VuZXJhdGVkLWNvbHVtbnMnID0gJzEnIHRoZSBnZW5lcmF0 ZWQgY29sdW1uICdiJyB2YWx1ZXMgd2lsbCBiZSByZXBsaWNhdGVkCitJTlNFUlQgSU5UTyBnZW5j b2x0YWJsZSAoYSkgVkFMVUVTICgxKSwgKDIpLCAoMyk7CitTRUxFQ1QgZGF0YSBGUk9NIHBnX2xv Z2ljYWxfc2xvdF9nZXRfY2hhbmdlcygncmVncmVzc2lvbl9zbG90JywgTlVMTCwgTlVMTCwgJ2lu Y2x1ZGUteGlkcycsICcwJywgJ3NraXAtZW1wdHkteGFjdHMnLCAnMScsICdpbmNsdWRlLWdlbmVy YXRlZC1jb2x1bW5zJywgJzEnKTsKKy0tIHdoZW4gJ2luY2x1ZGUtZ2VuZXJhdGVkLWNvbHVtbnMn ID0gJzAnIHRoZSBnZW5lcmF0ZWQgY29sdW1uICdiJyB2YWx1ZXMgd2lsbCBub3QgYmUgcmVwbGlj YXRlZAorSU5TRVJUIElOVE8gZ2VuY29sdGFibGUgKGEpIFZBTFVFUyAoNCksICg1KSwgKDYpOwor U0VMRUNUIGRhdGEgRlJPTSBwZ19sb2dpY2FsX3Nsb3RfZ2V0X2NoYW5nZXMoJ3JlZ3Jlc3Npb25f c2xvdCcsIE5VTEwsIE5VTEwsICdpbmNsdWRlLXhpZHMnLCAnMCcsICdza2lwLWVtcHR5LXhhY3Rz JywgJzEnLCAnaW5jbHVkZS1nZW5lcmF0ZWQtY29sdW1ucycsICcwJyk7CitEUk9QIFRBQkxFIGdl bmNvbHRhYmxlOworCitTRUxFQ1QgJ3N0b3AnIEZST00gcGdfZHJvcF9yZXBsaWNhdGlvbl9zbG90 KCdyZWdyZXNzaW9uX3Nsb3QnKTsKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1n aXQgYS9jb250cmliL3Rlc3RfZGVjb2RpbmcvdGVzdF9kZWNvZGluZy5jIGIvY29udHJpYi90ZXN0 X2RlY29kaW5nL3Rlc3RfZGVjb2RpbmcuYwppbmRleCA3YzUwZDEzOTY5Li5hYTc2OTBiNThlIDEw MDY0NAotLS0gYS9jb250cmliL3Rlc3RfZGVjb2RpbmcvdGVzdF9kZWNvZGluZy5jCisrKyBiL2Nv bnRyaWIvdGVzdF9kZWNvZGluZy90ZXN0X2RlY29kaW5nLmMKQEAgLTMxLDYgKzMxLDcgQEAgdHlw ZWRlZiBzdHJ1Y3QKIAlib29sCQlpbmNsdWRlX3RpbWVzdGFtcDsKIAlib29sCQlza2lwX2VtcHR5 X3hhY3RzOwogCWJvb2wJCW9ubHlfbG9jYWw7CisJYm9vbAkJaW5jbHVkZV9nZW5lcmF0ZWRfY29s dW1uczsKIH0gVGVzdERlY29kaW5nRGF0YTsKIAogLyoKQEAgLTE2OCw2ICsxNjksNyBAQCBwZ19k ZWNvZGVfc3RhcnR1cChMb2dpY2FsRGVjb2RpbmdDb250ZXh0ICpjdHgsIE91dHB1dFBsdWdpbk9w dGlvbnMgKm9wdCwKIAlkYXRhLT5pbmNsdWRlX3RpbWVzdGFtcCA9IGZhbHNlOwogCWRhdGEtPnNr aXBfZW1wdHlfeGFjdHMgPSBmYWxzZTsKIAlkYXRhLT5vbmx5X2xvY2FsID0gZmFsc2U7CisJZGF0 YS0+aW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1ucyA9IGZhbHNlOwogCiAJY3R4LT5vdXRwdXRfcGx1 Z2luX3ByaXZhdGUgPSBkYXRhOwogCkBAIC0yNTksNiArMjYxLDE2IEBAIHBnX2RlY29kZV9zdGFy dHVwKExvZ2ljYWxEZWNvZGluZ0NvbnRleHQgKmN0eCwgT3V0cHV0UGx1Z2luT3B0aW9ucyAqb3B0 LAogCQkJCQkJIGVycm1zZygiY291bGQgbm90IHBhcnNlIHZhbHVlIFwiJXNcIiBmb3IgcGFyYW1l dGVyIFwiJXNcIiIsCiAJCQkJCQkJCXN0clZhbChlbGVtLT5hcmcpLCBlbGVtLT5kZWZuYW1lKSkp OwogCQl9CisJCWVsc2UgaWYgKHN0cmNtcChlbGVtLT5kZWZuYW1lLCAiaW5jbHVkZS1nZW5lcmF0 ZWQtY29sdW1ucyIpID09IDApCisJCXsKKwkJCWlmIChlbGVtLT5hcmcgPT0gTlVMTCkKKwkJCQlk YXRhLT5pbmNsdWRlX2dlbmVyYXRlZF9jb2x1bW5zID0gZmFsc2U7CisJCQllbHNlIGlmICghcGFy c2VfYm9vbChzdHJWYWwoZWxlbS0+YXJnKSwgJmRhdGEtPmluY2x1ZGVfZ2VuZXJhdGVkX2NvbHVt bnMpKQorCQkJCWVyZXBvcnQoRVJST1IsCisJCQkJCQllcnJjb2RlKEVSUkNPREVfSU5WQUxJRF9Q QVJBTUVURVJfVkFMVUUpLAorCQkJCQkJIGVycm1zZygiY291bGQgbm90IHBhcnNlIHZhbHVlIFwi JXNcIiBmb3IgcGFyYW1ldGVyIFwiJXNcIiIsCisJCQkJCQkJCXN0clZhbChlbGVtLT5hcmcpLCBl bGVtLT5kZWZuYW1lKSk7CisJCX0KIAkJZWxzZQogCQl7CiAJCQllcmVwb3J0KEVSUk9SLApAQCAt NTIxLDcgKzUzMyw4IEBAIHByaW50X2xpdGVyYWwoU3RyaW5nSW5mbyBzLCBPaWQgdHlwaWQsIGNo YXIgKm91dHB1dHN0cikKIAogLyogcHJpbnQgdGhlIHR1cGxlICd0dXBsZScgaW50byB0aGUgU3Ry aW5nSW5mbyBzICovCiBzdGF0aWMgdm9pZAotdHVwbGVfdG9fc3RyaW5naW5mbyhTdHJpbmdJbmZv IHMsIFR1cGxlRGVzYyB0dXBkZXNjLCBIZWFwVHVwbGUgdHVwbGUsIGJvb2wgc2tpcF9udWxscykK K3R1cGxlX3RvX3N0cmluZ2luZm8oU3RyaW5nSW5mbyBzLCBUdXBsZURlc2MgdHVwZGVzYywgSGVh cFR1cGxlIHR1cGxlLAorCQkJCQlib29sIHNraXBfbnVsbHMsIGJvb2wgaW5jbHVkZV9nZW5lcmF0 ZWRfY29sdW1ucykKIHsKIAlpbnQJCQluYXR0OwogCkBAIC01NDQsNiArNTU3LDkgQEAgdHVwbGVf dG9fc3RyaW5naW5mbyhTdHJpbmdJbmZvIHMsIFR1cGxlRGVzYyB0dXBkZXNjLCBIZWFwVHVwbGUg dHVwbGUsIGJvb2wgc2tpcF8KIAkJaWYgKGF0dHItPmF0dGlzZHJvcHBlZCkKIAkJCWNvbnRpbnVl OwogCisJCWlmIChhdHRyLT5hdHRnZW5lcmF0ZWQgJiYgIWluY2x1ZGVfZ2VuZXJhdGVkX2NvbHVt bnMpCisJCQljb250aW51ZTsKKwogCQkvKgogCQkgKiBEb24ndCBwcmludCBzeXN0ZW0gY29sdW1u cywgb2lkIHdpbGwgYWxyZWFkeSBoYXZlIGJlZW4gcHJpbnRlZCBpZgogCQkgKiBwcmVzZW50LgpA QCAtNjQxLDcgKzY1Nyw3IEBAIHBnX2RlY29kZV9jaGFuZ2UoTG9naWNhbERlY29kaW5nQ29udGV4 dCAqY3R4LCBSZW9yZGVyQnVmZmVyVFhOICp0eG4sCiAJCQllbHNlCiAJCQkJdHVwbGVfdG9fc3Ry aW5naW5mbyhjdHgtPm91dCwgdHVwZGVzYywKIAkJCQkJCQkJCWNoYW5nZS0+ZGF0YS50cC5uZXd0 dXBsZSwKLQkJCQkJCQkJCWZhbHNlKTsKKwkJCQkJCQkJCWZhbHNlLCBkYXRhLT5pbmNsdWRlX2dl bmVyYXRlZF9jb2x1bW5zKTsKIAkJCWJyZWFrOwogCQljYXNlIFJFT1JERVJfQlVGRkVSX0NIQU5H RV9VUERBVEU6CiAJCQlhcHBlbmRTdHJpbmdJbmZvU3RyaW5nKGN0eC0+b3V0LCAiIFVQREFURToi KTsKQEAgLTY1MCw3ICs2NjYsNyBAQCBwZ19kZWNvZGVfY2hhbmdlKExvZ2ljYWxEZWNvZGluZ0Nv bnRleHQgKmN0eCwgUmVvcmRlckJ1ZmZlclRYTiAqdHhuLAogCQkJCWFwcGVuZFN0cmluZ0luZm9T dHJpbmcoY3R4LT5vdXQsICIgb2xkLWtleToiKTsKIAkJCQl0dXBsZV90b19zdHJpbmdpbmZvKGN0 eC0+b3V0LCB0dXBkZXNjLAogCQkJCQkJCQkJY2hhbmdlLT5kYXRhLnRwLm9sZHR1cGxlLAotCQkJ CQkJCQkJdHJ1ZSk7CisJCQkJCQkJCQl0cnVlLCBkYXRhLT5pbmNsdWRlX2dlbmVyYXRlZF9jb2x1 bW5zICk7CiAJCQkJYXBwZW5kU3RyaW5nSW5mb1N0cmluZyhjdHgtPm91dCwgIiBuZXctdHVwbGU6 Iik7CiAJCQl9CiAKQEAgLTY1OSw3ICs2NzUsNyBAQCBwZ19kZWNvZGVfY2hhbmdlKExvZ2ljYWxE ZWNvZGluZ0NvbnRleHQgKmN0eCwgUmVvcmRlckJ1ZmZlclRYTiAqdHhuLAogCQkJZWxzZQogCQkJ CXR1cGxlX3RvX3N0cmluZ2luZm8oY3R4LT5vdXQsIHR1cGRlc2MsCiAJCQkJCQkJCQljaGFuZ2Ut PmRhdGEudHAubmV3dHVwbGUsCi0JCQkJCQkJCQlmYWxzZSk7CisJCQkJCQkJCQlmYWxzZSwgZGF0 YS0+aW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1ucyk7CiAJCQlicmVhazsKIAkJY2FzZSBSRU9SREVS X0JVRkZFUl9DSEFOR0VfREVMRVRFOgogCQkJYXBwZW5kU3RyaW5nSW5mb1N0cmluZyhjdHgtPm91 dCwgIiBERUxFVEU6Iik7CkBAIC02NzEsNyArNjg3LDcgQEAgcGdfZGVjb2RlX2NoYW5nZShMb2dp Y2FsRGVjb2RpbmdDb250ZXh0ICpjdHgsIFJlb3JkZXJCdWZmZXJUWE4gKnR4biwKIAkJCWVsc2UK IAkJCQl0dXBsZV90b19zdHJpbmdpbmZvKGN0eC0+b3V0LCB0dXBkZXNjLAogCQkJCQkJCQkJY2hh bmdlLT5kYXRhLnRwLm9sZHR1cGxlLAotCQkJCQkJCQkJdHJ1ZSk7CisJCQkJCQkJCQl0cnVlLCBk YXRhLT5pbmNsdWRlX2dlbmVyYXRlZF9jb2x1bW5zKTsKIAkJCWJyZWFrOwogCQlkZWZhdWx0Ogog CQkJQXNzZXJ0KGZhbHNlKTsKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9wcm90b2NvbC5zZ21s IGIvZG9jL3NyYy9zZ21sL3Byb3RvY29sLnNnbWwKaW5kZXggMWIyN2QwYTU0Ny4uN2E1NjM3YzVm MyAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3Byb3RvY29sLnNnbWwKKysrIGIvZG9jL3NyYy9z Z21sL3Byb3RvY29sLnNnbWwKQEAgLTMzMDYsNiArMzMwNiwxOCBAQCBwc3FsICJkYm5hbWU9cG9z dGdyZXMgcmVwbGljYXRpb249ZGF0YWJhc2UiIC1jICJJREVOVElGWV9TWVNURU07IgogICAgICA8 L2xpc3RpdGVtPgogICAgIDwvdmFybGlzdGVudHJ5PgogCisgICAgPHZhcmxpc3RlbnRyeT4KKyAg ICAgPHRlcm0+aW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1uczwvdGVybT4KKyAgICAgIDxsaXN0aXRl bT4KKyAgICAgICA8cGFyYT4KKyAgICAgICAgQm9vbGVhbiBvcHRpb24gdG8gZW5hYmxlIGdlbmVy YXRlZCBjb2x1bW5zLiBUaGlzIG9wdGlvbiBjb250cm9scworICAgICAgICB3aGV0aGVyIGdlbmVy YXRlZCBjb2x1bW5zIHNob3VsZCBiZSBpbmNsdWRlZCBpbiB0aGUgc3RyaW5nCisgICAgICAgIHJl cHJlc2VudGF0aW9uIG9mIHR1cGxlcyBkdXJpbmcgbG9naWNhbCBkZWNvZGluZyBpbiBQb3N0Z3Jl U1FMLgorICAgICAgICBUaGUgZGVmYXVsdCBpcyBmYWxzZS4KKyAgICAgICA8L3BhcmE+CisgICAg ICA8L2xpc3RpdGVtPgorICAgIDwvdmFybGlzdGVudHJ5PgorCiAgICAgPHZhcmxpc3RlbnRyeT4K ICAgICAgPHRlcm0+CiAgICAgICBvcmlnaW4KZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9yZWYv Y3JlYXRlX3N1YnNjcmlwdGlvbi5zZ21sIGIvZG9jL3NyYy9zZ21sL3JlZi9jcmVhdGVfc3Vic2Ny aXB0aW9uLnNnbWwKaW5kZXggNzQwYjdkOTQyMS4uZWUyN2E1ODczYSAxMDA2NDQKLS0tIGEvZG9j L3NyYy9zZ21sL3JlZi9jcmVhdGVfc3Vic2NyaXB0aW9uLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21s L3JlZi9jcmVhdGVfc3Vic2NyaXB0aW9uLnNnbWwKQEAgLTQyOCw2ICs0MjgsMjYgQEAgQ1JFQVRF IFNVQlNDUklQVElPTiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+c3Vic2NyaXB0aW9u X25hbWU8L3JlcGxhY2VhYmwKICAgICAgICAgIDwvcGFyYT4KICAgICAgICAgPC9saXN0aXRlbT4K ICAgICAgICA8L3Zhcmxpc3RlbnRyeT4KKworICAgICAgIDx2YXJsaXN0ZW50cnkgaWQ9InNxbC1j cmVhdGVzdWJzY3JpcHRpb24tcGFyYW1zLXdpdGgtaW5jbHVkZS1nZW5lcmF0ZWQtY29sdW1ucyI+ CisgICAgICAgIDx0ZXJtPjxsaXRlcmFsPmluY2x1ZGVfZ2VuZXJhdGVkX2NvbHVtbnM8L2xpdGVy YWw+ICg8dHlwZT5ib29sZWFuPC90eXBlPik8L3Rlcm0+CisgICAgICAgIDxsaXN0aXRlbT4KKyAg ICAgICAgIDxwYXJhPgorICAgICAgICAgIFNwZWNpZmllcyB3aGV0aGVyIHRoZSBnZW5lcmF0ZWQg Y29sdW1ucyBwcmVzZW50IGluIHRoZSB0YWJsZXMKKyAgICAgICAgICBhc3NvY2lhdGVkIHdpdGgg dGhlIHN1YnNjcmlwdGlvbiBzaG91bGQgYmUgcmVwbGljYXRlZC4KKyAgICAgICAgICBUaGUgZGVm YXVsdCBpcyA8bGl0ZXJhbD5mYWxzZTwvbGl0ZXJhbD4uCisgICAgICAgICA8L3BhcmE+CisgICAg ICAgICA8cGFyYT4KKyAgICAgICAgICBJZiB0aGUgc3Vic2NyaWJlci1zaWRlIGNvbHVtbiBpcyBh bHNvIGEgZ2VuZXJhdGVkIGNvbHVtbiB0aGVuIHRoaXMgb3B0aW9uCisgICAgICAgICAgaGFzIG5v IGVmZmVjdDsgdGhlIHN1YnNjcmliZXIgY29sdW1uIHdpbGwgYmUgZmlsbGVkIGFzIG5vcm1hbCB3 aXRoIHRoZQorICAgICAgICAgIHN1YnNjcmliZXItc2lkZSBjb21wdXRlZCBvciBkZWZhdWx0IGRh dGEuCisgICAgICAgICA8L3BhcmE+CisgICAgICAgICA8cGFyYT4KKyAgICAgICAgIFRoaXMgcGFy YW1ldGVyIGNhbiBvbmx5IGJlIHNldCA8bGl0ZXJhbD50cnVlPC9saXRlcmFsPiBpZiA8bGl0ZXJh bD5jb3B5X2RhdGE8L2xpdGVyYWw+IGlzCisgICAgICAgICBzZXQgdG8gPGxpdGVyYWw+ZmFsc2U8 L2xpdGVyYWw+LgorICAgICAgICAgPC9wYXJhPgorICAgICAgICA8L2xpc3RpdGVtPgorICAgICAg IDwvdmFybGlzdGVudHJ5PgogICAgICAgPC92YXJpYWJsZWxpc3Q+PC9wYXJhPgogCiAgICAgPC9s aXN0aXRlbT4KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvcGdfcHVibGljYXRpb24u YyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvcGdfcHVibGljYXRpb24uYwppbmRleCAwNjAyMzk4YTU0 Li5mNjExMTQ4NDcyIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jYXRhbG9nL3BnX3B1YmxpY2F0 aW9uLmMKKysrIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9wZ19wdWJsaWNhdGlvbi5jCkBAIC01MDYs NyArNTA2LDYgQEAgcHVibGljYXRpb25fdHJhbnNsYXRlX2NvbHVtbnMoUmVsYXRpb24gdGFyZ2V0 cmVsLCBMaXN0ICpjb2x1bW5zLAogCUJpdG1hcHNldCAgKnNldCA9IE5VTEw7CiAJTGlzdENlbGwg ICAqbGM7CiAJaW50CQkJbiA9IDA7Ci0JVHVwbGVEZXNjCXR1cGRlc2MgPSBSZWxhdGlvbkdldERl c2NyKHRhcmdldHJlbCk7CiAKIAkvKiBCYWlsIG91dCB3aGVuIG5vIGNvbHVtbiBsaXN0IGRlZmlu ZWQuICovCiAJaWYgKCFjb2x1bW5zKQpAQCAtNTM0LDEyICs1MzMsNiBAQCBwdWJsaWNhdGlvbl90 cmFuc2xhdGVfY29sdW1ucyhSZWxhdGlvbiB0YXJnZXRyZWwsIExpc3QgKmNvbHVtbnMsCiAJCQkJ CWVycm1zZygiY2Fubm90IHVzZSBzeXN0ZW0gY29sdW1uIFwiJXNcIiBpbiBwdWJsaWNhdGlvbiBj b2x1bW4gbGlzdCIsCiAJCQkJCQkgICBjb2xuYW1lKSk7CiAKLQkJaWYgKFR1cGxlRGVzY0F0dHIo dHVwZGVzYywgYXR0bnVtIC0gMSktPmF0dGdlbmVyYXRlZCkKLQkJCWVyZXBvcnQoRVJST1IsCi0J CQkJCWVycmNvZGUoRVJSQ09ERV9JTlZBTElEX0NPTFVNTl9SRUZFUkVOQ0UpLAotCQkJCQllcnJt c2coImNhbm5vdCB1c2UgZ2VuZXJhdGVkIGNvbHVtbiBcIiVzXCIgaW4gcHVibGljYXRpb24gY29s dW1uIGxpc3QiLAotCQkJCQkJICAgY29sbmFtZSkpOwotCiAJCWlmIChibXNfaXNfbWVtYmVyKGF0 dG51bSwgc2V0KSkKIAkJCWVyZXBvcnQoRVJST1IsCiAJCQkJCWVycmNvZGUoRVJSQ09ERV9EVVBM SUNBVEVfT0JKRUNUKSwKQEAgLTEyMzIsNyArMTIyNSw3IEBAIHBnX2dldF9wdWJsaWNhdGlvbl90 YWJsZXMoUEdfRlVOQ1RJT05fQVJHUykKIAkJCXsKIAkJCQlGb3JtX3BnX2F0dHJpYnV0ZSBhdHQg PSBUdXBsZURlc2NBdHRyKGRlc2MsIGkpOwogCi0JCQkJaWYgKGF0dC0+YXR0aXNkcm9wcGVkIHx8 IGF0dC0+YXR0Z2VuZXJhdGVkKQorCQkJCWlmIChhdHQtPmF0dGlzZHJvcHBlZCkKIAkJCQkJY29u dGludWU7CiAKIAkJCQlhdHRudW1zW25hdHRudW1zKytdID0gYXR0LT5hdHRudW07CmRpZmYgLS1n aXQgYS9zcmMvYmFja2VuZC9jYXRhbG9nL3BnX3N1YnNjcmlwdGlvbi5jIGIvc3JjL2JhY2tlbmQv Y2F0YWxvZy9wZ19zdWJzY3JpcHRpb24uYwppbmRleCA5ZWZjOTE1OWYyLi4zODAzY2U1NDU5IDEw MDY0NAotLS0gYS9zcmMvYmFja2VuZC9jYXRhbG9nL3BnX3N1YnNjcmlwdGlvbi5jCisrKyBiL3Ny Yy9iYWNrZW5kL2NhdGFsb2cvcGdfc3Vic2NyaXB0aW9uLmMKQEAgLTcyLDYgKzcyLDcgQEAgR2V0 U3Vic2NyaXB0aW9uKE9pZCBzdWJpZCwgYm9vbCBtaXNzaW5nX29rKQogCXN1Yi0+cGFzc3dvcmRy ZXF1aXJlZCA9IHN1YmZvcm0tPnN1YnBhc3N3b3JkcmVxdWlyZWQ7CiAJc3ViLT5ydW5hc293bmVy ID0gc3ViZm9ybS0+c3VicnVuYXNvd25lcjsKIAlzdWItPmZhaWxvdmVyID0gc3ViZm9ybS0+c3Vi ZmFpbG92ZXI7CisJc3ViLT5pbmNsdWRlZ2VuY29scyA9IHN1YmZvcm0tPnN1YmluY2x1ZGVnZW5j b2xzOwogCiAJLyogR2V0IGNvbm5pbmZvICovCiAJZGF0dW0gPSBTeXNDYWNoZUdldEF0dHJOb3RO dWxsKFNVQlNDUklQVElPTk9JRCwKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3N1 YnNjcmlwdGlvbmNtZHMuYyBiL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3N1YnNjcmlwdGlvbmNtZHMu YwppbmRleCBlNDA3NDI4ZGJjLi41OTEyNDA2MGQzIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9j b21tYW5kcy9zdWJzY3JpcHRpb25jbWRzLmMKKysrIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvc3Vi c2NyaXB0aW9uY21kcy5jCkBAIC03Miw2ICs3Miw3IEBACiAjZGVmaW5lIFNVQk9QVF9GQUlMT1ZF UgkJCQkweDAwMDAyMDAwCiAjZGVmaW5lIFNVQk9QVF9MU04JCQkJCTB4MDAwMDQwMDAKICNkZWZp bmUgU1VCT1BUX09SSUdJTgkJCQkweDAwMDA4MDAwCisjZGVmaW5lIFNVQk9QVF9JTkNMVURFX0dF TkVSQVRFRF9DT0xVTU5TCQkweDAwMDEwMDAwCiAKIC8qIGNoZWNrIGlmIHRoZSAndmFsJyBoYXMg J2JpdHMnIHNldCAqLwogI2RlZmluZSBJc1NldCh2YWwsIGJpdHMpICAoKCh2YWwpICYgKGJpdHMp KSA9PSAoYml0cykpCkBAIC05OSw2ICsxMDAsNyBAQCB0eXBlZGVmIHN0cnVjdCBTdWJPcHRzCiAJ Ym9vbAkJZmFpbG92ZXI7CiAJY2hhcgkgICAqb3JpZ2luOwogCVhMb2dSZWNQdHIJbHNuOworCWJv b2wJCWluY2x1ZGVfZ2VuZXJhdGVkX2NvbHVtbnM7CiB9IFN1Yk9wdHM7CiAKIHN0YXRpYyBMaXN0 ICpmZXRjaF90YWJsZV9saXN0KFdhbFJlY2VpdmVyQ29ubiAqd3Jjb25uLCBMaXN0ICpwdWJsaWNh dGlvbnMpOwpAQCAtMTYxLDYgKzE2Myw4IEBAIHBhcnNlX3N1YnNjcmlwdGlvbl9vcHRpb25zKFBh cnNlU3RhdGUgKnBzdGF0ZSwgTGlzdCAqc3RtdF9vcHRpb25zLAogCQlvcHRzLT5mYWlsb3ZlciA9 IGZhbHNlOwogCWlmIChJc1NldChzdXBwb3J0ZWRfb3B0cywgU1VCT1BUX09SSUdJTikpCiAJCW9w dHMtPm9yaWdpbiA9IHBzdHJkdXAoTE9HSUNBTFJFUF9PUklHSU5fQU5ZKTsKKwlpZiAoSXNTZXQo c3VwcG9ydGVkX29wdHMsIFNVQk9QVF9JTkNMVURFX0dFTkVSQVRFRF9DT0xVTU5TKSkKKwkJb3B0 cy0+aW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1ucyA9IGZhbHNlOwogCiAJLyogUGFyc2Ugb3B0aW9u cyAqLwogCWZvcmVhY2gobGMsIHN0bXRfb3B0aW9ucykKQEAgLTM2Niw2ICszNzAsMTUgQEAgcGFy c2Vfc3Vic2NyaXB0aW9uX29wdGlvbnMoUGFyc2VTdGF0ZSAqcHN0YXRlLCBMaXN0ICpzdG10X29w dGlvbnMsCiAJCQlvcHRzLT5zcGVjaWZpZWRfb3B0cyB8PSBTVUJPUFRfTFNOOwogCQkJb3B0cy0+ bHNuID0gbHNuOwogCQl9CisJCWVsc2UgaWYgKElzU2V0KHN1cHBvcnRlZF9vcHRzLCBTVUJPUFRf SU5DTFVERV9HRU5FUkFURURfQ09MVU1OUykgJiYKKwkJCQkgc3RyY21wKGRlZmVsLT5kZWZuYW1l LCAiaW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1ucyIpID09IDApCisJCXsKKwkJCWlmIChJc1NldChv cHRzLT5zcGVjaWZpZWRfb3B0cywgU1VCT1BUX0lOQ0xVREVfR0VORVJBVEVEX0NPTFVNTlMpKQor CQkJCWVycm9yQ29uZmxpY3RpbmdEZWZFbGVtKGRlZmVsLCBwc3RhdGUpOworCisJCQlvcHRzLT5z cGVjaWZpZWRfb3B0cyB8PSBTVUJPUFRfSU5DTFVERV9HRU5FUkFURURfQ09MVU1OUzsKKwkJCW9w dHMtPmluY2x1ZGVfZ2VuZXJhdGVkX2NvbHVtbnMgPSBkZWZHZXRCb29sZWFuKGRlZmVsKTsKKwkJ fQogCQllbHNlCiAJCQllcmVwb3J0KEVSUk9SLAogCQkJCQkoZXJyY29kZShFUlJDT0RFX1NZTlRB WF9FUlJPUiksCkBAIC00NDYsNiArNDU5LDIwIEBAIHBhcnNlX3N1YnNjcmlwdGlvbl9vcHRpb25z KFBhcnNlU3RhdGUgKnBzdGF0ZSwgTGlzdCAqc3RtdF9vcHRpb25zLAogCQkJCQkJCQkic2xvdF9u YW1lID0gTk9ORSIsICJjcmVhdGVfc2xvdCA9IGZhbHNlIikpKTsKIAkJfQogCX0KKworCS8qCisJ ICogRG8gYWRkaXRpb25hbCBjaGVja2luZyBmb3IgZGlzYWxsb3dlZCBjb21iaW5hdGlvbiB3aGVu IGNvcHlfZGF0YSBhbmQKKwkgKiBpbmNsdWRlX2dlbmVyYXRlZF9jb2x1bW5zIGFyZSB0cnVlLiBD T1BZIG9mIGdlbmVyYXRlZCBjb2x1bW5zIGlzIG5vdCBzdXBwb3J0ZWQKKwkgKiB5ZXQuCisJICov CisJaWYgKG9wdHMtPmNvcHlfZGF0YSAmJiBvcHRzLT5pbmNsdWRlX2dlbmVyYXRlZF9jb2x1bW5z KQorCXsKKwkJZXJlcG9ydChFUlJPUiwKKwkJCQllcnJjb2RlKEVSUkNPREVfU1lOVEFYX0VSUk9S KSwKKwkJLyotIHRyYW5zbGF0b3I6IGJvdGggJXMgYXJlIHN0cmluZ3Mgb2YgdGhlIGZvcm0gIm9w dGlvbiA9IHZhbHVlIiAqLworCQkJCQllcnJtc2coIiVzIGFuZCAlcyBhcmUgbXV0dWFsbHkgZXhj bHVzaXZlIG9wdGlvbnMiLAorCQkJCQkJImNvcHlfZGF0YSA9IHRydWUiLCAiaW5jbHVkZV9nZW5l cmF0ZWRfY29sdW1ucyA9IHRydWUiKSk7CisJfQogfQogCiAvKgpAQCAtNjAzLDcgKzYzMCw4IEBA IENyZWF0ZVN1YnNjcmlwdGlvbihQYXJzZVN0YXRlICpwc3RhdGUsIENyZWF0ZVN1YnNjcmlwdGlv blN0bXQgKnN0bXQsCiAJCQkJCSAgU1VCT1BUX1NZTkNIUk9OT1VTX0NPTU1JVCB8IFNVQk9QVF9C SU5BUlkgfAogCQkJCQkgIFNVQk9QVF9TVFJFQU1JTkcgfCBTVUJPUFRfVFdPUEhBU0VfQ09NTUlU IHwKIAkJCQkJICBTVUJPUFRfRElTQUJMRV9PTl9FUlIgfCBTVUJPUFRfUEFTU1dPUkRfUkVRVUlS RUQgfAotCQkJCQkgIFNVQk9QVF9SVU5fQVNfT1dORVIgfCBTVUJPUFRfRkFJTE9WRVIgfCBTVUJP UFRfT1JJR0lOKTsKKwkJCQkJICBTVUJPUFRfUlVOX0FTX09XTkVSIHwgU1VCT1BUX0ZBSUxPVkVS IHwgU1VCT1BUX09SSUdJTiB8CisJCQkJCSAgU1VCT1BUX0lOQ0xVREVfR0VORVJBVEVEX0NPTFVN TlMpOwogCXBhcnNlX3N1YnNjcmlwdGlvbl9vcHRpb25zKHBzdGF0ZSwgc3RtdC0+b3B0aW9ucywg c3VwcG9ydGVkX29wdHMsICZvcHRzKTsKIAogCS8qCkBAIC03MjMsNiArNzUxLDcgQEAgQ3JlYXRl U3Vic2NyaXB0aW9uKFBhcnNlU3RhdGUgKnBzdGF0ZSwgQ3JlYXRlU3Vic2NyaXB0aW9uU3RtdCAq c3RtdCwKIAkJcHVibGljYXRpb25MaXN0VG9BcnJheShwdWJsaWNhdGlvbnMpOwogCXZhbHVlc1tB bnVtX3BnX3N1YnNjcmlwdGlvbl9zdWJvcmlnaW4gLSAxXSA9CiAJCUNTdHJpbmdHZXRUZXh0RGF0 dW0ob3B0cy5vcmlnaW4pOworCXZhbHVlc1tBbnVtX3BnX3N1YnNjcmlwdGlvbl9zdWJpbmNsdWRl Z2VuY29scyAtIDFdID0gQm9vbEdldERhdHVtKG9wdHMuaW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1u cyk7CiAKIAl0dXAgPSBoZWFwX2Zvcm1fdHVwbGUoUmVsYXRpb25HZXREZXNjcihyZWwpLCB2YWx1 ZXMsIG51bGxzKTsKIApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vbGlicHF3 YWxyZWNlaXZlci9saWJwcXdhbHJlY2VpdmVyLmMgYi9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi9s aWJwcXdhbHJlY2VpdmVyL2xpYnBxd2FscmVjZWl2ZXIuYwppbmRleCAwMmYxMmYyOTIxLi43NWU3 Njk1MzUzIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi9saWJwcXdhbHJlY2Vp dmVyL2xpYnBxd2FscmVjZWl2ZXIuYworKysgYi9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi9saWJw cXdhbHJlY2VpdmVyL2xpYnBxd2FscmVjZWl2ZXIuYwpAQCAtNTk4LDYgKzU5OCwxMCBAQCBsaWJw cXJjdl9zdGFydHN0cmVhbWluZyhXYWxSZWNlaXZlckNvbm4gKmNvbm4sCiAJCQlhcHBlbmRTdHJp bmdJbmZvKCZjbWQsICIsIG9yaWdpbiAnJXMnIiwKIAkJCQkJCQkgb3B0aW9ucy0+cHJvdG8ubG9n aWNhbC5vcmlnaW4pOwogCisJCWlmIChvcHRpb25zLT5wcm90by5sb2dpY2FsLmluY2x1ZGVfZ2Vu ZXJhdGVkX2NvbHVtbnMgJiYKKwkJCVBRc2VydmVyVmVyc2lvbihjb25uLT5zdHJlYW1Db25uKSA+ PSAxNzAwMDApCisJCQlhcHBlbmRTdHJpbmdJbmZvU3RyaW5nKCZjbWQsICIsIGluY2x1ZGVfZ2Vu ZXJhdGVkX2NvbHVtbnMgJ3RydWUnIik7CisKIAkJcHVibmFtZXMgPSBvcHRpb25zLT5wcm90by5s b2dpY2FsLnB1YmxpY2F0aW9uX25hbWVzOwogCQlwdWJuYW1lc19zdHIgPSBzdHJpbmdsaXN0X3Rv X2lkZW50aWZpZXJzdHIoY29ubi0+c3RyZWFtQ29ubiwgcHVibmFtZXMpOwogCQlpZiAoIXB1Ym5h bWVzX3N0cikKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwvcHJv dG8uYyBiL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwvcHJvdG8uYwppbmRleCA5NWMw OWM5NTE2Li43NDA1ZWIzZGViIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi9s b2dpY2FsL3Byb3RvLmMKKysrIGIvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vbG9naWNhbC9wcm90 by5jCkBAIC0zMCwxMCArMzAsMTIgQEAKICNkZWZpbmUgVFJVTkNBVEVfUkVTVEFSVF9TRVFTCSgx PDwxKQogCiBzdGF0aWMgdm9pZCBsb2dpY2FscmVwX3dyaXRlX2F0dHJzKFN0cmluZ0luZm8gb3V0 LCBSZWxhdGlvbiByZWwsCi0JCQkJCQkJCSAgIEJpdG1hcHNldCAqY29sdW1ucyk7CisJCQkJCQkJ CSAgIEJpdG1hcHNldCAqY29sdW1ucywKKwkJCQkJCQkJICAgYm9vbCBpbmNsdWRlX2dlbmVyYXRl ZF9jb2x1bW5zKTsKIHN0YXRpYyB2b2lkIGxvZ2ljYWxyZXBfd3JpdGVfdHVwbGUoU3RyaW5nSW5m byBvdXQsIFJlbGF0aW9uIHJlbCwKIAkJCQkJCQkJICAgVHVwbGVUYWJsZVNsb3QgKnNsb3QsCi0J CQkJCQkJCSAgIGJvb2wgYmluYXJ5LCBCaXRtYXBzZXQgKmNvbHVtbnMpOworCQkJCQkJCQkgICBi b29sIGJpbmFyeSwgQml0bWFwc2V0ICpjb2x1bW5zLAorCQkJCQkJCQkgICBib29sIGluY2x1ZGVf Z2VuZXJhdGVkX2NvbHVtbnMpOwogc3RhdGljIHZvaWQgbG9naWNhbHJlcF9yZWFkX2F0dHJzKFN0 cmluZ0luZm8gaW4sIExvZ2ljYWxSZXBSZWxhdGlvbiAqcmVsKTsKIHN0YXRpYyB2b2lkIGxvZ2lj YWxyZXBfcmVhZF90dXBsZShTdHJpbmdJbmZvIGluLCBMb2dpY2FsUmVwVHVwbGVEYXRhICp0dXBs ZSk7CiAKQEAgLTQxMiw3ICs0MTQsOCBAQCBsb2dpY2FscmVwX3JlYWRfb3JpZ2luKFN0cmluZ0lu Zm8gaW4sIFhMb2dSZWNQdHIgKm9yaWdpbl9sc24pCiAgKi8KIHZvaWQKIGxvZ2ljYWxyZXBfd3Jp dGVfaW5zZXJ0KFN0cmluZ0luZm8gb3V0LCBUcmFuc2FjdGlvbklkIHhpZCwgUmVsYXRpb24gcmVs LAotCQkJCQkJVHVwbGVUYWJsZVNsb3QgKm5ld3Nsb3QsIGJvb2wgYmluYXJ5LCBCaXRtYXBzZXQg KmNvbHVtbnMpCisJCQkJCQlUdXBsZVRhYmxlU2xvdCAqbmV3c2xvdCwgYm9vbCBiaW5hcnksIEJp dG1hcHNldCAqY29sdW1ucywKKwkJCQkJCWJvb2wgaW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1ucykK IHsKIAlwcV9zZW5kYnl0ZShvdXQsIExPR0lDQUxfUkVQX01TR19JTlNFUlQpOwogCkBAIC00MjQs NyArNDI3LDggQEAgbG9naWNhbHJlcF93cml0ZV9pbnNlcnQoU3RyaW5nSW5mbyBvdXQsIFRyYW5z YWN0aW9uSWQgeGlkLCBSZWxhdGlvbiByZWwsCiAJcHFfc2VuZGludDMyKG91dCwgUmVsYXRpb25H ZXRSZWxpZChyZWwpKTsKIAogCXBxX3NlbmRieXRlKG91dCwgJ04nKTsJCS8qIG5ldyB0dXBsZSBm b2xsb3dzICovCi0JbG9naWNhbHJlcF93cml0ZV90dXBsZShvdXQsIHJlbCwgbmV3c2xvdCwgYmlu YXJ5LCBjb2x1bW5zKTsKKwlsb2dpY2FscmVwX3dyaXRlX3R1cGxlKG91dCwgcmVsLCBuZXdzbG90 LCBiaW5hcnksIGNvbHVtbnMsCisJCQkJCQkgICBpbmNsdWRlX2dlbmVyYXRlZF9jb2x1bW5zKTsK IH0KIAogLyoKQEAgLTQ1Nyw3ICs0NjEsOCBAQCBsb2dpY2FscmVwX3JlYWRfaW5zZXJ0KFN0cmlu Z0luZm8gaW4sIExvZ2ljYWxSZXBUdXBsZURhdGEgKm5ld3R1cCkKIHZvaWQKIGxvZ2ljYWxyZXBf d3JpdGVfdXBkYXRlKFN0cmluZ0luZm8gb3V0LCBUcmFuc2FjdGlvbklkIHhpZCwgUmVsYXRpb24g cmVsLAogCQkJCQkJVHVwbGVUYWJsZVNsb3QgKm9sZHNsb3QsIFR1cGxlVGFibGVTbG90ICpuZXdz bG90LAotCQkJCQkJYm9vbCBiaW5hcnksIEJpdG1hcHNldCAqY29sdW1ucykKKwkJCQkJCWJvb2wg YmluYXJ5LCBCaXRtYXBzZXQgKmNvbHVtbnMsCisJCQkJCQlib29sIGluY2x1ZGVfZ2VuZXJhdGVk X2NvbHVtbnMpCiB7CiAJcHFfc2VuZGJ5dGUob3V0LCBMT0dJQ0FMX1JFUF9NU0dfVVBEQVRFKTsK IApAQCAtNDc4LDExICs0ODMsMTMgQEAgbG9naWNhbHJlcF93cml0ZV91cGRhdGUoU3RyaW5nSW5m byBvdXQsIFRyYW5zYWN0aW9uSWQgeGlkLCBSZWxhdGlvbiByZWwsCiAJCQlwcV9zZW5kYnl0ZShv dXQsICdPJyk7CS8qIG9sZCB0dXBsZSBmb2xsb3dzICovCiAJCWVsc2UKIAkJCXBxX3NlbmRieXRl KG91dCwgJ0snKTsJLyogb2xkIGtleSBmb2xsb3dzICovCi0JCWxvZ2ljYWxyZXBfd3JpdGVfdHVw bGUob3V0LCByZWwsIG9sZHNsb3QsIGJpbmFyeSwgY29sdW1ucyk7CisJCWxvZ2ljYWxyZXBfd3Jp dGVfdHVwbGUob3V0LCByZWwsIG9sZHNsb3QsIGJpbmFyeSwgY29sdW1ucywKKwkJCQkJCQkgICBp bmNsdWRlX2dlbmVyYXRlZF9jb2x1bW5zKTsKIAl9CiAKIAlwcV9zZW5kYnl0ZShvdXQsICdOJyk7 CQkvKiBuZXcgdHVwbGUgZm9sbG93cyAqLwotCWxvZ2ljYWxyZXBfd3JpdGVfdHVwbGUob3V0LCBy ZWwsIG5ld3Nsb3QsIGJpbmFyeSwgY29sdW1ucyk7CisJbG9naWNhbHJlcF93cml0ZV90dXBsZShv dXQsIHJlbCwgbmV3c2xvdCwgYmluYXJ5LCBjb2x1bW5zLAorCQkJCQkJICAgaW5jbHVkZV9nZW5l cmF0ZWRfY29sdW1ucyk7CiB9CiAKIC8qCkBAIC01MzIsNyArNTM5LDcgQEAgbG9naWNhbHJlcF9y ZWFkX3VwZGF0ZShTdHJpbmdJbmZvIGluLCBib29sICpoYXNfb2xkdHVwbGUsCiB2b2lkCiBsb2dp Y2FscmVwX3dyaXRlX2RlbGV0ZShTdHJpbmdJbmZvIG91dCwgVHJhbnNhY3Rpb25JZCB4aWQsIFJl bGF0aW9uIHJlbCwKIAkJCQkJCVR1cGxlVGFibGVTbG90ICpvbGRzbG90LCBib29sIGJpbmFyeSwK LQkJCQkJCUJpdG1hcHNldCAqY29sdW1ucykKKwkJCQkJCUJpdG1hcHNldCAqY29sdW1ucywgYm9v bCBpbmNsdWRlX2dlbmVyYXRlZF9jb2x1bW5zKQogewogCUFzc2VydChyZWwtPnJkX3JlbC0+cmVs cmVwbGlkZW50ID09IFJFUExJQ0FfSURFTlRJVFlfREVGQVVMVCB8fAogCQkgICByZWwtPnJkX3Jl bC0+cmVscmVwbGlkZW50ID09IFJFUExJQ0FfSURFTlRJVFlfRlVMTCB8fApAQCAtNTUyLDcgKzU1 OSw4IEBAIGxvZ2ljYWxyZXBfd3JpdGVfZGVsZXRlKFN0cmluZ0luZm8gb3V0LCBUcmFuc2FjdGlv bklkIHhpZCwgUmVsYXRpb24gcmVsLAogCWVsc2UKIAkJcHFfc2VuZGJ5dGUob3V0LCAnSycpOwkv KiBvbGQga2V5IGZvbGxvd3MgKi8KIAotCWxvZ2ljYWxyZXBfd3JpdGVfdHVwbGUob3V0LCByZWws IG9sZHNsb3QsIGJpbmFyeSwgY29sdW1ucyk7CisJbG9naWNhbHJlcF93cml0ZV90dXBsZShvdXQs IHJlbCwgb2xkc2xvdCwgYmluYXJ5LCBjb2x1bW5zLAorCQkJCQkJICAgaW5jbHVkZV9nZW5lcmF0 ZWRfY29sdW1ucyk7CiB9CiAKIC8qCkBAIC02NjgsNyArNjc2LDcgQEAgbG9naWNhbHJlcF93cml0 ZV9tZXNzYWdlKFN0cmluZ0luZm8gb3V0LCBUcmFuc2FjdGlvbklkIHhpZCwgWExvZ1JlY1B0ciBs c24sCiAgKi8KIHZvaWQKIGxvZ2ljYWxyZXBfd3JpdGVfcmVsKFN0cmluZ0luZm8gb3V0LCBUcmFu c2FjdGlvbklkIHhpZCwgUmVsYXRpb24gcmVsLAotCQkJCQkgQml0bWFwc2V0ICpjb2x1bW5zKQor CQkJCQkgQml0bWFwc2V0ICpjb2x1bW5zLCBib29sIGluY2x1ZGVfZ2VuZXJhdGVkX2NvbHVtbnMp CiB7CiAJY2hhcgkgICAqcmVsbmFtZTsKIApAQCAtNjkwLDcgKzY5OCw3IEBAIGxvZ2ljYWxyZXBf d3JpdGVfcmVsKFN0cmluZ0luZm8gb3V0LCBUcmFuc2FjdGlvbklkIHhpZCwgUmVsYXRpb24gcmVs LAogCXBxX3NlbmRieXRlKG91dCwgcmVsLT5yZF9yZWwtPnJlbHJlcGxpZGVudCk7CiAKIAkvKiBz ZW5kIHRoZSBhdHRyaWJ1dGUgaW5mbyAqLwotCWxvZ2ljYWxyZXBfd3JpdGVfYXR0cnMob3V0LCBy ZWwsIGNvbHVtbnMpOworCWxvZ2ljYWxyZXBfd3JpdGVfYXR0cnMob3V0LCByZWwsIGNvbHVtbnMs IGluY2x1ZGVfZ2VuZXJhdGVkX2NvbHVtbnMpOwogfQogCiAvKgpAQCAtNzY3LDcgKzc3NSw4IEBA IGxvZ2ljYWxyZXBfcmVhZF90eXAoU3RyaW5nSW5mbyBpbiwgTG9naWNhbFJlcFR5cCAqbHR5cCkK ICAqLwogc3RhdGljIHZvaWQKIGxvZ2ljYWxyZXBfd3JpdGVfdHVwbGUoU3RyaW5nSW5mbyBvdXQs IFJlbGF0aW9uIHJlbCwgVHVwbGVUYWJsZVNsb3QgKnNsb3QsCi0JCQkJCSAgIGJvb2wgYmluYXJ5 LCBCaXRtYXBzZXQgKmNvbHVtbnMpCisJCQkJCSAgIGJvb2wgYmluYXJ5LCBCaXRtYXBzZXQgKmNv bHVtbnMsCisJCQkJCSAgIGJvb2wgaW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1ucykKIHsKIAlUdXBs ZURlc2MJZGVzYzsKIAlEYXR1bQkgICAqdmFsdWVzOwpAQCAtNzgxLDcgKzc5MCwxMCBAQCBsb2dp Y2FscmVwX3dyaXRlX3R1cGxlKFN0cmluZ0luZm8gb3V0LCBSZWxhdGlvbiByZWwsIFR1cGxlVGFi bGVTbG90ICpzbG90LAogCXsKIAkJRm9ybV9wZ19hdHRyaWJ1dGUgYXR0ID0gVHVwbGVEZXNjQXR0 cihkZXNjLCBpKTsKIAotCQlpZiAoYXR0LT5hdHRpc2Ryb3BwZWQgfHwgYXR0LT5hdHRnZW5lcmF0 ZWQpCisJCWlmIChhdHQtPmF0dGlzZHJvcHBlZCkKKwkJCWNvbnRpbnVlOworCisJCWlmIChhdHQt PmF0dGdlbmVyYXRlZCAmJiAhaW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1ucykKIAkJCWNvbnRpbnVl OwogCiAJCWlmICghY29sdW1uX2luX2NvbHVtbl9saXN0KGF0dC0+YXR0bnVtLCBjb2x1bW5zKSkK QEAgLTgwMiw3ICs4MTQsMTAgQEAgbG9naWNhbHJlcF93cml0ZV90dXBsZShTdHJpbmdJbmZvIG91 dCwgUmVsYXRpb24gcmVsLCBUdXBsZVRhYmxlU2xvdCAqc2xvdCwKIAkJRm9ybV9wZ190eXBlIHR5 cGNsYXNzOwogCQlGb3JtX3BnX2F0dHJpYnV0ZSBhdHQgPSBUdXBsZURlc2NBdHRyKGRlc2MsIGkp OwogCi0JCWlmIChhdHQtPmF0dGlzZHJvcHBlZCB8fCBhdHQtPmF0dGdlbmVyYXRlZCkKKwkJaWYg KGF0dC0+YXR0aXNkcm9wcGVkKQorCQkJY29udGludWU7CisKKwkJaWYgKGF0dC0+YXR0Z2VuZXJh dGVkICYmICFpbmNsdWRlX2dlbmVyYXRlZF9jb2x1bW5zKQogCQkJY29udGludWU7CiAKIAkJaWYg KCFjb2x1bW5faW5fY29sdW1uX2xpc3QoYXR0LT5hdHRudW0sIGNvbHVtbnMpKQpAQCAtOTIzLDcg KzkzOCw4IEBAIGxvZ2ljYWxyZXBfcmVhZF90dXBsZShTdHJpbmdJbmZvIGluLCBMb2dpY2FsUmVw VHVwbGVEYXRhICp0dXBsZSkKICAqIFdyaXRlIHJlbGF0aW9uIGF0dHJpYnV0ZSBtZXRhZGF0YSB0 byB0aGUgc3RyZWFtLgogICovCiBzdGF0aWMgdm9pZAotbG9naWNhbHJlcF93cml0ZV9hdHRycyhT dHJpbmdJbmZvIG91dCwgUmVsYXRpb24gcmVsLCBCaXRtYXBzZXQgKmNvbHVtbnMpCitsb2dpY2Fs cmVwX3dyaXRlX2F0dHJzKFN0cmluZ0luZm8gb3V0LCBSZWxhdGlvbiByZWwsIEJpdG1hcHNldCAq Y29sdW1ucywKKwkJCQkJICAgYm9vbCBpbmNsdWRlX2dlbmVyYXRlZF9jb2x1bW5zKQogewogCVR1 cGxlRGVzYwlkZXNjOwogCWludAkJCWk7CkBAIC05MzgsNyArOTU0LDEwIEBAIGxvZ2ljYWxyZXBf d3JpdGVfYXR0cnMoU3RyaW5nSW5mbyBvdXQsIFJlbGF0aW9uIHJlbCwgQml0bWFwc2V0ICpjb2x1 bW5zKQogCXsKIAkJRm9ybV9wZ19hdHRyaWJ1dGUgYXR0ID0gVHVwbGVEZXNjQXR0cihkZXNjLCBp KTsKIAotCQlpZiAoYXR0LT5hdHRpc2Ryb3BwZWQgfHwgYXR0LT5hdHRnZW5lcmF0ZWQpCisJCWlm IChhdHQtPmF0dGlzZHJvcHBlZCkKKwkJCWNvbnRpbnVlOworCisJCWlmIChhdHQtPmF0dGdlbmVy YXRlZCAmJiAhaW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1ucykKIAkJCWNvbnRpbnVlOwogCiAJCWlm ICghY29sdW1uX2luX2NvbHVtbl9saXN0KGF0dC0+YXR0bnVtLCBjb2x1bW5zKSkKQEAgLTk1OSw3 ICs5NzgsMTAgQEAgbG9naWNhbHJlcF93cml0ZV9hdHRycyhTdHJpbmdJbmZvIG91dCwgUmVsYXRp b24gcmVsLCBCaXRtYXBzZXQgKmNvbHVtbnMpCiAJCUZvcm1fcGdfYXR0cmlidXRlIGF0dCA9IFR1 cGxlRGVzY0F0dHIoZGVzYywgaSk7CiAJCXVpbnQ4CQlmbGFncyA9IDA7CiAKLQkJaWYgKGF0dC0+ YXR0aXNkcm9wcGVkIHx8IGF0dC0+YXR0Z2VuZXJhdGVkKQorCQlpZiAoYXR0LT5hdHRpc2Ryb3Bw ZWQpCisJCQljb250aW51ZTsKKworCQlpZiAoYXR0LT5hdHRnZW5lcmF0ZWQgJiYgIWluY2x1ZGVf Z2VuZXJhdGVkX2NvbHVtbnMpCiAJCQljb250aW51ZTsKIAogCQlpZiAoIWNvbHVtbl9pbl9jb2x1 bW5fbGlzdChhdHQtPmF0dG51bSwgY29sdW1ucykpCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9y ZXBsaWNhdGlvbi9sb2dpY2FsL3JlbGF0aW9uLmMgYi9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi9s b2dpY2FsL3JlbGF0aW9uLmMKaW5kZXggZjEzOWU3YjAxZS4uNWRlMTUzMTU2NyAxMDA2NDQKLS0t IGEvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vbG9naWNhbC9yZWxhdGlvbi5jCisrKyBiL3NyYy9i YWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwvcmVsYXRpb24uYwpAQCAtNDIxLDcgKzQyMSw3IEBA IGxvZ2ljYWxyZXBfcmVsX29wZW4oTG9naWNhbFJlcFJlbElkIHJlbW90ZWlkLCBMT0NLTU9ERSBs b2NrbW9kZSkKIAkJCWludAkJCWF0dG51bTsKIAkJCUZvcm1fcGdfYXR0cmlidXRlIGF0dHIgPSBU dXBsZURlc2NBdHRyKGRlc2MsIGkpOwogCi0JCQlpZiAoYXR0ci0+YXR0aXNkcm9wcGVkIHx8IGF0 dHItPmF0dGdlbmVyYXRlZCkKKwkJCWlmIChhdHRyLT5hdHRpc2Ryb3BwZWQpCiAJCQl7CiAJCQkJ ZW50cnktPmF0dHJtYXAtPmF0dG51bXNbaV0gPSAtMTsKIAkJCQljb250aW51ZTsKZGlmZiAtLWdp dCBhL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwvd29ya2VyLmMgYi9zcmMvYmFja2Vu ZC9yZXBsaWNhdGlvbi9sb2dpY2FsL3dvcmtlci5jCmluZGV4IGI1YTgwZmUzZTguLjY2MzIwMjgz MmQgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwvd29ya2VyLmMK KysrIGIvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vbG9naWNhbC93b3JrZXIuYwpAQCAtNDM3OSw2 ICs0Mzc5LDcgQEAgc2V0X3N0cmVhbV9vcHRpb25zKFdhbFJjdlN0cmVhbU9wdGlvbnMgKm9wdGlv bnMsCiAKIAlvcHRpb25zLT5wcm90by5sb2dpY2FsLnR3b3BoYXNlID0gZmFsc2U7CiAJb3B0aW9u cy0+cHJvdG8ubG9naWNhbC5vcmlnaW4gPSBwc3RyZHVwKE15U3Vic2NyaXB0aW9uLT5vcmlnaW4p OworCW9wdGlvbnMtPnByb3RvLmxvZ2ljYWwuaW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1ucyA9IE15 U3Vic2NyaXB0aW9uLT5pbmNsdWRlZ2VuY29sczsKIH0KIAogLyoKZGlmZiAtLWdpdCBhL3NyYy9i YWNrZW5kL3JlcGxpY2F0aW9uL3Bnb3V0cHV0L3Bnb3V0cHV0LmMgYi9zcmMvYmFja2VuZC9yZXBs aWNhdGlvbi9wZ291dHB1dC9wZ291dHB1dC5jCmluZGV4IGQyYjM1Y2ZiOTYuLjI2Nzk2ZDRmOWUg MTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL3Bnb3V0cHV0L3Bnb3V0cHV0LmMK KysrIGIvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vcGdvdXRwdXQvcGdvdXRwdXQuYwpAQCAtODYs NyArODYsOCBAQCBzdGF0aWMgdm9pZCBwdWJsaWNhdGlvbl9pbnZhbGlkYXRpb25fY2IoRGF0dW0g YXJnLCBpbnQgY2FjaGVpZCwKIAkJCQkJCQkJCQl1aW50MzIgaGFzaHZhbHVlKTsKIHN0YXRpYyB2 b2lkIHNlbmRfcmVsYXRpb25fYW5kX2F0dHJzKFJlbGF0aW9uIHJlbGF0aW9uLCBUcmFuc2FjdGlv bklkIHhpZCwKIAkJCQkJCQkJCUxvZ2ljYWxEZWNvZGluZ0NvbnRleHQgKmN0eCwKLQkJCQkJCQkJ CUJpdG1hcHNldCAqY29sdW1ucyk7CisJCQkJCQkJCQlCaXRtYXBzZXQgKmNvbHVtbnMsCisJCQkJ CQkJCQlib29sIGluY2x1ZGVfZ2VuZXJhdGVkX2NvbHVtbnMpOwogc3RhdGljIHZvaWQgc2VuZF9y ZXBsX29yaWdpbihMb2dpY2FsRGVjb2RpbmdDb250ZXh0ICpjdHgsCiAJCQkJCQkJIFJlcE9yaWdp bklkIG9yaWdpbl9pZCwgWExvZ1JlY1B0ciBvcmlnaW5fbHNuLAogCQkJCQkJCSBib29sIHNlbmRf b3JpZ2luKTsKQEAgLTI4MywxMSArMjg0LDEzIEBAIHBhcnNlX291dHB1dF9wYXJhbWV0ZXJzKExp c3QgKm9wdGlvbnMsIFBHT3V0cHV0RGF0YSAqZGF0YSkKIAlib29sCQlzdHJlYW1pbmdfZ2l2ZW4g PSBmYWxzZTsKIAlib29sCQl0d29fcGhhc2Vfb3B0aW9uX2dpdmVuID0gZmFsc2U7CiAJYm9vbAkJ b3JpZ2luX29wdGlvbl9naXZlbiA9IGZhbHNlOworCWJvb2wJCWluY2x1ZGVfZ2VuZXJhdGVkX2Nv bHVtbnNfb3B0aW9uX2dpdmVuID0gZmFsc2U7CiAKIAlkYXRhLT5iaW5hcnkgPSBmYWxzZTsKIAlk YXRhLT5zdHJlYW1pbmcgPSBMT0dJQ0FMUkVQX1NUUkVBTV9PRkY7CiAJZGF0YS0+bWVzc2FnZXMg PSBmYWxzZTsKIAlkYXRhLT50d29fcGhhc2UgPSBmYWxzZTsKKwlkYXRhLT5pbmNsdWRlX2dlbmVy YXRlZF9jb2x1bW5zID0gZmFsc2U7CiAKIAlmb3JlYWNoKGxjLCBvcHRpb25zKQogCXsKQEAgLTM5 Niw2ICszOTksMTYgQEAgcGFyc2Vfb3V0cHV0X3BhcmFtZXRlcnMoTGlzdCAqb3B0aW9ucywgUEdP dXRwdXREYXRhICpkYXRhKQogCQkJCQkJZXJyY29kZShFUlJDT0RFX0lOVkFMSURfUEFSQU1FVEVS X1ZBTFVFKSwKIAkJCQkJCWVycm1zZygidW5yZWNvZ25pemVkIG9yaWdpbiB2YWx1ZTogXCIlc1wi Iiwgb3JpZ2luKSk7CiAJCX0KKwkJZWxzZSBpZiAoc3RyY21wKGRlZmVsLT5kZWZuYW1lLCAiaW5j bHVkZV9nZW5lcmF0ZWRfY29sdW1ucyIpID09IDApCisJCXsKKwkJCWlmIChpbmNsdWRlX2dlbmVy YXRlZF9jb2x1bW5zX29wdGlvbl9naXZlbikKKwkJCQllcmVwb3J0KEVSUk9SLAorCQkJCQkJZXJy Y29kZShFUlJDT0RFX1NZTlRBWF9FUlJPUiksCisJCQkJCQkgZXJybXNnKCJjb25mbGljdGluZyBv ciByZWR1bmRhbnQgb3B0aW9ucyIpKTsKKwkJCWluY2x1ZGVfZ2VuZXJhdGVkX2NvbHVtbnNfb3B0 aW9uX2dpdmVuID0gdHJ1ZTsKKworCQkJZGF0YS0+aW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1ucyA9 IGRlZkdldEJvb2xlYW4oZGVmZWwpOworCQl9CiAJCWVsc2UKIAkJCWVsb2coRVJST1IsICJ1bnJl Y29nbml6ZWQgcGdvdXRwdXQgb3B0aW9uOiAlcyIsIGRlZmVsLT5kZWZuYW1lKTsKIAl9CkBAIC03 MzEsMTEgKzc0NCwxMyBAQCBtYXliZV9zZW5kX3NjaGVtYShMb2dpY2FsRGVjb2RpbmdDb250ZXh0 ICpjdHgsCiAJewogCQlSZWxhdGlvbglhbmNlc3RvciA9IFJlbGF0aW9uSWRHZXRSZWxhdGlvbihy ZWxlbnRyeS0+cHVibGlzaF9hc19yZWxpZCk7CiAKLQkJc2VuZF9yZWxhdGlvbl9hbmRfYXR0cnMo YW5jZXN0b3IsIHhpZCwgY3R4LCByZWxlbnRyeS0+Y29sdW1ucyk7CisJCXNlbmRfcmVsYXRpb25f YW5kX2F0dHJzKGFuY2VzdG9yLCB4aWQsIGN0eCwgcmVsZW50cnktPmNvbHVtbnMsCisJCQkJCQkJ CWRhdGEtPmluY2x1ZGVfZ2VuZXJhdGVkX2NvbHVtbnMpOwogCQlSZWxhdGlvbkNsb3NlKGFuY2Vz dG9yKTsKIAl9CiAKLQlzZW5kX3JlbGF0aW9uX2FuZF9hdHRycyhyZWxhdGlvbiwgeGlkLCBjdHgs IHJlbGVudHJ5LT5jb2x1bW5zKTsKKwlzZW5kX3JlbGF0aW9uX2FuZF9hdHRycyhyZWxhdGlvbiwg eGlkLCBjdHgsIHJlbGVudHJ5LT5jb2x1bW5zLAorCQkJCQkJCWRhdGEtPmluY2x1ZGVfZ2VuZXJh dGVkX2NvbHVtbnMpOwogCiAJaWYgKGRhdGEtPmluX3N0cmVhbWluZykKIAkJc2V0X3NjaGVtYV9z ZW50X2luX3N0cmVhbWVkX3R4bihyZWxlbnRyeSwgdG9weGlkKTsKQEAgLTc0OSw3ICs3NjQsNyBA QCBtYXliZV9zZW5kX3NjaGVtYShMb2dpY2FsRGVjb2RpbmdDb250ZXh0ICpjdHgsCiBzdGF0aWMg dm9pZAogc2VuZF9yZWxhdGlvbl9hbmRfYXR0cnMoUmVsYXRpb24gcmVsYXRpb24sIFRyYW5zYWN0 aW9uSWQgeGlkLAogCQkJCQkJTG9naWNhbERlY29kaW5nQ29udGV4dCAqY3R4LAotCQkJCQkJQml0 bWFwc2V0ICpjb2x1bW5zKQorCQkJCQkJQml0bWFwc2V0ICpjb2x1bW5zLCBib29sIGluY2x1ZGVf Z2VuZXJhdGVkX2NvbHVtbnMpCiB7CiAJVHVwbGVEZXNjCWRlc2MgPSBSZWxhdGlvbkdldERlc2Ny KHJlbGF0aW9uKTsKIAlpbnQJCQlpOwpAQCAtNzY2LDcgKzc4MSwxMCBAQCBzZW5kX3JlbGF0aW9u X2FuZF9hdHRycyhSZWxhdGlvbiByZWxhdGlvbiwgVHJhbnNhY3Rpb25JZCB4aWQsCiAJewogCQlG b3JtX3BnX2F0dHJpYnV0ZSBhdHQgPSBUdXBsZURlc2NBdHRyKGRlc2MsIGkpOwogCi0JCWlmIChh dHQtPmF0dGlzZHJvcHBlZCB8fCBhdHQtPmF0dGdlbmVyYXRlZCkKKwkJaWYgKGF0dC0+YXR0aXNk cm9wcGVkKQorCQkJY29udGludWU7CisKKwkJaWYgKGF0dC0+YXR0Z2VuZXJhdGVkICYmICFpbmNs dWRlX2dlbmVyYXRlZF9jb2x1bW5zKQogCQkJY29udGludWU7CiAKIAkJaWYgKGF0dC0+YXR0dHlw aWQgPCBGaXJzdEdlbmJraU9iamVjdElkKQpAQCAtNzgyLDcgKzgwMCw3IEBAIHNlbmRfcmVsYXRp b25fYW5kX2F0dHJzKFJlbGF0aW9uIHJlbGF0aW9uLCBUcmFuc2FjdGlvbklkIHhpZCwKIAl9CiAK IAlPdXRwdXRQbHVnaW5QcmVwYXJlV3JpdGUoY3R4LCBmYWxzZSk7Ci0JbG9naWNhbHJlcF93cml0 ZV9yZWwoY3R4LT5vdXQsIHhpZCwgcmVsYXRpb24sIGNvbHVtbnMpOworCWxvZ2ljYWxyZXBfd3Jp dGVfcmVsKGN0eC0+b3V0LCB4aWQsIHJlbGF0aW9uLCBjb2x1bW5zLCBpbmNsdWRlX2dlbmVyYXRl ZF9jb2x1bW5zKTsKIAlPdXRwdXRQbHVnaW5Xcml0ZShjdHgsIGZhbHNlKTsKIH0KIApAQCAtMTA4 NSw3ICsxMTAzLDcgQEAgcGdvdXRwdXRfY29sdW1uX2xpc3RfaW5pdChQR091dHB1dERhdGEgKmRh dGEsIExpc3QgKnB1YmxpY2F0aW9ucywKIAkJCQkJewogCQkJCQkJRm9ybV9wZ19hdHRyaWJ1dGUg YXR0ID0gVHVwbGVEZXNjQXR0cihkZXNjLCBpKTsKIAotCQkJCQkJaWYgKGF0dC0+YXR0aXNkcm9w cGVkIHx8IGF0dC0+YXR0Z2VuZXJhdGVkKQorCQkJCQkJaWYgKGF0dC0+YXR0aXNkcm9wcGVkKQog CQkJCQkJCWNvbnRpbnVlOwogCiAJCQkJCQlubGl2ZWF0dHMrKzsKQEAgLTE0MTMsNyArMTQzMSw2 IEBAIHBnb3V0cHV0X2NoYW5nZShMb2dpY2FsRGVjb2RpbmdDb250ZXh0ICpjdHgsIFJlb3JkZXJC dWZmZXJUWE4gKnR4biwKIAlSZW9yZGVyQnVmZmVyQ2hhbmdlVHlwZSBhY3Rpb24gPSBjaGFuZ2Ut PmFjdGlvbjsKIAlUdXBsZVRhYmxlU2xvdCAqb2xkX3Nsb3QgPSBOVUxMOwogCVR1cGxlVGFibGVT bG90ICpuZXdfc2xvdCA9IE5VTEw7Ci0KIAlpZiAoIWlzX3B1Ymxpc2hhYmxlX3JlbGF0aW9uKHJl bGF0aW9uKSkKIAkJcmV0dXJuOwogCkBAIC0xNTMxLDE1ICsxNTQ4LDE4IEBAIHBnb3V0cHV0X2No YW5nZShMb2dpY2FsRGVjb2RpbmdDb250ZXh0ICpjdHgsIFJlb3JkZXJCdWZmZXJUWE4gKnR4biwK IAl7CiAJCWNhc2UgUkVPUkRFUl9CVUZGRVJfQ0hBTkdFX0lOU0VSVDoKIAkJCWxvZ2ljYWxyZXBf d3JpdGVfaW5zZXJ0KGN0eC0+b3V0LCB4aWQsIHRhcmdldHJlbCwgbmV3X3Nsb3QsCi0JCQkJCQkJ CQlkYXRhLT5iaW5hcnksIHJlbGVudHJ5LT5jb2x1bW5zKTsKKwkJCQkJCQkJCWRhdGEtPmJpbmFy eSwgcmVsZW50cnktPmNvbHVtbnMsCisJCQkJCQkJCQlkYXRhLT5pbmNsdWRlX2dlbmVyYXRlZF9j b2x1bW5zKTsKIAkJCWJyZWFrOwogCQljYXNlIFJFT1JERVJfQlVGRkVSX0NIQU5HRV9VUERBVEU6 CiAJCQlsb2dpY2FscmVwX3dyaXRlX3VwZGF0ZShjdHgtPm91dCwgeGlkLCB0YXJnZXRyZWwsIG9s ZF9zbG90LAotCQkJCQkJCQkJbmV3X3Nsb3QsIGRhdGEtPmJpbmFyeSwgcmVsZW50cnktPmNvbHVt bnMpOworCQkJCQkJCQkJbmV3X3Nsb3QsIGRhdGEtPmJpbmFyeSwgcmVsZW50cnktPmNvbHVtbnMs CisJCQkJCQkJCQlkYXRhLT5pbmNsdWRlX2dlbmVyYXRlZF9jb2x1bW5zKTsKIAkJCWJyZWFrOwog CQljYXNlIFJFT1JERVJfQlVGRkVSX0NIQU5HRV9ERUxFVEU6CiAJCQlsb2dpY2FscmVwX3dyaXRl X2RlbGV0ZShjdHgtPm91dCwgeGlkLCB0YXJnZXRyZWwsIG9sZF9zbG90LAotCQkJCQkJCQkJZGF0 YS0+YmluYXJ5LCByZWxlbnRyeS0+Y29sdW1ucyk7CisJCQkJCQkJCQlkYXRhLT5iaW5hcnksIHJl bGVudHJ5LT5jb2x1bW5zLAorCQkJCQkJCQkJZGF0YS0+aW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1u cyk7CiAJCQlicmVhazsKIAkJZGVmYXVsdDoKIAkJCUFzc2VydChmYWxzZSk7CmRpZmYgLS1naXQg YS9zcmMvYmluL3BnX2R1bXAvcGdfZHVtcC5jIGIvc3JjL2Jpbi9wZ19kdW1wL3BnX2R1bXAuYwpp bmRleCBlMzI0MDcwODI4Li4xZmIxOWY1YzllIDEwMDY0NAotLS0gYS9zcmMvYmluL3BnX2R1bXAv cGdfZHVtcC5jCisrKyBiL3NyYy9iaW4vcGdfZHVtcC9wZ19kdW1wLmMKQEAgLTQ3MzksNiArNDcz OSw3IEBAIGdldFN1YnNjcmlwdGlvbnMoQXJjaGl2ZSAqZm91dCkKIAlpbnQJCQlpX3N1Ym9yaWdp bnJlbW90ZWxzbjsKIAlpbnQJCQlpX3N1YmVuYWJsZWQ7CiAJaW50CQkJaV9zdWJmYWlsb3ZlcjsK KwlpbnQgICAgICAgICAJCWlfc3ViaW5jbHVkZWdlbmNvbHM7CiAJaW50CQkJaSwKIAkJCQludHVw czsKIApAQCAtNDc2OSw3ICs0NzcwLDYgQEAgZ2V0U3Vic2NyaXB0aW9ucyhBcmNoaXZlICpmb3V0 KQogCQkJCQkJICIgcy5zdWJvd25lcixcbiIKIAkJCQkJCSAiIHMuc3ViY29ubmluZm8sIHMuc3Vi c2xvdG5hbWUsIHMuc3Vic3luY2NvbW1pdCxcbiIKIAkJCQkJCSAiIHMuc3VicHVibGljYXRpb25z LFxuIik7Ci0KIAlpZiAoZm91dC0+cmVtb3RlVmVyc2lvbiA+PSAxNDAwMDApCiAJCWFwcGVuZFBR RXhwQnVmZmVyU3RyKHF1ZXJ5LCAiIHMuc3ViYmluYXJ5LFxuIik7CiAJZWxzZQpAQCAtNDgwNCwx OCArNDgwNCwyMyBAQCBnZXRTdWJzY3JpcHRpb25zKEFyY2hpdmUgKmZvdXQpCiAKIAlpZiAoZG9w dC0+YmluYXJ5X3VwZ3JhZGUgJiYgZm91dC0+cmVtb3RlVmVyc2lvbiA+PSAxNzAwMDApCiAJCWFw cGVuZFBRRXhwQnVmZmVyU3RyKHF1ZXJ5LCAiIG8ucmVtb3RlX2xzbiBBUyBzdWJvcmlnaW5yZW1v dGVsc24sXG4iCi0JCQkJCQkJICIgcy5zdWJlbmFibGVkLFxuIik7CisJCQkJCQkJIiBzLnN1YmVu YWJsZWQsXG4iKTsKIAllbHNlCiAJCWFwcGVuZFBRRXhwQnVmZmVyU3RyKHF1ZXJ5LCAiIE5VTEwg QVMgc3Vib3JpZ2lucmVtb3RlbHNuLFxuIgogCQkJCQkJCSAiIGZhbHNlIEFTIHN1YmVuYWJsZWQs XG4iKTsKIAogCWlmIChmb3V0LT5yZW1vdGVWZXJzaW9uID49IDE3MDAwMCkKIAkJYXBwZW5kUFFF eHBCdWZmZXJTdHIocXVlcnksCi0JCQkJCQkJICIgcy5zdWJmYWlsb3ZlclxuIik7CisJCQkJCQkJ ICIgcy5zdWJmYWlsb3ZlcixcbiIpOwogCWVsc2UKIAkJYXBwZW5kUFFFeHBCdWZmZXIocXVlcnks Ci0JCQkJCQkgICIgZmFsc2UgQVMgc3ViZmFpbG92ZXJcbiIpOwotCisJCQkJCQkiIGZhbHNlIEFT IHN1YmZhaWxvdmVyLFxuIik7CisJaWYgKGZvdXQtPnJlbW90ZVZlcnNpb24gPj0gMTcwMDAwKQor CQlhcHBlbmRQUUV4cEJ1ZmZlclN0cihxdWVyeSwKKwkJCQkJCSAiIHMuc3ViaW5jbHVkZWdlbmNv bHNcbiIpOworCWVsc2UKKwkJYXBwZW5kUFFFeHBCdWZmZXJTdHIocXVlcnksCisJCQkJCQkiIGZh bHNlIEFTIHN1YmluY2x1ZGVnZW5jb2xzLFxuIik7CiAJYXBwZW5kUFFFeHBCdWZmZXJTdHIocXVl cnksCiAJCQkJCQkgIkZST00gcGdfc3Vic2NyaXB0aW9uIHNcbiIpOwogCkBAIC00ODU0LDYgKzQ4 NTksNyBAQCBnZXRTdWJzY3JpcHRpb25zKEFyY2hpdmUgKmZvdXQpCiAJaV9zdWJvcmlnaW5yZW1v dGVsc24gPSBQUWZudW1iZXIocmVzLCAic3Vib3JpZ2lucmVtb3RlbHNuIik7CiAJaV9zdWJlbmFi bGVkID0gUFFmbnVtYmVyKHJlcywgInN1YmVuYWJsZWQiKTsKIAlpX3N1YmZhaWxvdmVyID0gUFFm bnVtYmVyKHJlcywgInN1YmZhaWxvdmVyIik7CisJaV9zdWJpbmNsdWRlZ2VuY29scyA9IFBRZm51 bWJlcihyZXMsICJzdWJpbmNsdWRlZ2VuY29scyIpOwogCiAJc3ViaW5mbyA9IHBnX21hbGxvYyhu dHVwcyAqIHNpemVvZihTdWJzY3JpcHRpb25JbmZvKSk7CiAKQEAgLTQ5MDAsNiArNDkwNiw4IEBA IGdldFN1YnNjcmlwdGlvbnMoQXJjaGl2ZSAqZm91dCkKIAkJCXBnX3N0cmR1cChQUWdldHZhbHVl KHJlcywgaSwgaV9zdWJlbmFibGVkKSk7CiAJCXN1YmluZm9baV0uc3ViZmFpbG92ZXIgPQogCQkJ cGdfc3RyZHVwKFBRZ2V0dmFsdWUocmVzLCBpLCBpX3N1YmZhaWxvdmVyKSk7CisJCXN1YmluZm9b aV0uc3ViaW5jbHVkZWdlbmNvbHMgPQorCQkJcGdfc3RyZHVwKFBRZ2V0dmFsdWUocmVzLCBpLCBp X3N1YmluY2x1ZGVnZW5jb2xzKSk7CiAKIAkJLyogRGVjaWRlIHdoZXRoZXIgd2Ugd2FudCB0byBk dW1wIGl0ICovCiAJCXNlbGVjdER1bXBhYmxlT2JqZWN0KCYoc3ViaW5mb1tpXS5kb2JqKSwgZm91 dCk7CkBAIC01MTAwLDcgKzUxMDgsNyBAQCBkdW1wU3Vic2NyaXB0aW9uKEFyY2hpdmUgKmZvdXQs IGNvbnN0IFN1YnNjcmlwdGlvbkluZm8gKnN1YmluZm8pCiAKIAkvKiBCdWlsZCBsaXN0IG9mIHF1 b3RlZCBwdWJsaWNhdGlvbnMgYW5kIGFwcGVuZCB0aGVtIHRvIHF1ZXJ5LiAqLwogCWlmICghcGFy c2VQR0FycmF5KHN1YmluZm8tPnN1YnB1YmxpY2F0aW9ucywgJnB1Ym5hbWVzLCAmbnB1Ym5hbWVz KSkKLQkJcGdfZmF0YWwoImNvdWxkIG5vdCBwYXJzZSAlcyBhcnJheSIsICJzdWJwdWJsaWNhdGlv bnMiKTsKKwkJCXBnX2ZhdGFsKCJjb3VsZCBub3QgcGFyc2UgJXMgYXJyYXkiLCAic3VicHVibGlj YXRpb25zIik7CiAKIAlwdWJsaWNhdGlvbnMgPSBjcmVhdGVQUUV4cEJ1ZmZlcigpOwogCWZvciAo aSA9IDA7IGkgPCBucHVibmFtZXM7IGkrKykKQEAgLTUxNDYsNiArNTE1NCw5IEBAIGR1bXBTdWJz Y3JpcHRpb24oQXJjaGl2ZSAqZm91dCwgY29uc3QgU3Vic2NyaXB0aW9uSW5mbyAqc3ViaW5mbykK IAlpZiAocGdfc3RyY2FzZWNtcChzdWJpbmZvLT5zdWJvcmlnaW4sIExPR0lDQUxSRVBfT1JJR0lO X0FOWSkgIT0gMCkKIAkJYXBwZW5kUFFFeHBCdWZmZXIocXVlcnksICIsIG9yaWdpbiA9ICVzIiwg c3ViaW5mby0+c3Vib3JpZ2luKTsKIAorCWlmIChzdHJjbXAoc3ViaW5mby0+c3ViaW5jbHVkZWdl bmNvbHMsICJ0IikgPT0gMCkKKwkJYXBwZW5kUFFFeHBCdWZmZXJTdHIocXVlcnksICIsIGluY2x1 ZGVfZ2VuZXJhdGVkX2NvbHVtbnMgPSB0cnVlIik7CisKIAlhcHBlbmRQUUV4cEJ1ZmZlclN0cihx dWVyeSwgIik7XG4iKTsKIAogCS8qCmRpZmYgLS1naXQgYS9zcmMvYmluL3BnX2R1bXAvcGdfZHVt cC5oIGIvc3JjL2Jpbi9wZ19kdW1wL3BnX2R1bXAuaAppbmRleCA4NjU4MjM4NjhmLi5hMmMzNWZl OTE5IDEwMDY0NAotLS0gYS9zcmMvYmluL3BnX2R1bXAvcGdfZHVtcC5oCisrKyBiL3NyYy9iaW4v cGdfZHVtcC9wZ19kdW1wLmgKQEAgLTY3MSw2ICs2NzEsOCBAQCB0eXBlZGVmIHN0cnVjdCBfU3Vi c2NyaXB0aW9uSW5mbwogCWNoYXIJICAgKnN1Ym9yaWdpbjsKIAljaGFyCSAgICpzdWJvcmlnaW5y ZW1vdGVsc247CiAJY2hhcgkgICAqc3ViZmFpbG92ZXI7CisJY2hhciAgICAgICAqc3ViaW5jbHVk ZWdlbmNvbHM7CisKIH0gU3Vic2NyaXB0aW9uSW5mbzsKIAogLyoKZGlmZiAtLWdpdCBhL3NyYy9i aW4vcHNxbC9kZXNjcmliZS5jIGIvc3JjL2Jpbi9wc3FsL2Rlc2NyaWJlLmMKaW5kZXggZjY3YmYw Yjg5Mi4uNDkxZmNiOTkxZiAxMDA2NDQKLS0tIGEvc3JjL2Jpbi9wc3FsL2Rlc2NyaWJlLmMKKysr IGIvc3JjL2Jpbi9wc3FsL2Rlc2NyaWJlLmMKQEAgLTY1MjksNyArNjUyOSw3IEBAIGRlc2NyaWJl U3Vic2NyaXB0aW9ucyhjb25zdCBjaGFyICpwYXR0ZXJuLCBib29sIHZlcmJvc2UpCiAJcHJpbnRR dWVyeU9wdCBteW9wdCA9IHBzZXQucG9wdDsKIAlzdGF0aWMgY29uc3QgYm9vbCB0cmFuc2xhdGVf Y29sdW1uc1tdID0ge2ZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlLAogCQlmYWxzZSwgZmFsc2Us IGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCBmYWxzZSwK LQlmYWxzZX07CisJZmFsc2UsIGZhbHNlfTsKIAogCWlmIChwc2V0LnN2ZXJzaW9uIDwgMTAwMDAw KQogCXsKQEAgLTY2MDQsNiArNjYwNCwxMiBAQCBkZXNjcmliZVN1YnNjcmlwdGlvbnMoY29uc3Qg Y2hhciAqcGF0dGVybiwgYm9vbCB2ZXJib3NlKQogCQkJCQkJICBnZXR0ZXh0X25vb3AoIlN5bmNo cm9ub3VzIGNvbW1pdCIpLAogCQkJCQkJICBnZXR0ZXh0X25vb3AoIkNvbm5pbmZvIikpOwogCisJ CQkJLyogaW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1ucyBpcyBvbmx5IHN1cHBvcnRlZCBpbiB2MTgg YW5kIGhpZ2hlciAqLworCQlpZiAocHNldC5zdmVyc2lvbiA+PSAxNzAwMDApCisJCQlhcHBlbmRQ UUV4cEJ1ZmZlcigmYnVmLAorCQkJCQkJCQkiLCBzdWJpbmNsdWRlZ2VuY29scyBBUyBcIiVzXCJc biIsCisJCQkJCQkJCWdldHRleHRfbm9vcCgiSW5jbHVkZSBnZW5lcmF0ZWQgY29sdW1ucyIpKTsK KwogCQkvKiBTa2lwIExTTiBpcyBvbmx5IHN1cHBvcnRlZCBpbiB2MTUgYW5kIGhpZ2hlciAqLwog CQlpZiAocHNldC5zdmVyc2lvbiA+PSAxNTAwMDApCiAJCQlhcHBlbmRQUUV4cEJ1ZmZlcigmYnVm LApkaWZmIC0tZ2l0IGEvc3JjL2Jpbi9wc3FsL3RhYi1jb21wbGV0ZS5jIGIvc3JjL2Jpbi9wc3Fs L3RhYi1jb21wbGV0ZS5jCmluZGV4IGQ0NTNlMjI0ZDkuLmFkZTZhMzRlZWIgMTAwNjQ0Ci0tLSBh L3NyYy9iaW4vcHNxbC90YWItY29tcGxldGUuYworKysgYi9zcmMvYmluL3BzcWwvdGFiLWNvbXBs ZXRlLmMKQEAgLTMzNjMsNyArMzM2Myw4IEBAIHBzcWxfY29tcGxldGlvbihjb25zdCBjaGFyICp0 ZXh0LCBpbnQgc3RhcnQsIGludCBlbmQpCiAJLyogQ29tcGxldGUgIkNSRUFURSBTVUJTQ1JJUFRJ T04gPG5hbWU+IC4uLiAgV0lUSCAoIDxvcHQ+IiAqLwogCWVsc2UgaWYgKEhlYWRNYXRjaGVzKCJD UkVBVEUiLCAiU1VCU0NSSVBUSU9OIikgJiYgVGFpbE1hdGNoZXMoIldJVEgiLCAiKCIpKQogCQlD T01QTEVURV9XSVRIKCJiaW5hcnkiLCAiY29ubmVjdCIsICJjb3B5X2RhdGEiLCAiY3JlYXRlX3Ns b3QiLAotCQkJCQkgICJkaXNhYmxlX29uX2Vycm9yIiwgImVuYWJsZWQiLCAiZmFpbG92ZXIiLCAi b3JpZ2luIiwKKwkJCQkJICAiZGlzYWJsZV9vbl9lcnJvciIsICJlbmFibGVkIiwgImZhaWxvdmVy IiwKKwkJCQkJICAiaW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1ucyIsICJvcmlnaW4iLAogCQkJCQkg ICJwYXNzd29yZF9yZXF1aXJlZCIsICJydW5fYXNfb3duZXIiLCAic2xvdF9uYW1lIiwKIAkJCQkJ ICAic3RyZWFtaW5nIiwgInN5bmNocm9ub3VzX2NvbW1pdCIsICJ0d29fcGhhc2UiKTsKIApkaWZm IC0tZ2l0IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19zdWJzY3JpcHRpb24uaCBiL3NyYy9pbmNs dWRlL2NhdGFsb2cvcGdfc3Vic2NyaXB0aW9uLmgKaW5kZXggMGFhMTRlYzRhMi4uZDliMjBmYjk1 YyAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19zdWJzY3JpcHRpb24uaAorKysg Yi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3N1YnNjcmlwdGlvbi5oCkBAIC05OCw2ICs5OCw4IEBA IENBVEFMT0cocGdfc3Vic2NyaXB0aW9uLDYxMDAsU3Vic2NyaXB0aW9uUmVsYXRpb25JZCkgQktJ X1NIQVJFRF9SRUxBVElPTiBCS0lfUk9XCiAJCQkJCQkJCSAqIHNsb3RzKSBpbiB0aGUgdXBzdHJl YW0gZGF0YWJhc2UgYXJlIGVuYWJsZWQKIAkJCQkJCQkJICogdG8gYmUgc3luY2hyb25pemVkIHRv IHRoZSBzdGFuZGJ5cy4gKi8KIAorCWJvb2wJCXN1YmluY2x1ZGVnZW5jb2xzOwkvKiBUcnVlIGlm IGdlbmVyYXRlZCBjb2x1bW5zIG11c3QgYmUgcHVibGlzaGVkICovCisKICNpZmRlZiBDQVRBTE9H X1ZBUkxFTgkJCS8qIHZhcmlhYmxlLWxlbmd0aCBmaWVsZHMgc3RhcnQgaGVyZSAqLwogCS8qIENv bm5lY3Rpb24gc3RyaW5nIHRvIHRoZSBwdWJsaXNoZXIgKi8KIAl0ZXh0CQlzdWJjb25uaW5mbyBC S0lfRk9SQ0VfTk9UX05VTEw7CkBAIC0xNTcsNiArMTU5LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgU3Vi c2NyaXB0aW9uCiAJTGlzdAkgICAqcHVibGljYXRpb25zOwkvKiBMaXN0IG9mIHB1YmxpY2F0aW9u IG5hbWVzIHRvIHN1YnNjcmliZSB0byAqLwogCWNoYXIJICAgKm9yaWdpbjsJCQkvKiBPbmx5IHB1 Ymxpc2ggZGF0YSBvcmlnaW5hdGluZyBmcm9tIHRoZQogCQkJCQkJCQkgKiBzcGVjaWZpZWQgb3Jp Z2luICovCisJYm9vbAkJaW5jbHVkZWdlbmNvbHM7CS8qIHB1Ymxpc2ggZ2VuZXJhdGVkIGNvbHVt biBkYXRhICovCiB9IFN1YnNjcmlwdGlvbjsKIAogLyogRGlzYWxsb3cgc3RyZWFtaW5nIGluLXBy b2dyZXNzIHRyYW5zYWN0aW9ucy4gKi8KZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL3JlcGxpY2F0 aW9uL2xvZ2ljYWxwcm90by5oIGIvc3JjL2luY2x1ZGUvcmVwbGljYXRpb24vbG9naWNhbHByb3Rv LmgKaW5kZXggYzQwOTYzOGEyZS4uMzRlYzQwYjA3ZSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUv cmVwbGljYXRpb24vbG9naWNhbHByb3RvLmgKKysrIGIvc3JjL2luY2x1ZGUvcmVwbGljYXRpb24v bG9naWNhbHByb3RvLmgKQEAgLTIyNSwxOCArMjI1LDIyIEBAIGV4dGVybiBjaGFyICpsb2dpY2Fs cmVwX3JlYWRfb3JpZ2luKFN0cmluZ0luZm8gaW4sIFhMb2dSZWNQdHIgKm9yaWdpbl9sc24pOwog ZXh0ZXJuIHZvaWQgbG9naWNhbHJlcF93cml0ZV9pbnNlcnQoU3RyaW5nSW5mbyBvdXQsIFRyYW5z YWN0aW9uSWQgeGlkLAogCQkJCQkJCQkJUmVsYXRpb24gcmVsLAogCQkJCQkJCQkJVHVwbGVUYWJs ZVNsb3QgKm5ld3Nsb3QsCi0JCQkJCQkJCQlib29sIGJpbmFyeSwgQml0bWFwc2V0ICpjb2x1bW5z KTsKKwkJCQkJCQkJCWJvb2wgYmluYXJ5LCBCaXRtYXBzZXQgKmNvbHVtbnMsCisJCQkJCQkJCQli b29sIGluY2x1ZGVfZ2VuZXJhdGVkX2NvbHVtbnMpOwogZXh0ZXJuIExvZ2ljYWxSZXBSZWxJZCBs b2dpY2FscmVwX3JlYWRfaW5zZXJ0KFN0cmluZ0luZm8gaW4sIExvZ2ljYWxSZXBUdXBsZURhdGEg Km5ld3R1cCk7CiBleHRlcm4gdm9pZCBsb2dpY2FscmVwX3dyaXRlX3VwZGF0ZShTdHJpbmdJbmZv IG91dCwgVHJhbnNhY3Rpb25JZCB4aWQsCiAJCQkJCQkJCQlSZWxhdGlvbiByZWwsCiAJCQkJCQkJ CQlUdXBsZVRhYmxlU2xvdCAqb2xkc2xvdCwKLQkJCQkJCQkJCVR1cGxlVGFibGVTbG90ICpuZXdz bG90LCBib29sIGJpbmFyeSwgQml0bWFwc2V0ICpjb2x1bW5zKTsKKwkJCQkJCQkJCVR1cGxlVGFi bGVTbG90ICpuZXdzbG90LCBib29sIGJpbmFyeSwKKwkJCQkJCQkJCUJpdG1hcHNldCAqY29sdW1u cywKKwkJCQkJCQkJCWJvb2wgaW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1ucyk7CiBleHRlcm4gTG9n aWNhbFJlcFJlbElkIGxvZ2ljYWxyZXBfcmVhZF91cGRhdGUoU3RyaW5nSW5mbyBpbiwKIAkJCQkJ CQkJCQkJICBib29sICpoYXNfb2xkdHVwbGUsIExvZ2ljYWxSZXBUdXBsZURhdGEgKm9sZHR1cCwK IAkJCQkJCQkJCQkJICBMb2dpY2FsUmVwVHVwbGVEYXRhICpuZXd0dXApOwogZXh0ZXJuIHZvaWQg bG9naWNhbHJlcF93cml0ZV9kZWxldGUoU3RyaW5nSW5mbyBvdXQsIFRyYW5zYWN0aW9uSWQgeGlk LAogCQkJCQkJCQkJUmVsYXRpb24gcmVsLCBUdXBsZVRhYmxlU2xvdCAqb2xkc2xvdCwKLQkJCQkJ CQkJCWJvb2wgYmluYXJ5LCBCaXRtYXBzZXQgKmNvbHVtbnMpOworCQkJCQkJCQkJYm9vbCBiaW5h cnksIEJpdG1hcHNldCAqY29sdW1ucywKKwkJCQkJCQkJCWJvb2wgaW5jbHVkZV9nZW5lcmF0ZWRf Y29sdW1ucyk7CiBleHRlcm4gTG9naWNhbFJlcFJlbElkIGxvZ2ljYWxyZXBfcmVhZF9kZWxldGUo U3RyaW5nSW5mbyBpbiwKIAkJCQkJCQkJCQkJICBMb2dpY2FsUmVwVHVwbGVEYXRhICpvbGR0dXAp OwogZXh0ZXJuIHZvaWQgbG9naWNhbHJlcF93cml0ZV90cnVuY2F0ZShTdHJpbmdJbmZvIG91dCwg VHJhbnNhY3Rpb25JZCB4aWQsCkBAIC0yNDcsNyArMjUxLDggQEAgZXh0ZXJuIExpc3QgKmxvZ2lj YWxyZXBfcmVhZF90cnVuY2F0ZShTdHJpbmdJbmZvIGluLAogZXh0ZXJuIHZvaWQgbG9naWNhbHJl cF93cml0ZV9tZXNzYWdlKFN0cmluZ0luZm8gb3V0LCBUcmFuc2FjdGlvbklkIHhpZCwgWExvZ1Jl Y1B0ciBsc24sCiAJCQkJCQkJCQkgYm9vbCB0cmFuc2FjdGlvbmFsLCBjb25zdCBjaGFyICpwcmVm aXgsIFNpemUgc3osIGNvbnN0IGNoYXIgKm1lc3NhZ2UpOwogZXh0ZXJuIHZvaWQgbG9naWNhbHJl cF93cml0ZV9yZWwoU3RyaW5nSW5mbyBvdXQsIFRyYW5zYWN0aW9uSWQgeGlkLAotCQkJCQkJCQkg UmVsYXRpb24gcmVsLCBCaXRtYXBzZXQgKmNvbHVtbnMpOworCQkJCQkJCQkgUmVsYXRpb24gcmVs LCBCaXRtYXBzZXQgKmNvbHVtbnMsCisJCQkJCQkJCSBib29sIGluY2x1ZGVfZ2VuZXJhdGVkX2Nv bHVtbnMpOwogZXh0ZXJuIExvZ2ljYWxSZXBSZWxhdGlvbiAqbG9naWNhbHJlcF9yZWFkX3JlbChT dHJpbmdJbmZvIGluKTsKIGV4dGVybiB2b2lkIGxvZ2ljYWxyZXBfd3JpdGVfdHlwKFN0cmluZ0lu Zm8gb3V0LCBUcmFuc2FjdGlvbklkIHhpZCwKIAkJCQkJCQkJIE9pZCB0eXBvaWQpOwpkaWZmIC0t Z2l0IGEvc3JjL2luY2x1ZGUvcmVwbGljYXRpb24vcGdvdXRwdXQuaCBiL3NyYy9pbmNsdWRlL3Jl cGxpY2F0aW9uL3Bnb3V0cHV0LmgKaW5kZXggODlmOTRlMTE0Ny4uMjI0Mzk0Y2I5MyAxMDA2NDQK LS0tIGEvc3JjL2luY2x1ZGUvcmVwbGljYXRpb24vcGdvdXRwdXQuaAorKysgYi9zcmMvaW5jbHVk ZS9yZXBsaWNhdGlvbi9wZ291dHB1dC5oCkBAIC0zMyw2ICszMyw3IEBAIHR5cGVkZWYgc3RydWN0 IFBHT3V0cHV0RGF0YQogCWJvb2wJCW1lc3NhZ2VzOwogCWJvb2wJCXR3b19waGFzZTsKIAlib29s CQlwdWJsaXNoX25vX29yaWdpbjsKKwlib29sCQlpbmNsdWRlX2dlbmVyYXRlZF9jb2x1bW5zOwog fSBQR091dHB1dERhdGE7CiAKICNlbmRpZgkJCQkJCQkvKiBQR09VVFBVVF9IICovCmRpZmYgLS1n aXQgYS9zcmMvaW5jbHVkZS9yZXBsaWNhdGlvbi93YWxyZWNlaXZlci5oIGIvc3JjL2luY2x1ZGUv cmVwbGljYXRpb24vd2FscmVjZWl2ZXIuaAppbmRleCAxMmY3MWZhOTliLi44ZjM1NTQ4NTZjIDEw MDY0NAotLS0gYS9zcmMvaW5jbHVkZS9yZXBsaWNhdGlvbi93YWxyZWNlaXZlci5oCisrKyBiL3Ny Yy9pbmNsdWRlL3JlcGxpY2F0aW9uL3dhbHJlY2VpdmVyLmgKQEAgLTE4Niw2ICsxODYsNyBAQCB0 eXBlZGVmIHN0cnVjdAogCQkJCQkJCQkJICogcHJlcGFyZSB0aW1lICovCiAJCQljaGFyCSAgICpv cmlnaW47IC8qIE9ubHkgcHVibGlzaCBkYXRhIG9yaWdpbmF0aW5nIGZyb20gdGhlCiAJCQkJCQkJ CSAqIHNwZWNpZmllZCBvcmlnaW4gKi8KKwkJCWJvb2wJCWluY2x1ZGVfZ2VuZXJhdGVkX2NvbHVt bnM7IC8qIHB1Ymxpc2ggZ2VuZXJhdGVkIGNvbHVtbnMgKi8KIAkJfQkJCWxvZ2ljYWw7CiAJfQkJ CXByb3RvOwogfSBXYWxSY3ZTdHJlYW1PcHRpb25zOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVn cmVzcy9leHBlY3RlZC9wdWJsaWNhdGlvbi5vdXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVk L3B1YmxpY2F0aW9uLm91dAppbmRleCAzMGI2MzcxMTM0Li5hYTE0NTAzMTVkIDEwMDY0NAotLS0g YS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3B1YmxpY2F0aW9uLm91dAorKysgYi9zcmMvdGVz dC9yZWdyZXNzL2V4cGVjdGVkL3B1YmxpY2F0aW9uLm91dApAQCAtNjg3LDkgKzY4Nyw5IEBAIFVQ REFURSB0ZXN0cHViX3RibDUgU0VUIGEgPSAxOwogRVJST1I6ICBjYW5ub3QgdXBkYXRlIHRhYmxl ICJ0ZXN0cHViX3RibDUiCiBERVRBSUw6ICBDb2x1bW4gbGlzdCB1c2VkIGJ5IHRoZSBwdWJsaWNh dGlvbiBkb2VzIG5vdCBjb3ZlciB0aGUgcmVwbGljYSBpZGVudGl0eS4KIEFMVEVSIFBVQkxJQ0FU SU9OIHRlc3RwdWJfZm9ydGFibGUgRFJPUCBUQUJMRSB0ZXN0cHViX3RibDU7Ci0tLSBlcnJvcjog Z2VuZXJhdGVkIGNvbHVtbiAiZCIgY2FuJ3QgYmUgaW4gbGlzdAorLS0gb2s6IGdlbmVyYXRlZCBj b2x1bW5zIGNhbiBiZSBpbiB0aGUgbGlzdCB0b28KIEFMVEVSIFBVQkxJQ0FUSU9OIHRlc3RwdWJf Zm9ydGFibGUgQUREIFRBQkxFIHRlc3RwdWJfdGJsNSAoYSwgZCk7Ci1FUlJPUjogIGNhbm5vdCB1 c2UgZ2VuZXJhdGVkIGNvbHVtbiAiZCIgaW4gcHVibGljYXRpb24gY29sdW1uIGxpc3QKK0FMVEVS IFBVQkxJQ0FUSU9OIHRlc3RwdWJfZm9ydGFibGUgRFJPUCBUQUJMRSB0ZXN0cHViX3RibDU7CiAt LSBlcnJvcjogc3lzdGVtIGF0dHJpYnV0ZXMgImN0aWQiIG5vdCBhbGxvd2VkIGluIGNvbHVtbiBs aXN0CiBBTFRFUiBQVUJMSUNBVElPTiB0ZXN0cHViX2ZvcnRhYmxlIEFERCBUQUJMRSB0ZXN0cHVi X3RibDUgKGEsIGN0aWQpOwogRVJST1I6ICBjYW5ub3QgdXNlIHN5c3RlbSBjb2x1bW4gImN0aWQi IGluIHB1YmxpY2F0aW9uIGNvbHVtbiBsaXN0CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNz L2V4cGVjdGVkL3N1YnNjcmlwdGlvbi5vdXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3N1 YnNjcmlwdGlvbi5vdXQKaW5kZXggMGYyYTI1Y2RjMS4uMDU5NzhjNzg5ZiAxMDA2NDQKLS0tIGEv c3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9zdWJzY3JpcHRpb24ub3V0CisrKyBiL3NyYy90ZXN0 L3JlZ3Jlc3MvZXhwZWN0ZWQvc3Vic2NyaXB0aW9uLm91dApAQCAtOTksNiArOTksMTIgQEAgQ1JF QVRFIFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWIyIENPTk5FQ1RJT04gJ2RibmFtZT1yZWdy ZXNzX2RvZXNub3RleGlzdCcgUFUKIEVSUk9SOiAgc3Vic2NyaXB0aW9uIHdpdGggc2xvdF9uYW1l ID0gTk9ORSBtdXN0IGFsc28gc2V0IGNyZWF0ZV9zbG90ID0gZmFsc2UKIENSRUFURSBTVUJTQ1JJ UFRJT04gcmVncmVzc190ZXN0c3ViMiBDT05ORUNUSU9OICdkYm5hbWU9cmVncmVzc19kb2Vzbm90 ZXhpc3QnIFBVQkxJQ0FUSU9OIHRlc3RwdWIgV0lUSCAoc2xvdF9uYW1lID0gTk9ORSwgY3JlYXRl X3Nsb3QgPSBmYWxzZSk7CiBFUlJPUjogIHN1YnNjcmlwdGlvbiB3aXRoIHNsb3RfbmFtZSA9IE5P TkUgbXVzdCBhbHNvIHNldCBlbmFibGVkID0gZmFsc2UKKy0tIGZhaWwgLSBjb3B5X2RhdGEgYW5k IGluY2x1ZGVfZ2VuZXJhdGVkX2NvbHVtbnMgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSBvcHRpb25z CitDUkVBVEUgU1VCU0NSSVBUSU9OIHN1YjIgQ09OTkVDVElPTiAnZGJuYW1lPXJlZ3Jlc3NfZG9l c25vdGV4aXN0JyBQVUJMSUNBVElPTiB0ZXN0cHViIFdJVEggKGluY2x1ZGVfZ2VuZXJhdGVkX2Nv bHVtbnMgPSB0cnVlKTsKK0VSUk9SOiAgY29weV9kYXRhID0gdHJ1ZSBhbmQgaW5jbHVkZV9nZW5l cmF0ZWRfY29sdW1ucyA9IHRydWUgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSBvcHRpb25zCistLSBm YWlsIC0gaW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1ucyBtdXN0IGJlIGJvb2xlYW4KK0NSRUFURSBT VUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViIENPTk5FQ1RJT04gJ2RibmFtZT1yZWdyZXNzX2Rv ZXNub3RleGlzdCcgUFVCTElDQVRJT04gdGVzdHB1YiBXSVRIIChjb25uZWN0ID0gZmFsc2UsIGlu Y2x1ZGVfZ2VuZXJhdGVkX2NvbHVtbnMgPSBmb28pOworRVJST1I6ICBpbmNsdWRlX2dlbmVyYXRl ZF9jb2x1bW5zIHJlcXVpcmVzIGEgQm9vbGVhbiB2YWx1ZQogLS0gb2sgLSB3aXRoIHNsb3RfbmFt ZSA9IE5PTkUKIENSRUFURSBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViMyBDT05ORUNUSU9O ICdkYm5hbWU9cmVncmVzc19kb2Vzbm90ZXhpc3QnIFBVQkxJQ0FUSU9OIHRlc3RwdWIgV0lUSCAo c2xvdF9uYW1lID0gTk9ORSwgY29ubmVjdCA9IGZhbHNlKTsKIFdBUk5JTkc6ICBzdWJzY3JpcHRp b24gd2FzIGNyZWF0ZWQsIGJ1dCBpcyBub3QgY29ubmVjdGVkCkBAIC0xMTYsMTggKzEyMiwxOCBA QCBDUkVBVEUgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YjQgQ09OTkVDVElPTiAnZGJuYW1l PXJlZ3Jlc3NfZG9lc25vdGV4aXN0JyBQVQogV0FSTklORzogIHN1YnNjcmlwdGlvbiB3YXMgY3Jl YXRlZCwgYnV0IGlzIG5vdCBjb25uZWN0ZWQKIEhJTlQ6ICBUbyBpbml0aWF0ZSByZXBsaWNhdGlv biwgeW91IG11c3QgbWFudWFsbHkgY3JlYXRlIHRoZSByZXBsaWNhdGlvbiBzbG90LCBlbmFibGUg dGhlIHN1YnNjcmlwdGlvbiwgYW5kIHJlZnJlc2ggdGhlIHN1YnNjcmlwdGlvbi4KIFxkUnMrIHJl Z3Jlc3NfdGVzdHN1YjQKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgTGlzdCBvZiBzdWJzY3JpcHRpb25zCi0gICAgICAgTmFtZSAgICAgICB8 ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBFbmFibGVkIHwgUHVibGljYXRpb24gfCBCaW5h cnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJsZSBvbiBlcnJvciB8IE9y aWdpbiB8IFBhc3N3b3JkIHJlcXVpcmVkIHwgUnVuIGFzIG93bmVyPyB8IEZhaWxvdmVyIHwgU3lu Y2hyb25vdXMgY29tbWl0IHwgICAgICAgICAgQ29ubmluZm8gICAgICAgICAgIHwgU2tpcCBMU04g Ci0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tCi0gcmVncmVzc190ZXN0c3ViNCB8IHJlZ3Jlc3Nfc3Vic2Ny aXB0aW9uX3VzZXIgfCBmICAgICAgIHwge3Rlc3RwdWJ9ICAgfCBmICAgICAgfCBvZmYgICAgICAg fCBkICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICAgICB8IG5vbmUgICB8IHQgICAgICAg ICAgICAgICAgIHwgZiAgICAgICAgICAgICB8IGYgICAgICAgIHwgb2ZmICAgICAgICAgICAgICAg IHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0IHwgMC8wCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBv ZiBzdWJzY3JpcHRpb25zCisgICAgICAgTmFtZSAgICAgICB8ICAgICAgICAgICBPd25lciAgICAg ICAgICAgfCBFbmFibGVkIHwgUHVibGljYXRpb24gfCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28t cGhhc2UgY29tbWl0IHwgRGlzYWJsZSBvbiBlcnJvciB8IE9yaWdpbiB8IFBhc3N3b3JkIHJlcXVp cmVkIHwgUnVuIGFzIG93bmVyPyB8IEZhaWxvdmVyIHwgU3luY2hyb25vdXMgY29tbWl0IHwgICAg ICAgICAgQ29ubmluZm8gICAgICAgICAgIHwgSW5jbHVkZSBnZW5lcmF0ZWQgY29sdW1ucyB8IFNr aXAgTFNOIAorLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0K KyByZWdyZXNzX3Rlc3RzdWI0IHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlciB8IGYgICAgICAg fCB7dGVzdHB1Yn0gICB8IGYgICAgICB8IG9mZiAgICAgICB8IGQgICAgICAgICAgICAgICAgfCBm ICAgICAgICAgICAgICAgIHwgbm9uZSAgIHwgdCAgICAgICAgICAgICAgICAgfCBmICAgICAgICAg ICAgIHwgZiAgICAgICAgfCBvZmYgICAgICAgICAgICAgICAgfCBkYm5hbWU9cmVncmVzc19kb2Vz bm90ZXhpc3QgfCBmICAgICAgICAgICAgICAgICAgICAgICAgIHwgMC8wCiAoMSByb3cpCiAKIEFM VEVSIFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWI0IFNFVCAob3JpZ2luID0gYW55KTsKIFxk UnMrIHJlZ3Jlc3NfdGVzdHN1YjQKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBzdWJzY3JpcHRpb25zCi0gICAgICAgTmFtZSAg ICAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBFbmFibGVkIHwgUHVibGljYXRpb24g fCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJsZSBvbiBlcnJv ciB8IE9yaWdpbiB8IFBhc3N3b3JkIHJlcXVpcmVkIHwgUnVuIGFzIG93bmVyPyB8IEZhaWxvdmVy IHwgU3luY2hyb25vdXMgY29tbWl0IHwgICAgICAgICAgQ29ubmluZm8gICAgICAgICAgIHwgU2tp cCBMU04gCi0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tCi0gcmVncmVzc190ZXN0c3ViNCB8IHJlZ3Jlc3Nf c3Vic2NyaXB0aW9uX3VzZXIgfCBmICAgICAgIHwge3Rlc3RwdWJ9ICAgfCBmICAgICAgfCBvZmYg ICAgICAgfCBkICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICAgICB8IGFueSAgICB8IHQg ICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICB8IGYgICAgICAgIHwgb2ZmICAgICAgICAg ICAgICAgIHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0IHwgMC8wCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg TGlzdCBvZiBzdWJzY3JpcHRpb25zCisgICAgICAgTmFtZSAgICAgICB8ICAgICAgICAgICBPd25l ciAgICAgICAgICAgfCBFbmFibGVkIHwgUHVibGljYXRpb24gfCBCaW5hcnkgfCBTdHJlYW1pbmcg fCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJsZSBvbiBlcnJvciB8IE9yaWdpbiB8IFBhc3N3b3Jk IHJlcXVpcmVkIHwgUnVuIGFzIG93bmVyPyB8IEZhaWxvdmVyIHwgU3luY2hyb25vdXMgY29tbWl0 IHwgICAgICAgICAgQ29ubmluZm8gICAgICAgICAgIHwgSW5jbHVkZSBnZW5lcmF0ZWQgY29sdW1u cyB8IFNraXAgTFNOIAorLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0KKyByZWdyZXNzX3Rlc3RzdWI0IHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlciB8IGYg ICAgICAgfCB7dGVzdHB1Yn0gICB8IGYgICAgICB8IG9mZiAgICAgICB8IGQgICAgICAgICAgICAg ICAgfCBmICAgICAgICAgICAgICAgIHwgYW55ICAgIHwgdCAgICAgICAgICAgICAgICAgfCBmICAg ICAgICAgICAgIHwgZiAgICAgICAgfCBvZmYgICAgICAgICAgICAgICAgfCBkYm5hbWU9cmVncmVz c19kb2Vzbm90ZXhpc3QgfCBmICAgICAgICAgICAgICAgICAgICAgICAgIHwgMC8wCiAoMSByb3cp CiAKIERST1AgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YjM7CkBAIC0xNDUsMTAgKzE1MSwx MCBAQCBBTFRFUiBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViIENPTk5FQ1RJT04gJ2Zvb2Jh cic7CiBFUlJPUjogIGludmFsaWQgY29ubmVjdGlvbiBzdHJpbmcgc3ludGF4OiBtaXNzaW5nICI9 IiBhZnRlciAiZm9vYmFyIiBpbiBjb25uZWN0aW9uIGluZm8gc3RyaW5nCiAKIFxkUnMrCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBv ZiBzdWJzY3JpcHRpb25zCi0gICAgICBOYW1lICAgICAgIHwgICAgICAgICAgIE93bmVyICAgICAg ICAgICB8IEVuYWJsZWQgfCBQdWJsaWNhdGlvbiB8IEJpbmFyeSB8IFN0cmVhbWluZyB8IFR3by1w aGFzZSBjb21taXQgfCBEaXNhYmxlIG9uIGVycm9yIHwgT3JpZ2luIHwgUGFzc3dvcmQgcmVxdWly ZWQgfCBSdW4gYXMgb3duZXI/IHwgRmFpbG92ZXIgfCBTeW5jaHJvbm91cyBjb21taXQgfCAgICAg ICAgICBDb25uaW5mbyAgICAgICAgICAgfCBTa2lwIExTTiAKLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0t LSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLQot IHJlZ3Jlc3NfdGVzdHN1YiB8IHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIgfCBmICAgICAgIHwg e3Rlc3RwdWJ9ICAgfCBmICAgICAgfCBvZmYgICAgICAgfCBkICAgICAgICAgICAgICAgIHwgZiAg ICAgICAgICAgICAgICB8IGFueSAgICB8IHQgICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAg ICB8IGYgICAgICAgIHwgb2ZmICAgICAgICAgICAgICAgIHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25v dGV4aXN0IHwgMC8wCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIHN1YnNjcmlwdGlvbnMKKyAgICAgIE5h bWUgICAgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgRW5hYmxlZCB8IFB1YmxpY2F0 aW9uIHwgQmluYXJ5IHwgU3RyZWFtaW5nIHwgVHdvLXBoYXNlIGNvbW1pdCB8IERpc2FibGUgb24g ZXJyb3IgfCBPcmlnaW4gfCBQYXNzd29yZCByZXF1aXJlZCB8IFJ1biBhcyBvd25lcj8gfCBGYWls b3ZlciB8IFN5bmNocm9ub3VzIGNvbW1pdCB8ICAgICAgICAgIENvbm5pbmZvICAgICAgICAgICB8 IEluY2x1ZGUgZ2VuZXJhdGVkIGNvbHVtbnMgfCBTa2lwIExTTiAKKy0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0t LS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KKyByZWdyZXNzX3Rlc3RzdWIgfCByZWdyZXNz X3N1YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0cHVifSAgIHwgZiAgICAgIHwgb2Zm ICAgICAgIHwgZCAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgICAgfCBhbnkgICAgfCB0 ICAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgfCBmICAgICAgICB8IG9mZiAgICAgICAg ICAgICAgICB8IGRibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCB8IGYgICAgICAgICAgICAgICAg ICAgICAgICAgfCAwLzAKICgxIHJvdykKIAogQUxURVIgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVz dHN1YiBTRVQgUFVCTElDQVRJT04gdGVzdHB1YjIsIHRlc3RwdWIzIFdJVEggKHJlZnJlc2ggPSBm YWxzZSk7CkBAIC0xNTcsMTAgKzE2MywxMCBAQCBBTFRFUiBTVUJTQ1JJUFRJT04gcmVncmVzc190 ZXN0c3ViIFNFVCAoc2xvdF9uYW1lID0gJ25ld25hbWUnKTsKIEFMVEVSIFNVQlNDUklQVElPTiBy ZWdyZXNzX3Rlc3RzdWIgU0VUIChwYXNzd29yZF9yZXF1aXJlZCA9IGZhbHNlKTsKIEFMVEVSIFNV QlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWIgU0VUIChydW5fYXNfb3duZXIgPSB0cnVlKTsKIFxk UnMrCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBMaXN0IG9mIHN1YnNjcmlwdGlvbnMKLSAgICAgIE5hbWUgICAgICAgfCAgICAgICAg ICAgT3duZXIgICAgICAgICAgIHwgRW5hYmxlZCB8ICAgICBQdWJsaWNhdGlvbiAgICAgfCBCaW5h cnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJsZSBvbiBlcnJvciB8IE9y aWdpbiB8IFBhc3N3b3JkIHJlcXVpcmVkIHwgUnVuIGFzIG93bmVyPyB8IEZhaWxvdmVyIHwgU3lu Y2hyb25vdXMgY29tbWl0IHwgICAgICAgICAgIENvbm5pbmZvICAgICAgICAgICB8IFNraXAgTFNO IAotLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tCi0gcmVncmVzc190ZXN0c3ViIHwgcmVncmVz c19zdWJzY3JpcHRpb25fdXNlciB8IGYgICAgICAgfCB7dGVzdHB1YjIsdGVzdHB1YjN9IHwgZiAg ICAgIHwgb2ZmICAgICAgIHwgZCAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgICAgfCBh bnkgICAgfCBmICAgICAgICAgICAgICAgICB8IHQgICAgICAgICAgICAgfCBmICAgICAgICB8IG9m ZiAgICAgICAgICAgICAgICB8IGRibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdDIgfCAwLzAKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgTGlzdCBvZiBzdWJzY3JpcHRpb25zCisgICAgICBOYW1lICAgICAgIHwg ICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEVuYWJsZWQgfCAgICAgUHVibGljYXRpb24gICAg IHwgQmluYXJ5IHwgU3RyZWFtaW5nIHwgVHdvLXBoYXNlIGNvbW1pdCB8IERpc2FibGUgb24gZXJy b3IgfCBPcmlnaW4gfCBQYXNzd29yZCByZXF1aXJlZCB8IFJ1biBhcyBvd25lcj8gfCBGYWlsb3Zl ciB8IFN5bmNocm9ub3VzIGNvbW1pdCB8ICAgICAgICAgICBDb25uaW5mbyAgICAgICAgICAgfCBJ bmNsdWRlIGdlbmVyYXRlZCBjb2x1bW5zIHwgU2tpcCBMU04gCistLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tCisgcmVncmVzc190ZXN0c3ViIHwg cmVncmVzc19zdWJzY3JpcHRpb25fdXNlciB8IGYgICAgICAgfCB7dGVzdHB1YjIsdGVzdHB1YjN9 IHwgZiAgICAgIHwgb2ZmICAgICAgIHwgZCAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAg ICAgfCBhbnkgICAgfCBmICAgICAgICAgICAgICAgICB8IHQgICAgICAgICAgICAgfCBmICAgICAg ICB8IG9mZiAgICAgICAgICAgICAgICB8IGRibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdDIgfCBm ICAgICAgICAgICAgICAgICAgICAgICAgIHwgMC8wCiAoMSByb3cpCiAKIEFMVEVSIFNVQlNDUklQ VElPTiByZWdyZXNzX3Rlc3RzdWIgU0VUIChwYXNzd29yZF9yZXF1aXJlZCA9IHRydWUpOwpAQCAt MTc2LDEwICsxODIsMTAgQEAgRVJST1I6ICB1bnJlY29nbml6ZWQgc3Vic2NyaXB0aW9uIHBhcmFt ZXRlcjogImNyZWF0ZV9zbG90IgogLS0gb2sKIEFMVEVSIFNVQlNDUklQVElPTiByZWdyZXNzX3Rl c3RzdWIgU0tJUCAobHNuID0gJzAvMTIzNDUnKTsKIFxkUnMrCi0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIHN1YnNjcmlw dGlvbnMKLSAgICAgIE5hbWUgICAgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgRW5h YmxlZCB8ICAgICBQdWJsaWNhdGlvbiAgICAgfCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhh c2UgY29tbWl0IHwgRGlzYWJsZSBvbiBlcnJvciB8IE9yaWdpbiB8IFBhc3N3b3JkIHJlcXVpcmVk IHwgUnVuIGFzIG93bmVyPyB8IEZhaWxvdmVyIHwgU3luY2hyb25vdXMgY29tbWl0IHwgICAgICAg ICAgIENvbm5pbmZvICAgICAgICAgICB8IFNraXAgTFNOIAotLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tCi0gcmVncmVzc190ZXN0c3ViIHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlciB8IGYg ICAgICAgfCB7dGVzdHB1YjIsdGVzdHB1YjN9IHwgZiAgICAgIHwgb2ZmICAgICAgIHwgZCAgICAg ICAgICAgICAgICB8IGYgICAgICAgICAgICAgICAgfCBhbnkgICAgfCB0ICAgICAgICAgICAgICAg ICB8IGYgICAgICAgICAgICAgfCBmICAgICAgICB8IG9mZiAgICAgICAgICAgICAgICB8IGRibmFt ZT1yZWdyZXNzX2RvZXNub3RleGlzdDIgfCAwLzEyMzQ1CisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qg b2Ygc3Vic2NyaXB0aW9ucworICAgICAgTmFtZSAgICAgICB8ICAgICAgICAgICBPd25lciAgICAg ICAgICAgfCBFbmFibGVkIHwgICAgIFB1YmxpY2F0aW9uICAgICB8IEJpbmFyeSB8IFN0cmVhbWlu ZyB8IFR3by1waGFzZSBjb21taXQgfCBEaXNhYmxlIG9uIGVycm9yIHwgT3JpZ2luIHwgUGFzc3dv cmQgcmVxdWlyZWQgfCBSdW4gYXMgb3duZXI/IHwgRmFpbG92ZXIgfCBTeW5jaHJvbm91cyBjb21t aXQgfCAgICAgICAgICAgQ29ubmluZm8gICAgICAgICAgIHwgSW5jbHVkZSBnZW5lcmF0ZWQgY29s dW1ucyB8IFNraXAgTFNOIAorLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLQorIHJlZ3Jlc3NfdGVzdHN1YiB8IHJlZ3Jlc3Nfc3Vic2NyaXB0aW9u X3VzZXIgfCBmICAgICAgIHwge3Rlc3RwdWIyLHRlc3RwdWIzfSB8IGYgICAgICB8IG9mZiAgICAg ICB8IGQgICAgICAgICAgICAgICAgfCBmICAgICAgICAgICAgICAgIHwgYW55ICAgIHwgdCAgICAg ICAgICAgICAgICAgfCBmICAgICAgICAgICAgIHwgZiAgICAgICAgfCBvZmYgICAgICAgICAgICAg ICAgfCBkYm5hbWU9cmVncmVzc19kb2Vzbm90ZXhpc3QyIHwgZiAgICAgICAgICAgICAgICAgICAg ICAgICB8IDAvMTIzNDUKICgxIHJvdykKIAogLS0gb2sgLSB3aXRoIGxzbiA9IE5PTkUKQEAgLTE4 OCwxMCArMTk0LDEwIEBAIEFMVEVSIFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWIgU0tJUCAo bHNuID0gTk9ORSk7CiBBTFRFUiBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViIFNLSVAgKGxz biA9ICcwLzAnKTsKIEVSUk9SOiAgaW52YWxpZCBXQUwgbG9jYXRpb24gKExTTik6IDAvMAogXGRS cysKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIExpc3Qgb2Ygc3Vic2NyaXB0aW9ucwotICAgICAgTmFtZSAgICAgICB8ICAgICAgICAg ICBPd25lciAgICAgICAgICAgfCBFbmFibGVkIHwgICAgIFB1YmxpY2F0aW9uICAgICB8IEJpbmFy eSB8IFN0cmVhbWluZyB8IFR3by1waGFzZSBjb21taXQgfCBEaXNhYmxlIG9uIGVycm9yIHwgT3Jp Z2luIHwgUGFzc3dvcmQgcmVxdWlyZWQgfCBSdW4gYXMgb3duZXI/IHwgRmFpbG92ZXIgfCBTeW5j aHJvbm91cyBjb21taXQgfCAgICAgICAgICAgQ29ubmluZm8gICAgICAgICAgIHwgU2tpcCBMU04g Ci0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KLSByZWdyZXNzX3Rlc3RzdWIgfCByZWdyZXNz X3N1YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0cHViMix0ZXN0cHViM30gfCBmICAg ICAgfCBvZmYgICAgICAgfCBkICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICAgICB8IGFu eSAgICB8IHQgICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICB8IGYgICAgICAgIHwgb2Zm ICAgICAgICAgICAgICAgIHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0MiB8IDAvMAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBMaXN0IG9mIHN1YnNjcmlwdGlvbnMKKyAgICAgIE5hbWUgICAgICAgfCAg ICAgICAgICAgT3duZXIgICAgICAgICAgIHwgRW5hYmxlZCB8ICAgICBQdWJsaWNhdGlvbiAgICAg fCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJsZSBvbiBlcnJv ciB8IE9yaWdpbiB8IFBhc3N3b3JkIHJlcXVpcmVkIHwgUnVuIGFzIG93bmVyPyB8IEZhaWxvdmVy IHwgU3luY2hyb25vdXMgY29tbWl0IHwgICAgICAgICAgIENvbm5pbmZvICAgICAgICAgICB8IElu Y2x1ZGUgZ2VuZXJhdGVkIGNvbHVtbnMgfCBTa2lwIExTTiAKKy0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KKyByZWdyZXNzX3Rlc3RzdWIgfCBy ZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0cHViMix0ZXN0cHViM30g fCBmICAgICAgfCBvZmYgICAgICAgfCBkICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICAg ICB8IGFueSAgICB8IHQgICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICB8IGYgICAgICAg IHwgb2ZmICAgICAgICAgICAgICAgIHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0MiB8IGYg ICAgICAgICAgICAgICAgICAgICAgICAgfCAwLzAKICgxIHJvdykKIAogQkVHSU47CkBAIC0yMjMs MTAgKzIyOSwxMCBAQCBBTFRFUiBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViX2ZvbyBTRVQg KHN5bmNocm9ub3VzX2NvbW1pdCA9IGZvb2Jhcik7CiBFUlJPUjogIGludmFsaWQgdmFsdWUgZm9y IHBhcmFtZXRlciAic3luY2hyb25vdXNfY29tbWl0IjogImZvb2JhciIKIEhJTlQ6ICBBdmFpbGFi bGUgdmFsdWVzOiBsb2NhbCwgcmVtb3RlX3dyaXRlLCByZW1vdGVfYXBwbHksIG9uLCBvZmYuCiBc ZFJzKwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBMaXN0IG9mIHN1YnNjcmlwdGlvbnMKLSAgICAgICAgTmFtZSAgICAgICAgIHwg ICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEVuYWJsZWQgfCAgICAgUHVibGljYXRpb24gICAg IHwgQmluYXJ5IHwgU3RyZWFtaW5nIHwgVHdvLXBoYXNlIGNvbW1pdCB8IERpc2FibGUgb24gZXJy b3IgfCBPcmlnaW4gfCBQYXNzd29yZCByZXF1aXJlZCB8IFJ1biBhcyBvd25lcj8gfCBGYWlsb3Zl ciB8IFN5bmNocm9ub3VzIGNvbW1pdCB8ICAgICAgICAgICBDb25uaW5mbyAgICAgICAgICAgfCBT a2lwIExTTiAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KLSByZWdyZXNzX3Rlc3Rz dWJfZm9vIHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlciB8IGYgICAgICAgfCB7dGVzdHB1YjIs dGVzdHB1YjN9IHwgZiAgICAgIHwgb2ZmICAgICAgIHwgZCAgICAgICAgICAgICAgICB8IGYgICAg ICAgICAgICAgICAgfCBhbnkgICAgfCB0ICAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAg fCBmICAgICAgICB8IGxvY2FsICAgICAgICAgICAgICB8IGRibmFtZT1yZWdyZXNzX2RvZXNub3Rl eGlzdDIgfCAwLzAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIHN1YnNjcmlwdGlvbnMKKyAg ICAgICAgTmFtZSAgICAgICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEVuYWJsZWQg fCAgICAgUHVibGljYXRpb24gICAgIHwgQmluYXJ5IHwgU3RyZWFtaW5nIHwgVHdvLXBoYXNlIGNv bW1pdCB8IERpc2FibGUgb24gZXJyb3IgfCBPcmlnaW4gfCBQYXNzd29yZCByZXF1aXJlZCB8IFJ1 biBhcyBvd25lcj8gfCBGYWlsb3ZlciB8IFN5bmNocm9ub3VzIGNvbW1pdCB8ICAgICAgICAgICBD b25uaW5mbyAgICAgICAgICAgfCBJbmNsdWRlIGdlbmVyYXRlZCBjb2x1bW5zIHwgU2tpcCBMU04g CistLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLQorIHJlZ3Jlc3NfdGVzdHN1Yl9mb28gfCByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyIHwg ZiAgICAgICB8IHt0ZXN0cHViMix0ZXN0cHViM30gfCBmICAgICAgfCBvZmYgICAgICAgfCBkICAg ICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICAgICB8IGFueSAgICB8IHQgICAgICAgICAgICAg ICAgIHwgZiAgICAgICAgICAgICB8IGYgICAgICAgIHwgbG9jYWwgICAgICAgICAgICAgIHwgZGJu YW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0MiB8IGYgICAgICAgICAgICAgICAgICAgICAgICAgfCAw LzAKICgxIHJvdykKIAogLS0gcmVuYW1lIGJhY2sgdG8ga2VlcCB0aGUgcmVzdCBzaW1wbGUKQEAg LTI1NSwxOSArMjYxLDE5IEBAIENSRUFURSBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViIENP Tk5FQ1RJT04gJ2RibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCcgUFVCCiBXQVJOSU5HOiAgc3Vi c2NyaXB0aW9uIHdhcyBjcmVhdGVkLCBidXQgaXMgbm90IGNvbm5lY3RlZAogSElOVDogIFRvIGlu aXRpYXRlIHJlcGxpY2F0aW9uLCB5b3UgbXVzdCBtYW51YWxseSBjcmVhdGUgdGhlIHJlcGxpY2F0 aW9uIHNsb3QsIGVuYWJsZSB0aGUgc3Vic2NyaXB0aW9uLCBhbmQgcmVmcmVzaCB0aGUgc3Vic2Ny aXB0aW9uLgogXGRScysKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBMaXN0IG9mIHN1YnNjcmlwdGlvbnMKLSAgICAgIE5hbWUgICAgICAgfCAg ICAgICAgICAgT3duZXIgICAgICAgICAgIHwgRW5hYmxlZCB8IFB1YmxpY2F0aW9uIHwgQmluYXJ5 IHwgU3RyZWFtaW5nIHwgVHdvLXBoYXNlIGNvbW1pdCB8IERpc2FibGUgb24gZXJyb3IgfCBPcmln aW4gfCBQYXNzd29yZCByZXF1aXJlZCB8IFJ1biBhcyBvd25lcj8gfCBGYWlsb3ZlciB8IFN5bmNo cm9ub3VzIGNvbW1pdCB8ICAgICAgICAgIENvbm5pbmZvICAgICAgICAgICB8IFNraXAgTFNOIAot LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSst LS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tCi0gcmVncmVzc190ZXN0c3ViIHwgcmVncmVzc19zdWJzY3JpcHRp b25fdXNlciB8IGYgICAgICAgfCB7dGVzdHB1Yn0gICB8IHQgICAgICB8IG9mZiAgICAgICB8IGQg ICAgICAgICAgICAgICAgfCBmICAgICAgICAgICAgICAgIHwgYW55ICAgIHwgdCAgICAgICAgICAg ICAgICAgfCBmICAgICAgICAgICAgIHwgZiAgICAgICAgfCBvZmYgICAgICAgICAgICAgICAgfCBk Ym5hbWU9cmVncmVzc19kb2Vzbm90ZXhpc3QgfCAwLzAKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2Ygc3Vi c2NyaXB0aW9ucworICAgICAgTmFtZSAgICAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAg fCBFbmFibGVkIHwgUHVibGljYXRpb24gfCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2Ug Y29tbWl0IHwgRGlzYWJsZSBvbiBlcnJvciB8IE9yaWdpbiB8IFBhc3N3b3JkIHJlcXVpcmVkIHwg UnVuIGFzIG93bmVyPyB8IEZhaWxvdmVyIHwgU3luY2hyb25vdXMgY29tbWl0IHwgICAgICAgICAg Q29ubmluZm8gICAgICAgICAgIHwgSW5jbHVkZSBnZW5lcmF0ZWQgY29sdW1ucyB8IFNraXAgTFNO IAorLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLQorIHJlZ3Jl c3NfdGVzdHN1YiB8IHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIgfCBmICAgICAgIHwge3Rlc3Rw dWJ9ICAgfCB0ICAgICAgfCBvZmYgICAgICAgfCBkICAgICAgICAgICAgICAgIHwgZiAgICAgICAg ICAgICAgICB8IGFueSAgICB8IHQgICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICB8IGYg ICAgICAgIHwgb2ZmICAgICAgICAgICAgICAgIHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0 IHwgZiAgICAgICAgICAgICAgICAgICAgICAgICB8IDAvMAogKDEgcm93KQogCiBBTFRFUiBTVUJT Q1JJUFRJT04gcmVncmVzc190ZXN0c3ViIFNFVCAoYmluYXJ5ID0gZmFsc2UpOwogQUxURVIgU1VC U0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YiBTRVQgKHNsb3RfbmFtZSA9IE5PTkUpOwogXGRScysK LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBM aXN0IG9mIHN1YnNjcmlwdGlvbnMKLSAgICAgIE5hbWUgICAgICAgfCAgICAgICAgICAgT3duZXIg ICAgICAgICAgIHwgRW5hYmxlZCB8IFB1YmxpY2F0aW9uIHwgQmluYXJ5IHwgU3RyZWFtaW5nIHwg VHdvLXBoYXNlIGNvbW1pdCB8IERpc2FibGUgb24gZXJyb3IgfCBPcmlnaW4gfCBQYXNzd29yZCBy ZXF1aXJlZCB8IFJ1biBhcyBvd25lcj8gfCBGYWlsb3ZlciB8IFN5bmNocm9ub3VzIGNvbW1pdCB8 ICAgICAgICAgIENvbm5pbmZvICAgICAgICAgICB8IFNraXAgTFNOIAotLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0t LS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tCi0gcmVncmVzc190ZXN0c3ViIHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlciB8IGYgICAg ICAgfCB7dGVzdHB1Yn0gICB8IGYgICAgICB8IG9mZiAgICAgICB8IGQgICAgICAgICAgICAgICAg fCBmICAgICAgICAgICAgICAgIHwgYW55ICAgIHwgdCAgICAgICAgICAgICAgICAgfCBmICAgICAg ICAgICAgIHwgZiAgICAgICAgfCBvZmYgICAgICAgICAgICAgICAgfCBkYm5hbWU9cmVncmVzc19k b2Vzbm90ZXhpc3QgfCAwLzAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2Ygc3Vic2NyaXB0aW9ucworICAg ICAgTmFtZSAgICAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBFbmFibGVkIHwgUHVi bGljYXRpb24gfCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJs ZSBvbiBlcnJvciB8IE9yaWdpbiB8IFBhc3N3b3JkIHJlcXVpcmVkIHwgUnVuIGFzIG93bmVyPyB8 IEZhaWxvdmVyIHwgU3luY2hyb25vdXMgY29tbWl0IHwgICAgICAgICAgQ29ubmluZm8gICAgICAg ICAgIHwgSW5jbHVkZSBnZW5lcmF0ZWQgY29sdW1ucyB8IFNraXAgTFNOIAorLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0t Ky0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLQorIHJlZ3Jlc3NfdGVzdHN1YiB8IHJl Z3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIgfCBmICAgICAgIHwge3Rlc3RwdWJ9ICAgfCBmICAgICAg fCBvZmYgICAgICAgfCBkICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICAgICB8IGFueSAg ICB8IHQgICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICB8IGYgICAgICAgIHwgb2ZmICAg ICAgICAgICAgICAgIHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0IHwgZiAgICAgICAgICAg ICAgICAgICAgICAgICB8IDAvMAogKDEgcm93KQogCiBEUk9QIFNVQlNDUklQVElPTiByZWdyZXNz X3Rlc3RzdWI7CkBAIC0yNzksMjcgKzI4NSwyNyBAQCBDUkVBVEUgU1VCU0NSSVBUSU9OIHJlZ3Jl c3NfdGVzdHN1YiBDT05ORUNUSU9OICdkYm5hbWU9cmVncmVzc19kb2Vzbm90ZXhpc3QnIFBVQgog V0FSTklORzogIHN1YnNjcmlwdGlvbiB3YXMgY3JlYXRlZCwgYnV0IGlzIG5vdCBjb25uZWN0ZWQK IEhJTlQ6ICBUbyBpbml0aWF0ZSByZXBsaWNhdGlvbiwgeW91IG11c3QgbWFudWFsbHkgY3JlYXRl IHRoZSByZXBsaWNhdGlvbiBzbG90LCBlbmFibGUgdGhlIHN1YnNjcmlwdGlvbiwgYW5kIHJlZnJl c2ggdGhlIHN1YnNjcmlwdGlvbi4KIFxkUnMrCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBzdWJzY3JpcHRpb25zCi0gICAgICBO YW1lICAgICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEVuYWJsZWQgfCBQdWJsaWNh dGlvbiB8IEJpbmFyeSB8IFN0cmVhbWluZyB8IFR3by1waGFzZSBjb21taXQgfCBEaXNhYmxlIG9u IGVycm9yIHwgT3JpZ2luIHwgUGFzc3dvcmQgcmVxdWlyZWQgfCBSdW4gYXMgb3duZXI/IHwgRmFp bG92ZXIgfCBTeW5jaHJvbm91cyBjb21taXQgfCAgICAgICAgICBDb25uaW5mbyAgICAgICAgICAg fCBTa2lwIExTTiAKLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLQotIHJlZ3Jlc3NfdGVzdHN1YiB8IHJlZ3Jl c3Nfc3Vic2NyaXB0aW9uX3VzZXIgfCBmICAgICAgIHwge3Rlc3RwdWJ9ICAgfCBmICAgICAgfCBv biAgICAgICAgfCBkICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICAgICB8IGFueSAgICB8 IHQgICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICB8IGYgICAgICAgIHwgb2ZmICAgICAg ICAgICAgICAgIHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0IHwgMC8wCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBMaXN0IG9mIHN1YnNjcmlwdGlvbnMKKyAgICAgIE5hbWUgICAgICAgfCAgICAgICAgICAgT3du ZXIgICAgICAgICAgIHwgRW5hYmxlZCB8IFB1YmxpY2F0aW9uIHwgQmluYXJ5IHwgU3RyZWFtaW5n IHwgVHdvLXBoYXNlIGNvbW1pdCB8IERpc2FibGUgb24gZXJyb3IgfCBPcmlnaW4gfCBQYXNzd29y ZCByZXF1aXJlZCB8IFJ1biBhcyBvd25lcj8gfCBGYWlsb3ZlciB8IFN5bmNocm9ub3VzIGNvbW1p dCB8ICAgICAgICAgIENvbm5pbmZvICAgICAgICAgICB8IEluY2x1ZGUgZ2VuZXJhdGVkIGNvbHVt bnMgfCBTa2lwIExTTiAKKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0KKyByZWdyZXNzX3Rlc3RzdWIgfCByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyIHwgZiAg ICAgICB8IHt0ZXN0cHVifSAgIHwgZiAgICAgIHwgb24gICAgICAgIHwgZCAgICAgICAgICAgICAg ICB8IGYgICAgICAgICAgICAgICAgfCBhbnkgICAgfCB0ICAgICAgICAgICAgICAgICB8IGYgICAg ICAgICAgICAgfCBmICAgICAgICB8IG9mZiAgICAgICAgICAgICAgICB8IGRibmFtZT1yZWdyZXNz X2RvZXNub3RleGlzdCB8IGYgICAgICAgICAgICAgICAgICAgICAgICAgfCAwLzAKICgxIHJvdykK IAogQUxURVIgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YiBTRVQgKHN0cmVhbWluZyA9IHBh cmFsbGVsKTsKIFxkUnMrCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgTGlzdCBvZiBzdWJzY3JpcHRpb25zCi0gICAgICBOYW1lICAgICAgIHwg ICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEVuYWJsZWQgfCBQdWJsaWNhdGlvbiB8IEJpbmFy eSB8IFN0cmVhbWluZyB8IFR3by1waGFzZSBjb21taXQgfCBEaXNhYmxlIG9uIGVycm9yIHwgT3Jp Z2luIHwgUGFzc3dvcmQgcmVxdWlyZWQgfCBSdW4gYXMgb3duZXI/IHwgRmFpbG92ZXIgfCBTeW5j aHJvbm91cyBjb21taXQgfCAgICAgICAgICBDb25uaW5mbyAgICAgICAgICAgfCBTa2lwIExTTiAK LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0r LS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLQotIHJlZ3Jlc3NfdGVzdHN1YiB8IHJlZ3Jlc3Nfc3Vic2NyaXB0 aW9uX3VzZXIgfCBmICAgICAgIHwge3Rlc3RwdWJ9ICAgfCBmICAgICAgfCBwYXJhbGxlbCAgfCBk ICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICAgICB8IGFueSAgICB8IHQgICAgICAgICAg ICAgICAgIHwgZiAgICAgICAgICAgICB8IGYgICAgICAgIHwgb2ZmICAgICAgICAgICAgICAgIHwg ZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0IHwgMC8wCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIHN1 YnNjcmlwdGlvbnMKKyAgICAgIE5hbWUgICAgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAg IHwgRW5hYmxlZCB8IFB1YmxpY2F0aW9uIHwgQmluYXJ5IHwgU3RyZWFtaW5nIHwgVHdvLXBoYXNl IGNvbW1pdCB8IERpc2FibGUgb24gZXJyb3IgfCBPcmlnaW4gfCBQYXNzd29yZCByZXF1aXJlZCB8 IFJ1biBhcyBvd25lcj8gfCBGYWlsb3ZlciB8IFN5bmNocm9ub3VzIGNvbW1pdCB8ICAgICAgICAg IENvbm5pbmZvICAgICAgICAgICB8IEluY2x1ZGUgZ2VuZXJhdGVkIGNvbHVtbnMgfCBTa2lwIExT TiAKKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KKyByZWdy ZXNzX3Rlc3RzdWIgfCByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0 cHVifSAgIHwgZiAgICAgIHwgcGFyYWxsZWwgIHwgZCAgICAgICAgICAgICAgICB8IGYgICAgICAg ICAgICAgICAgfCBhbnkgICAgfCB0ICAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgfCBm ICAgICAgICB8IG9mZiAgICAgICAgICAgICAgICB8IGRibmFtZT1yZWdyZXNzX2RvZXNub3RleGlz dCB8IGYgICAgICAgICAgICAgICAgICAgICAgICAgfCAwLzAKICgxIHJvdykKIAogQUxURVIgU1VC U0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YiBTRVQgKHN0cmVhbWluZyA9IGZhbHNlKTsKIEFMVEVS IFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWIgU0VUIChzbG90X25hbWUgPSBOT05FKTsKIFxk UnMrCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgTGlzdCBvZiBzdWJzY3JpcHRpb25zCi0gICAgICBOYW1lICAgICAgIHwgICAgICAgICAgIE93 bmVyICAgICAgICAgICB8IEVuYWJsZWQgfCBQdWJsaWNhdGlvbiB8IEJpbmFyeSB8IFN0cmVhbWlu ZyB8IFR3by1waGFzZSBjb21taXQgfCBEaXNhYmxlIG9uIGVycm9yIHwgT3JpZ2luIHwgUGFzc3dv cmQgcmVxdWlyZWQgfCBSdW4gYXMgb3duZXI/IHwgRmFpbG92ZXIgfCBTeW5jaHJvbm91cyBjb21t aXQgfCAgICAgICAgICBDb25uaW5mbyAgICAgICAgICAgfCBTa2lwIExTTiAKLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0t LSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLQotIHJlZ3Jlc3NfdGVzdHN1YiB8IHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIgfCBm ICAgICAgIHwge3Rlc3RwdWJ9ICAgfCBmICAgICAgfCBvZmYgICAgICAgfCBkICAgICAgICAgICAg ICAgIHwgZiAgICAgICAgICAgICAgICB8IGFueSAgICB8IHQgICAgICAgICAgICAgICAgIHwgZiAg ICAgICAgICAgICB8IGYgICAgICAgIHwgb2ZmICAgICAgICAgICAgICAgIHwgZGJuYW1lPXJlZ3Jl c3NfZG9lc25vdGV4aXN0IHwgMC8wCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIHN1YnNjcmlwdGlvbnMK KyAgICAgIE5hbWUgICAgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgRW5hYmxlZCB8 IFB1YmxpY2F0aW9uIHwgQmluYXJ5IHwgU3RyZWFtaW5nIHwgVHdvLXBoYXNlIGNvbW1pdCB8IERp c2FibGUgb24gZXJyb3IgfCBPcmlnaW4gfCBQYXNzd29yZCByZXF1aXJlZCB8IFJ1biBhcyBvd25l cj8gfCBGYWlsb3ZlciB8IFN5bmNocm9ub3VzIGNvbW1pdCB8ICAgICAgICAgIENvbm5pbmZvICAg ICAgICAgICB8IEluY2x1ZGUgZ2VuZXJhdGVkIGNvbHVtbnMgfCBTa2lwIExTTiAKKy0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0t LS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KKyByZWdyZXNzX3Rlc3RzdWIg fCByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0cHVifSAgIHwgZiAg ICAgIHwgb2ZmICAgICAgIHwgZCAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgICAgfCBh bnkgICAgfCB0ICAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgfCBmICAgICAgICB8IG9m ZiAgICAgICAgICAgICAgICB8IGRibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCB8IGYgICAgICAg ICAgICAgICAgICAgICAgICAgfCAwLzAKICgxIHJvdykKIAogLS0gZmFpbCAtIHB1YmxpY2F0aW9u IGFscmVhZHkgZXhpc3RzCkBAIC0zMTQsMTAgKzMyMCwxMCBAQCBBTFRFUiBTVUJTQ1JJUFRJT04g cmVncmVzc190ZXN0c3ViIEFERCBQVUJMSUNBVElPTiB0ZXN0cHViMSwgdGVzdHB1YjIgV0lUSCAo cmVmcgogQUxURVIgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YiBBREQgUFVCTElDQVRJT04g dGVzdHB1YjEsIHRlc3RwdWIyIFdJVEggKHJlZnJlc2ggPSBmYWxzZSk7CiBFUlJPUjogIHB1Ymxp Y2F0aW9uICJ0ZXN0cHViMSIgaXMgYWxyZWFkeSBpbiBzdWJzY3JpcHRpb24gInJlZ3Jlc3NfdGVz dHN1YiIKIFxkUnMrCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIHN1YnNjcmlwdGlvbnMKLSAgICAgIE5hbWUgICAg ICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgRW5hYmxlZCB8ICAgICAgICAgUHVibGlj YXRpb24gICAgICAgICB8IEJpbmFyeSB8IFN0cmVhbWluZyB8IFR3by1waGFzZSBjb21taXQgfCBE aXNhYmxlIG9uIGVycm9yIHwgT3JpZ2luIHwgUGFzc3dvcmQgcmVxdWlyZWQgfCBSdW4gYXMgb3du ZXI/IHwgRmFpbG92ZXIgfCBTeW5jaHJvbm91cyBjb21taXQgfCAgICAgICAgICBDb25uaW5mbyAg ICAgICAgICAgfCBTa2lwIExTTiAKLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0K LSByZWdyZXNzX3Rlc3RzdWIgfCByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8 IHt0ZXN0cHViLHRlc3RwdWIxLHRlc3RwdWIyfSB8IGYgICAgICB8IG9mZiAgICAgICB8IGQgICAg ICAgICAgICAgICAgfCBmICAgICAgICAgICAgICAgIHwgYW55ICAgIHwgdCAgICAgICAgICAgICAg ICAgfCBmICAgICAgICAgICAgIHwgZiAgICAgICAgfCBvZmYgICAgICAgICAgICAgICAgfCBkYm5h bWU9cmVncmVzc19kb2Vzbm90ZXhpc3QgfCAwLzAKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBv ZiBzdWJzY3JpcHRpb25zCisgICAgICBOYW1lICAgICAgIHwgICAgICAgICAgIE93bmVyICAgICAg ICAgICB8IEVuYWJsZWQgfCAgICAgICAgIFB1YmxpY2F0aW9uICAgICAgICAgfCBCaW5hcnkgfCBT dHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJsZSBvbiBlcnJvciB8IE9yaWdpbiB8 IFBhc3N3b3JkIHJlcXVpcmVkIHwgUnVuIGFzIG93bmVyPyB8IEZhaWxvdmVyIHwgU3luY2hyb25v dXMgY29tbWl0IHwgICAgICAgICAgQ29ubmluZm8gICAgICAgICAgIHwgSW5jbHVkZSBnZW5lcmF0 ZWQgY29sdW1ucyB8IFNraXAgTFNOIAorLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KKyByZWdyZXNzX3Rlc3RzdWIgfCByZWdyZXNz X3N1YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0cHViLHRlc3RwdWIxLHRlc3RwdWIy fSB8IGYgICAgICB8IG9mZiAgICAgICB8IGQgICAgICAgICAgICAgICAgfCBmICAgICAgICAgICAg ICAgIHwgYW55ICAgIHwgdCAgICAgICAgICAgICAgICAgfCBmICAgICAgICAgICAgIHwgZiAgICAg ICAgfCBvZmYgICAgICAgICAgICAgICAgfCBkYm5hbWU9cmVncmVzc19kb2Vzbm90ZXhpc3QgfCBm ICAgICAgICAgICAgICAgICAgICAgICAgIHwgMC8wCiAoMSByb3cpCiAKIC0tIGZhaWwgLSBwdWJs aWNhdGlvbiB1c2VkIG1vcmUgdGhhbiBvbmNlCkBAIC0zMzIsMTAgKzMzOCwxMCBAQCBFUlJPUjog IHB1YmxpY2F0aW9uICJ0ZXN0cHViMyIgaXMgbm90IGluIHN1YnNjcmlwdGlvbiAicmVncmVzc190 ZXN0c3ViIgogLS0gb2sgLSBkZWxldGUgcHVibGljYXRpb25zCiBBTFRFUiBTVUJTQ1JJUFRJT04g cmVncmVzc190ZXN0c3ViIERST1AgUFVCTElDQVRJT04gdGVzdHB1YjEsIHRlc3RwdWIyIFdJVEgg KHJlZnJlc2ggPSBmYWxzZSk7CiBcZFJzKwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2Ygc3Vic2NyaXB0aW9ucwotICAgICAgTmFt ZSAgICAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBFbmFibGVkIHwgUHVibGljYXRp b24gfCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJsZSBvbiBl cnJvciB8IE9yaWdpbiB8IFBhc3N3b3JkIHJlcXVpcmVkIHwgUnVuIGFzIG93bmVyPyB8IEZhaWxv dmVyIHwgU3luY2hyb25vdXMgY29tbWl0IHwgICAgICAgICAgQ29ubmluZm8gICAgICAgICAgIHwg U2tpcCBMU04gCi0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KLSByZWdyZXNzX3Rlc3RzdWIgfCByZWdyZXNz X3N1YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0cHVifSAgIHwgZiAgICAgIHwgb2Zm ICAgICAgIHwgZCAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgICAgfCBhbnkgICAgfCB0 ICAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgfCBmICAgICAgICB8IG9mZiAgICAgICAg ICAgICAgICB8IGRibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCB8IDAvMAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg TGlzdCBvZiBzdWJzY3JpcHRpb25zCisgICAgICBOYW1lICAgICAgIHwgICAgICAgICAgIE93bmVy ICAgICAgICAgICB8IEVuYWJsZWQgfCBQdWJsaWNhdGlvbiB8IEJpbmFyeSB8IFN0cmVhbWluZyB8 IFR3by1waGFzZSBjb21taXQgfCBEaXNhYmxlIG9uIGVycm9yIHwgT3JpZ2luIHwgUGFzc3dvcmQg cmVxdWlyZWQgfCBSdW4gYXMgb3duZXI/IHwgRmFpbG92ZXIgfCBTeW5jaHJvbm91cyBjb21taXQg fCAgICAgICAgICBDb25uaW5mbyAgICAgICAgICAgfCBJbmNsdWRlIGdlbmVyYXRlZCBjb2x1bW5z IHwgU2tpcCBMU04gCistLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tCisgcmVncmVzc190ZXN0c3ViIHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlciB8IGYgICAg ICAgfCB7dGVzdHB1Yn0gICB8IGYgICAgICB8IG9mZiAgICAgICB8IGQgICAgICAgICAgICAgICAg fCBmICAgICAgICAgICAgICAgIHwgYW55ICAgIHwgdCAgICAgICAgICAgICAgICAgfCBmICAgICAg ICAgICAgIHwgZiAgICAgICAgfCBvZmYgICAgICAgICAgICAgICAgfCBkYm5hbWU9cmVncmVzc19k b2Vzbm90ZXhpc3QgfCBmICAgICAgICAgICAgICAgICAgICAgICAgIHwgMC8wCiAoMSByb3cpCiAK IERST1AgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YjsKQEAgLTM3MSwxMCArMzc3LDEwIEBA IENSRUFURSBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViIENPTk5FQ1RJT04gJ2RibmFtZT1y ZWdyZXNzX2RvZXNub3RleGlzdCcgUFVCCiBXQVJOSU5HOiAgc3Vic2NyaXB0aW9uIHdhcyBjcmVh dGVkLCBidXQgaXMgbm90IGNvbm5lY3RlZAogSElOVDogIFRvIGluaXRpYXRlIHJlcGxpY2F0aW9u LCB5b3UgbXVzdCBtYW51YWxseSBjcmVhdGUgdGhlIHJlcGxpY2F0aW9uIHNsb3QsIGVuYWJsZSB0 aGUgc3Vic2NyaXB0aW9uLCBhbmQgcmVmcmVzaCB0aGUgc3Vic2NyaXB0aW9uLgogXGRScysKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0 IG9mIHN1YnNjcmlwdGlvbnMKLSAgICAgIE5hbWUgICAgICAgfCAgICAgICAgICAgT3duZXIgICAg ICAgICAgIHwgRW5hYmxlZCB8IFB1YmxpY2F0aW9uIHwgQmluYXJ5IHwgU3RyZWFtaW5nIHwgVHdv LXBoYXNlIGNvbW1pdCB8IERpc2FibGUgb24gZXJyb3IgfCBPcmlnaW4gfCBQYXNzd29yZCByZXF1 aXJlZCB8IFJ1biBhcyBvd25lcj8gfCBGYWlsb3ZlciB8IFN5bmNocm9ub3VzIGNvbW1pdCB8ICAg ICAgICAgIENvbm5pbmZvICAgICAgICAgICB8IFNraXAgTFNOIAotLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0t LS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t Ci0gcmVncmVzc190ZXN0c3ViIHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlciB8IGYgICAgICAg fCB7dGVzdHB1Yn0gICB8IGYgICAgICB8IG9mZiAgICAgICB8IHAgICAgICAgICAgICAgICAgfCBm ICAgICAgICAgICAgICAgIHwgYW55ICAgIHwgdCAgICAgICAgICAgICAgICAgfCBmICAgICAgICAg ICAgIHwgZiAgICAgICAgfCBvZmYgICAgICAgICAgICAgICAgfCBkYm5hbWU9cmVncmVzc19kb2Vz bm90ZXhpc3QgfCAwLzAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2Ygc3Vic2NyaXB0aW9ucworICAgICAg TmFtZSAgICAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBFbmFibGVkIHwgUHVibGlj YXRpb24gfCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJsZSBv biBlcnJvciB8IE9yaWdpbiB8IFBhc3N3b3JkIHJlcXVpcmVkIHwgUnVuIGFzIG93bmVyPyB8IEZh aWxvdmVyIHwgU3luY2hyb25vdXMgY29tbWl0IHwgICAgICAgICAgQ29ubmluZm8gICAgICAgICAg IHwgSW5jbHVkZSBnZW5lcmF0ZWQgY29sdW1ucyB8IFNraXAgTFNOIAorLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0t LS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLQorIHJlZ3Jlc3NfdGVzdHN1YiB8IHJlZ3Jl c3Nfc3Vic2NyaXB0aW9uX3VzZXIgfCBmICAgICAgIHwge3Rlc3RwdWJ9ICAgfCBmICAgICAgfCBv ZmYgICAgICAgfCBwICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICAgICB8IGFueSAgICB8 IHQgICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICB8IGYgICAgICAgIHwgb2ZmICAgICAg ICAgICAgICAgIHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0IHwgZiAgICAgICAgICAgICAg ICAgICAgICAgICB8IDAvMAogKDEgcm93KQogCiAtLWZhaWwgLSBhbHRlciBvZiB0d29fcGhhc2Ug b3B0aW9uIG5vdCBzdXBwb3J0ZWQuCkBAIC0zODMsMTAgKzM4OSwxMCBAQCBFUlJPUjogIHVucmVj b2duaXplZCBzdWJzY3JpcHRpb24gcGFyYW1ldGVyOiAidHdvX3BoYXNlIgogLS0gYnV0IGNhbiBh bHRlciBzdHJlYW1pbmcgd2hlbiB0d29fcGhhc2UgZW5hYmxlZAogQUxURVIgU1VCU0NSSVBUSU9O IHJlZ3Jlc3NfdGVzdHN1YiBTRVQgKHN0cmVhbWluZyA9IHRydWUpOwogXGRScysKLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIHN1 YnNjcmlwdGlvbnMKLSAgICAgIE5hbWUgICAgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAg IHwgRW5hYmxlZCB8IFB1YmxpY2F0aW9uIHwgQmluYXJ5IHwgU3RyZWFtaW5nIHwgVHdvLXBoYXNl IGNvbW1pdCB8IERpc2FibGUgb24gZXJyb3IgfCBPcmlnaW4gfCBQYXNzd29yZCByZXF1aXJlZCB8 IFJ1biBhcyBvd25lcj8gfCBGYWlsb3ZlciB8IFN5bmNocm9ub3VzIGNvbW1pdCB8ICAgICAgICAg IENvbm5pbmZvICAgICAgICAgICB8IFNraXAgTFNOIAotLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tCi0gcmVn cmVzc190ZXN0c3ViIHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlciB8IGYgICAgICAgfCB7dGVz dHB1Yn0gICB8IGYgICAgICB8IG9uICAgICAgICB8IHAgICAgICAgICAgICAgICAgfCBmICAgICAg ICAgICAgICAgIHwgYW55ICAgIHwgdCAgICAgICAgICAgICAgICAgfCBmICAgICAgICAgICAgIHwg ZiAgICAgICAgfCBvZmYgICAgICAgICAgICAgICAgfCBkYm5hbWU9cmVncmVzc19kb2Vzbm90ZXhp c3QgfCAwLzAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2Ygc3Vic2NyaXB0aW9ucworICAgICAgTmFtZSAg ICAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBFbmFibGVkIHwgUHVibGljYXRpb24g fCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJsZSBvbiBlcnJv ciB8IE9yaWdpbiB8IFBhc3N3b3JkIHJlcXVpcmVkIHwgUnVuIGFzIG93bmVyPyB8IEZhaWxvdmVy IHwgU3luY2hyb25vdXMgY29tbWl0IHwgICAgICAgICAgQ29ubmluZm8gICAgICAgICAgIHwgSW5j bHVkZSBnZW5lcmF0ZWQgY29sdW1ucyB8IFNraXAgTFNOIAorLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0t Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLQorIHJlZ3Jlc3NfdGVzdHN1YiB8IHJlZ3Jlc3Nfc3Vi c2NyaXB0aW9uX3VzZXIgfCBmICAgICAgIHwge3Rlc3RwdWJ9ICAgfCBmICAgICAgfCBvbiAgICAg ICAgfCBwICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICAgICB8IGFueSAgICB8IHQgICAg ICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICB8IGYgICAgICAgIHwgb2ZmICAgICAgICAgICAg ICAgIHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0IHwgZiAgICAgICAgICAgICAgICAgICAg ICAgICB8IDAvMAogKDEgcm93KQogCiBBTFRFUiBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3Vi IFNFVCAoc2xvdF9uYW1lID0gTk9ORSk7CkBAIC0zOTYsMTAgKzQwMiwxMCBAQCBDUkVBVEUgU1VC U0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YiBDT05ORUNUSU9OICdkYm5hbWU9cmVncmVzc19kb2Vz bm90ZXhpc3QnIFBVQgogV0FSTklORzogIHN1YnNjcmlwdGlvbiB3YXMgY3JlYXRlZCwgYnV0IGlz IG5vdCBjb25uZWN0ZWQKIEhJTlQ6ICBUbyBpbml0aWF0ZSByZXBsaWNhdGlvbiwgeW91IG11c3Qg bWFudWFsbHkgY3JlYXRlIHRoZSByZXBsaWNhdGlvbiBzbG90LCBlbmFibGUgdGhlIHN1YnNjcmlw dGlvbiwgYW5kIHJlZnJlc2ggdGhlIHN1YnNjcmlwdGlvbi4KIFxkUnMrCi0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBzdWJzY3Jp cHRpb25zCi0gICAgICBOYW1lICAgICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEVu YWJsZWQgfCBQdWJsaWNhdGlvbiB8IEJpbmFyeSB8IFN0cmVhbWluZyB8IFR3by1waGFzZSBjb21t aXQgfCBEaXNhYmxlIG9uIGVycm9yIHwgT3JpZ2luIHwgUGFzc3dvcmQgcmVxdWlyZWQgfCBSdW4g YXMgb3duZXI/IHwgRmFpbG92ZXIgfCBTeW5jaHJvbm91cyBjb21taXQgfCAgICAgICAgICBDb25u aW5mbyAgICAgICAgICAgfCBTa2lwIExTTiAKLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLQotIHJlZ3Jlc3Nf dGVzdHN1YiB8IHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIgfCBmICAgICAgIHwge3Rlc3RwdWJ9 ICAgfCBmICAgICAgfCBvbiAgICAgICAgfCBwICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAg ICAgICB8IGFueSAgICB8IHQgICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICB8IGYgICAg ICAgIHwgb2ZmICAgICAgICAgICAgICAgIHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0IHwg MC8wCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBMaXN0IG9mIHN1YnNjcmlwdGlvbnMKKyAgICAgIE5hbWUgICAgICAg fCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgRW5hYmxlZCB8IFB1YmxpY2F0aW9uIHwgQmlu YXJ5IHwgU3RyZWFtaW5nIHwgVHdvLXBoYXNlIGNvbW1pdCB8IERpc2FibGUgb24gZXJyb3IgfCBP cmlnaW4gfCBQYXNzd29yZCByZXF1aXJlZCB8IFJ1biBhcyBvd25lcj8gfCBGYWlsb3ZlciB8IFN5 bmNocm9ub3VzIGNvbW1pdCB8ICAgICAgICAgIENvbm5pbmZvICAgICAgICAgICB8IEluY2x1ZGUg Z2VuZXJhdGVkIGNvbHVtbnMgfCBTa2lwIExTTiAKKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0KKyByZWdyZXNzX3Rlc3RzdWIgfCByZWdyZXNzX3N1YnNjcmlw dGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0cHVifSAgIHwgZiAgICAgIHwgb24gICAgICAgIHwg cCAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgICAgfCBhbnkgICAgfCB0ICAgICAgICAg ICAgICAgICB8IGYgICAgICAgICAgICAgfCBmICAgICAgICB8IG9mZiAgICAgICAgICAgICAgICB8 IGRibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCB8IGYgICAgICAgICAgICAgICAgICAgICAgICAg fCAwLzAKICgxIHJvdykKIAogQUxURVIgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YiBTRVQg KHNsb3RfbmFtZSA9IE5PTkUpOwpAQCAtNDEyLDE4ICs0MTgsMTggQEAgQ1JFQVRFIFNVQlNDUklQ VElPTiByZWdyZXNzX3Rlc3RzdWIgQ09OTkVDVElPTiAnZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4 aXN0JyBQVUIKIFdBUk5JTkc6ICBzdWJzY3JpcHRpb24gd2FzIGNyZWF0ZWQsIGJ1dCBpcyBub3Qg Y29ubmVjdGVkCiBISU5UOiAgVG8gaW5pdGlhdGUgcmVwbGljYXRpb24sIHlvdSBtdXN0IG1hbnVh bGx5IGNyZWF0ZSB0aGUgcmVwbGljYXRpb24gc2xvdCwgZW5hYmxlIHRoZSBzdWJzY3JpcHRpb24s IGFuZCByZWZyZXNoIHRoZSBzdWJzY3JpcHRpb24uCiBcZFJzKwotICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2Ygc3Vic2NyaXB0aW9u cwotICAgICAgTmFtZSAgICAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBFbmFibGVk IHwgUHVibGljYXRpb24gfCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwg RGlzYWJsZSBvbiBlcnJvciB8IE9yaWdpbiB8IFBhc3N3b3JkIHJlcXVpcmVkIHwgUnVuIGFzIG93 bmVyPyB8IEZhaWxvdmVyIHwgU3luY2hyb25vdXMgY29tbWl0IHwgICAgICAgICAgQ29ubmluZm8g ICAgICAgICAgIHwgU2tpcCBMU04gCi0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KLSByZWdyZXNzX3Rlc3Rz dWIgfCByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0cHVifSAgIHwg ZiAgICAgIHwgb2ZmICAgICAgIHwgZCAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgICAg fCBhbnkgICAgfCB0ICAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgfCBmICAgICAgICB8 IG9mZiAgICAgICAgICAgICAgICB8IGRibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCB8IDAvMAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTGlzdCBvZiBzdWJzY3JpcHRpb25zCisgICAgICBOYW1lICAgICAgIHwgICAg ICAgICAgIE93bmVyICAgICAgICAgICB8IEVuYWJsZWQgfCBQdWJsaWNhdGlvbiB8IEJpbmFyeSB8 IFN0cmVhbWluZyB8IFR3by1waGFzZSBjb21taXQgfCBEaXNhYmxlIG9uIGVycm9yIHwgT3JpZ2lu IHwgUGFzc3dvcmQgcmVxdWlyZWQgfCBSdW4gYXMgb3duZXI/IHwgRmFpbG92ZXIgfCBTeW5jaHJv bm91cyBjb21taXQgfCAgICAgICAgICBDb25uaW5mbyAgICAgICAgICAgfCBJbmNsdWRlIGdlbmVy YXRlZCBjb2x1bW5zIHwgU2tpcCBMU04gCistLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tCisgcmVncmVzc190ZXN0c3ViIHwgcmVncmVzc19zdWJzY3JpcHRpb25f dXNlciB8IGYgICAgICAgfCB7dGVzdHB1Yn0gICB8IGYgICAgICB8IG9mZiAgICAgICB8IGQgICAg ICAgICAgICAgICAgfCBmICAgICAgICAgICAgICAgIHwgYW55ICAgIHwgdCAgICAgICAgICAgICAg ICAgfCBmICAgICAgICAgICAgIHwgZiAgICAgICAgfCBvZmYgICAgICAgICAgICAgICAgfCBkYm5h bWU9cmVncmVzc19kb2Vzbm90ZXhpc3QgfCBmICAgICAgICAgICAgICAgICAgICAgICAgIHwgMC8w CiAoMSByb3cpCiAKIEFMVEVSIFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWIgU0VUIChkaXNh YmxlX29uX2Vycm9yID0gdHJ1ZSk7CiBcZFJzKwotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2Ygc3Vic2NyaXB0aW9ucwotICAgICAg TmFtZSAgICAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBFbmFibGVkIHwgUHVibGlj YXRpb24gfCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJsZSBv biBlcnJvciB8IE9yaWdpbiB8IFBhc3N3b3JkIHJlcXVpcmVkIHwgUnVuIGFzIG93bmVyPyB8IEZh aWxvdmVyIHwgU3luY2hyb25vdXMgY29tbWl0IHwgICAgICAgICAgQ29ubmluZm8gICAgICAgICAg IHwgU2tpcCBMU04gCi0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KLSByZWdyZXNzX3Rlc3RzdWIgfCByZWdy ZXNzX3N1YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0cHVifSAgIHwgZiAgICAgIHwg b2ZmICAgICAgIHwgZCAgICAgICAgICAgICAgICB8IHQgICAgICAgICAgICAgICAgfCBhbnkgICAg fCB0ICAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgfCBmICAgICAgICB8IG9mZiAgICAg ICAgICAgICAgICB8IGRibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCB8IDAvMAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgTGlzdCBvZiBzdWJzY3JpcHRpb25zCisgICAgICBOYW1lICAgICAgIHwgICAgICAgICAgIE93 bmVyICAgICAgICAgICB8IEVuYWJsZWQgfCBQdWJsaWNhdGlvbiB8IEJpbmFyeSB8IFN0cmVhbWlu ZyB8IFR3by1waGFzZSBjb21taXQgfCBEaXNhYmxlIG9uIGVycm9yIHwgT3JpZ2luIHwgUGFzc3dv cmQgcmVxdWlyZWQgfCBSdW4gYXMgb3duZXI/IHwgRmFpbG92ZXIgfCBTeW5jaHJvbm91cyBjb21t aXQgfCAgICAgICAgICBDb25uaW5mbyAgICAgICAgICAgfCBJbmNsdWRlIGdlbmVyYXRlZCBjb2x1 bW5zIHwgU2tpcCBMU04gCistLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tCisgcmVncmVzc190ZXN0c3ViIHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlciB8IGYg ICAgICAgfCB7dGVzdHB1Yn0gICB8IGYgICAgICB8IG9mZiAgICAgICB8IGQgICAgICAgICAgICAg ICAgfCB0ICAgICAgICAgICAgICAgIHwgYW55ICAgIHwgdCAgICAgICAgICAgICAgICAgfCBmICAg ICAgICAgICAgIHwgZiAgICAgICAgfCBvZmYgICAgICAgICAgICAgICAgfCBkYm5hbWU9cmVncmVz c19kb2Vzbm90ZXhpc3QgfCBmICAgICAgICAgICAgICAgICAgICAgICAgIHwgMC8wCiAoMSByb3cp CiAKIEFMVEVSIFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWIgU0VUIChzbG90X25hbWUgPSBO T05FKTsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3B1YmxpY2F0aW9uLnNxbCBi L3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3B1YmxpY2F0aW9uLnNxbAppbmRleCA0NzlkNGYzMjY0Li5i MTg5OWRkYjFhIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9wdWJsaWNhdGlvbi5z cWwKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvcHVibGljYXRpb24uc3FsCkBAIC00MTMsOCAr NDEzLDkgQEAgQUxURVIgUFVCTElDQVRJT04gdGVzdHB1Yl9mb3J0YWJsZSBBREQgVEFCTEUgdGVz dHB1Yl90Ymw1IChhLCB4KTsKIEFMVEVSIFBVQkxJQ0FUSU9OIHRlc3RwdWJfZm9ydGFibGUgQURE IFRBQkxFIHRlc3RwdWJfdGJsNSAoYiwgYyk7CiBVUERBVEUgdGVzdHB1Yl90Ymw1IFNFVCBhID0g MTsKIEFMVEVSIFBVQkxJQ0FUSU9OIHRlc3RwdWJfZm9ydGFibGUgRFJPUCBUQUJMRSB0ZXN0cHVi X3RibDU7Ci0tLSBlcnJvcjogZ2VuZXJhdGVkIGNvbHVtbiAiZCIgY2FuJ3QgYmUgaW4gbGlzdAor LS0gb2s6IGdlbmVyYXRlZCBjb2x1bW5zIGNhbiBiZSBpbiB0aGUgbGlzdCB0b28KIEFMVEVSIFBV QkxJQ0FUSU9OIHRlc3RwdWJfZm9ydGFibGUgQUREIFRBQkxFIHRlc3RwdWJfdGJsNSAoYSwgZCk7 CitBTFRFUiBQVUJMSUNBVElPTiB0ZXN0cHViX2ZvcnRhYmxlIERST1AgVEFCTEUgdGVzdHB1Yl90 Ymw1OwogLS0gZXJyb3I6IHN5c3RlbSBhdHRyaWJ1dGVzICJjdGlkIiBub3QgYWxsb3dlZCBpbiBj b2x1bW4gbGlzdAogQUxURVIgUFVCTElDQVRJT04gdGVzdHB1Yl9mb3J0YWJsZSBBREQgVEFCTEUg dGVzdHB1Yl90Ymw1IChhLCBjdGlkKTsKIC0tIG9rCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdy ZXNzL3NxbC9zdWJzY3JpcHRpb24uc3FsIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvc3Vic2NyaXB0 aW9uLnNxbAppbmRleCAzZTViYTRjYjhjLi5kYmYwNjQ0NzRjIDEwMDY0NAotLS0gYS9zcmMvdGVz dC9yZWdyZXNzL3NxbC9zdWJzY3JpcHRpb24uc3FsCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3Fs L3N1YnNjcmlwdGlvbi5zcWwKQEAgLTYwLDYgKzYwLDEyIEBAIENSRUFURSBTVUJTQ1JJUFRJT04g cmVncmVzc190ZXN0c3ViMiBDT05ORUNUSU9OICdkYm5hbWU9cmVncmVzc19kb2Vzbm90ZXhpc3Qn IFBVCiBDUkVBVEUgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YjIgQ09OTkVDVElPTiAnZGJu YW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0JyBQVUJMSUNBVElPTiB0ZXN0cHViIFdJVEggKHNsb3Rf bmFtZSA9IE5PTkUsIGVuYWJsZWQgPSBmYWxzZSk7CiBDUkVBVEUgU1VCU0NSSVBUSU9OIHJlZ3Jl c3NfdGVzdHN1YjIgQ09OTkVDVElPTiAnZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0JyBQVUJM SUNBVElPTiB0ZXN0cHViIFdJVEggKHNsb3RfbmFtZSA9IE5PTkUsIGNyZWF0ZV9zbG90ID0gZmFs c2UpOwogCistLSBmYWlsIC0gY29weV9kYXRhIGFuZCBpbmNsdWRlX2dlbmVyYXRlZF9jb2x1bW5z IGFyZSBtdXR1YWxseSBleGNsdXNpdmUgb3B0aW9ucworQ1JFQVRFIFNVQlNDUklQVElPTiBzdWIy IENPTk5FQ1RJT04gJ2RibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCcgUFVCTElDQVRJT04gdGVz dHB1YiBXSVRIIChpbmNsdWRlX2dlbmVyYXRlZF9jb2x1bW5zID0gdHJ1ZSk7CisKKy0tIGZhaWwg LSBpbmNsdWRlX2dlbmVyYXRlZF9jb2x1bW5zIG11c3QgYmUgYm9vbGVhbgorQ1JFQVRFIFNVQlND UklQVElPTiByZWdyZXNzX3Rlc3RzdWIgQ09OTkVDVElPTiAnZGJuYW1lPXJlZ3Jlc3NfZG9lc25v dGV4aXN0JyBQVUJMSUNBVElPTiB0ZXN0cHViIFdJVEggKGNvbm5lY3QgPSBmYWxzZSwgaW5jbHVk ZV9nZW5lcmF0ZWRfY29sdW1ucyA9IGZvbyk7CisKIC0tIG9rIC0gd2l0aCBzbG90X25hbWUgPSBO T05FCiBDUkVBVEUgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YjMgQ09OTkVDVElPTiAnZGJu YW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0JyBQVUJMSUNBVElPTiB0ZXN0cHViIFdJVEggKHNsb3Rf bmFtZSA9IE5PTkUsIGNvbm5lY3QgPSBmYWxzZSk7CiAtLSBmYWlsCmRpZmYgLS1naXQgYS9zcmMv dGVzdC9zdWJzY3JpcHRpb24vdC8wMTFfZ2VuZXJhdGVkLnBsIGIvc3JjL3Rlc3Qvc3Vic2NyaXB0 aW9uL3QvMDExX2dlbmVyYXRlZC5wbAppbmRleCA4YjJlNWY0NzA4Li5lNjEyOTcwZjdhIDEwMDY0 NAotLS0gYS9zcmMvdGVzdC9zdWJzY3JpcHRpb24vdC8wMTFfZ2VuZXJhdGVkLnBsCisrKyBiL3Ny Yy90ZXN0L3N1YnNjcmlwdGlvbi90LzAxMV9nZW5lcmF0ZWQucGwKQEAgLTI4LDE2ICsyOCw1MCBA QCAkbm9kZV9zdWJzY3JpYmVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKIAkiQ1JFQVRFIFRBQkxF IHRhYjEgKGEgaW50IFBSSU1BUlkgS0VZLCBiIGludCBHRU5FUkFURUQgQUxXQVlTIEFTIChhICog MjIpIFNUT1JFRCwgYyBpbnQpIgogKTsKIAorIyBwdWJsaXNoZXItc2lkZSB0YWIyIGhhcyBnZW5l cmF0ZWQgY29sICdiJyBidXQgc3Vic2NyaWJlci1zaWRlIHRhYjIgaGFzIE5PTi1nZW5lcmF0ZWQg Y29sICdiJy4KKyRub2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCisJIkNSRUFU RSBUQUJMRSB0YWIyIChhIGludCwgYiBpbnQgR0VORVJBVEVEIEFMV0FZUyBBUyAoYSAqIDIpIFNU T1JFRCkiCispOworCiskbm9kZV9zdWJzY3JpYmVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKKwki Q1JFQVRFIFRBQkxFIHRhYjIgKGEgaW50LCBiIGludCkiCispOworCisjIHB1Ymxpc2hlci1zaWRl IHRhYjMgaGFzIGdlbmVyYXRlZCBjb2wgJ2InIGJ1dCBzdWJzY3JpYmVyLXNpZGUgdGFiMiBoYXMg RElGRkVSRU5UIENPTVBVVEFUSU9OIGdlbmVyYXRlZCBjb2wgJ2InLgorJG5vZGVfcHVibGlzaGVy LT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKKwkiQ1JFQVRFIFRBQkxFIHRhYjMgKGEgaW50LCBiIGlu dCBHRU5FUkFURUQgQUxXQVlTIEFTIChhICsgMTApIFNUT1JFRCkiCispOworCiskbm9kZV9zdWJz Y3JpYmVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKKwkiQ1JFQVRFIFRBQkxFIHRhYjMgKGEgaW50 LCBiIGludCBHRU5FUkFURUQgQUxXQVlTIEFTIChhICsgMjApIFNUT1JFRCkiCispOworCiAjIGRh dGEgZm9yIGluaXRpYWwgc3luYwogCiAkbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgncG9zdGdy ZXMnLAogCSJJTlNFUlQgSU5UTyB0YWIxIChhKSBWQUxVRVMgKDEpLCAoMiksICgzKSIpOworJG5v ZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKKwkiSU5TRVJUIElOVE8gdGFiMiAo YSkgVkFMVUVTICgxKSwgKDIpLCAoMykiKTsKKyRub2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdw b3N0Z3JlcycsCisJIklOU0VSVCBJTlRPIHRhYjMgKGEpIFZBTFVFUyAoMSksICgyKSwgKDMpIik7 CiAKICRub2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCi0JIkNSRUFURSBQVUJM SUNBVElPTiBwdWIxIEZPUiBBTEwgVEFCTEVTIik7CisJIkNSRUFURSBQVUJMSUNBVElPTiBwdWIx IEZPUiBUQUJMRSB0YWIxIik7Ciskbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgncG9zdGdyZXMn LAorCSJDUkVBVEUgUFVCTElDQVRJT04gcHViMiBGT1IgVEFCTEUgdGFiMiIpOworJG5vZGVfcHVi bGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKKwkiQ1JFQVRFIFBVQkxJQ0FUSU9OIHB1YjMg Rk9SIFRBQkxFIHRhYjMiKTsKKwogJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3Jl cycsCi0JIkNSRUFURSBTVUJTQ1JJUFRJT04gc3ViMSBDT05ORUNUSU9OICckcHVibGlzaGVyX2Nv bm5zdHInIFBVQkxJQ0FUSU9OIHB1YjEiCi0pOworCSJDUkVBVEUgU1VCU0NSSVBUSU9OIHN1YjEg Q09OTkVDVElPTiAnJHB1Ymxpc2hlcl9jb25uc3RyJyBQVUJMSUNBVElPTiBwdWIxIik7CisKKyRu b2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAorCSJDUkVBVEUgU1VCU0NSSVBU SU9OIHN1YjIgQ09OTkVDVElPTiAnJHB1Ymxpc2hlcl9jb25uc3RyJyBQVUJMSUNBVElPTiBwdWIy IFdJVEggKGluY2x1ZGVfZ2VuZXJhdGVkX2NvbHVtbnMgPSB0cnVlLCBjb3B5X2RhdGEgPSBmYWxz ZSkiCisJKTsKKworJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCisJIkNS RUFURSBTVUJTQ1JJUFRJT04gc3ViMyBDT05ORUNUSU9OICckcHVibGlzaGVyX2Nvbm5zdHInIFBV QkxJQ0FUSU9OIHB1YjMgV0lUSCAoaW5jbHVkZV9nZW5lcmF0ZWRfY29sdW1ucyA9IHRydWUsIGNv cHlfZGF0YSA9IGZhbHNlKSIKKwkpOwogCiAjIFdhaXQgZm9yIGluaXRpYWwgc3luYyBvZiBhbGwg c3Vic2NyaXB0aW9ucwogJG5vZGVfc3Vic2NyaWJlci0+d2FpdF9mb3Jfc3Vic2NyaXB0aW9uX3N5 bmM7CkBAIC00Nyw2ICs4MSwxMiBAQCBpcyggJHJlc3VsdCwgcXEoMXwyMgogMnw0NAogM3w2Niks ICdnZW5lcmF0ZWQgY29sdW1ucyBpbml0aWFsIHN5bmMnKTsKIAorJHJlc3VsdCA9ICRub2RlX3N1 YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLCAiU0VMRUNUIGEsIGIgRlJPTSB0YWIyIik7 CitpcyggJHJlc3VsdCwgcXEoKSwgJ2dlbmVyYXRlZCBjb2x1bW5zIGluaXRpYWwgc3luYycpOwor CiskcmVzdWx0ID0gJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsICJTRUxF Q1QgYSwgYiBGUk9NIHRhYjMiKTsKK2lzKCAkcmVzdWx0LCBxcSgpLCAnZ2VuZXJhdGVkIGNvbHVt bnMgaW5pdGlhbCBzeW5jJyk7CisKICMgZGF0YSB0byByZXBsaWNhdGUKIAogJG5vZGVfcHVibGlz aGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywgIklOU0VSVCBJTlRPIHRhYjEgVkFMVUVTICg0KSwg KDUpIik7CkBAIC02Miw2ICsxMDIsMjMgQEAgaXMoICRyZXN1bHQsIHFxKDF8MjJ8CiA0fDg4fAog NnwxMzJ8KSwgJ2dlbmVyYXRlZCBjb2x1bW5zIHJlcGxpY2F0ZWQnKTsKIAorJG5vZGVfcHVibGlz aGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywgIklOU0VSVCBJTlRPIHRhYjIgVkFMVUVTICg0KSwg KDUpIik7CisKKyRub2RlX3B1Ymxpc2hlci0+d2FpdF9mb3JfY2F0Y2h1cCgnc3ViMicpOworCisj IHRoZSBjb2x1bW4gd2FzIE5PVCByZXBsaWNhdGVkIGJlY2F1c2UgdGhlIHJlc3VsdCB2YWx1ZSBv ZiAnYidpcyB0aGUgc3Vic2NyaWJlci1zaWRlIGNvbXB1dGVkIHZhbHVlCiskcmVzdWx0ID0gJG5v ZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsICJTRUxFQ1QgYSwgYiBGUk9NIHRh YjIgT1JERVIgQlkgYSIpOworaXMoICRyZXN1bHQsIHFxKDR8OAorNXwxMCksICdjb25maXJtIGdl bmVyYXRlZCBjb2x1bW5zIEFSRSByZXBsaWNhdGVkIHdoZW4gdGhlIHN1YnNjcmliZXItc2lkZSBj b2x1bW4gaXMgbm90IGdlbmVyYXRlZCcpOworCiskbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgn cG9zdGdyZXMnLCAiSU5TRVJUIElOVE8gdGFiMyBWQUxVRVMgKDQpLCAoNSkiKTsKKworJG5vZGVf cHVibGlzaGVyLT53YWl0X2Zvcl9jYXRjaHVwKCdzdWIzJyk7CisKKyRyZXN1bHQgPSAkbm9kZV9z dWJzY3JpYmVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywgIlNFTEVDVCBhLCBiIEZST00gdGFiMyBP UkRFUiBCWSBhIik7CitpcyggJHJlc3VsdCwgcXEoNHwyNAorNXwyNSksICdjb25maXJtIGdlbmVy YXRlZCBjb2x1bW5zIGFyZSBOT1QgcmVwbGljYXRlZCB3aGVuIHRoZSBzdWJzY3JpYmVyLXNpZGUg Y29sdW1uIGlzIGFsc28gZ2VuZXJhdGVkJyk7CisKICMgdHJ5IGl0IHdpdGggYSBzdWJzY3JpYmVy LXNpZGUgdHJpZ2dlcgogCiAkbm9kZV9zdWJzY3JpYmVyLT5zYWZlX3BzcWwoCmRpZmYgLS1naXQg YS9zcmMvdGVzdC9zdWJzY3JpcHRpb24vdC8wMzFfY29sdW1uX2xpc3QucGwgYi9zcmMvdGVzdC9z dWJzY3JpcHRpb24vdC8wMzFfY29sdW1uX2xpc3QucGwKaW5kZXggOWE5N2ZhNTAyMC4uNmU3M2Y4 OTJlOSAxMDA2NDQKLS0tIGEvc3JjL3Rlc3Qvc3Vic2NyaXB0aW9uL3QvMDMxX2NvbHVtbl9saXN0 LnBsCisrKyBiL3NyYy90ZXN0L3N1YnNjcmlwdGlvbi90LzAzMV9jb2x1bW5fbGlzdC5wbApAQCAt MTIwMiw3ICsxMjAyLDcgQEAgJHJlc3VsdCA9ICRub2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKAog aXMoICRyZXN1bHQsIHFxKHQKIHQpLCAnY2hlY2sgdGhlIG51bWJlciBvZiBjb2x1bW5zIGluIHRo ZSBvbGQgdHVwbGUnKTsKIAotIyBURVNUOiBHZW5lcmF0ZWQgYW5kIGRyb3BwZWQgY29sdW1ucyBh cmUgbm90IGNvbnNpZGVyZWQgZm9yIHRoZSBjb2x1bW4gbGlzdC4KKyMgVEVTVDogRHJvcHBlZCBj b2x1bW5zIGFyZSBub3QgY29uc2lkZXJlZCBmb3IgdGhlIGNvbHVtbiBsaXN0LgogIyBTbywgdGhl IHB1YmxpY2F0aW9uIGhhdmluZyBhIGNvbHVtbiBsaXN0IGV4Y2VwdCBmb3IgdGhvc2UgY29sdW1u cyBhbmQgYQogIyBwdWJsaWNhdGlvbiB3aXRob3V0IGFueSBjb2x1bW4gKGFrYSBhbGwgY29sdW1u cyBhcyBwYXJ0IG9mIHRoZSBjb2x1bW5zCiAjIGxpc3QpIGFyZSBjb25zaWRlcmVkIHRvIGhhdmUg dGhlIHNhbWUgY29sdW1uIGxpc3QuCkBAIC0xMjExLDcgKzEyMTEsNyBAQCAkbm9kZV9wdWJsaXNo ZXItPnNhZmVfcHNxbCgKIAlDUkVBVEUgVEFCTEUgdGVzdF9taXhfNCAoYSBpbnQgUFJJTUFSWSBL RVksIGIgaW50LCBjIGludCwgZCBpbnQgR0VORVJBVEVEIEFMV0FZUyBBUyAoYSArIDEpIFNUT1JF RCk7CiAJQUxURVIgVEFCTEUgdGVzdF9taXhfNCBEUk9QIENPTFVNTiBjOwogCi0JQ1JFQVRFIFBV QkxJQ0FUSU9OIHB1Yl9taXhfNyBGT1IgVEFCTEUgdGVzdF9taXhfNCAoYSwgYik7CisJQ1JFQVRF IFBVQkxJQ0FUSU9OIHB1Yl9taXhfNyBGT1IgVEFCTEUgdGVzdF9taXhfNCAoYSwgYiwgZCk7CiAJ Q1JFQVRFIFBVQkxJQ0FUSU9OIHB1Yl9taXhfOCBGT1IgVEFCTEUgdGVzdF9taXhfNDsKIAogCS0t IGluaXRpYWwgZGF0YQotLSAKMi4zNC4xCgo= --000000000000333905061b7e672f--