// File: swxlion[P]swxJson/tests/swxJsonAdvancedTest_fetch_v2.cpp
// Function: test_unordered_set()
void test_unordered_set()
{
	cout<<endl<<"[Test unordered set] ..."<<endl;

	try {

		JsonPtr json = Json::parse(arrayDemo.c_str());
		cout<<"get json:"<<endl;
		cout<<json<<endl<<endl;

		test_unordered_set<std::string>(json, "strArray", "--- string unordered set:");
		test_unordered_set<int>(json, "intArray", "--- int unordered set:");
	}
	catch (const JsonError &e)
	{
		cout<<"[Error]: "<<e.message()<<" line: "<<e.lineNumber()<<", fun: "<<e.function()<<endl;
	}
}

// Assembly:
subq $0xc8, %rsp
movq 0x4acda(%rip), %rdi     # 0x97fd8
movq 0x4acab(%rip), %rsi     # 0x97fb0
movq %rsi, 0x68(%rsp)
callq 0x4a360
movq %rax, %rdi
leaq 0x351c0(%rip), %rsi     # 0x824d9
callq 0x4a300
movq 0x68(%rsp), %rsi
movq %rax, %rdi
callq 0x4a360
leaq 0x4b006(%rip), %rdi     # 0x98338
callq 0x4a100
movq %rax, %rsi
leaq 0xb8(%rsp), %rdi
callq 0x7d040
jmp 0x4d349
movq 0x4ac88(%rip), %rdi     # 0x97fd8
leaq 0x34eaf(%rip), %rsi     # 0x82206
callq 0x4a300
movq %rax, 0x60(%rsp)
jmp 0x4d363
movq 0x60(%rsp), %rdi
movq 0x4ac41(%rip), %rsi     # 0x97fb0
callq 0x4a360
jmp 0x4d376
leaq 0x98(%rsp), %rdi
movq %rdi, 0x50(%rsp)
leaq 0xb8(%rsp), %rsi
callq 0x4e240
movq 0x50(%rsp), %rsi
movq 0x4ac3c(%rip), %rdi     # 0x97fd8
callq 0x69de0
movq %rax, 0x58(%rsp)
jmp 0x4d3a8
movq 0x58(%rsp), %rdi
movq 0x4abfc(%rip), %rsi     # 0x97fb0
callq 0x4a360
movq %rax, 0x48(%rsp)
jmp 0x4d3c0
movq 0x48(%rsp), %rdi
movq 0x4abe4(%rip), %rsi     # 0x97fb0
callq 0x4a360
jmp 0x4d3d3
leaq 0x98(%rsp), %rdi
callq 0x4e270
leaq 0x88(%rsp), %rdi
movq %rdi, 0x40(%rsp)
leaq 0xb8(%rsp), %rsi
callq 0x4e240
movq 0x40(%rsp), %rdi
leaq 0x34e5d(%rip), %rsi     # 0x82263
leaq 0x350e5(%rip), %rdx     # 0x824f2
callq 0x50b10
jmp 0x4d414
leaq 0x88(%rsp), %rdi
callq 0x4e270
leaq 0x78(%rsp), %rdi
movq %rdi, 0x38(%rsp)
leaq 0xb8(%rsp), %rsi
callq 0x4e240
movq 0x38(%rsp), %rdi
leaq 0x34e52(%rip), %rsi     # 0x82296
leaq 0x350c1(%rip), %rdx     # 0x8250c
callq 0x50d80
jmp 0x4d452
leaq 0x78(%rsp), %rdi
callq 0x4e270
leaq 0xb8(%rsp), %rdi
callq 0x4e270
jmp 0x4d5ef
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xb0(%rsp)
movl %eax, 0xac(%rsp)
jmp 0x4d50e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xb0(%rsp)
movl %eax, 0xac(%rsp)
jmp 0x4d501
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xb0(%rsp)
movl %eax, 0xac(%rsp)
leaq 0x98(%rsp), %rdi
callq 0x4e270
jmp 0x4d501
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xb0(%rsp)
movl %eax, 0xac(%rsp)
leaq 0x88(%rsp), %rdi
callq 0x4e270
jmp 0x4d501
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xb0(%rsp)
movl %eax, 0xac(%rsp)
leaq 0x78(%rsp), %rdi
callq 0x4e270
leaq 0xb8(%rsp), %rdi
callq 0x4e270
movl 0xac(%rsp), %eax
movl $0x1, %ecx
cmpl %ecx, %eax
jne 0x4d614
movq 0xb0(%rsp), %rdi
callq 0x4a0f0
movq %rax, 0x70(%rsp)
movq 0x4aa9d(%rip), %rdi     # 0x97fd8
leaq 0x34cce(%rip), %rsi     # 0x82210
callq 0x4a300
movq %rax, 0x30(%rsp)
jmp 0x4d54e
movq 0x70(%rsp), %rdi
callq 0x4e480
movq 0x30(%rsp), %rdi
movq %rax, %rsi
callq 0x4a2c0
movq %rax, 0x28(%rsp)
jmp 0x4d56c
movq 0x28(%rsp), %rdi
leaq 0x34ca2(%rip), %rsi     # 0x8221a
callq 0x4a300
movq %rax, 0x20(%rsp)
jmp 0x4d584
movq 0x70(%rsp), %rdi
callq 0x4e490
movq 0x20(%rsp), %rdi
movl %eax, %esi
callq 0x4a510
movq %rax, 0x18(%rsp)
jmp 0x4d5a1
movq 0x18(%rsp), %rdi
leaq 0x34c75(%rip), %rsi     # 0x82222
callq 0x4a300
movq %rax, 0x10(%rsp)
jmp 0x4d5b9
movq 0x70(%rsp), %rdi
callq 0x4e4a0
movq 0x10(%rsp), %rdi
movq %rax, %rsi
callq 0x4a300
movq %rax, 0x8(%rsp)
jmp 0x4d5d7
movq 0x8(%rsp), %rdi
movq 0x4a9cd(%rip), %rsi     # 0x97fb0
callq 0x4a360
jmp 0x4d5ea
callq 0x4a4e0
addq $0xc8, %rsp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xb0(%rsp)
movl %eax, 0xac(%rsp)
callq 0x4a4e0
jmp 0x4d612
jmp 0x4d614
movq 0xb0(%rsp), %rdi
callq 0x4a520
movq %rax, %rdi
callq 0x4e020
nopl (%rax)