LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_cpp_makefile_star2_O3/swxlion[P]swxJson/tests/swxJsonAdvancedTest_fetch_v2.cpp
// Function: void test_set<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(std::shared_ptr<swxJson::Json>, char const*, char const*)
void test_set(JsonPtr json, const char* key, const char* desc)
{
	cout<<endl<<desc<<endl;

	std::set<K> elemSet = json->wantSet<K>(key);
	for (auto& element: elemSet)
		cout<<"Element: "<<element<<endl;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x80, %rsp
movq %rdx, %r12
movq %rsi, %rbx
movq %rdi, %r14
movq 0x201bc(%rip), %r15     # 0x38fd8
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x13260
movsbl %al, %esi
movq %r15, %rdi
callq 0x13030
movq %rax, %rdi
callq 0x13190
movq %rax, %r15
testq %r12, %r12
je 0x18e63
movq %r12, %rdi
callq 0x130e0
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0x132f0
jmp 0x18e7d
movq (%r15), %rax
movq -0x18(%rax), %rax
movq %r15, %rdi
addq %rax, %rdi
movl 0x20(%r15,%rax), %esi
orl $0x1, %esi
callq 0x13400
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x13260
movsbl %al, %esi
movq %r15, %rdi
callq 0x13030
movq %rax, %rdi
callq 0x13190
movq (%r14), %r14
leaq 0x30(%rsp), %rdi
leaq 0xf(%rsp), %rdx
movq %rbx, %rsi
callq 0x16bb0
leaq 0x20(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x14277(%rip), %rsi     # 0x2d140
leaq 0x14272(%rip), %rdx     # 0x2d142
leaq 0x10(%rsp), %rdi
callq 0x19f80
leaq 0x50(%rsp), %rdi
leaq 0x30(%rsp), %rdx
leaq 0x10(%rsp), %rcx
movq %r14, %rsi
callq 0x1e900
movq 0x10(%rsp), %rdi
cmpq %r15, %rdi
je 0x18f08
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x132a0
leaq 0x40(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x18f23
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x132a0
leaq 0x58(%rsp), %r13
movq 0x10(%r13), %rbx
cmpq %r13, %rbx
je 0x18f99
movq 0x200a0(%rip), %r14     # 0x38fd8
leaq 0x146ec(%rip), %r15     # 0x2d62b
movl $0x9, %edx
movq %r14, %rdi
movq %r15, %rsi
callq 0x132f0
movq 0x20(%rbx), %rsi
movq 0x28(%rbx), %rdx
movq %r14, %rdi
callq 0x132f0
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x13260
movsbl %al, %esi
movq %r12, %rdi
callq 0x13030
movq %rax, %rdi
callq 0x13190
movq %rbx, %rdi
callq 0x13300
movq %rax, %rbx
cmpq %r13, %rax
jne 0x18f3f
leaq 0x50(%rsp), %rdi
callq 0x1ecfe
addq $0x80, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
movq %rax, %rbx
movq 0x10(%rsp), %rdi
cmpq %r15, %rdi
je 0x18fd3
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x132a0
jmp 0x18fd3
movq %rax, %rbx
leaq 0x40(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x19002
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x132a0
jmp 0x19002
movq %rax, %rbx
jmp 0x19002
movq %rax, %rbx
leaq 0x50(%rsp), %rdi
callq 0x1ecfe
movq %rbx, %rdi
callq 0x13430
// File: /workspace/github_cpp_makefile_star2_O3/swxlion[P]swxJson/tests/swxJsonAdvancedTest_fetch_v2.cpp
// Function: void test_unordered_set<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(std::shared_ptr<swxJson::Json>, char const*, char const*)
void test_unordered_set(JsonPtr json, const char* key, const char* desc)
{
	cout<<endl<<desc<<endl;

	std::unordered_set<K> elemSet = json->wantUnorderedSet<K>(key);
	for (auto& element: elemSet)
		cout<<"Element: "<<element<<endl;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x88, %rsp
movq %rdx, %r12
movq %rsi, %rbx
movq %rdi, %r14
movq 0x1fda7(%rip), %r15     # 0x38fd8
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x13260
movsbl %al, %esi
movq %r15, %rdi
callq 0x13030
movq %rax, %rdi
callq 0x13190
movq %rax, %r15
testq %r12, %r12
je 0x19278
movq %r12, %rdi
callq 0x130e0
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0x132f0
jmp 0x19292
movq (%r15), %rax
movq -0x18(%rax), %rax
movq %r15, %rdi
addq %rax, %rdi
movl 0x20(%r15,%rax), %esi
orl $0x1, %esi
callq 0x13400
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x13260
movsbl %al, %esi
movq %r15, %rdi
callq 0x13030
movq %rax, %rdi
callq 0x13190
movq (%r14), %r14
leaq 0x30(%rsp), %rdi
leaq 0xf(%rsp), %rdx
movq %rbx, %rsi
callq 0x16bb0
leaq 0x20(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x13e62(%rip), %rsi     # 0x2d140
leaq 0x13e5d(%rip), %rdx     # 0x2d142
leaq 0x10(%rsp), %rdi
callq 0x19f80
leaq 0x50(%rsp), %rdi
leaq 0x30(%rsp), %rdx
leaq 0x10(%rsp), %rcx
movq %r14, %rsi
callq 0x1f0fe
movq 0x10(%rsp), %rdi
cmpq %r15, %rdi
je 0x1931d
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x132a0
leaq 0x40(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x19338
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x132a0
movq 0x60(%rsp), %r12
testq %r12, %r12
je 0x193a5
movq 0x1fc8f(%rip), %rbx     # 0x38fd8
leaq 0x142db(%rip), %r14     # 0x2d62b
movl $0x9, %edx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x132f0
movq 0x8(%r12), %rsi
movq 0x10(%r12), %rdx
movq %rbx, %rdi
callq 0x132f0
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x13260
movsbl %al, %esi
movq %r15, %rdi
callq 0x13030
movq %rax, %rdi
callq 0x13190
movq (%r12), %r12
testq %r12, %r12
jne 0x19350
leaq 0x50(%rsp), %rdi
callq 0x1f7a2
addq $0x88, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
movq %rax, %rbx
movq 0x10(%rsp), %rdi
cmpq %r15, %rdi
je 0x193dd
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x132a0
jmp 0x193dd
movq %rax, %rbx
leaq 0x40(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x1940c
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x132a0
jmp 0x1940c
movq %rax, %rbx
jmp 0x1940c
movq %rax, %rbx
leaq 0x50(%rsp), %rdi
callq 0x1f7a2
movq %rbx, %rdi
callq 0x13430
// File: /workspace/github_cpp_makefile_star2_O3/swxlion[P]swxJson/tests/swxJsonAdvancedTest_fetch_v2.cpp
// Function: void test_dict<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(std::shared_ptr<swxJson::Json>, char const*, char const*)
void test_dict(JsonPtr json, const char* key, const char* desc)
{
	cout<<endl<<desc<<endl;

	std::map<std::string, K> elemMap = json->wantDict<K>(key);
	for (auto& pp: elemMap)
		cout<<"Element: "<<pp.first<<":"<<pp.second<<endl;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x78, %rsp
movq %rdx, %r12
movq %rsi, %rbx
movq %rdi, %r14
movq 0x1f9aa(%rip), %r15     # 0x38fd8
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x13260
movsbl %al, %esi
movq %r15, %rdi
callq 0x13030
movq %rax, %rdi
callq 0x13190
movq %rax, %r15
testq %r12, %r12
je 0x19675
movq %r12, %rdi
callq 0x130e0
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0x132f0
jmp 0x1968f
movq (%r15), %rax
movq -0x18(%rax), %rax
movq %r15, %rdi
addq %rax, %rdi
movl 0x20(%r15,%rax), %esi
orl $0x1, %esi
callq 0x13400
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x13260
movsbl %al, %esi
movq %r15, %rdi
callq 0x13030
movq %rax, %rdi
callq 0x13190
movq (%r14), %r14
leaq 0x28(%rsp), %rdi
leaq 0x7(%rsp), %rdx
movq %rbx, %rsi
callq 0x16bb0
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x13a65(%rip), %rsi     # 0x2d140
leaq 0x13a60(%rip), %rdx     # 0x2d142
leaq 0x8(%rsp), %rdi
callq 0x19f80
leaq 0x48(%rsp), %rdi
leaq 0x28(%rsp), %rdx
leaq 0x8(%rsp), %rcx
movq %r14, %rsi
callq 0x1fd5a
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x1971a
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
leaq 0x38(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x19735
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x132a0
leaq 0x50(%rsp), %rbp
movq 0x10(%rbp), %rbx
cmpq %rbp, %rbx
je 0x197d9
movq 0x1f88a(%rip), %r14     # 0x38fd8
leaq 0x13ed6(%rip), %r15     # 0x2d62b
leaq 0x1407a(%rip), %r12     # 0x2d7d6
movl $0x9, %edx
movq %r14, %rdi
movq %r15, %rsi
callq 0x132f0
movq 0x20(%rbx), %rsi
movq 0x28(%rbx), %rdx
movq %r14, %rdi
callq 0x132f0
movq %rax, %r13
movl $0x1, %edx
movq %rax, %rdi
movq %r12, %rsi
callq 0x132f0
movq 0x40(%rbx), %rsi
movq 0x48(%rbx), %rdx
movq %r13, %rdi
callq 0x132f0
movq %rax, %r13
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x13260
movsbl %al, %esi
movq %r13, %rdi
callq 0x13030
movq %rax, %rdi
callq 0x13190
movq %rbx, %rdi
callq 0x131a0
movq %rax, %rbx
cmpq %rbp, %rax
jne 0x1975c
leaq 0x48(%rsp), %rdi
callq 0x20414
addq $0x78, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x19811
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
jmp 0x19811
movq %rax, %rbx
leaq 0x38(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x19840
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x132a0
jmp 0x19840
movq %rax, %rbx
jmp 0x19840
movq %rax, %rbx
leaq 0x48(%rsp), %rdi
callq 0x20414
movq %rbx, %rdi
callq 0x13430
// File: /workspace/github_cpp_makefile_star2_O3/swxlion[P]swxJson/tests/swxJsonAdvancedTest_fetch_v2.cpp
// Function: void test_unordered_dict<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(std::shared_ptr<swxJson::Json>, char const*, char const*)
void test_unordered_dict(JsonPtr json, const char* key, const char* desc)
{
	cout<<endl<<desc<<endl;

	std::unordered_map<std::string, K> elemMap = json->wantUnorderedDict<K>(key);
	for (auto& pp: elemMap)
		cout<<"Element: "<<pp.first<<":"<<pp.second<<endl;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x80, %rsp
movq %rdx, %r12
movq %rsi, %rbx
movq %rdi, %r14
movq 0x1f53d(%rip), %r15     # 0x38fd8
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x13260
movsbl %al, %esi
movq %r15, %rdi
callq 0x13030
movq %rax, %rdi
callq 0x13190
movq %rax, %r15
testq %r12, %r12
je 0x19ae2
movq %r12, %rdi
callq 0x130e0
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0x132f0
jmp 0x19afc
movq (%r15), %rax
movq -0x18(%rax), %rax
movq %r15, %rdi
addq %rax, %rdi
movl 0x20(%r15,%rax), %esi
orl $0x1, %esi
callq 0x13400
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x13260
movsbl %al, %esi
movq %r15, %rdi
callq 0x13030
movq %rax, %rdi
callq 0x13190
movq (%r14), %r14
leaq 0x28(%rsp), %rdi
leaq 0x7(%rsp), %rdx
movq %rbx, %rsi
callq 0x16bb0
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x135f8(%rip), %rsi     # 0x2d140
leaq 0x135f3(%rip), %rdx     # 0x2d142
leaq 0x8(%rsp), %rdi
callq 0x19f80
leaq 0x48(%rsp), %rdi
leaq 0x28(%rsp), %rdx
leaq 0x8(%rsp), %rcx
movq %r14, %rsi
callq 0x20af2
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x19b87
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
leaq 0x38(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x19ba2
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x132a0
movq 0x58(%rsp), %r13
testq %r13, %r13
je 0x19c3b
movq 0x1f421(%rip), %rbx     # 0x38fd8
leaq 0x13a6d(%rip), %r14     # 0x2d62b
leaq 0x13c11(%rip), %r15     # 0x2d7d6
movl $0x9, %edx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x132f0
movq 0x8(%r13), %rsi
movq 0x10(%r13), %rdx
movq %rbx, %rdi
callq 0x132f0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x132f0
movq 0x28(%r13), %rsi
movq 0x30(%r13), %rdx
movq %r12, %rdi
callq 0x132f0
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x13260
movsbl %al, %esi
movq %r12, %rdi
callq 0x13030
movq %rax, %rdi
callq 0x13190
movq (%r13), %r13
testq %r13, %r13
jne 0x19bc5
leaq 0x48(%rsp), %rdi
callq 0x211c8
addq $0x80, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
movq %rax, %rbx
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x19c75
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
jmp 0x19c75
movq %rax, %rbx
leaq 0x38(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x19ca4
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x132a0
jmp 0x19ca4
movq %rax, %rbx
jmp 0x19ca4
movq %rax, %rbx
leaq 0x48(%rsp), %rdi
callq 0x211c8
movq %rbx, %rdi
callq 0x13430
// File: /workspace/github_cpp_makefile_star2_O3/swxlion[P]swxJson/tests/../src/swxJson.Enhancement.inc.h
// Function: swxJson::Json::WantTupleValues<5ul, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, int, double, unsigned long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::wantValue(std::_List_iterator<std::shared_ptr<swxJson::Json>>, unsigned long, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, int, double, unsigned long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&)
static void wantValue(std::list<JsonPtr>::iterator it, size_t targetOffset, std::tuple<Args...>& tup)
		{
			if (N > targetOffset)
			{
				WantTupleValues<N-1, Args...>::wantValue(it, targetOffset, tup);
			}
			else
			{
				auto realIt = it;
				for (size_t i = 0; i < targetOffset - 1; i++)
					realIt++;

				JsonPtr node = *(realIt);

				typename std::tuple_element<N-1, std::tuple<Args...>>::type v;
				std::get<N-1>(tup) = (decltype(v))(*node);

				WantTupleValues<N-1, Args...>::wantValue(it, targetOffset - 1, tup);
			}
		}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x48, %rsp
movq %rdx, %r14
movq %rsi, %r15
movq %rdi, %r12
cmpq $0x5, %rsi
jae 0x1a43b
movq %r12, %rdi
movq %r15, %rsi
movq %r14, %rdx
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1a52c
decq %r15
movq %r15, %rcx
movq %r12, %rax
movq (%rax), %rax
decq %rcx
jne 0x1a444
movq 0x10(%rax), %rsi
movq 0x18(%rax), %rbx
testq %rbx, %rbx
je 0x1a46e
movq 0x1eb70(%rip), %rax     # 0x38fd0
cmpb $0x0, (%rax)
je 0x1a46a
incl 0x8(%rbx)
jmp 0x1a46e
lock
incl 0x8(%rbx)
leaq 0x18(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq $0x0, -0x8(%rbp)
movb $0x0, (%rbp)
leaq 0x28(%rsp), %rdi
callq 0x24906
leaq 0x28(%r14), %rdi
leaq 0x28(%rsp), %r13
movq %r13, %rsi
callq 0x13310
movq (%r13), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x1a4b9
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x132a0
movq %r12, %rdi
movq %r15, %rsi
movq %r14, %rdx
callq 0x1a52c
movq 0x8(%rsp), %rdi
cmpq %rbp, %rdi
je 0x1a4de
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
testq %rbx, %rbx
je 0x1a4eb
movq %rbx, %rdi
callq 0x19f10
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x1a4fc
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %rbp, %rdi
je 0x1a516
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
testq %rbx, %rbx
je 0x1a523
movq %rbx, %rdi
callq 0x19f10
movq %r14, %rdi
callq 0x13430
nop
// File: /workspace/github_cpp_makefile_star2_O3/swxlion[P]swxJson/tests/../src/swxJson.Enhancement.inc.h
// Function: swxJson::Json::WantTupleValues<1ul, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, int, double, unsigned long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::wantValue(std::_List_iterator<std::shared_ptr<swxJson::Json>>, unsigned long, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, int, double, unsigned long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&)
static void wantValue(std::list<JsonPtr>::iterator it, size_t targetOffset, std::tuple<Args...>& tup)
		{
			if (1 == targetOffset)
			{
				JsonPtr node = *it;

				typename std::tuple_element<0, std::tuple<Args...>>::type v;
				std::get<0>(tup) = (decltype(v))(*node);
			}
		}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x48, %rsp
cmpq $0x1, %rsi
jne 0x1a80a
movq %rdx, %r14
movq 0x10(%rdi), %rsi
movq 0x18(%rdi), %rbx
testq %rbx, %rbx
je 0x1a796
movq 0x1e848(%rip), %rax     # 0x38fd0
cmpb $0x0, (%rax)
je 0x1a792
incl 0x8(%rbx)
jmp 0x1a796
lock
incl 0x8(%rbx)
leaq 0x18(%rsp), %r12
movq %r12, -0x10(%r12)
movq $0x0, -0x8(%r12)
movb $0x0, (%r12)
leaq 0x28(%rsp), %rdi
callq 0x24906
addq $0x60, %r14
leaq 0x28(%rsp), %r15
movq %r14, %rdi
movq %r15, %rsi
callq 0x13310
movq (%r15), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x1a7e6
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x132a0
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x1a7fd
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
testq %rbx, %rbx
je 0x1a80a
movq %rbx, %rdi
callq 0x19f10
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x1a830
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
testq %rbx, %rbx
je 0x1a83d
movq %rbx, %rdi
callq 0x19f10
movq %r14, %rdi
callq 0x13430
nop
// File: /workspace/github_cpp_makefile_star2_O3/swxlion[P]swxJson/tests/../src/swxJson.Enhancement.inc.h
// Function: std::array<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, 3ul> swxJson::Json::wantArray<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, 3ul>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
std::array<T, N> wantArray(const std::string& path, bool compatibleMode = false, const std::string& delim = "./")
	{
		JsonPtr node = getNode(path, delim);
		if (node)
			return node->wantArray<T, N>(compatibleMode);
		
		throw JSON_ERROR_MSG(JosnNodeNotExistError, "Target node doesn't exist.");
	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x38, %rsp
movl %ecx, %ebp
movq %rdi, %rbx
leaq 0x8(%rsp), %r14
movq %r14, %rdi
movq %r8, %rcx
callq 0x21f1c
movq (%r14), %rsi
testq %rsi, %rsi
je 0x1b500
movzbl %bpl, %edx
movq %rbx, %rdi
callq 0x1b5c0
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x1b4f2
callq 0x19f10
movq %rbx, %rax
addq $0x38, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
movl $0x60, %edi
callq 0x13110
movq %rax, %rbx
leaq 0x28(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x120dd(%rip), %rsi     # 0x2d5fa
leaq 0x120f0(%rip), %rdx     # 0x2d614
leaq 0x18(%rsp), %rdi
callq 0x19f80
movb $0x1, %bpl
leaq 0x12097(%rip), %rsi     # 0x2d5cf
leaq 0x120f6(%rip), %rdx     # 0x2d635
leaq 0x18(%rsp), %r8
movq %rbx, %rdi
movl $0x3d6, %ecx            # imm = 0x3D6
callq 0x2bf1c
leaq 0x1d720(%rip), %rax     # 0x38c78
addq $0x10, %rax
movq %rax, (%rbx)
xorl %ebp, %ebp
leaq 0x1d6a8(%rip), %rsi     # 0x38c10
leaq -0x13d1(%rip), %rdx     # 0x1a19e
movq %rbx, %rdi
callq 0x13410
movq %rax, %r14
movq 0x18(%rsp), %rdi
cmpq %r15, %rdi
je 0x1b591
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x132a0
testb %bpl, %bpl
jne 0x1b59b
jmp 0x1b5a8
movq %rax, %r14
movq %rbx, %rdi
callq 0x131e0
jmp 0x1b5a8
movq %rax, %r14
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x1b5b7
callq 0x19f10
movq %r14, %rdi
callq 0x13430
nop
// File: /workspace/github_cpp_makefile_star2_O3/swxlion[P]swxJson/tests/../src/swxJson.Enhancement.inc.h
// Function: std::queue<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::deque<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>>>>> swxJson::Json::wantQueue<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::deque<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::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
std::queue<T, Container> wantQueue(const std::string& path, const std::string& delim = "./")
	{
		JsonPtr node = getNode(path, delim);
		if (node)
			return node->wantQueue<T, Container>();
		
		throw JSON_ERROR_MSG(JosnNodeNotExistError, "Target node doesn't exist.");
	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x38, %rsp
movq %rdi, %rbx
leaq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x21f1c
movq (%r14), %rsi
testq %rsi, %rsi
je 0x1c5e1
movq %rbx, %rdi
callq 0x1c6a0
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x1c5d3
callq 0x19f10
movq %rbx, %rax
addq $0x38, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
movl $0x60, %edi
callq 0x13110
movq %rax, %rbx
leaq 0x28(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x10ffc(%rip), %rsi     # 0x2d5fa
leaq 0x1100f(%rip), %rdx     # 0x2d614
leaq 0x18(%rsp), %rdi
callq 0x19f80
movb $0x1, %bpl
leaq 0x10fb6(%rip), %rsi     # 0x2d5cf
leaq 0x1101f(%rip), %rdx     # 0x2d63f
leaq 0x18(%rsp), %r8
movq %rbx, %rdi
movl $0x3e0, %ecx            # imm = 0x3E0
callq 0x2bf1c
leaq 0x1c63f(%rip), %rax     # 0x38c78
addq $0x10, %rax
movq %rax, (%rbx)
xorl %ebp, %ebp
leaq 0x1c5c7(%rip), %rsi     # 0x38c10
leaq -0x24b2(%rip), %rdx     # 0x1a19e
movq %rbx, %rdi
callq 0x13410
movq %rax, %r14
movq 0x18(%rsp), %rdi
cmpq %r15, %rdi
je 0x1c672
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x132a0
testb %bpl, %bpl
jne 0x1c67c
jmp 0x1c689
movq %rax, %r14
movq %rbx, %rdi
callq 0x131e0
jmp 0x1c689
movq %rax, %r14
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x1c698
callq 0x19f10
movq %r14, %rdi
callq 0x13430
// File: /workspace/github_cpp_makefile_star2_O3/swxlion[P]swxJson/tests/../src/swxJson.Enhancement.inc.h
// Function: std::queue<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::deque<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>>>>> swxJson::Json::wantQueue<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::deque<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::queue<T, Container> wantQueue()
	{
		if (_type != JSON_Array)
			throw JSON_ERROR_MSG(JsonNodeTypeMissMatchError, "Node type miss match.");

		std::list<JsonPtr>* data = (std::list<JsonPtr>*)_data;
		std::queue<T, Container> res;

		for (auto& node: *data)
			res.push((T)(*node));

		return res;
	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
cmpl $0x1, (%rsi)
jne 0x1c732
movq %rdi, %rbx
movq 0x8(%rsi), %r15
xorps %xmm0, %xmm0
movups %xmm0, 0x40(%rdi)
movups %xmm0, 0x30(%rdi)
movups %xmm0, 0x20(%rdi)
movups %xmm0, 0x10(%rdi)
movups %xmm0, (%rdi)
xorl %esi, %esi
callq 0x1c806
movq (%r15), %r13
cmpq %r15, %r13
je 0x1c720
leaq 0x18(%rsp), %r12
leaq 0x8(%rsp), %r14
movq 0x10(%r13), %rsi
movq %r14, %rdi
callq 0x24906
movq %rbx, %rdi
movq %r14, %rsi
callq 0x1c99a
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x1c717
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
movq (%r13), %r13
cmpq %r15, %r13
jne 0x1c6e9
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl $0x60, %edi
callq 0x13110
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x10ec6(%rip), %rsi     # 0x2d615
leaq 0x10ed4(%rip), %rdx     # 0x2d62a
leaq 0x8(%rsp), %rdi
callq 0x19f80
movb $0x1, %bpl
leaq 0x10e65(%rip), %rsi     # 0x2d5cf
leaq 0x10ece(%rip), %rdx     # 0x2d63f
leaq 0x8(%rsp), %r8
movq %rbx, %rdi
movl $0x34f, %ecx            # imm = 0x34F
callq 0x2bf1c
leaq 0x1c49e(%rip), %rax     # 0x38c28
addq $0x10, %rax
movq %rax, (%rbx)
xorl %ebp, %ebp
leaq 0x1c45e(%rip), %rsi     # 0x38bf8
leaq -0x2603(%rip), %rdx     # 0x1a19e
movq %rbx, %rdi
callq 0x13410
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x1c7c3
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
testb %bpl, %bpl
jne 0x1c7cd
jmp 0x1c7fe
movq %rax, %r14
movq %rbx, %rdi
callq 0x131e0
jmp 0x1c7fe
movq %rax, %r14
jmp 0x1c7f6
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x1c7f6
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
movq %rbx, %rdi
callq 0x1cd04
movq %r14, %rdi
callq 0x13430
// File: /workspace/github_cpp_makefile_star2_O3/swxlion[P]swxJson/tests/../src/swxJson.Enhancement.inc.h
// Function: std::deque<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>>>> swxJson::Json::wantDeque<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::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
std::deque<T, Alloc> wantDeque(const std::string& path, const std::string& delim = "./")
	{
		JsonPtr node = getNode(path, delim);
		if (node)
			return node->wantDeque<T, Alloc>();
		
		throw JSON_ERROR_MSG(JosnNodeNotExistError, "Target node doesn't exist.");
	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x38, %rsp
movq %rdi, %rbx
leaq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x21f1c
movq (%r14), %rsi
testq %rsi, %rsi
je 0x1d567
movq %rbx, %rdi
callq 0x1d626
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x1d559
callq 0x19f10
movq %rbx, %rax
addq $0x38, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
movl $0x60, %edi
callq 0x13110
movq %rax, %rbx
leaq 0x28(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x10076(%rip), %rsi     # 0x2d5fa
leaq 0x10089(%rip), %rdx     # 0x2d614
leaq 0x18(%rsp), %rdi
callq 0x19f80
movb $0x1, %bpl
leaq 0x10030(%rip), %rsi     # 0x2d5cf
leaq 0x100d3(%rip), %rdx     # 0x2d679
leaq 0x18(%rsp), %r8
movq %rbx, %rdi
movl $0x3ea, %ecx            # imm = 0x3EA
callq 0x2bf1c
leaq 0x1b6b9(%rip), %rax     # 0x38c78
addq $0x10, %rax
movq %rax, (%rbx)
xorl %ebp, %ebp
leaq 0x1b641(%rip), %rsi     # 0x38c10
leaq -0x3438(%rip), %rdx     # 0x1a19e
movq %rbx, %rdi
callq 0x13410
movq %rax, %r14
movq 0x18(%rsp), %rdi
cmpq %r15, %rdi
je 0x1d5f8
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x132a0
testb %bpl, %bpl
jne 0x1d602
jmp 0x1d60f
movq %rax, %r14
movq %rbx, %rdi
callq 0x131e0
jmp 0x1d60f
movq %rax, %r14
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x1d61e
callq 0x19f10
movq %r14, %rdi
callq 0x13430
// File: /workspace/github_cpp_makefile_star2_O3/swxlion[P]swxJson/tests/../src/swxJson.Enhancement.inc.h
// Function: std::deque<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>>>> swxJson::Json::wantDeque<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::deque<T, Alloc> wantDeque()
	{
		if (_type != JSON_Array)
			throw JSON_ERROR_MSG(JsonNodeTypeMissMatchError, "Node type miss match.");

		std::list<JsonPtr>* data = (std::list<JsonPtr>*)_data;
		std::deque<T, Alloc> res;

		for (auto& node: *data)
			res.push_back((T)(*node));

		return res;
	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
cmpl $0x1, (%rsi)
jne 0x1d6b8
movq %rdi, %rbx
movq 0x8(%rsi), %r15
xorps %xmm0, %xmm0
movups %xmm0, 0x40(%rdi)
movups %xmm0, 0x30(%rdi)
movups %xmm0, 0x20(%rdi)
movups %xmm0, 0x10(%rdi)
movups %xmm0, (%rdi)
xorl %esi, %esi
callq 0x1c806
movq (%r15), %r13
cmpq %r15, %r13
je 0x1d6a6
leaq 0x18(%rsp), %r12
leaq 0x8(%rsp), %r14
movq 0x10(%r13), %rsi
movq %r14, %rdi
callq 0x24906
movq %rbx, %rdi
movq %r14, %rsi
callq 0x1c99a
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x1d69d
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
movq (%r13), %r13
cmpq %r15, %r13
jne 0x1d66f
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl $0x60, %edi
callq 0x13110
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xff40(%rip), %rsi      # 0x2d615
leaq 0xff4e(%rip), %rdx      # 0x2d62a
leaq 0x8(%rsp), %rdi
callq 0x19f80
movb $0x1, %bpl
leaq 0xfedf(%rip), %rsi      # 0x2d5cf
leaq 0xff82(%rip), %rdx      # 0x2d679
leaq 0x8(%rsp), %r8
movq %rbx, %rdi
movl $0x35e, %ecx            # imm = 0x35E
callq 0x2bf1c
leaq 0x1b518(%rip), %rax     # 0x38c28
addq $0x10, %rax
movq %rax, (%rbx)
xorl %ebp, %ebp
leaq 0x1b4d8(%rip), %rsi     # 0x38bf8
leaq -0x3589(%rip), %rdx     # 0x1a19e
movq %rbx, %rdi
callq 0x13410
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x1d749
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
testb %bpl, %bpl
jne 0x1d753
jmp 0x1d784
movq %rax, %r14
movq %rbx, %rdi
callq 0x131e0
jmp 0x1d784
movq %rax, %r14
jmp 0x1d77c
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x1d77c
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
movq %rbx, %rdi
callq 0x1cd04
movq %r14, %rdi
callq 0x13430
// File: /workspace/github_cpp_makefile_star2_O3/swxlion[P]swxJson/tests/../src/swxJson.Enhancement.inc.h
// Function: std::__cxx11::list<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>>>> swxJson::Json::wantList<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::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
std::list<T, Alloc> wantList(const std::string& path, const std::string& delim = "./")
	{
		JsonPtr node = getNode(path, delim);
		if (node)
			return node->wantList<T, Alloc>();
		
		throw JSON_ERROR_MSG(JosnNodeNotExistError, "Target node doesn't exist.");
	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x38, %rsp
movq %rdi, %rbx
leaq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x21f1c
movq (%r14), %rsi
testq %rsi, %rsi
je 0x1d9fd
movq %rbx, %rdi
callq 0x1dabc
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x1d9ef
callq 0x19f10
movq %rbx, %rax
addq $0x38, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
movl $0x60, %edi
callq 0x13110
movq %rax, %rbx
leaq 0x28(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xfbe0(%rip), %rsi      # 0x2d5fa
leaq 0xfbf3(%rip), %rdx      # 0x2d614
leaq 0x18(%rsp), %rdi
callq 0x19f80
movb $0x1, %bpl
leaq 0xfb9a(%rip), %rsi      # 0x2d5cf
leaq 0xfc47(%rip), %rdx      # 0x2d683
leaq 0x18(%rsp), %r8
movq %rbx, %rdi
movl $0x3f4, %ecx            # imm = 0x3F4
callq 0x2bf1c
leaq 0x1b223(%rip), %rax     # 0x38c78
addq $0x10, %rax
movq %rax, (%rbx)
xorl %ebp, %ebp
leaq 0x1b1ab(%rip), %rsi     # 0x38c10
leaq -0x38ce(%rip), %rdx     # 0x1a19e
movq %rbx, %rdi
callq 0x13410
movq %rax, %r14
movq 0x18(%rsp), %rdi
cmpq %r15, %rdi
je 0x1da8e
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x132a0
testb %bpl, %bpl
jne 0x1da98
jmp 0x1daa5
movq %rax, %r14
movq %rbx, %rdi
callq 0x131e0
jmp 0x1daa5
movq %rax, %r14
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x1dab4
callq 0x19f10
movq %r14, %rdi
callq 0x13430
// File: /workspace/github_cpp_makefile_star2_O3/swxlion[P]swxJson/tests/../src/swxJson.Enhancement.inc.h
// Function: std::__cxx11::list<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>>>> swxJson::Json::wantList<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::list<T, Alloc> wantList()
	{
		if (_type != JSON_Array)
			throw JSON_ERROR_MSG(JsonNodeTypeMissMatchError, "Node type miss match.");

		std::list<JsonPtr>* data = (std::list<JsonPtr>*)_data;
		std::list<T, Alloc> res;

		for (auto& node: *data)
			res.push_back((T)(*node));

		return res;
	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
cmpl $0x1, (%rsi)
jne 0x1dba2
movq %rdi, %rbx
movq 0x8(%rsi), %r15
movq %rdi, 0x8(%rdi)
movq %rdi, (%rdi)
movq $0x0, 0x10(%rdi)
movq (%r15), %r13
cmpq %r15, %r13
je 0x1db90
leaq 0x18(%rsp), %r12
leaq 0x8(%rsp), %r14
movq 0x10(%r13), %rsi
movq %r14, %rdi
callq 0x24906
movl $0x30, %edi
callq 0x13290
movq %rax, %rcx
addq $0x20, %rcx
movq %rcx, 0x10(%rax)
movq 0x8(%rsp), %rdx
cmpq %r12, %rdx
je 0x1db39
movq %rdx, 0x10(%rax)
movq 0x18(%rsp), %rcx
movq %rcx, 0x20(%rax)
jmp 0x1db41
movups (%r12), %xmm0
movups %xmm0, (%rcx)
movq 0x10(%rsp), %rcx
movq %rcx, 0x18(%rax)
movq %r12, 0x8(%rsp)
movq $0x0, 0x10(%rsp)
movb $0x0, 0x18(%rsp)
movq %rax, %rdi
movq %rbx, %rsi
callq 0x13060
incq 0x10(%rbx)
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x1db83
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
movq (%r13), %r13
cmpq %r15, %r13
jne 0x1daff
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl $0x60, %edi
callq 0x13110
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xfa56(%rip), %rsi      # 0x2d615
leaq 0xfa64(%rip), %rdx      # 0x2d62a
leaq 0x8(%rsp), %rdi
callq 0x19f80
movb $0x1, %bpl
leaq 0xf9f5(%rip), %rsi      # 0x2d5cf
leaq 0xfaa2(%rip), %rdx      # 0x2d683
leaq 0x8(%rsp), %r8
movq %rbx, %rdi
movl $0x36d, %ecx            # imm = 0x36D
callq 0x2bf1c
leaq 0x1b02e(%rip), %rax     # 0x38c28
addq $0x10, %rax
movq %rax, (%rbx)
xorl %ebp, %ebp
leaq 0x1afee(%rip), %rsi     # 0x38bf8
leaq -0x3a73(%rip), %rdx     # 0x1a19e
movq %rbx, %rdi
callq 0x13410
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x1dc33
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
testb %bpl, %bpl
jne 0x1dc3d
jmp 0x1dc6e
movq %rax, %r14
movq %rbx, %rdi
callq 0x131e0
jmp 0x1dc6e
movq %rax, %r14
jmp 0x1dc66
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x1dc66
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
movq %rbx, %rdi
callq 0x1dc76
movq %r14, %rdi
callq 0x13430
// File: /workspace/github_cpp_makefile_star2_O3/swxlion[P]swxJson/tests/../src/swxJson.Enhancement.inc.h
// Function: 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>>>> swxJson::Json::wantVector<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::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
std::vector<T, Alloc> wantVector(const std::string& path, const std::string& delim = "./")
	{
		JsonPtr node = getNode(path, delim);
		if (node)
			return node->wantVector<T, Alloc>();
		
		throw JSON_ERROR_MSG(JosnNodeNotExistError, "Target node doesn't exist.");
	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x38, %rsp
movq %rdi, %rbx
leaq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x21f1c
movq (%r14), %rsi
testq %rsi, %rsi
je 0x1df41
movq %rbx, %rdi
callq 0x1e05e
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x1df33
callq 0x19f10
movq %rbx, %rax
addq $0x38, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
movl $0x60, %edi
callq 0x13110
movq %rax, %rbx
leaq 0x28(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xf69c(%rip), %rsi      # 0x2d5fa
leaq 0xf6af(%rip), %rdx      # 0x2d614
leaq 0x18(%rsp), %rdi
callq 0x19f80
movb $0x1, %bpl
leaq 0xf656(%rip), %rsi      # 0x2d5cf
leaq 0xf70c(%rip), %rdx      # 0x2d68c
leaq 0x18(%rsp), %r8
movq %rbx, %rdi
movl $0x3fe, %ecx            # imm = 0x3FE
callq 0x2bf1c
leaq 0x1acdf(%rip), %rax     # 0x38c78
addq $0x10, %rax
movq %rax, (%rbx)
xorl %ebp, %ebp
leaq 0x1ac67(%rip), %rsi     # 0x38c10
leaq -0x3e12(%rip), %rdx     # 0x1a19e
movq %rbx, %rdi
callq 0x13410
movq %rax, %r14
movq 0x18(%rsp), %rdi
cmpq %r15, %rdi
je 0x1dfd2
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x132a0
testb %bpl, %bpl
jne 0x1dfdc
jmp 0x1dfe9
movq %rax, %r14
movq %rbx, %rdi
callq 0x131e0
jmp 0x1dfe9
movq %rax, %r14
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x1dff8
callq 0x19f10
movq %r14, %rdi
callq 0x13430
// File: /workspace/github_cpp_makefile_star2_O3/swxlion[P]swxJson/tests/../src/swxJson.Enhancement.inc.h
// Function: 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>>>> swxJson::Json::wantVector<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<T, Alloc> wantVector()
	{
		if (_type != JSON_Array)
			throw JSON_ERROR_MSG(JsonNodeTypeMissMatchError, "Node type miss match.");

		std::list<JsonPtr>* data = (std::list<JsonPtr>*)_data;
		std::vector<T, Alloc> res;
		res.reserve(data->size());

		for (auto& node: *data)
			res.push_back((T)(*node));

		return res;
	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
cmpl $0x1, (%rsi)
jne 0x1e0ea
movq %rdi, %rbx
movq 0x8(%rsi), %r15
xorps %xmm0, %xmm0
movups %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
movq 0x10(%r15), %rsi
callq 0x1e1c0
movq (%r15), %r13
cmpq %r15, %r13
je 0x1e0d8
leaq 0x18(%rsp), %r12
leaq 0x8(%rsp), %r14
movq 0x10(%r13), %rsi
movq %r14, %rdi
callq 0x24906
movq %rbx, %rdi
movq %r14, %rsi
callq 0x1e2a8
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x1e0cf
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
movq (%r13), %r13
cmpq %r15, %r13
jne 0x1e0a1
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl $0x60, %edi
callq 0x13110
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xf50e(%rip), %rsi      # 0x2d615
leaq 0xf51c(%rip), %rdx      # 0x2d62a
leaq 0x8(%rsp), %rdi
callq 0x19f80
movb $0x1, %bpl
leaq 0xf4ad(%rip), %rsi      # 0x2d5cf
leaq 0xf563(%rip), %rdx      # 0x2d68c
leaq 0x8(%rsp), %r8
movq %rbx, %rdi
movl $0x37c, %ecx            # imm = 0x37C
callq 0x2bf1c
leaq 0x1aae6(%rip), %rax     # 0x38c28
addq $0x10, %rax
movq %rax, (%rbx)
xorl %ebp, %ebp
leaq 0x1aaa6(%rip), %rsi     # 0x38bf8
leaq -0x3fbb(%rip), %rdx     # 0x1a19e
movq %rbx, %rdi
callq 0x13410
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x1e17b
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
testb %bpl, %bpl
jne 0x1e185
jmp 0x1e1b8
movq %rax, %r14
movq %rbx, %rdi
callq 0x131e0
jmp 0x1e1b8
jmp 0x1e191
movq %rax, %r14
jmp 0x1e1b0
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x1e1b0
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
movq %rbx, %rdi
callq 0x1e000
movq %r14, %rdi
callq 0x13430
// File: /workspace/github_cpp_makefile_star2_O3/swxlion[P]swxJson/tests/../src/swxJson.Enhancement.inc.h
// Function: std::set<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::less<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>>>> swxJson::Json::wantSet<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::less<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::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
std::set<T, Compare, Alloc> wantSet(const std::string& path, const std::string& delim = "./")
	{
		JsonPtr node = getNode(path, delim);
		if (node)
			return node->wantSet<T, Compare, Alloc>();
		
		throw JSON_ERROR_MSG(JosnNodeNotExistError, "Target node doesn't exist.");
	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x38, %rsp
movq %rdi, %rbx
leaq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x21f1c
movq (%r14), %rsi
testq %rsi, %rsi
je 0x1e947
movq %rbx, %rdi
callq 0x1ea06
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x1e939
callq 0x19f10
movq %rbx, %rax
addq $0x38, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
movl $0x60, %edi
callq 0x13110
movq %rax, %rbx
leaq 0x28(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xec96(%rip), %rsi      # 0x2d5fa
leaq 0xeca9(%rip), %rdx      # 0x2d614
leaq 0x18(%rsp), %rdi
callq 0x19f80
movb $0x1, %bpl
leaq 0xec50(%rip), %rsi      # 0x2d5cf
leaq 0xed3b(%rip), %rdx      # 0x2d6c1
leaq 0x18(%rsp), %r8
movq %rbx, %rdi
movl $0x408, %ecx            # imm = 0x408
callq 0x2bf1c
leaq 0x1a2d9(%rip), %rax     # 0x38c78
addq $0x10, %rax
movq %rax, (%rbx)
xorl %ebp, %ebp
leaq 0x1a261(%rip), %rsi     # 0x38c10
leaq -0x4818(%rip), %rdx     # 0x1a19e
movq %rbx, %rdi
callq 0x13410
movq %rax, %r14
movq 0x18(%rsp), %rdi
cmpq %r15, %rdi
je 0x1e9d8
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x132a0
testb %bpl, %bpl
jne 0x1e9e2
jmp 0x1e9ef
movq %rax, %r14
movq %rbx, %rdi
callq 0x131e0
jmp 0x1e9ef
movq %rax, %r14
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x1e9fe
callq 0x19f10
movq %r14, %rdi
callq 0x13430
// File: /workspace/github_cpp_makefile_star2_O3/swxlion[P]swxJson/tests/../src/swxJson.Enhancement.inc.h
// Function: std::set<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::less<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>>>> swxJson::Json::wantSet<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::less<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::set<T, Compare, Alloc> wantSet()
	{
		if (_type != JSON_Array)
			throw JSON_ERROR_MSG(JsonNodeTypeMissMatchError, "Node type miss match.");

		std::list<JsonPtr>* data = (std::list<JsonPtr>*)_data;
		std::set<T, Compare, Alloc> res;

		for (auto& node: *data)
			res.insert((T)(*node));

		return res;
	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
cmpl $0x1, (%rsi)
jne 0x1ea98
movq %rdi, %rbx
movq 0x8(%rsi), %r15
leaq 0x8(%rdi), %rax
movl $0x0, 0x8(%rdi)
xorl %ecx, %ecx
movq %rcx, 0x10(%rdi)
movq %rax, 0x18(%rdi)
movq %rax, 0x20(%rdi)
movq %rcx, 0x28(%rdi)
movq (%r15), %r13
cmpq %r15, %r13
je 0x1ea86
leaq 0x18(%rsp), %r12
leaq 0x8(%rsp), %r14
movq 0x10(%r13), %rsi
movq %r14, %rdi
callq 0x24906
movq %rbx, %rdi
movq %r14, %rsi
callq 0x1eb6c
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x1ea7d
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
movq (%r13), %r13
cmpq %r15, %r13
jne 0x1ea4f
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl $0x60, %edi
callq 0x13110
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xeb60(%rip), %rsi      # 0x2d615
leaq 0xeb6e(%rip), %rdx      # 0x2d62a
leaq 0x8(%rsp), %rdi
callq 0x19f80
movb $0x1, %bpl
leaq 0xeaff(%rip), %rsi      # 0x2d5cf
leaq 0xebea(%rip), %rdx      # 0x2d6c1
leaq 0x8(%rsp), %r8
movq %rbx, %rdi
movl $0x38c, %ecx            # imm = 0x38C
callq 0x2bf1c
leaq 0x1a138(%rip), %rax     # 0x38c28
addq $0x10, %rax
movq %rax, (%rbx)
xorl %ebp, %ebp
leaq 0x1a0f8(%rip), %rsi     # 0x38bf8
leaq -0x4969(%rip), %rdx     # 0x1a19e
movq %rbx, %rdi
callq 0x13410
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x1eb29
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
testb %bpl, %bpl
jne 0x1eb33
jmp 0x1eb64
movq %rax, %r14
movq %rbx, %rdi
callq 0x131e0
jmp 0x1eb64
movq %rax, %r14
jmp 0x1eb5c
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x1eb5c
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x132a0
movq %rbx, %rdi
callq 0x1ecfe
movq %r14, %rdi
callq 0x13430
// File: /workspace/github_cpp_makefile_star2_O3/swxlion[P]swxJson/tests/../src/swxJson.Enhancement.inc.h
// Function: std::unordered_set<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, std::equal_to<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>>>> swxJson::Json::wantUnorderedSet<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, std::equal_to<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::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
std::unordered_set<Key, Hash, Pred, Alloc> wantUnorderedSet(const std::string& path, const std::string& delim = "./")
	{
		JsonPtr node = getNode(path, delim);
		if (node)
			return node->wantUnorderedSet<Key, Hash, Pred, Alloc>();
		
		throw JSON_ERROR_MSG(JosnNodeNotExistError, "Target node doesn't exist.");
	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x38, %rsp
movq %rdi, %rbx
leaq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x21f1c
movq (%r14), %rsi
testq %rsi, %rsi
je 0x1f145
movq %rbx, %rdi
callq 0x1f204
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x1f137
callq 0x19f10
movq %rbx, %rax
addq $0x38, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
movl $0x60, %edi
callq 0x13110
movq %rax, %rbx
leaq 0x28(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xe498(%rip), %rsi      # 0x2d5fa
leaq 0xe4ab(%rip), %rdx      # 0x2d614
leaq 0x18(%rsp), %rdi
callq 0x19f80
movb $0x1, %bpl
leaq 0xe452(%rip), %rsi      # 0x2d5cf
leaq 0xe545(%rip), %rdx      # 0x2d6c9
leaq 0x18(%rsp), %r8
movq %rbx, %rdi
movl $0x412, %ecx            # imm = 0x412
callq 0x2bf1c
leaq 0x19adb(%rip), %rax     # 0x38c78
addq $0x10, %rax
movq %rax, (%rbx)
xorl %ebp, %ebp
leaq 0x19a63(%rip), %rsi     # 0x38c10
leaq -0x5016(%rip), %rdx     # 0x1a19e
movq %rbx, %rdi
callq 0x13410
movq %rax, %r14
movq 0x18(%rsp), %rdi
cmpq %r15, %rdi
je 0x1f1d6
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x132a0
testb %bpl, %bpl
jne 0x1f1e0
jmp 0x1f1ed
movq %rax, %r14
movq %rbx, %rdi
callq 0x131e0
jmp 0x1f1ed
movq %rax, %r14
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x1f1fc
callq 0x19f10
movq %r14, %rdi
callq 0x13430