Using the Arduino Mega, a 16x2 LCD, a couple SPSTs, an SPDT, and a Piezo Buzzer, write code for a functional alarm clock. Up to 4 SPSTs can be programmed, one to set day, hour, minute, seconds, and the SPDT can be used to set the alarm on/off. Code should be well commented and understand well enough to be able to easily connect the components. Preferred use of Time or DateTime libraries and LCD4Bit or LiquidCrystal for the LCD. No syncing with external HW/clocks, just an initial setting when powered and then able to be changed by the SPSTs.