// File: atfrank[P]PCASA/lib/Residue.cpp
// Function: Residue::aa123(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
std::string Residue::aa123(const std::string &aa){
  if(aa.compare("A") == 0){return "A";}
  else if(aa.compare("C") == 0){return "CYS";} 
  else if (aa.compare("D") == 0){return "ASP";}
  else if (aa.compare("E") == 0){return "GLY";}
  else if (aa.compare("F") == 0){return "PHE";}
  else if (aa.compare("G") == 0){return "GLY";}
  else if (aa.compare("H") == 0){return "HIS";}
  else if (aa.compare("I") == 0){return "ILE";}
  else if (aa.compare("K") == 0){return "LYS";}
  else if (aa.compare("L") == 0){return "LEU";}
  else if (aa.compare("M") == 0){return "MET";}
  else if (aa.compare("N") == 0){return "ASN";}
  else if (aa.compare("P") == 0){return "PRO";}
  else if (aa.compare("Q") == 0){return "GLN";}
  else if (aa.compare("R") == 0){return "ARG";}
  else if (aa.compare("S") == 0){return "SER";}
  else if (aa.compare("T") == 0){return "THR";}
  else if (aa.compare("V") == 0){return "VAL";}
  else if (aa.compare("W") == 0){return "TRP";}
  else if (aa.compare("Y") == 0){return "TYR";}
  else{
    return "";
  } 
}

