// File: /workspace/github_cpp_makefile_star2_O3/GAStudyGroup[P]GPX2/src/cross/gpx/sources/Partition.cpp
// Function: operator<<(std::ostream&, Partition const&)
ostream& operator<<(ostream& output, const Partition& partition)
{
    output << "Partition " << partition.id << "\n";
    output << "Nodes: ";
    for (string i : partition.nodes) {
        output << i << " ";
    }
    output << "\n";
    output << "Access List: ";
    for (string i : partition.accessNodes) {
        output << i << " ";
    }
    output << "connectedTo: \n";
    for (auto a : partition.connectedTo) {
        //output << "partition " << a.first << " by node " << a.second.first << " wity " << a.second.second << "\n";
        output << "partition " << a.connectedPartition << " by node " << a.node << " with " << a.connectedNode << "\n";
    }
    output << "connections: \n";
    for (auto a : partition.connections) {
        output << a.first << " with " << a.second << "\n";
    }
    output.flush();
    return (output);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x58, %rsp
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x7f82(%rip), %rsi      # 0x328d0
movl $0xa, %edx
callq 0x5430
movl (%r14), %esi
movq %rbx, %rdi
callq 0x5630
leaq 0x7e99(%rip), %rsi      # 0x32803
movl $0x1, %edx
movq %rax, %rdi
callq 0x5430
leaq 0x7f5d(%rip), %rsi      # 0x328db
movl $0x7, %edx
movq %rbx, %rdi
callq 0x5430
movq 0x8(%r14), %r12
movq %r14, 0x50(%rsp)
movq 0x10(%r14), %r13
cmpq %r13, %r12
je 0x2aa09
leaq 0x18(%rsp), %rbp
leaq 0x8(%rsp), %r14
leaq 0x69ea(%rip), %r15      # 0x31398
movq %rbp, 0x8(%rsp)
movq (%r12), %rsi
movq 0x8(%r12), %rdx
addq %rsi, %rdx
movq %r14, %rdi
callq 0x82fa
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x5430
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x5430
movq 0x8(%rsp), %rdi
cmpq %rbp, %rdi
je 0x2aa00
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x53b0
addq $0x20, %r12
cmpq %r13, %r12
jne 0x2a9ae
leaq 0x7df3(%rip), %rsi      # 0x32803
movl $0x1, %edx
movq %rbx, %rdi
callq 0x5430
leaq 0x7ebf(%rip), %rsi      # 0x328e3
movl $0xd, %edx
movq %rbx, %rdi
callq 0x5430
movq 0x50(%rsp), %rax
movq 0x20(%rax), %r12
movq 0x28(%rax), %r13
cmpq %r13, %r12
je 0x2aaaf
leaq 0x18(%rsp), %rbp
leaq 0x8(%rsp), %r14
leaq 0x6944(%rip), %r15      # 0x31398
movq %rbp, 0x8(%rsp)
movq (%r12), %rsi
movq 0x8(%r12), %rdx
addq %rsi, %rdx
movq %r14, %rdi
callq 0x82fa
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x5430
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x5430
movq 0x8(%rsp), %rdi
cmpq %rbp, %rdi
je 0x2aaa6
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x53b0
addq $0x20, %r12
cmpq %r13, %r12
jne 0x2aa54
leaq 0x7e3b(%rip), %rsi      # 0x328f1
movl $0xe, %edx
movq %rbx, %rdi
callq 0x5430
movq 0x50(%rsp), %rax
movq 0x50(%rax), %r13
movq 0x58(%rax), %rbp
cmpq %rbp, %r13
je 0x2abe0
leaq 0x20(%rsp), %r14
leaq 0x40(%rsp), %r15
movl (%r13), %eax
movl %eax, 0x8(%rsp)
movq %r14, 0x10(%rsp)
movq 0x8(%r13), %rsi
movq 0x10(%r13), %rdx
addq %rsi, %rdx
leaq 0x10(%rsp), %rdi
callq 0x82fa
movq %r15, 0x30(%rsp)
movq 0x28(%r13), %rsi
movq 0x30(%r13), %rdx
addq %rsi, %rdx
leaq 0x30(%rsp), %rdi
callq 0x82fa
movl $0xa, %edx
movq %rbx, %rdi
leaq 0x7dd2(%rip), %rsi      # 0x32900
callq 0x5430
movl 0x8(%rsp), %esi
movq %rbx, %rdi
callq 0x5630
movq %rax, %r12
movl $0x9, %edx
movq %rax, %rdi
leaq 0x7dba(%rip), %rsi      # 0x3290b
callq 0x5430
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
movq %r12, %rdi
callq 0x5430
movq %rax, %r12
movl $0x6, %edx
movq %rax, %rdi
leaq 0x7d9b(%rip), %rsi      # 0x32915
callq 0x5430
movq 0x30(%rsp), %rsi
movq 0x38(%rsp), %rdx
movq %r12, %rdi
callq 0x5430
movl $0x1, %edx
movq %rax, %rdi
leaq 0x7c63(%rip), %rsi      # 0x32803
callq 0x5430
movq 0x30(%rsp), %rdi
cmpq %r15, %rdi
je 0x2abbc
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x53b0
movq 0x10(%rsp), %rdi
cmpq %r14, %rdi
je 0x2abd3
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x53b0
addq $0x48, %r13
cmpq %rbp, %r13
jne 0x2aae3
leaq 0x7d35(%rip), %rsi      # 0x3291c
movl $0xe, %edx
movq %rbx, %rdi
callq 0x5430
movq 0x50(%rsp), %rax
movq 0x68(%rax), %r13
movq 0x70(%rax), %r14
cmpq %r14, %r13
je 0x2ac57
leaq 0x7bf6(%rip), %r15      # 0x32803
movl (%r13), %esi
movl 0x4(%r13), %ebp
movq %rbx, %rdi
callq 0x5630
movq %rax, %r12
movl $0x6, %edx
movq %rax, %rdi
leaq 0x7ce6(%rip), %rsi      # 0x32915
callq 0x5430
movq %r12, %rdi
movl %ebp, %esi
callq 0x5630
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x5430
addq $0x8, %r13
cmpq %r14, %r13
jne 0x2ac0d
movq %rbx, %rdi
callq 0x5290
movq %rbx, %rax
addq $0x58, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
movq 0x10(%rsp), %rdi
cmpq %r14, %rdi
je 0x2acb0
movq 0x20(%rsp), %rsi
jmp 0x2ac99
jmp 0x2ac87
movq %rax, %rbx
movq 0x8(%rsp), %rdi
cmpq %rbp, %rdi
je 0x2acb0
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x53b0
jmp 0x2acb0
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x25214
movq %rbx, %rdi
callq 0x5660