     }
     else { /*Either Pole*/ }
 
-    int currentMinutes = datetime[4] + (datetime[3] * 60); //converting it into minutes makes easier to compare.
-    isItDayTime = currentMinutes > (Times[0] * 60) + Times[1] && currentMinutes < (Times[2] * 60) + Times[3];
+    int currentClock = time.min + (time.hr * 100); //converting it into minutes makes easier to compare.
+    isItDayTime = currentClock > (Times[0] * 100) + Times[1] && currentClock < (Times[2] * 100) + Times[3];
     /*
     i.e. 
-    if current minutes, aka time as of now, is greater than Sunrise time and lesser than Sunset time then it's Day time, and night if it is not.
+    if currentClock, aka time as of now, is greater than Sunrise time AND lesser than Sunset time then it's Day time, and night if it is not.
     */
     WriteOutput(!isItDayTime);
     #ifdef DEBUG
+    sprintf(buffer, "Datetime minutes: %d, Sunrise minutes: %d, Sunset minutes %d\n", currentClock, (Times[0] * 100) + Times[1], (Times[2] * 100) + Times[3]); //Print the times for debugging.
+    Serial.print(buffer);
     sprintf(buffer, "As of %02d/%02d, approximately, sun rises at %02d:%02d and sets at %02d:%02d\n", time.date, time.mon, Times[0], Times[1], Times[2], Times[3]); //Print the times for debugging.
     Serial.print(buffer);
     #endif

/*
This code below was written by Muntadhar Haydar (@mrmhk97).
As of March 18, 2017.
Last Modification was on March 19, 2017.

TODO:: 
Implement Auto/Manual Control modes for development, debugging and presenting.

    digitalWrite(i, level);
    i += i == 9 ? 4 : 1;
  }
}
