Problema urgente con mi codigo

No puedo resolver esto. Me darias una manito por favor?

//motores+Ctrol remoto+leds

//definiendo constantes de motores
const int AIA = 3;
const int AIB = 11;
const int BIA = 9;
const int BIB = 10;

const int ledTest = 13;

#include <IRremote.h>

//definimos el control remoto

//seteo del receptor
int receptorControl = 2;
IRrecv receptorIR(receptorControl);
decode_results codigoLeido;
decode_results codigoLeidoNuevo;

//seteo del Led RGB
int ledRojo = 1;
int ledVerde = 12;
int ledAzul = 6;

//apagamos todo
int potenciaRojo = 0;
int potenciaVerde = 0;
int potenciaAzul = 0;

//Definir variables LEDS
int ledBlancoDerecha = 5;
int ledBlancoIzquierda = 4;
int ledRojoDerecha = 7;
int ledRojoIzquierda = 8;

void setup() {
// definimos salidas
pinMode (AIA, OUTPUT);
pinMode (AIB, OUTPUT);
pinMode (BIA, OUTPUT);
pinMode (BIB, OUTPUT);

pinMode (ledTest, OUTPUT);

//todas las salidas apagadas
analogWrite(AIA, 0);
analogWrite(AIB, 0);
analogWrite(BIA, 0);
analogWrite(BIB, 0);

digitalWrite(ledTest, LOW);

Serial.begin(9600);

// programamos para que empiece a detectar las señales infrarrojas
receptorIR.enableIRIn();

pinMode(ledRojo, OUTPUT);
pinMode(ledVerde, OUTPUT);
pinMode(ledAzul, OUTPUT);

analogWrite(ledRojo, 0);
analogWrite(ledVerde, 0);
analogWrite(ledAzul, 0);

pinMode(ledTest, OUTPUT);
digitalWrite(ledTest, LOW);

// iniciar pines de salida
pinMode(ledBlancoDerecha, OUTPUT);
pinMode(ledBlancoIzquierda, OUTPUT);
pinMode(ledRojoDerecha, OUTPUT);
pinMode(ledRojoIzquierda, OUTPUT);

//apagar todos los leds
digitalWrite(ledBlancoDerecha, LOW);
digitalWrite(ledBlancoIzquierda, LOW);
digitalWrite(ledRojoDerecha, LOW);
digitalWrite(ledRojoIzquierda, LOW);

pinMode(ledTest, OUTPUT);
digitalWrite(ledTest, LOW);

//Saludo inicial
digitalWrite(ledTest, HIGH);
delay(500);
digitalWrite(ledTest, LOW);
delay(500);
digitalWrite(ledTest, HIGH);
delay(500);
digitalWrite(ledTest, LOW);
delay(500);
digitalWrite(ledTest, HIGH);
delay(500);
digitalWrite(ledTest, LOW);
delay(500);
}

void loop() {
// encender todos los leds por 1 segundo

digitalWrite(ledBlancoDerecha, HIGH);
delay(1000);
digitalWrite(ledBlancoIzquierda, HIGH);
delay(1000);
digitalWrite(ledRojoDerecha, HIGH);
delay(1000);
digitalWrite(ledRojoIzquierda, HIGH);
delay(1000);

//apagar todos los leds
digitalWrite(ledBlancoDerecha, LOW);
delay(2000);
digitalWrite(ledBlancoIzquierda, LOW);
delay(2000);
digitalWrite(ledRojoDerecha, LOW);
delay (2000);
digitalWrite(ledRojoIzquierda, LOW);
delay(2000);

// si recibe un nuevo dato, lo guarda como codigo leido nuevo

if (codigoLeidoNuevo.value != codigoLeido.value && codigoLeidoNuevo.value != 0xFFFFFFFF)
digitalWrite(ledTest, HIGH);
delay(50);
digitalWrite(ledTest, LOW);

Serial.println(codigoLeido.value, HEX);

//guardamos los nuevos valores
codigoLeido = codigoLeidoNuevo;

//switch compara el valor de la variable con lo especificado en el case de flecha para arriba
switch (codigoLeido.value)

void adelante()
analogWrite(AIA, 255);
analogWrite(AIB, 0);
analogWrite(BIA, 255);
analogWrite(BIB, 0);

void atras()
analogWrite(AIA, 0);
analogWrite(AIB, 255);
analogWrite(BIA, 0);
analogWrite(BIB, 255);

void derecha()
analogWrite(AIA, 255);
analogWrite(AIB, 0);
analogWrite(BIA, 0);
analogWrite(BIB, 255);

void izquierda()
analogWrite(AIA, 0);
analogWrite(AIB, 255);
analogWrite(BIA, 255);
analogWrite(BIB, 0);

void parar()
analogWrite(AIA, 255);
analogWrite(AIB, 255);
analogWrite(BIA, 255);
analogWrite(BIB, 255);
delay(500);

//si apretamos flecha para arriba
case 0xFF18E7:
analogWrite(ledRojo, 0);
adelante();
delay(1500);

//si apretamos flecha para abajo
case 0xFF4AB5:
analogWrite(ledRojo, 255);
atras();
delay(1500);

//si apretamos flecha izquierda
case 0xFF10EF:
analogWrite(ledAzul, 255);
izquierda();
delay(1000);
parar();

//si apretamos flecha derecha
case 0xFF5AA5:
analogWrite(ledVerde, 255);
derecha();
delay(1000);
parar();

//si apretamos el ok
case 0xFF38C7:
analogWrite(ledVerde, 127);
analogWrite(ledAzul, 127);
analogWrite(ledRojo, 127);

//si apretamos algo no definido, la led test parpadea
default:
digitalWrite(ledTest, HIGH);
delay(200);
digitalWrite(ledTest, LOW);
delay(200);
digitalWrite(ledTest, HIGH);
delay(200);
digitalWrite(ledTest, LOW);
delay(200);

void adelante() {
analogWrite(AIA, 255);
analogWrite(AIB, 0);
analogWrite(BIA, 255);
analogWrite(BIB, 0);

void atras()
analogWrite(AIA, 0);
analogWrite(AIB, 255);
analogWrite(BIA, 0);
analogWrite(BIB, 255);

void derecha()
analogWrite(AIA, 255);
analogWrite(AIB, 0);
analogWrite(BIA, 0);
analogWrite(BIB, 255);

void izquierda()
analogWrite(AIA, 0);
analogWrite(AIB, 255);
analogWrite(BIA, 255);
analogWrite(BIB, 0);

void parar() {
analogWrite(AIA, 255);
analogWrite(AIB, 255);
analogWrite(BIA, 255);
analogWrite(BIB, 255);
delay(500);

}

Por favor, necsito ayuda