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 1wFDBP-004qWs-0S for pgsql-hackers@arkaria.postgresql.org; Tue, 21 Apr 2026 15:38:39 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wFDBN-009Y5F-2p for pgsql-hackers@arkaria.postgresql.org; Tue, 21 Apr 2026 15:38:37 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wFCDO-009EJU-27 for pgsql-hackers@lists.postgresql.org; Tue, 21 Apr 2026 14:36:38 +0000 Received: from mail-ed1-x531.google.com ([2a00:1450:4864:20::531]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wFCDG-0000000265r-2P5y for pgsql-hackers@postgresql.org; Tue, 21 Apr 2026 14:36:32 +0000 Received: by mail-ed1-x531.google.com with SMTP id 4fb4d7f45d1cf-67389cf78b0so7749918a12.2 for ; Tue, 21 Apr 2026 07:36:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776782187; cv=none; d=google.com; s=arc-20240605; b=LiIefds6cdBCinSJqNAQ9Fui3bksvAHZNFyF8qTR61sSwvCC2dxPraYLHshnD0nGd9 xzSLhwmLCmVOkvw3hTnVdX8foZBB4l/BLumHmS3JZ1flscCx09ehyEzqMclTG8UyBsaR eaybROyg5Y3yLOJZUbKiviB3kfBX8D0oi8ijmML0Jj166RGnewMPW8iJL8FjIA60SwtV X/rXAqHdMN+e2Ve8sxlZqzmbj6Sbuq49R/FTll2Jel8wNdQtOLU9atst6pj1zgMv+7Iw O6xBgd9dJjBxkIx9bsjLdeLWyPi3/tM8Wzh95oj/FN0Jq5APDQlZYzlYYMJKN0Na8IXQ 5VSQ== 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:mime-version:dkim-signature; bh=70PMMBONlkPs1LGe6gpiVq87Kg42HvIzrtPEl/bcwWg=; fh=2UVjl89LtA5MkEbsusZjJl6qO1Zk5t+VpeA0lyQmxvU=; b=VWKAakZSsYok84wBX+virdALWfIWctBL2XiO5qdI0tevpeu9a6pJ4tZJj99wucKx1I l3U0W3M4QYLMgTNjoProWh7SEH3Wf5QWHsyD2HvU6PuOeP3H/RV3zaY4EIr3s6b2QJh3 fIgafaJRC43ua75rCEuDqPGu8GsV4on66ghmUADzqQLOtK/O2180Qlpxcjvx7A1CkrnR dDMxFxKh93lqbY2SOxQGkTbXmxxu813V9kKmpzfvGAvec/MTk+dMKKOFHJ+5fnT+tU1j 75ZTpsUecsmQCvrxuztEMptgDGYuIIghStLWUL1oTGgKCSJJ0U3/EEYMVZC8CisX0ktX ER5w==; darn=postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb.com; s=google; t=1776782187; x=1777386987; darn=postgresql.org; h=cc:to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=70PMMBONlkPs1LGe6gpiVq87Kg42HvIzrtPEl/bcwWg=; b=FlMl7+Td81yNcAqVLchKit0y5jhVymcBMLPb+97sN50MtNvOBslKIOzFbafItcCmg6 Pc90V8PxWh+m7ZRstlJVZO6nUDv2rUb5QSpbfY7dE4CCjcO/ENLzNU485G18EFO0f0Oe 6l49rgO/n1NYkAnM8h2+4A3E3irTECtdOlhhQEkzLrek0ua+J0MMeDEGAoQe/2jtlJjs ppuRUHaZfPFix+HMhrcJGc3H/C3gkECYALzThW3HSlZp9Cgz7tYpre5b/BDQt2k7bvfw lFtupKlU9kCTk9T9FR/L1CwdrTGYpONAhygDaMfGqasBqjAnv3ezbuht9h6SSVwpEvtN nr7w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776782187; x=1777386987; h=cc:to:subject:message-id:date:from:mime-version:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=70PMMBONlkPs1LGe6gpiVq87Kg42HvIzrtPEl/bcwWg=; b=ofCuUSUr74xtcJzwxvINN3iZqHdL47CaT7RfRZwUVWcis295oRpJqiOvFWo+q/gvTT OlFU7VKLnuA+j4cGOi/nYMNwZyTEVlEP4Bs55AIJiw3C8yl5qnr0EmS/MWnyyH2J6L5n HNNcn+UfnEJWm2qs9cNFNDR1ay7CRUK4MKwxBL8Ga0/YT8w+jSxHUw/WNPHwCGRk6s2K SZwp6qKiT9sBCZkv81EUbKAeY7pnAlpWwvm55t1lt7mX4w5q3oOXK5L241sJYrO+8VWz xGRa4hL48f4O11r2/UaPGxYHV46GxMgmYrV1cas3v4Q1wTlMTO5rbqt4QbB1z76sqEES MpAQ== X-Gm-Message-State: AOJu0YxV/Gpv+pVQnIDbR+wgXspCWHQw4QWgNx7GkYuE8DRFA39BMsUc WM5XOmQeclVuhkWiE6a0nXT84bdUZFvM0g1GQpeQ3TnyyGMbxPlS2TgylBPAyp2r2XhBIk7awPM MZJqE4TBZF0ZDND+A+AakNg8rxHqeP+zcSw9+Uy/OKiET/2OrFdsmqG/R X-Gm-Gg: AeBDietd0ysaSlEMtl4w4xPBE48VDB9BTr4ddc2EKsTn3GgZ/Fd/29Y2Pk+Ez3jXzku 8LMp/GCBOc+Wpkk9F3uYeVaI8wmiSfj1Mll9iXQCj101zP3aYgynSgwUjCxmUFNQ1u3O5L4aEEV 5OyTtyNtzsMMKJbhXnjFAXlAQhqTgPnb1IewFn3Ae3HBu8LGU8zxlt76kAfF1EuvPwsFrjsfLge NQiZpjoyD3TEsLJMOoeeknJkfiqPtJwIF4hK4OlslawRT4WotmhVha1mckM/IS+Q8XOl7VmaAKI gH0LW3AHmXxh0RJLBTlJgI63p4XbVDKHRP+kALja9zqOWry30zER8d45+hhFN5IIm+cSHOENfko U4jTliq88cNwiJfIw X-Received: by 2002:a05:6402:4041:10b0:676:9c6d:5c4d with SMTP id 4fb4d7f45d1cf-6769c6d5ed5mr1517208a12.17.1776782187311; Tue, 21 Apr 2026 07:36:27 -0700 (PDT) MIME-Version: 1.0 From: Narek Galstyan Date: Tue, 21 Apr 2026 10:36:11 -0400 X-Gm-Features: AQROBzAHW4SvAIXmOCS35hSkugAKxrW9_O-lx-ImWbsJwhW4qsSSz0yhsPndPxE Message-ID: Subject: Coverage with make coverage-html is broken on latest Debian using lcov v2 To: pgsql-hackers@postgresql.org Cc: "narekg@berkeley.edu" , ngalstyan4@gmail.com Content-Type: multipart/mixed; boundary="0000000000001e8a90064ff9575e" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000001e8a90064ff9575e Content-Type: multipart/alternative; boundary="0000000000001e8a8f064ff9575c" --0000000000001e8a8f064ff9575c Content-Type: text/plain; charset="UTF-8" Hi all, On Debian 13 (trixie), `make coverage-html` command triggers an lcov failure. There have been past reports of this failure in pgsql-hackers here . APT package repositories on Debian 13 default to lcov v2 (2.3.1-1) which is stricter about a few warnings and triggers an error. This commit in lcov details some of the changes for lcov v2, including the stricter error handling (see bullet b)). After applying the attached patches to the current master branch, `make coverage-html` starts working with lcov v2. --- More details: Without applying any of the patches, with --enable-coverage and in-tree build (no vpath), make check && make coverage-html results in the following error: ``` /usr/bin/lcov --gcov-tool /usr/bin/gcov -q --no-external -c -i -d . -d . -o lcov_base.info lcov: ERROR: (usage) duplicate file ./src/backend/access/table/tableam.gcno in both . and . (use "lcov --ignore-errors usage ..." to bypass this error) Message summary: 1 error message: usage: 1 make: *** [src/Makefile.global:1064: lcov_base.info] Error 1 ``` After applying the first patch, I get this error: ``` genhtml: ERROR: (corrupt) unable to read trace file 'lcov_base.info': genhtml: ERROR: (inconsistent) "lcov_base.info":507880: duplicate function 'blockreftable_create' starts on line "/home/admin/postgres/src/include/lib/simplehash.h":450 but previous definition started on 447 while merging lcov_base.info while loading lcov_base.info. (use "genhtml --ignore-errors inconsistent ..." to bypass this error) (use "genhtml --ignore-errors corrupt ..." to bypass this error) make: *** [src/Makefile.global:1055: coverage-html-stamp] Error 1 ``` With the other 2 patches also applied, make check && make coverage-html starts producing proper reports. I tested `make coverage-html` on Debian 13 with lcov v1 and everything worked there as well. Narek -- --0000000000001e8a8f064ff9575c Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi all,

