// File: sharmaeklavya2[P]ddos-on-anycast/src/lib/network.cpp
// Function: Network::print(_IO_FILE*, bool) const
void Network::print(FILE* fp, bool print_virtual) const {
    for(int u=0; u<size(); ++u) {
        if(print_virtual || netsize[u] == 0) {
            fprintf(fp, "%d:\n  nid: %d, netsize: %d, depth: %d,\n", u, nid[u], netsize[u], depth[u]);
            fprintf(fp, "  in_nbrs: ");
            print_icont(fp, in_nbrs[u], ", ", "[", "],\n");
            fprintf(fp, "  side_nbrs: ");
            print_icont(fp, side_nbrs[u], ", ", "[", "],\n");
            fprintf(fp, "  up_nbrs: ");
            print_icont(fp, up_nbrs[u], ", ", "[", "],\n");
            fprintf(fp, "  down_nbrs: ");
            print_icont(fp, down_nbrs[u], ", ", "[", "]\n");
        }
    }
    fprintf(fp, "depthwise:\n");
    for(size_t i=0; i<depthwise.size(); ++i) {
        fprintf(fp, "  %zd: ", i);
        print_icont(fp, depthwise[i], ", ", "[", "]\n");
    }
}

// Assembly:
subq $0x78, %rsp
movb %dl, %al
movq %rdi, 0x70(%rsp)
movq %rsi, 0x68(%rsp)
andb $0x1, %al
movb %al, 0x67(%rsp)
movq 0x70(%rsp), %rax
movq %rax, 0x50(%rsp)
movl $0x0, 0x60(%rsp)
movq 0x50(%rsp), %rdi
movl 0x60(%rsp), %eax
movl %eax, 0x4c(%rsp)
callq 0x4950
movl %eax, %ecx
movl 0x4c(%rsp), %eax
cmpl %ecx, %eax
jge 0x334e
testb $0x1, 0x67(%rsp)
jne 0x317b
movq 0x50(%rsp), %rdi
addq $0x18, %rdi
movslq 0x60(%rsp), %rsi
callq 0x4970
cmpl $0x0, (%rax)
jne 0x333c
movq 0x50(%rsp), %rdi
movq 0x68(%rsp), %rax
movq %rax, 0x10(%rsp)
movl 0x60(%rsp), %eax
movl %eax, 0x1c(%rsp)
movslq 0x60(%rsp), %rsi
callq 0x4970
movq 0x50(%rsp), %rdi
movl (%rax), %eax
movl %eax, 0x20(%rsp)
addq $0x18, %rdi
movslq 0x60(%rsp), %rsi
callq 0x4970
movq 0x50(%rsp), %rdi
movl (%rax), %eax
movl %eax, 0x24(%rsp)
addq $0x30, %rdi
movslq 0x60(%rsp), %rsi
callq 0x4970
movq 0x10(%rsp), %rdi
movl 0x1c(%rsp), %edx
movl 0x20(%rsp), %ecx
movl 0x24(%rsp), %r8d
movl (%rax), %r9d
leaq 0x1df1d(%rip), %rsi     # 0x21107
movb $0x0, %al
callq 0x2180
movq 0x68(%rsp), %rdi
leaq 0x1df32(%rip), %rsi     # 0x2112f
movb $0x0, %al
callq 0x2180
movq 0x50(%rsp), %rdi
movq 0x68(%rsp), %rax
movq %rax, 0x28(%rsp)
addq $0x48, %rdi
movslq 0x60(%rsp), %rsi
callq 0x4a60
movq 0x28(%rsp), %rdi
movq %rax, %rsi
leaq 0x1df0b(%rip), %rdx     # 0x2113b
leaq 0x1e2d7(%rip), %rcx     # 0x2150e
leaq 0x1df00(%rip), %r8      # 0x2113e
callq 0x4db0
movq 0x68(%rsp), %rdi
leaq 0x1def3(%rip), %rsi     # 0x21142
movb $0x0, %al
callq 0x2180
movq 0x50(%rsp), %rdi
movq 0x68(%rsp), %rax
movq %rax, 0x30(%rsp)
addq $0x60, %rdi
movslq 0x60(%rsp), %rsi
callq 0x4a60
movq 0x30(%rsp), %rdi
movq %rax, %rsi
leaq 0x1deb9(%rip), %rdx     # 0x2113b
leaq 0x1e285(%rip), %rcx     # 0x2150e
leaq 0x1deae(%rip), %r8      # 0x2113e
callq 0x4db0
movq 0x68(%rsp), %rdi
leaq 0x1deaf(%rip), %rsi     # 0x21150
movb $0x0, %al
callq 0x2180
movq 0x50(%rsp), %rdi
movq 0x68(%rsp), %rax
movq %rax, 0x38(%rsp)
addq $0x78, %rdi
movslq 0x60(%rsp), %rsi
callq 0x4a60
movq 0x38(%rsp), %rdi
movq %rax, %rsi
leaq 0x1de67(%rip), %rdx     # 0x2113b
leaq 0x1e233(%rip), %rcx     # 0x2150e
leaq 0x1de5c(%rip), %r8      # 0x2113e
callq 0x4db0
movq 0x68(%rsp), %rdi
leaq 0x1de69(%rip), %rsi     # 0x2115c
movb $0x0, %al
callq 0x2180
movq 0x50(%rsp), %rdi
movq 0x68(%rsp), %rax
movq %rax, 0x40(%rsp)
addq $0x90, %rdi
movslq 0x60(%rsp), %rsi
callq 0x4a60
movq 0x40(%rsp), %rdi
movq %rax, %rsi
leaq 0x1de12(%rip), %rdx     # 0x2113b
leaq 0x1e1de(%rip), %rcx     # 0x2150e
leaq 0x1de33(%rip), %r8      # 0x2116a
callq 0x4db0
jmp 0x333e
movl 0x60(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x60(%rsp)
jmp 0x3138
movq 0x68(%rsp), %rdi
leaq 0x1de13(%rip), %rsi     # 0x2116d
movb $0x0, %al
callq 0x2180
movq $0x0, 0x58(%rsp)
movq 0x50(%rsp), %rdi
movq 0x58(%rsp), %rax
movq %rax, 0x8(%rsp)
addq $0xa8, %rdi
callq 0x4ee0
movq %rax, %rcx
movq 0x8(%rsp), %rax
cmpq %rcx, %rax
jae 0x33fd
movq 0x68(%rsp), %rdi
movq 0x58(%rsp), %rdx
leaq 0x1ddd6(%rip), %rsi     # 0x21179
movb $0x0, %al
callq 0x2180
movq 0x50(%rsp), %rdi
movq 0x68(%rsp), %rax
movq %rax, (%rsp)
addq $0xa8, %rdi
movq 0x58(%rsp), %rsi
callq 0x4a60
movq (%rsp), %rdi
movq %rax, %rsi
leaq 0x1dd64(%rip), %rdx     # 0x2113b
leaq 0x1e130(%rip), %rcx     # 0x2150e
leaq 0x1dd85(%rip), %r8      # 0x2116a
callq 0x4db0
movq 0x58(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x58(%rsp)
jmp 0x336a
addq $0x78, %rsp
retq
nopw %cs:(%rax,%rax)