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.96) (envelope-from ) id 1wCODp-001vwo-0L for pgsql-hackers@arkaria.postgresql.org; Mon, 13 Apr 2026 20:49:29 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wCODn-008i4L-0a for pgsql-hackers@arkaria.postgresql.org; Mon, 13 Apr 2026 20:49:28 +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.96) (envelope-from ) id 1wCODm-008i4C-2W for pgsql-hackers@lists.postgresql.org; Mon, 13 Apr 2026 20:49:27 +0000 Received: from mail-yx1-xb129.google.com ([2607:f8b0:4864:20::b129]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wCODl-00000000uNH-2hnN for pgsql-hackers@lists.postgresql.org; Mon, 13 Apr 2026 20:49:27 +0000 Received: by mail-yx1-xb129.google.com with SMTP id 956f58d0204a3-6501d242e3fso4421421d50.0 for ; Mon, 13 Apr 2026 13:49:25 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776113364; cv=none; d=google.com; s=arc-20240605; b=R/0u13e6bJbGfs3ycbbsVRxtdOm/VGVnH9Q0FUUlMsoktjG/E9URqAiVlExMkwbm86 JFeC2i+MWuIAhh8X+KvvjziEof75XisRiZLRfEXieRJze6R0bdOQlgMGx9P+Kj9u30Vk 4htqxHwxicZodV/jnEcH0INJNZVwxF88ZkUcEha7vi5pVa74SFqX2CxSHZox1HCqppPh KsqJusAKjs4NwyUVsZhtWUi1M6lmQOk4VfwQjRjM4RLsLUFrSUgei7EXJvu0CBh0uaHU C0xaelvJEW5o6thSXbKSxeaq20HDr7rNx1+lZmSPT97VgehD/GtpdGAWOWAVd5N3TbGA eYqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=kq1nlnL72LRWwMlrzmyKNfC1B4JN126Dqt59STjJkLM=; fh=CkKbOWlowTJt7cZJznKU8s84rhXCJCyTKCH2eNf5t30=; b=GzBvLPnTibvExCBPAclSBfIqqn44cA6Z2Yz9xmyk+9cGdL6q0eNAyJO8FOLBkOcbrj TF240weeni7S6T+8vK8b267g1VkTFc+XEzSs4f/dRh/gk8Iz8WTuPLhGSui3A4fmqJZh zMNJ75Psl5ERyI4iZ0nd9QBqMP6xiYr2vHcPWFS0PHFlnN0fQKsgWqk2i68sfJtg82og vlE1pYYQ2+ktc79Kk2SKwd2zQB+5AnudiCw9GT2OmxZu3chkDx3xJ0BaC1Bk8Vs0OHKX g5xp67KAXLHnJkV/1YClVIhGddcaJKVzRh3fdGED/W4MfBZv0klkRT3BsZtJc9p828WX bNfw==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1776113364; x=1776718164; 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=kq1nlnL72LRWwMlrzmyKNfC1B4JN126Dqt59STjJkLM=; b=Dat0kP3wo09szlW7Ef2WoSgRW86SaXS20R8Emp25C5WIFPo6xIFZO8sPxQ0CRD7trd ZKdyblILQ6PO5rpxd3PkwxBwYwms/grsZTbluDv8gRBT8bjkZpyAJ+I1zuUCw4JxrFWO cARkLm+cXJfPW05u2zNPJEshTzfz+ypv+TfgSZGHPaVgoQx7TLDuGFehb0bauuvDIAEA I8465muJyOS6L1cDwoE8OD6AfA5BukwI9a8MtuFj7Te6EUoNB3/2H+5YjKfi5EZwuFTX ba+SfeV1j3dbs+1igCJL5luu5jiEQ8PfTHIsrR1SGHd6qxa/ZzPhaK09Eqw4g9194dCM 3O8Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776113364; x=1776718164; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=kq1nlnL72LRWwMlrzmyKNfC1B4JN126Dqt59STjJkLM=; b=MK2FcZzEPor/7M8tE6BuAwzlLncBa/nziBKWuY1D8qJD7DepWyNe9uuASvyyJxYbqs o2YQLAZwEQkw/EkEY+uDLHCrXMnNDJbIx8Z00yRkNSQOFT6vBQ++hPAj3LaPfYPuMshA TlCkDBFYJFb2kEUiP5J0Lw+walF0+ErWzOUUj1EpiXSGRJmzXiaroKmVCWuisEPvbtnZ R58LKUJQCWpRD0ZsKANoNu2gzZrioxaz8HlKu0/HmaPxr+xfdYGfGY9fmBljKHDRnUAi TApbBSCgUcj9bRnT20cfey6zrEfANzMWVMVtwDH96xx7+Drwczt26zFU2tkn9GjeYbbZ +H7g== X-Gm-Message-State: AOJu0YxGno9Dwpbzj0eek/S5Ag2IESqy1ORN8ZOTjdjIhKWXWS7jfuhH Q+l6FCVXTD8Av+8ETBbTKjUcA2gentFQ0CLOF8E1XOb/9aJ9gRhfEMai5Lda8cXC5ziLKBhRjjm +AVKJp1HstathsaAJ1F0a6HnEkQIVRd8= X-Gm-Gg: AeBDievUbfj08B/uK0HJhFYIVj4ddlY0M12aw5nDRpzDEyKfk3WFIQHUIBcrkQUL97U ic4pxclixSXW4YJEVwgK9DSqLiSKnVF7PIs8SO16gisYchvv6iGAdB4aEPVxVcyNax7u8xWALBL MRfBiUPglsUIsp/jjMmoLLc3JZPlXe23xdjZp08+71Kw6YGZr4Bdy2tHog79pTSlkbrfmcJB0+I fsorxLQ4RRWuuX4+4vp6vsHVbC9EO0rpM3tMtjbuIvY644GZ7wYNx+wfidPEpU5ZjIVnnr1vO70 FTj0ZTc= X-Received: by 2002:a53:ac93:0:b0:64e:e2d7:7c28 with SMTP id 956f58d0204a3-65198b5713bmr14787870d50.41.1776113363599; Mon, 13 Apr 2026 13:49:23 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Lakshmi N Date: Mon, 13 Apr 2026 13:49:12 -0700 X-Gm-Features: AQROBzAB8IF6-3Sj1wZy3z0wBdBfu8eK9b8AMCqvEwPt8Djo8VSBvyHDtNRBYr8 Message-ID: Subject: Re: Show VIRTUAL keyword for virtual generated columns in pg_dump and psql To: "David G. Johnston" Cc: "pgsql-hackers@lists.postgresql.org" , "dean.a.rasheed@gmail.com" , "peter@eisentraut.org" Content-Type: multipart/mixed; boundary="0000000000001ed22d064f5d9ee6" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000001ed22d064f5d9ee6 Content-Type: multipart/alternative; boundary="0000000000001ed22c064f5d9ee4" --0000000000001ed22c064f5d9ee4 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi, On Mon, Apr 13, 2026 at 5:27=E2=80=AFAM David G. Johnston < david.g.johnston@gmail.com> wrote: > On Monday, April 13, 2026, Lakshmi N wrote: >> >> pg_dump and psql's \d currently display stored and virtual generated >> columns asymmetrically: >> > >> >> s_total integer GENERATED ALWAYS AS ((a + b)) STORED >> v_total integer GENERATED ALWAYS AS ((a + b)) >> >> Since VIRTUAL is default most likely this was omitted but with this >> > puts the burden on the reader to identify whether it is STORED or >> VIRTUAL since both kinds coexist in v19. >> > > The output follows existing conventions of not printing extraneous text. > Additionally, storage itself is non-standard so the absence of a modifier > is producing standard-compliant output. I would -1 changing pg_dump on > this basis. I=E2=80=99d be inclined to go with the symmetry/readability = argument > for psql \d though. > Thank you for the feedback! Updated the patch for psql \d only. Regards, Lakshmi --0000000000001ed22c064f5d9ee4 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi,

On Mon, Apr 13, = 2026 at 5:27=E2=80=AFAM David G. Johnston <david.g.johnston@gmail.com> wrote:
On Monday, April 13, 2026, Laksh= mi N <lakshm= in.jhs@gmail.com> wrote:
pg_dump and psql's \d currently d= isplay stored and virtual generated
columns asymmetrically:
<= /div>
<= div dir=3D"ltr">


=C2=A0 =C2=A0 s_total integer GENERA= TED ALWAYS AS ((a + b)) STORED
=C2=A0 =C2=A0 v_total integer GENERATED A= LWAYS AS ((a + b))

Since VIRTUAL is default most likely this was omi= tted but with this
puts the burd= en on the reader to identify whether it is STORED or=C2=A0
VIRTUA= L since both kinds coexist in v19.

The output follows existing conventions of not printing ext= raneous text.=C2=A0 Additionally, storage itself is non-standard so the abs= ence of a modifier is producing standard-compliant output.=C2=A0 I would -1= changing pg_dump on this basis.=C2=A0 I=E2=80=99d be inclined to go with t= he symmetry/readability argument for psql \d though.

Thank you for the feedback! Updated the patch for psql \d o= nly.=C2=A0

=C2=A0Regards,
Lakshmi
<= /div> --0000000000001ed22c064f5d9ee4-- --0000000000001ed22d064f5d9ee6 Content-Type: application/octet-stream; name="0001-Fix-psql-d-to-show-VIRTUAL-keyword-for-generated-col.patch" Content-Disposition: attachment; filename="0001-Fix-psql-d-to-show-VIRTUAL-keyword-for-generated-col.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mnxnze4e0 RnJvbSBkMDYwNmM4ZGI4YjQzMTBjMGJhMmViYzViMWM3MTYwMGZmMTJiYWFkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBMYWtzaG1pIE4gPGxha3NobWluLmpoc0BnbWFpbC5jb20+CkRh dGU6IE1vbiwgMTMgQXByIDIwMjYgMTM6NDM6MzYgLTA3MDAKU3ViamVjdDogW1BBVENIXSBGaXgg cHNxbCBcZCB0byBzaG93IFZJUlRVQUwga2V5d29yZCBmb3IgZ2VuZXJhdGVkIGNvbHVtbnMKCi0t LQogc3JjL2Jpbi9wc3FsL2Rlc2NyaWJlLmMgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICst CiAuLi4vcmVncmVzcy9leHBlY3RlZC9jcmVhdGVfdGFibGVfbGlrZS5vdXQgICAgfCAgMTIgKy0K IC4uLi9yZWdyZXNzL2V4cGVjdGVkL2dlbmVyYXRlZF92aXJ0dWFsLm91dCAgICB8IDI0MCArKysr KysrKystLS0tLS0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgMTI3IGluc2VydGlvbnMoKyksIDEyNyBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmMvYmluL3BzcWwvZGVzY3JpYmUuYyBiL3NyYy9i aW4vcHNxbC9kZXNjcmliZS5jCmluZGV4IGRkMTE3OWVmOTI3Li5lZjhhMzgwOWIxMSAxMDA2NDQK LS0tIGEvc3JjL2Jpbi9wc3FsL2Rlc2NyaWJlLmMKKysrIGIvc3JjL2Jpbi9wc3FsL2Rlc2NyaWJl LmMKQEAgLTIyNjQsNyArMjI2NCw3IEBAIGRlc2NyaWJlT25lVGFibGVEZXRhaWxzKGNvbnN0IGNo YXIgKnNjaGVtYW5hbWUsCiAJCQl9CiAJCQllbHNlIGlmIChnZW5lcmF0ZWRbMF0gPT0gQVRUUklC VVRFX0dFTkVSQVRFRF9WSVJUVUFMKQogCQkJewotCQkJCWRlZmF1bHRfc3RyID0gcHNwcmludGYo ImdlbmVyYXRlZCBhbHdheXMgYXMgKCVzKSIsCisJCQkJZGVmYXVsdF9zdHIgPSBwc3ByaW50Zigi Z2VuZXJhdGVkIGFsd2F5cyBhcyAoJXMpIHZpcnR1YWwiLAogCQkJCQkJCQkJICAgUFFnZXR2YWx1 ZShyZXMsIGksIGF0dHJkZWZfY29sKSk7CiAJCQkJbXVzdGZyZWUgPSB0cnVlOwogCQkJfQpkaWZm IC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9jcmVhdGVfdGFibGVfbGlrZS5vdXQg Yi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2NyZWF0ZV90YWJsZV9saWtlLm91dAppbmRleCA1 NzIwZDE2MGYwNS4uNjdhYzI2MDk0MjYgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhw ZWN0ZWQvY3JlYXRlX3RhYmxlX2xpa2Uub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0 ZWQvY3JlYXRlX3RhYmxlX2xpa2Uub3V0CkBAIC0xMTYsMTEgKzExNiwxMSBAQCBEUk9QIFRBQkxF IHRlc3RfbGlrZV9pZF8xLCB0ZXN0X2xpa2VfaWRfMiwgdGVzdF9saWtlX2lkXzM7CiBDUkVBVEUg VEFCTEUgdGVzdF9saWtlX2dlbl8xIChhIGludCwgYiBpbnQgR0VORVJBVEVEIEFMV0FZUyBBUyAo YSAqIDIpIFNUT1JFRCwgYyBpbnQgR0VORVJBVEVEIEFMV0FZUyBBUyAoYSAqIDMpIFZJUlRVQUwp OwogXGQgdGVzdF9saWtlX2dlbl8xCiAgICAgICAgICAgICAgICAgICAgICAgICBUYWJsZSAicHVi bGljLnRlc3RfbGlrZV9nZW5fMSIKLSBDb2x1bW4gfCAgVHlwZSAgIHwgQ29sbGF0aW9uIHwgTnVs bGFibGUgfCAgICAgICAgICAgICAgRGVmYXVsdCAgICAgICAgICAgICAgIAotLS0tLS0tLS0rLS0t LS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCisgQ29sdW1uIHwgIFR5cGUgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgICAg ICAgICAgICAgICBEZWZhdWx0ICAgICAgICAgICAgICAgCistLS0tLS0tLSstLS0tLS0tLS0rLS0t LS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t CiAgYSAgICAgIHwgaW50ZWdlciB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCiAgYiAgICAgIHwg aW50ZWdlciB8ICAgICAgICAgICB8ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoYSAq IDIpIHN0b3JlZAotIGMgICAgICB8IGludGVnZXIgfCAgICAgICAgICAgfCAgICAgICAgICB8IGdl bmVyYXRlZCBhbHdheXMgYXMgKGEgKiAzKQorIGMgICAgICB8IGludGVnZXIgfCAgICAgICAgICAg fCAgICAgICAgICB8IGdlbmVyYXRlZCBhbHdheXMgYXMgKGEgKiAzKSB2aXJ0dWFsCiAKIElOU0VS VCBJTlRPIHRlc3RfbGlrZV9nZW5fMSAoYSkgVkFMVUVTICgxKTsKIFNFTEVDVCAqIEZST00gdGVz dF9saWtlX2dlbl8xOwpAQCAtMTQ4LDExICsxNDgsMTEgQEAgU0VMRUNUICogRlJPTSB0ZXN0X2xp a2VfZ2VuXzI7CiBDUkVBVEUgVEFCTEUgdGVzdF9saWtlX2dlbl8zIChMSUtFIHRlc3RfbGlrZV9n ZW5fMSBJTkNMVURJTkcgR0VORVJBVEVEKTsKIFxkIHRlc3RfbGlrZV9nZW5fMwogICAgICAgICAg ICAgICAgICAgICAgICAgVGFibGUgInB1YmxpYy50ZXN0X2xpa2VfZ2VuXzMiCi0gQ29sdW1uIHwg IFR5cGUgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgICAgICAgICAgICAgIERlZmF1bHQgICAg ICAgICAgICAgICAKLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIENvbHVtbiB8ICBUeXBlICAgfCBD b2xsYXRpb24gfCBOdWxsYWJsZSB8ICAgICAgICAgICAgICAgRGVmYXVsdCAgICAgICAgICAgICAg IAorLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIGEgICAgICB8IGludGVnZXIgfCAgICAgICAgICAg fCAgICAgICAgICB8IAogIGIgICAgICB8IGludGVnZXIgfCAgICAgICAgICAgfCAgICAgICAgICB8 IGdlbmVyYXRlZCBhbHdheXMgYXMgKGEgKiAyKSBzdG9yZWQKLSBjICAgICAgfCBpbnRlZ2VyIHwg ICAgICAgICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChhICogMykKKyBjICAg ICAgfCBpbnRlZ2VyIHwgICAgICAgICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3YXlzIGFz IChhICogMykgdmlydHVhbAogCiBJTlNFUlQgSU5UTyB0ZXN0X2xpa2VfZ2VuXzMgKGEpIFZBTFVF UyAoMSk7CiBTRUxFQ1QgKiBGUk9NIHRlc3RfbGlrZV9nZW5fMzsKZGlmZiAtLWdpdCBhL3NyYy90 ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvZ2VuZXJhdGVkX3ZpcnR1YWwub3V0IGIvc3JjL3Rlc3QvcmVn cmVzcy9leHBlY3RlZC9nZW5lcmF0ZWRfdmlydHVhbC5vdXQKaW5kZXggMjM0MDYxZmExZjcuLjc5 MGRjOTljYjM0IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2dlbmVyYXRl ZF92aXJ0dWFsLm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2dlbmVyYXRlZF92 aXJ0dWFsLm91dApAQCAtMjAsMTEgKzIwLDExIEBAIFNFTEVDVCB0YWJsZV9uYW1lLCBjb2x1bW5f bmFtZSwgZGVwZW5kZW50X2NvbHVtbiBGUk9NIGluZm9ybWF0aW9uX3NjaGVtYS5jb2x1bW5fCiAo MSByb3cpCiAKIFxkIGd0ZXN0MQotICAgICAgICAgICAgICAgIFRhYmxlICJnZW5lcmF0ZWRfdmly dHVhbF90ZXN0cy5ndGVzdDEiCi0gQ29sdW1uIHwgIFR5cGUgICB8IENvbGxhdGlvbiB8IE51bGxh YmxlIHwgICAgICAgICAgIERlZmF1bHQgICAgICAgICAgIAotLS0tLS0tLS0rLS0tLS0tLS0tKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAg ICAgICAgICAgICAgICAgVGFibGUgImdlbmVyYXRlZF92aXJ0dWFsX3Rlc3RzLmd0ZXN0MSIKKyBD b2x1bW4gfCAgVHlwZSAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCAgICAgICAgICAgICAgIERl ZmF1bHQgICAgICAgICAgICAgICAKKy0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBhICAgICAgfCBp bnRlZ2VyIHwgICAgICAgICAgIHwgbm90IG51bGwgfCAKLSBiICAgICAgfCBpbnRlZ2VyIHwgICAg ICAgICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChhICogMikKKyBiICAgICAg fCBpbnRlZ2VyIHwgICAgICAgICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChh ICogMikgdmlydHVhbAogSW5kZXhlczoKICAgICAiZ3Rlc3QxX3BrZXkiIFBSSU1BUlkgS0VZLCBi dHJlZSAoYSkKIApAQCAtMzEzLDExICszMTMsMTEgQEAgU0VMRUNUICogRlJPTSBndGVzdDFfMTsK ICgwIHJvd3MpCiAKIFxkIGd0ZXN0MV8xCi0gICAgICAgICAgICAgICBUYWJsZSAiZ2VuZXJhdGVk X3ZpcnR1YWxfdGVzdHMuZ3Rlc3QxXzEiCi0gQ29sdW1uIHwgIFR5cGUgICB8IENvbGxhdGlvbiB8 IE51bGxhYmxlIHwgICAgICAgICAgIERlZmF1bHQgICAgICAgICAgIAotLS0tLS0tLS0rLS0tLS0t LS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K KyAgICAgICAgICAgICAgICAgICBUYWJsZSAiZ2VuZXJhdGVkX3ZpcnR1YWxfdGVzdHMuZ3Rlc3Qx XzEiCisgQ29sdW1uIHwgIFR5cGUgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgICAgICAgICAg ICAgICBEZWZhdWx0ICAgICAgICAgICAgICAgCistLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0t LS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgYSAg ICAgIHwgaW50ZWdlciB8ICAgICAgICAgICB8IG5vdCBudWxsIHwgCi0gYiAgICAgIHwgaW50ZWdl ciB8ICAgICAgICAgICB8ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoYSAqIDIpCisg YiAgICAgIHwgaW50ZWdlciB8ICAgICAgICAgICB8ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5 cyBhcyAoYSAqIDIpIHZpcnR1YWwKIEluaGVyaXRzOgogICAgIGd0ZXN0MQogCkBAIC0zNjAsMTIg KzM2MCwxMiBAQCBERVRBSUw6ICBQYXJlbnQgY29sdW1uIGlzIFZJUlRVQUwsIGNoaWxkIGNvbHVt biBpcyBTVE9SRUQuCiBDUkVBVEUgVEFCTEUgZ3Rlc3R4ICh4IGludCwgYiBpbnQgR0VORVJBVEVE IEFMV0FZUyBBUyAoYSAqIDIyKSBWSVJUVUFMKSBJTkhFUklUUyAoZ3Rlc3QxKTsgIC0tIG9rLCBv dmVycmlkZXMgcGFyZW50CiBOT1RJQ0U6ICBtZXJnaW5nIGNvbHVtbiAiYiIgd2l0aCBpbmhlcml0 ZWQgZGVmaW5pdGlvbgogXGQrIGd0ZXN0eAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgVGFibGUgImdlbmVyYXRlZF92aXJ0dWFsX3Rlc3RzLmd0ZXN0eCIKLSBDb2x1bW4gfCAg VHlwZSAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCAgICAgICAgICAgRGVmYXVsdCAgICAgICAg ICAgIHwgU3RvcmFnZSB8IFN0YXRzIHRhcmdldCB8IERlc2NyaXB0aW9uIAotLS0tLS0tLS0rLS0t LS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tCi0gYSAgICAgIHwgaW50 ZWdlciB8ICAgICAgICAgICB8IG5vdCBudWxsIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB8IHBsYWluICAgfCAgICAgICAgICAgICAgfCAKLSBiICAgICAgfCBpbnRlZ2VyIHwgICAgICAg ICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChhICogMjIpIHwgcGxhaW4gICB8 ICAgICAgICAgICAgICB8IAotIHggICAgICB8IGludGVnZXIgfCAgICAgICAgICAgfCAgICAgICAg ICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBwbGFpbiAgIHwgICAgICAgICAgICAg IHwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGFibGUgImdlbmVy YXRlZF92aXJ0dWFsX3Rlc3RzLmd0ZXN0eCIKKyBDb2x1bW4gfCAgVHlwZSAgIHwgQ29sbGF0aW9u IHwgTnVsbGFibGUgfCAgICAgICAgICAgICAgIERlZmF1bHQgICAgICAgICAgICAgICAgfCBTdG9y YWdlIHwgU3RhdHMgdGFyZ2V0IHwgRGVzY3JpcHRpb24gCistLS0tLS0tLSstLS0tLS0tLS0rLS0t LS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLQorIGEgICAgICB8IGludGVn ZXIgfCAgICAgICAgICAgfCBub3QgbnVsbCB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8IHBsYWluICAgfCAgICAgICAgICAgICAgfCAKKyBiICAgICAgfCBpbnRlZ2VyIHwg ICAgICAgICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChhICogMjIpIHZpcnR1 YWwgfCBwbGFpbiAgIHwgICAgICAgICAgICAgIHwgCisgeCAgICAgIHwgaW50ZWdlciB8ICAgICAg ICAgICB8ICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg cGxhaW4gICB8ICAgICAgICAgICAgICB8IAogTm90LW51bGwgY29uc3RyYWludHM6CiAgICAgImd0 ZXN0MV9hX25vdF9udWxsIiBOT1QgTlVMTCAiYSIgKGluaGVyaXRlZCkKIEluaGVyaXRzOgpAQCAt NDE0LDExICs0MTQsMTEgQEAgTk9USUNFOiAgbWVyZ2luZyBtdWx0aXBsZSBpbmhlcml0ZWQgZGVm aW5pdGlvbnMgb2YgY29sdW1uICJiIgogTk9USUNFOiAgbW92aW5nIGFuZCBtZXJnaW5nIGNvbHVt biAiYiIgd2l0aCBpbmhlcml0ZWQgZGVmaW5pdGlvbgogREVUQUlMOiAgVXNlci1zcGVjaWZpZWQg Y29sdW1uIG1vdmVkIHRvIHRoZSBwb3NpdGlvbiBvZiB0aGUgaW5oZXJpdGVkIGNvbHVtbi4KIFxk IGd0ZXN0MV95Ci0gICAgICAgICAgICAgICBUYWJsZSAiZ2VuZXJhdGVkX3ZpcnR1YWxfdGVzdHMu Z3Rlc3QxX3kiCi0gQ29sdW1uIHwgIFR5cGUgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgICAg ICAgICAgIERlZmF1bHQgICAgICAgICAgIAotLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAgICAgICAgICAg ICAgICBUYWJsZSAiZ2VuZXJhdGVkX3ZpcnR1YWxfdGVzdHMuZ3Rlc3QxX3kiCisgQ29sdW1uIHwg IFR5cGUgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgICAgICAgICAgICAgICBEZWZhdWx0ICAg ICAgICAgICAgICAgCistLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgYSAgICAgIHwgaW50ZWdlciB8 ICAgICAgICAgICB8IG5vdCBudWxsIHwgCi0gYiAgICAgIHwgaW50ZWdlciB8ICAgICAgICAgICB8 ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoeCArIDEpCisgYiAgICAgIHwgaW50ZWdl ciB8ICAgICAgICAgICB8ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoeCArIDEpIHZp cnR1YWwKICB4ICAgICAgfCBpbnRlZ2VyIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKIEluaGVy aXRzOgogICAgIGd0ZXN0MQpAQCAtNjU1LDExICs2NTUsMTEgQEAgU0VMRUNUIHBnX3JlbGF0aW9u X2ZpbGVub2RlKCdndGVzdDIwJykgPSA6Z3Rlc3QyMF9maWxlbm9kZSBBUyBpc19zYW1lX2ZpbGU7 CiAoMSByb3cpCiAKIFxkIGd0ZXN0MjAKLSAgICAgICAgICAgICAgICBUYWJsZSAiZ2VuZXJhdGVk X3ZpcnR1YWxfdGVzdHMuZ3Rlc3QyMCIKLSBDb2x1bW4gfCAgVHlwZSAgIHwgQ29sbGF0aW9uIHwg TnVsbGFibGUgfCAgICAgICAgICAgRGVmYXVsdCAgICAgICAgICAgCi0tLS0tLS0tLSstLS0tLS0t LS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQor ICAgICAgICAgICAgICAgICAgICBUYWJsZSAiZ2VuZXJhdGVkX3ZpcnR1YWxfdGVzdHMuZ3Rlc3Qy MCIKKyBDb2x1bW4gfCAgVHlwZSAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCAgICAgICAgICAg ICAgIERlZmF1bHQgICAgICAgICAgICAgICAKKy0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0t LSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBhICAg ICAgfCBpbnRlZ2VyIHwgICAgICAgICAgIHwgbm90IG51bGwgfCAKLSBiICAgICAgfCBpbnRlZ2Vy IHwgICAgICAgICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChhICogNCkKKyBi ICAgICAgfCBpbnRlZ2VyIHwgICAgICAgICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3YXlz IGFzIChhICogNCkgdmlydHVhbAogIGMgICAgICB8IGludGVnZXIgfCAgICAgICAgICAgfCAgICAg ICAgICB8IDExCiBJbmRleGVzOgogICAgICJndGVzdDIwX3BrZXkiIFBSSU1BUlkgS0VZLCBidHJl ZSAoYSkKQEAgLTg5MSwzMCArODkxLDMwIEBAIERST1AgVEFCTEUgZ3Rlc3RfY2hpbGQzOwogQ1JF QVRFIFRBQkxFIGd0ZXN0X2NoaWxkMyAoZjEgZGF0ZSBOT1QgTlVMTCwgZjIgYmlnaW50LCBmMyBi aWdpbnQgR0VORVJBVEVEIEFMV0FZUyBBUyAoZjIgKiAzMykgVklSVFVBTCk7CiBBTFRFUiBUQUJM RSBndGVzdF9wYXJlbnQgQVRUQUNIIFBBUlRJVElPTiBndGVzdF9jaGlsZDMgRk9SIFZBTFVFUyBG Uk9NICgnMjAxNi0wOS0wMScpIFRPICgnMjAxNi0xMC0wMScpOwogXGQgZ3Rlc3RfY2hpbGQKLSAg ICAgICAgICAgICAgVGFibGUgImdlbmVyYXRlZF92aXJ0dWFsX3Rlc3RzLmd0ZXN0X2NoaWxkIgot IENvbHVtbiB8ICBUeXBlICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgICAgICAgICAgIERlZmF1 bHQgICAgICAgICAgICAKLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICAgICAgICAgICAgICBUYWJsZSAi Z2VuZXJhdGVkX3ZpcnR1YWxfdGVzdHMuZ3Rlc3RfY2hpbGQiCisgQ29sdW1uIHwgIFR5cGUgIHwg Q29sbGF0aW9uIHwgTnVsbGFibGUgfCAgICAgICAgICAgICAgIERlZmF1bHQgICAgICAgICAgICAg ICAgCistLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgZjEgICAgIHwgZGF0ZSAgIHwgICAgICAgICAg IHwgbm90IG51bGwgfCAKICBmMiAgICAgfCBiaWdpbnQgfCAgICAgICAgICAgfCAgICAgICAgICB8 IAotIGYzICAgICB8IGJpZ2ludCB8ICAgICAgICAgICB8ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFs d2F5cyBhcyAoZjIgKiAyKQorIGYzICAgICB8IGJpZ2ludCB8ICAgICAgICAgICB8ICAgICAgICAg IHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoZjIgKiAyKSB2aXJ0dWFsCiBQYXJ0aXRpb24gb2Y6IGd0 ZXN0X3BhcmVudCBGT1IgVkFMVUVTIEZST00gKCcwNy0wMS0yMDE2JykgVE8gKCcwOC0wMS0yMDE2 JykKIAogXGQgZ3Rlc3RfY2hpbGQyCi0gICAgICAgICAgICAgIFRhYmxlICJnZW5lcmF0ZWRfdmly dHVhbF90ZXN0cy5ndGVzdF9jaGlsZDIiCi0gQ29sdW1uIHwgIFR5cGUgIHwgQ29sbGF0aW9uIHwg TnVsbGFibGUgfCAgICAgICAgICAgIERlZmF1bHQgICAgICAgICAgICAKLS0tLS0tLS0tKy0tLS0t LS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQorICAgICAgICAgICAgICAgICAgVGFibGUgImdlbmVyYXRlZF92aXJ0dWFsX3Rlc3RzLmd0ZXN0 X2NoaWxkMiIKKyBDb2x1bW4gfCAgVHlwZSAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8ICAgICAg ICAgICAgICAgIERlZmF1bHQgICAgICAgICAgICAgICAgCistLS0tLS0tLSstLS0tLS0tLSstLS0t LS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQogIGYxICAgICB8IGRhdGUgICB8ICAgICAgICAgICB8IG5vdCBudWxsIHwgCiAgZjIgICAgIHwg YmlnaW50IHwgICAgICAgICAgIHwgICAgICAgICAgfCAKLSBmMyAgICAgfCBiaWdpbnQgfCAgICAg ICAgICAgfCAgICAgICAgICB8IGdlbmVyYXRlZCBhbHdheXMgYXMgKGYyICogMjIpCisgZjMgICAg IHwgYmlnaW50IHwgICAgICAgICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChm MiAqIDIyKSB2aXJ0dWFsCiBQYXJ0aXRpb24gb2Y6IGd0ZXN0X3BhcmVudCBGT1IgVkFMVUVTIEZS T00gKCcwOC0wMS0yMDE2JykgVE8gKCcwOS0wMS0yMDE2JykKIAogXGQgZ3Rlc3RfY2hpbGQzCi0g ICAgICAgICAgICAgIFRhYmxlICJnZW5lcmF0ZWRfdmlydHVhbF90ZXN0cy5ndGVzdF9jaGlsZDMi Ci0gQ29sdW1uIHwgIFR5cGUgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCAgICAgICAgICAgIERl ZmF1bHQgICAgICAgICAgICAKLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAgICAgICAgICAgICAgVGFi bGUgImdlbmVyYXRlZF92aXJ0dWFsX3Rlc3RzLmd0ZXN0X2NoaWxkMyIKKyBDb2x1bW4gfCAgVHlw ZSAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8ICAgICAgICAgICAgICAgIERlZmF1bHQgICAgICAg ICAgICAgICAgCistLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIGYxICAgICB8IGRhdGUgICB8ICAg ICAgICAgICB8IG5vdCBudWxsIHwgCiAgZjIgICAgIHwgYmlnaW50IHwgICAgICAgICAgIHwgICAg ICAgICAgfCAKLSBmMyAgICAgfCBiaWdpbnQgfCAgICAgICAgICAgfCAgICAgICAgICB8IGdlbmVy YXRlZCBhbHdheXMgYXMgKGYyICogMzMpCisgZjMgICAgIHwgYmlnaW50IHwgICAgICAgICAgIHwg ICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChmMiAqIDMzKSB2aXJ0dWFsCiBQYXJ0aXRp b24gb2Y6IGd0ZXN0X3BhcmVudCBGT1IgVkFMVUVTIEZST00gKCcwOS0wMS0yMDE2JykgVE8gKCcx MC0wMS0yMDE2JykKIAogSU5TRVJUIElOVE8gZ3Rlc3RfcGFyZW50IChmMSwgZjIpIFZBTFVFUyAo JzIwMTYtMDctMTUnLCAxKTsKQEAgLTk1OSw0MCArOTU5LDQwIEBAIFNFTEVDVCB0YWJsZW9pZDo6 cmVnY2xhc3MsICogRlJPTSBndGVzdF9wYXJlbnQgT1JERVIgQlkgMSwgMiwgMzsKIEFMVEVSIFRB QkxFIE9OTFkgZ3Rlc3RfcGFyZW50IEFMVEVSIENPTFVNTiBmMyBTRVQgRVhQUkVTU0lPTiBBUyAo ZjIgKiA0KTsKIEFMVEVSIFRBQkxFIGd0ZXN0X2NoaWxkIEFMVEVSIENPTFVNTiBmMyBTRVQgRVhQ UkVTU0lPTiBBUyAoZjIgKiAxMCk7CiBcZCBndGVzdF9wYXJlbnQKLSAgICAgICBQYXJ0aXRpb25l ZCB0YWJsZSAiZ2VuZXJhdGVkX3ZpcnR1YWxfdGVzdHMuZ3Rlc3RfcGFyZW50IgotIENvbHVtbiB8 ICBUeXBlICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgICAgICAgICAgIERlZmF1bHQgICAgICAg ICAgICAKLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICAgICAgIFBhcnRpdGlvbmVkIHRhYmxlICJnZW5l cmF0ZWRfdmlydHVhbF90ZXN0cy5ndGVzdF9wYXJlbnQiCisgQ29sdW1uIHwgIFR5cGUgIHwgQ29s bGF0aW9uIHwgTnVsbGFibGUgfCAgICAgICAgICAgICAgIERlZmF1bHQgICAgICAgICAgICAgICAg CistLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgZjEgICAgIHwgZGF0ZSAgIHwgICAgICAgICAgIHwg bm90IG51bGwgfCAKICBmMiAgICAgfCBiaWdpbnQgfCAgICAgICAgICAgfCAgICAgICAgICB8IAot IGYzICAgICB8IGJpZ2ludCB8ICAgICAgICAgICB8ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5 cyBhcyAoZjIgKiA0KQorIGYzICAgICB8IGJpZ2ludCB8ICAgICAgICAgICB8ICAgICAgICAgIHwg Z2VuZXJhdGVkIGFsd2F5cyBhcyAoZjIgKiA0KSB2aXJ0dWFsCiBQYXJ0aXRpb24ga2V5OiBSQU5H RSAoZjEpCiBOdW1iZXIgb2YgcGFydGl0aW9uczogMyAoVXNlIFxkKyB0byBsaXN0IHRoZW0uKQog CiBcZCBndGVzdF9jaGlsZAotICAgICAgICAgICAgICBUYWJsZSAiZ2VuZXJhdGVkX3ZpcnR1YWxf dGVzdHMuZ3Rlc3RfY2hpbGQiCi0gQ29sdW1uIHwgIFR5cGUgIHwgQ29sbGF0aW9uIHwgTnVsbGFi bGUgfCAgICAgICAgICAgIERlZmF1bHQgICAgICAgICAgICAKLS0tLS0tLS0tKy0tLS0tLS0tKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAg ICAgICAgICAgICAgICAgVGFibGUgImdlbmVyYXRlZF92aXJ0dWFsX3Rlc3RzLmd0ZXN0X2NoaWxk IgorIENvbHVtbiB8ICBUeXBlICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgICAgICAgICAgICAg ICAgRGVmYXVsdCAgICAgICAgICAgICAgICAKKy0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgZjEg ICAgIHwgZGF0ZSAgIHwgICAgICAgICAgIHwgbm90IG51bGwgfCAKICBmMiAgICAgfCBiaWdpbnQg fCAgICAgICAgICAgfCAgICAgICAgICB8IAotIGYzICAgICB8IGJpZ2ludCB8ICAgICAgICAgICB8 ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoZjIgKiAxMCkKKyBmMyAgICAgfCBiaWdp bnQgfCAgICAgICAgICAgfCAgICAgICAgICB8IGdlbmVyYXRlZCBhbHdheXMgYXMgKGYyICogMTAp IHZpcnR1YWwKIFBhcnRpdGlvbiBvZjogZ3Rlc3RfcGFyZW50IEZPUiBWQUxVRVMgRlJPTSAoJzA3 LTAxLTIwMTYnKSBUTyAoJzA4LTAxLTIwMTYnKQogCiBcZCBndGVzdF9jaGlsZDIKLSAgICAgICAg ICAgICAgVGFibGUgImdlbmVyYXRlZF92aXJ0dWFsX3Rlc3RzLmd0ZXN0X2NoaWxkMiIKLSBDb2x1 bW4gfCAgVHlwZSAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8ICAgICAgICAgICAgRGVmYXVsdCAg ICAgICAgICAgIAotLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICAgICAgICAgICAgICBUYWJsZSAiZ2Vu ZXJhdGVkX3ZpcnR1YWxfdGVzdHMuZ3Rlc3RfY2hpbGQyIgorIENvbHVtbiB8ICBUeXBlICB8IENv bGxhdGlvbiB8IE51bGxhYmxlIHwgICAgICAgICAgICAgICAgRGVmYXVsdCAgICAgICAgICAgICAg ICAKKy0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgZjEgICAgIHwgZGF0ZSAgIHwgICAgICAgICAg IHwgbm90IG51bGwgfCAKICBmMiAgICAgfCBiaWdpbnQgfCAgICAgICAgICAgfCAgICAgICAgICB8 IAotIGYzICAgICB8IGJpZ2ludCB8ICAgICAgICAgICB8ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFs d2F5cyBhcyAoZjIgKiAyMikKKyBmMyAgICAgfCBiaWdpbnQgfCAgICAgICAgICAgfCAgICAgICAg ICB8IGdlbmVyYXRlZCBhbHdheXMgYXMgKGYyICogMjIpIHZpcnR1YWwKIFBhcnRpdGlvbiBvZjog Z3Rlc3RfcGFyZW50IEZPUiBWQUxVRVMgRlJPTSAoJzA4LTAxLTIwMTYnKSBUTyAoJzA5LTAxLTIw MTYnKQogCiBcZCBndGVzdF9jaGlsZDMKLSAgICAgICAgICAgICAgVGFibGUgImdlbmVyYXRlZF92 aXJ0dWFsX3Rlc3RzLmd0ZXN0X2NoaWxkMyIKLSBDb2x1bW4gfCAgVHlwZSAgfCBDb2xsYXRpb24g fCBOdWxsYWJsZSB8ICAgICAgICAgICAgRGVmYXVsdCAgICAgICAgICAgIAotLS0tLS0tLS0rLS0t LS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCisgICAgICAgICAgICAgICAgICBUYWJsZSAiZ2VuZXJhdGVkX3ZpcnR1YWxfdGVzdHMuZ3Rl c3RfY2hpbGQzIgorIENvbHVtbiB8ICBUeXBlICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgICAg ICAgICAgICAgICAgRGVmYXVsdCAgICAgICAgICAgICAgICAKKy0tLS0tLS0tKy0tLS0tLS0tKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCiAgZjEgICAgIHwgZGF0ZSAgIHwgICAgICAgICAgIHwgbm90IG51bGwgfCAKICBmMiAgICAg fCBiaWdpbnQgfCAgICAgICAgICAgfCAgICAgICAgICB8IAotIGYzICAgICB8IGJpZ2ludCB8ICAg ICAgICAgICB8ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoZjIgKiAzMykKKyBmMyAg ICAgfCBiaWdpbnQgfCAgICAgICAgICAgfCAgICAgICAgICB8IGdlbmVyYXRlZCBhbHdheXMgYXMg KGYyICogMzMpIHZpcnR1YWwKIFBhcnRpdGlvbiBvZjogZ3Rlc3RfcGFyZW50IEZPUiBWQUxVRVMg RlJPTSAoJzA5LTAxLTIwMTYnKSBUTyAoJzEwLTAxLTIwMTYnKQogCiBTRUxFQ1QgdGFibGVvaWQ6 OnJlZ2NsYXNzLCAqIEZST00gZ3Rlc3RfcGFyZW50IE9SREVSIEJZIDEsIDIsIDM7CkBAIC0xMDE1 LDQwICsxMDE1LDQwIEBAIEFMVEVSIFRBQkxFIGd0ZXN0X3BhcmVudCBEUk9QIENPTlNUUkFJTlQg Y2M7CiAtLSBhbHRlciBnZW5lcmF0aW9uIGV4cHJlc3Npb24gb2YgcGFyZW50IGFuZCBhbGwgaXRz IGNoaWxkcmVuIGFsdG9nZXRoZXIKIEFMVEVSIFRBQkxFIGd0ZXN0X3BhcmVudCBBTFRFUiBDT0xV TU4gZjMgU0VUIEVYUFJFU1NJT04gQVMgKGYyICogMik7CiBcZCBndGVzdF9wYXJlbnQKLSAgICAg ICBQYXJ0aXRpb25lZCB0YWJsZSAiZ2VuZXJhdGVkX3ZpcnR1YWxfdGVzdHMuZ3Rlc3RfcGFyZW50 IgotIENvbHVtbiB8ICBUeXBlICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgICAgICAgICAgIERl ZmF1bHQgICAgICAgICAgICAKLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICAgICAgIFBhcnRpdGlvbmVk IHRhYmxlICJnZW5lcmF0ZWRfdmlydHVhbF90ZXN0cy5ndGVzdF9wYXJlbnQiCisgQ29sdW1uIHwg IFR5cGUgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCAgICAgICAgICAgICAgIERlZmF1bHQgICAg ICAgICAgICAgICAgCistLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgZjEgICAgIHwgZGF0ZSAgIHwg ICAgICAgICAgIHwgbm90IG51bGwgfCAKICBmMiAgICAgfCBiaWdpbnQgfCAgICAgICAgICAgfCAg ICAgICAgICB8IAotIGYzICAgICB8IGJpZ2ludCB8ICAgICAgICAgICB8ICAgICAgICAgIHwgZ2Vu ZXJhdGVkIGFsd2F5cyBhcyAoZjIgKiAyKQorIGYzICAgICB8IGJpZ2ludCB8ICAgICAgICAgICB8 ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoZjIgKiAyKSB2aXJ0dWFsCiBQYXJ0aXRp b24ga2V5OiBSQU5HRSAoZjEpCiBOdW1iZXIgb2YgcGFydGl0aW9uczogMyAoVXNlIFxkKyB0byBs aXN0IHRoZW0uKQogCiBcZCBndGVzdF9jaGlsZAotICAgICAgICAgICAgICBUYWJsZSAiZ2VuZXJh dGVkX3ZpcnR1YWxfdGVzdHMuZ3Rlc3RfY2hpbGQiCi0gQ29sdW1uIHwgIFR5cGUgIHwgQ29sbGF0 aW9uIHwgTnVsbGFibGUgfCAgICAgICAgICAgRGVmYXVsdCAgICAgICAgICAgIAotLS0tLS0tLS0r LS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0KKyAgICAgICAgICAgICAgICAgIFRhYmxlICJnZW5lcmF0ZWRfdmlydHVhbF90ZXN0cy5n dGVzdF9jaGlsZCIKKyBDb2x1bW4gfCAgVHlwZSAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8ICAg ICAgICAgICAgICAgRGVmYXVsdCAgICAgICAgICAgICAgICAKKy0tLS0tLS0tKy0tLS0tLS0tKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KICBmMSAgICAgfCBkYXRlICAgfCAgICAgICAgICAgfCBub3QgbnVsbCB8IAogIGYyICAgICB8 IGJpZ2ludCB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCi0gZjMgICAgIHwgYmlnaW50IHwgICAg ICAgICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChmMiAqIDIpCisgZjMgICAg IHwgYmlnaW50IHwgICAgICAgICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChm MiAqIDIpIHZpcnR1YWwKIFBhcnRpdGlvbiBvZjogZ3Rlc3RfcGFyZW50IEZPUiBWQUxVRVMgRlJP TSAoJzA3LTAxLTIwMTYnKSBUTyAoJzA4LTAxLTIwMTYnKQogCiBcZCBndGVzdF9jaGlsZDIKLSAg ICAgICAgICAgICBUYWJsZSAiZ2VuZXJhdGVkX3ZpcnR1YWxfdGVzdHMuZ3Rlc3RfY2hpbGQyIgot IENvbHVtbiB8ICBUeXBlICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgICAgICAgICAgIERlZmF1 bHQgICAgICAgICAgICAKLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICAgICAgICAgICAgIFRhYmxlICJn ZW5lcmF0ZWRfdmlydHVhbF90ZXN0cy5ndGVzdF9jaGlsZDIiCisgQ29sdW1uIHwgIFR5cGUgIHwg Q29sbGF0aW9uIHwgTnVsbGFibGUgfCAgICAgICAgICAgICAgIERlZmF1bHQgICAgICAgICAgICAg ICAgCistLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgZjEgICAgIHwgZGF0ZSAgIHwgICAgICAgICAg IHwgbm90IG51bGwgfCAKICBmMiAgICAgfCBiaWdpbnQgfCAgICAgICAgICAgfCAgICAgICAgICB8 IAotIGYzICAgICB8IGJpZ2ludCB8ICAgICAgICAgICB8ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFs d2F5cyBhcyAoZjIgKiAyKQorIGYzICAgICB8IGJpZ2ludCB8ICAgICAgICAgICB8ICAgICAgICAg IHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoZjIgKiAyKSB2aXJ0dWFsCiBQYXJ0aXRpb24gb2Y6IGd0 ZXN0X3BhcmVudCBGT1IgVkFMVUVTIEZST00gKCcwOC0wMS0yMDE2JykgVE8gKCcwOS0wMS0yMDE2 JykKIAogXGQgZ3Rlc3RfY2hpbGQzCi0gICAgICAgICAgICAgVGFibGUgImdlbmVyYXRlZF92aXJ0 dWFsX3Rlc3RzLmd0ZXN0X2NoaWxkMyIKLSBDb2x1bW4gfCAgVHlwZSAgfCBDb2xsYXRpb24gfCBO dWxsYWJsZSB8ICAgICAgICAgICBEZWZhdWx0ICAgICAgICAgICAgCi0tLS0tLS0tLSstLS0tLS0t LSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQor ICAgICAgICAgICAgICAgICBUYWJsZSAiZ2VuZXJhdGVkX3ZpcnR1YWxfdGVzdHMuZ3Rlc3RfY2hp bGQzIgorIENvbHVtbiB8ICBUeXBlICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgICAgICAgICAg ICAgICBEZWZhdWx0ICAgICAgICAgICAgICAgIAorLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0t LS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIGYx ICAgICB8IGRhdGUgICB8ICAgICAgICAgICB8IG5vdCBudWxsIHwgCiAgZjIgICAgIHwgYmlnaW50 IHwgICAgICAgICAgIHwgICAgICAgICAgfCAKLSBmMyAgICAgfCBiaWdpbnQgfCAgICAgICAgICAg fCAgICAgICAgICB8IGdlbmVyYXRlZCBhbHdheXMgYXMgKGYyICogMikKKyBmMyAgICAgfCBiaWdp bnQgfCAgICAgICAgICAgfCAgICAgICAgICB8IGdlbmVyYXRlZCBhbHdheXMgYXMgKGYyICogMikg dmlydHVhbAogUGFydGl0aW9uIG9mOiBndGVzdF9wYXJlbnQgRk9SIFZBTFVFUyBGUk9NICgnMDkt MDEtMjAxNicpIFRPICgnMTAtMDEtMjAxNicpCiAKIFNFTEVDVCB0YWJsZW9pZDo6cmVnY2xhc3Ms ICogRlJPTSBndGVzdF9wYXJlbnQgT1JERVIgQlkgMSwgMiwgMzsKQEAgLTExMTUsMTUgKzExMTUs MTUgQEAgU0VMRUNUICogRlJPTSBndGVzdDI1IE9SREVSIEJZIGE7CiAoMiByb3dzKQogCiBcZCBn dGVzdDI1Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRhYmxlICJnZW5lcmF0ZWRfdmly dHVhbF90ZXN0cy5ndGVzdDI1IgotIENvbHVtbiB8ICAgICAgIFR5cGUgICAgICAgfCBDb2xsYXRp b24gfCBOdWxsYWJsZSB8ICAgICAgICAgICAgICAgICAgICBEZWZhdWx0ICAgICAgICAgICAgICAg ICAgICAKLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBUYWJsZSAiZ2VuZXJhdGVkX3ZpcnR1YWxfdGVzdHMu Z3Rlc3QyNSIKKyBDb2x1bW4gfCAgICAgICBUeXBlICAgICAgIHwgQ29sbGF0aW9uIHwgTnVsbGFi bGUgfCAgICAgICAgICAgICAgICAgICAgICAgIERlZmF1bHQgICAgICAgICAgICAgICAgICAgICAg ICAKKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBh ICAgICAgfCBpbnRlZ2VyICAgICAgICAgIHwgICAgICAgICAgIHwgbm90IG51bGwgfCAKLSBiICAg ICAgfCBpbnRlZ2VyICAgICAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQg YWx3YXlzIGFzIChhICogMykKKyBiICAgICAgfCBpbnRlZ2VyICAgICAgICAgIHwgICAgICAgICAg IHwgICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChhICogMykgdmlydHVhbAogIGMgICAg ICB8IGludGVnZXIgICAgICAgICAgfCAgICAgICAgICAgfCAgICAgICAgICB8IDQyCi0geCAgICAg IHwgaW50ZWdlciAgICAgICAgICB8ICAgICAgICAgICB8ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFs d2F5cyBhcyAoYyAqIDQpCisgeCAgICAgIHwgaW50ZWdlciAgICAgICAgICB8ICAgICAgICAgICB8 ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoYyAqIDQpIHZpcnR1YWwKICBkICAgICAg fCBkb3VibGUgcHJlY2lzaW9uIHwgICAgICAgICAgIHwgICAgICAgICAgfCAxMDEKLSB5ICAgICAg fCBkb3VibGUgcHJlY2lzaW9uIHwgICAgICAgICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3 YXlzIGFzIChkICogNDo6ZG91YmxlIHByZWNpc2lvbikKKyB5ICAgICAgfCBkb3VibGUgcHJlY2lz aW9uIHwgICAgICAgICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChkICogNDo6 ZG91YmxlIHByZWNpc2lvbikgdmlydHVhbAogSW5kZXhlczoKICAgICAiZ3Rlc3QyNV9wa2V5IiBQ UklNQVJZIEtFWSwgYnRyZWUgKGEpCiAKQEAgLTExMzksMTIgKzExMzksMTIgQEAgRVJST1I6ICBj YW5ub3QgYWx0ZXIgdHlwZSBvZiBhIGNvbHVtbiB1c2VkIGJ5IGEgZ2VuZXJhdGVkIGNvbHVtbgog REVUQUlMOiAgQ29sdW1uICJhIiBpcyB1c2VkIGJ5IGdlbmVyYXRlZCBjb2x1bW4gIngiLgogQUxU RVIgVEFCTEUgZ3Rlc3QyNyBBTFRFUiBDT0xVTU4geCBUWVBFIG51bWVyaWM7CiBcZCBndGVzdDI3 Ci0gICAgICAgICAgICAgICAgICAgIFRhYmxlICJnZW5lcmF0ZWRfdmlydHVhbF90ZXN0cy5ndGVz dDI3IgotIENvbHVtbiB8ICBUeXBlICAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8ICAgICAgICAg ICAgICAgRGVmYXVsdCAgICAgICAgICAgICAgIAotLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0t LS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAg ICAgICAgICAgICAgICAgICAgICAgVGFibGUgImdlbmVyYXRlZF92aXJ0dWFsX3Rlc3RzLmd0ZXN0 MjciCisgQ29sdW1uIHwgIFR5cGUgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgICAgICAgICAg ICAgICAgICAgRGVmYXVsdCAgICAgICAgICAgICAgICAgICAKKy0tLS0tLS0tKy0tLS0tLS0tLSst LS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQogIGEgICAgICB8IGludGVnZXIgfCAgICAgICAgICAgfCAgICAgICAgICB8IAog IGIgICAgICB8IGludGVnZXIgfCAgICAgICAgICAgfCAgICAgICAgICB8IAotIHggICAgICB8IG51 bWVyaWMgfCAgICAgICAgICAgfCAgICAgICAgICB8IGdlbmVyYXRlZCBhbHdheXMgYXMgKCgoYSAr IGIpICogMikpCisgeCAgICAgIHwgbnVtZXJpYyB8ICAgICAgICAgICB8ICAgICAgICAgIHwgZ2Vu ZXJhdGVkIGFsd2F5cyBhcyAoKChhICsgYikgKiAyKSkgdmlydHVhbAogCiBTRUxFQ1QgKiBGUk9N IGd0ZXN0Mjc7CiAgYSB8IGIgIHwgeCAgCkBAIC0xMTc2LDEyICsxMTc2LDEyIEBAIEFMVEVSIFRB QkxFIGd0ZXN0MjcKICAgQUxURVIgQ09MVU1OIGIgVFlQRSBiaWdpbnQsCiAgIEFERCBDT0xVTU4g eCBiaWdpbnQgR0VORVJBVEVEIEFMV0FZUyBBUyAoKGEgKyBiKSAqIDIpIFZJUlRVQUw7CiBcZCBn dGVzdDI3Ci0gICAgICAgICAgICAgICAgICBUYWJsZSAiZ2VuZXJhdGVkX3ZpcnR1YWxfdGVzdHMu Z3Rlc3QyNyIKLSBDb2x1bW4gfCAgVHlwZSAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8ICAgICAg ICAgICAgICBEZWZhdWx0ICAgICAgICAgICAgICAKLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0t LS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAg ICAgICAgICAgICAgICAgICBUYWJsZSAiZ2VuZXJhdGVkX3ZpcnR1YWxfdGVzdHMuZ3Rlc3QyNyIK KyBDb2x1bW4gfCAgVHlwZSAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8ICAgICAgICAgICAgICAg ICAgRGVmYXVsdCAgICAgICAgICAgICAgICAgIAorLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0t LS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t CiAgYSAgICAgIHwgYmlnaW50IHwgICAgICAgICAgIHwgICAgICAgICAgfCAKICBiICAgICAgfCBi aWdpbnQgfCAgICAgICAgICAgfCAgICAgICAgICB8IAotIHggICAgICB8IGJpZ2ludCB8ICAgICAg ICAgICB8ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoKGEgKyBiKSAqIDIpCisgeCAg ICAgIHwgYmlnaW50IHwgICAgICAgICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3YXlzIGFz ICgoYSArIGIpICogMikgdmlydHVhbAogCiAtLSBJZGVhbGx5IHlvdSBjb3VsZCBqdXN0IGRvIHRo aXMsIGJ1dCBub3QgdG9kYXkgKGFuZCBzaG91bGQgeCBjaGFuZ2UgdHlwZT8pOgogQUxURVIgVEFC TEUgZ3Rlc3QyNwpAQCAtMTE5MCwxMiArMTE5MCwxMiBAQCBBTFRFUiBUQUJMRSBndGVzdDI3CiBF UlJPUjogIGNhbm5vdCBhbHRlciB0eXBlIG9mIGEgY29sdW1uIHVzZWQgYnkgYSBnZW5lcmF0ZWQg Y29sdW1uCiBERVRBSUw6ICBDb2x1bW4gImEiIGlzIHVzZWQgYnkgZ2VuZXJhdGVkIGNvbHVtbiAi eCIuCiBcZCBndGVzdDI3Ci0gICAgICAgICAgICAgICAgICBUYWJsZSAiZ2VuZXJhdGVkX3ZpcnR1 YWxfdGVzdHMuZ3Rlc3QyNyIKLSBDb2x1bW4gfCAgVHlwZSAgfCBDb2xsYXRpb24gfCBOdWxsYWJs ZSB8ICAgICAgICAgICAgICBEZWZhdWx0ICAgICAgICAgICAgICAKLS0tLS0tLS0tKy0tLS0tLS0t Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KKyAgICAgICAgICAgICAgICAgICAgICBUYWJsZSAiZ2VuZXJhdGVkX3ZpcnR1YWxfdGVzdHMu Z3Rlc3QyNyIKKyBDb2x1bW4gfCAgVHlwZSAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8ICAgICAg ICAgICAgICAgICAgRGVmYXVsdCAgICAgICAgICAgICAgICAgIAorLS0tLS0tLS0rLS0tLS0tLS0r LS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCiAgYSAgICAgIHwgYmlnaW50IHwgICAgICAgICAgIHwgICAgICAgICAgfCAKICBi ICAgICAgfCBiaWdpbnQgfCAgICAgICAgICAgfCAgICAgICAgICB8IAotIHggICAgICB8IGJpZ2lu dCB8ICAgICAgICAgICB8ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoKGEgKyBiKSAq IDIpCisgeCAgICAgIHwgYmlnaW50IHwgICAgICAgICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQg YWx3YXlzIGFzICgoYSArIGIpICogMikgdmlydHVhbAogCiBTRUxFQ1QgKiBGUk9NIGd0ZXN0Mjc7 CiAgYSB8IGIgIHwgeCAgCkBAIC0xMjE4LDExICsxMjE4LDExIEBAIFNFTEVDVCAqIEZST00gZ3Rl c3QyOTsKICgyIHJvd3MpCiAKIFxkIGd0ZXN0MjkKLSAgICAgICAgICAgICAgICBUYWJsZSAiZ2Vu ZXJhdGVkX3ZpcnR1YWxfdGVzdHMuZ3Rlc3QyOSIKLSBDb2x1bW4gfCAgVHlwZSAgIHwgQ29sbGF0 aW9uIHwgTnVsbGFibGUgfCAgICAgICAgICAgRGVmYXVsdCAgICAgICAgICAgCi0tLS0tLS0tLSst LS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQorICAgICAgICAgICAgICAgICAgICBUYWJsZSAiZ2VuZXJhdGVkX3ZpcnR1YWxfdGVzdHMu Z3Rlc3QyOSIKKyBDb2x1bW4gfCAgVHlwZSAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCAgICAg ICAgICAgICAgIERlZmF1bHQgICAgICAgICAgICAgICAKKy0tLS0tLS0tKy0tLS0tLS0tLSstLS0t LS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K ICBhICAgICAgfCBpbnRlZ2VyIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKLSBiICAgICAgfCBp bnRlZ2VyIHwgICAgICAgICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChhICog MikKKyBiICAgICAgfCBpbnRlZ2VyIHwgICAgICAgICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQg YWx3YXlzIGFzIChhICogMikgdmlydHVhbAogCiBBTFRFUiBUQUJMRSBndGVzdDI5IEFMVEVSIENP TFVNTiBhIFNFVCBFWFBSRVNTSU9OIEFTIChhICogMyk7ICAtLSBlcnJvcgogRVJST1I6ICBjb2x1 bW4gImEiIG9mIHJlbGF0aW9uICJndGVzdDI5IiBpcyBub3QgYSBnZW5lcmF0ZWQgY29sdW1uCkBA IC0xMjQwLDExICsxMjQwLDExIEBAIFNFTEVDVCAqIEZST00gZ3Rlc3QyOTsKICgyIHJvd3MpCiAK IFxkIGd0ZXN0MjkKLSAgICAgICAgICAgICAgICBUYWJsZSAiZ2VuZXJhdGVkX3ZpcnR1YWxfdGVz dHMuZ3Rlc3QyOSIKLSBDb2x1bW4gfCAgVHlwZSAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCAg ICAgICAgICAgRGVmYXVsdCAgICAgICAgICAgCi0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0t LS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAgICAgICAg ICAgICAgICBUYWJsZSAiZ2VuZXJhdGVkX3ZpcnR1YWxfdGVzdHMuZ3Rlc3QyOSIKKyBDb2x1bW4g fCAgVHlwZSAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCAgICAgICAgICAgICAgIERlZmF1bHQg ICAgICAgICAgICAgICAKKy0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBhICAgICAgfCBpbnRlZ2Vy IHwgICAgICAgICAgIHwgICAgICAgICAgfCAKLSBiICAgICAgfCBpbnRlZ2VyIHwgICAgICAgICAg IHwgICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChhICogMykKKyBiICAgICAgfCBpbnRl Z2VyIHwgICAgICAgICAgIHwgICAgICAgICAgfCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChhICogMykg dmlydHVhbAogCiBBTFRFUiBUQUJMRSBndGVzdDI5IEFMVEVSIENPTFVNTiBiIERST1AgRVhQUkVT U0lPTjsgIC0tIG5vdCBzdXBwb3J0ZWQKIEVSUk9SOiAgQUxURVIgVEFCTEUgLyBEUk9QIEVYUFJF U1NJT04gaXMgbm90IHN1cHBvcnRlZCBmb3IgdmlydHVhbCBnZW5lcmF0ZWQgY29sdW1ucwpAQCAt MTI2MiwxMSArMTI2MiwxMSBAQCBTRUxFQ1QgKiBGUk9NIGd0ZXN0Mjk7CiAoMyByb3dzKQogCiBc ZCBndGVzdDI5Ci0gICAgICAgICAgICAgICAgVGFibGUgImdlbmVyYXRlZF92aXJ0dWFsX3Rlc3Rz Lmd0ZXN0MjkiCi0gQ29sdW1uIHwgIFR5cGUgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgICAg ICAgICAgIERlZmF1bHQgICAgICAgICAgIAotLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAgICAgICAgICAg ICAgICAgVGFibGUgImdlbmVyYXRlZF92aXJ0dWFsX3Rlc3RzLmd0ZXN0MjkiCisgQ29sdW1uIHwg IFR5cGUgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgICAgICAgICAgICAgICBEZWZhdWx0ICAg ICAgICAgICAgICAgCistLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgYSAgICAgIHwgaW50ZWdlciB8 ICAgICAgICAgICB8ICAgICAgICAgIHwgCi0gYiAgICAgIHwgaW50ZWdlciB8ICAgICAgICAgICB8 ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoYSAqIDMpCisgYiAgICAgIHwgaW50ZWdl ciB8ICAgICAgICAgICB8ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoYSAqIDMpIHZp cnR1YWwKIAogLS0gY2hlY2sgdGhhdCBkZXBlbmRlbmNpZXMgYmV0d2VlbiBjb2x1bW5zIGhhdmUg YWxzbyBiZWVuIHJlbW92ZWQKIC0tQUxURVIgVEFCTEUgZ3Rlc3QyOSBEUk9QIENPTFVNTiBhOyAg LS0gc2hvdWxkIG5vdCBkcm9wIGIKQEAgLTEyODEsMTkgKzEyODEsMTkgQEAgQUxURVIgVEFCTEUg Z3Rlc3QzMCBBTFRFUiBDT0xVTU4gYiBEUk9QIEVYUFJFU1NJT047CiBFUlJPUjogIEFMVEVSIFRB QkxFIC8gRFJPUCBFWFBSRVNTSU9OIGlzIG5vdCBzdXBwb3J0ZWQgZm9yIHZpcnR1YWwgZ2VuZXJh dGVkIGNvbHVtbnMKIERFVEFJTDogIENvbHVtbiAiYiIgb2YgcmVsYXRpb24gImd0ZXN0MzAiIGlz IGEgdmlydHVhbCBnZW5lcmF0ZWQgY29sdW1uLgogXGQgZ3Rlc3QzMAotICAgICAgICAgICAgICAg IFRhYmxlICJnZW5lcmF0ZWRfdmlydHVhbF90ZXN0cy5ndGVzdDMwIgotIENvbHVtbiB8ICBUeXBl ICAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8ICAgICAgICAgICBEZWZhdWx0ICAgICAgICAgICAK LS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tCisgICAgICAgICAgICAgICAgICAgIFRhYmxlICJnZW5lcmF0ZWRfdmly dHVhbF90ZXN0cy5ndGVzdDMwIgorIENvbHVtbiB8ICBUeXBlICAgfCBDb2xsYXRpb24gfCBOdWxs YWJsZSB8ICAgICAgICAgICAgICAgRGVmYXVsdCAgICAgICAgICAgICAgIAorLS0tLS0tLS0rLS0t LS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQogIGEgICAgICB8IGludGVnZXIgfCAgICAgICAgICAgfCAgICAgICAgICB8IAot IGIgICAgICB8IGludGVnZXIgfCAgICAgICAgICAgfCAgICAgICAgICB8IGdlbmVyYXRlZCBhbHdh eXMgYXMgKGEgKiAyKQorIGIgICAgICB8IGludGVnZXIgfCAgICAgICAgICAgfCAgICAgICAgICB8 IGdlbmVyYXRlZCBhbHdheXMgYXMgKGEgKiAyKSB2aXJ0dWFsCiBOdW1iZXIgb2YgY2hpbGQgdGFi bGVzOiAxIChVc2UgXGQrIHRvIGxpc3QgdGhlbS4pCiAKIFxkIGd0ZXN0MzBfMQotICAgICAgICAg ICAgICAgVGFibGUgImdlbmVyYXRlZF92aXJ0dWFsX3Rlc3RzLmd0ZXN0MzBfMSIKLSBDb2x1bW4g fCAgVHlwZSAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCAgICAgICAgICAgRGVmYXVsdCAgICAg ICAgICAgCi0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAgICAgICAgICAgICAgIFRhYmxlICJnZW5lcmF0 ZWRfdmlydHVhbF90ZXN0cy5ndGVzdDMwXzEiCisgQ29sdW1uIHwgIFR5cGUgICB8IENvbGxhdGlv biB8IE51bGxhYmxlIHwgICAgICAgICAgICAgICBEZWZhdWx0ICAgICAgICAgICAgICAgCistLS0t LS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCiAgYSAgICAgIHwgaW50ZWdlciB8ICAgICAgICAgICB8ICAgICAg ICAgIHwgCi0gYiAgICAgIHwgaW50ZWdlciB8ICAgICAgICAgICB8ICAgICAgICAgIHwgZ2VuZXJh dGVkIGFsd2F5cyBhcyAoYSAqIDIpCisgYiAgICAgIHwgaW50ZWdlciB8ICAgICAgICAgICB8ICAg ICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoYSAqIDIpIHZpcnR1YWwKIEluaGVyaXRzOgog ICAgIGd0ZXN0MzAKIApAQCAtMTMwNywxOSArMTMwNywxOSBAQCBDUkVBVEUgVEFCTEUgZ3Rlc3Qz MF8xICgpIElOSEVSSVRTIChndGVzdDMwKTsKIEFMVEVSIFRBQkxFIE9OTFkgZ3Rlc3QzMCBBTFRF UiBDT0xVTU4gYiBEUk9QIEVYUFJFU1NJT047ICAtLSBlcnJvcgogRVJST1I6ICBBTFRFUiBUQUJM RSAvIERST1AgRVhQUkVTU0lPTiBtdXN0IGJlIGFwcGxpZWQgdG8gY2hpbGQgdGFibGVzIHRvbwog XGQgZ3Rlc3QzMAotICAgICAgICAgICAgICAgIFRhYmxlICJnZW5lcmF0ZWRfdmlydHVhbF90ZXN0 cy5ndGVzdDMwIgotIENvbHVtbiB8ICBUeXBlICAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8ICAg ICAgICAgICBEZWZhdWx0ICAgICAgICAgICAKLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0t LSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICAgICAgICAg ICAgICAgIFRhYmxlICJnZW5lcmF0ZWRfdmlydHVhbF90ZXN0cy5ndGVzdDMwIgorIENvbHVtbiB8 ICBUeXBlICAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8ICAgICAgICAgICAgICAgRGVmYXVsdCAg ICAgICAgICAgICAgIAorLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIGEgICAgICB8IGludGVnZXIg fCAgICAgICAgICAgfCAgICAgICAgICB8IAotIGIgICAgICB8IGludGVnZXIgfCAgICAgICAgICAg fCAgICAgICAgICB8IGdlbmVyYXRlZCBhbHdheXMgYXMgKGEgKiAyKQorIGIgICAgICB8IGludGVn ZXIgfCAgICAgICAgICAgfCAgICAgICAgICB8IGdlbmVyYXRlZCBhbHdheXMgYXMgKGEgKiAyKSB2 aXJ0dWFsCiBOdW1iZXIgb2YgY2hpbGQgdGFibGVzOiAxIChVc2UgXGQrIHRvIGxpc3QgdGhlbS4p CiAKIFxkIGd0ZXN0MzBfMQotICAgICAgICAgICAgICAgVGFibGUgImdlbmVyYXRlZF92aXJ0dWFs X3Rlc3RzLmd0ZXN0MzBfMSIKLSBDb2x1bW4gfCAgVHlwZSAgIHwgQ29sbGF0aW9uIHwgTnVsbGFi bGUgfCAgICAgICAgICAgRGVmYXVsdCAgICAgICAgICAgCi0tLS0tLS0tLSstLS0tLS0tLS0rLS0t LS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAg ICAgICAgICAgICAgIFRhYmxlICJnZW5lcmF0ZWRfdmlydHVhbF90ZXN0cy5ndGVzdDMwXzEiCisg Q29sdW1uIHwgIFR5cGUgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgICAgICAgICAgICAgICBE ZWZhdWx0ICAgICAgICAgICAgICAgCistLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgYSAgICAgIHwg aW50ZWdlciB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCi0gYiAgICAgIHwgaW50ZWdlciB8ICAg ICAgICAgICB8ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoYSAqIDIpCisgYiAgICAg IHwgaW50ZWdlciB8ICAgICAgICAgICB8ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAo YSAqIDIpIHZpcnR1YWwKIEluaGVyaXRzOgogICAgIGd0ZXN0MzAKIApAQCAtMTUwNiwxOSArMTUw NiwxOSBAQCBDUkVBVEUgVEFCTEUgZ3Rlc3QyOGEgKAogQUxURVIgVEFCTEUgZ3Rlc3QyOGEgRFJP UCBDT0xVTU4gYTsKIENSRUFURSBUQUJMRSBndGVzdDI4YiAoTElLRSBndGVzdDI4YSBJTkNMVURJ TkcgR0VORVJBVEVEKTsKIFxkIGd0ZXN0MjgqCi0gICAgICAgICAgICAgICBUYWJsZSAiZ2VuZXJh dGVkX3ZpcnR1YWxfdGVzdHMuZ3Rlc3QyOGEiCi0gQ29sdW1uIHwgIFR5cGUgICB8IENvbGxhdGlv biB8IE51bGxhYmxlIHwgICAgICAgICAgIERlZmF1bHQgICAgICAgICAgIAotLS0tLS0tLS0rLS0t LS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KKyAgICAgICAgICAgICAgICAgICBUYWJsZSAiZ2VuZXJhdGVkX3ZpcnR1YWxfdGVzdHMuZ3Rl c3QyOGEiCisgQ29sdW1uIHwgIFR5cGUgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgICAgICAg ICAgICAgICBEZWZhdWx0ICAgICAgICAgICAgICAgCistLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0t LS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAg YiAgICAgIHwgaW50ZWdlciB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCiAgYyAgICAgIHwgaW50 ZWdlciB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCi0geCAgICAgIHwgaW50ZWdlciB8ICAgICAg ICAgICB8ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoYiAqIDIpCisgeCAgICAgIHwg aW50ZWdlciB8ICAgICAgICAgICB8ICAgICAgICAgIHwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoYiAq IDIpIHZpcnR1YWwKIAotICAgICAgICAgICAgICAgVGFibGUgImdlbmVyYXRlZF92aXJ0dWFsX3Rl c3RzLmd0ZXN0MjhiIgotIENvbHVtbiB8ICBUeXBlICAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8 ICAgICAgICAgICBEZWZhdWx0ICAgICAgICAgICAKLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0t LS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICAgICAg ICAgICAgICAgVGFibGUgImdlbmVyYXRlZF92aXJ0dWFsX3Rlc3RzLmd0ZXN0MjhiIgorIENvbHVt biB8ICBUeXBlICAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8ICAgICAgICAgICAgICAgRGVmYXVs dCAgICAgICAgICAgICAgIAorLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIGIgICAgICB8IGludGVn ZXIgfCAgICAgICAgICAgfCAgICAgICAgICB8IAogIGMgICAgICB8IGludGVnZXIgfCAgICAgICAg ICAgfCAgICAgICAgICB8IAotIHggICAgICB8IGludGVnZXIgfCAgICAgICAgICAgfCAgICAgICAg ICB8IGdlbmVyYXRlZCBhbHdheXMgYXMgKGIgKiAyKQorIHggICAgICB8IGludGVnZXIgfCAgICAg ICAgICAgfCAgICAgICAgICB8IGdlbmVyYXRlZCBhbHdheXMgYXMgKGIgKiAyKSB2aXJ0dWFsCiAK IC0tIHNhbml0eSBjaGVjayBvZiBzeXN0ZW0gY2F0YWxvZwogU0VMRUNUIGF0dHJlbGlkLCBhdHRu YW1lLCBhdHRnZW5lcmF0ZWQgRlJPTSBwZ19hdHRyaWJ1dGUgV0hFUkUgYXR0Z2VuZXJhdGVkIE5P VCBJTiAoJycsICdzJywgJ3YnKTsKLS0gCjIuNDMuMAoK --0000000000001ed22d064f5d9ee6--