// File: millanek[P]evo/./process_vcf_coding_sequences.h
// Function: getExpectedNumberOfNonsynonymousSites(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
inline double getExpectedNumberOfNonsynonymousSites(const std::string& nuc)
{
    switch (s_mapStringToTcodon[nuc])
    {
        case TTT: return 8.0/3.0; break;    case TTC: return 8.0/3.0; break;    // Phe
        case TTA: return 7.0/3.0; break;    case TTG: return 7.0/3.0; break;    // Leu
        case CTA: return 5.0/3.0; break;    case CTG: return 5.0/3.0; break;    // Leu
        case CTC: return 2.0; break;        case CTT: return 2.0; break;        // Leu
        case ATA: return 7.0/3.0; break;    case ATC: return 7.0/3.0; break;    // Ile
        case ATT: return 7.0/3.0; break;                                        // Ile
        case ATG: return 3.0; break;                                            // Met
        case GTA: return 2.0; break;        case GTC: return 2.0; break;        // Val
        case GTG: return 2.0; break;        case GTT: return 2.0; break;        // Val
        case TCA: return 2.0; break;        case TCC: return 2.0; break;        // Ser
        case TCG: return 2.0; break;        case TCT: return 2.0; break;        // Ser
        case AGC: return 8.0/3.0; break;    case AGT: return 8.0/3.0; break;    // Ser
        case CCA: return 2.0; break;        case CCC: return 2.0; break;        // Pro
        case CCG: return 2.0; break;        case CCT: return 2.0; break;        // Pro
        case ACA: return 2.0; break;        case ACC: return 2.0; break;        // Thr
        case ACG: return 2.0; break;        case ACT: return 2.0; break;        // Thr
        case GCA: return 2.0; break;        case GCC: return 2.0; break;        // Ala
        case GCG: return 2.0; break;        case GCT: return 2.0; break;        // Ala
        case GGA: return 2.0; break;        case GGC: return 2.0; break;        // Gly
        case GGG: return 2.0; break;        case GGT: return 2.0; break;        // Gly
        case TAC: return 8.0/3.0; break;    case TAT: return 8.0/3.0; break;    // Tyr
        case TAA: return 7.0/3.0; break;    case TAG: return 8.0/3.0; break;    // Stop
        case TGA: return 8.0/3.0; break;                                        // Stop
        case CAC: return 8.0/3.0; break;    case CAT: return 8.0/3.0; break;    // His
        case CAA: return 8.0/3.0; break;    case CAG: return 8.0/3.0; break;    // Gln
        case AAC: return 8.0/3.0; break;    case AAT: return 8.0/3.0; break;    // Asn
        case AAA: return 8.0/3.0; break;    case AAG: return 8.0/3.0; break;    // Lys
        case GAC: return 8.0/3.0; break;    case GAT: return 8.0/3.0; break;    // Asp
        case GAA: return 8.0/3.0; break;    case GAG: return 8.0/3.0; break;    // Glu
        case TGC: return 8.0/3.0; break;    case TGT: return 8.0/3.0; break;    // Cys
        case TGG: return 3.0; break;                                            // Trp
        case CGC: return 2.0; break;        case CGT: return 2.0; break;        // Arg
        case CGA: return 5.0/3.0; break;    case CGG: return 5.0/3.0; break;    // Arg
        case AGA: return 7.0/3.0; break;    case AGG: return 7.0/3.0; break;    // Arg
        }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
movq -0x10(%rbp), %rsi
leaq 0xe0751(%rip), %rdi     # 0x19a978
callq 0xbf3f0
movl (%rax), %eax
movq %rax, -0x18(%rbp)
subq $0x3f, %rax
ja 0xba6b5
movq -0x18(%rbp), %rax
leaq 0x8665d(%rip), %rcx     # 0x1408a4
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movsd 0x865f8(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x865e6(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x865c4(%rip), %xmm0    # 0x140840
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x865b2(%rip), %xmm0    # 0x140840
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x865a8(%rip), %xmm0    # 0x140848
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x86596(%rip), %xmm0    # 0x140848
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x79404(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x793f2(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x86558(%rip), %xmm0    # 0x140840
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x86546(%rip), %xmm0    # 0x140840
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x86534(%rip), %xmm0    # 0x140840
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x8651a(%rip), %xmm0    # 0x140838
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x79398(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x79386(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x79374(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x79362(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x79350(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x7933e(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x7932c(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x7931a(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x86490(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x8647e(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x792e4(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x792d2(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x792c0(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x792ae(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x7929c(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x7928a(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x79278(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x79266(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x79254(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x79242(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x79230(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x7921e(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x7920c(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x791fa(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x791e8(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x791d6(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x8634c(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x8633a(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x86318(%rip), %xmm0    # 0x140840
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x86316(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x86304(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x862f2(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x862e0(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x862ce(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x862bc(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x862aa(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x86298(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x86286(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x86274(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x86262(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x86250(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x8623e(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x8622c(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x8621a(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x8620b(%rip), %xmm0    # 0x140850
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x861e4(%rip), %xmm0    # 0x140838
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x79065(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x79056(%rip), %xmm0    # 0x1336c8
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x861c7(%rip), %xmm0    # 0x140848
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x861b8(%rip), %xmm0    # 0x140848
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x861a1(%rip), %xmm0    # 0x140840
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
movsd 0x86192(%rip), %xmm0    # 0x140840
movsd %xmm0, -0x8(%rbp)
jmp 0xba6b7
ud2
movsd -0x8(%rbp), %xmm0
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
nopl (%rax)