#include <superkarel.h>
#define SPEED 200

void turn_right();
void turn_back();
void fill_pothole();

int main() {
    turn_on("highway.kw");
    set_step_delay(SPEED);

    fill_pothole();

    while (front_is_clear()) {
        step();
        fill_pothole();
    }

    turn_off();

    return 0;
}

void fill_pothole() {
    if (right_is_blocked()) {
        return;
    }
    turn_right();
    while (front_is_clear()) {
        step();
        if (no_beepers_present()) {
            put_beeper();
        }
    }
    turn_back();
    while (left_is_blocked() && right_is_blocked()) {
        step();
    }
    turn_right();
}

void turn_back() {
    set_step_delay(0);
    turn_left();
    set_step_delay(SPEED);
    turn_left();
}

void turn_right() {
    set_step_delay(0);
    turn_left();
    turn_left();
    set_step_delay(SPEED);
    turn_left();
}


