//2.2.3
void addSlow(){
    while(frontIsClear()){
        decrement();
        if(frontIsClear()){
            LaufeZurueck();    
            increment();
            LaufeZurueck();
        }
    }
}

void decrement(){
    while(!onBeeper() && (frontIsClear())){
        dropBeeper();
        moveForward();
    }
    if(onBeeper()){
        pickBeeper();    
    }
}

void increment(){
    while(onBeeper() && (frontIsClear())){
        pickBeeper();
        moveForward(); 
    }
    if(!onBeeper()){
        dropBeeper();
    }
}

void LaufeZurueck(){
    turnAround();
    while(frontIsClear()){
        moveForward();
    }
    Wechsel();
}

void Wechsel(){
    if(!frontIsClear() &&(!leftIsClear())){
        turnRight();
        moveForward();
        turnRight();
    }
    if(!frontIsClear()){
        turnLeft();
        moveForward();
        turnLeft();
    }
}