Error: expected initializer before '.' token

Hi, I'm having trouble with an error message regarding the 2261st line of code here, which reads "Compilation error: expected initializer before '.' token." The code is taken from Larason 2's MIDI organ project, and I modified it to fit my needs.

Here is the code.

#include <MIDI.h>
MIDI_CREATE_DEFAULT_INSTANCE();

// Name: Arduino Mega Midi Controller Mega side.
// Created: May 10,   2021
// Last Edited: Mar 26, 2022
// Author: Larason2
// Acknowledgements:   Bald Engineer, Amanda Ghassaei, jeffb42, GrumpyMike, John Main, Ghost, RIP Tutorial,   Arduino tutorials.
// Includes Midi Through, wiring for pistons, improved debounce.

//Setup   Key Data Arrays
byte keysA[16][8];
byte keysB[16][2];
byte keysC[7][6];
byte   keysE[6][6];

//Setup Key Press Arrays
byte lastA[16][8];
byte lastB[16][2];
byte   lastC[7][6];
byte lastE[6][6];

//Setup midi channel values
int noteOn1   = 144;
int noteOff1 = 128;
int noteOn2 = 145;
int noteOff2 = 129;
int   noteOn3 = 146;
int noteOff3 = 130;
int noteOn4 = 147;
int noteOff4 = 131;

//Setup   volume control channels
int CCchan6 = 181;
int CCchan7 = 182;

//Setup   midi variables
int velocity = 100;
int Exp = 11;

//Setup Pot Monitoring   variables
int LastPot6 = 1;
int LastPot7 = 1;

//Setup variable to debounce   pots. increase to decrease bounce on the pots (units of analog signal variation)
int   PotT = 10; 

//Setup variables for Midi Thru
boolean byteReady; 
unsigned   char midiByte;

//Setup variables for key debounce on
unsigned long BounceAOn[16][8];

//Setup   variables for key debounce on
unsigned long BounceAOff[16][8];

//Setup   variable for adjusting key debounce
//Increase to decrease bounce on the keys   (units of milliseconds)
unsigned long Delay = 50; 

void setup() {
   // Start Serial
  Serial.begin(31250);

  //Initialize Row Pins Keyboard   A
  pinMode(2, INPUT);
  pinMode(3, INPUT);
  pinMode(4, INPUT);
  pinMode(5,   INPUT);
  pinMode(6, INPUT);
  pinMode(7, INPUT);
  pinMode(8, INPUT);
  pinMode(9, INPUT);

  //Initialize Column   Pins Keyboard A
  
  pinMode(10,   INPUT);
  pinMode(11, INPUT);
  pinMode(12, INPUT);
  pinMode(14, INPUT);
  pinMode(15, INPUT);
  pinMode(16, INPUT);
  pinMode(17, INPUT);
  pinMode(18, INPUT);
  pinMode(19,   INPUT);
  pinMode(20, INPUT);
  pinMode(21, INPUT);
  pinMode(22, INPUT);
  pinMode(23, INPUT);
  pinMode(24, INPUT);
  pinMode(25,   INPUT);
  pinMode(26, INPUT);
  
  //Pot Pins
  
  pinMode(A13, INPUT);
  pinMode(A14,   INPUT);

  //Initialize Midi Thru

  byteReady = false;
  midiByte   = 0;

}

