// File: /workspace/github_cpp_makefile_star2_O2/chuckwolber[P]Cube/test/test_cube.cpp
// Function: test_sized_constructors(unsigned int)
void test_sized_constructors(unsigned int cubeSize) {
   Cube c1(CubieColor::WHITE,  cubeSize);
   Cube c2(CubieColor::BLUE,   cubeSize);
   Cube c3(CubieColor::GREEN,  cubeSize);
   Cube c4(CubieColor::ORANGE, cubeSize);
   Cube c5(CubieColor::RED,    cubeSize);
   Cube c6(CubieColor::YELLOW, cubeSize);

   Cube c1_cp(c1);
   Cube c2_cp(c2);
   Cube c3_cp(c3);
   Cube c4_cp(c4);
   Cube c5_cp(c5);
   Cube c6_cp(c6);

   verify_cube(c1, getExpected(CubieColor::WHITE,  cubeSize));
   verify_cube(c2, getExpected(CubieColor::BLUE,   cubeSize));
   verify_cube(c3, getExpected(CubieColor::GREEN,  cubeSize));
   verify_cube(c4, getExpected(CubieColor::ORANGE, cubeSize));
   verify_cube(c5, getExpected(CubieColor::RED,    cubeSize));
   verify_cube(c6, getExpected(CubieColor::YELLOW, cubeSize));

   verify_cube(c1_cp, getExpected(CubieColor::WHITE,  cubeSize));
   verify_cube(c2_cp, getExpected(CubieColor::BLUE,   cubeSize));
   verify_cube(c3_cp, getExpected(CubieColor::GREEN,  cubeSize));
   verify_cube(c4_cp, getExpected(CubieColor::ORANGE, cubeSize));
   verify_cube(c5_cp, getExpected(CubieColor::RED,    cubeSize));
   verify_cube(c6_cp, getExpected(CubieColor::YELLOW, cubeSize));

   Cube c1_mv(std::move(c1));
   Cube c2_mv(std::move(c2));
   Cube c3_mv(std::move(c3));
   Cube c4_mv(std::move(c4));
   Cube c5_mv(std::move(c5));
   Cube c6_mv(std::move(c6));

   verify_cube(c1_mv, getExpected(CubieColor::WHITE,  cubeSize));
   verify_cube(c2_mv, getExpected(CubieColor::BLUE,   cubeSize));
   verify_cube(c3_mv, getExpected(CubieColor::GREEN,  cubeSize));
   verify_cube(c4_mv, getExpected(CubieColor::ORANGE, cubeSize));
   verify_cube(c5_mv, getExpected(CubieColor::RED,    cubeSize));
   verify_cube(c6_mv, getExpected(CubieColor::YELLOW, cubeSize));
}

