// File: istellartech[P]OpenTsiolkovsky/src/../lib/csv.h
// Function: io::CSVReader<2u, io::trim_chars<(char)32, (char)9>, io::no_quote_escape<(char)44>, io::throw_on_overflow, io::no_comment>::CSVReader<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&)
explicit CSVReader(Args&&...args):in(std::forward<Args>(args)...){
                        std::fill(row, row+column_count, nullptr);
                        col_order.resize(column_count);
                        for(unsigned i=0; i<column_count; ++i)
                                col_order[i] = i;
                        for(unsigned i=1; i<=column_count; ++i)
                                column_names[i-1] = "col"+std::to_string(i);
                }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xc0, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rdi
movq %rdi, -0x90(%rbp)
movq -0x10(%rbp), %rsi
callq 0x3f030
movq -0x90(%rbp), %rax
addq $0x1e0, %rax            # imm = 0x1E0
movq %rax, -0x88(%rbp)
movq %rax, %rcx
addq $0x40, %rcx
movq %rcx, -0x80(%rbp)
movq %rax, -0x78(%rbp)
movq -0x78(%rbp), %rdi
movq %rdi, -0x98(%rbp)
callq 0x6610
movq -0x98(%rbp), %rax
movq -0x80(%rbp), %rcx
addq $0x20, %rax
cmpq %rcx, %rax
movq %rax, -0x78(%rbp)
jne 0x3cc2a
movq -0x90(%rbp), %rdi
addq $0x220, %rdi            # imm = 0x220
movq %rdi, -0xa0(%rbp)
callq 0x3f0e0
movq -0x90(%rbp), %rsi
movq %rsi, %rdi
addq $0x1d0, %rdi            # imm = 0x1D0
addq $0x1e0, %rsi            # imm = 0x1E0
movq $0x0, -0x18(%rbp)
leaq -0x18(%rbp), %rdx
callq 0x3f100
jmp 0x3cc97
movq -0x90(%rbp), %rdi
addq $0x220, %rdi            # imm = 0x220
movl $0x2, %esi
callq 0x3f130
jmp 0x3ccb1
movl $0x0, -0x28(%rbp)
cmpl $0x2, -0x28(%rbp)
jae 0x3cd03
movq -0x90(%rbp), %rdi
movl -0x28(%rbp), %eax
movl %eax, -0xa4(%rbp)
addq $0x220, %rdi            # imm = 0x220
movl -0x28(%rbp), %eax
movl %eax, %esi
callq 0x3f1c0
movl -0xa4(%rbp), %ecx
movl %ecx, (%rax)
movl -0x28(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x28(%rbp)
jmp 0x3ccb8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x3cd97
movl $0x1, -0x2c(%rbp)
cmpl $0x2, -0x2c(%rbp)
ja 0x3cd8e
movl -0x2c(%rbp), %esi
leaq -0x70(%rbp), %rdi
callq 0x3f1e0
jmp 0x3cd1e
leaq 0x1c265(%rip), %rsi     # 0x58f8a
leaq -0x50(%rbp), %rdi
leaq -0x70(%rbp), %rdx
callq 0x1d940
jmp 0x3cd34
movq -0x90(%rbp), %rdi
addq $0x1e0, %rdi            # imm = 0x1E0
movl -0x2c(%rbp), %eax
subl $0x1, %eax
movl %eax, %eax
shlq $0x5, %rax
addq %rax, %rdi
leaq -0x50(%rbp), %rsi
callq 0x6590
leaq -0x50(%rbp), %rdi
callq 0x68a8
leaq -0x70(%rbp), %rdi
callq 0x68a8
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
jmp 0x3cd0a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x70(%rbp), %rdi
callq 0x68a8
jmp 0x3cd97
addq $0xc0, %rsp
popq %rbp
retq
movq -0xa0(%rbp), %rdi
callq 0x3e7b0
movq -0x88(%rbp), %rax
addq $0x40, %rax
movq %rax, -0xb0(%rbp)
movq -0xb0(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0xb8(%rbp)
callq 0x68a8
movq -0x88(%rbp), %rcx
movq -0xb8(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0xb0(%rbp)
jne 0x3cdb5
movq -0x90(%rbp), %rdi
callq 0x3e810
movq -0x20(%rbp), %rdi
callq 0x67a0
nopl (%rax,%rax)