// File: chuckwolber[P]Cube/test/test_algorithm.cpp
// Function: test_inequalities(unsigned int)
void test_inequalities(unsigned int val) {
    Algorithm alg_1;
    Algorithm alg_2;

    alg_1 += val;
    alg_2 += val; 
    assert(alg_1 == alg_2);
    assert(alg_1 <= alg_2);
    assert(alg_2 >= alg_2);
    verify_turns(alg_1.getAlgorithm(), alg_2.getAlgorithm());

    alg_2 +=1;
    assert(alg_1 != alg_2);
    assert(alg_1  < alg_2);
    assert(alg_1 <= alg_2);
    assert(alg_2  > alg_1);
    assert(alg_2 >= alg_1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xa0, %rsp
movl %edi, -0x4(%rbp)
leaq -0x30(%rbp), %rdi
callq 0x2420
leaq -0x58(%rbp), %rdi
callq 0x2420
jmp 0xee12
movl -0x4(%rbp), %eax
movl %eax, %esi
leaq -0x30(%rbp), %rdi
callq 0x2bd0
jmp 0xee22
movl -0x4(%rbp), %eax
movl %eax, %esi
leaq -0x58(%rbp), %rdi
callq 0x2bd0
jmp 0xee32
leaq -0x30(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x2c00
movb %al, -0x99(%rbp)
jmp 0xee47
movb -0x99(%rbp), %al
testb $0x1, %al
jne 0xee53
jmp 0xee55
jmp 0xee96
leaq 0x157a(%rip), %rdi      # 0x103d6
leaq 0x1476(%rip), %rsi      # 0x102d9
movl $0x72, %edx
leaq 0x1576(%rip), %rcx      # 0x103e5
callq 0x2100
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0xf113
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0xf10a
leaq -0x30(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x2d70
movb %al, -0x9a(%rbp)
jmp 0xeeab
movb -0x9a(%rbp), %al
testb $0x1, %al
jne 0xeeb7
jmp 0xeeb9
jmp 0xeed8
leaq 0x154a(%rip), %rdi      # 0x1040a
leaq 0x1412(%rip), %rsi      # 0x102d9
movl $0x73, %edx
leaq 0x1512(%rip), %rcx      # 0x103e5
callq 0x2100
leaq -0x58(%rbp), %rsi
movq %rsi, %rdi
callq 0x2df0
movb %al, -0x9b(%rbp)
jmp 0xeeec
movb -0x9b(%rbp), %al
testb $0x1, %al
jne 0xeef8
jmp 0xeefa
jmp 0xef19
leaq 0x1518(%rip), %rdi      # 0x10419
leaq 0x13d1(%rip), %rsi      # 0x102d9
movl $0x74, %edx
leaq 0x14d1(%rip), %rcx      # 0x103e5
callq 0x2100
leaq -0x80(%rbp), %rdi
leaq -0x30(%rbp), %rsi
callq 0x33e0
jmp 0xef28
leaq -0x98(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x33e0
jmp 0xef3a
leaq -0x80(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0xecb0
jmp 0xef4c
leaq -0x98(%rbp), %rdi
callq 0x4920
leaq -0x80(%rbp), %rdi
callq 0x4920
leaq -0x58(%rbp), %rdi
movl $0x1, %esi
callq 0x2bd0
jmp 0xef71
leaq -0x30(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x2c30
movb %al, -0x9c(%rbp)
jmp 0xef86
movb -0x9c(%rbp), %al
testb $0x1, %al
jne 0xef92
jmp 0xef94
jmp 0xefe7
leaq 0x148d(%rip), %rdi      # 0x10428
leaq 0x1337(%rip), %rsi      # 0x102d9
movl $0x78, %edx
leaq 0x1437(%rip), %rcx      # 0x103e5
callq 0x2100
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0xefd9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
leaq -0x98(%rbp), %rdi
callq 0x4920
leaq -0x80(%rbp), %rdi
callq 0x4920
jmp 0xf10a
leaq -0x30(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x2c60
movb %al, -0x9d(%rbp)
jmp 0xeffc
movb -0x9d(%rbp), %al
testb $0x1, %al
jne 0xf008
jmp 0xf00a
jmp 0xf029
leaq 0x1426(%rip), %rdi      # 0x10437
leaq 0x12c1(%rip), %rsi      # 0x102d9
movl $0x79, %edx
leaq 0x13c1(%rip), %rcx      # 0x103e5
callq 0x2100
leaq -0x30(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x2d70
movb %al, -0x9e(%rbp)
jmp 0xf03e
movb -0x9e(%rbp), %al
testb $0x1, %al
jne 0xf04a
jmp 0xf04c
jmp 0xf06b
leaq 0x13b7(%rip), %rdi      # 0x1040a
leaq 0x127f(%rip), %rsi      # 0x102d9
movl $0x7a, %edx
leaq 0x137f(%rip), %rcx      # 0x103e5
callq 0x2100
leaq -0x58(%rbp), %rdi
leaq -0x30(%rbp), %rsi
callq 0x2dc0
movb %al, -0x9f(%rbp)
jmp 0xf080
movb -0x9f(%rbp), %al
testb $0x1, %al
jne 0xf08c
jmp 0xf08e
jmp 0xf0ad
leaq 0x13b0(%rip), %rdi      # 0x10445
leaq 0x123d(%rip), %rsi      # 0x102d9
movl $0x7b, %edx
leaq 0x133d(%rip), %rcx      # 0x103e5
callq 0x2100
leaq -0x58(%rbp), %rdi
leaq -0x30(%rbp), %rsi
callq 0x2df0
movb %al, -0xa0(%rbp)
jmp 0xf0c2
movb -0xa0(%rbp), %al
testb $0x1, %al
jne 0xf0ce
jmp 0xf0d0
jmp 0xf0ef
leaq 0x137c(%rip), %rdi      # 0x10453
leaq 0x11fb(%rip), %rsi      # 0x102d9
movl $0x7c, %edx
leaq 0x12fb(%rip), %rcx      # 0x103e5
callq 0x2100
leaq -0x58(%rbp), %rdi
callq 0x4bd0
leaq -0x30(%rbp), %rdi
callq 0x4bd0
addq $0xa0, %rsp
popq %rbp
retq
leaq -0x58(%rbp), %rdi
callq 0x4bd0
leaq -0x30(%rbp), %rdi
callq 0x4bd0
movq -0x60(%rbp), %rdi
callq 0x22a0
nopw %cs:(%rax,%rax)
nop