// File: /workspace/github_cpp_makefile_star2_O2/zeeev[P]DASVC/bamtools/src/toolkit/bamtools_convert.cpp
// Function: BamTools::ConvertTool::ConvertToolPrivate::PrintYaml(BamTools::BamAlignment const&)
void ConvertTool::ConvertToolPrivate::PrintYaml(const BamAlignment& a) {

    // write alignment name
    m_out << "---" << endl;
    m_out << a.Name << ":" << endl;

    // write alignment data
    m_out << "   " << "AlndBases: "     << a.AlignedBases << endl;
    m_out << "   " << "Qualities: "     << a.Qualities << endl;
    m_out << "   " << "Name: "          << a.Name << endl;
    m_out << "   " << "Length: "        << a.Length << endl;
    m_out << "   " << "TagData: "       << a.TagData << endl;
    m_out << "   " << "RefID: "         << a.RefID << endl;
    m_out << "   " << "RefName: "       << m_references[a.RefID].RefName << endl;
    m_out << "   " << "Position: "      << a.Position << endl;
    m_out << "   " << "Bin: "           << a.Bin << endl;
    m_out << "   " << "MapQuality: "    << a.MapQuality << endl;
    m_out << "   " << "AlignmentFlag: " << a.AlignmentFlag << endl;
    m_out << "   " << "MateRefID: "     << a.MateRefID << endl;
    m_out << "   " << "MatePosition: "  << a.MatePosition << endl;
    m_out << "   " << "InsertSize: "    << a.InsertSize << endl;
    m_out << "   " << "Filename: "      << a.Filename << endl;

    // write Cigar data
    const vector<CigarOp>& cigarData = a.CigarData;
    if ( !cigarData.empty() ) {
        m_out << "   " <<  "Cigar: ";
        vector<CigarOp>::const_iterator cigarBegin = cigarData.begin();
        vector<CigarOp>::const_iterator cigarIter  = cigarBegin;
        vector<CigarOp>::const_iterator cigarEnd   = cigarData.end();
        for ( ; cigarIter != cigarEnd; ++cigarIter ) {
            const CigarOp& op = (*cigarIter);
            m_out << op.Length << op.Type;
        }
        m_out << endl;
    }
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %r12
leaq 0x20(%rdi), %rbx
leaq 0x388db(%rip), %rsi     # 0x713c2
movq %rbx, %rdi
callq 0x355b0
movq %rax, %rdi
callq 0x35300
movq %rbx, %rdi
movq %r14, %rsi
callq 0x35510
leaq 0x38868(%rip), %rsi     # 0x71371
movq %rax, %rdi
callq 0x355b0
movq %rax, %rdi
callq 0x35300
leaq 0x3c991(%rip), %r15     # 0x754b1
movq %rbx, %rdi
movq %r15, %rsi
callq 0x355b0
leaq 0x38894(%rip), %rsi     # 0x713c6
movq %rax, %rdi
callq 0x355b0
leaq 0x48(%r14), %rsi
movq %rax, %rdi
callq 0x35510
movq %rax, %rdi
callq 0x35300
movq %rbx, %rdi
movq %r15, %rsi
callq 0x355b0
leaq 0x38872(%rip), %rsi     # 0x713d2
movq %rax, %rdi
callq 0x355b0
leaq 0x68(%r14), %rsi
movq %rax, %rdi
callq 0x35510
movq %rax, %rdi
callq 0x35300
movq %rbx, %rdi
movq %r15, %rsi
callq 0x355b0
leaq 0x38866(%rip), %rsi     # 0x713f4
movq %rax, %rdi
callq 0x355b0
movq %rax, %rdi
movq %r14, %rsi
callq 0x35510
movq %rax, %rdi
callq 0x35300
movq %rbx, %rdi
movq %r15, %rsi
callq 0x355b0
leaq 0x38823(%rip), %rsi     # 0x713de
movq %rax, %rdi
callq 0x355b0
movl 0x20(%r14), %esi
movq %rax, %rdi
callq 0x35b00
movq %rax, %rdi
callq 0x35300
movq %rbx, %rdi
movq %r15, %rsi
callq 0x355b0
leaq 0x387fe(%rip), %rsi     # 0x713e7
movq %rax, %rdi
callq 0x355b0
leaq 0x88(%r14), %rsi
movq %rax, %rdi
callq 0x35510
movq %rax, %rdi
callq 0x35300
movq %rbx, %rdi
movq %r15, %rsi
callq 0x355b0
leaq 0x38808(%rip), %rsi     # 0x71422
movq %rax, %rdi
callq 0x355b0
movl 0xa8(%r14), %esi
movq %rax, %rdi
callq 0x35b00
movq %rax, %rdi
callq 0x35300
movq %rbx, %rdi
movq %r15, %rsi
callq 0x355b0
leaq 0x387a6(%rip), %rsi     # 0x713f1
movq %rax, %rdi
callq 0x355b0
movslq 0xa8(%r14), %rcx
imulq $0x28, %rcx, %rsi
addq 0x8(%r12), %rsi
movq %rax, %rdi
callq 0x35510
movq %rax, %rdi
callq 0x35300
movq %rbx, %rdi
movq %r15, %rsi
callq 0x355b0
leaq 0x387a9(%rip), %rsi     # 0x7142e
movq %rax, %rdi
callq 0x355b0
movl 0xac(%r14), %esi
movq %rax, %rdi
callq 0x35b00
movq %rax, %rdi
callq 0x35300
movq %rbx, %rdi
movq %r15, %rsi
callq 0x355b0
leaq 0x38745(%rip), %rsi     # 0x713fb
movq %rax, %rdi
callq 0x355b0
movzwl 0xb0(%r14), %esi
movq %rax, %rdi
callq 0x35a90
movq %rax, %rdi
callq 0x35300
movq %rbx, %rdi
movq %r15, %rsi
callq 0x355b0
leaq 0x38719(%rip), %rsi     # 0x71401
movq %rax, %rdi
callq 0x355b0
movzwl 0xb2(%r14), %esi
movq %rax, %rdi
callq 0x35a90
movq %rax, %rdi
callq 0x35300
movq %rbx, %rdi
movq %r15, %rsi
callq 0x355b0
leaq 0x386f4(%rip), %rsi     # 0x7140e
movq %rax, %rdi
callq 0x355b0
movl 0xb4(%r14), %esi
movq %rax, %rdi
callq 0x35400
movq %rax, %rdi
callq 0x35300
movq %rbx, %rdi
movq %r15, %rsi
callq 0x355b0
leaq 0x386d3(%rip), %rsi     # 0x7141e
movq %rax, %rdi
callq 0x355b0
movl 0xd0(%r14), %esi
movq %rax, %rdi
callq 0x35b00
movq %rax, %rdi
callq 0x35300
movq %rbx, %rdi
movq %r15, %rsi
callq 0x355b0
leaq 0x386ae(%rip), %rsi     # 0x7142a
movq %rax, %rdi
callq 0x355b0
movl 0xd4(%r14), %esi
movq %rax, %rdi
callq 0x35b00
movq %rax, %rdi
callq 0x35300
movq %rbx, %rdi
movq %r15, %rsi
callq 0x355b0
leaq 0x3868c(%rip), %rsi     # 0x71439
movq %rax, %rdi
callq 0x355b0
movl 0xd8(%r14), %esi
movq %rax, %rdi
callq 0x35b00
movq %rax, %rdi
callq 0x35300
movq %rbx, %rdi
movq %r15, %rsi
callq 0x355b0
leaq 0x38668(%rip), %rsi     # 0x71446
movq %rax, %rdi
callq 0x355b0
leaq 0xe0(%r14), %rsi
movq %rax, %rdi
callq 0x35510
movq %rax, %rdi
callq 0x35300
movq 0xb8(%r14), %rax
cmpq 0xc0(%r14), %rax
je 0x38e6f
leaq 0x3c69d(%rip), %rsi     # 0x754b1
movq %rbx, %rdi
callq 0x355b0
leaq 0x3862e(%rip), %rsi     # 0x71451
movq %rax, %rdi
callq 0x355b0
movq 0xb8(%r14), %r15
movq 0xc0(%r14), %r14
cmpq %r14, %r15
je 0x38e5c
movl 0x4(%r15), %esi
movq %rbx, %rdi
callq 0x35400
movsbl (%r15), %esi
movq %rax, %rdi
callq 0x356e0
addq $0x8, %r15
jmp 0x38e39
movq %rbx, %rdi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmp 0x35300
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
nop