// File: JoshCplusplus[P]Chemistry-Atom-Simulator-/main.cc
// Function: print_atoms()
void print_atoms(){
	cout << "\nAvailable Atoms:" << endl;
	for(string s: atomlist){
		cout << s << endl;
	}
	cout << "\nAvailable Molecules:" << endl;
	if(avmol.size() == 0) cout << "NONE" << endl;
	else{
		for(int i = 0; i < avmol.size(); i++){
			cout << (*(&avmol.top() + i)).get_name() << endl;
		}
	}
	cout << "\nAll Moleclues:" << endl;
	for(auto i : allmol){
		cout << i.second.get_name() << endl;
	}
	cout << endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x1a0, %rsp            # imm = 0x1A0
movq 0xcd6e(%rip), %rdi      # 0x10fd0
leaq 0x6ebc(%rip), %rsi      # 0xb125
callq 0x21a0
movq %rax, %rdi
movq 0xcd48(%rip), %rsi      # 0x10fc0
callq 0x21c0
leaq 0x10e24(%rip), %rax     # 0x150a8
movq %rax, -0x8(%rbp)
leaq 0x10e19(%rip), %rdi     # 0x150a8
callq 0x5a10
movq %rax, -0x10(%rbp)
leaq 0x10e09(%rip), %rdi     # 0x150a8
callq 0x5a40
movq %rax, -0x18(%rbp)
leaq -0x10(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x5a70
testb $0x1, %al
jne 0x42bb
jmp 0x4336
leaq -0x10(%rbp), %rdi
callq 0x5aa0
movq %rax, %rsi
leaq -0x38(%rbp), %rdi
movq %rdi, -0x178(%rbp)
callq 0x2090
movq -0x178(%rbp), %rsi
movq 0xcceb(%rip), %rdi      # 0x10fd0
callq 0x2170
movq %rax, -0x170(%rbp)
jmp 0x42f3
movq -0x170(%rbp), %rdi
movq 0xccbf(%rip), %rsi      # 0x10fc0
callq 0x21c0
jmp 0x4308
leaq -0x38(%rbp), %rdi
callq 0x2100
leaq -0x10(%rbp), %rdi
callq 0x5ad0
jmp 0x42a8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x38(%rbp), %rdi
callq 0x2100
jmp 0x458e
movq 0xcc93(%rip), %rdi      # 0x10fd0
leaq 0x6df3(%rip), %rsi      # 0xb137
callq 0x21a0
movq %rax, %rdi
movq 0xcc6d(%rip), %rsi      # 0x10fc0
callq 0x21c0
leaq 0x10db9(%rip), %rdi     # 0x15118
callq 0x5b00
cmpq $0x0, %rax
jne 0x4391
movq 0xcc5f(%rip), %rdi      # 0x10fd0
leaq 0x6dd5(%rip), %rsi      # 0xb14d
callq 0x21a0
movq %rax, %rdi
movq 0xcc39(%rip), %rsi      # 0x10fc0
callq 0x21c0
jmp 0x4457
movl $0x0, -0x48(%rbp)
movslq -0x48(%rbp), %rax
movq %rax, -0x180(%rbp)
leaq 0x10d6e(%rip), %rdi     # 0x15118
callq 0x5b00
movq %rax, %rcx
movq -0x180(%rbp), %rax
cmpq %rcx, %rax
jae 0x4455
leaq 0x10d4f(%rip), %rdi     # 0x15118
callq 0x5b20
movq %rax, %rsi
movslq -0x48(%rbp), %rcx
movq %rcx, %rax
shlq $0x7, %rax
leaq (%rax,%rcx,8), %rax
addq %rax, %rsi
leaq -0x68(%rbp), %rdi
movq %rdi, -0x190(%rbp)
callq 0x5b40
movq -0x190(%rbp), %rsi
movq 0xcbcf(%rip), %rdi      # 0x10fd0
callq 0x2170
movq %rax, -0x188(%rbp)
jmp 0x440f
movq -0x188(%rbp), %rdi
movq 0xcba3(%rip), %rsi      # 0x10fc0
callq 0x21c0
jmp 0x4424
leaq -0x68(%rbp), %rdi
callq 0x2100
movl -0x48(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x48(%rbp)
jmp 0x4398
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x68(%rbp), %rdi
callq 0x2100
jmp 0x458e
jmp 0x4457
movq 0xcb72(%rip), %rdi      # 0x10fd0
leaq 0x6ced(%rip), %rsi      # 0xb152
callq 0x21a0
movq %rax, %rdi
movq 0xcb4c(%rip), %rsi      # 0x10fc0
callq 0x21c0
leaq 0x10c60(%rip), %rax     # 0x150e0
movq %rax, -0x70(%rbp)
leaq 0x10c55(%rip), %rdi     # 0x150e0
callq 0x5b70
movq %rax, -0x78(%rbp)
leaq 0x10c45(%rip), %rdi     # 0x150e0
callq 0x5ba0
movq %rax, -0x80(%rbp)
leaq -0x78(%rbp), %rdi
leaq -0x80(%rbp), %rsi
callq 0x5bd0
testb $0x1, %al
jne 0x44ba
jmp 0x4572
leaq -0x78(%rbp), %rdi
callq 0x5c00
movq %rax, %rsi
leaq -0x148(%rbp), %rdi
callq 0x5c30
leaq -0x108(%rbp), %rsi
leaq -0x168(%rbp), %rdi
callq 0x5b40
jmp 0x44e7
movq 0xcae2(%rip), %rdi      # 0x10fd0
leaq -0x168(%rbp), %rsi
callq 0x2170
movq %rax, -0x198(%rbp)
jmp 0x4503
movq -0x198(%rbp), %rdi
movq 0xcaaf(%rip), %rsi      # 0x10fc0
callq 0x21c0
jmp 0x4518
leaq -0x168(%rbp), %rdi
callq 0x2100
leaq -0x148(%rbp), %rdi
callq 0x5920
leaq -0x78(%rbp), %rdi
callq 0x5c90
jmp 0x44a4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0x4564
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x168(%rbp), %rdi
callq 0x2100
leaq -0x148(%rbp), %rdi
callq 0x5920
jmp 0x458e
movq 0xca57(%rip), %rdi      # 0x10fd0
movq 0xca40(%rip), %rsi      # 0x10fc0
callq 0x21c0
addq $0x1a0, %rsp            # imm = 0x1A0
popq %rbp
retq
movq -0x40(%rbp), %rdi
callq 0x22d0
nopw (%rax,%rax)