% !TEX encoding = IsoLatin9
\makeatletter\@ifundefined{ifshowcode}{\newif\ifshowcode}{}\makeatother
%\showcodetrue
\documentclass{test}
\begin{document}
%EUPP:MLBB
%EU>(eupp-overwrite)PP.
%EU>(dotimes (test 16)PP.
%EU>  (let ((macro-1 (lsh (logand test 8) -3))PP.
%EU>	(condition-1 (lsh (logand test 4) -2))PP.
%EU>	(macro-2 (lsh (logand test 2) -1))PP.
%EU>	(condition-2 (logand test 1))PP.
%EU>	code-1 code-2 code)PP.
%EU>    (eupp-appendPP.
%EU>     "\\noindent" (number-to-string macro-1)(number-to-string condition-1)PP.
%EU>     (number-to-string macro-2)(number-to-string condition-2)PP.
%EU>     ".\\par Attendu : [SUCCÈS]\\par\\ifshowcode\nCode : \\texttt{"PP.
%EU>     (with-temp-bufferPP.
%EU>       (insertPP.
%EU>	(setq code-1PP.
%EU>	      (concatPP.
%EU>		  "\\MGB"PP.
%EU>		  (if (= 1 macro-1) "keep" "drop")PP.
%EU>		  "*\\if"PP.
%EU>		  (if (= 1 condition-1) "true" "false")PP.
%EU>		  "\\XXXXX")PP.
%EU>	      code-2PP.
%EU>	      (concatPP.
%EU>	       "\\MGB"PP.
%EU>	       (if (= 1 macro-2) "keep" "drop")PP.
%EU>	       "else*\\if"PP.
%EU>	       (if (= 1 condition-2) "true" "false")PP.
%EU>	       "\\YYYYY")PP.
%EU>	      codePP.
%EU>	      (concatPP.
%EU>	       "["PP.
%EU>	       (if (= 0 (logand (+ macro-1 condition-1) 1))PP.
%EU>		   ;; dégobage @ prof = 1PP.
%EU>		   (concatPP.
%EU>		    code-1 code-2PP.
%EU>		    (if (= 0 (logand (+ macro-2 condition-2) 1))PP.
%EU>			"\\ok{SUCCÈS}\\YYYYY\\fatal{ÉCHEC}"PP.
%EU>		      "\\fatal{ÉCHEC}\\YYYYY\\ok{SUCCÈS}")PP.
%EU>		    "\\YYYYY\\XXXXX]")PP.
%EU>		   ;; gobage @ prof = 1PP.
%EU>		   (concatPP.
%EU>		    "\\visitedfalse" code-1PP.
%EU>		    "\\visitedtrue\\wisitedfalse"PP.
%EU>		    code-2PP.
%EU>		    (if (= 0 (logand (+ macro-2 condition-2) 1))PP.
%EU>			"\\wisitedtrue\\YYYYY\\fatal{ÉCHEC}\\YYYYY"PP.
%EU>			"\\fatal{ÉCHEC}\\YYYYY\\wisitedtrue\\YYYYY"PP.
%EU>		      )PP.
%EU>		    "\\unless\\ifwisited\\fatal{ÉCHEC}\\fi\\XXXXX\\ifvisited\\fatal{ÉCHEC}\\else\\ok{SUCCÈS}\\fi]"PP.
%EU>		    ))PP.
%EU>	       )))PP.
%EU>       (goto-char (point-min))PP.
%EU>       (while (re-search-forward "[\\{}]" nil t)PP.
%EU>	 (replace-match (condPP.
%EU>			 ((string= "\\" (match-string 0)) "\\eslash ")PP.
%EU>			 ((string= "{" (match-string 0)) "\\eoa ")PP.
%EU>			 (t  "\\efa "))PP.
%EU>			t t))PP.
%EU>       (buffer-substring (point-min) (point-max)))PP.
%EU>    "}\n\\par\\fi\nProduit : "PP.
%EU>    codePP.
%EU>    "\n\\intertest\n"PP.
%EU>  )))PP.
%EU>(eupp-trim-end)PP.
%EUPP:MLS.
\noindent0000.\par Attendu : [SUCCÈS]\par\ifshowcode
Code : \texttt{[\eslash MGBdrop*\eslash iffalse\eslash XXXXX\eslash MGBdropelse*\eslash iffalse\eslash YYYYY\eslash ok\eoa SUCCÈS\efa \eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash XXXXX]}
\par\fi
Produit : [\MGBdrop*\iffalse\XXXXX\MGBdropelse*\iffalse\YYYYY\ok{SUCCÈS}\YYYYY\fatal{ÉCHEC}\YYYYY\XXXXX]
\intertest
\noindent0001.\par Attendu : [SUCCÈS]\par\ifshowcode
Code : \texttt{[\eslash MGBdrop*\eslash iffalse\eslash XXXXX\eslash MGBdropelse*\eslash iftrue\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash ok\eoa SUCCÈS\efa \eslash YYYYY\eslash XXXXX]}
\par\fi
Produit : [\MGBdrop*\iffalse\XXXXX\MGBdropelse*\iftrue\YYYYY\fatal{ÉCHEC}\YYYYY\ok{SUCCÈS}\YYYYY\XXXXX]
\intertest
\noindent0010.\par Attendu : [SUCCÈS]\par\ifshowcode
Code : \texttt{[\eslash MGBdrop*\eslash iffalse\eslash XXXXX\eslash MGBkeepelse*\eslash iffalse\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash ok\eoa SUCCÈS\efa \eslash YYYYY\eslash XXXXX]}
\par\fi
Produit : [\MGBdrop*\iffalse\XXXXX\MGBkeepelse*\iffalse\YYYYY\fatal{ÉCHEC}\YYYYY\ok{SUCCÈS}\YYYYY\XXXXX]
\intertest
\noindent0011.\par Attendu : [SUCCÈS]\par\ifshowcode
Code : \texttt{[\eslash MGBdrop*\eslash iffalse\eslash XXXXX\eslash MGBkeepelse*\eslash iftrue\eslash YYYYY\eslash ok\eoa SUCCÈS\efa \eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash XXXXX]}
\par\fi
Produit : [\MGBdrop*\iffalse\XXXXX\MGBkeepelse*\iftrue\YYYYY\ok{SUCCÈS}\YYYYY\fatal{ÉCHEC}\YYYYY\XXXXX]
\intertest
\noindent0100.\par Attendu : [SUCCÈS]\par\ifshowcode
Code : \texttt{[\eslash visitedfalse\eslash MGBdrop*\eslash iftrue\eslash XXXXX\eslash visitedtrue\eslash wisitedfalse\eslash MGBdropelse*\eslash iffalse\eslash YYYYY\eslash wisitedtrue\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash unless\eslash ifwisited\eslash fatal\eoa ÉCHEC\efa \eslash fi\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash else\eslash ok\eoa SUCCÈS\efa \eslash fi]}
\par\fi
Produit : [\visitedfalse\MGBdrop*\iftrue\XXXXX\visitedtrue\wisitedfalse\MGBdropelse*\iffalse\YYYYY\wisitedtrue\YYYYY\fatal{ÉCHEC}\YYYYY\unless\ifwisited\fatal{ÉCHEC}\fi\XXXXX\ifvisited\fatal{ÉCHEC}\else\ok{SUCCÈS}\fi]
\intertest
\noindent0101.\par Attendu : [SUCCÈS]\par\ifshowcode
Code : \texttt{[\eslash visitedfalse\eslash MGBdrop*\eslash iftrue\eslash XXXXX\eslash visitedtrue\eslash wisitedfalse\eslash MGBdropelse*\eslash iftrue\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash wisitedtrue\eslash YYYYY\eslash unless\eslash ifwisited\eslash fatal\eoa ÉCHEC\efa \eslash fi\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash else\eslash ok\eoa SUCCÈS\efa \eslash fi]}
\par\fi
Produit : [\visitedfalse\MGBdrop*\iftrue\XXXXX\visitedtrue\wisitedfalse\MGBdropelse*\iftrue\YYYYY\fatal{ÉCHEC}\YYYYY\wisitedtrue\YYYYY\unless\ifwisited\fatal{ÉCHEC}\fi\XXXXX\ifvisited\fatal{ÉCHEC}\else\ok{SUCCÈS}\fi]
\intertest
\noindent0110.\par Attendu : [SUCCÈS]\par\ifshowcode
Code : \texttt{[\eslash visitedfalse\eslash MGBdrop*\eslash iftrue\eslash XXXXX\eslash visitedtrue\eslash wisitedfalse\eslash MGBkeepelse*\eslash iffalse\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash wisitedtrue\eslash YYYYY\eslash unless\eslash ifwisited\eslash fatal\eoa ÉCHEC\efa \eslash fi\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash else\eslash ok\eoa SUCCÈS\efa \eslash fi]}
\par\fi
Produit : [\visitedfalse\MGBdrop*\iftrue\XXXXX\visitedtrue\wisitedfalse\MGBkeepelse*\iffalse\YYYYY\fatal{ÉCHEC}\YYYYY\wisitedtrue\YYYYY\unless\ifwisited\fatal{ÉCHEC}\fi\XXXXX\ifvisited\fatal{ÉCHEC}\else\ok{SUCCÈS}\fi]
\intertest
\noindent0111.\par Attendu : [SUCCÈS]\par\ifshowcode
Code : \texttt{[\eslash visitedfalse\eslash MGBdrop*\eslash iftrue\eslash XXXXX\eslash visitedtrue\eslash wisitedfalse\eslash MGBkeepelse*\eslash iftrue\eslash YYYYY\eslash wisitedtrue\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash unless\eslash ifwisited\eslash fatal\eoa ÉCHEC\efa \eslash fi\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash else\eslash ok\eoa SUCCÈS\efa \eslash fi]}
\par\fi
Produit : [\visitedfalse\MGBdrop*\iftrue\XXXXX\visitedtrue\wisitedfalse\MGBkeepelse*\iftrue\YYYYY\wisitedtrue\YYYYY\fatal{ÉCHEC}\YYYYY\unless\ifwisited\fatal{ÉCHEC}\fi\XXXXX\ifvisited\fatal{ÉCHEC}\else\ok{SUCCÈS}\fi]
\intertest
\noindent1000.\par Attendu : [SUCCÈS]\par\ifshowcode
Code : \texttt{[\eslash visitedfalse\eslash MGBkeep*\eslash iffalse\eslash XXXXX\eslash visitedtrue\eslash wisitedfalse\eslash MGBdropelse*\eslash iffalse\eslash YYYYY\eslash wisitedtrue\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash unless\eslash ifwisited\eslash fatal\eoa ÉCHEC\efa \eslash fi\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash else\eslash ok\eoa SUCCÈS\efa \eslash fi]}
\par\fi
Produit : [\visitedfalse\MGBkeep*\iffalse\XXXXX\visitedtrue\wisitedfalse\MGBdropelse*\iffalse\YYYYY\wisitedtrue\YYYYY\fatal{ÉCHEC}\YYYYY\unless\ifwisited\fatal{ÉCHEC}\fi\XXXXX\ifvisited\fatal{ÉCHEC}\else\ok{SUCCÈS}\fi]
\intertest
\noindent1001.\par Attendu : [SUCCÈS]\par\ifshowcode
Code : \texttt{[\eslash visitedfalse\eslash MGBkeep*\eslash iffalse\eslash XXXXX\eslash visitedtrue\eslash wisitedfalse\eslash MGBdropelse*\eslash iftrue\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash wisitedtrue\eslash YYYYY\eslash unless\eslash ifwisited\eslash fatal\eoa ÉCHEC\efa \eslash fi\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash else\eslash ok\eoa SUCCÈS\efa \eslash fi]}
\par\fi
Produit : [\visitedfalse\MGBkeep*\iffalse\XXXXX\visitedtrue\wisitedfalse\MGBdropelse*\iftrue\YYYYY\fatal{ÉCHEC}\YYYYY\wisitedtrue\YYYYY\unless\ifwisited\fatal{ÉCHEC}\fi\XXXXX\ifvisited\fatal{ÉCHEC}\else\ok{SUCCÈS}\fi]
\intertest
\noindent1010.\par Attendu : [SUCCÈS]\par\ifshowcode
Code : \texttt{[\eslash visitedfalse\eslash MGBkeep*\eslash iffalse\eslash XXXXX\eslash visitedtrue\eslash wisitedfalse\eslash MGBkeepelse*\eslash iffalse\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash wisitedtrue\eslash YYYYY\eslash unless\eslash ifwisited\eslash fatal\eoa ÉCHEC\efa \eslash fi\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash else\eslash ok\eoa SUCCÈS\efa \eslash fi]}
\par\fi
Produit : [\visitedfalse\MGBkeep*\iffalse\XXXXX\visitedtrue\wisitedfalse\MGBkeepelse*\iffalse\YYYYY\fatal{ÉCHEC}\YYYYY\wisitedtrue\YYYYY\unless\ifwisited\fatal{ÉCHEC}\fi\XXXXX\ifvisited\fatal{ÉCHEC}\else\ok{SUCCÈS}\fi]
\intertest
\noindent1011.\par Attendu : [SUCCÈS]\par\ifshowcode
Code : \texttt{[\eslash visitedfalse\eslash MGBkeep*\eslash iffalse\eslash XXXXX\eslash visitedtrue\eslash wisitedfalse\eslash MGBkeepelse*\eslash iftrue\eslash YYYYY\eslash wisitedtrue\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash unless\eslash ifwisited\eslash fatal\eoa ÉCHEC\efa \eslash fi\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash else\eslash ok\eoa SUCCÈS\efa \eslash fi]}
\par\fi
Produit : [\visitedfalse\MGBkeep*\iffalse\XXXXX\visitedtrue\wisitedfalse\MGBkeepelse*\iftrue\YYYYY\wisitedtrue\YYYYY\fatal{ÉCHEC}\YYYYY\unless\ifwisited\fatal{ÉCHEC}\fi\XXXXX\ifvisited\fatal{ÉCHEC}\else\ok{SUCCÈS}\fi]
\intertest
\noindent1100.\par Attendu : [SUCCÈS]\par\ifshowcode
Code : \texttt{[\eslash MGBkeep*\eslash iftrue\eslash XXXXX\eslash MGBdropelse*\eslash iffalse\eslash YYYYY\eslash ok\eoa SUCCÈS\efa \eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash XXXXX]}
\par\fi
Produit : [\MGBkeep*\iftrue\XXXXX\MGBdropelse*\iffalse\YYYYY\ok{SUCCÈS}\YYYYY\fatal{ÉCHEC}\YYYYY\XXXXX]
\intertest
\noindent1101.\par Attendu : [SUCCÈS]\par\ifshowcode
Code : \texttt{[\eslash MGBkeep*\eslash iftrue\eslash XXXXX\eslash MGBdropelse*\eslash iftrue\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash ok\eoa SUCCÈS\efa \eslash YYYYY\eslash XXXXX]}
\par\fi
Produit : [\MGBkeep*\iftrue\XXXXX\MGBdropelse*\iftrue\YYYYY\fatal{ÉCHEC}\YYYYY\ok{SUCCÈS}\YYYYY\XXXXX]
\intertest
\noindent1110.\par Attendu : [SUCCÈS]\par\ifshowcode
Code : \texttt{[\eslash MGBkeep*\eslash iftrue\eslash XXXXX\eslash MGBkeepelse*\eslash iffalse\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash ok\eoa SUCCÈS\efa \eslash YYYYY\eslash XXXXX]}
\par\fi
Produit : [\MGBkeep*\iftrue\XXXXX\MGBkeepelse*\iffalse\YYYYY\fatal{ÉCHEC}\YYYYY\ok{SUCCÈS}\YYYYY\XXXXX]
\intertest
\noindent1111.\par Attendu : [SUCCÈS]\par\ifshowcode
Code : \texttt{[\eslash MGBkeep*\eslash iftrue\eslash XXXXX\eslash MGBkeepelse*\eslash iftrue\eslash YYYYY\eslash ok\eoa SUCCÈS\efa \eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash XXXXX]}
\par\fi
Produit : [\MGBkeep*\iftrue\XXXXX\MGBkeepelse*\iftrue\YYYYY\ok{SUCCÈS}\YYYYY\fatal{ÉCHEC}\YYYYY\XXXXX]
\intertest
%EUPP:BE
\noindent Essais ok : \theok\\Essais nok : \thenok
\end{document}
% Local Variables:
% coding: latin-9
% End:
