// File: /workspace/github_cpp_makefile_star2_O1/mertyildiran[P]Plexus/plexus/wrapper.cpp
// Function: PyNetwork_load(PyNetwork*, _object*, _object*)
static PyObject * PyNetwork_load(
    PyNetwork* self,
    PyObject* args,
    PyObject *kwargs
)
{
    std::vector<double> input_arr;
    std::vector<double> output_arr;
    PyObject *input_obj;
    PyObject *output_obj = Py_None;

    static char *kwlist[] = {"input_obj", "output_obj", NULL};

    if (! PyArg_ParseTupleAndKeywords(
        args,
        kwargs,
        "O|O",
        kwlist,
        &input_obj,
        &output_obj
    )) {
        PyErr_SetString(PyExc_TypeError, "Wrong type of argument");
        return NULL;
    }

    Py_XINCREF(input_obj);
    Py_XINCREF(output_obj);

    PyObject *input_iter = PyObject_GetIter(input_obj);
    if (!input_iter) {
        PyErr_SetString(PyExc_TypeError, "Input argument is not iterable");
        return NULL;
    }
    try {
        parse_iterable(input_arr, input_iter);
    } catch (char *msg) {
        PyErr_SetString(
            PyExc_TypeError,
            msg
        );
        return NULL;
    }

    if (output_obj != Py_None) {
        PyObject *output_iter = PyObject_GetIter(output_obj);
        if (!output_iter) {
            PyErr_SetString(
                PyExc_TypeError,
                "Output argument is not iterable"
            );
            return NULL;
        }
        try {
            parse_iterable(output_arr, output_iter);
        } catch (char *msg) {
            PyErr_SetString(
                PyExc_TypeError,
                msg
            );
            return NULL;
        }
    }

    Py_XDECREF(input_obj);
    Py_XDECREF(output_obj);

    (self->ptrObj)->load(input_arr, output_arr);

    return Py_BuildValue("");
}

// Assembly:
pushq %rbx
subq $0x80, %rsp
movq %rdi, %rbx
movq %fs:0x28, %rax
movq %rax, 0x78(%rsp)
xorl %eax, %eax
movq %rax, 0x70(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x60(%rsp)
movq %rax, 0x50(%rsp)
movaps %xmm0, 0x40(%rsp)
movq 0x5656(%rip), %rax      # 0xff68
leaq 0x30(%rsp), %r9
movq %rax, (%r9)
leaq 0x1c69(%rip), %rax      # 0xc58a
leaq 0x6268(%rip), %rcx      # 0x10b90
leaq 0x38(%rsp), %r8
movq %rsi, %rdi
movq %rdx, %rsi
movq %rax, %rdx
xorl %eax, %eax
callq 0x60f0
testl %eax, %eax
je 0xaa3b
movq 0x38(%rsp), %rdi
testq %rdi, %rdi
je 0xa952
incq (%rdi)
movq 0x30(%rsp), %rax
testq %rax, %rax
je 0xa95f
incq (%rax)
callq 0x6160
testq %rax, %rax
je 0xaa53
leaq 0x60(%rsp), %rdi
movq %rax, %rsi
callq 0xa3ac
movq 0x30(%rsp), %rdi
cmpq 0x55e2(%rip), %rdi      # 0xff68
je 0xa9a3
callq 0x6160
testq %rax, %rax
je 0xaa6b
leaq 0x40(%rsp), %rdi
movq %rax, %rsi
callq 0xa3ac
movq 0x38(%rsp), %rdi
testq %rdi, %rdi
je 0xa9b7
decq (%rdi)
jne 0xa9b7
callq 0x61d0
movq 0x30(%rsp), %rdi
testq %rdi, %rdi
je 0xa9cb
decq (%rdi)
jne 0xa9cb
callq 0x61d0
movq 0x10(%rbx), %rbx
leaq 0x18(%rsp), %rdi
leaq 0x60(%rsp), %rsi
callq 0xb9b2
movq %rsp, %rdi
leaq 0x40(%rsp), %rsi
callq 0xb9b2
leaq 0x18(%rsp), %rsi
movq %rsp, %rdx
movq %rbx, %rdi
callq 0x7cf0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0xaa11
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x6280
movq 0x18(%rsp), %rdi
testq %rdi, %rdi
je 0xaa28
movq 0x28(%rsp), %rsi
subq %rdi, %rsi
callq 0x6280
leaq 0x16d6(%rip), %rdi      # 0xc105
xorl %eax, %eax
callq 0x61e0
movq %rax, %rbx
jmp 0xaa83
movq 0x5576(%rip), %rax      # 0xffb8
movq (%rax), %rdi
leaq 0x1b42(%rip), %rsi      # 0xc58e
callq 0x62c0
jmp 0xaa81
movq 0x555e(%rip), %rax      # 0xffb8
movq (%rax), %rdi
leaq 0x1b41(%rip), %rsi      # 0xc5a5
callq 0x62c0
jmp 0xaa81
movq 0x5546(%rip), %rax      # 0xffb8
movq (%rax), %rdi
leaq 0x1b48(%rip), %rsi      # 0xc5c4
callq 0x62c0
xorl %ebx, %ebx
movq 0x40(%rsp), %rdi
testq %rdi, %rdi
je 0xaa9a
movq 0x50(%rsp), %rsi
subq %rdi, %rsi
callq 0x6280
movq 0x60(%rsp), %rdi
testq %rdi, %rdi
je 0xaab1
movq 0x70(%rsp), %rsi
subq %rdi, %rsi
callq 0x6280
movq %fs:0x28, %rax
cmpq 0x78(%rsp), %rax
jne 0xabb5
movq %rbx, %rax
addq $0x80, %rsp
popq %rbx
retq
movq %rax, %rbx
cmpl $0x1, %edx
jne 0xab6f
movq %rbx, %rdi
callq 0x60a0
movq 0x54cc(%rip), %rcx      # 0xffb8
movq (%rcx), %rdi
movq %rax, %rsi
callq 0x62c0
jmp 0xab56
jmp 0xab60
movq %rax, %rbx
movq (%rsp), %rdi
testq %rdi, %rdi
je 0xab19
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x6280
jmp 0xab19
movq %rax, %rbx
movq 0x18(%rsp), %rdi
testq %rdi, %rdi
je 0xab6f
movq 0x28(%rsp), %rsi
subq %rdi, %rsi
callq 0x6280
jmp 0xab6f
jmp 0xab6c
movq %rax, %rbx
cmpl $0x1, %edx
jne 0xab6f
movq %rbx, %rdi
callq 0x60a0
movq 0x546d(%rip), %rcx      # 0xffb8
movq (%rcx), %rdi
movq %rax, %rsi
callq 0x62c0
callq 0x63c0
jmp 0xaa81
movq %rax, %rbx
callq 0x63c0
jmp 0xab6f
jmp 0xab6c
movq %rax, %rbx
movq 0x40(%rsp), %rdi
testq %rdi, %rdi
je 0xab86
movq 0x50(%rsp), %rsi
subq %rdi, %rsi
callq 0x6280
movq 0x60(%rsp), %rdi
testq %rdi, %rdi
je 0xab9d
movq 0x70(%rsp), %rsi
subq %rdi, %rsi
callq 0x6280
movq %fs:0x28, %rax
cmpq 0x78(%rsp), %rax
jne 0xabb5
movq %rbx, %rdi
callq 0x6440
callq 0x62a0