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 1wdmVF-004LLe-38 for pgsql-hackers@arkaria.postgresql.org; Sun, 28 Jun 2026 10:12:42 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wdmVE-00GKVv-1Z for pgsql-hackers@arkaria.postgresql.org; Sun, 28 Jun 2026 10:12:40 +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 1wdmVE-00GKVn-0P for pgsql-hackers@lists.postgresql.org; Sun, 28 Jun 2026 10:12:40 +0000 Received: from mail-ej1-x62e.google.com ([2a00:1450:4864:20::62e]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wdmVB-00000000c1Z-2qIr for pgsql-hackers@postgresql.org; Sun, 28 Jun 2026 10:12:39 +0000 Received: by mail-ej1-x62e.google.com with SMTP id a640c23a62f3a-c125ba77577so23329666b.1 for ; Sun, 28 Jun 2026 03:12:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1782641555; cv=none; d=google.com; s=arc-20260327; b=cR31/Gh81XFJpg7/yM75JSEbRbnH58wTAglZhMTBCAHa3FDgqR2+ImIOil1jRnbLlG GR8donVtBT7gC+vrZAyT3eH3d5WDU4b9LQXlSdb+YJUewC5hQO9VPaklpJx3NdyZJGCm 46OtO0V2LcCZ5Di+zx3pTyWqs59Tc4pbe3EtUf2qxWLMf72+1WkeurX2syDoqPRY3F/w xMaGCc1OXBZEq+t6YXslSZWXLvbNFWGRecF/K0uwly3wp2wbkZXQJbIC2jLnhcvtBWze FCtgyoq64SQ91nO8JB8LrCOUQ3d8eP3B1fs/n92FLP5Ky7X9uT1cEeSagmqnnRzQhwpt wwqw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=cc:to:subject:message-id:date:from:reply-to:in-reply-to:references :mime-version:dkim-signature; bh=kVO0pJWJ92ipYuAwFu0IqrFcrwp6gSr5UBs7ymjoOwA=; fh=+S9tu9gZr/lfsmhY4+6m50ZYEvHxiCA0UleYvwp+dnk=; b=AX3xMcA5XizbkEqR9+cJWyMAW2OwCK5lOEoZ5252Wz2ZRh/ljnuYJOhQ6LNyxiVm5R MJOwE4pFuKnnT+FJ1Vc7HYPeczTtfvZu46l+TrY0c+DSKqTjj5VzjkMD20capOssq0Fq PPT/zrhPPb0kXSlegeWYz8Ty/3XRdSjhpEQ4uKObl7WNOsRcnBqia1Y3UORUilQo1Bzs jYWYacBdS7uzFSPoN+lZb/eXb6swRkRDPptCzSOA5yjU94BtAOxeBXlqUhq+8KXURczj MgsQSlt7T0m4ryPJwU6+A3UreJC7Agh3ivUrqOd/te73CKgnileyi8UI0pIsQKtPQquZ QNAg==; darn=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=1782641555; x=1783246355; darn=postgresql.org; h=cc:to:subject:message-id:date:from:reply-to:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=kVO0pJWJ92ipYuAwFu0IqrFcrwp6gSr5UBs7ymjoOwA=; b=CVVroXUmyb5ymSwP7D4HERAzAr8U37OkSMGYR8qQyzYuzi4tTGyuZwjdnIOX91NxJY ImJqKVg7vfMD7Yb1YJ6wgaveHybzbDAhGpHqgo8/3NoRiZ7aWBOsdTisFkkenWSHhwoG 2gxYCAXIOyIyK4tBCreLt3qlrR2zGpPGLv405jD/0Z8PioRbvkHu+Iy6u/M09oFIDmCo gz0kECpvs5etDwH8QBvbO5BYvyMha68GZOZhpzUs03qbCXiFu8hyuMJGq06wxTMDBv0j d8C5SWeB4maS8as7kd/Erw7A3lWvnugS1EaDArYXHQ35a1FggjLh3tju3V3/HZxVcpXO EmmA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782641555; x=1783246355; h=cc:to:subject:message-id:date:from:reply-to:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=kVO0pJWJ92ipYuAwFu0IqrFcrwp6gSr5UBs7ymjoOwA=; b=YoEcqaRtlrvCirb2vfMCthwtgx5UVBVy64+SYtaEvSy2gK6HTfj/dMdYenhjL5N9HP 325cmUOq+pwcJ6DHO96WqyOZD6IPgGeI5epfb8N4f+knAvRHT8z3Pe9cuIIFVaCD9DaT YWvoQVI33fgA8AQwGodtcUdc5fnfOyEEyH+7IlfGX4MtoX7ki4YgouKAAaDe7DWbTNvo /DL4qASb2MuuAvqq1XnI++DPhJGxzn/tNBFmDSwZV5YbU9EsMSn3J5TBmltI9+Jt0/st w/6ZNpl/sQBcLBuOxTkMnLygRonppF8nSYU8FhZ0I6RjMPsbwms3QOkcOabA1+Wpbdne FXkA== X-Gm-Message-State: AOJu0YzTdeJaFGwdyt1ydRtoT4dsII8knM12Fw4VjbNXjGHDmuMamk5U l+qi9RstfS/+G/rSSFwWiM2kKqsTVguSaY7Kq29+I0A8ewCsC39JXnk7ZtVNuIOgL44rnVbeUMt LWvwjtSJ0xQZ+Mj7pWPZyKt7ox5eQj60= X-Gm-Gg: AfdE7ck3J1mKUV5Co4ZnpPHzPlf3DrP8FMdVwgiCTWz16yIeTJ42XoDiEhBHxZfK8Tm XQpEcYuFZdbadogvLyIUSOn/8nuH0TqVO6R6qQD/ixVEynbCTTbmpQ+Vy9AyQR5PQaF1jBW5MMX 0Q2dT2kcJb71qVt3pkOq+02G0fB7r/rL5wI562thoGybg5txwFuH6quB2Rq4S+j2iUjDN31cRTN gtjcBigalTeII7UauvL0V70i0mat+kNTRAb7go+M0Io4hyd5yajD4WqwGG0UByTQ3LVA6NkWHB3 DeNs/5JC/A1m1bBJQKALUXj2e/Sb10vqXpOj9VmAuoT9UhW9UnhbZaWlRXvoSyN4psb/WWW2D2M kk2ypdcfr9tE= X-Received: by 2002:a17:907:7201:b0:bd5:151d:2d31 with SMTP id a640c23a62f3a-c1205d8ac1dmr733069566b.13.1782641555178; Sun, 28 Jun 2026 03:12:35 -0700 (PDT) MIME-Version: 1.0 References: <20260626.113505.1924699149453988246.ishii@postgresql.org> In-Reply-To: <20260626.113505.1924699149453988246.ishii@postgresql.org> Reply-To: assam258@gmail.com From: Henson Choi Date: Sun, 28 Jun 2026 19:12:22 +0900 X-Gm-Features: AVVi8CdEzix0osmFGAGVaebIF7V13LdwRZPsgHysSQeeblpfRLRg22u8mizqB9c Message-ID: Subject: Re: Row pattern recognition To: Tatsuo Ishii , jian.universality@gmail.com Cc: pgsql-hackers@postgresql.org, zsolt.parragi@percona.com, sjjang112233@gmail.com, vik@postgresfriends.org, er@xs4all.nl, jacob.champion@enterprisedb.com, david.g.johnston@gmail.com, peter@eisentraut.org, li.evan.chao@gmail.com Content-Type: multipart/mixed; boundary="000000000000a8d4ba06554d9411" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000a8d4ba06554d9411 Content-Type: multipart/alternative; boundary="000000000000a8d4b606554d940f" --000000000000a8d4b606554d940f Content-Type: text/plain; charset="UTF-8" Hi Tatsuo, Two things before the next review round. Both aim at the same thing: keeping the v50 diff to what RPR genuinely changes, so the next round reviews RPR on its own merits rather than hunks that drifted in or touch pre-existing window code. First, the cfbot is currently red on v49 across all platforms. The cause is not RPR: master recently reworded the RESPECT/IGNORE NULLS error, which left rpr_base's expected output stale, so the regression diff fails "make check" everywhere. That is exactly the one-line fix you already agreed to fold in; I have posted it here as v50-0021 so the series builds green on its own. This one is required regardless. Second, while going over the v49 diff against master I found several hunks that are either unrelated to RPR or that touch pre-existing window code. I split them into small patches so each can be decided on its own. Patch list ---------- Every patch in this reply. revert-* removes the change from RPR; optional-* re-applies the same change to master separately. v50-0021 cfbot build fix (required regardless) revert-0001 drop unrelated include and stray blank line (required cleanup) revert-0004 restore doc paragraph line wrapping (required cleanup) revert-0002 #2 drop the mark-position diagnostic (your call) optional-0001 #2 land the diagnostic on master revert-0003 #3 restore the funcname guard (your call) optional-0002 #3 land the guard removal on master revert-0005 #5 drop the EXCLUDE TIES tests (your call) optional-0003 #5 land the tests on master Required cleanups ----------------- These only remove changes that crept in but have nothing to do with RPR. I split them out so you can fold them into the feature patch; being required cleanups, I recommend applying them: revert-0001 drop an unrelated "nodes/plannodes.h" include and a stray blank line in eval_windowaggregates() revert-0004 restore the line wrapping of two pre-existing doc paragraphs (advanced.sgml, ref/select.sgml) Your call --------- The next three touch pre-existing window code, so I would rather you decide where each belongs. I prepared the building blocks so you can pick any option: #2 window_gettupleslot() mark-position elog -- add row positions v49 extended the can't-happen error with the pos/markpos values. (a) keep it in RPR -> apply neither patch (b) drop it -> apply revert-0002 (c) land it on master separately -> revert-0002 + optional-0001 A tiny additive diagnostic; I lean to (c), but (a) is fine too. #3 funcname guard in WinCheckAndInitializeNullTreatment() v49 removed the "could not get function name" guard as unreachable. (a) keep the removal in RPR -> apply neither patch (b) restore the guard, drop it -> apply revert-0003 (c) remove it on master separately -> revert-0003 + optional-0002 The branch is genuinely unreachable, but it drops a deliberate guard in pre-existing code, so of the three this one most warrants caution. Preserving the guard via (b) or (c) looks safest, but I will leave the decision to you. #5 EXCLUDE TIES window-frame test coverage Two nth_value/last_value cases. The accounting they exercise already exists on master and the tests pass without RPR, so they are not RPR coverage. (a) keep them in RPR -> apply neither patch (b) land them on master separately -> revert-0005 + optional-0003 I lean to (b). For my part, I will carry out the deeper review against v50 with v50-0021 and revert-0001/0004 applied, plus whichever of the above you choose, as the minimal green baseline. Best, Henson --000000000000a8d4b606554d940f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Tatsuo,

Two things befo= re the next review round.=C2=A0 Both aim at the same thing:
keeping the = v50 diff to what RPR genuinely changes, so the next round
reviews RPR on= its own merits rather than hunks that drifted in or touch
pre-existing = window code.

First, the cfbot is currently red on v49 across all pla= tforms.=C2=A0 The cause
is not RPR: master recently reworded the RESPECT= /IGNORE NULLS error, which
left rpr_base's expected output stale, so= the regression diff fails "make
check" everywhere.=C2=A0 That= is exactly the one-line fix you already agreed to
fold in; I have poste= d it here as v50-0021 so the series builds green on
its own.=C2=A0 This = one is required regardless.

Second, while going over the v49 diff ag= ainst master I found several hunks
that are either unrelated to RPR or t= hat touch pre-existing window code. =C2=A0I
split them into small patche= s so each can be decided on its own.

Patch list
----------
Eve= ry patch in this reply. =C2=A0revert-* removes the change from RPR;
opti= onal-* re-applies the same change to master separately.

=C2=A0 v50-0= 021 =C2=A0 =C2=A0 =C2=A0 cfbot build fix (required regardless)
=C2=A0 re= vert-0001 =C2=A0 =C2=A0drop unrelated include and stray blank line =C2=A0(r= equired cleanup)
=C2=A0 revert-0004 =C2=A0 =C2=A0restore doc paragraph l= ine wrapping =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(required cleanup)
=C2=A0= revert-0002 =C2=A0 =C2=A0#2 drop the mark-position diagnostic =C2=A0 =C2= =A0 =C2=A0 =C2=A0 (your call)
=C2=A0 optional-0001 =C2=A0#2 land the dia= gnostic on master
=C2=A0 revert-0003 =C2=A0 =C2=A0#3 restore the funcnam= e guard =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(your call)<= br>=C2=A0 optional-0002 =C2=A0#3 land the guard removal on master
=C2=A0= revert-0005 =C2=A0 =C2=A0#5 drop the EXCLUDE TIES tests =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (your call)
=C2=A0 optional-0003 =C2=A0#= 5 land the tests on master

Required cleanups
-----------------These only remove changes that crept in but have nothing to do with RPR.I split them out so you can fold them into the feature patch; being
re= quired cleanups, I recommend applying them:

=C2=A0 revert-0001 =C2= =A0 =C2=A0drop an unrelated "nodes/plannodes.h" include and a str= ay
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0blank l= ine in eval_windowaggregates()
=C2=A0 revert-0004 =C2=A0 =C2=A0restore t= he line wrapping of two pre-existing doc
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0paragraphs (advanced.sgml, ref/select.sgml)<= br>
Your call
---------
The next three touch pre-existing window c= ode, so I would rather you decide
where each belongs.=C2=A0 I prepared t= he building blocks so you can pick any
option:

=C2=A0 #2 =C2=A0wi= ndow_gettupleslot() mark-position elog -- add row positions
=C2=A0 =C2= =A0 =C2=A0 v49 extended the can't-happen error with the pos/markpos val= ues.
=C2=A0 =C2=A0 =C2=A0 =C2=A0 (a) keep it in RPR =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 -> apply neither patch
=C2=A0 =C2= =A0 =C2=A0 =C2=A0 (b) drop it =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-> apply revert-0002
=C2=A0 =C2= =A0 =C2=A0 =C2=A0 (c) land it on master separately =C2=A0 -> revert-0002= + optional-0001
=C2=A0 =C2=A0 =C2=A0 A tiny additive diagnostic; I lean= to (c), but (a) is fine too.

=C2=A0 #3 =C2=A0funcname guard in WinC= heckAndInitializeNullTreatment()
=C2=A0 =C2=A0 =C2=A0 v49 removed the &q= uot;could not get function name" guard as unreachable.
=C2=A0 =C2= =A0 =C2=A0 =C2=A0 (a) keep the removal in RPR =C2=A0 =C2=A0 =C2=A0 =C2=A0-&= gt; apply neither patch
=C2=A0 =C2=A0 =C2=A0 =C2=A0 (b) restore the guar= d, drop it =C2=A0 =C2=A0 -> apply revert-0003
=C2=A0 =C2=A0 =C2=A0 = =C2=A0 (c) remove it on master separately -> revert-0003 + optional-0002=
=C2=A0 =C2=A0 =C2=A0 The branch is genuinely unreachable, but it drops = a deliberate guard
=C2=A0 =C2=A0 =C2=A0 in pre-existing code, so of the = three this one most warrants caution.
=C2=A0 =C2=A0 =C2=A0 Preserving th= e guard via (b) or (c) looks safest, but I will leave the
=C2=A0 =C2=A0 = =C2=A0 decision to you.

=C2=A0 #5 =C2=A0EXCLUDE TIES window-frame te= st coverage
=C2=A0 =C2=A0 =C2=A0 Two nth_value/last_value cases.=C2=A0 T= he accounting they exercise already
=C2=A0 =C2=A0 =C2=A0 exists on maste= r and the tests pass without RPR, so they are not RPR
=C2=A0 =C2=A0 =C2= =A0 coverage.
=C2=A0 =C2=A0 =C2=A0 =C2=A0 (a) keep them in RPR =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 -> apply neither patch
=C2= =A0 =C2=A0 =C2=A0 =C2=A0 (b) land them on master separately -> revert-00= 05 + optional-0003
=C2=A0 =C2=A0 =C2=A0 I lean to (b).

For my par= t, I will carry out the deeper review against v50 with v50-0021
and reve= rt-0001/0004 applied, plus whichever of the above you choose, as
the min= imal green baseline.

Best,
Henson

--000000000000a8d4b606554d940f-- --000000000000a8d4ba06554d9411 Content-Type: application/octet-stream; name="v50-0021-adjust-rpr_base-expected-output.patch" Content-Disposition: attachment; filename="v50-0021-adjust-rpr_base-expected-output.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mqxmq5a80 RnJvbSBjZDc4MWVjYmZiYzJmZjdjYWMyYWFkMDdjNTE1MDgxZjYzMzJjYTdhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBIZW5zb24gQ2hvaSA8YXNzYW0yNThAZ21haWwuY29tPgpEYXRl OiBUaHUsIDI1IEp1biAyMDI2IDIyOjM5OjM2ICswOTAwClN1YmplY3Q6IFtQQVRDSF0gQWRqdXN0 IHJwcl9iYXNlIGV4cGVjdGVkIG91dHB1dCBmb3IgcmVmaW5lZCBJR05PUkUgTlVMTFMKIGVycm9y CgpDb21taXQgNDE5Y2UxM2I3MDEgcmVmaW5lZCB0aGUgZXJyb3IgcmVwb3J0ZWQgd2hlbiBSRVNQ RUNUL0lHTk9SRSBOVUxMUwppcyB1c2VkIG9uIGEgbm9uLXdpbmRvdyBmdW5jdGlvbiwgY2hhbmdp bmcgaXQgZnJvbSAib25seSB3aW5kb3cgZnVuY3Rpb25zCmFjY2VwdCBSRVNQRUNUL0lHTk9SRSBO VUxMUyIgdG8gIlJFU1BFQ1QvSUdOT1JFIE5VTExTIHNwZWNpZmllZCwgYnV0ICVzCmlzIG5vdCBh IHdpbmRvdyBmdW5jdGlvbiIuICBUaGUgcnByX2Jhc2UgdGVzdCB3YXMgYWRkZWQgYmVmb3JlIHRo YXQKcmVmaW5lbWVudCBhbmQga2VwdCB0aGUgb2xkIHdvcmRpbmcsIHNvIHVwZGF0ZSBpdHMgZXhw ZWN0ZWQgb3V0cHV0IHRvCm1hdGNoLiAgTm8gYmVoYXZpb3IgY2hhbmdlLgotLS0KIHNyYy90ZXN0 L3JlZ3Jlc3MvZXhwZWN0ZWQvcnByX2Jhc2Uub3V0IHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEg aW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVz cy9leHBlY3RlZC9ycHJfYmFzZS5vdXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3Jwcl9i YXNlLm91dAppbmRleCAzM2ZjYjQwYjFhOC4uNzk1NzU5NWFkOGIgMTAwNjQ0Ci0tLSBhL3NyYy90 ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcnByX2Jhc2Uub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mv ZXhwZWN0ZWQvcnByX2Jhc2Uub3V0CkBAIC0yMTQzLDcgKzIxNDMsNyBAQCBTRUxFQ1QgY291bnQo KikgT1ZFUiB3IEZST00gbnQKICAgV0lORE9XIHcgQVMgKFBBUlRJVElPTiBCWSBnIE9SREVSIEJZ IGlkCiAgICAgUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5H IElOSVRJQUwKICAgICBQQVRURVJOIChBKykgREVGSU5FIEEgQVMgUFJFVih2YWwpIElHTk9SRSBO VUxMUyBJUyBOVUxMKTsKLUVSUk9SOiAgb25seSB3aW5kb3cgZnVuY3Rpb25zIGFjY2VwdCBSRVNQ RUNUL0lHTk9SRSBOVUxMUworRVJST1I6ICBSRVNQRUNUL0lHTk9SRSBOVUxMUyBzcGVjaWZpZWQs IGJ1dCBwcmV2IGlzIG5vdCBhIHdpbmRvdyBmdW5jdGlvbgogTElORSA0OiAgICAgUEFUVEVSTiAo QSspIERFRklORSBBIEFTIFBSRVYodmFsKSBJR05PUkUgTlVMTFMgSVMgTlVMTCkuLi4KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCiAtLSBRdW90aW5nIGRvZXMgbm90IGVz Y2FwZTogInByZXYiIGlzIG5hdiwgIlBSRVYiIGlzIGFuIG9yZGluYXJ5IG5hbWUKLS0gCjIuNTAu MSAoQXBwbGUgR2l0LTE1NSkKCg== --000000000000a8d4ba06554d9411 Content-Type: application/octet-stream; name="revert-0001-remove-incidental-changes.patch" Content-Disposition: attachment; filename="revert-0001-remove-incidental-changes.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mqxmq7w91 RnJvbSAzY2E2NTI5M2E0NTViZTk1YzY0ODliOTQ2NjY4ODk0Y2QxNmUwNjRmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBIZW5zb24gQ2hvaSA8YXNzYW0yNThAZ21haWwuY29tPgpEYXRl OiBTdW4sIDI4IEp1biAyMDI2IDEzOjI0OjI5ICswOTAwClN1YmplY3Q6IFtQQVRDSF0gUmVtb3Zl IGluY2lkZW50YWwgY2hhbmdlcyB1bnJlbGF0ZWQgdG8gcm93IHBhdHRlcm4KIHJlY29nbml0aW9u CgotIGVxdWFsZnVuY3MuYzogZHJvcCB1bnVzZWQgIm5vZGVzL3BsYW5ub2Rlcy5oIiBpbmNsdWRl Ci0gbm9kZVdpbmRvd0FnZy5jOiByZW1vdmUgc3RyYXkgYmxhbmsgbGluZSBpbiBldmFsX3dpbmRv d2FnZ3JlZ2F0ZXMoKQotLS0KIHNyYy9iYWNrZW5kL2V4ZWN1dG9yL25vZGVXaW5kb3dBZ2cuYyB8 IDEgLQogc3JjL2JhY2tlbmQvbm9kZXMvZXF1YWxmdW5jcy5jICAgICAgIHwgMSAtCiAyIGZpbGVz IGNoYW5nZWQsIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvZXhlY3V0 b3Ivbm9kZVdpbmRvd0FnZy5jIGIvc3JjL2JhY2tlbmQvZXhlY3V0b3Ivbm9kZVdpbmRvd0FnZy5j CmluZGV4IGFlMGZiMDM2ODY3Li5lNGU5N2E2ZWQ5NSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQv ZXhlY3V0b3Ivbm9kZVdpbmRvd0FnZy5jCisrKyBiL3NyYy9iYWNrZW5kL2V4ZWN1dG9yL25vZGVX aW5kb3dBZ2cuYwpAQCAtMTAyNyw3ICsxMDI3LDYgQEAgZXZhbF93aW5kb3dhZ2dyZWdhdGVzKFdp bmRvd0FnZ1N0YXRlICp3aW5zdGF0ZSkKIAkJCQkJCQkgIGFnZ19yb3dfc2xvdCwgZmFsc2UpOwog CQlpZiAocmV0IDwgMCkKIAkJCWJyZWFrOwotCiAJCWlmIChyZXQgPT0gMCkKIAkJCWdvdG8gbmV4 dF90dXBsZTsKIApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvbm9kZXMvZXF1YWxmdW5jcy5jIGIv c3JjL2JhY2tlbmQvbm9kZXMvZXF1YWxmdW5jcy5jCmluZGV4IDFiYmRhOWFkMzY3Li4zZDFhMWFk Zjg2ZSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvbm9kZXMvZXF1YWxmdW5jcy5jCisrKyBiL3Ny Yy9iYWNrZW5kL25vZGVzL2VxdWFsZnVuY3MuYwpAQCAtMjAsNyArMjAsNiBAQAogI2luY2x1ZGUg InBvc3RncmVzLmgiCiAKICNpbmNsdWRlICJtaXNjYWRtaW4uaCIKLSNpbmNsdWRlICJub2Rlcy9w bGFubm9kZXMuaCIKICNpbmNsdWRlICJ1dGlscy9kYXR1bS5oIgogCiAKLS0gCjIuNTAuMSAoQXBw bGUgR2l0LTE1NSkKCg== --000000000000a8d4ba06554d9411 Content-Type: application/octet-stream; name="revert-0002-revert-mark-position-elog.patch" Content-Disposition: attachment; filename="revert-0002-revert-mark-position-elog.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mqxmq9n52 RnJvbSAxNmU2ZDc0NzZkNTExODVlY2UzMWMyYjAzYjg5OTkyM2NmMGViZGFiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBIZW5zb24gQ2hvaSA8YXNzYW0yNThAZ21haWwuY29tPgpEYXRl OiBTdW4sIDI4IEp1biAyMDI2IDEzOjI2OjE4ICswOTAwClN1YmplY3Q6IFtQQVRDSF0gUmV2ZXJ0 IHdpbmRvd19nZXR0dXBsZXNsb3QoKSBtYXJrLXBvc2l0aW9uIGVsb2cgdG8gaXRzCiBvcmlnaW5h bCBtZXNzYWdlCgpUaGUgcG9zL21hcmtwb3MgdmFsdWVzIGFkZGVkIGluIHRoZSBSUFIgYnJhbmNo IGFyZSBzcGxpdCBvdXQgaW50byBhCnNlcGFyYXRlIHByZWxpbWluYXJ5IHBhdGNoLCBrZWVwaW5n IHRoZSBSUFIgZGlmZiBtaW5pbWFsLgotLS0KIHNyYy9iYWNrZW5kL2V4ZWN1dG9yL25vZGVXaW5k b3dBZ2cuYyB8IDMgKy0tCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDIgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvZXhlY3V0b3Ivbm9kZVdpbmRvd0FnZy5j IGIvc3JjL2JhY2tlbmQvZXhlY3V0b3Ivbm9kZVdpbmRvd0FnZy5jCmluZGV4IGU0ZTk3YTZlZDk1 Li5iMWE4NmZiM2ExNCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvZXhlY3V0b3Ivbm9kZVdpbmRv d0FnZy5jCisrKyBiL3NyYy9iYWNrZW5kL2V4ZWN1dG9yL25vZGVXaW5kb3dBZ2cuYwpAQCAtMzU3 MCw4ICszNTcwLDcgQEAgd2luZG93X2dldHR1cGxlc2xvdChXaW5kb3dPYmplY3Qgd2lub2JqLCBp bnQ2NCBwb3MsIFR1cGxlVGFibGVTbG90ICpzbG90KQogCQlyZXR1cm4gZmFsc2U7CiAKIAlpZiAo cG9zIDwgd2lub2JqLT5tYXJrcG9zKQotCQllbG9nKEVSUk9SLCAiY2Fubm90IGZldGNoIHJvdzog IiBJTlQ2NF9GT1JNQVQgIiBiZWZvcmUgV2luZG93T2JqZWN0J3MgbWFyayBwb3NpdGlvbjogIiBJ TlQ2NF9GT1JNQVQsCi0JCQkgcG9zLCB3aW5vYmotPm1hcmtwb3MpOworCQllbG9nKEVSUk9SLCAi Y2Fubm90IGZldGNoIHJvdyBiZWZvcmUgV2luZG93T2JqZWN0J3MgbWFyayBwb3NpdGlvbiIpOwog CiAJb2xkY29udGV4dCA9IE1lbW9yeUNvbnRleHRTd2l0Y2hUbyh3aW5zdGF0ZS0+c3MucHMucHNf RXhwckNvbnRleHQtPmVjeHRfcGVyX3F1ZXJ5X21lbW9yeSk7CiAKLS0gCjIuNTAuMSAoQXBwbGUg R2l0LTE1NSkKCg== --000000000000a8d4ba06554d9411 Content-Type: application/octet-stream; name="revert-0003-restore-funcname-guard.patch" Content-Disposition: attachment; filename="revert-0003-restore-funcname-guard.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mqxmqbbd3 RnJvbSBiNzUzYTExYzdmMDRhZjhkY2U1YjliYWYwMjNkYTJhM2YyMTBiYjcwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBIZW5zb24gQ2hvaSA8YXNzYW0yNThAZ21haWwuY29tPgpEYXRl OiBTdW4sIDI4IEp1biAyMDI2IDEzOjI4OjEzICswOTAwClN1YmplY3Q6IFtQQVRDSF0gUmVzdG9y ZSBmdW5jbmFtZSBndWFyZCBpbiBXaW5DaGVja0FuZEluaXRpYWxpemVOdWxsVHJlYXRtZW50CgpU aGlzIHVucmVhY2hhYmxlLWJyYW5jaCByZW1vdmFsIGlzIHVucmVsYXRlZCB0byByb3cgcGF0dGVy biByZWNvZ25pdGlvbjsKcmV2ZXJ0IGl0IHRvIGtlZXAgdGhlIFJQUiBkaWZmIG1pbmltYWwuCi0t LQogc3JjL2JhY2tlbmQvZXhlY3V0b3Ivbm9kZVdpbmRvd0FnZy5jIHwgNSArKystLQogMSBmaWxl IGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9z cmMvYmFja2VuZC9leGVjdXRvci9ub2RlV2luZG93QWdnLmMgYi9zcmMvYmFja2VuZC9leGVjdXRv ci9ub2RlV2luZG93QWdnLmMKaW5kZXggYjFhODZmYjNhMTQuLjA0NzI4N2E2MzY2IDEwMDY0NAot LS0gYS9zcmMvYmFja2VuZC9leGVjdXRvci9ub2RlV2luZG93QWdnLmMKKysrIGIvc3JjL2JhY2tl bmQvZXhlY3V0b3Ivbm9kZVdpbmRvd0FnZy5jCkBAIC00OTM2LDExICs0OTM2LDEyIEBAIFdpbkNo ZWNrQW5kSW5pdGlhbGl6ZU51bGxUcmVhdG1lbnQoV2luZG93T2JqZWN0IHdpbm9iaiwKIAl7CiAJ CWNvbnN0IGNoYXIgKmZ1bmNuYW1lID0gZ2V0X2Z1bmNfbmFtZShmY2luZm8tPmZsaW5mby0+Zm5f b2lkKTsKIAotCQkvKiB0aGUgZXhlY3V0aW5nIGZ1bmN0aW9uJ3MgbmFtZSBhbHdheXMgcmVzb2x2 ZXM7IHN0YXkgc2FmZSByZWdhcmRsZXNzICovCisJCWlmICghZnVuY25hbWUpCisJCQllbG9nKEVS Uk9SLCAiY291bGQgbm90IGdldCBmdW5jdGlvbiBuYW1lIik7CiAJCWVyZXBvcnQoRVJST1IsCiAJ CQkJKGVycmNvZGUoRVJSQ09ERV9GRUFUVVJFX05PVF9TVVBQT1JURUQpLAogCQkJCSBlcnJtc2co ImZ1bmN0aW9uICVzIGRvZXMgbm90IGFsbG93IFJFU1BFQ1QvSUdOT1JFIE5VTExTIiwKLQkJCQkJ CWZ1bmNuYW1lID8gZnVuY25hbWUgOiAiPyIpKSk7CisJCQkJCQlmdW5jbmFtZSkpKTsKIAl9CiAJ ZWxzZSBpZiAod2lub2JqLT5pZ25vcmVfbnVsbHMgPT0gUEFSU0VSX0lHTk9SRV9OVUxMUykKIAkJ d2lub2JqLT5pZ25vcmVfbnVsbHMgPSBJR05PUkVfTlVMTFM7Ci0tIAoyLjUwLjEgKEFwcGxlIEdp dC0xNTUpCgo= --000000000000a8d4ba06554d9411 Content-Type: application/octet-stream; name="revert-0004-restore-doc-line-wrapping.patch" Content-Disposition: attachment; filename="revert-0004-restore-doc-line-wrapping.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mqxmqdd64 RnJvbSAyOTU5NTc0ODRjYzdmNTRmYjYwNTU3MDViM2IwZWNiOWM3MGJjMTM1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBIZW5zb24gQ2hvaSA8YXNzYW0yNThAZ21haWwuY29tPgpEYXRl OiBTdW4sIDI4IEp1biAyMDI2IDE0OjQ3OjQyICswOTAwClN1YmplY3Q6IFtQQVRDSF0gUmVzdG9y ZSBsaW5lIHdyYXBwaW5nIG9mIHByZS1leGlzdGluZyB3aW5kb3cgY2xhdXNlCiBkb2N1bWVudGF0 aW9uCgpUaGUgcm93IHBhdHRlcm4gcmVjb2duaXRpb24gZG9jcyBwYXRjaCByZS13cmFwcGVkIHR3 byB1bnJlbGF0ZWQsIHByZS1leGlzdGluZwpwYXJhZ3JhcGhzIHdoaWxlIGluc2VydGluZyBuZXcg dGV4dCBhYm92ZSB0aGVtLiAgUmVzdG9yZSB0aGVpciBvcmlnaW5hbAp3cmFwcGluZyB0byBrZWVw IHRoZSBkb2N1bWVudGF0aW9uIGRpZmYgbWluaW1hbDoKCi0gYWR2YW5jZWQuc2dtbDogdGhlIHR1 dG9yaWFsIFdJTkRPVy9PVkVSIHBhcmFncmFwaAotIHJlZi9zZWxlY3Quc2dtbDogdGhlICJwdXJw b3NlIG9mIGEgV0lORE9XIGNsYXVzZSIgcGFyYWdyYXBoCi0tLQogZG9jL3NyYy9zZ21sL2FkdmFu Y2VkLnNnbWwgICB8IDggKysrKy0tLS0KIGRvYy9zcmMvc2dtbC9yZWYvc2VsZWN0LnNnbWwgfCAz ICstLQogMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL2FkdmFuY2VkLnNnbWwgYi9kb2Mvc3JjL3NnbWwvYWR2 YW5jZWQuc2dtbAppbmRleCBiZGM1NTJhZDc1Zi4uYzlkNGUyZmZjNjQgMTAwNjQ0Ci0tLSBhL2Rv Yy9zcmMvc2dtbC9hZHZhbmNlZC5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9hZHZhbmNlZC5zZ21s CkBAIC02NzksMTAgKzY3OSwxMCBAQCBGUk9NIHN0b2NrCiAgICA8cGFyYT4KICAgICBXaGVuIGEg cXVlcnkgaW52b2x2ZXMgbXVsdGlwbGUgd2luZG93IGZ1bmN0aW9ucywgaXQgaXMgcG9zc2libGUg dG8gd3JpdGUKICAgICBvdXQgZWFjaCBvbmUgd2l0aCBhIHNlcGFyYXRlIDxsaXRlcmFsPk9WRVI8 L2xpdGVyYWw+IGNsYXVzZSwgYnV0IHRoaXMgaXMKLSAgICBkdXBsaWNhdGl2ZSBhbmQgZXJyb3It cHJvbmUgaWYgdGhlIHNhbWUgd2luZG93aW5nIGJlaGF2aW9yIGlzIHdhbnRlZCBmb3IKLSAgICBz ZXZlcmFsIGZ1bmN0aW9ucy4gIEluc3RlYWQsIGVhY2ggd2luZG93aW5nIGJlaGF2aW9yIGNhbiBi ZSBuYW1lZCBpbgotICAgIGEgPGxpdGVyYWw+V0lORE9XPC9saXRlcmFsPiBjbGF1c2UgYW5kIHRo ZW4gcmVmZXJlbmNlZAotICAgIGluIDxsaXRlcmFsPk9WRVI8L2xpdGVyYWw+LiAgRm9yIGV4YW1w bGU6CisgICAgZHVwbGljYXRpdmUgYW5kIGVycm9yLXByb25lIGlmIHRoZSBzYW1lIHdpbmRvd2lu ZyBiZWhhdmlvciBpcyB3YW50ZWQKKyAgICBmb3Igc2V2ZXJhbCBmdW5jdGlvbnMuICBJbnN0ZWFk LCBlYWNoIHdpbmRvd2luZyBiZWhhdmlvciBjYW4gYmUgbmFtZWQKKyAgICBpbiBhIDxsaXRlcmFs PldJTkRPVzwvbGl0ZXJhbD4gY2xhdXNlIGFuZCB0aGVuIHJlZmVyZW5jZWQgaW4gPGxpdGVyYWw+ T1ZFUjwvbGl0ZXJhbD4uCisgICAgRm9yIGV4YW1wbGU6CiAKIDxwcm9ncmFtbGlzdGluZz4KIFNF TEVDVCBzdW0oc2FsYXJ5KSBPVkVSIHcsIGF2ZyhzYWxhcnkpIE9WRVIgdwpkaWZmIC0tZ2l0IGEv ZG9jL3NyYy9zZ21sL3JlZi9zZWxlY3Quc2dtbCBiL2RvYy9zcmMvc2dtbC9yZWYvc2VsZWN0LnNn bWwKaW5kZXggYmU1ZWQ4MTQ4NTMuLmUwNDIzY2Y1ZjkxIDEwMDY0NAotLS0gYS9kb2Mvc3JjL3Nn bWwvcmVmL3NlbGVjdC5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9yZWYvc2VsZWN0LnNnbWwKQEAg LTEyMTYsOCArMTIxNiw3IEBAIERFRklORSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ ZGVmaW5pdGlvbl92YXJpYWJsZV9uYW1lPC9yZXBsYWNlYWJsZT4gQVMKIAogICAgPHBhcmE+CiAg ICAgVGhlIHB1cnBvc2Ugb2YgYSA8bGl0ZXJhbD5XSU5ET1c8L2xpdGVyYWw+IGNsYXVzZSBpcyB0 byBzcGVjaWZ5IHRoZQotICAgIGJlaGF2aW9yIG9mIDxmaXJzdHRlcm0+d2luZG93IGZ1bmN0aW9u czwvZmlyc3R0ZXJtPiBhcHBlYXJpbmcgaW4gdGhlCi0gICAgcXVlcnkncworICAgIGJlaGF2aW9y IG9mIDxmaXJzdHRlcm0+d2luZG93IGZ1bmN0aW9uczwvZmlyc3R0ZXJtPiBhcHBlYXJpbmcgaW4g dGhlIHF1ZXJ5J3MKICAgICA8bGluayBsaW5rZW5kPSJzcWwtc2VsZWN0LWxpc3QiPjxjb21tYW5k PlNFTEVDVDwvY29tbWFuZD4gbGlzdDwvbGluaz4gb3IKICAgICA8bGluayBsaW5rZW5kPSJzcWwt b3JkZXJieSI+PGxpdGVyYWw+T1JERVIgQlk8L2xpdGVyYWw+PC9saW5rPiBjbGF1c2UuCiAgICAg VGhlc2UgZnVuY3Rpb25zCi0tIAoyLjUwLjEgKEFwcGxlIEdpdC0xNTUpCgo= --000000000000a8d4ba06554d9411 Content-Type: application/octet-stream; name="revert-0005-remove-exclude-ties-tests.patch" Content-Disposition: attachment; filename="revert-0005-remove-exclude-ties-tests.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mqxmqfdc5 RnJvbSBkOGI2MDk3NmRkYjFjNmI5YzI0YzZlMTUzZWY1MWMyOGM2MWQ0NzZlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBIZW5zb24gQ2hvaSA8YXNzYW0yNThAZ21haWwuY29tPgpEYXRl OiBTdW4sIDI4IEp1biAyMDI2IDEzOjMwOjIzICswOTAwClN1YmplY3Q6IFtQQVRDSF0gUmVtb3Zl IEVYQ0xVREUgVElFUyB3aW5kb3cgdGVzdHMgdW5yZWxhdGVkIHRvIHJvdyBwYXR0ZXJuCiByZWNv Z25pdGlvbgoKVGhlc2UgbnRoX3ZhbHVlL2xhc3RfdmFsdWUgZnJhbWUgdGVzdHMgZXhlcmNpc2Ug ZXhjbHVzaW9uIGFjY291bnRpbmcgdGhhdAphbHJlYWR5IGV4aXN0cyBvbiB0aGUgYmFzZSBicmFu Y2ggYW5kIHBhc3Mgd2l0aG91dCBSUFIsIHNvIHRoZXkgZG9uJ3QKY292ZXIgUlBSLXNwZWNpZmlj IGJlaGF2aW9yOyBkcm9wIHRoZW0gdG8ga2VlcCB0aGUgUlBSIGRpZmYgbWluaW1hbC4KLS0tCiBz cmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3dpbmRvdy5vdXQgfCAzNiAtLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tCiBzcmMvdGVzdC9yZWdyZXNzL3NxbC93aW5kb3cuc3FsICAgICAgfCAgOCAt LS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDQ0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Ny Yy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvd2luZG93Lm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhw ZWN0ZWQvd2luZG93Lm91dAppbmRleCBkZDg4N2M2YjkyNS4uOTBkOWY5NTNiODEgMTAwNjQ0Ci0t LSBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvd2luZG93Lm91dAorKysgYi9zcmMvdGVzdC9y ZWdyZXNzL2V4cGVjdGVkL3dpbmRvdy5vdXQKQEAgLTEwMzcsNDIgKzEwMzcsNiBAQCBGUk9NIHRl bmsxIFdIRVJFIHVuaXF1ZTEgPCAxMDsKICAgICAgICAgICA3IHwgICAgICAgNyB8ICAgIDMKICgx MCByb3dzKQogCi1TRUxFQ1QgbnRoX3ZhbHVlKHVuaXF1ZTEsMikgb3ZlciAoT1JERVIgQlkgZm91 ciByb3dzIGJldHdlZW4gY3VycmVudCByb3cgYW5kIDMgZm9sbG93aW5nIGV4Y2x1ZGUgdGllcyks Ci0JdW5pcXVlMSwgZm91cgotRlJPTSB0ZW5rMSBXSEVSRSB1bmlxdWUxIDwgMTA7Ci0gbnRoX3Zh bHVlIHwgdW5pcXVlMSB8IGZvdXIgCi0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tCi0gICAg ICAgICA1IHwgICAgICAgMCB8ICAgIDAKLSAgICAgICAgIDUgfCAgICAgICA4IHwgICAgMAotICAg ICAgICAgNSB8ICAgICAgIDQgfCAgICAwCi0gICAgICAgICA2IHwgICAgICAgNSB8ICAgIDEKLSAg ICAgICAgIDYgfCAgICAgICA5IHwgICAgMQotICAgICAgICAgNiB8ICAgICAgIDEgfCAgICAxCi0g ICAgICAgICAzIHwgICAgICAgNiB8ICAgIDIKLSAgICAgICAgIDMgfCAgICAgICAyIHwgICAgMgot ICAgICAgICAgICB8ICAgICAgIDMgfCAgICAzCi0gICAgICAgICAgIHwgICAgICAgNyB8ICAgIDMK LSgxMCByb3dzKQotCi1TRUxFQ1QgbGFzdF92YWx1ZSh1bmlxdWUxKSBvdmVyIChPUkRFUiBCWSBm b3VyIHJvd3MgYmV0d2VlbiAxIGZvbGxvd2luZyBhbmQgMiBmb2xsb3dpbmcgZXhjbHVkZSB0aWVz KSwKLQl1bmlxdWUxLCBmb3VyCi1GUk9NIHRlbmsxIFdIRVJFIHVuaXF1ZTEgPCAxMiBPUkRFUiBC WSBmb3VyLCB1bmlxdWUxOwotIGxhc3RfdmFsdWUgfCB1bmlxdWUxIHwgZm91ciAKLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0rLS0tLS0tCi0gICAgICAgICAgMSB8ICAgICAgIDAgfCAgICAwCi0gICAg ICAgICAgICB8ICAgICAgIDQgfCAgICAwCi0gICAgICAgICAgNSB8ICAgICAgIDggfCAgICAwCi0g ICAgICAgICAgNiB8ICAgICAgIDEgfCAgICAxCi0gICAgICAgICAgICB8ICAgICAgIDUgfCAgICAx Ci0gICAgICAgICAxMCB8ICAgICAgIDkgfCAgICAxCi0gICAgICAgICAgMyB8ICAgICAgIDIgfCAg ICAyCi0gICAgICAgICAgICB8ICAgICAgIDYgfCAgICAyCi0gICAgICAgICAgNyB8ICAgICAgMTAg fCAgICAyCi0gICAgICAgICAgICB8ICAgICAgIDMgfCAgICAzCi0gICAgICAgICAgICB8ICAgICAg IDcgfCAgICAzCi0gICAgICAgICAgICB8ICAgICAgMTEgfCAgICAzCi0oMTIgcm93cykKLQogU0VM RUNUIHN1bSh1bmlxdWUxKSBvdmVyIChyb3dzIGJldHdlZW4gMiBwcmVjZWRpbmcgYW5kIDEgcHJl Y2VkaW5nKSwKIAl1bmlxdWUxLCBmb3VyCiBGUk9NIHRlbmsxIFdIRVJFIHVuaXF1ZTEgPCAxMDsK ZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3dpbmRvdy5zcWwgYi9zcmMvdGVzdC9y ZWdyZXNzL3NxbC93aW5kb3cuc3FsCmluZGV4IDMxZmVjZTdmYjhhLi41YWMzYTQ4NmUxNiAxMDA2 NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvd2luZG93LnNxbAorKysgYi9zcmMvdGVzdC9y ZWdyZXNzL3NxbC93aW5kb3cuc3FsCkBAIC0yMzUsMTQgKzIzNSw2IEBAIFNFTEVDVCBsYXN0X3Zh bHVlKHVuaXF1ZTEpIG92ZXIgKE9SREVSIEJZIGZvdXIgcm93cyBiZXR3ZWVuIGN1cnJlbnQgcm93 IGFuZCAyIGZvCiAJdW5pcXVlMSwgZm91cgogRlJPTSB0ZW5rMSBXSEVSRSB1bmlxdWUxIDwgMTA7 CiAKLVNFTEVDVCBudGhfdmFsdWUodW5pcXVlMSwyKSBvdmVyIChPUkRFUiBCWSBmb3VyIHJvd3Mg YmV0d2VlbiBjdXJyZW50IHJvdyBhbmQgMyBmb2xsb3dpbmcgZXhjbHVkZSB0aWVzKSwKLQl1bmlx dWUxLCBmb3VyCi1GUk9NIHRlbmsxIFdIRVJFIHVuaXF1ZTEgPCAxMDsKLQotU0VMRUNUIGxhc3Rf dmFsdWUodW5pcXVlMSkgb3ZlciAoT1JERVIgQlkgZm91ciByb3dzIGJldHdlZW4gMSBmb2xsb3dp bmcgYW5kIDIgZm9sbG93aW5nIGV4Y2x1ZGUgdGllcyksCi0JdW5pcXVlMSwgZm91cgotRlJPTSB0 ZW5rMSBXSEVSRSB1bmlxdWUxIDwgMTIgT1JERVIgQlkgZm91ciwgdW5pcXVlMTsKLQogU0VMRUNU IHN1bSh1bmlxdWUxKSBvdmVyIChyb3dzIGJldHdlZW4gMiBwcmVjZWRpbmcgYW5kIDEgcHJlY2Vk aW5nKSwKIAl1bmlxdWUxLCBmb3VyCiBGUk9NIHRlbmsxIFdIRVJFIHVuaXF1ZTEgPCAxMDsKLS0g CjIuNTAuMSAoQXBwbGUgR2l0LTE1NSkKCg== --000000000000a8d4ba06554d9411 Content-Type: application/octet-stream; name="optional-0001-include-row-positions-in-mark-position-error.patch" Content-Disposition: attachment; filename="optional-0001-include-row-positions-in-mark-position-error.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mqxmqgxx6 RnJvbSA5MjNhOGE5ZjQwZjRmNmMxY2M3MTZlMjU3ZDMxNWQ5Mzc0MDNmMzU4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBIZW5zb24gQ2hvaSA8YXNzYW0yNThAZ21haWwuY29tPgpEYXRl OiBTdW4sIDI4IEp1biAyMDI2IDE1OjA4OjQ1ICswOTAwClN1YmplY3Q6IFtQQVRDSF0gSW5jbHVk ZSByb3cgcG9zaXRpb25zIGluIFdpbmRvd09iamVjdCBtYXJrLXBvc2l0aW9uIGVycm9yCgp3aW5k b3dfZ2V0dHVwbGVzbG90KCkgcmFpc2VzIGEgY2FuJ3QtaGFwcGVuIGVycm9yIHdoZW4gYXNrZWQg Zm9yIGEgcm93CmJlZm9yZSB0aGUgV2luZG93T2JqZWN0J3MgbWFyayBwb3NpdGlvbi4gIEluY2x1 ZGUgdGhlIHJlcXVlc3RlZCBwb3NpdGlvbgphbmQgdGhlIG1hcmsgcG9zaXRpb24gaW4gdGhlIG1l c3NhZ2UsIHdoaWNoIG1ha2VzIHRoZSBkaWFnbm9zdGljIGRpcmVjdGx5CnVzZWZ1bCBpZiBpdCBl dmVyIGZpcmVzLgotLS0KIHNyYy9iYWNrZW5kL2V4ZWN1dG9yL25vZGVXaW5kb3dBZ2cuYyB8IDMg KystCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZm IC0tZ2l0IGEvc3JjL2JhY2tlbmQvZXhlY3V0b3Ivbm9kZVdpbmRvd0FnZy5jIGIvc3JjL2JhY2tl bmQvZXhlY3V0b3Ivbm9kZVdpbmRvd0FnZy5jCmluZGV4IGYxYzUyNGQwMGRmLi45NTE0YzY4NGFi OSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvZXhlY3V0b3Ivbm9kZVdpbmRvd0FnZy5jCisrKyBi L3NyYy9iYWNrZW5kL2V4ZWN1dG9yL25vZGVXaW5kb3dBZ2cuYwpAQCAtMzI3MSw3ICszMjcxLDgg QEAgd2luZG93X2dldHR1cGxlc2xvdChXaW5kb3dPYmplY3Qgd2lub2JqLCBpbnQ2NCBwb3MsIFR1 cGxlVGFibGVTbG90ICpzbG90KQogCQlyZXR1cm4gZmFsc2U7CiAKIAlpZiAocG9zIDwgd2lub2Jq LT5tYXJrcG9zKQotCQllbG9nKEVSUk9SLCAiY2Fubm90IGZldGNoIHJvdyBiZWZvcmUgV2luZG93 T2JqZWN0J3MgbWFyayBwb3NpdGlvbiIpOworCQllbG9nKEVSUk9SLCAiY2Fubm90IGZldGNoIHJv dzogIiBJTlQ2NF9GT1JNQVQgIiBiZWZvcmUgV2luZG93T2JqZWN0J3MgbWFyayBwb3NpdGlvbjog IiBJTlQ2NF9GT1JNQVQsCisJCQkgcG9zLCB3aW5vYmotPm1hcmtwb3MpOwogCiAJb2xkY29udGV4 dCA9IE1lbW9yeUNvbnRleHRTd2l0Y2hUbyh3aW5zdGF0ZS0+c3MucHMucHNfRXhwckNvbnRleHQt PmVjeHRfcGVyX3F1ZXJ5X21lbW9yeSk7CiAKLS0gCjIuNTAuMSAoQXBwbGUgR2l0LTE1NSkKCg== --000000000000a8d4ba06554d9411 Content-Type: application/octet-stream; name="optional-0002-remove-unreachable-funcname-guard.patch" Content-Disposition: attachment; filename="optional-0002-remove-unreachable-funcname-guard.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mqxmqj3s7 RnJvbSA3YmZjNmU3MWRiZGFjYWUxZjI4N2M1YTM4MzJmYWZiODFkYzdjZGY1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBIZW5zb24gQ2hvaSA8YXNzYW0yNThAZ21haWwuY29tPgpEYXRl OiBTdW4sIDI4IEp1biAyMDI2IDE1OjA5OjIyICswOTAwClN1YmplY3Q6IFtQQVRDSF0gUmVtb3Zl IHVucmVhY2hhYmxlIGZ1bmN0aW9uLW5hbWUgZ3VhcmQgaW4gbnVsbC10cmVhdG1lbnQKIGNoZWNr CgpJbiBXaW5DaGVja0FuZEluaXRpYWxpemVOdWxsVHJlYXRtZW50KCkgdGhlIHdpbmRvdyBmdW5j dGlvbiBpcyBiZWluZwpleGVjdXRlZCwgc28gaXRzIE9JRCBhbHdheXMgcmVzb2x2ZXMgYW5kIGdl dF9mdW5jX25hbWUoKSBuZXZlciByZXR1cm5zCk5VTEw7IHRoZSAiY291bGQgbm90IGdldCBmdW5j dGlvbiBuYW1lIiBndWFyZCBpcyB1bnJlYWNoYWJsZS4gIERyb3AgaXQKYW5kIGZhbGwgYmFjayB0 byAiPyIgaW5saW5lIGluc3RlYWQuCi0tLQogc3JjL2JhY2tlbmQvZXhlY3V0b3Ivbm9kZVdpbmRv d0FnZy5jIHwgNSArKy0tLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMyBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9leGVjdXRvci9ub2RlV2luZG93QWdn LmMgYi9zcmMvYmFja2VuZC9leGVjdXRvci9ub2RlV2luZG93QWdnLmMKaW5kZXggZjFjNTI0ZDAw ZGYuLjBlZTYwNTk5MzJmIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9leGVjdXRvci9ub2RlV2lu ZG93QWdnLmMKKysrIGIvc3JjL2JhY2tlbmQvZXhlY3V0b3Ivbm9kZVdpbmRvd0FnZy5jCkBAIC0z NjU3LDEyICszNjU3LDExIEBAIFdpbkNoZWNrQW5kSW5pdGlhbGl6ZU51bGxUcmVhdG1lbnQoV2lu ZG93T2JqZWN0IHdpbm9iaiwKIAl7CiAJCWNvbnN0IGNoYXIgKmZ1bmNuYW1lID0gZ2V0X2Z1bmNf bmFtZShmY2luZm8tPmZsaW5mby0+Zm5fb2lkKTsKIAotCQlpZiAoIWZ1bmNuYW1lKQotCQkJZWxv ZyhFUlJPUiwgImNvdWxkIG5vdCBnZXQgZnVuY3Rpb24gbmFtZSIpOworCQkvKiB0aGUgZXhlY3V0 aW5nIGZ1bmN0aW9uJ3MgbmFtZSBhbHdheXMgcmVzb2x2ZXM7IHN0YXkgc2FmZSByZWdhcmRsZXNz ICovCiAJCWVyZXBvcnQoRVJST1IsCiAJCQkJKGVycmNvZGUoRVJSQ09ERV9GRUFUVVJFX05PVF9T VVBQT1JURUQpLAogCQkJCSBlcnJtc2coImZ1bmN0aW9uICVzIGRvZXMgbm90IGFsbG93IFJFU1BF Q1QvSUdOT1JFIE5VTExTIiwKLQkJCQkJCWZ1bmNuYW1lKSkpOworCQkJCQkJZnVuY25hbWUgPyBm dW5jbmFtZSA6ICI/IikpKTsKIAl9CiAJZWxzZSBpZiAod2lub2JqLT5pZ25vcmVfbnVsbHMgPT0g UEFSU0VSX0lHTk9SRV9OVUxMUykKIAkJd2lub2JqLT5pZ25vcmVfbnVsbHMgPSBJR05PUkVfTlVM TFM7Ci0tIAoyLjUwLjEgKEFwcGxlIEdpdC0xNTUpCgo= --000000000000a8d4ba06554d9411 Content-Type: application/octet-stream; name="optional-0003-add-exclude-ties-test-coverage.patch" Content-Disposition: attachment; filename="optional-0003-add-exclude-ties-test-coverage.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mqxmqktr8 RnJvbSA3MDUwNDdhYzVhODM1MGFhZjJhMTZkZDk3OGU3MzcxYzMxYjUwM2JjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBIZW5zb24gQ2hvaSA8YXNzYW0yNThAZ21haWwuY29tPgpEYXRl OiBTdW4sIDI4IEp1biAyMDI2IDE0OjIxOjQxICswOTAwClN1YmplY3Q6IFtQQVRDSF0gQWRkIEVY Q0xVREUgVElFUyB3aW5kb3cgZnJhbWUgdGVzdCBjb3ZlcmFnZQoKQ292ZXIgdGhlIEVYQ0xVREUg VElFUyBleGNsdXNpb24gYWNjb3VudGluZyBmb3IgbnRoX3ZhbHVlKCkgYW5kCmxhc3RfdmFsdWUo KSBvdmVyIFJPV1MgZnJhbWVzLCB3aGljaCB3YXMgb3RoZXJ3aXNlIHVudGVzdGVkLgotLS0KIHNy Yy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvd2luZG93Lm91dCB8IDM2ICsrKysrKysrKysrKysrKysr KysrKysrKysrKysKIHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3dpbmRvdy5zcWwgICAgICB8ICA4ICsr KysrKysKIDIgZmlsZXMgY2hhbmdlZCwgNDQgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3Ny Yy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvd2luZG93Lm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhw ZWN0ZWQvd2luZG93Lm91dAppbmRleCA5MGQ5Zjk1M2I4MS4uZGQ4ODdjNmI5MjUgMTAwNjQ0Ci0t LSBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvd2luZG93Lm91dAorKysgYi9zcmMvdGVzdC9y ZWdyZXNzL2V4cGVjdGVkL3dpbmRvdy5vdXQKQEAgLTEwMzcsNiArMTAzNyw0MiBAQCBGUk9NIHRl bmsxIFdIRVJFIHVuaXF1ZTEgPCAxMDsKICAgICAgICAgICA3IHwgICAgICAgNyB8ICAgIDMKICgx MCByb3dzKQogCitTRUxFQ1QgbnRoX3ZhbHVlKHVuaXF1ZTEsMikgb3ZlciAoT1JERVIgQlkgZm91 ciByb3dzIGJldHdlZW4gY3VycmVudCByb3cgYW5kIDMgZm9sbG93aW5nIGV4Y2x1ZGUgdGllcyks CisJdW5pcXVlMSwgZm91cgorRlJPTSB0ZW5rMSBXSEVSRSB1bmlxdWUxIDwgMTA7CisgbnRoX3Zh bHVlIHwgdW5pcXVlMSB8IGZvdXIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tCisgICAg ICAgICA1IHwgICAgICAgMCB8ICAgIDAKKyAgICAgICAgIDUgfCAgICAgICA4IHwgICAgMAorICAg ICAgICAgNSB8ICAgICAgIDQgfCAgICAwCisgICAgICAgICA2IHwgICAgICAgNSB8ICAgIDEKKyAg ICAgICAgIDYgfCAgICAgICA5IHwgICAgMQorICAgICAgICAgNiB8ICAgICAgIDEgfCAgICAxCisg ICAgICAgICAzIHwgICAgICAgNiB8ICAgIDIKKyAgICAgICAgIDMgfCAgICAgICAyIHwgICAgMgor ICAgICAgICAgICB8ICAgICAgIDMgfCAgICAzCisgICAgICAgICAgIHwgICAgICAgNyB8ICAgIDMK KygxMCByb3dzKQorCitTRUxFQ1QgbGFzdF92YWx1ZSh1bmlxdWUxKSBvdmVyIChPUkRFUiBCWSBm b3VyIHJvd3MgYmV0d2VlbiAxIGZvbGxvd2luZyBhbmQgMiBmb2xsb3dpbmcgZXhjbHVkZSB0aWVz KSwKKwl1bmlxdWUxLCBmb3VyCitGUk9NIHRlbmsxIFdIRVJFIHVuaXF1ZTEgPCAxMiBPUkRFUiBC WSBmb3VyLCB1bmlxdWUxOworIGxhc3RfdmFsdWUgfCB1bmlxdWUxIHwgZm91ciAKKy0tLS0tLS0t LS0tLSstLS0tLS0tLS0rLS0tLS0tCisgICAgICAgICAgMSB8ICAgICAgIDAgfCAgICAwCisgICAg ICAgICAgICB8ICAgICAgIDQgfCAgICAwCisgICAgICAgICAgNSB8ICAgICAgIDggfCAgICAwCisg ICAgICAgICAgNiB8ICAgICAgIDEgfCAgICAxCisgICAgICAgICAgICB8ICAgICAgIDUgfCAgICAx CisgICAgICAgICAxMCB8ICAgICAgIDkgfCAgICAxCisgICAgICAgICAgMyB8ICAgICAgIDIgfCAg ICAyCisgICAgICAgICAgICB8ICAgICAgIDYgfCAgICAyCisgICAgICAgICAgNyB8ICAgICAgMTAg fCAgICAyCisgICAgICAgICAgICB8ICAgICAgIDMgfCAgICAzCisgICAgICAgICAgICB8ICAgICAg IDcgfCAgICAzCisgICAgICAgICAgICB8ICAgICAgMTEgfCAgICAzCisoMTIgcm93cykKKwogU0VM RUNUIHN1bSh1bmlxdWUxKSBvdmVyIChyb3dzIGJldHdlZW4gMiBwcmVjZWRpbmcgYW5kIDEgcHJl Y2VkaW5nKSwKIAl1bmlxdWUxLCBmb3VyCiBGUk9NIHRlbmsxIFdIRVJFIHVuaXF1ZTEgPCAxMDsK ZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3dpbmRvdy5zcWwgYi9zcmMvdGVzdC9y ZWdyZXNzL3NxbC93aW5kb3cuc3FsCmluZGV4IDVhYzNhNDg2ZTE2Li4zMWZlY2U3ZmI4YSAxMDA2 NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvd2luZG93LnNxbAorKysgYi9zcmMvdGVzdC9y ZWdyZXNzL3NxbC93aW5kb3cuc3FsCkBAIC0yMzUsNiArMjM1LDE0IEBAIFNFTEVDVCBsYXN0X3Zh bHVlKHVuaXF1ZTEpIG92ZXIgKE9SREVSIEJZIGZvdXIgcm93cyBiZXR3ZWVuIGN1cnJlbnQgcm93 IGFuZCAyIGZvCiAJdW5pcXVlMSwgZm91cgogRlJPTSB0ZW5rMSBXSEVSRSB1bmlxdWUxIDwgMTA7 CiAKK1NFTEVDVCBudGhfdmFsdWUodW5pcXVlMSwyKSBvdmVyIChPUkRFUiBCWSBmb3VyIHJvd3Mg YmV0d2VlbiBjdXJyZW50IHJvdyBhbmQgMyBmb2xsb3dpbmcgZXhjbHVkZSB0aWVzKSwKKwl1bmlx dWUxLCBmb3VyCitGUk9NIHRlbmsxIFdIRVJFIHVuaXF1ZTEgPCAxMDsKKworU0VMRUNUIGxhc3Rf dmFsdWUodW5pcXVlMSkgb3ZlciAoT1JERVIgQlkgZm91ciByb3dzIGJldHdlZW4gMSBmb2xsb3dp bmcgYW5kIDIgZm9sbG93aW5nIGV4Y2x1ZGUgdGllcyksCisJdW5pcXVlMSwgZm91cgorRlJPTSB0 ZW5rMSBXSEVSRSB1bmlxdWUxIDwgMTIgT1JERVIgQlkgZm91ciwgdW5pcXVlMTsKKwogU0VMRUNU IHN1bSh1bmlxdWUxKSBvdmVyIChyb3dzIGJldHdlZW4gMiBwcmVjZWRpbmcgYW5kIDEgcHJlY2Vk aW5nKSwKIAl1bmlxdWUxLCBmb3VyCiBGUk9NIHRlbmsxIFdIRVJFIHVuaXF1ZTEgPCAxMDsKLS0g CjIuNTAuMSAoQXBwbGUgR2l0LTE1NSkKCg== --000000000000a8d4ba06554d9411--