// File: ambersun1234[P]AVL_Tree/./src/unit_test.cpp
// Function: avlTest_privateContent_Test::TestBody()
TEST_F( avlTest , privateContent ) {
	// constructor
	EXPECT_EQ( avl_tree_int.root , nullptr );
	EXPECT_EQ( avl_tree_double.root , nullptr );

	avl_tree_int.insertHelper( 66 );
	avl_tree_double.insertHelper( 66.6 );

	EXPECT_EQ( avl_tree_int.root->getData() , 66 );
	EXPECT_EQ( avl_tree_double.root->getData() , 66.6 );

	avl_tree_int.insertHelper( 76 );
	avl_tree_double.insertHelper( 76.6 );
	avl_tree_int.insertHelper( 86 );
	avl_tree_double.insertHelper( 86.6 );

	EXPECT_EQ( avl_tree_int.root->getData() , 76 );
	EXPECT_EQ( avl_tree_double.root->getData() , 76.6 );

	avl_tree_int.clearTreeHelper();
	avl_tree_double.clearTreeHelper();

	EXPECT_EQ( avl_tree_int.root , nullptr );
	EXPECT_EQ( avl_tree_double.root , nullptr );
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x250, %rsp            # imm = 0x250
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rcx
movq %rcx, -0x180(%rbp)
addq $0x10, %rcx
movq $0x0, -0x20(%rbp)
leaq 0x48951(%rip), %rsi     # 0x5628e
leaq 0x48802(%rip), %rdx     # 0x56146
leaq -0x18(%rbp), %rdi
movq %rdi, -0x178(%rbp)
leaq -0x20(%rbp), %r8
callq 0xf590
movq -0x178(%rbp), %rdi
callq 0xf3b0
movb %al, -0x169(%rbp)
jmp 0xd96c
movb -0x169(%rbp), %al
testb $0x1, %al
jne 0xd978
jmp 0xd98e
jmp 0xda1f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0xda82
leaq -0x38(%rbp), %rdi
callq 0x190b0
jmp 0xd999
leaq -0x18(%rbp), %rdi
callq 0xf3d0
movq %rax, -0x188(%rbp)
jmp 0xd9ab
movq -0x188(%rbp), %r8
leaq 0x48688(%rip), %rdx     # 0x56041
leaq -0x40(%rbp), %rdi
movl $0x1, %esi
movl $0x77, %ecx
callq 0x16080
jmp 0xd9ce
leaq -0x40(%rbp), %rdi
leaq -0x38(%rbp), %rsi
callq 0x16140
jmp 0xd9dd
leaq -0x40(%rbp), %rdi
callq 0x16100
leaq -0x38(%rbp), %rdi
callq 0xf3f0
jmp 0xda1f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0xda14
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x40(%rbp), %rdi
callq 0x16100
leaq -0x38(%rbp), %rdi
callq 0xf3f0
jmp 0xda82
leaq -0x18(%rbp), %rdi
callq 0xf410
movq -0x180(%rbp), %rcx
addq $0x18, %rcx
movq $0x0, -0x58(%rbp)
leaq 0x4885e(%rip), %rsi     # 0x562a0
leaq 0x486fd(%rip), %rdx     # 0x56146
leaq -0x50(%rbp), %rdi
movq %rdi, -0x198(%rbp)
leaq -0x58(%rbp), %r8
callq 0xf750
movq -0x198(%rbp), %rdi
callq 0xf3b0
movb %al, -0x189(%rbp)
jmp 0xda71
movb -0x189(%rbp), %al
testb $0x1, %al
jne 0xda7d
jmp 0xdaa1
jmp 0xdb35
leaq -0x18(%rbp), %rdi
callq 0xf410
jmp 0xe3b8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0xdbd0
leaq -0x60(%rbp), %rdi
callq 0x190b0
jmp 0xdaac
leaq -0x50(%rbp), %rdi
callq 0xf3d0
movq %rax, -0x1a0(%rbp)
jmp 0xdabe
movq -0x1a0(%rbp), %r8
leaq 0x48575(%rip), %rdx     # 0x56041
leaq -0x68(%rbp), %rdi
movl $0x1, %esi
movl $0x78, %ecx
callq 0x16080
jmp 0xdae1
leaq -0x68(%rbp), %rdi
leaq -0x60(%rbp), %rsi
callq 0x16140
jmp 0xdaf0
leaq -0x68(%rbp), %rdi
callq 0x16100
leaq -0x60(%rbp), %rdi
callq 0xf3f0
jmp 0xdb35
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0xdb27
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x68(%rbp), %rdi
callq 0x16100
leaq -0x60(%rbp), %rdi
callq 0xf3f0
jmp 0xdbd0
leaq -0x50(%rbp), %rdi
callq 0xf410
movq -0x180(%rbp), %rdi
addq $0x10, %rdi
movl $0x42, %esi
callq 0xfb30
movq -0x180(%rbp), %rdi
addq $0x18, %rdi
movsd 0x484a2(%rip), %xmm0    # 0x56008
callq 0xfbc0
movq -0x180(%rbp), %rax
movq 0x10(%rax), %rdi
callq 0xf3a0
movl %eax, -0x7c(%rbp)
movl $0x42, -0x80(%rbp)
leaq 0x48729(%rip), %rsi     # 0x562b5
leaq 0x4873f(%rip), %rdx     # 0x562d2
leaq -0x78(%rbp), %rdi
movq %rdi, -0x1b0(%rbp)
leaq -0x7c(%rbp), %rcx
leaq -0x80(%rbp), %r8
callq 0xf350
movq -0x1b0(%rbp), %rdi
callq 0xf3b0
movb %al, -0x1a1(%rbp)
jmp 0xdbbf
movb -0x1a1(%rbp), %al
testb $0x1, %al
jne 0xdbcb
jmp 0xdbef
jmp 0xdc9b
leaq -0x50(%rbp), %rdi
callq 0xf410
jmp 0xe3b8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0xdd21
leaq -0x88(%rbp), %rdi
callq 0x190b0
jmp 0xdbfd
leaq -0x78(%rbp), %rdi
callq 0xf3d0
movq %rax, -0x1b8(%rbp)
jmp 0xdc0f
movq -0x1b8(%rbp), %r8
leaq 0x48424(%rip), %rdx     # 0x56041
leaq -0x90(%rbp), %rdi
movl $0x1, %esi
movl $0x7d, %ecx
callq 0x16080
jmp 0xdc35
leaq -0x90(%rbp), %rdi
leaq -0x88(%rbp), %rsi
callq 0x16140
jmp 0xdc4a
leaq -0x90(%rbp), %rdi
callq 0x16100
leaq -0x88(%rbp), %rdi
callq 0xf3f0
jmp 0xdc9b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0xdc8a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x90(%rbp), %rdi
callq 0x16100
leaq -0x88(%rbp), %rdi
callq 0xf3f0
jmp 0xdd21
leaq -0x78(%rbp), %rdi
callq 0xf410
movq -0x180(%rbp), %rax
movq 0x18(%rax), %rdi
callq 0xf4a0
movsd %xmm0, -0xa8(%rbp)
movabsq $0x4050a66666666666, %rax # imm = 0x4050A66666666666
movq %rax, -0xb0(%rbp)
leaq 0x48601(%rip), %rsi     # 0x562d5
leaq 0x4861a(%rip), %rdx     # 0x562f5
leaq -0xa0(%rbp), %rdi
movq %rdi, -0x1c8(%rbp)
leaq -0xa8(%rbp), %rcx
leaq -0xb0(%rbp), %r8
callq 0xf450
movq -0x1c8(%rbp), %rdi
callq 0xf3b0
movb %al, -0x1b9(%rbp)
jmp 0xdd10
movb -0x1b9(%rbp), %al
testb $0x1, %al
jne 0xdd1c
jmp 0xdd40
jmp 0xddef
leaq -0x78(%rbp), %rdi
callq 0xf410
jmp 0xe3b8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0xdecf
leaq -0xb8(%rbp), %rdi
callq 0x190b0
jmp 0xdd4e
leaq -0xa0(%rbp), %rdi
callq 0xf3d0
movq %rax, -0x1d0(%rbp)
jmp 0xdd63
movq -0x1d0(%rbp), %r8
leaq 0x482d0(%rip), %rdx     # 0x56041
leaq -0xc0(%rbp), %rdi
movl $0x1, %esi
movl $0x7e, %ecx
callq 0x16080
jmp 0xdd89
leaq -0xc0(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x16140
jmp 0xdd9e
leaq -0xc0(%rbp), %rdi
callq 0x16100
leaq -0xb8(%rbp), %rdi
callq 0xf3f0
jmp 0xddef
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0xddde
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0xc0(%rbp), %rdi
callq 0x16100
leaq -0xb8(%rbp), %rdi
callq 0xf3f0
jmp 0xdecf
leaq -0xa0(%rbp), %rdi
callq 0xf410
movq -0x180(%rbp), %rdi
addq $0x10, %rdi
movq %rdi, -0x1f0(%rbp)
movl $0x4c, %esi
callq 0xfb30
movq -0x180(%rbp), %rdi
addq $0x18, %rdi
movq %rdi, -0x1e8(%rbp)
movsd 0x481df(%rip), %xmm0    # 0x56010
callq 0xfbc0
movq -0x1f0(%rbp), %rdi
movl $0x56, %esi
callq 0xfb30
movq -0x1e8(%rbp), %rdi
movsd 0x481c2(%rip), %xmm0    # 0x56018
callq 0xfbc0
movq -0x180(%rbp), %rax
movq 0x10(%rax), %rdi
callq 0xf3a0
movl %eax, -0xd4(%rbp)
movl $0x4c, -0xd8(%rbp)
leaq 0x48433(%rip), %rsi     # 0x562b5
leaq 0x48471(%rip), %rdx     # 0x562fa
leaq -0xd0(%rbp), %rdi
movq %rdi, -0x1e0(%rbp)
leaq -0xd4(%rbp), %rcx
leaq -0xd8(%rbp), %r8
callq 0xf350
movq -0x1e0(%rbp), %rdi
callq 0xf3b0
movb %al, -0x1d1(%rbp)
jmp 0xdebe
movb -0x1d1(%rbp), %al
testb $0x1, %al
jne 0xdeca
jmp 0xdef1
jmp 0xdfa0
leaq -0xa0(%rbp), %rdi
callq 0xf410
jmp 0xe3b8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0xe029
leaq -0xe0(%rbp), %rdi
callq 0x190b0
jmp 0xdeff
leaq -0xd0(%rbp), %rdi
callq 0xf3d0
movq %rax, -0x1f8(%rbp)
jmp 0xdf14
movq -0x1f8(%rbp), %r8
leaq 0x4811f(%rip), %rdx     # 0x56041
leaq -0xe8(%rbp), %rdi
movl $0x1, %esi
movl $0x85, %ecx
callq 0x16080
jmp 0xdf3a
leaq -0xe8(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x16140
jmp 0xdf4f
leaq -0xe8(%rbp), %rdi
callq 0x16100
leaq -0xe0(%rbp), %rdi
callq 0xf3f0
jmp 0xdfa0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0xdf8f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0xe8(%rbp), %rdi
callq 0x16100
leaq -0xe0(%rbp), %rdi
callq 0xf3f0
jmp 0xe029
leaq -0xd0(%rbp), %rdi
callq 0xf410
movq -0x180(%rbp), %rax
movq 0x18(%rax), %rdi
callq 0xf4a0
movsd %xmm0, -0x100(%rbp)
movabsq $0x4053266666666666, %rax # imm = 0x4053266666666666
movq %rax, -0x108(%rbp)
leaq 0x482f9(%rip), %rsi     # 0x562d5
leaq 0x4831a(%rip), %rdx     # 0x562fd
leaq -0xf8(%rbp), %rdi
movq %rdi, -0x208(%rbp)
leaq -0x100(%rbp), %rcx
leaq -0x108(%rbp), %r8
callq 0xf450
movq -0x208(%rbp), %rdi
callq 0xf3b0
movb %al, -0x1f9(%rbp)
jmp 0xe018
movb -0x1f9(%rbp), %al
testb $0x1, %al
jne 0xe024
jmp 0xe04b
jmp 0xe0fa
leaq -0xd0(%rbp), %rdi
callq 0xf410
jmp 0xe3b8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0xe18c
leaq -0x110(%rbp), %rdi
callq 0x190b0
jmp 0xe059
leaq -0xf8(%rbp), %rdi
callq 0xf3d0
movq %rax, -0x210(%rbp)
jmp 0xe06e
movq -0x210(%rbp), %r8
leaq 0x47fc5(%rip), %rdx     # 0x56041
leaq -0x118(%rbp), %rdi
movl $0x1, %esi
movl $0x86, %ecx
callq 0x16080
jmp 0xe094
leaq -0x118(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x16140
jmp 0xe0a9
leaq -0x118(%rbp), %rdi
callq 0x16100
leaq -0x110(%rbp), %rdi
callq 0xf3f0
jmp 0xe0fa
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0xe0e9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x118(%rbp), %rdi
callq 0x16100
leaq -0x110(%rbp), %rdi
callq 0xf3f0
jmp 0xe18c
leaq -0xf8(%rbp), %rdi
callq 0xf410
movq -0x180(%rbp), %rdi
addq $0x10, %rdi
movq %rdi, -0x228(%rbp)
callq 0xfc50
movq -0x180(%rbp), %rdi
addq $0x18, %rdi
callq 0xfc80
movq -0x228(%rbp), %rcx
movq $0x0, -0x130(%rbp)
leaq 0x48148(%rip), %rsi     # 0x5628e
leaq 0x47ff9(%rip), %rdx     # 0x56146
leaq -0x128(%rbp), %rdi
movq %rdi, -0x220(%rbp)
leaq -0x130(%rbp), %r8
callq 0xf590
movq -0x220(%rbp), %rdi
callq 0xf3b0
movb %al, -0x211(%rbp)
jmp 0xe17b
movb -0x211(%rbp), %al
testb $0x1, %al
jne 0xe187
jmp 0xe1ae
jmp 0xe25a
leaq -0xf8(%rbp), %rdi
callq 0xf410
jmp 0xe3b8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0xe2c9
leaq -0x138(%rbp), %rdi
callq 0x190b0
jmp 0xe1bc
leaq -0x128(%rbp), %rdi
callq 0xf3d0
movq %rax, -0x230(%rbp)
jmp 0xe1d1
movq -0x230(%rbp), %r8
leaq 0x47e62(%rip), %rdx     # 0x56041
leaq -0x140(%rbp), %rdi
movl $0x1, %esi
movl $0x8b, %ecx
callq 0x16080
jmp 0xe1f7
leaq -0x140(%rbp), %rdi
leaq -0x138(%rbp), %rsi
callq 0x16140
jmp 0xe20c
leaq -0x140(%rbp), %rdi
callq 0x16100
leaq -0x138(%rbp), %rdi
callq 0xf3f0
jmp 0xe25a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0xe24c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x140(%rbp), %rdi
callq 0x16100
leaq -0x138(%rbp), %rdi
callq 0xf3f0
jmp 0xe2c9
leaq -0x128(%rbp), %rdi
callq 0xf410
movq -0x180(%rbp), %rcx
addq $0x18, %rcx
movq $0x0, -0x158(%rbp)
leaq 0x4801d(%rip), %rsi     # 0x562a0
leaq 0x47ebc(%rip), %rdx     # 0x56146
leaq -0x150(%rbp), %rdi
movq %rdi, -0x240(%rbp)
leaq -0x158(%rbp), %r8
callq 0xf750
movq -0x240(%rbp), %rdi
callq 0xf3b0
movb %al, -0x231(%rbp)
jmp 0xe2b8
movb -0x231(%rbp), %al
testb $0x1, %al
jne 0xe2c4
jmp 0xe2eb
jmp 0xe397
leaq -0x128(%rbp), %rdi
callq 0xf410
jmp 0xe3b8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0xe3ac
leaq -0x160(%rbp), %rdi
callq 0x190b0
jmp 0xe2f9
leaq -0x150(%rbp), %rdi
callq 0xf3d0
movq %rax, -0x248(%rbp)
jmp 0xe30e
movq -0x248(%rbp), %r8
leaq 0x47d25(%rip), %rdx     # 0x56041
leaq -0x168(%rbp), %rdi
movl $0x1, %esi
movl $0x8c, %ecx
callq 0x16080
jmp 0xe334
leaq -0x168(%rbp), %rdi
leaq -0x160(%rbp), %rsi
callq 0x16140
jmp 0xe349
leaq -0x168(%rbp), %rdi
callq 0x16100
leaq -0x160(%rbp), %rdi
callq 0xf3f0
jmp 0xe397
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0xe389
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x168(%rbp), %rdi
callq 0x16100
leaq -0x160(%rbp), %rdi
callq 0xf3f0
jmp 0xe3ac
leaq -0x150(%rbp), %rdi
callq 0xf410
addq $0x250, %rsp            # imm = 0x250
popq %rbp
retq
leaq -0x150(%rbp), %rdi
callq 0xf410
movq -0x28(%rbp), %rdi
callq 0x9c40
nopw %cs:(%rax,%rax)