iniciar-programa
 define-nueva-instruccion inv como
  inicio
   gira-izquierda;
   gira-izquierda;
  fin;
 define-nueva-instruccion der como
  inicio
   repetir 3 veces
    gira-izquierda;
  fin;
 define-nueva-instruccion rev como
  inicio
   si no-junto-a-zumbador entonces
    deja-zumbador;
  fin;
 define-nueva-instruccion rec como
  inicio
   mientras frente-libre hacer
    inicio
     avanza;
     gira-izquierda;
     avanza;
     der;
    fin;
  fin;
 define-nueva-instruccion cap como
  inicio
   mientras junto-a-zumbador hacer
    inicio
     avanza;
     gira-izquierda;
     rev;
     avanza;
     gira-izquierda;
     avanza;
     avanza;
     inv;
    fin;
  fin;
 define-nueva-instruccion rce como
  inicio
   inv;
   rec;
   gira-izquierda;
   cap;
   avanza;
   avanza;
   der;
   avanza;
   rec;
   gira-izquierda;
   cap;
   avanza;
   rev;
   gira-izquierda;
  fin;
 define-nueva-instruccion rlp como
  inicio
   mientras no-orientado-al-norte hacer
    gira-izquierda;
   si algun-zumbador-en-la-mochila entonces
    rev;
   si algun-zumbador-en-la-mochila entonces
    inicio
     der;
     avanza;
     rev;
     avanza;
     rev;
     gira-izquierda;
     avanza;
     gira-izquierda;
     avanza;
     der;
     rev;
     mientras algun-zumbador-en-la-mochila hacer
      rce;
    fin;
   avanza;
   der;
   avanza;
   mientras junto-a-zumbador hacer
    inicio
     gira-izquierda;
     avanza;
     der;
     avanza;
    fin;
   inv;
   avanza;
   gira-izquierda;
   avanza;
   inv;
  fin;
    inicia-ejecucion
     rlp;
        apagate;
    termina-ejecucion
finalizar-programa
