// File: /workspace/github_cpp_makefile_star2_O1/kulpreet[P]lightning-network-graph-analysis/src/readgraph_test.cpp
// Function: Degrees::degrees_invoker()
BOOST_AUTO_TEST_CASE(degrees) {
  vector<Degree> expected_in = boost::assign::list_of(1)(1)(2);
  vector<Degree> expected_out = boost::assign::list_of(2)(1)(1);
  vector<Degree> expected_total = boost::assign::list_of(3)(2)(3);

  vector<Degree> in_degrees, out_degrees, degrees;
  get_degrees(in_degrees, out_degrees, degrees, g);
  BOOST_TEST(in_degrees == expected_in, tt::per_element());
  BOOST_TEST(out_degrees == expected_out, tt::per_element());
  BOOST_TEST(degrees == expected_total, tt::per_element());
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x298, %rsp            # imm = 0x298
movq 0x20e62(%rip), %rbx     # 0x2a348
leaq 0x12c98(%rip), %r12     # 0x1c185
movq %r12, 0x68(%rsp)
leaq 0x12ca2(%rip), %r13     # 0x1c19b
movq %r13, 0x70(%rsp)
leaq 0xb0(%rsp), %r14
movl $0x198, %edx            # imm = 0x198
movq %r14, %rdi
xorl %esi, %esi
callq 0x7190
movq %r14, %rdi
callq 0x7380
leaq 0x238(%rsp), %r15
movq %r15, -0x10(%r15)
movq $0x0, -0x8(%r15)
movb $0x0, (%r15)
leaq 0x78(%rsp), %rsi
movb $0x22, (%rsi)
movl $0x1, %edx
movq %r14, %rdi
callq 0x7310
leaq 0x12c4b(%rip), %rsi     # 0x1c19c
leaq 0xb0(%rsp), %rdi
movl $0x7, %edx
callq 0x7310
leaq 0x12c8a(%rip), %rsi     # 0x1c1f4
leaq 0xb0(%rsp), %rdi
movl $0xe, %edx
callq 0x7310
leaq 0xb8(%rsp), %rsi
leaq 0x78(%rsp), %rdi
callq 0x7430
leaq 0x228(%rsp), %rdi
leaq 0x78(%rsp), %r14
movq %r14, %rsi
callq 0x7350
movq (%r14), %rdi
leaq 0x88(%rsp), %rax
cmpq %rax, %rdi
je 0x95c3
movq 0x88(%rsp), %rsi
incq %rsi
callq 0x72a0
movq 0x228(%rsp), %rax
leaq 0x288(%rsp), %rcx
movq %rax, (%rcx)
addq 0x230(%rsp), %rax
movq %rax, 0x8(%rcx)
leaq 0x68(%rsp), %rsi
movl $0x31, %edx
movq %rbx, %rdi
callq 0x7550
movq 0x228(%rsp), %rdi
cmpq %r15, %rdi
je 0x9611
movq 0x238(%rsp), %rsi
incq %rsi
callq 0x72a0
movq 0x20988(%rip), %rsi     # 0x29fa0
leaq 0xb0(%rsp), %rdi
callq 0x7170
leaq 0x120(%rsp), %rdi
callq 0x70e0
leaq 0x78(%rsp), %rdi
callq 0xad6a
movq 0x20d05(%rip), %rbx     # 0x2a348
movq %r12, 0x58(%rsp)
movq %r13, 0x60(%rsp)
leaq 0xb0(%rsp), %r14
movl $0x198, %edx            # imm = 0x198
movq %r14, %rdi
xorl %esi, %esi
callq 0x7190
movq %r14, %rdi
callq 0x7380
leaq 0xb0(%rsp), %rdi
movq %r15, 0x178(%rdi)
movq $0x0, 0x180(%rdi)
movb $0x0, 0x188(%rdi)
leaq 0x8(%rsp), %rsi
movb $0x22, (%rsi)
movl $0x1, %edx
callq 0x7310
leaq 0x12af6(%rip), %rsi     # 0x1c19c
leaq 0xb0(%rsp), %rdi
movl $0x7, %edx
callq 0x7310
leaq 0x12b44(%rip), %rsi     # 0x1c203
leaq 0xb0(%rsp), %rdi
movl $0xf, %edx
callq 0x7310
leaq 0xb8(%rsp), %rsi
leaq 0x8(%rsp), %rdi
callq 0x7430
leaq 0x228(%rsp), %rdi
leaq 0x8(%rsp), %r14
movq %r14, %rsi
callq 0x7350
movq (%r14), %rdi
leaq 0x18(%rsp), %rbp
cmpq %rbp, %rdi
je 0x9712
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x72a0
movq 0x228(%rsp), %rax
leaq 0x278(%rsp), %rcx
movq %rax, (%rcx)
addq 0x230(%rsp), %rax
movq %rax, 0x8(%rcx)
leaq 0x58(%rsp), %rsi
movl $0x31, %edx
movq %rbx, %rdi
callq 0x7550
movq 0x228(%rsp), %rdi
cmpq %r15, %rdi
je 0x9760
movq 0x238(%rsp), %rsi
incq %rsi
callq 0x72a0
movq 0x20839(%rip), %rsi     # 0x29fa0
leaq 0xb0(%rsp), %rdi
callq 0x7170
leaq 0x120(%rsp), %rdi
callq 0x70e0
movq 0x20bc0(%rip), %rbx     # 0x2a348
movq %r12, 0x48(%rsp)
movq %r13, 0x50(%rsp)
leaq 0xb0(%rsp), %r14
movl $0x198, %edx            # imm = 0x198
movq %r14, %rdi
xorl %esi, %esi
callq 0x7190
movq %r14, %rdi
callq 0x7380
leaq 0xb0(%rsp), %rdi
movq %r15, 0x178(%rdi)
movq $0x0, 0x180(%rdi)
movb $0x0, 0x188(%rdi)
leaq 0x8(%rsp), %rsi
movb $0x22, (%rsi)
movl $0x1, %edx
callq 0x7310
leaq 0x129b1(%rip), %rsi     # 0x1c19c
leaq 0xb0(%rsp), %rdi
movl $0x7, %edx
callq 0x7310
leaq 0x12a0f(%rip), %rsi     # 0x1c213
leaq 0xb0(%rsp), %rdi
movl $0xc, %edx
callq 0x7310
leaq 0xb8(%rsp), %rsi
leaq 0x8(%rsp), %rdi
callq 0x7430
leaq 0x228(%rsp), %rdi
leaq 0x8(%rsp), %r14
movq %r14, %rsi
callq 0x7350
movq (%r14), %rdi
cmpq %rbp, %rdi
je 0x9852
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x72a0
movq 0x228(%rsp), %rax
leaq 0x268(%rsp), %rcx
movq %rax, (%rcx)
addq 0x230(%rsp), %rax
movq %rax, 0x8(%rcx)
leaq 0x48(%rsp), %rsi
movl $0x31, %edx
movq %rbx, %rdi
callq 0x7550
movq 0x228(%rsp), %rdi
cmpq %r15, %rdi
je 0x98a0
movq 0x238(%rsp), %rsi
incq %rsi
callq 0x72a0
movq 0x206f9(%rip), %rsi     # 0x29fa0
leaq 0xb0(%rsp), %rdi
callq 0x7170
leaq 0x120(%rsp), %rdi
callq 0x70e0
leaq 0x78(%rsp), %rdi
callq 0x9bae
movq 0x20a76(%rip), %rbx     # 0x2a348
movq %r12, 0x38(%rsp)
movq %r13, 0x40(%rsp)
leaq 0xb0(%rsp), %r14
movl $0x198, %edx            # imm = 0x198
movq %r14, %rdi
xorl %esi, %esi
callq 0x7190
movq %r14, %rdi
callq 0x7380
leaq 0xb0(%rsp), %rdi
movq %r15, 0x178(%rdi)
movq $0x0, 0x180(%rdi)
movb $0x0, 0x188(%rdi)
leaq 0x8(%rsp), %rsi
movb $0x22, (%rsi)
movl $0x1, %edx
callq 0x7310
leaq 0x12867(%rip), %rsi     # 0x1c19c
leaq 0xb0(%rsp), %rdi
movl $0x7, %edx
callq 0x7310
leaq 0x128d2(%rip), %rsi     # 0x1c220
leaq 0xb0(%rsp), %rdi
movl $0x12, %edx
callq 0x7310
leaq 0xb8(%rsp), %rsi
leaq 0x8(%rsp), %rdi
callq 0x7430
leaq 0x228(%rsp), %rdi
leaq 0x8(%rsp), %r14
movq %r14, %rsi
callq 0x7350
movq (%r14), %rdi
cmpq %rbp, %rdi
je 0x999c
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x72a0
movq 0x228(%rsp), %rax
leaq 0x258(%rsp), %rcx
movq %rax, (%rcx)
addq 0x230(%rsp), %rax
movq %rax, 0x8(%rcx)
leaq 0x38(%rsp), %rsi
movl $0x31, %edx
movq %rbx, %rdi
callq 0x7550
movq 0x228(%rsp), %rdi
cmpq %r15, %rdi
je 0x99ea
movq 0x238(%rsp), %rsi
incq %rsi
callq 0x72a0
movq 0x205af(%rip), %rsi     # 0x29fa0
leaq 0xb0(%rsp), %rdi
callq 0x7170
leaq 0x120(%rsp), %rdi
callq 0x70e0
movq 0x20936(%rip), %rbx     # 0x2a348
movq %r12, 0x28(%rsp)
movq %r13, 0x30(%rsp)
leaq 0xb0(%rsp), %r14
movl $0x198, %edx            # imm = 0x198
movq %r14, %rdi
xorl %esi, %esi
callq 0x7190
movq %r14, %rdi
callq 0x7380
leaq 0xb0(%rsp), %rdi
movq %r15, 0x178(%rdi)
movq $0x0, 0x180(%rdi)
movb $0x0, 0x188(%rdi)
leaq 0x8(%rsp), %rsi
movb $0x22, (%rsi)
movl $0x1, %edx
callq 0x7310
leaq 0x12727(%rip), %rsi     # 0x1c19c
leaq 0xb0(%rsp), %rdi
movl $0x7, %edx
callq 0x7310
leaq 0x127a5(%rip), %rsi     # 0x1c233
leaq 0xb0(%rsp), %rdi
movl $0xe, %edx
callq 0x7310
leaq 0xb8(%rsp), %rsi
leaq 0x8(%rsp), %rdi
callq 0x7430
leaq 0x228(%rsp), %rdi
leaq 0x8(%rsp), %r14
movq %r14, %rsi
callq 0x7350
movq (%r14), %rdi
cmpq %rbp, %rdi
je 0x9adc
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x72a0
movq 0x228(%rsp), %rax
leaq 0x248(%rsp), %rcx
movq %rax, (%rcx)
addq 0x230(%rsp), %rax
movq %rax, 0x8(%rcx)
leaq 0x28(%rsp), %rsi
movl $0x31, %edx
movq %rbx, %rdi
callq 0x7550
movq 0x228(%rsp), %rdi
cmpq %r15, %rdi
je 0x9b2a
movq 0x238(%rsp), %rsi
incq %rsi
callq 0x72a0
movq 0x2046f(%rip), %rsi     # 0x29fa0
leaq 0xb0(%rsp), %rdi
callq 0x7170
leaq 0x120(%rsp), %rdi
callq 0x70e0
leaq 0x78(%rsp), %rdi
callq 0xacb2
addq $0x298, %rsp            # imm = 0x298
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x9b6f
jmp 0x9b6f
jmp 0x9b6f
jmp 0x9b6f
movq %rax, %rbx
jmp 0x9b8a
jmp 0x9b7a
jmp 0x9b7a
jmp 0x9b7a
movq %rax, %rbx
leaq 0xb0(%rsp), %rdi
callq 0xac74
leaq 0x78(%rsp), %rdi
callq 0xacb2
movq %rbx, %rdi
callq 0x74e0
movq %rax, %rbx
leaq 0xb0(%rsp), %rdi
callq 0xac74
jmp 0x9b94