const int g1 = 2;
const int y1 = 1; 
const int r1 = 0;
const int g2 = 5;
const int y2 = 4;
const int r2 = 3;
const int g3 = 8;
const int y3 = 7;
const int r3 = 6;
const int g4 = 11;
const int y4 = 10;
const int r4 = 9;
const int pRed = 12;
const int pgreen = 13;
const int pIN = 14;


void setup()

{
pinMode (r1, OUTPUT);
pinMode (y1, OUTPUT);
pinMode (g1, OUTPUT);
pinMode (r2, OUTPUT);
pinMode (y2, OUTPUT);
pinMode (g2, OUTPUT);
pinMode (r3, OUTPUT);
pinMode (y3, OUTPUT);
pinMode (g3, OUTPUT);
pinMode (r4, OUTPUT);
pinMode (y4, OUTPUT);
pinMode (g4, OUTPUT);
pinMode (pRed, OUTPUT);
pinMode (pgreen, OUTPUT);
pinMode (pIN, INPUT);
digitalWrite (r1, HIGH);
digitalWrite (r2, HIGH);
digitalWrite (r3, HIGH);
digitalWrite (r4, HIGH);
digitalWrite (pRed, HIGH);
}

void loop() { 

int crossIn = digitalRead (pIN);
if (crossIn == HIGH){
  WalkCycle();}
else 
{
delay(100);
digitalWrite (r1, LOW);    
digitalWrite(g1,HIGH);
digitalWrite(r2,HIGH);
digitalWrite(r3,HIGH);
digitalWrite(r4,HIGH);
delay(4000);
}
int crossIn2 = digitalRead (pIN);
if (crossIn2 == HIGH){
  WalkCycle();}
else 
{
digitalWrite(g1,LOW);

digitalWrite(y1,HIGH);
digitalWrite(r2,HIGH);
digitalWrite(r3,HIGH);
digitalWrite(r4,HIGH);
delay(2000);
}
int crossIn3 = digitalRead (pIN);
if (crossIn3 == HIGH){
  WalkCycle();}
else 
{  
digitalWrite(y1,LOW);
digitalWrite(r2,LOW);

digitalWrite(r1,HIGH);
digitalWrite(g2,HIGH); //2nd light
digitalWrite(r3,HIGH);
digitalWrite(r4,HIGH);
delay(4000);
}
int crossIn4 = digitalRead (pIN);
if (crossIn4 == HIGH){
  WalkCycle();}
else 
{
digitalWrite(g2,LOW);

digitalWrite(y2,HIGH);
digitalWrite(r1,HIGH);
digitalWrite(r3,HIGH);
digitalWrite(r4,HIGH);
delay(2000);
}
int crossIn5 = digitalRead (pIN);
if (crossIn5 == HIGH){
  WalkCycle();}
else 
{
digitalWrite(y2,LOW);
digitalWrite(r3,LOW);

digitalWrite(g3,HIGH);//3rd light
digitalWrite(r1,HIGH);
digitalWrite(r2,HIGH);
digitalWrite(r4,HIGH);
delay(4000);
}
int crossIn6 = digitalRead (pIN);
if (crossIn6 == HIGH){
  WalkCycle();}
else 
{
digitalWrite(g3,LOW);

digitalWrite(y3,HIGH);
digitalWrite(r1,HIGH);
digitalWrite(r2,HIGH);
digitalWrite(r4,HIGH);
delay(2000);
}
int crossIn7 = digitalRead (pIN);
if (crossIn7 == HIGH){
  WalkCycle();}
else 
{
digitalWrite(y3,LOW);
digitalWrite(r3,LOW);
digitalWrite(r4,LOW);

digitalWrite(g4,HIGH);//4th light
digitalWrite(r1,HIGH);
digitalWrite(r2,HIGH);
digitalWrite(r3,HIGH);
delay(4000);
}
int crossIn8 = digitalRead (pIN);
if (crossIn8 == HIGH){
  WalkCycle();}
else 
{
digitalWrite(g4,LOW);
digitalWrite(r4,LOW);


digitalWrite(y4,HIGH);
digitalWrite(r1,HIGH);
digitalWrite(r2,HIGH);
digitalWrite(r3,HIGH);
delay(2000);
}
digitalWrite(y4,LOW);
digitalWrite(r4,LOW);
digitalWrite(r1,LOW);

}

