// File: /workspace/github_cpp_makefile_star2_O1/DimitriDaSilva[P]42_ft_containers/tester/containers/map/test_map_non_member_overloads.cpp
// Function: test_map_non_member_overloads_relation_operators()
void
test_map_non_member_overloads_relation_operators()
{
	ft::map<char, int> foo, bar;
	foo['a'] = 100;
	foo['b'] = 200;
	bar['a'] = 10;
	bar['z'] = 1000;

	if (foo == bar) std::cout << "foo and bar are equal" << std::endl;
	if (foo != bar) std::cout << "foo and bar are not equal" << std::endl;
	if (foo < bar) std::cout << "foo is less than bar" << std::endl;
	if (foo > bar) std::cout << "foo is greater than bar" << std::endl;
	if (foo <= bar) std::cout << "foo is less than or equal to bar" << std::endl;
	if (foo >= bar) std::cout << "foo is greater than or equal to bar" << std::endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x68, %rsp
leaq -0x78(%rbp), %rbx
xorl %eax, %eax
movl %eax, (%rbx)
movq %rax, 0x8(%rbx)
movq %rbx, 0x10(%rbx)
movq %rbx, 0x18(%rbx)
movq %rax, 0x20(%rbx)
leaq -0x48(%rbp), %r14
movl %eax, (%r14)
movq %rax, 0x8(%r14)
movq %r14, 0x10(%r14)
movq %r14, 0x18(%r14)
movq %rax, 0x20(%r14)
leaq -0x19(%rbp), %rsi
movb $0x61, (%rsi)
leaq -0x80(%rbp), %rdi
callq 0xce98
movl $0x64, (%rax)
leaq -0x19(%rbp), %rsi
movb $0x62, (%rsi)
leaq -0x80(%rbp), %rdi
callq 0xce98
movl $0xc8, (%rax)
leaq -0x19(%rbp), %rsi
movb $0x61, (%rsi)
leaq -0x50(%rbp), %rdi
callq 0xce98
movl $0xa, (%rax)
leaq -0x19(%rbp), %rsi
movb $0x7a, (%rsi)
leaq -0x50(%rbp), %rdi
callq 0xce98
movl $0x3e8, (%rax)          # imm = 0x3E8
movq -0x58(%rbp), %rax
cmpq -0x28(%rbp), %rax
jne 0xe35c
movq -0x68(%rbp), %rdi
movq -0x38(%rbp), %rdx
movq %rbx, %rsi
callq 0xe88e
testb %al, %al
je 0xe35c
movq 0x25cb3(%rip), %r15     # 0x33fd0
leaq 0x1813e(%rip), %rsi     # 0x26462
movl $0x15, %edx
movq %r15, %rdi
callq 0x2230
movq (%r15), %rax
addq -0x18(%rax), %r15
movq %r15, %rdi
movl $0xa, %esi
callq 0x21e0
movsbl %al, %esi
movq 0x25c81(%rip), %rdi     # 0x33fd0
callq 0x2030
movq %rax, %rdi
callq 0x2150
movq -0x58(%rbp), %rax
cmpq -0x28(%rbp), %rax
jne 0xe37a
movq -0x68(%rbp), %rdi
movq -0x38(%rbp), %rdx
movq %rbx, %rsi
callq 0xe88e
testb %al, %al
jne 0xe3c0
movq 0x25c4f(%rip), %r15     # 0x33fd0
leaq 0x180f0(%rip), %rsi     # 0x26478
movl $0x19, %edx
movq %r15, %rdi
callq 0x2230
movq (%r15), %rax
addq -0x18(%rax), %r15
movq %r15, %rdi
movl $0xa, %esi
callq 0x21e0
movsbl %al, %esi
movq 0x25c1d(%rip), %rdi     # 0x33fd0
callq 0x2030
movq %rax, %rdi
callq 0x2150
movq -0x68(%rbp), %rdi
movq -0x38(%rbp), %rdx
movq %rbx, %rsi
movq %r14, %rcx
callq 0xe8ff
testb %al, %al
je 0xe41d
movq 0x25bf2(%rip), %r15     # 0x33fd0
leaq 0x180ad(%rip), %rsi     # 0x26492
movl $0x14, %edx
movq %r15, %rdi
callq 0x2230
movq (%r15), %rax
addq -0x18(%rax), %r15
movq %r15, %rdi
movl $0xa, %esi
callq 0x21e0
movsbl %al, %esi
movq 0x25bc0(%rip), %rdi     # 0x33fd0
callq 0x2030
movq %rax, %rdi
callq 0x2150
movq -0x38(%rbp), %rdi
movq -0x68(%rbp), %rdx
movq %r14, %rsi
movq %rbx, %rcx
callq 0xe8ff
testb %al, %al
je 0xe47a
movq 0x25b95(%rip), %r15     # 0x33fd0
leaq 0x18065(%rip), %rsi     # 0x264a7
movl $0x17, %edx
movq %r15, %rdi
callq 0x2230
movq (%r15), %rax
addq -0x18(%rax), %r15
movq %r15, %rdi
movl $0xa, %esi
callq 0x21e0
movsbl %al, %esi
movq 0x25b63(%rip), %rdi     # 0x33fd0
callq 0x2030
movq %rax, %rdi
callq 0x2150
movq -0x38(%rbp), %rdi
movq -0x68(%rbp), %rdx
movq %r14, %rsi
movq %rbx, %rcx
callq 0xe8ff
testb %al, %al
jne 0xe4d7
movq 0x25b38(%rip), %r15     # 0x33fd0
leaq 0x18020(%rip), %rsi     # 0x264bf
movl $0x20, %edx
movq %r15, %rdi
callq 0x2230
movq (%r15), %rax
addq -0x18(%rax), %r15
movq %r15, %rdi
movl $0xa, %esi
callq 0x21e0
movsbl %al, %esi
movq 0x25b06(%rip), %rdi     # 0x33fd0
callq 0x2030
movq %rax, %rdi
callq 0x2150
movq -0x68(%rbp), %rdi
movq -0x38(%rbp), %rdx
movq %rbx, %rsi
movq %r14, %rcx
callq 0xe8ff
testb %al, %al
jne 0xe534
movq 0x25adb(%rip), %rbx     # 0x33fd0
leaq 0x17fe4(%rip), %rsi     # 0x264e0
movl $0x23, %edx
movq %rbx, %rdi
callq 0x2230
movq (%rbx), %rax
addq -0x18(%rax), %rbx
movq %rbx, %rdi
movl $0xa, %esi
callq 0x21e0
movsbl %al, %esi
movq 0x25aa9(%rip), %rdi     # 0x33fd0
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0x50(%rbp), %rdi
callq 0xcf00
leaq -0x80(%rbp), %rdi
callq 0xcf00
addq $0x68, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
jmp 0xe559
jmp 0xe559
jmp 0xe559
jmp 0xe559
movq %rax, %rbx
leaq -0x50(%rbp), %rdi
callq 0xcf00
leaq -0x80(%rbp), %rdi
callq 0xcf00
movq %rbx, %rdi
callq 0x2340