// File: DimitriDaSilva[P]42_ft_containers/tester/containers/map/test_map_operations.cpp
// Function: test_map_operations_find()
void
test_map_operations_find()
{
	ft::map<char, int> map;
	ft::map<char, int>::iterator it;

	for (char i = '0'; i <= '9'; i++)
		map.insert(ft::make_pair(i, i));

	print_map_info(map);

	if ((it = map.find('4')) != map.end())
		map.erase(it);

	if ((it = map.find('4')) != map.end())
		map.erase(it);

	if ((it = map.find('2')) != map.end())
		map.erase(it);

	print_map_info(map);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x120, %rsp            # imm = 0x120
leaq -0x30(%rbp), %rdi
callq 0x1bf70
leaq -0x38(%rbp), %rdi
callq 0x1bf90
movb $0x30, -0x39(%rbp)
movsbl -0x39(%rbp), %eax
cmpl $0x39, %eax
jg 0x1a51e
leaq -0x39(%rbp), %rsi
movq %rsi, %rdi
callq 0x1bff0
movw %ax, -0xda(%rbp)
jmp 0x1a4bf
movw -0xda(%rbp), %ax
movw %ax, -0x3b(%rbp)
leaq -0x30(%rbp), %rdi
leaq -0x3b(%rbp), %rsi
callq 0x1bfb0
movb %dl, -0xe9(%rbp)
movq %rax, -0xe8(%rbp)
jmp 0x1a4e6
movb -0xe9(%rbp), %al
movq -0xe8(%rbp), %rcx
movq %rcx, -0x60(%rbp)
movb %al, -0x58(%rbp)
movb -0x39(%rbp), %al
addb $0x1, %al
movb %al, -0x39(%rbp)
jmp 0x1a4a1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x30(%rbp), %rdi
callq 0x1c230
jmp 0x1a6e1
leaq -0x30(%rbp), %rdi
callq 0x1c020
jmp 0x1a529
movb $0x34, -0x69(%rbp)
leaq -0x30(%rbp), %rdi
leaq -0x69(%rbp), %rsi
callq 0x1c190
movq %rax, -0xf8(%rbp)
jmp 0x1a543
movq -0xf8(%rbp), %rax
movq %rax, -0x68(%rbp)
movq -0x68(%rbp), %rax
movq %rax, -0x38(%rbp)
leaq -0x30(%rbp), %rdi
callq 0x1c1c0
movq %rax, -0x78(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x1c160
testb $0x1, %al
jne 0x1a576
jmp 0x1a5a2
movq -0x38(%rbp), %rax
movq %rax, -0x80(%rbp)
movq -0x80(%rbp), %rsi
leaq -0x30(%rbp), %rdi
callq 0x1c1f0
movq %rax, -0x100(%rbp)
jmp 0x1a594
movq -0x100(%rbp), %rax
movq %rax, -0x88(%rbp)
movb $0x34, -0x91(%rbp)
leaq -0x30(%rbp), %rdi
leaq -0x91(%rbp), %rsi
callq 0x1c190
movq %rax, -0x108(%rbp)
jmp 0x1a5c2
movq -0x108(%rbp), %rax
movq %rax, -0x90(%rbp)
movq -0x90(%rbp), %rax
movq %rax, -0x38(%rbp)
leaq -0x30(%rbp), %rdi
callq 0x1c1c0
movq %rax, -0xa0(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0xa0(%rbp), %rsi
callq 0x1c160
testb $0x1, %al
jne 0x1a601
jmp 0x1a633
movq -0x38(%rbp), %rax
movq %rax, -0xa8(%rbp)
movq -0xa8(%rbp), %rsi
leaq -0x30(%rbp), %rdi
callq 0x1c1f0
movq %rax, -0x110(%rbp)
jmp 0x1a625
movq -0x110(%rbp), %rax
movq %rax, -0xb0(%rbp)
movb $0x32, -0xb9(%rbp)
leaq -0x30(%rbp), %rdi
leaq -0xb9(%rbp), %rsi
callq 0x1c190
movq %rax, -0x118(%rbp)
jmp 0x1a653
movq -0x118(%rbp), %rax
movq %rax, -0xb8(%rbp)
movq -0xb8(%rbp), %rax
movq %rax, -0x38(%rbp)
leaq -0x30(%rbp), %rdi
callq 0x1c1c0
movq %rax, -0xc8(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0xc8(%rbp), %rsi
callq 0x1c160
testb $0x1, %al
jne 0x1a692
jmp 0x1a6c4
movq -0x38(%rbp), %rax
movq %rax, -0xd0(%rbp)
movq -0xd0(%rbp), %rsi
leaq -0x30(%rbp), %rdi
callq 0x1c1f0
movq %rax, -0x120(%rbp)
jmp 0x1a6b6
movq -0x120(%rbp), %rax
movq %rax, -0xd8(%rbp)
leaq -0x30(%rbp), %rdi
callq 0x1c020
jmp 0x1a6cf
leaq -0x30(%rbp), %rdi
callq 0x1c230
addq $0x120, %rsp            # imm = 0x120
popq %rbp
retq
movq -0x48(%rbp), %rdi
callq 0x3360
nopw (%rax,%rax)