// File: swxlion[P]swxJson/tests/swxJsonAdvancedTest_modify.cpp
// Function: advancedPushTest()
void advancedPushTest()
{
	cout<<"----------------- advancedPushTest ---------------------"<<endl;
	{
		Json json;
		json.push(tupleDemo);
		cout<<json<<endl;
	}
	{
		Json json;
		json.push(arrayDemo);
		cout<<json<<endl;
	}

	{
		Json json;
		json.push(dequeDemo);
		cout<<json<<endl;
	}
	{
		Json json;
		json.push(boolvec);
		cout<<json<<endl;
		json.push(intvec);
		cout<<json<<endl;
		json.push(doublevec);
		cout<<json<<endl;
		json.push(stringvec);
		cout<<json<<endl;
	}
	{
		Json json;
		json.push(listDemo);
		cout<<json<<endl;
	}
	{
		Json json;
		json.push(setDemo);
		cout<<json<<endl;
	}

	{
		Json json;
		json.push(usetDemo);
		cout<<json<<endl;
	}
	{
		Json json;
		json.push(boolmap);
		cout<<json<<endl;
		json.push(intmap);
		cout<<json<<endl;
		json.push(doublemap);
		cout<<json<<endl;
		json.push(stringmap);
		cout<<json<<endl;
	}
	{
		Json json;
		json.push(umapDemo);
		cout<<json<<endl;
	}
}

