// File: /workspace/github_cpp_makefile_star2_O3/Rubenmp[P]Rubik/src/defineRubik.cpp
// Function: Rubik::isSolved() const
bool Rubik::isSolved() const{
   bool success;
   if((corner[3].up == 'w')     &&
      (edge[2].up == 'w')       &&
      (corner[2].up == 'w')     &&
      (edge[3].up == 'w')       &&
      (center[0].center == 'w') &&
      (edge[1].up == 'w')       &&
      (corner[0].up == 'w')     &&
      (edge[0].up == 'w')       &&
      (corner[1].up == 'w')     &&

      (corner[3].right == 'o')  &&
      (edge[3].down == 'o')     &&
      (corner[0].left == 'o')   &&
      (edge[10].down == 'o')    &&
      (center[4].center == 'o') &&
      (edge[11].down == 'o')    &&
      (corner[7].right == 'o')  &&
      (edge[7].down == 'o')     &&
      (corner[4].left == 'o')   &&

      (corner[0].right == 'g')  &&
      (edge[0].down == 'g')     &&
      (corner[1].left == 'g')   &&
      (edge[11].up == 'g')      &&
      (center[1].center == 'g') &&
      (edge[8].up == 'g')       &&
      (corner[4].right == 'g')  &&
      (edge[4].down == 'g')     &&
      (corner[5].left == 'g')   &&

      (corner[1].right == 'r')  &&
      (edge[1].down == 'r')     &&
      (corner[2].left == 'r')   &&
      (edge[8].down == 'r')     &&
      (center[2].center == 'r') &&
      (edge[9].down == 'r')     &&
      (corner[5].right == 'r')  &&
      (edge[5].down == 'r')     &&
      (corner[6].left == 'r')   &&

      (corner[2].right == 'l')  &&
      (edge[2].down == 'l')     &&
      (corner[3].left == 'l')   &&
      (edge[9].up == 'l')       &&
      (center[3].center == 'l') &&
      (edge[10].up == 'l')      &&
      (corner[6].right == 'l')  &&
      (edge[6].down == 'l')     &&
      (corner[7].left == 'l')   &&

      (corner[4].up == 'y')     &&
      (edge[4].up == 'y')       &&
      (corner[5].up == 'y')     &&
      (edge[7].up == 'y')       &&
      (center[5].center == 'y') &&
      (edge[5].up == 'y')       &&
      (corner[7].up == 'y')     &&
      (edge[6].up == 'y')       &&
      (corner[6].up == 'y') )
	      success = true;
   else
	   success = false;

   return success;
}

// Assembly:
cmpb $0x77, 0x27(%rdi)
jne 0x9925
cmpb $0x77, 0xa(%rdi)
jne 0x9925
cmpb $0x77, 0x24(%rdi)
jne 0x9925
cmpb $0x77, 0xc(%rdi)
jne 0x9925
cmpb $0x77, (%rdi)
jne 0x9925
cmpb $0x77, 0x8(%rdi)
jne 0x9925
cmpb $0x77, 0x1e(%rdi)
jne 0x9925
cmpb $0x77, 0x6(%rdi)
jne 0x9925
cmpb $0x77, 0x21(%rdi)
jne 0x9925
cmpb $0x6f, 0x29(%rdi)
jne 0x9925
cmpb $0x6f, 0xd(%rdi)
jne 0x9925
cmpb $0x6f, 0x1f(%rdi)
jne 0x9925
cmpb $0x6f, 0x1b(%rdi)
jne 0x9925
cmpb $0x6f, 0x4(%rdi)
jne 0x9925
cmpb $0x6f, 0x1d(%rdi)
jne 0x9925
cmpb $0x6f, 0x35(%rdi)
jne 0x9925
cmpb $0x6f, 0x15(%rdi)
jne 0x9925
cmpb $0x6f, 0x2b(%rdi)
jne 0x9925
cmpb $0x67, 0x20(%rdi)
jne 0x9925
cmpb $0x67, 0x7(%rdi)
jne 0x9925
cmpb $0x67, 0x22(%rdi)
jne 0x9925
cmpb $0x67, 0x1c(%rdi)
jne 0x9925
cmpb $0x67, 0x1(%rdi)
jne 0x9925
cmpb $0x67, 0x16(%rdi)
jne 0x9925
cmpb $0x67, 0x2c(%rdi)
jne 0x9925
cmpb $0x67, 0xf(%rdi)
jne 0x9925
cmpb $0x67, 0x2e(%rdi)
jne 0x9925
cmpb $0x72, 0x23(%rdi)
jne 0x9925
cmpb $0x72, 0x9(%rdi)
jne 0x9925
cmpb $0x72, 0x25(%rdi)
jne 0x9925
cmpb $0x72, 0x17(%rdi)
jne 0x9925
cmpb $0x72, 0x2(%rdi)
jne 0x9925
cmpb $0x72, 0x19(%rdi)
jne 0x9925
cmpb $0x72, 0x2f(%rdi)
jne 0x9925
cmpb $0x72, 0x11(%rdi)
jne 0x9925
cmpb $0x72, 0x31(%rdi)
jne 0x9925
cmpb $0x6c, 0x26(%rdi)
jne 0x9925
cmpb $0x6c, 0xb(%rdi)
jne 0x9925
cmpb $0x6c, 0x28(%rdi)
jne 0x9925
cmpb $0x6c, 0x18(%rdi)
jne 0x9925
cmpb $0x6c, 0x3(%rdi)
jne 0x9925
cmpb $0x6c, 0x1a(%rdi)
jne 0x9925
cmpb $0x6c, 0x32(%rdi)
jne 0x9925
cmpb $0x6c, 0x13(%rdi)
jne 0x9925
cmpb $0x6c, 0x34(%rdi)
jne 0x9925
cmpb $0x79, 0x2a(%rdi)
jne 0x9925
cmpb $0x79, 0xe(%rdi)
jne 0x9925
cmpb $0x79, 0x2d(%rdi)
jne 0x9925
cmpb $0x79, 0x14(%rdi)
jne 0x9925
cmpb $0x79, 0x5(%rdi)
jne 0x9925
cmpb $0x79, 0x10(%rdi)
jne 0x9925
cmpb $0x79, 0x33(%rdi)
jne 0x9925
cmpb $0x79, 0x12(%rdi)
jne 0x9925
movb $0x1, %al
cmpb $0x79, 0x30(%rdi)
je 0x9927
xorl %eax, %eax
retq