// File: /workspace/github_c_makefile_star2_O0/stonezwr[P]SpiKL-IP/network.C
// Function: Network::LoadSynWeightsFromFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
void Network::LoadSynWeightsFromFile(const string& filename)
{
    ifstream f_in(filename);
    if(!f_in.is_open()){
        cout<<"In Network::LoadSynWeightsFromFile(), cannot open the file: "<<filename<<endl;
        assert(0);
    }
    int index;
    string pre;
    string post; 
    double weight;
    while(f_in>>index>>pre>>post>>weight){
        assert(_synapses_map.find(pre) != _synapses_map.end());
        assert(_synapses_map[pre].find(post) != _synapses_map[pre].end());
        _synapses_map[pre][post]->Weight(weight);
    }
   
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x310, %rsp            # imm = 0x310
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x2a8(%rbp)
movq -0x10(%rbp), %rsi
leaq -0x218(%rbp), %rdi
movq %rdi, -0x2a0(%rbp)
movl $0x8, %edx
callq 0x4640
movq -0x2a0(%rbp), %rdi
callq 0x4620
movb %al, -0x291(%rbp)
jmp 0x22d1e
movb -0x291(%rbp), %al
testb $0x1, %al
jne 0x22dae
jmp 0x22d2e
movq 0x2a293(%rip), %rdi     # 0x4cfc8
leaq 0x13492(%rip), %rsi     # 0x361ce
callq 0x4360
movq %rax, -0x2b0(%rbp)
jmp 0x22d4a
movq -0x2b0(%rbp), %rdi
movq -0x10(%rbp), %rsi
callq 0x4300
movq %rax, -0x2b8(%rbp)
jmp 0x22d63
movq -0x2b8(%rbp), %rdi
movq 0x2a247(%rip), %rsi     # 0x4cfb8
callq 0x43b0
jmp 0x22d78
leaq 0x12599(%rip), %rdi     # 0x35318
leaq 0x12594(%rip), %rsi     # 0x3531a
movl $0x40a, %edx            # imm = 0x40A
leaq 0x13479(%rip), %rcx     # 0x3620b
callq 0x4210
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x220(%rbp)
movl %eax, -0x224(%rbp)
jmp 0x2304f
leaq -0x248(%rbp), %rdi
callq 0x4510
leaq -0x268(%rbp), %rdi
callq 0x4510
leaq -0x218(%rbp), %rdi
leaq -0x228(%rbp), %rsi
callq 0x41f0
movq %rax, -0x2c0(%rbp)
jmp 0x22de2
movq -0x2c0(%rbp), %rdi
leaq -0x248(%rbp), %rsi
callq 0x44c0
movq %rax, -0x2c8(%rbp)
jmp 0x22dfe
movq -0x2c8(%rbp), %rdi
leaq -0x268(%rbp), %rsi
callq 0x44c0
movq %rax, -0x2d0(%rbp)
jmp 0x22e1a
movq -0x2d0(%rbp), %rdi
leaq -0x270(%rbp), %rsi
callq 0x42b0
movq %rax, -0x2d8(%rbp)
jmp 0x22e36
movq -0x2d8(%rbp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
addq %rax, %rdi
callq 0x44a0
movb %al, -0x2d9(%rbp)
jmp 0x22e54
movb -0x2d9(%rbp), %al
testb $0x1, %al
jne 0x22e63
jmp 0x23022
movq -0x2a8(%rbp), %rdi
addq $0x50, %rdi
leaq -0x248(%rbp), %rsi
callq 0x17090
movq %rax, -0x2e8(%rbp)
jmp 0x22e83
movq -0x2a8(%rbp), %rdi
movq -0x2e8(%rbp), %rax
movq %rax, -0x278(%rbp)
addq $0x50, %rdi
callq 0x170c0
movq %rax, -0x280(%rbp)
leaq -0x278(%rbp), %rdi
leaq -0x280(%rbp), %rsi
callq 0x24b00
testb $0x1, %al
jne 0x22ec1
jmp 0x22ec3
jmp 0x22f11
leaq 0x13376(%rip), %rdi     # 0x36240
leaq 0x12449(%rip), %rsi     # 0x3531a
movl $0x411, %edx            # imm = 0x411
leaq 0x1332e(%rip), %rcx     # 0x3620b
callq 0x4210
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x220(%rbp)
movl %eax, -0x224(%rbp)
leaq -0x268(%rbp), %rdi
callq 0x4200
leaq -0x248(%rbp), %rdi
callq 0x4200
jmp 0x2304f
movq -0x2a8(%rbp), %rdi
addq $0x50, %rdi
leaq -0x248(%rbp), %rsi
callq 0x17110
movq %rax, -0x2f0(%rbp)
jmp 0x22f31
movq -0x2f0(%rbp), %rdi
leaq -0x268(%rbp), %rsi
callq 0x171c0
movq %rax, -0x2f8(%rbp)
jmp 0x22f4d
movq -0x2a8(%rbp), %rdi
movq -0x2f8(%rbp), %rax
movq %rax, -0x288(%rbp)
addq $0x50, %rdi
leaq -0x248(%rbp), %rsi
callq 0x17110
movq %rax, -0x300(%rbp)
jmp 0x22f7b
movq -0x300(%rbp), %rdi
callq 0x171f0
movq %rax, -0x290(%rbp)
leaq -0x288(%rbp), %rdi
leaq -0x290(%rbp), %rsi
callq 0x17190
testb $0x1, %al
jne 0x22fa7
jmp 0x22fa9
jmp 0x22fc8
leaq 0x132bf(%rip), %rdi     # 0x3626f
leaq 0x12363(%rip), %rsi     # 0x3531a
movl $0x412, %edx            # imm = 0x412
leaq 0x13248(%rip), %rcx     # 0x3620b
callq 0x4210
movq -0x2a8(%rbp), %rdi
addq $0x50, %rdi
leaq -0x248(%rbp), %rsi
callq 0x17110
movq %rax, -0x308(%rbp)
jmp 0x22fe8
movq -0x308(%rbp), %rdi
leaq -0x268(%rbp), %rsi
callq 0x17220
movq %rax, -0x310(%rbp)
jmp 0x23004
movq -0x310(%rbp), %rax
movq (%rax), %rdi
movsd -0x270(%rbp), %xmm0
callq 0x24ac0
jmp 0x2301d
jmp 0x22dc6
leaq -0x268(%rbp), %rdi
callq 0x4200
leaq -0x248(%rbp), %rdi
callq 0x4200
leaq -0x218(%rbp), %rdi
callq 0x40f0
addq $0x310, %rsp            # imm = 0x310
popq %rbp
retq
leaq -0x218(%rbp), %rdi
callq 0x40f0
movq -0x220(%rbp), %rdi
callq 0x46d0
nopw (%rax,%rax)