 byte fsmState       = 0;
 byte activeDigit    = 0;
 byte digitValues[N] = {0,0,0,0};
+byte alarmTriggeredToday = 0;
 int  tempInCelsius  = 0;
 unsigned long updateInterval    = 100;
 unsigned long lastTempRead      = 0;
 unsigned long lastClockRead     = 0;
 unsigned long lastShowTimeStart = 0;
 unsigned long lastShowTempStart = 0;
+unsigned long lastAlarmCleared  = 0;
+
 
 SevenSegController display(DIGIT0_PIN, DIGIT1_PIN, DIGIT2_PIN, DIGIT3_PIN, COLON_PIN, DEGREE_PIN, LATCH_PIN, DATA_PIN, CLOCK_PIN);
 OneButton buttonA(BUTTON_A_PIN, true);

		activeDigit++;
		activeDigit %= N;
		display.enableBlink(activeDigit);
	}
}


		digitValues[activeDigit]++;
		digitValues[activeDigit] %= maxValueForDigit(activeDigit);
		display.writeDigit(activeDigit, digitValues[activeDigit]);
	} else if (fsmState == SHOW_ALARM_MODE)
	{
		lastAlarmCleared = millis();
		oldFsmState = SHOW_ALARM_MODE;
		fsmState    = SHOW_TIME_MODE;
		Serial.print("ALARM CLEARED :");
		digitalClockDisplay();
	}
}

