// File: redpony[P]libpopt/./lbfgs.h
// Function: scitbx::lbfgs::minimizer<double, unsigned long>::deserialize(std::istream*)
void deserialize(std::istream* in) {
        SizeType n, m, fs;
        in->read((char*)&n, sizeof(n));
        in->read((char*)&m, sizeof(m));
        in->read((char*)&fs, sizeof(fs));
        assert(n == n_);
        assert(m == m_);
        assert(fs == sizeof(FloatType));

        mcsrch_instance.deserialize(in);
        in->read((char*)&iflag_, sizeof(iflag_));
        in->read((char*)&requests_f_and_g_, sizeof(requests_f_and_g_));
        in->read((char*)&requests_diag_, sizeof(requests_diag_));
        in->read((char*)&iter_, sizeof(iter_));
        in->read((char*)&nfun_, sizeof(nfun_));
        in->read((char*)&stp_, sizeof(stp_));
        in->read((char*)&stp1, sizeof(stp1));
        in->read((char*)&ftol, sizeof(ftol));
        in->read((char*)&ys, sizeof(ys));
        in->read((char*)&point, sizeof(point));
        in->read((char*)&npt, sizeof(npt));
        in->read((char*)&info, sizeof(info));
        in->read((char*)&bound, sizeof(bound));
        in->read((char*)&nfev, sizeof(nfev));
        in->read((char*)&w_[0], sizeof(FloatType) * w_.size());
        in->read((char*)&scratch_array_[0], sizeof(FloatType) * scratch_array_.size());
      }

// Assembly:
subq $0x58, %rsp
movq %rdi, 0x50(%rsp)
movq %rsi, 0x48(%rsp)
movq 0x50(%rsp), %rax
movq %rax, 0x28(%rsp)
movq 0x48(%rsp), %rdi
leaq 0x40(%rsp), %rsi
movl $0x8, %edx
callq 0x32d0
movq 0x48(%rsp), %rdi
leaq 0x38(%rsp), %rsi
movl $0x8, %edx
callq 0x32d0
movq 0x48(%rsp), %rdi
leaq 0x30(%rsp), %rsi
movl $0x8, %edx
callq 0x32d0
movq 0x28(%rsp), %rcx
movq 0x40(%rsp), %rax
cmpq 0x78(%rcx), %rax
jne 0x88d6
jmp 0x88f5
leaq 0x5c31(%rip), %rdi      # 0xe50e
leaq 0x5c32(%rip), %rsi      # 0xe516
movl $0x4a2, %edx            # imm = 0x4A2
leaq 0x5c30(%rip), %rcx      # 0xe520
callq 0x3150
movq 0x28(%rsp), %rcx
movq 0x38(%rsp), %rax
cmpq 0x80(%rcx), %rax
jne 0x890a
jmp 0x8929
leaq 0x5c81(%rip), %rdi      # 0xe592
leaq 0x5bfe(%rip), %rsi      # 0xe516
movl $0x4a3, %edx            # imm = 0x4A3
leaq 0x5bfc(%rip), %rcx      # 0xe520
callq 0x3150
cmpq $0x8, 0x30(%rsp)
jne 0x8933
jmp 0x8952
leaq 0x5c60(%rip), %rdi      # 0xe59a
leaq 0x5bd5(%rip), %rsi      # 0xe516
movl $0x4a4, %edx            # imm = 0x4A4
leaq 0x5bd3(%rip), %rcx      # 0xe520
callq 0x3150
movq 0x28(%rsp), %rdi
movq 0x48(%rsp), %rsi
callq 0x9570
movq 0x28(%rsp), %rsi
movq 0x48(%rsp), %rdi
addq $0xb0, %rsi
movl $0x4, %edx
callq 0x32d0
movq 0x28(%rsp), %rsi
movq 0x48(%rsp), %rdi
addq $0xb4, %rsi
movl $0x1, %edx
callq 0x32d0
movq 0x28(%rsp), %rsi
movq 0x48(%rsp), %rdi
addq $0xb5, %rsi
movl $0x1, %edx
callq 0x32d0
movq 0x28(%rsp), %rsi
movq 0x48(%rsp), %rdi
addq $0xb8, %rsi
movl $0x8, %edx
callq 0x32d0
movq 0x28(%rsp), %rsi
movq 0x48(%rsp), %rdi
addq $0xc0, %rsi
movl $0x8, %edx
callq 0x32d0
movq 0x28(%rsp), %rsi
movq 0x48(%rsp), %rdi
addq $0xc8, %rsi
movl $0x8, %edx
callq 0x32d0
movq 0x28(%rsp), %rsi
movq 0x48(%rsp), %rdi
addq $0xd0, %rsi
movl $0x8, %edx
callq 0x32d0
movq 0x28(%rsp), %rsi
movq 0x48(%rsp), %rdi
addq $0xd8, %rsi
movl $0x8, %edx
callq 0x32d0
movq 0x28(%rsp), %rsi
movq 0x48(%rsp), %rdi
addq $0xe0, %rsi
movl $0x8, %edx
callq 0x32d0
movq 0x28(%rsp), %rsi
movq 0x48(%rsp), %rdi
addq $0xe8, %rsi
movl $0x8, %edx
callq 0x32d0
movq 0x28(%rsp), %rsi
movq 0x48(%rsp), %rdi
addq $0xf0, %rsi
movl $0x8, %edx
callq 0x32d0
movq 0x28(%rsp), %rsi
movq 0x48(%rsp), %rdi
addq $0x108, %rsi            # imm = 0x108
movl $0x4, %edx
callq 0x32d0
movq 0x28(%rsp), %rsi
movq 0x48(%rsp), %rdi
addq $0x110, %rsi            # imm = 0x110
movl $0x8, %edx
callq 0x32d0
movq 0x28(%rsp), %rsi
movq 0x48(%rsp), %rdi
addq $0x118, %rsi            # imm = 0x118
movl $0x8, %edx
callq 0x32d0
movq 0x28(%rsp), %rdi
movq 0x48(%rsp), %rax
movq %rax, 0x8(%rsp)
addq $0x120, %rdi            # imm = 0x120
xorl %eax, %eax
movl %eax, %esi
callq 0x46b0
movq 0x28(%rsp), %rdi
movq %rax, 0x10(%rsp)
addq $0x120, %rdi            # imm = 0x120
callq 0x52d0
movq 0x8(%rsp), %rdi
movq 0x10(%rsp), %rsi
movq %rax, %rdx
shlq $0x3, %rdx
callq 0x32d0
movq 0x28(%rsp), %rdi
movq 0x48(%rsp), %rax
movq %rax, 0x18(%rsp)
addq $0x138, %rdi            # imm = 0x138
xorl %eax, %eax
movl %eax, %esi
callq 0x46b0
movq 0x28(%rsp), %rdi
movq %rax, 0x20(%rsp)
addq $0x138, %rdi            # imm = 0x138
callq 0x52d0
movq 0x18(%rsp), %rdi
movq 0x20(%rsp), %rsi
movq %rax, %rdx
shlq $0x3, %rdx
callq 0x32d0
addq $0x58, %rsp
retq
nopw %cs:(%rax,%rax)