define(f,`$3ifelse($3 ,$4,`m4exit',$1,0,` f($2,incr($2)',` f(decr($1),$2'),incr($3),$4)')f(0,1,1,include(/dev/fd/0))