// File: travisdowns[P]avx-turbo/./table.hpp
// Function: table::Table::str[abi:cxx11]() const
std::string str() const {

        // calculate max row sizes
        std::vector<size_t> max_sizes;
        for (const auto& r : rows_) {
            std::vector<size_t> sizes = r.getSizes();
            for (size_t c = 0; c < sizes.size(); c++) {
                size_t row_size = sizes[c];
                if (c >= max_sizes.size()) {
                    assert(max_sizes.size() == c);
                    max_sizes.push_back(row_size);
                } else {
                    max_sizes[c] = std::max(max_sizes[c], row_size);
                }
            }
        }

        std::stringstream ss;
        for (const auto& r : rows_) {
            r.str(ss, max_sizes);
            ss << "\n";
        }

        return ss.str();
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x280, %rsp            # imm = 0x280
movq %rdi, -0x258(%rbp)
movq %rdi, %rax
movq %rax, -0x250(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x248(%rbp)
leaq -0x28(%rbp), %rdi
callq 0x205a0
movq -0x248(%rbp), %rax
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rdi
callq 0x205c0
movq %rax, -0x38(%rbp)
movq -0x30(%rbp), %rdi
callq 0x205f0
movq %rax, -0x40(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0x40(%rbp), %rsi
callq 0x20620
testb $0x1, %al
jne 0x12013
jmp 0x12165
leaq -0x38(%rbp), %rdi
callq 0x20660
movq %rax, -0x48(%rbp)
movq -0x48(%rbp), %rsi
leaq -0x60(%rbp), %rdi
callq 0x20680
jmp 0x1202f
movq $0x0, -0x78(%rbp)
movq -0x78(%rbp), %rax
movq %rax, -0x260(%rbp)
leaq -0x60(%rbp), %rdi
callq 0x20760
movq %rax, %rcx
movq -0x260(%rbp), %rax
cmpq %rcx, %rax
jae 0x1214e
movq -0x78(%rbp), %rsi
leaq -0x60(%rbp), %rdi
callq 0x20780
movq (%rax), %rax
movq %rax, -0x80(%rbp)
movq -0x78(%rbp), %rax
movq %rax, -0x268(%rbp)
leaq -0x28(%rbp), %rdi
callq 0x20760
movq %rax, %rcx
movq -0x268(%rbp), %rax
cmpq %rcx, %rax
jb 0x12101
leaq -0x28(%rbp), %rdi
callq 0x20760
cmpq -0x78(%rbp), %rax
jne 0x120a6
jmp 0x120d6
leaq 0x2f3a5(%rip), %rdi     # 0x41452
leaq 0x2f3b4(%rip), %rsi     # 0x41468
movl $0x8b, %edx
leaq 0x2f3b4(%rip), %rcx     # 0x41474
callq 0x72e0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
jmp 0x122c2
leaq -0x28(%rbp), %rdi
leaq -0x80(%rbp), %rsi
callq 0x207a0
jmp 0x120e5
jmp 0x1213b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
leaq -0x60(%rbp), %rdi
callq 0x20810
jmp 0x122c2
movq -0x78(%rbp), %rsi
leaq -0x28(%rbp), %rdi
callq 0x20780
movq %rax, %rdi
leaq -0x80(%rbp), %rsi
callq 0x194a0
movq (%rax), %rax
movq %rax, -0x270(%rbp)
movq -0x78(%rbp), %rsi
leaq -0x28(%rbp), %rdi
callq 0x20780
movq -0x270(%rbp), %rcx
movq %rcx, (%rax)
jmp 0x1213d
movq -0x78(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x78(%rbp)
jmp 0x12037
leaq -0x60(%rbp), %rdi
callq 0x20810
leaq -0x38(%rbp), %rdi
callq 0x20870
jmp 0x11ffd
leaq -0x208(%rbp), %rdi
callq 0x7330
jmp 0x12173
movq -0x248(%rbp), %rax
movq %rax, -0x210(%rbp)
movq -0x210(%rbp), %rdi
callq 0x205c0
movq %rax, -0x218(%rbp)
movq -0x210(%rbp), %rdi
callq 0x205f0
movq %rax, -0x220(%rbp)
leaq -0x218(%rbp), %rdi
leaq -0x220(%rbp), %rsi
callq 0x20620
testb $0x1, %al
jne 0x121c3
jmp 0x1227c
leaq -0x218(%rbp), %rdi
callq 0x20660
movq %rax, -0x228(%rbp)
movq -0x228(%rbp), %rax
movq %rax, -0x280(%rbp)
leaq -0x1f8(%rbp), %rax
movq %rax, -0x278(%rbp)
leaq -0x240(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x20a10
jmp 0x12204
movq -0x278(%rbp), %rsi
movq -0x280(%rbp), %rdi
leaq -0x240(%rbp), %rdx
callq 0x20890
jmp 0x12220
leaq -0x240(%rbp), %rdi
callq 0x20810
leaq -0x1f8(%rbp), %rdi
leaq 0x2f56a(%rip), %rsi     # 0x417a4
callq 0x7470
jmp 0x12241
jmp 0x12243
leaq -0x218(%rbp), %rdi
callq 0x20870
jmp 0x121a7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
jmp 0x122b6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
leaq -0x240(%rbp), %rdi
callq 0x20810
jmp 0x122b6
movq -0x258(%rbp), %rdi
leaq -0x208(%rbp), %rsi
callq 0x7460
jmp 0x12291
leaq -0x208(%rbp), %rdi
callq 0x7370
leaq -0x28(%rbp), %rdi
callq 0x20810
movq -0x250(%rbp), %rax
addq $0x280, %rsp            # imm = 0x280
popq %rbp
retq
leaq -0x208(%rbp), %rdi
callq 0x7370
leaq -0x28(%rbp), %rdi
callq 0x20810
movq -0x68(%rbp), %rdi
callq 0x77b0
nopw %cs:(%rax,%rax)
nop