// File: /workspace/github_c_makefile_star2_O3/j4r0g[P]Projet_Labyrinthe/Boite_outils/Outil.c
// Function: OutilTESTER
void OutilTESTER(int iTest){
	int uFois;
	int nT[1+10];
	#define kuConsonneEnTout 44
	#define kuVoyelleEnTout 47
	Appel0(sC2("OutilTESTER,test n°",sEntier(iTest)));
		char *skConsonne="çÇñÑbcdfghjklmnpqrstvwxzBCDFGHJKLMNPQRSTVWXZ";
		char *skVoyelle="ÃãaeiouyéàèùâêîôûäïöüÿAEIOUYÂÊÎÔÛÉÀÙÂÊÎÔÛÄËÏÖÜŸ";
		char *skLettre="çÇñÑbcdfghjklmnpqrstvwxzBCDFGHJKLMNPQRSTVWXZÃãaeiouyéàèùâêîôûäïöüÿAEIOUYÂÊÎÔÛÉÀÙÂÊÎÔÛÄËÏÖÜŸ";
		switch (iTest) {
			case 01:	printf("Le graphe %s un circuit\n",sPas("contient",1)); break;
			case 02:	printf("Le graphe %s un circuit\n",sPas("contient",0)); break;
			case 03:	printf("Il %s circuit\n",sNie("y a",1,"un","aucun")); break;
			case 04:	printf("Il %s boucle\n",sNie("y a",0,"une","aucune")); break;
			case 10:	printf("test des fonctions de concaténation:\n");
			case 11:	printf("11AVANT%sAPRES\n",sC1("a"));
			case 12:	printf("12AVANT%sAPRES\n",sC2("b","c"));
			case 13:	printf("13AVANT%sAPRES\n",sC2b("d","e"));
			case 14:	printf("14AVANT%sAPRES\n",sC2b("f",""));
			case 15:	printf("15AVANT%sAPRES\n",sC2b("","g"));
			case 16:	printf("16AVANT%sAPRES\n",sC2b("",""));
			case 17:	printf("17AVANT%sAPRES\n",sC2bp("",""));
			case 18:	printf("18AVANT%sAPRES\n",sC1p(sC2bp("h", "i")));
			case 19:	printf("19AVANT%sAPRES\n",sC7bp("1","2","3","4","5","6","7"));break;
			case 30:	assert(strlen("étagé")>6);break;//e aigu occupe 2 codes caractères,vu strlen()
			case 50:	assert(nCaractere(skVoyelle)==kuVoyelleEnTout);break;
			case 51:	assert(nCaractere(skConsonne)==kuConsonneEnTout);break;
			case 52:	assert(nCaractere(skLettre)==kuVoyelleEnTout+kuConsonneEnTout);break;
			case 60:	for (uFois=1;uFois<10;uFois++)
							printf("Tirage aléatoire dans [0..3]: %d.\n",nHasard(3));
						for (uFois=1;uFois<10;uFois++)
							printf("Tirage aléatoire dans [1..4]: %d.\n",uHasard(4));
						break;
			case 70:	Titrer("salut");
						Titrer("");
						Titrer("solo");
						break;
			case 80:	printf("Texte: %s.\n",sFois(4,'z'));
						break;
			case 90:	for (uFois=1;uFois<10;uFois++)
							nT[uFois]=5;
						MemIntRaz(nT,10);
						break;
			default:
				break;
		}
	Appel1(sC2("OutilTESTER,test n°",sEntier(iTest)));
}

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
subq $0x10, %rsp
movl %edi, %ebx
movl $0x18, %edi
callq 0x1110
movq %rax, %r14
leaq 0xe93(%rip), %rsi       # 0x61e9
movq %rax, %rdi
movl %ebx, %edx
xorl %eax, %eax
callq 0x1150
leaq 0x1a27(%rip), %rdi      # 0x6d90
movq %r14, %rsi
callq 0x3f5d
movq %rax, %rdi
callq 0x3b31
cmpl $0x31, %ebx
jg 0x53ab
leal -0x1(%rbx), %eax
cmpl $0x12, %eax
ja 0x55f1
leaq 0x14df(%rip), %rcx      # 0x6870
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x1ad1(%rip), %rdi      # 0x6e72
movl $0x1, %esi
jmp 0x5661
cmpl $0x3b, %ebx
jg 0x53ff
cmpl $0x32, %ebx
je 0x56f7
cmpl $0x33, %ebx
je 0x569a
cmpl $0x34, %ebx
jne 0x55f1
leaq 0x1a04(%rip), %rdi      # 0x6dd6
callq 0x44e5
cmpl $0x5b, %eax
je 0x55f1
leaq 0x1bcc(%rip), %rdi      # 0x6fb3
leaq 0x1551(%rip), %rsi      # 0x693f
leaq 0x1b7f(%rip), %rcx      # 0x6f74
movl $0x344, %edx            # imm = 0x344
callq 0x10b0
cmpl $0x50, %ebx
je 0x572b
cmpl $0x46, %ebx
je 0x56ce
cmpl $0x3c, %ebx
jne 0x55f1
movl $0x9, %ebp
leaq 0x1bc4(%rip), %r14      # 0x6fea
movl $0x3, %edi
callq 0x4b93
movq %r14, %rdi
movl %eax, %esi
xorl %eax, %eax
callq 0x10a0
decl %ebp
jne 0x5426
movl $0x9, %ebp
leaq 0x1bc2(%rip), %r14      # 0x700e
movl $0x4, %edi
callq 0x4bc9
movq %r14, %rdi
movl %eax, %esi
xorl %eax, %eax
callq 0x10a0
decl %ebp
jne 0x544c
jmp 0x55f1
leaq 0x1d42(%rip), %rdi      # 0x71b4
callq 0x1070
leaq 0x1a2b(%rip), %rdi      # 0x6ea9
leaq 0x1a07(%rip), %rsi      # 0x6e8c
xorl %eax, %eax
callq 0x10a0
leaq 0x1a36(%rip), %rdi      # 0x6ec9
leaq 0x12b8(%rip), %rsi      # 0x6752
callq 0x3f5d
leaq 0x1a13(%rip), %rdi      # 0x6eb9
movq %rax, %rsi
xorl %eax, %eax
callq 0x10a0
leaq 0xd33(%rip), %rdi       # 0x61ea
leaq 0x1023(%rip), %rsi      # 0x64e1
callq 0x3ff0
leaq 0x1a01(%rip), %rdi      # 0x6ecb
movq %rax, %rsi
xorl %eax, %eax
callq 0x10a0
leaq 0x1a10(%rip), %rdi      # 0x6eeb
leaq 0xdc6(%rip), %rsi       # 0x62a8
callq 0x3ff0
leaq 0x19ed(%rip), %rdi      # 0x6edb
movq %rax, %rsi
xorl %eax, %eax
callq 0x10a0
leaq 0xda9(%rip), %rdi       # 0x62a8
leaq 0x19f7(%rip), %rsi      # 0x6efd
callq 0x3ff0
leaq 0x19db(%rip), %rdi      # 0x6eed
movq %rax, %rsi
xorl %eax, %eax
callq 0x10a0
leaq 0xd85(%rip), %rdi       # 0x62a8
movq %rdi, %rsi
callq 0x3ff0
leaq 0x19cd(%rip), %rdi      # 0x6eff
movq %rax, %rsi
xorl %eax, %eax
callq 0x10a0
leaq 0xd65(%rip), %rdi       # 0x62a8
movq %rdi, %rsi
callq 0x3ff0
leaq 0x1c34(%rip), %rsi      # 0x7186
movq %rax, %rdi
callq 0x3f5d
leaq 0x19ae(%rip), %rdi      # 0x6f0f
movq %rax, %rsi
xorl %eax, %eax
callq 0x10a0
leaq 0x19bd(%rip), %rdi      # 0x6f2f
leaq 0x1047(%rip), %rsi      # 0x65c0
callq 0x3ff0
leaq 0x1c01(%rip), %rsi      # 0x7186
movq %rax, %rdi
callq 0x3f5d
movq %rax, %rdi
callq 0x3f2c
leaq 0x1983(%rip), %rdi      # 0x6f1f
movq %rax, %rsi
xorl %eax, %eax
callq 0x10a0
leaq 0x199e(%rip), %rax      # 0x6f4b
movq %rax, (%rsp)
leaq 0x17c2(%rip), %rdi      # 0x6d7a
leaq 0x1982(%rip), %rsi      # 0x6f41
leaq 0x197d(%rip), %rdx      # 0x6f43
leaq 0x1978(%rip), %rcx      # 0x6f45
leaq 0x1973(%rip), %r8       # 0x6f47
leaq 0x196e(%rip), %r9       # 0x6f49
callq 0x43a7
leaq 0x194a(%rip), %rdi      # 0x6f31
movq %rax, %rsi
xorl %eax, %eax
callq 0x10a0
movl $0x18, %edi
callq 0x1110
movq %rax, %r14
leaq 0xbe4(%rip), %rsi       # 0x61e9
movq %rax, %rdi
movl %ebx, %edx
xorl %eax, %eax
callq 0x1150
leaq 0x1778(%rip), %rdi      # 0x6d90
movq %r14, %rsi
callq 0x3f5d
movq %rax, %rdi
addq $0x10, %rsp
popq %rbx
popq %r14
popq %rbp
jmp 0x3c24
leaq 0x1853(%rip), %rdi      # 0x6e8a
leaq 0x1853(%rip), %rdx      # 0x6e91
leaq 0x1849(%rip), %rcx      # 0x6e8e
movl $0x1, %esi
callq 0x514d
leaq 0x1825(%rip), %rdi      # 0x6e7b
jmp 0x55e7
leaq 0x1813(%rip), %rdi      # 0x6e72
xorl %esi, %esi
callq 0x5746
leaq 0x17ec(%rip), %rdi      # 0x6e59
jmp 0x55e7
leaq 0x1811(%rip), %rdi      # 0x6e8a
leaq 0x1825(%rip), %rdx      # 0x6ea5
leaq 0x181b(%rip), %rcx      # 0x6ea2
xorl %esi, %esi
callq 0x514d
leaq 0x17ff(%rip), %rdi      # 0x6e94
jmp 0x55e7
leaq 0x1704(%rip), %rdi      # 0x6da5
callq 0x44e5
cmpl $0x2c, %eax
je 0x55f1
leaq 0x18d4(%rip), %rdi      # 0x6f8a
leaq 0x1282(%rip), %rsi      # 0x693f
leaq 0x18b0(%rip), %rcx      # 0x6f74
movl $0x343, %edx            # imm = 0x343
callq 0x10b0
leaq 0x195d(%rip), %rdi      # 0x7032
callq 0x57ca
leaq 0xbc7(%rip), %rdi       # 0x62a8
callq 0x57ca
leaq 0x194b(%rip), %rdi      # 0x7038
callq 0x57ca
jmp 0x55f1
leaq 0x1708(%rip), %rdi      # 0x6e06
callq 0x44e5
cmpl $0x2f, %eax
je 0x55f1
leaq 0x183a(%rip), %rdi      # 0x6f4d
leaq 0x1225(%rip), %rsi      # 0x693f
leaq 0x1853(%rip), %rcx      # 0x6f74
movl $0x342, %edx            # imm = 0x342
callq 0x10b0
movl $0x4, %edi
movl $0x7a, %esi
callq 0x4a5f
leaq 0x18fc(%rip), %rdi      # 0x703d
jmp 0x55e7