// Assembly:
pushq %rbx
subq $0x1290, %rsp           # imm = 0x1290
movl %edi, %ebx
leaq 0x408(%rsp), %rdi
pushq $0x77
popq %rsi
movl %ebx, %edx
callq 0x3bf6
leaq 0x390(%rsp), %rdi
pushq $0x62
popq %rsi
movl %ebx, %edx
callq 0x3bf6
leaq 0x318(%rsp), %rdi
pushq $0x67
popq %rsi
movl %ebx, %edx
callq 0x3bf6
leaq 0x2a0(%rsp), %rdi
pushq $0x6f
popq %rsi
movl %ebx, %edx
callq 0x3bf6
leaq 0x228(%rsp), %rdi
pushq $0x72
popq %rsi
movl %ebx, %edx
callq 0x3bf6
leaq 0x1b0(%rsp), %rdi
pushq $0x79
popq %rsi
movl %ebx, %edx
callq 0x3bf6
leaq 0x1218(%rsp), %rdi
leaq 0x408(%rsp), %rsi
callq 0x3c1c
leaq 0x11a0(%rsp), %rdi
leaq 0x390(%rsp), %rsi
callq 0x3c1c
leaq 0x1128(%rsp), %rdi
leaq 0x318(%rsp), %rsi
callq 0x3c1c
leaq 0x10b0(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x3c1c
leaq 0x1038(%rsp), %rdi
leaq 0x228(%rsp), %rsi
callq 0x3c1c
leaq 0xfc0(%rsp), %rdi
leaq 0x1b0(%rsp), %rsi
callq 0x3c1c
leaq 0xf48(%rsp), %rdi
leaq 0x408(%rsp), %rsi
callq 0x3c1c
leaq 0x198(%rsp), %rdi
pushq $0x77
popq %rsi
movl %ebx, %edx
callq 0x707a
leaq 0xf48(%rsp), %rdi
leaq 0x198(%rsp), %rsi
callq 0x6fb0
leaq 0x198(%rsp), %rdi
callq 0x48ec
leaq 0xf48(%rsp), %rdi
callq 0x3e50
leaq 0xed0(%rsp), %rdi
leaq 0x390(%rsp), %rsi
callq 0x3c1c
leaq 0x180(%rsp), %rdi
pushq $0x62
popq %rsi
movl %ebx, %edx
callq 0x707a
leaq 0xed0(%rsp), %rdi
leaq 0x180(%rsp), %rsi
callq 0x6fb0
leaq 0x180(%rsp), %rdi
callq 0x48ec
leaq 0xed0(%rsp), %rdi
callq 0x3e50
leaq 0xe58(%rsp), %rdi
leaq 0x318(%rsp), %rsi
callq 0x3c1c
leaq 0x168(%rsp), %rdi
pushq $0x67
popq %rsi
movl %ebx, %edx
callq 0x707a
leaq 0xe58(%rsp), %rdi
leaq 0x168(%rsp), %rsi
callq 0x6fb0
leaq 0x168(%rsp), %rdi
callq 0x48ec
leaq 0xe58(%rsp), %rdi
callq 0x3e50
leaq 0xde0(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x3c1c
leaq 0x150(%rsp), %rdi
pushq $0x6f
popq %rsi
movl %ebx, %edx
callq 0x707a
leaq 0xde0(%rsp), %rdi
leaq 0x150(%rsp), %rsi
callq 0x6fb0
leaq 0x150(%rsp), %rdi
callq 0x48ec
leaq 0xde0(%rsp), %rdi
callq 0x3e50
leaq 0xd68(%rsp), %rdi
leaq 0x228(%rsp), %rsi
callq 0x3c1c
leaq 0x138(%rsp), %rdi
pushq $0x72
popq %rsi
movl %ebx, %edx
callq 0x707a
leaq 0xd68(%rsp), %rdi
leaq 0x138(%rsp), %rsi
callq 0x6fb0
leaq 0x138(%rsp), %rdi
callq 0x48ec
leaq 0xd68(%rsp), %rdi
callq 0x3e50
leaq 0xcf0(%rsp), %rdi
leaq 0x1b0(%rsp), %rsi
callq 0x3c1c
leaq 0x120(%rsp), %rdi
pushq $0x79
popq %rsi
movl %ebx, %edx
callq 0x707a
leaq 0xcf0(%rsp), %rdi
leaq 0x120(%rsp), %rsi
callq 0x6fb0
leaq 0x120(%rsp), %rdi
callq 0x48ec
leaq 0xcf0(%rsp), %rdi
callq 0x3e50
leaq 0xc78(%rsp), %rdi
leaq 0x1218(%rsp), %rsi
callq 0x3c1c
leaq 0x108(%rsp), %rdi
pushq $0x77
popq %rsi
movl %ebx, %edx
callq 0x707a
leaq 0xc78(%rsp), %rdi
leaq 0x108(%rsp), %rsi
callq 0x6fb0
leaq 0x108(%rsp), %rdi
callq 0x48ec
leaq 0xc78(%rsp), %rdi
callq 0x3e50
leaq 0xc00(%rsp), %rdi
leaq 0x11a0(%rsp), %rsi
callq 0x3c1c
leaq 0xf0(%rsp), %rdi
pushq $0x62
popq %rsi
movl %ebx, %edx
callq 0x707a
leaq 0xc00(%rsp), %rdi
leaq 0xf0(%rsp), %rsi
callq 0x6fb0
leaq 0xf0(%rsp), %rdi
callq 0x48ec
leaq 0xc00(%rsp), %rdi
callq 0x3e50
leaq 0xb88(%rsp), %rdi
leaq 0x1128(%rsp), %rsi
callq 0x3c1c
leaq 0xd8(%rsp), %rdi
pushq $0x67
popq %rsi
movl %ebx, %edx
callq 0x707a
leaq 0xb88(%rsp), %rdi
leaq 0xd8(%rsp), %rsi
callq 0x6fb0
leaq 0xd8(%rsp), %rdi
callq 0x48ec
leaq 0xb88(%rsp), %rdi
callq 0x3e50
leaq 0xb10(%rsp), %rdi
leaq 0x10b0(%rsp), %rsi
callq 0x3c1c
leaq 0xc0(%rsp), %rdi
pushq $0x6f
popq %rsi
movl %ebx, %edx
callq 0x707a
leaq 0xb10(%rsp), %rdi
leaq 0xc0(%rsp), %rsi
callq 0x6fb0
leaq 0xc0(%rsp), %rdi
callq 0x48ec
leaq 0xb10(%rsp), %rdi
callq 0x3e50
leaq 0xa98(%rsp), %rdi
leaq 0x1038(%rsp), %rsi
callq 0x3c1c
leaq 0xa8(%rsp), %rdi
pushq $0x72
popq %rsi
movl %ebx, %edx
callq 0x707a
leaq 0xa98(%rsp), %rdi
leaq 0xa8(%rsp), %rsi
callq 0x6fb0
leaq 0xa8(%rsp), %rdi
callq 0x48ec
leaq 0xa98(%rsp), %rdi
callq 0x3e50
leaq 0xa20(%rsp), %rdi
leaq 0xfc0(%rsp), %rsi
callq 0x3c1c
leaq 0x90(%rsp), %rdi
pushq $0x79
popq %rsi
movl %ebx, %edx
callq 0x707a
leaq 0xa20(%rsp), %rdi
leaq 0x90(%rsp), %rsi
callq 0x6fb0
leaq 0x90(%rsp), %rdi
callq 0x48ec
leaq 0xa20(%rsp), %rdi
callq 0x3e50
leaq 0x9a8(%rsp), %rdi
leaq 0x408(%rsp), %rsi
callq 0x3c9c
leaq 0x930(%rsp), %rdi
leaq 0x390(%rsp), %rsi
callq 0x3c9c
leaq 0x8b8(%rsp), %rdi
leaq 0x318(%rsp), %rsi
callq 0x3c9c
leaq 0x840(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x3c9c
leaq 0x7c8(%rsp), %rdi
leaq 0x228(%rsp), %rsi
callq 0x3c9c
leaq 0x750(%rsp), %rdi
leaq 0x1b0(%rsp), %rsi
callq 0x3c9c
leaq 0x6d8(%rsp), %rdi
leaq 0x9a8(%rsp), %rsi
callq 0x3c1c
leaq 0x78(%rsp), %rdi
pushq $0x77
popq %rsi
movl %ebx, %edx
callq 0x707a
leaq 0x6d8(%rsp), %rdi
leaq 0x78(%rsp), %rsi
callq 0x6fb0
leaq 0x78(%rsp), %rdi
callq 0x48ec
leaq 0x6d8(%rsp), %rdi
callq 0x3e50
leaq 0x660(%rsp), %rdi
leaq 0x930(%rsp), %rsi
callq 0x3c1c
leaq 0x60(%rsp), %rdi
pushq $0x62
popq %rsi
movl %ebx, %edx
callq 0x707a
leaq 0x660(%rsp), %rdi
leaq 0x60(%rsp), %rsi
callq 0x6fb0
leaq 0x60(%rsp), %rdi
callq 0x48ec
leaq 0x660(%rsp), %rdi
callq 0x3e50
leaq 0x5e8(%rsp), %rdi
leaq 0x8b8(%rsp), %rsi
callq 0x3c1c
leaq 0x48(%rsp), %rdi
pushq $0x67
popq %rsi
movl %ebx, %edx
callq 0x707a
leaq 0x5e8(%rsp), %rdi
leaq 0x48(%rsp), %rsi
callq 0x6fb0
leaq 0x48(%rsp), %rdi
callq 0x48ec
leaq 0x5e8(%rsp), %rdi
callq 0x3e50
leaq 0x570(%rsp), %rdi
leaq 0x840(%rsp), %rsi
callq 0x3c1c
leaq 0x30(%rsp), %rdi
pushq $0x6f
popq %rsi
movl %ebx, %edx
callq 0x707a
leaq 0x570(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0x6fb0
leaq 0x30(%rsp), %rdi
callq 0x48ec
leaq 0x570(%rsp), %rdi
callq 0x3e50
leaq 0x4f8(%rsp), %rdi
leaq 0x7c8(%rsp), %rsi
callq 0x3c1c
leaq 0x18(%rsp), %rdi
pushq $0x72
popq %rsi
movl %ebx, %edx
callq 0x707a
leaq 0x4f8(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x6fb0
leaq 0x18(%rsp), %rdi
callq 0x48ec
leaq 0x4f8(%rsp), %rdi
callq 0x3e50
leaq 0x480(%rsp), %rdi
leaq 0x750(%rsp), %rsi
callq 0x3c1c
movq %rsp, %rdi
pushq $0x79
popq %rsi
movl %ebx, %edx
callq 0x707a
leaq 0x480(%rsp), %rdi
movq %rsp, %rsi
callq 0x6fb0
movq %rsp, %rdi
callq 0x48ec
leaq 0x480(%rsp), %rdi
callq 0x3e50
leaq 0x750(%rsp), %rdi
callq 0x3e50
leaq 0x7c8(%rsp), %rdi
callq 0x3e50
leaq 0x840(%rsp), %rdi
callq 0x3e50
leaq 0x8b8(%rsp), %rdi
callq 0x3e50
leaq 0x930(%rsp), %rdi
callq 0x3e50
leaq 0x9a8(%rsp), %rdi
callq 0x3e50
leaq 0xfc0(%rsp), %rdi
callq 0x3e50
leaq 0x1038(%rsp), %rdi
callq 0x3e50
leaq 0x10b0(%rsp), %rdi
callq 0x3e50
leaq 0x1128(%rsp), %rdi
callq 0x3e50
leaq 0x11a0(%rsp), %rdi
callq 0x3e50
leaq 0x1218(%rsp), %rdi
callq 0x3e50
leaq 0x1b0(%rsp), %rdi
callq 0x3e50
leaq 0x228(%rsp), %rdi
callq 0x3e50
leaq 0x2a0(%rsp), %rdi
callq 0x3e50
leaq 0x318(%rsp), %rdi
callq 0x3e50
leaq 0x390(%rsp), %rdi
callq 0x3e50
leaq 0x408(%rsp), %rdi
callq 0x3e50
addq $0x1290, %rsp           # imm = 0x1290
popq %rbx
retq
movq %rax, %rbx
movq %rsp, %rdi
callq 0x48ec
jmp 0x7ca6
movq %rax, %rbx
leaq 0x480(%rsp), %rdi
jmp 0x7d3d
movq %rax, %rbx
leaq 0x18(%rsp), %rdi
callq 0x48ec
jmp 0x7cc5
movq %rax, %rbx
leaq 0x4f8(%rsp), %rdi
jmp 0x7d3d
movq %rax, %rbx
leaq 0x30(%rsp), %rdi
callq 0x48ec
jmp 0x7ce1
movq %rax, %rbx
leaq 0x570(%rsp), %rdi
jmp 0x7d3d
movq %rax, %rbx
leaq 0x48(%rsp), %rdi
callq 0x48ec
jmp 0x7cfd
movq %rax, %rbx
leaq 0x5e8(%rsp), %rdi
jmp 0x7d3d
movq %rax, %rbx
leaq 0x60(%rsp), %rdi
callq 0x48ec
jmp 0x7d19
movq %rax, %rbx
leaq 0x660(%rsp), %rdi
jmp 0x7d3d
movq %rax, %rbx
leaq 0x78(%rsp), %rdi
callq 0x48ec
jmp 0x7d35
movq %rax, %rbx
leaq 0x6d8(%rsp), %rdi
callq 0x3e50
jmp 0x7f67
movq %rax, %rbx
jmp 0x7f74
movq %rax, %rbx
jmp 0x7f81
movq %rax, %rbx
jmp 0x7f8e
movq %rax, %rbx
jmp 0x7f9b
movq %rax, %rbx
jmp 0x7fa8
jmp 0x7fb7
movq %rax, %rbx
leaq 0x90(%rsp), %rdi
callq 0x48ec
jmp 0x7d89
movq %rax, %rbx
leaq 0xa20(%rsp), %rdi
jmp 0x7fb0
movq %rax, %rbx
leaq 0xa8(%rsp), %rdi
callq 0x48ec
jmp 0x7dab
movq %rax, %rbx
leaq 0xa98(%rsp), %rdi
jmp 0x7fb0
movq %rax, %rbx
leaq 0xc0(%rsp), %rdi
callq 0x48ec
jmp 0x7dcd
movq %rax, %rbx
leaq 0xb10(%rsp), %rdi
jmp 0x7fb0
movq %rax, %rbx
leaq 0xd8(%rsp), %rdi
callq 0x48ec
jmp 0x7def
movq %rax, %rbx
leaq 0xb88(%rsp), %rdi
jmp 0x7fb0
movq %rax, %rbx
leaq 0xf0(%rsp), %rdi
callq 0x48ec
jmp 0x7e11
movq %rax, %rbx
leaq 0xc00(%rsp), %rdi
jmp 0x7fb0
movq %rax, %rbx
leaq 0x108(%rsp), %rdi
callq 0x48ec
jmp 0x7e33
movq %rax, %rbx
leaq 0xc78(%rsp), %rdi
jmp 0x7fb0
movq %rax, %rbx
leaq 0x120(%rsp), %rdi
callq 0x48ec
jmp 0x7e55
movq %rax, %rbx
leaq 0xcf0(%rsp), %rdi
jmp 0x7fb0
movq %rax, %rbx
leaq 0x138(%rsp), %rdi
callq 0x48ec
jmp 0x7e77
movq %rax, %rbx
leaq 0xd68(%rsp), %rdi
jmp 0x7fb0
movq %rax, %rbx
leaq 0x150(%rsp), %rdi
callq 0x48ec
jmp 0x7e99
movq %rax, %rbx
leaq 0xde0(%rsp), %rdi
jmp 0x7fb0
movq %rax, %rbx
leaq 0x168(%rsp), %rdi
callq 0x48ec
jmp 0x7ebb
movq %rax, %rbx
leaq 0xe58(%rsp), %rdi
jmp 0x7fb0
movq %rax, %rbx
leaq 0x180(%rsp), %rdi
callq 0x48ec
jmp 0x7edd
movq %rax, %rbx
leaq 0xed0(%rsp), %rdi
jmp 0x7fb0
movq %rax, %rbx
leaq 0x198(%rsp), %rdi
callq 0x48ec
jmp 0x7eff
movq %rax, %rbx
leaq 0xf48(%rsp), %rdi
jmp 0x7fb0
movq %rax, %rbx
jmp 0x7fc7
movq %rax, %rbx
jmp 0x7fd4
movq %rax, %rbx
jmp 0x7fe1
movq %rax, %rbx
jmp 0x7fee
movq %rax, %rbx
jmp 0x7ffb
movq %rax, %rbx
jmp 0x8008
movq %rax, %rbx
jmp 0x8015
movq %rax, %rbx
jmp 0x8022
movq %rax, %rbx
jmp 0x802f
movq %rax, %rbx
jmp 0x803c
movq %rax, %rbx
jmp 0x8049
movq %rax, %rbx
leaq 0x750(%rsp), %rdi
callq 0x3e50
leaq 0x7c8(%rsp), %rdi
callq 0x3e50
leaq 0x840(%rsp), %rdi
callq 0x3e50
leaq 0x8b8(%rsp), %rdi
callq 0x3e50
leaq 0x930(%rsp), %rdi
callq 0x3e50
leaq 0x9a8(%rsp), %rdi
callq 0x3e50
jmp 0x7fba
movq %rax, %rbx
leaq 0xfc0(%rsp), %rdi
callq 0x3e50
leaq 0x1038(%rsp), %rdi
callq 0x3e50
leaq 0x10b0(%rsp), %rdi
callq 0x3e50
leaq 0x1128(%rsp), %rdi
callq 0x3e50
leaq 0x11a0(%rsp), %rdi
callq 0x3e50
leaq 0x1218(%rsp), %rdi
callq 0x3e50
leaq 0x1b0(%rsp), %rdi
callq 0x3e50
leaq 0x228(%rsp), %rdi
callq 0x3e50
leaq 0x2a0(%rsp), %rdi
callq 0x3e50
leaq 0x318(%rsp), %rdi
callq 0x3e50
leaq 0x390(%rsp), %rdi
callq 0x3e50
leaq 0x408(%rsp), %rdi
callq 0x3e50
movq %rbx, %rdi
callq 0x21a0