What does each line in the code?? Please
unsigned Long timer1;
unsigned Long button_dbnc_tmr = 0;
const int User_Button = 2;
const int USER_LED_Pin = 13;
bool allow_change = 0;
int counter = 0;
int state;
void read_state_from_memory(void);
void write_state_to_memory(void);
void turnoff(void);
void flash_1s(void);
void flash_2s(void);
void flash_3s(void);
void setup()
{
read_state_from_memory();
pinMode(USER_LED_Pin, OUTPUT);
Serial.begin(9600);
}
void loop()
{
timers();
if(digitalRead(User_Button) == 1)
{
if(allow_change == 1)
{
state++;
Serial.println(counter);
Serial.println(state);
allow_change = 0;
if(state > 3)
state = 0;
write_state_to_memory();
}
}
}
else
{ Â Â counter = 0;
   allow_change = 1;
button_dbnc_tmr = 0;
}
switch(state_
{
case 0:
turn off();
break;
case 1:
flash_1s();
break;
case 2:
flash_2s();
break;
case 3:
flash_3s();
break;
}
}
void turnoff()
{
//complete by me
}
void flash_1s()
{
//complete by me
}
void flash_2s()
{
//complete by me
}
void flash_3s()
{
//complete by me
}
void timers(void)
{
static unsigned Long ms_runtime;
static int one_ms_timer;
if(millis() > (ms_runtime + 1))
{Â Â ms_runtime = ms_runtime + 1;
one_ms_timer++;
}
else if(ms_runtime > millis())x
ms_runtime = millis();
if(one_ms_timer > 99)
{Â Â one_ms_timer = 0;
button_dbnc_tmr++;
timer1++;
}
}
void read_state_from_memory ()
{
//to be completed by me
}
void write_state_to_memory()
{
//to be completed by me
}