On= Debian 13 (trixie),=C2=A0`make coverage-html` command triggers an lcov fai= lure.
There have been past reports of this failure in pgsql-hackers=C2= =A0here.

<= div>APT package repositories on Debian 13=C2=A0=C2=A0default to lcov v2 (2.= 3.1-1) which is stricter about a few warnings and triggers an error.=C2=A0<= a href=3D"https://github.com/linux-test-project/lcov/commit/5f659f63801ef7f= 94c50a0eb5cffa1ea70f73651" target=3D"_blank">This commit=C2=A0in lcov d= etails some of the changes for lcov v2, including the stricter error handli= ng (see bullet b)).

After applying the attach= ed patches to the current master branch, `make coverage-html`=C2=A0starts w= orking with lcov v2.

---

More details:

Without applying any of = the patches, with --enable-coverage and in-tree build (no vpath), make chec= k && make coverage-html results in the following error:
=
=
```
/usr/bin/lcov --gcov-tool /us= r/bin/gcov -q --no-external -c -i -d . -d . -o lcov_base.info
lcov: ERROR: (usag= e) duplicate file ./src/backend/access/table/tableam.gcno in both . and .
=C2=A0 =C2=A0 =C2=A0 =C2=A0 (use "lcov = --ignore-errors usage ..." to bypass this error)
Message summary:
=C2=A0 1 error = message:
=C2=A0 =C2=A0 usage: 1
=
make: *** [src/Makefile.global:1064: lcov_base.info] Error 1
```
=
After applying the first patch, I get this error:
<= br>
```<= /div>
genhtml: ERROR: (co= rrupt) unable to read trace file 'lco= v_base.info': genhtml: ERROR: (inconsistent) "lcov_base.info":507880: duplicate function '= blockreftable_create' starts on line "/home/admin/postgres/src/inc= lude/lib/simplehash.h":450 but previous definition started on 447 whil= e merging lcov_base.info while loadin= g lcov_base.info.
=C2=A0 =C2=A0 =C2=A0 =C2=A0 (use "g= enhtml --ignore-errors inconsistent ..." to bypass this error)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 = (use "genhtml --ignore-errors corrupt ..." to bypass this error)<= /div>
make: *** [src/Makefi= le.global:1055: coverage-html-stamp] Error 1
<= /blockquote>
```
<= div dir=3D"ltr">

