// File: /workspace/github_cpp_makefile_star2_O2/sagardoshi[P]NegotiationsEncounter/src/Negotiator.cpp
// Function: Negotiator::acceptTerms()
void Negotiator::acceptTerms() {

    string acceptance = "You think over the encounter you just had.\n\n";

    // Try to give somewhat customised feedback after each rejected offer
    if (generosityOfOffer > 1.5) {
        acceptance += "Your offer was far too generous! " + name + " ";
        acceptance += "would have accepted a much\n";
        acceptance += "lower offer, if you had a way to give it. ";
        acceptance += "You have progressed ";
        acceptance += "onward in your\njourney, but you may find ";
        acceptance += "yourself short of inventory in the future, having\n";
        acceptance += "given away what you have here.\n\n";
        acceptance += "Nevertheless, you survive to fight ";
        acceptance += "another day. Well done!\n";
    } else if (generosityOfOffer >= 1 && generosityOfOffer <= 1.5) {
        acceptance += "Your offer was generous. A little more, even, ";
        acceptance += "than what may have sufficed.\n";
        acceptance += "Manage your inventory carefully in future ";
        acceptance += "encounters.\n\n";
        acceptance += "Still, you survive to fight ";
        acceptance += "another day. Well done!\n";
    }
     else if (generosityOfOffer >= 0.5 && generosityOfOffer < 0.75) {
        acceptance += "Wow, you drove an extremely hard bargain and won! ";
        acceptance += "Very, very impressive. You've\nmoved along efficiently ";
        acceptance += "and set yourself up well for the future. Well done!\n";
    } else if (generosityOfOffer >= 0.75 && generosityOfOffer < 1.0) {
        acceptance += "You made a solid offer and won the day. ";
        acceptance += "It's up to you now to continue to manage\nyour stock ";
        acceptance += "efficiently and get out of here safely. Well done!\n";
    } else {
        acceptance += "It's impossible to win the way you did, so you must ";
        acceptance += "be a superuser. All hail\n";
        acceptance += "the superuser. Happy supering.\n";
    }

    std::cout << acceptance << endl;

}

// Assembly:
pushq %rbx
subq $0x60, %rsp
movq %rdi, %rbx
leaq 0x28eb(%rip), %rsi      # 0xce14
movq %rsp, %rdi
leaq 0x20(%rsp), %rdx
callq 0x3860
movss 0x8c(%rbx), %xmm0
ucomiss 0x28c7(%rip), %xmm0     # 0xce0c
jbe 0xa5fd
addq $0x68, %rbx
leaq 0x28eb(%rip), %rsi      # 0xce41
leaq 0x40(%rsp), %rdi
movq %rbx, %rdx
callq 0x5c1a
leaq 0x2554(%rip), %rdx      # 0xcabe
leaq 0x20(%rsp), %rdi
leaq 0x40(%rsp), %rsi
callq 0x5a9a
movq %rsp, %rdi
leaq 0x20(%rsp), %rsi
callq 0x33d0
leaq 0x20(%rsp), %rdi
callq 0x3130
leaq 0x40(%rsp), %rdi
callq 0x3130
leaq 0x28c2(%rip), %rsi      # 0xce63
movq %rsp, %rdi
callq 0x33b0
leaq 0x28cf(%rip), %rsi      # 0xce7f
movq %rsp, %rdi
callq 0x33b0
leaq 0x28eb(%rip), %rsi      # 0xceaa
movq %rsp, %rdi
callq 0x33b0
leaq 0x28f1(%rip), %rsi      # 0xcebf
movq %rsp, %rdi
callq 0x33b0
leaq 0x290c(%rip), %rsi      # 0xcee9
movq %rsp, %rdi
callq 0x33b0
leaq 0x2930(%rip), %rsi      # 0xcf1c
movq %rsp, %rdi
callq 0x33b0
leaq 0x2942(%rip), %rsi      # 0xcf3d
jmp 0xa65a
ucomiss 0x2804(%rip), %xmm0     # 0xce08
jb 0xa696
movss 0x27fa(%rip), %xmm1     # 0xce0c
ucomiss %xmm0, %xmm1
jb 0xa696
leaq 0x295c(%rip), %rsi      # 0xcf7a
movq %rsp, %rdi
callq 0x33b0
leaq 0x297c(%rip), %rsi      # 0xcfa9
movq %rsp, %rdi
callq 0x33b0
leaq 0x298b(%rip), %rsi      # 0xcfc7
movq %rsp, %rdi
callq 0x33b0
leaq 0x29a7(%rip), %rsi      # 0xcff2
movq %rsp, %rdi
callq 0x33b0
leaq 0x29a6(%rip), %rsi      # 0xd000
movq %rsp, %rdi
callq 0x33b0
leaq 0x28f8(%rip), %rsi      # 0xcf61
movq %rsp, %rdi
callq 0x33b0
movq 0x8950(%rip), %rdi      # 0x12fc8
movq %rsp, %rsi
callq 0x3200
movq %rax, %rdi
callq 0x3150
movq %rsp, %rdi
callq 0x3130
addq $0x60, %rsp
popq %rbx
retq
ucomiss 0x1be3(%rip), %xmm0     # 0xc280
jb 0xa6d3
movss 0x2769(%rip), %xmm1     # 0xce10
ucomiss %xmm0, %xmm1
jbe 0xa6d3
leaq 0x296a(%rip), %rsi      # 0xd01d
movq %rsp, %rdi
callq 0x33b0
leaq 0x298e(%rip), %rsi      # 0xd050
movq %rsp, %rdi
callq 0x33b0
leaq 0x29b6(%rip), %rsi      # 0xd087
jmp 0xa669
ucomiss 0x2736(%rip), %xmm0     # 0xce10
jb 0xa713
movss 0x2724(%rip), %xmm1     # 0xce08
ucomiss %xmm0, %xmm1
jbe 0xa713
leaq 0x29cc(%rip), %rsi      # 0xd0bc
movq %rsp, %rdi
callq 0x33b0
leaq 0x29e6(%rip), %rsi      # 0xd0e5
movq %rsp, %rdi
callq 0x33b0
leaq 0x2a0c(%rip), %rsi      # 0xd11a
jmp 0xa669
leaq 0x2a34(%rip), %rsi      # 0xd14e
movq %rsp, %rdi
callq 0x33b0
leaq 0x2a5a(%rip), %rsi      # 0xd183
movq %rsp, %rdi
callq 0x33b0
leaq 0x2a65(%rip), %rsi      # 0xd19d
jmp 0xa669
movq %rax, %rbx
leaq 0x20(%rsp), %rdi
callq 0x3130
jmp 0xa74f
movq %rax, %rbx
leaq 0x40(%rsp), %rdi
callq 0x3130
jmp 0xa760
jmp 0xa75d
movq %rax, %rbx
movq %rsp, %rdi
callq 0x3130
movq %rbx, %rdi
callq 0x3380