// File: myudelson[P]hmm-scalable/utilsSt.cpp
// Function: readSolverInfo(_IO_FILE*, task*, int*)
void readSolverInfo(FILE *fid, struct task *task, NDAT *line_no) {
    string s;
    int c, i1, i2;
    // SolverId
    fscanf(fid,"SolverId\t%i.%i", &i1, &i2);
    task->structure = (NPAR) i1;
    task->solver    = (NPAR) i2;
    fscanf(fid,"SolverId\t%hhu.%hhu", &task->structure, &task->solver);
    c = fscanf(fid,".%hhu\n", &task->solver_setting);
    if( c<1 ) {
        fscanf(fid,"\n");
        task->solver_setting = -1;
    }
    (*line_no)++;
	// nK
    fscanf(fid,"nK\t%i\n",&task->nK);
    (*line_no)++;
    // nG
    fscanf(fid,"nG\t%i\n",&task->nG);
    (*line_no)++;
    // nS
    fscanf(fid,"nS\t%hhu\n",&task->nS);
    (*line_no)++;
    // nO
    fscanf(fid,"nO\t%hhu\n",&task->nO);
    (*line_no)++;
    // nZ
    fscanf(fid,"nZ\t%hhu\n",&task->nZ);
    (*line_no)++;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
leaq -0x38(%rbp), %rdi
callq 0x33b0
movq -0x8(%rbp), %rdi
leaq 0x1237f(%rip), %rsi     # 0x1bc47
xorl %eax, %eax
leaq -0x40(%rbp), %rdx
leaq -0x44(%rbp), %rcx
callq 0x34e0
jmp 0x98d9
movb -0x40(%rbp), %cl
movq -0x10(%rbp), %rax
movb %cl, 0x4e(%rax)
movb -0x44(%rbp), %cl
movq -0x10(%rbp), %rax
movb %cl, 0x4f(%rax)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rcx
movq %rcx, %rdx
addq $0x4e, %rdx
addq $0x4f, %rcx
leaq 0x1234f(%rip), %rsi     # 0x1bc56
xorl %eax, %eax
callq 0x34e0
jmp 0x9910
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rdx
addq $0x50, %rdx
leaq 0x12346(%rip), %rsi     # 0x1bc69
xorl %eax, %eax
callq 0x34e0
movl %eax, -0x58(%rbp)
jmp 0x992f
movl -0x58(%rbp), %eax
movl %eax, -0x3c(%rbp)
cmpl $0x1, -0x3c(%rbp)
jge 0x9973
movq -0x8(%rbp), %rdi
leaq 0x12054(%rip), %rsi     # 0x1b99a
xorl %eax, %eax
callq 0x34e0
jmp 0x994f
movq -0x10(%rbp), %rax
movb $-0x1, 0x50(%rax)
jmp 0x9973
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x50(%rbp)
movl %eax, -0x54(%rbp)
leaq -0x38(%rbp), %rdi
callq 0x3160
jmp 0x9a5a
movq -0x18(%rbp), %rax
movl (%rax), %ecx
incl %ecx
movl %ecx, (%rax)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rdx
addq $0x908, %rdx            # imm = 0x908
leaq 0x122dd(%rip), %rsi     # 0x1bc70
xorl %eax, %eax
callq 0x34e0
jmp 0x999c
movq -0x18(%rbp), %rax
movl (%rax), %ecx
incl %ecx
movl %ecx, (%rax)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rdx
addq $0x904, %rdx            # imm = 0x904
leaq 0x122bb(%rip), %rsi     # 0x1bc77
xorl %eax, %eax
callq 0x34e0
jmp 0x99c5
movq -0x18(%rbp), %rax
movl (%rax), %ecx
incl %ecx
movl %ecx, (%rax)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rdx
addq $0x900, %rdx            # imm = 0x900
leaq 0x12299(%rip), %rsi     # 0x1bc7e
xorl %eax, %eax
callq 0x34e0
jmp 0x99ee
movq -0x18(%rbp), %rax
movl (%rax), %ecx
incl %ecx
movl %ecx, (%rax)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rdx
addq $0x901, %rdx            # imm = 0x901
leaq 0x12279(%rip), %rsi     # 0x1bc87
xorl %eax, %eax
callq 0x34e0
jmp 0x9a17
movq -0x18(%rbp), %rax
movl (%rax), %ecx
incl %ecx
movl %ecx, (%rax)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rdx
addq $0x910, %rdx            # imm = 0x910
leaq 0x12259(%rip), %rsi     # 0x1bc90
xorl %eax, %eax
callq 0x34e0
jmp 0x9a40
movq -0x18(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
leaq -0x38(%rbp), %rdi
callq 0x3160
addq $0x60, %rsp
popq %rbp
retq
movq -0x50(%rbp), %rdi
callq 0x3490
nopw %cs:(%rax,%rax)