// File: /workspace/github_cpp_makefile_star2_O2/gprateek93[P]LaTeX_to_HTML/converter.cpp
// Function: converter::traversal[abi:cxx11](ast_node*)
string converter :: traversal(ast_node *root){
    string s = "";
    if(root){
        int type = root->node_type;
        string attributes = root->attributes;
        string data = root->data;
        switch (type) {
            case 0:
                s+= traverseSection(root,type);
                break;
            case 1:
                s+=traverseSubSection(root,type);
                break;
            case 2:
            case 3:
            case 4:
                s+=traverseList(root,type);
                break;
            case 5:
            case 6:
            case 7:
                s+=traverseFont(root,type);
                break;
            case 8:
                s+=traversePara(root,type);
                break;
            case 9:
            case 10:
                s+=traverseAnchor(root,type);
                break;
            case 11:
            case 17:
            case 18:
                s+=traverseTable(root,type);
                break;
            case 12:
            case 13:
            case 14:
                s+=traverseImage(root,type);
                break;
            case 15:
                s+=traverseContent(root,type);
                break;
            case 19:
            case 20:
            case 21:
            case 22:
            case 23:
                s+=traverseMath(root,type);
                break;
            default:
                s+=traverseDefault(root,type);
        }
    }
    return s;
 }

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x68, %rsp
movq %rdx, %r14
movq %rsi, %r15
movq %rdi, %rbx
leaq 0x3909(%rip), %rsi      # 0xb566
leaq -0x68(%rbp), %rdx
callq 0x5916
testq %r14, %r14
je 0x7e36
movl (%r14), %r12d
leaq 0x28(%r14), %rsi
leaq -0x68(%rbp), %rdi
callq 0x3260
leaq 0x8(%r14), %r13
leaq -0x88(%rbp), %rdi
movq %r13, %rsi
callq 0x3260
cmpl $0x17, %r12d
ja 0x7dc0
movl %r12d, %eax
leaq 0x3d02(%rip), %rcx      # 0xb9a8
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq -0x48(%rbp), %rdi
movq %r15, %rsi
movq %r14, %rdx
movl %r12d, %ecx
callq 0x7926
leaq -0x48(%rbp), %rsi
movq %rbx, %rdi
callq 0x33d0
jmp 0x7e18
leaq -0x48(%rbp), %rdi
movq %r15, %rsi
movq %r14, %rdx
movl %r12d, %ecx
callq 0x7262
leaq -0x48(%rbp), %rsi
movq %rbx, %rdi
callq 0x33d0
jmp 0x7e18
leaq -0x48(%rbp), %rdi
movq %r15, %rsi
movq %r14, %rdx
movl %r12d, %ecx
callq 0x7262
leaq -0x48(%rbp), %rsi
movq %rbx, %rdi
callq 0x33d0
jmp 0x7e18
leaq -0x48(%rbp), %rdi
movq %r15, %rsi
movq %r14, %rdx
movl %r12d, %ecx
callq 0x76c0
leaq -0x48(%rbp), %rsi
movq %rbx, %rdi
callq 0x33d0
jmp 0x7e18
leaq -0x48(%rbp), %rdi
movq %r15, %rsi
movq %r14, %rdx
movl %r12d, %ecx
callq 0x7262
leaq -0x48(%rbp), %rsi
movq %rbx, %rdi
callq 0x33d0
jmp 0x7e18
leaq -0x48(%rbp), %rdi
movq %r15, %rsi
movq %r14, %rdx
movl %r12d, %ecx
callq 0x74fc
leaq -0x48(%rbp), %rsi
movq %rbx, %rdi
callq 0x33d0
jmp 0x7e18
leaq -0x48(%rbp), %rdi
movq %r15, %rsi
movq %r14, %rdx
xorl %ecx, %ecx
callq 0x6d00
leaq -0x48(%rbp), %rsi
movq %rbx, %rdi
callq 0x33d0
jmp 0x7e18
leaq -0x48(%rbp), %rdi
pushq $0x1
popq %rcx
movq %r15, %rsi
movq %r14, %rdx
callq 0x6faa
leaq -0x48(%rbp), %rsi
movq %rbx, %rdi
callq 0x33d0
jmp 0x7e18
leaq -0x48(%rbp), %rdi
movq %r15, %rsi
movq %r14, %rdx
movl %r12d, %ecx
callq 0x7262
leaq -0x48(%rbp), %rsi
movq %rbx, %rdi
callq 0x33d0
jmp 0x7e18
leaq -0x48(%rbp), %rdi
pushq $0x8
popq %rcx
movq %r15, %rsi
movq %r14, %rdx
callq 0x73e6
leaq -0x48(%rbp), %rsi
movq %rbx, %rdi
callq 0x33d0
jmp 0x7e18
leaq -0x48(%rbp), %rdi
movq %r13, %rsi
callq 0x3260
leaq -0x48(%rbp), %rsi
movq %rbx, %rdi
callq 0x33d0
leaq -0x48(%rbp), %rdi
callq 0x33e8
leaq -0x88(%rbp), %rdi
callq 0x33e8
leaq -0x68(%rbp), %rdi
callq 0x33e8
movq %rbx, %rax
addq $0x68, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x7e70
jmp 0x7e70
jmp 0x7e70
jmp 0x7e70
jmp 0x7e70
jmp 0x7e7e
jmp 0x7e7e
jmp 0x7e7e
jmp 0x7e7e
jmp 0x7e7e
jmp 0x7e70
jmp 0x7e7e
jmp 0x7e70
jmp 0x7e70
jmp 0x7e70
jmp 0x7e70
jmp 0x7e7e
jmp 0x7e7e
jmp 0x7e7e
jmp 0x7e7e
movq %rax, %r14
leaq -0x48(%rbp), %rdi
callq 0x33e8
jmp 0x7e81
movq %rax, %r14
leaq -0x88(%rbp), %rdi
callq 0x33e8
jmp 0x7e92
movq %rax, %r14
leaq -0x68(%rbp), %rdi
callq 0x33e8
jmp 0x7ea0
movq %rax, %r14
movq %rbx, %rdi
callq 0x33e8
movq %r14, %rdi
callq 0x3360