void WalkCycle() {
  delay(350);
digitalWrite (g1, LOW);digitalWrite (g2, LOW);digitalWrite (g3, LOW);digitalWrite (g4, LOW);
digitalWrite (y1, LOW);digitalWrite (y2, LOW);digitalWrite (y3, LOW);digitalWrite (y4, LOW);
digitalWrite (r1, HIGH);digitalWrite (r2, HIGH);digitalWrite (r3, HIGH);digitalWrite (r4, HIGH);

   
  digitalWrite (pgreen, HIGH); 
  digitalWrite (pRed, LOW);
  delay (3000);
  digitalWrite (pgreen, LOW); 
  //digitalWrite(pIN, LOW);  // Turn off green Pedestrian Light
  delay(250);
  for (int x = 0; x < 5; x++) {  // Flash green Ped LED 5X
    digitalWrite(pgreen, HIGH);
    delay(250);
    digitalWrite(pgreen, LOW);
    delay(250);
  }
  digitalWrite(pRed, HIGH);
}
$abcdeabcde151015202530354045505560fghijfghij
$abcdeabcde151015202530fghijfghij
$abcdeabcde151015202530fghijfghij
mega:SCL
mega:SDA
mega:AREF
mega:GND.1
mega:13
mega:12
mega:11
mega:10
mega:9
mega:8
mega:7
mega:6
mega:5
mega:4
mega:3
mega:2
mega:1
mega:0
mega:14
mega:15
mega:16
mega:17
mega:18
mega:19
mega:20
mega:21
mega:5V.1
mega:5V.2
mega:22
mega:23
mega:24
mega:25
mega:26
mega:27
mega:28
mega:29
mega:30
mega:31
mega:32
mega:33
mega:34
mega:35
mega:36
mega:37
mega:38
mega:39
mega:40
mega:41
mega:42
mega:43
mega:44
mega:45
mega:46
mega:47
mega:48
mega:49
mega:50
mega:51
mega:52
mega:53
mega:GND.4
mega:GND.5
mega:IOREF
mega:RESET
mega:3.3V
mega:5V
mega:GND.2
mega:GND.3
mega:VIN
mega:A0
mega:A1
mega:A2
mega:A3
mega:A4
mega:A5
mega:A6
mega:A7
mega:A8
mega:A9
mega:A10
mega:A11
mega:A12
mega:A13
mega:A14
mega:A15
led1:A
led1:C
led2:A
led2:C
led3:A
led3:C
led4:A
led4:C
led5:A
led5:C
led6:A
led6:C
led7:A
led7:C
led9:A
led9:C
led10:A
led10:C
led11:A
led11:C
led8:A
led8:C
led12:A
led12:C
led13:A
led13:C
led14:A
led14:C
led15:A
led15:C
led16:A
led16:C
led17:A
led17:C
led18:A
led18:C
led19:A
led19:C
led20:A
led20:C
btn1:1.l
btn1:2.l
btn1:1.r
btn1:2.r
btn2:1.l
btn2:2.l
btn2:1.r
btn2:2.r
btn3:1.l
btn3:2.l
btn3:1.r
btn3:2.r
btn4:1.l
btn4:2.l
btn4:1.r
btn4:2.r
r1:1
r1:2
r2:1
r2:2
r3:1
r3:2
r4:1
r4:2
r5:1
r5:2
r6:1
r6:2
r7:1
r7:2
r8:1
r8:2
r9:1
r9:2
r10:1
r10:2
r11:1
r11:2
r12:1
r12:2