// File: /workspace/github_cpp_makefile_star2_O3/ncbi[P]amr/stx/stxtyper.cpp
// Function: (anonymous namespace)::Operon::operator<((anonymous namespace)::Operon const&) const
bool operator< (const Operon &other) const
    // Ordering by quality
    { ASSERT (al2);
      LESS_PART (*this, other, al1->targetName);
    #ifdef PROT_MATCH
      LESS_PART (other, *this, perfect ());
    #endif
      LESS_PART (other, *this, getIdentity ());
      LESS_PART (other, *this, getRelCoverage ());
      // Tie resolution
      LESS_PART (*this, other, al1->refAccession);
      LESS_PART (*this, other, getRefAccession2 ());
      return false;
    }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x108, %rsp            # imm = 0x108
movq %rsi, %r14
movq %rdi, %rbx
callq 0xa070
movl $0x0, (%rax)
cmpq $0x0, 0x8(%rbx)
je 0x2255a
movq (%rbx), %rdi
addq $0x58, %rdi
movq (%r14), %rsi
addq $0x58, %rsi
callq 0xa050
movb $0x1, %bpl
testl %eax, %eax
js 0x2233f
movq (%r14), %rdi
addq $0x58, %rdi
movq (%rbx), %rsi
addq $0x58, %rsi
callq 0xa050
testl %eax, %eax
js 0x2233d
movq (%r14), %rdi
movq 0x8(%r14), %rsi
movq 0x8(%rdi), %rax
testq %rsi, %rsi
je 0x221f8
movq 0x8(%rsi), %r8
addq %rax, %r8
movq (%rdi), %rcx
movq (%rsi), %rdx
addq %rcx, %rdx
jmp 0x22201
movq (%rdi), %rcx
movq %rax, %r8
movq %rcx, %rdx
movq %r8, %xmm1
movq 0x56e02(%rip), %xmm2    # 0x79010
punpckldq %xmm2, %xmm1    # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
movapd 0x56e06(%rip), %xmm3    # 0x79020
subpd %xmm3, %xmm1
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
movq %rdx, %xmm1
punpckldq %xmm2, %xmm1    # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
subpd %xmm3, %xmm1
movapd %xmm1, %xmm4
unpckhpd %xmm1, %xmm4            # xmm4 = xmm4[1],xmm1[1]
addsd %xmm1, %xmm4
divsd %xmm4, %xmm0
movq (%rbx), %rdx
movq 0x8(%rbx), %r9
movq 0x8(%rdx), %r8
testq %r9, %r9
je 0x222a8
movdqu (%r9), %xmm1
movq %r8, %xmm2
movq (%rdx), %xmm3
punpcklqdq %xmm2, %xmm3    # xmm3 = xmm3[0],xmm2[0]
paddq %xmm1, %xmm3
movdqa 0x56dbb(%rip), %xmm1    # 0x79030
pand %xmm3, %xmm1
por 0x56dbf(%rip), %xmm1    # 0x79040
psrlq $0x20, %xmm3
por 0x56dc2(%rip), %xmm3    # 0x79050
subpd 0x56dca(%rip), %xmm3    # 0x79060
addpd %xmm1, %xmm3
movapd %xmm3, %xmm1
unpckhpd %xmm3, %xmm1            # xmm1 = xmm1[1],xmm3[1]
divsd %xmm3, %xmm1
jmp 0x222dd
movq %r8, %xmm4
punpckldq %xmm2, %xmm4    # xmm4 = xmm4[0],xmm2[0],xmm4[1],xmm2[1]
subpd %xmm3, %xmm4
movapd %xmm4, %xmm1
unpckhpd %xmm4, %xmm1            # xmm1 = xmm1[1],xmm4[1]
addsd %xmm4, %xmm1
movq (%rdx), %xmm4
punpckldq %xmm2, %xmm4    # xmm4 = xmm4[0],xmm2[0],xmm4[1],xmm2[1]
subpd %xmm3, %xmm4
movapd %xmm4, %xmm2
unpckhpd %xmm4, %xmm2            # xmm2 = xmm2[1],xmm4[1]
addsd %xmm4, %xmm2
divsd %xmm2, %xmm1
ucomisd %xmm0, %xmm1
ja 0x2233f
movq %rax, %xmm2
movq %rcx, %xmm0
punpcklqdq %xmm2, %xmm0    # xmm0 = xmm0[0],xmm2[0]
testq %rsi, %rsi
je 0x222fe
movdqu (%rsi), %xmm2
paddq %xmm2, %xmm0
movdqa 0x56d2a(%rip), %xmm2    # 0x79030
pand %xmm0, %xmm2
por 0x56d2e(%rip), %xmm2    # 0x79040
psrlq $0x20, %xmm0
por 0x56d31(%rip), %xmm0    # 0x79050
subpd 0x56d39(%rip), %xmm0    # 0x79060
addpd %xmm2, %xmm0
movapd %xmm0, %xmm2
unpckhpd %xmm0, %xmm2            # xmm2 = xmm2[1],xmm0[1]
divsd %xmm0, %xmm2
ucomisd %xmm1, %xmm2
jbe 0x22353
xorl %ebp, %ebp
movl %ebp, %eax
addq $0x108, %rsp            # imm = 0x108
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
callq 0x22868
movsd %xmm0, (%rsp)
movq (%rbx), %rdi
movq 0x8(%rbx), %rsi
callq 0x22868
ucomisd (%rsp), %xmm0
ja 0x2233f
movq (%rbx), %rdi
movq 0x8(%rbx), %rsi
callq 0x22868
movsd %xmm0, (%rsp)
movq (%r14), %rdi
movq 0x8(%r14), %rsi
callq 0x22868
ucomisd (%rsp), %xmm0
ja 0x2233d
movl $0xa0, %r15d
movq (%rbx), %rdi
addq %r15, %rdi
movq (%r14), %rsi
addq %r15, %rsi
callq 0x2627d
testb %al, %al
jne 0x2233f
movq (%r14), %rdi
addq %r15, %rdi
addq (%rbx), %r15
movq %r15, %rsi
callq 0x2627d
testb %al, %al
jne 0x2233d
movq 0x8(%rbx), %rax
movl $0xa0, %r15d
leaq (%rax,%r15), %rcx
movl $0xa8, %r12d
leaq (%rax,%r12), %rdx
leaq 0x786d9(%rip), %rsi     # 0x9aac0
leaq 0x8(%rsi), %r13
testq %rax, %rax
leaq 0x18(%rsp), %rax
cmoveq %r13, %rdx
cmoveq %rsi, %rcx
movq %rax, -0x10(%rax)
movq (%rcx), %rsi
movq (%rdx), %rdx
addq %rsi, %rdx
leaq 0x8(%rsp), %rdi
callq 0x23e50
movq 0x8(%r14), %rax
addq %rax, %r15
addq %rax, %r12
testq %rax, %rax
leaq 0x38(%rsp), %rax
movq %r13, (%rsp)
cmoveq %r13, %r12
cmoveq 0x77b3c(%rip), %r15     # 0x99f70
movq %rax, %r13
movq %rax, -0x10(%rax)
movq (%r15), %rsi
movq (%r12), %rdx
addq %rsi, %rdx
leaq 0x28(%rsp), %rdi
callq 0x23e50
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %r12
movq %r12, %rsi
callq 0x2627d
movl %eax, %r15d
movq (%r12), %rdi
cmpq %r13, %rdi
je 0x2247a
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xa580
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %r12
cmpq %r12, %rdi
je 0x22496
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xa580
testb %r15b, %r15b
jne 0x2233f
movq 0x8(%r14), %rax
movl $0xa0, %r14d
movl $0xa8, %r15d
leaq (%rax,%r15), %rcx
testq %rax, %rax
movq (%rsp), %rbp
cmoveq %rbp, %rcx
leaq (%rax,%r14), %rax
leaq 0x785f7(%rip), %r13     # 0x9aac0
cmoveq %r13, %rax
leaq 0x8(%rsp), %rdi
movq %r12, (%rdi)
movq (%rax), %rsi
movq (%rcx), %rdx
addq %rsi, %rdx
callq 0x23e50
movq 0x8(%rbx), %rax
addq %rax, %r14
addq %rax, %r15
testq %rax, %rax
cmoveq %rbp, %r15
cmoveq %r13, %r14
leaq 0x38(%rsp), %r13
leaq 0x28(%rsp), %rdi
movq %r13, (%rdi)
movq (%r14), %rsi
movq (%r15), %rdx
addq %rsi, %rdx
callq 0x23e50
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rbx
movq %rbx, %rsi
callq 0x2627d
movq (%rbx), %rdi
cmpq %r13, %rdi
je 0x2253a
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xa580
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x2233d
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xa580
jmp 0x2233d
callq 0xa690
testl %eax, %eax
jne 0x225f4
leaq 0xb8(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x57166(%rip), %rsi     # 0x796e0
leaq 0x57174(%rip), %rdx     # 0x796f5
leaq 0xa8(%rsp), %rdi
callq 0x26c92
leaq 0xc8(%rsp), %rdi
movl $0x30b, %esi            # imm = 0x30B
callq 0x25844
leaq 0xe8(%rsp), %rdi
leaq 0xa8(%rsp), %rsi
leaq 0xc8(%rsp), %rdx
callq 0x2464f
leaq 0x57132(%rip), %rsi     # 0x796f6
leaq 0xe8(%rsp), %rdi
callq 0xaa80
leaq 0x58(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x225fe
movupd (%rcx), %xmm0
movupd %xmm0, (%r15)
jmp 0x2260b
movl $0x1, %edi
callq 0xa6a0
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x50(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x98(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x57cab(%rip), %rsi     # 0x7a2e2
leaq 0x57ce7(%rip), %rdx     # 0x7a325
leaq 0x88(%rsp), %rdi
callq 0x26c92
leaq 0x5857f(%rip), %rsi     # 0x7abd1
leaq 0x88(%rsp), %rdi
callq 0xaa80
leaq 0x78(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x22683
movupd (%rcx), %xmm0
movupd %xmm0, (%r13)
jmp 0x22690
movq %rdx, 0x68(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x78(%rsp)
movq 0x8(%rax), %rsi
leaq 0x68(%rsp), %rdx
movq %rsi, 0x8(%rdx)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x28(%rsp), %rdi
leaq 0x48(%rsp), %rsi
callq 0x2464f
leaq 0x57b4d(%rip), %rsi     # 0x7a20f
leaq 0x28(%rsp), %rdi
callq 0xaa80
leaq 0x18(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x226ef
movupd (%rcx), %xmm0
movupd %xmm0, (%rbp)
jmp 0x226fc
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
movq 0x8(%rax), %rdx
leaq 0x8(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
callq 0x292d2
movq %rax, %rbx
movq 0x8(%rsp), %rdi
cmpq %rbp, %rdi
je 0x2273c
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xa580
jmp 0x2273c
movq %rax, %rbx
leaq 0x38(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x2276e
movq 0x38(%rsp), %rsi
incq %rsi
callq 0xa580
jmp 0x2276e
movq %rax, %rbx
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
jne 0x2279d
jmp 0x22856
movq %rax, %rbx
movq 0x68(%rsp), %rdi
cmpq %r13, %rdi
je 0x227aa
movq 0x78(%rsp), %rsi
incq %rsi
callq 0xa580
jmp 0x227aa
movq %rax, %rbx
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x22856
movq 0x18(%rsp), %rsi
jmp 0x22849
movq %rax, %rbx
movq 0x88(%rsp), %rdi
cmpq %r12, %rdi
je 0x227cc
movq 0x98(%rsp), %rsi
incq %rsi
callq 0xa580
jmp 0x227cc
movq %rax, %rbx
movq 0x48(%rsp), %rdi
cmpq %r15, %rdi
je 0x227e8
movq 0x58(%rsp), %rsi
incq %rsi
callq 0xa580
jmp 0x227e8
movq %rax, %rbx
leaq 0xf8(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x2280e
movq 0xf8(%rsp), %rsi
incq %rsi
callq 0xa580
jmp 0x2280e
movq %rax, %rbx
leaq 0xd8(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x22834
movq 0xd8(%rsp), %rsi
incq %rsi
callq 0xa580
jmp 0x22834
movq %rax, %rbx
movq 0xa8(%rsp), %rdi
cmpq %r14, %rdi
je 0x22856
movq 0xb8(%rsp), %rsi
incq %rsi
callq 0xa580
jmp 0x22856
movq %rax, %rbx
movq %rbx, %rdi
callq 0xa9d0
jmp 0x22860
movq %rax, %rdi
callq 0x237d3