// File: /workspace/github_cpp_makefile_star2_O3/Konano[P]UselessDatabase/Index.cpp
// Function: Index::toJson[abi:cxx11]()
json Index::toJson() {
    json j;
    j["name"] = name;
    j["key_num"] = key_num;
    for (uint i = 0; i < key_num; i++) j["key"].push_back(key[i]);
    for (uint i = 0; i < key_num; i++) j["offset"].push_back(offset[i]);
    j["page_num"] = page_num;
    j["root_page"] = root_page;
    j["next_del_page"] = next_del_page;
    j["record_size"] = record_size;
    for (uint i = 0; i < key_num; i++) j["ty"].push_back(ty[i]);
    return j;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x78, %rsp
movq %rsi, %r14
movq %rdi, %rbp
movb $0x0, (%rdi)
movq $0x0, 0x8(%rdi)
callq 0xd118
movq %rbp, %rdi
callq 0xd118
leaq 0x8(%r14), %rsi
leaq 0x68(%rsp), %rdi
movq %rbp, 0x10(%rsp)
callq 0x8e86
leaq 0x287fc(%rip), %rsi     # 0x40c46
movq %rbp, %rdi
callq 0x8eb2
movq %rax, %r15
leaq 0x68(%rsp), %r12
movq %r12, %rdi
callq 0xd118
movb (%r15), %al
movb (%r12), %cl
movb %cl, (%r15)
movb %al, (%r12)
leaq 0x70(%rsp), %r13
movq 0x8(%r15), %rax
movq (%r13), %rcx
movq %rcx, 0x8(%r15)
movq %rax, (%r13)
movq %r15, %rdi
callq 0xd118
movq %r12, %rdi
callq 0xd118
movzbl -0x8(%r13), %esi
movq %r13, %rdi
callq 0xd1ba
movl 0x28(%r14), %eax
leaq 0x58(%rsp), %r15
movb $0x6, (%r15)
movq %rax, 0x8(%r15)
movq %r15, %rdi
callq 0xd118
movq %r15, %rdi
callq 0xd118
leaq 0x283c6(%rip), %rsi     # 0x40890
movq %rbp, %rdi
callq 0x8eb2
movq %rax, %r15
leaq 0x60(%rsp), %r12
leaq 0x58(%rsp), %r13
movq %r13, %rdi
callq 0xd118
movb (%r15), %al
movb (%r13), %cl
movb %cl, (%r15)
movb %al, (%r13)
movq 0x8(%r15), %rax
movq 0x8(%r13), %rcx
movq %rcx, 0x8(%r15)
movq %rax, 0x8(%r13)
movq %r15, %rdi
callq 0xd118
movq %r13, %rdi
callq 0xd118
movzbl (%r13), %esi
movq %r12, %rdi
callq 0xd1ba
cmpl $0x0, 0x28(%r14)
je 0x18621
leaq 0x8(%rsp), %r15
xorl %ebx, %ebx
leaq 0x26089(%rip), %r12     # 0x3e5c4
movq %rsp, %r13
movq %rbp, %rdi
movq %r12, %rsi
callq 0x8eb2
movq %rax, %rbp
movq 0x30(%r14), %rax
movq $0x0, 0x8(%rsp)
movl (%rax,%rbx,4), %eax
movb $0x6, (%rsp)
movq %rax, 0x8(%rsp)
movq %r13, %rdi
callq 0xd118
movq %r13, %rdi
callq 0xd118
movq %rbp, %rdi
movq %r13, %rsi
callq 0x9096
movq %r13, %rdi
callq 0xd118
movzbl (%rsp), %esi
movq %r15, %rdi
callq 0xd1ba
incq %rbx
movl 0x28(%r14), %eax
cmpq %rax, %rbx
movq 0x10(%rsp), %rbp
jb 0x1853e
testl %eax, %eax
je 0x18621
leaq 0x8(%rsp), %r15
xorl %ebx, %ebx
leaq 0x282e1(%rip), %r12     # 0x40898
movq %rsp, %r13
movq %rbp, %rdi
movq %r12, %rsi
callq 0x8eb2
movq %rax, %rbp
movq 0x48(%r14), %rax
movq $0x0, 0x8(%rsp)
movl (%rax,%rbx,4), %eax
movb $0x6, (%rsp)
movq %rax, 0x8(%rsp)
movq %r13, %rdi
callq 0xd118
movq %r13, %rdi
callq 0xd118
movq %rbp, %rdi
movq %r13, %rsi
callq 0x9096
movq %r13, %rdi
callq 0xd118
movzbl (%rsp), %esi
movq %r15, %rdi
callq 0xd1ba
incq %rbx
movl 0x28(%r14), %eax
cmpq %rax, %rbx
movq 0x10(%rsp), %rbp
jb 0x185ba
movl 0x60(%r14), %eax
leaq 0x48(%rsp), %r15
movb $0x6, (%r15)
movq %rax, 0x8(%r15)
movq %r15, %rdi
callq 0xd118
movq %r15, %rdi
callq 0xd118
leaq 0x28256(%rip), %rsi     # 0x4089f
movq %rbp, %rdi
callq 0x8eb2
movq %rax, %r15
leaq 0x50(%rsp), %r12
leaq 0x48(%rsp), %r13
movq %r13, %rdi
callq 0xd118
movb (%r15), %al
movb (%r13), %cl
movb %cl, (%r15)
movb %al, (%r13)
movq 0x8(%r15), %rax
movq 0x8(%r13), %rcx
movq %rcx, 0x8(%r15)
movq %rax, 0x8(%r13)
movq %r15, %rdi
callq 0xd118
movq %r13, %rdi
callq 0xd118
movzbl (%r13), %esi
movq %r12, %rdi
callq 0xd1ba
movl 0x64(%r14), %eax
leaq 0x38(%rsp), %r15
movb $0x6, (%r15)
movq %rax, 0x8(%r15)
movq %r15, %rdi
callq 0xd118
movq %r15, %rdi
callq 0xd118
leaq 0x281df(%rip), %rsi     # 0x408a8
movq %rbp, %rdi
callq 0x8eb2
movq %rax, %r15
leaq 0x40(%rsp), %r12
leaq 0x38(%rsp), %r13
movq %r13, %rdi
callq 0xd118
movb (%r15), %al
movb (%r13), %cl
movb %cl, (%r15)
movb %al, (%r13)
movq 0x8(%r15), %rax
movq 0x8(%r13), %rcx
movq %rcx, 0x8(%r15)
movq %rax, 0x8(%r13)
movq %r15, %rdi
callq 0xd118
movq %r13, %rdi
callq 0xd118
movzbl (%r13), %esi
movq %r12, %rdi
callq 0xd1ba
movl 0x68(%r14), %eax
leaq 0x28(%rsp), %r15
movb $0x6, (%r15)
movq %rax, 0x8(%r15)
movq %r15, %rdi
callq 0xd118
movq %r15, %rdi
callq 0xd118
leaq 0x28169(%rip), %rsi     # 0x408b2
movq %rbp, %rdi
callq 0x8eb2
movq %rax, %r15
leaq 0x30(%rsp), %r12
leaq 0x28(%rsp), %r13
movq %r13, %rdi
callq 0xd118
movb (%r15), %al
movb (%r13), %cl
movb %cl, (%r15)
movb %al, (%r13)
movq 0x8(%r15), %rax
movq 0x8(%r13), %rcx
movq %rcx, 0x8(%r15)
movq %rax, 0x8(%r13)
movq %r15, %rdi
callq 0xd118
movq %r13, %rdi
callq 0xd118
movzbl (%r13), %esi
movq %r12, %rdi
callq 0xd1ba
movzwl 0x6c(%r14), %eax
leaq 0x18(%rsp), %r15
movb $0x6, (%r15)
movq %rax, 0x8(%r15)
movq %r15, %rdi
callq 0xd118
movq %r15, %rdi
callq 0xd118
leaq 0x280f6(%rip), %rsi     # 0x408c0
movq %rbp, %rdi
callq 0x8eb2
movq %rax, %r15
leaq 0x20(%rsp), %r12
leaq 0x18(%rsp), %r13
movq %r13, %rdi
callq 0xd118
movb (%r15), %al
movb (%r13), %cl
movb %cl, (%r15)
movb %al, (%r13)
movq 0x8(%r15), %rax
movq 0x8(%r13), %rcx
movq %rcx, 0x8(%r15)
movq %rax, 0x8(%r13)
movq %r15, %rdi
callq 0xd118
movq %r13, %rdi
callq 0xd118
movzbl (%r13), %esi
movq %r12, %rdi
callq 0xd1ba
cmpl $0x0, 0x28(%r14)
je 0x188a1
leaq 0x8(%rsp), %r15
xorl %ebx, %ebx
leaq 0x283ae(%rip), %r12     # 0x40be5
movq %rsp, %r13
movq %rbp, %rdi
movq %r12, %rsi
callq 0x8eb2
movq %rax, %rbp
movq 0x78(%r14), %rax
movq $0x0, 0x8(%rsp)
movl (%rax,%rbx,4), %eax
movb $0x5, (%rsp)
movq %rax, 0x8(%rsp)
movq %r13, %rdi
callq 0xd118
movq %r13, %rdi
callq 0xd118
movq %rbp, %rdi
movq %r13, %rsi
callq 0x9096
movq %r13, %rdi
callq 0xd118
movzbl (%rsp), %esi
movq %r15, %rdi
callq 0xd1ba
incq %rbx
movl 0x28(%r14), %eax
cmpq %rax, %rbx
movq 0x10(%rsp), %rbp
jb 0x1883a
movq %rbp, %rax
addq $0x78, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %r14
leaq 0x18(%rsp), %rdi
jmp 0x18904
movq %rax, %r14
leaq 0x28(%rsp), %rdi
jmp 0x18904
movq %rax, %r14
leaq 0x38(%rsp), %rdi
jmp 0x18904
movq %rax, %r14
leaq 0x48(%rsp), %rdi
jmp 0x18904
movq %rax, %r14
leaq 0x58(%rsp), %rdi
jmp 0x18904
movq %rax, %r14
leaq 0x68(%rsp), %rdi
jmp 0x18904
jmp 0x188f9
jmp 0x188f9
jmp 0x188fe
jmp 0x188f9
jmp 0x188fe
movq %rax, %r14
jmp 0x18909
movq %rax, %r14
movq %rsp, %rdi
callq 0x907c
movq 0x10(%rsp), %rdi
callq 0x907c
movq %r14, %rdi
callq 0x56e0
nop