// File: /workspace/github_c_makefile_star2_O3/OpenGene[P]pecheck/src/read.cpp
// Function: ReadPair::test()
bool ReadPair::test(){
	Read* left = new Read("@NS500713:64:HFKJJBGXY:1:11101:20469:1097 1:N:0:TATAGCCT+GGTCCCGA",
		"TTTTTTCTCTTGGACTCTAACACTGTTTTTTCTTATGAAAACACAGGAGTGATGACTAGTTGAGTGCATTCTTATGAGACTCATAGTCATTCTATGATGTAG",
		"+",
		"AAAAA6EEEEEEEEEEEEEEEEE#EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEAEEEAEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE");
	Read* right = new Read("@NS500713:64:HFKJJBGXY:1:11101:20469:1097 1:N:0:TATAGCCT+GGTCCCGA",
		"AAAAAACTACACCATAGAATGACTATGAGTCTCATAAGAATGCACTCAACTAGTCATCACTCCTGTGTTTTCATAAGAAAAAACAGTGTTAGAGTCCAAGAG",
		"+",
		"AAAAA6EEEEE/EEEEEEEEEEE#EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEAEEEAEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE");

	ReadPair pair(left, right);
	Read* merged = pair.fastMerge();
	if(merged == NULL)
		return false;

	if(merged->mSeq.mStr != "TTTTTTCTCTTGGACTCTAACACTGTTTTTTCTTATGAAAACACAGGAGTGATGACTAGTTGAGTGCATTCTTATGAGACTCATAGTCATTCTATGATGTAGTTTTTT")
		return false;

	return true;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x118, %rsp            # imm = 0x118
movl $0x88, %edi
callq 0x32c0
movq %rax, %rbx
leaq 0xf8(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x13b8(%rip), %rsi      # 0xd6fb
leaq 0x13f2(%rip), %rdx      # 0xd73c
leaq 0xe8(%rsp), %rdi
callq 0x4ce4
leaq 0xd8(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x1523(%rip), %rsi      # 0xd88e
leaq 0x1582(%rip), %rdx      # 0xd8f4
leaq 0xc8(%rsp), %rdi
callq 0x4ce4
leaq 0xb8(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x1367(%rip), %rsi      # 0xd6f9
leaq 0x1361(%rip), %rdx      # 0xd6fa
leaq 0xa8(%rsp), %rdi
callq 0x4ce4
leaq 0x98(%rsp), %rbp
movq %rbp, -0x10(%rbp)
leaq 0x153c(%rip), %rsi      # 0xd8f5
leaq 0x159b(%rip), %rdx      # 0xd95b
leaq 0x88(%rsp), %rdi
callq 0x4ce4
leaq 0xe8(%rsp), %rsi
leaq 0xc8(%rsp), %rdx
leaq 0xa8(%rsp), %rcx
leaq 0x88(%rsp), %r8
movq %rbx, %rdi
xorl %r9d, %r9d
callq 0xa328
movq 0x88(%rsp), %rdi
cmpq %rbp, %rdi
je 0xc415
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x32d0
movq 0xa8(%rsp), %rdi
cmpq %r13, %rdi
je 0xc432
movq 0xb8(%rsp), %rsi
incq %rsi
callq 0x32d0
movq 0xc8(%rsp), %rdi
cmpq %r12, %rdi
je 0xc44f
movq 0xd8(%rsp), %rsi
incq %rsi
callq 0x32d0
movq 0xe8(%rsp), %rdi
cmpq %r14, %rdi
je 0xc46c
movq 0xf8(%rsp), %rsi
incq %rsi
callq 0x32d0
movl $0x88, %edi
callq 0x32c0
movq %rax, %r14
leaq 0x78(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x1271(%rip), %rsi      # 0xd6fb
leaq 0x12ab(%rip), %rdx      # 0xd73c
leaq 0x68(%rsp), %rdi
callq 0x4ce4
leaq 0x58(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x14b1(%rip), %rsi      # 0xd95c
leaq 0x1510(%rip), %rdx      # 0xd9c2
leaq 0x48(%rsp), %rdi
callq 0x4ce4
leaq 0x38(%rsp), %rbp
movq %rbp, -0x10(%rbp)
leaq 0x122d(%rip), %rsi      # 0xd6f9
leaq 0x1227(%rip), %rdx      # 0xd6fa
leaq 0x28(%rsp), %rdi
callq 0x4ce4
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x14d6(%rip), %rsi      # 0xd9c3
leaq 0x1535(%rip), %rdx      # 0xda29
leaq 0x8(%rsp), %rdi
callq 0x4ce4
leaq 0x68(%rsp), %rsi
leaq 0x48(%rsp), %rdx
leaq 0x28(%rsp), %rcx
leaq 0x8(%rsp), %r8
movq %r14, %rdi
xorl %r9d, %r9d
callq 0xa328
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0xc534
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x32d0
movq 0x28(%rsp), %rdi
cmpq %rbp, %rdi
je 0xc54b
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x32d0
movq 0x48(%rsp), %rdi
cmpq %r13, %rdi
je 0xc562
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x32d0
movq 0x68(%rsp), %rdi
cmpq %r12, %rdi
je 0xc579
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x32d0
leaq 0x108(%rsp), %rdi
movq %rbx, (%rdi)
movq %r14, 0x8(%rdi)
callq 0xbb9a
testq %rax, %rax
je 0xc5ac
addq $0x20, %rax
leaq 0x148d(%rip), %rsi      # 0xda2a
movq %rax, %rdi
callq 0x30c0
testl %eax, %eax
sete %bl
jmp 0xc5ae
xorl %ebx, %ebx
leaq 0x108(%rsp), %rdi
callq 0xba92
movl %ebx, %eax
addq $0x118, %rsp            # imm = 0x118
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, (%rsp)
leaq 0x108(%rsp), %rdi
callq 0xba92
jmp 0xc707
movq %rax, (%rsp)
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0xc606
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x32d0
jmp 0xc606
movq %rax, (%rsp)
movq 0x28(%rsp), %rdi
cmpq %rbp, %rdi
je 0xc623
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x32d0
jmp 0xc623
movq %rax, (%rsp)
movq 0x48(%rsp), %rdi
cmpq %r13, %rdi
je 0xc640
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x32d0
jmp 0xc640
movq %rax, (%rsp)
movq 0x68(%rsp), %rdi
cmpq %r12, %rdi
je 0xc65d
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x32d0
jmp 0xc65d
movq %rax, (%rsp)
movl $0x88, %esi
movq %r14, %rdi
jmp 0xc702
movq %rax, (%rsp)
movq 0x88(%rsp), %rdi
cmpq %rbp, %rdi
je 0xc691
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x32d0
jmp 0xc691
movq %rax, (%rsp)
movq 0xa8(%rsp), %rdi
cmpq %r13, %rdi
je 0xc6b4
movq 0xb8(%rsp), %rsi
incq %rsi
callq 0x32d0
jmp 0xc6b4
movq %rax, (%rsp)
movq 0xc8(%rsp), %rdi
cmpq %r12, %rdi
je 0xc6d7
movq 0xd8(%rsp), %rsi
incq %rsi
callq 0x32d0
jmp 0xc6d7
movq %rax, (%rsp)
movq 0xe8(%rsp), %rdi
cmpq %r14, %rdi
je 0xc6fa
movq 0xf8(%rsp), %rsi
incq %rsi
callq 0x32d0
jmp 0xc6fa
movq %rax, (%rsp)
movl $0x88, %esi
movq %rbx, %rdi
callq 0x32d0
movq (%rsp), %rdi
callq 0x3500