LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/utils/print_containers_info.hpp
// Function: void print_vec_info<std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>>(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>> const&)
void print_vec_info(Vector const& vec)
{
	std::cout << "Size: " << vec.size() << std::endl;
	std::cout << "Capacity: " << vec.capacity() << std::endl;

	if (vec.empty())
		std::cout << "Vector is empty" << std::endl;
	else
	{
		std::cout << "Values: ";
		for (typename Vector::const_iterator it = vec.begin(); it != vec.end(); it++)
			std::cout << *it << " ";
		std::cout << std::endl;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %r14
movq 0x1a9c6(%rip), %rbx     # 0x33fd0
leaq 0xca9a(%rip), %rsi      # 0x260ab
movl $0x6, %edx
movq %rbx, %rdi
callq 0x2230
movq 0x8(%r14), %rsi
subq (%r14), %rsi
sarq $0x5, %rsi
movq %rbx, %rdi
callq 0x2140
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x21e0
movsbl %al, %esi
movq %r15, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq 0xd46f(%rip), %rsi      # 0x26ad1
movl $0xa, %edx
movq %rbx, %rdi
callq 0x2230
movq 0x10(%r14), %rsi
subq (%r14), %rsi
sarq $0x5, %rsi
movq %rbx, %rdi
callq 0x2140
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x21e0
movsbl %al, %esi
movq %r15, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
movq (%r14), %rax
cmpq 0x8(%r14), %rax
je 0x19710
movq 0x1a914(%rip), %rdi     # 0x33fd0
leaq 0xc9fc(%rip), %rsi      # 0x260bf
movl $0x8, %edx
callq 0x2230
movq (%r14), %r13
cmpq 0x8(%r14), %r13
je 0x19728
movq 0x1a8f3(%rip), %r15     # 0x33fd0
leaq 0xdc26(%rip), %r12      # 0x2730a
movq (%r13), %rsi
movq 0x8(%r13), %rdx
movq %r15, %rdi
callq 0x2230
movl $0x1, %edx
movq %rax, %rdi
movq %r12, %rsi
callq 0x2230
addq $0x20, %r13
cmpq 0x8(%r14), %r13
jne 0x196e4
jmp 0x19728
movq 0x1a8b9(%rip), %rdi     # 0x33fd0
leaq 0xd3be(%rip), %rsi      # 0x26adc
movl $0xf, %edx
callq 0x2230
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x21e0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2150
nop
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_capacity.cpp
// Function: test_vector_capacity_not_full_vector()
void
test_vector_capacity_not_full_vector()
{
	ft::vector<int> vec(6, 42);
	print_vec_info(vec);

	vec.push_back(4);
	vec.push_back(2);
	print_vec_info(vec);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
subq $0x28, %rsp
movl $0x18, %edi
callq 0x2200
movq %rax, -0x28(%rbp)
movq %rax, %rcx
addq $0x18, %rcx
movq %rcx, -0x18(%rbp)
xorl %edx, %edx
movl $0x2a, (%rax,%rdx)
addq $0x4, %rdx
cmpq $0x18, %rdx
jne 0x199c1
leaq -0x28(%rbp), %rdi
movq %rcx, 0x8(%rdi)
callq 0x193f4
movl $0x4, -0xc(%rbp)
movq -0x20(%rbp), %rsi
movq -0x18(%rbp), %rax
cmpq %rax, %rsi
je 0x19a03
movl $0x4, (%rsi)
addq $0x4, %rsi
movq %rsi, -0x20(%rbp)
jmp 0x19a18
leaq -0x28(%rbp), %rdi
leaq -0xc(%rbp), %rdx
callq 0x18afe
movq -0x20(%rbp), %rsi
movq -0x18(%rbp), %rax
movl $0x2, -0xc(%rbp)
cmpq %rax, %rsi
je 0x19a34
movl $0x2, (%rsi)
addq $0x4, %rsi
movq %rsi, -0x20(%rbp)
jmp 0x19a41
leaq -0x28(%rbp), %rdi
leaq -0xc(%rbp), %rdx
callq 0x18afe
leaq -0x28(%rbp), %rdi
callq 0x193f4
movq -0x28(%rbp), %rdi
testq %rdi, %rdi
je 0x19a58
callq 0x21b0
addq $0x28, %rsp
popq %rbx
popq %rbp
retq
jmp 0x19a63
jmp 0x19a63
movq %rax, %rbx
movq -0x28(%rbp), %rdi
testq %rdi, %rdi
je 0x19a74
callq 0x21b0
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_capacity.cpp
// Function: test_vector_capacity_resize_smaller()
void
test_vector_capacity_resize_smaller()
{
	ft::vector<int> vec(6, 42);
	print_vec_info(vec);

	vec.resize(3);

	print_vec_info(vec);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
subq $0x18, %rsp
movl $0x18, %edi
callq 0x2200
movq %rax, -0x20(%rbp)
movq %rax, %rcx
addq $0x18, %rcx
movq %rcx, -0x10(%rbp)
xorl %edx, %edx
movl $0x2a, (%rax,%rdx)
addq $0x4, %rdx
cmpq $0x18, %rdx
jne 0x19aa0
leaq -0x20(%rbp), %rdi
movq %rcx, 0x8(%rdi)
callq 0x193f4
leaq -0x20(%rbp), %rdi
movl $0x3, %esi
callq 0x1a420
leaq -0x20(%rbp), %rdi
callq 0x193f4
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x19ae3
callq 0x21b0
addq $0x18, %rsp
popq %rbx
popq %rbp
retq
movq %rax, %rbx
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x19afb
callq 0x21b0
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_capacity.cpp
// Function: test_vector_capacity_resize_equal()
void
test_vector_capacity_resize_equal()
{
	ft::vector<int> vec(6, 42);
	print_vec_info(vec);

	vec.resize(6);

	print_vec_info(vec);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
subq $0x18, %rsp
movl $0x18, %edi
callq 0x2200
movq %rax, -0x20(%rbp)
movq %rax, %rcx
addq $0x18, %rcx
movq %rcx, -0x10(%rbp)
xorl %edx, %edx
movl $0x2a, (%rax,%rdx)
addq $0x4, %rdx
cmpq $0x18, %rdx
jne 0x19b27
leaq -0x20(%rbp), %rdi
movq %rcx, 0x8(%rdi)
callq 0x193f4
leaq -0x20(%rbp), %rdi
movl $0x6, %esi
callq 0x1a420
leaq -0x20(%rbp), %rdi
callq 0x193f4
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x19b6a
callq 0x21b0
addq $0x18, %rsp
popq %rbx
popq %rbp
retq
movq %rax, %rbx
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x19b82
callq 0x21b0
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_capacity.cpp
// Function: test_vector_capacity_resize_bigger_size()
void
test_vector_capacity_resize_bigger_size()
{
	ft::vector<int> vec(6, 42);
	print_vec_info(vec);

	vec.resize(7);

	print_vec_info(vec);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
subq $0x18, %rsp
movl $0x18, %edi
callq 0x2200
movq %rax, -0x20(%rbp)
movq %rax, %rcx
addq $0x18, %rcx
movq %rcx, -0x10(%rbp)
xorl %edx, %edx
movl $0x2a, (%rax,%rdx)
addq $0x4, %rdx
cmpq $0x18, %rdx
jne 0x19bae
leaq -0x20(%rbp), %rdi
movq %rcx, 0x8(%rdi)
callq 0x193f4
leaq -0x20(%rbp), %rdi
movl $0x7, %esi
callq 0x1a420
leaq -0x20(%rbp), %rdi
callq 0x193f4
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x19bf1
callq 0x21b0
addq $0x18, %rsp
popq %rbx
popq %rbp
retq
movq %rax, %rbx
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x19c09
callq 0x21b0
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_capacity.cpp
// Function: test_vector_capacity_resize_bigger_size_val()
void
test_vector_capacity_resize_bigger_size_val()
{
	ft::vector<std::string> vec(6, "test");
	print_vec_info(vec);

	vec.resize(7, "new test");

	{
		ft::vector<std::string> cpy1(vec);
		print_vec_info(cpy1);
		ft::vector<std::string> cpy2 = vec;
		print_vec_info(cpy2);
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x50, %rsp
leaq -0x20(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0xc526(%rip), %rsi      # 0x26151
leaq 0xc523(%rip), %rdx      # 0x26155
leaq -0x30(%rbp), %rdi
callq 0x2f88
leaq -0x48(%rbp), %rdi
leaq -0x30(%rbp), %rdx
leaq -0x60(%rbp), %rcx
movl $0x6, %esi
callq 0x1955c
movq -0x30(%rbp), %rdi
cmpq %r14, %rdi
je 0x19c5f
callq 0x21b0
leaq -0x48(%rbp), %rdi
callq 0x195f2
leaq -0x30(%rbp), %rdi
movq %r14, (%rdi)
leaq 0xce82(%rip), %rsi      # 0x26af8
leaq 0xce83(%rip), %rdx      # 0x26b00
callq 0x2f88
leaq -0x48(%rbp), %rdi
leaq -0x30(%rbp), %rdx
movl $0x7, %esi
callq 0x1a458
movq -0x30(%rbp), %rdi
cmpq %r14, %rdi
je 0x19ca2
callq 0x21b0
leaq -0x30(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x1a4ce
leaq -0x30(%rbp), %rdi
callq 0x195f2
leaq -0x60(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x1a4ce
leaq -0x60(%rbp), %rdi
callq 0x195f2
leaq -0x60(%rbp), %rdi
callq 0xacd4
leaq -0x30(%rbp), %rdi
callq 0xacd4
leaq -0x48(%rbp), %rdi
callq 0xacd4
addq $0x50, %rsp
popq %rbx
popq %r14
popq %rbp
retq
movq %rax, %rbx
leaq -0x60(%rbp), %rdi
callq 0xacd4
jmp 0x19d05
jmp 0x19d02
movq %rax, %rbx
leaq -0x30(%rbp), %rdi
callq 0xacd4
jmp 0x19d2a
jmp 0x19d27
movq %rax, %rbx
movq -0x30(%rbp), %rdi
cmpq %r14, %rdi
je 0x19d2a
callq 0x21b0
jmp 0x19d2a
jmp 0x19d27
movq %rax, %rbx
leaq -0x48(%rbp), %rdi
callq 0xacd4
movq %rbx, %rdi
callq 0x2340
movq %rax, %rbx
movq -0x30(%rbp), %rdi
cmpq %r14, %rdi
je 0x19d33
callq 0x21b0
jmp 0x19d33
movq %rax, %rbx
jmp 0x19d33
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_capacity.cpp
// Function: test_vector_capacity_resize_bigger_capacity()
void
test_vector_capacity_resize_bigger_capacity()
{
	ft::vector<int> vec(6, 42);
	print_vec_info(vec);

	vec.resize(10);

	print_vec_info(vec);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
subq $0x18, %rsp
movl $0x18, %edi
callq 0x2200
movq %rax, -0x20(%rbp)
movq %rax, %rcx
addq $0x18, %rcx
movq %rcx, -0x10(%rbp)
xorl %edx, %edx
movl $0x2a, (%rax,%rdx)
addq $0x4, %rdx
cmpq $0x18, %rdx
jne 0x19d77
leaq -0x20(%rbp), %rdi
movq %rcx, 0x8(%rdi)
callq 0x193f4
leaq -0x20(%rbp), %rdi
movl $0xa, %esi
callq 0x1a420
leaq -0x20(%rbp), %rdi
callq 0x193f4
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x19dba
callq 0x21b0
addq $0x18, %rsp
popq %rbx
popq %rbp
retq
movq %rax, %rbx
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x19dd2
callq 0x21b0
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_capacity.cpp
// Function: test_vector_capacity_resize_bigger_capacity_val()
void
test_vector_capacity_resize_bigger_capacity_val()
{
	ft::vector<int> vec(6, 42);
	print_vec_info(vec);

	vec.resize(10, 100);

	print_vec_info(vec);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
subq $0x28, %rsp
movl $0x18, %edi
callq 0x2200
movq %rax, -0x20(%rbp)
movq %rax, %rcx
addq $0x18, %rcx
movq %rcx, -0x10(%rbp)
xorl %edx, %edx
movl $0x2a, (%rax,%rdx)
addq $0x4, %rdx
cmpq $0x18, %rdx
jne 0x19dfe
leaq -0x20(%rbp), %rdi
movq %rcx, 0x8(%rdi)
callq 0x193f4
leaq -0x24(%rbp), %rdx
movl $0x64, (%rdx)
leaq -0x20(%rbp), %rdi
movl $0xa, %esi
callq 0x1a55c
leaq -0x20(%rbp), %rdi
callq 0x193f4
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x19e4b
callq 0x21b0
addq $0x28, %rsp
popq %rbx
popq %rbp
retq
jmp 0x19e54
movq %rax, %rbx
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x19e65
callq 0x21b0
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_capacity.cpp
// Function: test_vector_capacity_reserve_bigger_capacity()
void
test_vector_capacity_reserve_bigger_capacity()
{
	ft::vector<int> vec(6, 42);

	print_vec_info(vec);
	vec.reserve(100);
	print_vec_info(vec);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
subq $0x18, %rsp
movl $0x18, %edi
callq 0x2200
movq %rax, -0x20(%rbp)
movq %rax, %rcx
addq $0x18, %rcx
movq %rcx, -0x10(%rbp)
xorl %edx, %edx
movl $0x2a, (%rax,%rdx)
addq $0x4, %rdx
cmpq $0x18, %rdx
jne 0x19e91
leaq -0x20(%rbp), %rdi
movq %rcx, 0x8(%rdi)
callq 0x193f4
leaq -0x20(%rbp), %rdi
movl $0x64, %esi
callq 0x1a596
leaq -0x20(%rbp), %rdi
callq 0x193f4
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x19ed4
callq 0x21b0
addq $0x18, %rsp
popq %rbx
popq %rbp
retq
movq %rax, %rbx
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x19eec
callq 0x21b0
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_capacity.cpp
// Function: test_vector_capacity_reserve_smaller_capacity()
void
test_vector_capacity_reserve_smaller_capacity()
{
	ft::vector<int> vec(6, 42);

	print_vec_info(vec);
	vec.reserve(-1);
	print_vec_info(vec);
	vec.reserve(1);
	print_vec_info(vec);
	vec.reserve(6);
	print_vec_info(vec);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
subq $0x18, %rsp
movl $0x18, %edi
callq 0x2200
movq %rax, -0x20(%rbp)
movq %rax, %rcx
addq $0x18, %rcx
movq %rcx, -0x10(%rbp)
xorl %edx, %edx
movl $0x2a, (%rax,%rdx)
addq $0x4, %rdx
cmpq $0x18, %rdx
jne 0x19f18
leaq -0x20(%rbp), %rdi
movq %rcx, 0x8(%rdi)
callq 0x193f4
leaq 0xcce7(%rip), %rdi      # 0x26c24
callq 0x20e0
movq %rax, %rbx
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x19f53
callq 0x21b0
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_allocator.cpp
// Function: test_vector_allocator_cplusplus()
void
test_vector_allocator_cplusplus()
{
	ft::vector<int> myvector;
	int* p;
	unsigned int i;

	// allocate an array with space for 5 elements using vector's allocator:
	p = myvector.get_allocator().allocate(5);

	// construct values in-place on the array:
	for (i = 0; i < 5; i++)
		myvector.get_allocator().construct(&p[i], i);

	std::cout << "The allocated array contains:";
	for (i = 0; i < 5; i++)
		std::cout << ' ' << p[i];
	std::cout << std::endl;

	// destroy and deallocate:
	for (i = 0; i < 5; i++)
		myvector.get_allocator().destroy(&p[i]);
	myvector.get_allocator().deallocate(p, 5);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x10, %rsp
movl $0x14, %edi
callq 0x2200
movq %rax, %rbx
xorl %eax, %eax
movl %eax, (%rbx,%rax,4)
incq %rax
cmpq $0x5, %rax
jne 0x1adfe
movq 0x191bf(%rip), %r14     # 0x33fd0
leaq 0xb251(%rip), %rsi      # 0x26069
movl $0x1d, %edx
movq %r14, %rdi
callq 0x2230
xorl %r12d, %r12d
leaq -0x21(%rbp), %r15
movb $0x20, -0x21(%rbp)
movl $0x1, %edx
movq %r14, %rdi
movq %r15, %rsi
callq 0x2230
movl (%rbx,%r12,4), %esi
movq %rax, %rdi
callq 0x2330
incq %r12
cmpq $0x5, %r12
jne 0x1ae2c
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x21e0
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
movq %rbx, %rdi
callq 0x21b0
addq $0x10, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_allocator.cpp
// Function: test_vector_allocator_custom_allocator()
void
test_vector_allocator_custom_allocator()
{
	ft::vector<int, custom_allocator<int> > vec(6, 42);
	print_vec_info(vec);

	vec.push_back(4);
	print_vec_info(vec);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
subq $0x28, %rsp
movl $0x18, %edi
callq 0x2200
movq %rax, -0x28(%rbp)
leaq 0x18(%rax), %rcx
movq %rcx, -0x18(%rbp)
xorl %ecx, %ecx
movl $0x2a, (%rax,%rcx)
addq $0x4, %rcx
cmpq $0x18, %rcx
jne 0x1aeb2
addq %rcx, %rax
leaq -0x28(%rbp), %rdi
movq %rax, 0x8(%rdi)
callq 0x1b0cb
movl $0x4, -0xc(%rbp)
movq -0x20(%rbp), %rsi
cmpq -0x18(%rbp), %rsi
je 0x1aef4
movl $0x4, (%rsi)
addq $0x4, %rsi
movq %rsi, -0x20(%rbp)
jmp 0x1af01
leaq -0x28(%rbp), %rdi
leaq -0xc(%rbp), %rdx
callq 0x1b48e
leaq -0x28(%rbp), %rdi
callq 0x1b0cb
movq -0x28(%rbp), %rdi
testq %rdi, %rdi
je 0x1af18
callq 0x21b0
addq $0x28, %rsp
popq %rbx
popq %rbp
retq
jmp 0x1af21
movq %rax, %rbx
movq -0x28(%rbp), %rdi
testq %rdi, %rdi
je 0x1af32
callq 0x21b0
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_constructors.cpp
// Function: test_vector_constructors_fill_standard()
void
test_vector_constructors_fill_standard()
{
	ft::vector<int> vec(6, 42);
	print_vec_info(vec);

	// Because fill constructor only allocates exact needed memory
	// we test if push_back triggers same memory allocation as std
	vec.push_back(4);
	print_vec_info(vec);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
subq $0x28, %rsp
movl $0x18, %edi
callq 0x2200
movq %rax, -0x28(%rbp)
movq %rax, %rcx
addq $0x18, %rcx
movq %rcx, -0x18(%rbp)
xorl %edx, %edx
movl $0x2a, (%rax,%rdx)
addq $0x4, %rdx
cmpq $0x18, %rdx
jne 0x1b6c2
leaq -0x28(%rbp), %rdi
movq %rcx, 0x8(%rdi)
callq 0x193f4
movl $0x4, -0xc(%rbp)
movq -0x20(%rbp), %rsi
cmpq -0x18(%rbp), %rsi
je 0x1b701
movl $0x4, (%rsi)
addq $0x4, %rsi
movq %rsi, -0x20(%rbp)
jmp 0x1b70e
leaq -0x28(%rbp), %rdi
leaq -0xc(%rbp), %rdx
callq 0x18afe
leaq -0x28(%rbp), %rdi
callq 0x193f4
movq -0x28(%rbp), %rdi
testq %rdi, %rdi
je 0x1b725
callq 0x21b0
addq $0x28, %rsp
popq %rbx
popq %rbp
retq
jmp 0x1b72e
movq %rax, %rbx
movq -0x28(%rbp), %rdi
testq %rdi, %rdi
je 0x1b73f
callq 0x21b0
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_constructors.cpp
// Function: test_vector_constructors_copy()
void
test_vector_constructors_copy()
{
	ft::vector<int> vec(42, 42);
	print_vec_info(vec);

	ft::vector<int> cpy = vec;
	print_vec_info(cpy);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
subq $0x38, %rsp
movl $0xa8, %edi
callq 0x2200
movq %rax, -0x20(%rbp)
movq %rax, %rcx
addq $0xa8, %rcx
movq %rcx, -0x10(%rbp)
xorl %edx, %edx
movl $0x2a, (%rax,%rdx)
addq $0x4, %rdx
cmpq $0xa8, %rdx
jne 0x1b7fe
leaq -0x20(%rbp), %rdi
movq %rcx, 0x8(%rdi)
callq 0x193f4
leaq -0x38(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x1767e
leaq -0x38(%rbp), %rdi
callq 0x193f4
movq -0x38(%rbp), %rdi
testq %rdi, %rdi
je 0x1b843
callq 0x21b0
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x1b851
callq 0x21b0
addq $0x38, %rsp
popq %rbx
popq %rbp
retq
movq %rax, %rbx
movq -0x38(%rbp), %rdi
testq %rdi, %rdi
je 0x1b870
callq 0x21b0
jmp 0x1b870
jmp 0x1b86d
movq %rax, %rbx
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x1b87e
callq 0x21b0
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_constructors.cpp
// Function: test_vector_constructors_deepness()
void
test_vector_constructors_deepness()
{
	ft::vector<int> vec(42, 42);
	print_vec_info(vec);

	{
		ft::vector<int> cpy1(vec);
		print_vec_info(cpy1);
		ft::vector<int> cpy2 = vec;
		print_vec_info(cpy2);
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
subq $0x48, %rsp
movl $0xa8, %edi
callq 0x2200
movq %rax, -0x20(%rbp)
movq %rax, %rcx
addq $0xa8, %rcx
movq %rcx, -0x10(%rbp)
xorl %edx, %edx
movl $0x2a, (%rax,%rdx)
addq $0x4, %rdx
cmpq $0xa8, %rdx
jne 0x1b8ad
leaq -0x20(%rbp), %rdi
movq %rcx, 0x8(%rdi)
callq 0x193f4
leaq -0x50(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x1767e
leaq -0x50(%rbp), %rdi
callq 0x193f4
leaq -0x38(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x1767e
leaq -0x38(%rbp), %rdi
callq 0x193f4
movq -0x38(%rbp), %rdi
testq %rdi, %rdi
je 0x1b908
callq 0x21b0
movq -0x50(%rbp), %rdi
testq %rdi, %rdi
je 0x1b916
callq 0x21b0
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x1b924
callq 0x21b0
addq $0x48, %rsp
popq %rbx
popq %rbp
retq
movq %rax, %rbx
movq -0x38(%rbp), %rdi
testq %rdi, %rdi
je 0x1b943
callq 0x21b0
jmp 0x1b943
jmp 0x1b940
movq %rax, %rbx
movq -0x50(%rbp), %rdi
testq %rdi, %rdi
je 0x1b958
callq 0x21b0
jmp 0x1b958
jmp 0x1b955
movq %rax, %rbx
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x1b966
callq 0x21b0
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_constructors.cpp
// Function: test_vector_constructors_strings()
void
test_vector_constructors_strings()
{
	ft::vector<std::string> vec(42, "test");
	print_vec_info(vec);

	{
		ft::vector<std::string> cpy1(vec);
		print_vec_info(cpy1);
		ft::vector<std::string> cpy2 = vec;
		print_vec_info(cpy2);
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x50, %rsp
leaq -0x20(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0xa7c9(%rip), %rsi      # 0x26151
leaq 0xa7c6(%rip), %rdx      # 0x26155
leaq -0x30(%rbp), %rdi
callq 0x2f88
leaq -0x48(%rbp), %rdi
leaq -0x30(%rbp), %rdx
leaq -0x60(%rbp), %rcx
movl $0x2a, %esi
callq 0x1955c
movq -0x30(%rbp), %rdi
cmpq %r14, %rdi
je 0x1b9bc
callq 0x21b0
leaq -0x48(%rbp), %rdi
callq 0x195f2
leaq -0x30(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x1a4ce
leaq -0x30(%rbp), %rdi
callq 0x195f2
leaq -0x60(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x1a4ce
leaq -0x60(%rbp), %rdi
callq 0x195f2
leaq -0x60(%rbp), %rdi
callq 0xacd4
leaq -0x30(%rbp), %rdi
callq 0xacd4
leaq -0x48(%rbp), %rdi
callq 0xacd4
addq $0x50, %rsp
popq %rbx
popq %r14
popq %rbp
retq
movq %rax, %rbx
leaq -0x60(%rbp), %rdi
callq 0xacd4
jmp 0x1ba28
jmp 0x1ba25
movq %rax, %rbx
leaq -0x30(%rbp), %rdi
callq 0xacd4
jmp 0x1ba38
jmp 0x1ba35
movq %rax, %rbx
leaq -0x48(%rbp), %rdi
callq 0xacd4
movq %rbx, %rdi
callq 0x2340
movq %rax, %rbx
movq -0x30(%rbp), %rdi
cmpq %r14, %rdi
je 0x1ba41
callq 0x21b0
jmp 0x1ba41
movq %rax, %rbx
jmp 0x1ba41
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_constructors.cpp
// Function: test_vector_constructors_copy_const()
void
test_vector_constructors_copy_const()
{
	ft::vector<int> vec(6, 42);
	print_vec_info(vec);

	ft::vector<int> const const_vec1(vec);
	print_vec_info(const_vec1);

	ft::vector<int> const const_vec2 = vec;
	print_vec_info(const_vec2);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
subq $0x48, %rsp
movl $0x18, %edi
callq 0x2200
movq %rax, -0x20(%rbp)
movq %rax, %rcx
addq $0x18, %rcx
movq %rcx, -0x10(%rbp)
xorl %edx, %edx
movl $0x2a, (%rax,%rdx)
addq $0x4, %rdx
cmpq $0x18, %rdx
jne 0x1ba85
leaq -0x20(%rbp), %rdi
movq %rcx, 0x8(%rdi)
callq 0x193f4
leaq -0x50(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x1767e
leaq -0x50(%rbp), %rdi
callq 0x193f4
leaq -0x38(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x1767e
leaq -0x38(%rbp), %rdi
callq 0x193f4
movq -0x38(%rbp), %rdi
testq %rdi, %rdi
je 0x1badd
callq 0x21b0
movq -0x50(%rbp), %rdi
testq %rdi, %rdi
je 0x1baeb
callq 0x21b0
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x1baf9
callq 0x21b0
addq $0x48, %rsp
popq %rbx
popq %rbp
retq
movq %rax, %rbx
movq -0x38(%rbp), %rdi
testq %rdi, %rdi
je 0x1bb18
callq 0x21b0
jmp 0x1bb18
jmp 0x1bb15
movq %rax, %rbx
movq -0x50(%rbp), %rdi
testq %rdi, %rdi
je 0x1bb2d
callq 0x21b0
jmp 0x1bb2d
jmp 0x1bb2a
movq %rax, %rbx
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x1bb3b
callq 0x21b0
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_assign_range_empty_dest()
void
test_vector_modifiers_assign_range_empty_dest()
{
	ft::vector<std::string> vec(5, "test");
	ft::vector<std::string> new_vec;
	ft::vector<std::string>::iterator it = new_vec.begin();

	new_vec.assign(vec.begin(), vec.end());
	print_vec_info(vec);
	print_vec_info(new_vec);

	ft::vector<std::string>::iterator new_it = new_vec.begin();
	if (&*it != &*new_it)
		std::cout << "Reallocation occurred" << std::endl;

	{
		ft::vector<std::string> cpy1 = new_vec;
		print_vec_info(cpy1);
		ft::vector<std::string> cpy2(new_vec);
		print_vec_info(cpy2);
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x70, %rsp
leaq -0x20(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0xa2eb(%rip), %rsi      # 0x26151
leaq 0xa2e8(%rip), %rdx      # 0x26155
leaq -0x30(%rbp), %rdi
callq 0x2f88
leaq -0x48(%rbp), %rdi
leaq -0x30(%rbp), %rdx
leaq -0x60(%rbp), %rcx
movl $0x5, %esi
callq 0x1955c
movq -0x30(%rbp), %rdi
cmpq %r14, %rdi
je 0x1be9a
callq 0x21b0
xorps %xmm0, %xmm0
leaq -0x30(%rbp), %rdi
movaps %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
movq -0x48(%rbp), %rsi
movq -0x40(%rbp), %rdx
callq 0x21324
leaq -0x48(%rbp), %rdi
callq 0x195f2
leaq -0x30(%rbp), %rdi
callq 0x195f2
cmpq $0x0, -0x30(%rbp)
je 0x1bf18
movq 0x180f7(%rip), %rbx     # 0x33fd0
leaq 0xad85(%rip), %rsi      # 0x26c65
movl $0x15, %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 0x180c5(%rip), %rdi     # 0x33fd0
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0x60(%rbp), %rdi
leaq -0x30(%rbp), %rsi
callq 0x1a4ce
leaq -0x60(%rbp), %rdi
callq 0x195f2
leaq -0x78(%rbp), %rdi
leaq -0x30(%rbp), %rsi
callq 0x1a4ce
leaq -0x78(%rbp), %rdi
callq 0x195f2
leaq -0x78(%rbp), %rdi
callq 0xacd4
leaq -0x60(%rbp), %rdi
callq 0xacd4
leaq -0x30(%rbp), %rdi
callq 0xacd4
leaq -0x48(%rbp), %rdi
callq 0xacd4
addq $0x70, %rsp
popq %rbx
popq %r14
popq %rbp
retq
movq %rax, %rbx
leaq -0x78(%rbp), %rdi
callq 0xacd4
jmp 0x1bf84
jmp 0x1bf81
movq %rax, %rbx
leaq -0x60(%rbp), %rdi
callq 0xacd4
jmp 0x1bfae
jmp 0x1bfab
movq %rax, %rbx
movq -0x30(%rbp), %rdi
cmpq %r14, %rdi
je 0x1bfc0
callq 0x21b0
jmp 0x1bfc0
movq %rax, %rbx
jmp 0x1bfc0
jmp 0x1bfab
movq %rax, %rbx
leaq -0x30(%rbp), %rdi
callq 0xacd4
leaq -0x48(%rbp), %rdi
callq 0xacd4
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_assign_range_not_empty_dest1()
void
test_vector_modifiers_assign_range_not_empty_dest1()
{
	ft::vector<std::string> vec(5, "test");
	ft::vector<std::string> new_vec(2, "42");
	ft::vector<std::string>::iterator it = new_vec.begin();

	print_vec_info(new_vec);
	new_vec.assign(vec.begin(), vec.end());
	print_vec_info(vec);
	print_vec_info(new_vec);

	ft::vector<std::string>::iterator new_it = new_vec.begin();
	if (&*it != &*new_it)
		std::cout << "Reallocation occurred" << std::endl;

	{
		ft::vector<std::string> cpy1 = new_vec;
		print_vec_info(cpy1);
		ft::vector<std::string> cpy2(new_vec);
		print_vec_info(cpy2);
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x70, %rsp
leaq -0x38(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0xa16f(%rip), %rsi      # 0x26151
leaq 0xa16c(%rip), %rdx      # 0x26155
leaq -0x48(%rbp), %rdi
callq 0x2f88
leaq -0x60(%rbp), %rdi
leaq -0x48(%rbp), %rdx
leaq -0x28(%rbp), %rcx
movl $0x5, %esi
callq 0x1955c
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c016
callq 0x21b0
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0xaa62(%rip), %rsi      # 0x26a86
leaq 0xaa5d(%rip), %rdx      # 0x26a88
callq 0x2f88
leaq -0x28(%rbp), %rdi
leaq -0x48(%rbp), %rdx
leaq -0x78(%rbp), %rcx
movl $0x2, %esi
callq 0x1955c
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c054
callq 0x21b0
leaq -0x28(%rbp), %rdi
movq (%rdi), %rbx
callq 0x195f2
movq -0x60(%rbp), %rsi
movq -0x58(%rbp), %rdx
leaq -0x28(%rbp), %rdi
callq 0x21324
leaq -0x60(%rbp), %rdi
callq 0x195f2
leaq -0x28(%rbp), %rdi
callq 0x195f2
cmpq -0x28(%rbp), %rbx
je 0x1c0cf
movq 0x17f40(%rip), %rbx     # 0x33fd0
leaq 0xabce(%rip), %rsi      # 0x26c65
movl $0x15, %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 0x17f0e(%rip), %rdi     # 0x33fd0
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0x48(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x1a4ce
leaq -0x48(%rbp), %rdi
callq 0x195f2
leaq -0x78(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x1a4ce
leaq -0x78(%rbp), %rdi
callq 0x195f2
leaq -0x78(%rbp), %rdi
callq 0xacd4
leaq -0x48(%rbp), %rdi
callq 0xacd4
leaq -0x28(%rbp), %rdi
callq 0xacd4
leaq -0x60(%rbp), %rdi
callq 0xacd4
addq $0x70, %rsp
popq %rbx
popq %r14
popq %rbp
retq
movq %rax, %rbx
leaq -0x78(%rbp), %rdi
callq 0xacd4
jmp 0x1c13b
jmp 0x1c138
movq %rax, %rbx
leaq -0x48(%rbp), %rdi
callq 0xacd4
jmp 0x1c17d
jmp 0x1c17a
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c186
callq 0x21b0
jmp 0x1c186
movq %rax, %rbx
jmp 0x1c186
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c18f
callq 0x21b0
jmp 0x1c18f
movq %rax, %rbx
jmp 0x1c18f
jmp 0x1c17a
movq %rax, %rbx
leaq -0x28(%rbp), %rdi
callq 0xacd4
leaq -0x60(%rbp), %rdi
callq 0xacd4
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_assign_range_not_empty_dest3()
void
test_vector_modifiers_assign_range_not_empty_dest3()
{
	ft::vector<std::string> vec(5, "test");
	ft::vector<std::string> new_vec(100, "42");
	ft::vector<std::string>::iterator it = new_vec.begin();

	print_vec_info(new_vec);
	new_vec.assign(vec.begin(), vec.end());
	print_vec_info(vec);
	print_vec_info(new_vec);

	ft::vector<std::string>::iterator new_it = new_vec.begin();
	if (&*it != &*new_it)
		std::cout << "Reallocation occurred" << std::endl;

	{
		ft::vector<std::string> cpy1 = new_vec;
		print_vec_info(cpy1);
		ft::vector<std::string> cpy2(new_vec);
		print_vec_info(cpy2);
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x70, %rsp
leaq -0x38(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x9dd1(%rip), %rsi      # 0x26151
leaq 0x9dce(%rip), %rdx      # 0x26155
leaq -0x48(%rbp), %rdi
callq 0x2f88
leaq -0x60(%rbp), %rdi
leaq -0x48(%rbp), %rdx
leaq -0x28(%rbp), %rcx
movl $0x5, %esi
callq 0x1955c
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c3b4
callq 0x21b0
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0xa6c4(%rip), %rsi      # 0x26a86
leaq 0xa6bf(%rip), %rdx      # 0x26a88
callq 0x2f88
leaq -0x28(%rbp), %rdi
leaq -0x48(%rbp), %rdx
leaq -0x78(%rbp), %rcx
movl $0x64, %esi
callq 0x1955c
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c3f2
callq 0x21b0
leaq -0x28(%rbp), %rdi
movq (%rdi), %rbx
callq 0x195f2
movq -0x60(%rbp), %rsi
movq -0x58(%rbp), %rdx
leaq -0x28(%rbp), %rdi
callq 0x21324
leaq -0x60(%rbp), %rdi
callq 0x195f2
leaq -0x28(%rbp), %rdi
callq 0x195f2
cmpq -0x28(%rbp), %rbx
je 0x1c46d
movq 0x17ba2(%rip), %rbx     # 0x33fd0
leaq 0xa830(%rip), %rsi      # 0x26c65
movl $0x15, %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 0x17b70(%rip), %rdi     # 0x33fd0
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0x48(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x1a4ce
leaq -0x48(%rbp), %rdi
callq 0x195f2
leaq -0x78(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x1a4ce
leaq -0x78(%rbp), %rdi
callq 0x195f2
leaq -0x78(%rbp), %rdi
callq 0xacd4
leaq -0x48(%rbp), %rdi
callq 0xacd4
leaq -0x28(%rbp), %rdi
callq 0xacd4
leaq -0x60(%rbp), %rdi
callq 0xacd4
addq $0x70, %rsp
popq %rbx
popq %r14
popq %rbp
retq
movq %rax, %rbx
leaq -0x78(%rbp), %rdi
callq 0xacd4
jmp 0x1c4d9
jmp 0x1c4d6
movq %rax, %rbx
leaq -0x48(%rbp), %rdi
callq 0xacd4
jmp 0x1c51b
jmp 0x1c518
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c524
callq 0x21b0
jmp 0x1c524
movq %rax, %rbx
jmp 0x1c524
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c52d
callq 0x21b0
jmp 0x1c52d
movq %rax, %rbx
jmp 0x1c52d
jmp 0x1c518
movq %rax, %rbx
leaq -0x28(%rbp), %rdi
callq 0xacd4
leaq -0x60(%rbp), %rdi
callq 0xacd4
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_assign_range_empty_src()
void
test_vector_modifiers_assign_range_empty_src()
{
	ft::vector<std::string> vec;
	ft::vector<std::string> new_vec;
	ft::vector<std::string>::iterator it = new_vec.begin();

	new_vec.assign(vec.begin(), vec.end());
	print_vec_info(vec);
	print_vec_info(new_vec);

	ft::vector<std::string>::iterator new_it = new_vec.begin();
	if (&*it != &*new_it)
		std::cout << "Reallocation occurred" << std::endl;

	{
		ft::vector<std::string> cpy1 = new_vec;
		print_vec_info(cpy1);
		ft::vector<std::string> cpy2(new_vec);
		print_vec_info(cpy2);
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
subq $0x68, %rsp
xorps %xmm0, %xmm0
movaps %xmm0, -0x40(%rbp)
xorl %eax, %eax
movq %rax, -0x30(%rbp)
leaq -0x20(%rbp), %rdi
movq %rax, 0x10(%rdi)
movaps %xmm0, (%rdi)
xorl %esi, %esi
xorl %edx, %edx
callq 0x21324
leaq -0x40(%rbp), %rdi
callq 0x195f2
leaq -0x20(%rbp), %rdi
callq 0x195f2
cmpq $0x0, -0x20(%rbp)
je 0x1c5be
movq 0x17a51(%rip), %rbx     # 0x33fd0
leaq 0xa6df(%rip), %rsi      # 0x26c65
movl $0x15, %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 0x17a1f(%rip), %rdi     # 0x33fd0
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0x70(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x1a4ce
leaq -0x70(%rbp), %rdi
callq 0x195f2
leaq -0x58(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x1a4ce
leaq -0x58(%rbp), %rdi
callq 0x195f2
leaq -0x58(%rbp), %rdi
callq 0xacd4
leaq -0x70(%rbp), %rdi
callq 0xacd4
leaq -0x20(%rbp), %rdi
callq 0xacd4
leaq -0x40(%rbp), %rdi
callq 0xacd4
addq $0x68, %rsp
popq %rbx
popq %rbp
retq
movq %rax, %rbx
leaq -0x58(%rbp), %rdi
callq 0xacd4
jmp 0x1c628
jmp 0x1c625
movq %rax, %rbx
leaq -0x70(%rbp), %rdi
callq 0xacd4
jmp 0x1c63a
jmp 0x1c637
jmp 0x1c637
movq %rax, %rbx
leaq -0x20(%rbp), %rdi
callq 0xacd4
leaq -0x40(%rbp), %rdi
callq 0xacd4
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_assign_range_wrong_iterators()
void
test_vector_modifiers_assign_range_wrong_iterators()
{
	ft::vector<std::string> vec;
	ft::vector<std::string> new_vec;

	new_vec.assign(vec.end(), vec.begin());
	print_vec_info(vec);
	print_vec_info(new_vec);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
subq $0x38, %rsp
xorps %xmm0, %xmm0
movaps %xmm0, -0x20(%rbp)
xorl %eax, %eax
movq %rax, -0x10(%rbp)
leaq -0x40(%rbp), %rdi
movq %rax, 0x10(%rdi)
movaps %xmm0, (%rdi)
xorl %esi, %esi
xorl %edx, %edx
callq 0x21324
leaq -0x20(%rbp), %rdi
callq 0x195f2
leaq -0x40(%rbp), %rdi
callq 0x195f2
leaq -0x40(%rbp), %rdi
callq 0xacd4
leaq -0x20(%rbp), %rdi
callq 0xacd4
addq $0x38, %rsp
popq %rbx
popq %rbp
retq
movq %rax, %rbx
leaq -0x40(%rbp), %rdi
callq 0xacd4
leaq -0x20(%rbp), %rdi
callq 0xacd4
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_assign_fill_empty()
void
test_vector_modifiers_assign_fill_empty()
{
	ft::vector<std::string> vec;

	print_vec_info(vec);
	vec.assign(5, "42");
	print_vec_info(vec);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x40, %rsp
xorps %xmm0, %xmm0
leaq -0x30(%rbp), %rdi
movaps %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
callq 0x195f2
leaq -0x40(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0xa38f(%rip), %rsi      # 0x26a86
leaq 0xa38a(%rip), %rdx      # 0x26a88
leaq -0x50(%rbp), %rdi
callq 0x2f88
leaq -0x30(%rbp), %rdi
leaq -0x50(%rbp), %rdx
movl $0x5, %esi
callq 0x215c6
movq -0x50(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c727
callq 0x21b0
leaq -0x30(%rbp), %rdi
callq 0x195f2
leaq -0x30(%rbp), %rdi
callq 0xacd4
addq $0x40, %rsp
popq %rbx
popq %r14
popq %rbp
retq
movq %rax, %rbx
movq -0x50(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c75a
callq 0x21b0
jmp 0x1c75a
jmp 0x1c757
movq %rax, %rbx
leaq -0x30(%rbp), %rdi
callq 0xacd4
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_assign_fill1()
void
test_vector_modifiers_assign_fill1()
{
	ft::vector<std::string> vec(5, "test");

	print_vec_info(vec);
	vec.assign(0, "42");
	print_vec_info(vec);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x40, %rsp
leaq -0x28(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x99cc(%rip), %rsi      # 0x26151
leaq 0x99c9(%rip), %rdx      # 0x26155
leaq -0x38(%rbp), %rdi
callq 0x2f88
leaq -0x50(%rbp), %rdi
leaq -0x38(%rbp), %rdx
leaq -0x11(%rbp), %rcx
movl $0x5, %esi
callq 0x1955c
movq -0x38(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c7b9
callq 0x21b0
leaq -0x50(%rbp), %rdi
callq 0x195f2
leaq -0x38(%rbp), %rdi
movq %r14, (%rdi)
leaq 0xa2b6(%rip), %rsi      # 0x26a86
leaq 0xa2b1(%rip), %rdx      # 0x26a88
callq 0x2f88
leaq -0x50(%rbp), %rdi
leaq -0x38(%rbp), %rdx
xorl %esi, %esi
callq 0x215c6
movq -0x38(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c7f9
callq 0x21b0
leaq -0x50(%rbp), %rdi
callq 0x195f2
leaq -0x50(%rbp), %rdi
callq 0xacd4
addq $0x40, %rsp
popq %rbx
popq %r14
popq %rbp
retq
movq %rax, %rbx
movq -0x38(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c844
callq 0x21b0
jmp 0x1c844
jmp 0x1c841
movq %rax, %rbx
movq -0x38(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c84d
callq 0x21b0
jmp 0x1c84d
movq %rax, %rbx
jmp 0x1c84d
movq %rax, %rbx
leaq -0x50(%rbp), %rdi
callq 0xacd4
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_assign_fill2()
void
test_vector_modifiers_assign_fill2()
{
	ft::vector<std::string> vec(10, "test");

	print_vec_info(vec);
	vec.assign(10, "42");
	print_vec_info(vec);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x40, %rsp
leaq -0x28(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x98e2(%rip), %rsi      # 0x26151
leaq 0x98df(%rip), %rdx      # 0x26155
leaq -0x38(%rbp), %rdi
callq 0x2f88
leaq -0x50(%rbp), %rdi
leaq -0x38(%rbp), %rdx
leaq -0x11(%rbp), %rcx
movl $0xa, %esi
callq 0x1955c
movq -0x38(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c8a3
callq 0x21b0
leaq -0x50(%rbp), %rdi
callq 0x195f2
leaq -0x38(%rbp), %rdi
movq %r14, (%rdi)
leaq 0xa1cc(%rip), %rsi      # 0x26a86
leaq 0xa1c7(%rip), %rdx      # 0x26a88
callq 0x2f88
leaq -0x50(%rbp), %rdi
leaq -0x38(%rbp), %rdx
movl $0xa, %esi
callq 0x215c6
movq -0x38(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c8e6
callq 0x21b0
leaq -0x50(%rbp), %rdi
callq 0x195f2
leaq -0x50(%rbp), %rdi
callq 0xacd4
addq $0x40, %rsp
popq %rbx
popq %r14
popq %rbp
retq
movq %rax, %rbx
movq -0x38(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c931
callq 0x21b0
jmp 0x1c931
jmp 0x1c92e
movq %rax, %rbx
movq -0x38(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c93a
callq 0x21b0
jmp 0x1c93a
movq %rax, %rbx
jmp 0x1c93a
movq %rax, %rbx
leaq -0x50(%rbp), %rdi
callq 0xacd4
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_assign_fill3()
void
test_vector_modifiers_assign_fill3()
{
	ft::vector<std::string> vec(10, "test");

	print_vec_info(vec);
	vec.assign(20, "42");
	print_vec_info(vec);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x40, %rsp
leaq -0x28(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x97f5(%rip), %rsi      # 0x26151
leaq 0x97f2(%rip), %rdx      # 0x26155
leaq -0x38(%rbp), %rdi
callq 0x2f88
leaq -0x50(%rbp), %rdi
leaq -0x38(%rbp), %rdx
leaq -0x11(%rbp), %rcx
movl $0xa, %esi
callq 0x1955c
movq -0x38(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c990
callq 0x21b0
leaq -0x50(%rbp), %rdi
callq 0x195f2
leaq -0x38(%rbp), %rdi
movq %r14, (%rdi)
leaq 0xa0df(%rip), %rsi      # 0x26a86
leaq 0xa0da(%rip), %rdx      # 0x26a88
callq 0x2f88
leaq -0x50(%rbp), %rdi
leaq -0x38(%rbp), %rdx
movl $0x14, %esi
callq 0x215c6
movq -0x38(%rbp), %rdi
cmpq %r14, %rdi
je 0x1c9d3
callq 0x21b0
leaq -0x50(%rbp), %rdi
callq 0x195f2
leaq -0x50(%rbp), %rdi
callq 0xacd4
addq $0x40, %rsp
popq %rbx
popq %r14
popq %rbp
retq
movq %rax, %rbx
movq -0x38(%rbp), %rdi
cmpq %r14, %rdi
je 0x1ca1e
callq 0x21b0
jmp 0x1ca1e
jmp 0x1ca1b
movq %rax, %rbx
movq -0x38(%rbp), %rdi
cmpq %r14, %rdi
je 0x1ca27
callq 0x21b0
jmp 0x1ca27
movq %rax, %rbx
jmp 0x1ca27
movq %rax, %rbx
leaq -0x50(%rbp), %rdi
callq 0xacd4
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_assign_cplusplus()
void
test_vector_modifiers_assign_cplusplus()
{
	ft::vector<int> first;
	ft::vector<int> second;
	ft::vector<int> third;

	first.assign(7, 100);             // 7 ints with a value of 100

	ft::vector<int>::iterator it;
	it = first.begin() + 1;

	second.assign(it, first.end() - 1); // the 5 central values of first

	int myints[] = {1776, 7, 4};
	third.assign(myints, myints + 3);   // assigning from array.

	std::cout << "Size of first: " << int (first.size()) << std::endl;
	std::cout << "Size of second: " << int (second.size()) << std::endl;
	std::cout << "Size of third: " << int (third.size()) << std::endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
subq $0x68, %rsp
xorps %xmm0, %xmm0
leaq -0x60(%rbp), %rdi
movaps %xmm0, (%rdi)
xorl %eax, %eax
movq %rax, 0x10(%rdi)
movq %rax, -0x30(%rbp)
movaps %xmm0, -0x40(%rbp)
movq %rax, -0x10(%rbp)
movaps %xmm0, -0x20(%rbp)
leaq -0x70(%rbp), %rdx
movl $0x64, (%rdx)
movl $0x7, %esi
callq 0x216f4
movq -0x60(%rbp), %rsi
movq -0x58(%rbp), %rdx
addq $0x4, %rsi
addq $-0x4, %rdx
leaq -0x40(%rbp), %rdi
callq 0x217d2
movabsq $0x7000006f0, %rax      # imm = 0x7000006F0
leaq -0x64(%rbp), %rdx
movq %rax, -0xc(%rdx)
movl $0x4, -0x4(%rdx)
leaq -0x20(%rbp), %rdi
leaq -0x70(%rbp), %rsi
callq 0x218e0
movq 0x1751e(%rip), %rdi     # 0x33fd0
leaq 0xa1c2(%rip), %rsi      # 0x26c7b
movl $0xf, %edx
callq 0x2230
movq -0x58(%rbp), %rsi
subq -0x60(%rbp), %rsi
shrq $0x2, %rsi
movq 0x174fa(%rip), %rdi     # 0x33fd0
callq 0x2330
movq %rax, %rbx
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x21e0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
movq 0x174c4(%rip), %rdi     # 0x33fd0
leaq 0xa178(%rip), %rsi      # 0x26c8b
movl $0x10, %edx
callq 0x2230
movq -0x38(%rbp), %rsi
subq -0x40(%rbp), %rsi
shrq $0x2, %rsi
movq 0x174a0(%rip), %rdi     # 0x33fd0
callq 0x2330
movq %rax, %rbx
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x21e0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
movq 0x1746a(%rip), %rdi     # 0x33fd0
leaq 0xa12f(%rip), %rsi      # 0x26c9c
movl $0xf, %edx
callq 0x2230
movq -0x18(%rbp), %rsi
subq -0x20(%rbp), %rsi
shrq $0x2, %rsi
movq 0x17446(%rip), %rdi     # 0x33fd0
callq 0x2330
movq %rax, %rbx
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x21e0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2150
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x1cbc7
callq 0x21b0
movq -0x40(%rbp), %rdi
testq %rdi, %rdi
je 0x1cbd5
callq 0x21b0
movq -0x60(%rbp), %rdi
testq %rdi, %rdi
je 0x1cbe3
callq 0x21b0
addq $0x68, %rsp
popq %rbx
popq %rbp
retq
jmp 0x1cbec
movq %rax, %rbx
jmp 0x1cc02
movq %rax, %rbx
movq -0x20(%rbp), %rdi
testq %rdi, %rdi
je 0x1cc02
callq 0x21b0
movq -0x40(%rbp), %rdi
testq %rdi, %rdi
je 0x1cc10
callq 0x21b0
movq -0x60(%rbp), %rdi
testq %rdi, %rdi
je 0x1cc1e
callq 0x21b0
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_push_back1()
void
test_vector_modifiers_push_back1()
{
	srand(g_seed);

	ft::vector<int> vec;
	int const size = 1;

	vec.push_back(rand() % size - size / 2);
	print_vec_info(vec);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
subq $0x28, %rsp
leaq 0x175aa(%rip), %rax     # 0x341e0
movl (%rax), %edi
callq 0x21d0
xorps %xmm0, %xmm0
leaq -0x30(%rbp), %rbx
movaps %xmm0, (%rbx)
movq $0x0, 0x10(%rbx)
callq 0x2070
leaq -0xc(%rbp), %rdx
movl $0x0, (%rdx)
movq %rbx, %rdi
xorl %esi, %esi
callq 0x18afe
leaq -0x30(%rbp), %rdi
callq 0x193f4
movq -0x30(%rbp), %rdi
testq %rdi, %rdi
je 0x1cc7f
callq 0x21b0
addq $0x28, %rsp
popq %rbx
popq %rbp
retq
jmp 0x1cc88
movq %rax, %rbx
movq -0x30(%rbp), %rdi
testq %rdi, %rdi
je 0x1cc99
callq 0x21b0
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_push_back()
void
test_vector_modifiers_push_back()
{
	srand(g_seed);

	for (int i = 1; i < 100; i *= 10)
	{
		ft::vector<int> vec;
		for (int j = 0; j < i; j++)
		{
			vec.push_back(rand() % 100 - 100 / 2);
			print_vec_info(vec);
		}
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x20, %rsp
leaq 0x17529(%rip), %rax     # 0x341e0
movl (%rax), %edi
callq 0x21d0
movl $0x1, %r15d
leaq -0x40(%rbp), %rbx
leaq -0x24(%rbp), %r14
xorps %xmm0, %xmm0
movaps %xmm0, -0x40(%rbp)
movq $0x0, -0x30(%rbp)
cmpl $0x1, %r15d
movl %r15d, %r12d
adcl $0x0, %r12d
callq 0x2070
cltq
imulq $0x51eb851f, %rax, %rcx # imm = 0x51EB851F
movq %rcx, %rdx
shrq $0x3f, %rdx
sarq $0x25, %rcx
addl %edx, %ecx
imull $0x64, %ecx, %ecx
negl %ecx
addl %ecx, %eax
addl $-0x32, %eax
movl %eax, -0x24(%rbp)
movq -0x38(%rbp), %rsi
cmpq -0x30(%rbp), %rsi
je 0x1cd24
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, -0x38(%rbp)
jmp 0x1cd2f
movq %rbx, %rdi
movq %r14, %rdx
callq 0x18afe
movq %rbx, %rdi
callq 0x193f4
decl %r12d
jne 0x1cce6
movq -0x40(%rbp), %rdi
testq %rdi, %rdi
je 0x1cd4a
callq 0x21b0
leal (%r15,%r15), %eax
leal (%rax,%rax,4), %eax
cmpl $0xa, %r15d
movl %eax, %r15d
jb 0x1cccc
addq $0x20, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
jmp 0x1cd6d
movq %rax, %rbx
movq -0x40(%rbp), %rdi
testq %rdi, %rdi
je 0x1cd7e
callq 0x21b0
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_pop_back()
void
test_vector_modifiers_pop_back()
{
	ft::vector<std::string> vec(100, "test");

	while (!vec.empty())
	{
		print_vec_info(vec);
		vec.pop_back();
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x40, %rsp
leaq -0x40(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x93b1(%rip), %rsi      # 0x26151
leaq 0x93ae(%rip), %rdx      # 0x26155
leaq -0x50(%rbp), %rdi
callq 0x2f88
leaq -0x30(%rbp), %rdi
leaq -0x50(%rbp), %rdx
leaq -0x11(%rbp), %rcx
movl $0x64, %esi
callq 0x1955c
movq -0x50(%rbp), %rdi
cmpq %r14, %rdi
je 0x1cdd4
callq 0x21b0
movq -0x30(%rbp), %rax
cmpq -0x28(%rbp), %rax
je 0x1ce12
leaq -0x30(%rbp), %rbx
movq %rbx, %rdi
callq 0x195f2
movq -0x28(%rbp), %rcx
leaq -0x20(%rcx), %rax
movq %rax, -0x28(%rbp)
movq -0x20(%rcx), %rdi
addq $-0x10, %rcx
cmpq %rcx, %rdi
je 0x1ce0c
callq 0x21b0
movq -0x28(%rbp), %rax
cmpq %rax, -0x30(%rbp)
jne 0x1cde2
leaq -0x30(%rbp), %rdi
callq 0xacd4
addq $0x40, %rsp
popq %rbx
popq %r14
popq %rbp
retq
movq %rax, %rbx
movq -0x50(%rbp), %rdi
cmpq %r14, %rdi
je 0x1ce48
callq 0x21b0
jmp 0x1ce48
movq %rax, %rbx
jmp 0x1ce48
movq %rax, %rbx
leaq -0x30(%rbp), %rdi
callq 0xacd4
movq %rbx, %rdi
callq 0x2340
// File: /workspace/github_cpp_makefile_star2_O3/DimitriDaSilva[P]42_ft_containers/tester/containers/vector/test_vector_modifiers.cpp
// Function: test_vector_modifiers_insert_single_middle_w_realloc()
void
test_vector_modifiers_insert_single_middle_w_realloc()
{
	ft::vector<std::string> vec(100, "test");
	ft::vector<std::string>::iterator it = vec.begin();
	ft::vector<std::string>::iterator tmp;

	print_vec_info(vec);
	tmp = vec.insert(it + 50, "42");
	print_vec_info(vec);

	it = vec.begin();
	if (tmp == it + 50)
		std::cout << "valid" << std::endl;

	{
		ft::vector<std::string> cpy1 = vec;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x40, %rsp
leaq -0x28(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x8e28(%rip), %rsi      # 0x26151
leaq 0x8e25(%rip), %rdx      # 0x26155
leaq -0x38(%rbp), %rdi
callq 0x2f88
leaq -0x50(%rbp), %rdi
leaq -0x38(%rbp), %rdx
leaq -0x11(%rbp), %rcx
movl $0x64, %esi
callq 0x1955c
movq -0x38(%rbp), %rdi
cmpq %r14, %rdi
je 0x1d35d
callq 0x21b0
leaq -0x50(%rbp), %rdi
movq (%rdi), %rbx
callq 0x195f2
leaq -0x38(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x970f(%rip), %rsi      # 0x26a86
leaq 0x970a(%rip), %rdx      # 0x26a88
callq 0x2f88
addq $0x640, %rbx            # imm = 0x640
leaq -0x50(%rbp), %rdi
leaq -0x38(%rbp), %rdx
movq %rbx, %rsi
callq 0x219ee
movq %rax, %rbx
movq -0x38(%rbp), %rdi
cmpq %r14, %rdi
je 0x1d3ab
callq 0x21b0
leaq -0x50(%rbp), %rdi
callq 0x195f2
movl $0x640, %eax            # imm = 0x640
addq -0x50(%rbp), %rax
cmpq %rax, %rbx
jne 0x1d408
movq 0x16c07(%rip), %rbx     # 0x33fd0
leaq 0xa0c6(%rip), %rsi      # 0x27496
movl $0x5, %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 0x16bd5(%rip), %rdi     # 0x33fd0
callq 0x2030
movq %rax, %rdi
callq 0x2150
leaq -0x38(%rbp), %rdi
leaq -0x50(%rbp), %rsi
callq 0x1a4ce
leaq -0x38(%rbp), %rdi
callq 0xacd4
leaq -0x50(%rbp), %rdi
callq 0xacd4
addq $0x40, %rsp
popq %rbx
popq %r14
popq %rbp
retq
jmp 0x1d45f
movq %rax, %rbx
movq -0x38(%rbp), %rdi
cmpq %r14, %rdi
je 0x1d462
callq 0x21b0
jmp 0x1d462
jmp 0x1d45f
movq %rax, %rbx
movq -0x38(%rbp), %rdi
cmpq %r14, %rdi
je 0x1d46b
callq 0x21b0
jmp 0x1d46b
movq %rax, %rbx
jmp 0x1d46b
movq %rax, %rbx
leaq -0x50(%rbp), %rdi
callq 0xacd4
movq %rbx, %rdi
callq 0x2340