// File: massykezzoul[P]jeu-de-la-vie/configuration/configuration.cpp
// Function: nettoyer_ligne(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
string nettoyer_ligne(string ligne) {
	string sans_comment = ligne;
	// Suppression des commentairess
	sans_comment = sans_comment.substr(0,sans_comment.find_first_of("#"));

	//supprimer les espaces en plus el tes tabulations
	//supprimer les espaces et les tabulations en debut de chaine
	while ((sans_comment[0] == ' ') || (sans_comment[0] == '\t'))
		sans_comment.erase(0,1);

	//supprimer les espaces et les tabulations en mileux de chaine
	unsigned int i = 1;
	while (i < sans_comment.size()) {
		if ((sans_comment[i] == ' ') && (sans_comment[i-1] == ' '))
			sans_comment.erase(i,1);
		else if (sans_comment[i] == '\t') // remplace les tabulation au milieu par un espace
			sans_comment[i] = ' ';
		else
			++i;
	}

	//suprimer les espaces et les tabulations en fin de chaine 
	while ((sans_comment[sans_comment.size()-1] == ' ') || (sans_comment[sans_comment.size()-1] == '\t'))
		sans_comment.erase(sans_comment.size()-1,1);

	return sans_comment;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xc0, %rsp
movq %rdi, -0x58(%rbp)
movq %rdi, %rax
movq %rax, -0x60(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movb $0x0, -0x11(%rbp)
callq 0x3110
movq -0x58(%rbp), %rdi
leaq 0x2d74(%rip), %rsi      # 0xa276
xorl %eax, %eax
movl %eax, %edx
movq %rdx, -0x50(%rbp)
callq 0x3150
movq -0x58(%rbp), %rsi
movq -0x50(%rbp), %rdx
movq %rax, %rcx
leaq -0x38(%rbp), %rdi
callq 0x3260
jmp 0x7525
movq -0x58(%rbp), %rdi
leaq -0x38(%rbp), %rsi
callq 0x32e0
leaq -0x38(%rbp), %rdi
callq 0x3160
movq -0x58(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x3460
movq %rax, -0x68(%rbp)
jmp 0x754e
movq -0x68(%rbp), %rax
movsbl (%rax), %ecx
movb $0x1, %al
cmpl $0x20, %ecx
movb %al, -0x69(%rbp)
je 0x7582
movq -0x58(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x3460
movq %rax, -0x78(%rbp)
jmp 0x7572
movq -0x78(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x9, %eax
sete %al
movb %al, -0x69(%rbp)
movb -0x69(%rbp), %al
testb $0x1, %al
jne 0x758b
jmp 0x75bb
movq -0x58(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
movl $0x1, %edx
callq 0x3090
jmp 0x759f
jmp 0x753b
movq -0x58(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
callq 0x3160
jmp 0x7761
movl $0x1, -0x48(%rbp)
movq -0x58(%rbp), %rdi
movl -0x48(%rbp), %eax
movq %rax, -0x80(%rbp)
callq 0x3190
movq %rax, %rcx
movq -0x80(%rbp), %rax
cmpq %rcx, %rax
jae 0x76a0
movq -0x58(%rbp), %rdi
movl -0x48(%rbp), %eax
movl %eax, %esi
callq 0x3460
movq %rax, -0x88(%rbp)
jmp 0x75f9
movq -0x88(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x20, %eax
jne 0x7647
movq -0x58(%rbp), %rdi
movl -0x48(%rbp), %eax
decl %eax
movl %eax, %esi
callq 0x3460
movq %rax, -0x90(%rbp)
jmp 0x7621
movq -0x90(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x20, %eax
jne 0x7647
movq -0x58(%rbp), %rdi
movl -0x48(%rbp), %eax
movl %eax, %esi
movl $0x1, %edx
callq 0x3090
jmp 0x7645
jmp 0x769b
movq -0x58(%rbp), %rdi
movl -0x48(%rbp), %eax
movl %eax, %esi
callq 0x3460
movq %rax, -0x98(%rbp)
jmp 0x765e
movq -0x98(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x9, %eax
jne 0x7690
movq -0x58(%rbp), %rdi
movl -0x48(%rbp), %eax
movl %eax, %esi
callq 0x3460
movq %rax, -0xa0(%rbp)
jmp 0x7684
movq -0xa0(%rbp), %rax
movb $0x20, (%rax)
jmp 0x7699
movl -0x48(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x48(%rbp)
jmp 0x769b
jmp 0x75c2
jmp 0x76a2
movq -0x58(%rbp), %rdi
callq 0x3190
movq -0x58(%rbp), %rdi
movq %rax, %rsi
decq %rsi
callq 0x3460
movq %rax, -0xa8(%rbp)
jmp 0x76c3
movq -0xa8(%rbp), %rax
movsbl (%rax), %ecx
movb $0x1, %al
cmpl $0x20, %ecx
movb %al, -0xa9(%rbp)
je 0x7711
movq -0x58(%rbp), %rdi
callq 0x3190
movq -0x58(%rbp), %rdi
movq %rax, %rsi
decq %rsi
callq 0x3460
movq %rax, -0xb8(%rbp)
jmp 0x76fb
movq -0xb8(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x9, %eax
sete %al
movb %al, -0xa9(%rbp)
movb -0xa9(%rbp), %al
testb $0x1, %al
jne 0x771d
jmp 0x7741
movq -0x58(%rbp), %rdi
callq 0x3190
movq -0x58(%rbp), %rdi
movq %rax, %rsi
decq %rsi
movl $0x1, %edx
callq 0x3090
jmp 0x773c
jmp 0x76a2
movb $0x1, -0x11(%rbp)
testb $0x1, -0x11(%rbp)
jne 0x7754
movq -0x58(%rbp), %rdi
callq 0x3160
movq -0x60(%rbp), %rax
addq $0xc0, %rsp
popq %rbp
retq
movq -0x40(%rbp), %rdi
callq 0x33f0
nopw (%rax,%rax)