// File: /workspace/github_cpp_makefile_star2_O3/Luthaf[P]zeopp/arguments.cc
// Function: processAccuracyParameters(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)
string processAccuracyParameters(vector<string> args){
    string accSetting;
    cout << "High accuracy requested (DEF (default) settings). "<< "\n";
    if(args.size() == 1){
        accSetting = "DEF";
    }
    else if(args.size() == 2){
        
        string tempSetting = toUpperCase(args[1]);
        
        if(tempSetting == "OCC" ||
           tempSetting == "FCC" ||
           tempSetting == "ACC" ||
           tempSetting == "AQC" ||
           tempSetting == "DDH" ||
           tempSetting == "TIH" ||
           tempSetting == "ICH" ||
           tempSetting == "ICC" ||
           tempSetting == "RIH" ||
           tempSetting == "S4" ||
           tempSetting == "S10" ||
           tempSetting == "S20" ||
           tempSetting == "S30" ||
           tempSetting == "S40" ||
           tempSetting == "S50" ||
           tempSetting == "S100" ||
           tempSetting == "S500" ||
           tempSetting == "S1000" ||
           tempSetting == "S10000" ||
           tempSetting == "DEF" ||
           tempSetting == "HI" ||
           tempSetting == "MED" ||
           tempSetting == "LOW") { cout << "Selected accuracy setting: " << tempSetting << "\n"; accSetting = tempSetting;}
        else{
            cerr << "Error: -ha option of " << tempSetting << " is not recognized.\n"
            << "Available options: FCC ACC AQC DDH TIH ICH ICC RIH S4 S10 S20 S30 S40 S50 S100 S500 S1000 S10000 HI MED LOW DEF\n"
            << "Exiting..." << "\n";
            exit(1);
            
        };
        
    }
    else{
        cerr << "Error: -ha option accepts at most 1 argument but " << args.size() - 1 << " were provided." << "\n"
        << "Exiting..." << "\n";
        exit(1);
    }
    
    return accSetting;
    
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x20, %rsp
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x10(%rdi), %r15
movq %r15, (%rdi)
movq $0x0, 0x8(%rdi)
movb $0x0, 0x10(%rdi)
movq 0x8b69c(%rip), %rdi     # 0x194fc0
leaq 0x4dbe1(%rip), %rsi     # 0x15750c
movl $0x32, %edx
callq 0x44e0
movq 0x8b684(%rip), %rdi     # 0x194fc0
leaq 0x49cdb(%rip), %rsi     # 0x15361e
movl $0x1, %edx
callq 0x44e0
movq (%r14), %rsi
movq 0x8(%r14), %rax
subq %rsi, %rax
sarq $0x5, %rax
cmpq $0x2, %rax
je 0x10998b
cmpq $0x1, %rax
jne 0x109c04
movq 0x8(%rbx), %rdx
leaq 0x4dbc9(%rip), %rcx     # 0x15753f
movl $0x3, %r8d
movq %rbx, %rdi
xorl %esi, %esi
callq 0x4670
jmp 0x109bf7
addq $0x20, %rsi
movq %rsp, %rdi
callq 0x72ce
leaq 0x4c3aa(%rip), %rsi     # 0x155d48
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c397(%rip), %rsi     # 0x155d4c
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c384(%rip), %rsi     # 0x155d50
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c371(%rip), %rsi     # 0x155d54
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c35e(%rip), %rsi     # 0x155d58
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c34b(%rip), %rsi     # 0x155d5c
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c338(%rip), %rsi     # 0x155d60
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c325(%rip), %rsi     # 0x155d64
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c312(%rip), %rsi     # 0x155d68
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c2ff(%rip), %rsi     # 0x155d6c
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c2eb(%rip), %rsi     # 0x155d6f
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c2d8(%rip), %rsi     # 0x155d73
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c2c5(%rip), %rsi     # 0x155d77
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c2b2(%rip), %rsi     # 0x155d7b
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c29f(%rip), %rsi     # 0x155d7f
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c28c(%rip), %rsi     # 0x155d83
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c27a(%rip), %rsi     # 0x155d88
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c26c(%rip), %rsi     # 0x155d8d
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c25f(%rip), %rsi     # 0x155d93
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4d9f8(%rip), %rsi     # 0x15753f
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c3fb(%rip), %rsi     # 0x155f55
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c3eb(%rip), %rsi     # 0x155f58
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
je 0x109b90
leaq 0x4c3dc(%rip), %rsi     # 0x155f5c
movq %rsp, %rdi
callq 0x4170
testl %eax, %eax
jne 0x109c8e
movq 0x8b429(%rip), %rdi     # 0x194fc0
leaq 0x4d9a5(%rip), %rsi     # 0x157543
movl $0x1b, %edx
callq 0x44e0
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
movq 0x8b408(%rip), %rdi     # 0x194fc0
callq 0x44e0
leaq 0x49a5a(%rip), %rsi     # 0x15361e
movl $0x1, %edx
movq %rax, %rdi
callq 0x44e0
movq %rsp, %rsi
movq %rbx, %rdi
callq 0x4240
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x109bf7
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x4470
movq %rbx, %rax
addq $0x20, %rsp
popq %rbx
popq %r14
popq %r15
retq
movq 0x8b3e5(%rip), %rdi     # 0x194ff0
leaq 0x4d9e9(%rip), %rsi     # 0x1575fb
movl $0x31, %edx
callq 0x44e0
movq 0x8(%r14), %rsi
subq (%r14), %rsi
sarq $0x5, %rsi
decq %rsi
movq 0x8b3bf(%rip), %rdi     # 0x194ff0
callq 0x42b0
movq %rax, %r14
leaq 0x4d801(%rip), %rsi     # 0x157441
movl $0xf, %edx
movq %rax, %rdi
callq 0x44e0
leaq 0x499ca(%rip), %rsi     # 0x15361e
movl $0x1, %edx
movq %r14, %rdi
callq 0x44e0
leaq 0x4aa62(%rip), %rsi     # 0x1546ca
movl $0xa, %edx
movq %r14, %rdi
callq 0x44e0
leaq 0x499a2(%rip), %rsi     # 0x15361e
movq %r14, %rdi
callq 0x4440
movl $0x1, %edi
callq 0x72bc
movq 0x8b35b(%rip), %rdi     # 0x194ff0
leaq 0x4d8c3(%rip), %rsi     # 0x15755f
movl $0x15, %edx
callq 0x44e0
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
movq 0x8b33a(%rip), %rdi     # 0x194ff0
callq 0x44e0
movq %rax, %r14
leaq 0x4d8b0(%rip), %rsi     # 0x157575
movl $0x14, %edx
movq %rax, %rdi
callq 0x44e0
leaq 0x4d8b1(%rip), %rsi     # 0x15758a
movl $0x70, %edx
movq %r14, %rdi
callq 0x44e0
leaq 0x4a9dd(%rip), %rsi     # 0x1546ca
movl $0xa, %edx
movq %r14, %rdi
callq 0x44e0
leaq 0x4991d(%rip), %rsi     # 0x15361e
movq %r14, %rdi
callq 0x4440
jmp 0x109c84
jmp 0x109d30
movq %rax, %r14
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x109d33
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x4470
jmp 0x109d33
movq %rax, %r14
movq (%rbx), %rdi
cmpq %r15, %rdi
je 0x109d46
movq (%r15), %rsi
incq %rsi
callq 0x4470
movq %r14, %rdi
callq 0x4780