// File: ncbi[P]amr/amr_report.cpp
// Function: (anonymous namespace)::Batch::blastParetoBetter()
void blastParetoBetter ()
  // Input: target2blastAls
  // Output: target2goodBlastAls
  {
    ASSERT (target2goodBlastAls. empty ());
	  for (const auto& it : target2blastAls)
	  {
  	  VectorPtr<BlastAlignment>& vec = target2goodBlastAls [it. first];
  	  for (const BlastAlignment* blastAl : it. second)
      {
        ASSERT (blastAl);
      	ASSERT (blastAl->good ());
    	  bool found = false;
    	  for (const BlastAlignment* goodBlastAl : vec)
    	    if (goodBlastAl->better (*blastAl))
  	      {
  	        found = true;
  	        break;
  	      }
  	    if (found)
  	      continue;	      
        for (Iter<VectorPtr<BlastAlignment>> goodIter (vec); goodIter. next ();)
          if (blastAl->better (**goodIter))
            goodIter. erase ();       
        ASSERT (! blastAl->targetName. empty ());
        target2goodBlastAls [it. first] << blastAl;
      }
    }
    reportDebug ("Best Blasts");
  }

// Assembly:
subq $0x558, %rsp            # imm = 0x558
movq %rdi, 0x550(%rsp)
movq 0x550(%rsp), %rax
movq %rax, 0x50(%rsp)
callq 0xc090
movq 0x50(%rsp), %rdi
movl $0x0, (%rax)
addq $0x120, %rdi            # imm = 0x120
callq 0x1d540
testb $0x1, %al
jne 0x3f0e7
callq 0xc870
cmpl $0x0, %eax
jne 0x3f0dd
leaq 0x4af(%rsp), %rdi
movq %rdi, 0x48(%rsp)
callq 0xcca0
movq 0x48(%rsp), %rdx
leaq 0xbea7b(%rip), %rsi     # 0xfd907
leaq 0x4b0(%rsp), %rdi
callq 0x50b50
jmp 0x3ee9b
leaq 0x478(%rsp), %rdi
movl $0x653, %esi            # imm = 0x653
callq 0x52760
jmp 0x3eeaf
leaq 0x4d0(%rsp), %rdi
leaq 0x4b0(%rsp), %rsi
leaq 0x478(%rsp), %rdx
callq 0x52670
jmp 0x3eece
leaq 0xbea4a(%rip), %rdx     # 0xfd91f
leaq 0x4f0(%rsp), %rdi
leaq 0x4d0(%rsp), %rsi
callq 0x50db0
jmp 0x3eeec
leaq 0x437(%rsp), %rdi
movq %rdi, 0x40(%rsp)
callq 0xcca0
movq 0x40(%rsp), %rdx
leaq 0xbff8a(%rip), %rsi     # 0xfee94
leaq 0x438(%rsp), %rdi
callq 0x50b50
jmp 0x3ef19
leaq 0xbeefe(%rip), %rdx     # 0xfde1e
leaq 0x458(%rsp), %rdi
leaq 0x438(%rsp), %rsi
callq 0x50db0
jmp 0x3ef37
leaq 0x510(%rsp), %rdi
leaq 0x4f0(%rsp), %rsi
leaq 0x458(%rsp), %rdx
callq 0x52670
jmp 0x3ef56
leaq 0xbf99a(%rip), %rdx     # 0xfe8f7
leaq 0x530(%rsp), %rdi
leaq 0x510(%rsp), %rsi
callq 0x50db0
jmp 0x3ef74
leaq 0x530(%rsp), %rdi
callq 0x69f20
jmp 0x3ef83
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f0cb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f0be
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f0b1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f0a4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f08a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f07d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f070
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f063
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
leaq 0x530(%rsp), %rdi
callq 0xce58
leaq 0x510(%rsp), %rdi
callq 0xce58
leaq 0x458(%rsp), %rdi
callq 0xce58
leaq 0x438(%rsp), %rdi
callq 0xce58
leaq 0x437(%rsp), %rdi
callq 0xc750
leaq 0x4f0(%rsp), %rdi
callq 0xce58
leaq 0x4d0(%rsp), %rdi
callq 0xce58
leaq 0x478(%rsp), %rdi
callq 0xce58
leaq 0x4b0(%rsp), %rdi
callq 0xce58
leaq 0x4af(%rsp), %rdi
callq 0xc750
jmp 0x3fbdd
movl $0x1, %edi
callq 0xc880
movq 0x50(%rsp), %rax
addq $0xf0, %rax
movq %rax, 0x428(%rsp)
movq 0x428(%rsp), %rdi
callq 0x3d2d0
movq %rax, 0x420(%rsp)
movq 0x428(%rsp), %rdi
callq 0x388d0
movq %rax, 0x418(%rsp)
leaq 0x420(%rsp), %rdi
leaq 0x418(%rsp), %rsi
callq 0x3d300
testb $0x1, %al
jne 0x3f142
jmp 0x3fb4d
leaq 0x420(%rsp), %rdi
callq 0x38920
movq 0x50(%rsp), %rdi
movq %rax, 0x410(%rsp)
addq $0x120, %rdi            # imm = 0x120
movq 0x410(%rsp), %rsi
callq 0x24dc0
movq %rax, 0x408(%rsp)
movq 0x410(%rsp), %rax
addq $0x20, %rax
movq %rax, 0x400(%rsp)
movq 0x400(%rsp), %rdi
callq 0x28570
movq %rax, 0x3f8(%rsp)
movq 0x400(%rsp), %rdi
callq 0x285a0
movq %rax, 0x3f0(%rsp)
leaq 0x3f8(%rsp), %rdi
leaq 0x3f0(%rsp), %rsi
callq 0x285d0
testb $0x1, %al
jne 0x3f1d4
jmp 0x3fb39
leaq 0x3f8(%rsp), %rdi
callq 0x28610
movq (%rax), %rax
movq %rax, 0x3e8(%rsp)
callq 0xc090
movl $0x0, (%rax)
cmpq $0x0, 0x3e8(%rsp)
jne 0x3f48d
callq 0xc870
cmpl $0x0, %eax
jne 0x3f483
leaq 0x347(%rsp), %rdi
movq %rdi, 0x38(%rsp)
callq 0xcca0
movq 0x38(%rsp), %rdx
leaq 0xbe6d5(%rip), %rsi     # 0xfd907
leaq 0x348(%rsp), %rdi
callq 0x50b50
jmp 0x3f241
leaq 0x320(%rsp), %rdi
movl $0x659, %esi            # imm = 0x659
callq 0x52760
jmp 0x3f255
leaq 0x368(%rsp), %rdi
leaq 0x348(%rsp), %rsi
leaq 0x320(%rsp), %rdx
callq 0x52670
jmp 0x3f274
leaq 0xbe6a4(%rip), %rdx     # 0xfd91f
leaq 0x388(%rsp), %rdi
leaq 0x368(%rsp), %rsi
callq 0x50db0
jmp 0x3f292
leaq 0x2df(%rsp), %rdi
movq %rdi, 0x30(%rsp)
callq 0xcca0
movq 0x30(%rsp), %rdx
leaq 0xbfbe4(%rip), %rsi     # 0xfee94
leaq 0x2e0(%rsp), %rdi
callq 0x50b50
jmp 0x3f2bf
leaq 0xbeb58(%rip), %rdx     # 0xfde1e
leaq 0x300(%rsp), %rdi
leaq 0x2e0(%rsp), %rsi
callq 0x50db0
jmp 0x3f2dd
leaq 0x3a8(%rsp), %rdi
leaq 0x388(%rsp), %rsi
leaq 0x300(%rsp), %rdx
callq 0x52670
jmp 0x3f2fc
leaq 0xbf71f(%rip), %rdx     # 0xfea22
leaq 0x3c8(%rsp), %rdi
leaq 0x3a8(%rsp), %rsi
callq 0x50db0
jmp 0x3f31a
leaq 0x3c8(%rsp), %rdi
callq 0x69f20
jmp 0x3f329
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f471
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f464
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f457
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f44a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f430
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f423
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f416
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f409
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
leaq 0x3c8(%rsp), %rdi
callq 0xce58
leaq 0x3a8(%rsp), %rdi
callq 0xce58
leaq 0x300(%rsp), %rdi
callq 0xce58
leaq 0x2e0(%rsp), %rdi
callq 0xce58
leaq 0x2df(%rsp), %rdi
callq 0xc750
leaq 0x388(%rsp), %rdi
callq 0xce58
leaq 0x368(%rsp), %rdi
callq 0xce58
leaq 0x320(%rsp), %rdi
callq 0xce58
leaq 0x348(%rsp), %rdi
callq 0xce58
leaq 0x347(%rsp), %rdi
callq 0xc750
jmp 0x3fbdd
movl $0x1, %edi
callq 0xc880
callq 0xc090
movl $0x0, (%rax)
movq 0x3e8(%rsp), %rdi
callq 0x3e560
testb $0x1, %al
jne 0x3f734
callq 0xc870
cmpl $0x0, %eax
jne 0x3f72a
leaq 0x237(%rsp), %rdi
movq %rdi, 0x28(%rsp)
callq 0xcca0
movq 0x28(%rsp), %rdx
leaq 0xbe42e(%rip), %rsi     # 0xfd907
leaq 0x238(%rsp), %rdi
callq 0x50b50
jmp 0x3f4e8
leaq 0x210(%rsp), %rdi
movl $0x65a, %esi            # imm = 0x65A
callq 0x52760
jmp 0x3f4fc
leaq 0x258(%rsp), %rdi
leaq 0x238(%rsp), %rsi
leaq 0x210(%rsp), %rdx
callq 0x52670
jmp 0x3f51b
leaq 0xbe3fd(%rip), %rdx     # 0xfd91f
leaq 0x278(%rsp), %rdi
leaq 0x258(%rsp), %rsi
callq 0x50db0
jmp 0x3f539
leaq 0x1cf(%rsp), %rdi
movq %rdi, 0x20(%rsp)
callq 0xcca0
movq 0x20(%rsp), %rdx
leaq 0xbf93d(%rip), %rsi     # 0xfee94
leaq 0x1d0(%rsp), %rdi
callq 0x50b50
jmp 0x3f566
leaq 0xbe8b1(%rip), %rdx     # 0xfde1e
leaq 0x1f0(%rsp), %rdi
leaq 0x1d0(%rsp), %rsi
callq 0x50db0
jmp 0x3f584
leaq 0x298(%rsp), %rdi
leaq 0x278(%rsp), %rsi
leaq 0x1f0(%rsp), %rdx
callq 0x52670
jmp 0x3f5a3
leaq 0xbf921(%rip), %rdx     # 0xfeecb
leaq 0x2b8(%rsp), %rdi
leaq 0x298(%rsp), %rsi
callq 0x50db0
jmp 0x3f5c1
leaq 0x2b8(%rsp), %rdi
callq 0x69f20
jmp 0x3f5d0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f718
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f70b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f6fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f6f1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f6d7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f6ca
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f6bd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3f6b0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
leaq 0x2b8(%rsp), %rdi
callq 0xce58
leaq 0x298(%rsp), %rdi
callq 0xce58
leaq 0x1f0(%rsp), %rdi
callq 0xce58
leaq 0x1d0(%rsp), %rdi
callq 0xce58
leaq 0x1cf(%rsp), %rdi
callq 0xc750
leaq 0x278(%rsp), %rdi
callq 0xce58
leaq 0x258(%rsp), %rdi
callq 0xce58
leaq 0x210(%rsp), %rdi
callq 0xce58
leaq 0x238(%rsp), %rdi
callq 0xce58
leaq 0x237(%rsp), %rdi
callq 0xc750
jmp 0x3fbdd
movl $0x1, %edi
callq 0xc880
movb $0x0, 0x1ce(%rsp)
movq 0x408(%rsp), %rax
movq %rax, 0x1c0(%rsp)
movq 0x1c0(%rsp), %rdi
callq 0x29730
movq %rax, 0x1b8(%rsp)
movq 0x1c0(%rsp), %rdi
callq 0x29760
movq %rax, 0x1b0(%rsp)
leaq 0x1b8(%rsp), %rdi
leaq 0x1b0(%rsp), %rsi
callq 0x29790
testb $0x1, %al
jne 0x3f791
jmp 0x3f7df
leaq 0x1b8(%rsp), %rdi
callq 0x297d0
movq (%rax), %rax
movq %rax, 0x1a8(%rsp)
movq 0x1a8(%rsp), %rdi
movq 0x3e8(%rsp), %rsi
callq 0x450c0
testb $0x1, %al
jne 0x3f7c4
jmp 0x3f7ce
movb $0x1, 0x1ce(%rsp)
jmp 0x3f7df
jmp 0x3f7d0
leaq 0x1b8(%rsp), %rdi
callq 0x2a050
jmp 0x3f776
testb $0x1, 0x1ce(%rsp)
je 0x3f7ee
jmp 0x3fb27
movq 0x408(%rsp), %rsi
leaq 0x190(%rsp), %rdi
callq 0x3de30
leaq 0x190(%rsp), %rdi
callq 0x3de70
testb $0x1, %al
jne 0x3f816
jmp 0x3f852
movq 0x3e8(%rsp), %rax
movq %rax, 0x18(%rsp)
leaq 0x190(%rsp), %rdi
callq 0x3def0
movq 0x18(%rsp), %rdi
movq (%rax), %rsi
callq 0x450c0
testb $0x1, %al
jne 0x3f843
jmp 0x3f850
leaq 0x190(%rsp), %rdi
callq 0x3df10
jmp 0x3f803
callq 0xc090
movl $0x0, (%rax)
movq 0x3e8(%rsp), %rdi
addq $0x10, %rdi
callq 0xcbb0
testb $0x1, %al
jne 0x3f877
jmp 0x3fafe
callq 0xc870
cmpl $0x0, %eax
jne 0x3faf4
leaq 0xef(%rsp), %rdi
movq %rdi, 0x10(%rsp)
callq 0xcca0
movq 0x10(%rsp), %rdx
leaq 0xbe064(%rip), %rsi     # 0xfd907
leaq 0xf0(%rsp), %rdi
callq 0x50b50
jmp 0x3f8b2
leaq 0xc8(%rsp), %rdi
movl $0x667, %esi            # imm = 0x667
callq 0x52760
jmp 0x3f8c6
leaq 0x110(%rsp), %rdi
leaq 0xf0(%rsp), %rsi
leaq 0xc8(%rsp), %rdx
callq 0x52670
jmp 0x3f8e5
leaq 0xbe033(%rip), %rdx     # 0xfd91f
leaq 0x130(%rsp), %rdi
leaq 0x110(%rsp), %rsi
callq 0x50db0
jmp 0x3f903
leaq 0x87(%rsp), %rdi
movq %rdi, 0x8(%rsp)
callq 0xcca0
movq 0x8(%rsp), %rdx
leaq 0xbf573(%rip), %rsi     # 0xfee94
leaq 0x88(%rsp), %rdi
callq 0x50b50
jmp 0x3f930
leaq 0xbe4e7(%rip), %rdx     # 0xfde1e
leaq 0xa8(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x50db0
jmp 0x3f94e
leaq 0x150(%rsp), %rdi
leaq 0x130(%rsp), %rsi
leaq 0xa8(%rsp), %rdx
callq 0x52670
jmp 0x3f96d
leaq 0xbf568(%rip), %rdx     # 0xfeedc
leaq 0x170(%rsp), %rdi
leaq 0x150(%rsp), %rsi
callq 0x50db0
jmp 0x3f98b
leaq 0x170(%rsp), %rdi
callq 0x69f20
jmp 0x3f99a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3fae2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3fad5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3fac8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3fabb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3faa1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3fa94
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3fa87
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3fa7a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
leaq 0x170(%rsp), %rdi
callq 0xce58
leaq 0x150(%rsp), %rdi
callq 0xce58
leaq 0xa8(%rsp), %rdi
callq 0xce58
leaq 0x88(%rsp), %rdi
callq 0xce58
leaq 0x87(%rsp), %rdi
callq 0xc750
leaq 0x130(%rsp), %rdi
callq 0xce58
leaq 0x110(%rsp), %rdi
callq 0xce58
leaq 0xc8(%rsp), %rdi
callq 0xce58
leaq 0xf0(%rsp), %rdi
callq 0xce58
leaq 0xef(%rsp), %rdi
callq 0xc750
jmp 0x3fbdd
movl $0x1, %edi
callq 0xc880
movq 0x50(%rsp), %rdi
addq $0x120, %rdi            # imm = 0x120
movq 0x410(%rsp), %rsi
callq 0x24dc0
movq %rax, %rdi
movq 0x3e8(%rsp), %rsi
callq 0x24eb0
leaq 0x3f8(%rsp), %rdi
callq 0x28620
jmp 0x3f1b6
jmp 0x3fb3b
leaq 0x420(%rsp), %rdi
callq 0x39630
jmp 0x3f124
leaq 0x5f(%rsp), %rdi
movq %rdi, (%rsp)
callq 0xcca0
movq (%rsp), %rdx
leaq 0xbf396(%rip), %rsi     # 0xfeefc
leaq 0x60(%rsp), %rdi
callq 0x50b50
jmp 0x3fb72
movq 0x50(%rsp), %rdi
leaq 0x60(%rsp), %rsi
callq 0x3df80
jmp 0x3fb83
leaq 0x60(%rsp), %rdi
callq 0xce58
leaq 0x5f(%rsp), %rdi
callq 0xc750
addq $0x558, %rsp            # imm = 0x558
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
jmp 0x3fbd3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x4a0(%rsp)
movl %eax, 0x49c(%rsp)
leaq 0x60(%rsp), %rdi
callq 0xce58
leaq 0x5f(%rsp), %rdi
callq 0xc750
movq 0x4a0(%rsp), %rdi
callq 0xcc90
nopw (%rax,%rax)