// File: /workspace/github_cpp_makefile_star2_O1/atfrank[P]PCASA/lib/Prmtop.cpp
// Function: Prmtop::Prmtop()
Prmtop::Prmtop (){
  mass.clear();
  charge.clear();
  atmtype.clear();
  //Hardcode HIS atom types with doubly deprotonated side chain nitrogens
  atmtype.insert(std::make_pair(std::make_pair("HIS","N"), "NH1"));
  atmtype.insert(std::make_pair(std::make_pair("HIS","HN"), "H"));
  atmtype.insert(std::make_pair(std::make_pair("HIS","CA"), "CT1"));
  atmtype.insert(std::make_pair(std::make_pair("HIS","HA"), "HB1"));
  atmtype.insert(std::make_pair(std::make_pair("HIS","CB"), "CT2"));
  atmtype.insert(std::make_pair(std::make_pair("HIS","HB1"), "HA2"));
  atmtype.insert(std::make_pair(std::make_pair("HIS","HB2"), "HA2"));
  atmtype.insert(std::make_pair(std::make_pair("HIS","ND1"), "NR2"));
  atmtype.insert(std::make_pair(std::make_pair("HIS","HD1"), "H"));
  atmtype.insert(std::make_pair(std::make_pair("HIS","CG"), "CPH1"));
  atmtype.insert(std::make_pair(std::make_pair("HIS","CE1"), "CPH2"));
  atmtype.insert(std::make_pair(std::make_pair("HIS","HE1"), "HR1"));
  atmtype.insert(std::make_pair(std::make_pair("HIS","NE2"), "NR2"));
  atmtype.insert(std::make_pair(std::make_pair("HIS","CD2"), "CPH1"));
  atmtype.insert(std::make_pair(std::make_pair("HIS","HD2"), "HR3"));
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movq %rdi, %rbx
leaq 0x8(%rdi), %rax
xorl %ecx, %ecx
movl %ecx, 0x8(%rdi)
movq %rcx, 0x10(%rdi)
movq %rax, 0x18(%rdi)
movq %rax, 0x20(%rdi)
movq %rcx, 0x28(%rdi)
leaq 0x30(%rdi), %r14
leaq 0x38(%rdi), %rax
movl %ecx, 0x38(%rdi)
movq %rcx, 0x40(%rdi)
movq %rax, 0x48(%rdi)
movq %rax, 0x50(%rdi)
movq %rcx, 0x58(%rdi)
leaq 0x60(%rdi), %r15
leaq 0x68(%rdi), %rax
movl %ecx, 0x68(%rdi)
movq %rcx, 0x70(%rdi)
movq %rax, 0x78(%rdi)
movq %rax, 0x80(%rdi)
xorps %xmm0, %xmm0
movups %xmm0, 0x88(%rdi)
movups %xmm0, 0x98(%rdi)
callq 0x2ea90
movq %r14, %rdi
callq 0x2ea90
movq %r15, %rdi
callq 0x2eabe
leaq 0xf74d(%rip), %r12      # 0x3c85d
movq %rsp, %rsi
movq %r12, (%rsi)
leaq 0x10ad5(%rip), %rax     # 0x3dbf2
movq %rax, 0x8(%rsi)
leaq 0x105e8(%rip), %rax     # 0x3d710
movq %rax, 0x10(%rsi)
movq %r15, %rdi
callq 0x2eaec
movq %rsp, %rsi
movq %r12, (%rsi)
leaq 0x105d3(%rip), %rax     # 0x3d714
movq %rax, 0x8(%rsi)
leaq 0x105cb(%rip), %r13     # 0x3d717
movq %r13, 0x10(%rsi)
movq %r15, %rdi
callq 0x2eaec
movq %rsp, %rsi
movq %r12, (%rsi)
leaq 0xf118(%rip), %rax      # 0x3c27d
movq %rax, 0x8(%rsi)
leaq 0x105a9(%rip), %rax     # 0x3d719
movq %rax, 0x10(%rsi)
movq %r15, %rdi
callq 0x2eaec
movq %rsp, %rsi
movq %r12, (%rsi)
leaq 0x10594(%rip), %rax     # 0x3d71d
movq %rax, 0x8(%rsi)
leaq 0x1058c(%rip), %rbp     # 0x3d720
movq %rbp, 0x10(%rsi)
movq %r15, %rdi
callq 0x2eaec
movq %rsp, %rsi
movq %r12, (%rsi)
leaq 0xf313(%rip), %rax      # 0x3c4c0
movq %rax, 0x8(%rsi)
leaq 0x10550(%rip), %rax     # 0x3d708
movq %rax, 0x10(%rsi)
movq %r15, %rdi
callq 0x2eaec
movq %rsp, %rsi
movq %r12, (%rsi)
movq %rbp, 0x8(%rsi)
leaq 0x1054f(%rip), %rbp     # 0x3d724
movq %rbp, 0x10(%rsi)
movq %r15, %rdi
callq 0x2eaec
movq %rsp, %rsi
movq %r12, (%rsi)
leaq 0x1053a(%rip), %rax     # 0x3d728
movq %rax, 0x8(%rsi)
movq %rbp, 0x10(%rsi)
movq %r15, %rdi
callq 0x2eaec
movq %rsp, %rsi
movq %r12, (%rsi)
leaq 0xf2da(%rip), %rax      # 0x3c4e5
movq %rax, 0x8(%rsi)
leaq 0x10516(%rip), %rbp     # 0x3d72c
movq %rbp, 0x10(%rsi)
movq %r15, %rdi
callq 0x2eaec
movq %rsp, %rsi
movq %r12, (%rsi)
leaq 0x10501(%rip), %rax     # 0x3d730
movq %rax, 0x8(%rsi)
movq %r13, 0x10(%rsi)
movq %r15, %rdi
callq 0x2eaec
movq %rsp, %rsi
movq %r12, (%rsi)
leaq 0xf282(%rip), %rax      # 0x3c4ce
movq %rax, 0x8(%rsi)
leaq 0x104dd(%rip), %r13     # 0x3d734
movq %r13, 0x10(%rsi)
movq %r15, %rdi
callq 0x2eaec
movq %rsp, %rsi
movq %r12, (%rsi)
leaq 0x104c9(%rip), %rax     # 0x3d739
movq %rax, 0x8(%rsi)
leaq 0x104c2(%rip), %rax     # 0x3d73d
movq %rax, 0x10(%rsi)
movq %r15, %rdi
callq 0x2eaec
movq %rsp, %rsi
movq %r12, (%rsi)
leaq 0x104ae(%rip), %rax     # 0x3d742
movq %rax, 0x8(%rsi)
leaq 0x104a7(%rip), %rax     # 0x3d746
movq %rax, 0x10(%rsi)
movq %r15, %rdi
callq 0x2eaec
movq %rsp, %rsi
movq %r12, (%rsi)
leaq 0x10492(%rip), %rax     # 0x3d74a
movq %rax, 0x8(%rsi)
movq %rbp, 0x10(%rsi)
movq %r15, %rdi
callq 0x2eaec
movq %rsp, %rsi
movq %r12, (%rsi)
leaq 0x10479(%rip), %rax     # 0x3d74e
movq %rax, 0x8(%rsi)
movq %r13, 0x10(%rsi)
movq %r15, %rdi
callq 0x2eaec
movq %rsp, %rsi
movq %r12, (%rsi)
leaq 0x10460(%rip), %rax     # 0x3d752
movq %rax, 0x8(%rsi)
leaq 0x10459(%rip), %rax     # 0x3d756
movq %rax, 0x10(%rsi)
movq %r15, %rdi
callq 0x2eaec
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x2d334
jmp 0x2d334
jmp 0x2d334
jmp 0x2d334
jmp 0x2d334
jmp 0x2d334
jmp 0x2d334
jmp 0x2d334
jmp 0x2d334
jmp 0x2d334
jmp 0x2d334
jmp 0x2d334
jmp 0x2d334
jmp 0x2d334
movq %rax, %r12
leaq 0x90(%rbx), %rdi
callq 0x6420
movq %r15, %rdi
callq 0x2755c
movq %r14, %rdi
callq 0x27606
movq %rbx, %rdi
callq 0x27606
movq %r12, %rdi
callq 0x4550
nop