// Assembly:
subq $0x168, %rsp            # imm = 0x168
movq 0x4761a(%rip), %rdi     # 0x89fd8
leaq 0x33763(%rip), %rsi     # 0x76128
callq 0x40290
movq %rax, %rdi
movq 0x475e4(%rip), %rsi     # 0x89fb8
callq 0x402f0
leaq 0x158(%rsp), %rdi
movq %rdi, 0xc0(%rsp)
callq 0x48d30
movq 0xc0(%rsp), %rdi
leaq 0x4789b(%rip), %rsi     # 0x8a298
callq 0x4a040
jmp 0x42a04
movq 0x475cd(%rip), %rdi     # 0x89fd8
leaq 0x158(%rsp), %rsi
callq 0x63e90
movq %rax, 0xb8(%rsp)
jmp 0x42a22
movq 0xb8(%rsp), %rdi
movq 0x47587(%rip), %rsi     # 0x89fb8
callq 0x402f0
jmp 0x42a38
leaq 0x158(%rsp), %rdi
callq 0x494f0
leaq 0x138(%rsp), %rdi
movq %rdi, 0xb0(%rsp)
callq 0x48d30
movq 0xb0(%rsp), %rdi
leaq 0x47857(%rip), %rsi     # 0x8a2c0
callq 0x4a160
jmp 0x42a70
movq 0x47561(%rip), %rdi     # 0x89fd8
leaq 0x138(%rsp), %rsi
callq 0x63e90
movq %rax, 0xa8(%rsp)
jmp 0x42a8e
movq 0xa8(%rsp), %rdi
movq 0x4751b(%rip), %rsi     # 0x89fb8
callq 0x402f0
jmp 0x42aa4
leaq 0x138(%rsp), %rdi
callq 0x494f0
leaq 0x128(%rsp), %rdi
movq %rdi, 0xa0(%rsp)
callq 0x48d30
movq 0xa0(%rsp), %rdi
leaq 0x4794b(%rip), %rsi     # 0x8a420
callq 0x4a280
jmp 0x42adc
movq 0x474f5(%rip), %rdi     # 0x89fd8
leaq 0x128(%rsp), %rsi
callq 0x63e90
movq %rax, 0x98(%rsp)
jmp 0x42afa
movq 0x98(%rsp), %rdi
movq 0x474af(%rip), %rsi     # 0x89fb8
callq 0x402f0
jmp 0x42b10
leaq 0x128(%rsp), %rdi
callq 0x494f0
leaq 0x118(%rsp), %rdi
movq %rdi, 0x90(%rsp)
callq 0x48d30
movq 0x90(%rsp), %rdi
leaq 0x477af(%rip), %rsi     # 0x8a2f0
callq 0x4a3a0
jmp 0x42b48
movq 0x47489(%rip), %rdi     # 0x89fd8
leaq 0x118(%rsp), %rsi
callq 0x63e90
movq %rax, 0x88(%rsp)
jmp 0x42b66
movq 0x88(%rsp), %rdi
movq 0x47443(%rip), %rsi     # 0x89fb8
callq 0x402f0
jmp 0x42b7c
leaq 0x47795(%rip), %rsi     # 0x8a318
leaq 0x118(%rsp), %rdi
callq 0x4a4c0
jmp 0x42b92
movq 0x4743f(%rip), %rdi     # 0x89fd8
leaq 0x118(%rsp), %rsi
callq 0x63e90
movq %rax, 0x80(%rsp)
jmp 0x42bb0
movq 0x80(%rsp), %rdi
movq 0x473f9(%rip), %rsi     # 0x89fb8
callq 0x402f0
jmp 0x42bc6
leaq 0x47763(%rip), %rsi     # 0x8a330
leaq 0x118(%rsp), %rdi
callq 0x4a5e0
jmp 0x42bdc
movq 0x473f5(%rip), %rdi     # 0x89fd8
leaq 0x118(%rsp), %rsi
callq 0x63e90
movq %rax, 0x78(%rsp)
jmp 0x42bf7
movq 0x78(%rsp), %rdi
movq 0x473b5(%rip), %rsi     # 0x89fb8
callq 0x402f0
jmp 0x42c0a
leaq 0x47737(%rip), %rsi     # 0x8a348
leaq 0x118(%rsp), %rdi
callq 0x4a700
jmp 0x42c20
movq 0x473b1(%rip), %rdi     # 0x89fd8
leaq 0x118(%rsp), %rsi
callq 0x63e90
movq %rax, 0x70(%rsp)
jmp 0x42c3b
movq 0x70(%rsp), %rdi
movq 0x47371(%rip), %rsi     # 0x89fb8
callq 0x402f0
jmp 0x42c4e
leaq 0x118(%rsp), %rdi
callq 0x494f0
leaq 0x108(%rsp), %rdi
movq %rdi, 0x68(%rsp)
callq 0x48d30
movq 0x68(%rsp), %rdi
leaq 0x477f7(%rip), %rsi     # 0x8a470
callq 0x4a820
jmp 0x42c80
movq 0x47351(%rip), %rdi     # 0x89fd8
leaq 0x108(%rsp), %rsi
callq 0x63e90
movq %rax, 0x60(%rsp)
jmp 0x42c9b
movq 0x60(%rsp), %rdi
movq 0x47311(%rip), %rsi     # 0x89fb8
callq 0x402f0
jmp 0x42cae
leaq 0x108(%rsp), %rdi
callq 0x494f0
leaq 0xf8(%rsp), %rdi
movq %rdi, 0x58(%rsp)
callq 0x48d30
movq 0x58(%rsp), %rdi
leaq 0x477af(%rip), %rsi     # 0x8a488
callq 0x4a940
jmp 0x42ce0
movq 0x472f1(%rip), %rdi     # 0x89fd8
leaq 0xf8(%rsp), %rsi
callq 0x63e90
movq %rax, 0x50(%rsp)
jmp 0x42cfb
movq 0x50(%rsp), %rdi
movq 0x472b1(%rip), %rsi     # 0x89fb8
callq 0x402f0
jmp 0x42d0e
leaq 0xf8(%rsp), %rdi
callq 0x494f0
leaq 0xe8(%rsp), %rdi
movq %rdi, 0x48(%rsp)
callq 0x48d30
movq 0x48(%rsp), %rdi
leaq 0x4777f(%rip), %rsi     # 0x8a4b8
callq 0x4aa60
jmp 0x42d40
movq 0x47291(%rip), %rdi     # 0x89fd8
leaq 0xe8(%rsp), %rsi
callq 0x63e90
movq %rax, 0x40(%rsp)
jmp 0x42d5b
movq 0x40(%rsp), %rdi
movq 0x47251(%rip), %rsi     # 0x89fb8
callq 0x402f0
jmp 0x42d6e
leaq 0xe8(%rsp), %rdi
callq 0x494f0
leaq 0xd8(%rsp), %rdi
movq %rdi, 0x38(%rsp)
callq 0x48d30
movq 0x38(%rsp), %rdi
leaq 0x475c7(%rip), %rsi     # 0x8a360
callq 0x4ab80
jmp 0x42da0
movq 0x47231(%rip), %rdi     # 0x89fd8
leaq 0xd8(%rsp), %rsi
callq 0x63e90
movq %rax, 0x30(%rsp)
jmp 0x42dbb
movq 0x30(%rsp), %rdi
movq 0x471f1(%rip), %rsi     # 0x89fb8
callq 0x402f0
jmp 0x42dce
leaq 0x475bb(%rip), %rsi     # 0x8a390
leaq 0xd8(%rsp), %rdi
callq 0x4aca0
jmp 0x42de4
movq 0x471ed(%rip), %rdi     # 0x89fd8
leaq 0xd8(%rsp), %rsi
callq 0x63e90
movq %rax, 0x28(%rsp)
jmp 0x42dff
movq 0x28(%rsp), %rdi
movq 0x471ad(%rip), %rsi     # 0x89fb8
callq 0x402f0
jmp 0x42e12
leaq 0x475a7(%rip), %rsi     # 0x8a3c0
leaq 0xd8(%rsp), %rdi
callq 0x4adc0
jmp 0x42e28
movq 0x471a9(%rip), %rdi     # 0x89fd8
leaq 0xd8(%rsp), %rsi
callq 0x63e90
movq %rax, 0x20(%rsp)
jmp 0x42e43
movq 0x20(%rsp), %rdi
movq 0x47169(%rip), %rsi     # 0x89fb8
callq 0x402f0
jmp 0x42e56
leaq 0x47593(%rip), %rsi     # 0x8a3f0
leaq 0xd8(%rsp), %rdi
callq 0x4aee0
jmp 0x42e6c
movq 0x47165(%rip), %rdi     # 0x89fd8
leaq 0xd8(%rsp), %rsi
callq 0x63e90
movq %rax, 0x18(%rsp)
jmp 0x42e87
movq 0x18(%rsp), %rdi
movq 0x47125(%rip), %rsi     # 0x89fb8
callq 0x402f0
jmp 0x42e9a
leaq 0xd8(%rsp), %rdi
callq 0x494f0
leaq 0xc8(%rsp), %rdi
movq %rdi, 0x10(%rsp)
callq 0x48d30
movq 0x10(%rsp), %rdi
leaq 0x4762b(%rip), %rsi     # 0x8a4f0
callq 0x4b000
jmp 0x42ecc
movq 0x47105(%rip), %rdi     # 0x89fd8
leaq 0xc8(%rsp), %rsi
callq 0x63e90
movq %rax, 0x8(%rsp)
jmp 0x42ee7
movq 0x8(%rsp), %rdi
movq 0x470c5(%rip), %rsi     # 0x89fb8
callq 0x402f0
jmp 0x42efa
leaq 0xc8(%rsp), %rdi
callq 0x494f0
addq $0x168, %rsp            # imm = 0x168
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x150(%rsp)
movl %eax, 0x14c(%rsp)
leaq 0x158(%rsp), %rdi
callq 0x494f0
jmp 0x43057
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x150(%rsp)
movl %eax, 0x14c(%rsp)
leaq 0x138(%rsp), %rdi
callq 0x494f0
jmp 0x43057
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x150(%rsp)
movl %eax, 0x14c(%rsp)
leaq 0x128(%rsp), %rdi
callq 0x494f0
jmp 0x43057
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x150(%rsp)
movl %eax, 0x14c(%rsp)
leaq 0x118(%rsp), %rdi
callq 0x494f0
jmp 0x43057
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x150(%rsp)
movl %eax, 0x14c(%rsp)
leaq 0x108(%rsp), %rdi
callq 0x494f0
jmp 0x43057
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x150(%rsp)
movl %eax, 0x14c(%rsp)
leaq 0xf8(%rsp), %rdi
callq 0x494f0
jmp 0x43057
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x150(%rsp)
movl %eax, 0x14c(%rsp)
leaq 0xe8(%rsp), %rdi
callq 0x494f0
jmp 0x43057
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x150(%rsp)
movl %eax, 0x14c(%rsp)
leaq 0xd8(%rsp), %rdi
callq 0x494f0
jmp 0x43057
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x150(%rsp)
movl %eax, 0x14c(%rsp)
leaq 0xc8(%rsp), %rdi
callq 0x494f0
movq 0x150(%rsp), %rdi
callq 0x40470
nopw %cs:(%rax,%rax)