// File: /workspace/github_cpp_makefile_star2_O3/vsklad[P]cgen/./bal/cnf/io/cnfdimacs.hpp
// Function: bal::DimacsStreamReader::read_header(bal::Cnf&)
void read_header(Cnf& cnf) {
            read_token("p");
            skip_space();
            read_token("cnf");
            skip_space();
            variables_size_t variables_size = read_uint32();
            skip_space();
            clauses_size_t clauses_size = read_uint32();
            skip_space();
            read_eol();
            cnf.resize(variables_size, clauses_size);
        }

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
movq %rsi, %rbx
movq %rdi, %r14
movq (%rdi), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
leaq 0xb081(%rip), %rsi      # 0x4571d
callq 0x3ac0c
movq (%r14), %rax
movq -0x18(%rax), %rdi
movq 0x8(%r14,%rdi), %rcx
movq 0x20(%r14,%rdi), %rdx
cmpq %rdx, %rcx
jae 0x3a707
cmpq $0x0, 0x10(%r14,%rdi)
movq 0x18(%r14,%rdi), %rsi
sete %r8b
negq %rdx
incq %rcx
cmpb $0x20, -0x1(%rsi,%rcx)
jne 0x3a703
movq %rcx, 0x8(%r14,%rdi)
testb $0x1, %r8b
jne 0x3a6f0
movq $0x0, 0x10(%r14,%rdi)
movl $0x0, 0x40(%r14,%rdi)
leaq (%rdx,%rcx), %r9
incq %r9
incq %rcx
movb $0x1, %r8b
cmpq $0x1, %r9
jne 0x3a6cc
movq -0x18(%rax), %rdi
addq %r14, %rdi
leaq 0x1160a(%rip), %rsi     # 0x4bd1b
callq 0x3ac0c
movq (%r14), %rax
movq -0x18(%rax), %rdi
movq 0x8(%r14,%rdi), %rcx
movq 0x20(%r14,%rdi), %rdx
cmpq %rdx, %rcx
jae 0x3a77c
cmpq $0x0, 0x10(%r14,%rdi)
movq 0x18(%r14,%rdi), %rsi
sete %r8b
negq %rdx
incq %rcx
cmpb $0x20, -0x1(%rsi,%rcx)
jne 0x3a778
movq %rcx, 0x8(%r14,%rdi)
testb $0x1, %r8b
jne 0x3a765
movq $0x0, 0x10(%r14,%rdi)
movl $0x0, 0x40(%r14,%rdi)
leaq (%rdx,%rcx), %r9
incq %r9
incq %rcx
movb $0x1, %r8b
cmpq $0x1, %r9
jne 0x3a741
movq -0x18(%rax), %rdi
addq %r14, %rdi
xorl %esi, %esi
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x1c066
movl %eax, %r15d
movq (%r14), %rax
movq -0x18(%rax), %rdi
movq 0x8(%r14,%rdi), %rcx
movq 0x20(%r14,%rdi), %rdx
cmpq %rdx, %rcx
jae 0x3a7f4
cmpq $0x0, 0x10(%r14,%rdi)
movq 0x18(%r14,%rdi), %rsi
sete %r8b
negq %rdx
incq %rcx
cmpb $0x20, -0x1(%rsi,%rcx)
jne 0x3a7f0
movq %rcx, 0x8(%r14,%rdi)
testb $0x1, %r8b
jne 0x3a7dd
movq $0x0, 0x10(%r14,%rdi)
movl $0x0, 0x40(%r14,%rdi)
leaq (%rdx,%rcx), %r9
incq %r9
incq %rcx
movb $0x1, %r8b
cmpq $0x1, %r9
jne 0x3a7b9
movq -0x18(%rax), %rdi
addq %r14, %rdi
xorl %esi, %esi
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x1c066
movl %eax, %r12d
movq (%r14), %rcx
movq -0x18(%rcx), %rax
movq 0x8(%r14,%rax), %rdx
movq 0x20(%r14,%rax), %rsi
cmpq %rsi, %rdx
jae 0x3a86c
cmpq $0x0, 0x10(%r14,%rax)
movq 0x18(%r14,%rax), %rdi
sete %r8b
negq %rsi
incq %rdx
cmpb $0x20, -0x1(%rdi,%rdx)
jne 0x3a868
movq %rdx, 0x8(%r14,%rax)
testb $0x1, %r8b
jne 0x3a855
movq $0x0, 0x10(%r14,%rax)
movl $0x0, 0x40(%r14,%rax)
leaq (%rsi,%rdx), %r9
incq %r9
incq %rdx
movb $0x1, %r8b
cmpq $0x1, %r9
jne 0x3a831
movq -0x18(%rcx), %rax
addq %rax, %r14
movq %r14, %rdi
callq 0x1cb0e
leaq 0x78(%rbx), %rdi
shll $0x3, %r12d
movl %r15d, %esi
movl %r12d, %edx
callq 0x275be
cmpl $0x7ffffffe, %r15d      # imm = 0x7FFFFFFE
jae 0x3a8a0
movl %r15d, 0x8(%rbx)
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
leaq 0x4d64(%rip), %rdi      # 0x3f60b
leaq 0x4d7a(%rip), %rsi      # 0x3f628
leaq 0x4d8b(%rip), %rcx      # 0x3f640
movl $0x9b, %edx
callq 0xb180
nop