With the other 2 patch= es also applied,=C2=A0make check && make coverage-html starts producing proper reports= .
I tested `make coverage-html` on Debian 13 with lcov v1 = and everything worked there as well.

Narek
--




--0000000000001e8a8f064ff9575c-- --0000000000001e8a90064ff9575e Content-Type: application/octet-stream; name="0003-Regenerate-configure-after-make-coverage-html-fixes-.patch" Content-Disposition: attachment; filename="0003-Regenerate-configure-after-make-coverage-html-fixes-.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mo8q7c892 RnJvbSAzMjIzZWQ1NjYwMmFlMTNmMGNhNmM2ZmJmMmVlYThlZWJjNjExMzc5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYXJlayBHYWxzdHlhbiA8bmFyZWtnQGJlcmtlbGV5LmVkdT4K RGF0ZTogU3VuLCAxOSBBcHIgMjAyNiAyMjoxMToyNSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMy8z XSBSZWdlbmVyYXRlIGNvbmZpZ3VyZSBhZnRlciBtYWtlIGNvdmVyYWdlLWh0bWwgZml4ZXMgZm9y CiBsY292IHYyCgotLS0KIGNvbmZpZ3VyZSB8IDYgKysrKysrCiAxIGZpbGUgY2hhbmdlZCwgNiBp bnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvY29uZmlndXJlIGIvY29uZmlndXJlCmluZGV4IGY2 NmMxMDU0YTdhLi5jMGQyNGJjMTNmZiAxMDA3NTUKLS0tIGEvY29uZmlndXJlCisrKyBiL2NvbmZp Z3VyZQpAQCAtNzc3LDYgKzc3Nyw3IEBAIGVuYWJsZV90YXBfdGVzdHMKIGVuYWJsZV9kdHJhY2UK IERUUkFDRUZMQUdTCiBEVFJBQ0UKK0xDT1ZfRVhUUkFfRkxBR1MKIGVuYWJsZV9jb3ZlcmFnZQog R0VOSFRNTAogTENPVgpAQCAtMzQ3NCw2ICszNDc1LDExIEBAIGZpCiBpZiB0ZXN0IC16ICIkTENP ViI7IHRoZW4KICAgYXNfZm5fZXJyb3IgJD8gImxjb3Ygbm90IGZvdW5kIiAiJExJTkVOTyIgNQog ZmkKK2xjb3ZfdmVyc2lvbj0kKCRMQ09WIC0tdmVyc2lvbiAyPi9kZXYvbnVsbCB8IHNlZCAncy9e LiogLy8nKQorbGNvdl9tYWpvcl92ZXJzaW9uPSQoZWNobyAiJGxjb3ZfdmVyc2lvbiIgfCBzZWQg J3MvXC4uKi8vJykKK2lmIHRlc3QgIiRsY292X21ham9yX3ZlcnNpb24iIC1nZSAyIDI+L2Rldi9u dWxsOyB0aGVuCisgIExDT1ZfRVhUUkFfRkxBR1M9Ii0taWdub3JlLWVycm9ycyBpbmNvbnNpc3Rl bnQscmFuZ2UiCitmaQogaWYgdGVzdCAteiAiJEdFTkhUTUwiOyB0aGVuCiAgIGZvciBhY19wcm9n IGluIGdlbmh0bWwKIGRvCi0tIAoyLjUwLjEgKEFwcGxlIEdpdC0xNTUpCgo= --0000000000001e8a90064ff9575e Content-Type: application/octet-stream; name="0002-Add-minimal-lcov-ignore-errors-flags-to-avoid-make-c.patch" Content-Disposition: attachment; filename="0002-Add-minimal-lcov-ignore-errors-flags-to-avoid-make-c.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mo8q7c861 RnJvbSA0N2M3NzhkM2I4ZDA5ZjllYzg0ZjAzMzZkYjZlYWZkYTE3NWU2M2IzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYXJlayBHYWxzdHlhbiA8bmFyZWtnQGJlcmtlbGV5LmVkdT4K RGF0ZTogU3VuLCAxOSBBcHIgMjAyNiAyMjoxMToyMyAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMi8z XSBBZGQgbWluaW1hbCBsY292IC0taWdub3JlLWVycm9ycyBmbGFncyB0byBhdm9pZCBgbWFrZQog Y292ZXJhZ2UtaHRtbGAgZmFpbHVyZSBvbiBsY292IHYyCgpXaXRob3V0IHRoaXMgY2hhbmdlLCBs Y292IHYyIGZhaWxzIHdpdGg6CgpnZW5odG1sOiBFUlJPUjogKGNvcnJ1cHQpIHVuYWJsZSB0byBy ZWFkIHRyYWNlIGZpbGUgJ2xjb3ZfYmFzZS5pbmZvJzoKZ2VuaHRtbDogRVJST1I6IChpbmNvbnNp c3RlbnQpICJsY292X2Jhc2UuaW5mbyI6NTA3ODgwOiBkdXBsaWNhdGUKZnVuY3Rpb24gJ2Jsb2Nr cmVmdGFibGVfY3JlYXRlJyBzdGFydHMgb24gbGluZQoiL2hvbWUvYWRtaW4vcG9zdGdyZXMvc3Jj L2luY2x1ZGUvbGliL3NpbXBsZWhhc2guaCI6NDUwIGJ1dCBwcmV2aW91cwpkZWZpbml0aW9uIHN0 YXJ0ZWQgb24gNDQ3IHdoaWxlIG1lcmdpbmcgbGNvdl9iYXNlLmluZm8gd2hpbGUgbG9hZGluZwps Y292X2Jhc2UuaW5mby4KICAgICAgICAodXNlICJnZW5odG1sIC0taWdub3JlLWVycm9ycyBpbmNv bnNpc3RlbnQgLi4uIiB0byBieXBhc3MgdGhpcwplcnJvcikKICAgICAgICAodXNlICJnZW5odG1s IC0taWdub3JlLWVycm9ycyBjb3JydXB0IC4uLiIgdG8gYnlwYXNzIHRoaXMgZXJyb3IpCm1ha2U6 ICoqKiBbc3JjL01ha2VmaWxlLmdsb2JhbDoxMDU1OiBjb3ZlcmFnZS1odG1sLXN0YW1wXSBFcnJv ciAxCi0tLQogY29uZmlndXJlLmFjICAgICAgICAgICB8IDYgKysrKysrCiBzcmMvTWFrZWZpbGUu Z2xvYmFsLmluIHwgNCArKy0tCiAyIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9jb25maWd1cmUuYWMgYi9jb25maWd1cmUuYWMKaW5k ZXggOGQxNzZiZDM0NjguLjEyMDA2YjBiNGI2IDEwMDY0NAotLS0gYS9jb25maWd1cmUuYWMKKysr IGIvY29uZmlndXJlLmFjCkBAIC0yMDcsMTEgKzIwNywxNyBAQCBQR0FDX1BBVEhfUFJPR1MoTENP ViwgbGNvdikKIGlmIHRlc3QgLXogIiRMQ09WIjsgdGhlbgogICBBQ19NU0dfRVJST1IoW2xjb3Yg bm90IGZvdW5kXSkKIGZpCitsY292X3ZlcnNpb249JCgkTENPViAtLXZlcnNpb24gMj4vZGV2L251 bGwgfCBzZWQgJ3MvXi4qIC8vJykKK2xjb3ZfbWFqb3JfdmVyc2lvbj0kKGVjaG8gIiRsY292X3Zl cnNpb24iIHwgc2VkICdzL1wuLiovLycpCitpZiB0ZXN0ICIkbGNvdl9tYWpvcl92ZXJzaW9uIiAt Z2UgMiAyPi9kZXYvbnVsbDsgdGhlbgorICBMQ09WX0VYVFJBX0ZMQUdTPSItLWlnbm9yZS1lcnJv cnMgaW5jb25zaXN0ZW50LHJhbmdlIgorZmkKIFBHQUNfUEFUSF9QUk9HUyhHRU5IVE1MLCBnZW5o dG1sKQogaWYgdGVzdCAteiAiJEdFTkhUTUwiOyB0aGVuCiAgIEFDX01TR19FUlJPUihbZ2VuaHRt bCBub3QgZm91bmRdKQogZmldKQogQUNfU1VCU1QoZW5hYmxlX2NvdmVyYWdlKQorQUNfU1VCU1Qo TENPVl9FWFRSQV9GTEFHUykKIAogIwogIyBEVHJhY2UKZGlmZiAtLWdpdCBhL3NyYy9NYWtlZmls ZS5nbG9iYWwuaW4gYi9zcmMvTWFrZWZpbGUuZ2xvYmFsLmluCmluZGV4IGRiZDVmOWQzYzQwLi5l MDc2NjMyNWQ2MCAxMDA2NDQKLS0tIGEvc3JjL01ha2VmaWxlLmdsb2JhbC5pbgorKysgYi9zcmMv TWFrZWZpbGUuZ2xvYmFsLmluCkBAIC0xMDQ3LDcgKzEwNDcsNyBAQCBjb3ZlcmFnZTogJChsb2Nh bF9nY2RhX2ZpbGVzOi5nY2RhPS5jLmdjb3YpCiAuUEhPTlk6IGNvdmVyYWdlLWh0bWwKIGNvdmVy YWdlLWh0bWw6IGNvdmVyYWdlLWh0bWwtc3RhbXAKIAotR0VOSFRNTF9GTEFHUyA9IC1xIC0tbGVn ZW5kCitHRU5IVE1MX0ZMQUdTID0gLXEgLS1sZWdlbmQgQExDT1ZfRVhUUkFfRkxBR1NACiBHRU5I VE1MX1RJVExFID0gUG9zdGdyZVNRTCAkKFZFUlNJT04pCiAKIGNvdmVyYWdlLWh0bWwtc3RhbXA6 IGxjb3ZfYmFzZS5pbmZvIGxjb3ZfdGVzdC5pbmZvCkBAIC0xMDU2LDcgKzEwNTYsNyBAQCBjb3Zl cmFnZS1odG1sLXN0YW1wOiBsY292X2Jhc2UuaW5mbyBsY292X3Rlc3QuaW5mbwogCXRvdWNoICRA CiAKIExDT1YgKz0gLS1nY292LXRvb2wgJChHQ09WKQotTENPVkZMQUdTID0gLXEgLS1uby1leHRl cm5hbAorTENPVkZMQUdTID0gLXEgLS1uby1leHRlcm5hbCBATENPVl9FWFRSQV9GTEFHU0AKIAog YWxsX2djbm9fZmlsZXMgPSAkKHNoZWxsIGZpbmQgLiAtbmFtZSAnKi5nY25vJyAtcHJpbnQpCiAK LS0gCjIuNTAuMSAoQXBwbGUgR2l0LTE1NSkKCg== --0000000000001e8a90064ff9575e Content-Type: application/octet-stream; name="0001-Fix-lcov-duplicate-directory-error-for-non-vpath-bui.patch" Content-Disposition: attachment; filename="0001-Fix-lcov-duplicate-directory-error-for-non-vpath-bui.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mo8q7c7z0 RnJvbSA5NTdhNTFhNGRhZDJjODJlMGNlZDYxYWM1ODEzZjg3YWI2NzUyZGQ3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYXJlayBHYWxzdHlhbiA8bmFyZWtnQGJlcmtlbGV5LmVkdT4K RGF0ZTogU3VuLCAxOSBBcHIgMjAyNiAyMjowNzowMyAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMS8z XSBGaXggbGNvdiBkdXBsaWNhdGUgZGlyZWN0b3J5IGVycm9yIGZvciBub24tdnBhdGggYnVpbGRz CgpGaXhlcyBgbWFrZSBjb3ZlcmFnZS1odG1sYCB0YXJnZXQgb24gbGNvdiB2MiAoZGVmYXVsdCBv biBsYXRlc3QgRGViaWFuKS4KCkNvbW1pdCBjM2Q5YTY2MDI0YTkgYWRkZWQgLWQgJChzcmNkaXIp IHRvIHRoZSBsY292IGNvbW1hbmRzIHRvIHN1cHBvcnQKdnBhdGggYnVpbGRzLCBidXQgZGlkIHNv IHVuY29uZGl0aW9uYWxseS4gRm9yIG5vbi12cGF0aCAoaW4tdHJlZSkKYnVpbGRzLCAkKHNyY2Rp cikgaXMgIi4iLCByZXN1bHRpbmcgaW4gIi1kIC4gLWQgLiIgd2hpY2ggY2F1c2VzIGxjb3YgdG8K ZmFpbCB3aXRoIGEgZHVwbGljYXRlIGZpbGUgZXJyb3IuCmxjb3Y6IEVSUk9SOiAodXNhZ2UpIGR1 cGxpY2F0ZSBmaWxlIC4vc3JjL3BsL3BscGdzcWwvc3JjL3BsX2dyYW0uZ2NubyBpCmJvdGggLiBh bmQgLgogICAgKHVzZSAibGNvdiAtLWlnbm9yZS1lcnJvcnMgdXNhZ2UgLi4uIiB0byBieXBhc3Mg dGhpcyBlcnJvcikKTWVzc2FnZSBzdW1tYXJ5OgogIDEgZXJyb3IgbWVzc2FnZToKICAgIHVzYWdl OiAxClRoZSBmaXggdXNlZCB0aGUgc2FtZSBwYXR0ZXJuIHVzZWQgaW4gY29tbWl0IDVmMzQwY2Iz MGNlMiBmb3IgdGhlCmdlbmh0bWwgLS1wcmVmaXggb3B0aW9uOiBvbmx5IGFkZCAtZCAkKHNyY2Rp cikgd2hlbiB2cGF0aF9idWlsZCBpcyB5ZXMuCi0tLQogc3JjL01ha2VmaWxlLmdsb2JhbC5pbiB8 IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmMvTWFrZWZpbGUuZ2xvYmFsLmluIGIvc3JjL01ha2VmaWxlLmdsb2Jh bC5pbgppbmRleCBjZWYxYWQ3Zjg3ZC4uZGJkNWY5ZDNjNDAgMTAwNjQ0Ci0tLSBhL3NyYy9NYWtl ZmlsZS5nbG9iYWwuaW4KKysrIGIvc3JjL01ha2VmaWxlLmdsb2JhbC5pbgpAQCAtMTA2MSwxMiAr MTA2MSwxMiBAQCBMQ09WRkxBR1MgPSAtcSAtLW5vLWV4dGVybmFsCiBhbGxfZ2Nub19maWxlcyA9 ICQoc2hlbGwgZmluZCAuIC1uYW1lICcqLmdjbm8nIC1wcmludCkKIAogbGNvdl9iYXNlLmluZm86 ICQoYWxsX2djbm9fZmlsZXMpCi0JJChMQ09WKSAkKExDT1ZGTEFHUykgLWMgLWkgLWQgLiAtZCAk KHNyY2RpcikgLW8gJEAKKwkkKExDT1YpICQoTENPVkZMQUdTKSAtYyAtaSAtZCAuICQoaWYgJChm aWx0ZXIgeWVzLCQodnBhdGhfYnVpbGQpKSwtZCAkKHNyY2RpcikpIC1vICRACiAKIGFsbF9nY2Rh X2ZpbGVzID0gJChzaGVsbCBmaW5kIC4gLW5hbWUgJyouZ2NkYScgLXByaW50KQogCiBsY292X3Rl c3QuaW5mbzogJChhbGxfZ2NkYV9maWxlcykKLQkkKExDT1YpICQoTENPVkZMQUdTKSAtYyAtZCAu IC1kICQoc3JjZGlyKSAtbyAkQAorCSQoTENPVikgJChMQ09WRkxBR1MpIC1jIC1kIC4gJChpZiAk KGZpbHRlciB5ZXMsJCh2cGF0aF9idWlsZCkpLC1kICQoc3JjZGlyKSkgLW8gJEAKIAogCiAjIGhv b2sgZm9yIGNsZWFuLXVwCi0tIAoyLjUwLjEgKEFwcGxlIEdpdC0xNTUpCgo= --0000000000001e8a90064ff9575e--