// File: /workspace/github_cpp_makefile_star2_O2/malcolmyeh[P]CC3K/floor.cc
// Function: Floor::seePotion[abi:cxx11](Posn)
std::string Floor::seePotion(Posn p){
	for (int i = 0; i < potions.size(); ++i){
		if (potions.at(i)->getSymbol() == 'P' && potions.at(i)->withinRange(p)) {
			if(potions.at(i)->getType() == "RH"){
				if (knownPotion[0]){
					return "You see a Restore Health potion. ";
				}
			} else if (potions.at(i)->getType() == "BA"){
				if (knownPotion[1]){
					return "You see a Boost potion. ";
				}
			} else if (potions.at(i)->getType() == "BD"){
				if (knownPotion[2]){
					return "You see a Boost Defense potion. ";
				}				
			} else if (potions.at(i)->getType() == "PH"){
				if (knownPotion[3]){
					return "You see a Poison Health potion. ";
				}				
			} else if (potions.at(i)->getType() == "WA"){
				if (knownPotion[4]){
					return "You see a Wound Attack potion. ";
				}				
			} else if (potions.at(i)->getType() == "WD"){
				if (knownPotion[5]){
					return "You see a Wound Defense potion. ";
				}			
			}
			return "You see an unknown potion. ";			
		}
	}
	return "invalid";
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rdx, %r13
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x7f0(%rsi), %r15
xorl %r12d, %r12d
movq 0x7f8(%r14), %rax
subq 0x7f0(%r14), %rax
sarq $0x3, %rax
cmpq %r12, %rax
jbe 0x6f27
movq %r15, %rdi
movq %r12, %rsi
callq 0x8324
movq (%rax), %rdi
callq 0xcab4
cmpb $0x50, %al
jne 0x6f22
movq %r15, %rdi
movq %r12, %rsi
callq 0x8324
movq (%rax), %rdi
movq %r13, %rsi
callq 0xcac6
testb %al, %al
jne 0x6f37
incq %r12
jmp 0x6eda
leaq 0x93be(%rip), %rsi      # 0x102ec
leaq -0x50(%rbp), %rdx
jmp 0x711c
movq %rbx, -0x30(%rbp)
movq %r15, %rdi
movq %r12, %rsi
callq 0x8324
movq (%rax), %rsi
leaq -0x50(%rbp), %r13
movq %r13, %rdi
callq 0xd44c
leaq 0x9330(%rip), %rsi      # 0x1028c
movq %r13, %rdi
callq 0x4ac7
movl %eax, %ebx
movq %r13, %rdi
callq 0x40e0
testb %bl, %bl
je 0x6f8c
cmpb $0x1, 0xff0(%r14)
jne 0x710d
leaq 0x93b7(%rip), %rsi      # 0x1033e
jmp 0x7114
movq %r15, %rdi
movq %r12, %rsi
callq 0x8324
movq (%rax), %rsi
leaq -0x50(%rbp), %rbx
movq %rbx, %rdi
callq 0xd44c
leaq 0x92e2(%rip), %rsi      # 0x1028f
movq %rbx, %rdi
callq 0x4ac7
movl %eax, %r13d
movq %rbx, %rdi
callq 0x40e0
testb %r13b, %r13b
je 0x6fdf
cmpb $0x1, 0xff1(%r14)
jne 0x710d
leaq 0x9386(%rip), %rsi      # 0x10360
jmp 0x7114
movq %r15, %rdi
movq %r12, %rsi
callq 0x8324
movq (%rax), %rsi
movq %rbx, %rdi
callq 0xd44c
leaq 0x9296(%rip), %rsi      # 0x10292
movq %rbx, %rdi
callq 0x4ac7
movl %eax, %r13d
movq %rbx, %rdi
callq 0x40e0
testb %r13b, %r13b
je 0x702e
cmpb $0x1, 0xff2(%r14)
jne 0x710d
leaq 0x9350(%rip), %rsi      # 0x10379
jmp 0x7114
movq %r15, %rdi
movq %r12, %rsi
callq 0x8324
movq (%rax), %rsi
movq %rbx, %rdi
callq 0xd44c
leaq 0x924a(%rip), %rsi      # 0x10295
movq %rbx, %rdi
callq 0x4ac7
movl %eax, %r13d
movq %rbx, %rdi
callq 0x40e0
testb %r13b, %r13b
je 0x707d
cmpb $0x1, 0xff3(%r14)
jne 0x710d
leaq 0x9322(%rip), %rsi      # 0x1039a
jmp 0x7114
movq %r15, %rdi
movq %r12, %rsi
callq 0x8324
movq (%rax), %rsi
movq %rbx, %rdi
callq 0xd44c
leaq 0x91fe(%rip), %rsi      # 0x10298
movq %rbx, %rdi
callq 0x4ac7
movl %eax, %r13d
movq %rbx, %rdi
callq 0x40e0
testb %r13b, %r13b
je 0x70c5
cmpb $0x1, 0xff4(%r14)
jne 0x710d
leaq 0x92f8(%rip), %rsi      # 0x103bb
jmp 0x7114
movq %r15, %rdi
movq %r12, %rsi
callq 0x8324
movq (%rax), %rsi
movq %rbx, %rdi
callq 0xd44c
leaq 0x91b9(%rip), %rsi      # 0x1029b
movq %rbx, %rdi
callq 0x4ac7
movl %eax, %r15d
movq %rbx, %rdi
callq 0x40e0
testb %r15b, %r15b
je 0x710d
cmpb $0x1, 0xff5(%r14)
jne 0x710d
leaq 0x92d0(%rip), %rsi      # 0x103db
jmp 0x7114
leaq 0x92e8(%rip), %rsi      # 0x103fc
leaq -0x50(%rbp), %rdx
movq -0x30(%rbp), %rbx
movq %rbx, %rdi
callq 0x40b0
movq %rbx, %rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq