// File: iPapatsoris[P]Maximum-Independent-Set/src/Mis.cpp
// Function: Mis::printAll(std::vector<unsigned int, std::allocator<unsigned int>>&) const
void Mis::printAll(vector<uint32_t> &zeroDegreeNodes) const {
    cout << "\nMis:\n";
    for (auto node: mis) {
        cout << node << "\n";
    }
    cout << "\nZero degree nodes:\n";
    for (auto node: zeroDegreeNodes) {
        cout << node << "\n";
    }

    cout << "\nSubsequent nodes:\n";
    for (auto &subsequent: subsequentNodes) {
        cout << subsequent.first << " -> " << subsequent.second << "\n";
    }


    cout << "\nHypernodes:\n";
    for (auto &hypernode: hypernodeToInnernode) {
        cout << hypernode.first << ", outer " << hypernode.second.outerLevel << "\n";
        for (auto node: hypernode.second.nodes) {
            cout << " node  " << node << "\n";
        }
        for (auto node: hypernode.second.neighbors) {
            cout << " neighbor " << node << "\n";
        }
    }
}

// Assembly:
subq $0xd8, %rsp
movq %rdi, 0xd0(%rsp)
movq %rsi, 0xc8(%rsp)
movq 0xd0(%rsp), %rax
movq %rax, (%rsp)
movq 0x1bec6(%rip), %rdi     # 0x5dfd0
leaq 0x4eaf(%rip), %rsi      # 0x46fc0
callq 0x2190
movq (%rsp), %rax
movq %rax, 0xc0(%rsp)
movq 0xc0(%rsp), %rdi
callq 0x193b0
movq %rax, 0xb8(%rsp)
movq 0xc0(%rsp), %rdi
callq 0x19420
movq %rax, 0xb0(%rsp)
leaq 0xb8(%rsp), %rdi
leaq 0xb0(%rsp), %rsi
callq 0x193e0
testb $0x1, %al
jne 0x42167
jmp 0x421ae
leaq 0xb8(%rsp), %rdi
callq 0x19450
movl (%rax), %eax
movl %eax, 0xac(%rsp)
movl 0xac(%rsp), %esi
movq 0x1be45(%rip), %rdi     # 0x5dfd0
callq 0x2230
movq %rax, %rdi
leaq 0x441a(%rip), %rsi      # 0x465b4
callq 0x2190
leaq 0xb8(%rsp), %rdi
callq 0x23ff0
jmp 0x4214c
movq 0x1be1b(%rip), %rdi     # 0x5dfd0
leaq 0x4e0b(%rip), %rsi      # 0x46fc7
callq 0x2190
movq 0xc8(%rsp), %rax
movq %rax, 0xa0(%rsp)
movq 0xa0(%rsp), %rdi
callq 0x19b50
movq %rax, 0x98(%rsp)
movq 0xa0(%rsp), %rdi
callq 0x1a0e0
movq %rax, 0x90(%rsp)
leaq 0x98(%rsp), %rdi
leaq 0x90(%rsp), %rsi
callq 0x1a110
testb $0x1, %al
jne 0x42216
jmp 0x4225d
leaq 0x98(%rsp), %rdi
callq 0x1a150
movl (%rax), %eax
movl %eax, 0x8c(%rsp)
movl 0x8c(%rsp), %esi
movq 0x1bd96(%rip), %rdi     # 0x5dfd0
callq 0x2230
movq %rax, %rdi
leaq 0x436b(%rip), %rsi      # 0x465b4
callq 0x2190
leaq 0x98(%rsp), %rdi
callq 0x1a160
jmp 0x421fb
movq 0x1bd6c(%rip), %rdi     # 0x5dfd0
leaq 0x4d71(%rip), %rsi      # 0x46fdc
callq 0x2190
movq (%rsp), %rax
addq $0x50, %rax
movq %rax, 0x80(%rsp)
movq 0x80(%rsp), %rdi
callq 0x42f30
movq %rax, 0x78(%rsp)
movq 0x80(%rsp), %rdi
callq 0x42f60
movq %rax, 0x70(%rsp)
leaq 0x78(%rsp), %rdi
leaq 0x70(%rsp), %rsi
callq 0x42e90
testb $0x1, %al
jne 0x422b9
jmp 0x42315
leaq 0x78(%rsp), %rdi
callq 0x42f90
movq %rax, 0x68(%rsp)
movq 0x68(%rsp), %rax
movl (%rax), %esi
movq 0x1bcfa(%rip), %rdi     # 0x5dfd0
callq 0x2230
movq %rax, %rdi
leaq 0x4d0b(%rip), %rsi      # 0x46ff0
callq 0x2190
movq %rax, %rdi
movq 0x68(%rsp), %rax
movl 0x4(%rax), %esi
callq 0x2230
movq %rax, %rdi
leaq 0x42b0(%rip), %rsi      # 0x465b4
callq 0x2190
leaq 0x78(%rsp), %rdi
callq 0x42fb0
jmp 0x422a4
movq 0x1bcb4(%rip), %rdi     # 0x5dfd0
leaq 0x4cd2(%rip), %rsi      # 0x46ff5
callq 0x2190
movq (%rsp), %rax
addq $0x18, %rax
movq %rax, 0x60(%rsp)
movq 0x60(%rsp), %rdi
callq 0x42db0
movq %rax, 0x58(%rsp)
movq 0x60(%rsp), %rdi
callq 0x42de0
movq %rax, 0x50(%rsp)
leaq 0x58(%rsp), %rdi
leaq 0x50(%rsp), %rsi
callq 0x42530
testb $0x1, %al
jne 0x4236b
jmp 0x424eb
leaq 0x58(%rsp), %rdi
callq 0x42e10
movq %rax, 0x48(%rsp)
movq 0x48(%rsp), %rax
movl (%rax), %esi
movq 0x1bc48(%rip), %rdi     # 0x5dfd0
callq 0x2230
movq %rax, %rdi
leaq 0x4c6c(%rip), %rsi      # 0x47003
callq 0x2190
movq %rax, %rdi
movq 0x48(%rsp), %rax
movb 0x38(%rax), %al
andb $0x1, %al
movzbl %al, %esi
callq 0x2330
movq %rax, %rdi
leaq 0x41f9(%rip), %rsi      # 0x465b4
callq 0x2190
movq 0x48(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x40(%rsp)
movq 0x40(%rsp), %rdi
callq 0x193b0
movq %rax, 0x38(%rsp)
movq 0x40(%rsp), %rdi
callq 0x19420
movq %rax, 0x30(%rsp)
leaq 0x38(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0x193e0
testb $0x1, %al
jne 0x42401
jmp 0x4244b
leaq 0x38(%rsp), %rdi
callq 0x19450
movl (%rax), %eax
movl %eax, 0x2c(%rsp)
movq 0x1bbb8(%rip), %rdi     # 0x5dfd0
leaq 0x4bed(%rip), %rsi      # 0x4700c
callq 0x2190
movq %rax, %rdi
movl 0x2c(%rsp), %esi
callq 0x2230
movq %rax, %rdi
leaq 0x417a(%rip), %rsi      # 0x465b4
callq 0x2190
leaq 0x38(%rsp), %rdi
callq 0x23ff0
jmp 0x423ec
movq 0x48(%rsp), %rax
addq $0x8, %rax
addq $0x18, %rax
movq %rax, 0x20(%rsp)
movq 0x20(%rsp), %rdi
callq 0x193b0
movq %rax, 0x18(%rsp)
movq 0x20(%rsp), %rdi
callq 0x19420
movq %rax, 0x10(%rsp)
leaq 0x18(%rsp), %rdi
leaq 0x10(%rsp), %rsi
callq 0x193e0
testb $0x1, %al
jne 0x42490
jmp 0x424da
leaq 0x18(%rsp), %rdi
callq 0x19450
movl (%rax), %eax
movl %eax, 0xc(%rsp)
movq 0x1bb29(%rip), %rdi     # 0x5dfd0
leaq 0x4b66(%rip), %rsi      # 0x47014
callq 0x2190
movq %rax, %rdi
movl 0xc(%rsp), %esi
callq 0x2230
movq %rax, %rdi
leaq 0x40eb(%rip), %rsi      # 0x465b4
callq 0x2190
leaq 0x18(%rsp), %rdi
callq 0x23ff0
jmp 0x4247b
jmp 0x424dc
leaq 0x58(%rsp), %rdi
callq 0x42e30
jmp 0x42353
addq $0xd8, %rsp
retq
nopw %cs:(%rax,%rax)
nopl (%rax)