{"thread":{"id":"32880","subject":"[PATCH] Include xmlparse.h instead of expat.h on QNX","startedAt":"2013-02-11T20:59:55Z","lastAt":"2013-02-11T22:35:04Z","messageCount":11,"participants":["Matt Kraai","Jeff King","Junio C Hamano"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"209302","messageId":"1360616395-18912-1-git-send-email-kraai@ftbfs.org","threadId":"32880","inReplyTo":null,"subject":"[PATCH] Include xmlparse.h instead of expat.h on QNX","fromName":"Matt Kraai","fromEmail":"kraai@ftbfs.org","sentAt":"2013-02-11T20:59:55Z","receivedAt":"2013-02-11T20:59:55Z","isPatch":true,"sender":{"key":"kraai@ftbfs.org","avatar":null},"body":"From: Matt Kraai <matt.kraai@amo.abbott.com>\n\nQNX 6.3.2 through 6.5.0 include Expat 1.1, which provides xmlparse.h\ninstead of expat.h, so include the former on QNX systems.\n\nSigned-off-by: Matt Kraai <matt.kraai@amo.abbott.com>\n---\n http-push.c | 4 ++++\n 1 file changed, 4 insertions(+)\n\ndiff --git a/http-push.c b/http-push.c\nindex 9923441..55c575e 100644\n--- a/http-push.c\n+++ b/http-push.c\n@@ -11,7 +11,11 @@\n #include \"list-objects.h\"\n #include \"sigchain.h\"\n \n+#ifndef __QNX__\n #include <expat.h>\n+#else\n+#include <xmlparse.h>\n+#endif\n \n static const char http_push_usage[] =\n \"git http-push [--all] [--dry-run] [--force] [--verbose] <remote> [<head>...]\\n\";\n-- \n1.8.1.2.547.g7ce9def\n"},{"id":"209304","messageId":"20130211210621.GC32740@sigill.intra.peff.net","threadId":"32880","inReplyTo":"1360616395-18912-1-git-send-email-kraai@ftbfs.org","subject":"Re: [PATCH] Include xmlparse.h instead of expat.h on QNX","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2013-02-11T21:06:21Z","receivedAt":"2013-02-11T21:06:21Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Mon, Feb 11, 2013 at 12:59:55PM -0800, Matt Kraai wrote:\n\n> From: Matt Kraai <matt.kraai@amo.abbott.com>\n> \n> QNX 6.3.2 through 6.5.0 include Expat 1.1, which provides xmlparse.h\n> instead of expat.h, so include the former on QNX systems.\n\nSo it is not just QNX, but rather older versions of expat?\n\n> diff --git a/http-push.c b/http-push.c\n> index 9923441..55c575e 100644\n> --- a/http-push.c\n> +++ b/http-push.c\n> @@ -11,7 +11,11 @@\n>  #include \"list-objects.h\"\n>  #include \"sigchain.h\"\n>  \n> +#ifndef __QNX__\n>  #include <expat.h>\n> +#else\n> +#include <xmlparse.h>\n> +#endif\n\nIf that is the case, should this #ifdef look for EXPAT_NEEDS_XMLPARSE_H,\nand that macro triggered externally? Either in the QNX section of the\nMakefile, or potentially by an autoconf macro?\n\n-Peff\n"},{"id":"209307","messageId":"20130211212411.GA19113@ftbfs.org","threadId":"32880","inReplyTo":"20130211210621.GC32740@sigill.intra.peff.net","subject":"Re: [PATCH] Include xmlparse.h instead of expat.h on QNX","fromName":"Matt Kraai","fromEmail":"kraai@ftbfs.org","sentAt":"2013-02-11T21:24:11Z","receivedAt":"2013-02-11T21:24:11Z","isPatch":true,"sender":{"key":"kraai@ftbfs.org","avatar":null},"body":"On Mon, Feb 11, 2013 at 04:06:21PM -0500, Jeff King wrote:\n> On Mon, Feb 11, 2013 at 12:59:55PM -0800, Matt Kraai wrote:\n> \n> > From: Matt Kraai <matt.kraai@amo.abbott.com>\n> > \n> > QNX 6.3.2 through 6.5.0 include Expat 1.1, which provides xmlparse.h\n> > instead of expat.h, so include the former on QNX systems.\n> \n> So it is not just QNX, but rather older versions of expat?\n\nYes, Expat 1.1 and 1.2 provide xmlparse.h, whereas 1.95.0 and later\nprovide expat.h.\n\n> > diff --git a/http-push.c b/http-push.c\n> > index 9923441..55c575e 100644\n> > --- a/http-push.c\n> > +++ b/http-push.c\n> > @@ -11,7 +11,11 @@\n> >  #include \"list-objects.h\"\n> >  #include \"sigchain.h\"\n> >  \n> > +#ifndef __QNX__\n> >  #include <expat.h>\n> > +#else\n> > +#include <xmlparse.h>\n> > +#endif\n> \n> If that is the case, should this #ifdef look for EXPAT_NEEDS_XMLPARSE_H,\n> and that macro triggered externally? Either in the QNX section of the\n> Makefile, or potentially by an autoconf macro?\n\nI'll submit another patch shortly that does so, defining the variable\nin the QNX section of config.mak.uname.\n"},{"id":"209308","messageId":"7vip5ylekj.fsf@alter.siamese.dyndns.org","threadId":"32880","inReplyTo":"1360616395-18912-1-git-send-email-kraai@ftbfs.org","subject":"Re: [PATCH] Include xmlparse.h instead of expat.h on QNX","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-02-11T21:34:52Z","receivedAt":"2013-02-11T21:34:52Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Matt Kraai <kraai@ftbfs.org> writes:\n\n> From: Matt Kraai <matt.kraai@amo.abbott.com>\n>\n> QNX 6.3.2 through 6.5.0 include Expat 1.1, which provides xmlparse.h\n> instead of expat.h, so include the former on QNX systems.\n>\n> Signed-off-by: Matt Kraai <matt.kraai@amo.abbott.com>\n> ---\n\nTwo points and a possibly irrelevant half:\n\n - If a fix is platform specific (i.e. tempts to use #ifdef\n   PLATFORM_NAME), we would prefer to see a patch that that is\n   isolated to platform-specific compatibility layer, which would\n   involve:\n\n   . add compat/qnx/expat.h file that #include <xmlparse.h>\n   . to Makefile, add -Icompat/qnx/ to CFLAGS\n\n - Is this really a fix for a problem specific to QNX?  It looks\n   like this is for any platform with expat 1, no?\n\n - What happens to people with QNX older than 6.3.2 or newer than\n   6.5.0 (assuming they will eventually start shipping expat 2) with\n   your patch?\n\nAssuming that this change is about building with expat1, it would\nprobably be better to do something like this instead, I would think.\n\n\n Makefile         | 5 +++++\n config.mak.uname | 1 +\n http-push.c      | 4 ++++\n 3 files changed, 10 insertions(+)\n\ndiff --git a/Makefile b/Makefile\nindex 5a2e02d..57032cc 100644\n--- a/Makefile\n+++ b/Makefile\n@@ -43,6 +43,8 @@ all::\n # Define EXPATDIR=/foo/bar if your expat header and library files are in\n # /foo/bar/include and /foo/bar/lib directories.\n #\n+# Define EXPAT_VERSION=1 if you are trying to build with expat 1.x (e.g. QNX).\n+#\n # Define NO_GETTEXT if you don't want Git output to be translated.\n # A translated Git requires GNU libintl or another gettext implementation,\n # plus libintl-perl at runtime.\n@@ -1089,6 +1091,9 @@ else\n \t\telse\n \t\t\tEXPAT_LIBEXPAT = -lexpat\n \t\tendif\n+\t\tifdef EXPAT_VERSION\n+\t\tBASIC_CFLAGS += -DEXPAT_VERSION=$(EXPAT_VERSION)\n+\t\tendif\n \tendif\n endif\n \ndiff --git a/config.mak.uname b/config.mak.uname\nindex bea34f0..281d834 100644\n--- a/config.mak.uname\n+++ b/config.mak.uname\n@@ -536,4 +536,5 @@ ifeq ($(uname_S),QNX)\n \tNO_R_TO_GCC_LINKER = YesPlease\n \tNO_STRCASESTR = YesPlease\n \tNO_STRLCPY = YesPlease\n+\tEXPAT_VERSION = 1\n endif\ndiff --git a/http-push.c b/http-push.c\nindex 3e72e84..2fdb0cd 100644\n--- a/http-push.c\n+++ b/http-push.c\n@@ -11,7 +11,11 @@\n #include \"list-objects.h\"\n #include \"sigchain.h\"\n \n+#if EXPAT_VERSION == 1\n+#include <xmlparse.h>\n+#else\n #include <expat.h>\n+#endif\n \n static const char http_push_usage[] =\n \"git http-push [--all] [--dry-run] [--force] [--verbose] <remote> [<head>...]\\n\";\n"},{"id":"209310","messageId":"7vehgmle8z.fsf@alter.siamese.dyndns.org","threadId":"32880","inReplyTo":"20130211210621.GC32740@sigill.intra.peff.net","subject":"Re: [PATCH] Include xmlparse.h instead of expat.h on QNX","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-02-11T21:41:48Z","receivedAt":"2013-02-11T21:41:48Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jeff King <peff@peff.net> writes:\n\n> On Mon, Feb 11, 2013 at 12:59:55PM -0800, Matt Kraai wrote:\n>\n>> From: Matt Kraai <matt.kraai@amo.abbott.com>\n>> \n>> QNX 6.3.2 through 6.5.0 include Expat 1.1, which provides xmlparse.h\n>> instead of expat.h, so include the former on QNX systems.\n>\n> So it is not just QNX, but rather older versions of expat?\n>\n>> diff --git a/http-push.c b/http-push.c\n>> index 9923441..55c575e 100644\n>> --- a/http-push.c\n>> +++ b/http-push.c\n>> @@ -11,7 +11,11 @@\n>>  #include \"list-objects.h\"\n>>  #include \"sigchain.h\"\n>>  \n>> +#ifndef __QNX__\n>>  #include <expat.h>\n>> +#else\n>> +#include <xmlparse.h>\n>> +#endif\n>\n> If that is the case, should this #ifdef look for EXPAT_NEEDS_XMLPARSE_H,\n> and that macro triggered externally?\n\nHeh, our mails crossed.  Another thing neither of us mentioned is\nhow compatible the subset of libexpat our codebase uses to what was\noffered by the older versions of expat.  I would not be surprised if\nnobody has tried running the resulting binary linked with expat 1.\n"},{"id":"209312","messageId":"20130211214948.GB19113@ftbfs.org","threadId":"32880","inReplyTo":"7vip5ylekj.fsf@alter.siamese.dyndns.org","subject":"Re: [PATCH] Include xmlparse.h instead of expat.h on QNX","fromName":"Matt Kraai","fromEmail":"kraai@ftbfs.org","sentAt":"2013-02-11T21:49:48Z","receivedAt":"2013-02-11T21:49:48Z","isPatch":true,"sender":{"key":"kraai@ftbfs.org","avatar":null},"body":"On Mon, Feb 11, 2013 at 01:34:52PM -0800, Junio C Hamano wrote:\n> Two points and a possibly irrelevant half:\n> \n>  - If a fix is platform specific (i.e. tempts to use #ifdef\n>    PLATFORM_NAME), we would prefer to see a patch that that is\n>    isolated to platform-specific compatibility layer, which would\n>    involve:\n> \n>    . add compat/qnx/expat.h file that #include <xmlparse.h>\n>    . to Makefile, add -Icompat/qnx/ to CFLAGS\n> \n>  - Is this really a fix for a problem specific to QNX?  It looks\n>    like this is for any platform with expat 1, no?\n\nIt should apply to anyone trying to build with expat 1.1 or 1.2, but\nnot with 1.95.0 or later.\n\n>  - What happens to people with QNX older than 6.3.2 or newer than\n>    6.5.0 (assuming they will eventually start shipping expat 2) with\n>    your patch?\n\nGit will fail to build http-push.c.  I don't know if QNX will ever\nupdate expat, though.  expat 1.95.0 was released in 2000, expat 2.0.0\nwas released in 2006, and QNX 6.5.0 was released in 2010.\n\n> Assuming that this change is about building with expat1, it would\n> probably be better to do something like this instead, I would think.\n\nexpat 1.95.0 through 1.95.8 used expat.h; should I still use\nEXPAT_VERSION = 1 to signify that it should use xmlparse.h, use\nEXPAT_NEEDS_XMLPARSE_H as Jeff suggested, or something else entirely?\n"},{"id":"209313","messageId":"7v38x2ldow.fsf@alter.siamese.dyndns.org","threadId":"32880","inReplyTo":"20130211214948.GB19113@ftbfs.org","subject":"Re: [PATCH] Include xmlparse.h instead of expat.h on QNX","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-02-11T21:53:51Z","receivedAt":"2013-02-11T21:53:51Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Matt Kraai <kraai@ftbfs.org> writes:\n\n>> Assuming that this change is about building with expat1, it would\n>> probably be better to do something like this instead, I would think.\n>\n> expat 1.95.0 through 1.95.8 used expat.h; should I still use\n> EXPAT_VERSION = 1 to signify that it should use xmlparse.h, use\n> EXPAT_NEEDS_XMLPARSE_H as Jeff suggested, or something else entirely?\n\nOh, please do not take it as a request to use that exact name (in\ncase you didn't know, I am bad at naming things).  It was merely an\nillustration to show the direction, written without knowing that\nPeff was essentially giving the same suggestion.\n\nThanks.\n\nOh, by the way, please do not deflect an attempt to directly send a\nresponse to you with a Mail-Followup-To header.\n"},{"id":"209314","messageId":"1360620225-19587-1-git-send-email-kraai@ftbfs.org","threadId":"32880","inReplyTo":"20130211212411.GA19113@ftbfs.org","subject":"[PATCH] Allow building with xmlparse.h","fromName":"Matt Kraai","fromEmail":"kraai@ftbfs.org","sentAt":"2013-02-11T22:03:45Z","receivedAt":"2013-02-11T22:03:45Z","isPatch":true,"sender":{"key":"kraai@ftbfs.org","avatar":null},"body":"From: Matt Kraai <matt.kraai@amo.abbott.com>\n\nexpat 1.1 and 1.2 provide xmlparse.h instead of expat.h.  Include the\nformer on systems that define the EXPAT_NEEDS_XMLPARSE_H variable and\ndefine that variable on QNX systems, which ship with expat 1.1.\n\nSigned-off-by: Matt Kraai <matt.kraai@amo.abbott.com>\n---\n Makefile         | 6 ++++++\n config.mak.uname | 1 +\n http-push.c      | 4 ++++\n 3 files changed, 11 insertions(+)\n\ndiff --git a/Makefile b/Makefile\nindex 5a2e02d..720fc18 100644\n--- a/Makefile\n+++ b/Makefile\n@@ -43,6 +43,9 @@ all::\n # Define EXPATDIR=/foo/bar if your expat header and library files are in\n # /foo/bar/include and /foo/bar/lib directories.\n #\n+# Define EXPAT_NEEDS_XMLPARSE_H if you have an old version of expat (e.g.,\n+# 1.1 or 1.2) that provides xmlparse.h instead of expat.h.\n+#\n # Define NO_GETTEXT if you don't want Git output to be translated.\n # A translated Git requires GNU libintl or another gettext implementation,\n # plus libintl-perl at runtime.\n@@ -1089,6 +1092,9 @@ else\n \t\telse\n \t\t\tEXPAT_LIBEXPAT = -lexpat\n \t\tendif\n+\t\tifdef EXPAT_NEEDS_XMLPARSE_H\n+\t\t\tBASIC_CFLAGS += -DEXPAT_NEEDS_XMLPARSE_H\n+\t\tendif\n \tendif\n endif\n \ndiff --git a/config.mak.uname b/config.mak.uname\nindex bea34f0..8743a6d 100644\n--- a/config.mak.uname\n+++ b/config.mak.uname\n@@ -523,6 +523,7 @@ endif\n endif\n ifeq ($(uname_S),QNX)\n \tCOMPAT_CFLAGS += -DSA_RESTART=0\n+\tEXPAT_NEEDS_XMLPARSE_H = YesPlease\n \tHAVE_STRINGS_H = YesPlease\n \tNEEDS_SOCKET = YesPlease\n \tNO_FNMATCH_CASEFOLD = YesPlease\ndiff --git a/http-push.c b/http-push.c\nindex 9923441..7202e2d 100644\n--- a/http-push.c\n+++ b/http-push.c\n@@ -11,7 +11,11 @@\n #include \"list-objects.h\"\n #include \"sigchain.h\"\n \n+#ifndef EXPAT_NEEDS_XMLPARSE_H\n #include <expat.h>\n+#else\n+#include <xmlparse.h>\n+#endif\n \n static const char http_push_usage[] =\n \"git http-push [--all] [--dry-run] [--force] [--verbose] <remote> [<head>...]\\n\";\n-- \n1.8.1.2.547.g7ce9def\n"},{"id":"209315","messageId":"7vy5eujybf.fsf@alter.siamese.dyndns.org","threadId":"32880","inReplyTo":"1360620225-19587-1-git-send-email-kraai@ftbfs.org","subject":"Re: [PATCH] Allow building with xmlparse.h","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-02-11T22:11:16Z","receivedAt":"2013-02-11T22:11:16Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Matt Kraai <kraai@ftbfs.org> writes:\n\n> From: Matt Kraai <matt.kraai@amo.abbott.com>\n>\n> expat 1.1 and 1.2 provide xmlparse.h instead of expat.h.  Include the\n> former on systems that define the EXPAT_NEEDS_XMLPARSE_H variable and\n> define that variable on QNX systems, which ship with expat 1.1.\n>\n> Signed-off-by: Matt Kraai <matt.kraai@amo.abbott.com>\n> ---\n> ...\n> diff --git a/http-push.c b/http-push.c\n> index 9923441..7202e2d 100644\n> --- a/http-push.c\n> +++ b/http-push.c\n> @@ -11,7 +11,11 @@\n>  #include \"list-objects.h\"\n>  #include \"sigchain.h\"\n>  \n> +#ifndef EXPAT_NEEDS_XMLPARSE_H\n>  #include <expat.h>\n> +#else\n> +#include <xmlparse.h>\n> +#endif\n\nThanks for a quick re-roll.\n\nIs it just me who finds the above hard to read and find the below\nmuch more natural?\n\n\t#ifdef NEEDS_FOO_H\n        #include <foo.h>\n        #else\n        #include <bar.h>\n        #endif\n"},{"id":"209316","messageId":"1360621855-19863-1-git-send-email-kraai@ftbfs.org","threadId":"32880","inReplyTo":"7vy5eujybf.fsf@alter.siamese.dyndns.org","subject":"[PATCH] Allow building with xmlparse.h","fromName":"Matt Kraai","fromEmail":"kraai@ftbfs.org","sentAt":"2013-02-11T22:30:55Z","receivedAt":"2013-02-11T22:30:55Z","isPatch":true,"sender":{"key":"kraai@ftbfs.org","avatar":null},"body":"From: Matt Kraai <matt.kraai@amo.abbott.com>\n\nexpat 1.1 and 1.2 provide xmlparse.h instead of expat.h.  Include the\nformer on systems that define the EXPAT_NEEDS_XMLPARSE_H variable and\ndefine that variable on QNX systems, which ship with expat 1.1.\n\nSigned-off-by: Matt Kraai <matt.kraai@amo.abbott.com>\n---\n Makefile         | 6 ++++++\n config.mak.uname | 1 +\n http-push.c      | 4 ++++\n 3 files changed, 11 insertions(+)\n\nI've changed #ifndef to #ifdef and changed the order of the branches\nin http-push.c.  If you'd also like me to rename the variable (e.g.,\nto NEEDS_XMLPARSE_H), please let me know.\n\ndiff --git a/Makefile b/Makefile\nindex 5a2e02d..720fc18 100644\n--- a/Makefile\n+++ b/Makefile\n@@ -43,6 +43,9 @@ all::\n # Define EXPATDIR=/foo/bar if your expat header and library files are in\n # /foo/bar/include and /foo/bar/lib directories.\n #\n+# Define EXPAT_NEEDS_XMLPARSE_H if you have an old version of expat (e.g.,\n+# 1.1 or 1.2) that provides xmlparse.h instead of expat.h.\n+#\n # Define NO_GETTEXT if you don't want Git output to be translated.\n # A translated Git requires GNU libintl or another gettext implementation,\n # plus libintl-perl at runtime.\n@@ -1089,6 +1092,9 @@ else\n \t\telse\n \t\t\tEXPAT_LIBEXPAT = -lexpat\n \t\tendif\n+\t\tifdef EXPAT_NEEDS_XMLPARSE_H\n+\t\t\tBASIC_CFLAGS += -DEXPAT_NEEDS_XMLPARSE_H\n+\t\tendif\n \tendif\n endif\n \ndiff --git a/config.mak.uname b/config.mak.uname\nindex bea34f0..8743a6d 100644\n--- a/config.mak.uname\n+++ b/config.mak.uname\n@@ -523,6 +523,7 @@ endif\n endif\n ifeq ($(uname_S),QNX)\n \tCOMPAT_CFLAGS += -DSA_RESTART=0\n+\tEXPAT_NEEDS_XMLPARSE_H = YesPlease\n \tHAVE_STRINGS_H = YesPlease\n \tNEEDS_SOCKET = YesPlease\n \tNO_FNMATCH_CASEFOLD = YesPlease\ndiff --git a/http-push.c b/http-push.c\nindex 9923441..9fa47a7 100644\n--- a/http-push.c\n+++ b/http-push.c\n@@ -11,7 +11,11 @@\n #include \"list-objects.h\"\n #include \"sigchain.h\"\n \n+#ifdef EXPAT_NEEDS_XMLPARSE_H\n+#include <xmlparse.h>\n+#else\n #include <expat.h>\n+#endif\n \n static const char http_push_usage[] =\n \"git http-push [--all] [--dry-run] [--force] [--verbose] <remote> [<head>...]\\n\";\n-- \n1.8.1.2.547.g7ce9def\n"},{"id":"209317","messageId":"7vtxpijx7r.fsf@alter.siamese.dyndns.org","threadId":"32880","inReplyTo":"1360621855-19863-1-git-send-email-kraai@ftbfs.org","subject":"Re: [PATCH] Allow building with xmlparse.h","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2013-02-11T22:35:04Z","receivedAt":"2013-02-11T22:35:04Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Matt Kraai <kraai@ftbfs.org> writes:\n\n> From: Matt Kraai <matt.kraai@amo.abbott.com>\n>\n> expat 1.1 and 1.2 provide xmlparse.h instead of expat.h.  Include the\n> former on systems that define the EXPAT_NEEDS_XMLPARSE_H variable and\n> define that variable on QNX systems, which ship with expat 1.1.\n>\n> Signed-off-by: Matt Kraai <matt.kraai@amo.abbott.com>\n> ---\n>  Makefile         | 6 ++++++\n>  config.mak.uname | 1 +\n>  http-push.c      | 4 ++++\n>  3 files changed, 11 insertions(+)\n>\n> I've changed #ifndef to #ifdef and changed the order of the branches\n> in http-push.c.  If you'd also like me to rename the variable (e.g.,\n> to NEEDS_XMLPARSE_H), please let me know.\n\nI do not think renaming is necessary (the name you used in the\noriginal and this patch is better than NEEDS_XMLPARSE_H).\n\nI take that you also think the updated order is easier to read;\nthanks for sanity-checking ;-).\n"}]}