IRremote library "Error Compilling" Help!

ok! Here you go. The following is my code and it work on my rover. Thank you guys.

///??????????????????????????
#include <IRremote.h>


#define E1 6//?????

#define E2 5

#define M1 8//?????

#define M2 7

//????????  ?????????????
#define UP    0xC26BF044    //?????UP?
#define DOWN  0xC4FFB646    //?????DOWN?
#define LEFT  0x758C9D82    //?????LEFT?
#define RIGHT 0x53801EE8   //?????RIGHT?
#define STOP  0x8AF13528    //?????STOP?


int RECV_PIN = 11;     //????????

IRrecv irrecv(RECV_PIN);//???

decode_results results;//???????

void setup()
{
  Serial.begin(9600);
  irrecv.enableIRIn(); // ????
}

void loop() 
{
  if (irrecv.decode(&results))
  {
        Serial.println(results.value, HEX);

        switch(results.value)
        {
              case UP://2???
              advance(255);
              break;
              case LEFT://4???
              left_handed(255);
              break;
              case DOWN://8???
              retreat(255);
              break;
              case RIGHT://6???
              right_handed(255);
              break;
              case STOP://5???
              stop_m();
              break;
             default:
delay(100);

        }
        irrecv.resume(); // Receive the next value
  }
  



}




void foreward_mechine_a()//?????
{
    analogWrite(E1,255);
    digitalWrite(M1,LOW);

}
void inversion_mechine_a()//?????
{
    analogWrite(E1,255);
    digitalWrite(M1,HIGH);

  
}

void stop_a(void)//?????
{
      digitalWrite(E1,LOW);

}

void stop_b(void)//?????
{
      digitalWrite(E2,LOW);

}

void foreward_mechine_b()//?????
{
    analogWrite(E2,255);
    digitalWrite(M2,LOW);

}
void inversion_mechine_b()//?????
{
    analogWrite(E2,255);
    digitalWrite(M2,HIGH);
 
}
void advance(int time)//????
{
     foreward_mechine_a();
     foreward_mechine_b();
    delay(time);  
}
void retreat(int time)//????
{
      inversion_mechine_a();
      inversion_mechine_b();
      delay(time);  
}

void left_handed(int time)//????
{
    inversion_mechine_a();
    foreward_mechine_b();
    delay(time);
    
}
void right_handed(int time)//????
{
    foreward_mechine_a();
    inversion_mechine_b();
    delay(time);
}
void stop_m(void)//????
{
      stop_a();
      stop_b();
}