Keypad Library Multi-press Error

This is the example code provided by the keypad library for multikey presses. I don’t know why it isn’t working right away and I can’t figure it out. Please help me?
I’ve included notes in the program where I would get stuck when compiling.

/* @file MultiKey.ino
|| @version 1.0
|| @author Mark Stanley
|| @contact mstanley@technologist.com
||
|| @description
|| | The latest version, 3.0, of the keypad library supports up to 10
|| | active keys all being pressed at the same time. This sketch is an
|| | example of how you can get multiple key presses from a keypad or
|| | keyboard.
|| #
*/

#include <Keypad.h>

const byte ROWS = 4; //four rows
const byte COLS = 3; //three columns
char keys[ROWS][COLS] = {
  {'1','2','3'},
  {'4','5','6'},
  {'7','8','9'},
  {'*','0','#'}
};
byte rowPins[ROWS] = {5, 4, 3, 2}; //connect to the row pinouts of the kpd
byte colPins[COLS] = {8, 7, 6}; //connect to the column pinouts of the kpd

Keypad kpd = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );



void setup() {
  Serial.begin(9600);
  kpd.setDebounceTime(1);
}

unsigned long loopCount = 0;
unsigned long startTime = millis();
String msg = "";



void loop() {

  loopCount++;
  if ( (millis()-startTime)>1000 ) {
      Serial.println(loopCount);
      startTime = millis();
      loopCount = 0;
  }

  // Fills kpd.key[ ] array with up-to 10 active keys.
  // Returns true if there are ANY active keys.
  if (kpd.getKeys()) //THIS GIVES ME THE FIRST ERROR.  I CHANGE IT TO (kpd.getKey()) AND IT WORKS AT THIS POINT.
  {
    for (int i=0; i<LIST_MAX; i++)   /* THEN HERE IT TELLS ME "LIST_MAX"  WAS NOT DECLARED. AND I CAN'T FIGURE IT OUT. */
    {
      if ( kpd.key[i].stateChanged )   // Only find keys that have changed state.
      {
        switch (kpd.key[i].kstate) {  // Report active key state : IDLE, PRESSED, HOLD, or RELEASED
            case PRESSED:
                msg = " PRESSED.";
                break;
            case HOLD:
                msg = " HOLD.";
                break;
            case RELEASED:
                msg = " RELEASED.";
                break;
            case IDLE:
                msg = " IDLE.";
        }
        Serial.print("Key ");
        Serial.print(kpd.key[i].kchar);
        Serial.println(msg);
      }
    }
  }
}  // End loop

It looks like you are trying to compile a more recent example sketch against an older version of the library that doesn't support multiple keypresses.

You need to go through the Arduino "libraries" folder on your system and make sure that you don't have more than one copy of the Keypad library installed. There is some information here (http://arduino.cc/en/Guide/Libraries) that might help you to find all the locations where the copies of the Keypad library might be installed.

Thanks a lot! I uninstalled everything and then re installed it all and it worked fine.