       state = LOW;
       PrevMillis = millis();
     }
+  }
+
+  void KillTheAlarm() {
+    digitalWrite(pin, LOW);
+    state = LOW;
+    PrevMillis = 0L;
   }
 };
 

  
}

/** 
 * raises an alarm
 */
class Alarm {
  unsigned long PrevMillis;
  unsigned long DurationOn; // in millis
  unsigned long DurationOff; // in millis

  uint8_t pin;

public:
  AlarmSounder(unsigned long dOn, unsigned long dOff, uint8_t p) {
    DurationOn = dOn;
    DurationOff = dOff;
    pin = p;
    state = LOW;
  }

  AlarmSounder() { // default
    DurationOn = 1000; // 1 second
    DurationOff = 1000; // 1 second
    pin = RELAY1;
