_REQUIRE([_AS_CR_PREPARE])# Sed expression to map a string onto a valid variable name.
as_sed_sh="y%*+%pp%;s%[[^_$as_cr_alnum]]%_%g"
as_tr_sh="eval sed '$as_sed_sh'" # deprecated
[]_m4_defun_epi([$0])
T13,1
AS_MESSAGE_FD1
T8,189
_m4_wrapm4_ifdef([$0_text],
	  [m4_define([$0_text], [$1]_m4_defn([$0_text])[$2])],
	  [m4_builtin([m4wrap], [m4_unquote(
  _m4_defn([$0_text])_m4_popdef([$0_text]))])m4_define([$0_text], [$1$2])])
F8,5
m4_indexindex
T9,222
m4_bmatchm4_if([$#], 0, [m4_fatal([$0: too few arguments: $#])],
       [$#], 1, [m4_fatal([$0: too few arguments: $#: $1])],
       [$#], 2, [$2],
       [m4_if(m4_bregexp([$1], [$2]), -1, [$0([$1], m4_shift3($@))],
	      [$3])])
T7,20
m4_wrap_m4_wrap([], [$1[]])
T19,62
m4_version_unletterm4_substr(m4_map_args([.m4_eval], m4_unquote(_$0([$1]))), [3])
T17,272
_AS_IDENTIFIER_IFm4_cond([[$1]], [], [],
	 [m4_eval(m4_len(m4_translit([[$1]], ][[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_0123456789]][)) > 0)], [1], [],
	 [m4_len(m4_translit(m4_format([[%.1s]], [$1]), ][[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_]][))], [0], [-])
F8,5
m4_ifdefifdef
T16,103
AS_IDENTIFIER_IFm4_if(_$0(m4_if(m4_index([$1], [@]), [-1],
  [[$1]], [m4_bpatsubst([[$1]], [@&t@])])), [-], [$2], [$3])
T27,24
m4_location(_AS_ME_PREPARE)lib/m4sugar/m4sh.m4:1163
T16,101
m4_stack_foreach_m4_stack_reverse([$1], [m4_tmp-$1])_m4_stack_reverse([m4_tmp-$1], [$1], [$2(_m4_defn([m4_tmp-$1]))])
T12,93
m4_set_emptym4_ifdef([_m4_set_size($1)],
	  [m4_if(m4_indir([_m4_set_size($1)]), [0], [$2], [$3])], [$2])
F8,5
m4_indirindir
T31,24
m4_location(_AS_TR_CPP_PREPARE)lib/m4sugar/m4sh.m4:1894
F7,4
m4_evaleval
T9,127
_m4_splitm4_changequote([-=<{(],[)}>=-])[m4_bpatsubst(-=<{(-=<{($1)}>=-)}>=-, -=<{($2)}>=-,
	       -=<{(]$3[)}>=-)]m4_changequote([, ])
T17,2
_AS_LITERAL_IF_NO$2
T9,72
m4_mapallm4_if([$2], [], [],
       [_m4_foreach([m4_apply([$1],], [)], [], $2)])
F7,4
m4_incrincr
F9,6
m4_syscmdsyscmd
T9,75
AS_ESCAPE_$0([$1], m4_if([$2], [], [[`], [\"$]], [m4_substr([$2], [0], [1]), [$2]]))
T13,100
AS_LINENO_POP_m4_defun_pro([$0])eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno[]_m4_defun_epi([$0])
T10,137
_m4_divertm4_ifdef([_m4_divert($1)],
	  [m4_indir([_m4_divert($1)])],
	  [m4_if([$2], [], [m4_warn([syntax],
	     [prefer named diversions])])$1])
T16,9
_AS_TEST_X_WORKStest -x /
T7,91
m4_argnm4_assert([0 < $1])m4_pushdef([_$0], [_m4_popdef([_$0])]m4_dquote([$]m4_incr([$1])))_$0($@)
T7,1688
m4_init# All the M4sugar macros start with 'm4_', except 'dnl' kept as is
# for sake of simplicity.
m4_pattern_forbid([^_?m4_])
m4_pattern_forbid([^dnl$])

# If __m4_version__ is defined, we assume that we are being run by M4
# 1.6 or newer, thus $@ recursion is linear, and debugmode(+do)
# is available for faster checks of dereferencing undefined macros
# and forcing dumpdef to print to stderr regardless of debugfile.
# But if it is missing, we assume we are being run by M4 1.4.x, that
# $@ recursion is quadratic, and that we need foreach-based
# replacement macros.  Also, m4 prior to 1.4.8 loses track of location
# during m4wrap text; __line__ should never be 0.
#
# Use the raw builtin to avoid tripping up include tracing.
# Meanwhile, avoid m4_copy, since it temporarily undefines m4_defn.
m4_ifdef([__m4_version__],
[m4_debugmode([+do])
m4_define([m4_defn], _m4_defn([_m4_defn]))
m4_define([m4_dumpdef], _m4_defn([_m4_dumpdef]))
m4_define([m4_popdef], _m4_defn([_m4_popdef]))
m4_define([m4_undefine], _m4_defn([_m4_undefine]))],
[m4_builtin([include], [m4sugar/foreach.m4])
m4_wrap_lifo([m4_if(__line__, [0], [m4_pushdef([m4_location],
]]m4_dquote(m4_dquote(m4_dquote(__file__:__line__)))[[)])])])

# Rewrite the first entry of the diversion stack.
m4_divert([KILL])

# Check the divert push/pop perfect balance.
# Some users are prone to also use m4_wrap to register last-minute
# m4_divert_text; so after our diversion cleanups, we restore
# KILL as the bottom of the diversion stack.
m4_wrap([m4_popdef([_m4_divert_diversion])m4_ifdef(
  [_m4_divert_diversion], [m4_fatal([$0: unbalanced m4_divert_push:
]m4_divert_stack)])_m4_popdef([_m4_divert_stack])m4_divert_push([KILL])])

T23,24
m4_location(AS_MKDIR_P)lib/m4sugar/m4sh.m4:1332
T6,264
AS_FOR_m4_defun_pro([$0])m4_pushdef([$1], m4_if([$3], [], [[$$2]], m4_translit([$3], [abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_0123456789][%+=:,./-]), [], [[$3]], [[$$2]]))for $2[]m4_ifval([$3], [ in $3])
do :
  $4
done[]_m4_popdef([$1])[]_m4_defun_epi([$0])
T6,26
AS_BOX_$0(m4_expand([$1]), [$2])
F10,7
m4_builtinbuiltin
T12,71
AS_COPYRIGHTm4_divert_text([HEADER-COPYRIGHT],
[m4_bpatsubst([
$1], [^], [@%:@ ])])
T6,598
m4_form4_pushdef([$1], m4_eval([$2]))m4_cond([m4_eval(([$3]) > ([$2]))], 1,
	   [m4_pushdef([_m4_step], m4_eval(m4_default_quoted([$4],
	      1)))m4_assert(_m4_step > 0)_$0(_m4_defn([$1]),
  m4_eval((([$3]) - ([$2])) / _m4_step * _m4_step + ([$2])), _m4_step,],
	 [m4_eval(([$3]) < ([$2]))], 1,
	   [m4_pushdef([_m4_step], m4_eval(m4_default_quoted([$4],
	      -1)))m4_assert(_m4_step < 0)_$0(_m4_defn([$1]),
  m4_eval((([$2]) - ([$3])) / -(_m4_step) * _m4_step + ([$2])), _m4_step,],
	 [m4_pushdef([_m4_step])_$0(_m4_defn([$1]), _m4_defn([$1]), 0,])[m4_define([$1],], [)$5])m4_popdef([_m4_step], [$1])
T24,1
_m4_divert(M4SH-INIT-FN)7
T7,0
__gnu__
T16,27
_AS_QUOTE_MODERN_AS_ESCAPE([$1], [`], [""])
F12,8
_m4_undefineundefine
T10,412
m4_requirem4_ifdef([_m4_expanding($1)],
  [m4_fatal([$0: circular dependency of $1])])m4_if(_m4_divert_dump, [],
  [m4_fatal([$0($1): cannot be used outside of an ]dnl
m4_if([$0], [m4_require], [[m4_defun]], [[AC_DEFUN]])['d macro])])m4_provide_if([$1], [m4_set_contains([_m4_provide], [$1],
    [_m4_require_check([$1], _m4_defn([m4_provide($1)]), [$0])], [m4_ignore])],
  [_m4_require_call])([$1], [$2], _m4_divert_dump)
T31,24
m4_location(_AS_LINENO_PREPARE)lib/m4sugar/m4sh.m4:1208
T10,66
_AS_ECHO_NAS_ECHO_N(["_AS_QUOTE([$1])"]) >&m4_default([$2], [AS_MESSAGE_FD])
T20,170
_m4_version_unletterm4_bpatsubst(m4_bpatsubst(m4_translit([[[[0,$1]]]], [.-], [,,]),[[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ]][+],
	      [+1,-1,[0r36:\&]]), [,0], [,[0r10:0]])
T10,40
m4_warningm4_errprintn(m4_location[: warning: $1])
T7,30
AS_WARNAS_MESSAGE([WARNING: $1], [2])
T12,48
m4_re_escapem4_bpatsubst([$1],
	      [[][*+.?\^$]], [\\\&])
T10,168
m4_combinem4_if([$2], [], [], m4_eval([$# > 3]), [1],
[m4_map_args_sep([m4_map_args_sep(m4_dquote(], [)[[$3]], [], [[$1]],]]m4_dquote(m4_dquote(m4_shift3($@)))[[)], [[$1]], $2)])
T8,28
_AS_CASE [@%:@(]
  $1[)] :
    $2 ;;
T7,146
AS_CASE_m4_defun_pro([$0])case $1 in[]m4_map_args_pair([_$0], [_$0_DEFAULT],
   m4_shift($@m4_if(m4_eval([$# & 1]), [1], [,])))
esac[]_m4_defun_epi([$0])
T10,68
_AS_TR_CPP_AS_LITERAL_IF([$1], [*][	 ][
])([], [$0_INDIR], [$0_LITERAL])([$1])
T17,293
_m4_require_checkm4_if(_m4_defn([_m4_diverting]), [$2], [m4_ignore],
       m4_ifdef([_m4_diverting([$2])], [-]), [-], [m4_warn([syntax],
   [$3: '$1' was expanded before it was required
https://www.gnu.org/software/autoconf/manual/autoconf.html#Expanded-Before-Required])_m4_require_call],
       [m4_ignore])
F10,7
m4_traceontraceon
T14,103
_AS_TR_PREPARE_m4_defun_pro([$0])AS_REQUIRE([_AS_TR_SH_PREPARE])AS_REQUIRE([_AS_TR_CPP_PREPARE])[]_m4_defun_epi([$0])
T9,57
m4_appendm4_define([$1], m4_ifdef([$1], [_m4_defn([$1])[$3]])[$2])
T10,36
_m4_expand$0_([$1], [(], -=<{($1)}>=-, [}>=-])
T10,82
AS_DIRNAME$as_dirname -- $1 ||
_AS_DIRNAME_EXPR([$1]) 2>/dev/null ||
_AS_DIRNAME_SED([$1])[]
T10,124
AS_DIRNAME_m4_defun_pro([$0])AS_REQUIRE([_$0_PREPARE])[]_m4_popdef([$0])m4_indir([$0]m4_if([$#], [0], [], [,$@]))[]_m4_defun_epi([$0])
T13,26
m4_cr_lettersabcdefghijklmnopqrstuvwxyz
T14,77
m4_set_foreachm4_pushdef([$2])m4_set_map_sep([$1],
[m4_define([$2],], [)$3])m4_popdef([$2])
T10,728
AS_PREPARE_m4_defun_pro([$0])m4_divert_push([KILL])
m4_append_uniq([_AS_CLEANUP],
  [m4_divert_text([M4SH-INIT-FN], [_AS_ERROR_PREPARE[]])])
AS_REQUIRE([_AS_EXPR_PREPARE])
AS_REQUIRE([_AS_BASENAME_PREPARE])
AS_REQUIRE([_AS_DIRNAME_PREPARE])
AS_REQUIRE([_AS_ME_PREPARE])
AS_REQUIRE([_AS_CR_PREPARE])
AS_REQUIRE([_AS_LINENO_PREPARE])
AS_REQUIRE([_AS_ECHO_N_PREPARE])
AS_REQUIRE([_AS_EXIT_PREPARE])
AS_REQUIRE([_AS_LN_S_PREPARE])
AS_REQUIRE([_AS_MKDIR_P_PREPARE])
AS_REQUIRE([_AS_TEST_PREPARE])
AS_REQUIRE([_AS_TR_CPP_PREPARE])
AS_REQUIRE([_AS_TR_SH_PREPARE])
AS_REQUIRE([_AS_UNSET_PREPARE])
AS_REQUIRE([_AS_VAR_APPEND_PREPARE], [], [M4SH-INIT-FN])
AS_REQUIRE([_AS_VAR_ARITH_PREPARE], [], [M4SH-INIT-FN])
m4_divert_pop[][]_m4_defun_epi([$0])
T29,23
m4_location(_AS_EXIT_PREPARE)lib/m4sugar/m4sh.m4:613
T7,91
as_echom4_warn([obsolete],
   [$as_echo is obsolete; use AS_ECHO(["message"]) instead])as_@&t@echo
T22,24
m4_location(AS_TEST_X)lib/m4sugar/m4sh.m4:1131
T29,24
m4_location(_AS_EXPR_PREPARE)lib/m4sugar/m4sh.m4:1149
T27,24
m4_location(AS_VAR_PUSHDEF)lib/m4sugar/m4sh.m4:2112
T15,111
AS_VAR_TEST_SETAS_LITERAL_WORD_IF([$1],
  [test ${$1+y}],
  [{ as_var=$1; eval test \${$as_var+y}; }],
  [eval test \${$1+y}])
T35,24
m4_location(_AS_VAR_APPEND_PREPARE)lib/m4sugar/m4sh.m4:1956
T10,154
m4_providem4_ifdef([m4_provide($1)], [],
[m4_set_add([_m4_provide], [$1], [m4_define([m4_provide($1)],
  m4_ifdef([_m4_diverting], [_m4_defn([_m4_diverting])]))])])
T17,31
m4_default_quotedm4_if([$1], [], [[$2]], [[$1]])
T27,2052
_AS_VERSION_COMPARE_PREPARE_m4_defun_pro([$0])[as_awk_strverscmp='
  # Use only awk features that work with 7th edition Unix awk (1978).
  # My, what an old awk you have, Mr. Solaris!
  END {
    while (length(v1) && length(v2)) {
      # Set d1 to be the next thing to compare from v1, and likewise for d2.
      # Normally this is a single character, but if v1 and v2 contain digits,
      # compare them as integers and fractions as strverscmp does.
      if (v1 ~ /^[0-9]/ && v2 ~ /^[0-9]/) {
	# Split v1 and v2 into their leading digit string components d1 and d2,
	# and advance v1 and v2 past the leading digit strings.
	for (len1 = 1; substr(v1, len1 + 1) ~ /^[0-9]/; len1++) continue
	for (len2 = 1; substr(v2, len2 + 1) ~ /^[0-9]/; len2++) continue
	d1 = substr(v1, 1, len1); v1 = substr(v1, len1 + 1)
	d2 = substr(v2, 1, len2); v2 = substr(v2, len2 + 1)
	if (d1 ~ /^0/) {
	  if (d2 ~ /^0/) {
	    # Compare two fractions.
	    while (d1 ~ /^0/ && d2 ~ /^0/) {
	      d1 = substr(d1, 2); len1--
	      d2 = substr(d2, 2); len2--
	    }
	    if (len1 != len2 && ! (len1 && len2 && substr(d1, 1, 1) == substr(d2, 1, 1))) {
	      # The two components differ in length, and the common prefix
	      # contains only leading zeros.  Consider the longer to be less.
	      d1 = -len1
	      d2 = -len2
	    } else {
	      # Otherwise, compare as strings.
	      d1 = "x" d1
	      d2 = "x" d2
	    }
	  } else {
	    # A fraction is less than an integer.
	    exit 1
	  }
	} else {
	  if (d2 ~ /^0/) {
	    # An integer is greater than a fraction.
	    exit 2
	  } else {
	    # Compare two integers.
	    d1 += 0
	    d2 += 0
	  }
	}
      } else {
	# The normal case, without worrying about digits.
	d1 = substr(v1, 1, 1); v1 = substr(v1, 2)
	d2 = substr(v2, 1, 1); v2 = substr(v2, 2)
      }
      if (d1 < d2) exit 1
      if (d1 > d2) exit 2
    }
    # Beware Solaris /usr/xgp4/bin/awk (at least through Solaris 10),
    # which mishandles some comparisons of empty strings to integers.
    if (length(v2)) exit 1
    if (length(v1)) exit 2
  }
'][]_m4_defun_epi([$0])
T31,24
m4_location(AS_VERSION_COMPARE)lib/m4sugar/m4sh.m4:1815
F9,6
m4_formatformat
T25,23
m4_location(_AS_ECHO_LOG)lib/m4sugar/m4sh.m4:850
T34,24
m4_location(_AS_VAR_ARITH_PREPARE)lib/m4sugar/m4sh.m4:1998
T9,373
AS_TMPDIR# Create a (secure) tmp directory for tmp files.
m4_if([$2], [], [: "${TMPDIR:=/tmp}"])
{
  tmp=`(umask 077 && mktemp -d "m4_default([$2],
    [$TMPDIR])/$1XXXXXX") 2>/dev/null` &&
  test -d "$tmp"
}  ||
{
  tmp=m4_default([$2], [$TMPDIR])/$1$$-$RANDOM
  (umask 077 && mkdir "$tmp")
} || AS_ERROR([cannot create a temporary directory in m4_default([$2],
	      [$TMPDIR])])
T30,24
m4_location(AS_LINENO_PREPARE)lib/m4sugar/m4sh.m4:1207
T16,0
m4_pattern_allow
T25,2
_AS_LITERAL_HEREDOC_IF_NO$2
T9,31
_m4_applym4_if([$2], [], [], [$1($2)[]])
T10,124
AS_MESSAGEm4_ifval(AS_MESSAGE_LOG_FD,
	  [{ _AS_ECHO_LOG([$1])
_AS_ECHO([$as_me: $1], [$2]);}],
	  [_AS_ECHO([$as_me: $1], [$2])])[][]
T10,127
AS_MESSAGE_m4_defun_pro([$0])AS_REQUIRE([_AS_ME_PREPARE])[]_m4_popdef([$0])m4_indir([$0]m4_if([$#], [0], [], [,$@]))[]_m4_defun_epi([$0])
T23,39
m4_expansion_stack_pushm4_pushdef([_m4_expansion_stack], [$1])
T8,81
m4_chompm4_format([[%.*s]], m4_index(m4_translit([[$1]], [
/.], [/  ])[./.], [/.]), [$1])
T14,113
m4_expand_oncem4_provide_if(m4_default_quoted([$2], [$1]),
	       [],
	       [m4_provide(m4_default_quoted([$2], [$1]))[]$1])
T16,2
_m4_divert(KILL)-1
T20,1
AS_ORIGINAL_STDIN_FD0
T9,0
m4_ignore
T14,122
m4_append_uniqm4_ifval([$3], [m4_if(m4_index([$2], [$3]), [-1], [],
		       [m4_warn([syntax],
				[$0: '$2' contains '$3'])])])_$0($@)
T9,68
_AS_TR_SH_AS_LITERAL_IF([$1], [*][	 ][
])([], [$0_INDIR], [$0_LITERAL])([$1])
T15,148
_m4_append_uniqm4_ifdef([$1],
	  [m4_if(m4_index([$3]_m4_defn([$1])[$3], [$3$2$3]), [-1],
		 [m4_append([$1], [$2], [$3])$4], [$5])],
	  [m4_define([$1], [$2])$4])
T12,24
m4_rename_m4m4_rename([$1], [m4_$1])
T16,5
_m4_divert(GROW)10000
T11,160
m4_undefinem4_if([$#], [0], [[$0]],
       [$#], [1], [m4_ifdef([$1], [_m4_undefine([$1])],
			    [m4_fatal([$0: undefined macro: $1])])],
       [m4_map_args([$0], $@)])
T13,306
m4_bpatsubstsm4_if([$#], 0, [m4_fatal([$0: too few arguments: $#])],
       [$#], 1, [m4_fatal([$0: too few arguments: $#: $1])],
       [$#], 2, [m4_unquote(m4_builtin([patsubst], [[$1]], [$2]))],
       [$#], 3, [m4_unquote(m4_builtin([patsubst], [[$1]], [$2], [$3]))],
       [_$0($@m4_if(m4_eval($# & 1), 0, [,]))])
T23,24
m4_location(AS_DIRNAME)lib/m4sugar/m4sh.m4:1075
T26,23
m4_location(AS_SET_STATUS)lib/m4sugar/m4sh.m4:708
T11,544
_AS_PREPARE_m4_defun_pro([$0])m4_pushdef([AS_REQUIRE])m4_pushdef([AS_REQUIRE_SHELL_FN], _m4_defn([_AS_REQUIRE_SHELL_FN])
)m4_pushdef([AS_MESSAGE_LOG_FD], [-1])_AS_ERROR_PREPARE
_m4_popdef([AS_MESSAGE_LOG_FD])_AS_EXIT_PREPARE
_AS_UNSET_PREPARE
_AS_VAR_APPEND_PREPARE
_AS_VAR_ARITH_PREPARE

_AS_EXPR_PREPARE
_AS_BASENAME_PREPARE
_AS_DIRNAME_PREPARE
_AS_ME_PREPARE
_AS_CR_PREPARE
_AS_ECHO_N_PREPARE
_AS_LN_S_PREPARE
_AS_MKDIR_P_PREPARE
_AS_TEST_PREPARE
_AS_TR_CPP_PREPARE
_AS_TR_SH_PREPARE
_m4_popdef([AS_REQUIRE], [AS_REQUIRE_SHELL_FN])[]_m4_defun_epi([$0])
T15,76
_AS_BOX_LITERALAS_ECHO(["_AS_ESCAPE(m4_dquote(m4_expand([m4_text_box($@)])), [`], [\"$])"])
T15,58
m4_divert_stackm4_stack_foreach_sep_lifo([_m4_divert_stack], [], [], [
])
T8,87
m4_fatalm4_errprintn(m4_location[: error: $1]
m4_expansion_stack)m4_exit(m4_if([$2],, 1, [$2]))
T11,55
m4_sincludem4_include_unique([$1])dnl
m4_builtin([sinclude], [$1])
T25,47
_AS_MODERN_CMDSUBST_WORKSblah=$(echo $(echo blah))
test x"$blah" = xblah
T14,96
_m4_bpatsubstsm4_if([$#], 2, [$1],
       [$0(m4_builtin([patsubst], [[$1]], [$2], [$3]),
	   m4_shift3($@))])
T21,335
_AS_BOURNE_COMPATIBLEAS_IF([test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1],
 [emulate sh
  NULLCMD=:
  [#] Pre-4.2 versions of Zsh do word splitting on ${1+"$[@]"}, which
  # is contrary to our usage.  Disable this feature.
  alias -g '${1+"$[@]"}'='"$[@]"'
  setopt NO_GLOB_SUBST],
 [AS_CASE([`(set -o) 2>/dev/null`], [*posix*], [set -o posix])])

T26,24
m4_location(AS_VAR_APPEND)lib/m4sugar/m4sh.m4:1989
T22,133
_AS_LITERAL_HEREDOC_IFm4_if(m4_index([$1], [@S|@]), [-1],
  [m4_if(m4_index(m4_translit([[$1]], [\`], [$]), [$]), [-1],
    [$0_YES], [$0_NO])],
  [$0_NO])
T11,98
_AS_IF_ELSE_m4_defun_pro([$0])m4_ifnblank([$1],
[else case e in @%:@(
  e) $1 ;;
esac
])[]_m4_defun_epi([$0])
T8,115
AS_ERRORas_fn_error m4_default([$2], [$?]) "_AS_QUOTE([$1])"m4_ifval(AS_MESSAGE_LOG_FD,
  [ "$LINENO" AS_MESSAGE_LOG_FD])[]
T8,187
AS_ERROR_m4_defun_pro([$0])m4_append_uniq([_AS_CLEANUP],
  [m4_divert_text([M4SH-INIT-FN], [_AS_ERROR_PREPARE[]])])[]_m4_popdef([$0])m4_indir([$0]m4_if([$#], [0], [], [,$@]))[]_m4_defun_epi([$0])
T20,111
m4_stack_foreach_sep_m4_stack_reverse([$1], [m4_tmp-$1])_m4_stack_reverse([m4_tmp-$1], [$1], [$2[]_m4_defn([m4_tmp-$1])$3], [$4[]])
T21,32
AS_LITERAL_HEREDOC_IF_$0(m4_expand([$1]))([$2], [$3])
T17,490
_AS_TR_SH_LITERALm4_translit([[$1]],
  [*+[]][