void loop() {
  
  // Read Keyboard A

  pinMode(2,   INPUT_PULLUP);
  pinMode(3, INPUT_PULLUP);
  pinMode(4, INPUT_PULLUP);
   pinMode(5, INPUT_PULLUP);
  pinMode(6, INPUT_PULLUP);
  pinMode(7, INPUT_PULLUP);
  pinMode(8, INPUT_PULLUP);
  pinMode(9, INPUT_PULLUP);

   pinMode(10, OUTPUT); 
  digitalWrite(10, LOW);
    keysA[0][0] = digitalRead(3);
    keysA[0][1] = digitalRead(2);
   pinMode(10, INPUT);

  pinMode(11, OUTPUT);
  digitalWrite(11, LOW);
     keysA[1][0] = digitalRead(3);
    keysA[1][1] = digitalRead(4);
    keysA[1][2]   = digitalRead(5);
    keysA[1][3] = digitalRead(6);
    keysA[1][4] = digitalRead(7);
    keysA[1][5] = digitalRead(8);
    keysA[1][6] = digitalRead(9);
     keysA[1][7] = digitalRead(2);
  pinMode(11, INPUT);

  pinMode(12, OUTPUT);
  digitalWrite(12, LOW);
     keysA[2][0] = digitalRead(3);
    keysA[2][1] = digitalRead(4);
    keysA[2][2]   = digitalRead(5);
    keysA[2][3] = digitalRead(6);
    keysA[2][4] = digitalRead(7);
    keysA[2][5] = digitalRead(8);
    keysA[2][6] = digitalRead(9);
     keysA[2][7] = digitalRead(2);
  pinMode(12, INPUT);

  pinMode(14, OUTPUT);
  digitalWrite(14, LOW);
     keysA[3][0] = digitalRead(3);
    keysA[3][1] = digitalRead(4);
    keysA[3][2]   = digitalRead(5);
    keysA[3][3] = digitalRead(6);
    keysA[3][4] = digitalRead(7);
    keysA[3][5] = digitalRead(8);
    keysA[3][6] = digitalRead(9);
     keysA[3][7] = digitalRead(2);
  pinMode(14, INPUT);

  pinMode(15, OUTPUT);
  digitalWrite(15, LOW);
     keysA[4][0] = digitalRead(3);
    keysA[4][1] = digitalRead(4);
    keysA[4][2]   = digitalRead(5);
    keysA[4][3] = digitalRead(6);
    keysA[4][4] = digitalRead(7);
    keysA[4][5] = digitalRead(8);
    keysA[4][6] = digitalRead(9);
     keysA[4][7] = digitalRead(2);
  pinMode(15, INPUT);

   pinMode(16, OUTPUT);
  digitalWrite(16, LOW);
     keysA[5][0] = digitalRead(3);
    keysA[5][1] = digitalRead(4);
    keysA[5][2]   = digitalRead(5);
    keysA[5][3] = digitalRead(6);
    keysA[5][4] = digitalRead(7);
    keysA[5][5] = digitalRead(8);
    keysA[5][6] = digitalRead(9);
     keysA[5][7] = digitalRead(2);
  pinMode(16, INPUT);

  pinMode(17, OUTPUT);
  digitalWrite(17, LOW);
     keysA[6][0] = digitalRead(3);
    keysA[6][1] = digitalRead(4);
    keysA[6][2]   = digitalRead(5);
    keysA[6][3] = digitalRead(6);
    keysA[6][4] = digitalRead(7);
    keysA[6][5] = digitalRead(8);
    keysA[6][6] = digitalRead(9);
     keysA[6][7] = digitalRead(2);
  pinMode(17, INPUT);

  pinMode(18, OUTPUT);
  digitalWrite(18, LOW);
     keysA[7][0] = digitalRead(3);
    keysA[7][1] = digitalRead(4);
    keysA[7][2]   = digitalRead(5);
    keysA[7][3] = digitalRead(6);
    keysA[7][4] = digitalRead(7);
    keysA[7][5] = digitalRead(8);
    keysA[7][6] = digitalRead(9);
     keysA[7][7] = digitalRead(2);
  pinMode(18, INPUT);

  pinMode(19, OUTPUT);
  digitalWrite(19, LOW);
     keysA[8][0] = digitalRead(3);
    keysA[8][1] = digitalRead(4);
    keysA[8][2]   = digitalRead(5);
    keysA[8][3] = digitalRead(6);
    keysA[8][4] = digitalRead(7);
    keysA[8][5] = digitalRead(8);
    keysA[8][6] = digitalRead(9);
     keysA[8][7] = digitalRead(2);
  pinMode(19, INPUT);

  pinMode(20, OUTPUT);
  digitalWrite(20, LOW);
     keysA[9][0] = digitalRead(3);
    keysA[9][1] = digitalRead(4);
    keysA[9][2]   = digitalRead(5);
    keysA[9][3] = digitalRead(6);
    keysA[9][4] = digitalRead(7);
    keysA[9][5] = digitalRead(8);
    keysA[9][6] = digitalRead(9);
     keysA[9][7] = digitalRead(2);
  pinMode(20, INPUT);

   pinMode(21, OUTPUT);
  digitalWrite(21, LOW);
     keysA[10][0] = digitalRead(3);
    keysA[10][1] = digitalRead(4);
    keysA[10][2]   = digitalRead(5);
    keysA[10][3] = digitalRead(6);
    keysA[10][4] = digitalRead(7);
    keysA[10][5] = digitalRead(8);
    keysA[10][6] = digitalRead(9);
     keysA[10][7] = digitalRead(2);
  pinMode(21, INPUT);

  pinMode(22, OUTPUT);
  digitalWrite(22, LOW);
     keysA[11][0] = digitalRead(3);
    keysA[11][1] = digitalRead(4);
    keysA[11][2]   = digitalRead(5);
    keysA[11][3] = digitalRead(6);
    keysA[11][4] = digitalRead(7);
    keysA[11][5] = digitalRead(8);
    keysA[11][6] = digitalRead(9);
     keysA[11][7] = digitalRead(2);
  pinMode(22, INPUT);

  pinMode(23, OUTPUT);
  digitalWrite(23, LOW);
     keysA[12][0] = digitalRead(3);
    keysA[12][1] = digitalRead(4);
    keysA[12][2]   = digitalRead(5);
    keysA[12][3] = digitalRead(6);
    keysA[12][4] = digitalRead(7);
    keysA[12][5] = digitalRead(8);
    keysA[12][6] = digitalRead(9);
     keysA[12][7] = digitalRead(2);
  pinMode(23, INPUT);

pinMode(24, OUTPUT);
  digitalWrite(24, LOW);
     keysA[13][0] = digitalRead(3);
    keysA[13][1] = digitalRead(4);
    keysA[13][2]   = digitalRead(5);
    keysA[13][3] = digitalRead(6);
    keysA[13][4] = digitalRead(7);
    keysA[13][5] = digitalRead(8);
    keysA[13][6] = digitalRead(9);
     keysA[13][7] = digitalRead(2);
  pinMode(24, INPUT);

pinMode(25, OUTPUT);
  digitalWrite(25, LOW);
     keysA[14][0] = digitalRead(3);
    keysA[14][1] = digitalRead(4);
    keysA[14][2]   = digitalRead(5);
    keysA[14][3] = digitalRead(6);
    keysA[14][4] = digitalRead(7);
    keysA[14][5] = digitalRead(8);
    keysA[14][6] = digitalRead(9);
     keysA[14][7] = digitalRead(2);
  pinMode(25, INPUT);

pinMode(26, OUTPUT);
  digitalWrite(26, LOW);
     keysA[15][0] = digitalRead(3);
    keysA[15][1] = digitalRead(4);
    keysA[15][2]   = digitalRead(5);
    keysA[15][3] = digitalRead(6);
    keysA[15][4] = digitalRead(7);
    keysA[15][5] = digitalRead(8);
    keysA[15][6] = digitalRead(9);
     keysA[15][7] = digitalRead(2);
  pinMode(26, INPUT);

  pinMode(2, INPUT);
  pinMode(3, INPUT);
  pinMode(4,   INPUT);
  pinMode(5, INPUT);
  pinMode(6, INPUT);
  pinMode(7, INPUT);
  pinMode(8, INPUT);
  pinMode(9, INPUT);

  //Write   Keyboard A

  //A36
  if (lastA[0][0] == 7) {
    BounceAOn[0][0] =   millis();
    }
  if ((keysA[0][0] == 0) and (lastA[0][0] == 0) and ((millis()   - BounceAOn[0][0]) > Delay)) {
    MIDI.sendNoteOn(1, 36, velocity);  
    lastA[0][0]   = 7;
    }
  if (lastA[0][0] == 0) {
    BounceAOff[0][0] = millis();
     }
  if ((keysA[0][0] == 1) and (lastA[0][0] == 7) and ((millis() - BounceAOff[0][0])   > Delay)) {
    MIDI.sendNoteOff(1, 36, velocity); 
    lastA[0][0] = 0;
     }

  //A37
  if (lastA[0][1] == 7) {
    BounceAOn[0][1] =   millis();
    }
  if ((keysA[0][1] == 0) and (lastA[0][1] == 0) and ((millis()   - BounceAOn[0][1]) > Delay)) {
    MIDI.sendNoteOn(1, 37, velocity);  
    lastA[0][1]   = 7;
    }
  if (lastA[0][1] == 0) {
    BounceAOff[0][1] = millis();
     }
  if ((keysA[0][1] == 1) and (lastA[0][1] == 7) and ((millis() - BounceAOff[0][1])   > Delay)) {
    MIDI.sendNoteOff(1, 37, velocity); 
    lastA[0][1] = 0;
     }
    
  //A38
  if (lastA[1][0] == 7) {
    BounceAOn[1][0] = millis();
     }
  if ((keysA[1][0] == 0) and (lastA[1][0] == 0) and ((millis() - BounceAOn[1][0])   > Delay)) {
    MIDI.sendNoteOn(1, 38, velocity);  
    lastA[1][0] = 7;
     }
  if (lastA[1][0] == 0) {
    BounceAOff[1][0] = millis();
    }
   if ((keysA[1][0] == 1) and (lastA[1][0] == 7) and ((millis() - BounceAOff[1][0])   > Delay)) {
    MIDI.sendNoteOff(1, 38, velocity); 
    lastA[1][0] = 0;
     }
    
  //A39
  if (lastA[1][1] == 7) {
    BounceAOn[1][1] = millis();
     }
  if ((keysA[1][1] == 0) and (lastA[1][1] == 0) and ((millis() - BounceAOn[1][1])   > Delay)) {
    MIDI.sendNoteOn(1, 39, velocity);  
    lastA[1][1] = 7;
     }
  if (lastA[1][1] == 0) {
    BounceAOff[1][1] = millis();
    }
   if ((keysA[1][1] == 1) and (lastA[1][1] == 7) and ((millis() - BounceAOff[1][1])   > Delay)) {
    MIDI.sendNoteOff(1, 39, velocity); 
    lastA[1][1] = 0;
     }
    
  //A40
  if (lastA[1][2] == 7) {
    BounceAOn[1][2] = millis();
     }
  if ((keysA[1][2] == 0) and (lastA[1][2] == 0) and ((millis() - BounceAOn[1][2])   > Delay)) {
    MIDI.sendNoteOn(1, 40, velocity);  
    lastA[1][2] = 7;
     }
  if (lastA[1][2] == 0) {
    BounceAOff[1][2] = millis();
    }
   if ((keysA[1][2] == 1) and (lastA[1][2] == 7) and ((millis() - BounceAOff[1][2])   > Delay)) {
    MIDI.sendNoteOff(1, 40, velocity); 
    lastA[1][2] = 0;
     }
    
  //A41
  if (lastA[1][3] == 7) {
    BounceAOn[1][3] = millis();
     }
  if ((keysA[1][3] == 0) and (lastA[1][3] == 0) and ((millis() - BounceAOn[1][3])   > Delay)) {
    MIDI.sendNoteOn(1, 41, velocity);  
    lastA[1][3] = 7;
     }
  if (lastA[1][3] == 0) {
    BounceAOff[1][3] = millis();
    }
   if ((keysA[1][3] == 1) and (lastA[1][3] == 7) and ((millis() - BounceAOff[1][3])   > Delay)) {
    MIDI.sendNoteOff(1, 41, velocity); 
    lastA[1][3] = 0;
     }
    
  //A42
  if (lastA[1][4] == 7) {
    BounceAOn[1][4] = millis();
     }
  if ((keysA[1][4] == 0) and (lastA[1][4] == 0) and ((millis() - BounceAOn[1][4])   > Delay)) {
    MIDI.sendNoteOn(1, 42, velocity);
    lastA[1][4] = 7;
   }
  if (lastA[1][4] == 0) {
    BounceAOff[1][4] = millis();
    }
   if ((keysA[1][4] == 1) and (lastA[1][4] == 7) and ((millis() - BounceAOff[1][4])   > Delay)) {
    MIDI.sendNoteOff(1, 42, velocity);
    lastA[1][4] = 0;
   }
  
  //A43
  if (lastA[1][5] == 7) {
    BounceAOn[1][5] = millis();
     }
  if ((keysA[1][5] == 0) and (lastA[1][5] == 0) and ((millis() - BounceAOn[1][5])   > Delay)) {
    MIDI.sendNoteOn(1, 43, velocity);
    lastA[1][5] = 7;
   }
  if (lastA[1][5] == 0) {
    BounceAOff[1][5] = millis();
    }
   if ((keysA[1][5] == 1) and (lastA[1][5] == 7) and ((millis() - BounceAOff[1][5])   > Delay)) {
    MIDI.sendNoteOff(1, 43, velocity);
    lastA[1][5] = 0;
   }

  //A44
  if (lastA[1][6] == 7) {
    BounceAOn[1][6] = millis();
     }
  if ((keysA[1][6] == 0) and (lastA[1][6] == 0) and ((millis() - BounceAOn[1][6])   > Delay)) {
    MIDI.sendNoteOn(1, 44, velocity);
    lastA[1][6] = 7;
   }
  if (lastA[1][6] == 0) {
    BounceAOff[1][6] = millis();
    }
   if ((keysA[1][6] == 1) and (lastA[1][6] == 7) and ((millis() - BounceAOff[1][6])   > Delay)) {
    MIDI.sendNoteOff(1, 44, velocity);
    lastA[1][6] = 0;
   }

  //A45
  if (lastA[1][7] == 7) {
    BounceAOn[1][7] = millis();
     }
  if ((keysA[1][7] == 0) and (lastA[1][7] == 0) and ((millis() - BounceAOn[1][7])   > Delay)) {
    MIDI.sendNoteOn(1, 45, velocity);
    lastA[1][7] = 7;
   }
  if (lastA[1][7] == 0) {
    BounceAOff[1][7] = millis();
    }
   if ((keysA[1][7] == 1) and (lastA[1][7] == 7) and ((millis() - BounceAOff[1][7])   > Delay)) {
    MIDI.sendNoteOff(1, 45, velocity);
    lastA[1][7] = 0;
   }
  
  //A46
  if (lastA[2][0] == 7) {
    BounceAOn[2][0] = millis();
     }
  if ((keysA[2][0] == 0) and (lastA[2][0] == 0) and ((millis() - BounceAOn[2][0])   > Delay)) {
    MIDI.sendNoteOn(1, 46, velocity);
    lastA[2][0] = 7;
   }
  if (lastA[2][0] == 0) {
    BounceAOff[2][0] = millis();
    }
   if ((keysA[2][0] == 1) and (lastA[2][0] == 7) and ((millis() - BounceAOff[2][0])   > Delay)) {
    MIDI.sendNoteOff(1, 46, velocity);
    lastA[2][0] = 0;
   }
  
  //A47
  if (lastA[2][1] == 7) {
    BounceAOn[2][1] = millis();
     }
  if ((keysA[2][1] == 0) and (lastA[2][1] == 0) and ((millis() - BounceAOn[2][1])   > Delay)) {
    MIDI.sendNoteOn(1, 47, velocity);
    lastA[2][1] = 7;
   }
  if (lastA[2][1] == 0) {
    BounceAOff[2][1] = millis();
    }
   if ((keysA[2][1] == 1) and (lastA[2][1] == 7) and ((millis() - BounceAOff[2][1])   > Delay)) {
    MIDI.sendNoteOff(1, 47, velocity);
    lastA[2][1] = 0;
   }
  
  //A48
  if (lastA[2][2] == 7) {
    BounceAOn[2][2] = millis();
     }
  if ((keysA[2][2] == 0) and (lastA[2][2] == 0) and ((millis() - BounceAOn[2][2])   > Delay)) {
    MIDI.sendNoteOn(1, 48, velocity);
    lastA[2][2] = 7;
   }
  if (lastA[2][2] == 0) {
    BounceAOff[2][2] = millis();
    }
   if ((keysA[2][2] == 1) and (lastA[2][2] == 7) and ((millis() - BounceAOff[2][2])   > Delay)) {
    MIDI.sendNoteOff(1, 48, velocity);
    lastA[2][2] = 0;
   }

  //A49
  if (lastA[2][3] == 7) {
    BounceAOn[2][3] = millis();
     }
  if ((keysA[2][3] == 0) and (lastA[2][3] == 0) and ((millis() - BounceAOn[2][3])   > Delay)) {
    MIDI.sendNoteOn(1, 49, velocity);
    lastA[2][3] = 7;
   }
    if (lastA[2][3] == 0) {
    BounceAOff[2][3] = millis();
    }
   if ((keysA[2][3] == 1) and (lastA[2][3] == 7) and ((millis() - BounceAOff[2][3])   > Delay)) {
    MIDI.sendNoteOff(1, 49, velocity);
    lastA[2][3] = 0;
   }

  //A50
  if (lastA[2][4] == 7) {
    BounceAOn[2][4] = millis();
     }
  if ((keysA[2][4] == 0) and (lastA[2][4] == 0) and ((millis() - BounceAOn[2][4])   > Delay)) {
    MIDI.sendNoteOn(1, 50, velocity);
    lastA[2][4] = 7;
   }
  if (lastA[2][4] == 0) {
    BounceAOff[2][4] = millis();
    }
   if ((keysA[2][4] == 1) and (lastA[2][4] == 7) and ((millis() - BounceAOff[2][4])   > Delay)) {
    MIDI.sendNoteOff(1, 50, velocity);
    lastA[2][4] = 0;
   }

  //A51
  if (lastA[2][5] == 7) {
    BounceAOn[2][5] = millis();
     }
  if ((keysA[2][5] == 0) and (lastA[2][5] == 0) and ((millis() - BounceAOn[2][5])   > Delay)) {
    MIDI.sendNoteOn(1, 51, velocity);
    lastA[2][5] = 7;
   }
  if (lastA[2][5] == 0) {
    BounceAOff[2][5] = millis();
    }
   if ((keysA[2][5] == 1) and (lastA[2][5] == 7) and ((millis() - BounceAOff[2][5])   > Delay)) {
    MIDI.sendNoteOff(1, 51, velocity);
    lastA[2][5] = 0;
   }

  //A52
  if (lastA[2][6] == 7) {
    BounceAOn[2][6] = millis();
     }
  if ((keysA[2][6] == 0) and (lastA[2][6] == 0) and ((millis() - BounceAOn[2][6])   > Delay)) {
    MIDI.sendNoteOn(1, 52, velocity);
    lastA[2][6] = 7;
   }
  if (lastA[2][6] == 0) {
    BounceAOff[2][6] = millis();
    }
   if ((keysA[2][6] == 1) and (lastA[2][6] == 7) and ((millis() - BounceAOff[2][6])   > Delay)) {
    MIDI.sendNoteOff(1, 52, velocity);
    lastA[2][6] = 0;
   }

  //A53
  if (lastA[2][7] == 7) {
    BounceAOn[2][7] = millis();
     }
  if ((keysA[2][7] == 0) and (lastA[2][7] == 0) and ((millis() - BounceAOn[2][7])   > Delay)) {
    MIDI.sendNoteOn(1, 53, velocity);
    lastA[2][7] = 7;
   }
  if (lastA[2][7] == 0) {
    BounceAOff[2][7] = millis();
    }
   if ((keysA[2][7] == 1) and (lastA[2][7] == 7) and ((millis() - BounceAOff[2][7])   > Delay)) {
    MIDI.sendNoteOff(1, 53, velocity);
    lastA[2][7] = 0;

  //A54
  if (lastA[3][0] == 7) {
    BounceAOn[3][0] = millis();
     }
  if ((keysA[3][0] == 0) and (lastA[3][0] == 0) and ((millis() - BounceAOn[3][0])   > Delay)) {
    MIDI.sendNoteOn(1, 54, velocity);
    lastA[3][0] = 7;
   }
  if (lastA[3][0] == 0) {
    BounceAOff[3][0] = millis();
    }
   if ((keysA[3][0] == 1) and (lastA[3][0] == 7) and ((millis() - BounceAOff[3][0])   > Delay)) {
    MIDI.sendNoteOff(1, 54, velocity);
    lastA[3][0] = 0;
   }

  //A55
  if (lastA[3][1] == 7) {
    BounceAOn[3][1] = millis();
     }
  if ((keysA[3][1] == 0) and (lastA[3][1] == 0) and ((millis() - BounceAOn[3][1])   > Delay)) {
    MIDI.sendNoteOn(1, 55, velocity);
    lastA[3][1] = 7;
   }
  if (lastA[3][1] == 0) {
    BounceAOff[3][1] = millis();
    }
   if ((keysA[3][1] == 1) and (lastA[3][1] == 7) and ((millis() - BounceAOff[3][1])   > Delay)) {
    MIDI.sendNoteOff(1, 55, velocity);
    lastA[3][1] = 0;
   }

  //A56
  if (lastA[3][2] == 7) {
    BounceAOn[3][2] = millis();
     }  
  if ((keysA[3][2] == 0) and (lastA[3][2] == 0) and ((millis() - BounceAOn[3][2])   > Delay)) {
    MIDI.sendNoteOn(1, 56, velocity);
    lastA[3][2] = 7;
   }
  if (lastA[3][2] == 0) {
    BounceAOff[3][2] = millis();
    }
   if ((keysA[3][2] == 1) and (lastA[3][2] == 7) and ((millis() - BounceAOff[3][2])   > Delay)) {
    MIDI.sendNoteOff(1, 56, velocity);
    lastA[3][2] = 0;
   }

  //A57
  if (lastA[3][3] == 7) {
    BounceAOn[3][3] = millis();
     } 
  if ((keysA[3][3] == 0) and (lastA[3][3] == 0) and ((millis() - BounceAOn[3][3])   > Delay)) {
    MIDI.sendNoteOn(1, 57, velocity);
    lastA[3][3] = 7;
   }
  if (lastA[3][3] == 0) {
    BounceAOff[3][3] = millis();
    }
   if ((keysA[3][3] == 1) and (lastA[3][3] == 7) and ((millis() - BounceAOff[3][3])   > Delay)) {
    MIDI.sendNoteOff(1, 57, velocity);
    lastA[3][3] = 0;
   }

  //A58
  if (lastA[3][4] == 7) {
    BounceAOn[3][4] = millis();
     } 
  if ((keysA[3][4] == 0) and (lastA[3][4] == 0) and ((millis() - BounceAOn[3][4])   > Delay)) {
    MIDI.sendNoteOn(1, 58, velocity);
    lastA[3][4] = 7;
   }
  if (lastA[3][4] == 0) {
    BounceAOff[3][4] = millis();
    }
   if ((keysA[3][4] == 1) and (lastA[3][4] == 7) and ((millis() - BounceAOff[3][4])   > Delay)) {
    MIDI.sendNoteOff(1, 58, velocity);
    lastA[3][4] = 0;
   }

  //A59
  if (lastA[3][5] == 7) {
    BounceAOn[3][5] = millis();
     } 
  if ((keysA[3][5] == 0) and (lastA[3][5] == 0) and ((millis() - BounceAOn[3][5])   > Delay)) {
    MIDI.sendNoteOn(1, 59, velocity);
    lastA[3][5] = 7;
   }
  if (lastA[3][5] == 0) {
    BounceAOff[3][5] = millis();
    }
   if ((keysA[3][5] == 1) and (lastA[3][5] == 7) and ((millis() - BounceAOff[3][5])   > Delay)) {
    MIDI.sendNoteOff(1, 59, velocity);
    lastA[3][5] = 0;
   }

  //A60
  if (lastA[3][6] == 7) {
    BounceAOn[3][6] = millis();
     }
  if ((keysA[3][6] == 0) and (lastA[3][6] == 0) and ((millis() - BounceAOn[3][6])   > Delay)) {
    MIDI.sendNoteOn(1, 60, velocity);
    lastA[3][6] = 7;
   }
  if (lastA[3][6] == 0) {
    BounceAOff[3][6] = millis();
    }
   if ((keysA[3][6] == 1) and (lastA[3][6] == 7) and ((millis() - BounceAOff[3][6])   > Delay)) {
    MIDI.sendNoteOff(1, 60, velocity);
    lastA[3][6] = 0;
   }

  //A61
  if (lastA[3][7] == 7) {
    BounceAOn[3][7] = millis();
     }
  if ((keysA[3][7] == 0) and (lastA[3][7] == 0) and ((millis() - BounceAOn[3][7])   > Delay)) {
    MIDI.sendNoteOn(1, 61, velocity);
    lastA[3][7] = 7;
   }
  if (lastA[3][7] == 0) {
    BounceAOff[3][7] = millis();
    }
   if ((keysA[3][7] == 1) and (lastA[3][7] == 7) and ((millis() - BounceAOff[3][7])   > Delay)) {
    MIDI.sendNoteOff(1, 61, velocity);
    lastA[3][7] = 0;

  //A62
  if (lastA[4][0] == 7) {
    BounceAOn[4][0] = millis();
     } 
  if ((keysA[4][0] == 0) and (lastA[4][0] == 0) and ((millis() - BounceAOn[4][0])   > Delay)) {
    MIDI.sendNoteOn(1, 62, velocity);
    lastA[4][0] = 7;
   }
  if (lastA[4][0] == 0) {
    BounceAOff[4][0] = millis();
    }
   if ((keysA[4][0] == 1) and (lastA[4][0] == 7) and ((millis() - BounceAOff[4][0])   > Delay)) {
    MIDI.sendNoteOff(1, 62, velocity);
    lastA[4][0] = 0;
   }

  //A63
  if (lastA[4][1] == 7) {
    BounceAOn[4][1] = millis();
     } 
  if ((keysA[4][1] == 0) and (lastA[4][1] == 0) and ((millis() - BounceAOn[4][1])   > Delay)) {
    MIDI.sendNoteOn(1, 63, velocity);
    lastA[4][1] = 7;
   }
  if (lastA[4][1] == 0) {
    BounceAOff[4][1] = millis();
    }
   if ((keysA[4][1] == 1) and (lastA[4][1] == 7) and ((millis() - BounceAOff[4][1])   > Delay)) {
    MIDI.sendNoteOff(1, 63, velocity);
    lastA[4][1] = 0;
   }

  //A64
  if (lastA[4][2] == 7) {
    BounceAOn[4][2] = millis();
     } 
  if ((keysA[4][2] == 0) and (lastA[4][2] == 0) and ((millis() - BounceAOn[4][2])   > Delay)) {
    MIDI.sendNoteOn(1, 64, velocity);
    lastA[4][2] = 7;
   }
  if (lastA[4][2] == 0) {
    BounceAOff[4][2] = millis();
    }
   if ((keysA[4][2] == 1) and (lastA[4][2] == 7) and ((millis() - BounceAOff[4][2])   > Delay)) {
    MIDI.sendNoteOff(1, 64, velocity);
    lastA[4][2] = 0;
   }

  //A65
  if (lastA[4][3] == 7) {
    BounceAOn[4][3] = millis();
     } 
  if ((keysA[4][3] == 0) and (lastA[4][3] == 0) and ((millis() - BounceAOn[4][3])   > Delay)) {
    MIDI.sendNoteOn(1, 65, velocity);
    lastA[4][3] = 7;
   }
  if (lastA[4][3] == 0) {
    BounceAOff[4][3] = millis();
    }
   if ((keysA[4][3] == 1) and (lastA[4][3] == 7) and ((millis() - BounceAOff[4][3])   > Delay)) {
    MIDI.sendNoteOff(1, 65, velocity);
    lastA[4][3] = 0;
   }

  //66
  if (lastA[4][4] == 7) {
    BounceAOn[4][4] = millis();
     } 
  if ((keysA[4][4] == 0) and (lastA[4][4] == 0) and ((millis() - BounceAOn[4][4])   > Delay)) {
    MIDI.sendNoteOn(1, 66, velocity);
    lastA[4][4] = 7;
   }
  if (lastA[4][4] == 0) {
    BounceAOff[4][4] = millis();
    }
   if ((keysA[4][4] == 1) and (lastA[4][4] == 7) and ((millis() - BounceAOff[4][4])   > Delay)) {
    MIDI.sendNoteOff(1, 66, velocity);
    lastA[4][4] = 0;
   }

  //A67
  if (lastA[4][5] == 7) {
    BounceAOn[4][5] = millis();
     } 
  if ((keysA[4][5] == 0) and (lastA[4][5] == 0) and ((millis() - BounceAOn[4][5])   > Delay)) {
    MIDI.sendNoteOn(1, 67, velocity);
    lastA[4][5] = 7;
   }
  if (lastA[4][5] == 0) {
    BounceAOff[4][5] = millis();
    }
   if ((keysA[4][5] == 1) and (lastA[4][5] == 7) and ((millis() - BounceAOff[4][5])   > Delay)) {
    MIDI.sendNoteOff(1, 67, velocity);
    lastA[4][5] = 0;
   }

  //A68
  if (lastA[4][6] == 7) {
    BounceAOn[4][6] = millis();
     }
  if ((keysA[4][6] == 0) and (lastA[4][6] == 0) and ((millis() - BounceAOn[4][6])   > Delay)) {
    MIDI.sendNoteOn(1, 68, velocity);
    lastA[4][6] = 7;
   }
  if (lastA[4][6] == 0) {
    BounceAOff[4][6] = millis();
    }
   if ((keysA[4][6] == 1) and (lastA[4][6] == 7) and ((millis() - BounceAOff[4][6])   > Delay)) {
    MIDI.sendNoteOff(1, 68, velocity);
    lastA[4][6] = 0;
   }

  //A69
  if (lastA[4][7] == 7) {
    BounceAOn[4][7] = millis();
     }
  if ((keysA[4][7] == 0) and (lastA[4][7] == 0) and ((millis() - BounceAOn[4][7])   > Delay)) {
    MIDI.sendNoteOn(1, 69, velocity);
    lastA[4][7] = 7;
   }
  if (lastA[4][7] == 0) {
    BounceAOff[4][7] = millis();
    }
   if ((keysA[4][7] == 1) and (lastA[4][7] == 7) and ((millis() - BounceAOff[4][7])   > Delay)) {
    MIDI.sendNoteOff(1, 69, velocity);
    lastA[4][7] = 0;

  //A70
  if (lastA[5][0] == 7) {
    BounceAOn[5][0] = millis();
     } 
  if ((keysA[5][0] == 0) and (lastA[5][0] == 0) and ((millis() - BounceAOn[5][0])   > Delay)) {
    MIDI.sendNoteOn(1, 70, velocity);
    lastA[5][0] = 7;
   }
  if (lastA[5][0] == 0) {
    BounceAOff[5][0] = millis();
    }
   if ((keysA[5][0] == 1) and (lastA[5][0] == 7) and ((millis() - BounceAOff[5][0])   > Delay)) {
    MIDI.sendNoteOff(1, 70, velocity);
    lastA[5][0] = 0;
   }

  //A71
  if (lastA[5][1] == 7) {
    BounceAOn[5][1] = millis();
     } 
  if ((keysA[5][1] == 0) and (lastA[5][1] == 0) and ((millis() - BounceAOn[5][1])   > Delay)) {
    MIDI.sendNoteOn(1, 71, velocity);
    lastA[5][1] = 7;
   }
  if (lastA[5][1] == 0) {
    BounceAOff[5][1] = millis();
    }
   if ((keysA[5][1] == 1) and (lastA[5][1] == 7) and ((millis() - BounceAOff[5][1])   > Delay)) {
    MIDI.sendNoteOff(1, 71, velocity);
    lastA[5][1] = 0;
   }

  //A72
  if (lastA[5][2] == 7) {
    BounceAOn[5][2] = millis();
     } 
  if ((keysA[5][2] == 0) and (lastA[5][2] == 0) and ((millis() - BounceAOn[5][2])   > Delay)) {
    MIDI.sendNoteOn(1, 72, velocity);
    lastA[5][2] = 7;
   }
  if (lastA[5][2] == 0) {
    BounceAOff[5][2] = millis();
    }
   if ((keysA[5][2] == 1) and (lastA[5][2] == 7) and ((millis() - BounceAOff[5][2])   > Delay)) {
    MIDI.sendNoteOff(1, 72, velocity);
    lastA[5][2] = 0;
   }

  //A73
  if (lastA[5][3] == 7) {
    BounceAOn[5][3] = millis();
     } 
  if ((keysA[5][3] == 0) and (lastA[5][3] == 0) and ((millis() - BounceAOn[5][3])   > Delay)) {
    MIDI.sendNoteOn(1, 73, velocity);
    lastA[5][3] = 7;
   }
  if (lastA[5][3] == 0) {
    BounceAOff[5][3] = millis();
    }
   if ((keysA[5][3] == 1) and (lastA[5][3] == 7) and ((millis() - BounceAOff[5][3])   > Delay)) {
    MIDI.sendNoteOff(1, 73, velocity);
    lastA[5][3] = 0;
   }

  //A74
  if (lastA[5][4] == 7) {
    BounceAOn[5][4] = millis();
     } 
  if ((keysA[5][4] == 0) and (lastA[5][4] == 0) and ((millis() - BounceAOn[5][4])   > Delay)) {
    MIDI.sendNoteOn(1, 74, velocity);
    lastA[5][4] = 7;
   }
  if (lastA[5][4] == 0) {
    BounceAOff[5][4] = millis();
    }
   if ((keysA[5][4] == 1) and (lastA[5][4] == 7) and ((millis() - BounceAOff[5][4])   > Delay)) {
    MIDI.sendNoteOff(1, 74, velocity);
    lastA[5][4] = 0;
   }

  //A75
  if (lastA[5][5] == 7) {
    BounceAOn[5][5] = millis();
     } 
  if ((keysA[5][5] == 0) and (lastA[5][5] == 0) and ((millis() - BounceAOn[5][5])   > Delay)) {
    MIDI.sendNoteOn(1, 75, velocity);
    lastA[5][5] = 7;
   }
  if (lastA[5][5] == 0) {
    BounceAOff[5][5] = millis();
    }
   if ((keysA[5][5] == 1) and (lastA[5][5] == 7) and ((millis() - BounceAOff[5][5])   > Delay)) {
    MIDI.sendNoteOff(1, 75, velocity);
    lastA[5][5] = 0;
   }

  //A76
  if (lastA[5][6] == 7) {
    BounceAOn[5][6] = millis();
     }
  if ((keysA[5][6] == 0) and (lastA[5][6] == 0) and ((millis() - BounceAOn[5][6])   > Delay)) {
    MIDI.sendNoteOn(1, 76, velocity);
    lastA[5][6] = 7;
   }
  if (lastA[5][6] == 0) {
    BounceAOff[5][6] = millis();
    }
   if ((keysA[5][6] == 1) and (lastA[5][6] == 7) and ((millis() - BounceAOff[5][6])   > Delay)) {
    MIDI.sendNoteOff(1, 76, velocity);
    lastA[5][6] = 0;
   }

  //A77
  if (lastA[5][7] == 7) {
    BounceAOn[5][7] = millis();
     }
  if ((keysA[5][7] == 0) and (lastA[5][7] == 0) and ((millis() - BounceAOn[5][7])   > Delay)) {
    MIDI.sendNoteOn(1, 77, velocity);
    lastA[5][7] = 7;
   }
  if (lastA[5][7] == 0) {
    BounceAOff[5][7] = millis();
    }
   if ((keysA[5][7] == 1) and (lastA[5][7] == 7) and ((millis() - BounceAOff[5][7])   > Delay)) {
    MIDI.sendNoteOff(1, 77, velocity);
    lastA[5][7] = 0;

  //A78
  if (lastA[6][0] == 7) {
    BounceAOn[6][0] = millis();
     } 
  if ((keysA[6][0] == 0) and (lastA[6][0] == 0) and ((millis() - BounceAOn[6][0])   > Delay)) {
    MIDI.sendNoteOn(1, 78, velocity);
    lastA[6][0] = 7;
   }
  if (lastA[6][0] == 0) {
    BounceAOff[6][0] = millis();
    }
   if ((keysA[6][0] == 1) and (lastA[6][0] == 7) and ((millis() - BounceAOff[6][0])   > Delay)) {
    MIDI.sendNoteOff(1, 78, velocity);
    lastA[6][0] = 0;
   }

  //A79
  if (lastA[6][1] == 7) {
    BounceAOn[6][1] = millis();
     } 
  if ((keysA[6][1] == 0) and (lastA[6][1] == 0) and ((millis() - BounceAOn[6][1])   > Delay)) {
    MIDI.sendNoteOn(1, 79, velocity);
    lastA[6][1] = 7;
   }
  if (lastA[6][1] == 0) {
    BounceAOff[6][1] = millis();
    }
   if ((keysA[6][1] == 1) and (lastA[6][1] == 7) and ((millis() - BounceAOff[6][1])   > Delay)) {
    MIDI.sendNoteOff(1, 79, velocity);
    lastA[6][1] = 0;
   }

  //A80
  if (lastA[6][2] == 7) {
    BounceAOn[6][2] = millis();
     } 
  if ((keysA[6][2] == 0) and (lastA[6][2] == 0) and ((millis() - BounceAOn[6][2])   > Delay)) {
    MIDI.sendNoteOn(1, 80, velocity);
    lastA[6][2] = 7;
   }
  if (lastA[6][2] == 0) {
    BounceAOff[6][2] = millis();
    }
   if ((keysA[6][2] == 1) and (lastA[6][2] == 7) and ((millis() - BounceAOff[6][2])   > Delay)) {
    MIDI.sendNoteOff(1, 80, velocity);
    lastA[6][2] = 0;
   }

  //A81
  if (lastA[6][3] == 7) {
    BounceAOn[6][3] = millis();
     } 
  if ((keysA[6][3] == 0) and (lastA[6][3] == 0) and ((millis() - BounceAOn[6][3])   > Delay)) {
    MIDI.sendNoteOn(1, 81, velocity);
    lastA[6][3] = 7;
   }
  if (lastA[6][3] == 0) {
    BounceAOff[6][3] = millis();
    }
   if ((keysA[6][3] == 1) and (lastA[6][3] == 7) and ((millis() - BounceAOff[6][3])   > Delay)) {
    MIDI.sendNoteOff(1, 81, velocity);
    lastA[6][3] = 0;
   }

  //A82
  if (lastA[6][4] == 7) {
    BounceAOn[6][4] = millis();
     } 
  if ((keysA[6][4] == 0) and (lastA[6][4] == 0) and ((millis() - BounceAOn[6][4])   > Delay)) {
    MIDI.sendNoteOn(1, 82, velocity);
    lastA[6][4] = 7;
   }
  if (lastA[6][4] == 0) {
    BounceAOff[6][4] = millis();
    }
   if ((keysA[6][4] == 1) and (lastA[6][4] == 7) and ((millis() - BounceAOff[6][4])   > Delay)) {
    MIDI.sendNoteOff(1, 82, velocity);
    lastA[6][4] = 0;
   }

  //A83
  if (lastA[6][5] == 7) {
    BounceAOn[6][5] = millis();
     } 
  if ((keysA[6][5] == 0) and (lastA[6][5] == 0) and ((millis() - BounceAOn[6][5])   > Delay)) {
    MIDI.sendNoteOn(1, 83, velocity);
    lastA[6][5] = 7;
   }
  if (lastA[6][5] == 0) {
    BounceAOff[6][5] = millis();
    }
   if ((keysA[6][5] == 1) and (lastA[6][5] == 7) and ((millis() - BounceAOff[6][5])   > Delay)) {
    MIDI.sendNoteOff(1, 83, velocity);
    lastA[6][5] = 0;
   }

  //A84
  if (lastA[6][6] == 7) {
    BounceAOn[6][6] = millis();
     }
  if ((keysA[6][6] == 0) and (lastA[6][6] == 0) and ((millis() - BounceAOn[6][6])   > Delay)) {
    MIDI.sendNoteOn(1, 84, velocity);
    lastA[6][6] = 7;
   }
  if (lastA[6][6] == 0) {
    BounceAOff[6][6] = millis();
    }
   if ((keysA[6][6] == 1) and (lastA[6][6] == 7) and ((millis() - BounceAOff[6][6])   > Delay)) {
    MIDI.sendNoteOff(1, 84, velocity);
    lastA[6][6] = 0;
   }

  //A85
  if (lastA[6][7] == 7) {
    BounceAOn[6][7] = millis();
     }
  if ((keysA[6][7] == 0) and (lastA[6][7] == 0) and ((millis() - BounceAOn[6][7])   > Delay)) {
    MIDI.sendNoteOn(1, 85, velocity);
    lastA[6][7] = 7;
   }
  if (lastA[6][7] == 0) {
    BounceAOff[6][7] = millis();
    }
   if ((keysA[6][7] == 1) and (lastA[6][7] == 7) and ((millis() - BounceAOff[6][7])   > Delay)) {
    MIDI.sendNoteOff(1, 85, velocity);
    lastA[6][7] = 0;

  //A86
  if (lastA[7][0] == 7) {
    BounceAOn[7][0] = millis();
     } 
  if ((keysA[7][0] == 0) and (lastA[7][0] == 0) and ((millis() - BounceAOn[7][0])   > Delay)) {
    MIDI.sendNoteOn(1, 86, velocity);
    lastA[7][0] = 7;
   }
  if (lastA[7][0] == 0) {
    BounceAOff[7][0] = millis();
    }
   if ((keysA[7][0] == 1) and (lastA[7][0] == 7) and ((millis() - BounceAOff[7][0])   > Delay)) {
    MIDI.sendNoteOff(1, 86, velocity);
    lastA[7][0] = 0;
   }

  //A87
  if (lastA[7][1] == 7) {
    BounceAOn[7][1] = millis();
     } 
  if ((keysA[7][1] == 0) and (lastA[7][1] == 0) and ((millis() - BounceAOn[7][1])   > Delay)) {
    MIDI.sendNoteOn(1, 87, velocity);
    lastA[7][1] = 7;
   }
  if (lastA[7][1] == 0) {
    BounceAOff[7][1] = millis();
    }
   if ((keysA[7][1] == 1) and (lastA[7][1] == 7) and ((millis() - BounceAOff[7][1])   > Delay)) {
    MIDI.sendNoteOff(1, 87, velocity);
    lastA[7][1] = 0;
   }

  //A88
  if (lastA[7][2] == 7) {
    BounceAOn[7][2] = millis();
     } 
  if ((keysA[7][2] == 0) and (lastA[7][2] == 0) and ((millis() - BounceAOn[7][2])   > Delay)) {
    MIDI.sendNoteOn(1, 88, velocity);
    lastA[7][2] = 7;
   }
  if (lastA[7][2] == 0) {
    BounceAOff[7][2] = millis();
    }
   if ((keysA[7][2] == 1) and (lastA[7][2] == 7) and ((millis() - BounceAOff[7][2])   > Delay)) {
    MIDI.sendNoteOff(1, 88, velocity);
    lastA[7][2] = 0;
   }

  //A89
  if (lastA[7][3] == 7) {
    BounceAOn[7][3] = millis();
     } 
  if ((keysA[7][3] == 0) and (lastA[7][3] == 0) and ((millis() - BounceAOn[7][3])   > Delay)) {
    MIDI.sendNoteOn(1, 89, velocity);
    lastA[7][3] = 7;
   }
  if (lastA[7][3] == 0) {
    BounceAOff[7][3] = millis();
    }
   if ((keysA[7][3] == 1) and (lastA[7][3] == 7) and ((millis() - BounceAOff[7][3])   > Delay)) {
    MIDI.sendNoteOff(1, 89, velocity);
    lastA[7][3] = 0;
   }

  //A90
  if (lastA[7][4] == 7) {
    BounceAOn[7][4] = millis();
     } 
  if ((keysA[7][4] == 0) and (lastA[7][4] == 0) and ((millis() - BounceAOn[7][4])   > Delay)) {
    MIDI.sendNoteOn(1, 90, velocity);
    lastA[7][4] = 7;
   }
  if (lastA[7][4] == 0) {
    BounceAOff[7][4] = millis();
    }
   if ((keysA[7][4] == 1) and (lastA[7][4] == 7) and ((millis() - BounceAOff[7][4])   > Delay)) {
    MIDI.sendNoteOff(1, 90, velocity);
    lastA[7][4] = 0;
   }

  //A91
  if (lastA[7][5] == 7) {
    BounceAOn[7][5] = millis();
     } 
  if ((keysA[7][5] == 0) and (lastA[7][5] == 0) and ((millis() - BounceAOn[7][5])   > Delay)) {
    MIDI.sendNoteOn(1, 91, velocity);
    lastA[7][5] = 7;
   }
  if (lastA[7][5] == 0) {
    BounceAOff[7][5] = millis();
    }
   if ((keysA[7][5] == 1) and (lastA[7][5] == 7) and ((millis() - BounceAOff[7][5])   > Delay)) {
    MIDI.sendNoteOff(1, 91, velocity);
    lastA[7][5] = 0;
   }

  //A92
  if (lastA[7][6] == 7) {
    BounceAOn[7][6] = millis();
     }
  if ((keysA[7][6] == 0) and (lastA[7][6] == 0) and ((millis() - BounceAOn[7][6])   > Delay)) {
    MIDI.sendNoteOn(1, 92, velocity);
    lastA[7][6] = 7;
   }
  if (lastA[7][6] == 0) {
    BounceAOff[7][6] = millis();
    }
   if ((keysA[7][6] == 1) and (lastA[7][6] == 7) and ((millis() - BounceAOff[7][6])   > Delay)) {
    MIDI.sendNoteOff(1, 92, velocity);
    lastA[7][6] = 0;
   }

  //A93
  if (lastA[7][7] == 7) {
    BounceAOn[7][7] = millis();
     }
  if ((keysA[7][7] == 0) and (lastA[7][7] == 0) and ((millis() - BounceAOn[7][7])   > Delay)) {
    MIDI.sendNoteOn(1, 93, velocity);
    lastA[7][7] = 7;
   }
  if (lastA[7][7] == 0) {
    BounceAOff[7][7] = millis();
    }
   if ((keysA[7][7] == 1) and (lastA[7][7] == 7) and ((millis() - BounceAOff[7][7])   > Delay)) {
    MIDI.sendNoteOff(1, 93, velocity);
    lastA[7][7] = 0;

  //A94
  if (lastA[8][0] == 7) {
    BounceAOn[8][0] = millis();
     } 
  if ((keysA[8][0] == 0) and (lastA[8][0] == 0) and ((millis() - BounceAOn[8][0])   > Delay)) {
    MIDI.sendNoteOn(1, 94, velocity);
    lastA[8][0] = 7;
   }
  if (lastA[8][0] == 0) {
    BounceAOff[8][0] = millis();
    }
   if ((keysA[8][0] == 1) and (lastA[8][0] == 7) and ((millis() - BounceAOff[8][0])   > Delay)) {
    MIDI.sendNoteOff(1, 94, velocity);
    lastA[8][0] = 0;
   }

  //A95
  if (lastA[8][1] == 7) {
    BounceAOn[8][1] = millis();
     } 
  if ((keysA[8][1] == 0) and (lastA[8][1] == 0) and ((millis() - BounceAOn[8][1])   > Delay)) {
    MIDI.sendNoteOn(1, 95, velocity);
    lastA[8][1] = 7;
   }
  if (lastA[8][1] == 0) {
    BounceAOff[8][1] = millis();
    }
   if ((keysA[8][1] == 1) and (lastA[8][1] == 7) and ((millis() - BounceAOff[8][1])   > Delay)) {
    MIDI.sendNoteOff(1, 95, velocity);
    lastA[8][1] = 0;
   }

  //A96
  if (lastA[8][2] == 7) {
    BounceAOn[8][2] = millis();
     } 
  if ((keysA[8][2] == 0) and (lastA[8][2] == 0) and ((millis() - BounceAOn[8][2])   > Delay)) {
    MIDI.sendNoteOn(1, 96, velocity);
    lastA[8][2] = 7;
   }
  if (lastA[8][2] == 0) {
    BounceAOff[8][2] = millis();
    }
   if ((keysA[8][2] == 1) and (lastA[8][2] == 7) and ((millis() - BounceAOff[8][2])   > Delay)) {
    MIDI.sendNoteOff(1, 96, velocity);
    lastA[8][2] = 0;
   }

  //A97
  if (lastA[8][3] == 7) {
    BounceAOn[8][3] = millis();
     } 
  if ((keysA[8][3] == 0) and (lastA[8][3] == 0) and ((millis() - BounceAOn[8][3])   > Delay)) {
    MIDI.sendNoteOn(1, 97, velocity);
    lastA[8][3] = 7;
   }
  if (lastA[8][3] == 0) {
    BounceAOff[8][3] = millis();
    }
   if ((keysA[8][3] == 1) and (lastA[8][3] == 7) and ((millis() - BounceAOff[8][3])   > Delay)) {
    MIDI.sendNoteOff(1, 97, velocity);
    lastA[8][3] = 0;
   }

  //A98
  if (lastA[8][4] == 7) {
    BounceAOn[8][4] = millis();
     } 
  if ((keysA[8][4] == 0) and (lastA[8][4] == 0) and ((millis() - BounceAOn[8][4])   > Delay)) {
    MIDI.sendNoteOn(1, 98, velocity);
    lastA[8][4] = 7;
   }
  if (lastA[8][4] == 0) {
    BounceAOff[8][4] = millis();
    }
   if ((keysA[8][4] == 1) and (lastA[8][4] == 7) and ((millis() - BounceAOff[8][4])   > Delay)) {
    MIDI.sendNoteOff(1, 98, velocity);
    lastA[8][4] = 0;
   }

  //A99
  if (lastA[8][5] == 7) {
    BounceAOn[8][5] = millis();
     } 
  if ((keysA[8][5] == 0) and (lastA[8][5] == 0) and ((millis() - BounceAOn[8][5])   > Delay)) {
    MIDI.sendNoteOn(1, 99, velocity);
    lastA[8][5] = 7;
   }
  if (lastA[8][5] == 0) {
    BounceAOff[8][5] = millis();
    }
   if ((keysA[8][5] == 1) and (lastA[8][5] == 7) and ((millis() - BounceAOff[8][5])   > Delay)) {
    MIDI.sendNoteOff(1, 99, velocity);
    lastA[8][5] = 0;
   }

  //A100
  if (lastA[8][6] == 7) {
    BounceAOn[8][6] = millis();
     }
  if ((keysA[8][6] == 0) and (lastA[8][6] == 0) and ((millis() - BounceAOn[8][6])   > Delay)) {
    MIDI.sendNoteOn(1, 100, velocity);
    lastA[8][6] = 7;
   }
  if (lastA[8][6] == 0) {
    BounceAOff[8][6] = millis();
    }
   if ((keysA[8][6] == 1) and (lastA[8][6] == 7) and ((millis() - BounceAOff[8][6])   > Delay)) {
    MIDI.sendNoteOff(1, 100, velocity);
    lastA[8][6] = 0;
   }

  //A101
  if (lastA[8][7] == 7) {
    BounceAOn[8][7] = millis();
     }
  if ((keysA[8][7] == 0) and (lastA[8][7] == 0) and ((millis() - BounceAOn[8][7])   > Delay)) {
    MIDI.sendNoteOn(1, 101, velocity);
    lastA[8][7] = 7;
   }
  if (lastA[8][7] == 0) {
    BounceAOff[8][7] = millis();
    }
   if ((keysA[8][7] == 1) and (lastA[8][7] == 7) and ((millis() - BounceAOff[8][7])   > Delay)) {
    MIDI.sendNoteOff(1, 101, velocity);
    lastA[8][7] = 0;

  //A102
  if (lastA[9][0] == 7) {
    BounceAOn[9][0] = millis();
     } 
  if ((keysA[9][0] == 0) and (lastA[9][0] == 0) and ((millis() - BounceAOn[9][0])   > Delay)) {
    MIDI.sendNoteOn(1, 102, velocity);
    lastA[9][0] = 7;
   }
  if (lastA[9][0] == 0) {
    BounceAOff[9][0] = millis();
    }
   if ((keysA[9][0] == 1) and (lastA[9][0] == 7) and ((millis() - BounceAOff[9][0])   > Delay)) {
    MIDI.sendNoteOff(1, 102, velocity);
    lastA[9][0] = 0;
   }

  //A103
  if (lastA[9][1] == 7) {
    BounceAOn[9][1] = millis();
     } 
  if ((keysA[9][1] == 0) and (lastA[9][1] == 0) and ((millis() - BounceAOn[9][1])   > Delay)) {
    MIDI.sendNoteOn(1, 103, velocity);
    lastA[9][1] = 7;
   }
  if (lastA[9][1] == 0) {
    BounceAOff[9][1] = millis();
    }
   if ((keysA[9][1] == 1) and (lastA[9][1] == 7) and ((millis() - BounceAOff[9][1])   > Delay)) {
    MIDI.sendNoteOff(1, 103, velocity);
    lastA[9][1] = 0;
   }

  //A104
  if (lastA[9][2] == 7) {
    BounceAOn[9][2] = millis();
     } 
  if ((keysA[9][2] == 0) and (lastA[9][2] == 0) and ((millis() - BounceAOn[9][2])   > Delay)) {
    MIDI.sendNoteOn(1, 104, velocity);
    lastA[9][2] = 7;
   }
  if (lastA[9][2] == 0) {
    BounceAOff[9][2] = millis();
    }
   if ((keysA[9][2] == 1) and (lastA[9][2] == 7) and ((millis() - BounceAOff[9][2])   > Delay)) {
    MIDI.sendNoteOff(1, 104, velocity);
    lastA[9][2] = 0;
   }

  //A105
  if (lastA[9][3] == 7) {
    BounceAOn[9][3] = millis();
     } 
  if ((keysA[9][3] == 0) and (lastA[9][3] == 0) and ((millis() - BounceAOn[9][3])   > Delay)) {
    MIDI.sendNoteOn(1, 105, velocity);
    lastA[9][3] = 7;
   }
  if (lastA[9][3] == 0) {
    BounceAOff[9][3] = millis();
    }
   if ((keysA[9][3] == 1) and (lastA[9][3] == 7) and ((millis() - BounceAOff[9][3])   > Delay)) {
    MIDI.sendNoteOff(1, 105, velocity);
    lastA[9][3] = 0;
   }

  //A106
  if (lastA[9][4] == 7) {
    BounceAOn[9][4] = millis();
     } 
  if ((keysA[9][4] == 0) and (lastA[9][4] == 0) and ((millis() - BounceAOn[9][4])   > Delay)) {
    MIDI.sendNoteOn(1, 106, velocity);
    lastA[9][4] = 7;
   }
  if (lastA[9][4] == 0) {
    BounceAOff[9][4] = millis();
    }
   if ((keysA[9][4] == 1) and (lastA[9][4] == 7) and ((millis() - BounceAOff[9][4])   > Delay)) {
    MIDI.sendNoteOff(1, 106, velocity);
    lastA[9][4] = 0;
   }

  //A107
  if (lastA[9][5] == 7) {
    BounceAOn[9][5] = millis();
     } 
  if ((keysA[9][5] == 0) and (lastA[9][5] == 0) and ((millis() - BounceAOn[9][5])   > Delay)) {
    MIDI.sendNoteOn(1, 107, velocity);
    lastA[9][5] = 7;
   }
  if (lastA[9][5] == 0) {
    BounceAOff[9][5] = millis();
    }
   if ((keysA[9][5] == 1) and (lastA[9][5] == 7) and ((millis() - BounceAOff[9][5])   > Delay)) {
    MIDI.sendNoteOff(1, 107, velocity);
    lastA[9][5] = 0;
   }

  //A108
  if (lastA[9][6] == 7) {
    BounceAOn[9][6] = millis();
     }
  if ((keysA[9][6] == 0) and (lastA[9][6] == 0) and ((millis() - BounceAOn[9][6])   > Delay)) {
    MIDI.sendNoteOn(1, 108, velocity);
    lastA[9][6] = 7;
   }
  if (lastA[9][6] == 0) {
    BounceAOff[9][6] = millis();
    }
   if ((keysA[9][6] == 1) and (lastA[9][6] == 7) and ((millis() - BounceAOff[9][6])   > Delay)) {
    MIDI.sendNoteOff(1, 108, velocity);
    lastA[9][6] = 0;
   }

  //A109
  if (lastA[9][7] == 7) {
    BounceAOn[9][7] = millis();
     }
  if ((keysA[9][7] == 0) and (lastA[9][7] == 0) and ((millis() - BounceAOn[9][7])   > Delay)) {
    MIDI.sendNoteOn(1, 109, velocity);
    lastA[9][7] = 7;
   }
  if (lastA[9][7] == 0) {
    BounceAOff[9][7] = millis();
    }
   if ((keysA[9][7] == 1) and (lastA[9][7] == 7) and ((millis() - BounceAOff[9][7])   > Delay)) {
    MIDI.sendNoteOff(1, 109, velocity);
    lastA[9][7] = 0;

  //A110															LEFT OFF HERE_____________________________________
  if (lastA[10][0] == 7) {
    BounceAOn[10][0] = millis();
     } 
  if ((keysA[10][0] == 0) and (lastA[10][0] == 0) and ((millis() - BounceAOn[10][0])   > Delay)) {
    MIDI.sendNoteOn(1, 110, velocity);
    lastA[10][0] = 7;
   }
  if (lastA[10][0] == 0) {
    BounceAOff[10][0] = millis();
    }
   if ((keysA[10][0] == 1) and (lastA[10][0] == 7) and ((millis() - BounceAOff[10][0])   > Delay)) {
    MIDI.sendNoteOff(1, 110, velocity);
    lastA[10][0] = 0;
   }

  //A111
  if (lastA[10][1] == 7) {
    BounceAOn[10][1] = millis();
     } 
  if ((keysA[10][1] == 0) and (lastA[10][1] == 0) and ((millis() - BounceAOn[10][1])   > Delay)) {
    MIDI.sendNoteOn(1, 111, velocity);
    lastA[10][1] = 7;
   }
  if (lastA[10][1] == 0) {
    BounceAOff[10][1] = millis();
    }
   if ((keysA[10][1] == 1) and (lastA[10][1] == 7) and ((millis() - BounceAOff[10][1])   > Delay)) {
    MIDI.sendNoteOff(1, 111, velocity);
    lastA[10][1] = 0;
   }

  //A112
  if (lastA[10][2] == 7) {
    BounceAOn[10][2] = millis();
     } 
  if ((keysA[10][2] == 0) and (lastA[10][2] == 0) and ((millis() - BounceAOn[10][2])   > Delay)) {
    MIDI.sendNoteOn(1, 112, velocity);
    lastA[10][2] = 7;
   }
  if (lastA[10][2] == 0) {
    BounceAOff[10][2] = millis();
    }
   if ((keysA[10][2] == 1) and (lastA[10][2] == 7) and ((millis() - BounceAOff[10][2])   > Delay)) {
    MIDI.sendNoteOff(1, 112, velocity);
    lastA[10][2] = 0;
   }

  //A113
  if (lastA[10][3] == 7) {
    BounceAOn[10][3] = millis();
     } 
  if ((keysA[10][3] == 0) and (lastA[10][3] == 0) and ((millis() - BounceAOn[10][3])   > Delay)) {
    MIDI.sendNoteOn(1, 113, velocity);
    lastA[10][3] = 7;
   }
  if (lastA[10][3] == 0) {
    BounceAOff[10][3] = millis();
    }
   if ((keysA[10][3] == 1) and (lastA[10][3] == 7) and ((millis() - BounceAOff[10][3])   > Delay)) {
    MIDI.sendNoteOff(1, 113, velocity);
    lastA[10][3] = 0;
   }

  //A114
  if (lastA[10][4] == 7) {
    BounceAOn[10][4] = millis();
     } 
  if ((keysA[10][4] == 0) and (lastA[10][4] == 0) and ((millis() - BounceAOn[10][4])   > Delay)) {
    MIDI.sendNoteOn(1, 114, velocity);
    lastA[10][4] = 7;
   }
  if (lastA[10][4] == 0) {
    BounceAOff[10][4] = millis();
    }
   if ((keysA[10][4] == 1) and (lastA[10][4] == 7) and ((millis() - BounceAOff[10][4])   > Delay)) {
    MIDI.sendNoteOff(1, 114, velocity);
    lastA[10][4] = 0;
   }

  //A115
  if (lastA[10][5] == 7) {
    BounceAOn[10][5] = millis();
     } 
  if ((keysA[10][5] == 0) and (lastA[10][5] == 0) and ((millis() - BounceAOn[10][5])   > Delay)) {
    MIDI.sendNoteOn(1, 115, velocity);
    lastA[10][5] = 7;
   }
  if (lastA[10][5] == 0) {
    BounceAOff[10][5] = millis();
    }
   if ((keysA[10][5] == 1) and (lastA[10][5] == 7) and ((millis() - BounceAOff[10][5])   > Delay)) {
    MIDI.sendNoteOff(1, 115, velocity);
    lastA[10][5] = 0;
   }

  //A116
  if (lastA[10][6] == 7) {
    BounceAOn[10][6] = millis();
     }
  if ((keysA[10][6] == 0) and (lastA[10][6] == 0) and ((millis() - BounceAOn[10][6])   > Delay)) {
    MIDI.sendNoteOn(1, 116, velocity);
    lastA[10][6] = 7;
   }
  if (lastA[10][6] == 0) {
    BounceAOff[10][6] = millis();
    }
   if ((keysA[10][6] == 1) and (lastA[10][6] == 7) and ((millis() - BounceAOff[10][6])   > Delay)) {
    MIDI.sendNoteOff(1, 116, velocity);
    lastA[10][6] = 0;
   }

  //A117
  if (lastA[10][7] == 7) {
    BounceAOn[10][7] = millis();
     }
  if ((keysA[10][7] == 0) and (lastA[10][7] == 0) and ((millis() - BounceAOn[10][7])   > Delay)) {
    MIDI.sendNoteOn(1, 117, velocity);
    lastA[10][7] = 7;
   }
  if (lastA[10][7] == 0) {
    BounceAOff[10][7] = millis();
    }
   if ((keysA[10][7] == 1) and (lastA[10][7] == 7) and ((millis() - BounceAOff[10][7])   > Delay)) {
    MIDI.sendNoteOff(1, 117, velocity);
    lastA[10][7] = 0;

  //A118
  if (lastA[11][0] == 7) {
    BounceAOn[11][0] = millis();
     } 
  if ((keysA[11][0] == 0) and (lastA[11][0] == 0) and ((millis() - BounceAOn[11][0])   > Delay)) {
    MIDI.sendNoteOn(1, 118, velocity);
    lastA[11][0] = 7;
   }
  if (lastA[11][0] == 0) {
    BounceAOff[11][0] = millis();
    }
   if ((keysA[11][0] == 1) and (lastA[11][0] == 7) and ((millis() - BounceAOff[11][0])   > Delay)) {
    MIDI.sendNoteOff(1, 118, velocity);
    lastA[11][0] = 0;
   }

  //A119
  if (lastA[11][1] == 7) {
    BounceAOn[11][1] = millis();
     } 
  if ((keysA[11][1] == 0) and (lastA[11][1] == 0) and ((millis() - BounceAOn[11][1])   > Delay)) {
    MIDI.sendNoteOn(1, 119, velocity);
    lastA[11][1] = 7;
   }
  if (lastA[11][1] == 0) {
    BounceAOff[11][1] = millis();
    }
   if ((keysA[11][1] == 1) and (lastA[11][1] == 7) and ((millis() - BounceAOff[11][1])   > Delay)) {
    MIDI.sendNoteOff(1, 119, velocity);
    lastA[11][1] = 0;
   }

  //A120
  if (lastA[11][2] == 7) {
    BounceAOn[11][2] = millis();
     } 
  if ((keysA[11][2] == 0) and (lastA[11][2] == 0) and ((millis() - BounceAOn[11][2])   > Delay)) {
    MIDI.sendNoteOn(1, 120, velocity);
    lastA[11][2] = 7;
   }
  if (lastA[11][2] == 0) {
    BounceAOff[11][2] = millis();
    }
   if ((keysA[11][2] == 1) and (lastA[11][2] == 7) and ((millis() - BounceAOff[11][2])   > Delay)) {
    MIDI.sendNoteOff(1, 120, velocity);
    lastA[11][2] = 0;
   }

  //A121
  if (lastA[11][3] == 7) {
    BounceAOn[11][3] = millis();
     } 
  if ((keysA[11][3] == 0) and (lastA[11][3] == 0) and ((millis() - BounceAOn[11][3])   > Delay)) {
    MIDI.sendNoteOn(1, 121, velocity);
    lastA[11][3] = 7;
   }
  if (lastA[11][3] == 0) {
    BounceAOff[11][3] = millis();
    }
   if ((keysA[11][3] == 1) and (lastA[11][3] == 7) and ((millis() - BounceAOff[11][3])   > Delay)) {
    MIDI.sendNoteOff(1, 121, velocity);
    lastA[11][3] = 0;
   }

  //A122
  if (lastA[11][4] == 7) {
    BounceAOn[11][4] = millis();
     } 
  if ((keysA[11][4] == 0) and (lastA[11][4] == 0) and ((millis() - BounceAOn[11][4])   > Delay)) {
    MIDI.sendNoteOn(1, 122, velocity);
    lastA[11][4] = 7;
   }
  if (lastA[11][4] == 0) {
    BounceAOff[11][4] = millis();
    }
   if ((keysA[11][4] == 1) and (lastA[11][4] == 7) and ((millis() - BounceAOff[11][4])   > Delay)) {
    MIDI.sendNoteOff(1, 122, velocity);
    lastA[11][4] = 0;
   }

  //A123
  if (lastA[11][5] == 7) {
    BounceAOn[11][5] = millis();
     } 
  if ((keysA[11][5] == 0) and (lastA[11][5] == 0) and ((millis() - BounceAOn[11][5])   > Delay)) {
    MIDI.sendNoteOn(1, 123, velocity);
    lastA[11][5] = 7;
   }
  if (lastA[11][5] == 0) {
    BounceAOff[11][5] = millis();
    }
   if ((keysA[11][5] == 1) and (lastA[11][5] == 7) and ((millis() - BounceAOff[11][5])   > Delay)) {
    MIDI.sendNoteOff(1, 123, velocity);
    lastA[11][5] = 0;
   }

  //A124
  if (lastA[11][6] == 7) {
    BounceAOn[11][6] = millis();
     }
  if ((keysA[11][6] == 0) and (lastA[11][6] == 0) and ((millis() - BounceAOn[11][6])   > Delay)) {
    MIDI.sendNoteOn(1, 124, velocity);
    lastA[11][6] = 7;
   }
  if (lastA[11][6] == 0) {
    BounceAOff[11][6] = millis();
    }
   if ((keysA[11][6] == 1) and (lastA[11][6] == 7) and ((millis() - BounceAOff[11][6])   > Delay)) {
    MIDI.sendNoteOff(1, 124, velocity);
    lastA[11][6] = 0;
   }

  //A125
  if (lastA[11][7] == 7) {
    BounceAOn[11][7] = millis();
     }
  if ((keysA[11][7] == 0) and (lastA[11][7] == 0) and ((millis() - BounceAOn[11][7])   > Delay)) {
    MIDI.sendNoteOn(1, 125, velocity);
    lastA[11][7] = 7;
   }
  if (lastA[11][7] == 0) {
    BounceAOff[11][7] = millis();
    }
   if ((keysA[11][7] == 1) and (lastA[11][7] == 7) and ((millis() - BounceAOff[11][7])   > Delay)) {
    MIDI.sendNoteOff(1, 125, velocity);
    lastA[11][7] = 0;

  //A126
  if (lastA[12][0] == 7) {
    BounceAOn[12][0] = millis();
     } 
  if ((keysA[12][0] == 0) and (lastA[12][0] == 0) and ((millis() - BounceAOn[12][0])   > Delay)) {
    MIDI.sendNoteOn(1, 126, velocity);
    lastA[12][0] = 7;
   }
  if (lastA[12][0] == 0) {
    BounceAOff[12][0] = millis();
    }
   if ((keysA[12][0] == 1) and (lastA[12][0] == 7) and ((millis() - BounceAOff[12][0])   > Delay)) {
    MIDI.sendNoteOff(1, 126, velocity);
    lastA[12][0] = 0;
   }

  //A127
  if (lastA[12][1] == 7) {
    BounceAOn[12][1] = millis();
     } 
  if ((keysA[12][1] == 0) and (lastA[12][1] == 0) and ((millis() - BounceAOn[12][1])   > Delay)) {
    MIDI.sendNoteOn(1, 127, velocity);
    lastA[12][1] = 7;
   }
  if (lastA[12][1] == 0) {
    BounceAOff[12][1] = millis();
    }
   if ((keysA[12][1] == 1) and (lastA[12][1] == 7) and ((millis() - BounceAOff[12][1])   > Delay)) {
    MIDI.sendNoteOff(1, 127, velocity);
    lastA[12][1] = 0;
   }

  //A128
  if (lastA[12][2] == 7) {
    BounceAOn[12][2] = millis();
     } 
  if ((keysA[12][2] == 0) and (lastA[12][2] == 0) and ((millis() - BounceAOn[12][2])   > Delay)) {
    MIDI.sendNoteOn(1, 128, velocity);
    lastA[12][2] = 7;
   }
  if (lastA[12][2] == 0) {
    BounceAOff[12][2] = millis();
    }
   if ((keysA[12][2] == 1) and (lastA[12][2] == 7) and ((millis() - BounceAOff[12][2])   > Delay)) {
    MIDI.sendNoteOff(1, 128, velocity);
    lastA[12][2] = 0;
   }

  //A129
  if (lastA[12][3] == 7) {
    BounceAOn[12][3] = millis();
     } 
  if ((keysA[12][3] == 0) and (lastA[12][3] == 0) and ((millis() - BounceAOn[12][3])   > Delay)) {
    MIDI.sendNoteOn(1, 129, velocity);
    lastA[12][3] = 7;
   }
  if (lastA[12][3] == 0) {
    BounceAOff[12][3] = millis();
    }
   if ((keysA[12][3] == 1) and (lastA[12][3] == 7) and ((millis() - BounceAOff[12][3])   > Delay)) {
    MIDI.sendNoteOff(1, 129, velocity);
    lastA[12][3] = 0;
   }

  //A130
  if (lastA[12][4] == 7) {
    BounceAOn[12][4] = millis();
     } 
  if ((keysA[12][4] == 0) and (lastA[12][4] == 0) and ((millis() - BounceAOn[12][4])   > Delay)) {
    MIDI.sendNoteOn(1, 130, velocity);
    lastA[12][4] = 7;
   }
  if (lastA[12][4] == 0) {
    BounceAOff[12][4] = millis();
    }
   if ((keysA[12][4] == 1) and (lastA[12][4] == 7) and ((millis() - BounceAOff[12][4])   > Delay)) {
    MIDI.sendNoteOff(1, 130, velocity);
    lastA[12][4] = 0;
   }

  //A131
  if (lastA[12][5] == 7) {
    BounceAOn[12][5] = millis();
     } 
  if ((keysA[12][5] == 0) and (lastA[12][5] == 0) and ((millis() - BounceAOn[12][5])   > Delay)) {
    MIDI.sendNoteOn(1, 131, velocity);
    lastA[12][5] = 7;
   }
  if (lastA[12][5] == 0) {
    BounceAOff[12][5] = millis();
    }
   if ((keysA[12][5] == 1) and (lastA[12][5] == 7) and ((millis() - BounceAOff[12][5])   > Delay)) {
    MIDI.sendNoteOff(1, 131, velocity);
    lastA[12][5] = 0;
   }

  //A132
  if (lastA[12][6] == 7) {
    BounceAOn[12][6] = millis();
     }
  if ((keysA[12][6] == 0) and (lastA[12][6] == 0) and ((millis() - BounceAOn[12][6])   > Delay)) {
    MIDI.sendNoteOn(1, 132, velocity);
    lastA[12][6] = 7;
   }
  if (lastA[12][6] == 0) {
    BounceAOff[12][6] = millis();
    }
   if ((keysA[12][6] == 1) and (lastA[12][6] == 7) and ((millis() - BounceAOff[12][6])   > Delay)) {
    MIDI.sendNoteOff(1, 132, velocity);
    lastA[12][6] = 0;
   }

  //A133
  if (lastA[12][7] == 7) {
    BounceAOn[12][7] = millis();
     }
  if ((keysA[12][7] == 0) and (lastA[12][7] == 0) and ((millis() - BounceAOn[12][7])   > Delay)) {
    MIDI.sendNoteOn(1, 133, velocity);
    lastA[12][7] = 7;
   }
  if (lastA[12][7] == 0) {
    BounceAOff[12][7] = millis();
    }
   if ((keysA[12][7] == 1) and (lastA[12][7] == 7) and ((millis() - BounceAOff[12][7])   > Delay)) {
    MIDI.sendNoteOff(1, 133, velocity);
    lastA[12][7] = 0;

  //A134
  if (lastA[13][0] == 7) {
    BounceAOn[13][0] = millis();
     } 
  if ((keysA[13][0] == 0) and (lastA[13][0] == 0) and ((millis() - BounceAOn[13][0])   > Delay)) {
    MIDI.sendNoteOn(1, 134, velocity);
    lastA[13][0] = 7;
   }
  if (lastA[13][0] == 0) {
    BounceAOff[13][0] = millis();
    }
   if ((keysA[13][0] == 1) and (lastA[13][0] == 7) and ((millis() - BounceAOff[13][0])   > Delay)) {
    MIDI.sendNoteOff(1, 134, velocity);
    lastA[13][0] = 0;
   }

  //A135
  if (lastA[13][1] == 7) {
    BounceAOn[13][1] = millis();
     } 
  if ((keysA[13][1] == 0) and (lastA[13][1] == 0) and ((millis() - BounceAOn[13][1])   > Delay)) {
    MIDI.sendNoteOn(1, 135, velocity);
    lastA[13][1] = 7;
   }
  if (lastA[13][1] == 0) {
    BounceAOff[13][1] = millis();
    }
   if ((keysA[13][1] == 1) and (lastA[13][1] == 7) and ((millis() - BounceAOff[13][1])   > Delay)) {
    MIDI.sendNoteOff(1, 135, velocity);
    lastA[13][1] = 0;
   }

  //A136
  if (lastA[13][2] == 7) {
    BounceAOn[13][2] = millis();
     } 
  if ((keysA[13][2] == 0) and (lastA[13][2] == 0) and ((millis() - BounceAOn[13][2])   > Delay)) {
    MIDI.sendNoteOn(1, 136, velocity);
    lastA[13][2] = 7;
   }
  if (lastA[13][2] == 0) {
    BounceAOff[13][2] = millis();
    }
   if ((keysA[13][2] == 1) and (lastA[13][2] == 7) and ((millis() - BounceAOff[13][2])   > Delay)) {
    MIDI.sendNoteOff(1, 136, velocity);
    lastA[13][2] = 0;
   }

  //A137
  if (lastA[13][3] == 7) {
    BounceAOn[13][3] = millis();
     } 
  if ((keysA[13][3] == 0) and (lastA[13][3] == 0) and ((millis() - BounceAOn[13][3])   > Delay)) {
    MIDI.sendNoteOn(1, 137, velocity);
    lastA[13][3] = 7;
   }
  if (lastA[13][3] == 0) {
    BounceAOff[13][3] = millis();
    }
   if ((keysA[13][3] == 1) and (lastA[13][3] == 7) and ((millis() - BounceAOff[13][3])   > Delay)) {
    MIDI.sendNoteOff(1, 137, velocity);
    lastA[13][3] = 0;
   }

  //A138
  if (lastA[13][4] == 7) {
    BounceAOn[13][4] = millis();
     } 
  if ((keysA[13][4] == 0) and (lastA[13][4] == 0) and ((millis() - BounceAOn[13][4])   > Delay)) {
    MIDI.sendNoteOn(1, 138, velocity);
    lastA[13][4] = 7;
   }
  if (lastA[13][4] == 0) {
    BounceAOff[13][4] = millis();
    }
   if ((keysA[13][4] == 1) and (lastA[13][4] == 7) and ((millis() - BounceAOff[13][4])   > Delay)) {
    MIDI.sendNoteOff(1, 138, velocity);
    lastA[13][4] = 0;
   }

  //A139
  if (lastA[13][5] == 7) {
    BounceAOn[13][5] = millis();
     } 
  if ((keysA[13][5] == 0) and (lastA[13][5] == 0) and ((millis() - BounceAOn[13][5])   > Delay)) {
    MIDI.sendNoteOn(1, 139, velocity);
    lastA[13][5] = 7;
   }
  if (lastA[13][5] == 0) {
    BounceAOff[13][5] = millis();
    }
   if ((keysA[13][5] == 1) and (lastA[13][5] == 7) and ((millis() - BounceAOff[13][5])   > Delay)) {
    MIDI.sendNoteOff(1, 139, velocity);
    lastA[13][5] = 0;
   }

  //A140
  if (lastA[13][6] == 7) {
    BounceAOn[13][6] = millis();
     }
  if ((keysA[13][6] == 0) and (lastA[13][6] == 0) and ((millis() - BounceAOn[13][6])   > Delay)) {
    MIDI.sendNoteOn(1, 140, velocity);
    lastA[13][6] = 7;
   }
  if (lastA[13][6] == 0) {
    BounceAOff[13][6] = millis();
    }
   if ((keysA[13][6] == 1) and (lastA[13][6] == 7) and ((millis() - BounceAOff[13][6])   > Delay)) {
    MIDI.sendNoteOff(1, 140, velocity);
    lastA[13][6] = 0;
   }

  //A141
  if (lastA[13][7] == 7) {
    BounceAOn[13][7] = millis();
     }
  if ((keysA[13][7] == 0) and (lastA[13][7] == 0) and ((millis() - BounceAOn[13][7])   > Delay)) {
    MIDI.sendNoteOn(1, 141, velocity);
    lastA[13][7] = 7;
   }
  if (lastA[13][7] == 0) {
    BounceAOff[13][7] = millis();
    }
   if ((keysA[13][7] == 1) and (lastA[13][7] == 7) and ((millis() - BounceAOff[13][7])   > Delay)) {
    MIDI.sendNoteOff(1, 141, velocity);
    lastA[13][7] = 0;

  //A142
  if (lastA[14][0] == 7) {
    BounceAOn[14][0] = millis();
     } 
  if ((keysA[14][0] == 0) and (lastA[14][0] == 0) and ((millis() - BounceAOn[14][0])   > Delay)) {
    MIDI.sendNoteOn(1, 142, velocity);
    lastA[14][0] = 7;
   }
  if (lastA[14][0] == 0) {
    BounceAOff[14][0] = millis();
    }
   if ((keysA[14][0] == 1) and (lastA[14][0] == 7) and ((millis() - BounceAOff[14][0])   > Delay)) {
    MIDI.sendNoteOff(1, 142, velocity);
    lastA[14][0] = 0;
   }

  //A143
  if (lastA[14][1] == 7) {
    BounceAOn[14][1] = millis();
     } 
  if ((keysA[14][1] == 0) and (lastA[14][1] == 0) and ((millis() - BounceAOn[14][1])   > Delay)) {
    MIDI.sendNoteOn(1, 143, velocity);
    lastA[14][1] = 7;
   }
  if (lastA[14][1] == 0) {
    BounceAOff[14][1] = millis();
    }
   if ((keysA[14][1] == 1) and (lastA[14][1] == 7) and ((millis() - BounceAOff[14][1])   > Delay)) {
    MIDI.sendNoteOff(1, 143, velocity);
    lastA[14][1] = 0;
   }

  //A144
  if (lastA[14][2] == 7) {
    BounceAOn[14][2] = millis();
     } 
  if ((keysA[14][2] == 0) and (lastA[14][2] == 0) and ((millis() - BounceAOn[14][2])   > Delay)) {
    MIDI.sendNoteOn(1, 144, velocity);
    lastA[14][2] = 7;
   }
  if (lastA[14][2] == 0) {
    BounceAOff[14][2] = millis();
    }
   if ((keysA[14][2] == 1) and (lastA[14][2] == 7) and ((millis() - BounceAOff[14][2])   > Delay)) {
    MIDI.sendNoteOff(1, 144, velocity);
    lastA[14][2] = 0;
   }

  //A145
  if (lastA[14][3] == 7) {
    BounceAOn[14][3] = millis();
     } 
  if ((keysA[14][3] == 0) and (lastA[14][3] == 0) and ((millis() - BounceAOn[14][3])   > Delay)) {
    MIDI.sendNoteOn(1, 145, velocity);
    lastA[14][3] = 7;
   }
  if (lastA[14][3] == 0) {
    BounceAOff[14][3] = millis();
    }
   if ((keysA[14][3] == 1) and (lastA[14][3] == 7) and ((millis() - BounceAOff[14][3])   > Delay)) {
    MIDI.sendNoteOff(1, 145, velocity);
    lastA[14][3] = 0;
   }

  //A146
  if (lastA[14][4] == 7) {
    BounceAOn[14][4] = millis();
     } 
  if ((keysA[14][4] == 0) and (lastA[14][4] == 0) and ((millis() - BounceAOn[14][4])   > Delay)) {
    MIDI.sendNoteOn(1, 146, velocity);
    lastA[14][4] = 7;
   }
  if (lastA[14][4] == 0) {
    BounceAOff[14][4] = millis();
    }
   if ((keysA[14][4] == 1) and (lastA[14][4] == 7) and ((millis() - BounceAOff[14][4])   > Delay)) {
    MIDI.sendNoteOff(1, 146, velocity);
    lastA[14][4] = 0;
   }

  //A147
  if (lastA[14][5] == 7) {
    BounceAOn[14][5] = millis();
     } 
  if ((keysA[14][5] == 0) and (lastA[14][5] == 0) and ((millis() - BounceAOn[14][5])   > Delay)) {
    MIDI.sendNoteOn(1, 147, velocity);
    lastA[14][5] = 7;
   }
  if (lastA[14][5] == 0) {
    BounceAOff[14][5] = millis();
    }
   if ((keysA[14][5] == 1) and (lastA[14][5] == 7) and ((millis() - BounceAOff[14][5])   > Delay)) {
    MIDI.sendNoteOff(1, 147, velocity);
    lastA[14][5] = 0;
   }

  //A148
  if (lastA[14][6] == 7) {
    BounceAOn[1][6] = millis();
     }
  if ((keysA[14][6] == 0) and (lastA[14][6] == 0) and ((millis() - BounceAOn[14][6])   > Delay)) {
    MIDI.sendNoteOn(1, 148, velocity);
    lastA[14][6] = 7;
   }
  if (lastA[14][6] == 0) {
    BounceAOff[14][6] = millis();
    }
   if ((keysA[14][6] == 1) and (lastA[14][6] == 7) and ((millis() - BounceAOff[14][6])   > Delay)) {
    MIDI.sendNoteOff(1, 148, velocity);
    lastA[14][6] = 0;
   }

  //A149
  if (lastA[14][7] == 7) {
    BounceAOn[14][7] = millis();
     }
  if ((keysA[14][7] == 0) and (lastA[14][7] == 0) and ((millis() - BounceAOn[14][7])   > Delay)) {
    MIDI.sendNoteOn(1, 149, velocity);
    lastA[14][7] = 7;
   }
  if (lastA[14][7] == 0) {
    BounceAOff[14][7] = millis();
    }
   if ((keysA[14][7] == 1) and (lastA[14][7] == 7) and ((millis() - BounceAOff[14][7])   > Delay)) {
    MIDI.sendNoteOff(1, 149, velocity);
    lastA[14][7] = 0;

  //A150
  if (lastA[15][0] == 7) {
    BounceAOn[15][0] = millis();
     } 
  if ((keysA[15][0] == 0) and (lastA[15][0] == 0) and ((millis() - BounceAOn[15][0])   > Delay)) {
    MIDI.sendNoteOn(1, 150, velocity);
    lastA[15][0] = 7;
   }
  if (lastA[15][0] == 0) {
    BounceAOff[15][0] = millis();
    }
   if ((keysA[15][0] == 1) and (lastA[15][0] == 7) and ((millis() - BounceAOff[15][0])   > Delay)) {
    MIDI.sendNoteOff(1, 150, velocity);
    lastA[15][0] = 0;
   }

  //A151
  if (lastA[15][1] == 7) {
    BounceAOn[15][1] = millis();
     } 
  if ((keysA[15][1] == 0) and (lastA[15][1] == 0) and ((millis() - BounceAOn[15][1])   > Delay)) {
    MIDI.sendNoteOn(1, 151, velocity);
    lastA[15][1] = 7;
   }
  if (lastA[15][1] == 0) {
    BounceAOff[15][1] = millis();
    }
   if ((keysA[15][1] == 1) and (lastA[15][1] == 7) and ((millis() - BounceAOff[15][1])   > Delay)) {
    MIDI.sendNoteOff(1, 151, velocity);
    lastA[15][1] = 0;
   }

  //A152
  if (lastA[15][2] == 7) {
    BounceAOn[15][2] = millis();
     } 
  if ((keysA[15][2] == 0) and (lastA[15][2] == 0) and ((millis() - BounceAOn[15][2])   > Delay)) {
    MIDI.sendNoteOn(1, 152, velocity);
    lastA[15][2] = 7;
   }
  if (lastA[15][2] == 0) {
    BounceAOff[15][2] = millis();
    }
   if ((keysA[15][2] == 1) and (lastA[15][2] == 7) and ((millis() - BounceAOff[15][2])   > Delay)) {
    MIDI.sendNoteOff(1, 152, velocity);
    lastA[15][2] = 0;
   }

  //A153
  if (lastA[15][3] == 7) {
    BounceAOn[15][3] = millis();
     } 
  if ((keysA[15][3] == 0) and (lastA[15][3] == 0) and ((millis() - BounceAOn[15][3])   > Delay)) {
    MIDI.sendNoteOff(1, 153, velocity);
    lastA[15][3] = 7;
   }
  if (lastA[15][3] == 0) {
    BounceAOff[15][3] = millis();
    }
   if ((keysA[15][3] == 1) and (lastA[15][3] == 7) and ((millis() - BounceAOff[15][3])   > Delay)) {
    MIDI.sendNoteOff(1, 153, velocity);
    lastA[15][3] = 0;
   }

  //A154
  if (lastA[15][4] == 7) {
    BounceAOn[15][4] = millis();
     } 
  if ((keysA[15][4] == 0) and (lastA[15][4] == 0) and ((millis() - BounceAOn[15][4])   > Delay)) {
    MIDI.sendNoteOn(1, 154, velocity);
    lastA[15][4] = 7;
   }
  if (lastA[15][4] == 0) {
    BounceAOff[15][4] = millis();
    }
   if ((keysA[15][4] == 1) and (lastA[15][4] == 7) and ((millis() - BounceAOff[15][4])   > Delay)) {
    MIDI.sendNoteOff(1, 154, velocity);
    lastA[15][4] = 0;
   }

  //A155
  if (lastA[15][5] == 7) {
    BounceAOn[15][5] = millis();
     } 
  if ((keysA[15][5] == 0) and (lastA[15][5] == 0) and ((millis() - BounceAOn[15][5])   > Delay)) {
    MIDI.sendNoteOn(1, 155, velocity);
    lastA[15][5] = 7;
   }
  if (lastA[15][5] == 0) {
    BounceAOff[15][5] = millis();
    }
   if ((keysA[15][5] == 1) and (lastA[15][5] == 7) and ((millis() - BounceAOff[15][5])   > Delay)) {
    MIDI.sendNoteOff(1, 155, velocity);
    lastA[15][5] = 0;
   }

  //A156
  if (lastA[15][6] == 7) {
    BounceAOn[15][6] = millis();
     }
  if ((keysA[15][6] == 0) and (lastA[15][6] == 0) and ((millis() - BounceAOn[15][6])   > Delay)) {
    MIDI.sendNoteOn(1, 156, velocity);
    lastA[15][6] = 7;
   }
  if (lastA[15][6] == 0) {
    BounceAOff[15][6] = millis();
    }
   if ((keysA[15][6] == 1) and (lastA[15][6] == 7) and ((millis() - BounceAOff[15][6])   > Delay)) {
    MIDI.sendNoteOff(1, 156, velocity);
    lastA[15][6] = 0;
  //A157
  if (lastA[15][7] == 7) {
    BounceAOn[15][7] = millis();
     }
  if ((keysA[15][7] == 0) and (lastA[15][7] == 0) and ((millis() - BounceAOn[15][7])   > Delay)) {
    MIDI.sendNoteOn(1, 157, velocity);
    lastA[15][7] = 7;
   }
  if (lastA[15][7] == 0) {
    BounceAOff[15][7] = millis();
    }
   if ((keysA[15][7] == 1) and (lastA[15][7] == 7) and ((millis() - BounceAOff[15][7])   > Delay)) {
    MIDI.sendNoteOff(1, 157, velocity);
    lastA[15][7] = 0;

  //Midi Thru

  if (byteReady) {
    byteReady =   false; 
    Serial.write(midiByte);
    }
}

 void MIDI.send(int one,   int two, int three) {
  Serial.write(one);
  Serial.write(two);
  Serial.write(three);
   }

 void serialEvent() {
  if (Serial.available()) {
    // get the   new byte:
    midiByte = (unsigned char)Serial.read();
    byteReady = true;
   }
  }

all help is appreciated, thanks!

To clarify, the error message I am dealing with refers to the line of code that reads

 void MIDI.send(int one,   int two, int three) {

near the very bottom of the code.
It is at the top of the second "block" of code from the bottom

Show the verbose error log in code tags.

Welcome to the forum

void MIDI.send(int one,   int two, int three) {
  Serial.write(one);
  Serial.write(two);
  Serial.write(three);
   }

Is MIDI.send a valid name for a function in your code ? It sounds like you are trying to call the send() function of an object named MIDI

That's got to be the longest void loop() I have ever seen.....

Thanks,
I don't know for sure if it is, as this is a copied code. In the original project code, it was named "MidiSend", but that didn't work, so I used this name instead.
I do not know how to check if it is a valid name for a function in the code.

Notice your indentation - that line begins in column 3, indicating you are still within the confines of the previous function (loop()). You might just need one more } at the end of loop().
Just guessing, on phone right now.

A function cannot be defined with a period character in its name. You should rename this MIDI_send or some such. Also, your code never calls the MIDI.send() function that you've defined, so you can delete this function altogether.

That would be right, as

This default object, typically named MIDI , is automatically created and bound to the default hardware Serial port.

a7

Your sketch is missing multiple closing '}'s in the loop function, and '.' is not a valid character in a function or variable identifier.

Show the source.

This project:

It didn't work because of your mistakes when editing the code. As @van_der_decken already pointed out, there are a lot closing '}' missing in the code before the definition of MIDISend. And that's the reason while the compiler complained about MIDISend. Correct those errors and leave the name as it is.

Have you looked at the comments section?

it has a massive problem in that in addition to the correct midi message, it fairly frequently (say every tenth note/message), sends an additional wrong note message and also frequently does not send the NoteOff message - or sends the NoteOff for the wrong note.
This makes it unusable (sadly).

At four beats to the measure, that means a mistake every third measure. Much like a grade-school band.

[edit]
@mohve

  • The code you posted matches none of the code from the link you posted.
  • This is an attempt to remove redundancy from your code. From 2273 lines to 173 lines.
  • I did not test it. You should.
#include <MIDI.hpp>
MIDI_CREATE_DEFAULT_INSTANCE();

// Name: Arduino Mega Midi Controller Mega side.
// Created: May 10, 2021
// Last Edited: Mar 26, 2022
// Author: Larason2
// Acknowledgements: Bald Engineer, Amanda Ghassaei, jeffb42, GrumpyMike, John Main, Ghost, RIP Tutorial, Arduino tutorials.
// Includes Midi Through, wiring for pistons, improved debounce.

//Setup Key Data Arrays
byte keysA[16][8];
byte keysB[16][2];
byte keysC[7][6];
byte keysE[6][6];

//Setup Key Press Arrays
byte lastA[16][8];
byte lastB[16][2];
byte lastC[7][6];
byte lastE[6][6];

//Setup midi channel values
int noteOn1 = 144;
int noteOff1 = 128;
int noteOn2 = 145;
int noteOff2 = 129;
int noteOn3 = 146;
int noteOff3 = 130;
int noteOn4 = 147;
int noteOff4 = 131;

//Setup volume control channels
int CCchan6 = 181;
int CCchan7 = 182;

//Setup midi variables
int velocity = 100;
int Exp = 11;

//Setup Pot Monitoring variables
int LastPot6 = 1;
int LastPot7 = 1;

//Setup variable to debounce pots. increase to decrease bounce on the pots (units of analog signal variation)
int PotT = 10;

//Setup variables for Midi Thru
boolean byteReady;
unsigned char midiByte;

//Setup variables for key debounce on
unsigned long BounceAOn[16][8];

//Setup variables for key debounce on
unsigned long BounceAOff[16][8];

//Setup variable for adjusting key debounce
//Increase to decrease bounce on the keys (units of milliseconds)
unsigned long Delay = 50;

void setup() {
  // Start Serial
  Serial.begin(31250);

  //Initialize Column Pins Keyboard A
  for (int i = 10; i < 27; i++) // 10 to 26
    pinMode(i, INPUT);

  //Pot Pins
  pinMode(A13, INPUT);
  pinMode(A14, INPUT);

  //Initialize Midi Thru
  byteReady = false;
  midiByte = 0;
}

void readKey(int pinOut, int sub1) {
  pinMode(pinOut, OUTPUT);
  digitalWrite(pinOUt, LOW);
  for (int keys = 0; keys < 7; keys++) { // leave key 7 for pin 2
    keysA[sub1][keys] = digitalRead(3 + keys);
  }
  keysA[sub1][7] = digitalRead(2); // why did you put this pin out of order?
  pinMode(pinOut, INPUT);
}

void loop() {
  //Initialize Row Pins Keyboard A
  for (int i = 2; i < 10; i++)
    pinMode(i, INPUT_PULLUP);

  // only two keys
  pinMode(10, OUTPUT);
  digitalWrite(10, LOW);
  keysA[0][0] = digitalRead(3);
  keysA[0][1] = digitalRead(2);
  pinMode(10, INPUT);

  // keys
  for (int i = 11; i < 13; i++) // 11 and 12
    readKey(i, i - 10);
  for (int i = 14; i < 27; i++) // why did you skip 13?
    readKey(i, i - 11);

  // return to INPUT
  for (int i = 2; i < 10; i++)
    pinMode(i, INPUT);

  //Write Keyboard A

  // A36, A37
  for (int sub1 = 0; sub1 < 2; sub1++) {
    if (lastA[0][sub1] == 7) {
      BounceAOn[0][sub1] = millis();
    }
    if ((keysA[0][sub1] == 0) and (lastA[0][sub1] == 0) and ((millis() - BounceAOn[0][sub1]) > Delay)) {
      MIDI.sendNoteOn(1, 36 + sub1, velocity);
      lastA[0][sub1] = 7;
    }
    if (lastA[0][sub1] == 0) {
      BounceAOff[0][sub1] = millis();
    }
    if ((keysA[0][sub1] == 1) and (lastA[0][sub1] == 7) and ((millis() - BounceAOff[0][sub1]) > Delay)) {
      MIDI.sendNoteOff(1, 36 + sub1, velocity);
      lastA[0][sub1] = 0;
    }
  }

  //A38 - A157
  for (int counter = 38; counter < 158; counter++) { // 38 to 157
    for (int sub0 = 1; sub0 < 16; sub0++) { // 1 to 15
      for (int sub1 = 0; sub1 < 8; sub1++) { // 0 to 6
        if (lastA[sub0][sub1] == 7) {
          BounceAOn[sub0][sub1] = millis();
        }
        if ((keysA[sub0][sub1] == 0) and (lastA[sub0][sub1] == 0) and ((millis() - BounceAOn[sub0][sub1]) > Delay)) {
          MIDI.sendNoteOn(1, counter, velocity);
          lastA[sub0][sub1] = 7;
        }
        if (lastA[sub0][sub1] == 0) {
          BounceAOff[sub0][sub1] = millis();
        }
        if ((keysA[sub0][sub1] == 1) and (lastA[sub0][sub1] == 7) and ((millis() - BounceAOff[sub0][sub1]) > Delay)) {
          MIDI.sendNoteOff(1, counter, velocity);
          lastA[sub0][sub1] = 0;
        }
      }
    }
  }

  //Midi Thru
  if (byteReady) {
    byteReady = false;
    Serial.write(midiByte);
  }
}

void MIDI.send(int one, int two, int three) {
  Serial.write(one);
  Serial.write(two);
  Serial.write(three);
}

void serialEvent() {
  if (Serial.available()) {
    // get the new byte:
    midiByte = (unsigned char)Serial.read();
    byteReady = true;
  }
}

Is there a reason that you are ignoring over 70% of the responses given to you in this thread (several of which would solve your problem)?

A lot... the main one that the OP doesn't understands a most of the questions.

I think OP made a mistake by taking on editing such a large and complex project.

1 Like