// Assembly:
subq $0xf8, %rsp
movq %rdi, 0xb0(%rsp)
movq %rdi, %rax
movq %rax, 0xb8(%rsp)
movq %rdi, 0xf0(%rsp)
movq %rsi, 0xe8(%rsp)
movq 0xe8(%rsp), %rdi
leaq 0x1c549(%rip), %rsi     # 0x7b272
callq 0x5140
cmpl $0x0, %eax
jne 0x5ed9e
leaq 0xe7(%rsp), %rdi
movq %rdi, 0xa8(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0xa8(%rsp), %rdx
leaq 0x1c513(%rip), %rsi     # 0x7b272
callq 0x7900
jmp 0x5ed66
leaq 0xe7(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xe7(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x2cf28f(%rip), %rsi    # 0x32e03c
callq 0x5140
cmpl $0x0, %eax
jne 0x5ee22
leaq 0xd3(%rsp), %rdi
movq %rdi, 0xa0(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0xa0(%rsp), %rdx
leaq 0x1c9b8(%rip), %rsi     # 0x7b79b
callq 0x7900
jmp 0x5edea
leaq 0xd3(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xd3(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x1c5b5(%rip), %rsi     # 0x7b3e6
callq 0x5140
cmpl $0x0, %eax
jne 0x5eea6
leaq 0xd2(%rsp), %rdi
movq %rdi, 0x98(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x98(%rsp), %rdx
leaq 0x1c94c(%rip), %rsi     # 0x7b7b3
callq 0x7900
jmp 0x5ee6e
leaq 0xd2(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xd2(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x1df20(%rip), %rsi     # 0x7cdd5
callq 0x5140
cmpl $0x0, %eax
jne 0x5ef2a
leaq 0xd1(%rsp), %rdi
movq %rdi, 0x90(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x90(%rsp), %rdx
leaq 0x1c898(%rip), %rsi     # 0x7b783
callq 0x7900
jmp 0x5eef2
leaq 0xd1(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xd1(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x1d81f(%rip), %rsi     # 0x7c758
callq 0x5140
cmpl $0x0, %eax
jne 0x5efae
leaq 0xd0(%rsp), %rdi
movq %rdi, 0x88(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x88(%rsp), %rdx
leaq 0x1c894(%rip), %rsi     # 0x7b803
callq 0x7900
jmp 0x5ef76
leaq 0xd0(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xd0(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x1c40e(%rip), %rsi     # 0x7b3cb
callq 0x5140
cmpl $0x0, %eax
jne 0x5f032
leaq 0xcf(%rsp), %rdi
movq %rdi, 0x80(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x80(%rsp), %rdx
leaq 0x1c790(%rip), %rsi     # 0x7b783
callq 0x7900
jmp 0x5effa
leaq 0xcf(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xcf(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x1d5ce(%rip), %rsi     # 0x7c60f
callq 0x5140
cmpl $0x0, %eax
jne 0x5f0b0
leaq 0xce(%rsp), %rdi
movq %rdi, 0x78(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x78(%rsp), %rdx
leaq 0x1c77a(%rip), %rsi     # 0x7b7eb
callq 0x7900
jmp 0x5f078
leaq 0xce(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xce(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x1dda2(%rip), %rsi     # 0x7ce61
callq 0x5140
cmpl $0x0, %eax
jne 0x5f12e
leaq 0xcd(%rsp), %rdi
movq %rdi, 0x70(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x70(%rsp), %rdx
leaq 0x1c6e4(%rip), %rsi     # 0x7b7d3
callq 0x7900
jmp 0x5f0f6
leaq 0xcd(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xcd(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x1d33e(%rip), %rsi     # 0x7c47b
callq 0x5140
cmpl $0x0, %eax
jne 0x5f1ac
leaq 0xcc(%rsp), %rdi
movq %rdi, 0x68(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x68(%rsp), %rdx
leaq 0x1da7f(%rip), %rsi     # 0x7cbec
callq 0x7900
jmp 0x5f174
leaq 0xcc(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xcc(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x1dc20(%rip), %rsi     # 0x7cddb
callq 0x5140
cmpl $0x0, %eax
jne 0x5f22a
leaq 0xcb(%rsp), %rdi
movq %rdi, 0x60(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x60(%rsp), %rdx
leaq 0x1c5f0(%rip), %rsi     # 0x7b7db
callq 0x7900
jmp 0x5f1f2
leaq 0xcb(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xcb(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x1d2a2(%rip), %rsi     # 0x7c4db
callq 0x5140
cmpl $0x0, %eax
jne 0x5f2a8
leaq 0xca(%rsp), %rdi
movq %rdi, 0x58(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x58(%rsp), %rdx
leaq 0x1c58a(%rip), %rsi     # 0x7b7f3
callq 0x7900
jmp 0x5f270
leaq 0xca(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xca(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x1d833(%rip), %rsi     # 0x7caea
callq 0x5140
cmpl $0x0, %eax
jne 0x5f326
leaq 0xc9(%rsp), %rdi
movq %rdi, 0x50(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x50(%rsp), %rdx
leaq 0x1c4dc(%rip), %rsi     # 0x7b7c3
callq 0x7900
jmp 0x5f2ee
leaq 0xc9(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xc9(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x1be2e(%rip), %rsi     # 0x7b163
callq 0x5140
cmpl $0x0, %eax
jne 0x5f3a4
leaq 0xc8(%rsp), %rdi
movq %rdi, 0x48(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x48(%rsp), %rdx
leaq 0x1c43e(%rip), %rsi     # 0x7b7a3
callq 0x7900
jmp 0x5f36c
leaq 0xc8(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xc8(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x1d3a7(%rip), %rsi     # 0x7c75a
callq 0x5140
cmpl $0x0, %eax
jne 0x5f422
leaq 0xc7(%rsp), %rdi
movq %rdi, 0x40(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x40(%rsp), %rdx
leaq 0x1d87a(%rip), %rsi     # 0x7cc5d
callq 0x7900
jmp 0x5f3ea
leaq 0xc7(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xc7(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x1bd3e(%rip), %rsi     # 0x7b16f
callq 0x5140
cmpl $0x0, %eax
jne 0x5f4a0
leaq 0xc6(%rsp), %rdi
movq %rdi, 0x38(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x38(%rsp), %rdx
leaq 0x1d82a(%rip), %rsi     # 0x7cc8b
callq 0x7900
jmp 0x5f468
leaq 0xc6(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xc6(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x1bccd(%rip), %rsi     # 0x7b17c
callq 0x5140
cmpl $0x0, %eax
jne 0x5f51e
leaq 0xc5(%rsp), %rdi
movq %rdi, 0x30(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x30(%rsp), %rdx
leaq 0x1c2b4(%rip), %rsi     # 0x7b793
callq 0x7900
jmp 0x5f4e6
leaq 0xc5(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xc5(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x1d385(%rip), %rsi     # 0x7c8b2
callq 0x5140
cmpl $0x0, %eax
jne 0x5f59c
leaq 0xc4(%rsp), %rdi
movq %rdi, 0x28(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x28(%rsp), %rdx
leaq 0x1c24e(%rip), %rsi     # 0x7b7ab
callq 0x7900
jmp 0x5f564
leaq 0xc4(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xc4(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x1d1b1(%rip), %rsi     # 0x7c75c
callq 0x5140
cmpl $0x0, %eax
jne 0x5f61a
leaq 0xc3(%rsp), %rdi
movq %rdi, 0x20(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x20(%rsp), %rdx
leaq 0x1c1e0(%rip), %rsi     # 0x7b7bb
callq 0x7900
jmp 0x5f5e2
leaq 0xc3(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xc3(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x1d135(%rip), %rsi     # 0x7c75e
callq 0x5140
cmpl $0x0, %eax
jne 0x5f698
leaq 0xc2(%rsp), %rdi
movq %rdi, 0x18(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x18(%rsp), %rdx
leaq 0x1d5e4(%rip), %rsi     # 0x7cc3d
callq 0x7900
jmp 0x5f660
leaq 0xc2(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xc2(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xe8(%rsp), %rdi
leaq 0x1bd10(%rip), %rsi     # 0x7b3b7
callq 0x5140
cmpl $0x0, %eax
jne 0x5f713
leaq 0xc1(%rsp), %rdi
movq %rdi, 0x10(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x10(%rsp), %rdx
leaq 0x1c134(%rip), %rsi     # 0x7b80b
callq 0x7900
jmp 0x5f6de
leaq 0xc1(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xc1(%rsp), %rdi
callq 0x5480
jmp 0x5f782
leaq 0xc0(%rsp), %rdi
movq %rdi, 0x8(%rsp)
callq 0x5730
movq 0xb0(%rsp), %rdi
movq 0x8(%rsp), %rdx
leaq 0x1bc79(%rip), %rsi     # 0x7b3b2
callq 0x7900
jmp 0x5f740
leaq 0xc0(%rsp), %rdi
callq 0x5480
jmp 0x5f772
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xd8(%rsp)
movl %eax, 0xd4(%rsp)
leaq 0xc0(%rsp), %rdi
callq 0x5480
jmp 0x5f782
movq 0xb8(%rsp), %rax
addq $0xf8, %rsp
retq
movq 0xd8(%rsp), %rdi
callq 0x5720
nop